diff --git a/Cargo.lock b/Cargo.lock
index 9d51ccccb622..6aae513b69a4 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -679,6 +679,12 @@ version = "0.1.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "349a06037c7bf932dd7e7d1f653678b2038b9ad46a74102f1fc7bd7872678cce"
+[[package]]
+name = "base16ct"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4c7f02d4ea65f2c1853089ffd8d2787bdbc63de2f0d29dedbcf8ccdfa0ccd4cf"
+
[[package]]
name = "base64"
version = "0.13.1"
@@ -1302,7 +1308,21 @@ dependencies = [
"serde",
"snark_wrapper",
"zk_evm 1.4.0",
- "zkevm_circuits",
+ "zkevm_circuits 1.4.0",
+]
+
+[[package]]
+name = "circuit_definitions"
+version = "0.1.0"
+source = "git+https://github.com/matter-labs/era-zkevm_test_harness.git?branch=v1.4.1#44975f894aff0893b5f98e34d0e364375390bcb8"
+dependencies = [
+ "crossbeam 0.8.2",
+ "derivative",
+ "seq-macro",
+ "serde",
+ "snark_wrapper",
+ "zk_evm 1.4.1",
+ "zkevm_circuits 1.4.1",
]
[[package]]
@@ -1790,8 +1810,10 @@ version = "0.5.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "740fe28e594155f10cfc383984cbefd529d7396050557148f79cb0f621204124"
dependencies = [
+ "generic-array",
"rand_core 0.6.4",
"subtle",
+ "zeroize",
]
[[package]]
@@ -1876,6 +1898,36 @@ dependencies = [
"windows-sys 0.48.0",
]
+[[package]]
+name = "curl"
+version = "0.4.44"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "509bd11746c7ac09ebd19f0b17782eae80aadee26237658a6b4808afb5c11a22"
+dependencies = [
+ "curl-sys",
+ "libc",
+ "openssl-probe",
+ "openssl-sys",
+ "schannel",
+ "socket2 0.4.10",
+ "winapi",
+]
+
+[[package]]
+name = "curl-sys"
+version = "0.4.70+curl-8.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3c0333d8849afe78a4c8102a429a446bfdd055832af071945520e835ae2d841e"
+dependencies = [
+ "cc",
+ "libc",
+ "libz-sys",
+ "openssl-sys",
+ "pkg-config",
+ "vcpkg",
+ "windows-sys 0.48.0",
+]
+
[[package]]
name = "curve25519-dalek"
version = "4.1.1"
@@ -2057,11 +2109,25 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "413301934810f597c1d19ca71c8710e99a3f1ba28a0d2ebc01551a2daeea3c5c"
dependencies = [
"der 0.6.1",
- "elliptic-curve",
- "rfc6979",
+ "elliptic-curve 0.12.3",
+ "rfc6979 0.3.1",
"signature 1.6.4",
]
+[[package]]
+name = "ecdsa"
+version = "0.16.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ee27f32b5c5292967d2d4a9d7f1e0b0aed2c15daded5a60300e4abb9d8020bca"
+dependencies = [
+ "der 0.7.8",
+ "digest 0.10.7",
+ "elliptic-curve 0.13.7",
+ "rfc6979 0.4.0",
+ "signature 2.2.0",
+ "spki 0.7.2",
+]
+
[[package]]
name = "ed25519"
version = "2.2.3"
@@ -2101,16 +2167,35 @@ version = "0.12.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e7bb888ab5300a19b8e5bceef25ac745ad065f3c9f7efc6de1b91958110891d3"
dependencies = [
- "base16ct",
+ "base16ct 0.1.1",
"crypto-bigint 0.4.9",
"der 0.6.1",
"digest 0.10.7",
- "ff",
+ "ff 0.12.1",
"generic-array",
- "group",
+ "group 0.12.1",
"pkcs8 0.9.0",
"rand_core 0.6.4",
- "sec1",
+ "sec1 0.3.0",
+ "subtle",
+ "zeroize",
+]
+
+[[package]]
+name = "elliptic-curve"
+version = "0.13.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e9775b22bc152ad86a0cf23f0f348b884b26add12bf741e7ffc4d4ab2ab4d205"
+dependencies = [
+ "base16ct 0.2.0",
+ "crypto-bigint 0.5.3",
+ "digest 0.10.7",
+ "ff 0.13.0",
+ "generic-array",
+ "group 0.13.0",
+ "pkcs8 0.10.2",
+ "rand_core 0.6.4",
+ "sec1 0.7.3",
"subtle",
"zeroize",
]
@@ -2333,6 +2418,16 @@ dependencies = [
"subtle",
]
+[[package]]
+name = "ff"
+version = "0.13.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ded41244b729663b1e574f1b4fb731469f69f79c17667b5d776b16cda0479449"
+dependencies = [
+ "rand_core 0.6.4",
+ "subtle",
+]
+
[[package]]
name = "ff_ce"
version = "0.14.3"
@@ -2678,6 +2773,7 @@ checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a"
dependencies = [
"typenum",
"version_check",
+ "zeroize",
]
[[package]]
@@ -2866,7 +2962,18 @@ version = "0.12.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5dfbfb3a6cfbd390d5c9564ab283a0349b9b9fcd46a706c1eb10e0db70bfbac7"
dependencies = [
- "ff",
+ "ff 0.12.1",
+ "rand_core 0.6.4",
+ "subtle",
+]
+
+[[package]]
+name = "group"
+version = "0.13.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f0f9ef7462f7c099f518d754361858f86d8a07af53ba9af0fe635bbccb151a63"
+dependencies = [
+ "ff 0.13.0",
"rand_core 0.6.4",
"subtle",
]
@@ -3611,9 +3718,23 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "72c1e0b51e7ec0a97369623508396067a486bd0cbed95a2659a4b863d28cfc8b"
dependencies = [
"cfg-if 1.0.0",
- "ecdsa",
- "elliptic-curve",
+ "ecdsa 0.14.8",
+ "elliptic-curve 0.12.3",
+ "sha2 0.10.8",
+]
+
+[[package]]
+name = "k256"
+version = "0.13.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3f01b677d82ef7a676aa37e099defd83a28e15687112cafdd112d60236b6115b"
+dependencies = [
+ "cfg-if 1.0.0",
+ "ecdsa 0.16.9",
+ "elliptic-curve 0.13.7",
+ "once_cell",
"sha2 0.10.8",
+ "signature 2.2.0",
]
[[package]]
@@ -3706,6 +3827,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d97137b25e321a73eef1418d1d5d2eda4d77e12813f8e6dead84bc52c5870a7b"
dependencies = [
"cc",
+ "libc",
"pkg-config",
"vcpkg",
]
@@ -4099,7 +4221,9 @@ dependencies = [
"zk_evm 1.3.1",
"zk_evm 1.3.3 (git+https://github.com/matter-labs/era-zk_evm.git?tag=v1.3.3-rc2)",
"zk_evm 1.4.0",
+ "zk_evm 1.4.1",
"zkevm_test_harness 1.4.0",
+ "zkevm_test_harness 1.4.1",
"zksync_contracts",
"zksync_eth_signer",
"zksync_state",
@@ -5659,6 +5783,16 @@ dependencies = [
"zeroize",
]
+[[package]]
+name = "rfc6979"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f8dd2a808d456c4a54e300a23e9f5a67e122c3024119acbfd73e3bf664491cb2"
+dependencies = [
+ "hmac 0.12.1",
+ "subtle",
+]
+
[[package]]
name = "ring"
version = "0.16.20"
@@ -6010,7 +6144,7 @@ version = "0.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3be24c1842290c45df0a7bf069e0c268a747ad05a192f2fd7dcfdbc1cba40928"
dependencies = [
- "base16ct",
+ "base16ct 0.1.1",
"der 0.6.1",
"generic-array",
"pkcs8 0.9.0",
@@ -6018,6 +6152,20 @@ dependencies = [
"zeroize",
]
+[[package]]
+name = "sec1"
+version = "0.7.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d3e97a565f76233a6003f9f5c54be1d9c5bdfa3eccfb189469f11ec4901c47dc"
+dependencies = [
+ "base16ct 0.2.0",
+ "der 0.7.8",
+ "generic-array",
+ "pkcs8 0.10.2",
+ "subtle",
+ "zeroize",
+]
+
[[package]]
name = "secp256k1"
version = "0.20.3"
@@ -6201,6 +6349,12 @@ dependencies = [
"uuid",
]
+[[package]]
+name = "seq-macro"
+version = "0.3.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a3f0bf26fd526d2a95683cd0f87bf103b8539e2ca1ef48ce002d67aad59aa0b4"
+
[[package]]
name = "serde"
version = "1.0.189"
@@ -8268,7 +8422,7 @@ version = "1.3.1"
source = "git+https://github.com/matter-labs/era-zk_evm.git?tag=v1.3.1-rc2#0a7c775932db4839ff6b7fb0db9bdb3583ab54c0"
dependencies = [
"blake2 0.10.6 (git+https://github.com/RustCrypto/hashes.git?rev=1f727ce37ff40fa0cce84eb8543a45bdd3ca4a4e)",
- "k256",
+ "k256 0.11.6",
"lazy_static",
"num 0.4.1",
"serde",
@@ -8290,7 +8444,7 @@ dependencies = [
"serde",
"serde_json",
"static_assertions",
- "zk_evm_abstractions",
+ "zk_evm_abstractions 0.1.0",
"zkevm_opcode_defs 1.3.2",
]
@@ -8305,7 +8459,7 @@ dependencies = [
"serde",
"serde_json",
"static_assertions",
- "zk_evm_abstractions",
+ "zk_evm_abstractions 0.1.0",
"zkevm_opcode_defs 1.3.2",
]
@@ -8320,10 +8474,25 @@ dependencies = [
"serde",
"serde_json",
"static_assertions",
- "zk_evm_abstractions",
+ "zk_evm_abstractions 0.1.0",
"zkevm_opcode_defs 1.3.2",
]
+[[package]]
+name = "zk_evm"
+version = "1.4.1"
+source = "git+https://github.com/matter-labs/era-zk_evm.git?branch=v1.4.1#6250dbf64b2d14ced87a127735da559f27a432d5"
+dependencies = [
+ "anyhow",
+ "lazy_static",
+ "num 0.4.1",
+ "serde",
+ "serde_json",
+ "static_assertions",
+ "zk_evm_abstractions 1.4.1",
+ "zkevm_opcode_defs 1.4.1",
+]
+
[[package]]
name = "zk_evm_abstractions"
version = "0.1.0"
@@ -8336,6 +8505,18 @@ dependencies = [
"zkevm_opcode_defs 1.3.2",
]
+[[package]]
+name = "zk_evm_abstractions"
+version = "1.4.1"
+source = "git+https://github.com/matter-labs/era-zk_evm_abstractions.git?branch=v1.4.1#0aac08c3b097ee8147e748475117ac46bddcdcef"
+dependencies = [
+ "anyhow",
+ "num_enum",
+ "serde",
+ "static_assertions",
+ "zkevm_opcode_defs 1.4.1",
+]
+
[[package]]
name = "zkevm-assembly"
version = "1.3.2"
@@ -8355,6 +8536,25 @@ dependencies = [
"zkevm_opcode_defs 1.3.2",
]
+[[package]]
+name = "zkevm-assembly"
+version = "1.3.2"
+source = "git+https://github.com/matter-labs/era-zkEVM-assembly.git?branch=v1.4.1#50282016d01bd2fd147021dd558209778db2268b"
+dependencies = [
+ "env_logger 0.9.3",
+ "hex",
+ "lazy_static",
+ "log",
+ "nom",
+ "num-bigint 0.4.4",
+ "num-traits",
+ "sha3 0.10.8",
+ "smallvec",
+ "structopt",
+ "thiserror",
+ "zkevm_opcode_defs 1.4.1",
+]
+
[[package]]
name = "zkevm_circuits"
version = "1.4.0"
@@ -8375,6 +8575,27 @@ dependencies = [
"zkevm_opcode_defs 1.3.2",
]
+[[package]]
+name = "zkevm_circuits"
+version = "1.4.1"
+source = "git+https://github.com/matter-labs/era-zkevm_circuits.git?branch=v1.4.1#70234e99c2492740226b9f40091e7fccc7ef28e9"
+dependencies = [
+ "arrayvec 0.7.4",
+ "bincode",
+ "boojum",
+ "cs_derive 0.1.0 (git+https://github.com/matter-labs/era-boojum.git?branch=main)",
+ "derivative",
+ "hex",
+ "itertools 0.10.5",
+ "rand 0.4.6",
+ "rand 0.8.5",
+ "seq-macro",
+ "serde",
+ "serde_json",
+ "smallvec",
+ "zkevm_opcode_defs 1.4.1",
+]
+
[[package]]
name = "zkevm_opcode_defs"
version = "1.3.1"
@@ -8394,12 +8615,26 @@ dependencies = [
"bitflags 2.4.1",
"blake2 0.10.6 (git+https://github.com/RustCrypto/hashes.git?rev=1f727ce37ff40fa0cce84eb8543a45bdd3ca4a4e)",
"ethereum-types 0.14.1",
- "k256",
+ "k256 0.11.6",
"lazy_static",
"sha2 0.10.6",
"sha3 0.10.6",
]
+[[package]]
+name = "zkevm_opcode_defs"
+version = "1.4.1"
+source = "git+https://github.com/matter-labs/era-zkevm_opcode_defs.git?branch=v1.4.1#ba8228ff0582d21f64d6a319d50d0aec48e9e7b6"
+dependencies = [
+ "bitflags 2.4.1",
+ "blake2 0.10.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "ethereum-types 0.14.1",
+ "k256 0.13.2",
+ "lazy_static",
+ "sha2 0.10.8",
+ "sha3 0.10.8",
+]
+
[[package]]
name = "zkevm_test_harness"
version = "1.3.3"
@@ -8424,7 +8659,7 @@ dependencies = [
"test-log",
"tracing",
"zk_evm 1.3.3 (git+https://github.com/matter-labs/era-zk_evm.git?branch=v1.3.3)",
- "zkevm-assembly",
+ "zkevm-assembly 1.3.2 (git+https://github.com/matter-labs/era-zkEVM-assembly.git?branch=v1.3.2)",
]
[[package]]
@@ -8433,7 +8668,7 @@ version = "1.4.0"
source = "git+https://github.com/matter-labs/era-zkevm_test_harness.git?branch=v1.4.0#43aeb53d7d9c909508a98f9fc140edff0e9d2357"
dependencies = [
"bincode",
- "circuit_definitions",
+ "circuit_definitions 0.1.0 (git+https://github.com/matter-labs/era-zkevm_test_harness.git?branch=v1.4.0)",
"codegen 0.2.0",
"crossbeam 0.8.2",
"derivative",
@@ -8447,7 +8682,36 @@ dependencies = [
"structopt",
"test-log",
"tracing",
- "zkevm-assembly",
+ "zkevm-assembly 1.3.2 (git+https://github.com/matter-labs/era-zkEVM-assembly.git?branch=v1.3.2)",
+]
+
+[[package]]
+name = "zkevm_test_harness"
+version = "1.4.1"
+source = "git+https://github.com/matter-labs/era-zkevm_test_harness.git?branch=v1.4.1#44975f894aff0893b5f98e34d0e364375390bcb8"
+dependencies = [
+ "bincode",
+ "circuit_definitions 0.1.0 (git+https://github.com/matter-labs/era-zkevm_test_harness.git?branch=v1.4.1)",
+ "codegen 0.2.0",
+ "crossbeam 0.8.2",
+ "curl",
+ "derivative",
+ "env_logger 0.9.3",
+ "hex",
+ "lazy_static",
+ "rand 0.4.6",
+ "rayon",
+ "reqwest",
+ "rescue_poseidon 0.4.1 (git+https://github.com/matter-labs/rescue-poseidon.git?branch=poseidon2)",
+ "serde",
+ "serde_json",
+ "smallvec",
+ "snark_wrapper",
+ "structopt",
+ "test-log",
+ "tracing",
+ "walkdir",
+ "zkevm-assembly 1.3.2 (git+https://github.com/matter-labs/era-zkEVM-assembly.git?branch=v1.4.1)",
]
[[package]]
@@ -8504,6 +8768,7 @@ dependencies = [
name = "zksync_commitment_utils"
version = "0.1.0"
dependencies = [
+ "multivm",
"zkevm_test_harness 1.4.0",
"zksync_types",
"zksync_utils",
@@ -9154,8 +9419,10 @@ dependencies = [
"tokio",
"zk_evm 1.3.3 (git+https://github.com/matter-labs/era-zk_evm.git?tag=v1.3.3-rc2)",
"zk_evm 1.4.0",
+ "zk_evm 1.4.1",
"zkevm_test_harness 1.3.3",
"zksync_basic_types",
+ "zksync_config",
"zksync_consensus_roles",
"zksync_contracts",
"zksync_mini_merkle_tree",
diff --git a/checks-config/era.dic b/checks-config/era.dic
index dfe4cabdbf45..f0ec14591b1f 100644
--- a/checks-config/era.dic
+++ b/checks-config/era.dic
@@ -879,3 +879,5 @@ decommitment
hardcoded
plookup
shivini
+EIP4844
+KZG
diff --git a/contracts b/contracts
index fa45ef1d2b04..2dfbc6bac84e 160000
--- a/contracts
+++ b/contracts
@@ -1 +1 @@
-Subproject commit fa45ef1d2b04c640395ec1f34f76ef03f8d19849
+Subproject commit 2dfbc6bac84ecada93cab4a0dea113bc2aceba1c
diff --git a/core/bin/external_node/src/config/mod.rs b/core/bin/external_node/src/config/mod.rs
index cc923e1eb3c3..6bf06f049303 100644
--- a/core/bin/external_node/src/config/mod.rs
+++ b/core/bin/external_node/src/config/mod.rs
@@ -3,7 +3,7 @@ use std::{env, time::Duration};
use anyhow::Context;
use serde::Deserialize;
use url::Url;
-use zksync_basic_types::{Address, L1ChainId, L2ChainId, MiniblockNumber};
+use zksync_basic_types::{Address, L1ChainId, L2ChainId};
use zksync_core::api_server::{
tx_sender::TxSenderConfig,
web3::{state::InternalApiConfig, Namespace},
@@ -11,7 +11,7 @@ use zksync_core::api_server::{
use zksync_types::api::BridgeAddresses;
use zksync_web3_decl::{
jsonrpsee::http_client::{HttpClient, HttpClientBuilder},
- namespaces::{EnNamespaceClient, EthNamespaceClient, ZksNamespaceClient},
+ namespaces::{EthNamespaceClient, ZksNamespaceClient},
};
#[cfg(test)]
@@ -30,8 +30,6 @@ pub struct RemoteENConfig {
pub l2_testnet_paymaster_addr: Option
,
pub l2_chain_id: L2ChainId,
pub l1_chain_id: L1ChainId,
-
- pub fair_l2_gas_price: u64,
}
impl RemoteENConfig {
@@ -63,15 +61,6 @@ impl RemoteENConfig {
.context("Failed to fetch L1 chain ID")?
.as_u64(),
);
- let current_miniblock = client
- .get_block_number()
- .await
- .context("Failed to fetch block number")?;
- let block_header = client
- .sync_l2_block(MiniblockNumber(current_miniblock.as_u32()), false)
- .await
- .context("Failed to fetch last miniblock header")?
- .expect("Block is known to exist");
Ok(Self {
diamond_proxy_addr,
@@ -82,7 +71,6 @@ impl RemoteENConfig {
l2_weth_bridge_addr: bridges.l2_weth_bridge,
l2_chain_id,
l1_chain_id,
- fair_l2_gas_price: block_header.l2_fair_gas_price,
})
}
}
@@ -154,6 +142,15 @@ pub struct OptionalENConfig {
/// The max possible number of gas that `eth_estimateGas` is allowed to overestimate.
#[serde(default = "OptionalENConfig::default_estimate_gas_acceptable_overestimation")]
pub estimate_gas_acceptable_overestimation: u32,
+ /// Whether to use the compatibility mode for gas estimation for L1->L2 transactions.
+ /// During the migration to the 1.4.1 fee model, there will be a period, when the server
+ /// will already have the 1.4.1 fee model, while the L1 contracts will still expect the transactions
+ /// to use the previous fee model with much higher overhead.
+ ///
+ /// When set to `true`, the API will ensure to return gasLimit is high enough overhead for both the old
+ /// and the new fee model when estimating L1->L2 transactions.
+ #[serde(default = "OptionalENConfig::default_l1_to_l2_transactions_compatibility_mode")]
+ pub l1_to_l2_transactions_compatibility_mode: bool,
/// The multiplier to use when suggesting gas price. Should be higher than one,
/// otherwise if the L1 prices soar, the suggested gas price won't be sufficient to be included in block
#[serde(default = "OptionalENConfig::default_gas_price_scale_factor")]
@@ -226,6 +223,10 @@ impl OptionalENConfig {
1_000
}
+ const fn default_l1_to_l2_transactions_compatibility_mode() -> bool {
+ true
+ }
+
const fn default_gas_price_scale_factor() -> f64 {
1.2
}
@@ -527,13 +528,15 @@ impl From for TxSenderConfig {
.unwrap(),
gas_price_scale_factor: config.optional.gas_price_scale_factor,
max_nonce_ahead: config.optional.max_nonce_ahead,
- fair_l2_gas_price: config.remote.fair_l2_gas_price,
vm_execution_cache_misses_limit: config.optional.vm_execution_cache_misses_limit,
// We set these values to the maximum since we don't know the actual values
// and they will be enforced by the main node anyway.
max_allowed_l2_tx_gas_limit: u32::MAX,
validation_computational_gas_limit: u32::MAX,
chain_id: config.remote.l2_chain_id,
+ l1_to_l2_transactions_compatibility_mode: config
+ .optional
+ .l1_to_l2_transactions_compatibility_mode,
}
}
}
diff --git a/core/bin/snapshots_creator/src/tests.rs b/core/bin/snapshots_creator/src/tests.rs
index e3f4179f5410..d061b0906705 100644
--- a/core/bin/snapshots_creator/src/tests.rs
+++ b/core/bin/snapshots_creator/src/tests.rs
@@ -143,6 +143,7 @@ async fn create_miniblock(
l1_tx_count: 0,
l2_tx_count: 0,
base_fee_per_gas: 0,
+ gas_per_pubdata_limit: 0,
batch_fee_input: Default::default(),
base_system_contracts_hashes: Default::default(),
protocol_version: Some(Default::default()),
diff --git a/core/bin/system-constants-generator/src/main.rs b/core/bin/system-constants-generator/src/main.rs
index 0557eccd9d6e..3c5c056ffe72 100644
--- a/core/bin/system-constants-generator/src/main.rs
+++ b/core/bin/system-constants-generator/src/main.rs
@@ -3,7 +3,7 @@ use std::fs;
use codegen::{Block, Scope};
use multivm::{
utils::{get_bootloader_encoding_space, get_bootloader_max_txs_in_batch},
- vm_latest::constants::{BLOCK_OVERHEAD_GAS, BLOCK_OVERHEAD_L1_GAS, MAX_PUBDATA_PER_BLOCK},
+ vm_latest::constants::MAX_PUBDATA_PER_BLOCK,
};
use serde::{Deserialize, Serialize};
use zksync_types::{
@@ -15,9 +15,13 @@ use zksync_types::{
system_params::MAX_TX_ERGS_LIMIT,
},
IntrinsicSystemGasConstants, ProtocolVersionId, GUARANTEED_PUBDATA_IN_TX,
- L1_GAS_PER_PUBDATA_BYTE, MAX_GAS_PER_PUBDATA_BYTE, MAX_NEW_FACTORY_DEPS,
+ L1_GAS_PER_PUBDATA_BYTE, MAX_NEW_FACTORY_DEPS, REQUIRED_L1_TO_L2_GAS_PER_PUBDATA_BYTE,
};
+// For configs we will use the default value of `800_000` to represent the rough amount of L1 gas
+// needed to cover the batch expenses.
+const BLOCK_OVERHEAD_L1_GAS: u32 = 800_000;
+
mod intrinsic_costs;
mod utils;
@@ -30,7 +34,6 @@ struct L1SystemConfig {
priority_tx_max_pubdata: u32,
fair_l2_gas_price: u64,
l1_gas_per_pubdata_byte: u32,
- block_overhead_l2_gas: u32,
block_overhead_l1_gas: u32,
max_transactions_in_block: u32,
bootloader_tx_encoding_space: u32,
@@ -56,7 +59,6 @@ pub fn generate_l1_contracts_system_config(gas_constants: &IntrinsicSystemGasCon
priority_tx_max_pubdata: (L1_TX_DECREASE * (MAX_PUBDATA_PER_BLOCK as f64)) as u32,
fair_l2_gas_price: FAIR_L2_GAS_PRICE_ON_L1_CONTRACT,
l1_gas_per_pubdata_byte: L1_GAS_PER_PUBDATA_BYTE,
- block_overhead_l2_gas: BLOCK_OVERHEAD_GAS,
block_overhead_l1_gas: BLOCK_OVERHEAD_L1_GAS,
max_transactions_in_block: get_bootloader_max_txs_in_batch(
ProtocolVersionId::latest().into(),
@@ -64,7 +66,6 @@ pub fn generate_l1_contracts_system_config(gas_constants: &IntrinsicSystemGasCon
bootloader_tx_encoding_space: get_bootloader_encoding_space(
ProtocolVersionId::latest().into(),
),
-
l1_tx_intrinsic_l2_gas: gas_constants.l1_tx_intrinsic_gas,
l1_tx_intrinsic_pubdata: gas_constants.l1_tx_intrinsic_pubdata,
l1_tx_min_l2_gas_base: gas_constants.l1_tx_min_gas_base,
@@ -72,7 +73,7 @@ pub fn generate_l1_contracts_system_config(gas_constants: &IntrinsicSystemGasCon
l1_tx_delta_factory_deps_l2_gas: gas_constants.l1_tx_delta_factory_dep_gas,
l1_tx_delta_factory_deps_pubdata: gas_constants.l1_tx_delta_factory_dep_pubdata,
max_new_factory_deps: MAX_NEW_FACTORY_DEPS as u32,
- required_l2_gas_price_per_pubdata: MAX_GAS_PER_PUBDATA_BYTE,
+ required_l2_gas_price_per_pubdata: REQUIRED_L1_TO_L2_GAS_PER_PUBDATA_BYTE,
};
serde_json::to_string_pretty(&l1_contracts_config).unwrap()
@@ -85,7 +86,6 @@ struct L2SystemConfig {
guaranteed_pubdata_bytes: u32,
max_pubdata_per_block: u32,
max_transactions_in_block: u32,
- block_overhead_l2_gas: u32,
block_overhead_l1_gas: u32,
l2_tx_intrinsic_gas: u32,
l2_tx_intrinsic_pubdata: u32,
@@ -106,7 +106,6 @@ pub fn generate_l2_contracts_system_config(gas_constants: &IntrinsicSystemGasCon
max_transactions_in_block: get_bootloader_max_txs_in_batch(
ProtocolVersionId::latest().into(),
) as u32,
- block_overhead_l2_gas: BLOCK_OVERHEAD_GAS,
block_overhead_l1_gas: BLOCK_OVERHEAD_L1_GAS,
l2_tx_intrinsic_gas: gas_constants.l2_tx_intrinsic_gas,
l2_tx_intrinsic_pubdata: gas_constants.l2_tx_intrinsic_pubdata,
diff --git a/core/bin/system-constants-generator/src/utils.rs b/core/bin/system-constants-generator/src/utils.rs
index c594f3065bea..993a995e6195 100644
--- a/core/bin/system-constants-generator/src/utils.rs
+++ b/core/bin/system-constants-generator/src/utils.rs
@@ -2,7 +2,7 @@ use std::{cell::RefCell, rc::Rc};
use multivm::{
interface::{
- dyn_tracers::vm_1_4_0::DynTracer, tracer::VmExecutionStopReason, L1BatchEnv, L2BlockEnv,
+ dyn_tracers::vm_1_4_1::DynTracer, tracer::VmExecutionStopReason, L1BatchEnv, L2BlockEnv,
SystemEnv, TxExecutionMode, VmExecutionMode, VmInterface,
},
vm_latest::{
@@ -10,6 +10,7 @@ use multivm::{
BootloaderState, HistoryEnabled, HistoryMode, SimpleMemory, ToTracerPointer, Vm, VmTracer,
ZkSyncVmState,
},
+ zk_evm_1_4_1::aux_structures::Timestamp,
};
use once_cell::sync::Lazy;
use zksync_contracts::{
@@ -20,10 +21,9 @@ use zksync_state::{InMemoryStorage, StorageView, WriteStorage};
use zksync_types::{
block::MiniblockHasher, ethabi::Token, fee::Fee, fee_model::BatchFeeInput, l1::L1Tx, l2::L2Tx,
utils::storage_key_for_eth_balance, AccountTreeId, Address, Execute, L1BatchNumber,
- L1TxCommonData, L2ChainId, MiniblockNumber, Nonce, ProtocolVersionId, StorageKey, Timestamp,
- Transaction, BOOTLOADER_ADDRESS, H256, SYSTEM_CONTEXT_ADDRESS,
- SYSTEM_CONTEXT_GAS_PRICE_POSITION, SYSTEM_CONTEXT_TX_ORIGIN_POSITION, U256,
- ZKPORTER_IS_AVAILABLE,
+ L1TxCommonData, L2ChainId, MiniblockNumber, Nonce, ProtocolVersionId, StorageKey, Transaction,
+ BOOTLOADER_ADDRESS, H256, SYSTEM_CONTEXT_ADDRESS, SYSTEM_CONTEXT_GAS_PRICE_POSITION,
+ SYSTEM_CONTEXT_TX_ORIGIN_POSITION, U256, ZKPORTER_IS_AVAILABLE,
};
use zksync_utils::{bytecode::hash_bytecode, bytes_to_be_words, u256_to_h256};
diff --git a/core/lib/commitment_utils/Cargo.toml b/core/lib/commitment_utils/Cargo.toml
index 801f90ea0f23..bb286d6216a0 100644
--- a/core/lib/commitment_utils/Cargo.toml
+++ b/core/lib/commitment_utils/Cargo.toml
@@ -13,3 +13,4 @@ categories = ["cryptography"]
zksync_types = { path = "../../lib/types" }
zksync_utils = { path = "../../lib/utils" }
zkevm_test_harness = { git = "https://github.com/matter-labs/era-zkevm_test_harness.git", branch = "v1.4.0" }
+multivm = { path = "../../lib/multivm" }
diff --git a/core/lib/commitment_utils/src/lib.rs b/core/lib/commitment_utils/src/lib.rs
index ac6dc8ff9178..3c2db1471cc6 100644
--- a/core/lib/commitment_utils/src/lib.rs
+++ b/core/lib/commitment_utils/src/lib.rs
@@ -1,23 +1,33 @@
//! Utils for commitment calculation.
+use multivm::utils::get_used_bootloader_memory_bytes;
use zkevm_test_harness::witness::utils::{
events_queue_commitment_fixed, initial_heap_content_commitment_fixed,
};
-use zksync_types::{LogQuery, H256, U256, USED_BOOTLOADER_MEMORY_BYTES};
+use zksync_types::{LogQuery, ProtocolVersionId, H256, U256};
use zksync_utils::expand_memory_contents;
-pub fn events_queue_commitment(events_queue: &Vec, is_pre_boojum: bool) -> Option {
- (!is_pre_boojum).then(|| H256(events_queue_commitment_fixed(events_queue)))
+pub fn events_queue_commitment(
+ events_queue: &Vec,
+ protocol_version: ProtocolVersionId,
+) -> Option {
+ (!protocol_version.is_pre_boojum()).then(|| H256(events_queue_commitment_fixed(events_queue)))
}
pub fn bootloader_initial_content_commitment(
initial_bootloader_contents: &[(usize, U256)],
- is_pre_boojum: bool,
+ protocol_version: ProtocolVersionId,
) -> Option {
- (!is_pre_boojum).then(|| {
- let full_bootloader_memory =
- expand_memory_contents(initial_bootloader_contents, USED_BOOTLOADER_MEMORY_BYTES);
- H256(initial_heap_content_commitment_fixed(
- &full_bootloader_memory,
- ))
- })
+ let expanded_memory_size = if protocol_version.is_pre_boojum() {
+ return None;
+ } else {
+ get_used_bootloader_memory_bytes(protocol_version.into())
+ };
+
+ let full_bootloader_memory =
+ expand_memory_contents(initial_bootloader_contents, expanded_memory_size);
+ let commitment = H256(initial_heap_content_commitment_fixed(
+ &full_bootloader_memory,
+ ));
+
+ Some(commitment)
}
diff --git a/core/lib/config/src/configs/api.rs b/core/lib/config/src/configs/api.rs
index 609634d6f34a..a06b9fa53dfe 100644
--- a/core/lib/config/src/configs/api.rs
+++ b/core/lib/config/src/configs/api.rs
@@ -51,6 +51,14 @@ pub struct Web3JsonRpcConfig {
pub estimate_gas_scale_factor: f64,
/// The max possible number of gas that `eth_estimateGas` is allowed to overestimate.
pub estimate_gas_acceptable_overestimation: u32,
+ /// Whether to use the compatibility mode for gas estimation for L1->L2 transactions.
+ /// During the migration to the 1.4.1 fee model, there will be a period, when the server
+ /// will already have the 1.4.1 fee model, while the L1 contracts will still expect the transactions
+ /// to use the previous fee model with much higher overhead.
+ ///
+ /// When set to `true`, the API will ensure to return gasLimit is high enough overhead for both the old
+ /// and the new fee model when estimating L1->L2 transactions.
+ pub l1_to_l2_transactions_compatibility_mode: bool,
/// Max possible size of an ABI encoded tx (in bytes).
pub max_tx_size: usize,
/// Max number of cache misses during one VM execution. If the number of cache misses exceeds this value, the API server panics.
@@ -101,6 +109,7 @@ impl Web3JsonRpcConfig {
account_pks: Default::default(),
estimate_gas_scale_factor: 1.2,
estimate_gas_acceptable_overestimation: 1000,
+ l1_to_l2_transactions_compatibility_mode: true,
max_tx_size: 1000000,
vm_execution_cache_misses_limit: Default::default(),
vm_concurrency_limit: Default::default(),
diff --git a/core/lib/config/src/configs/chain.rs b/core/lib/config/src/configs/chain.rs
index 47f43c9f3f06..d35c6ed52b55 100644
--- a/core/lib/config/src/configs/chain.rs
+++ b/core/lib/config/src/configs/chain.rs
@@ -26,6 +26,25 @@ impl NetworkConfig {
}
}
+/// An enum that represents the version of the fee model to use.
+/// - `V1`, the first model that was used in zkSync Era. In this fee model, the pubdata price must be pegged to the L1 gas price.
+/// Also, the fair L2 gas price is expected to only include the proving/computation price for the operator and not the costs that come from
+/// processing the batch on L1.
+/// - `V2`, the second model that was used in zkSync Era. There the pubdata price might be independent from the L1 gas price. Also,
+/// The fair L2 gas price is expected to both the proving/computation price for the operator and the costs that come from
+/// processing the batch on L1.
+#[derive(Debug, Clone, Copy, Deserialize, PartialEq, Eq)]
+pub enum FeeModelVersion {
+ V1,
+ V2,
+}
+
+impl Default for FeeModelVersion {
+ fn default() -> Self {
+ Self::V1
+ }
+}
+
#[derive(Debug, Deserialize, Clone, PartialEq, Default)]
pub struct StateKeeperConfig {
/// The max number of slots for txs in a block before it should be sealed by the slots sealer.
@@ -63,8 +82,26 @@ pub struct StateKeeperConfig {
pub fee_account_addr: Address,
- /// The price the operator spends on 1 gas of computation in wei.
- pub fair_l2_gas_price: u64,
+ /// The minimal acceptable L2 gas price, i.e. the price that should include the cost of computation/proving as well
+ /// as potentially premium for congestion.
+ pub minimal_l2_gas_price: u64,
+ /// The constant that represents the possibility that a batch can be sealed because of overuse of computation resources.
+ /// It has range from 0 to 1. If it is 0, the compute will not depend on the cost for closing the batch.
+ /// If it is 1, the gas limit per batch will have to cover the entire cost of closing the batch.
+ pub compute_overhead_part: f64,
+ /// The constant that represents the possibility that a batch can be sealed because of overuse of pubdata.
+ /// It has range from 0 to 1. If it is 0, the pubdata will not depend on the cost for closing the batch.
+ /// If it is 1, the pubdata limit per batch will have to cover the entire cost of closing the batch.
+ pub pubdata_overhead_part: f64,
+ /// The constant amount of L1 gas that is used as the overhead for the batch. It includes the price for batch verification, etc.
+ pub batch_overhead_l1_gas: u64,
+ /// The maximum amount of gas that can be used by the batch. This value is derived from the circuits limitation per batch.
+ pub max_gas_per_batch: u64,
+ /// The maximum amount of pubdata that can be used by the batch. Note that if the calldata is used as pubdata, this variable should not exceed 128kb.
+ pub max_pubdata_per_batch: u64,
+
+ /// The version of the fee model to use.
+ pub fee_model_version: FeeModelVersion,
/// Max number of computational gas that validation step is allowed to take.
pub validation_computational_gas_limit: u32,
@@ -100,7 +137,13 @@ impl StateKeeperConfig {
close_block_at_gas_percentage: 0.95,
fee_account_addr: Address::from_str("0xde03a0B5963f75f1C8485B355fF6D30f3093BDE7")
.unwrap(),
- fair_l2_gas_price: 250000000,
+ compute_overhead_part: 0.0,
+ pubdata_overhead_part: 1.0,
+ batch_overhead_l1_gas: 800_000,
+ max_gas_per_batch: 200_000_000,
+ max_pubdata_per_batch: 100_000,
+ minimal_l2_gas_price: 100000000,
+ fee_model_version: FeeModelVersion::V2,
validation_computational_gas_limit: 300000,
save_call_traces: true,
virtual_blocks_interval: 1,
diff --git a/core/lib/constants/src/crypto.rs b/core/lib/constants/src/crypto.rs
index a2a7d8d24bf4..8b97af9d2370 100644
--- a/core/lib/constants/src/crypto.rs
+++ b/core/lib/constants/src/crypto.rs
@@ -23,8 +23,6 @@ pub const MAX_NEW_FACTORY_DEPS: usize = 32;
pub const PAD_MSG_BEFORE_HASH_BITS_LEN: usize = 736;
-/// The size of the bootloader memory in bytes which is used by the protocol.
-/// While the maximal possible size is a lot higher, we restrict ourselves to a certain limit to reduce
-/// the requirements on RAM.
-pub const USED_BOOTLOADER_MEMORY_BYTES: usize = 1 << 24;
-pub const USED_BOOTLOADER_MEMORY_WORDS: usize = USED_BOOTLOADER_MEMORY_BYTES / 32;
+/// To avoid DDoS we limit the size of the transactions size.
+/// TODO(X): remove this as a constant and introduce a config.
+pub const MAX_ENCODED_TX_SIZE: usize = 1 << 24;
diff --git a/core/lib/constants/src/ethereum.rs b/core/lib/constants/src/ethereum.rs
index 9e88e77c0dfb..d9a137c7c22c 100644
--- a/core/lib/constants/src/ethereum.rs
+++ b/core/lib/constants/src/ethereum.rs
@@ -5,11 +5,6 @@ pub const PRIORITY_EXPIRATION: u64 = 50000;
pub const MAX_L1_TRANSACTION_GAS_LIMIT: u64 = 300000;
pub static ETHEREUM_ADDRESS: Address = Address::zero();
-/// This the number of pubdata such that it should be always possible to publish
-/// from a single transaction. Note, that these pubdata bytes include only bytes that are
-/// to be published inside the body of transaction (i.e. excluding of factory deps).
-pub const GUARANTEED_PUBDATA_PER_L1_BATCH: u64 = 4000;
-
/// The maximum number of pubdata per L1 batch. This limit is due to the fact that the Ethereum
/// nodes do not accept transactions that have more than 128kb of pubdata.
/// The 18kb margin is left in case of any impreciseness of the pubdata calculation.
@@ -18,10 +13,10 @@ pub const MAX_PUBDATA_PER_L1_BATCH: u64 = 110000;
// TODO: import from `zkevm_opcode_defs` once `VM1.3` is supported
pub const MAX_L2_TX_GAS_LIMIT: u64 = 80000000;
-// The users should always be able to provide `MAX_GAS_PER_PUBDATA_BYTE` gas per pubdata in their
-// transactions so that they are able to send at least `GUARANTEED_PUBDATA_PER_L1_BATCH` bytes per
-// transaction.
-pub const MAX_GAS_PER_PUBDATA_BYTE: u64 = MAX_L2_TX_GAS_LIMIT / GUARANTEED_PUBDATA_PER_L1_BATCH;
-
// The L1->L2 are required to have the following gas per pubdata byte.
pub const REQUIRED_L1_TO_L2_GAS_PER_PUBDATA_BYTE: u64 = 800;
+
+// The default gas per pubdata byte for L2 transactions, that is used, for instance, when we need to
+// insert some default value for type 2 transactions.
+// It is a realistic value, but it is large enough to fill into any batch regardless of the pubdata price.
+pub const DEFAULT_L2_TX_GAS_PER_PUBDATA_BYTE: u64 = 50_000;
diff --git a/core/lib/contracts/src/lib.rs b/core/lib/contracts/src/lib.rs
index de1a591b95f7..3ed725baa7da 100644
--- a/core/lib/contracts/src/lib.rs
+++ b/core/lib/contracts/src/lib.rs
@@ -38,7 +38,7 @@ const IERC20_CONTRACT_FILE: &str =
const FAIL_ON_RECEIVE_CONTRACT_FILE: &str =
"contracts/l1-contracts/artifacts/cache/solpp-generated-contracts/zksync/dev-contracts/FailOnReceive.sol/FailOnReceive.json";
const L2_BRIDGE_CONTRACT_FILE: &str =
- "contracts/l2-contracts/artifacts-zk/cache-zk/solpp-generated-contracts/bridge/interfaces/IL2Bridge.sol/IL2Bridge.json";
+ "contracts/l2-contracts/artifacts-zk/contracts-preprocessed/bridge/interfaces/IL2Bridge.sol/IL2Bridge.json";
const LOADNEXT_CONTRACT_FILE: &str =
"etc/contracts-test-data/artifacts-zk/contracts/loadnext/loadnext_contract.sol/LoadnextContract.json";
const LOADNEXT_SIMPLE_CONTRACT_FILE: &str =
@@ -147,6 +147,10 @@ pub fn deployer_contract() -> Contract {
load_sys_contract("ContractDeployer")
}
+pub fn l1_messenger_contract() -> Contract {
+ load_sys_contract("L1Messenger")
+}
+
pub fn eth_contract() -> Contract {
load_sys_contract("L2EthToken")
}
@@ -370,6 +374,13 @@ impl BaseSystemContracts {
BaseSystemContracts::load_with_bootloader(bootloader_bytecode)
}
+ pub fn playground_post_1_4_1() -> Self {
+ let bootloader_bytecode = read_zbin_bytecode(
+ "etc/multivm_bootloaders/vm_1_4_1/playground_batch.yul/playground_batch.yul.zbin",
+ );
+ BaseSystemContracts::load_with_bootloader(bootloader_bytecode)
+ }
+
/// BaseSystemContracts with playground bootloader - used for handling eth_calls.
pub fn estimate_gas() -> Self {
let bootloader_bytecode = read_bootloader_code("fee_estimate");
@@ -411,6 +422,13 @@ impl BaseSystemContracts {
BaseSystemContracts::load_with_bootloader(bootloader_bytecode)
}
+ pub fn estimate_gas_post_1_4_1() -> Self {
+ let bootloader_bytecode = read_zbin_bytecode(
+ "etc/multivm_bootloaders/vm_1_4_1/fee_estimate.yul/fee_estimate.yul.zbin",
+ );
+ BaseSystemContracts::load_with_bootloader(bootloader_bytecode)
+ }
+
pub fn hashes(&self) -> BaseSystemContractsHashes {
BaseSystemContractsHashes {
bootloader: self.bootloader.hash,
diff --git a/core/lib/dal/.sqlx/query-4c7df374959728085b12ef71c8c34ea99bfdcb422a5066529dde25308f961f37.json b/core/lib/dal/.sqlx/query-5880a85667ccc26d392ff6272e317afe4e38bcfe5ce93bf229d68622066ab8a1.json
similarity index 75%
rename from core/lib/dal/.sqlx/query-4c7df374959728085b12ef71c8c34ea99bfdcb422a5066529dde25308f961f37.json
rename to core/lib/dal/.sqlx/query-5880a85667ccc26d392ff6272e317afe4e38bcfe5ce93bf229d68622066ab8a1.json
index b6cf07da5200..31ce6f31993f 100644
--- a/core/lib/dal/.sqlx/query-4c7df374959728085b12ef71c8c34ea99bfdcb422a5066529dde25308f961f37.json
+++ b/core/lib/dal/.sqlx/query-5880a85667ccc26d392ff6272e317afe4e38bcfe5ce93bf229d68622066ab8a1.json
@@ -1,6 +1,6 @@
{
"db_name": "PostgreSQL",
- "query": "\n SELECT\n miniblocks.number,\n COALESCE(\n miniblocks.l1_batch_number,\n (\n SELECT\n (MAX(number) + 1)\n FROM\n l1_batches\n )\n ) AS \"l1_batch_number!\",\n (\n SELECT\n MAX(m2.number)\n FROM\n miniblocks m2\n WHERE\n miniblocks.l1_batch_number = m2.l1_batch_number\n ) AS \"last_batch_miniblock?\",\n miniblocks.timestamp,\n miniblocks.l1_gas_price,\n miniblocks.l2_fair_gas_price,\n miniblocks.bootloader_code_hash,\n miniblocks.default_aa_code_hash,\n miniblocks.virtual_blocks,\n miniblocks.hash,\n miniblocks.protocol_version AS \"protocol_version!\",\n l1_batches.fee_account_address AS \"fee_account_address?\"\n FROM\n miniblocks\n LEFT JOIN l1_batches ON miniblocks.l1_batch_number = l1_batches.number\n WHERE\n miniblocks.number = $1\n ",
+ "query": "\n SELECT\n miniblocks.number,\n COALESCE(\n miniblocks.l1_batch_number,\n (\n SELECT\n (MAX(number) + 1)\n FROM\n l1_batches\n )\n ) AS \"l1_batch_number!\",\n (\n SELECT\n MAX(m2.number)\n FROM\n miniblocks m2\n WHERE\n miniblocks.l1_batch_number = m2.l1_batch_number\n ) AS \"last_batch_miniblock?\",\n miniblocks.timestamp,\n miniblocks.l1_gas_price,\n miniblocks.l2_fair_gas_price,\n miniblocks.fair_pubdata_price,\n miniblocks.bootloader_code_hash,\n miniblocks.default_aa_code_hash,\n miniblocks.virtual_blocks,\n miniblocks.hash,\n miniblocks.protocol_version AS \"protocol_version!\",\n l1_batches.fee_account_address AS \"fee_account_address?\"\n FROM\n miniblocks\n LEFT JOIN l1_batches ON miniblocks.l1_batch_number = l1_batches.number\n WHERE\n miniblocks.number = $1\n ",
"describe": {
"columns": [
{
@@ -35,31 +35,36 @@
},
{
"ordinal": 6,
+ "name": "fair_pubdata_price",
+ "type_info": "Int8"
+ },
+ {
+ "ordinal": 7,
"name": "bootloader_code_hash",
"type_info": "Bytea"
},
{
- "ordinal": 7,
+ "ordinal": 8,
"name": "default_aa_code_hash",
"type_info": "Bytea"
},
{
- "ordinal": 8,
+ "ordinal": 9,
"name": "virtual_blocks",
"type_info": "Int8"
},
{
- "ordinal": 9,
+ "ordinal": 10,
"name": "hash",
"type_info": "Bytea"
},
{
- "ordinal": 10,
+ "ordinal": 11,
"name": "protocol_version!",
"type_info": "Int4"
},
{
- "ordinal": 11,
+ "ordinal": 12,
"name": "fee_account_address?",
"type_info": "Bytea"
}
@@ -78,11 +83,12 @@
false,
true,
true,
+ true,
false,
false,
true,
false
]
},
- "hash": "4c7df374959728085b12ef71c8c34ea99bfdcb422a5066529dde25308f961f37"
+ "hash": "5880a85667ccc26d392ff6272e317afe4e38bcfe5ce93bf229d68622066ab8a1"
}
diff --git a/core/lib/dal/.sqlx/query-5c39f043c9b36693b0a845eb36549374a2d931e62615bc7e6ecd0af957b42a13.json b/core/lib/dal/.sqlx/query-5c7b6b58261faa0a164181987eec4055c22895316ce68d9d41619db7fcfb7563.json
similarity index 72%
rename from core/lib/dal/.sqlx/query-5c39f043c9b36693b0a845eb36549374a2d931e62615bc7e6ecd0af957b42a13.json
rename to core/lib/dal/.sqlx/query-5c7b6b58261faa0a164181987eec4055c22895316ce68d9d41619db7fcfb7563.json
index fd793cb9b83b..cd76205be813 100644
--- a/core/lib/dal/.sqlx/query-5c39f043c9b36693b0a845eb36549374a2d931e62615bc7e6ecd0af957b42a13.json
+++ b/core/lib/dal/.sqlx/query-5c7b6b58261faa0a164181987eec4055c22895316ce68d9d41619db7fcfb7563.json
@@ -1,6 +1,6 @@
{
"db_name": "PostgreSQL",
- "query": "\n SELECT\n number,\n timestamp,\n hash,\n l1_tx_count,\n l2_tx_count,\n base_fee_per_gas,\n l1_gas_price,\n l2_fair_gas_price,\n bootloader_code_hash,\n default_aa_code_hash,\n protocol_version,\n virtual_blocks\n FROM\n miniblocks\n WHERE\n number = $1\n ",
+ "query": "\n SELECT\n number,\n timestamp,\n hash,\n l1_tx_count,\n l2_tx_count,\n base_fee_per_gas,\n l1_gas_price,\n l2_fair_gas_price,\n gas_per_pubdata_limit,\n bootloader_code_hash,\n default_aa_code_hash,\n protocol_version,\n virtual_blocks,\n fair_pubdata_price\n FROM\n miniblocks\n WHERE\n number = $1\n ",
"describe": {
"columns": [
{
@@ -45,23 +45,33 @@
},
{
"ordinal": 8,
+ "name": "gas_per_pubdata_limit",
+ "type_info": "Int8"
+ },
+ {
+ "ordinal": 9,
"name": "bootloader_code_hash",
"type_info": "Bytea"
},
{
- "ordinal": 9,
+ "ordinal": 10,
"name": "default_aa_code_hash",
"type_info": "Bytea"
},
{
- "ordinal": 10,
+ "ordinal": 11,
"name": "protocol_version",
"type_info": "Int4"
},
{
- "ordinal": 11,
+ "ordinal": 12,
"name": "virtual_blocks",
"type_info": "Int8"
+ },
+ {
+ "ordinal": 13,
+ "name": "fair_pubdata_price",
+ "type_info": "Int8"
}
],
"parameters": {
@@ -78,11 +88,13 @@
false,
false,
false,
+ false,
true,
true,
true,
- false
+ false,
+ true
]
},
- "hash": "5c39f043c9b36693b0a845eb36549374a2d931e62615bc7e6ecd0af957b42a13"
+ "hash": "5c7b6b58261faa0a164181987eec4055c22895316ce68d9d41619db7fcfb7563"
}
diff --git a/core/lib/dal/.sqlx/query-314f7e619a34efa89255a58c89f85d4402ff6005446bbded68c8d3dbca510f37.json b/core/lib/dal/.sqlx/query-65cc4517c3693c8bdb66b332151d4cb46ca093129707ee14f2fa42dc1800cc9e.json
similarity index 69%
rename from core/lib/dal/.sqlx/query-314f7e619a34efa89255a58c89f85d4402ff6005446bbded68c8d3dbca510f37.json
rename to core/lib/dal/.sqlx/query-65cc4517c3693c8bdb66b332151d4cb46ca093129707ee14f2fa42dc1800cc9e.json
index 3034791742c4..5f967c6d265b 100644
--- a/core/lib/dal/.sqlx/query-314f7e619a34efa89255a58c89f85d4402ff6005446bbded68c8d3dbca510f37.json
+++ b/core/lib/dal/.sqlx/query-65cc4517c3693c8bdb66b332151d4cb46ca093129707ee14f2fa42dc1800cc9e.json
@@ -1,6 +1,6 @@
{
"db_name": "PostgreSQL",
- "query": "\n INSERT INTO\n miniblocks (\n number,\n timestamp,\n hash,\n l1_tx_count,\n l2_tx_count,\n base_fee_per_gas,\n l1_gas_price,\n l2_fair_gas_price,\n gas_per_pubdata_limit,\n bootloader_code_hash,\n default_aa_code_hash,\n protocol_version,\n virtual_blocks,\n created_at,\n updated_at\n )\n VALUES\n ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10, $11, $12, $13, NOW(), NOW())\n ",
+ "query": "\n INSERT INTO\n miniblocks (\n number,\n timestamp,\n hash,\n l1_tx_count,\n l2_tx_count,\n base_fee_per_gas,\n l1_gas_price,\n l2_fair_gas_price,\n gas_per_pubdata_limit,\n bootloader_code_hash,\n default_aa_code_hash,\n protocol_version,\n virtual_blocks,\n fair_pubdata_price,\n created_at,\n updated_at\n )\n VALUES\n ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10, $11, $12, $13, $14, NOW(), NOW())\n ",
"describe": {
"columns": [],
"parameters": {
@@ -17,10 +17,11 @@
"Bytea",
"Bytea",
"Int4",
+ "Int8",
"Int8"
]
},
"nullable": []
},
- "hash": "314f7e619a34efa89255a58c89f85d4402ff6005446bbded68c8d3dbca510f37"
+ "hash": "65cc4517c3693c8bdb66b332151d4cb46ca093129707ee14f2fa42dc1800cc9e"
}
diff --git a/core/lib/dal/.sqlx/query-6ccb3beec0624153ef2e7bff61ba896e34b757421fca9682aecb3a98b54695a6.json b/core/lib/dal/.sqlx/query-66554ab87e5fe4776786217d1f71a525c87d390df21250ab4dce08e09be72591.json
similarity index 70%
rename from core/lib/dal/.sqlx/query-6ccb3beec0624153ef2e7bff61ba896e34b757421fca9682aecb3a98b54695a6.json
rename to core/lib/dal/.sqlx/query-66554ab87e5fe4776786217d1f71a525c87d390df21250ab4dce08e09be72591.json
index 69cb14ce7816..eb2ee1d31bc9 100644
--- a/core/lib/dal/.sqlx/query-6ccb3beec0624153ef2e7bff61ba896e34b757421fca9682aecb3a98b54695a6.json
+++ b/core/lib/dal/.sqlx/query-66554ab87e5fe4776786217d1f71a525c87d390df21250ab4dce08e09be72591.json
@@ -1,6 +1,6 @@
{
"db_name": "PostgreSQL",
- "query": "\n SELECT\n number,\n timestamp,\n hash,\n l1_tx_count,\n l2_tx_count,\n base_fee_per_gas,\n l1_gas_price,\n l2_fair_gas_price,\n bootloader_code_hash,\n default_aa_code_hash,\n protocol_version,\n virtual_blocks\n FROM\n miniblocks\n ORDER BY\n number DESC\n LIMIT\n 1\n ",
+ "query": "\n SELECT\n number,\n timestamp,\n hash,\n l1_tx_count,\n l2_tx_count,\n base_fee_per_gas,\n l1_gas_price,\n l2_fair_gas_price,\n gas_per_pubdata_limit,\n bootloader_code_hash,\n default_aa_code_hash,\n protocol_version,\n virtual_blocks,\n fair_pubdata_price\n FROM\n miniblocks\n ORDER BY\n number DESC\n LIMIT\n 1\n ",
"describe": {
"columns": [
{
@@ -45,23 +45,33 @@
},
{
"ordinal": 8,
+ "name": "gas_per_pubdata_limit",
+ "type_info": "Int8"
+ },
+ {
+ "ordinal": 9,
"name": "bootloader_code_hash",
"type_info": "Bytea"
},
{
- "ordinal": 9,
+ "ordinal": 10,
"name": "default_aa_code_hash",
"type_info": "Bytea"
},
{
- "ordinal": 10,
+ "ordinal": 11,
"name": "protocol_version",
"type_info": "Int4"
},
{
- "ordinal": 11,
+ "ordinal": 12,
"name": "virtual_blocks",
"type_info": "Int8"
+ },
+ {
+ "ordinal": 13,
+ "name": "fair_pubdata_price",
+ "type_info": "Int8"
}
],
"parameters": {
@@ -76,11 +86,13 @@
false,
false,
false,
+ false,
true,
true,
true,
- false
+ false,
+ true
]
},
- "hash": "6ccb3beec0624153ef2e7bff61ba896e34b757421fca9682aecb3a98b54695a6"
+ "hash": "66554ab87e5fe4776786217d1f71a525c87d390df21250ab4dce08e09be72591"
}
diff --git a/core/lib/dal/migrations/20231229181653_fair_pubdata_price.down.sql b/core/lib/dal/migrations/20231229181653_fair_pubdata_price.down.sql
new file mode 100644
index 000000000000..9002b3924e09
--- /dev/null
+++ b/core/lib/dal/migrations/20231229181653_fair_pubdata_price.down.sql
@@ -0,0 +1 @@
+ALTER TABLE miniblocks DROP COLUMN fair_pubdata_price;
diff --git a/core/lib/dal/migrations/20231229181653_fair_pubdata_price.up.sql b/core/lib/dal/migrations/20231229181653_fair_pubdata_price.up.sql
new file mode 100644
index 000000000000..f79547b11234
--- /dev/null
+++ b/core/lib/dal/migrations/20231229181653_fair_pubdata_price.up.sql
@@ -0,0 +1,2 @@
+ALTER TABLE miniblocks
+ ADD COLUMN IF NOT EXISTS fair_pubdata_price BIGINT;
diff --git a/core/lib/dal/src/blocks_dal.rs b/core/lib/dal/src/blocks_dal.rs
index 72f7ad926b52..87195d965ada 100644
--- a/core/lib/dal/src/blocks_dal.rs
+++ b/core/lib/dal/src/blocks_dal.rs
@@ -11,8 +11,7 @@ use zksync_types::{
aggregated_operations::AggregatedActionType,
block::{BlockGasCount, L1BatchHeader, MiniblockHeader},
commitment::{L1BatchMetadata, L1BatchWithMetadata},
- Address, L1BatchNumber, LogQuery, MiniblockNumber, ProtocolVersionId, H256,
- MAX_GAS_PER_PUBDATA_BYTE, U256,
+ Address, L1BatchNumber, LogQuery, MiniblockNumber, ProtocolVersionId, H256, U256,
};
use crate::{
@@ -595,6 +594,7 @@ impl BlocksDal<'_, '_> {
) -> anyhow::Result<()> {
let base_fee_per_gas = BigDecimal::from_u64(miniblock_header.base_fee_per_gas)
.context("base_fee_per_gas should fit in u64")?;
+
sqlx::query!(
r#"
INSERT INTO
@@ -612,11 +612,12 @@ impl BlocksDal<'_, '_> {
default_aa_code_hash,
protocol_version,
virtual_blocks,
+ fair_pubdata_price,
created_at,
updated_at
)
VALUES
- ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10, $11, $12, $13, NOW(), NOW())
+ ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10, $11, $12, $13, $14, NOW(), NOW())
"#,
miniblock_header.number.0 as i64,
miniblock_header.timestamp as i64,
@@ -626,7 +627,7 @@ impl BlocksDal<'_, '_> {
base_fee_per_gas,
miniblock_header.batch_fee_input.l1_gas_price() as i64,
miniblock_header.batch_fee_input.fair_l2_gas_price() as i64,
- MAX_GAS_PER_PUBDATA_BYTE as i64,
+ miniblock_header.gas_per_pubdata_limit as i64,
miniblock_header
.base_system_contracts_hashes
.bootloader
@@ -637,6 +638,7 @@ impl BlocksDal<'_, '_> {
.as_bytes(),
miniblock_header.protocol_version.map(|v| v as i32),
miniblock_header.virtual_blocks as i64,
+ miniblock_header.batch_fee_input.fair_pubdata_price() as i64,
)
.execute(self.storage.conn())
.await?;
@@ -658,10 +660,12 @@ impl BlocksDal<'_, '_> {
base_fee_per_gas,
l1_gas_price,
l2_fair_gas_price,
+ gas_per_pubdata_limit,
bootloader_code_hash,
default_aa_code_hash,
protocol_version,
- virtual_blocks
+ virtual_blocks,
+ fair_pubdata_price
FROM
miniblocks
ORDER BY
@@ -691,10 +695,12 @@ impl BlocksDal<'_, '_> {
base_fee_per_gas,
l1_gas_price,
l2_fair_gas_price,
+ gas_per_pubdata_limit,
bootloader_code_hash,
default_aa_code_hash,
protocol_version,
- virtual_blocks
+ virtual_blocks,
+ fair_pubdata_price
FROM
miniblocks
WHERE
diff --git a/core/lib/dal/src/models/proto/mod.proto b/core/lib/dal/src/models/proto/mod.proto
index 66f3ba411a06..33e8bbb03242 100644
--- a/core/lib/dal/src/models/proto/mod.proto
+++ b/core/lib/dal/src/models/proto/mod.proto
@@ -17,6 +17,7 @@ message Payload {
optional uint64 timestamp = 3; // required; seconds since UNIX epoch
optional uint64 l1_gas_price = 4; // required; gwei
optional uint64 l2_fair_gas_price = 5; // required; gwei
+ optional uint64 fair_pubdata_price = 11; // required since 1.4.1; gwei
optional uint32 virtual_blocks = 6; // required
optional bytes operator_address = 7; // required; H160
repeated Transaction transactions = 8;
diff --git a/core/lib/dal/src/models/storage_block.rs b/core/lib/dal/src/models/storage_block.rs
index 1e8e97d5dca1..2aa5e4d30efa 100644
--- a/core/lib/dal/src/models/storage_block.rs
+++ b/core/lib/dal/src/models/storage_block.rs
@@ -12,8 +12,9 @@ use zksync_types::{
api,
block::{L1BatchHeader, MiniblockHeader},
commitment::{L1BatchMetaParameters, L1BatchMetadata},
+ fee_model::{BatchFeeInput, L1PeggedBatchFeeModelInput, PubdataIndependentBatchFeeModelInput},
l2_to_l1_log::{L2ToL1Log, SystemL2ToL1Log, UserL2ToL1Log},
- Address, L1BatchNumber, MiniblockNumber, H2048, H256,
+ Address, L1BatchNumber, MiniblockNumber, ProtocolVersionId, H2048, H256,
};
#[derive(Debug, Error)]
@@ -518,6 +519,10 @@ pub struct StorageMiniblockHeader {
pub default_aa_code_hash: Option>,
pub protocol_version: Option,
+ pub fair_pubdata_price: Option,
+
+ pub gas_per_pubdata_limit: i64,
+
// The maximal number of virtual blocks that can be created with this miniblock.
// If this value is greater than zero, then at least 1 will be created, but no more than
// `min(virtual_blocks`, `miniblock_number - virtual_block_number`), i.e. making sure that virtual blocks
@@ -527,6 +532,27 @@ pub struct StorageMiniblockHeader {
impl From for MiniblockHeader {
fn from(row: StorageMiniblockHeader) -> Self {
+ let protocol_version = row.protocol_version.map(|v| (v as u16).try_into().unwrap());
+
+ let fee_input = protocol_version
+ .filter(|version: &ProtocolVersionId| version.is_post_1_4_1())
+ .map(|_| {
+ BatchFeeInput::PubdataIndependent(PubdataIndependentBatchFeeModelInput {
+ fair_pubdata_price: row
+ .fair_pubdata_price
+ .expect("No fair pubdata price for 1.4.1 miniblock")
+ as u64,
+ fair_l2_gas_price: row.l2_fair_gas_price as u64,
+ l1_gas_price: row.l1_gas_price as u64,
+ })
+ })
+ .unwrap_or_else(|| {
+ BatchFeeInput::L1Pegged(L1PeggedBatchFeeModelInput {
+ fair_l2_gas_price: row.l2_fair_gas_price as u64,
+ l1_gas_price: row.l1_gas_price as u64,
+ })
+ });
+
MiniblockHeader {
number: MiniblockNumber(row.number as u32),
timestamp: row.timestamp as u64,
@@ -534,16 +560,13 @@ impl From for MiniblockHeader {
l1_tx_count: row.l1_tx_count as u16,
l2_tx_count: row.l2_tx_count as u16,
base_fee_per_gas: row.base_fee_per_gas.to_u64().unwrap(),
- // For now, only L1 pegged fee model is supported.
- batch_fee_input: zksync_types::fee_model::BatchFeeInput::l1_pegged(
- row.l1_gas_price as u64,
- row.l2_fair_gas_price as u64,
- ),
+ batch_fee_input: fee_input,
base_system_contracts_hashes: convert_base_system_contracts_hashes(
row.bootloader_code_hash,
row.default_aa_code_hash,
),
- protocol_version: row.protocol_version.map(|v| (v as u16).try_into().unwrap()),
+ gas_per_pubdata_limit: row.gas_per_pubdata_limit as u64,
+ protocol_version,
virtual_blocks: row.virtual_blocks as u32,
}
}
diff --git a/core/lib/dal/src/models/storage_sync.rs b/core/lib/dal/src/models/storage_sync.rs
index 7ef804c2d809..2836d2820d80 100644
--- a/core/lib/dal/src/models/storage_sync.rs
+++ b/core/lib/dal/src/models/storage_sync.rs
@@ -16,6 +16,7 @@ pub(crate) struct StorageSyncBlock {
pub l1_gas_price: i64,
// L2 gas price assumed in the corresponding batch
pub l2_fair_gas_price: i64,
+ pub fair_pubdata_price: Option,
pub bootloader_code_hash: Option>,
pub default_aa_code_hash: Option>,
pub fee_account_address: Option>, // May be None if the block is not yet sealed
@@ -39,6 +40,7 @@ pub(crate) struct SyncBlock {
pub timestamp: u64,
pub l1_gas_price: u64,
pub l2_fair_gas_price: u64,
+ pub fair_pubdata_price: Option,
pub base_system_contracts_hashes: BaseSystemContractsHashes,
pub fee_account_address: Option,
pub virtual_blocks: u32,
@@ -64,6 +66,10 @@ impl TryFrom for SyncBlock {
.l2_fair_gas_price
.try_into()
.context("l2_fair_gas_price")?,
+ fair_pubdata_price: block
+ .fair_pubdata_price
+ .map(|v| v.try_into().context("fair_pubdata_price"))
+ .transpose()?,
// TODO (SMA-1635): Make these fields non optional in database
base_system_contracts_hashes: BaseSystemContractsHashes {
bootloader: parse_h256(
@@ -107,6 +113,7 @@ impl SyncBlock {
timestamp: self.timestamp,
l1_gas_price: self.l1_gas_price,
l2_fair_gas_price: self.l2_fair_gas_price,
+ fair_pubdata_price: self.fair_pubdata_price,
base_system_contracts_hashes: self.base_system_contracts_hashes,
operator_address: self.fee_account_address.unwrap_or(current_operator_address),
transactions,
@@ -128,6 +135,7 @@ impl SyncBlock {
timestamp: self.timestamp,
l1_gas_price: self.l1_gas_price,
l2_fair_gas_price: self.l2_fair_gas_price,
+ fair_pubdata_price: self.fair_pubdata_price,
virtual_blocks: self.virtual_blocks,
operator_address: self.fee_account_address.unwrap_or(current_operator_address),
transactions,
@@ -145,6 +153,7 @@ pub struct Payload {
pub timestamp: u64,
pub l1_gas_price: u64,
pub l2_fair_gas_price: u64,
+ pub fair_pubdata_price: Option,
pub virtual_blocks: u32,
pub operator_address: Address,
pub transactions: Vec,
@@ -178,6 +187,7 @@ impl ProtoFmt for Payload {
l1_gas_price: *required(&message.l1_gas_price).context("l1_gas_price")?,
l2_fair_gas_price: *required(&message.l2_fair_gas_price)
.context("l2_fair_gas_price")?,
+ fair_pubdata_price: message.fair_pubdata_price,
virtual_blocks: *required(&message.virtual_blocks).context("virtual_blocks")?,
operator_address: required(&message.operator_address)
.and_then(|a| parse_h160(a))
@@ -186,6 +196,7 @@ impl ProtoFmt for Payload {
last_in_batch: *required(&message.last_in_batch).context("last_in_batch")?,
})
}
+
fn build(&self) -> Self::Proto {
Self::Proto {
protocol_version: Some((self.protocol_version as u16).into()),
@@ -194,6 +205,7 @@ impl ProtoFmt for Payload {
timestamp: Some(self.timestamp),
l1_gas_price: Some(self.l1_gas_price),
l2_fair_gas_price: Some(self.l2_fair_gas_price),
+ fair_pubdata_price: self.fair_pubdata_price,
virtual_blocks: Some(self.virtual_blocks),
operator_address: Some(self.operator_address.as_bytes().into()),
// Transactions are stored in execution order, therefore order is deterministic.
diff --git a/core/lib/dal/src/sync_dal.rs b/core/lib/dal/src/sync_dal.rs
index 9ece7dad4841..53310603d2ce 100644
--- a/core/lib/dal/src/sync_dal.rs
+++ b/core/lib/dal/src/sync_dal.rs
@@ -43,6 +43,7 @@ impl SyncDal<'_, '_> {
miniblocks.timestamp,
miniblocks.l1_gas_price,
miniblocks.l2_fair_gas_price,
+ miniblocks.fair_pubdata_price,
miniblocks.bootloader_code_hash,
miniblocks.default_aa_code_hash,
miniblocks.virtual_blocks,
diff --git a/core/lib/dal/src/tests/mod.rs b/core/lib/dal/src/tests/mod.rs
index 1e4b4c95e4b7..5f6d2fddb27b 100644
--- a/core/lib/dal/src/tests/mod.rs
+++ b/core/lib/dal/src/tests/mod.rs
@@ -10,7 +10,7 @@ use zksync_types::{
l2::L2Tx,
tx::{tx_execution_info::TxExecutionStatus, ExecutionMetrics, TransactionExecutionResult},
Address, Execute, L1BlockNumber, L1TxCommonData, L2ChainId, MiniblockNumber, PriorityOpId,
- ProtocolVersionId, H160, H256, MAX_GAS_PER_PUBDATA_BYTE, U256,
+ ProtocolVersionId, H160, H256, U256,
};
use crate::{
@@ -36,6 +36,7 @@ pub(crate) fn create_miniblock_header(number: u32) -> MiniblockHeader {
hash: MiniblockHasher::new(number, 0, H256::zero()).finalize(protocol_version),
l1_tx_count: 0,
l2_tx_count: 0,
+ gas_per_pubdata_limit: 100,
base_fee_per_gas: 100,
batch_fee_input: BatchFeeInput::l1_pegged(100, 100),
base_system_contracts_hashes: BaseSystemContractsHashes::default(),
@@ -79,7 +80,7 @@ fn mock_l1_execute() -> L1Tx {
full_fee: U256::zero(),
gas_limit: U256::from(100_100),
max_fee_per_gas: U256::from(1u32),
- gas_per_pubdata_limit: MAX_GAS_PER_PUBDATA_BYTE.into(),
+ gas_per_pubdata_limit: 100.into(),
op_processing_type: OpProcessingType::Common,
priority_queue_type: PriorityQueueType::Deque,
eth_hash: H256::random(),
diff --git a/core/lib/env_config/src/api.rs b/core/lib/env_config/src/api.rs
index 3bffb281ad5c..5368122437ff 100644
--- a/core/lib/env_config/src/api.rs
+++ b/core/lib/env_config/src/api.rs
@@ -75,6 +75,7 @@ mod tests {
estimate_gas_scale_factor: 1.0f64,
gas_price_scale_factor: 1.2,
estimate_gas_acceptable_overestimation: 1000,
+ l1_to_l2_transactions_compatibility_mode: true,
max_tx_size: 1000000,
vm_execution_cache_misses_limit: None,
vm_concurrency_limit: Some(512),
@@ -119,6 +120,7 @@ mod tests {
API_WEB3_JSON_RPC_ACCOUNT_PKS="0x0000000000000000000000000000000000000000000000000000000000000001,0x0000000000000000000000000000000000000000000000000000000000000002"
API_WEB3_JSON_RPC_ESTIMATE_GAS_SCALE_FACTOR=1.0
API_WEB3_JSON_RPC_ESTIMATE_GAS_ACCEPTABLE_OVERESTIMATION=1000
+ API_WEB3_JSON_RPC_L1_TO_L2_TRANSACTIONS_COMPATIBILITY_MODE=true
API_WEB3_JSON_RPC_MAX_TX_SIZE=1000000
API_WEB3_JSON_RPC_VM_CONCURRENCY_LIMIT=512
API_WEB3_JSON_RPC_FACTORY_DEPS_CACHE_SIZE_MB=128
diff --git a/core/lib/env_config/src/chain.rs b/core/lib/env_config/src/chain.rs
index 22a397d290fc..c258c5092e51 100644
--- a/core/lib/env_config/src/chain.rs
+++ b/core/lib/env_config/src/chain.rs
@@ -37,6 +37,7 @@ impl FromEnv for MempoolConfig {
#[cfg(test)]
mod tests {
use zksync_basic_types::L2ChainId;
+ use zksync_config::configs::chain::FeeModelVersion;
use super::*;
use crate::test_utils::{addr, EnvMutex};
@@ -80,7 +81,13 @@ mod tests {
reject_tx_at_geometry_percentage: 0.3,
fee_account_addr: addr("de03a0B5963f75f1C8485B355fF6D30f3093BDE7"),
reject_tx_at_gas_percentage: 0.5,
- fair_l2_gas_price: 250000000,
+ minimal_l2_gas_price: 100000000,
+ compute_overhead_part: 0.0,
+ pubdata_overhead_part: 1.0,
+ batch_overhead_l1_gas: 800_000,
+ max_gas_per_batch: 200_000_000,
+ max_pubdata_per_batch: 100_000,
+ fee_model_version: FeeModelVersion::V2,
validation_computational_gas_limit: 10_000_000,
save_call_traces: false,
virtual_blocks_interval: 1,
@@ -107,7 +114,13 @@ mod tests {
CHAIN_STATE_KEEPER_BLOCK_COMMIT_DEADLINE_MS="2500"
CHAIN_STATE_KEEPER_MINIBLOCK_COMMIT_DEADLINE_MS="1000"
CHAIN_STATE_KEEPER_MINIBLOCK_SEAL_QUEUE_CAPACITY="10"
- CHAIN_STATE_KEEPER_FAIR_L2_GAS_PRICE="250000000"
+ CHAIN_STATE_KEEPER_MINIMAL_L2_GAS_PRICE="100000000"
+ CHAIN_STATE_KEEPER_COMPUTE_OVERHEAD_PART="0.0"
+ CHAIN_STATE_KEEPER_PUBDATA_OVERHEAD_PART="1.0"
+ CHAIN_STATE_KEEPER_BATCH_OVERHEAD_L1_GAS="800000"
+ CHAIN_STATE_KEEPER_MAX_GAS_PER_BATCH="200000000"
+ CHAIN_STATE_KEEPER_MAX_PUBDATA_PER_BATCH="100000"
+ CHAIN_STATE_KEEPER_FEE_MODEL_VERSION="V2"
CHAIN_STATE_KEEPER_VALIDATION_COMPUTATIONAL_GAS_LIMIT="10000000"
CHAIN_STATE_KEEPER_SAVE_CALL_TRACES="false"
CHAIN_STATE_KEEPER_UPLOAD_WITNESS_INPUTS_TO_GCS="false"
diff --git a/core/lib/multivm/Cargo.toml b/core/lib/multivm/Cargo.toml
index 5f87b5ae5543..fc7218e16e2c 100644
--- a/core/lib/multivm/Cargo.toml
+++ b/core/lib/multivm/Cargo.toml
@@ -10,11 +10,14 @@ keywords = ["blockchain", "zksync"]
categories = ["cryptography"]
[dependencies]
+zk_evm_1_4_1 = { package = "zk_evm", git = "https://github.com/matter-labs/era-zk_evm.git", branch = "v1.4.1" }
zk_evm_1_4_0 = { package = "zk_evm", git = "https://github.com/matter-labs/era-zk_evm.git", branch = "v1.4.0" }
zk_evm_1_3_3 = { package = "zk_evm", git = "https://github.com/matter-labs/era-zk_evm.git", tag= "v1.3.3-rc2" }
zk_evm_1_3_1 = { package = "zk_evm", git = "https://github.com/matter-labs/era-zk_evm.git", tag= "v1.3.1-rc2" }
zkevm_test_harness_1_4_0 = { git = "https://github.com/matter-labs/era-zkevm_test_harness.git", branch = "v1.4.0", package = "zkevm_test_harness" }
+zkevm_test_harness_1_4_1 = { git = "https://github.com/matter-labs/era-zkevm_test_harness.git", branch = "v1.4.1", package = "zkevm_test_harness" }
+
zksync_types = { path = "../types" }
zksync_state = { path = "../state" }
diff --git a/core/lib/multivm/src/glue/history_mode.rs b/core/lib/multivm/src/glue/history_mode.rs
index 40b33ec32bf6..f820477c10a5 100644
--- a/core/lib/multivm/src/glue/history_mode.rs
+++ b/core/lib/multivm/src/glue/history_mode.rs
@@ -7,14 +7,14 @@ pub trait HistoryMode:
+ GlueInto
+ GlueInto
+ GlueInto
- + GlueInto
+ + GlueInto
{
type VmM6Mode: crate::vm_m6::HistoryMode;
type Vm1_3_2Mode: crate::vm_1_3_2::HistoryMode;
type VmVirtualBlocksMode: crate::vm_virtual_blocks::HistoryMode;
type VmVirtualBlocksRefundsEnhancement: crate::vm_refunds_enhancement::HistoryMode;
type VmBoojumIntegration: crate::vm_boojum_integration::HistoryMode;
- type VmLatest: crate::vm_latest::HistoryMode;
+ type Vm1_4_1: crate::vm_latest::HistoryMode;
}
impl GlueFrom for crate::vm_m6::HistoryEnabled {
@@ -85,7 +85,7 @@ impl HistoryMode for crate::vm_latest::HistoryEnabled {
type VmVirtualBlocksMode = crate::vm_virtual_blocks::HistoryEnabled;
type VmVirtualBlocksRefundsEnhancement = crate::vm_refunds_enhancement::HistoryEnabled;
type VmBoojumIntegration = crate::vm_boojum_integration::HistoryEnabled;
- type VmLatest = crate::vm_latest::HistoryEnabled;
+ type Vm1_4_1 = crate::vm_latest::HistoryEnabled;
}
impl HistoryMode for crate::vm_latest::HistoryDisabled {
@@ -94,5 +94,5 @@ impl HistoryMode for crate::vm_latest::HistoryDisabled {
type VmVirtualBlocksMode = crate::vm_virtual_blocks::HistoryDisabled;
type VmVirtualBlocksRefundsEnhancement = crate::vm_refunds_enhancement::HistoryDisabled;
type VmBoojumIntegration = crate::vm_boojum_integration::HistoryDisabled;
- type VmLatest = crate::vm_latest::HistoryDisabled;
+ type Vm1_4_1 = crate::vm_latest::HistoryDisabled;
}
diff --git a/core/lib/multivm/src/glue/tracers/mod.rs b/core/lib/multivm/src/glue/tracers/mod.rs
index 860aaf6de330..10d9cbe8ed8d 100644
--- a/core/lib/multivm/src/glue/tracers/mod.rs
+++ b/core/lib/multivm/src/glue/tracers/mod.rs
@@ -51,7 +51,7 @@ pub trait MultiVMTracer:
}
pub trait IntoLatestTracer {
- fn latest(&self) -> crate::vm_latest::TracerPointer;
+ fn latest(&self) -> crate::vm_latest::TracerPointer;
}
pub trait IntoVmVirtualBlocksTracer {
@@ -76,9 +76,9 @@ impl IntoLatestTracer for T
where
S: WriteStorage,
H: HistoryMode,
- T: crate::vm_latest::VmTracer + Clone + 'static,
+ T: crate::vm_latest::VmTracer + Clone + 'static,
{
- fn latest(&self) -> crate::vm_latest::TracerPointer {
+ fn latest(&self) -> crate::vm_latest::TracerPointer {
Box::new(self.clone())
}
}
diff --git a/core/lib/multivm/src/glue/types/mod.rs b/core/lib/multivm/src/glue/types/mod.rs
index c72aff347577..03d003212f4b 100644
--- a/core/lib/multivm/src/glue/types/mod.rs
+++ b/core/lib/multivm/src/glue/types/mod.rs
@@ -7,3 +7,4 @@
mod vm;
mod zk_evm_1_3_1;
+mod zk_evm_1_4_1;
diff --git a/core/lib/multivm/src/glue/types/zk_evm_1_4_1.rs b/core/lib/multivm/src/glue/types/zk_evm_1_4_1.rs
new file mode 100644
index 000000000000..c4c4c06c7f8d
--- /dev/null
+++ b/core/lib/multivm/src/glue/types/zk_evm_1_4_1.rs
@@ -0,0 +1,65 @@
+use zk_evm_1_4_1::{
+ aux_structures::{LogQuery as LogQuery_1_4_1, Timestamp as Timestamp_1_4_1},
+ zkevm_opcode_defs::FarCallOpcode as FarCallOpcode_1_4_1,
+};
+use zksync_types::{FarCallOpcode, LogQuery, Timestamp};
+
+use crate::glue::{GlueFrom, GlueInto};
+
+impl GlueFrom for FarCallOpcode {
+ fn glue_from(value: FarCallOpcode_1_4_1) -> Self {
+ match value {
+ FarCallOpcode_1_4_1::Normal => FarCallOpcode::Normal,
+ FarCallOpcode_1_4_1::Delegate => FarCallOpcode::Delegate,
+ FarCallOpcode_1_4_1::Mimic => FarCallOpcode::Mimic,
+ }
+ }
+}
+
+impl GlueFrom for Timestamp {
+ fn glue_from(value: Timestamp_1_4_1) -> Timestamp {
+ Timestamp(value.0)
+ }
+}
+
+impl GlueFrom for Timestamp_1_4_1 {
+ fn glue_from(value: Timestamp) -> Timestamp_1_4_1 {
+ Timestamp_1_4_1(value.0)
+ }
+}
+
+impl GlueFrom for LogQuery {
+ fn glue_from(value: LogQuery_1_4_1) -> LogQuery {
+ LogQuery {
+ timestamp: value.timestamp.glue_into(),
+ tx_number_in_block: value.tx_number_in_block,
+ aux_byte: value.aux_byte,
+ shard_id: value.shard_id,
+ address: value.address,
+ key: value.key,
+ read_value: value.read_value,
+ written_value: value.written_value,
+ rw_flag: value.rw_flag,
+ rollback: value.rollback,
+ is_service: value.is_service,
+ }
+ }
+}
+
+impl GlueFrom for LogQuery_1_4_1 {
+ fn glue_from(value: LogQuery) -> LogQuery_1_4_1 {
+ LogQuery_1_4_1 {
+ timestamp: value.timestamp.glue_into(),
+ tx_number_in_block: value.tx_number_in_block,
+ aux_byte: value.aux_byte,
+ shard_id: value.shard_id,
+ address: value.address,
+ key: value.key,
+ read_value: value.read_value,
+ written_value: value.written_value,
+ rw_flag: value.rw_flag,
+ rollback: value.rollback,
+ is_service: value.is_service,
+ }
+ }
+}
diff --git a/core/lib/multivm/src/interface/traits/tracers/dyn_tracers/mod.rs b/core/lib/multivm/src/interface/traits/tracers/dyn_tracers/mod.rs
index bc34775e6133..8a0fbbe93cdc 100644
--- a/core/lib/multivm/src/interface/traits/tracers/dyn_tracers/mod.rs
+++ b/core/lib/multivm/src/interface/traits/tracers/dyn_tracers/mod.rs
@@ -1,2 +1,3 @@
pub mod vm_1_3_3;
pub mod vm_1_4_0;
+pub mod vm_1_4_1;
diff --git a/core/lib/multivm/src/interface/traits/tracers/dyn_tracers/vm_1_4_0.rs b/core/lib/multivm/src/interface/traits/tracers/dyn_tracers/vm_1_4_0.rs
index 3ce69d02942b..7237e24cb681 100644
--- a/core/lib/multivm/src/interface/traits/tracers/dyn_tracers/vm_1_4_0.rs
+++ b/core/lib/multivm/src/interface/traits/tracers/dyn_tracers/vm_1_4_0.rs
@@ -4,7 +4,7 @@ use zk_evm_1_4_0::{
};
use zksync_state::StoragePtr;
-/// Version of zk_evm_1_3_3::Tracer suitable for dynamic dispatch.
+/// Version of `zk_evm_1_4_0::Tracer` suitable for dynamic dispatch.
pub trait DynTracer {
fn before_decoding(&mut self, _state: VmLocalStateData<'_>, _memory: &M) {}
fn after_decoding(
diff --git a/core/lib/multivm/src/interface/traits/tracers/dyn_tracers/vm_1_4_1.rs b/core/lib/multivm/src/interface/traits/tracers/dyn_tracers/vm_1_4_1.rs
new file mode 100644
index 000000000000..4772d14cd20f
--- /dev/null
+++ b/core/lib/multivm/src/interface/traits/tracers/dyn_tracers/vm_1_4_1.rs
@@ -0,0 +1,33 @@
+use zk_evm_1_4_1::{
+ abstractions::Memory,
+ tracing::{AfterDecodingData, AfterExecutionData, BeforeExecutionData, VmLocalStateData},
+};
+use zksync_state::StoragePtr;
+
+/// Version of `zk_evm_1_4_1::Tracer` suitable for dynamic dispatch.
+pub trait DynTracer {
+ fn before_decoding(&mut self, _state: VmLocalStateData<'_>, _memory: &M) {}
+ fn after_decoding(
+ &mut self,
+ _state: VmLocalStateData<'_>,
+ _data: AfterDecodingData,
+ _memory: &M,
+ ) {
+ }
+ fn before_execution(
+ &mut self,
+ _state: VmLocalStateData<'_>,
+ _data: BeforeExecutionData,
+ _memory: &M,
+ _storage: StoragePtr,
+ ) {
+ }
+ fn after_execution(
+ &mut self,
+ _state: VmLocalStateData<'_>,
+ _data: AfterExecutionData,
+ _memory: &M,
+ _storage: StoragePtr,
+ ) {
+ }
+}
diff --git a/core/lib/multivm/src/interface/types/inputs/l1_batch_env.rs b/core/lib/multivm/src/interface/types/inputs/l1_batch_env.rs
index fe0577c6a471..3af7bcd3e05a 100644
--- a/core/lib/multivm/src/interface/types/inputs/l1_batch_env.rs
+++ b/core/lib/multivm/src/interface/types/inputs/l1_batch_env.rs
@@ -2,13 +2,15 @@ use zksync_types::{fee_model::BatchFeeInput, Address, L1BatchNumber, H256};
use super::L2BlockEnv;
-/// Unique params for each block
+/// Unique params for each batch
#[derive(Debug, Clone)]
pub struct L1BatchEnv {
// If previous batch hash is None, then this is the first batch
pub previous_batch_hash: Option,
pub number: L1BatchNumber,
pub timestamp: u64,
+
+ /// The fee input into the batch. It contains information such as L1 gas price, L2 fair gas price, etc.
pub fee_input: BatchFeeInput,
pub fee_account: Address,
pub enforced_base_fee: Option,
diff --git a/core/lib/multivm/src/lib.rs b/core/lib/multivm/src/lib.rs
index a2327eba6f89..f5a84a1dc60f 100644
--- a/core/lib/multivm/src/lib.rs
+++ b/core/lib/multivm/src/lib.rs
@@ -4,7 +4,7 @@
pub use zk_evm_1_3_1;
pub use zk_evm_1_3_3;
-pub use zk_evm_1_4_0;
+pub use zk_evm_1_4_1;
pub use zksync_types::vm_version::VmVersion;
pub use self::versions::{
diff --git a/core/lib/multivm/src/tracers/call_tracer/vm_latest/mod.rs b/core/lib/multivm/src/tracers/call_tracer/vm_latest/mod.rs
index 1c6221f1bf7d..d7889c910e2f 100644
--- a/core/lib/multivm/src/tracers/call_tracer/vm_latest/mod.rs
+++ b/core/lib/multivm/src/tracers/call_tracer/vm_latest/mod.rs
@@ -1,4 +1,4 @@
-use zk_evm_1_4_0::{
+use zk_evm_1_4_1::{
tracing::{AfterExecutionData, VmLocalStateData},
zkevm_opcode_defs::{
FarCallABI, FatPointer, Opcode, RetOpcode, CALL_IMPLICIT_CALLDATA_FAT_PTR_REGISTER,
@@ -13,8 +13,9 @@ use zksync_types::{
};
use crate::{
+ glue::GlueInto,
interface::{
- tracer::VmExecutionStopReason, traits::tracers::dyn_tracers::vm_1_4_0::DynTracer,
+ tracer::VmExecutionStopReason, traits::tracers::dyn_tracers::vm_1_4_1::DynTracer,
VmRevertReason,
},
tracers::call_tracer::CallTracer,
@@ -45,7 +46,7 @@ impl DynTracer> for CallTracer {
.unwrap_or(current_ergs);
let mut current_call = Call {
- r#type: CallType::Call(far_call),
+ r#type: CallType::Call(far_call.glue_into()),
gas: 0,
parent_gas,
..Default::default()
diff --git a/core/lib/multivm/src/tracers/multivm_dispatcher.rs b/core/lib/multivm/src/tracers/multivm_dispatcher.rs
index c7cbbf7f19bc..aee09fe0f497 100644
--- a/core/lib/multivm/src/tracers/multivm_dispatcher.rs
+++ b/core/lib/multivm/src/tracers/multivm_dispatcher.rs
@@ -30,7 +30,7 @@ impl Default for TracerDispatcher {
}
impl From>
- for crate::vm_latest::TracerDispatcher
+ for crate::vm_latest::TracerDispatcher
{
fn from(value: TracerDispatcher) -> Self {
Self::new(value.tracers.into_iter().map(|x| x.latest()).collect())
diff --git a/core/lib/multivm/src/tracers/storage_invocation/vm_latest/mod.rs b/core/lib/multivm/src/tracers/storage_invocation/vm_latest/mod.rs
index 46213ff54fc1..3fa04401782c 100644
--- a/core/lib/multivm/src/tracers/storage_invocation/vm_latest/mod.rs
+++ b/core/lib/multivm/src/tracers/storage_invocation/vm_latest/mod.rs
@@ -3,7 +3,7 @@ use zksync_state::WriteStorage;
use crate::{
interface::{
tracer::{TracerExecutionStatus, TracerExecutionStopReason},
- traits::tracers::dyn_tracers::vm_1_4_0::DynTracer,
+ traits::tracers::dyn_tracers::vm_1_4_1::DynTracer,
Halt,
},
tracers::storage_invocation::StorageInvocations,
diff --git a/core/lib/multivm/src/tracers/validator/vm_latest/mod.rs b/core/lib/multivm/src/tracers/validator/vm_latest/mod.rs
index f77a70041c50..095f1a20b38b 100644
--- a/core/lib/multivm/src/tracers/validator/vm_latest/mod.rs
+++ b/core/lib/multivm/src/tracers/validator/vm_latest/mod.rs
@@ -1,4 +1,4 @@
-use zk_evm_1_4_0::{
+use zk_evm_1_4_1::{
tracing::{BeforeExecutionData, VmLocalStateData},
zkevm_opcode_defs::{ContextOpcode, FarCallABI, LogOpcode, Opcode},
};
@@ -11,7 +11,7 @@ use zksync_utils::{h256_to_account_address, u256_to_account_address, u256_to_h25
use crate::{
interface::{
- traits::tracers::dyn_tracers::vm_1_4_0::DynTracer,
+ traits::tracers::dyn_tracers::vm_1_4_1::DynTracer,
types::tracer::{TracerExecutionStatus, TracerExecutionStopReason},
Halt,
},
@@ -33,7 +33,7 @@ impl ValidationTracer {
&mut self,
state: VmLocalStateData<'_>,
data: BeforeExecutionData,
- memory: &SimpleMemory,
+ memory: &SimpleMemory,
storage: StoragePtr,
) -> ValidationRoundResult {
if self.computational_gas_used > self.computational_gas_limit {
@@ -127,14 +127,14 @@ impl ValidationTracer {
}
}
-impl DynTracer>
+impl DynTracer>
for ValidationTracer
{
fn before_execution(
&mut self,
state: VmLocalStateData<'_>,
data: BeforeExecutionData,
- memory: &SimpleMemory,
+ memory: &SimpleMemory,
storage: StoragePtr,
) {
// For now, we support only validations for users.
@@ -182,10 +182,10 @@ impl DynTracer>
}
}
-impl VmTracer for ValidationTracer {
+impl VmTracer for ValidationTracer {
fn finish_cycle(
&mut self,
- _state: &mut ZkSyncVmState,
+ _state: &mut ZkSyncVmState,
_bootloader_state: &mut BootloaderState,
) -> TracerExecutionStatus {
if self.should_stop_execution {
diff --git a/core/lib/multivm/src/utils.rs b/core/lib/multivm/src/utils.rs
index 1f639124b94b..459739c45baf 100644
--- a/core/lib/multivm/src/utils.rs
+++ b/core/lib/multivm/src/utils.rs
@@ -38,6 +38,9 @@ pub fn derive_base_fee_and_gas_per_pubdata(
batch_fee_input.into_l1_pegged(),
)
}
+ VmVersion::Vm1_4_1 => crate::vm_latest::utils::fee::derive_base_fee_and_gas_per_pubdata(
+ batch_fee_input.into_pubdata_independent(),
+ ),
}
}
@@ -59,6 +62,7 @@ pub fn get_batch_base_fee(l1_batch_env: &L1BatchEnv, vm_version: VmVersion) -> u
VmVersion::VmBoojumIntegration => {
crate::vm_boojum_integration::utils::fee::get_batch_base_fee(l1_batch_env)
}
+ VmVersion::Vm1_4_1 => crate::vm_latest::utils::fee::get_batch_base_fee(l1_batch_env),
}
}
@@ -136,6 +140,7 @@ pub fn derive_overhead(
),
)
}
+ VmVersion::Vm1_4_1 => crate::vm_latest::utils::overhead::derive_overhead(encoded_len),
}
}
@@ -157,6 +162,7 @@ pub fn get_bootloader_encoding_space(version: VmVersion) -> u32 {
VmVersion::VmBoojumIntegration => {
crate::vm_boojum_integration::constants::BOOTLOADER_TX_ENCODING_SPACE
}
+ VmVersion::Vm1_4_1 => crate::vm_latest::constants::BOOTLOADER_TX_ENCODING_SPACE,
}
}
@@ -174,5 +180,70 @@ pub fn get_bootloader_max_txs_in_batch(version: VmVersion) -> usize {
crate::vm_refunds_enhancement::constants::MAX_TXS_IN_BLOCK
}
VmVersion::VmBoojumIntegration => crate::vm_boojum_integration::constants::MAX_TXS_IN_BLOCK,
+ VmVersion::Vm1_4_1 => crate::vm_latest::constants::MAX_TXS_IN_BATCH,
+ }
+}
+
+pub fn get_max_gas_per_pubdata_byte(version: VmVersion) -> u64 {
+ match version {
+ VmVersion::M5WithRefunds | VmVersion::M5WithoutRefunds => {
+ crate::vm_m5::vm_with_bootloader::MAX_GAS_PER_PUBDATA_BYTE
+ }
+ VmVersion::M6Initial | VmVersion::M6BugWithCompressionFixed => {
+ crate::vm_m6::vm_with_bootloader::MAX_GAS_PER_PUBDATA_BYTE
+ }
+ VmVersion::Vm1_3_2 => crate::vm_1_3_2::vm_with_bootloader::MAX_GAS_PER_PUBDATA_BYTE,
+ VmVersion::VmVirtualBlocks => crate::vm_virtual_blocks::constants::MAX_GAS_PER_PUBDATA_BYTE,
+ VmVersion::VmVirtualBlocksRefundsEnhancement => {
+ crate::vm_refunds_enhancement::constants::MAX_GAS_PER_PUBDATA_BYTE
+ }
+ VmVersion::VmBoojumIntegration => {
+ crate::vm_boojum_integration::constants::MAX_GAS_PER_PUBDATA_BYTE
+ }
+ VmVersion::Vm1_4_1 => crate::vm_latest::constants::MAX_GAS_PER_PUBDATA_BYTE,
+ }
+}
+
+pub fn get_used_bootloader_memory_bytes(version: VmVersion) -> usize {
+ match version {
+ VmVersion::M5WithRefunds | VmVersion::M5WithoutRefunds => {
+ crate::vm_m5::vm_with_bootloader::USED_BOOTLOADER_MEMORY_BYTES
+ }
+ VmVersion::M6Initial | VmVersion::M6BugWithCompressionFixed => {
+ crate::vm_m6::vm_with_bootloader::USED_BOOTLOADER_MEMORY_BYTES
+ }
+ VmVersion::Vm1_3_2 => crate::vm_1_3_2::vm_with_bootloader::USED_BOOTLOADER_MEMORY_BYTES,
+ VmVersion::VmVirtualBlocks => {
+ crate::vm_virtual_blocks::constants::USED_BOOTLOADER_MEMORY_BYTES
+ }
+ VmVersion::VmVirtualBlocksRefundsEnhancement => {
+ crate::vm_refunds_enhancement::constants::USED_BOOTLOADER_MEMORY_BYTES
+ }
+ VmVersion::VmBoojumIntegration => {
+ crate::vm_boojum_integration::constants::USED_BOOTLOADER_MEMORY_BYTES
+ }
+ VmVersion::Vm1_4_1 => crate::vm_latest::constants::USED_BOOTLOADER_MEMORY_BYTES,
+ }
+}
+
+pub fn get_used_bootloader_memory_words(version: VmVersion) -> usize {
+ match version {
+ VmVersion::M5WithRefunds | VmVersion::M5WithoutRefunds => {
+ crate::vm_m5::vm_with_bootloader::USED_BOOTLOADER_MEMORY_WORDS
+ }
+ VmVersion::M6Initial | VmVersion::M6BugWithCompressionFixed => {
+ crate::vm_m6::vm_with_bootloader::USED_BOOTLOADER_MEMORY_WORDS
+ }
+ VmVersion::Vm1_3_2 => crate::vm_1_3_2::vm_with_bootloader::USED_BOOTLOADER_MEMORY_WORDS,
+ VmVersion::VmVirtualBlocks => {
+ crate::vm_virtual_blocks::constants::USED_BOOTLOADER_MEMORY_WORDS
+ }
+ VmVersion::VmVirtualBlocksRefundsEnhancement => {
+ crate::vm_refunds_enhancement::constants::USED_BOOTLOADER_MEMORY_WORDS
+ }
+ VmVersion::VmBoojumIntegration => {
+ crate::vm_boojum_integration::constants::USED_BOOTLOADER_MEMORY_WORDS
+ }
+ VmVersion::Vm1_4_1 => crate::vm_latest::constants::USED_BOOTLOADER_MEMORY_WORDS,
}
}
diff --git a/core/lib/multivm/src/versions/vm_1_3_2/transaction_data.rs b/core/lib/multivm/src/versions/vm_1_3_2/transaction_data.rs
index 63d0418c2969..58d8d29b6044 100644
--- a/core/lib/multivm/src/versions/vm_1_3_2/transaction_data.rs
+++ b/core/lib/multivm/src/versions/vm_1_3_2/transaction_data.rs
@@ -10,8 +10,10 @@ use zksync_utils::{
address_to_h256, bytecode::hash_bytecode, bytes_to_be_words, ceil_div_u256, h256_to_u256,
};
+use super::vm_with_bootloader::MAX_TXS_IN_BLOCK;
use crate::vm_1_3_2::vm_with_bootloader::{
- BLOCK_OVERHEAD_GAS, BLOCK_OVERHEAD_PUBDATA, BOOTLOADER_TX_ENCODING_SPACE, MAX_TXS_IN_BLOCK,
+ BLOCK_OVERHEAD_GAS, BLOCK_OVERHEAD_PUBDATA, BOOTLOADER_TX_ENCODING_SPACE,
+ MAX_GAS_PER_PUBDATA_BYTE,
};
// This structure represents the data that is used by
@@ -58,12 +60,22 @@ impl From for TransactionData {
U256::zero()
};
+ // Ethereum transactions do not sign gas per pubdata limit, and so for them we need to use
+ // some default value. We use the maximum possible value that is allowed by the bootloader
+ // (i.e. we can not use u64::MAX, because the bootloader requires gas per pubdata for such
+ // transactions to be higher than `MAX_GAS_PER_PUBDATA_BYTE`).
+ let gas_per_pubdata_limit = if common_data.transaction_type.is_ethereum_type() {
+ MAX_GAS_PER_PUBDATA_BYTE.into()
+ } else {
+ common_data.fee.gas_per_pubdata_limit
+ };
+
TransactionData {
tx_type: (common_data.transaction_type as u32) as u8,
from: common_data.initiator_address,
to: execute_tx.execute.contract_address,
gas_limit: common_data.fee.gas_limit,
- pubdata_price_limit: common_data.fee.gas_per_pubdata_limit,
+ pubdata_price_limit: gas_per_pubdata_limit,
max_fee_per_gas: common_data.fee.max_fee_per_gas,
max_priority_fee_per_gas: common_data.fee.max_priority_fee_per_gas,
paymaster: common_data.paymaster_params.paymaster,
diff --git a/core/lib/multivm/src/versions/vm_1_3_2/vm_with_bootloader.rs b/core/lib/multivm/src/versions/vm_1_3_2/vm_with_bootloader.rs
index 8bf8c78235d4..c8d8d828c45c 100644
--- a/core/lib/multivm/src/versions/vm_1_3_2/vm_with_bootloader.rs
+++ b/core/lib/multivm/src/versions/vm_1_3_2/vm_with_bootloader.rs
@@ -13,11 +13,11 @@ use zk_evm_1_3_3::{
};
use zksync_contracts::BaseSystemContracts;
use zksync_state::WriteStorage;
+use zksync_system_constants::MAX_L2_TX_GAS_LIMIT;
use zksync_types::{
fee_model::L1PeggedBatchFeeModelInput, l1::is_l1_tx_type,
zkevm_test_harness::INITIAL_MONOTONIC_CYCLE_COUNTER, Address, Transaction, BOOTLOADER_ADDRESS,
- L1_GAS_PER_PUBDATA_BYTE, MAX_GAS_PER_PUBDATA_BYTE, MAX_NEW_FACTORY_DEPS, U256,
- USED_BOOTLOADER_MEMORY_WORDS,
+ L1_GAS_PER_PUBDATA_BYTE, MAX_NEW_FACTORY_DEPS, U256,
};
use zksync_utils::{
address_to_u256,
@@ -110,7 +110,7 @@ pub(crate) fn derive_base_fee_and_gas_per_pubdata(
(
base_fee,
- base_fee_to_gas_per_pubdata(l1_gas_price, base_fee),
+ base_fee_to_gas_per_pubdata(fee_input.l1_gas_price, base_fee),
)
}
@@ -135,6 +135,23 @@ impl From for DerivedBlockContext {
}
}
+/// The size of the bootloader memory in bytes which is used by the protocol.
+/// While the maximal possible size is a lot higher, we restrict ourselves to a certain limit to reduce
+/// the requirements on RAM.
+pub(crate) const USED_BOOTLOADER_MEMORY_BYTES: usize = 1 << 24;
+pub(crate) const USED_BOOTLOADER_MEMORY_WORDS: usize = USED_BOOTLOADER_MEMORY_BYTES / 32;
+
+// This the number of pubdata such that it should be always possible to publish
+// from a single transaction. Note, that these pubdata bytes include only bytes that are
+// to be published inside the body of transaction (i.e. excluding of factory deps).
+const GUARANTEED_PUBDATA_PER_L1_BATCH: u64 = 4000;
+
+// The users should always be able to provide `MAX_GAS_PER_PUBDATA_BYTE` gas per pubdata in their
+// transactions so that they are able to send at least `GUARANTEED_PUBDATA_PER_L1_BATCH` bytes per
+// transaction.
+pub(crate) const MAX_GAS_PER_PUBDATA_BYTE: u64 =
+ MAX_L2_TX_GAS_LIMIT / GUARANTEED_PUBDATA_PER_L1_BATCH;
+
// The maximal number of transactions in a single batch
pub(crate) const MAX_TXS_IN_BLOCK: usize = 1024;
@@ -180,7 +197,7 @@ pub const BOOTLOADER_TX_DESCRIPTION_OFFSET: usize =
COMPRESSED_BYTECODES_OFFSET + COMPRESSED_BYTECODES_SLOTS;
// The size of the bootloader memory dedicated to the encodings of transactions
-pub(crate) const BOOTLOADER_TX_ENCODING_SPACE: u32 =
+pub const BOOTLOADER_TX_ENCODING_SPACE: u32 =
(USED_BOOTLOADER_MEMORY_WORDS - TX_DESCRIPTION_OFFSET - MAX_TXS_IN_BLOCK) as u32;
// Size of the bootloader tx description in words
diff --git a/core/lib/multivm/src/versions/vm_boojum_integration/constants.rs b/core/lib/multivm/src/versions/vm_boojum_integration/constants.rs
index 7fc196974dc4..29a67aa20a65 100644
--- a/core/lib/multivm/src/versions/vm_boojum_integration/constants.rs
+++ b/core/lib/multivm/src/versions/vm_boojum_integration/constants.rs
@@ -2,13 +2,27 @@ use zk_evm_1_4_0::aux_structures::MemoryPage;
pub use zk_evm_1_4_0::zkevm_opcode_defs::system_params::{
ERGS_PER_CIRCUIT, INITIAL_STORAGE_WRITE_PUBDATA_BYTES, MAX_PUBDATA_PER_BLOCK,
};
-use zksync_system_constants::{
- L1_GAS_PER_PUBDATA_BYTE, MAX_L2_TX_GAS_LIMIT, MAX_NEW_FACTORY_DEPS,
- USED_BOOTLOADER_MEMORY_WORDS,
-};
+use zksync_system_constants::{L1_GAS_PER_PUBDATA_BYTE, MAX_L2_TX_GAS_LIMIT, MAX_NEW_FACTORY_DEPS};
use crate::vm_boojum_integration::old_vm::utils::heap_page_from_base;
+/// The size of the bootloader memory in bytes which is used by the protocol.
+/// While the maximal possible size is a lot higher, we restrict ourselves to a certain limit to reduce
+/// the requirements on RAM.
+pub(crate) const USED_BOOTLOADER_MEMORY_BYTES: usize = 1 << 24;
+pub(crate) const USED_BOOTLOADER_MEMORY_WORDS: usize = USED_BOOTLOADER_MEMORY_BYTES / 32;
+
+// This the number of pubdata such that it should be always possible to publish
+// from a single transaction. Note, that these pubdata bytes include only bytes that are
+// to be published inside the body of transaction (i.e. excluding of factory deps).
+pub(crate) const GUARANTEED_PUBDATA_PER_L1_BATCH: u64 = 4000;
+
+// The users should always be able to provide `MAX_GAS_PER_PUBDATA_BYTE` gas per pubdata in their
+// transactions so that they are able to send at least `GUARANTEED_PUBDATA_PER_L1_BATCH` bytes per
+// transaction.
+pub(crate) const MAX_GAS_PER_PUBDATA_BYTE: u64 =
+ MAX_L2_TX_GAS_LIMIT / GUARANTEED_PUBDATA_PER_L1_BATCH;
+
// The maximal number of transactions in a single batch
pub(crate) const MAX_TXS_IN_BLOCK: usize = 1024;
diff --git a/core/lib/multivm/src/versions/vm_boojum_integration/types/internals/transaction_data.rs b/core/lib/multivm/src/versions/vm_boojum_integration/types/internals/transaction_data.rs
index 277affb39ef3..81d967029f64 100644
--- a/core/lib/multivm/src/versions/vm_boojum_integration/types/internals/transaction_data.rs
+++ b/core/lib/multivm/src/versions/vm_boojum_integration/types/internals/transaction_data.rs
@@ -11,7 +11,10 @@ use zksync_types::{
};
use zksync_utils::{address_to_h256, bytecode::hash_bytecode, bytes_to_be_words, h256_to_u256};
-use crate::vm_boojum_integration::utils::overhead::{get_amortized_overhead, OverheadCoefficients};
+use crate::vm_boojum_integration::{
+ constants::MAX_GAS_PER_PUBDATA_BYTE,
+ utils::overhead::{get_amortized_overhead, OverheadCoefficients},
+};
/// This structure represents the data that is used by
/// the Bootloader to describe the transaction.
@@ -59,12 +62,22 @@ impl From for TransactionData {
U256::zero()
};
+ // Ethereum transactions do not sign gas per pubdata limit, and so for them we need to use
+ // some default value. We use the maximum possible value that is allowed by the bootloader
+ // (i.e. we can not use u64::MAX, because the bootloader requires gas per pubdata for such
+ // transactions to be higher than `MAX_GAS_PER_PUBDATA_BYTE`).
+ let gas_per_pubdata_limit = if common_data.transaction_type.is_ethereum_type() {
+ MAX_GAS_PER_PUBDATA_BYTE.into()
+ } else {
+ common_data.fee.gas_per_pubdata_limit
+ };
+
TransactionData {
tx_type: (common_data.transaction_type as u32) as u8,
from: common_data.initiator_address,
to: execute_tx.execute.contract_address,
gas_limit: common_data.fee.gas_limit,
- pubdata_price_limit: common_data.fee.gas_per_pubdata_limit,
+ pubdata_price_limit: gas_per_pubdata_limit,
max_fee_per_gas: common_data.fee.max_fee_per_gas,
max_priority_fee_per_gas: common_data.fee.max_priority_fee_per_gas,
paymaster: common_data.paymaster_params.paymaster,
diff --git a/core/lib/multivm/src/versions/vm_boojum_integration/utils/fee.rs b/core/lib/multivm/src/versions/vm_boojum_integration/utils/fee.rs
index 511dc7bccd57..55c7d0894598 100644
--- a/core/lib/multivm/src/versions/vm_boojum_integration/utils/fee.rs
+++ b/core/lib/multivm/src/versions/vm_boojum_integration/utils/fee.rs
@@ -1,10 +1,12 @@
//! Utility functions for vm
-use zksync_system_constants::MAX_GAS_PER_PUBDATA_BYTE;
use zksync_types::fee_model::L1PeggedBatchFeeModelInput;
use zksync_utils::ceil_div;
use crate::{
- vm_boojum_integration::old_vm::utils::eth_price_per_pubdata_byte, vm_latest::L1BatchEnv,
+ vm_boojum_integration::{
+ constants::MAX_GAS_PER_PUBDATA_BYTE, old_vm::utils::eth_price_per_pubdata_byte,
+ },
+ vm_latest::L1BatchEnv,
};
/// Calculates the amount of gas required to publish one byte of pubdata
diff --git a/core/lib/multivm/src/versions/vm_latest/bootloader_state/l2_block.rs b/core/lib/multivm/src/versions/vm_latest/bootloader_state/l2_block.rs
index 9a4ae2df871b..70b6a2b866ee 100644
--- a/core/lib/multivm/src/versions/vm_latest/bootloader_state/l2_block.rs
+++ b/core/lib/multivm/src/versions/vm_latest/bootloader_state/l2_block.rs
@@ -22,7 +22,7 @@ pub(crate) struct BootloaderL2Block {
// Number of the first L2 block tx in L1 batch
pub(crate) first_tx_index: usize,
pub(crate) max_virtual_blocks_to_create: u32,
- pub(super) txs: Vec,
+ pub(crate) txs: Vec,
}
impl BootloaderL2Block {
diff --git a/core/lib/multivm/src/versions/vm_latest/bootloader_state/tx.rs b/core/lib/multivm/src/versions/vm_latest/bootloader_state/tx.rs
index 21aee75b38b5..9f44d848a4ed 100644
--- a/core/lib/multivm/src/versions/vm_latest/bootloader_state/tx.rs
+++ b/core/lib/multivm/src/versions/vm_latest/bootloader_state/tx.rs
@@ -5,20 +5,20 @@ use crate::vm_latest::types::internals::TransactionData;
/// Information about tx necessary for execution in bootloader.
#[derive(Debug, Clone)]
-pub(super) struct BootloaderTx {
- pub(super) hash: H256,
+pub(crate) struct BootloaderTx {
+ pub(crate) hash: H256,
/// Encoded transaction
- pub(super) encoded: Vec,
+ pub(crate) encoded: Vec,
/// Compressed bytecodes, which has been published during this transaction
- pub(super) compressed_bytecodes: Vec,
+ pub(crate) compressed_bytecodes: Vec,
/// Refunds for this transaction
- pub(super) refund: u32,
+ pub(crate) refund: u32,
/// Gas overhead
- pub(super) gas_overhead: u32,
+ pub(crate) gas_overhead: u32,
/// Gas Limit for this transaction. It can be different from the gas limit inside the transaction
- pub(super) trusted_gas_limit: U256,
+ pub(crate) trusted_gas_limit: U256,
/// Offset of the tx in bootloader memory
- pub(super) offset: usize,
+ pub(crate) offset: usize,
}
impl BootloaderTx {
diff --git a/core/lib/multivm/src/versions/vm_latest/constants.rs b/core/lib/multivm/src/versions/vm_latest/constants.rs
index 944000178825..1652a2f9424d 100644
--- a/core/lib/multivm/src/versions/vm_latest/constants.rs
+++ b/core/lib/multivm/src/versions/vm_latest/constants.rs
@@ -1,16 +1,32 @@
-use zk_evm_1_4_0::aux_structures::MemoryPage;
-pub use zk_evm_1_4_0::zkevm_opcode_defs::system_params::{
+use zk_evm_1_4_1::aux_structures::MemoryPage;
+pub use zk_evm_1_4_1::zkevm_opcode_defs::system_params::{
ERGS_PER_CIRCUIT, INITIAL_STORAGE_WRITE_PUBDATA_BYTES, MAX_PUBDATA_PER_BLOCK,
};
-use zksync_system_constants::{
- L1_GAS_PER_PUBDATA_BYTE, MAX_L2_TX_GAS_LIMIT, MAX_NEW_FACTORY_DEPS,
- USED_BOOTLOADER_MEMORY_WORDS,
-};
+use zksync_system_constants::{MAX_L2_TX_GAS_LIMIT, MAX_NEW_FACTORY_DEPS};
use crate::vm_latest::old_vm::utils::heap_page_from_base;
-// The maximal number of transactions in a single batch
-pub(crate) const MAX_TXS_IN_BLOCK: usize = 1024;
+/// The size of the bootloader memory in bytes which is used by the protocol.
+/// While the maximal possible size is a lot higher, we restrict ourselves to a certain limit to reduce
+/// the requirements on RAM.
+/// In this version of the VM the used bootloader memory bytes has increased from `2^24`` to `24_000_000`.
+pub(crate) const USED_BOOTLOADER_MEMORY_BYTES: usize = 24_000_000;
+pub(crate) const USED_BOOTLOADER_MEMORY_WORDS: usize = USED_BOOTLOADER_MEMORY_BYTES / 32;
+
+// This the number of pubdata such that it should be always possible to publish
+// from a single transaction. Note, that these pubdata bytes include only bytes that are
+// to be published inside the body of transaction (i.e. excluding of factory deps).
+pub(crate) const GUARANTEED_PUBDATA_PER_L1_BATCH: u64 = 2500;
+
+// The users should always be able to provide `MAX_GAS_PER_PUBDATA_BYTE` gas per pubdata in their
+// transactions so that they are able to send at least `GUARANTEED_PUBDATA_PER_L1_BATCH` bytes per
+// transaction.
+pub(crate) const MAX_GAS_PER_PUBDATA_BYTE: u64 =
+ MAX_L2_TX_GAS_LIMIT / GUARANTEED_PUBDATA_PER_L1_BATCH;
+
+// The maximal number of transactions in a single batch.
+// In this version of the VM the limit has been increased from `1024` to to `10000`.
+pub(crate) const MAX_TXS_IN_BATCH: usize = 10000;
/// Max cycles for a single transaction.
pub const MAX_CYCLES_FOR_TX: u32 = u32::MAX;
@@ -18,6 +34,7 @@ pub const MAX_CYCLES_FOR_TX: u32 = u32::MAX;
/// The first 32 slots are reserved for debugging purposes
pub(crate) const DEBUG_SLOTS_OFFSET: usize = 8;
pub(crate) const DEBUG_FIRST_SLOTS: usize = 32;
+
/// The next 33 slots are reserved for dealing with the paymaster context (1 slot for storing length + 32 slots for storing the actual context).
pub(crate) const PAYMASTER_CONTEXT_SLOTS: usize = 32 + 1;
/// The next PAYMASTER_CONTEXT_SLOTS + 7 slots free slots are needed before each tx, so that the
@@ -35,7 +52,7 @@ const CURRENT_L2_TX_HASHES_SLOTS: usize = 2;
const NEW_FACTORY_DEPS_RESERVED_SLOTS: usize = MAX_NEW_FACTORY_DEPS + 4;
/// The operator can provide for each transaction the proposed minimal refund
-pub(crate) const OPERATOR_REFUNDS_SLOTS: usize = MAX_TXS_IN_BLOCK;
+pub(crate) const OPERATOR_REFUNDS_SLOTS: usize = MAX_TXS_IN_BATCH;
pub(crate) const OPERATOR_REFUNDS_OFFSET: usize = DEBUG_SLOTS_OFFSET
+ DEBUG_FIRST_SLOTS
@@ -44,10 +61,10 @@ pub(crate) const OPERATOR_REFUNDS_OFFSET: usize = DEBUG_SLOTS_OFFSET
+ NEW_FACTORY_DEPS_RESERVED_SLOTS;
pub(crate) const TX_OVERHEAD_OFFSET: usize = OPERATOR_REFUNDS_OFFSET + OPERATOR_REFUNDS_SLOTS;
-pub(crate) const TX_OVERHEAD_SLOTS: usize = MAX_TXS_IN_BLOCK;
+pub(crate) const TX_OVERHEAD_SLOTS: usize = MAX_TXS_IN_BATCH;
pub(crate) const TX_TRUSTED_GAS_LIMIT_OFFSET: usize = TX_OVERHEAD_OFFSET + TX_OVERHEAD_SLOTS;
-pub(crate) const TX_TRUSTED_GAS_LIMIT_SLOTS: usize = MAX_TXS_IN_BLOCK;
+pub(crate) const TX_TRUSTED_GAS_LIMIT_SLOTS: usize = MAX_TXS_IN_BATCH;
pub(crate) const COMPRESSED_BYTECODES_SLOTS: usize = 32768;
@@ -73,7 +90,7 @@ pub(crate) const BOOTLOADER_TX_DESCRIPTION_OFFSET: usize =
/// The size of the bootloader memory dedicated to the encodings of transactions
pub(crate) const BOOTLOADER_TX_ENCODING_SPACE: u32 =
- (USED_BOOTLOADER_MEMORY_WORDS - TX_DESCRIPTION_OFFSET - MAX_TXS_IN_BLOCK) as u32;
+ (USED_BOOTLOADER_MEMORY_WORDS - TX_DESCRIPTION_OFFSET - MAX_TXS_IN_BATCH) as u32;
// Size of the bootloader tx description in words
pub(crate) const BOOTLOADER_TX_DESCRIPTION_SIZE: usize = 2;
@@ -81,16 +98,13 @@ pub(crate) const BOOTLOADER_TX_DESCRIPTION_SIZE: usize = 2;
/// The actual descriptions of transactions should start after the minor descriptions and a MAX_POSTOP_SLOTS
/// free slots to allow postOp encoding.
pub(crate) const TX_DESCRIPTION_OFFSET: usize = BOOTLOADER_TX_DESCRIPTION_OFFSET
- + BOOTLOADER_TX_DESCRIPTION_SIZE * MAX_TXS_IN_BLOCK
+ + BOOTLOADER_TX_DESCRIPTION_SIZE * MAX_TXS_IN_BATCH
+ MAX_POSTOP_SLOTS;
pub(crate) const TX_GAS_LIMIT_OFFSET: usize = 4;
const INITIAL_BASE_PAGE: u32 = 8;
pub const BOOTLOADER_HEAP_PAGE: u32 = heap_page_from_base(MemoryPage(INITIAL_BASE_PAGE)).0;
-pub const BLOCK_OVERHEAD_GAS: u32 = 1200000;
-pub const BLOCK_OVERHEAD_L1_GAS: u32 = 1000000;
-pub const BLOCK_OVERHEAD_PUBDATA: u32 = BLOCK_OVERHEAD_L1_GAS / L1_GAS_PER_PUBDATA_BYTE;
/// VM Hooks are used for communication between bootloader and tracers.
/// The 'type' / 'opcode' is put into VM_HOOK_POSITION slot,
@@ -101,17 +115,15 @@ pub const VM_HOOK_POSITION: u32 = RESULT_SUCCESS_FIRST_SLOT - 1;
pub const VM_HOOK_PARAMS_COUNT: u32 = 2;
pub const VM_HOOK_PARAMS_START_POSITION: u32 = VM_HOOK_POSITION - VM_HOOK_PARAMS_COUNT;
-pub(crate) const MAX_MEM_SIZE_BYTES: u32 = 16777216; // 2^24
-
/// Arbitrary space in memory closer to the end of the page
pub const RESULT_SUCCESS_FIRST_SLOT: u32 =
- (MAX_MEM_SIZE_BYTES - (MAX_TXS_IN_BLOCK as u32) * 32) / 32;
+ ((USED_BOOTLOADER_MEMORY_BYTES as u32) - (MAX_TXS_IN_BATCH as u32) * 32) / 32;
/// How many gas bootloader is allowed to spend within one block.
/// Note that this value doesn't correspond to the gas limit of any particular transaction
/// (except for the fact that, of course, gas limit for each transaction should be <= `BLOCK_GAS_LIMIT`).
pub const BLOCK_GAS_LIMIT: u32 =
- zk_evm_1_4_0::zkevm_opcode_defs::system_params::VM_INITIAL_FRAME_ERGS;
+ zk_evm_1_4_1::zkevm_opcode_defs::system_params::VM_INITIAL_FRAME_ERGS;
/// How many gas is allowed to spend on a single transaction in eth_call method
pub const ETH_CALL_GAS_LIMIT: u32 = MAX_L2_TX_GAS_LIMIT as u32;
@@ -124,7 +136,35 @@ pub(crate) const TX_OPERATOR_L2_BLOCK_INFO_OFFSET: usize =
pub(crate) const TX_OPERATOR_SLOTS_PER_L2_BLOCK_INFO: usize = 4;
pub(crate) const TX_OPERATOR_L2_BLOCK_INFO_SLOTS: usize =
- (MAX_TXS_IN_BLOCK + 1) * TX_OPERATOR_SLOTS_PER_L2_BLOCK_INFO;
+ (MAX_TXS_IN_BATCH + 1) * TX_OPERATOR_SLOTS_PER_L2_BLOCK_INFO;
pub(crate) const COMPRESSED_BYTECODES_OFFSET: usize =
TX_OPERATOR_L2_BLOCK_INFO_OFFSET + TX_OPERATOR_L2_BLOCK_INFO_SLOTS;
+
+/// The maximal gas limit that gets passed into an L1->L2 transaction.
+///
+/// It is equal to the `MAX_GAS_PER_TRANSACTION` in the bootloader.
+/// We need to limit the number of gas that can be passed into the L1->L2 transaction due to the fact
+/// that unlike L2 transactions they can not be rejected by the operator and must be executed. In turn,
+/// this means that if a transaction spends more than `MAX_GAS_PER_TRANSACTION`, it use up all the limited resources of a batch.
+///
+/// It the gas limit cap on Mailbox for a priority transactions should generally be low enough to never cross that boundary, since
+/// artificially limiting the gas price is bad UX. However, during the transition between the pre-1.4.1 fee model and the 1.4.1 one,
+/// we need to process such transactions somehow.
+pub(crate) const PRIORITY_TX_MAX_GAS_LIMIT: usize = 80_000_000;
+
+/// The amount of gas to be charged for occupying a single slot of a transaction.
+/// It is roughly equal to `80kk/MAX_TRANSACTIONS_PER_BATCH`, i.e. how many gas would an L1->L2 transaction
+/// need to pay to compensate for the batch being closed.
+/// While the derived formula is used for the worst case for L1->L2 transaction, it suits L2 transactions as well
+/// and serves to compensate the operator for the fact that they need to process the transaction. In case batches start
+/// getting often sealed due to the slot limit being reached, the L2 fair gas price will be increased.
+pub(crate) const TX_SLOT_OVERHEAD_GAS: u32 = 10_000;
+
+/// The amount of gas to be charged for occupying a single byte of the bootloader's memory.
+/// It is roughly equal to `80kk/BOOTLOADER_MEMORY_FOR_TXS`, i.e. how many gas would an L1->L2 transaction
+/// need to pay to compensate for the batch being closed.
+/// While the derived formula is used for the worst case for L1->L2 transaction, it suits L2 transactions as well
+/// and serves to compensate the operator for the fact that they need to fill up the bootloader memory. In case batches start
+/// getting often sealed due to the memory limit being reached, the L2 fair gas price will be increased.
+pub(crate) const TX_MEMORY_OVERHEAD_GAS: u32 = 10;
diff --git a/core/lib/multivm/src/versions/vm_latest/implementation/execution.rs b/core/lib/multivm/src/versions/vm_latest/implementation/execution.rs
index 1dfdc5b36499..9bda37e20dd6 100644
--- a/core/lib/multivm/src/versions/vm_latest/implementation/execution.rs
+++ b/core/lib/multivm/src/versions/vm_latest/implementation/execution.rs
@@ -1,4 +1,4 @@
-use zk_evm_1_4_0::aux_structures::Timestamp;
+use zk_evm_1_4_1::aux_structures::Timestamp;
use zksync_state::WriteStorage;
use crate::{
@@ -19,7 +19,7 @@ use crate::{
impl Vm {
pub(crate) fn inspect_inner(
&mut self,
- dispatcher: TracerDispatcher,
+ dispatcher: TracerDispatcher,
execution_mode: VmExecutionMode,
) -> VmExecutionResultAndLogs {
let mut enable_refund_tracer = false;
@@ -38,13 +38,13 @@ impl Vm {
/// Collect the result from the default tracers.
fn inspect_and_collect_results(
&mut self,
- dispatcher: TracerDispatcher,
+ dispatcher: TracerDispatcher,
execution_mode: VmExecutionMode,
with_refund_tracer: bool,
) -> (VmExecutionStopReason, VmExecutionResultAndLogs) {
let refund_tracers =
with_refund_tracer.then_some(RefundsTracer::new(self.batch_env.clone()));
- let mut tx_tracer: DefaultExecutionTracer = DefaultExecutionTracer::new(
+ let mut tx_tracer: DefaultExecutionTracer = DefaultExecutionTracer::new(
self.system_env.default_validation_computational_gas_limit,
execution_mode,
dispatcher,
@@ -96,7 +96,7 @@ impl Vm {
/// Execute vm with given tracers until the stop reason is reached.
fn execute_with_default_tracer(
&mut self,
- tracer: &mut DefaultExecutionTracer,
+ tracer: &mut DefaultExecutionTracer,
) -> VmExecutionStopReason {
tracer.initialize_tracer(&mut self.state);
let result = loop {
diff --git a/core/lib/multivm/src/versions/vm_latest/implementation/gas.rs b/core/lib/multivm/src/versions/vm_latest/implementation/gas.rs
index 41443298658d..8b21e7aeca1a 100644
--- a/core/lib/multivm/src/versions/vm_latest/implementation/gas.rs
+++ b/core/lib/multivm/src/versions/vm_latest/implementation/gas.rs
@@ -20,7 +20,7 @@ impl Vm {
pub(crate) fn calculate_computational_gas_used(
&self,
- tracer: &DefaultExecutionTracer,
+ tracer: &DefaultExecutionTracer,
gas_remaining_before: u32,
spent_pubdata_counter_before: u32,
) -> u32 {
diff --git a/core/lib/multivm/src/versions/vm_latest/implementation/logs.rs b/core/lib/multivm/src/versions/vm_latest/implementation/logs.rs
index 9e0817aa9394..a2682ef03af6 100644
--- a/core/lib/multivm/src/versions/vm_latest/implementation/logs.rs
+++ b/core/lib/multivm/src/versions/vm_latest/implementation/logs.rs
@@ -1,4 +1,4 @@
-use zk_evm_1_4_0::aux_structures::Timestamp;
+use zk_evm_1_4_1::aux_structures::Timestamp;
use zksync_state::WriteStorage;
use zksync_types::{
event::extract_l2tol1logs_from_l1_messenger,
@@ -7,6 +7,7 @@ use zksync_types::{
};
use crate::{
+ glue::GlueInto,
interface::types::outputs::VmExecutionLogs,
vm_latest::{old_vm::utils::precompile_calls_count_after_timestamp, utils::logs, vm::Vm},
HistoryMode,
@@ -66,7 +67,7 @@ impl Vm {
logs::collect_events_and_l1_system_logs_after_timestamp(
&self.state,
&self.batch_env,
- from_timestamp,
+ from_timestamp.glue_into(),
)
}
}
diff --git a/core/lib/multivm/src/versions/vm_latest/implementation/snapshots.rs b/core/lib/multivm/src/versions/vm_latest/implementation/snapshots.rs
index d7cba6ffd24b..6f27c031d09e 100644
--- a/core/lib/multivm/src/versions/vm_latest/implementation/snapshots.rs
+++ b/core/lib/multivm/src/versions/vm_latest/implementation/snapshots.rs
@@ -1,7 +1,7 @@
use std::time::Duration;
use vise::{Buckets, EncodeLabelSet, EncodeLabelValue, Family, Histogram, Metrics};
-use zk_evm_1_4_0::aux_structures::Timestamp;
+use zk_evm_1_4_1::aux_structures::Timestamp;
use zksync_state::WriteStorage;
use crate::vm_latest::{
diff --git a/core/lib/multivm/src/versions/vm_latest/implementation/statistics.rs b/core/lib/multivm/src/versions/vm_latest/implementation/statistics.rs
index 3f88629ffb00..bdaf425ee27d 100644
--- a/core/lib/multivm/src/versions/vm_latest/implementation/statistics.rs
+++ b/core/lib/multivm/src/versions/vm_latest/implementation/statistics.rs
@@ -1,4 +1,4 @@
-use zk_evm_1_4_0::aux_structures::Timestamp;
+use zk_evm_1_4_1::aux_structures::Timestamp;
use zksync_state::WriteStorage;
use zksync_types::U256;
@@ -18,7 +18,7 @@ impl Vm {
&self,
timestamp_initial: Timestamp,
cycles_initial: u32,
- tracer: &DefaultExecutionTracer,
+ tracer: &DefaultExecutionTracer,
gas_remaining_before: u32,
gas_remaining_after: u32,
spent_pubdata_counter_before: u32,
diff --git a/core/lib/multivm/src/versions/vm_latest/implementation/tx.rs b/core/lib/multivm/src/versions/vm_latest/implementation/tx.rs
index 6293ea13617e..d7d948c8b573 100644
--- a/core/lib/multivm/src/versions/vm_latest/implementation/tx.rs
+++ b/core/lib/multivm/src/versions/vm_latest/implementation/tx.rs
@@ -1,4 +1,4 @@
-use zk_evm_1_4_0::aux_structures::Timestamp;
+use zk_evm_1_4_1::aux_structures::Timestamp;
use zksync_state::WriteStorage;
use zksync_types::{l1::is_l1_tx_type, Transaction};
@@ -7,7 +7,6 @@ use crate::{
constants::BOOTLOADER_HEAP_PAGE,
implementation::bytecode::{bytecode_to_factory_dep, compress_bytecodes},
types::internals::TransactionData,
- utils::fee::get_batch_gas_per_pubdata,
vm::Vm,
},
HistoryMode,
@@ -39,7 +38,7 @@ impl Vm {
.decommittment_processor
.populate(codes_for_decommiter, timestamp);
- let trusted_ergs_limit = tx.trusted_ergs_limit(get_batch_gas_per_pubdata(&self.batch_env));
+ let trusted_ergs_limit = tx.trusted_ergs_limit();
let memory = self.bootloader_state.push_tx(
tx,
@@ -61,8 +60,7 @@ impl Vm {
with_compression: bool,
) {
let tx: TransactionData = tx.into();
- let block_gas_per_pubdata_byte = get_batch_gas_per_pubdata(&self.batch_env);
- let overhead = tx.overhead_gas(block_gas_per_pubdata_byte as u32);
+ let overhead = tx.overhead_gas();
self.push_raw_transaction(tx, overhead, 0, with_compression);
}
}
diff --git a/core/lib/multivm/src/versions/vm_latest/old_vm/event_sink.rs b/core/lib/multivm/src/versions/vm_latest/old_vm/event_sink.rs
index 564d26fcbde3..7e3097aaeb44 100644
--- a/core/lib/multivm/src/versions/vm_latest/old_vm/event_sink.rs
+++ b/core/lib/multivm/src/versions/vm_latest/old_vm/event_sink.rs
@@ -1,7 +1,7 @@
use std::collections::HashMap;
use itertools::Itertools;
-use zk_evm_1_4_0::{
+use zk_evm_1_4_1::{
abstractions::EventSink,
aux_structures::{LogQuery, Timestamp},
reference_impls::event_sink::EventMessage,
diff --git a/core/lib/multivm/src/versions/vm_latest/old_vm/events.rs b/core/lib/multivm/src/versions/vm_latest/old_vm/events.rs
index eed8fee4ac86..fc97b6f4a419 100644
--- a/core/lib/multivm/src/versions/vm_latest/old_vm/events.rs
+++ b/core/lib/multivm/src/versions/vm_latest/old_vm/events.rs
@@ -1,4 +1,4 @@
-use zk_evm_1_4_0::{ethereum_types::Address, reference_impls::event_sink::EventMessage};
+use zk_evm_1_4_1::{ethereum_types::Address, reference_impls::event_sink::EventMessage};
use zksync_types::{L1BatchNumber, VmEvent, EVENT_WRITER_ADDRESS, H256};
use zksync_utils::{be_chunks_to_h256_words, h256_to_account_address};
diff --git a/core/lib/multivm/src/versions/vm_latest/old_vm/history_recorder.rs b/core/lib/multivm/src/versions/vm_latest/old_vm/history_recorder.rs
index d82fb60dd6e7..d4c5b6367a9b 100644
--- a/core/lib/multivm/src/versions/vm_latest/old_vm/history_recorder.rs
+++ b/core/lib/multivm/src/versions/vm_latest/old_vm/history_recorder.rs
@@ -1,6 +1,6 @@
use std::{collections::HashMap, fmt::Debug, hash::Hash};
-use zk_evm_1_4_0::{
+use zk_evm_1_4_1::{
aux_structures::Timestamp,
vm_state::PrimitiveValue,
zkevm_opcode_defs::{self},
@@ -770,7 +770,7 @@ impl HistoryRecorder, H> {
#[cfg(test)]
mod tests {
- use zk_evm_1_4_0::{aux_structures::Timestamp, vm_state::PrimitiveValue};
+ use zk_evm_1_4_1::{aux_structures::Timestamp, vm_state::PrimitiveValue};
use zksync_types::U256;
use crate::vm_latest::{
diff --git a/core/lib/multivm/src/versions/vm_latest/old_vm/memory.rs b/core/lib/multivm/src/versions/vm_latest/old_vm/memory.rs
index 388ed31b5134..120ff43acffb 100644
--- a/core/lib/multivm/src/versions/vm_latest/old_vm/memory.rs
+++ b/core/lib/multivm/src/versions/vm_latest/old_vm/memory.rs
@@ -1,4 +1,4 @@
-use zk_evm_1_4_0::{
+use zk_evm_1_4_1::{
abstractions::{Memory, MemoryType},
aux_structures::{MemoryPage, MemoryQuery, Timestamp},
vm_state::PrimitiveValue,
diff --git a/core/lib/multivm/src/versions/vm_latest/old_vm/oracles/decommitter.rs b/core/lib/multivm/src/versions/vm_latest/old_vm/oracles/decommitter.rs
index f9f0e57a2d14..86e8f6f6da1e 100644
--- a/core/lib/multivm/src/versions/vm_latest/old_vm/oracles/decommitter.rs
+++ b/core/lib/multivm/src/versions/vm_latest/old_vm/oracles/decommitter.rs
@@ -1,6 +1,6 @@
use std::{collections::HashMap, fmt::Debug};
-use zk_evm_1_4_0::{
+use zk_evm_1_4_1::{
abstractions::{DecommittmentProcessor, Memory, MemoryType},
aux_structures::{
DecommittmentQuery, MemoryIndex, MemoryLocation, MemoryPage, MemoryQuery, Timestamp,
@@ -14,8 +14,7 @@ use super::OracleWithHistory;
use crate::vm_latest::old_vm::history_recorder::{
HistoryEnabled, HistoryMode, HistoryRecorder, WithHistory,
};
-
-/// The main job of the DecommiterOracle is to implement the DecommitmentProcessor trait - that is
+/// The main job of the DecommiterOracle is to implement the DecommittmentProcessor trait - that is
/// used by the VM to 'load' bytecodes into memory.
#[derive(Debug)]
pub struct DecommitterOracle {
@@ -169,7 +168,7 @@ impl DecommittmentProcess
memory: &mut M,
) -> Result<
(
- zk_evm_1_4_0::aux_structures::DecommittmentQuery,
+ zk_evm_1_4_1::aux_structures::DecommittmentQuery,
Option>,
),
anyhow::Error,
diff --git a/core/lib/multivm/src/versions/vm_latest/old_vm/oracles/mod.rs b/core/lib/multivm/src/versions/vm_latest/old_vm/oracles/mod.rs
index 3f8d2d0f1383..7d463ad082be 100644
--- a/core/lib/multivm/src/versions/vm_latest/old_vm/oracles/mod.rs
+++ b/core/lib/multivm/src/versions/vm_latest/old_vm/oracles/mod.rs
@@ -1,4 +1,4 @@
-use zk_evm_1_4_0::aux_structures::Timestamp;
+use zk_evm_1_4_1::aux_structures::Timestamp;
pub(crate) mod decommitter;
pub(crate) mod precompile;
diff --git a/core/lib/multivm/src/versions/vm_latest/old_vm/oracles/precompile.rs b/core/lib/multivm/src/versions/vm_latest/old_vm/oracles/precompile.rs
index fed5c1b6c0e5..8de51a9619df 100644
--- a/core/lib/multivm/src/versions/vm_latest/old_vm/oracles/precompile.rs
+++ b/core/lib/multivm/src/versions/vm_latest/old_vm/oracles/precompile.rs
@@ -1,6 +1,6 @@
use std::convert::TryFrom;
-use zk_evm_1_4_0::{
+use zk_evm_1_4_1::{
abstractions::{Memory, PrecompileCyclesWitness, PrecompilesProcessor},
aux_structures::{LogQuery, MemoryQuery, Timestamp},
zk_evm_abstractions::precompiles::{ecrecover, keccak256, sha256, PrecompileAddress},
diff --git a/core/lib/multivm/src/versions/vm_latest/old_vm/oracles/storage.rs b/core/lib/multivm/src/versions/vm_latest/old_vm/oracles/storage.rs
deleted file mode 100644
index b2c471832e46..000000000000
--- a/core/lib/multivm/src/versions/vm_latest/old_vm/oracles/storage.rs
+++ /dev/null
@@ -1,337 +0,0 @@
-use std::collections::HashMap;
-
-use crate::vm_latest::old_vm::history_recorder::{
- AppDataFrameManagerWithHistory, HashMapHistoryEvent, HistoryEnabled, HistoryMode,
- HistoryRecorder, StorageWrapper, WithHistory,
-};
-
-use zk_evm_1_4_0::abstractions::RefundedAmounts;
-use zk_evm_1_4_0::zkevm_opcode_defs::system_params::INITIAL_STORAGE_WRITE_PUBDATA_BYTES;
-use zk_evm_1_4_0::{
- abstractions::{RefundType, Storage as VmStorageOracle},
- aux_structures::{LogQuery, Timestamp},
-};
-
-use zksync_state::{StoragePtr, WriteStorage};
-use zksync_types::utils::storage_key_for_eth_balance;
-use zksync_types::{
- AccountTreeId, Address, StorageKey, StorageLogQuery, StorageLogQueryType, BOOTLOADER_ADDRESS,
- U256,
-};
-use zksync_utils::u256_to_h256;
-
-use super::OracleWithHistory;
-
-// While the storage does not support different shards, it was decided to write the
-// code of the StorageOracle with the shard parameters in mind.
-pub(crate) fn triplet_to_storage_key(_shard_id: u8, address: Address, key: U256) -> StorageKey {
- StorageKey::new(AccountTreeId::new(address), u256_to_h256(key))
-}
-
-pub(crate) fn storage_key_of_log(query: &LogQuery) -> StorageKey {
- triplet_to_storage_key(query.shard_id, query.address, query.key)
-}
-
-#[derive(Debug)]
-pub struct StorageOracle {
- // Access to the persistent storage. Please note that it
- // is used only for read access. All the actual writes happen
- // after the execution ended.
- pub(crate) storage: HistoryRecorder, H>,
-
- pub(crate) frames_stack: AppDataFrameManagerWithHistory, H>,
-
- // The changes that have been paid for in previous transactions.
- // It is a mapping from storage key to the number of *bytes* that was paid by the user
- // to cover this slot.
- // `paid_changes` history is necessary
- pub(crate) paid_changes: HistoryRecorder, HistoryEnabled>,
-}
-
-impl OracleWithHistory for StorageOracle {
- fn rollback_to_timestamp(&mut self, timestamp: Timestamp) {
- self.frames_stack.rollback_to_timestamp(timestamp);
- self.storage.rollback_to_timestamp(timestamp);
- self.paid_changes.rollback_to_timestamp(timestamp);
- }
-}
-
-impl StorageOracle {
- pub fn new(storage: StoragePtr) -> Self {
- Self {
- storage: HistoryRecorder::from_inner(StorageWrapper::new(storage)),
- frames_stack: Default::default(),
- paid_changes: Default::default(),
- }
- }
-
- pub fn delete_history(&mut self) {
- self.frames_stack.delete_history();
- self.storage.delete_history();
- self.paid_changes.delete_history();
- }
-
- fn is_storage_key_free(&self, key: &StorageKey) -> bool {
- key.address() == &zksync_system_constants::SYSTEM_CONTEXT_ADDRESS
- || *key == storage_key_for_eth_balance(&BOOTLOADER_ADDRESS)
- }
-
- pub fn read_value(&mut self, mut query: LogQuery) -> LogQuery {
- let key = triplet_to_storage_key(query.shard_id, query.address, query.key);
- let current_value = self.storage.read_from_storage(&key);
-
- query.read_value = current_value;
-
- self.frames_stack.push_forward(
- Box::new(StorageLogQuery {
- log_query: query,
- log_type: StorageLogQueryType::Read,
- }),
- query.timestamp,
- );
-
- query
- }
-
- pub fn write_value(&mut self, mut query: LogQuery) -> LogQuery {
- let key = triplet_to_storage_key(query.shard_id, query.address, query.key);
- let current_value =
- self.storage
- .write_to_storage(key, query.written_value, query.timestamp);
-
- let is_initial_write = self.storage.get_ptr().borrow_mut().is_write_initial(&key);
- let log_query_type = if is_initial_write {
- StorageLogQueryType::InitialWrite
- } else {
- StorageLogQueryType::RepeatedWrite
- };
-
- query.read_value = current_value;
-
- let mut storage_log_query = StorageLogQuery {
- log_query: query,
- log_type: log_query_type,
- };
- self.frames_stack
- .push_forward(Box::new(storage_log_query), query.timestamp);
- storage_log_query.log_query.rollback = true;
- self.frames_stack
- .push_rollback(Box::new(storage_log_query), query.timestamp);
-
- query
- }
-
- // Returns the amount of funds that has been already paid for writes into the storage slot
- fn prepaid_for_write(&self, storage_key: &StorageKey) -> u32 {
- self.paid_changes
- .inner()
- .get(storage_key)
- .copied()
- .unwrap_or_default()
- }
-
- pub(crate) fn base_price_for_write(&self, query: &LogQuery) -> u32 {
- let storage_key = storage_key_of_log(query);
-
- if self.is_storage_key_free(&storage_key) {
- return 0;
- }
-
- let is_initial_write = self
- .storage
- .get_ptr()
- .borrow_mut()
- .is_write_initial(&storage_key);
-
- get_pubdata_price_bytes(query, is_initial_write)
- }
-
- // Returns the price of the update in terms of pubdata bytes.
- // TODO (SMA-1701): update VM to accept gas instead of pubdata.
- fn value_update_price(&self, query: &LogQuery) -> u32 {
- let storage_key = storage_key_of_log(query);
-
- let base_cost = self.base_price_for_write(query);
-
- let already_paid = self.prepaid_for_write(&storage_key);
-
- if base_cost <= already_paid {
- // Some other transaction has already paid for this slot, no need to pay anything
- 0u32
- } else {
- base_cost - already_paid
- }
- }
-
- /// Returns storage log queries from current frame where `log.log_query.timestamp >= from_timestamp`.
- pub(crate) fn storage_log_queries_after_timestamp(
- &self,
- from_timestamp: Timestamp,
- ) -> &[Box] {
- let logs = self.frames_stack.forward().current_frame();
-
- // Select all of the last elements where l.log_query.timestamp >= from_timestamp.
- // Note, that using binary search here is dangerous, because the logs are not sorted by timestamp.
- logs.rsplit(|l| l.log_query.timestamp < from_timestamp)
- .next()
- .unwrap_or(&[])
- }
-
- pub(crate) fn get_final_log_queries(&self) -> Vec {
- assert_eq!(
- self.frames_stack.len(),
- 1,
- "VM finished execution in unexpected state"
- );
-
- self.frames_stack
- .forward()
- .current_frame()
- .iter()
- .map(|x| **x)
- .collect()
- }
-
- pub(crate) fn get_size(&self) -> usize {
- let frames_stack_size = self.frames_stack.get_size();
- let paid_changes_size =
- self.paid_changes.inner().len() * std::mem::size_of::<(StorageKey, u32)>();
-
- frames_stack_size + paid_changes_size
- }
-
- pub(crate) fn get_history_size(&self) -> usize {
- let storage_size = self.storage.borrow_history(|h| h.len(), 0)
- * std::mem::size_of::< as WithHistory>::HistoryRecord>();
- let frames_stack_size = self.frames_stack.get_history_size();
- let paid_changes_size = self.paid_changes.borrow_history(|h| h.len(), 0)
- * std::mem::size_of::< as WithHistory>::HistoryRecord>();
- storage_size + frames_stack_size + paid_changes_size
- }
-}
-
-impl VmStorageOracle for StorageOracle {
- // Perform a storage read/write access by taking an partially filled query
- // and returning filled query and cold/warm marker for pricing purposes
- fn execute_partial_query(
- &mut self,
- _monotonic_cycle_counter: u32,
- query: LogQuery,
- ) -> LogQuery {
- // tracing::trace!(
- // "execute partial query cyc {:?} addr {:?} key {:?}, rw {:?}, wr {:?}, tx {:?}",
- // _monotonic_cycle_counter,
- // query.address,
- // query.key,
- // query.rw_flag,
- // query.written_value,
- // query.tx_number_in_block
- // );
- assert!(!query.rollback);
- if query.rw_flag {
- // The number of bytes that have been compensated by the user to perform this write
- let storage_key = storage_key_of_log(&query);
-
- // It is considered that the user has paid for the whole base price for the writes
- let to_pay_by_user = self.base_price_for_write(&query);
- let prepaid = self.prepaid_for_write(&storage_key);
-
- if to_pay_by_user > prepaid {
- self.paid_changes.apply_historic_record(
- HashMapHistoryEvent {
- key: storage_key,
- value: Some(to_pay_by_user),
- },
- query.timestamp,
- );
- }
- self.write_value(query)
- } else {
- self.read_value(query)
- }
- }
-
- // We can return the size of the refund before each storage query.
- // Note, that while the `RefundType` allows to provide refunds both in
- // `ergs` and `pubdata`, only refunds in pubdata will be compensated for the users
- fn estimate_refunds_for_write(
- &mut self, // to avoid any hacks inside, like prefetch
- _monotonic_cycle_counter: u32,
- partial_query: &LogQuery,
- ) -> RefundType {
- let price_to_pay = self.value_update_price(partial_query);
-
- RefundType::RepeatedWrite(RefundedAmounts {
- ergs: 0,
- // `INITIAL_STORAGE_WRITE_PUBDATA_BYTES` is the default amount of pubdata bytes the user pays for.
- pubdata_bytes: (INITIAL_STORAGE_WRITE_PUBDATA_BYTES as u32) - price_to_pay,
- })
- }
-
- // Indicate a start of execution frame for rollback purposes
- fn start_frame(&mut self, timestamp: Timestamp) {
- self.frames_stack.push_frame(timestamp);
- }
-
- // Indicate that execution frame went out from the scope, so we can
- // log the history and either rollback immediately or keep records to rollback later
- fn finish_frame(&mut self, timestamp: Timestamp, panicked: bool) {
- // If we panic then we append forward and rollbacks to the forward of parent,
- // otherwise we place rollbacks of child before rollbacks of the parent
- if panicked {
- // perform actual rollback
- for query in self.frames_stack.rollback().current_frame().iter().rev() {
- let read_value = match query.log_type {
- StorageLogQueryType::Read => {
- // Having Read logs in rollback is not possible
- tracing::warn!("Read log in rollback queue {:?}", query);
- continue;
- }
- StorageLogQueryType::InitialWrite | StorageLogQueryType::RepeatedWrite => {
- query.log_query.read_value
- }
- };
-
- let LogQuery { written_value, .. } = query.log_query;
- let key = triplet_to_storage_key(
- query.log_query.shard_id,
- query.log_query.address,
- query.log_query.key,
- );
- let current_value = self.storage.write_to_storage(
- key,
- // NOTE, that since it is a rollback query,
- // the `read_value` is being set
- read_value, timestamp,
- );
-
- // Additional validation that the current value was correct
- // Unwrap is safe because the return value from write_inner is the previous value in this leaf.
- // It is impossible to set leaf value to `None`
- assert_eq!(current_value, written_value);
- }
-
- self.frames_stack
- .move_rollback_to_forward(|_| true, timestamp);
- }
- self.frames_stack.merge_frame(timestamp);
- }
-}
-
-/// Returns the number of bytes needed to publish a slot.
-// Since we need to publish the state diffs onchain, for each of the updated storage slot
-// we basically need to publish the following pair: ().
-// While new_value is always 32 bytes long, for key we use the following optimization:
-// - The first time we publish it, we use 32 bytes.
-// Then, we remember a 8-byte id for this slot and assign it to it. We call this initial write.
-// - The second time we publish it, we will use this 8-byte instead of the 32 bytes of the entire key.
-// So the total size of the publish pubdata is 40 bytes. We call this kind of write the repeated one
-fn get_pubdata_price_bytes(_query: &LogQuery, is_initial: bool) -> u32 {
- // TODO (SMA-1702): take into account the content of the log query, i.e. values that contain mostly zeroes
- // should cost less.
- if is_initial {
- zk_evm_1_4_0::zkevm_opcode_defs::system_params::INITIAL_STORAGE_WRITE_PUBDATA_BYTES as u32
- } else {
- zk_evm_1_4_0::zkevm_opcode_defs::system_params::REPEATED_STORAGE_WRITE_PUBDATA_BYTES as u32
- }
-}
diff --git a/core/lib/multivm/src/versions/vm_latest/old_vm/utils.rs b/core/lib/multivm/src/versions/vm_latest/old_vm/utils.rs
index 0fca670949d1..6320c6bcb1fe 100644
--- a/core/lib/multivm/src/versions/vm_latest/old_vm/utils.rs
+++ b/core/lib/multivm/src/versions/vm_latest/old_vm/utils.rs
@@ -1,4 +1,4 @@
-use zk_evm_1_4_0::{
+use zk_evm_1_4_1::{
aux_structures::{MemoryPage, Timestamp},
vm_state::PrimitiveValue,
zkevm_opcode_defs::{
@@ -7,7 +7,6 @@ use zk_evm_1_4_0::{
},
};
use zksync_state::WriteStorage;
-use zksync_system_constants::L1_GAS_PER_PUBDATA_BYTE;
use zksync_types::{Address, U256};
use crate::vm_latest::{
@@ -96,12 +95,6 @@ pub(crate) fn precompile_calls_count_after_timestamp(
sorted_timestamps.len() - sorted_timestamps.partition_point(|t| *t < from_timestamp)
}
-pub(crate) fn eth_price_per_pubdata_byte(l1_gas_price: u64) -> u64 {
- // This value will typically be a lot less than u64
- // unless the gas price on L1 goes beyond tens of millions of gwei
- l1_gas_price * (L1_GAS_PER_PUBDATA_BYTE as u64)
-}
-
pub(crate) fn vm_may_have_ended_inner(
vm: &ZkSyncVmState,
) -> Option {
diff --git a/core/lib/multivm/src/versions/vm_latest/oracles/storage.rs b/core/lib/multivm/src/versions/vm_latest/oracles/storage.rs
index d80a545ff67f..72d6e1f696b3 100644
--- a/core/lib/multivm/src/versions/vm_latest/oracles/storage.rs
+++ b/core/lib/multivm/src/versions/vm_latest/oracles/storage.rs
@@ -1,6 +1,6 @@
use std::collections::HashMap;
-use zk_evm_1_4_0::{
+use zk_evm_1_4_1::{
abstractions::{RefundType, RefundedAmounts, Storage as VmStorageOracle},
aux_structures::{LogQuery, Timestamp},
zkevm_opcode_defs::system_params::INITIAL_STORAGE_WRITE_PUBDATA_BYTES,
@@ -17,12 +17,15 @@ use zksync_types::{
};
use zksync_utils::u256_to_h256;
-use crate::vm_latest::old_vm::{
- history_recorder::{
- AppDataFrameManagerWithHistory, HashMapHistoryEvent, HistoryEnabled, HistoryMode,
- HistoryRecorder, StorageWrapper, VectorHistoryEvent, WithHistory,
+use crate::{
+ glue::GlueInto,
+ vm_latest::old_vm::{
+ history_recorder::{
+ AppDataFrameManagerWithHistory, HashMapHistoryEvent, HistoryEnabled, HistoryMode,
+ HistoryRecorder, StorageWrapper, VectorHistoryEvent, WithHistory,
+ },
+ oracles::OracleWithHistory,
},
- oracles::OracleWithHistory,
};
// While the storage does not support different shards, it was decided to write the
@@ -133,7 +136,7 @@ impl StorageOracle {
self.frames_stack.push_forward(
Box::new(StorageLogQuery {
- log_query: query,
+ log_query: query.glue_into(),
log_type: StorageLogQueryType::Read,
}),
query.timestamp,
@@ -161,7 +164,7 @@ impl StorageOracle {
self.set_initial_value(&key, current_value, query.timestamp);
let mut storage_log_query = StorageLogQuery {
- log_query: query,
+ log_query: query.glue_into(),
log_type: log_query_type,
};
self.frames_stack
@@ -294,7 +297,7 @@ impl StorageOracle {
// Select all of the last elements where `l.log_query.timestamp >= from_timestamp`.
// Note, that using binary search here is dangerous, because the logs are not sorted by timestamp.
- logs.rsplit(|l| l.log_query.timestamp < from_timestamp)
+ logs.rsplit(|l| l.log_query.timestamp < from_timestamp.glue_into())
.next()
.unwrap_or(&[])
}
@@ -431,7 +434,7 @@ impl VmStorageOracle for StorageOracle {
}
};
- let LogQuery { written_value, .. } = query.log_query;
+ let LogQuery { written_value, .. } = query.log_query.glue_into();
let key = triplet_to_storage_key(
query.log_query.shard_id,
query.log_query.address,
diff --git a/core/lib/multivm/src/versions/vm_latest/tests/l1_tx_execution.rs b/core/lib/multivm/src/versions/vm_latest/tests/l1_tx_execution.rs
index a8e53021848e..fe2987d76ac5 100644
--- a/core/lib/multivm/src/versions/vm_latest/tests/l1_tx_execution.rs
+++ b/core/lib/multivm/src/versions/vm_latest/tests/l1_tx_execution.rs
@@ -1,9 +1,11 @@
-use zksync_system_constants::BOOTLOADER_ADDRESS;
+use ethabi::Token;
+use zksync_contracts::l1_messenger_contract;
+use zksync_system_constants::{BOOTLOADER_ADDRESS, L1_MESSENGER_ADDRESS};
use zksync_types::{
get_code_key, get_known_code_key,
l2_to_l1_log::{L2ToL1Log, UserL2ToL1Log},
storage_writes_deduplicator::StorageWritesDeduplicator,
- U256,
+ Execute, ExecuteTransactionCommon, U256,
};
use zksync_utils::u256_to_h256;
@@ -137,3 +139,51 @@ fn test_l1_tx_execution() {
// There are only basic initial writes
assert_eq!(res.initial_storage_writes - basic_initial_writes, 2);
}
+
+#[test]
+fn test_l1_tx_execution_high_gas_limit() {
+ // In this test, we try to execute an L1->L2 transaction with a high gas limit.
+ // Usually priority transactions with dangerously gas limit should even pass the checks on the L1,
+ // however, they might pass during the transition period to the new fee model, so we check that we can safely process those.
+
+ let mut vm = VmTesterBuilder::new(HistoryEnabled)
+ .with_empty_in_memory_storage()
+ .with_base_system_smart_contracts(BASE_SYSTEM_CONTRACTS.clone())
+ .with_execution_mode(TxExecutionMode::VerifyExecute)
+ .with_random_rich_accounts(1)
+ .build();
+
+ let account = &mut vm.rich_accounts[0];
+
+ let l1_messenger = l1_messenger_contract();
+
+ let contract_function = l1_messenger.function("sendToL1").unwrap();
+ let params = [
+ // Even a message of size 100k should not be able to be sent by a priority transaction
+ Token::Bytes(vec![0u8; 100_000]),
+ ];
+ let calldata = contract_function.encode_input(¶ms).unwrap();
+
+ let mut tx = account.get_l1_tx(
+ Execute {
+ contract_address: L1_MESSENGER_ADDRESS,
+ value: 0.into(),
+ factory_deps: None,
+ calldata,
+ },
+ 0,
+ );
+
+ if let ExecuteTransactionCommon::L1(data) = &mut tx.common_data {
+ // Using some large gas limit
+ data.gas_limit = 300_000_000.into();
+ } else {
+ unreachable!()
+ };
+
+ vm.vm.push_transaction(tx);
+
+ let res = vm.vm.execute(VmExecutionMode::OneTx);
+
+ assert!(res.result.is_failed(), "The transaction should've failed");
+}
diff --git a/core/lib/multivm/src/versions/vm_latest/tests/l2_blocks.rs b/core/lib/multivm/src/versions/vm_latest/tests/l2_blocks.rs
index 1faeba9652f9..d103ebf7ebcb 100644
--- a/core/lib/multivm/src/versions/vm_latest/tests/l2_blocks.rs
+++ b/core/lib/multivm/src/versions/vm_latest/tests/l2_blocks.rs
@@ -3,7 +3,7 @@
//! The description for each of the tests can be found in the corresponding `.yul` file.
//!
-use zk_evm_1_4_0::aux_structures::Timestamp;
+use zk_evm_1_4_1::aux_structures::Timestamp;
use zksync_state::WriteStorage;
use zksync_system_constants::REQUIRED_L1_TO_L2_GAS_PER_PUBDATA_BYTE;
use zksync_types::{
diff --git a/core/lib/multivm/src/versions/vm_latest/tests/precompiles.rs b/core/lib/multivm/src/versions/vm_latest/tests/precompiles.rs
index 4f78319bc42e..8556b17fd5bb 100644
--- a/core/lib/multivm/src/versions/vm_latest/tests/precompiles.rs
+++ b/core/lib/multivm/src/versions/vm_latest/tests/precompiles.rs
@@ -1,4 +1,4 @@
-use zk_evm_1_4_0::zk_evm_abstractions::precompiles::PrecompileAddress;
+use zk_evm_1_4_1::zk_evm_abstractions::precompiles::PrecompileAddress;
use zksync_types::{Address, Execute};
use crate::{
diff --git a/core/lib/multivm/src/versions/vm_latest/tests/refunds.rs b/core/lib/multivm/src/versions/vm_latest/tests/refunds.rs
index 7746121c1cff..5662ee1fd665 100644
--- a/core/lib/multivm/src/versions/vm_latest/tests/refunds.rs
+++ b/core/lib/multivm/src/versions/vm_latest/tests/refunds.rs
@@ -6,7 +6,6 @@ use crate::{
utils::read_test_contract,
},
types::internals::TransactionData,
- utils::fee::get_batch_gas_per_pubdata,
HistoryEnabled,
},
};
@@ -61,9 +60,8 @@ fn test_predetermined_refunded_gas() {
.build();
let tx: TransactionData = tx.into();
- let block_gas_per_pubdata_byte = get_batch_gas_per_pubdata(&vm.vm.batch_env);
// Overhead
- let overhead = tx.overhead_gas(block_gas_per_pubdata_byte as u32);
+ let overhead = tx.overhead_gas();
vm.vm
.push_raw_transaction(tx.clone(), overhead, result.refunds.gas_refunded, true);
diff --git a/core/lib/multivm/src/versions/vm_latest/tests/rollbacks.rs b/core/lib/multivm/src/versions/vm_latest/tests/rollbacks.rs
index 23c1ab49ad98..188941d74d77 100644
--- a/core/lib/multivm/src/versions/vm_latest/tests/rollbacks.rs
+++ b/core/lib/multivm/src/versions/vm_latest/tests/rollbacks.rs
@@ -5,7 +5,7 @@ use zksync_types::{get_nonce_key, Execute, U256};
use crate::{
interface::{
- dyn_tracers::vm_1_4_0::DynTracer,
+ dyn_tracers::vm_1_4_1::DynTracer,
tracer::{TracerExecutionStatus, TracerExecutionStopReason},
TxExecutionMode, VmExecutionMode, VmInterface, VmInterfaceHistoryEnabled,
},
diff --git a/core/lib/multivm/src/versions/vm_latest/tests/tester/inner_state.rs b/core/lib/multivm/src/versions/vm_latest/tests/tester/inner_state.rs
index 39ecdf24cb84..9dbb72d56d89 100644
--- a/core/lib/multivm/src/versions/vm_latest/tests/tester/inner_state.rs
+++ b/core/lib/multivm/src/versions/vm_latest/tests/tester/inner_state.rs
@@ -1,6 +1,6 @@
use std::collections::HashMap;
-use zk_evm_1_4_0::{aux_structures::Timestamp, vm_state::VmLocalState};
+use zk_evm_1_4_1::{aux_structures::Timestamp, vm_state::VmLocalState};
use zksync_state::WriteStorage;
use zksync_types::{StorageKey, StorageLogQuery, StorageValue, U256};
@@ -78,7 +78,7 @@ pub(crate) struct VmInstanceInnerState {
impl Vm {
// Dump inner state of the VM.
- pub(crate) fn dump_inner_state(&self) -> VmInstanceInnerState {
+ pub(crate) fn dump_inner_state(&self) -> VmInstanceInnerState {
let event_sink = self.state.event_sink.clone();
let precompile_processor_state = PrecompileProcessorTestInnerState {
timestamp_history: self.state.precompiles_processor.timestamp_history.clone(),
diff --git a/core/lib/multivm/src/versions/vm_latest/tests/upgrade.rs b/core/lib/multivm/src/versions/vm_latest/tests/upgrade.rs
index 05ef5f57132d..1e2bdcb45158 100644
--- a/core/lib/multivm/src/versions/vm_latest/tests/upgrade.rs
+++ b/core/lib/multivm/src/versions/vm_latest/tests/upgrade.rs
@@ -1,4 +1,4 @@
-use zk_evm_1_4_0::aux_structures::Timestamp;
+use zk_evm_1_4_1::aux_structures::Timestamp;
use zksync_contracts::{deployer_contract, load_contract, load_sys_contract, read_bytecode};
use zksync_state::WriteStorage;
use zksync_test_account::TxType;
diff --git a/core/lib/multivm/src/versions/vm_latest/tracers/circuits_capacity.rs b/core/lib/multivm/src/versions/vm_latest/tracers/circuits_capacity.rs
index 33fa6677de27..6b63a38c12fb 100644
--- a/core/lib/multivm/src/versions/vm_latest/tracers/circuits_capacity.rs
+++ b/core/lib/multivm/src/versions/vm_latest/tracers/circuits_capacity.rs
@@ -1,4 +1,4 @@
-use zkevm_test_harness_1_4_0::{geometry_config::get_geometry_config, toolset::GeometryConfig};
+use zkevm_test_harness_1_4_1::{geometry_config::get_geometry_config, toolset::GeometryConfig};
const GEOMETRY_CONFIG: GeometryConfig = get_geometry_config();
const OVERESTIMATE_PERCENT: f32 = 1.05;
diff --git a/core/lib/multivm/src/versions/vm_latest/tracers/circuits_tracer.rs b/core/lib/multivm/src/versions/vm_latest/tracers/circuits_tracer.rs
index e33b15e569ae..acd2d191c657 100644
--- a/core/lib/multivm/src/versions/vm_latest/tracers/circuits_tracer.rs
+++ b/core/lib/multivm/src/versions/vm_latest/tracers/circuits_tracer.rs
@@ -1,6 +1,6 @@
use std::marker::PhantomData;
-use zk_evm_1_4_0::{
+use zk_evm_1_4_1::{
tracing::{BeforeExecutionData, VmLocalStateData},
zk_evm_abstractions::precompiles::PrecompileAddress,
zkevm_opcode_defs::{LogOpcode, Opcode, UMAOpcode},
@@ -9,7 +9,7 @@ use zksync_state::{StoragePtr, WriteStorage};
use super::circuits_capacity::*;
use crate::{
- interface::{dyn_tracers::vm_1_4_0::DynTracer, tracer::TracerExecutionStatus},
+ interface::{dyn_tracers::vm_1_4_1::DynTracer, tracer::TracerExecutionStatus},
vm_latest::{
bootloader_state::BootloaderState,
old_vm::{history_recorder::HistoryMode, memory::SimpleMemory},
diff --git a/core/lib/multivm/src/versions/vm_latest/tracers/default_tracers.rs b/core/lib/multivm/src/versions/vm_latest/tracers/default_tracers.rs
index 5d5ecfad0dbb..1988cc9f027f 100644
--- a/core/lib/multivm/src/versions/vm_latest/tracers/default_tracers.rs
+++ b/core/lib/multivm/src/versions/vm_latest/tracers/default_tracers.rs
@@ -3,7 +3,7 @@ use std::{
marker::PhantomData,
};
-use zk_evm_1_4_0::{
+use zk_evm_1_4_1::{
tracing::{
AfterDecodingData, AfterExecutionData, BeforeExecutionData, Tracer, VmLocalStateData,
},
@@ -16,9 +16,10 @@ use zksync_types::Timestamp;
use super::PubdataTracer;
use crate::{
+ glue::GlueInto,
interface::{
tracer::{TracerExecutionStopReason, VmExecutionStopReason},
- traits::tracers::dyn_tracers::vm_1_4_0::DynTracer,
+ traits::tracers::dyn_tracers::vm_1_4_1::DynTracer,
types::tracer::TracerExecutionStatus,
Halt, VmExecutionMode,
},
@@ -121,9 +122,11 @@ impl DefaultExecutionTracer {
let l2_block = bootloader_state.insert_fictive_l2_block();
let mut memory = vec![];
apply_l2_block(&mut memory, l2_block, txs_index);
- state
- .memory
- .populate_page(BOOTLOADER_HEAP_PAGE as usize, memory, current_timestamp);
+ state.memory.populate_page(
+ BOOTLOADER_HEAP_PAGE as usize,
+ memory,
+ current_timestamp.glue_into(),
+ );
self.final_batch_info_requested = false;
}
@@ -238,7 +241,7 @@ impl Tracer for DefaultExecutionTracer {
memory: &Self::SupportedMemory,
) {
if let VmExecutionMode::Bootloader = self.execution_mode {
- let (next_opcode, _, _) = zk_evm_1_4_0::vm_state::read_and_decode(
+ let (next_opcode, _, _) = zk_evm_1_4_1::vm_state::read_and_decode(
state.vm_local_state,
memory,
&mut DummyTracer,
diff --git a/core/lib/multivm/src/versions/vm_latest/tracers/dispatcher.rs b/core/lib/multivm/src/versions/vm_latest/tracers/dispatcher.rs
index 5ee5c8ab0c19..b6c779303a76 100644
--- a/core/lib/multivm/src/versions/vm_latest/tracers/dispatcher.rs
+++ b/core/lib/multivm/src/versions/vm_latest/tracers/dispatcher.rs
@@ -1,11 +1,11 @@
-use zk_evm_1_4_0::tracing::{
+use zk_evm_1_4_1::tracing::{
AfterDecodingData, AfterExecutionData, BeforeExecutionData, VmLocalStateData,
};
use zksync_state::{StoragePtr, WriteStorage};
use crate::{
interface::{
- dyn_tracers::vm_1_4_0::DynTracer,
+ dyn_tracers::vm_1_4_1::DynTracer,
tracer::{TracerExecutionStatus, VmExecutionStopReason},
},
vm_latest::{
diff --git a/core/lib/multivm/src/versions/vm_latest/tracers/pubdata_tracer.rs b/core/lib/multivm/src/versions/vm_latest/tracers/pubdata_tracer.rs
index 92213619055c..b147bd597fa8 100644
--- a/core/lib/multivm/src/versions/vm_latest/tracers/pubdata_tracer.rs
+++ b/core/lib/multivm/src/versions/vm_latest/tracers/pubdata_tracer.rs
@@ -1,6 +1,6 @@
use std::marker::PhantomData;
-use zk_evm_1_4_0::{
+use zk_evm_1_4_1::{
aux_structures::Timestamp,
tracing::{BeforeExecutionData, VmLocalStateData},
};
@@ -18,7 +18,7 @@ use zksync_utils::{h256_to_u256, u256_to_bytes_be, u256_to_h256};
use crate::{
interface::{
- dyn_tracers::vm_1_4_0::DynTracer,
+ dyn_tracers::vm_1_4_1::DynTracer,
tracer::{TracerExecutionStatus, TracerExecutionStopReason},
types::inputs::L1BatchEnv,
VmExecutionMode,
diff --git a/core/lib/multivm/src/versions/vm_latest/tracers/refunds.rs b/core/lib/multivm/src/versions/vm_latest/tracers/refunds.rs
index 76d3e4851c45..24003d6e81b2 100644
--- a/core/lib/multivm/src/versions/vm_latest/tracers/refunds.rs
+++ b/core/lib/multivm/src/versions/vm_latest/tracers/refunds.rs
@@ -1,32 +1,30 @@
use std::marker::PhantomData;
use vise::{Buckets, EncodeLabelSet, EncodeLabelValue, Family, Histogram, Metrics};
-use zk_evm_1_4_0::{
+use zk_evm_1_4_1::{
aux_structures::Timestamp,
tracing::{BeforeExecutionData, VmLocalStateData},
vm_state::VmLocalState,
+ zkevm_opcode_defs::system_params::L1_MESSAGE_PUBDATA_BYTES,
};
use zksync_state::{StoragePtr, WriteStorage};
use zksync_system_constants::{PUBLISH_BYTECODE_OVERHEAD, SYSTEM_CONTEXT_ADDRESS};
use zksync_types::{
event::{extract_long_l2_to_l1_messages, extract_published_bytecodes},
l2_to_l1_log::L2ToL1Log,
- L1BatchNumber, U256,
+ L1BatchNumber, H256, U256,
};
use zksync_utils::{bytecode::bytecode_len_in_bytes, ceil_div_u256, u256_to_h256};
use crate::{
interface::{
- traits::tracers::dyn_tracers::vm_1_4_0::DynTracer, types::tracer::TracerExecutionStatus,
+ traits::tracers::dyn_tracers::vm_1_4_1::DynTracer, types::tracer::TracerExecutionStatus,
L1BatchEnv, Refunds,
},
vm_latest::{
bootloader_state::BootloaderState,
constants::{BOOTLOADER_HEAP_PAGE, OPERATOR_REFUNDS_OFFSET, TX_GAS_LIMIT_OFFSET},
- old_vm::{
- events::merge_events, history_recorder::HistoryMode, memory::SimpleMemory,
- utils::eth_price_per_pubdata_byte,
- },
+ old_vm::{events::merge_events, history_recorder::HistoryMode, memory::SimpleMemory},
tracers::{
traits::VmTracer,
utils::{
@@ -102,6 +100,7 @@ impl RefundsTracer {
tx_gas_limit: u32,
current_ergs_per_pubdata_byte: u32,
pubdata_published: u32,
+ tx_hash: H256,
) -> u32 {
let total_gas_spent = tx_gas_limit - bootloader_refund;
@@ -122,9 +121,8 @@ impl RefundsTracer {
let bootloader_eth_price_per_pubdata_byte =
U256::from(effective_gas_price) * U256::from(current_ergs_per_pubdata_byte);
- let fair_eth_price_per_pubdata_byte = U256::from(eth_price_per_pubdata_byte(
- self.l1_batch.fee_input.l1_gas_price(),
- ));
+ let fair_eth_price_per_pubdata_byte =
+ U256::from(self.l1_batch.fee_input.fair_pubdata_price());
// For now, L1 originated transactions are allowed to pay less than fair fee per pubdata,
// so we should take it into account.
@@ -146,6 +144,15 @@ impl RefundsTracer {
U256::zero()
});
+ tracing::trace!(
+ "Fee benchmark for transaction with hash {}",
+ hex::encode(tx_hash.as_bytes())
+ );
+ tracing::trace!("Gas Limit: {}", tx_gas_limit);
+ tracing::trace!("Gas spent on computation: {}", gas_spent_on_computation);
+ tracing::trace!("Gas spent on pubdata: {}", gas_spent_on_pubdata);
+ tracing::trace!("Pubdata published: {}", pubdata_published);
+
ceil_div_u256(refund_eth, effective_gas_price.into()).as_u32()
}
@@ -251,12 +258,14 @@ impl VmTracer for RefundsTracer {
self.pubdata_published = pubdata_published;
let current_ergs_per_pubdata_byte = state.local_state.current_ergs_per_pubdata_byte;
+
let tx_body_refund = self.tx_body_refund(
bootloader_refund,
gas_spent_on_pubdata,
tx_gas_limit,
current_ergs_per_pubdata_byte,
pubdata_published,
+ bootloader_state.last_l2_block().txs.last().unwrap().hash,
);
if tx_body_refund < bootloader_refund {
@@ -334,7 +343,7 @@ pub(crate) fn pubdata_published(
})
.filter(|log| log.sender != SYSTEM_CONTEXT_ADDRESS)
.count() as u32)
- * zk_evm_1_4_0::zkevm_opcode_defs::system_params::L1_MESSAGE_PUBDATA_BYTES;
+ * L1_MESSAGE_PUBDATA_BYTES;
let l2_l1_long_messages_bytes: u32 = extract_long_l2_to_l1_messages(&events)
.iter()
.map(|event| event.len() as u32)
diff --git a/core/lib/multivm/src/versions/vm_latest/tracers/result_tracer.rs b/core/lib/multivm/src/versions/vm_latest/tracers/result_tracer.rs
index 6894e9167e3d..71a7dcb3738f 100644
--- a/core/lib/multivm/src/versions/vm_latest/tracers/result_tracer.rs
+++ b/core/lib/multivm/src/versions/vm_latest/tracers/result_tracer.rs
@@ -1,6 +1,6 @@
use std::marker::PhantomData;
-use zk_evm_1_4_0::{
+use zk_evm_1_4_1::{
tracing::{AfterDecodingData, BeforeExecutionData, VmLocalStateData},
vm_state::{ErrorFlags, VmLocalState},
zkevm_opcode_defs::FatPointer,
@@ -10,7 +10,7 @@ use zksync_types::U256;
use crate::{
interface::{
- tracer::VmExecutionStopReason, traits::tracers::dyn_tracers::vm_1_4_0::DynTracer,
+ tracer::VmExecutionStopReason, traits::tracers::dyn_tracers::vm_1_4_1::DynTracer,
types::tracer::TracerExecutionStopReason, ExecutionResult, Halt, TxRevertReason,
VmExecutionMode, VmRevertReason,
},
diff --git a/core/lib/multivm/src/versions/vm_latest/tracers/traits.rs b/core/lib/multivm/src/versions/vm_latest/tracers/traits.rs
index 68307b3f2867..49cdc0b2839c 100644
--- a/core/lib/multivm/src/versions/vm_latest/tracers/traits.rs
+++ b/core/lib/multivm/src/versions/vm_latest/tracers/traits.rs
@@ -2,7 +2,7 @@ use zksync_state::WriteStorage;
use crate::{
interface::{
- dyn_tracers::vm_1_4_0::DynTracer,
+ dyn_tracers::vm_1_4_1::DynTracer,
tracer::{TracerExecutionStatus, VmExecutionStopReason},
},
vm_latest::{
diff --git a/core/lib/multivm/src/versions/vm_latest/tracers/utils.rs b/core/lib/multivm/src/versions/vm_latest/tracers/utils.rs
index 1046c7a4c4a0..78129790c44e 100644
--- a/core/lib/multivm/src/versions/vm_latest/tracers/utils.rs
+++ b/core/lib/multivm/src/versions/vm_latest/tracers/utils.rs
@@ -1,4 +1,4 @@
-use zk_evm_1_4_0::{
+use zk_evm_1_4_1::{
aux_structures::MemoryPage,
tracing::{BeforeExecutionData, VmLocalStateData},
zkevm_opcode_defs::{
diff --git a/core/lib/multivm/src/versions/vm_latest/types/internals/snapshot.rs b/core/lib/multivm/src/versions/vm_latest/types/internals/snapshot.rs
index 2a9368c37a39..0633cf61cda1 100644
--- a/core/lib/multivm/src/versions/vm_latest/types/internals/snapshot.rs
+++ b/core/lib/multivm/src/versions/vm_latest/types/internals/snapshot.rs
@@ -1,4 +1,4 @@
-use zk_evm_1_4_0::vm_state::VmLocalState;
+use zk_evm_1_4_1::vm_state::VmLocalState;
use crate::vm_latest::bootloader_state::BootloaderStateSnapshot;
diff --git a/core/lib/multivm/src/versions/vm_latest/types/internals/transaction_data.rs b/core/lib/multivm/src/versions/vm_latest/types/internals/transaction_data.rs
index b312ada5b209..2445e1bdb726 100644
--- a/core/lib/multivm/src/versions/vm_latest/types/internals/transaction_data.rs
+++ b/core/lib/multivm/src/versions/vm_latest/types/internals/transaction_data.rs
@@ -11,7 +11,10 @@ use zksync_types::{
};
use zksync_utils::{address_to_h256, bytecode::hash_bytecode, bytes_to_be_words, h256_to_u256};
-use crate::vm_latest::utils::overhead::{get_amortized_overhead, OverheadCoefficients};
+use crate::vm_latest::{
+ constants::{L1_TX_TYPE, MAX_GAS_PER_PUBDATA_BYTE, PRIORITY_TX_MAX_GAS_LIMIT},
+ utils::overhead::derive_overhead,
+};
/// This structure represents the data that is used by
/// the Bootloader to describe the transaction.
@@ -59,12 +62,22 @@ impl From for TransactionData {
U256::zero()
};
+ // Ethereum transactions do not sign gas per pubdata limit, and so for them we need to use
+ // some default value. We use the maximum possible value that is allowed by the bootloader
+ // (i.e. we can not use u64::MAX, because the bootloader requires gas per pubdata for such
+ // transactions to be higher than `MAX_GAS_PER_PUBDATA_BYTE`).
+ let gas_per_pubdata_limit = if common_data.transaction_type.is_ethereum_type() {
+ MAX_GAS_PER_PUBDATA_BYTE.into()
+ } else {
+ common_data.fee.gas_per_pubdata_limit
+ };
+
TransactionData {
tx_type: (common_data.transaction_type as u32) as u8,
from: common_data.initiator_address,
to: execute_tx.execute.contract_address,
gas_limit: common_data.fee.gas_limit,
- pubdata_price_limit: common_data.fee.gas_per_pubdata_limit,
+ pubdata_price_limit: gas_per_pubdata_limit,
max_fee_per_gas: common_data.fee.max_fee_per_gas,
max_priority_fee_per_gas: common_data.fee.max_priority_fee_per_gas,
paymaster: common_data.paymaster_params.paymaster,
@@ -189,21 +202,7 @@ impl TransactionData {
bytes_to_be_words(bytes)
}
- pub(crate) fn effective_gas_price_per_pubdata(&self, block_gas_price_per_pubdata: u32) -> u32 {
- // It is enforced by the protocol that the L1 transactions always pay the exact amount of gas per pubdata
- // as was supplied in the transaction.
- if is_l1_tx_type(self.tx_type) {
- self.pubdata_price_limit.as_u32()
- } else {
- block_gas_price_per_pubdata
- }
- }
-
- pub(crate) fn overhead_gas(&self, block_gas_price_per_pubdata: u32) -> u32 {
- let total_gas_limit = self.gas_limit.as_u32();
- let gas_price_per_pubdata =
- self.effective_gas_price_per_pubdata(block_gas_price_per_pubdata);
-
+ pub(crate) fn overhead_gas(&self) -> u32 {
let encoded_len = encoding_len(
self.data.len() as u64,
self.signature.len() as u64,
@@ -212,16 +211,16 @@ impl TransactionData {
self.reserved_dynamic.len() as u64,
);
- let coefficients = OverheadCoefficients::from_tx_type(self.tx_type);
- get_amortized_overhead(
- total_gas_limit,
- gas_price_per_pubdata,
- encoded_len,
- coefficients,
- )
+ derive_overhead(encoded_len)
}
- pub(crate) fn trusted_ergs_limit(&self, _block_gas_price_per_pubdata: u64) -> U256 {
+ pub(crate) fn trusted_ergs_limit(&self) -> U256 {
+ if self.tx_type == L1_TX_TYPE {
+ // In case we get a users' transactions with unexpected gas limit, we do not let it have more than
+ // a certain limit
+ return U256::from(PRIORITY_TX_MAX_GAS_LIMIT).min(self.gas_limit);
+ }
+
// TODO (EVM-66): correctly calculate the trusted gas limit for a transaction
self.gas_limit
}
diff --git a/core/lib/multivm/src/versions/vm_latest/types/internals/vm_state.rs b/core/lib/multivm/src/versions/vm_latest/types/internals/vm_state.rs
index 2430e163fe87..223c908ae7fa 100644
--- a/core/lib/multivm/src/versions/vm_latest/types/internals/vm_state.rs
+++ b/core/lib/multivm/src/versions/vm_latest/types/internals/vm_state.rs
@@ -1,4 +1,4 @@
-use zk_evm_1_4_0::{
+use zk_evm_1_4_1::{
aux_structures::{MemoryPage, Timestamp},
block_properties::BlockProperties,
vm_state::{CallStackEntry, PrimitiveValue, VmState},
diff --git a/core/lib/multivm/src/versions/vm_latest/types/l1_batch.rs b/core/lib/multivm/src/versions/vm_latest/types/l1_batch.rs
index dad16e6a16a0..b3bf15cb1be5 100644
--- a/core/lib/multivm/src/versions/vm_latest/types/l1_batch.rs
+++ b/core/lib/multivm/src/versions/vm_latest/types/l1_batch.rs
@@ -7,7 +7,7 @@ const OPERATOR_ADDRESS_SLOT: usize = 0;
const PREV_BLOCK_HASH_SLOT: usize = 1;
const NEW_BLOCK_TIMESTAMP_SLOT: usize = 2;
const NEW_BLOCK_NUMBER_SLOT: usize = 3;
-const L1_GAS_PRICE_SLOT: usize = 4;
+const FAIR_PUBDATA_PRICE_SLOT: usize = 4;
const FAIR_L2_GAS_PRICE_SLOT: usize = 5;
const EXPECTED_BASE_FEE_SLOT: usize = 6;
const SHOULD_SET_NEW_BLOCK_SLOT: usize = 7;
@@ -19,8 +19,6 @@ pub(crate) fn bootloader_initial_memory(l1_batch: &L1BatchEnv) -> Vec<(usize, U2
.map(|prev_block_hash| (h256_to_u256(prev_block_hash), U256::one()))
.unwrap_or_default();
- let fee_input = l1_batch.fee_input.into_l1_pegged();
-
vec![
(
OPERATOR_ADDRESS_SLOT,
@@ -29,10 +27,13 @@ pub(crate) fn bootloader_initial_memory(l1_batch: &L1BatchEnv) -> Vec<(usize, U2
(PREV_BLOCK_HASH_SLOT, prev_block_hash),
(NEW_BLOCK_TIMESTAMP_SLOT, U256::from(l1_batch.timestamp)),
(NEW_BLOCK_NUMBER_SLOT, U256::from(l1_batch.number.0)),
- (L1_GAS_PRICE_SLOT, U256::from(fee_input.l1_gas_price)),
+ (
+ FAIR_PUBDATA_PRICE_SLOT,
+ U256::from(l1_batch.fee_input.fair_pubdata_price()),
+ ),
(
FAIR_L2_GAS_PRICE_SLOT,
- U256::from(fee_input.fair_l2_gas_price),
+ U256::from(l1_batch.fee_input.fair_l2_gas_price()),
),
(
EXPECTED_BASE_FEE_SLOT,
diff --git a/core/lib/multivm/src/versions/vm_latest/utils/fee.rs b/core/lib/multivm/src/versions/vm_latest/utils/fee.rs
index 1157a1eb57bd..ea4de7204434 100644
--- a/core/lib/multivm/src/versions/vm_latest/utils/fee.rs
+++ b/core/lib/multivm/src/versions/vm_latest/utils/fee.rs
@@ -1,42 +1,32 @@
//! Utility functions for vm
-use zksync_system_constants::MAX_GAS_PER_PUBDATA_BYTE;
use zksync_types::{
- fee_model::{BatchFeeInput, L1PeggedBatchFeeModelInput},
+ fee_model::{BatchFeeInput, PubdataIndependentBatchFeeModelInput},
U256,
};
use zksync_utils::ceil_div;
-use crate::vm_latest::{old_vm::utils::eth_price_per_pubdata_byte, L1BatchEnv};
-
-/// Calculates the amount of gas required to publish one byte of pubdata
-pub fn base_fee_to_gas_per_pubdata(l1_gas_price: u64, base_fee: u64) -> u64 {
- let eth_price_per_pubdata_byte = eth_price_per_pubdata_byte(l1_gas_price);
-
- ceil_div(eth_price_per_pubdata_byte, base_fee)
-}
+use crate::vm_latest::{constants::MAX_GAS_PER_PUBDATA_BYTE, L1BatchEnv};
/// Calculates the base fee and gas per pubdata for the given L1 gas price.
pub(crate) fn derive_base_fee_and_gas_per_pubdata(
- fee_input: L1PeggedBatchFeeModelInput,
+ fee_input: PubdataIndependentBatchFeeModelInput,
) -> (u64, u64) {
- let L1PeggedBatchFeeModelInput {
- l1_gas_price,
+ let PubdataIndependentBatchFeeModelInput {
fair_l2_gas_price,
+ fair_pubdata_price,
+ ..
} = fee_input;
- let eth_price_per_pubdata_byte = eth_price_per_pubdata_byte(l1_gas_price);
-
// The `baseFee` is set in such a way that it is always possible for a transaction to
// publish enough public data while compensating us for it.
let base_fee = std::cmp::max(
fair_l2_gas_price,
- ceil_div(eth_price_per_pubdata_byte, MAX_GAS_PER_PUBDATA_BYTE),
+ ceil_div(fair_pubdata_price, MAX_GAS_PER_PUBDATA_BYTE),
);
- (
- base_fee,
- base_fee_to_gas_per_pubdata(l1_gas_price, base_fee),
- )
+ let gas_per_pubdata = ceil_div(fair_pubdata_price, base_fee);
+
+ (base_fee, gas_per_pubdata)
}
pub(crate) fn get_batch_base_fee(l1_batch_env: &L1BatchEnv) -> u64 {
@@ -44,14 +34,10 @@ pub(crate) fn get_batch_base_fee(l1_batch_env: &L1BatchEnv) -> u64 {
return base_fee;
}
let (base_fee, _) =
- derive_base_fee_and_gas_per_pubdata(l1_batch_env.fee_input.into_l1_pegged());
+ derive_base_fee_and_gas_per_pubdata(l1_batch_env.fee_input.into_pubdata_independent());
base_fee
}
-pub(crate) fn get_batch_gas_per_pubdata(l1_batch_env: &L1BatchEnv) -> u64 {
- derive_base_fee_and_gas_per_pubdata(l1_batch_env.fee_input.into_l1_pegged()).1
-}
-
/// Changes the fee model output so that the expected gas per pubdata is smaller than or the `tx_gas_per_pubdata_limit`.
/// This function expects that the currently expected gas per pubdata is greater than the `tx_gas_per_pubdata_limit`.
pub(crate) fn adjust_pubdata_price_for_tx(
diff --git a/core/lib/multivm/src/versions/vm_latest/utils/logs.rs b/core/lib/multivm/src/versions/vm_latest/utils/logs.rs
index b7fa07956a96..c379b44088f6 100644
--- a/core/lib/multivm/src/versions/vm_latest/utils/logs.rs
+++ b/core/lib/multivm/src/versions/vm_latest/utils/logs.rs
@@ -1,5 +1,6 @@
+use zk_evm_1_4_1::aux_structures::Timestamp;
use zksync_state::WriteStorage;
-use zksync_types::{l2_to_l1_log::L2ToL1Log, Timestamp, VmEvent};
+use zksync_types::{l2_to_l1_log::L2ToL1Log, VmEvent};
use crate::{
interface::L1BatchEnv,
diff --git a/core/lib/multivm/src/versions/vm_latest/utils/overhead.rs b/core/lib/multivm/src/versions/vm_latest/utils/overhead.rs
index b86f72cf9677..da200c8138c0 100644
--- a/core/lib/multivm/src/versions/vm_latest/utils/overhead.rs
+++ b/core/lib/multivm/src/versions/vm_latest/utils/overhead.rs
@@ -1,356 +1,8 @@
-use zk_evm_1_4_0::zkevm_opcode_defs::system_params::MAX_TX_ERGS_LIMIT;
-use zksync_system_constants::MAX_L2_TX_GAS_LIMIT;
-use zksync_types::{l1::is_l1_tx_type, U256};
-use zksync_utils::ceil_div_u256;
+use crate::vm_latest::constants::{TX_MEMORY_OVERHEAD_GAS, TX_SLOT_OVERHEAD_GAS};
-use crate::vm_latest::constants::{
- BLOCK_OVERHEAD_GAS, BLOCK_OVERHEAD_PUBDATA, BOOTLOADER_TX_ENCODING_SPACE, MAX_TXS_IN_BLOCK,
-};
-
-/// Derives the overhead for processing transactions in a block.
-pub(crate) fn derive_overhead(
- gas_limit: u32,
- gas_price_per_pubdata: u32,
- encoded_len: usize,
- coefficients: OverheadCoefficients,
-) -> u32 {
- // Even if the gas limit is greater than the `MAX_TX_ERGS_LIMIT`, we assume that everything beyond `MAX_TX_ERGS_LIMIT`
- // will be spent entirely on publishing bytecodes and so we derive the overhead solely based on the capped value
- let gas_limit = std::cmp::min(MAX_TX_ERGS_LIMIT, gas_limit);
-
- // Using large U256 type to avoid overflow
- let max_block_overhead = U256::from(block_overhead_gas(gas_price_per_pubdata));
- let gas_limit = U256::from(gas_limit);
- let encoded_len = U256::from(encoded_len);
-
- // The `MAX_TX_ERGS_LIMIT` is formed in a way that may fulfills a single-instance circuits
- // if used in full. That is, within `MAX_TX_ERGS_LIMIT` it is possible to fully saturate all the single-instance
- // circuits.
- let overhead_for_single_instance_circuits =
- ceil_div_u256(gas_limit * max_block_overhead, MAX_TX_ERGS_LIMIT.into());
-
- // The overhead for occupying the bootloader memory
- let overhead_for_length = ceil_div_u256(
- encoded_len * max_block_overhead,
- BOOTLOADER_TX_ENCODING_SPACE.into(),
- );
-
- // The overhead for occupying a single tx slot
- let tx_slot_overhead = ceil_div_u256(max_block_overhead, MAX_TXS_IN_BLOCK.into());
-
- // We use `ceil` here for formal reasons to allow easier approach for calculating the overhead in O(1)
- // `let max_pubdata_in_tx = ceil_div_u256(gas_limit, gas_price_per_pubdata);`
-
- // The maximal potential overhead from pubdata
- // TODO (EVM-67): possibly use overhead for pubdata
- // ```
- // let pubdata_overhead = ceil_div_u256(
- // max_pubdata_in_tx * max_block_overhead,
- // MAX_PUBDATA_PER_BLOCK.into(),
- // );
- // ```
-
- vec![
- (coefficients.ergs_limit_overhead_coeficient
- * overhead_for_single_instance_circuits.as_u32() as f64)
- .floor() as u32,
- (coefficients.bootloader_memory_overhead_coeficient * overhead_for_length.as_u32() as f64)
- .floor() as u32,
- (coefficients.slot_overhead_coeficient * tx_slot_overhead.as_u32() as f64) as u32,
- ]
- .into_iter()
- .max()
- .unwrap()
-}
-
-/// Contains the coefficients with which the overhead for transactions will be calculated.
-/// All of the coefficients should be <= 1. There are here to provide a certain "discount" for normal transactions
-/// at the risk of malicious transactions that may close the block prematurely.
-/// IMPORTANT: to perform correct computations, `MAX_TX_ERGS_LIMIT / coefficients.ergs_limit_overhead_coefficient` MUST
-/// result in an integer number
-#[derive(Debug, Clone, Copy)]
-pub struct OverheadCoefficients {
- slot_overhead_coeficient: f64,
- bootloader_memory_overhead_coeficient: f64,
- ergs_limit_overhead_coeficient: f64,
-}
-
-impl OverheadCoefficients {
- // This method ensures that the parameters keep the required invariants
- fn new_checked(
- slot_overhead_coeficient: f64,
- bootloader_memory_overhead_coeficient: f64,
- ergs_limit_overhead_coeficient: f64,
- ) -> Self {
- assert!(
- (MAX_TX_ERGS_LIMIT as f64 / ergs_limit_overhead_coeficient).round()
- == MAX_TX_ERGS_LIMIT as f64 / ergs_limit_overhead_coeficient,
- "MAX_TX_ERGS_LIMIT / ergs_limit_overhead_coeficient must be an integer"
- );
-
- Self {
- slot_overhead_coeficient,
- bootloader_memory_overhead_coeficient,
- ergs_limit_overhead_coeficient,
- }
- }
-
- // L1->L2 do not receive any discounts
- fn new_l1() -> Self {
- OverheadCoefficients::new_checked(1.0, 1.0, 1.0)
- }
-
- fn new_l2() -> Self {
- OverheadCoefficients::new_checked(
- 1.0, 1.0,
- // For L2 transactions we allow a certain default discount with regard to the number of ergs.
- // Multi-instance circuits can in theory be spawned infinite times, while projected future limitations
- // on gas per pubdata allow for roughly 800k gas per L1 batch, so the rough trust "discount" on the proof's part
- // to be paid by the users is 0.1.
- 0.1,
- )
- }
-
- /// Return the coefficients for the given transaction type
- pub fn from_tx_type(tx_type: u8) -> Self {
- if is_l1_tx_type(tx_type) {
- Self::new_l1()
- } else {
- Self::new_l2()
- }
- }
-}
-
-/// This method returns the overhead for processing the block
-pub(crate) fn get_amortized_overhead(
- total_gas_limit: u32,
- gas_per_pubdata_byte_limit: u32,
- encoded_len: usize,
- coefficients: OverheadCoefficients,
-) -> u32 {
- // Using large U256 type to prevent overflows.
- let overhead_for_block_gas = U256::from(block_overhead_gas(gas_per_pubdata_byte_limit));
- let total_gas_limit = U256::from(total_gas_limit);
- let encoded_len = U256::from(encoded_len);
-
- // Derivation of overhead consists of 4 parts:
- // 1. The overhead for taking up a transaction's slot. `(O1): O1 = 1 / MAX_TXS_IN_BLOCK`
- // 2. The overhead for taking up the bootloader's memory `(O2): O2 = encoded_len / BOOTLOADER_TX_ENCODING_SPACE`
- // 3. The overhead for possible usage of pubdata. `(O3): O3 = max_pubdata_in_tx / MAX_PUBDATA_PER_BLOCK`
- // 4. The overhead for possible usage of all the single-instance circuits. `(O4): O4 = gas_limit / MAX_TX_ERGS_LIMIT`
- //
- // The maximum of these is taken to derive the part of the block's overhead to be paid by the users:
- //
- // `max_overhead = max(O1, O2, O3, O4)`
- // `overhead_gas = ceil(max_overhead * overhead_for_block_gas)`. Thus, `overhead_gas` is a function of
- // `tx_gas_limit`, `gas_per_pubdata_byte_limit` and `encoded_len`.
- //
- // While it is possible to derive the overhead with binary search in `O(log n)`, it is too expensive to be done
- // on L1, so here is a reference implementation of finding the overhead for transaction in O(1):
- //
- // Given `total_gas_limit = tx_gas_limit + overhead_gas`, we need to find `overhead_gas` and `tx_gas_limit`, such that:
- // 1. `overhead_gas` is maximal possible (the operator is paid fairly)
- // 2. `overhead_gas(tx_gas_limit, gas_per_pubdata_byte_limit, encoded_len) >= overhead_gas` (the user does not overpay)
- // The third part boils to the following 4 inequalities (at least one of these must hold):
- // `ceil(O1 * overhead_for_block_gas) >= overhead_gas`
- // `ceil(O2 * overhead_for_block_gas) >= overhead_gas`
- // `ceil(O3 * overhead_for_block_gas) >= overhead_gas`
- // `ceil(O4 * overhead_for_block_gas) >= overhead_gas`
- //
- // Now, we need to solve each of these separately:
-
- // 1. The overhead for occupying a single tx slot is a constant:
- let tx_slot_overhead = {
- let tx_slot_overhead =
- ceil_div_u256(overhead_for_block_gas, MAX_TXS_IN_BLOCK.into()).as_u32();
- (coefficients.slot_overhead_coeficient * tx_slot_overhead as f64).floor() as u32
- };
-
- // 2. The overhead for occupying the bootloader memory can be derived from `encoded_len`
- let overhead_for_length = {
- let overhead_for_length = ceil_div_u256(
- encoded_len * overhead_for_block_gas,
- BOOTLOADER_TX_ENCODING_SPACE.into(),
- )
- .as_u32();
-
- (coefficients.bootloader_memory_overhead_coeficient * overhead_for_length as f64).floor()
- as u32
- };
-
- // TODO (EVM-67): possibly include the overhead for pubdata. The formula below has not been properly maintained,
- // since the pubdata is not published. If decided to use the pubdata overhead, it needs to be updated.
- // ```
- // 3. ceil(O3 * overhead_for_block_gas) >= overhead_gas
- // O3 = max_pubdata_in_tx / MAX_PUBDATA_PER_BLOCK = ceil(gas_limit / gas_per_pubdata_byte_limit) / MAX_PUBDATA_PER_BLOCK
- // >= (gas_limit / (gas_per_pubdata_byte_limit * MAX_PUBDATA_PER_BLOCK).
- // ```
- // Throwing off the `ceil`, while may provide marginally lower
- // overhead to the operator, provides substantially easier formula to work with.
- //
- // For better clarity, let's denote `gas_limit = GL, MAX_PUBDATA_PER_BLOCK = MP, gas_per_pubdata_byte_limit = EP, overhead_for_block_gas = OB, total_gas_limit = TL, overhead_gas = OE`
- // ```
- // ceil(OB * (TL - OE) / (EP * MP)) >= OE
- //
- // OB * (TL - OE) / (MP * EP) > OE - 1
- // OB * (TL - OE) > (OE - 1) * EP * MP
- // OB * TL + EP * MP > OE * EP * MP + OE * OB
- // (OB * TL + EP * MP) / (EP * MP + OB) > OE
- // OE = floor((OB * TL + EP * MP) / (EP * MP + OB)) with possible -1 if the division is without remainder
- // let overhead_for_pubdata = {
- // let numerator: U256 = overhead_for_block_gas * total_gas_limit
- // + gas_per_pubdata_byte_limit * U256::from(MAX_PUBDATA_PER_BLOCK);
- // let denominator =
- // gas_per_pubdata_byte_limit * U256::from(MAX_PUBDATA_PER_BLOCK) + overhead_for_block_gas;
- //
- // // Corner case: if `total_gas_limit` = `gas_per_pubdata_byte_limit` = 0
- // // then the numerator will be 0 and subtracting 1 will cause a panic, so we just return a zero.
- // if numerator.is_zero() {
- // 0.into()
- // } else {
- // (numerator - 1) / denominator
- // }
- // };
- //
- // 4. K * ceil(O4 * overhead_for_block_gas) >= overhead_gas, where K is the discount
- // O4 = gas_limit / MAX_TX_ERGS_LIMIT. Using the notation from the previous equation:
- // ceil(OB * GL / MAX_TX_ERGS_LIMIT) >= (OE / K)
- // ceil(OB * (TL - OE) / MAX_TX_ERGS_LIMIT) >= (OE/K)
- // OB * (TL - OE) / MAX_TX_ERGS_LIMIT > (OE/K) - 1
- // OB * (TL - OE) > (OE/K) * MAX_TX_ERGS_LIMIT - MAX_TX_ERGS_LIMIT
- // OB * TL + MAX_TX_ERGS_LIMIT > OE * ( MAX_TX_ERGS_LIMIT/K + OB)
- // OE = floor(OB * TL + MAX_TX_ERGS_LIMIT / (MAX_TX_ERGS_LIMIT/K + OB)), with possible -1 if the division is without remainder
- // ```
- let overhead_for_gas = {
- let numerator = overhead_for_block_gas * total_gas_limit + U256::from(MAX_TX_ERGS_LIMIT);
- let denominator: U256 = U256::from(
- (MAX_TX_ERGS_LIMIT as f64 / coefficients.ergs_limit_overhead_coeficient) as u64,
- ) + overhead_for_block_gas;
-
- let overhead_for_gas = (numerator - 1) / denominator;
-
- overhead_for_gas.as_u32()
- };
-
- let overhead = vec![tx_slot_overhead, overhead_for_length, overhead_for_gas]
- .into_iter()
- .max()
- // For the sake of consistency making sure that total_gas_limit >= max_overhead
- .map(|max_overhead| std::cmp::min(max_overhead, total_gas_limit.as_u32()))
- .unwrap();
-
- let limit_after_deducting_overhead = total_gas_limit - overhead;
-
- // During double checking of the overhead, the bootloader will assume that the
- // body of the transaction does not have any more than `MAX_L2_TX_GAS_LIMIT` ergs available to it.
- if limit_after_deducting_overhead.as_u64() > MAX_L2_TX_GAS_LIMIT {
- // We derive the same overhead that would exist for the `MAX_L2_TX_GAS_LIMIT` ergs
- derive_overhead(
- MAX_L2_TX_GAS_LIMIT as u32,
- gas_per_pubdata_byte_limit,
- encoded_len.as_usize(),
- coefficients,
- )
- } else {
- overhead
- }
-}
-
-pub(crate) fn block_overhead_gas(gas_per_pubdata_byte: u32) -> u32 {
- BLOCK_OVERHEAD_GAS + BLOCK_OVERHEAD_PUBDATA * gas_per_pubdata_byte
-}
-
-#[cfg(test)]
-mod tests {
-
- use super::*;
-
- // This method returns the maximum block overhead that can be charged from the user based on the binary search approach
- pub(crate) fn get_maximal_allowed_overhead_bin_search(
- total_gas_limit: u32,
- gas_per_pubdata_byte_limit: u32,
- encoded_len: usize,
- coefficients: OverheadCoefficients,
- ) -> u32 {
- let mut left_bound = if MAX_TX_ERGS_LIMIT < total_gas_limit {
- total_gas_limit - MAX_TX_ERGS_LIMIT
- } else {
- 0u32
- };
- // Safe cast: the gas_limit for a transaction can not be larger than 2^32
- let mut right_bound = total_gas_limit;
-
- // The closure returns whether a certain overhead would be accepted by the bootloader.
- // It is accepted if the derived overhead (i.e. the actual overhead that the user has to pay)
- // is >= than the overhead proposed by the operator.
- let is_overhead_accepted = |suggested_overhead: u32| {
- let derived_overhead = derive_overhead(
- total_gas_limit - suggested_overhead,
- gas_per_pubdata_byte_limit,
- encoded_len,
- coefficients,
- );
-
- derived_overhead >= suggested_overhead
- };
-
- // In order to find the maximal allowed overhead we are doing binary search
- while left_bound + 1 < right_bound {
- let mid = (left_bound + right_bound) / 2;
-
- if is_overhead_accepted(mid) {
- left_bound = mid;
- } else {
- right_bound = mid;
- }
- }
-
- if is_overhead_accepted(right_bound) {
- right_bound
- } else {
- left_bound
- }
- }
-
- #[test]
- fn test_correctness_for_efficient_overhead() {
- let test_params = |total_gas_limit: u32,
- gas_per_pubdata: u32,
- encoded_len: usize,
- coefficients: OverheadCoefficients| {
- let result_by_efficient_search =
- get_amortized_overhead(total_gas_limit, gas_per_pubdata, encoded_len, coefficients);
-
- let result_by_binary_search = get_maximal_allowed_overhead_bin_search(
- total_gas_limit,
- gas_per_pubdata,
- encoded_len,
- coefficients,
- );
-
- assert_eq!(result_by_efficient_search, result_by_binary_search);
- };
-
- // Some arbitrary test
- test_params(60_000_000, 800, 2900, OverheadCoefficients::new_l2());
-
- // Very small parameters
- test_params(0, 1, 12, OverheadCoefficients::new_l2());
-
- // Relatively big parameters
- let max_tx_overhead = derive_overhead(
- MAX_TX_ERGS_LIMIT,
- 5000,
- 10000,
- OverheadCoefficients::new_l2(),
- );
- test_params(
- MAX_TX_ERGS_LIMIT + max_tx_overhead,
- 5000,
- 10000,
- OverheadCoefficients::new_l2(),
- );
-
- test_params(115432560, 800, 2900, OverheadCoefficients::new_l1());
- }
+/// In the past, the overhead for transaction depended also on the effective gas per pubdata limit for the transaction.
+/// Currently, the approach is more similar to EVM, where only the calldata length and the transaction overhead are taken
+/// into account by a constant formula.
+pub(crate) fn derive_overhead(encoded_len: usize) -> u32 {
+ TX_SLOT_OVERHEAD_GAS.max(TX_MEMORY_OVERHEAD_GAS * (encoded_len as u32))
}
diff --git a/core/lib/multivm/src/versions/vm_latest/vm.rs b/core/lib/multivm/src/versions/vm_latest/vm.rs
index 6b571cd25c40..fd6dded05557 100644
--- a/core/lib/multivm/src/versions/vm_latest/vm.rs
+++ b/core/lib/multivm/src/versions/vm_latest/vm.rs
@@ -7,6 +7,7 @@ use zksync_types::{
use zksync_utils::bytecode::CompressedBytecodeInfo;
use crate::{
+ glue::GlueInto,
interface::{
BootloaderMemory, BytecodeCompressionError, CurrentExecutionState, FinishedL1Batch,
L1BatchEnv, L2BlockEnv, SystemEnv, VmExecutionMode, VmExecutionResultAndLogs, VmInterface,
@@ -27,7 +28,7 @@ use crate::{
pub struct Vm {
pub(crate) bootloader_state: BootloaderState,
// Current state and oracles of virtual machine
- pub(crate) state: ZkSyncVmState,
+ pub(crate) state: ZkSyncVmState,
pub(crate) storage: StoragePtr,
pub(crate) system_env: SystemEnv,
pub(crate) batch_env: L1BatchEnv,
@@ -37,7 +38,7 @@ pub struct Vm {
}
impl VmInterface for Vm {
- type TracerDispatcher = TracerDispatcher;
+ type TracerDispatcher = TracerDispatcher;
fn new(batch_env: L1BatchEnv, system_env: SystemEnv, storage: StoragePtr) -> Self {
let (state, bootloader_state) = new_vm_state(storage.clone(), &system_env, &batch_env);
@@ -114,7 +115,10 @@ impl VmInterface for Vm {
system_logs,
total_log_queries,
cycles_used: self.state.local_state.monotonic_cycle_counter,
- deduplicated_events_logs,
+ deduplicated_events_logs: deduplicated_events_logs
+ .into_iter()
+ .map(GlueInto::glue_into)
+ .collect(),
storage_refunds: self.state.storage.returned_refunds.inner().clone(),
}
}
diff --git a/core/lib/multivm/src/versions/vm_m5/transaction_data.rs b/core/lib/multivm/src/versions/vm_m5/transaction_data.rs
index 6545f79b5019..c3fba68bc8d2 100644
--- a/core/lib/multivm/src/versions/vm_m5/transaction_data.rs
+++ b/core/lib/multivm/src/versions/vm_m5/transaction_data.rs
@@ -9,6 +9,7 @@ use zksync_utils::{
address_to_h256, bytecode::hash_bytecode, bytes_to_be_words, ceil_div_u256, h256_to_u256,
};
+use super::vm_with_bootloader::MAX_GAS_PER_PUBDATA_BYTE;
use crate::vm_m5::vm_with_bootloader::{
BLOCK_OVERHEAD_GAS, BLOCK_OVERHEAD_PUBDATA, BOOTLOADER_TX_ENCODING_SPACE, MAX_TXS_IN_BLOCK,
};
@@ -59,12 +60,22 @@ impl From for TransactionData {
U256::zero()
};
+ // Ethereum transactions do not sign gas per pubdata limit, and so for them we need to use
+ // some default value. We use the maximum possible value that is allowed by the bootloader
+ // (i.e. we can not use u64::MAX, because the bootloader requires gas per pubdata for such
+ // transactions to be higher than `MAX_GAS_PER_PUBDATA_BYTE`).
+ let gas_per_pubdata_limit = if common_data.transaction_type.is_ethereum_type() {
+ MAX_GAS_PER_PUBDATA_BYTE.into()
+ } else {
+ common_data.fee.gas_per_pubdata_limit
+ };
+
TransactionData {
tx_type: (common_data.transaction_type as u32) as u8,
from: execute_tx.initiator_account(),
to: execute_tx.execute.contract_address,
gas_limit: common_data.fee.gas_limit,
- pubdata_price_limit: common_data.fee.gas_per_pubdata_limit,
+ pubdata_price_limit: gas_per_pubdata_limit,
max_fee_per_gas: common_data.fee.max_fee_per_gas,
max_priority_fee_per_gas: common_data.fee.max_priority_fee_per_gas,
paymaster: common_data.paymaster_params.paymaster,
diff --git a/core/lib/multivm/src/versions/vm_m5/vm_with_bootloader.rs b/core/lib/multivm/src/versions/vm_m5/vm_with_bootloader.rs
index 13737681f31d..7b8a361c5a53 100644
--- a/core/lib/multivm/src/versions/vm_m5/vm_with_bootloader.rs
+++ b/core/lib/multivm/src/versions/vm_m5/vm_with_bootloader.rs
@@ -11,10 +11,10 @@ use zk_evm_1_3_1::{
},
};
use zksync_contracts::BaseSystemContracts;
+use zksync_system_constants::MAX_L2_TX_GAS_LIMIT;
use zksync_types::{
fee_model::L1PeggedBatchFeeModelInput, zkevm_test_harness::INITIAL_MONOTONIC_CYCLE_COUNTER,
- Address, Transaction, BOOTLOADER_ADDRESS, L1_GAS_PER_PUBDATA_BYTE, MAX_GAS_PER_PUBDATA_BYTE,
- MAX_NEW_FACTORY_DEPS, U256,
+ Address, Transaction, BOOTLOADER_ADDRESS, L1_GAS_PER_PUBDATA_BYTE, MAX_NEW_FACTORY_DEPS, U256,
};
use zksync_utils::{
address_to_u256, bytecode::hash_bytecode, bytes_to_be_words, h256_to_u256, misc::ceil_div,
@@ -70,7 +70,7 @@ pub(crate) fn eth_price_per_pubdata_byte(l1_gas_price: u64) -> u64 {
l1_gas_price * (L1_GAS_PER_PUBDATA_BYTE as u64)
}
-pub fn base_fee_to_gas_per_pubdata(l1_gas_price: u64, base_fee: u64) -> u64 {
+pub(crate) fn base_fee_to_gas_per_pubdata(l1_gas_price: u64, base_fee: u64) -> u64 {
let eth_price_per_pubdata_byte = eth_price_per_pubdata_byte(l1_gas_price);
ceil_div(eth_price_per_pubdata_byte, base_fee)
@@ -95,7 +95,7 @@ pub(crate) fn derive_base_fee_and_gas_per_pubdata(
(
base_fee,
- base_fee_to_gas_per_pubdata(l1_gas_price, base_fee),
+ base_fee_to_gas_per_pubdata(fee_input.l1_gas_price, base_fee),
)
}
@@ -120,6 +120,23 @@ impl From for DerivedBlockContext {
}
}
+/// The size of the bootloader memory in bytes which is used by the protocol.
+/// While the maximal possible size is a lot higher, we restrict ourselves to a certain limit to reduce
+/// the requirements on RAM.
+pub(crate) const USED_BOOTLOADER_MEMORY_BYTES: usize = 1 << 24;
+pub(crate) const USED_BOOTLOADER_MEMORY_WORDS: usize = USED_BOOTLOADER_MEMORY_BYTES / 32;
+
+// This the number of pubdata such that it should be always possible to publish
+// from a single transaction. Note, that these pubdata bytes include only bytes that are
+// to be published inside the body of transaction (i.e. excluding of factory deps).
+pub(crate) const GUARANTEED_PUBDATA_PER_L1_BATCH: u64 = 4000;
+
+// The users should always be able to provide `MAX_GAS_PER_PUBDATA_BYTE` gas per pubdata in their
+// transactions so that they are able to send at least `GUARANTEED_PUBDATA_PER_L1_BATCH` bytes per
+// transaction.
+pub(crate) const MAX_GAS_PER_PUBDATA_BYTE: u64 =
+ MAX_L2_TX_GAS_LIMIT / GUARANTEED_PUBDATA_PER_L1_BATCH;
+
// The maximal number of transactions in a single batch
pub(crate) const MAX_TXS_IN_BLOCK: usize = 1024;
diff --git a/core/lib/multivm/src/versions/vm_m6/transaction_data.rs b/core/lib/multivm/src/versions/vm_m6/transaction_data.rs
index 19eefbb1a001..5934199a96fe 100644
--- a/core/lib/multivm/src/versions/vm_m6/transaction_data.rs
+++ b/core/lib/multivm/src/versions/vm_m6/transaction_data.rs
@@ -10,7 +10,7 @@ use zksync_utils::{
address_to_h256, bytecode::hash_bytecode, bytes_to_be_words, ceil_div_u256, h256_to_u256,
};
-use super::vm_with_bootloader::MAX_TXS_IN_BLOCK;
+use super::vm_with_bootloader::{MAX_GAS_PER_PUBDATA_BYTE, MAX_TXS_IN_BLOCK};
use crate::vm_m6::vm_with_bootloader::{
BLOCK_OVERHEAD_GAS, BLOCK_OVERHEAD_PUBDATA, BOOTLOADER_TX_ENCODING_SPACE,
};
@@ -61,12 +61,22 @@ impl From for TransactionData {
U256::zero()
};
+ // Ethereum transactions do not sign gas per pubdata limit, and so for them we need to use
+ // some default value. We use the maximum possible value that is allowed by the bootloader
+ // (i.e. we can not use u64::MAX, because the bootloader requires gas per pubdata for such
+ // transactions to be higher than `MAX_GAS_PER_PUBDATA_BYTE`).
+ let gas_per_pubdata_limit = if common_data.transaction_type.is_ethereum_type() {
+ MAX_GAS_PER_PUBDATA_BYTE.into()
+ } else {
+ common_data.fee.gas_per_pubdata_limit
+ };
+
TransactionData {
tx_type: (common_data.transaction_type as u32) as u8,
from: execute_tx.initiator_account(),
to: execute_tx.execute.contract_address,
gas_limit: common_data.fee.gas_limit,
- pubdata_price_limit: common_data.fee.gas_per_pubdata_limit,
+ pubdata_price_limit: gas_per_pubdata_limit,
max_fee_per_gas: common_data.fee.max_fee_per_gas,
max_priority_fee_per_gas: common_data.fee.max_priority_fee_per_gas,
paymaster: common_data.paymaster_params.paymaster,
diff --git a/core/lib/multivm/src/versions/vm_m6/vm_with_bootloader.rs b/core/lib/multivm/src/versions/vm_m6/vm_with_bootloader.rs
index a4735c5a6175..91a41bdbb0aa 100644
--- a/core/lib/multivm/src/versions/vm_m6/vm_with_bootloader.rs
+++ b/core/lib/multivm/src/versions/vm_m6/vm_with_bootloader.rs
@@ -11,10 +11,10 @@ use zk_evm_1_3_1::{
},
};
use zksync_contracts::BaseSystemContracts;
+use zksync_system_constants::MAX_L2_TX_GAS_LIMIT;
use zksync_types::{
fee_model::L1PeggedBatchFeeModelInput, zkevm_test_harness::INITIAL_MONOTONIC_CYCLE_COUNTER,
- Address, Transaction, BOOTLOADER_ADDRESS, L1_GAS_PER_PUBDATA_BYTE, MAX_GAS_PER_PUBDATA_BYTE,
- MAX_NEW_FACTORY_DEPS, U256,
+ Address, Transaction, BOOTLOADER_ADDRESS, L1_GAS_PER_PUBDATA_BYTE, MAX_NEW_FACTORY_DEPS, U256,
};
use zksync_utils::{
address_to_u256,
@@ -83,7 +83,7 @@ pub(crate) fn eth_price_per_pubdata_byte(l1_gas_price: u64) -> u64 {
l1_gas_price * (L1_GAS_PER_PUBDATA_BYTE as u64)
}
-pub fn base_fee_to_gas_per_pubdata(l1_gas_price: u64, base_fee: u64) -> u64 {
+pub(crate) fn base_fee_to_gas_per_pubdata(l1_gas_price: u64, base_fee: u64) -> u64 {
let eth_price_per_pubdata_byte = eth_price_per_pubdata_byte(l1_gas_price);
ceil_div(eth_price_per_pubdata_byte, base_fee)
@@ -108,7 +108,7 @@ pub(crate) fn derive_base_fee_and_gas_per_pubdata(
(
base_fee,
- base_fee_to_gas_per_pubdata(l1_gas_price, base_fee),
+ base_fee_to_gas_per_pubdata(fee_input.l1_gas_price, base_fee),
)
}
@@ -133,6 +133,23 @@ impl From for DerivedBlockContext {
}
}
+/// The size of the bootloader memory in bytes which is used by the protocol.
+/// While the maximal possible size is a lot higher, we restrict ourselves to a certain limit to reduce
+/// the requirements on RAM.
+pub(crate) const USED_BOOTLOADER_MEMORY_BYTES: usize = 1 << 24;
+pub(crate) const USED_BOOTLOADER_MEMORY_WORDS: usize = USED_BOOTLOADER_MEMORY_BYTES / 32;
+
+// This the number of pubdata such that it should be always possible to publish
+// from a single transaction. Note, that these pubdata bytes include only bytes that are
+// to be published inside the body of transaction (i.e. excluding of factory deps).
+pub(crate) const GUARANTEED_PUBDATA_PER_L1_BATCH: u64 = 4000;
+
+// The users should always be able to provide `MAX_GAS_PER_PUBDATA_BYTE` gas per pubdata in their
+// transactions so that they are able to send at least `GUARANTEED_PUBDATA_PER_L1_BATCH` bytes per
+// transaction.
+pub(crate) const MAX_GAS_PER_PUBDATA_BYTE: u64 =
+ MAX_L2_TX_GAS_LIMIT / GUARANTEED_PUBDATA_PER_L1_BATCH;
+
// The maximal number of transactions in a single batch
pub(crate) const MAX_TXS_IN_BLOCK: usize = 1024;
diff --git a/core/lib/multivm/src/versions/vm_refunds_enhancement/constants.rs b/core/lib/multivm/src/versions/vm_refunds_enhancement/constants.rs
index 25e89bfb1809..3c5560e7ea8a 100644
--- a/core/lib/multivm/src/versions/vm_refunds_enhancement/constants.rs
+++ b/core/lib/multivm/src/versions/vm_refunds_enhancement/constants.rs
@@ -2,13 +2,27 @@ use zk_evm_1_3_3::aux_structures::MemoryPage;
pub use zk_evm_1_3_3::zkevm_opcode_defs::system_params::{
ERGS_PER_CIRCUIT, INITIAL_STORAGE_WRITE_PUBDATA_BYTES, MAX_PUBDATA_PER_BLOCK,
};
-use zksync_system_constants::{
- L1_GAS_PER_PUBDATA_BYTE, MAX_L2_TX_GAS_LIMIT, MAX_NEW_FACTORY_DEPS,
- USED_BOOTLOADER_MEMORY_WORDS,
-};
+use zksync_system_constants::{L1_GAS_PER_PUBDATA_BYTE, MAX_L2_TX_GAS_LIMIT, MAX_NEW_FACTORY_DEPS};
use crate::vm_refunds_enhancement::old_vm::utils::heap_page_from_base;
+/// The size of the bootloader memory in bytes which is used by the protocol.
+/// While the maximal possible size is a lot higher, we restrict ourselves to a certain limit to reduce
+/// the requirements on RAM.
+pub(crate) const USED_BOOTLOADER_MEMORY_BYTES: usize = 1 << 24;
+pub(crate) const USED_BOOTLOADER_MEMORY_WORDS: usize = USED_BOOTLOADER_MEMORY_BYTES / 32;
+
+// This the number of pubdata such that it should be always possible to publish
+// from a single transaction. Note, that these pubdata bytes include only bytes that are
+// to be published inside the body of transaction (i.e. excluding of factory deps).
+pub(crate) const GUARANTEED_PUBDATA_PER_L1_BATCH: u64 = 4000;
+
+// The users should always be able to provide `MAX_GAS_PER_PUBDATA_BYTE` gas per pubdata in their
+// transactions so that they are able to send at least `GUARANTEED_PUBDATA_PER_L1_BATCH` bytes per
+// transaction.
+pub(crate) const MAX_GAS_PER_PUBDATA_BYTE: u64 =
+ MAX_L2_TX_GAS_LIMIT / GUARANTEED_PUBDATA_PER_L1_BATCH;
+
// The maximal number of transactions in a single batch
pub(crate) const MAX_TXS_IN_BLOCK: usize = 1024;
diff --git a/core/lib/multivm/src/versions/vm_refunds_enhancement/types/internals/transaction_data.rs b/core/lib/multivm/src/versions/vm_refunds_enhancement/types/internals/transaction_data.rs
index 82b79c012f20..1493cf7e59da 100644
--- a/core/lib/multivm/src/versions/vm_refunds_enhancement/types/internals/transaction_data.rs
+++ b/core/lib/multivm/src/versions/vm_refunds_enhancement/types/internals/transaction_data.rs
@@ -11,8 +11,9 @@ use zksync_types::{
};
use zksync_utils::{address_to_h256, bytecode::hash_bytecode, bytes_to_be_words, h256_to_u256};
-use crate::vm_refunds_enhancement::utils::overhead::{
- get_amortized_overhead, OverheadCoefficients,
+use crate::vm_refunds_enhancement::{
+ constants::MAX_GAS_PER_PUBDATA_BYTE,
+ utils::overhead::{get_amortized_overhead, OverheadCoefficients},
};
/// This structure represents the data that is used by
@@ -61,12 +62,22 @@ impl From for TransactionData {
U256::zero()
};
+ // Ethereum transactions do not sign gas per pubdata limit, and so for them we need to use
+ // some default value. We use the maximum possible value that is allowed by the bootloader
+ // (i.e. we can not use u64::MAX, because the bootloader requires gas per pubdata for such
+ // transactions to be higher than `MAX_GAS_PER_PUBDATA_BYTE`).
+ let gas_per_pubdata_limit = if common_data.transaction_type.is_ethereum_type() {
+ MAX_GAS_PER_PUBDATA_BYTE.into()
+ } else {
+ common_data.fee.gas_per_pubdata_limit
+ };
+
TransactionData {
tx_type: (common_data.transaction_type as u32) as u8,
from: common_data.initiator_address,
to: execute_tx.execute.contract_address,
gas_limit: common_data.fee.gas_limit,
- pubdata_price_limit: common_data.fee.gas_per_pubdata_limit,
+ pubdata_price_limit: gas_per_pubdata_limit,
max_fee_per_gas: common_data.fee.max_fee_per_gas,
max_priority_fee_per_gas: common_data.fee.max_priority_fee_per_gas,
paymaster: common_data.paymaster_params.paymaster,
diff --git a/core/lib/multivm/src/versions/vm_refunds_enhancement/utils/fee.rs b/core/lib/multivm/src/versions/vm_refunds_enhancement/utils/fee.rs
index 773ae3cb4096..a2fccb596309 100644
--- a/core/lib/multivm/src/versions/vm_refunds_enhancement/utils/fee.rs
+++ b/core/lib/multivm/src/versions/vm_refunds_enhancement/utils/fee.rs
@@ -1,14 +1,16 @@
//! Utility functions for vm
-use zksync_system_constants::MAX_GAS_PER_PUBDATA_BYTE;
use zksync_types::fee_model::L1PeggedBatchFeeModelInput;
use zksync_utils::ceil_div;
use crate::{
- vm_latest::L1BatchEnv, vm_refunds_enhancement::old_vm::utils::eth_price_per_pubdata_byte,
+ vm_latest::L1BatchEnv,
+ vm_refunds_enhancement::{
+ constants::MAX_GAS_PER_PUBDATA_BYTE, old_vm::utils::eth_price_per_pubdata_byte,
+ },
};
/// Calculates the amount of gas required to publish one byte of pubdata
-pub fn base_fee_to_gas_per_pubdata(l1_gas_price: u64, base_fee: u64) -> u64 {
+pub(crate) fn base_fee_to_gas_per_pubdata(l1_gas_price: u64, base_fee: u64) -> u64 {
let eth_price_per_pubdata_byte = eth_price_per_pubdata_byte(l1_gas_price);
ceil_div(eth_price_per_pubdata_byte, base_fee)
@@ -33,7 +35,7 @@ pub(crate) fn derive_base_fee_and_gas_per_pubdata(
(
base_fee,
- base_fee_to_gas_per_pubdata(l1_gas_price, base_fee),
+ base_fee_to_gas_per_pubdata(fee_input.l1_gas_price, base_fee),
)
}
diff --git a/core/lib/multivm/src/versions/vm_virtual_blocks/constants.rs b/core/lib/multivm/src/versions/vm_virtual_blocks/constants.rs
index 1993474bb4ed..0e0eab85877b 100644
--- a/core/lib/multivm/src/versions/vm_virtual_blocks/constants.rs
+++ b/core/lib/multivm/src/versions/vm_virtual_blocks/constants.rs
@@ -2,13 +2,27 @@ use zk_evm_1_3_3::aux_structures::MemoryPage;
pub use zk_evm_1_3_3::zkevm_opcode_defs::system_params::{
ERGS_PER_CIRCUIT, INITIAL_STORAGE_WRITE_PUBDATA_BYTES, MAX_PUBDATA_PER_BLOCK,
};
-use zksync_system_constants::{
- L1_GAS_PER_PUBDATA_BYTE, MAX_L2_TX_GAS_LIMIT, MAX_NEW_FACTORY_DEPS,
- USED_BOOTLOADER_MEMORY_WORDS,
-};
+use zksync_system_constants::{L1_GAS_PER_PUBDATA_BYTE, MAX_L2_TX_GAS_LIMIT, MAX_NEW_FACTORY_DEPS};
use crate::vm_virtual_blocks::old_vm::utils::heap_page_from_base;
+/// The size of the bootloader memory in bytes which is used by the protocol.
+/// While the maximal possible size is a lot higher, we restrict ourselves to a certain limit to reduce
+/// the requirements on RAM.
+pub(crate) const USED_BOOTLOADER_MEMORY_BYTES: usize = 1 << 24;
+pub(crate) const USED_BOOTLOADER_MEMORY_WORDS: usize = USED_BOOTLOADER_MEMORY_BYTES / 32;
+
+// This the number of pubdata such that it should be always possible to publish
+// from a single transaction. Note, that these pubdata bytes include only bytes that are
+// to be published inside the body of transaction (i.e. excluding of factory deps).
+pub(crate) const GUARANTEED_PUBDATA_PER_L1_BATCH: u64 = 4000;
+
+// The users should always be able to provide `MAX_GAS_PER_PUBDATA_BYTE` gas per pubdata in their
+// transactions so that they are able to send at least `GUARANTEED_PUBDATA_PER_L1_BATCH` bytes per
+// transaction.
+pub(crate) const MAX_GAS_PER_PUBDATA_BYTE: u64 =
+ MAX_L2_TX_GAS_LIMIT / GUARANTEED_PUBDATA_PER_L1_BATCH;
+
// The maximal number of transactions in a single batch
pub(crate) const MAX_TXS_IN_BLOCK: usize = 1024;
diff --git a/core/lib/multivm/src/versions/vm_virtual_blocks/types/internals/transaction_data.rs b/core/lib/multivm/src/versions/vm_virtual_blocks/types/internals/transaction_data.rs
index 8bebd5ab321d..6fee52542fc1 100644
--- a/core/lib/multivm/src/versions/vm_virtual_blocks/types/internals/transaction_data.rs
+++ b/core/lib/multivm/src/versions/vm_virtual_blocks/types/internals/transaction_data.rs
@@ -11,7 +11,10 @@ use zksync_types::{
};
use zksync_utils::{address_to_h256, bytecode::hash_bytecode, bytes_to_be_words, h256_to_u256};
-use crate::vm_virtual_blocks::utils::overhead::{get_amortized_overhead, OverheadCoefficients};
+use crate::vm_virtual_blocks::{
+ constants::MAX_GAS_PER_PUBDATA_BYTE,
+ utils::overhead::{get_amortized_overhead, OverheadCoefficients},
+};
/// This structure represents the data that is used by
/// the Bootloader to describe the transaction.
@@ -59,12 +62,22 @@ impl From for TransactionData {
U256::zero()
};
+ // Ethereum transactions do not sign gas per pubdata limit, and so for them we need to use
+ // some default value. We use the maximum possible value that is allowed by the bootloader
+ // (i.e. we can not use u64::MAX, because the bootloader requires gas per pubdata for such
+ // transactions to be higher than `MAX_GAS_PER_PUBDATA_BYTE`).
+ let gas_per_pubdata_limit = if common_data.transaction_type.is_ethereum_type() {
+ MAX_GAS_PER_PUBDATA_BYTE.into()
+ } else {
+ common_data.fee.gas_per_pubdata_limit
+ };
+
TransactionData {
tx_type: (common_data.transaction_type as u32) as u8,
from: common_data.initiator_address,
to: execute_tx.execute.contract_address,
gas_limit: common_data.fee.gas_limit,
- pubdata_price_limit: common_data.fee.gas_per_pubdata_limit,
+ pubdata_price_limit: gas_per_pubdata_limit,
max_fee_per_gas: common_data.fee.max_fee_per_gas,
max_priority_fee_per_gas: common_data.fee.max_priority_fee_per_gas,
paymaster: common_data.paymaster_params.paymaster,
diff --git a/core/lib/multivm/src/versions/vm_virtual_blocks/utils/fee.rs b/core/lib/multivm/src/versions/vm_virtual_blocks/utils/fee.rs
index 5af37aba11eb..14133553b04b 100644
--- a/core/lib/multivm/src/versions/vm_virtual_blocks/utils/fee.rs
+++ b/core/lib/multivm/src/versions/vm_virtual_blocks/utils/fee.rs
@@ -1,12 +1,16 @@
//! Utility functions for vm
-use zksync_system_constants::MAX_GAS_PER_PUBDATA_BYTE;
use zksync_types::fee_model::L1PeggedBatchFeeModelInput;
use zksync_utils::ceil_div;
-use crate::{vm_latest::L1BatchEnv, vm_virtual_blocks::old_vm::utils::eth_price_per_pubdata_byte};
+use crate::{
+ vm_latest::L1BatchEnv,
+ vm_virtual_blocks::{
+ constants::MAX_GAS_PER_PUBDATA_BYTE, old_vm::utils::eth_price_per_pubdata_byte,
+ },
+};
/// Calculates the amount of gas required to publish one byte of pubdata
-pub fn base_fee_to_gas_per_pubdata(l1_gas_price: u64, base_fee: u64) -> u64 {
+pub(crate) fn base_fee_to_gas_per_pubdata(l1_gas_price: u64, base_fee: u64) -> u64 {
let eth_price_per_pubdata_byte = eth_price_per_pubdata_byte(l1_gas_price);
ceil_div(eth_price_per_pubdata_byte, base_fee)
@@ -32,7 +36,7 @@ pub(crate) fn derive_base_fee_and_gas_per_pubdata(
(
base_fee,
- base_fee_to_gas_per_pubdata(l1_gas_price, base_fee),
+ base_fee_to_gas_per_pubdata(fee_input.l1_gas_price, base_fee),
)
}
diff --git a/core/lib/multivm/src/vm_instance.rs b/core/lib/multivm/src/vm_instance.rs
index ea3ad74f5302..4eaca6f44b03 100644
--- a/core/lib/multivm/src/vm_instance.rs
+++ b/core/lib/multivm/src/vm_instance.rs
@@ -20,6 +20,7 @@ pub enum VmInstance {
VmVirtualBlocks(crate::vm_virtual_blocks::Vm),
VmVirtualBlocksRefundsEnhancement(crate::vm_refunds_enhancement::Vm),
VmBoojumIntegration(crate::vm_boojum_integration::Vm),
+ Vm1_4_1(crate::vm_latest::Vm),
}
macro_rules! dispatch_vm {
@@ -31,6 +32,7 @@ macro_rules! dispatch_vm {
VmInstance::VmVirtualBlocks(vm) => vm.$function($($params)*),
VmInstance::VmVirtualBlocksRefundsEnhancement(vm) => vm.$function($($params)*),
VmInstance::VmBoojumIntegration(vm) => vm.$function($($params)*),
+ VmInstance::Vm1_4_1(vm) => vm.$function($($params)*),
}
};
}
@@ -198,6 +200,10 @@ impl VmInstance {
crate::vm_boojum_integration::Vm::new(l1_batch_env, system_env, storage_view);
VmInstance::VmBoojumIntegration(vm)
}
+ VmVersion::Vm1_4_1 => {
+ let vm = crate::vm_latest::Vm::new(l1_batch_env, system_env, storage_view);
+ VmInstance::Vm1_4_1(vm)
+ }
}
}
}
diff --git a/core/lib/state/src/test_utils.rs b/core/lib/state/src/test_utils.rs
index d24571860272..340f2ea62237 100644
--- a/core/lib/state/src/test_utils.rs
+++ b/core/lib/state/src/test_utils.rs
@@ -74,6 +74,7 @@ pub(crate) async fn create_miniblock(
l2_tx_count: 0,
base_fee_per_gas: 0,
batch_fee_input: Default::default(),
+ gas_per_pubdata_limit: 0,
base_system_contracts_hashes: Default::default(),
protocol_version: Some(Default::default()),
virtual_blocks: 0,
diff --git a/core/lib/test_account/src/lib.rs b/core/lib/test_account/src/lib.rs
index 5a84c84f4f52..ec3c1b7a7b0f 100644
--- a/core/lib/test_account/src/lib.rs
+++ b/core/lib/test_account/src/lib.rs
@@ -4,7 +4,8 @@ use zksync_contracts::{
};
use zksync_eth_signer::{raw_ethereum_tx::TransactionParameters, EthereumSigner, PrivateKeySigner};
use zksync_system_constants::{
- CONTRACT_DEPLOYER_ADDRESS, MAX_GAS_PER_PUBDATA_BYTE, REQUIRED_L1_TO_L2_GAS_PER_PUBDATA_BYTE,
+ CONTRACT_DEPLOYER_ADDRESS, DEFAULT_L2_TX_GAS_PER_PUBDATA_BYTE,
+ REQUIRED_L1_TO_L2_GAS_PER_PUBDATA_BYTE,
};
use zksync_types::{
fee::Fee,
@@ -94,7 +95,7 @@ impl Account {
gas_limit: U256::from(2000000000u32),
max_fee_per_gas: U256::from(BASE_FEE),
max_priority_fee_per_gas: U256::from(100),
- gas_per_pubdata_limit: U256::from(MAX_GAS_PER_PUBDATA_BYTE),
+ gas_per_pubdata_limit: U256::from(DEFAULT_L2_TX_GAS_PER_PUBDATA_BYTE),
}
}
diff --git a/core/lib/types/Cargo.toml b/core/lib/types/Cargo.toml
index d04f9f8ec09f..95d433e07918 100644
--- a/core/lib/types/Cargo.toml
+++ b/core/lib/types/Cargo.toml
@@ -16,10 +16,12 @@ zksync_utils = { path = "../utils" }
zksync_basic_types = { path = "../basic_types" }
zksync_contracts = { path = "../contracts" }
zksync_mini_merkle_tree = { path = "../mini_merkle_tree" }
+zksync_config = { path = "../config" }
# We need this import because we wanat DAL to be responsible for (de)serialization
codegen = { git = "https://github.com/matter-labs/solidity_plonk_verifier.git", branch = "dev" }
zkevm_test_harness = { git = "https://github.com/matter-labs/era-zkevm_test_harness.git", branch = "v1.3.3" }
-zk_evm_1_4_0 = { git = "https://github.com/matter-labs/era-zk_evm.git", branch = "v1.4.0", package = "zk_evm" }
+zk_evm_1_4_1 = { package = "zk_evm", git = "https://github.com/matter-labs/era-zk_evm.git", branch = "v1.4.1" }
+zk_evm_1_4_0 = { package = "zk_evm", git = "https://github.com/matter-labs/era-zk_evm.git", branch = "v1.4.0" }
zk_evm = { git = "https://github.com/matter-labs/era-zk_evm.git", tag = "v1.3.3-rc2" }
zksync_consensus_roles = { version = "0.1.0", git = "https://github.com/matter-labs/era-consensus.git", rev = "5727a3e0b22470bb90092388f9125bcb366df613" }
zksync_protobuf = { version = "0.1.0", git = "https://github.com/matter-labs/era-consensus.git", rev = "5727a3e0b22470bb90092388f9125bcb366df613" }
diff --git a/core/lib/types/src/api/en.rs b/core/lib/types/src/api/en.rs
index 5b8e1abf8dd6..2e7afcdfb73a 100644
--- a/core/lib/types/src/api/en.rs
+++ b/core/lib/types/src/api/en.rs
@@ -28,6 +28,8 @@ pub struct SyncBlock {
pub l1_gas_price: u64,
/// L2 gas price used as VM parameter for the L1 batch corresponding to this L2 block.
pub l2_fair_gas_price: u64,
+ /// The pubdata price used as VM parameter for the L1 batch corresponding to this L2 block.
+ pub fair_pubdata_price: Option,
/// Hashes of the base system contracts used in for the L1 batch corresponding to this L2 block.
pub base_system_contracts_hashes: BaseSystemContractsHashes,
/// Address of the operator account who produced for the L1 batch corresponding to this L2 block.
diff --git a/core/lib/types/src/block.rs b/core/lib/types/src/block.rs
index 2de8abd2512f..48765e27e0fc 100644
--- a/core/lib/types/src/block.rs
+++ b/core/lib/types/src/block.rs
@@ -80,6 +80,7 @@ pub struct MiniblockHeader {
pub base_fee_per_gas: u64, // Min wei per gas that txs in this miniblock need to have.
pub batch_fee_input: BatchFeeInput,
+ pub gas_per_pubdata_limit: u64,
pub base_system_contracts_hashes: BaseSystemContractsHashes,
pub protocol_version: Option,
/// The maximal number of virtual blocks to be created in the miniblock.
diff --git a/core/lib/types/src/commitment.rs b/core/lib/types/src/commitment.rs
index 27851c3434e9..8a59bd4758fd 100644
--- a/core/lib/types/src/commitment.rs
+++ b/core/lib/types/src/commitment.rs
@@ -24,7 +24,7 @@ use crate::{
compress_state_diffs, InitialStorageWrite, RepeatedStorageWrite, StateDiffRecord,
PADDED_ENCODED_STORAGE_DIFF_LEN_BYTES,
},
- H256, KNOWN_CODES_STORAGE_ADDRESS, U256,
+ ProtocolVersionId, H256, KNOWN_CODES_STORAGE_ADDRESS, U256,
};
/// Type that can be serialized for commitment.
@@ -361,7 +361,7 @@ struct L1BatchAuxiliaryOutput {
state_diffs_compressed: Vec,
bootloader_heap_hash: H256,
events_state_queue_hash: H256,
- is_pre_boojum: bool,
+ protocol_version: ProtocolVersionId,
}
impl L1BatchAuxiliaryOutput {
@@ -374,7 +374,7 @@ impl L1BatchAuxiliaryOutput {
state_diffs: Vec,
bootloader_heap_hash: H256,
events_state_queue_hash: H256,
- is_pre_boojum: bool,
+ protocol_version: ProtocolVersionId,
) -> Self {
let state_diff_hash_from_logs = system_logs.iter().find_map(|log| {
if log.0.key == u256_to_h256(STATE_DIFF_HASH_KEY.into()) {
@@ -398,7 +398,7 @@ impl L1BatchAuxiliaryOutput {
repeated_writes_compressed,
system_logs_compressed,
state_diffs_packed,
- ) = if is_pre_boojum {
+ ) = if protocol_version.is_pre_boojum() {
(
pre_boojum_serialize_commitments(&l2_l1_logs),
pre_boojum_serialize_commitments(&initial_writes),
@@ -424,7 +424,7 @@ impl L1BatchAuxiliaryOutput {
let repeated_writes_hash = H256::from(keccak256(&repeated_writes_compressed));
let state_diffs_hash = H256::from(keccak256(&(state_diffs_packed)));
- let serialized_logs = if is_pre_boojum {
+ let serialized_logs = if protocol_version.is_pre_boojum() {
&l2_l1_logs_compressed[4..]
} else {
&l2_l1_logs_compressed
@@ -434,7 +434,7 @@ impl L1BatchAuxiliaryOutput {
.chunks(UserL2ToL1Log::SERIALIZED_SIZE)
.map(|chunk| <[u8; UserL2ToL1Log::SERIALIZED_SIZE]>::try_from(chunk).unwrap());
// ^ Skip first 4 bytes of the serialized logs (i.e., the number of logs).
- let min_tree_size = if is_pre_boojum {
+ let min_tree_size = if protocol_version.is_pre_boojum() {
L2ToL1Log::PRE_BOOJUM_MIN_L2_L1_LOGS_TREE_SIZE
} else {
L2ToL1Log::MIN_L2_L1_LOGS_TREE_SIZE
@@ -473,7 +473,7 @@ impl L1BatchAuxiliaryOutput {
bootloader_heap_hash,
events_state_queue_hash,
- is_pre_boojum,
+ protocol_version,
}
}
@@ -482,16 +482,27 @@ impl L1BatchAuxiliaryOutput {
const SERIALIZED_SIZE: usize = 128;
let mut result = Vec::with_capacity(SERIALIZED_SIZE);
- if self.is_pre_boojum {
+ if self.protocol_version.is_pre_boojum() {
result.extend(self.l2_l1_logs_merkle_root.as_bytes());
result.extend(self.l2_l1_logs_linear_hash.as_bytes());
result.extend(self.initial_writes_hash.as_bytes());
result.extend(self.repeated_writes_hash.as_bytes());
+ } else if self.protocol_version.is_1_4_0() {
+ result.extend(self.system_logs_linear_hash.as_bytes());
+ result.extend(self.state_diffs_hash.as_bytes());
+ result.extend(self.bootloader_heap_hash.as_bytes());
+ result.extend(self.events_state_queue_hash.as_bytes());
} else {
result.extend(self.system_logs_linear_hash.as_bytes());
result.extend(self.state_diffs_hash.as_bytes());
result.extend(self.bootloader_heap_hash.as_bytes());
result.extend(self.events_state_queue_hash.as_bytes());
+
+ // For now, we are using zeroes as commitments to the KZG pubdata.
+ result.extend(H256::zero().as_bytes());
+ result.extend(H256::zero().as_bytes());
+ result.extend(H256::zero().as_bytes());
+ result.extend(H256::zero().as_bytes());
}
result
}
@@ -586,7 +597,7 @@ impl L1BatchCommitment {
state_diffs: Vec,
bootloader_heap_hash: H256,
events_state_queue_hash: H256,
- is_pre_boojum: bool,
+ protocol_version: ProtocolVersionId,
) -> Self {
let meta_parameters = L1BatchMetaParameters {
zkporter_is_available: ZKPORTER_IS_AVAILABLE,
@@ -616,7 +627,7 @@ impl L1BatchCommitment {
state_diffs,
bootloader_heap_hash,
events_state_queue_hash,
- is_pre_boojum,
+ protocol_version,
),
meta_parameters,
}
@@ -693,7 +704,7 @@ mod tests {
},
l2_to_l1_log::{L2ToL1Log, UserL2ToL1Log},
writes::{InitialStorageWrite, RepeatedStorageWrite},
- H256, U256,
+ ProtocolVersionId, H256, U256,
};
#[serde_as]
@@ -775,7 +786,7 @@ mod tests {
vec![],
H256::zero(),
H256::zero(),
- false,
+ ProtocolVersionId::latest(),
);
let commitment = L1BatchCommitment {
diff --git a/core/lib/types/src/fee_model.rs b/core/lib/types/src/fee_model.rs
index f0403d9a71c5..8f8d43a4ab7e 100644
--- a/core/lib/types/src/fee_model.rs
+++ b/core/lib/types/src/fee_model.rs
@@ -1,6 +1,9 @@
use serde::{Deserialize, Serialize};
+use zksync_config::configs::chain::{FeeModelVersion, StateKeeperConfig};
use zksync_system_constants::L1_GAS_PER_PUBDATA_BYTE;
+use crate::ProtocolVersionId;
+
/// Fee input to be provided into the VM. It contains two options:
/// - `L1Pegged`: L1 gas price is provided to the VM, and the pubdata price is derived from it. Using this option is required for the
/// versions of Era prior to 1.4.1 integration.
@@ -77,6 +80,27 @@ impl BatchFeeInput {
},
}
}
+
+ pub fn for_protocol_version(
+ protocol_version: ProtocolVersionId,
+ fair_l2_gas_price: u64,
+ fair_pubdata_price: Option,
+ l1_gas_price: u64,
+ ) -> Self {
+ if protocol_version.is_post_1_4_1() {
+ Self::PubdataIndependent(PubdataIndependentBatchFeeModelInput {
+ fair_l2_gas_price,
+ fair_pubdata_price: fair_pubdata_price
+ .expect("Pubdata price must be provided for protocol version 1.4.1"),
+ l1_gas_price,
+ })
+ } else {
+ Self::L1Pegged(L1PeggedBatchFeeModelInput {
+ fair_l2_gas_price,
+ l1_gas_price,
+ })
+ }
+ }
}
/// Pubdata is only published via calldata and so its price is pegged to the L1 gas price.
@@ -153,6 +177,24 @@ impl Default for FeeModelConfig {
}
}
+impl FeeModelConfig {
+ pub fn from_state_keeper_config(state_keeper_config: &StateKeeperConfig) -> Self {
+ match state_keeper_config.fee_model_version {
+ FeeModelVersion::V1 => Self::V1(FeeModelConfigV1 {
+ minimal_l2_gas_price: state_keeper_config.minimal_l2_gas_price,
+ }),
+ FeeModelVersion::V2 => Self::V2(FeeModelConfigV2 {
+ minimal_l2_gas_price: state_keeper_config.minimal_l2_gas_price,
+ compute_overhead_part: state_keeper_config.compute_overhead_part,
+ pubdata_overhead_part: state_keeper_config.pubdata_overhead_part,
+ batch_overhead_l1_gas: state_keeper_config.batch_overhead_l1_gas,
+ max_gas_per_batch: state_keeper_config.max_gas_per_batch,
+ max_pubdata_per_batch: state_keeper_config.max_pubdata_per_batch,
+ }),
+ }
+ }
+}
+
#[derive(Debug, Clone, Copy, Serialize, Deserialize)]
pub struct FeeParamsV1 {
pub config: FeeModelConfigV1,
diff --git a/core/lib/types/src/l2/mod.rs b/core/lib/types/src/l2/mod.rs
index 6827f0421912..08c32f900bef 100644
--- a/core/lib/types/src/l2/mod.rs
+++ b/core/lib/types/src/l2/mod.rs
@@ -26,7 +26,6 @@ pub mod error;
pub enum TransactionType {
// Native ECDSA Transaction
LegacyTransaction = 0,
-
EIP2930Transaction = 1,
EIP1559Transaction = 2,
// EIP 712 transaction with additional fields specified for zkSync
@@ -35,6 +34,18 @@ pub enum TransactionType {
ProtocolUpgradeTransaction = PROTOCOL_UPGRADE_TX_TYPE as u32,
}
+impl TransactionType {
+ /// Returns whether a transaction type is an Ethereum transaction type.
+ pub fn is_ethereum_type(&self) -> bool {
+ matches!(
+ self,
+ TransactionType::LegacyTransaction
+ | TransactionType::EIP2930Transaction
+ | TransactionType::EIP1559Transaction
+ )
+ }
+}
+
#[derive(Debug, Clone, Serialize, Deserialize, PartialEq, Eq)]
#[serde(rename_all = "camelCase")]
pub struct L2TxCommonData {
diff --git a/core/lib/types/src/l2_to_l1_log.rs b/core/lib/types/src/l2_to_l1_log.rs
index 335e6e740be5..03ac163e5593 100644
--- a/core/lib/types/src/l2_to_l1_log.rs
+++ b/core/lib/types/src/l2_to_l1_log.rs
@@ -1,6 +1,7 @@
use serde::{Deserialize, Serialize};
use zk_evm::reference_impls::event_sink::EventMessage;
use zk_evm_1_4_0::reference_impls::event_sink::EventMessage as EventMessage_1_4_0;
+use zk_evm_1_4_1::reference_impls::event_sink::EventMessage as EventMessage_1_4_1;
use zksync_utils::u256_to_h256;
use crate::{commitment::SerializeCommitment, Address, H256};
@@ -92,6 +93,19 @@ impl From for L2ToL1Log {
}
}
+impl From for L2ToL1Log {
+ fn from(m: EventMessage_1_4_1) -> Self {
+ Self {
+ shard_id: m.shard_id,
+ is_service: m.is_first,
+ tx_number_in_block: m.tx_number_in_block,
+ sender: m.address,
+ key: u256_to_h256(m.key),
+ value: u256_to_h256(m.value),
+ }
+ }
+}
+
#[cfg(test)]
mod tests {
use zksync_basic_types::U256;
diff --git a/core/lib/types/src/protocol_version.rs b/core/lib/types/src/protocol_version.rs
index 75333880ef4b..38caa0f8a20e 100644
--- a/core/lib/types/src/protocol_version.rs
+++ b/core/lib/types/src/protocol_version.rs
@@ -42,15 +42,16 @@ pub enum ProtocolVersionId {
Version18,
Version19,
Version20,
+ Version21,
}
impl ProtocolVersionId {
pub fn latest() -> Self {
- Self::Version19
+ Self::Version20
}
pub fn next() -> Self {
- Self::Version20
+ Self::Version21
}
/// Returns VM version to be used by API for this protocol version.
@@ -77,16 +78,27 @@ impl ProtocolVersionId {
ProtocolVersionId::Version17 => VmVersion::VmVirtualBlocksRefundsEnhancement,
ProtocolVersionId::Version18 => VmVersion::VmBoojumIntegration,
ProtocolVersionId::Version19 => VmVersion::VmBoojumIntegration,
- ProtocolVersionId::Version20 => VmVersion::VmBoojumIntegration,
+ ProtocolVersionId::Version20 => VmVersion::Vm1_4_1,
+ ProtocolVersionId::Version21 => VmVersion::Vm1_4_1,
}
}
+ // It is possible that some external nodes do not store protocol versions for versions below 9.
+ // That's why we assume that whenever a protocol version is not present, version 9 is to be used.
+ pub fn last_potentially_undefined() -> Self {
+ Self::Version9
+ }
+
pub fn is_pre_boojum(&self) -> bool {
- self < &ProtocolVersionId::Version18
+ self <= &Self::Version17
+ }
+
+ pub fn is_1_4_0(&self) -> bool {
+ self >= &ProtocolVersionId::Version18 && self < &ProtocolVersionId::Version20
}
- pub fn last_pre_boojum() -> Self {
- ProtocolVersionId::Version17
+ pub fn is_post_1_4_1(&self) -> bool {
+ self >= &ProtocolVersionId::Version20
}
}
@@ -701,7 +713,8 @@ impl From for VmVersion {
ProtocolVersionId::Version17 => VmVersion::VmVirtualBlocksRefundsEnhancement,
ProtocolVersionId::Version18 => VmVersion::VmBoojumIntegration,
ProtocolVersionId::Version19 => VmVersion::VmBoojumIntegration,
- ProtocolVersionId::Version20 => VmVersion::VmBoojumIntegration,
+ ProtocolVersionId::Version20 => VmVersion::Vm1_4_1,
+ ProtocolVersionId::Version21 => VmVersion::Vm1_4_1,
}
}
}
diff --git a/core/lib/types/src/transaction_request.rs b/core/lib/types/src/transaction_request.rs
index 8f14f44f87b5..7fda18d70a46 100644
--- a/core/lib/types/src/transaction_request.rs
+++ b/core/lib/types/src/transaction_request.rs
@@ -4,7 +4,7 @@ use rlp::{DecoderError, Rlp, RlpStream};
use serde::{Deserialize, Serialize};
use thiserror::Error;
use zksync_basic_types::H256;
-use zksync_system_constants::{MAX_GAS_PER_PUBDATA_BYTE, USED_BOOTLOADER_MEMORY_BYTES};
+use zksync_system_constants::{DEFAULT_L2_TX_GAS_PER_PUBDATA_BYTE, MAX_ENCODED_TX_SIZE};
use zksync_utils::{
bytecode::{hash_bytecode, validate_bytecode, InvalidBytecodeError},
concat_and_hash, u256_to_h256,
@@ -743,8 +743,8 @@ impl TransactionRequest {
}
meta.gas_per_pubdata
} else {
- // For transactions that don't support corresponding field, a default is chosen.
- U256::from(MAX_GAS_PER_PUBDATA_BYTE)
+ // For transactions that don't support corresponding field, a maximal default value is chosen.
+ DEFAULT_L2_TX_GAS_PER_PUBDATA_BYTE.into()
};
let max_priority_fee_per_gas = self.max_priority_fee_per_gas.unwrap_or(self.gas_price);
@@ -882,7 +882,7 @@ impl TryFrom for L1Tx {
type Error = SerializationTransactionError;
fn try_from(tx: CallRequest) -> Result {
// L1 transactions have no limitations on the transaction size.
- let tx: L2Tx = L2Tx::from_request(tx.into(), USED_BOOTLOADER_MEMORY_BYTES)?;
+ let tx: L2Tx = L2Tx::from_request(tx.into(), MAX_ENCODED_TX_SIZE)?;
// Note, that while the user has theoretically provided the fee for ETH on L1,
// the payment to the operator as well as refunds happen on L2 and so all the ETH
@@ -1488,21 +1488,15 @@ mod tests {
access_list: None,
eip712_meta: None,
};
- let l2_tx = L2Tx::from_request(
- call_request_with_nonce.clone().into(),
- USED_BOOTLOADER_MEMORY_BYTES,
- )
- .unwrap();
+ let l2_tx = L2Tx::from_request(call_request_with_nonce.clone().into(), MAX_ENCODED_TX_SIZE)
+ .unwrap();
assert_eq!(l2_tx.nonce(), Nonce(123u32));
let mut call_request_without_nonce = call_request_with_nonce;
call_request_without_nonce.nonce = None;
- let l2_tx = L2Tx::from_request(
- call_request_without_nonce.into(),
- USED_BOOTLOADER_MEMORY_BYTES,
- )
- .unwrap();
+ let l2_tx =
+ L2Tx::from_request(call_request_without_nonce.into(), MAX_ENCODED_TX_SIZE).unwrap();
assert_eq!(l2_tx.nonce(), Nonce(0u32));
}
}
diff --git a/core/lib/types/src/vm_version.rs b/core/lib/types/src/vm_version.rs
index 0f0fe4d337fc..2a4e9dc3ef2e 100644
--- a/core/lib/types/src/vm_version.rs
+++ b/core/lib/types/src/vm_version.rs
@@ -8,11 +8,12 @@ pub enum VmVersion {
VmVirtualBlocks,
VmVirtualBlocksRefundsEnhancement,
VmBoojumIntegration,
+ Vm1_4_1,
}
impl VmVersion {
/// Returns the latest supported VM version.
pub const fn latest() -> VmVersion {
- Self::VmBoojumIntegration
+ Self::Vm1_4_1
}
}
diff --git a/core/lib/zksync_core/src/api_server/execution_sandbox/apply.rs b/core/lib/zksync_core/src/api_server/execution_sandbox/apply.rs
index 54d9cde6cf23..45743397695b 100644
--- a/core/lib/zksync_core/src/api_server/execution_sandbox/apply.rs
+++ b/core/lib/zksync_core/src/api_server/execution_sandbox/apply.rs
@@ -301,7 +301,7 @@ async fn read_l2_block_info(
}
#[derive(Debug)]
-struct ResolvedBlockInfo {
+pub(crate) struct ResolvedBlockInfo {
pub state_l2_block_number: MiniblockNumber,
pub vm_l1_batch_number: L1BatchNumber,
pub l1_batch_timestamp: u64,
@@ -316,7 +316,7 @@ impl BlockArgs {
)
}
- async fn resolve_block_info(
+ pub(crate) async fn resolve_block_info(
&self,
connection: &mut StorageProcessor<'_>,
) -> anyhow::Result {
@@ -359,7 +359,8 @@ impl BlockArgs {
.blocks_dal()
.get_miniblock_protocol_version_id(state_l2_block_number)
.await?
- .unwrap_or(ProtocolVersionId::Version9);
+ .unwrap_or(ProtocolVersionId::last_potentially_undefined());
+
Ok(ResolvedBlockInfo {
state_l2_block_number,
vm_l1_batch_number,
diff --git a/core/lib/zksync_core/src/api_server/execution_sandbox/tracers.rs b/core/lib/zksync_core/src/api_server/execution_sandbox/tracers.rs
index 443b35fb46e0..e6add9a9e3b1 100644
--- a/core/lib/zksync_core/src/api_server/execution_sandbox/tracers.rs
+++ b/core/lib/zksync_core/src/api_server/execution_sandbox/tracers.rs
@@ -14,7 +14,7 @@ pub(crate) enum ApiTracer {
impl ApiTracer {
pub fn into_boxed<
S: WriteStorage,
- H: HistoryMode + multivm::HistoryMode + 'static,
+ H: HistoryMode + multivm::HistoryMode + 'static,
>(
self,
) -> MultiVmTracerPointer {
diff --git a/core/lib/zksync_core/src/api_server/tx_sender/mod.rs b/core/lib/zksync_core/src/api_server/tx_sender/mod.rs
index 455ba262d471..35740950b3aa 100644
--- a/core/lib/zksync_core/src/api_server/tx_sender/mod.rs
+++ b/core/lib/zksync_core/src/api_server/tx_sender/mod.rs
@@ -12,15 +12,17 @@ use zksync_config::configs::{api::Web3JsonRpcConfig, chain::StateKeeperConfig};
use zksync_contracts::BaseSystemContracts;
use zksync_dal::{transactions_dal::L2TxSubmissionResult, ConnectionPool};
use zksync_state::PostgresStorageCaches;
+use zksync_system_constants::DEFAULT_L2_TX_GAS_PER_PUBDATA_BYTE;
use zksync_types::{
fee::{Fee, TransactionExecutionMetrics},
fee_model::BatchFeeInput,
get_code_key, get_intrinsic_constants,
+ l1::is_l1_tx_type,
l2::{error::TxCheckError::TxDuplication, L2Tx},
utils::storage_key_for_eth_balance,
AccountTreeId, Address, ExecuteTransactionCommon, L2ChainId, MiniblockNumber, Nonce,
- PackedEthSignature, ProtocolVersionId, Transaction, VmVersion, H160, H256,
- MAX_GAS_PER_PUBDATA_BYTE, MAX_L2_TX_GAS_LIMIT, MAX_NEW_FACTORY_DEPS, U256,
+ PackedEthSignature, ProtocolVersionId, Transaction, VmVersion, H160, H256, MAX_L2_TX_GAS_LIMIT,
+ MAX_NEW_FACTORY_DEPS, U256,
};
use zksync_utils::h256_to_u256;
@@ -56,6 +58,8 @@ pub struct MultiVMBaseSystemContracts {
pub(crate) post_boojum: BaseSystemContracts,
/// Contracts to be used after the allow-list removal upgrade
pub(crate) post_allowlist_removal: BaseSystemContracts,
+ /// Contracts to be used after the 1.4.1 upgrade
+ pub(crate) post_1_4_1: BaseSystemContracts,
}
impl MultiVMBaseSystemContracts {
@@ -80,9 +84,8 @@ impl MultiVMBaseSystemContracts {
| ProtocolVersionId::Version16
| ProtocolVersionId::Version17 => self.post_virtual_blocks_finish_upgrade_fix,
ProtocolVersionId::Version18 => self.post_boojum,
- ProtocolVersionId::Version19 | ProtocolVersionId::Version20 => {
- self.post_allowlist_removal
- }
+ ProtocolVersionId::Version19 => self.post_allowlist_removal,
+ ProtocolVersionId::Version20 | ProtocolVersionId::Version21 => self.post_1_4_1,
}
}
}
@@ -114,6 +117,7 @@ impl ApiContracts {
BaseSystemContracts::estimate_gas_post_virtual_blocks_finish_upgrade_fix(),
post_boojum: BaseSystemContracts::estimate_gas_post_boojum(),
post_allowlist_removal: BaseSystemContracts::estimate_gas_post_allowlist_removal(),
+ post_1_4_1: BaseSystemContracts::estimate_gas_post_1_4_1(),
},
eth_call: MultiVMBaseSystemContracts {
pre_virtual_blocks: BaseSystemContracts::playground_pre_virtual_blocks(),
@@ -122,6 +126,7 @@ impl ApiContracts {
BaseSystemContracts::playground_post_virtual_blocks_finish_upgrade_fix(),
post_boojum: BaseSystemContracts::playground_post_boojum(),
post_allowlist_removal: BaseSystemContracts::playground_post_allowlist_removal(),
+ post_1_4_1: BaseSystemContracts::playground_post_1_4_1(),
},
}
}
@@ -208,9 +213,9 @@ pub struct TxSenderConfig {
pub gas_price_scale_factor: f64,
pub max_nonce_ahead: u32,
pub max_allowed_l2_tx_gas_limit: u32,
- pub fair_l2_gas_price: u64,
pub vm_execution_cache_misses_limit: Option,
pub validation_computational_gas_limit: u32,
+ pub l1_to_l2_transactions_compatibility_mode: bool,
pub chain_id: L2ChainId,
}
@@ -225,10 +230,11 @@ impl TxSenderConfig {
gas_price_scale_factor: web3_json_config.gas_price_scale_factor,
max_nonce_ahead: web3_json_config.max_nonce_ahead,
max_allowed_l2_tx_gas_limit: state_keeper_config.max_allowed_l2_tx_gas_limit,
- fair_l2_gas_price: state_keeper_config.fair_l2_gas_price,
vm_execution_cache_misses_limit: web3_json_config.vm_execution_cache_misses_limit,
validation_computational_gas_limit: state_keeper_config
.validation_computational_gas_limit,
+ l1_to_l2_transactions_compatibility_mode: web3_json_config
+ .l1_to_l2_transactions_compatibility_mode,
chain_id,
}
}
@@ -417,6 +423,8 @@ impl TxSender {
return Err(SubmitTxError::GasLimitIsTooBig);
}
+ let fee_input = self.0.batch_fee_input_provider.get_batch_fee_input();
+
// TODO (SMA-1715): do not subsidize the overhead for the transaction
if tx.common_data.fee.gas_limit > self.0.sender_config.max_allowed_l2_tx_gas_limit.into() {
@@ -427,7 +435,7 @@ impl TxSender {
);
return Err(SubmitTxError::GasLimitIsTooBig);
}
- if tx.common_data.fee.max_fee_per_gas < self.0.sender_config.fair_l2_gas_price.into() {
+ if tx.common_data.fee.max_fee_per_gas < fee_input.fair_l2_gas_price().into() {
tracing::info!(
"Submitted Tx is Unexecutable {:?} because of MaxFeePerGasTooLow {}",
tx.hash(),
@@ -540,11 +548,7 @@ impl TxSender {
let balance = self.get_balance(&tx.common_data.initiator_address).await;
// Estimate the minimum fee price user will agree to.
- let gas_price = cmp::min(
- tx.common_data.fee.max_fee_per_gas,
- U256::from(self.0.sender_config.fair_l2_gas_price)
- + tx.common_data.fee.max_priority_fee_per_gas,
- );
+ let gas_price = tx.common_data.fee.max_fee_per_gas;
let max_fee = tx.common_data.fee.gas_limit * gas_price;
let max_fee_and_value = max_fee + tx.execute.value;
@@ -583,9 +587,9 @@ impl TxSender {
&self,
vm_permit: VmPermit,
mut tx: Transaction,
- gas_per_pubdata_byte: u64,
tx_gas_limit: u32,
- fee_input: BatchFeeInput,
+ gas_price_per_pubdata: u32,
+ fee_model_params: BatchFeeInput,
block_args: BlockArgs,
base_fee: u64,
vm_version: VmVersion,
@@ -593,7 +597,7 @@ impl TxSender {
let gas_limit_with_overhead = tx_gas_limit
+ derive_overhead(
tx_gas_limit,
- gas_per_pubdata_byte as u32,
+ gas_price_per_pubdata,
tx.encoding_len(),
tx.tx_format() as u8,
vm_version,
@@ -619,7 +623,7 @@ impl TxSender {
}
}
- let shared_args = self.shared_args_for_gas_estimate(fee_input);
+ let shared_args = self.shared_args_for_gas_estimate(fee_model_params);
let vm_execution_cache_misses_limit = self.0.sender_config.vm_execution_cache_misses_limit;
let execution_args =
TxExecutionArgs::for_gas_estimate(vm_execution_cache_misses_limit, &tx, base_fee);
@@ -643,6 +647,7 @@ impl TxSender {
fn shared_args_for_gas_estimate(&self, fee_input: BatchFeeInput) -> TxSharedArgs {
let config = &self.0.sender_config;
+
TxSharedArgs {
operator_account: AccountTreeId::new(config.fee_account_addr),
fee_input,
@@ -669,13 +674,12 @@ impl TxSender {
.await
.unwrap();
let block_args = BlockArgs::pending(&mut connection).await;
- // If protocol version is not present, we'll use the pre-boojum one
- let protocol_version = connection
- .blocks_dal()
- .get_miniblock_protocol_version_id(block_args.resolved_block_number())
+ let protocol_version = block_args
+ .resolve_block_info(&mut connection)
.await
.unwrap()
- .unwrap_or(ProtocolVersionId::last_pre_boojum());
+ .protocol_version;
+
drop(connection);
let fee_input = {
@@ -740,7 +744,8 @@ impl TxSender {
l2_common_data.signature = PackedEthSignature::default().serialize_packed().into();
}
- l2_common_data.fee.gas_per_pubdata_limit = MAX_GAS_PER_PUBDATA_BYTE.into();
+ l2_common_data.fee.gas_per_pubdata_limit =
+ U256::from(DEFAULT_L2_TX_GAS_PER_PUBDATA_BYTE);
}
// Acquire the vm token for the whole duration of the binary search.
@@ -796,8 +801,8 @@ impl TxSender {
.estimate_gas_step(
vm_permit.clone(),
tx.clone(),
- gas_per_pubdata_byte,
try_gas_limit,
+ gas_per_pubdata_byte as u32,
fee_input,
block_args,
base_fee,
@@ -835,8 +840,8 @@ impl TxSender {
.estimate_gas_step(
vm_permit,
tx.clone(),
- gas_per_pubdata_byte,
suggested_gas_limit,
+ gas_per_pubdata_byte as u32,
fee_input,
block_args,
base_fee,
@@ -847,13 +852,29 @@ impl TxSender {
result.into_api_call_result()?;
self.ensure_tx_executable(tx.clone(), &tx_metrics, false)?;
- let overhead = derive_overhead(
- suggested_gas_limit,
- gas_per_pubdata_byte as u32,
- tx.encoding_len(),
- tx.tx_format() as u8,
- protocol_version.into(),
- );
+ // Now, we need to calculate the final overhead for the transaction. We need to take into account the fact
+ // that the migration of 1.4.1 may be still going on.
+ let overhead = if self
+ .0
+ .sender_config
+ .l1_to_l2_transactions_compatibility_mode
+ {
+ derive_pessimistic_overhead(
+ suggested_gas_limit,
+ gas_per_pubdata_byte as u32,
+ tx.encoding_len(),
+ tx.tx_format() as u8,
+ protocol_version.into(),
+ )
+ } else {
+ derive_overhead(
+ suggested_gas_limit,
+ gas_per_pubdata_byte as u32,
+ tx.encoding_len(),
+ tx.tx_format() as u8,
+ protocol_version.into(),
+ )
+ };
let full_gas_limit =
match tx_body_gas_limit.overflowing_add(gas_for_bytecodes_pubdata + overhead) {
@@ -906,13 +927,11 @@ impl TxSender {
.await
.unwrap();
let block_args = BlockArgs::pending(&mut connection).await;
- // If protocol version is not present, we'll use the pre-boojum one
- let protocol_version = connection
- .blocks_dal()
- .get_miniblock_protocol_version_id(block_args.resolved_block_number())
+ let protocol_version = block_args
+ .resolve_block_info(&mut connection)
.await
.unwrap()
- .unwrap_or(ProtocolVersionId::last_pre_boojum());
+ .protocol_version;
drop(connection);
let (base_fee, _) = derive_base_fee_and_gas_per_pubdata(
@@ -961,3 +980,40 @@ impl TxSender {
Ok(())
}
}
+
+/// During switch to the 1.4.1 protocol version, there will be a moment of discrepancy, when while
+/// the L2 has already upgraded to 1.4.1 (and thus suggests smaller overhead), the L1 is still on the previous version.
+///
+/// This might lead to situations when L1->L2 transactions estimated with the new versions would work on the state keeper side,
+/// but they won't even make it there, but the protection mechanisms for L1->L2 transactions will reject them on L1.
+/// TODO(X): remove this function after the upgrade is complete
+fn derive_pessimistic_overhead(
+ gas_limit: u32,
+ gas_price_per_pubdata: u32,
+ encoded_len: usize,
+ tx_type: u8,
+ vm_version: VmVersion,
+) -> u32 {
+ let current_overhead = derive_overhead(
+ gas_limit,
+ gas_price_per_pubdata,
+ encoded_len,
+ tx_type,
+ vm_version,
+ );
+
+ if is_l1_tx_type(tx_type) {
+ // We are in the L1->L2 transaction, so we need to account for the fact that the L1 is still on the previous version.
+ // We assume that the overhead will be the same as for the previous version.
+ let previous_overhead = derive_overhead(
+ gas_limit,
+ gas_price_per_pubdata,
+ encoded_len,
+ tx_type,
+ VmVersion::VmBoojumIntegration,
+ );
+ current_overhead.max(previous_overhead)
+ } else {
+ current_overhead
+ }
+}
diff --git a/core/lib/zksync_core/src/api_server/web3/namespaces/debug.rs b/core/lib/zksync_core/src/api_server/web3/namespaces/debug.rs
index d30e3652e293..693ebb8f3582 100644
--- a/core/lib/zksync_core/src/api_server/web3/namespaces/debug.rs
+++ b/core/lib/zksync_core/src/api_server/web3/namespaces/debug.rs
@@ -2,13 +2,14 @@ use std::sync::Arc;
use multivm::{interface::ExecutionResult, vm_latest::constants::BLOCK_GAS_LIMIT};
use once_cell::sync::OnceCell;
+use zksync_system_constants::MAX_ENCODED_TX_SIZE;
use zksync_types::{
api::{BlockId, BlockNumber, DebugCall, ResultDebugCall, TracerConfig},
fee_model::BatchFeeInput,
l2::L2Tx,
transaction_request::CallRequest,
vm_trace::Call,
- AccountTreeId, H256, USED_BOOTLOADER_MEMORY_BYTES,
+ AccountTreeId, H256,
};
use zksync_web3_decl::error::Web3Error;
@@ -20,6 +21,7 @@ use crate::api_server::{
#[derive(Debug, Clone)]
pub struct DebugNamespace {
+ batch_fee_input: BatchFeeInput,
state: RpcState,
api_contracts: ApiContracts,
}
@@ -28,6 +30,15 @@ impl DebugNamespace {
pub async fn new(state: RpcState) -> Self {
let api_contracts = ApiContracts::load_from_disk();
Self {
+ // For now, the same scaling is used for both the L1 gas price and the pubdata price
+ batch_fee_input: state
+ .tx_sender
+ .0
+ .batch_fee_input_provider
+ .get_batch_fee_input_scaled(
+ state.api_config.estimate_gas_scale_factor,
+ state.api_config.estimate_gas_scale_factor,
+ ),
state,
api_contracts,
}
@@ -134,7 +145,7 @@ impl DebugNamespace {
.await?;
drop(connection);
- let tx = L2Tx::from_request(request.into(), USED_BOOTLOADER_MEMORY_BYTES)?;
+ let tx = L2Tx::from_request(request.into(), MAX_ENCODED_TX_SIZE)?;
let shared_args = self.shared_args();
let vm_permit = self
@@ -204,7 +215,7 @@ impl DebugNamespace {
let sender_config = self.sender_config();
TxSharedArgs {
operator_account: AccountTreeId::default(),
- fee_input: BatchFeeInput::l1_pegged(100_000, sender_config.fair_l2_gas_price),
+ fee_input: self.batch_fee_input,
base_system_contracts: self.api_contracts.eth_call.clone(),
caches: self.state.tx_sender.storage_caches().clone(),
validation_computational_gas_limit: BLOCK_GAS_LIMIT,
diff --git a/core/lib/zksync_core/src/api_server/web3/namespaces/eth.rs b/core/lib/zksync_core/src/api_server/web3/namespaces/eth.rs
index 07c61ed5ac1a..da6df61e1e89 100644
--- a/core/lib/zksync_core/src/api_server/web3/namespaces/eth.rs
+++ b/core/lib/zksync_core/src/api_server/web3/namespaces/eth.rs
@@ -1,3 +1,4 @@
+use zksync_system_constants::DEFAULT_L2_TX_GAS_PER_PUBDATA_BYTE;
use zksync_types::{
api::{
BlockId, BlockNumber, GetLogsFilter, Transaction, TransactionId, TransactionReceipt,
@@ -8,8 +9,7 @@ use zksync_types::{
utils::decompose_full_nonce,
web3,
web3::types::{FeeHistory, SyncInfo, SyncState},
- AccountTreeId, Bytes, MiniblockNumber, StorageKey, H256, L2_ETH_TOKEN_ADDRESS,
- MAX_GAS_PER_PUBDATA_BYTE, U256,
+ AccountTreeId, Bytes, MiniblockNumber, StorageKey, H256, L2_ETH_TOKEN_ADDRESS, U256,
};
use zksync_utils::u256_to_h256;
use zksync_web3_decl::{
@@ -79,6 +79,7 @@ impl EthNamespace {
.state
.resolve_block_args(&mut connection, block_id, METHOD_NAME)
.await?;
+
drop(connection);
let tx = L2Tx::from_request(request.into(), self.state.api_config.max_tx_size)?;
@@ -111,7 +112,7 @@ impl EthNamespace {
if let Some(ref mut eip712_meta) = request_with_gas_per_pubdata_overridden.eip712_meta {
if eip712_meta.gas_per_pubdata == U256::zero() {
- eip712_meta.gas_per_pubdata = MAX_GAS_PER_PUBDATA_BYTE.into();
+ eip712_meta.gas_per_pubdata = DEFAULT_L2_TX_GAS_PER_PUBDATA_BYTE.into();
}
}
diff --git a/core/lib/zksync_core/src/api_server/web3/namespaces/zks.rs b/core/lib/zksync_core/src/api_server/web3/namespaces/zks.rs
index b4192a691294..5b5aad6e1d43 100644
--- a/core/lib/zksync_core/src/api_server/web3/namespaces/zks.rs
+++ b/core/lib/zksync_core/src/api_server/web3/namespaces/zks.rs
@@ -3,6 +3,7 @@ use std::{collections::HashMap, convert::TryInto};
use bigdecimal::{BigDecimal, Zero};
use zksync_dal::StorageProcessor;
use zksync_mini_merkle_tree::MiniMerkleTree;
+use zksync_system_constants::DEFAULT_L2_TX_GAS_PER_PUBDATA_BYTE;
use zksync_types::{
api::{
BlockDetails, BridgeAddresses, GetLogsFilter, L1BatchDetails, L2ToL1LogProof, Proof,
@@ -16,8 +17,7 @@ use zksync_types::{
tokens::ETHEREUM_ADDRESS,
transaction_request::CallRequest,
AccountTreeId, L1BatchNumber, MiniblockNumber, StorageKey, Transaction, L1_MESSENGER_ADDRESS,
- L2_ETH_TOKEN_ADDRESS, MAX_GAS_PER_PUBDATA_BYTE, REQUIRED_L1_TO_L2_GAS_PER_PUBDATA_BYTE, U256,
- U64,
+ L2_ETH_TOKEN_ADDRESS, REQUIRED_L1_TO_L2_GAS_PER_PUBDATA_BYTE, U256, U64,
};
use zksync_utils::{address_to_h256, ratio_to_big_decimal_normalized};
use zksync_web3_decl::{
@@ -63,7 +63,7 @@ impl ZksNamespace {
.await?;
if let Some(ref mut eip712_meta) = request_with_gas_per_pubdata_overridden.eip712_meta {
- eip712_meta.gas_per_pubdata = MAX_GAS_PER_PUBDATA_BYTE.into();
+ eip712_meta.gas_per_pubdata = U256::from(DEFAULT_L2_TX_GAS_PER_PUBDATA_BYTE);
}
let mut tx = L2Tx::from_request(
@@ -74,7 +74,7 @@ impl ZksNamespace {
// When we're estimating fee, we are trying to deduce values related to fee, so we should
// not consider provided ones.
tx.common_data.fee.max_priority_fee_per_gas = 0u64.into();
- tx.common_data.fee.gas_per_pubdata_limit = MAX_GAS_PER_PUBDATA_BYTE.into();
+ tx.common_data.fee.gas_per_pubdata_limit = U256::from(DEFAULT_L2_TX_GAS_PER_PUBDATA_BYTE);
let fee = self.estimate_fee(tx.into()).await?;
method_latency.observe();
diff --git a/core/lib/zksync_core/src/api_server/web3/tests/vm.rs b/core/lib/zksync_core/src/api_server/web3/tests/vm.rs
index bc152a449ff9..ba5ca2ead005 100644
--- a/core/lib/zksync_core/src/api_server/web3/tests/vm.rs
+++ b/core/lib/zksync_core/src/api_server/web3/tests/vm.rs
@@ -154,7 +154,7 @@ impl SendRawTransactionTest {
to: Some(Address::repeat_byte(2)),
value: 123_456.into(),
gas: (get_intrinsic_constants().l2_tx_intrinsic_gas * 2).into(),
- gas_price: StateKeeperConfig::for_tests().fair_l2_gas_price.into(),
+ gas_price: StateKeeperConfig::for_tests().minimal_l2_gas_price.into(),
input: vec![1, 2, 3, 4].into(),
..api::TransactionRequest::default()
};
diff --git a/core/lib/zksync_core/src/consensus/storage/mod.rs b/core/lib/zksync_core/src/consensus/storage/mod.rs
index 5631574fa55f..516ba7eb19c0 100644
--- a/core/lib/zksync_core/src/consensus/storage/mod.rs
+++ b/core/lib/zksync_core/src/consensus/storage/mod.rs
@@ -178,6 +178,7 @@ impl Cursor {
reference_hash: Some(payload.hash),
l1_gas_price: payload.l1_gas_price,
l2_fair_gas_price: payload.l2_fair_gas_price,
+ fair_pubdata_price: payload.fair_pubdata_price,
virtual_blocks: payload.virtual_blocks,
operator_address: payload.operator_address,
transactions: payload.transactions,
diff --git a/core/lib/zksync_core/src/consensus/testonly.rs b/core/lib/zksync_core/src/consensus/testonly.rs
index 8de75757f335..ebbd43ee920a 100644
--- a/core/lib/zksync_core/src/consensus/testonly.rs
+++ b/core/lib/zksync_core/src/consensus/testonly.rs
@@ -74,6 +74,7 @@ impl MockMainNodeClient {
timestamp: number.into(),
l1_gas_price: 2,
l2_fair_gas_price: 3,
+ fair_pubdata_price: Some(24),
base_system_contracts_hashes: BaseSystemContractsHashes::default(),
operator_address: Address::repeat_byte(2),
transactions: Some(transactions),
@@ -234,6 +235,7 @@ impl StateKeeper {
timestamp: self.last_timestamp,
l1_gas_price: 2,
l2_fair_gas_price: 3,
+ fair_pubdata_price: Some(24),
operator_address: self.operator_address,
protocol_version: ProtocolVersionId::latest(),
first_miniblock_info: (self.last_block, 1),
diff --git a/core/lib/zksync_core/src/genesis.rs b/core/lib/zksync_core/src/genesis.rs
index efc872cd995a..54989bab93ea 100644
--- a/core/lib/zksync_core/src/genesis.rs
+++ b/core/lib/zksync_core/src/genesis.rs
@@ -3,6 +3,7 @@
//! setups the required databases, and outputs the data required to initialize a smart contract.
use anyhow::Context as _;
+use multivm::utils::get_max_gas_per_pubdata_byte;
use zksync_contracts::BaseSystemContracts;
use zksync_dal::StorageProcessor;
use zksync_merkle_tree::domain::ZkSyncTree;
@@ -108,7 +109,7 @@ pub async fn ensure_genesis_state(
vec![],
H256::zero(),
H256::zero(),
- protocol_version.is_pre_boojum(),
+ *protocol_version,
);
save_genesis_l1_batch_metadata(
@@ -295,6 +296,7 @@ pub(crate) async fn create_genesis_l1_batch(
l1_tx_count: 0,
l2_tx_count: 0,
base_fee_per_gas: 0,
+ gas_per_pubdata_limit: get_max_gas_per_pubdata_byte(protocol_version.into()),
batch_fee_input: BatchFeeInput::l1_pegged(0, 0),
base_system_contracts_hashes: base_system_contracts.hashes(),
protocol_version: Some(protocol_version),
diff --git a/core/lib/zksync_core/src/l1_gas_price/mod.rs b/core/lib/zksync_core/src/l1_gas_price/mod.rs
index fac91d02559e..3ed508328c4d 100644
--- a/core/lib/zksync_core/src/l1_gas_price/mod.rs
+++ b/core/lib/zksync_core/src/l1_gas_price/mod.rs
@@ -18,6 +18,7 @@ pub trait L1GasPriceProvider: fmt::Debug + 'static + Send + Sync {
fn estimate_effective_gas_price(&self) -> u64;
/// Returns a best guess of a realistic value for the L1 pubdata price.
+ /// Note that starting with EIP4844 it will become independent from the gas price.
/// Return value is in wei.
fn estimate_effective_pubdata_price(&self) -> u64;
}
diff --git a/core/lib/zksync_core/src/lib.rs b/core/lib/zksync_core/src/lib.rs
index 2c2e93705f75..a246b43216ae 100644
--- a/core/lib/zksync_core/src/lib.rs
+++ b/core/lib/zksync_core/src/lib.rs
@@ -35,7 +35,7 @@ use zksync_object_store::{ObjectStore, ObjectStoreFactory};
use zksync_queued_job_processor::JobProcessor;
use zksync_state::PostgresStorageCaches;
use zksync_types::{
- fee_model::FeeModelConfigV1,
+ fee_model::FeeModelConfig,
protocol_version::{L1VerifierConfig, VerifierParams},
system_contracts::get_system_smart_contracts,
web3::contract::tokens::Detokenize,
@@ -697,9 +697,7 @@ async fn add_state_keeper_to_task_futures(
+async fn run_http_api(
postgres_config: &PostgresConfig,
tx_sender_config: &TxSenderConfig,
state_keeper_config: &StateKeeperConfig,
diff --git a/core/lib/zksync_core/src/metadata_calculator/mod.rs b/core/lib/zksync_core/src/metadata_calculator/mod.rs
index c510eb68fb1d..e5a93d7d3de2 100644
--- a/core/lib/zksync_core/src/metadata_calculator/mod.rs
+++ b/core/lib/zksync_core/src/metadata_calculator/mod.rs
@@ -19,7 +19,7 @@ use zksync_object_store::ObjectStore;
use zksync_types::{
block::L1BatchHeader,
commitment::{L1BatchCommitment, L1BatchMetadata},
- H256,
+ ProtocolVersionId, H256,
};
pub(crate) use self::helpers::{AsyncTreeReader, L1BatchWithLogs, MerkleTreeInfo};
@@ -191,10 +191,12 @@ impl MetadataCalculator {
events_queue_commitment: Option,
bootloader_initial_content_commitment: Option,
) -> L1BatchMetadata {
- let is_pre_boojum = header
+ // The commitment generation pre-boojum is the same for all the version, so in case the version is not present, we just supply the
+ // last pre-boojum version.
+ // TODO(PLA-731): make sure that protocol version is not an Option
+ let protocol_version = header
.protocol_version
- .map(|v| v.is_pre_boojum())
- .unwrap_or(true);
+ .unwrap_or(ProtocolVersionId::last_potentially_undefined());
let merkle_root_hash = tree_metadata.root_hash;
@@ -210,12 +212,12 @@ impl MetadataCalculator {
tree_metadata.state_diffs,
bootloader_initial_content_commitment.unwrap_or_default(),
events_queue_commitment.unwrap_or_default(),
- is_pre_boojum,
+ protocol_version,
);
let commitment_hash = commitment.hash();
tracing::trace!("L1 batch commitment: {commitment:?}");
- let l2_l1_messages_compressed = if is_pre_boojum {
+ let l2_l1_messages_compressed = if protocol_version.is_pre_boojum() {
commitment.l2_l1_logs_compressed().to_vec()
} else {
commitment.system_logs_compressed().to_vec()
diff --git a/core/lib/zksync_core/src/metadata_calculator/updater.rs b/core/lib/zksync_core/src/metadata_calculator/updater.rs
index f3540f25fe94..917ab68fbff7 100644
--- a/core/lib/zksync_core/src/metadata_calculator/updater.rs
+++ b/core/lib/zksync_core/src/metadata_calculator/updater.rs
@@ -11,7 +11,9 @@ use zksync_dal::{ConnectionPool, StorageProcessor};
use zksync_health_check::HealthUpdater;
use zksync_merkle_tree::domain::TreeMetadata;
use zksync_object_store::ObjectStore;
-use zksync_types::{block::L1BatchHeader, writes::InitialStorageWrite, L1BatchNumber, H256, U256};
+use zksync_types::{
+ block::L1BatchHeader, writes::InitialStorageWrite, L1BatchNumber, ProtocolVersionId, H256, U256,
+};
use super::{
helpers::{AsyncTree, Delayer, L1BatchWithLogs},
@@ -204,14 +206,14 @@ impl TreeUpdater {
.await
.unwrap();
- let is_pre_boojum = header
+ // TODO(PLA-731): ensure that the protocol version is always available.
+ let protocol_version = header
.protocol_version
- .map(|v| v.is_pre_boojum())
- .unwrap_or(true);
- let events_queue_commitment = (!is_pre_boojum).then(|| {
+ .unwrap_or(ProtocolVersionId::last_potentially_undefined());
+ let events_queue_commitment = (!protocol_version.is_pre_boojum()).then(|| {
let events_queue =
events_queue.expect("Events queue is required for post-boojum batch");
- events_queue_commitment(&events_queue, is_pre_boojum)
+ events_queue_commitment(&events_queue, protocol_version)
.expect("Events queue commitment is required for post-boojum batch")
});
events_queue_commitment_latency.observe();
@@ -225,7 +227,7 @@ impl TreeUpdater {
.unwrap()
.unwrap();
let bootloader_initial_content_commitment =
- bootloader_initial_content_commitment(&initial_bootloader_contents, is_pre_boojum);
+ bootloader_initial_content_commitment(&initial_bootloader_contents, protocol_version);
bootloader_commitment_latency.observe();
(
diff --git a/core/lib/zksync_core/src/state_keeper/batch_executor/tests/tester.rs b/core/lib/zksync_core/src/state_keeper/batch_executor/tests/tester.rs
index 6e7e5681b330..413a12bdf2ed 100644
--- a/core/lib/zksync_core/src/state_keeper/batch_executor/tests/tester.rs
+++ b/core/lib/zksync_core/src/state_keeper/batch_executor/tests/tester.rs
@@ -27,7 +27,7 @@ use crate::{
},
};
-const DEFAULT_GAS_PER_PUBDATA: u32 = 100;
+const DEFAULT_GAS_PER_PUBDATA: u32 = 10000;
const CHAIN_ID: u32 = 270;
/// Representation of configuration parameters used by the state keeper.
diff --git a/core/lib/zksync_core/src/state_keeper/io/seal_logic.rs b/core/lib/zksync_core/src/state_keeper/io/seal_logic.rs
index 6720ab3fa3ec..e6eaf6354707 100644
--- a/core/lib/zksync_core/src/state_keeper/io/seal_logic.rs
+++ b/core/lib/zksync_core/src/state_keeper/io/seal_logic.rs
@@ -9,14 +9,13 @@ use std::{
use itertools::Itertools;
use multivm::{
interface::{FinishedL1Batch, L1BatchEnv},
- utils::get_batch_base_fee,
+ utils::{get_batch_base_fee, get_max_gas_per_pubdata_byte},
};
use zksync_dal::StorageProcessor;
use zksync_system_constants::ACCOUNT_CODE_STORAGE_ADDRESS;
use zksync_types::{
block::{unpack_block_info, L1BatchHeader, MiniblockHeader},
event::{extract_added_tokens, extract_long_l2_to_l1_messages},
- fee_model::BatchFeeInput,
l1::L1Tx,
l2::L2Tx,
l2_to_l1_log::{SystemL2ToL1Log, UserL2ToL1Log},
@@ -28,8 +27,8 @@ use zksync_types::{
},
zkevm_test_harness::witness::sort_storage_access::sort_storage_access_queries,
AccountTreeId, Address, ExecuteTransactionCommon, L1BatchNumber, L1BlockNumber, LogQuery,
- MiniblockNumber, StorageKey, StorageLog, StorageLogQuery, StorageValue, Transaction, VmEvent,
- CURRENT_VIRTUAL_BLOCK_INFO_POSITION, H256, SYSTEM_CONTEXT_ADDRESS,
+ MiniblockNumber, ProtocolVersionId, StorageKey, StorageLog, StorageLogQuery, StorageValue,
+ Transaction, VmEvent, CURRENT_VIRTUAL_BLOCK_INFO_POSITION, H256, SYSTEM_CONTEXT_ADDRESS,
};
// TODO (SMA-1206): use seconds instead of milliseconds.
use zksync_utils::{h256_to_u256, time::millis_since_epoch, u256_to_h256};
@@ -346,9 +345,14 @@ impl MiniblockSealCommand {
l1_tx_count: l1_tx_count as u16,
l2_tx_count: l2_tx_count as u16,
base_fee_per_gas: self.base_fee_per_gas,
- batch_fee_input: BatchFeeInput::l1_pegged(self.l1_gas_price, self.fair_l2_gas_price),
+ batch_fee_input: self.fee_input,
base_system_contracts_hashes: self.base_system_contracts_hashes,
protocol_version: self.protocol_version,
+ gas_per_pubdata_limit: get_max_gas_per_pubdata_byte(
+ self.protocol_version
+ .unwrap_or(ProtocolVersionId::last_potentially_undefined())
+ .into(),
+ ),
virtual_blocks: self.miniblock.virtual_blocks,
};
diff --git a/core/lib/zksync_core/src/state_keeper/io/tests/mod.rs b/core/lib/zksync_core/src/state_keeper/io/tests/mod.rs
index af7e39122f8a..b210307f2b95 100644
--- a/core/lib/zksync_core/src/state_keeper/io/tests/mod.rs
+++ b/core/lib/zksync_core/src/state_keeper/io/tests/mod.rs
@@ -6,8 +6,11 @@ use zksync_contracts::BaseSystemContractsHashes;
use zksync_dal::ConnectionPool;
use zksync_mempool::L2TxFilter;
use zksync_types::{
- block::BlockGasCount, fee_model::BatchFeeInput, tx::ExecutionMetrics, AccountTreeId, Address,
- L1BatchNumber, MiniblockNumber, ProtocolVersionId, StorageKey, VmEvent, H256, U256,
+ block::BlockGasCount,
+ fee_model::{BatchFeeInput, PubdataIndependentBatchFeeModelInput},
+ tx::ExecutionMetrics,
+ AccountTreeId, Address, L1BatchNumber, MiniblockNumber, ProtocolVersionId, StorageKey, VmEvent,
+ H256, U256,
};
use zksync_utils::time::seconds_since_epoch;
@@ -60,7 +63,11 @@ async fn test_filter_with_pending_batch() {
// Inserting a pending miniblock that isn't included in a sealed batch means there is a pending batch.
// The gas values are randomly chosen but so affect filter values calculation.
- let fee_input = BatchFeeInput::l1_pegged(100, 1000);
+ let fee_input = BatchFeeInput::PubdataIndependent(PubdataIndependentBatchFeeModelInput {
+ l1_gas_price: 100,
+ fair_l2_gas_price: 1000,
+ fair_pubdata_price: 500,
+ });
tester
.insert_miniblock(&connection_pool, 2, 10, fee_input)
@@ -233,8 +240,11 @@ async fn processing_storage_logs_when_sealing_miniblock() {
miniblock_number: MiniblockNumber(3),
miniblock,
first_tx_index: 0,
- l1_gas_price: 100,
- fair_l2_gas_price: 100,
+ fee_input: BatchFeeInput::PubdataIndependent(PubdataIndependentBatchFeeModelInput {
+ l1_gas_price: 100,
+ fair_l2_gas_price: 100,
+ fair_pubdata_price: 100,
+ }),
base_fee_per_gas: 10,
base_system_contracts_hashes: BaseSystemContractsHashes::default(),
protocol_version: Some(ProtocolVersionId::latest()),
@@ -309,8 +319,11 @@ async fn processing_events_when_sealing_miniblock() {
miniblock_number,
miniblock,
first_tx_index: 0,
- l1_gas_price: 100,
- fair_l2_gas_price: 100,
+ fee_input: BatchFeeInput::PubdataIndependent(PubdataIndependentBatchFeeModelInput {
+ l1_gas_price: 100,
+ fair_l2_gas_price: 100,
+ fair_pubdata_price: 100,
+ }),
base_fee_per_gas: 10,
base_system_contracts_hashes: BaseSystemContractsHashes::default(),
protocol_version: Some(ProtocolVersionId::latest()),
diff --git a/core/lib/zksync_core/src/state_keeper/io/tests/tester.rs b/core/lib/zksync_core/src/state_keeper/io/tests/tester.rs
index 626924a9c5e5..27261f4e36ce 100644
--- a/core/lib/zksync_core/src/state_keeper/io/tests/tester.rs
+++ b/core/lib/zksync_core/src/state_keeper/io/tests/tester.rs
@@ -64,13 +64,13 @@ impl Tester {
MainNodeFeeInputProvider::new(
gas_adjuster,
FeeModelConfig::V1(FeeModelConfigV1 {
- minimal_l2_gas_price: self.fair_l2_gas_price(),
+ minimal_l2_gas_price: self.minimal_l2_gas_price(),
}),
)
}
// Constant value to be used both in tests and inside of the IO.
- pub(super) fn fair_l2_gas_price(&self) -> u64 {
+ pub(super) fn minimal_l2_gas_price(&self) -> u64 {
100
}
@@ -83,7 +83,7 @@ impl Tester {
let batch_fee_input_provider = MainNodeFeeInputProvider::new(
gas_adjuster,
FeeModelConfig::V1(FeeModelConfigV1 {
- minimal_l2_gas_price: self.fair_l2_gas_price(),
+ minimal_l2_gas_price: self.minimal_l2_gas_price(),
}),
);
@@ -93,7 +93,7 @@ impl Tester {
tokio::spawn(miniblock_sealer.run());
let config = StateKeeperConfig {
- fair_l2_gas_price: self.fair_l2_gas_price(),
+ minimal_l2_gas_price: self.minimal_l2_gas_price(),
virtual_blocks_interval: 1,
virtual_blocks_per_miniblock: 1,
..StateKeeperConfig::default()
diff --git a/core/lib/zksync_core/src/state_keeper/mempool_actor.rs b/core/lib/zksync_core/src/state_keeper/mempool_actor.rs
index f452c87a2df9..673f0d5ea7aa 100644
--- a/core/lib/zksync_core/src/state_keeper/mempool_actor.rs
+++ b/core/lib/zksync_core/src/state_keeper/mempool_actor.rs
@@ -5,7 +5,7 @@ use tokio::sync::watch;
use zksync_config::configs::chain::MempoolConfig;
use zksync_dal::ConnectionPool;
use zksync_mempool::L2TxFilter;
-use zksync_types::{ProtocolVersionId, VmVersion};
+use zksync_types::VmVersion;
use super::{metrics::KEEPER_METRICS, types::MempoolGuard};
use crate::{api_server::execution_sandbox::BlockArgs, fee_model::BatchFeeModelInputProvider};
@@ -78,13 +78,11 @@ impl MempoolFetcher {
let mempool_info = self.mempool.get_mempool_info();
let latest_miniblock = BlockArgs::pending(&mut storage).await;
-
- let protocol_version = storage
- .blocks_dal()
- .get_miniblock_protocol_version_id(latest_miniblock.resolved_block_number())
+ let protocol_version = latest_miniblock
+ .resolve_block_info(&mut storage)
.await
.unwrap()
- .unwrap_or_else(ProtocolVersionId::latest);
+ .protocol_version;
let l2_tx_filter = l2_tx_filter(
self.batch_fee_input_provider.as_ref(),
diff --git a/core/lib/zksync_core/src/state_keeper/tests/mod.rs b/core/lib/zksync_core/src/state_keeper/tests/mod.rs
index 06e3321ce483..6f71dc35bd90 100644
--- a/core/lib/zksync_core/src/state_keeper/tests/mod.rs
+++ b/core/lib/zksync_core/src/state_keeper/tests/mod.rs
@@ -20,7 +20,7 @@ use zksync_system_constants::ZKPORTER_IS_AVAILABLE;
use zksync_types::{
aggregated_operations::AggregatedActionType,
block::{BlockGasCount, MiniblockExecutionData, MiniblockHasher},
- fee_model::BatchFeeInput,
+ fee_model::{BatchFeeInput, PubdataIndependentBatchFeeModelInput},
tx::tx_execution_info::ExecutionMetrics,
Address, L1BatchNumber, L2ChainId, LogQuery, MiniblockNumber, ProtocolVersionId,
StorageLogQuery, StorageLogQueryType, Timestamp, Transaction, H256, U256,
@@ -71,7 +71,6 @@ pub(super) fn default_l1_batch_env(
previous_batch_hash: None,
number: L1BatchNumber(number),
timestamp,
- fee_input: BatchFeeInput::l1_pegged(1, 1),
fee_account,
enforced_base_fee: None,
first_l2_block: L2BlockEnv {
@@ -80,6 +79,11 @@ pub(super) fn default_l1_batch_env(
prev_block_hash: MiniblockHasher::legacy_hash(MiniblockNumber(number - 1)),
max_virtual_blocks_to_create: 1,
},
+ fee_input: BatchFeeInput::PubdataIndependent(PubdataIndependentBatchFeeModelInput {
+ fair_l2_gas_price: 1,
+ fair_pubdata_price: 1,
+ l1_gas_price: 1,
+ }),
}
}
diff --git a/core/lib/zksync_core/src/state_keeper/tests/tester.rs b/core/lib/zksync_core/src/state_keeper/tests/tester.rs
index 340a650eb5eb..9ac886270d31 100644
--- a/core/lib/zksync_core/src/state_keeper/tests/tester.rs
+++ b/core/lib/zksync_core/src/state_keeper/tests/tester.rs
@@ -543,8 +543,7 @@ pub(crate) struct TestIO {
stop_sender: watch::Sender,
batch_number: L1BatchNumber,
timestamp: u64,
- l1_gas_price: u64,
- fair_l2_gas_price: u64,
+ fee_input: BatchFeeInput,
miniblock_number: MiniblockNumber,
fee_account: Address,
scenario: TestScenario,
@@ -561,8 +560,7 @@ impl TestIO {
stop_sender,
batch_number: L1BatchNumber(1),
timestamp: 1,
- l1_gas_price: 1,
- fair_l2_gas_price: 1,
+ fee_input: BatchFeeInput::default(),
miniblock_number: MiniblockNumber(1),
fee_account: FEE_ACCOUNT,
scenario,
@@ -651,7 +649,7 @@ impl StateKeeperIO for TestIO {
previous_batch_hash: Some(H256::zero()),
number: self.batch_number,
timestamp: self.timestamp,
- fee_input: BatchFeeInput::l1_pegged(self.l1_gas_price, self.fair_l2_gas_price),
+ fee_input: self.fee_input,
fee_account: self.fee_account,
enforced_base_fee: None,
first_l2_block: first_miniblock_info,
diff --git a/core/lib/zksync_core/src/state_keeper/updates/mod.rs b/core/lib/zksync_core/src/state_keeper/updates/mod.rs
index c17eebab114d..7718882af283 100644
--- a/core/lib/zksync_core/src/state_keeper/updates/mod.rs
+++ b/core/lib/zksync_core/src/state_keeper/updates/mod.rs
@@ -4,7 +4,8 @@ use multivm::{
};
use zksync_contracts::BaseSystemContractsHashes;
use zksync_types::{
- block::BlockGasCount, storage_writes_deduplicator::StorageWritesDeduplicator,
+ block::BlockGasCount, fee_model::BatchFeeInput,
+ storage_writes_deduplicator::StorageWritesDeduplicator,
tx::tx_execution_info::ExecutionMetrics, vm_trace::Call, Address, L1BatchNumber,
MiniblockNumber, ProtocolVersionId, Transaction,
};
@@ -25,8 +26,7 @@ pub mod miniblock_updates;
#[derive(Debug, Clone, PartialEq)]
pub struct UpdatesManager {
batch_timestamp: u64,
- l1_gas_price: u64,
- fair_l2_gas_price: u64,
+ batch_fee_input: BatchFeeInput,
base_fee_per_gas: u64,
base_system_contract_hashes: BaseSystemContractsHashes,
protocol_version: ProtocolVersionId,
@@ -43,8 +43,7 @@ impl UpdatesManager {
) -> Self {
Self {
batch_timestamp: l1_batch_env.timestamp,
- l1_gas_price: l1_batch_env.fee_input.l1_gas_price(),
- fair_l2_gas_price: l1_batch_env.fee_input.fair_l2_gas_price(),
+ batch_fee_input: l1_batch_env.fee_input,
base_fee_per_gas: get_batch_base_fee(&l1_batch_env, protocol_version.into()),
protocol_version,
base_system_contract_hashes,
@@ -69,11 +68,11 @@ impl UpdatesManager {
}
pub(crate) fn l1_gas_price(&self) -> u64 {
- self.l1_gas_price
+ self.batch_fee_input.l1_gas_price()
}
pub(crate) fn fair_l2_gas_price(&self) -> u64 {
- self.fair_l2_gas_price
+ self.batch_fee_input.fair_l2_gas_price()
}
pub(crate) fn seal_miniblock_command(
@@ -88,8 +87,7 @@ impl UpdatesManager {
miniblock_number,
miniblock: self.miniblock.clone(),
first_tx_index: self.l1_batch.executed_transactions.len(),
- l1_gas_price: self.l1_gas_price,
- fair_l2_gas_price: self.fair_l2_gas_price,
+ fee_input: self.batch_fee_input,
base_fee_per_gas: self.base_fee_per_gas,
base_system_contracts_hashes: self.base_system_contract_hashes,
protocol_version: Some(self.protocol_version),
@@ -174,8 +172,7 @@ pub(crate) struct MiniblockSealCommand {
pub miniblock_number: MiniblockNumber,
pub miniblock: MiniblockUpdates,
pub first_tx_index: usize,
- pub l1_gas_price: u64,
- pub fair_l2_gas_price: u64,
+ pub fee_input: BatchFeeInput,
pub base_fee_per_gas: u64,
pub base_system_contracts_hashes: BaseSystemContractsHashes,
pub protocol_version: Option,
diff --git a/core/lib/zksync_core/src/sync_layer/external_io.rs b/core/lib/zksync_core/src/sync_layer/external_io.rs
index 5c09cba7ad75..c6098c65a437 100644
--- a/core/lib/zksync_core/src/sync_layer/external_io.rs
+++ b/core/lib/zksync_core/src/sync_layer/external_io.rs
@@ -314,6 +314,7 @@ impl StateKeeperIO for ExternalIO {
timestamp,
l1_gas_price,
l2_fair_gas_price,
+ fair_pubdata_price,
operator_address,
protocol_version,
first_miniblock_info: (miniblock_number, virtual_blocks),
@@ -340,7 +341,12 @@ impl StateKeeperIO for ExternalIO {
operator_address,
timestamp,
previous_l1_batch_hash,
- BatchFeeInput::l1_pegged(l1_gas_price, l2_fair_gas_price),
+ BatchFeeInput::for_protocol_version(
+ protocol_version,
+ l2_fair_gas_price,
+ fair_pubdata_price,
+ l1_gas_price,
+ ),
miniblock_number,
previous_miniblock_hash,
base_system_contracts,
diff --git a/core/lib/zksync_core/src/sync_layer/fetcher.rs b/core/lib/zksync_core/src/sync_layer/fetcher.rs
index 1f4f7bea810c..98e0a025ea80 100644
--- a/core/lib/zksync_core/src/sync_layer/fetcher.rs
+++ b/core/lib/zksync_core/src/sync_layer/fetcher.rs
@@ -31,6 +31,7 @@ pub(crate) struct FetchedBlock {
pub reference_hash: Option,
pub l1_gas_price: u64,
pub l2_fair_gas_price: u64,
+ pub fair_pubdata_price: Option,
pub virtual_blocks: u32,
pub operator_address: Address,
pub transactions: Vec,
@@ -59,6 +60,7 @@ impl TryFrom for FetchedBlock {
reference_hash: block.hash,
l1_gas_price: block.l1_gas_price,
l2_fair_gas_price: block.l2_fair_gas_price,
+ fair_pubdata_price: block.fair_pubdata_price,
virtual_blocks: block.virtual_blocks.unwrap_or(0),
operator_address: block.operator_address,
transactions: block
@@ -155,6 +157,7 @@ impl FetcherCursor {
timestamp: block.timestamp,
l1_gas_price: block.l1_gas_price,
l2_fair_gas_price: block.l2_fair_gas_price,
+ fair_pubdata_price: block.fair_pubdata_price,
operator_address: block.operator_address,
protocol_version: block.protocol_version,
// `block.virtual_blocks` can be `None` only for old VM versions where it's not used, so it's fine to provide any number.
diff --git a/core/lib/zksync_core/src/sync_layer/gossip/conversions.rs b/core/lib/zksync_core/src/sync_layer/gossip/conversions.rs
new file mode 100644
index 000000000000..de9f00093fa9
--- /dev/null
+++ b/core/lib/zksync_core/src/sync_layer/gossip/conversions.rs
@@ -0,0 +1,38 @@
+//! Conversion logic between server and consensus types.
+use anyhow::Context as _;
+use zksync_consensus_roles::validator::FinalBlock;
+use zksync_dal::blocks_dal::ConsensusBlockFields;
+use zksync_types::MiniblockNumber;
+
+use crate::{consensus, sync_layer::fetcher::FetchedBlock};
+
+impl FetchedBlock {
+ pub(super) fn from_gossip_block(
+ block: &FinalBlock,
+ last_in_batch: bool,
+ ) -> anyhow::Result {
+ let number = u32::try_from(block.header.number.0)
+ .context("Integer overflow converting block number")?;
+ let payload = consensus::Payload::decode(&block.payload)
+ .context("Failed deserializing block payload")?;
+
+ Ok(Self {
+ number: MiniblockNumber(number),
+ l1_batch_number: payload.l1_batch_number,
+ last_in_batch,
+ protocol_version: payload.protocol_version,
+ timestamp: payload.timestamp,
+ reference_hash: Some(payload.hash),
+ l1_gas_price: payload.l1_gas_price,
+ l2_fair_gas_price: payload.l2_fair_gas_price,
+ fair_pubdata_price: payload.fair_pubdata_price,
+ virtual_blocks: payload.virtual_blocks,
+ operator_address: payload.operator_address,
+ transactions: payload.transactions,
+ consensus: Some(ConsensusBlockFields {
+ parent: block.header.parent,
+ justification: block.justification.clone(),
+ }),
+ })
+ }
+}
diff --git a/core/lib/zksync_core/src/sync_layer/sync_action.rs b/core/lib/zksync_core/src/sync_layer/sync_action.rs
index 52914577373f..abaa1d933591 100644
--- a/core/lib/zksync_core/src/sync_layer/sync_action.rs
+++ b/core/lib/zksync_core/src/sync_layer/sync_action.rs
@@ -129,6 +129,7 @@ pub(crate) enum SyncAction {
timestamp: u64,
l1_gas_price: u64,
l2_fair_gas_price: u64,
+ fair_pubdata_price: Option,
operator_address: Address,
protocol_version: ProtocolVersionId,
// Miniblock number and virtual blocks count.
@@ -170,6 +171,7 @@ mod tests {
timestamp: 1,
l1_gas_price: 1,
l2_fair_gas_price: 1,
+ fair_pubdata_price: Some(1),
operator_address: Default::default(),
protocol_version: ProtocolVersionId::latest(),
first_miniblock_info: (1.into(), 1),
diff --git a/core/lib/zksync_core/src/sync_layer/tests.rs b/core/lib/zksync_core/src/sync_layer/tests.rs
index 848ce625ad70..3e508accefc0 100644
--- a/core/lib/zksync_core/src/sync_layer/tests.rs
+++ b/core/lib/zksync_core/src/sync_layer/tests.rs
@@ -10,6 +10,7 @@ use tokio::{sync::watch, task::JoinHandle};
use zksync_config::configs::chain::NetworkConfig;
use zksync_dal::{ConnectionPool, StorageProcessor};
use zksync_types::{
+ fee_model::{BatchFeeInput, PubdataIndependentBatchFeeModelInput},
Address, L1BatchNumber, L2ChainId, MiniblockNumber, ProtocolVersionId, Transaction, H256,
};
@@ -35,6 +36,7 @@ fn open_l1_batch(number: u32, timestamp: u64, first_miniblock_number: u32) -> Sy
timestamp,
l1_gas_price: 2,
l2_fair_gas_price: 3,
+ fair_pubdata_price: Some(4),
operator_address: OPERATOR_ADDRESS,
protocol_version: ProtocolVersionId::latest(),
first_miniblock_info: (MiniblockNumber(first_miniblock_number), 1),
@@ -165,8 +167,15 @@ async fn external_io_basics() {
.unwrap()
.expect("Miniblock #1 is not persisted");
assert_eq!(miniblock.timestamp, 1);
- assert_eq!(miniblock.batch_fee_input.l1_gas_price(), 2);
- assert_eq!(miniblock.batch_fee_input.fair_l2_gas_price(), 3);
+
+ let expected_fee_input =
+ BatchFeeInput::PubdataIndependent(PubdataIndependentBatchFeeModelInput {
+ fair_l2_gas_price: 3,
+ fair_pubdata_price: 4,
+ l1_gas_price: 2,
+ });
+
+ assert_eq!(miniblock.batch_fee_input, expected_fee_input);
assert_eq!(miniblock.l1_tx_count, 0);
assert_eq!(miniblock.l2_tx_count, 1);
diff --git a/core/lib/zksync_core/src/utils/testonly.rs b/core/lib/zksync_core/src/utils/testonly.rs
index e6f50de91742..e6883f2585e8 100644
--- a/core/lib/zksync_core/src/utils/testonly.rs
+++ b/core/lib/zksync_core/src/utils/testonly.rs
@@ -1,5 +1,6 @@
//! Test utils.
+use multivm::utils::get_max_gas_per_pubdata_byte;
use zksync_contracts::BaseSystemContractsHashes;
use zksync_dal::StorageProcessor;
use zksync_merkle_tree::{domain::ZkSyncTree, TreeInstruction};
@@ -28,6 +29,7 @@ pub(crate) fn create_miniblock(number: u32) -> MiniblockHeader {
l2_tx_count: 0,
base_fee_per_gas: 100,
batch_fee_input: BatchFeeInput::l1_pegged(100, 100),
+ gas_per_pubdata_limit: get_max_gas_per_pubdata_byte(ProtocolVersionId::latest().into()),
base_system_contracts_hashes: BaseSystemContractsHashes::default(),
protocol_version: Some(ProtocolVersionId::latest()),
virtual_blocks: 1,
diff --git a/core/tests/ts-integration/tests/api/web3.test.ts b/core/tests/ts-integration/tests/api/web3.test.ts
index 000b61276be3..f8d0ea284df5 100644
--- a/core/tests/ts-integration/tests/api/web3.test.ts
+++ b/core/tests/ts-integration/tests/api/web3.test.ts
@@ -787,7 +787,7 @@ describe('web3 API compatibility tests', () => {
test('Should check transaction signature', async () => {
const CHAIN_ID = +process.env.CHAIN_ETH_ZKSYNC_NETWORK_ID!;
const value = 1;
- const gasLimit = 300000;
+ const gasLimit = 350000;
const gasPrice = await alice.provider.getGasPrice();
const data = '0x';
const to = alice.address;
diff --git a/core/tests/ts-integration/tests/fees.test.ts b/core/tests/ts-integration/tests/fees.test.ts
index 3ee5b9780a58..6041ec8c2b23 100644
--- a/core/tests/ts-integration/tests/fees.test.ts
+++ b/core/tests/ts-integration/tests/fees.test.ts
@@ -10,12 +10,15 @@
*
*/
import * as utils from 'zk/build/utils';
+import * as fs from 'fs';
import { TestMaster } from '../src/index';
import * as zksync from 'zksync-web3';
import { BigNumber, ethers } from 'ethers';
import { Token } from '../src/types';
+const logs = fs.createWriteStream('fees.log', { flags: 'a' });
+
// Unless `RUN_FEE_TEST` is provided, skip the test suit
const testFees = process.env.RUN_FEE_TEST ? describe : describe.skip;
@@ -73,23 +76,51 @@ testFees('Test fees', () => {
})
).wait();
- let reports = ['ETH transfer:\n\n', 'ERC20 transfer:\n\n'];
+ // Warming up slots for the receiver
+ await (
+ await alice.sendTransaction({
+ to: receiver,
+ value: BigNumber.from(1)
+ })
+ ).wait();
+
+ await (
+ await alice.sendTransaction({
+ data: aliceErc20.interface.encodeFunctionData('transfer', [receiver, BigNumber.from(1)]),
+ to: tokenDetails.l2Address
+ })
+ ).wait();
+
+ let reports = [
+ 'ETH transfer (to new):\n\n',
+ 'ETH transfer (to old):\n\n',
+ 'ERC20 transfer (to new):\n\n',
+ 'ERC20 transfer (to old):\n\n'
+ ];
for (const gasPrice of L1_GAS_PRICES_TO_TEST) {
reports = await appendResults(
alice,
- [feeTestL1Receipt, feeTestL1ReceiptERC20],
+ [feeTestL1Receipt, feeTestL1Receipt, feeTestL1ReceiptERC20, feeTestL1ReceiptERC20],
// We always regenerate new addresses for transaction requests in order to estimate the cost for a new account
[
{
to: ethers.Wallet.createRandom().address,
value: BigNumber.from(1)
},
+ {
+ to: receiver,
+ value: BigNumber.from(1)
+ },
{
data: aliceErc20.interface.encodeFunctionData('transfer', [
ethers.Wallet.createRandom().address,
BigNumber.from(1)
]),
to: tokenDetails.l2Address
+ },
+ {
+ data: aliceErc20.interface.encodeFunctionData('transfer', [receiver, BigNumber.from(1)]),
+ to: tokenDetails.l2Address
}
],
gasPrice,
@@ -147,7 +178,9 @@ async function updateReport(
const estimatedPrice = estimatedL2GasPrice.mul(estimatedL2GasLimit);
const balanceBefore = await sender.getBalance();
- await (await sender.sendTransaction(transactionRequest)).wait();
+ const transaction = await sender.sendTransaction(transactionRequest);
+ console.log(`Sending transaction: ${transaction.hash}`);
+ await transaction.wait();
const balanceAfter = await sender.getBalance();
const balanceDiff = balanceBefore.sub(balanceAfter);
@@ -193,9 +226,10 @@ async function setInternalL1GasPrice(provider: zksync.Provider, newPrice?: strin
let command = 'zk server --components api,tree,eth,state_keeper';
command = `DATABASE_MERKLE_TREE_MODE=full ${command}`;
if (newPrice) {
- command = `ETH_SENDER_GAS_ADJUSTER_INTERNAL_ENFORCED_L1_GAS_PRICE=${newPrice} ${command}`;
+ // We need to ensure that each transaction gets into its own batch for more fair comparison.
+ command = `CHAIN_STATE_KEEPER_TRANSACTION_SLOTS=1 ETH_SENDER_GAS_ADJUSTER_INTERNAL_ENFORCED_L1_GAS_PRICE=${newPrice} ${command}`;
}
- const zkSyncServer = utils.background(command, 'ignore');
+ const zkSyncServer = utils.background(command, [null, logs, logs]);
if (disconnect) {
zkSyncServer.unref();
diff --git a/core/tests/ts-integration/tests/l1.test.ts b/core/tests/ts-integration/tests/l1.test.ts
index a1ef9564bd98..c0a846407943 100644
--- a/core/tests/ts-integration/tests/l1.test.ts
+++ b/core/tests/ts-integration/tests/l1.test.ts
@@ -278,7 +278,7 @@ describe('Tests for L1 behavior', () => {
}
const contract = await deployContract(alice, contracts.writesAndMessages, []);
- const MAX_PUBDATA_PER_BATCH = ethers.BigNumber.from(SYSTEM_CONFIG['MAX_PUBDATA_PER_BATCH']);
+ const MAX_PUBDATA_PER_BATCH = ethers.BigNumber.from(SYSTEM_CONFIG['PRIORITY_TX_PUBDATA_PER_BATCH']);
// We check that we will run out of gas if we send a bit
// smaller than `MAX_PUBDATA_PER_BATCH` amount of pubdata in a single tx.
const calldata = contract.interface.encodeFunctionData('big_l2_l1_message', [
@@ -338,60 +338,16 @@ function maxL2GasLimitForPriorityTxs(): number {
let maxGasBodyLimit = +process.env.CONTRACTS_PRIORITY_TX_MAX_GAS_LIMIT!;
const overhead = getOverheadForTransaction(
- ethers.BigNumber.from(maxGasBodyLimit),
- ethers.BigNumber.from(zksync.utils.REQUIRED_L1_TO_L2_GAS_PER_PUBDATA_LIMIT),
- // We can just pass 0 as `encodingLength` because `overheadForPublicData` and `overheadForGas`
- // will be greater than `overheadForLength` for large `gasLimit`.
+ // We can just pass 0 as `encodingLength` because the overhead for the transaction's slot
+ // will be greater than `overheadForLength` for a typical transacction
ethers.BigNumber.from(0)
);
return maxGasBodyLimit + overhead;
}
-function getOverheadForTransaction(
- bodyGasLimit: ethers.BigNumber,
- gasPricePerPubdata: ethers.BigNumber,
- encodingLength: ethers.BigNumber
-): number {
- const BATCH_OVERHEAD_L2_GAS = ethers.BigNumber.from(SYSTEM_CONFIG['BATCH_OVERHEAD_L2_GAS']);
- const L1_GAS_PER_PUBDATA_BYTE = ethers.BigNumber.from(SYSTEM_CONFIG['L1_GAS_PER_PUBDATA_BYTE']);
- const BATCH_OVERHEAD_L1_GAS = ethers.BigNumber.from(SYSTEM_CONFIG['BATCH_OVERHEAD_L1_GAS']);
- const BATCH_OVERHEAD_PUBDATA = BATCH_OVERHEAD_L1_GAS.div(L1_GAS_PER_PUBDATA_BYTE);
-
- const MAX_TRANSACTIONS_IN_BATCH = ethers.BigNumber.from(SYSTEM_CONFIG['MAX_TRANSACTIONS_IN_BATCH']);
- const BOOTLOADER_TX_ENCODING_SPACE = ethers.BigNumber.from(SYSTEM_CONFIG['BOOTLOADER_TX_ENCODING_SPACE']);
- // TODO (EVM-67): possibly charge overhead for pubdata
- // const MAX_PUBDATA_PER_BATCH = ethers.BigNumber.from(SYSTEM_CONFIG['MAX_PUBDATA_PER_BATCH']);
- const L2_TX_MAX_GAS_LIMIT = ethers.BigNumber.from(SYSTEM_CONFIG['L2_TX_MAX_GAS_LIMIT']);
-
- const maxBlockOverhead = BATCH_OVERHEAD_L2_GAS.add(BATCH_OVERHEAD_PUBDATA.mul(gasPricePerPubdata));
-
- // The overhead from taking up the transaction's slot
- const txSlotOverhead = ceilDiv(maxBlockOverhead, MAX_TRANSACTIONS_IN_BATCH);
- let blockOverheadForTransaction = txSlotOverhead;
-
- // The overhead for occupying the bootloader memory can be derived from encoded_len
- const overheadForLength = ceilDiv(encodingLength.mul(maxBlockOverhead), BOOTLOADER_TX_ENCODING_SPACE);
- if (overheadForLength.gt(blockOverheadForTransaction)) {
- blockOverheadForTransaction = overheadForLength;
- }
-
- // The overhead for possible published public data
- // TODO (EVM-67): possibly charge overhead for pubdata
- // let maxPubdataInTx = ceilDiv(bodyGasLimit, gasPricePerPubdata);
- // let overheadForPublicData = ceilDiv(maxPubdataInTx.mul(maxBlockOverhead), MAX_PUBDATA_PER_BATCH);
- // if (overheadForPublicData.gt(blockOverheadForTransaction)) {
- // blockOverheadForTransaction = overheadForPublicData;
- // }
-
- // The overhead for gas that could be used to use single-instance circuits
- let overheadForSingleInstanceCircuits = ceilDiv(bodyGasLimit.mul(maxBlockOverhead), L2_TX_MAX_GAS_LIMIT);
- if (overheadForSingleInstanceCircuits.gt(blockOverheadForTransaction)) {
- blockOverheadForTransaction = overheadForSingleInstanceCircuits;
- }
-
- return blockOverheadForTransaction.toNumber();
-}
+function getOverheadForTransaction(encodingLength: ethers.BigNumber): number {
+ const TX_SLOT_OVERHEAD_GAS = 10_000;
+ const TX_LENGTH_BYTE_OVERHEAD_GAS = 10;
-function ceilDiv(a: ethers.BigNumber, b: ethers.BigNumber): ethers.BigNumber {
- return a.add(b.sub(1)).div(b);
+ return Math.max(TX_SLOT_OVERHEAD_GAS, TX_LENGTH_BYTE_OVERHEAD_GAS * encodingLength.toNumber());
}
diff --git a/core/tests/vm-benchmark/harness/src/lib.rs b/core/tests/vm-benchmark/harness/src/lib.rs
index 9b4081dc69ae..e4f26a20f497 100644
--- a/core/tests/vm-benchmark/harness/src/lib.rs
+++ b/core/tests/vm-benchmark/harness/src/lib.rs
@@ -4,12 +4,12 @@ use multivm::{
interface::{
L2BlockEnv, TxExecutionMode, VmExecutionMode, VmExecutionResultAndLogs, VmInterface,
},
+ utils::get_max_gas_per_pubdata_byte,
vm_latest::{constants::BLOCK_GAS_LIMIT, HistoryEnabled, Vm},
};
use once_cell::sync::Lazy;
use zksync_contracts::{deployer_contract, BaseSystemContracts};
use zksync_state::{InMemoryStorage, StorageView};
-use zksync_system_constants::ethereum::MAX_GAS_PER_PUBDATA_BYTE;
use zksync_types::{
block::MiniblockHasher,
ethabi::{encode, Token},
@@ -122,7 +122,9 @@ pub fn get_deploy_tx(code: &[u8]) -> Transaction {
gas_limit: U256::from(30000000u32),
max_fee_per_gas: U256::from(250_000_000),
max_priority_fee_per_gas: U256::from(0),
- gas_per_pubdata_limit: U256::from(MAX_GAS_PER_PUBDATA_BYTE),
+ gas_per_pubdata_limit: U256::from(get_max_gas_per_pubdata_byte(
+ ProtocolVersionId::latest().into(),
+ )),
},
U256::zero(),
L2ChainId::from(270),
diff --git a/etc/commitment_tests/zksync_testharness_test.json b/etc/commitment_tests/zksync_testharness_test.json
index 6f5730144a02..da4f5503878d 100644
--- a/etc/commitment_tests/zksync_testharness_test.json
+++ b/etc/commitment_tests/zksync_testharness_test.json
@@ -67,8 +67,8 @@
"pass_through_hash": "0x1c695ec7d7944f720a2c0fc6b5651cbd3178967407bc4df579a15985652350e9",
"meta_params_bytes": "000100037723960c07cda7251089daffbdd567476a7e31971ff801568a3856e8e8010006699c833b654b365f0e3ce866c394626d5e40461a6868809d452738606f",
"meta_params_hash": "0x57404e50342edcd09180fb27fa49634676f71a3ce1a76e9b3edf6185bf164082",
- "auxiliary_bytes": "c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a47000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
- "auxiliary_hash": "0x7c613c82ec911cf56dd6241854dd87bd538e0201f4ff0735f56a1a013db6466a",
- "commitment_hash": "0xea55acb8903f82e4cfedd2041ce2db2f3b77741b6e35bc90a4f0a11e9526bfc2"
+ "auxiliary_bytes": "c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
+ "auxiliary_hash": "0xc80c4621670dfbae60a5878a224bf9515d566e341eacc6339b5256899cd70b77",
+ "commitment_hash": "0x35ec1c1af30b41260459f0fef16248b8702d443fb027f9b483c2a71791c136db"
}
}
diff --git a/etc/env/base/api.toml b/etc/env/base/api.toml
index 186e2cfb2b0e..1c5d906603fb 100644
--- a/etc/env/base/api.toml
+++ b/etc/env/base/api.toml
@@ -17,6 +17,7 @@ pubsub_polling_interval=200
threads_per_server=128
max_nonce_ahead=50
gas_price_scale_factor=1.2
+l1_to_l2_transactions_compatibility_mode=true
request_timeout=10
account_pks=[
"0xac0974bec39a17e36ba4a6b4d238ff944bacb478cbed5efcae784d7bf4f2ff80",
diff --git a/etc/env/base/chain.toml b/etc/env/base/chain.toml
index db9d87107c41..181c7cc86321 100644
--- a/etc/env/base/chain.toml
+++ b/etc/env/base/chain.toml
@@ -45,8 +45,37 @@ reject_tx_at_eth_params_percentage=0.95
# it takes more percentage of the max block gas capacity than this value.
reject_tx_at_gas_percentage=0.95
-# The price the operator spends on 1 gas of computation in wei.
-fair_l2_gas_price=250000000
+# The minimal acceptable L2 gas price, i.e. the price that should include the cost of computation/proving as well
+# as potentially premium for congestion.
+minimal_l2_gas_price=100000000
+
+# The constant that represents the possibility that a batch can be sealed because of overuse of computation resources.
+# It has range from 0 to 1. If it is 0, the compute will not depend on the cost for closing the batch.
+# If it is 1, the gas limit per batch will have to cover the entire cost of closing the batch.
+compute_overhead_part=0.0
+
+# The constant that represents the possibility that a batch can be sealed because of overuse of pubdata.
+# It has range from 0 to 1. If it is 0, the pubdata will not depend on the cost for closing the batch.
+# If it is 1, the pubdata limit per batch will have to cover the entire cost of closing the batch.
+pubdata_overhead_part=1.0
+
+# The constant amount of L1 gas that is used as the overhead for the batch. It includes the price for batch verification, etc.
+batch_overhead_l1_gas=800000
+
+# The maximum amount of gas that can be used by the batch. This value is derived from the circuits limitation per batch.
+max_gas_per_batch=200000000
+
+# The maximum amount of pubdata that can be used by the batch. Note that if the calldata is used as pubdata, this variable should not exceed 128kb.
+max_pubdata_per_batch=100000
+
+# The version of the fee model to use.
+# - `V1`, the first model that was used in zkSync Era. In this fee model, the pubdata price must be pegged to the L1 gas price.
+# Also, the fair L2 gas price is expected to only include the proving/computation price for the operator and not the costs that come from
+# processing the batch on L1.
+# - `V2`, the second model that was used in zkSync Era. There the pubdata price might be independent from the L1 gas price. Also,
+# The fair L2 gas price is expected to both the proving/computation price for the operator and the costs that come from
+# processing the batch on L1.
+fee_model_version="V1"
# Max number of computational gas that validation step is allowed to take.
validation_computational_gas_limit=300000
diff --git a/etc/env/base/contracts.toml b/etc/env/base/contracts.toml
index 0a3b535f3bc3..bfc9b82aa715 100644
--- a/etc/env/base/contracts.toml
+++ b/etc/env/base/contracts.toml
@@ -38,10 +38,10 @@ L1_WETH_TOKEN_ADDR="0x5E6D086F5eC079ADFF4FB3774CDf3e8D6a34F7E9"
L2_WETH_BRIDGE_ADDR="0x5E6D086F5eC079ADFF4FB3774CDf3e8D6a34F7E9"
L2_WETH_TOKEN_IMPL_ADDR="0x5E6D086F5eC079ADFF4FB3774CDf3e8D6a34F7E9"
L2_WETH_TOKEN_PROXY_ADDR="0x5E6D086F5eC079ADFF4FB3774CDf3e8D6a34F7E9"
-FRI_RECURSION_LEAF_LEVEL_VK_HASH ="0x14628525c227822148e718ca1138acfc6d25e759e19452455d89f7f610c3dcb8"
+FRI_RECURSION_LEAF_LEVEL_VK_HASH ="0x062362cb3eaf1f631406cbe19bf2a2c5d0d9ea69d069309a6003addae9f387be"
FRI_RECURSION_NODE_LEVEL_VK_HASH ="0x5a3ef282b21e12fe1f4438e5bb158fc5060b160559c5158c6389d62d9fe3d080"
-FRI_RECURSION_SCHEDULER_LEVEL_VK_HASH ="0x61ed1ea338680a9f83945b300a4a4778dd76d74a015b43a3e9b7fedba914a3d0"
-SNARK_WRAPPER_VK_HASH = "0x750d8e21be7555a6841472a5cacd24c75a7ceb34261aea61e72bb7423a7d30fc"
+FRI_RECURSION_SCHEDULER_LEVEL_VK_HASH ="0xf12256f7ba1ab223ba82abb19c8366c6677596897f9e5a82016977113e52ed5d"
+SNARK_WRAPPER_VK_HASH = "0x8574e152c41dc39a2ecab984545e1cf21cb3ec250b919018a8053f2fa270784f"
# Prover that should be used at genesis. 'fri' or 'snark'
PROVER_AT_GENESIS="fri"
diff --git a/etc/multivm_bootloaders/vm_1_4_1/fee_estimate.yul/fee_estimate.yul.zbin b/etc/multivm_bootloaders/vm_1_4_1/fee_estimate.yul/fee_estimate.yul.zbin
new file mode 100644
index 000000000000..a020cd118c7a
Binary files /dev/null and b/etc/multivm_bootloaders/vm_1_4_1/fee_estimate.yul/fee_estimate.yul.zbin differ
diff --git a/etc/multivm_bootloaders/vm_1_4_1/gas_test.yul/gas_test.yul.zbin b/etc/multivm_bootloaders/vm_1_4_1/gas_test.yul/gas_test.yul.zbin
new file mode 100644
index 000000000000..ad090f3d214f
Binary files /dev/null and b/etc/multivm_bootloaders/vm_1_4_1/gas_test.yul/gas_test.yul.zbin differ
diff --git a/etc/multivm_bootloaders/vm_1_4_1/playground_batch.yul/playground_batch.yul.zbin b/etc/multivm_bootloaders/vm_1_4_1/playground_batch.yul/playground_batch.yul.zbin
new file mode 100644
index 000000000000..fc5bd1542439
Binary files /dev/null and b/etc/multivm_bootloaders/vm_1_4_1/playground_batch.yul/playground_batch.yul.zbin differ
diff --git a/etc/multivm_bootloaders/vm_1_4_1/proved_batch.yul/proved_batch.yul.zbin b/etc/multivm_bootloaders/vm_1_4_1/proved_batch.yul/proved_batch.yul.zbin
new file mode 100644
index 000000000000..1ad3bd50502a
Binary files /dev/null and b/etc/multivm_bootloaders/vm_1_4_1/proved_batch.yul/proved_batch.yul.zbin differ
diff --git a/infrastructure/protocol-upgrade/src/transaction.ts b/infrastructure/protocol-upgrade/src/transaction.ts
index e147a02c740c..2735f21c8351 100644
--- a/infrastructure/protocol-upgrade/src/transaction.ts
+++ b/infrastructure/protocol-upgrade/src/transaction.ts
@@ -523,6 +523,11 @@ command
.option('--zksync-address ')
.option('--use-new-governance')
.action(async (options) => {
+ if (!options.useNewGovernance) {
+ // TODO(X): remove old governance functionality from the protocol upgrade tool
+ throw new Error('Old governance is not supported anymore');
+ }
+
let diamondUpgradeProposalId = options.diamondUpgradeProposalId;
if (!diamondUpgradeProposalId && !options.useNewGovernance) {
diamondUpgradeProposalId = await getNewDiamondUpgradeProposalId(options.l1rpc, options.zksyncAddress);
@@ -550,6 +555,11 @@ command
.option('--l1rpc ')
.option('--new-governance ')
.action(async (options) => {
+ if (!options.newGovernance) {
+ // TODO(X): remove old governance functionality from the protocol upgrade tool
+ throw new Error('Old governance is not supported anymore');
+ }
+
await proposeUpgrade(
options.privateKey,
options.l1rpc,
@@ -571,6 +581,11 @@ command
.option('--l1rpc ')
.option('--new-governance ')
.action(async (options) => {
+ if (!options.newGovernance) {
+ // TODO(X): remove old governance functionality from the protocol upgrade tool
+ throw new Error('Old governance is not supported anymore');
+ }
+
await executeUpgrade(
options.privateKey,
options.l1rpc,
@@ -593,6 +608,11 @@ command
.option('--execute')
.option('--new-governance ')
.action(async (options) => {
+ if (!options.newGovernance) {
+ // TODO(X): remove old governance functionality from the protocol upgrade tool
+ throw new Error('Old governance is not supported anymore');
+ }
+
await cancelUpgrade(
options.privateKey,
options.l1rpc,
diff --git a/infrastructure/zk/src/utils.ts b/infrastructure/zk/src/utils.ts
index 47f843fa3bad..777eec2a2141 100644
--- a/infrastructure/zk/src/utils.ts
+++ b/infrastructure/zk/src/utils.ts
@@ -22,7 +22,8 @@ const IGNORED_DIRS = [
'binaryen',
'system-contracts',
'artifacts-zk',
- 'cache-zk'
+ 'cache-zk',
+ 'contracts/l1-contracts/lib'
];
const IGNORED_FILES = ['KeysWithPlonkVerifier.sol', 'TokenInit.sol', '.tslintrc.js'];
diff --git a/prover/Cargo.lock b/prover/Cargo.lock
index edd6e8280b77..bf566686a31c 100644
--- a/prover/Cargo.lock
+++ b/prover/Cargo.lock
@@ -77,19 +77,19 @@ version = "0.7.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5a824f2aa7e75a0c98c5a504fceb80649e9c35265d44525b5f94de4771a395cd"
dependencies = [
- "getrandom 0.2.11",
+ "getrandom 0.2.12",
"once_cell",
"version_check",
]
[[package]]
name = "ahash"
-version = "0.8.6"
+version = "0.8.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "91429305e9f0a25f6205c5b8e0d2db09e0708a7a6df0f42212bb56c32c8ac97a"
+checksum = "77c3a9648d43b9cd48db467b3f87fdd6e146bcc88ab0180006cef2179fe11d01"
dependencies = [
"cfg-if 1.0.0",
- "getrandom 0.2.11",
+ "getrandom 0.2.12",
"once_cell",
"version_check",
"zerocopy",
@@ -148,9 +148,9 @@ checksum = "7079075b41f533b8c61d2a4d073c4676e1f8b249ff94a393b0595db304e0dd87"
[[package]]
name = "anyhow"
-version = "1.0.75"
+version = "1.0.79"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a4668cab20f66d8d020e1fbc0ebe47217433c1b6c8f2040faf858554e394ace6"
+checksum = "080e9890a082662b09c1ad45f567faeeb47f22b5fb23895fbe1e651e718e25ca"
[[package]]
name = "arr_macro"
@@ -169,7 +169,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0609c78bd572f4edc74310dfb63a01f5609d53fa8b4dd7c4d98aef3b3e8d72d1"
dependencies = [
"proc-macro-hack",
- "quote 1.0.33",
+ "quote 1.0.35",
"syn 1.0.109",
]
@@ -217,20 +217,20 @@ version = "0.3.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "16e62a023e7c117e27523144c5d2459f4397fcc3cab0085af8e2224f643a0193"
dependencies = [
- "proc-macro2 1.0.69",
- "quote 1.0.33",
- "syn 2.0.39",
+ "proc-macro2 1.0.76",
+ "quote 1.0.35",
+ "syn 2.0.48",
]
[[package]]
name = "async-trait"
-version = "0.1.74"
+version = "0.1.77"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a66537f1bb974b254c98ed142ff995236e81b9d0fe4db0575f46612cb15eb0f9"
+checksum = "c980ee35e870bd1a4d2c8294d4c04d0499e67bca1e4b5cefcc693c2fa00caea9"
dependencies = [
- "proc-macro2 1.0.69",
- "quote 1.0.33",
- "syn 2.0.39",
+ "proc-macro2 1.0.76",
+ "quote 1.0.35",
+ "syn 2.0.48",
]
[[package]]
@@ -299,6 +299,12 @@ version = "0.1.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "349a06037c7bf932dd7e7d1f653678b2038b9ad46a74102f1fc7bd7872678cce"
+[[package]]
+name = "base16ct"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4c7f02d4ea65f2c1853089ffd8d2787bdbc63de2f0d29dedbcf8ccdfa0ccd4cf"
+
[[package]]
name = "base64"
version = "0.13.1"
@@ -307,9 +313,9 @@ checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8"
[[package]]
name = "base64"
-version = "0.21.5"
+version = "0.21.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "35636a1494ede3b646cc98f74f8e62c773a38a659ebc777a2cf26b9b74171df9"
+checksum = "c79fed4cdb43e993fcdadc7e58a09fd0e3e649c4436fa11da71c9f1f3ee7feb9"
[[package]]
name = "base64ct"
@@ -335,7 +341,7 @@ dependencies = [
"byteorder",
"cfg-if 1.0.0",
"crossbeam 0.7.3",
- "futures 0.3.29",
+ "futures 0.3.30",
"hex",
"lazy_static",
"num_cpus",
@@ -358,7 +364,7 @@ dependencies = [
"byteorder",
"cfg-if 1.0.0",
"crossbeam 0.7.3",
- "futures 0.3.29",
+ "futures 0.3.30",
"hex",
"lazy_static",
"num_cpus",
@@ -403,12 +409,12 @@ dependencies = [
"lazycell",
"peeking_take_while",
"prettyplease",
- "proc-macro2 1.0.69",
- "quote 1.0.33",
+ "proc-macro2 1.0.76",
+ "quote 1.0.35",
"regex",
"rustc-hash",
"shlex",
- "syn 2.0.39",
+ "syn 2.0.48",
]
[[package]]
@@ -425,12 +431,12 @@ dependencies = [
"log",
"peeking_take_while",
"prettyplease",
- "proc-macro2 1.0.69",
- "quote 1.0.33",
+ "proc-macro2 1.0.76",
+ "quote 1.0.35",
"regex",
"rustc-hash",
"shlex",
- "syn 2.0.39",
+ "syn 2.0.48",
"which",
]
@@ -611,15 +617,15 @@ dependencies = [
[[package]]
name = "boojum"
version = "0.1.0"
-source = "git+https://github.com/matter-labs/era-boojum?branch=main#84754b066959c8fdfb77edf730fc13ed87404907"
+source = "git+https://github.com/matter-labs/era-boojum?branch=main#93b5e0f0dbff0a9b606d9025e207c8405c141bd9"
dependencies = [
"arrayvec 0.7.4",
"bincode",
"blake2 0.10.6 (registry+https://github.com/rust-lang/crates.io-index)",
"const_format",
"convert_case 0.6.0",
- "crossbeam 0.8.2",
- "crypto-bigint 0.5.4",
+ "crossbeam 0.8.4",
+ "crypto-bigint 0.5.5",
"cs_derive 0.1.0 (git+https://github.com/matter-labs/era-boojum?branch=main)",
"derivative",
"ethereum-types 0.14.1",
@@ -643,21 +649,21 @@ dependencies = [
[[package]]
name = "boojum-cuda"
version = "0.1.0"
-source = "git+https://github.com/matter-labs/era-boojum-cuda?branch=main#6731d9a8d0c439a4fa3cde14b494c9eca642bb2e"
+source = "git+https://github.com/matter-labs/era-boojum-cuda?branch=main#9df96d38a608b1aa78cd824d54112cd17b0d2537"
dependencies = [
"boojum",
"cmake",
"cudart",
"cudart-sys",
- "itertools 0.11.0",
+ "itertools 0.12.0",
"lazy_static",
]
[[package]]
name = "borsh"
-version = "1.3.0"
+version = "1.3.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "26d4d6dafc1a3bb54687538972158f07b2c948bc57d5890df22c0739098b3028"
+checksum = "f58b559fd6448c6e2fd0adb5720cd98a2506594cafa4737ff98c396f3e82f667"
dependencies = [
"borsh-derive",
"cfg_aliases",
@@ -665,15 +671,15 @@ dependencies = [
[[package]]
name = "borsh-derive"
-version = "1.3.0"
+version = "1.3.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bf4918709cc4dd777ad2b6303ed03cb37f3ca0ccede8c1b0d28ac6db8f4710e0"
+checksum = "7aadb5b6ccbd078890f6d7003694e33816e6b784358f18e15e7e6d9f065a57cd"
dependencies = [
"once_cell",
- "proc-macro-crate 2.0.1",
- "proc-macro2 1.0.69",
- "quote 1.0.33",
- "syn 2.0.39",
+ "proc-macro-crate 3.0.0",
+ "proc-macro2 1.0.76",
+ "quote 1.0.35",
+ "syn 2.0.48",
"syn_derive",
]
@@ -706,8 +712,8 @@ version = "0.6.11"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a7ec4c6f261935ad534c0c22dbef2201b45918860eb1c574b972bd213a76af61"
dependencies = [
- "proc-macro2 1.0.69",
- "quote 1.0.33",
+ "proc-macro2 1.0.76",
+ "quote 1.0.35",
"syn 1.0.109",
]
@@ -751,9 +757,9 @@ dependencies = [
[[package]]
name = "cargo-platform"
-version = "0.1.4"
+version = "0.1.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "12024c4645c97566567129c204f65d5815a8c9aecf30fcbe682b2fe034996d36"
+checksum = "ceed8ef69d8518a5dda55c07425450b58a4e1946f4951eab6d7191ee86c2443d"
dependencies = [
"serde",
]
@@ -779,10 +785,11 @@ checksum = "37b2a672a2cb129a2e41c10b1224bb368f9f37a2b16b612598138befd7b37eb5"
[[package]]
name = "cc"
-version = "1.0.84"
+version = "1.0.83"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0f8e7c90afad890484a21653d08b6e209ae34770fb5ee298f9c699fcc1e5c856"
+checksum = "f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0"
dependencies = [
+ "jobserver",
"libc",
]
@@ -825,7 +832,7 @@ dependencies = [
"num-traits",
"serde",
"wasm-bindgen",
- "windows-targets",
+ "windows-targets 0.48.5",
]
[[package]]
@@ -867,15 +874,29 @@ dependencies = [
[[package]]
name = "circuit_definitions"
version = "0.1.0"
-source = "git+https://github.com/matter-labs/era-zkevm_test_harness.git?branch=v1.4.0#d2e3670e0c5115b7cc7cc24e6d3dbdd17a214aad"
+source = "git+https://github.com/matter-labs/era-zkevm_test_harness.git?branch=v1.4.0#fb47657ae3b6ff6e4bb5199964d3d37212978200"
dependencies = [
- "crossbeam 0.8.2",
+ "crossbeam 0.8.4",
"derivative",
"seq-macro",
"serde",
"snark_wrapper",
"zk_evm 1.4.0",
- "zkevm_circuits",
+ "zkevm_circuits 1.4.0",
+]
+
+[[package]]
+name = "circuit_definitions"
+version = "0.1.0"
+source = "git+https://github.com/matter-labs/era-zkevm_test_harness.git?branch=v1.4.1#44975f894aff0893b5f98e34d0e364375390bcb8"
+dependencies = [
+ "crossbeam 0.8.4",
+ "derivative",
+ "seq-macro",
+ "serde",
+ "snark_wrapper",
+ "zk_evm 1.4.1",
+ "zkevm_circuits 1.4.1",
]
[[package]]
@@ -888,9 +909,9 @@ dependencies = [
[[package]]
name = "clang-sys"
-version = "1.6.1"
+version = "1.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c688fc74432808e3eb684cae8830a86be1d66a2bd58e1f248ed0960a590baf6f"
+checksum = "67523a3b4be3ce1989d607a828d036249522dd9c1c8de7f4dd2dae43a37369d1"
dependencies = [
"glob",
"libc",
@@ -914,18 +935,18 @@ dependencies = [
[[package]]
name = "clap"
-version = "4.4.8"
+version = "4.4.14"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2275f18819641850fa26c89acc84d465c1bf91ce57bc2748b28c420473352f64"
+checksum = "33e92c5c1a78c62968ec57dbc2440366a2d6e5a23faf829970ff1585dc6b18e2"
dependencies = [
"clap_builder",
]
[[package]]
name = "clap_builder"
-version = "4.4.8"
+version = "4.4.14"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "07cdf1b148b25c1e1f7a42225e30a0d99a615cd4637eae7365548dd4529b95bc"
+checksum = "f4323769dc8a61e2c39ad7dc26f6f2800524691a44d74fe3d1071a5c24db6370"
dependencies = [
"anstyle",
"clap_lex",
@@ -1003,9 +1024,9 @@ checksum = "5241cd7938b1b415942e943ea96f615953d500b50347b505b0b507080bad5a6f"
[[package]]
name = "const-oid"
-version = "0.9.5"
+version = "0.9.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "28c122c3980598d243d63d9a704629a2d748d101f278052ff068be5a4423ab6f"
+checksum = "c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8"
[[package]]
name = "const_format"
@@ -1022,8 +1043,8 @@ version = "0.2.32"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c7f6ff08fd20f4f299298a28e2dfa8a8ba1036e6cd2460ac1de7b425d76f2500"
dependencies = [
- "proc-macro2 1.0.69",
- "quote 1.0.33",
+ "proc-macro2 1.0.76",
+ "quote 1.0.35",
"unicode-xid 0.2.4",
]
@@ -1050,9 +1071,9 @@ dependencies = [
[[package]]
name = "core-foundation"
-version = "0.9.3"
+version = "0.9.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "194a7a9e6de53fa55116934067c844d9d749312f75c6f6d0980e8c252f8c2146"
+checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f"
dependencies = [
"core-foundation-sys",
"libc",
@@ -1060,15 +1081,15 @@ dependencies = [
[[package]]
name = "core-foundation-sys"
-version = "0.8.4"
+version = "0.8.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e496a50fda8aacccc86d7529e2c1e0892dbd0f898a6b5645b5561b89c3210efa"
+checksum = "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f"
[[package]]
name = "cpufeatures"
-version = "0.2.11"
+version = "0.2.12"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ce420fe07aecd3e67c5f910618fe65e94158f6dcc0adf44e00d69ce2bdfe0fd0"
+checksum = "53fe5e26ff1b7aef8bca9c6080520cfb8d9333c7568e1829cef191a9723e5504"
dependencies = [
"libc",
]
@@ -1106,7 +1127,7 @@ dependencies = [
"anes",
"cast",
"ciborium",
- "clap 4.4.8",
+ "clap 4.4.14",
"criterion-plot",
"is-terminal",
"itertools 0.10.5",
@@ -1149,16 +1170,15 @@ dependencies = [
[[package]]
name = "crossbeam"
-version = "0.8.2"
+version = "0.8.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2801af0d36612ae591caa9568261fddce32ce6e08a7275ea334a06a4ad021a2c"
+checksum = "1137cd7e7fc0fb5d3c5a8678be38ec56e819125d8d7907411fe24ccb943faca8"
dependencies = [
- "cfg-if 1.0.0",
- "crossbeam-channel 0.5.8",
- "crossbeam-deque 0.8.3",
- "crossbeam-epoch 0.9.15",
- "crossbeam-queue 0.3.8",
- "crossbeam-utils 0.8.16",
+ "crossbeam-channel 0.5.11",
+ "crossbeam-deque 0.8.5",
+ "crossbeam-epoch 0.9.18",
+ "crossbeam-queue 0.3.11",
+ "crossbeam-utils 0.8.19",
]
[[package]]
@@ -1173,12 +1193,11 @@ dependencies = [
[[package]]
name = "crossbeam-channel"
-version = "0.5.8"
+version = "0.5.11"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a33c2bf77f2df06183c3aa30d1e96c0695a313d4f9c453cc3762a6db39f99200"
+checksum = "176dc175b78f56c0f321911d9c8eb2b77a78a4860b9c19db83835fea1a46649b"
dependencies = [
- "cfg-if 1.0.0",
- "crossbeam-utils 0.8.16",
+ "crossbeam-utils 0.8.19",
]
[[package]]
@@ -1194,13 +1213,12 @@ dependencies = [
[[package]]
name = "crossbeam-deque"
-version = "0.8.3"
+version = "0.8.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ce6fd6f855243022dcecf8702fef0c297d4338e226845fe067f6341ad9fa0cef"
+checksum = "613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d"
dependencies = [
- "cfg-if 1.0.0",
- "crossbeam-epoch 0.9.15",
- "crossbeam-utils 0.8.16",
+ "crossbeam-epoch 0.9.18",
+ "crossbeam-utils 0.8.19",
]
[[package]]
@@ -1214,21 +1232,17 @@ dependencies = [
"crossbeam-utils 0.7.2",
"lazy_static",
"maybe-uninit",
- "memoffset 0.5.6",
+ "memoffset",
"scopeguard",
]
[[package]]
name = "crossbeam-epoch"
-version = "0.9.15"
+version = "0.9.18"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ae211234986c545741a7dc064309f67ee1e5ad243d0e48335adc0484d960bcc7"
+checksum = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e"
dependencies = [
- "autocfg 1.1.0",
- "cfg-if 1.0.0",
- "crossbeam-utils 0.8.16",
- "memoffset 0.9.0",
- "scopeguard",
+ "crossbeam-utils 0.8.19",
]
[[package]]
@@ -1244,12 +1258,11 @@ dependencies = [
[[package]]
name = "crossbeam-queue"
-version = "0.3.8"
+version = "0.3.11"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d1cfb3ea8a53f37c40dea2c7bedcbd88bdfae54f5e2175d6ecaff1c988353add"
+checksum = "df0346b5d5e76ac2fe4e327c5fd1118d6be7c51dfb18f9b7922923f287471e35"
dependencies = [
- "cfg-if 1.0.0",
- "crossbeam-utils 0.8.16",
+ "crossbeam-utils 0.8.19",
]
[[package]]
@@ -1265,12 +1278,9 @@ dependencies = [
[[package]]
name = "crossbeam-utils"
-version = "0.8.16"
+version = "0.8.19"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5a22b2d63d4d1dc0b7f1b6b2747dd0088008a9be28b6ddf0b1e7d335e3037294"
-dependencies = [
- "cfg-if 1.0.0",
-]
+checksum = "248e3bacc7dc6baa3b21e405ee045c3047101a49145e7e9eca583ab4c2ca5345"
[[package]]
name = "crunchy"
@@ -1292,12 +1302,14 @@ dependencies = [
[[package]]
name = "crypto-bigint"
-version = "0.5.4"
+version = "0.5.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "28f85c3514d2a6e64160359b45a3918c3b4178bcbf4ae5d03ab2d02e521c479a"
+checksum = "0dc92fb57ca44df6db8059111ab3af99a63d5d0f8375d9972e319a379c6bab76"
dependencies = [
+ "generic-array",
"rand_core 0.6.4",
"subtle",
+ "zeroize",
]
[[package]]
@@ -1333,11 +1345,11 @@ dependencies = [
[[package]]
name = "cs_derive"
version = "0.1.0"
-source = "git+https://github.com/matter-labs/era-boojum?branch=main#84754b066959c8fdfb77edf730fc13ed87404907"
+source = "git+https://github.com/matter-labs/era-boojum?branch=main#93b5e0f0dbff0a9b606d9025e207c8405c141bd9"
dependencies = [
"proc-macro-error",
- "proc-macro2 1.0.69",
- "quote 1.0.33",
+ "proc-macro2 1.0.76",
+ "quote 1.0.35",
"syn 1.0.109",
]
@@ -1347,8 +1359,8 @@ version = "0.1.0"
source = "git+https://github.com/matter-labs/era-sync_vm.git?branch=v1.3.3#ed8ab8984cae05d00d9d62196753c8d40df47c7d"
dependencies = [
"proc-macro-error",
- "proc-macro2 1.0.69",
- "quote 1.0.33",
+ "proc-macro2 1.0.76",
+ "quote 1.0.35",
"serde",
"syn 1.0.109",
]
@@ -1364,33 +1376,64 @@ dependencies = [
[[package]]
name = "ctrlc"
-version = "3.4.1"
+version = "3.4.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "82e95fbd621905b854affdc67943b043a0fbb6ed7385fd5a25650d19a8a6cfdf"
+checksum = "b467862cc8610ca6fc9a1532d7777cee0804e678ab45410897b9396495994a0b"
dependencies = [
"nix",
- "windows-sys",
+ "windows-sys 0.52.0",
]
[[package]]
name = "cudart"
version = "0.1.0"
-source = "git+https://github.com/matter-labs/era-cuda?branch=main#492f2afad93ad156ac0cfb69e6efbfc03a7a2652"
+source = "git+https://github.com/matter-labs/era-cuda?branch=main#59a4e62e5264d01e84f4ac9d85541bc3e661e9f0"
dependencies = [
"bitflags 2.4.1",
"criterion",
"cudart-sys",
+ "paste",
]
[[package]]
name = "cudart-sys"
version = "0.1.0"
-source = "git+https://github.com/matter-labs/era-cuda?branch=main#492f2afad93ad156ac0cfb69e6efbfc03a7a2652"
+source = "git+https://github.com/matter-labs/era-cuda?branch=main#59a4e62e5264d01e84f4ac9d85541bc3e661e9f0"
dependencies = [
"bindgen 0.69.1",
"serde_json",
]
+[[package]]
+name = "curl"
+version = "0.4.44"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "509bd11746c7ac09ebd19f0b17782eae80aadee26237658a6b4808afb5c11a22"
+dependencies = [
+ "curl-sys",
+ "libc",
+ "openssl-probe",
+ "openssl-sys",
+ "schannel",
+ "socket2 0.4.10",
+ "winapi",
+]
+
+[[package]]
+name = "curl-sys"
+version = "0.4.70+curl-8.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3c0333d8849afe78a4c8102a429a446bfdd055832af071945520e835ae2d841e"
+dependencies = [
+ "cc",
+ "libc",
+ "libz-sys",
+ "openssl-sys",
+ "pkg-config",
+ "vcpkg",
+ "windows-sys 0.48.0",
+]
+
[[package]]
name = "curve25519-dalek"
version = "4.1.1"
@@ -1414,9 +1457,9 @@ version = "0.1.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3"
dependencies = [
- "proc-macro2 1.0.69",
- "quote 1.0.33",
- "syn 2.0.39",
+ "proc-macro2 1.0.76",
+ "quote 1.0.35",
+ "syn 2.0.48",
]
[[package]]
@@ -1437,8 +1480,8 @@ checksum = "859d65a907b6852c9361e3185c862aae7fafd2887876799fa55f5f99dc40d610"
dependencies = [
"fnv",
"ident_case",
- "proc-macro2 1.0.69",
- "quote 1.0.33",
+ "proc-macro2 1.0.76",
+ "quote 1.0.35",
"strsim 0.10.0",
"syn 1.0.109",
]
@@ -1450,7 +1493,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9c972679f83bdf9c42bd905396b6c3588a843a17f0f16dfcfa3e2c5d57441835"
dependencies = [
"darling_core",
- "quote 1.0.33",
+ "quote 1.0.35",
"syn 1.0.109",
]
@@ -1461,7 +1504,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "978747c1d849a7d2ee5e8adc0159961c48fb7e5db2f06af6723b80123bb53856"
dependencies = [
"cfg-if 1.0.0",
- "hashbrown 0.14.2",
+ "hashbrown 0.14.3",
"lock_api",
"once_cell",
"parking_lot_core",
@@ -1500,9 +1543,9 @@ dependencies = [
[[package]]
name = "deranged"
-version = "0.3.9"
+version = "0.3.11"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0f32d04922c60427da6f9fef14d042d9edddef64cb9d4ce0d64d0685fbeb1fd3"
+checksum = "b42b6fa04a440b495c8b04d0e71b707c585f83cb9cb28cf8cd0d976c315e31b4"
dependencies = [
"powerfmt",
"serde",
@@ -1514,8 +1557,8 @@ version = "2.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fcc3dd5e9e9c0b295d6e1e4d811fb6f157d5ffd784b8d202fc62eac8035a770b"
dependencies = [
- "proc-macro2 1.0.69",
- "quote 1.0.33",
+ "proc-macro2 1.0.76",
+ "quote 1.0.35",
"syn 1.0.109",
]
@@ -1526,8 +1569,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4fb810d30a7c1953f91334de7244731fc3f3c10d7fe163338a35b9f640960321"
dependencies = [
"convert_case 0.4.0",
- "proc-macro2 1.0.69",
- "quote 1.0.33",
+ "proc-macro2 1.0.76",
+ "quote 1.0.35",
"rustc_version",
"syn 1.0.109",
]
@@ -1572,11 +1615,25 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "413301934810f597c1d19ca71c8710e99a3f1ba28a0d2ebc01551a2daeea3c5c"
dependencies = [
"der 0.6.1",
- "elliptic-curve",
- "rfc6979",
+ "elliptic-curve 0.12.3",
+ "rfc6979 0.3.1",
"signature 1.6.4",
]
+[[package]]
+name = "ecdsa"
+version = "0.16.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ee27f32b5c5292967d2d4a9d7f1e0b0aed2c15daded5a60300e4abb9d8020bca"
+dependencies = [
+ "der 0.7.8",
+ "digest 0.10.7",
+ "elliptic-curve 0.13.8",
+ "rfc6979 0.4.0",
+ "signature 2.2.0",
+ "spki 0.7.3",
+]
+
[[package]]
name = "ed25519"
version = "2.2.3"
@@ -1617,25 +1674,44 @@ version = "0.12.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e7bb888ab5300a19b8e5bceef25ac745ad065f3c9f7efc6de1b91958110891d3"
dependencies = [
- "base16ct",
+ "base16ct 0.1.1",
"crypto-bigint 0.4.9",
"der 0.6.1",
"digest 0.10.7",
- "ff",
+ "ff 0.12.1",
"generic-array",
- "group",
+ "group 0.12.1",
"pkcs8 0.9.0",
"rand_core 0.6.4",
- "sec1",
+ "sec1 0.3.0",
+ "subtle",
+ "zeroize",
+]
+
+[[package]]
+name = "elliptic-curve"
+version = "0.13.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b5e6043086bf7973472e0c7dff2142ea0b680d30e18d9cc40f267efbf222bd47"
+dependencies = [
+ "base16ct 0.2.0",
+ "crypto-bigint 0.5.5",
+ "digest 0.10.7",
+ "ff 0.13.0",
+ "generic-array",
+ "group 0.13.0",
+ "pkcs8 0.10.2",
+ "rand_core 0.6.4",
+ "sec1 0.7.3",
"subtle",
"zeroize",
]
[[package]]
name = "elsa"
-version = "1.9.0"
+version = "1.10.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "714f766f3556b44e7e4776ad133fcc3445a489517c25c704ace411bb14790194"
+checksum = "d98e71ae4df57d214182a2e5cb90230c0192c6ddfcaa05c36453d46a54713e10"
dependencies = [
"stable_deref_trait",
]
@@ -1668,11 +1744,7 @@ version = "0.10.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "95b3f3e67048839cb0d0781f445682a35113da7121f7c949db0e2be96a4fbece"
dependencies = [
- "humantime",
- "is-terminal",
"log",
- "regex",
- "termcolor",
]
[[package]]
@@ -1692,12 +1764,12 @@ checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5"
[[package]]
name = "errno"
-version = "0.3.6"
+version = "0.3.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7c18ee0ed65a5f1f81cac6b1d213b69c35fa47d4252ad41f1486dbd8226fe36e"
+checksum = "a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245"
dependencies = [
"libc",
- "windows-sys",
+ "windows-sys 0.52.0",
]
[[package]]
@@ -1717,7 +1789,7 @@ checksum = "136d1b5283a1ab77bd9257427ffd09d8667ced0570b6f938942bc7568ed5b943"
dependencies = [
"cfg-if 1.0.0",
"home",
- "windows-sys",
+ "windows-sys 0.48.0",
]
[[package]]
@@ -1813,6 +1885,16 @@ dependencies = [
"subtle",
]
+[[package]]
+name = "ff"
+version = "0.13.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ded41244b729663b1e574f1b4fb731469f69f79c17667b5d776b16cda0479449"
+dependencies = [
+ "rand_core 0.6.4",
+ "subtle",
+]
+
[[package]]
name = "ff_ce"
version = "0.14.3"
@@ -1835,8 +1917,8 @@ dependencies = [
"num-bigint 0.4.4",
"num-integer",
"num-traits",
- "proc-macro2 1.0.69",
- "quote 1.0.33",
+ "proc-macro2 1.0.76",
+ "quote 1.0.35",
"serde",
"syn 1.0.109",
]
@@ -1945,9 +2027,9 @@ checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
[[package]]
name = "form_urlencoded"
-version = "1.2.0"
+version = "1.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a62bc1cf6f830c2ec14a513a9fb124d0a213a629668a4186f329db21fe045652"
+checksum = "e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456"
dependencies = [
"percent-encoding",
]
@@ -1985,7 +2067,7 @@ dependencies = [
[[package]]
name = "franklin-crypto"
version = "0.0.5"
-source = "git+https://github.com/matter-labs/franklin-crypto?branch=snark_wrapper#a9e29acd73245bd3b670b62b4d481ece06d43803"
+source = "git+https://github.com/matter-labs/franklin-crypto?branch=snark_wrapper#2546c63b91b59bdb0ad342d26f03fb57477550b2"
dependencies = [
"arr_macro",
"bellman_ce 0.3.2 (git+https://github.com/matter-labs/bellman?branch=snark-wrapper)",
@@ -2040,9 +2122,9 @@ checksum = "3a471a38ef8ed83cd6e40aa59c1ffe17db6855c18e3604d9c4ed8c08ebc28678"
[[package]]
name = "futures"
-version = "0.3.29"
+version = "0.3.30"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "da0290714b38af9b4a7b094b8a37086d1b4e61f2df9122c3cad2577669145335"
+checksum = "645c6916888f6cb6350d2550b80fb63e734897a8498abe35cfb732b6487804b0"
dependencies = [
"futures-channel",
"futures-core",
@@ -2055,9 +2137,9 @@ dependencies = [
[[package]]
name = "futures-channel"
-version = "0.3.29"
+version = "0.3.30"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ff4dd66668b557604244583e3e1e1eada8c5c2e96a6d0d6653ede395b78bbacb"
+checksum = "eac8f7d7865dcb88bd4373ab671c8cf4508703796caa2b1985a9ca867b3fcb78"
dependencies = [
"futures-core",
"futures-sink",
@@ -2065,15 +2147,15 @@ dependencies = [
[[package]]
name = "futures-core"
-version = "0.3.29"
+version = "0.3.30"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eb1d22c66e66d9d72e1758f0bd7d4fd0bee04cad842ee34587d68c07e45d088c"
+checksum = "dfc6580bb841c5a68e9ef15c77ccc837b40a7504914d52e47b8b0e9bbda25a1d"
[[package]]
name = "futures-executor"
-version = "0.3.29"
+version = "0.3.30"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0f4fb8693db0cf099eadcca0efe2a5a22e4550f98ed16aba6c48700da29597bc"
+checksum = "a576fc72ae164fca6b9db127eaa9a9dda0d61316034f33a0a0d4eda41f02b01d"
dependencies = [
"futures-core",
"futures-task",
@@ -2094,32 +2176,32 @@ dependencies = [
[[package]]
name = "futures-io"
-version = "0.3.29"
+version = "0.3.30"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8bf34a163b5c4c52d0478a4d757da8fb65cabef42ba90515efee0f6f9fa45aaa"
+checksum = "a44623e20b9681a318efdd71c299b6b222ed6f231972bfe2f224ebad6311f0c1"
[[package]]
name = "futures-macro"
-version = "0.3.29"
+version = "0.3.30"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "53b153fd91e4b0147f4aced87be237c98248656bb01050b96bf3ee89220a8ddb"
+checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac"
dependencies = [
- "proc-macro2 1.0.69",
- "quote 1.0.33",
- "syn 2.0.39",
+ "proc-macro2 1.0.76",
+ "quote 1.0.35",
+ "syn 2.0.48",
]
[[package]]
name = "futures-sink"
-version = "0.3.29"
+version = "0.3.30"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e36d3378ee38c2a36ad710c5d30c2911d752cb941c00c72dbabfb786a7970817"
+checksum = "9fb8e00e87438d937621c1c6269e53f536c14d3fbd6a042bb24879e57d474fb5"
[[package]]
name = "futures-task"
-version = "0.3.29"
+version = "0.3.30"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "efd193069b0ddadc69c46389b740bbccdd97203899b48d09c5f7969591d6bae2"
+checksum = "38d84fa142264698cdce1a9f9172cf383a0c82de1bddcf3092901442c4097004"
[[package]]
name = "futures-timer"
@@ -2129,9 +2211,9 @@ checksum = "e64b03909df88034c26dc1547e8970b91f98bdb65165d6a4e9110d94263dbb2c"
[[package]]
name = "futures-util"
-version = "0.3.29"
+version = "0.3.30"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a19526d624e703a3179b3d322efec918b6246ea0fa51d41124525f00f1cc8104"
+checksum = "3d6401deb83407ab3da39eba7e33987a73c3df0c82b4bb5813ee871c19c41d48"
dependencies = [
"futures 0.1.31",
"futures-channel",
@@ -2154,6 +2236,7 @@ checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a"
dependencies = [
"typenum",
"version_check",
+ "zeroize",
]
[[package]]
@@ -2169,9 +2252,9 @@ dependencies = [
[[package]]
name = "getrandom"
-version = "0.2.11"
+version = "0.2.12"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fe9006bed769170c11f845cf00c7c1e9092aeb3f268e007c3e760ac68008070f"
+checksum = "190092ea657667030ac6a35e305e62fc4dd69fd98ac98631e5d3a2b1575a12b5"
dependencies = [
"cfg-if 1.0.0",
"libc",
@@ -2180,9 +2263,9 @@ dependencies = [
[[package]]
name = "gimli"
-version = "0.28.0"
+version = "0.28.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6fb8d784f27acf97159b40fc4db5ecd8aa23b9ad5ef69cdd136d3bc80665f0c0"
+checksum = "4271d37baee1b8c7e4b708028c57d816cf9d2434acb33a549475f78c181f6253"
[[package]]
name = "glob"
@@ -2197,7 +2280,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "af1087f1fbd2dd3f58c17c7574ddd99cd61cbbbc2c4dc81114b8687209b196cb"
dependencies = [
"async-trait",
- "base64 0.21.5",
+ "base64 0.21.6",
"google-cloud-metadata",
"google-cloud-token",
"home",
@@ -2231,7 +2314,7 @@ checksum = "ac04b29849ebdeb9fb008988cc1c4d1f0c9d121b4c7f1ddeb8061df124580e93"
dependencies = [
"async-stream",
"async-trait",
- "base64 0.21.5",
+ "base64 0.21.6",
"bytes",
"futures-util",
"google-cloud-auth",
@@ -2243,7 +2326,7 @@ dependencies = [
"pkcs8 0.10.2",
"regex",
"reqwest",
- "ring 0.17.5",
+ "ring 0.17.7",
"serde",
"serde_json",
"sha2 0.10.8",
@@ -2256,9 +2339,9 @@ dependencies = [
[[package]]
name = "google-cloud-token"
-version = "0.1.1"
+version = "0.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0fcd62eb34e3de2f085bcc33a09c3e17c4f65650f36d53eb328b00d63bcb536a"
+checksum = "8f49c12ba8b21d128a2ce8585955246977fbce4415f680ebf9199b6f9d6d725f"
dependencies = [
"async-trait",
]
@@ -2269,16 +2352,27 @@ version = "0.12.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5dfbfb3a6cfbd390d5c9564ab283a0349b9b9fcd46a706c1eb10e0db70bfbac7"
dependencies = [
- "ff",
+ "ff 0.12.1",
+ "rand_core 0.6.4",
+ "subtle",
+]
+
+[[package]]
+name = "group"
+version = "0.13.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f0f9ef7462f7c099f518d754361858f86d8a07af53ba9af0fe635bbccb151a63"
+dependencies = [
+ "ff 0.13.0",
"rand_core 0.6.4",
"subtle",
]
[[package]]
name = "h2"
-version = "0.3.21"
+version = "0.3.22"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "91fc23aa11be92976ef4729127f1a74adf36d8436f7816b185d18df956790833"
+checksum = "4d6250322ef6e60f93f9a2162799302cd6f68f79f6e5d85c8c16f14d1d958178"
dependencies = [
"bytes",
"fnv",
@@ -2286,7 +2380,7 @@ dependencies = [
"futures-sink",
"futures-util",
"http",
- "indexmap 1.9.3",
+ "indexmap 2.1.0",
"slab",
"tokio",
"tokio-util",
@@ -2301,9 +2395,9 @@ checksum = "eabb4a44450da02c90444cf74558da904edde8fb4e9035a9a6a4e15445af0bd7"
[[package]]
name = "handlebars"
-version = "4.5.0"
+version = "5.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "faa67bab9ff362228eb3d00bd024a4965d8231bbb7921167f0cfa66c6626b225"
+checksum = "94eae21d01d20dabef65d8eda734d83df6e2dea8166788804be9bd6bc92448fa"
dependencies = [
"log",
"pest",
@@ -2328,16 +2422,16 @@ version = "0.13.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "33ff8ae62cd3a9102e5637afc8452c55acf3844001bd5374e0b0bd7b6616c038"
dependencies = [
- "ahash 0.8.6",
+ "ahash 0.8.7",
]
[[package]]
name = "hashbrown"
-version = "0.14.2"
+version = "0.14.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f93e7192158dbcda357bdec5fb5788eebf8bbac027f3f33e719d29135ae84156"
+checksum = "290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604"
dependencies = [
- "ahash 0.8.6",
+ "ahash 0.8.7",
"allocator-api2",
]
@@ -2347,7 +2441,7 @@ version = "0.8.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e8094feaf31ff591f651a2664fb9cfd92bba7a60ce3197265e9482ebe753c8f7"
dependencies = [
- "hashbrown 0.14.2",
+ "hashbrown 0.14.3",
]
[[package]]
@@ -2356,7 +2450,7 @@ version = "0.3.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "06683b93020a07e3dbcf5f8c0f6d40080d725bea7936fc01ad345c01b97dc270"
dependencies = [
- "base64 0.21.5",
+ "base64 0.21.6",
"bytes",
"headers-core",
"http",
@@ -2415,9 +2509,9 @@ checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70"
[[package]]
name = "hkdf"
-version = "0.12.3"
+version = "0.12.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "791a029f6b9fc27657f6f188ec6e5e43f6911f6f878e0dc5501396e09809d437"
+checksum = "7b5f8eb2ad728638ea2c7d47a21db23b7b58a72ed6a38256b8a1849f15fbbdf7"
dependencies = [
"hmac 0.12.1",
]
@@ -2443,11 +2537,11 @@ dependencies = [
[[package]]
name = "home"
-version = "0.5.5"
+version = "0.5.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5444c27eef6923071f7ebcc33e3444508466a76f7a2b93da00ed6e19f30c1ddb"
+checksum = "e3d1354bf6b7235cb4a0576c2619fd4ed18183f689b12b006a0ee7329eeff9a5"
dependencies = [
- "windows-sys",
+ "windows-sys 0.52.0",
]
[[package]]
@@ -2463,9 +2557,9 @@ dependencies = [
[[package]]
name = "http"
-version = "0.2.10"
+version = "0.2.11"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f95b9abcae896730d42b78e09c155ed4ddf82c07b4de772c64aee5b2d8b7c150"
+checksum = "8947b1a6fad4393052c7ba1f4cd97bed3e953a95c79c92ad9b051a04611d9fbb"
dependencies = [
"bytes",
"fnv",
@@ -2474,9 +2568,9 @@ dependencies = [
[[package]]
name = "http-body"
-version = "0.4.5"
+version = "0.4.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d5f38f16d184e36f2408a55281cd658ecbd3ca05cce6d6510a176eca393e26d1"
+checksum = "7ceab25649e9960c0311ea418d17bee82c0dcec1bd053b5f9a66e265a693bed2"
dependencies = [
"bytes",
"http",
@@ -2503,9 +2597,9 @@ checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4"
[[package]]
name = "hyper"
-version = "0.14.27"
+version = "0.14.28"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ffb1cfd654a8219eaef89881fdb3bb3b1cdc5fa75ded05d6933b2b382e395468"
+checksum = "bf96e135eb83a2a8ddf766e426a841d8ddd7449d5f00d34ea02b41d2f19eef80"
dependencies = [
"bytes",
"futures-channel",
@@ -2518,7 +2612,7 @@ dependencies = [
"httpdate",
"itoa",
"pin-project-lite",
- "socket2 0.4.10",
+ "socket2 0.5.5",
"tokio",
"tower-service",
"tracing",
@@ -2554,9 +2648,9 @@ dependencies = [
[[package]]
name = "iana-time-zone"
-version = "0.1.58"
+version = "0.1.59"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8326b86b6cff230b97d0d312a6c40a60726df3332e721f72a1b035f451663b20"
+checksum = "b6a67363e2aa4443928ce15e57ebae94fd8949958fd1223c4cfc0cd473ad7539"
dependencies = [
"android_system_properties",
"core-foundation-sys",
@@ -2591,6 +2685,16 @@ dependencies = [
"unicode-normalization",
]
+[[package]]
+name = "idna"
+version = "0.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6"
+dependencies = [
+ "unicode-bidi",
+ "unicode-normalization",
+]
+
[[package]]
name = "impl-codec"
version = "0.5.1"
@@ -2606,7 +2710,7 @@ version = "0.6.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ba6a270039626615617f3f36d15fc827041df3b78c439da2cadfa47455a77f2f"
dependencies = [
- "parity-scale-codec 3.6.5",
+ "parity-scale-codec 3.6.9",
]
[[package]]
@@ -2642,8 +2746,8 @@ version = "0.2.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "11d7a9f6330b71fea57921c9b61c47ee6e84f72d394754eff6163ae67e7395eb"
dependencies = [
- "proc-macro2 1.0.69",
- "quote 1.0.33",
+ "proc-macro2 1.0.76",
+ "quote 1.0.35",
"syn 1.0.109",
]
@@ -2664,7 +2768,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d530e1a18b1cb4c484e6e34556a0d948706958449fca0cab753d649f2bce3d1f"
dependencies = [
"equivalent",
- "hashbrown 0.14.2",
+ "hashbrown 0.14.3",
]
[[package]]
@@ -2684,13 +2788,13 @@ dependencies = [
[[package]]
name = "is-terminal"
-version = "0.4.9"
+version = "0.4.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cb0889898416213fab133e1d33a0e5858a48177452750691bde3666d0fdbaf8b"
+checksum = "0bad00257d07be169d870ab665980b06cdb366d792ad690bf2e76876dc503455"
dependencies = [
"hermit-abi 0.3.3",
"rustix",
- "windows-sys",
+ "windows-sys 0.52.0",
]
[[package]]
@@ -2722,15 +2826,24 @@ dependencies = [
[[package]]
name = "itoa"
-version = "1.0.9"
+version = "1.0.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "af150ab688ff2122fcef229be89cb50dd66af9e01a4ff320cc137eecc9bacc38"
+checksum = "b1a46d1a171d865aa5f83f92695765caa047a9b4cbae2cbf37dbd613a793fd4c"
+
+[[package]]
+name = "jobserver"
+version = "0.1.27"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8c37f63953c4c63420ed5fd3d6d398c719489b9f872b9fa683262f8edd363c7d"
+dependencies = [
+ "libc",
+]
[[package]]
name = "js-sys"
-version = "0.3.65"
+version = "0.3.66"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "54c0c35952f67de54bb584e9fd912b3023117cbafc0a77d8f3dee1fb5f572fe8"
+checksum = "cee9c64da59eae3b50095c18d3e74f8b73c0b86d2792824ff01bbce68ba229ca"
dependencies = [
"wasm-bindgen",
]
@@ -2741,7 +2854,7 @@ version = "18.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "14f7f76aef2d054868398427f6c54943cf3d1caa9a7ec7d0c38d69df97a965eb"
dependencies = [
- "futures 0.3.29",
+ "futures 0.3.30",
"futures-executor",
"futures-util",
"log",
@@ -2756,7 +2869,7 @@ version = "8.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6971da4d9c3aa03c3d8f3ff0f4155b534aad021292003895a469716b2a230378"
dependencies = [
- "base64 0.21.5",
+ "base64 0.21.6",
"pem",
"ring 0.16.20",
"serde",
@@ -2771,9 +2884,23 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "72c1e0b51e7ec0a97369623508396067a486bd0cbed95a2659a4b863d28cfc8b"
dependencies = [
"cfg-if 1.0.0",
- "ecdsa",
- "elliptic-curve",
+ "ecdsa 0.14.8",
+ "elliptic-curve 0.12.3",
+ "sha2 0.10.8",
+]
+
+[[package]]
+name = "k256"
+version = "0.13.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "956ff9b67e26e1a6a866cb758f12c6f8746208489e3e4a4b5580802f2f0a587b"
+dependencies = [
+ "cfg-if 1.0.0",
+ "ecdsa 0.16.9",
+ "elliptic-curve 0.13.8",
+ "once_cell",
"sha2 0.10.8",
+ "signature 2.2.0",
]
[[package]]
@@ -2802,18 +2929,18 @@ checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55"
[[package]]
name = "libc"
-version = "0.2.150"
+version = "0.2.152"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "89d92a4743f9a61002fae18374ed11e7973f530cb3a3255fb354818118b2203c"
+checksum = "13e3bf6590cbc649f4d1a3eefc9d5d6eb746f5200ffb04e5e142700b8faa56e7"
[[package]]
name = "libloading"
-version = "0.7.4"
+version = "0.8.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b67380fd3b2fbe7527a606e18729d21c6f3951633d0500574c4dc22d2d638b9f"
+checksum = "c571b676ddfc9a8c12f1f3d3085a7b163966a8fd8098a90640953ce5f6170161"
dependencies = [
"cfg-if 1.0.0",
- "winapi",
+ "windows-sys 0.48.0",
]
[[package]]
@@ -2849,40 +2976,41 @@ dependencies = [
[[package]]
name = "libz-sys"
-version = "1.1.12"
+version = "1.1.14"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d97137b25e321a73eef1418d1d5d2eda4d77e12813f8e6dead84bc52c5870a7b"
+checksum = "295c17e837573c8c821dbaeb3cceb3d745ad082f7572191409e69cbc1b3fd050"
dependencies = [
"cc",
+ "libc",
"pkg-config",
"vcpkg",
]
[[package]]
name = "linkme"
-version = "0.3.17"
+version = "0.3.22"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "91ed2ee9464ff9707af8e9ad834cffa4802f072caad90639c583dd3c62e6e608"
+checksum = "8b53ad6a33de58864705954edb5ad5d571a010f9e296865ed43dc72a5621b430"
dependencies = [
"linkme-impl",
]
[[package]]
name = "linkme-impl"
-version = "0.3.17"
+version = "0.3.22"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ba125974b109d512fccbc6c0244e7580143e460895dfd6ea7f8bbb692fd94396"
+checksum = "04e542a18c94a9b6fcc7adb090fa3ba6b79ee220a16404f325672729f32a66ff"
dependencies = [
- "proc-macro2 1.0.69",
- "quote 1.0.33",
- "syn 2.0.39",
+ "proc-macro2 1.0.76",
+ "quote 1.0.35",
+ "syn 2.0.48",
]
[[package]]
name = "linux-raw-sys"
-version = "0.4.11"
+version = "0.4.12"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "969488b55f8ac402214f3f5fd243ebb7206cf82de60d3172994707a4bcc2b829"
+checksum = "c4cd1a83af159aa67994778be9070f0ae1bd732942279cabb14f86f986a21456"
[[package]]
name = "local-ip-address"
@@ -2893,7 +3021,7 @@ dependencies = [
"libc",
"neli",
"thiserror",
- "windows-sys",
+ "windows-sys 0.48.0",
]
[[package]]
@@ -2929,10 +3057,10 @@ checksum = "dc487311295e0002e452025d6b580b77bb17286de87b57138f3b5db711cded68"
dependencies = [
"beef",
"fnv",
- "proc-macro2 1.0.69",
- "quote 1.0.33",
+ "proc-macro2 1.0.76",
+ "quote 1.0.35",
"regex-syntax 0.6.29",
- "syn 2.0.39",
+ "syn 2.0.48",
]
[[package]]
@@ -2946,9 +3074,9 @@ dependencies = [
[[package]]
name = "mach2"
-version = "0.4.1"
+version = "0.4.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6d0d1830bcd151a6fc4aea1369af235b36c1528fe976b8ff678683c9995eade8"
+checksum = "19b955cdeb2a02b9117f121ce63aa52d08ade45de53e48fe6a38b39c10f6f709"
dependencies = [
"libc",
]
@@ -2986,9 +3114,9 @@ dependencies = [
[[package]]
name = "memchr"
-version = "2.6.4"
+version = "2.7.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f665ee40bc4a3c5590afb1e9677db74a508659dfd71e126420da8274909a0167"
+checksum = "523dc4f511e55ab87b694dc30d0f820d60906ef06413f93d4d7a1385599cc149"
[[package]]
name = "memoffset"
@@ -2999,33 +3127,24 @@ dependencies = [
"autocfg 1.1.0",
]
-[[package]]
-name = "memoffset"
-version = "0.9.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5a634b1c61a95585bd15607c6ab0c4e5b226e695ff2800ba0cdccddf208c406c"
-dependencies = [
- "autocfg 1.1.0",
-]
-
[[package]]
name = "metrics"
version = "0.21.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fde3af1a009ed76a778cb84fdef9e7dbbdf5775ae3e4cc1f434a6a307f6f76c5"
dependencies = [
- "ahash 0.8.6",
+ "ahash 0.8.7",
"metrics-macros",
"portable-atomic",
]
[[package]]
name = "metrics-exporter-prometheus"
-version = "0.12.1"
+version = "0.12.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8a4964177ddfdab1e3a2b37aec7cf320e14169abb0ed73999f558136409178d5"
+checksum = "1d4fa7ce7c4862db464a37b0b31d89bca874562f034bd7993895572783d02950"
dependencies = [
- "base64 0.21.5",
+ "base64 0.21.6",
"hyper",
"indexmap 1.9.3",
"ipnet",
@@ -3039,13 +3158,13 @@ dependencies = [
[[package]]
name = "metrics-macros"
-version = "0.7.0"
+version = "0.7.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ddece26afd34c31585c74a4db0630c376df271c285d682d1e55012197830b6df"
+checksum = "38b4faf00617defe497754acde3024865bc143d44a86799b24e191ecff91354f"
dependencies = [
- "proc-macro2 1.0.69",
- "quote 1.0.33",
- "syn 2.0.39",
+ "proc-macro2 1.0.76",
+ "quote 1.0.35",
+ "syn 2.0.48",
]
[[package]]
@@ -3054,8 +3173,8 @@ version = "0.15.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4de2ed6e491ed114b40b732e4d1659a9d53992ebd87490c44a6ffe23739d973e"
dependencies = [
- "crossbeam-epoch 0.9.15",
- "crossbeam-utils 0.8.16",
+ "crossbeam-epoch 0.9.18",
+ "crossbeam-utils 0.8.19",
"hashbrown 0.13.1",
"metrics",
"num_cpus",
@@ -3081,9 +3200,9 @@ version = "5.10.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "49e7bc1560b95a3c4a25d03de42fe76ca718ab92d1a22a55b9b4cf67b3ae635c"
dependencies = [
- "proc-macro2 1.0.69",
- "quote 1.0.33",
- "syn 2.0.39",
+ "proc-macro2 1.0.76",
+ "quote 1.0.35",
+ "syn 2.0.48",
]
[[package]]
@@ -3104,12 +3223,12 @@ dependencies = [
[[package]]
name = "mini-moka"
-version = "0.10.2"
+version = "0.10.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "23e0b72e7c9042467008b10279fc732326bd605459ae03bda88825909dd19b56"
+checksum = "c325dfab65f261f386debee8b0969da215b3fa0037e74c8a1234db7ba986d803"
dependencies = [
- "crossbeam-channel 0.5.8",
- "crossbeam-utils 0.8.16",
+ "crossbeam-channel 0.5.11",
+ "crossbeam-utils 0.8.19",
"dashmap",
"skeptic",
"smallvec",
@@ -3134,13 +3253,13 @@ dependencies = [
[[package]]
name = "mio"
-version = "0.8.9"
+version = "0.8.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3dce281c5e46beae905d4de1870d8b1509a9142b62eedf18b443b011ca8343d0"
+checksum = "8f3d0b296e374a4e6f3c7b0a1f5a51d748a0d34c85e7dc48fc3fa9a87657fe09"
dependencies = [
"libc",
"wasi 0.11.0+wasi-snapshot-preview1",
- "windows-sys",
+ "windows-sys 0.48.0",
]
[[package]]
@@ -3163,7 +3282,9 @@ dependencies = [
"zk_evm 1.3.1",
"zk_evm 1.3.3 (git+https://github.com/matter-labs/era-zk_evm.git?tag=v1.3.3-rc2)",
"zk_evm 1.4.0",
+ "zk_evm 1.4.1",
"zkevm_test_harness 1.4.0",
+ "zkevm_test_harness 1.4.1",
"zksync_contracts",
"zksync_state",
"zksync_system_constants",
@@ -3208,8 +3329,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c168194d373b1e134786274020dae7fc5513d565ea2ebb9bc9ff17ffb69106d4"
dependencies = [
"either",
- "proc-macro2 1.0.69",
- "quote 1.0.33",
+ "proc-macro2 1.0.76",
+ "quote 1.0.35",
"serde",
"syn 1.0.109",
]
@@ -3355,8 +3476,8 @@ version = "0.3.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "876a53fff98e03a936a674b29568b0e605f06b29372c2489ff4de23f1949743d"
dependencies = [
- "proc-macro2 1.0.69",
- "quote 1.0.33",
+ "proc-macro2 1.0.76",
+ "quote 1.0.35",
"syn 1.0.109",
]
@@ -3452,25 +3573,25 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "96667db765a921f7b295ffee8b60472b686a51d4f21c2ee4ffdb94c7013b65a6"
dependencies = [
"proc-macro-crate 1.3.1",
- "proc-macro2 1.0.69",
- "quote 1.0.33",
- "syn 2.0.39",
+ "proc-macro2 1.0.76",
+ "quote 1.0.35",
+ "syn 2.0.48",
]
[[package]]
name = "object"
-version = "0.32.1"
+version = "0.32.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9cf5f9dd3933bd50a9e1f149ec995f39ae2c496d31fd772c1fd45ebc27e902b0"
+checksum = "a6a622008b6e321afc04970976f62ee297fdbaa6f95318ca343e3eebb9648441"
dependencies = [
"memchr",
]
[[package]]
name = "once_cell"
-version = "1.18.0"
+version = "1.19.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d"
+checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92"
[[package]]
name = "oorandom"
@@ -3486,9 +3607,9 @@ checksum = "624a8340c38c1b80fd549087862da4ba43e08858af025b236e509b6649fc13d5"
[[package]]
name = "openssl"
-version = "0.10.59"
+version = "0.10.62"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7a257ad03cd8fb16ad4172fedf8094451e1af1c4b70097636ef2eac9a5f0cc33"
+checksum = "8cde4d2d9200ad5909f8dac647e29482e07c3a35de8a13fce7c9c7747ad9f671"
dependencies = [
"bitflags 2.4.1",
"cfg-if 1.0.0",
@@ -3505,9 +3626,9 @@ version = "0.1.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c"
dependencies = [
- "proc-macro2 1.0.69",
- "quote 1.0.33",
- "syn 2.0.39",
+ "proc-macro2 1.0.76",
+ "quote 1.0.35",
+ "syn 2.0.48",
]
[[package]]
@@ -3518,9 +3639,9 @@ checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf"
[[package]]
name = "openssl-sys"
-version = "0.9.95"
+version = "0.9.98"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "40a4130519a360279579c2053038317e40eff64d13fd3f004f9e1b72b8a6aaf9"
+checksum = "c1665caf8ab2dc9aef43d1c0023bd904633a6a05cb30b0ad59bec2ae986e57a7"
dependencies = [
"cc",
"libc",
@@ -3641,15 +3762,15 @@ dependencies = [
[[package]]
name = "parity-scale-codec"
-version = "3.6.5"
+version = "3.6.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0dec8a8073036902368c2cdc0387e85ff9a37054d7e7c98e592145e0c92cd4fb"
+checksum = "881331e34fa842a2fb61cc2db9643a8fedc615e47cfcc52597d1af0db9a7e8fe"
dependencies = [
"arrayvec 0.7.4",
"bitvec 1.0.1",
"byte-slice-cast",
"impl-trait-for-tuples",
- "parity-scale-codec-derive 3.6.5",
+ "parity-scale-codec-derive 3.6.9",
"serde",
]
@@ -3660,20 +3781,20 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1557010476e0595c9b568d16dcfb81b93cdeb157612726f5170d31aa707bed27"
dependencies = [
"proc-macro-crate 1.3.1",
- "proc-macro2 1.0.69",
- "quote 1.0.33",
+ "proc-macro2 1.0.76",
+ "quote 1.0.35",
"syn 1.0.109",
]
[[package]]
name = "parity-scale-codec-derive"
-version = "3.6.5"
+version = "3.6.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "312270ee71e1cd70289dacf597cab7b207aa107d2f28191c2ae45b2ece18a260"
+checksum = "be30eaf4b0a9fba5336683b38de57bb86d179a35862ba6bfcf57625d006bde5b"
dependencies = [
- "proc-macro-crate 1.3.1",
- "proc-macro2 1.0.69",
- "quote 1.0.33",
+ "proc-macro-crate 2.0.0",
+ "proc-macro2 1.0.76",
+ "quote 1.0.35",
"syn 1.0.109",
]
@@ -3697,7 +3818,7 @@ dependencies = [
"libc",
"redox_syscall",
"smallvec",
- "windows-targets",
+ "windows-targets 0.48.5",
]
[[package]]
@@ -3764,15 +3885,15 @@ dependencies = [
[[package]]
name = "percent-encoding"
-version = "2.3.0"
+version = "2.3.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9b2a4787296e9989611394c33f193f676704af1686e70b8f8033ab5ba9a35a94"
+checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e"
[[package]]
name = "pest"
-version = "2.7.5"
+version = "2.7.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ae9cee2a55a544be8b89dc6848072af97a20f2422603c10865be2a42b580fff5"
+checksum = "1f200d8d83c44a45b21764d1916299752ca035d15ecd46faca3e9a2a2bf6ad06"
dependencies = [
"memchr",
"thiserror",
@@ -3781,9 +3902,9 @@ dependencies = [
[[package]]
name = "pest_derive"
-version = "2.7.5"
+version = "2.7.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "81d78524685f5ef2a3b3bd1cafbc9fcabb036253d9b1463e726a91cd16e2dfc2"
+checksum = "bcd6ab1236bbdb3a49027e920e693192ebfe8913f6d60e294de57463a493cfde"
dependencies = [
"pest",
"pest_generator",
@@ -3791,22 +3912,22 @@ dependencies = [
[[package]]
name = "pest_generator"
-version = "2.7.5"
+version = "2.7.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "68bd1206e71118b5356dae5ddc61c8b11e28b09ef6a31acbd15ea48a28e0c227"
+checksum = "2a31940305ffc96863a735bef7c7994a00b325a7138fdbc5bda0f1a0476d3275"
dependencies = [
"pest",
"pest_meta",
- "proc-macro2 1.0.69",
- "quote 1.0.33",
- "syn 2.0.39",
+ "proc-macro2 1.0.76",
+ "quote 1.0.35",
+ "syn 2.0.48",
]
[[package]]
name = "pest_meta"
-version = "2.7.5"
+version = "2.7.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7c747191d4ad9e4a4ab9c8798f1e82a39affe7ef9648390b7e5548d18e099de6"
+checksum = "a7ff62f5259e53b78d1af898941cdcdccfae7385cf7d793a6e55de5d05bb4b7d"
dependencies = [
"once_cell",
"pest",
@@ -3838,9 +3959,9 @@ version = "1.1.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4359fd9c9171ec6e8c62926d6faaf553a8dc3f64e1507e76da7911b4f6a04405"
dependencies = [
- "proc-macro2 1.0.69",
- "quote 1.0.33",
- "syn 2.0.39",
+ "proc-macro2 1.0.76",
+ "quote 1.0.35",
+ "syn 2.0.48",
]
[[package]]
@@ -3863,7 +3984,7 @@ checksum = "c8ffb9f10fa047879315e6625af03c164b16962a5368d724ed16323b68ace47f"
dependencies = [
"der 0.7.8",
"pkcs8 0.10.2",
- "spki 0.7.2",
+ "spki 0.7.3",
]
[[package]]
@@ -3883,20 +4004,20 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f950b2377845cebe5cf8b5165cb3cc1a5e0fa5cfa3e1f7f55707d8fd82e0a7b7"
dependencies = [
"der 0.7.8",
- "spki 0.7.2",
+ "spki 0.7.3",
]
[[package]]
name = "pkg-config"
-version = "0.3.27"
+version = "0.3.28"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "26072860ba924cbfa98ea39c8c19b4dd6a4a25423dbdf219c1eca91aa0cf6964"
+checksum = "69d3587f8a9e599cc7ec2c00e331f71c4e69a5f9a4b8a6efd5b07466b9736f9a"
[[package]]
name = "platforms"
-version = "3.2.0"
+version = "3.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "14e6ab3f592e6fb464fc9712d8d6e6912de6473954635fd76a589d832cffcbb0"
+checksum = "626dec3cac7cc0e1577a2ec3fc496277ec2baa084bebad95bb6fdbfae235f84c"
[[package]]
name = "plotters"
@@ -3928,9 +4049,9 @@ dependencies = [
[[package]]
name = "portable-atomic"
-version = "1.5.1"
+version = "1.6.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3bccab0e7fd7cc19f820a1c8c91720af652d0c88dc9664dd72aef2614f04af3b"
+checksum = "7170ef9988bc169ba16dd36a7fa041e5c4cbeb6a35b76d4c03daded371eae7c0"
[[package]]
name = "powerfmt"
@@ -3946,12 +4067,12 @@ checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de"
[[package]]
name = "prettyplease"
-version = "0.2.15"
+version = "0.2.16"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ae005bd773ab59b4725093fd7df83fd7892f7d8eafb48dbd7de6e024e4215f9d"
+checksum = "a41cf62165e97c7f814d2221421dbb9afcbcdb0a88068e5ea206e19951c2cbb5"
dependencies = [
- "proc-macro2 1.0.69",
- "syn 2.0.39",
+ "proc-macro2 1.0.76",
+ "syn 2.0.48",
]
[[package]]
@@ -3992,12 +4113,20 @@ dependencies = [
[[package]]
name = "proc-macro-crate"
-version = "2.0.1"
+version = "2.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "97dc5fea232fc28d2f597b37c4876b348a40e33f3b02cc975c8d006d78d94b1a"
+checksum = "7e8366a6159044a37876a2b9817124296703c586a5c92e2c53751fa06d8d43e8"
dependencies = [
- "toml_datetime",
- "toml_edit 0.20.2",
+ "toml_edit 0.20.7",
+]
+
+[[package]]
+name = "proc-macro-crate"
+version = "3.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6b2685dd208a3771337d8d386a89840f0f43cd68be8dae90a5f8c2384effc9cd"
+dependencies = [
+ "toml_edit 0.21.0",
]
[[package]]
@@ -4007,8 +4136,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c"
dependencies = [
"proc-macro-error-attr",
- "proc-macro2 1.0.69",
- "quote 1.0.33",
+ "proc-macro2 1.0.76",
+ "quote 1.0.35",
"syn 1.0.109",
"version_check",
]
@@ -4019,8 +4148,8 @@ version = "1.0.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869"
dependencies = [
- "proc-macro2 1.0.69",
- "quote 1.0.33",
+ "proc-macro2 1.0.76",
+ "quote 1.0.35",
"version_check",
]
@@ -4041,9 +4170,9 @@ dependencies = [
[[package]]
name = "proc-macro2"
-version = "1.0.69"
+version = "1.0.76"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "134c189feb4956b20f6f547d2cf727d4c0fe06722b20a0eec87ed445a97f92da"
+checksum = "95fc56cda0b5c3325f5fbbd7ff9fda9e02bb00bb3dac51252d2f1bfa1cb8cc8c"
dependencies = [
"unicode-ident",
]
@@ -4066,9 +4195,9 @@ version = "0.4.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "440f724eba9f6996b75d63681b0a92b06947f1457076d503a4d2e2c8f56442b8"
dependencies = [
- "proc-macro2 1.0.69",
- "quote 1.0.33",
- "syn 2.0.39",
+ "proc-macro2 1.0.76",
+ "quote 1.0.35",
+ "syn 2.0.48",
]
[[package]]
@@ -4105,9 +4234,9 @@ dependencies = [
[[package]]
name = "prost"
-version = "0.12.2"
+version = "0.12.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5a5a410fc7882af66deb8d01d01737353cf3ad6204c408177ba494291a626312"
+checksum = "146c289cda302b98a28d40c8b3b90498d6e526dd24ac2ecea73e4e491685b94a"
dependencies = [
"bytes",
"prost-derive",
@@ -4115,9 +4244,9 @@ dependencies = [
[[package]]
name = "prost-build"
-version = "0.12.2"
+version = "0.12.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1fa3d084c8704911bfefb2771be2f9b6c5c0da7343a71e0021ee3c665cada738"
+checksum = "c55e02e35260070b6f716a2423c2ff1c3bb1642ddca6f99e1f26d06268a0e2d2"
dependencies = [
"bytes",
"heck 0.4.1",
@@ -4130,22 +4259,22 @@ dependencies = [
"prost",
"prost-types",
"regex",
- "syn 2.0.39",
+ "syn 2.0.48",
"tempfile",
"which",
]
[[package]]
name = "prost-derive"
-version = "0.12.2"
+version = "0.12.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "065717a5dfaca4a83d2fe57db3487b311365200000551d7a364e715dbf4346bc"
+checksum = "efb6c9a1dd1def8e2124d17e83a20af56f1570d6c2d2bd9e266ccb768df3840e"
dependencies = [
"anyhow",
"itertools 0.11.0",
- "proc-macro2 1.0.69",
- "quote 1.0.33",
- "syn 2.0.39",
+ "proc-macro2 1.0.76",
+ "quote 1.0.35",
+ "syn 2.0.48",
]
[[package]]
@@ -4154,7 +4283,7 @@ version = "0.12.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "057237efdb71cf4b3f9396302a3d6599a92fa94063ba537b66130980ea9909f3"
dependencies = [
- "base64 0.21.5",
+ "base64 0.21.6",
"logos",
"miette",
"once_cell",
@@ -4166,9 +4295,9 @@ dependencies = [
[[package]]
name = "prost-types"
-version = "0.12.2"
+version = "0.12.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8339f32236f590281e2f6368276441394fcd1b2133b549cc895d0ae80f2f9a52"
+checksum = "193898f59edcf43c26227dcd4c8427f00d99d61e95dcde58dabd49fa291d470e"
dependencies = [
"prost",
]
@@ -4215,8 +4344,8 @@ version = "0.1.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "16b845dbfca988fa33db069c0e230574d15a3088f147a87b64c7589eb662c9ac"
dependencies = [
- "proc-macro2 1.0.69",
- "quote 1.0.33",
+ "proc-macro2 1.0.76",
+ "quote 1.0.35",
"syn 1.0.109",
]
@@ -4237,7 +4366,7 @@ version = "0.11.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a17e662a7a8291a865152364c20c7abc5e60486ab2001e8ec10b24862de0b9ab"
dependencies = [
- "crossbeam-utils 0.8.16",
+ "crossbeam-utils 0.8.19",
"libc",
"mach2",
"once_cell",
@@ -4279,11 +4408,11 @@ dependencies = [
[[package]]
name = "quote"
-version = "1.0.33"
+version = "1.0.35"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae"
+checksum = "291ec9ab5efd934aaf503a6466c5d5251535d108ee747472c3977cc5acc868ef"
dependencies = [
- "proc-macro2 1.0.69",
+ "proc-macro2 1.0.76",
]
[[package]]
@@ -4412,7 +4541,7 @@ version = "0.6.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c"
dependencies = [
- "getrandom 0.2.11",
+ "getrandom 0.2.12",
]
[[package]]
@@ -4520,8 +4649,8 @@ version = "1.12.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5ce3fb6ad83f861aac485e76e1985cd109d9a3713802152be56c3b1f0e0658ed"
dependencies = [
- "crossbeam-deque 0.8.3",
- "crossbeam-utils 0.8.16",
+ "crossbeam-deque 0.8.5",
+ "crossbeam-utils 0.8.19",
]
[[package]]
@@ -4597,11 +4726,11 @@ dependencies = [
[[package]]
name = "reqwest"
-version = "0.11.22"
+version = "0.11.23"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "046cd98826c46c2ac8ddecae268eb5c2e58628688a5fc7a2643704a73faba95b"
+checksum = "37b1ae8d9ac08420c66222fb9096fc5de435c3c48542bc5336c51892cffafb41"
dependencies = [
- "base64 0.21.5",
+ "base64 0.21.6",
"bytes",
"encoding_rs",
"futures-core",
@@ -4694,6 +4823,16 @@ dependencies = [
"zeroize",
]
+[[package]]
+name = "rfc6979"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f8dd2a808d456c4a54e300a23e9f5a67e122c3024119acbfd73e3bf664491cb2"
+dependencies = [
+ "hmac 0.12.1",
+ "subtle",
+]
+
[[package]]
name = "ring"
version = "0.16.20"
@@ -4711,16 +4850,16 @@ dependencies = [
[[package]]
name = "ring"
-version = "0.17.5"
+version = "0.17.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fb0205304757e5d899b9c2e448b867ffd03ae7f988002e47cd24954391394d0b"
+checksum = "688c63d65483050968b2a8937f7995f443e27041a0f7700aa59b0822aedebb74"
dependencies = [
"cc",
- "getrandom 0.2.11",
+ "getrandom 0.2.12",
"libc",
"spin 0.9.8",
"untrusted 0.9.0",
- "windows-sys",
+ "windows-sys 0.48.0",
]
[[package]]
@@ -4758,8 +4897,8 @@ version = "0.7.43"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b5c462a1328c8e67e4d6dbad1eb0355dd43e8ab432c6e227a43657f16ade5033"
dependencies = [
- "proc-macro2 1.0.69",
- "quote 1.0.33",
+ "proc-macro2 1.0.76",
+ "quote 1.0.35",
"syn 1.0.109",
]
@@ -4785,9 +4924,9 @@ dependencies = [
[[package]]
name = "rsa"
-version = "0.9.5"
+version = "0.9.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "af6c4b23d99685a1408194da11270ef8e9809aff951cc70ec9b17350b087e474"
+checksum = "5d0e5124fcb30e76a7e79bfee683a2746db83784b86289f6251b54b7950a0dfc"
dependencies = [
"const-oid",
"digest 0.10.7",
@@ -4798,7 +4937,7 @@ dependencies = [
"pkcs8 0.10.2",
"rand_core 0.6.4",
"signature 2.2.0",
- "spki 0.7.2",
+ "spki 0.7.3",
"subtle",
"zeroize",
]
@@ -4848,25 +4987,25 @@ dependencies = [
[[package]]
name = "rustix"
-version = "0.38.21"
+version = "0.38.28"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2b426b0506e5d50a7d8dafcf2e81471400deb602392c7dd110815afb4eaf02a3"
+checksum = "72e572a5e8ca657d7366229cdde4bd14c4eb5499a9573d4d366fe1b599daa316"
dependencies = [
"bitflags 2.4.1",
"errno",
"libc",
"linux-raw-sys",
- "windows-sys",
+ "windows-sys 0.52.0",
]
[[package]]
name = "rustls"
-version = "0.21.8"
+version = "0.21.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "446e14c5cda4f3f30fe71863c34ec70f5ac79d6087097ad0bb433e1be5edf04c"
+checksum = "f9d5a6813c0759e4609cd494e8e725babae6a2ca7b62a5536a13daaec6fcb7ba"
dependencies = [
"log",
- "ring 0.17.5",
+ "ring 0.17.7",
"rustls-webpki",
"sct",
]
@@ -4877,7 +5016,7 @@ version = "1.0.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1c74cae0a4cf6ccbbf5f359f08efdf8ee7e1dc532573bf0db71968cb56b1448c"
dependencies = [
- "base64 0.21.5",
+ "base64 0.21.6",
]
[[package]]
@@ -4886,7 +5025,7 @@ version = "0.101.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8b6275d1ee7a1cd780b64aca7726599a1dbc893b1e64144529e55c3c2f745765"
dependencies = [
- "ring 0.17.5",
+ "ring 0.17.7",
"untrusted 0.9.0",
]
@@ -4910,9 +5049,9 @@ dependencies = [
[[package]]
name = "ryu"
-version = "1.0.15"
+version = "1.0.16"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1ad4cc8da4ef723ed60bced201181d83791ad433213d8c24efffda1eec85d741"
+checksum = "f98d2aa92eebf49b69786be48e4477826b256916e84a57ff2a4f21923b48eb4c"
[[package]]
name = "salsa20"
@@ -4934,11 +5073,11 @@ dependencies = [
[[package]]
name = "schannel"
-version = "0.1.22"
+version = "0.1.23"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0c3733bf4cf7ea0880754e19cb5a462007c4a8c1914bff372ccc95b464f1df88"
+checksum = "fbc91545643bcf3a0bbb6569265615222618bdf33ce4ffbbd13c4bbd4c093534"
dependencies = [
- "windows-sys",
+ "windows-sys 0.52.0",
]
[[package]]
@@ -4969,7 +5108,7 @@ version = "0.7.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "da046153aa2352493d6cb7da4b6e5c0c057d8a1d0a9aa8560baffdd945acd414"
dependencies = [
- "ring 0.17.5",
+ "ring 0.17.7",
"untrusted 0.9.0",
]
@@ -4985,7 +5124,7 @@ version = "0.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3be24c1842290c45df0a7bf069e0c268a747ad05a192f2fd7dcfdbc1cba40928"
dependencies = [
- "base16ct",
+ "base16ct 0.1.1",
"der 0.6.1",
"generic-array",
"pkcs8 0.9.0",
@@ -4993,6 +5132,20 @@ dependencies = [
"zeroize",
]
+[[package]]
+name = "sec1"
+version = "0.7.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d3e97a565f76233a6003f9f5c54be1d9c5bdfa3eccfb189469f11ec4901c47dc"
+dependencies = [
+ "base16ct 0.2.0",
+ "der 0.7.8",
+ "generic-array",
+ "pkcs8 0.10.2",
+ "subtle",
+ "zeroize",
+]
+
[[package]]
name = "secp256k1"
version = "0.20.3"
@@ -5055,9 +5208,9 @@ dependencies = [
[[package]]
name = "semver"
-version = "1.0.20"
+version = "1.0.21"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "836fa6a3e1e547f9a2c4040802ec865b5d85f4014efe00555d7090a3dcaa1090"
+checksum = "b97ed7a9823b74f99c7742f5336af7be5ecd3eeafcb1507d1fa93347b1d589b0"
dependencies = [
"serde",
]
@@ -5178,9 +5331,9 @@ checksum = "a3f0bf26fd526d2a95683cd0f87bf103b8539e2ca1ef48ce002d67aad59aa0b4"
[[package]]
name = "serde"
-version = "1.0.192"
+version = "1.0.195"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bca2a08484b285dcb282d0f67b26cadc0df8b19f8c12502c13d966bf9482f001"
+checksum = "63261df402c67811e9ac6def069e4786148c4563f4b50fd4bf30aa370d626b02"
dependencies = [
"serde_derive",
]
@@ -5197,20 +5350,20 @@ dependencies = [
[[package]]
name = "serde_derive"
-version = "1.0.192"
+version = "1.0.195"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d6c7207fbec9faa48073f3e3074cbe553af6ea512d7c21ba46e434e70ea9fbc1"
+checksum = "46fe8f8603d81ba86327b23a2e9cdf49e1255fb94a4c5f297f6ee0547178ea2c"
dependencies = [
- "proc-macro2 1.0.69",
- "quote 1.0.33",
- "syn 2.0.39",
+ "proc-macro2 1.0.76",
+ "quote 1.0.35",
+ "syn 2.0.48",
]
[[package]]
name = "serde_json"
-version = "1.0.108"
+version = "1.0.111"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3d1c7e3eac408d115102c4c24ad393e0821bb3a5df4d506a80f85f7a742a526b"
+checksum = "176e46fa42316f18edd598015a5166857fc835ec732f5215eac6b7bdbf0a84f4"
dependencies = [
"itoa",
"ryu",
@@ -5247,8 +5400,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e182d6ec6f05393cc0e5ed1bf81ad6db3a8feedf8ee515ecdd369809bcce8082"
dependencies = [
"darling",
- "proc-macro2 1.0.69",
- "quote 1.0.33",
+ "proc-macro2 1.0.76",
+ "quote 1.0.35",
"syn 1.0.109",
]
@@ -5340,13 +5493,13 @@ dependencies = [
[[package]]
name = "shivini"
version = "0.1.0"
-source = "git+https://github.com/matter-labs/era-shivini.git?branch=main#bb3d4ad1fa454d7be54a819cc0c16561806c49fe"
+source = "git+https://github.com/matter-labs/era-shivini.git?branch=v1.4.1#a788f4007c4a63529f6715897556f169938a6a36"
dependencies = [
"bincode",
"blake2 0.10.6 (registry+https://github.com/rust-lang/crates.io-index)",
"boojum",
"boojum-cuda",
- "circuit_definitions",
+ "circuit_definitions 0.1.0 (git+https://github.com/matter-labs/era-zkevm_test_harness.git?branch=v1.4.1)",
"cudart",
"derivative",
"hex",
@@ -5475,7 +5628,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7b5fac59a5cb5dd637972e5fca70daf0523c9067fcdc4842f053dae04a18f8e9"
dependencies = [
"libc",
- "windows-sys",
+ "windows-sys 0.48.0",
]
[[package]]
@@ -5505,9 +5658,9 @@ dependencies = [
[[package]]
name = "spki"
-version = "0.7.2"
+version = "0.7.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9d1e996ef02c474957d681f1b05213dfb0abab947b446a62d37770b23500184a"
+checksum = "d91ed6c858b01f942cd56b37a94b3e0a1798290327d1236e4d9cf4eaca44d29d"
dependencies = [
"base64ct",
"der 0.7.8",
@@ -5549,14 +5702,14 @@ version = "0.7.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d84b0a3c3739e220d94b3239fd69fb1f74bc36e16643423bd99de3b43c21bfbd"
dependencies = [
- "ahash 0.8.6",
+ "ahash 0.8.7",
"atoi",
"bigdecimal",
"byteorder",
"bytes",
"chrono",
"crc",
- "crossbeam-queue 0.3.8",
+ "crossbeam-queue 0.3.11",
"dotenvy",
"either",
"event-listener",
@@ -5594,8 +5747,8 @@ version = "0.7.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "89961c00dc4d7dffb7aee214964b065072bff69e36ddb9e2c107541f75e4f2a5"
dependencies = [
- "proc-macro2 1.0.69",
- "quote 1.0.33",
+ "proc-macro2 1.0.76",
+ "quote 1.0.35",
"sqlx-core",
"sqlx-macros-core",
"syn 1.0.109",
@@ -5613,8 +5766,8 @@ dependencies = [
"heck 0.4.1",
"hex",
"once_cell",
- "proc-macro2 1.0.69",
- "quote 1.0.33",
+ "proc-macro2 1.0.76",
+ "quote 1.0.35",
"serde",
"serde_json",
"sha2 0.10.8",
@@ -5635,7 +5788,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e37195395df71fd068f6e2082247891bc11e3289624bbc776a0cdfa1ca7f1ea4"
dependencies = [
"atoi",
- "base64 0.21.5",
+ "base64 0.21.6",
"bigdecimal",
"bitflags 2.4.1",
"byteorder",
@@ -5680,7 +5833,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d6ac0ac3b7ccd10cc96c7ab29791a7dd236bd94021f31eec7ba3d46a74aa1c24"
dependencies = [
"atoi",
- "base64 0.21.5",
+ "base64 0.21.6",
"bigdecimal",
"bitflags 2.4.1",
"byteorder",
@@ -5795,8 +5948,8 @@ checksum = "dcb5ae327f9cc13b68763b5749770cb9e048a99bd9dfdfa58d0cf05d5f64afe0"
dependencies = [
"heck 0.3.3",
"proc-macro-error",
- "proc-macro2 1.0.69",
- "quote 1.0.33",
+ "proc-macro2 1.0.76",
+ "quote 1.0.35",
"syn 1.0.109",
]
@@ -5816,8 +5969,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1e385be0d24f186b4ce2f9982191e7101bb737312ad61c1f2f984f34bcf85d59"
dependencies = [
"heck 0.4.1",
- "proc-macro2 1.0.69",
- "quote 1.0.33",
+ "proc-macro2 1.0.76",
+ "quote 1.0.35",
"rustversion",
"syn 1.0.109",
]
@@ -5845,19 +5998,19 @@ version = "1.0.109"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237"
dependencies = [
- "proc-macro2 1.0.69",
- "quote 1.0.33",
+ "proc-macro2 1.0.76",
+ "quote 1.0.35",
"unicode-ident",
]
[[package]]
name = "syn"
-version = "2.0.39"
+version = "2.0.48"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "23e78b90f2fcf45d3e842032ce32e3f2d1545ba6636271dcbf24fa306d87be7a"
+checksum = "0f3531638e407dfc0814761abb7c00a5b54992b849452a0646b7f65c9f770f3f"
dependencies = [
- "proc-macro2 1.0.69",
- "quote 1.0.33",
+ "proc-macro2 1.0.76",
+ "quote 1.0.35",
"unicode-ident",
]
@@ -5868,9 +6021,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1329189c02ff984e9736652b1631330da25eaa6bc639089ed4915d25446cbe7b"
dependencies = [
"proc-macro-error",
- "proc-macro2 1.0.69",
- "quote 1.0.33",
- "syn 2.0.39",
+ "proc-macro2 1.0.76",
+ "quote 1.0.35",
+ "syn 2.0.48",
]
[[package]]
@@ -5931,35 +6084,45 @@ checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369"
[[package]]
name = "tempfile"
-version = "3.8.1"
+version = "3.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7ef1adac450ad7f4b3c28589471ade84f25f731a7a0fe30d71dfa9f60fd808e5"
+checksum = "01ce4141aa927a6d1bd34a041795abd0db1cccba5d5f24b009f694bdf3a1f3fa"
dependencies = [
"cfg-if 1.0.0",
"fastrand",
"redox_syscall",
"rustix",
- "windows-sys",
+ "windows-sys 0.52.0",
]
[[package]]
name = "termcolor"
-version = "1.3.0"
+version = "1.4.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6093bad37da69aab9d123a8091e4be0aa4a03e4d601ec641c327398315f62b64"
+checksum = "06794f8f6c5c898b3275aebefa6b8a1cb24cd2c6c79397ab15774837a0bc5755"
dependencies = [
"winapi-util",
]
[[package]]
name = "test-log"
-version = "0.2.13"
+version = "0.2.14"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f66edd6b6cd810743c0c71e1d085e92b01ce6a72782032e3f794c8284fe4bcdd"
+checksum = "6159ab4116165c99fc88cce31f99fa2c9dbe08d3691cb38da02fc3b45f357d2b"
dependencies = [
- "proc-macro2 1.0.69",
- "quote 1.0.33",
- "syn 2.0.39",
+ "env_logger 0.10.1",
+ "test-log-macros",
+]
+
+[[package]]
+name = "test-log-macros"
+version = "0.2.14"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7ba277e77219e9eea169e8508942db1bf5d8a41ff2db9b20aab5a5aadc9fa25d"
+dependencies = [
+ "proc-macro2 1.0.76",
+ "quote 1.0.35",
+ "syn 2.0.48",
]
[[package]]
@@ -5973,22 +6136,22 @@ dependencies = [
[[package]]
name = "thiserror"
-version = "1.0.50"
+version = "1.0.56"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f9a7210f5c9a7156bb50aa36aed4c95afb51df0df00713949448cf9e97d382d2"
+checksum = "d54378c645627613241d077a3a79db965db602882668f9136ac42af9ecb730ad"
dependencies = [
"thiserror-impl",
]
[[package]]
name = "thiserror-impl"
-version = "1.0.50"
+version = "1.0.56"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "266b2e40bc00e5a6c09c3584011e08b06f123c00362c92b975ba9843aaaa14b8"
+checksum = "fa0faa943b50f3db30a20aa7e265dbc66076993efed8463e8de414e5d06d3471"
dependencies = [
- "proc-macro2 1.0.69",
- "quote 1.0.33",
- "syn 2.0.39",
+ "proc-macro2 1.0.76",
+ "quote 1.0.35",
+ "syn 2.0.48",
]
[[package]]
@@ -6012,9 +6175,9 @@ dependencies = [
[[package]]
name = "time"
-version = "0.3.30"
+version = "0.3.31"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c4a34ab300f2dee6e562c10a046fc05e358b29f9bf92277f30c3c8d82275f6f5"
+checksum = "f657ba42c3f86e7680e53c8cd3af8abbe56b5491790b46e22e19c0d57463583e"
dependencies = [
"deranged",
"itoa",
@@ -6032,9 +6195,9 @@ checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3"
[[package]]
name = "time-macros"
-version = "0.2.15"
+version = "0.2.16"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4ad70d68dba9e1f8aceda7aa6711965dfec1cac869f311a51bd08b3a2ccbce20"
+checksum = "26197e33420244aeb70c3e8c78376ca46571bc4e701e4791c2cd9f57dcb3a43f"
dependencies = [
"time-core",
]
@@ -6084,9 +6247,9 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20"
[[package]]
name = "tokio"
-version = "1.34.0"
+version = "1.35.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d0c014766411e834f7af5b8f4cf46257aab4036ca95e9d2c144a10f59ad6f5b9"
+checksum = "c89b4efa943be685f629b149f53829423f8f5531ea21249408e8e2f8671ec104"
dependencies = [
"backtrace",
"bytes",
@@ -6098,7 +6261,7 @@ dependencies = [
"signal-hook-registry",
"socket2 0.5.5",
"tokio-macros",
- "windows-sys",
+ "windows-sys 0.48.0",
]
[[package]]
@@ -6107,9 +6270,9 @@ version = "2.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5b8a1e28f2deaa14e508979454cb3a223b10b938b45af148bc0986de36f1923b"
dependencies = [
- "proc-macro2 1.0.69",
- "quote 1.0.33",
- "syn 2.0.39",
+ "proc-macro2 1.0.76",
+ "quote 1.0.35",
+ "syn 2.0.48",
]
[[package]]
@@ -6159,9 +6322,9 @@ dependencies = [
[[package]]
name = "toml_datetime"
-version = "0.6.3"
+version = "0.6.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7cda73e2f1397b1262d6dfdcef8aafae14d1de7748d66822d3bfeeb6d03e5e4b"
+checksum = "3550f4e9685620ac18a50ed434eb3aec30db8ba93b0287467bca5826ea25baf1"
[[package]]
name = "toml_edit"
@@ -6187,9 +6350,20 @@ dependencies = [
[[package]]
name = "toml_edit"
-version = "0.20.2"
+version = "0.20.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "396e4d48bbb2b7554c944bde63101b5ae446cff6ec4a24227428f15eb72ef338"
+checksum = "70f427fce4d84c72b5b732388bf4a9f4531b53f74e2887e3ecb2481f68f66d81"
+dependencies = [
+ "indexmap 2.1.0",
+ "toml_datetime",
+ "winnow",
+]
+
+[[package]]
+name = "toml_edit"
+version = "0.21.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d34d383cd00a163b4a5b85053df514d45bc330f6de7737edfe0a93311d1eaa03"
dependencies = [
"indexmap 2.1.0",
"toml_datetime",
@@ -6220,9 +6394,9 @@ version = "0.1.27"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7"
dependencies = [
- "proc-macro2 1.0.69",
- "quote 1.0.33",
- "syn 2.0.39",
+ "proc-macro2 1.0.76",
+ "quote 1.0.35",
+ "syn 2.0.48",
]
[[package]]
@@ -6237,9 +6411,9 @@ dependencies = [
[[package]]
name = "tracing-log"
-version = "0.1.4"
+version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f751112709b4e791d8ce53e32c4ed2d353565a795ce84da2285393f41557bdf2"
+checksum = "ee855f1f400bd0e5c02d150ae5de3840039a3f54b025156404e34c23c03f47c3"
dependencies = [
"log",
"once_cell",
@@ -6258,9 +6432,9 @@ dependencies = [
[[package]]
name = "tracing-subscriber"
-version = "0.3.17"
+version = "0.3.18"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "30a651bc37f915e81f087d86e62a18eec5f79550c7faff886f7090b4ea757c77"
+checksum = "ad0f048c97dbd9faa9b7df56362b8ebcaa52adb06b498c050d2f4e32f90a7a8b"
dependencies = [
"matchers",
"nu-ansi-term",
@@ -6280,15 +6454,15 @@ dependencies = [
[[package]]
name = "triomphe"
-version = "0.1.9"
+version = "0.1.11"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0eee8098afad3fb0c54a9007aab6804558410503ad676d4633f9c2559a00ac0f"
+checksum = "859eb650cfee7434994602c3a68b25d77ad9e68c8a6cd491616ef86661382eb3"
[[package]]
name = "try-lock"
-version = "0.2.4"
+version = "0.2.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3528ecfd12c466c6f163363caf2d02a71161dd5e1cc6ae7b34207ea2d42d81ed"
+checksum = "e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b"
[[package]]
name = "typenum"
@@ -6340,9 +6514,9 @@ dependencies = [
[[package]]
name = "unicode-bidi"
-version = "0.3.13"
+version = "0.3.14"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "92888ba5573ff080736b3648696b70cafad7d250551175acbaa4e0385b3e1460"
+checksum = "6f2528f27a9eb2b21e69c95319b30bd0efd85d09c379741b0f78ea1d86be2416"
[[package]]
name = "unicode-ident"
@@ -6395,7 +6569,7 @@ version = "0.1.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5ad948c1cb799b1a70f836077721a92a35ac177d4daddf4c20a633786d4cf618"
dependencies = [
- "quote 1.0.33",
+ "quote 1.0.35",
"syn 1.0.109",
]
@@ -6413,11 +6587,11 @@ checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1"
[[package]]
name = "ureq"
-version = "2.8.0"
+version = "2.9.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f5ccd538d4a604753ebc2f17cd9946e89b77bf87f6a8e2309667c6f2e87855e3"
+checksum = "f8cdd25c339e200129fe4de81451814e5228c9b771d57378817d6117cc2b3f97"
dependencies = [
- "base64 0.21.5",
+ "base64 0.21.6",
"log",
"native-tls",
"once_cell",
@@ -6426,12 +6600,12 @@ dependencies = [
[[package]]
name = "url"
-version = "2.4.1"
+version = "2.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "143b538f18257fac9cad154828a57c6bf5157e1aa604d4816b5995bf6de87ae5"
+checksum = "31e6302e3bb753d46e83516cae55ae196fc0c309407cf11ab35cc51a4c2a4633"
dependencies = [
"form_urlencoded",
- "idna",
+ "idna 0.5.0",
"percent-encoding",
"serde",
]
@@ -6444,9 +6618,9 @@ checksum = "daf8dba3b7eb870caf1ddeed7bc9d2a049f3cfdfae7cb521b087cc33ae4c49da"
[[package]]
name = "uuid"
-version = "1.5.0"
+version = "1.6.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "88ad59a7560b41a70d191093a945f0b87bc1deeda46fb237479708a1d6b6cdfc"
+checksum = "5e395fcf16a7a3d8127ec99782007af141946b4795001f876d54fb0d55978560"
dependencies = [
"serde",
]
@@ -6506,9 +6680,9 @@ name = "vise-macros"
version = "0.1.0"
source = "git+https://github.com/matter-labs/vise.git?rev=1c9cc500e92cf9ea052b230e114a6f9cce4fb2c1#1c9cc500e92cf9ea052b230e114a6f9cce4fb2c1"
dependencies = [
- "proc-macro2 1.0.69",
- "quote 1.0.33",
- "syn 2.0.39",
+ "proc-macro2 1.0.76",
+ "quote 1.0.35",
+ "syn 2.0.48",
]
[[package]]
@@ -6517,7 +6691,7 @@ version = "0.1.0"
dependencies = [
"anyhow",
"bincode",
- "circuit_definitions",
+ "circuit_definitions 0.1.0 (git+https://github.com/matter-labs/era-zkevm_test_harness.git?branch=v1.4.1)",
"itertools 0.10.5",
"once_cell",
"proptest",
@@ -6529,7 +6703,7 @@ dependencies = [
"toml_edit 0.14.4",
"tracing",
"vlog",
- "zkevm_test_harness 1.4.0",
+ "zkevm_test_harness 1.4.1",
"zksync_config",
"zksync_env_config",
"zksync_prover_fri_types",
@@ -6589,9 +6763,9 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
[[package]]
name = "wasm-bindgen"
-version = "0.2.88"
+version = "0.2.89"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7daec296f25a1bae309c0cd5c29c4b260e510e6d813c286b19eaadf409d40fce"
+checksum = "0ed0d4f68a3015cc185aff4db9506a015f4b96f95303897bfa23f846db54064e"
dependencies = [
"cfg-if 1.0.0",
"wasm-bindgen-macro",
@@ -6599,24 +6773,24 @@ dependencies = [
[[package]]
name = "wasm-bindgen-backend"
-version = "0.2.88"
+version = "0.2.89"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e397f4664c0e4e428e8313a469aaa58310d302159845980fd23b0f22a847f217"
+checksum = "1b56f625e64f3a1084ded111c4d5f477df9f8c92df113852fa5a374dbda78826"
dependencies = [
"bumpalo",
"log",
"once_cell",
- "proc-macro2 1.0.69",
- "quote 1.0.33",
- "syn 2.0.39",
+ "proc-macro2 1.0.76",
+ "quote 1.0.35",
+ "syn 2.0.48",
"wasm-bindgen-shared",
]
[[package]]
name = "wasm-bindgen-futures"
-version = "0.4.38"
+version = "0.4.39"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9afec9963e3d0994cac82455b2b3502b81a7f40f9a0d32181f7528d9f4b43e02"
+checksum = "ac36a15a220124ac510204aec1c3e5db8a22ab06fd6706d881dc6149f8ed9a12"
dependencies = [
"cfg-if 1.0.0",
"js-sys",
@@ -6626,32 +6800,32 @@ dependencies = [
[[package]]
name = "wasm-bindgen-macro"
-version = "0.2.88"
+version = "0.2.89"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5961017b3b08ad5f3fe39f1e79877f8ee7c23c5e5fd5eb80de95abc41f1f16b2"
+checksum = "0162dbf37223cd2afce98f3d0785506dcb8d266223983e4b5b525859e6e182b2"
dependencies = [
- "quote 1.0.33",
+ "quote 1.0.35",
"wasm-bindgen-macro-support",
]
[[package]]
name = "wasm-bindgen-macro-support"
-version = "0.2.88"
+version = "0.2.89"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c5353b8dab669f5e10f5bd76df26a9360c748f054f862ff5f3f8aae0c7fb3907"
+checksum = "f0eb82fcb7930ae6219a7ecfd55b217f5f0893484b7a13022ebb2b2bf20b5283"
dependencies = [
- "proc-macro2 1.0.69",
- "quote 1.0.33",
- "syn 2.0.39",
+ "proc-macro2 1.0.76",
+ "quote 1.0.35",
+ "syn 2.0.48",
"wasm-bindgen-backend",
"wasm-bindgen-shared",
]
[[package]]
name = "wasm-bindgen-shared"
-version = "0.2.88"
+version = "0.2.89"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0d046c5d029ba91a1ed14da14dca44b68bf2f124cfbaf741c54151fdb3e0750b"
+checksum = "7ab9b36309365056cd639da3134bf87fa8f3d86008abf99e612384a6eecd459f"
[[package]]
name = "wasm-streams"
@@ -6668,9 +6842,9 @@ dependencies = [
[[package]]
name = "web-sys"
-version = "0.3.65"
+version = "0.3.66"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5db499c5f66323272151db0e666cd34f78617522fb0c1604d31a27c50c206a85"
+checksum = "50c24a44ec86bb68fbecd1b3efed7e85ea5621b39b35ef2766b66cd984f8010f"
dependencies = [
"js-sys",
"wasm-bindgen",
@@ -6683,16 +6857,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5388522c899d1e1c96a4c307e3797e0f697ba7c77dd8e0e625ecba9dd0342937"
dependencies = [
"arrayvec 0.7.4",
- "base64 0.21.5",
+ "base64 0.21.6",
"bytes",
"derive_more",
"ethabi",
"ethereum-types 0.14.1",
- "futures 0.3.29",
+ "futures 0.3.30",
"futures-timer",
"headers",
"hex",
- "idna",
+ "idna 0.4.0",
"jsonrpc-core",
"log",
"once_cell",
@@ -6709,9 +6883,9 @@ dependencies = [
[[package]]
name = "webpki-roots"
-version = "0.25.2"
+version = "0.25.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "14247bb57be4f377dfb94c72830b8ce8fc6beac03cf4bf7b9732eadd414123fc"
+checksum = "1778a42e8b3b90bff8d0f5032bf22250792889a5cdc752aa0020c84abe3aaf10"
[[package]]
name = "which"
@@ -6764,11 +6938,11 @@ checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
[[package]]
name = "windows-core"
-version = "0.51.1"
+version = "0.52.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f1f8cf84f35d2db49a46868f947758c7a1138116f7fac3bc844f43ade1292e64"
+checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9"
dependencies = [
- "windows-targets",
+ "windows-targets 0.52.0",
]
[[package]]
@@ -6777,7 +6951,16 @@ version = "0.48.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9"
dependencies = [
- "windows-targets",
+ "windows-targets 0.48.5",
+]
+
+[[package]]
+name = "windows-sys"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d"
+dependencies = [
+ "windows-targets 0.52.0",
]
[[package]]
@@ -6786,13 +6969,28 @@ version = "0.48.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c"
dependencies = [
- "windows_aarch64_gnullvm",
- "windows_aarch64_msvc",
- "windows_i686_gnu",
- "windows_i686_msvc",
- "windows_x86_64_gnu",
- "windows_x86_64_gnullvm",
- "windows_x86_64_msvc",
+ "windows_aarch64_gnullvm 0.48.5",
+ "windows_aarch64_msvc 0.48.5",
+ "windows_i686_gnu 0.48.5",
+ "windows_i686_msvc 0.48.5",
+ "windows_x86_64_gnu 0.48.5",
+ "windows_x86_64_gnullvm 0.48.5",
+ "windows_x86_64_msvc 0.48.5",
+]
+
+[[package]]
+name = "windows-targets"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8a18201040b24831fbb9e4eb208f8892e1f50a37feb53cc7ff887feb8f50e7cd"
+dependencies = [
+ "windows_aarch64_gnullvm 0.52.0",
+ "windows_aarch64_msvc 0.52.0",
+ "windows_i686_gnu 0.52.0",
+ "windows_i686_msvc 0.52.0",
+ "windows_x86_64_gnu 0.52.0",
+ "windows_x86_64_gnullvm 0.52.0",
+ "windows_x86_64_msvc 0.52.0",
]
[[package]]
@@ -6801,47 +6999,89 @@ version = "0.48.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8"
+[[package]]
+name = "windows_aarch64_gnullvm"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "cb7764e35d4db8a7921e09562a0304bf2f93e0a51bfccee0bd0bb0b666b015ea"
+
[[package]]
name = "windows_aarch64_msvc"
version = "0.48.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc"
+[[package]]
+name = "windows_aarch64_msvc"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bbaa0368d4f1d2aaefc55b6fcfee13f41544ddf36801e793edbbfd7d7df075ef"
+
[[package]]
name = "windows_i686_gnu"
version = "0.48.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e"
+[[package]]
+name = "windows_i686_gnu"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a28637cb1fa3560a16915793afb20081aba2c92ee8af57b4d5f28e4b3e7df313"
+
[[package]]
name = "windows_i686_msvc"
version = "0.48.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406"
+[[package]]
+name = "windows_i686_msvc"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ffe5e8e31046ce6230cc7215707b816e339ff4d4d67c65dffa206fd0f7aa7b9a"
+
[[package]]
name = "windows_x86_64_gnu"
version = "0.48.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e"
+[[package]]
+name = "windows_x86_64_gnu"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3d6fa32db2bc4a2f5abeacf2b69f7992cd09dca97498da74a151a3132c26befd"
+
[[package]]
name = "windows_x86_64_gnullvm"
version = "0.48.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc"
+[[package]]
+name = "windows_x86_64_gnullvm"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1a657e1e9d3f514745a572a6846d3c7aa7dbe1658c056ed9c3344c4109a6949e"
+
[[package]]
name = "windows_x86_64_msvc"
version = "0.48.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538"
+[[package]]
+name = "windows_x86_64_msvc"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "dff9641d1cd4be8d1a070daf9e3773c5f67e78b4d9d42263020c057706765c04"
+
[[package]]
name = "winnow"
-version = "0.5.19"
+version = "0.5.33"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "829846f3e3db426d4cee4510841b71a8e58aa2a76b1132579487ae430ccd9c7b"
+checksum = "b7520bbdec7211caa7c4e682eb1fbe07abe20cee6756b6e00f537c82c11816aa"
dependencies = [
"memchr",
]
@@ -6853,7 +7093,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "524e57b2c537c0f9b1e69f1965311ec12182b4122e45035b1508cd24d2adadb1"
dependencies = [
"cfg-if 1.0.0",
- "windows-sys",
+ "windows-sys 0.48.0",
]
[[package]]
@@ -6873,29 +7113,29 @@ dependencies = [
[[package]]
name = "zerocopy"
-version = "0.7.25"
+version = "0.7.32"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8cd369a67c0edfef15010f980c3cbe45d7f651deac2cd67ce097cd801de16557"
+checksum = "74d4d3961e53fa4c9a25a8637fc2bfaf2595b3d3ae34875568a5cf64787716be"
dependencies = [
"zerocopy-derive",
]
[[package]]
name = "zerocopy-derive"
-version = "0.7.25"
+version = "0.7.32"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c2f140bda219a26ccc0cdb03dba58af72590c53b22642577d88a927bc5c87d6b"
+checksum = "9ce1b18ccd8e73a9321186f97e46f9f04b778851177567b1975109d26a08d2a6"
dependencies = [
- "proc-macro2 1.0.69",
- "quote 1.0.33",
- "syn 2.0.39",
+ "proc-macro2 1.0.76",
+ "quote 1.0.35",
+ "syn 2.0.48",
]
[[package]]
name = "zeroize"
-version = "1.6.0"
+version = "1.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2a0956f1ba7c7909bfb66c2e9e4124ab6f6482560f6628b5aaeba39207c9aad9"
+checksum = "525b4ec142c6b68a2d10f01f7bbf6755599ca3f81ea53b8431b7dd348f5fdb2d"
dependencies = [
"zeroize_derive",
]
@@ -6906,9 +7146,9 @@ version = "1.4.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69"
dependencies = [
- "proc-macro2 1.0.69",
- "quote 1.0.33",
- "syn 2.0.39",
+ "proc-macro2 1.0.76",
+ "quote 1.0.35",
+ "syn 2.0.48",
]
[[package]]
@@ -6917,7 +7157,7 @@ version = "1.3.1"
source = "git+https://github.com/matter-labs/era-zk_evm.git?tag=v1.3.1-rc2#0a7c775932db4839ff6b7fb0db9bdb3583ab54c0"
dependencies = [
"blake2 0.10.6 (git+https://github.com/RustCrypto/hashes.git?rev=1f727ce37ff40fa0cce84eb8543a45bdd3ca4a4e)",
- "k256",
+ "k256 0.11.6",
"lazy_static",
"num 0.4.1",
"serde",
@@ -6939,7 +7179,7 @@ dependencies = [
"serde",
"serde_json",
"static_assertions",
- "zk_evm_abstractions",
+ "zk_evm_abstractions 0.1.0",
"zkevm_opcode_defs 1.3.2",
]
@@ -6954,7 +7194,7 @@ dependencies = [
"serde",
"serde_json",
"static_assertions",
- "zk_evm_abstractions",
+ "zk_evm_abstractions 0.1.0",
"zkevm_opcode_defs 1.3.2",
]
@@ -6969,10 +7209,25 @@ dependencies = [
"serde",
"serde_json",
"static_assertions",
- "zk_evm_abstractions",
+ "zk_evm_abstractions 0.1.0",
"zkevm_opcode_defs 1.3.2",
]
+[[package]]
+name = "zk_evm"
+version = "1.4.1"
+source = "git+https://github.com/matter-labs/era-zk_evm.git?branch=v1.4.1#6250dbf64b2d14ced87a127735da559f27a432d5"
+dependencies = [
+ "anyhow",
+ "lazy_static",
+ "num 0.4.1",
+ "serde",
+ "serde_json",
+ "static_assertions",
+ "zk_evm_abstractions 1.4.1",
+ "zkevm_opcode_defs 1.4.1",
+]
+
[[package]]
name = "zk_evm_abstractions"
version = "0.1.0"
@@ -6985,6 +7240,18 @@ dependencies = [
"zkevm_opcode_defs 1.3.2",
]
+[[package]]
+name = "zk_evm_abstractions"
+version = "1.4.1"
+source = "git+https://github.com/matter-labs/era-zk_evm_abstractions.git?branch=v1.4.1#0aac08c3b097ee8147e748475117ac46bddcdcef"
+dependencies = [
+ "anyhow",
+ "num_enum",
+ "serde",
+ "static_assertions",
+ "zkevm_opcode_defs 1.4.1",
+]
+
[[package]]
name = "zkevm-assembly"
version = "1.3.2"
@@ -7004,6 +7271,25 @@ dependencies = [
"zkevm_opcode_defs 1.3.2",
]
+[[package]]
+name = "zkevm-assembly"
+version = "1.3.2"
+source = "git+https://github.com/matter-labs/era-zkEVM-assembly.git?branch=v1.4.1#50282016d01bd2fd147021dd558209778db2268b"
+dependencies = [
+ "env_logger 0.9.3",
+ "hex",
+ "lazy_static",
+ "log",
+ "nom",
+ "num-bigint 0.4.4",
+ "num-traits",
+ "sha3 0.10.8",
+ "smallvec",
+ "structopt",
+ "thiserror",
+ "zkevm_opcode_defs 1.4.1",
+]
+
[[package]]
name = "zkevm_circuits"
version = "1.4.0"
@@ -7025,6 +7311,27 @@ dependencies = [
"zkevm_opcode_defs 1.3.2",
]
+[[package]]
+name = "zkevm_circuits"
+version = "1.4.1"
+source = "git+https://github.com/matter-labs/era-zkevm_circuits.git?branch=v1.4.1#70234e99c2492740226b9f40091e7fccc7ef28e9"
+dependencies = [
+ "arrayvec 0.7.4",
+ "bincode",
+ "boojum",
+ "cs_derive 0.1.0 (git+https://github.com/matter-labs/era-boojum?branch=main)",
+ "derivative",
+ "hex",
+ "itertools 0.10.5",
+ "rand 0.4.6",
+ "rand 0.8.5",
+ "seq-macro",
+ "serde",
+ "serde_json",
+ "smallvec",
+ "zkevm_opcode_defs 1.4.1",
+]
+
[[package]]
name = "zkevm_opcode_defs"
version = "1.3.1"
@@ -7044,12 +7351,26 @@ dependencies = [
"bitflags 2.4.1",
"blake2 0.10.6 (git+https://github.com/RustCrypto/hashes.git?rev=1f727ce37ff40fa0cce84eb8543a45bdd3ca4a4e)",
"ethereum-types 0.14.1",
- "k256",
+ "k256 0.11.6",
"lazy_static",
"sha2 0.10.6",
"sha3 0.10.6",
]
+[[package]]
+name = "zkevm_opcode_defs"
+version = "1.4.1"
+source = "git+https://github.com/matter-labs/era-zkevm_opcode_defs.git?branch=v1.4.1#ba8228ff0582d21f64d6a319d50d0aec48e9e7b6"
+dependencies = [
+ "bitflags 2.4.1",
+ "blake2 0.10.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "ethereum-types 0.14.1",
+ "k256 0.13.3",
+ "lazy_static",
+ "sha2 0.10.8",
+ "sha3 0.10.8",
+]
+
[[package]]
name = "zkevm_test_harness"
version = "1.3.3"
@@ -7058,9 +7379,9 @@ dependencies = [
"bincode",
"circuit_testing",
"codegen 0.2.0",
- "crossbeam 0.8.2",
+ "crossbeam 0.8.4",
"derivative",
- "env_logger 0.10.1",
+ "env_logger 0.9.3",
"hex",
"num-bigint 0.4.4",
"num-integer",
@@ -7074,20 +7395,20 @@ dependencies = [
"test-log",
"tracing",
"zk_evm 1.3.3 (git+https://github.com/matter-labs/era-zk_evm.git?branch=v1.3.3)",
- "zkevm-assembly",
+ "zkevm-assembly 1.3.2 (git+https://github.com/matter-labs/era-zkEVM-assembly.git?branch=v1.3.2)",
]
[[package]]
name = "zkevm_test_harness"
version = "1.4.0"
-source = "git+https://github.com/matter-labs/era-zkevm_test_harness.git?branch=v1.4.0#d2e3670e0c5115b7cc7cc24e6d3dbdd17a214aad"
+source = "git+https://github.com/matter-labs/era-zkevm_test_harness.git?branch=v1.4.0#fb47657ae3b6ff6e4bb5199964d3d37212978200"
dependencies = [
"bincode",
- "circuit_definitions",
+ "circuit_definitions 0.1.0 (git+https://github.com/matter-labs/era-zkevm_test_harness.git?branch=v1.4.0)",
"codegen 0.2.0",
- "crossbeam 0.8.2",
+ "crossbeam 0.8.4",
"derivative",
- "env_logger 0.10.1",
+ "env_logger 0.9.3",
"hex",
"rand 0.4.6",
"rayon",
@@ -7097,7 +7418,36 @@ dependencies = [
"structopt",
"test-log",
"tracing",
- "zkevm-assembly",
+ "zkevm-assembly 1.3.2 (git+https://github.com/matter-labs/era-zkEVM-assembly.git?branch=v1.3.2)",
+]
+
+[[package]]
+name = "zkevm_test_harness"
+version = "1.4.1"
+source = "git+https://github.com/matter-labs/era-zkevm_test_harness.git?branch=v1.4.1#44975f894aff0893b5f98e34d0e364375390bcb8"
+dependencies = [
+ "bincode",
+ "circuit_definitions 0.1.0 (git+https://github.com/matter-labs/era-zkevm_test_harness.git?branch=v1.4.1)",
+ "codegen 0.2.0",
+ "crossbeam 0.8.4",
+ "curl",
+ "derivative",
+ "env_logger 0.9.3",
+ "hex",
+ "lazy_static",
+ "rand 0.4.6",
+ "rayon",
+ "reqwest",
+ "rescue_poseidon 0.4.1 (git+https://github.com/matter-labs/rescue-poseidon.git?branch=poseidon2)",
+ "serde",
+ "serde_json",
+ "smallvec",
+ "snark_wrapper",
+ "structopt",
+ "test-log",
+ "tracing",
+ "walkdir",
+ "zkevm-assembly 1.3.2 (git+https://github.com/matter-labs/era-zkEVM-assembly.git?branch=v1.4.1)",
]
[[package]]
@@ -7112,7 +7462,7 @@ dependencies = [
[[package]]
name = "zksync_concurrency"
version = "0.1.0"
-source = "git+https://github.com/matter-labs/era-consensus.git?rev=84cdd9e45fd84bc1fac0b394c899ae33aef91afa#84cdd9e45fd84bc1fac0b394c899ae33aef91afa"
+source = "git+https://github.com/matter-labs/era-consensus.git?rev=5727a3e0b22470bb90092388f9125bcb366df613#5727a3e0b22470bb90092388f9125bcb366df613"
dependencies = [
"anyhow",
"once_cell",
@@ -7139,7 +7489,7 @@ dependencies = [
[[package]]
name = "zksync_consensus_crypto"
version = "0.1.0"
-source = "git+https://github.com/matter-labs/era-consensus.git?rev=84cdd9e45fd84bc1fac0b394c899ae33aef91afa#84cdd9e45fd84bc1fac0b394c899ae33aef91afa"
+source = "git+https://github.com/matter-labs/era-consensus.git?rev=5727a3e0b22470bb90092388f9125bcb366df613#5727a3e0b22470bb90092388f9125bcb366df613"
dependencies = [
"anyhow",
"blst",
@@ -7157,7 +7507,7 @@ dependencies = [
[[package]]
name = "zksync_consensus_roles"
version = "0.1.0"
-source = "git+https://github.com/matter-labs/era-consensus.git?rev=84cdd9e45fd84bc1fac0b394c899ae33aef91afa#84cdd9e45fd84bc1fac0b394c899ae33aef91afa"
+source = "git+https://github.com/matter-labs/era-consensus.git?rev=5727a3e0b22470bb90092388f9125bcb366df613#5727a3e0b22470bb90092388f9125bcb366df613"
dependencies = [
"anyhow",
"bit-vec",
@@ -7177,7 +7527,7 @@ dependencies = [
[[package]]
name = "zksync_consensus_storage"
version = "0.1.0"
-source = "git+https://github.com/matter-labs/era-consensus.git?rev=84cdd9e45fd84bc1fac0b394c899ae33aef91afa#84cdd9e45fd84bc1fac0b394c899ae33aef91afa"
+source = "git+https://github.com/matter-labs/era-consensus.git?rev=5727a3e0b22470bb90092388f9125bcb366df613#5727a3e0b22470bb90092388f9125bcb366df613"
dependencies = [
"anyhow",
"async-trait",
@@ -7185,6 +7535,7 @@ dependencies = [
"rand 0.8.5",
"thiserror",
"tracing",
+ "vise",
"zksync_concurrency",
"zksync_consensus_roles",
"zksync_protobuf",
@@ -7194,7 +7545,7 @@ dependencies = [
[[package]]
name = "zksync_consensus_utils"
version = "0.1.0"
-source = "git+https://github.com/matter-labs/era-consensus.git?rev=84cdd9e45fd84bc1fac0b394c899ae33aef91afa#84cdd9e45fd84bc1fac0b394c899ae33aef91afa"
+source = "git+https://github.com/matter-labs/era-consensus.git?rev=5727a3e0b22470bb90092388f9125bcb366df613#5727a3e0b22470bb90092388f9125bcb366df613"
dependencies = [
"thiserror",
"zksync_concurrency",
@@ -7276,7 +7627,7 @@ name = "zksync_health_check"
version = "0.1.0"
dependencies = [
"async-trait",
- "futures 0.3.29",
+ "futures 0.3.30",
"serde",
"serde_json",
"tokio",
@@ -7321,7 +7672,7 @@ dependencies = [
"async-trait",
"bincode",
"ctrlc",
- "futures 0.3.29",
+ "futures 0.3.30",
"prometheus_exporter",
"reqwest",
"structopt",
@@ -7330,7 +7681,7 @@ dependencies = [
"vise",
"vk_setup_data_generator_server_fri",
"vlog",
- "zkevm_test_harness 1.4.0",
+ "zkevm_test_harness 1.4.1",
"zksync_config",
"zksync_dal",
"zksync_env_config",
@@ -7344,7 +7695,7 @@ dependencies = [
[[package]]
name = "zksync_protobuf"
version = "0.1.0"
-source = "git+https://github.com/matter-labs/era-consensus.git?rev=84cdd9e45fd84bc1fac0b394c899ae33aef91afa#84cdd9e45fd84bc1fac0b394c899ae33aef91afa"
+source = "git+https://github.com/matter-labs/era-consensus.git?rev=5727a3e0b22470bb90092388f9125bcb366df613#5727a3e0b22470bb90092388f9125bcb366df613"
dependencies = [
"anyhow",
"bit-vec",
@@ -7362,17 +7713,17 @@ dependencies = [
[[package]]
name = "zksync_protobuf_build"
version = "0.1.0"
-source = "git+https://github.com/matter-labs/era-consensus.git?rev=84cdd9e45fd84bc1fac0b394c899ae33aef91afa#84cdd9e45fd84bc1fac0b394c899ae33aef91afa"
+source = "git+https://github.com/matter-labs/era-consensus.git?rev=5727a3e0b22470bb90092388f9125bcb366df613#5727a3e0b22470bb90092388f9125bcb366df613"
dependencies = [
"anyhow",
"heck 0.4.1",
"prettyplease",
- "proc-macro2 1.0.69",
+ "proc-macro2 1.0.76",
"prost-build",
"prost-reflect",
"protox",
- "quote 1.0.33",
- "syn 2.0.39",
+ "quote 1.0.35",
+ "syn 2.0.48",
]
[[package]]
@@ -7381,9 +7732,9 @@ version = "0.1.0"
dependencies = [
"anyhow",
"async-trait",
- "circuit_definitions",
+ "circuit_definitions 0.1.0 (git+https://github.com/matter-labs/era-zkevm_test_harness.git?branch=v1.4.1)",
"ctrlc",
- "futures 0.3.29",
+ "futures 0.3.30",
"local-ip-address",
"prometheus_exporter",
"regex",
@@ -7395,7 +7746,7 @@ dependencies = [
"vise",
"vk_setup_data_generator_server_fri",
"vlog",
- "zkevm_test_harness 1.4.0",
+ "zkevm_test_harness 1.4.1",
"zksync_config",
"zksync_dal",
"zksync_env_config",
@@ -7414,7 +7765,7 @@ dependencies = [
"anyhow",
"async-trait",
"ctrlc",
- "futures 0.3.29",
+ "futures 0.3.30",
"log",
"prometheus_exporter",
"reqwest",
@@ -7435,7 +7786,7 @@ dependencies = [
name = "zksync_prover_fri_types"
version = "0.1.0"
dependencies = [
- "circuit_definitions",
+ "circuit_definitions 0.1.0 (git+https://github.com/matter-labs/era-zkevm_test_harness.git?branch=v1.4.1)",
"serde",
"zksync_object_store",
"zksync_types",
@@ -7538,8 +7889,10 @@ dependencies = [
"thiserror",
"zk_evm 1.3.3 (git+https://github.com/matter-labs/era-zk_evm.git?tag=v1.3.3-rc2)",
"zk_evm 1.4.0",
+ "zk_evm 1.4.1",
"zkevm_test_harness 1.3.3",
"zksync_basic_types",
+ "zksync_config",
"zksync_consensus_roles",
"zksync_contracts",
"zksync_mini_merkle_tree",
@@ -7555,7 +7908,7 @@ version = "0.1.0"
dependencies = [
"anyhow",
"bigdecimal",
- "futures 0.3.29",
+ "futures 0.3.30",
"hex",
"itertools 0.10.5",
"metrics",
@@ -7577,10 +7930,10 @@ dependencies = [
"anyhow",
"async-trait",
"bincode",
- "circuit_definitions",
+ "circuit_definitions 0.1.0 (git+https://github.com/matter-labs/era-zkevm_test_harness.git?branch=v1.4.1)",
"const-decoder",
"ctrlc",
- "futures 0.3.29",
+ "futures 0.3.30",
"hex",
"multivm",
"prometheus_exporter",
@@ -7593,8 +7946,8 @@ dependencies = [
"vise",
"vk_setup_data_generator_server_fri",
"vlog",
- "zk_evm 1.4.0",
- "zkevm_test_harness 1.4.0",
+ "zk_evm 1.4.1",
+ "zkevm_test_harness 1.4.1",
"zksync_config",
"zksync_dal",
"zksync_env_config",
@@ -7616,7 +7969,7 @@ dependencies = [
"async-trait",
"bincode",
"ctrlc",
- "futures 0.3.29",
+ "futures 0.3.30",
"prometheus_exporter",
"queues",
"serde",
diff --git a/prover/proof_fri_compressor/Cargo.toml b/prover/proof_fri_compressor/Cargo.toml
index 659f1fb4ceb4..068de147497c 100644
--- a/prover/proof_fri_compressor/Cargo.toml
+++ b/prover/proof_fri_compressor/Cargo.toml
@@ -20,7 +20,7 @@ zksync_queued_job_processor = { path = "../../core/lib/queued_job_processor" }
vk_setup_data_generator_server_fri = { path = "../vk_setup_data_generator_server_fri" }
vlog = { path = "../../core/lib/vlog" }
-zkevm_test_harness = { git = "https://github.com/matter-labs/era-zkevm_test_harness.git", branch = "v1.4.0" }
+zkevm_test_harness = { git = "https://github.com/matter-labs/era-zkevm_test_harness.git", branch = "v1.4.1" }
anyhow = "1.0"
tracing = "0.1"
diff --git a/prover/prover_fri/Cargo.toml b/prover/prover_fri/Cargo.toml
index dca42c966d27..45ab5e966731 100644
--- a/prover/prover_fri/Cargo.toml
+++ b/prover/prover_fri/Cargo.toml
@@ -20,13 +20,13 @@ zksync_prover_fri_utils = { path = "../prover_fri_utils" }
zksync_prover_fri_types = { path = "../prover_fri_types" }
zksync_utils = { path = "../../core/lib/utils" }
vk_setup_data_generator_server_fri = { path = "../vk_setup_data_generator_server_fri" }
-shivini = { git = "https://github.com/matter-labs/era-shivini.git", branch = "main", optional = true, features = [
+shivini = { git = "https://github.com/matter-labs/era-shivini.git", branch = "v1.4.1", optional = true, features = [
"circuit_definitions",
"zksync",
] }
-zkevm_test_harness = { git = "https://github.com/matter-labs/era-zkevm_test_harness.git", branch = "v1.4.0" }
-circuit_definitions = { git = "https://github.com/matter-labs/era-zkevm_test_harness.git", branch = "v1.4.0", features = [
+zkevm_test_harness = { git = "https://github.com/matter-labs/era-zkevm_test_harness.git", branch = "v1.4.1" }
+circuit_definitions = { git = "https://github.com/matter-labs/era-zkevm_test_harness.git", branch = "v1.4.1", features = [
"log_tracing",
] }
diff --git a/prover/prover_fri_types/Cargo.toml b/prover/prover_fri_types/Cargo.toml
index 9f84afe2207c..bcb609d31caf 100644
--- a/prover/prover_fri_types/Cargo.toml
+++ b/prover/prover_fri_types/Cargo.toml
@@ -8,7 +8,7 @@ edition = "2021"
zksync_object_store = { path = "../../core/lib/object_store" }
zksync_types = { path = "../../core/lib/types" }
-circuit_definitions = { git = "https://github.com/matter-labs/era-zkevm_test_harness.git", branch = "v1.4.0", features = [
+circuit_definitions = { git = "https://github.com/matter-labs/era-zkevm_test_harness.git", branch = "v1.4.1", features = [
"log_tracing",
] }
diff --git a/prover/setup-data-cpu-keys.json b/prover/setup-data-cpu-keys.json
index 1a0427e53463..8b7a9165e2c2 100644
--- a/prover/setup-data-cpu-keys.json
+++ b/prover/setup-data-cpu-keys.json
@@ -1,5 +1,5 @@
{
- "us": "gs://matterlabs-setup-data-us/e2e94ff/",
- "europe": "gs://matterlabs-setup-data-europe/e2e94ff/",
- "asia": "gs://matterlabs-setup-data-asia/e2e94ff/"
+ "us": "gs://matterlabs-setup-data-us/8ef5506/",
+ "europe": "gs://matterlabs-setup-data-europe/8ef5506/",
+ "asia": "gs://matterlabs-setup-data-asia/8ef5506/"
}
diff --git a/prover/setup-data-gpu-keys.json b/prover/setup-data-gpu-keys.json
index 295d43ddaa4a..38057979f61b 100644
--- a/prover/setup-data-gpu-keys.json
+++ b/prover/setup-data-gpu-keys.json
@@ -1,5 +1,5 @@
{
- "us": "gs://matterlabs-setup-data-us/5e22273-gpu/",
- "europe": "gs://matterlabs-setup-data-europe/5e22273-gpu/",
- "asia": "gs://matterlabs-setup-data-asia/5e22273-gpu/"
+ "us": "gs://matterlabs-setup-data-us/8ef5506-gpu/",
+ "europe": "gs://matterlabs-setup-data-europe/8ef5506-gpu/",
+ "asia": "gs://matterlabs-setup-data-asia/8ef5506-gpu/"
}
diff --git a/prover/vk_setup_data_generator_server_fri/Cargo.toml b/prover/vk_setup_data_generator_server_fri/Cargo.toml
index 6186f121b25b..31941bfafb73 100644
--- a/prover/vk_setup_data_generator_server_fri/Cargo.toml
+++ b/prover/vk_setup_data_generator_server_fri/Cargo.toml
@@ -25,11 +25,11 @@ vlog = { path = "../../core/lib/vlog" }
zksync_types = { path = "../../core/lib/types" }
zksync_prover_fri_types = { path = "../prover_fri_types" }
-zkevm_test_harness = { git = "https://github.com/matter-labs/era-zkevm_test_harness.git", branch = "v1.4.0" }
-circuit_definitions = { git = "https://github.com/matter-labs/era-zkevm_test_harness.git", branch = "v1.4.0", features = [
+zkevm_test_harness = { git = "https://github.com/matter-labs/era-zkevm_test_harness.git", branch = "v1.4.1" }
+circuit_definitions = { git = "https://github.com/matter-labs/era-zkevm_test_harness.git", branch = "v1.4.1", features = [
"log_tracing",
] }
-shivini = { git = "https://github.com/matter-labs/era-shivini.git", branch = "main", optional = true }
+shivini = { git = "https://github.com/matter-labs/era-shivini.git", branch = "v1.4.1", optional = true }
zksync_config = { path = "../../core/lib/config" }
zksync_env_config = { path = "../../core/lib/env_config" }
diff --git a/prover/vk_setup_data_generator_server_fri/data/finalization_hints_basic_1.bin b/prover/vk_setup_data_generator_server_fri/data/finalization_hints_basic_1.bin
index be9b474bd0dc..f1af57a5cdfe 100644
Binary files a/prover/vk_setup_data_generator_server_fri/data/finalization_hints_basic_1.bin and b/prover/vk_setup_data_generator_server_fri/data/finalization_hints_basic_1.bin differ
diff --git a/prover/vk_setup_data_generator_server_fri/data/finalization_hints_basic_5.bin b/prover/vk_setup_data_generator_server_fri/data/finalization_hints_basic_5.bin
index efed390e9107..4ef8ad2edd4e 100644
Binary files a/prover/vk_setup_data_generator_server_fri/data/finalization_hints_basic_5.bin and b/prover/vk_setup_data_generator_server_fri/data/finalization_hints_basic_5.bin differ
diff --git a/prover/vk_setup_data_generator_server_fri/data/finalization_hints_basic_7.bin b/prover/vk_setup_data_generator_server_fri/data/finalization_hints_basic_7.bin
index 35d82d21ed62..2dbd63c71931 100644
Binary files a/prover/vk_setup_data_generator_server_fri/data/finalization_hints_basic_7.bin and b/prover/vk_setup_data_generator_server_fri/data/finalization_hints_basic_7.bin differ
diff --git a/prover/vk_setup_data_generator_server_fri/data/finalization_hints_leaf_9.bin b/prover/vk_setup_data_generator_server_fri/data/finalization_hints_leaf_9.bin
index 082fcccf6d4c..2bda22f5779a 100644
Binary files a/prover/vk_setup_data_generator_server_fri/data/finalization_hints_leaf_9.bin and b/prover/vk_setup_data_generator_server_fri/data/finalization_hints_leaf_9.bin differ
diff --git a/prover/vk_setup_data_generator_server_fri/data/finalization_hints_scheduler.bin b/prover/vk_setup_data_generator_server_fri/data/finalization_hints_scheduler.bin
index b4daf641fe58..b74bfd796ed0 100644
Binary files a/prover/vk_setup_data_generator_server_fri/data/finalization_hints_scheduler.bin and b/prover/vk_setup_data_generator_server_fri/data/finalization_hints_scheduler.bin differ
diff --git a/prover/vk_setup_data_generator_server_fri/data/snark_verification_scheduler_key.json b/prover/vk_setup_data_generator_server_fri/data/snark_verification_scheduler_key.json
index 5d33f98b183f..4b83fd50553f 100644
--- a/prover/vk_setup_data_generator_server_fri/data/snark_verification_scheduler_key.json
+++ b/prover/vk_setup_data_generator_server_fri/data/snark_verification_scheduler_key.json
@@ -6,16 +6,16 @@
"gate_setup_commitments": [
{
"x": [
- 4563648229522529090,
- 12621273650309129924,
- 6198549568814142266,
- 2552508369834820982
+ 18196698015838820804,
+ 13870798184679972679,
+ 10383601464080125147,
+ 2890147079142100565
],
"y": [
- 6942986305285328922,
- 13872369038900622115,
- 16362071052994133467,
- 804758705072609803
+ 15077880217479618043,
+ 409257657776446622,
+ 7624188368705821190,
+ 571146283794538062
],
"infinity": false
},
@@ -96,16 +96,16 @@
},
{
"x": [
- 17877966991893524598,
- 5994085157062523222,
- 1757001537059388699,
- 624319710399696047
+ 6133635431083343666,
+ 17066500748032848681,
+ 9464481803886990457,
+ 3099188496124947302
],
"y": [
- 4763287561833789230,
- 2005258298669826833,
- 16972767076042430273,
- 143191352994868054
+ 11826823385291662601,
+ 13141227272786891670,
+ 936697723418808310,
+ 619083601736774460
],
"infinity": false
},
diff --git a/prover/vk_setup_data_generator_server_fri/data/verification_basic_1_key.json b/prover/vk_setup_data_generator_server_fri/data/verification_basic_1_key.json
index dba61453753c..666f79b512cc 100644
--- a/prover/vk_setup_data_generator_server_fri/data/verification_basic_1_key.json
+++ b/prover/vk_setup_data_generator_server_fri/data/verification_basic_1_key.json
@@ -19,19 +19,19 @@
"public_inputs_locations": [
[
0,
- 1047658
+ 1033357
],
[
1,
- 1047658
+ 1033357
],
[
2,
- 1047658
+ 1033357
],
[
3,
- 1047658
+ 1033357
]
],
"extra_constant_polys_for_selectors": 3,
@@ -183,100 +183,100 @@
},
"setup_merkle_tree_cap": [
[
- 14869022747991704186,
- 17031358815991649117,
- 4714282231372708414,
- 6414019057952366663
+ 13979541772562812886,
+ 628221230774609014,
+ 18373366089216843595,
+ 17288643748939748082
],
[
- 6900602175855696430,
- 6670794569935170089,
- 10800109531102252604,
- 17486750553116564567
+ 497560230331914293,
+ 12933065490353267070,
+ 610531049548094364,
+ 2561281819852481556
],
[
- 17299361551409797093,
- 11990751079425151913,
- 6826444113393762570,
- 10932118118889734350
+ 6872202279589309483,
+ 15371443137485864328,
+ 14042185857374951614,
+ 2871085713710647736
],
[
- 6474368291910763152,
- 7951437263957002667,
- 16115489689031613949,
- 7133133995520501271
+ 14717287901379274289,
+ 11041091584433246952,
+ 1516317718358551577,
+ 17942326492608764586
],
[
- 10017359634641638081,
- 5101743302584875322,
- 5266371437134340172,
- 6069099232595401770
+ 11102657606425854019,
+ 16719055288925226903,
+ 251505614603105506,
+ 788154469314461155
],
[
- 17756274064208120672,
- 3982804959467006511,
- 10666837127743053144,
- 5042305760262773346
+ 14609783504099553169,
+ 8414020072480378909,
+ 5493814014146289405,
+ 11182914537731016461
],
[
- 6276015788824777492,
- 7548026914440268726,
- 7686087580556345175,
- 70678741505519130
+ 3985640097063592337,
+ 11522574954802621414,
+ 3987867522671712202,
+ 6993409547661445349
],
[
- 17054606409621314666,
- 12181652464079780487,
- 16509905652014130420,
- 18326959307811580345
+ 9457187851706480139,
+ 5415597435441111057,
+ 2054966732353439166,
+ 4687827253126200545
],
[
- 11297851890381778013,
- 4519272151514850089,
- 11187164861287540939,
- 11860631544716366680
+ 10511650860939798500,
+ 5585198921532047811,
+ 16190623865304580725,
+ 4707719904878919289
],
[
- 6694400911557434438,
- 10320855386973467141,
- 6409090468016993938,
- 1691791456834022317
+ 835496114275750140,
+ 11205584076775867467,
+ 14617309449219062577,
+ 14840896155754974551
],
[
- 12631827227087810588,
- 17420660366875362680,
- 8998719038651802977,
- 7868656510918289268
+ 8838401009958590877,
+ 4356703539172827619,
+ 15906895008509963830,
+ 15213987306529390063
],
[
- 6457505234632244247,
- 13541404564190215974,
- 16187962154051613109,
- 17552751586718992793
+ 15386648629189748383,
+ 981209449049965222,
+ 17702894300685706682,
+ 7188184581569627427
],
[
- 16545123790363978986,
- 5350362016628834362,
- 18354051751822556975,
- 6117654413762589372
+ 11773289872945276065,
+ 14292663988536993999,
+ 4995957744780789767,
+ 11157975329762130496
],
[
- 489622670611184909,
- 15319066911773803522,
- 18442076011714885642,
- 6096263545427509383
+ 10992634905557330633,
+ 6679058793747630815,
+ 7619754239129113371,
+ 15635323274093564751
],
[
- 15489313913065919449,
- 8423761693489524867,
- 15818905453819585194,
- 15653211152174043194
+ 5612302911762512037,
+ 7066509597590412204,
+ 16090150944640300635,
+ 8925201513572491903
],
[
- 5640704920035577473,
- 4663598453214139985,
- 1172539769174279254,
- 11923632706292759615
+ 49562861942122717,
+ 78347250110042296,
+ 15729365300851668553,
+ 5811723960573072789
]
]
}
diff --git a/prover/vk_setup_data_generator_server_fri/data/verification_basic_5_key.json b/prover/vk_setup_data_generator_server_fri/data/verification_basic_5_key.json
index 4537187b9b36..5cf937317a97 100644
--- a/prover/vk_setup_data_generator_server_fri/data/verification_basic_5_key.json
+++ b/prover/vk_setup_data_generator_server_fri/data/verification_basic_5_key.json
@@ -19,19 +19,19 @@
"public_inputs_locations": [
[
0,
- 1047292
+ 957655
],
[
1,
- 1047292
+ 957655
],
[
2,
- 1047292
+ 957655
],
[
3,
- 1047292
+ 957655
]
],
"extra_constant_polys_for_selectors": 2,
@@ -144,100 +144,100 @@
},
"setup_merkle_tree_cap": [
[
- 5926546619152935907,
- 11291861669768573654,
- 11100100891141895430,
- 1040099038134319144
+ 5863338309468690805,
+ 6612807556868623855,
+ 14384447122223208889,
+ 4869624617941633977
],
[
- 9405378490457870663,
- 11971348617109093172,
- 7779954465112100917,
- 8521139113892942903
+ 7203568093424325982,
+ 11467433213790803023,
+ 3331132209617185572,
+ 12059630931627430867
],
[
- 1041442145290466080,
- 2626937507866398782,
- 4297959424787982903,
- 7963254695121664304
+ 17754341693454587497,
+ 7044019905110787629,
+ 13344874745221604862,
+ 689445111894783375
],
[
- 8679424872010178168,
- 928230210029079843,
- 17862919271344969949,
- 9085342720844642067
+ 12146861234544017277,
+ 10376115062914418911,
+ 8960119128938611413,
+ 8559956938223261930
],
[
- 2346566700143956389,
- 751827788815495159,
- 18018129704559687246,
- 6344673729449349673
+ 16520223933708511688,
+ 3172930642611959373,
+ 17561897383101277942,
+ 8480394309945227558
],
[
- 12798999539756004171,
- 2962217720855368908,
- 17815764746262544024,
- 6141433679632029898
+ 1996517481667965644,
+ 7377981481713124790,
+ 4085759919146714953,
+ 14547160858649434950
],
[
- 10612436896218340091,
- 5382517797965219051,
- 1440771605952502920,
- 6120504474919675320
+ 6783829941378618951,
+ 4164473016846576356,
+ 6466125109246198457,
+ 5555424632322755268
],
[
- 5639210895028949894,
- 17579589483393163114,
- 8531068549022389838,
- 9055992165271810945
+ 15545095573096466305,
+ 6069931892954605821,
+ 9897118900133603670,
+ 623299142232746660
],
[
- 15625252378325581383,
- 11791782086341113568,
- 1976318982912441593,
- 16561636205817299485
+ 2729973951622970375,
+ 2475966630698408655,
+ 6354477244264616033,
+ 16467651095039013404
],
[
- 9291503982934971506,
- 5967409911022700010,
- 9096839168538146295,
- 3004596177933970509
+ 3475789501107470785,
+ 6545047721624920952,
+ 13708118956887446396,
+ 8327911440041257243
],
[
- 9243725287341188464,
- 6878316427230924845,
- 7270708110528992687,
- 15417458474646493002
+ 12619459378778019696,
+ 4556930387203524575,
+ 15096694625117428691,
+ 968312946067281062
],
[
- 15577762808206668193,
- 10775213926343901301,
- 4900917235853777300,
- 8940673145641313937
+ 15417126618137433078,
+ 919913711636678455,
+ 601385876894393616,
+ 10002950656997366990
],
[
- 18157038451252266825,
- 13776543473230491269,
- 17449669960102455201,
- 1902286122568749061
+ 13539183528986038681,
+ 18114796302738189862,
+ 17405354768003119916,
+ 15572242745340962324
],
[
- 10247491007925641249,
- 5411016508841956578,
- 11766519965796614613,
- 1073824923129670847
+ 9674870974878238491,
+ 12069223024267066514,
+ 7771360710281282208,
+ 14926388438391014942
],
[
- 10691592838471536401,
- 16863854034452440410,
- 16989985027265774429,
- 10784858673090746367
+ 18104374714769140792,
+ 16885383007413710616,
+ 14207969031693102569,
+ 13387272531183358013
],
[
- 5688638173552292266,
- 2543022480770607266,
- 1257951713416281965,
- 6435312724052439304
+ 4720607235344128981,
+ 8734926750581912691,
+ 8602628498785008248,
+ 9428253327807062948
]
]
}
diff --git a/prover/vk_setup_data_generator_server_fri/data/verification_basic_7_key.json b/prover/vk_setup_data_generator_server_fri/data/verification_basic_7_key.json
index b905a476ea43..2e8bd4248a45 100644
--- a/prover/vk_setup_data_generator_server_fri/data/verification_basic_7_key.json
+++ b/prover/vk_setup_data_generator_server_fri/data/verification_basic_7_key.json
@@ -15,23 +15,23 @@
}
},
"domain_size": 1048576,
- "total_tables_len": 132096,
+ "total_tables_len": 197632,
"public_inputs_locations": [
[
0,
- 872841
+ 938954
],
[
1,
- 872841
+ 938954
],
[
2,
- 872841
+ 938954
],
[
3,
- 872841
+ 938954
]
],
"extra_constant_polys_for_selectors": 2,
@@ -49,7 +49,7 @@
"Fork": {
"left": {
"GateOnly": {
- "gate_idx": 2,
+ "gate_idx": 3,
"num_constants": 2,
"degree": 3,
"needs_selector": true,
@@ -62,7 +62,7 @@
"Fork": {
"left": {
"GateOnly": {
- "gate_idx": 4,
+ "gate_idx": 2,
"num_constants": 0,
"degree": 2,
"needs_selector": true,
@@ -95,7 +95,7 @@
"GateOnly": {
"gate_idx": 7,
"num_constants": 0,
- "degree": 0,
+ "degree": 2,
"needs_selector": true,
"is_lookup": false
}
@@ -107,19 +107,32 @@
}
},
"right": {
- "GateOnly": {
- "gate_idx": 1,
- "num_constants": 0,
- "degree": 2,
- "needs_selector": true,
- "is_lookup": false
+ "Fork": {
+ "left": {
+ "GateOnly": {
+ "gate_idx": 1,
+ "num_constants": 0,
+ "degree": 2,
+ "needs_selector": true,
+ "is_lookup": false
+ }
+ },
+ "right": {
+ "GateOnly": {
+ "gate_idx": 8,
+ "num_constants": 0,
+ "degree": 0,
+ "needs_selector": true,
+ "is_lookup": false
+ }
+ }
}
}
}
},
"right": {
"GateOnly": {
- "gate_idx": 3,
+ "gate_idx": 4,
"num_constants": 1,
"degree": 2,
"needs_selector": true,
@@ -132,7 +145,7 @@
"Fork": {
"left": {
"GateOnly": {
- "gate_idx": 8,
+ "gate_idx": 9,
"num_constants": 4,
"degree": 2,
"needs_selector": true,
@@ -157,100 +170,100 @@
},
"setup_merkle_tree_cap": [
[
- 13818450912197620420,
- 5079205692118648775,
- 14615787041360044769,
- 2941606671776647183
+ 10364558592939111741,
+ 2704090932534378545,
+ 3848869986273969160,
+ 16106328006947126620
],
[
- 6715253104770723417,
- 3160280029457127352,
- 11108406980823166906,
- 15487865556610611893
+ 18358486967141014750,
+ 14641508205909281179,
+ 7093116894832566610,
+ 7500598559033532768
],
[
- 14039903923831613967,
- 15298198763143829103,
- 17031409250405123985,
- 10266023324667771113
+ 16215619146982875852,
+ 931552260993232306,
+ 12732515925355865703,
+ 10874000891781998666
],
[
- 17366151300788544369,
- 13314676565834570017,
- 17521241757753748935,
- 13066688955830816807
+ 16696055299959994592,
+ 7517181201234171849,
+ 13530124260986169974,
+ 12420742919152555831
],
[
- 14445090483790969730,
- 15708367780098206326,
- 2336844413511710318,
- 3268235585540529265
+ 12935551582494340631,
+ 11277556804627122699,
+ 2585203450556476813,
+ 6641635578391032765
],
[
- 2882405134850480170,
- 14247534382965114291,
- 17531255653612736614,
- 11676635700695125188
+ 14147502223221812516,
+ 10219199483850226233,
+ 9787631410983267539,
+ 2756256845301132553
],
[
- 11530141675448575062,
- 8910365257612403024,
- 300072654586353643,
- 8472188536913229506
+ 15406861586967121153,
+ 6131399528017195276,
+ 14224933511241022797,
+ 8698057950989472792
],
[
- 1426612518547638168,
- 17806679375517512145,
- 14835333334022265221,
- 2007845272495904476
+ 10880960805700971620,
+ 16164526380247682456,
+ 12282645756801863671,
+ 6794498938134022476
],
[
- 6034343869761808836,
- 13937750910508416181,
- 16942548919853718543,
- 16086518391257789831
+ 5447689690988908031,
+ 11077827740731268910,
+ 11281826336784931146,
+ 1857605592445416779
],
[
- 15933462173546075175,
- 8612525819877657624,
- 4132383244121115701,
- 9288543398092863864
+ 16543238481770974716,
+ 15644234753306810707,
+ 7325159377101369499,
+ 9364028963032249345
],
[
- 8157130847726661070,
- 4231891352218163681,
- 14620351586778336684,
- 4186724240746204294
+ 15668430137612641656,
+ 9735500688010860318,
+ 6232756292978092916,
+ 596001075134187400
],
[
- 7440132245224537493,
- 6666895991749911132,
- 8404993517441732468,
- 6556569653095950475
+ 10401718076460605202,
+ 11567967099757836303,
+ 12006248804213440045,
+ 17385738920789950897
],
[
- 1982595939619922877,
- 17561202624392859313,
- 14381497498171193805,
- 17908865555917026633
+ 5700779282136820007,
+ 6374023460690849286,
+ 2926225761189217992,
+ 120655127472319182
],
[
- 7384278864004035589,
- 10191778068274570585,
- 6103937442735162958,
- 5142419559331404710
+ 14205253813728620805,
+ 16457174518919888691,
+ 366727105995090878,
+ 3239884099992559905
],
[
- 3651117166359200686,
- 3827322296271305097,
- 14799462710376656576,
- 13600220646083181205
+ 12999528173970371119,
+ 14057657825586485436,
+ 11885903378658833926,
+ 3645634639162950888
],
[
- 1989104086172888026,
- 7796359126421144184,
- 16967575681666150511,
- 5993683835612332048
+ 9127695548309953097,
+ 9124168086734357914,
+ 4696446350416763314,
+ 14190588963396757344
]
]
}
diff --git a/prover/vk_setup_data_generator_server_fri/data/verification_basic_9_key.json b/prover/vk_setup_data_generator_server_fri/data/verification_basic_9_key.json
index 26a0c0c3e387..2a80fcf04d1d 100644
--- a/prover/vk_setup_data_generator_server_fri/data/verification_basic_9_key.json
+++ b/prover/vk_setup_data_generator_server_fri/data/verification_basic_9_key.json
@@ -157,100 +157,100 @@
},
"setup_merkle_tree_cap": [
[
- 11871327302077385347,
- 16906876010300982827,
- 1595439427548031919,
- 8289977278285908320
+ 4720381805984417431,
+ 13078422028573677966,
+ 12719610199416872768,
+ 814461378397191674
],
[
- 1781098816832363622,
- 3478218372991964399,
- 7533433777158627341,
- 14771106422370550145
+ 7528162393526520082,
+ 16021794900358493536,
+ 10778196681779195944,
+ 16999373544006604274
],
[
- 2685684430663814546,
- 12416630179340889407,
- 2015102854033739219,
- 5941892917351537077
+ 6747601332592429411,
+ 10839430478686810097,
+ 13645038614460463708,
+ 13820943711197201062
],
[
- 11253028729705493819,
- 14850400929314449282,
- 8678044000034959641,
- 17294624061384818276
+ 3296980954753787898,
+ 16847154708500530922,
+ 4760207114567346237,
+ 933989207013374596
],
[
- 14258883085276585451,
- 6370442713006574674,
- 14046750730761444155,
- 17791869273332245871
+ 435751225506322730,
+ 11838854342511914922,
+ 8141668552314414324,
+ 2080639242020278276
],
[
- 7220276552024778410,
- 8960130478379828559,
- 16936405896975145419,
- 5038663776382566512
+ 12577933521680800715,
+ 7013157337092792023,
+ 8948304311622302542,
+ 13444594627920045180
],
[
- 13808097963622191673,
- 11828988786702917270,
- 2233362366627924,
- 6612334601851706078
+ 10039030243356480714,
+ 16189912181289242789,
+ 10233207085455746896,
+ 9133045755698092179
],
[
- 7478203141391683139,
- 224415780917265400,
- 7567502678051235826,
- 7851341697237293082
+ 4258951657397630338,
+ 7089329735582865970,
+ 7454083395219072742,
+ 6942440874612228572
],
[
- 16539824364674252288,
- 4519676258951332695,
- 18049825257493226995,
- 1267218050479719768
+ 4205365380387206769,
+ 4810070288054886759,
+ 12185381545408489993,
+ 9168852501594036569
],
[
- 3826454470928570687,
- 1236146101240459873,
- 6372203166973826150,
- 6930153498226497616
+ 10516394727687757858,
+ 13834473449189539894,
+ 14081317825129873045,
+ 6351648171885016957
],
[
- 3167281621364929622,
- 2762481164640470670,
- 8362276586345702073,
- 14045722791397864122
+ 18078042118328183988,
+ 6073950769044690696,
+ 16412846409205043478,
+ 2130555455391847686
],
[
- 14365302546843858790,
- 17322057150049918196,
- 286070742254960491,
- 8246670609891611634
+ 11243654607886467582,
+ 16949864848604250653,
+ 9402265113410343268,
+ 5314745691722462235
],
[
- 7988693957097790412,
- 314963851507072118,
- 17207369419682640756,
- 412453697544464209
+ 15979853768668375314,
+ 12543007664588017291,
+ 12965088303373453422,
+ 2147288991358425708
],
[
- 14890448417542266631,
- 5963437462474119237,
- 9763006742695214759,
- 17659455413153344670
+ 244366469137530999,
+ 6419427921450944899,
+ 11667939960797081159,
+ 12423571797082389411
],
[
- 13083329023803443846,
- 10870396255388184280,
- 17412894322433867553,
- 4879290934605969545
+ 1119341028349378585,
+ 6534556044367196007,
+ 17980160443578730518,
+ 15264250936810044760
],
[
- 7034677264054074316,
- 3672095934764717273,
- 6174572782407460075,
- 6718668524195598096
+ 13689391307335641715,
+ 17074269686100848413,
+ 17922241310959477038,
+ 13088974302469761152
]
]
}
diff --git a/prover/vk_setup_data_generator_server_fri/data/verification_leaf_3_key.json b/prover/vk_setup_data_generator_server_fri/data/verification_leaf_3_key.json
index f03848a09751..20bd6a9d1749 100644
--- a/prover/vk_setup_data_generator_server_fri/data/verification_leaf_3_key.json
+++ b/prover/vk_setup_data_generator_server_fri/data/verification_leaf_3_key.json
@@ -162,100 +162,100 @@
},
"setup_merkle_tree_cap": [
[
- 1805040357731911032,
- 12724391787715131487,
- 16479521122472510699,
- 16667703969508778391
+ 1247576564412051418,
+ 12273306257668670509,
+ 14191376561140331689,
+ 10310912622041030225
],
[
- 12688435309079006504,
- 14734642188927813728,
- 11915884033454147184,
- 17329321226955875183
+ 5225236367749136421,
+ 603187870752456963,
+ 9837780210091125930,
+ 2506013264691550385
],
[
- 16315437509239525068,
- 14908436607574402415,
- 2084428987844243846,
- 15413041179037655921
+ 8497193842162297485,
+ 4845860822409534304,
+ 4138334177467689966,
+ 9202074843839089802
],
[
- 2823702871692091034,
- 6376153290603778949,
- 10890272396514589925,
- 8026713020686697748
+ 9654034842841910269,
+ 708990255886442263,
+ 10107840680979664389,
+ 5808533714672310191
],
[
- 17397137686907845637,
- 2064022542849488262,
- 3786405316970836609,
- 5437499595967723836
+ 14251291393125869883,
+ 3616107614863400854,
+ 2010682359417586096,
+ 12456662796675379513
],
[
- 2550071694179416093,
- 4897423300632444750,
- 13062462915336389501,
- 18372839862930961551
+ 7970212854162698408,
+ 14194713765138589776,
+ 5849242043577428661,
+ 12606622141811352806
],
[
- 17088995408991024798,
- 16316191327122804523,
- 5528066820138050503,
- 14599942305495755459
+ 11948724638653550851,
+ 8947958806821567157,
+ 12909128685306703210,
+ 14917378813839046977
],
[
- 5958767730804376795,
- 6660452824628491350,
- 5783408552721592941,
- 14088521578529200272
+ 5412287161492062871,
+ 6606116647402177461,
+ 13017829696219856153,
+ 7487301845602534303
],
[
- 2291071995718572256,
- 907353728885268958,
- 129782464141134801,
- 9589777919267926845
+ 9477201289532820910,
+ 9800973848806475446,
+ 3508021038584770051,
+ 3235776687244218864
],
[
- 16187707968438160509,
- 11100373869445159993,
- 5237804265105284075,
- 9739986537750733952
+ 2791092338875051443,
+ 18194879996262719903,
+ 2899450023178678246,
+ 14069689187928679177
],
[
- 16892182605566285738,
- 1703786579928301563,
- 8812499024578960746,
- 17823411878542653115
+ 13666503722421095396,
+ 14491872544075331112,
+ 9386967518782130527,
+ 16009683032302829790
],
[
- 13683376511744176189,
- 5433888418576498236,
- 15343790216728546383,
- 16285187192287214848
+ 2839395143875783163,
+ 7648396343194982154,
+ 13937364562578226328,
+ 8063553841239143405
],
[
- 17452383859621845374,
- 17719367598200163617,
- 1419014138942951485,
- 7011441981346002658
+ 5966137847999981886,
+ 2198398451338343366,
+ 10088393797769586259,
+ 16125482633308865245
],
[
- 6400096584820601208,
- 16235194395642444364,
- 11311947162131944240,
- 7598189765195297754
+ 16215892849491971068,
+ 17210376177731213089,
+ 7447200587018988406,
+ 4975940832749883899
],
[
- 8933333390708774665,
- 12091548374904536228,
- 14131593419057989631,
- 3687065922153051144
+ 14769784807006985958,
+ 653301846789535760,
+ 6822608902746300061,
+ 6085195747006357764
],
[
- 4357902627493767816,
- 8081210589813839837,
- 15890918119202411959,
- 12214732213338934860
+ 14032400430012753659,
+ 10972800536044118388,
+ 2081969033107576242,
+ 9228417089775570723
]
]
}
diff --git a/prover/vk_setup_data_generator_server_fri/data/verification_leaf_7_key.json b/prover/vk_setup_data_generator_server_fri/data/verification_leaf_7_key.json
index 1ab34e32a4f7..1250098066e9 100644
--- a/prover/vk_setup_data_generator_server_fri/data/verification_leaf_7_key.json
+++ b/prover/vk_setup_data_generator_server_fri/data/verification_leaf_7_key.json
@@ -162,100 +162,100 @@
},
"setup_merkle_tree_cap": [
[
- 15278222994235313807,
- 4647505541828109982,
- 11601404244072907522,
- 7495301362149670205
+ 2754337122404035131,
+ 13536623891656361365,
+ 1007616849063951008,
+ 15105252681621581082
],
[
- 2294446454282967643,
- 10852196555067806436,
- 4676542110718751671,
- 3650676510146080911
+ 8308444090318189338,
+ 7446058959525096525,
+ 13329207951509548855,
+ 7561889402802668448
],
[
- 10036426682390389619,
- 15410534417517518379,
- 411748073143090898,
- 1725429274294449186
+ 15626189183123654473,
+ 9389275788860639449,
+ 7727979895208578309,
+ 8967557569387905568
],
[
- 10773139363930294963,
- 14784009814759595952,
- 4523828744129500622,
- 14635565308295099932
+ 1271041653742580722,
+ 1508771155767829929,
+ 3539674211903238731,
+ 6674336842512236791
],
[
- 11532260655451503527,
- 2889442075290561580,
- 7947536971337998641,
- 9006850837384135593
+ 14993085933639327428,
+ 12859616637151917255,
+ 17451807438447563279,
+ 18361547219004635882
],
[
- 18268520902352688907,
- 17460815273130161567,
- 5448683527846534560,
- 16860223759333541117
+ 2596569918238049986,
+ 9535951245061094004,
+ 3612719904693838716,
+ 15669710216801791634
],
[
- 8586752129609394016,
- 17056726335999361043,
- 13247832408825538184,
- 10865075704067323346
+ 2923247806064529346,
+ 476025466236692654,
+ 219470078253531684,
+ 3253637150697045053
],
[
- 4810539255563012829,
- 3494541358111189199,
- 7443746985302784339,
- 1488118652209005646
+ 11455918723444914411,
+ 12760698121370134283,
+ 1348665151397345538,
+ 1503330250917801638
],
[
- 13632843557374648899,
- 11530787504038845899,
- 8016420701220086345,
- 2100494706314940875
+ 3882061487409180567,
+ 4539967518573931769,
+ 16041271276470561136,
+ 13198977187430751226
],
[
- 12565007434827640436,
- 2122488373912552994,
- 7924677296826511433,
- 4337201927455963919
+ 9175887734272823437,
+ 11834689895461412171,
+ 15661083739716912511,
+ 11679573170871122987
],
[
- 9121346173552113908,
- 8257616625819727572,
- 1352571964050839537,
- 1245015447612032209
+ 16807522636555833221,
+ 8478021735953695140,
+ 6319467368854890639,
+ 9055828631796683676
],
[
- 5550331618999138407,
- 15197131088442812142,
- 17401528975137618793,
- 7876503578710888777
+ 17441028216195758717,
+ 16733042275859432057,
+ 16209233366181649846,
+ 16396552402939532160
],
[
- 10581471072917622415,
- 11057977535360446233,
- 4745650017347491925,
- 16374614618217057484
+ 6210356141414087397,
+ 4943182941258025608,
+ 7273397807824898264,
+ 11582999888436731797
],
[
- 15877663159259953297,
- 13196700387970223678,
- 987069829507588466,
- 1239752961099076877
+ 14142343453086872024,
+ 17506279899770493168,
+ 9608284523774702738,
+ 609745290150469595
],
[
- 1564056242532596441,
- 8225585740585112689,
- 8013357208824893542,
- 8291061420556283364
+ 8310851111766432853,
+ 13548474419145163485,
+ 15450231847428594055,
+ 12223625109163810065
],
[
- 10408011788640723232,
- 11035192730597666502,
- 7808927156371652130,
- 8373070655798680509
+ 18255684948340198040,
+ 10371054994206808107,
+ 3264758647817486750,
+ 6747927017612155762
]
]
}
diff --git a/prover/vk_setup_data_generator_server_fri/data/verification_leaf_9_key.json b/prover/vk_setup_data_generator_server_fri/data/verification_leaf_9_key.json
index 88a48a0bf911..e819d87f0563 100644
--- a/prover/vk_setup_data_generator_server_fri/data/verification_leaf_9_key.json
+++ b/prover/vk_setup_data_generator_server_fri/data/verification_leaf_9_key.json
@@ -162,100 +162,100 @@
},
"setup_merkle_tree_cap": [
[
- 1966688024276265163,
- 1600999376577297955,
- 9979283765343242481,
- 10853158383047279373
+ 14148284386830541652,
+ 14837085299135448704,
+ 6322573177435797385,
+ 9541235098780333065
],
[
- 9617115799973676416,
- 1436692352837490106,
- 16621229234254045212,
- 17649471158808930813
+ 18026891006762862860,
+ 8815462913262358846,
+ 3028459576654036894,
+ 4764978179870290626
],
[
- 10598997254576197179,
- 6191890180530301291,
- 485325547092687385,
- 17866822217569560015
+ 3143414711632972556,
+ 215009862632575109,
+ 115871183085121437,
+ 15678879580422096616
],
[
- 17529069959174406385,
- 1822730242748867421,
- 10607268541276403219,
- 10369730414641253572
+ 7008443537620227362,
+ 15405045094706661453,
+ 7054378897351244413,
+ 15063094779164469832
],
[
- 9559948904275293033,
- 271393452476373483,
- 10294727560225979037,
- 13356808215545342022
+ 11380051289982529587,
+ 14537160074260598253,
+ 319143631423375734,
+ 3054216871356863172
],
[
- 3330505141292591439,
- 14604912162246460234,
- 13747490798131143365,
- 9686392462153294316
+ 6677826033770529061,
+ 12532558508585119885,
+ 6483341484367915585,
+ 13833715102611979913
],
[
- 1308334442155460802,
- 8411248012498029090,
- 1727122243552046217,
- 1891983150748887801
+ 16383714077146582615,
+ 6099349887502755988,
+ 611692769071329528,
+ 6249348051757898139
],
[
- 13628794098518472387,
- 9775581327398472118,
- 10952798350389999267,
- 3791915693702783252
+ 13655984727793006641,
+ 16299779079612206176,
+ 6852678328562466162,
+ 372227381623477635
],
[
- 5150729729317744106,
- 15268081752408833175,
- 11313693800895322733,
- 7645258866415024451
+ 4425585391371569673,
+ 6763900039933749019,
+ 16006906678055998259,
+ 1427464989992584471
],
[
- 4492405884498997751,
- 1462600329700613046,
- 4494587633368393420,
- 13835293745083269390
+ 10046306903330433098,
+ 5388931302017828778,
+ 14561141494124910623,
+ 17810178181842901525
],
[
- 16786735218378765255,
- 13489016634632055711,
- 780880140016370703,
- 1632417931049291348
+ 7153732502663673262,
+ 10145905956758704652,
+ 5539285688413432284,
+ 838720682164893952
],
[
- 15419598237747857050,
- 17379853454459968259,
- 1377883698753277247,
- 17090368996477921986
+ 10222632123310734549,
+ 15639343223634758385,
+ 11763187165521672016,
+ 3632059402025063524
],
[
- 5453156352466670830,
- 7921752778252981104,
- 15901693682958424795,
- 7759079127470880643
+ 15347417540234677848,
+ 734067739620863189,
+ 13817834505400578135,
+ 4053013374259122068
],
[
- 13945928657949258565,
- 10630556046992331796,
- 5947903586431352857,
- 13970701039664769056
+ 1278154817848231719,
+ 10728883570888770764,
+ 18088295704053736009,
+ 15861821502158970546
],
[
- 11402992940883704805,
- 14254801701412570920,
- 16823021910688666954,
- 16435058721419375579
+ 14731074814234828267,
+ 7249639464351543805,
+ 14262815218043638628,
+ 2820426900263260210
],
[
- 1434897606543124534,
- 7242596307416400095,
- 1722748060955112357,
- 1262887759339605102
+ 8806343049474442429,
+ 10816590200059736523,
+ 7404010135457618112,
+ 14366274165457799247
]
]
}
diff --git a/prover/vk_setup_data_generator_server_fri/data/verification_scheduler_key.json b/prover/vk_setup_data_generator_server_fri/data/verification_scheduler_key.json
index 198f0389a72c..ab9545b38f33 100644
--- a/prover/vk_setup_data_generator_server_fri/data/verification_scheduler_key.json
+++ b/prover/vk_setup_data_generator_server_fri/data/verification_scheduler_key.json
@@ -19,19 +19,19 @@
"public_inputs_locations": [
[
0,
- 1001025
+ 1001364
],
[
1,
- 1001025
+ 1001364
],
[
2,
- 1001025
+ 1001364
],
[
3,
- 1001025
+ 1001364
]
],
"extra_constant_polys_for_selectors": 4,
@@ -170,100 +170,100 @@
},
"setup_merkle_tree_cap": [
[
- 4522138600368992679,
- 9538550764574095149,
- 12350165878820403151,
- 17316455735707094331
+ 12689670017976745265,
+ 4735744839674262721,
+ 13286982813628318381,
+ 9149186980107562073
],
[
- 5497320764894852275,
- 1590480833349456203,
- 6557309322687596584,
- 15454422223540210306
+ 11392738209994648966,
+ 9093985895872596846,
+ 10573344842509535237,
+ 17700304896358218640
],
[
- 5558505086540283030,
- 13943227629024743939,
- 10259100634144494257,
- 5704170399326630549
+ 7067297734958509313,
+ 9354967931491158103,
+ 16182722545820495396,
+ 16144754456929631304
],
[
- 2951435633176249116,
- 9236611820854085075,
- 7033504824356317789,
- 6878637342940269074
+ 16740527296473943989,
+ 3880867293805242982,
+ 14726916748278129428,
+ 13912258461398978671
],
[
- 14892753504099420541,
- 5719263246041693687,
- 4025705708519747499,
- 1086118372881038482
+ 5388324952186405061,
+ 8461633823113748075,
+ 18417727201095296026,
+ 7513276821057635636
],
[
- 7732214748303870430,
- 9037879918645611146,
- 5795905425560049291,
- 5456605407758692913
+ 6835783195916312963,
+ 2764814759828064484,
+ 16360792463144143961,
+ 5031433507456284412
],
[
- 6947322728148447593,
- 6382294998862546420,
- 7884427302760020118,
- 2212936554013177065
+ 15018426371866855766,
+ 4216590438341145666,
+ 8141336991557864596,
+ 18027566136801125192
],
[
- 2343438613885863348,
- 13493857712239522643,
- 14424009770652266387,
- 12969912574245991559
+ 8197677022277307310,
+ 1039519033649920171,
+ 5587998336806073757,
+ 350261181032052949
],
[
- 16858795808644713105,
- 6129396520459104783,
- 209477910023536873,
- 13344925663188092269
+ 2502911159112974589,
+ 13478164380649649834,
+ 16148336361712138832,
+ 8401471201750923846
],
[
- 14152833547677278430,
- 12581387048991719122,
- 15917744314847466427,
- 14443470950772122977
+ 517633987246350732,
+ 12439096122626936100,
+ 14664043968721607634,
+ 3303256595393751370
],
[
- 10299081693196569961,
- 350315107343268130,
- 6173847887082203307,
- 1849093595195412250
+ 5150386132855813766,
+ 14910776297213771263,
+ 18320842773032635721,
+ 2341887992598697076
],
[
- 9042415970339022369,
- 11988457939756485920,
- 10336433647276674537,
- 1259669594789643496
+ 13646814683590542464,
+ 15026224737243689799,
+ 16971519653333540083,
+ 18306550087952130765
],
[
- 14433184155184276283,
- 13064790874012444560,
- 14980870107816026210,
- 2386527707606459321
+ 14077330435849067750,
+ 8641340920988484366,
+ 996700081834100300,
+ 10087635324876250651
],
[
- 15192505525596647383,
- 7015684183971452334,
- 11289275074222101729,
- 15044015789923655184
+ 17645985847504542483,
+ 975231828184945972,
+ 8892884311156010064,
+ 13142281407395312794
],
[
- 9328083477760636394,
- 9428251331620260633,
- 11272001100772856,
- 15622689851435689927
+ 17909979348139777087,
+ 17963293453564535400,
+ 3853686384403451731,
+ 4326736934406905567
],
[
- 12073756266594964092,
- 6962117934383929276,
- 8722407149087296616,
- 8660375341615685433
+ 14322063846564984431,
+ 8636438762882737544,
+ 12279387165399832419,
+ 17171376743426295351
]
]
}
diff --git a/prover/vk_setup_data_generator_server_fri/data/witness_artifacts.json b/prover/vk_setup_data_generator_server_fri/data/witness_artifacts.json
index 98857952935b..821a2d6e3881 100644
--- a/prover/vk_setup_data_generator_server_fri/data/witness_artifacts.json
+++ b/prover/vk_setup_data_generator_server_fri/data/witness_artifacts.json
@@ -1,22 +1 @@
-{
- "entry_point_address": "0xc54E30ABB6a3eeD1b9DC0494D90c9C22D76FbA7e",
- "entry_point_code": "0x0004000000000002000200000000000200000000030100190000006003300270000002b70430019700030000004103550002000000010355000002b70030019d000100000000001f00000080010000390000004004000039000000000014043500000001012001900000006f0000c13d0000000002000031000000040120008c0000007a0000413d0000000201000367000000000101043b000000e001100270000002b90310009c000000290000c13d0000000001000416000000000110004c000002d20000c13d000000040100008a0000000001100031000002cf02000041000000000310004c00000000030000190000000003024019000002cf01100197000000000410004c000000000200a019000002cf0110009c00000000010300190000000001026019000000000110004c000002d20000c13d0ad708e90000040f000000270000013d000200000004001d000002ba0310009c000000810000613d000002bb0310009c0000009c0000613d000002bc0310009c000000be0000613d000002bd0310009c000000d80000613d000002be0310009c000000f30000613d000002bf0310009c0000010d0000613d000002c00310009c000002200000613d000002c10310009c000001460000613d000002c20210009c0000023b0000613d000002c30210009c000001580000613d000002c40210009c000001720000613d000002c50210009c000002550000613d000002c60210009c0000018c0000613d000002c70210009c000002780000613d000002c80210009c000001a20000613d000002c90210009c0000028e0000613d000002ca0210009c000001ba0000613d000002cb0210009c000001d20000613d000002cc0210009c000001ec0000613d000002cd0210009c000002060000613d000002ce0110009c000002d20000c13d0000000001000416000000000110004c000002d20000c13d000000040100008a0000000001100031000002cf02000041000000000310004c00000000030000190000000003024019000002cf01100197000000000410004c000000000200a019000002cf0110009c00000000010300190000000001026019000000000110004c000002d20000c13d00000004010000390ad70ad50000040f00000002020000290000000003020433000002d00110019700000000001304350000002002000039000000000103001900000000030000190ad7039b0000040f0000000001000416000000000110004c000002d20000c13d000000200200003900000100010000390000000000210439000001200200003900000000000204390000004002000039000002b8030000410ad7039b0000040f000000000120004c000002d20000c13d0ad703ff0000040f0000000001000019000000000200001900000000030000190ad7039b0000040f0000000001000416000000000110004c000002d20000c13d000000040100008a0000000001100031000002cf02000041000000000310004c00000000030000190000000003024019000002cf01100197000000000410004c000000000200a019000002cf0110009c00000000010300190000000001026019000000000110004c000002d20000c13d00000000010000190ad70ad50000040f00000002020000290000000003020433000002d00110019700000000001304350000002002000039000000000103001900000000030000190ad7039b0000040f0000000001000416000000000110004c000002d20000c13d000000040100008a0000000001100031000002cf02000041000000200310008c00000000030000190000000003024019000002cf01100197000000000410004c000000000200a019000002cf0110009c00000000010300190000000001026019000000000110004c000002d20000c13d00000004010000390000000201100367000000000101043b0000000005010433000002b7010000410000000002000414000002b70320009c0000000001024019000000c001100210000002d4011001c70000800d020000390000000203000039000002d5040000410ad70ac90000040f0000000101200190000002d20000613d000002d50000013d0000000001000416000000000110004c000002d20000c13d000000040100008a0000000001100031000002cf02000041000000000310004c00000000030000190000000003024019000002cf01100197000000000410004c000000000200a019000002cf0110009c00000000010300190000000001026019000000000110004c000002d20000c13d00000003010000390ad70ad50000040f0000000202000029000000000302043300000000001304350000002002000039000000000103001900000000030000190ad7039b0000040f0000000001000416000000000110004c000002d20000c13d000000040100008a0000000001100031000002cf02000041000000000310004c00000000030000190000000003024019000002cf01100197000000000410004c000000000200a019000002cf0110009c00000000010300190000000001026019000000000110004c000002d20000c13d00000002010000390ad70ad50000040f00000002020000290000000003020433000000e00110021000000000001304350000002002000039000000000103001900000000030000190ad7039b0000040f0000000001000416000000000110004c000002d20000c13d000000040100008a0000000001100031000002cf02000041000000000310004c00000000030000190000000003024019000002cf01100197000000000410004c000000000200a019000002cf0110009c00000000010300190000000001026019000000000110004c000002d20000c13d00000006010000390ad70ad50000040f0000000202000029000000000302043300000000001304350000002002000039000000000103001900000000030000190ad7039b0000040f0000000001000416000000000110004c000002d20000c13d000000040100008a0000000001100031000002cf02000041000000800310008c00000000030000190000000003024019000002cf01100197000000000410004c000000000200a019000002cf0110009c00000000010300190000000001026019000000000110004c000002d20000c13d000000000100041400000002040003670000006402400370000000000602043b0000004402400370000000000502043b0000000402400370000000000302043b0000000002000410000000040720008c000002cd0000c13d0000001f0160018f0000000502600270000000000420004c000001360000613d0000000004000019000000050640021000000000076500190000000006630019000000000606043300000000006704350000000104400039000000000624004b0000012e0000413d000000000410004c000002d50000613d0000000502200210000000000323001900000000022500190000000301100210000000000402043300000000041401cf000000000414022f00000000030304330000010001100089000000000313022f00000000011301cf000000000141019f0000000000120435000002d50000013d000000040120008a000002cf02000041000000000310004c00000000030000190000000003024019000002cf01100197000000000410004c000000000200a019000002cf0110009c00000000010300190000000001026019000000000110004c000002d20000c13d0ad706e60000040f0000000001000019000000000200001900000000030000190ad7039b0000040f0000000001000416000000000110004c000002d20000c13d000000040100008a0000000001100031000002cf02000041000000000310004c00000000030000190000000003024019000002cf01100197000000000410004c000000000200a019000002cf0110009c00000000010300190000000001026019000000000110004c000002d20000c13d0000000a010000390ad70ad50000040f0000000202000029000000000302043300000000001304350000002002000039000000000103001900000000030000190ad7039b0000040f0000000001000416000000000110004c000002d20000c13d000000040100008a0000000001100031000002cf02000041000000000310004c00000000030000190000000003024019000002cf01100197000000000410004c000000000200a019000002cf0110009c00000000010300190000000001026019000000000110004c000002d20000c13d00000008010000390ad70ad50000040f0000000202000029000000000302043300000000001304350000002002000039000000000103001900000000030000190ad7039b0000040f0000000001000416000000000110004c000002d20000c13d000000040100008a0000000001100031000002cf02000041000000000310004c00000000030000190000000003024019000002cf01100197000000000410004c000000000200a019000002cf0110009c00000000010300190000000001026019000000000110004c000002d20000c13d0ad70a100000040f0000000001000019000000000200001900000000030000190ad7039b0000040f0000000001000416000000000110004c000002d20000c13d000000040100008a0000000001100031000002cf02000041000000000310004c00000000030000190000000003024019000002cf01100197000000000410004c000000000200a019000002cf0110009c00000000010300190000000001026019000000000110004c000002d20000c13d00000002010000290000000001010433000002d3020000410000000000210435000000200200003900000000030000190ad7039b0000040f0000000001000416000000000110004c000002d20000c13d000000040100008a0000000001100031000002cf02000041000000400310008c00000000030000190000000003024019000002cf01100197000000000410004c000000000200a019000002cf0110009c00000000010300190000000001026019000000000110004c000002d20000c13d00000002010003670000002402100370000000000202043b0000000401100370000000000101043b00000000030000190ad7039b0000040f0000000001000416000000000110004c000002d20000c13d000000040100008a0000000001100031000002cf02000041000000000310004c00000000030000190000000003024019000002cf01100197000000000410004c000000000200a019000002cf0110009c00000000010300190000000001026019000000000110004c000002d20000c13d00000001010000390ad70ad50000040f0000000202000029000000000302043300000000001304350000002002000039000000000103001900000000030000190ad7039b0000040f0000000001000416000000000110004c000002d20000c13d000000040100008a0000000001100031000002cf02000041000000000310004c00000000030000190000000003024019000002cf01100197000000000410004c000000000200a019000002cf0110009c00000000010300190000000001026019000000000110004c000002d20000c13d0000000b010000390ad70ad50000040f0000000202000029000000000302043300000000001304350000002002000039000000000103001900000000030000190ad7039b0000040f0000000001000416000000000110004c000002d20000c13d000000040100008a0000000001100031000002cf02000041000000000310004c00000000030000190000000003024019000002cf01100197000000000410004c000000000200a019000002cf0110009c00000000010300190000000001026019000000000110004c000002d20000c13d00000005010000390ad70ad50000040f0000000202000029000000000302043300000000001304350000002002000039000000000103001900000000030000190ad7039b0000040f0000000001000416000000000110004c000002d20000c13d000000040100008a0000000001100031000002cf02000041000000000310004c00000000030000190000000003024019000002cf01100197000000000410004c000000000200a019000002cf0110009c00000000010300190000000001026019000000000110004c000002d20000c13d00000009010000390ad70ad50000040f00000002020000290000000003020433000002d00110019700000000001304350000002002000039000000000103001900000000030000190ad7039b0000040f0000000001000416000000000110004c000002d20000c13d000000040100008a0000000001100031000002cf02000041000000000310004c00000000030000190000000003024019000002cf01100197000000000410004c000000000200a019000002cf0110009c00000000010300190000000001026019000000000110004c000002d20000c13d00000007010000390ad70ad50000040f0000000202000029000000000302043300000000001304350000002002000039000000000103001900000000030000190ad7039b0000040f0000000001000416000000000110004c000002d20000c13d000000040100008a0000000001100031000002cf02000041000000200310008c00000000030000190000000003024019000002cf01100197000000000410004c000000000200a019000002cf0110009c00000000010300190000000001026019000000000110004c000002d20000c13d00000002010003670000000402100370000000000202043b000000000121034f000000000501043b000002b7010000410000000002000414000002b70320009c0000000001024019000000c001100210000002d4011001c70000800d020000390000000203000039000002d5040000410ad70ac90000040f0000000101200190000002d50000c13d000002d20000013d0000000001000416000000000110004c000002d20000c13d000000040100008a0000000001100031000002cf02000041000000000310004c00000000030000190000000003024019000002cf01100197000000000410004c000000000200a019000002cf0110009c00000000010300190000000001026019000000000110004c000002d20000c13d0ad707770000040f0000000001000019000000000200001900000000030000190ad7039b0000040f0000000001000416000000000110004c000002d20000c13d000000040100008a0000000001100031000002cf02000041000000000310004c00000000030000190000000003024019000002cf01100197000000000410004c000000000200a019000002cf0110009c00000000010300190000000001026019000000000110004c000002d20000c13d00000002010000290000000003010433000002d1010000410000000000130435000000000100041400000002020000390000000e04000039000000200600003900000000050000190ad7031f0000040f000000000110004c000002d90000c13d000000030200036700000001040000310000001f0340018f000000020100002900000000010104330000000504400270000000000540004c000002bc0000613d000000000500001900000005065002100000000007610019000000000662034f000000000606043b00000000006704350000000105500039000000000645004b000002b40000413d000000000530004c000002cb0000613d0000000504400210000000000242034f00000000044100190000000303300210000000000504043300000000053501cf000000000535022f000000000202043b0000010003300089000000000232022f00000000023201cf000000000252019f000000000024043500000001020000310ad703a50000040f0000002404400370000000000404043b0ad702ea0000040f000000000110004c000002d50000c13d000000000100001900000000020000190ad703a50000040f0000000001000019000000000200001900000000030000190ad7039b0000040f0000000001000433000002d20410016700000002030000290000000001030433000100000001001d000000400210003900000000004204350000002004100039000002d202000041000000000024043500000000003104350ad703ae0000040f00000001010000290ad709ab0000040f000000000100001900000000020000190ad703a50000040f0002000000000002000200000006001d000100000005001d000002b705000041000002b70630009c00000000030580190000004003300210000002b70640009c00000000040580190000006004400210000000000334019f000002b70410009c0000000001058019000000c001100210000000000113019f0ad70ac90000040f000000010800002900000002040000290000001f0340018f0000000504400270000000000540004c000003090000613d000000000500001900000005065002100000000007680019000000000661034f000000000606043b00000000006704350000000105500039000000000645004b000003010000413d000000010220018f000000000530004c000003190000613d0000000504400210000000000541034f00000000044800190000000303300210000000000604043300000000063601cf000000000636022f000000000505043b0000010003300089000000000535022f00000000033501cf000000000363019f000000000034043500030000000103550000006001100270000102b70010019d00000000010200190000000200000005000000000001042d0002000000000002000200000006001d000100000005001d000002b705000041000002b70630009c00000000030580190000004003300210000002b70640009c00000000040580190000006004400210000000000334019f000002b70410009c0000000001058019000000c001100210000000000113019f0ad70ace0000040f000000010800002900000002040000290000001f0340018f0000000504400270000000000540004c0000033e0000613d000000000500001900000005065002100000000007680019000000000661034f000000000606043b00000000006704350000000105500039000000000645004b000003360000413d000000010220018f000000000530004c0000034e0000613d0000000504400210000000000541034f00000000044800190000000303300210000000000604043300000000063601cf000000000636022f000000000505043b0000010003300089000000000535022f00000000033501cf000000000363019f000000000034043500030000000103550000006001100270000102b70010019d00000000010200190000000200000005000000000001042d000002b703000041000002b70410009c00000000010380190000004001100210000002b70420009c00000000020380190000006002200210000000000112019f0000000002000414000002b70420009c0000000002038019000000c002200210000000000112019f000002d4011001c700008010020000390ad70ace0000040f0000000102200190000003680000613d000000000101043b000000000001042d000000000100001900000000020000190ad703a50000040f0000000003010019000002b7010000410000000004000414000002b70540009c0000000001044019000000c00110021000000060022002100000000001120019000002d60110004100000000020300190ad70ace0000040f00000001022001900000037a0000613d000000000101043b000000000001042d000000000100001900000000020000190ad703a50000040f0000004402100039000000000300041400000060040000390000000000420435000002d70200004100000000002104350000006402100039000000000002043500000004021000390000000000020435000002b702000041000002b70430009c0000000003028019000002b70410009c00000000010280190000004001100210000000c002300210000000000112019f000002d8011001c700008006020000390ad70ac90000040f0000000102200190000003960000613d000000000101043b0000039a0000013d00030000000103550000006001100270000102b70010019d0000000001000019000000000001042d000002b704000041000002b70510009c000000000104801900000040011002100000000001310019000002b70320009c00000000020480190000006002200210000000000121001900000ad80001042e000002b703000041000002b70420009c0000000002038019000002b70410009c000000000103801900000040011002100000006002200210000000000112019f00000ad900010430000002d90210009c000003b40000813d000000600110003900000040020000390000000000120435000000000001042d000002da010000410000000000100435000000410100003900000004020000390000000000120435000000240200003900000000010000190ad703a50000040f0000004002100039000002db030000410000000000320435000000200210003900000017030000390000000000320435000000200200003900000000002104350000006001100039000000000001042d0000006002100039000002dc0300004100000000003204350000004002100039000002dd030000410000000000320435000000200210003900000026030000390000000000320435000000200200003900000000002104350000008001100039000000000001042d0000004002100039000002de03000041000000000032043500000020021000390000002003000039000000000032043500000000003104350000006001100039000000000001042d0000006002100039000002df0300004100000000003204350000004002100039000002e0030000410000000000320435000000200210003900000022030000390000000000320435000000200200003900000000002104350000008001100039000000000001042d0000004002100039000002e103000041000000000032043500000020021000390000002003000039000000000032043500000000003104350000006001100039000000000001042d0000006002100039000002e20300004100000000003204350000004002100039000002e303000041000000000032043500000020021000390000002c030000390000000000320435000000200200003900000000002104350000008001100039000000000001042d00080000000000020000000001000412000002d0021001970000000001000410000800000002001d000000000112004b000005dc0000c13d0ad706e60000040f0ad707770000040f0000000c010000390ad70ad50000040f000500000001001d000000000110004c000005eb0000613d000002e60100004100000000001004390000000401000039000300000001001d00000008020000290000000000210439000080020100003900000024020000390ad7036b0000040f000000000110004c000005cb0000613d0000004001000039000700000001001d0000000002010433000002e701000041000600000002001d000000000012043500000000010004140000000802000029000000040320008c000005ce0000613d00000004040000390000000603000029000400000004001d000000000503001900000000060000190ad702ea0000040f000000000110004c000005ce0000c13d0000000c010000390ad70ad50000040f0000000502000029000000000121004b000005fa0000c13d000002e6010000410000000000100439000000080200002900000004010000290000000000210439000080020100003900000024020000390ad7036b0000040f000000000110004c000005cb0000613d00000007010000290000000003010433000002e9010000410000000000130435000000000100041400000004040000390000000802000029000600000004001d000500000003001d000000000503001900000000060000190ad702ea0000040f000000000110004c000006090000c13d0ad70a100000040f00000000010004140000000003000416000000000230004c0000045d0000613d000002b702000041000002b70410009c0000000001028019000000c001100210000002d4011001c70000800902000039000002eb0400004100000000050000190ad70ac90000040f000000000301034f000000010120018f000300000003035500000000020300190000006002200270000102b70020019d000002b702200197000004640000013d000002eb0200004100000000030000190000000004000019000000000500001900000000060000190ad702ea0000040f0000000102000031000000000320004c0000000809000029000004950000613d0000003f03200039000000200400008a000000000443016f000000070700002900000000030704330000000004430019000000000534004b00000000050000190000000105004039000002ea0640009c000006a30000213d0000000105500190000006a30000c13d000000000047043500000000002304350000002002300039000000030300036700000001050000310000001f0450018f0000000505500270000000000650004c000004860000613d000000000600001900000005076002100000000008720019000000000773034f000000000707043b00000000007804350000000106600039000000000756004b0000047e0000413d000000000640004c000004950000613d0000000505500210000000000353034f00000000025200190000000304400210000000000502043300000000054501cf000000000545022f000000000303043b0000010004400089000000000343022f00000000034301cf000000000353019f0000000000320435000000000110004c000006170000613d0000000001000414000500000001001d000002e601000041000000000010043900000006010000290000000000910439000080020100003900000024020000390ad7036b0000040f000000000110004c000005cb0000613d000000070100002900000000030104330000002401300039000002b7020000410000000000210435000002ec0100004100000000001304350000000401300039000200000001001d00000000000104350000000501000029000027102110011a00000044040000390000000802000029000400000003001d000000000503001900000000060000190ad702ea0000040f000000000110004c000006260000c13d0000000001000414000500000001001d000002e6010000410000000000100439000000060100002900000008020000290000000000210439000080020100003900000024020000390ad7036b0000040f000000000110004c000005cb0000613d000000070100002900000000030104330000002401300039000000010200008a000400000002001d0000000000210435000002ec0100004100000000001304350000000401300039000100000001001d00000000000104350000000501000029000027102110011a00000044040000390000000802000029000200000003001d000000000503001900000000060000190ad702ea0000040f000000000110004c000006350000c13d000002e6010000410000000000100439000000060100002900000008020000290000000000210439000080020100003900000024020000390ad7036b0000040f000000000110004c000005cb0000613d00000007010000290000000003010433000002ed01000041000000000013043500000004043000390000000001000414000002b702000041000200000004001d000000000024043500000024040000390000000802000029000500000003001d000000000503001900000000060000190ad702ea0000040f000000000110004c000006440000c13d000002e6010000410000000000100439000000060100002900000008020000290000000000210439000080020100003900000024020000390ad7036b0000040f000000000110004c000005cb0000613d00000007010000290000000003010433000002ed01000041000000000013043500000004043000390000000001000414000002ee02000041000200000004001d000000000024043500000024040000390000000802000029000500000003001d000000000503001900000000060000190ad702ea0000040f000000000110004c000006530000c13d0000000001000414000500000001001d000002e6010000410000000000100439000000060100002900000008020000290000000000210439000080020100003900000024020000390ad7036b0000040f000000000110004c000005cb0000613d00000007010000290000000003010433000002ef0100004100000000001304350000000402300039000002f001000041000100000002001d00000000001204350000000501000029000027102110011a00000024040000390000000802000029000200000003001d000000000503001900000000060000190ad702ea0000040f000000000110004c000006620000c13d0000000001000414000500000001001d000002e6010000410000000000100439000000060100002900000008020000290000000000210439000080020100003900000024020000390ad7036b0000040f000000000110004c000005cb0000613d00000007010000290000000003010433000002ef0100004100000000001304350000000402300039000002b701000041000100000002001d00000000001204350000000501000029000027102110011a00000024040000390000000802000029000200000003001d000000000503001900000000060000190ad702ea0000040f000000000110004c000006710000c13d0000000001000414000500000001001d000002e6010000410000000000100439000000060100002900000008020000290000000000210439000080020100003900000024020000390ad7036b0000040f000000000110004c000005cb0000613d00000007010000290000000003010433000002ef01000041000000000013043500000004023000390000000401000029000100000002001d00000000001204350000000501000029000027102110011a00000024040000390000000802000029000200000003001d000000000503001900000000060000190ad702ea0000040f000000000110004c000006800000c13d0000000001000414000500000001001d000002e6010000410000000000100439000000060100002900000008020000290000000000210439000080020100003900000024020000390ad7036b0000040f000000000110004c000005cb0000613d000000070100002900000000030104330000006401300039000002f102000041000000000021043500000044013000390000000000210435000002f2010000410000000000130435000000240130003900000000000104350000000401300039000200000001001d00000000000104350000000501000029000027102110011a00000084040000390000000802000029000400000003001d000000000503001900000000060000190ad702ea0000040f000000000110004c0000068f0000c13d0000000001000414000500000001001d000002e6010000410000000000100439000000060100002900000008020000290000000000210439000080020100003900000024020000390ad7036b0000040f000000000110004c000005cb0000613d00000007010000290000000003010433000002f20100004100000000001304350000002401300039000002f10200004100000000002104350000000401300039000400000001001d000000000021043500000064013000390000000000010435000000440130003900000000000104350000000501000029000027102110011a00000084040000390000000802000029000600000003001d000000000503001900000000060000190ad702ea0000040f000000000110004c0000069e0000c13d00000007010000290000000001010433000002f30210009c000006a30000213d0000002402100039000002f40300004100000000003204350ad7037d0000040f000000000210004c000006ab0000613d000002d005100197000000000150004c000006cd0000613d000002b7010000410000000002000414000002b70320009c0000000001024019000000c001100210000002d4011001c70000800d020000390000000303000039000002f50400004100000000060004110ad70ac90000040f0000000101200190000005cb0000613d0000000800000005000000000001042d000000000100001900000000020000190ad703a50000040f0000000601000029000002f80110009c0000000701000029000006a30000813d00000006020000290000000000210435000002e501000041000000000012043500000004012000390ad703bc0000040f0000000603000029000000000231004900000000010300190ad703a50000040f000000400100003900000000010104330000004402100039000002e4030000410000000000320435000000240210003900000010030000390000000000320435000002e502000041000000000021043500000004021000390000002003000039000000000032043500000064020000390ad703a50000040f000000400100003900000000010104330000004402100039000002f9030000410000000000320435000000240210003900000018030000390000000000320435000002e502000041000000000021043500000004021000390000002003000039000000000032043500000064020000390ad703a50000040f000000070100002900000000010104330000004402100039000002e803000041000000000032043500000024021000390000001b030000390000000000320435000002e502000041000000000021043500000004021000390000002003000039000000000032043500000064020000390ad703a50000040f0000000501000029000002ea0110009c0000000701000029000006a30000213d00000005020000290000000000210435000002e501000041000000000012043500000004012000390ad703c60000040f0000000503000029000000000231004900000000010300190ad703a50000040f000000070100002900000000010104330000004402100039000002f7030000410000000000320435000000240210003900000014030000390000000000320435000002e502000041000000000021043500000004021000390000002003000039000000000032043500000064020000390ad703a50000040f00000002020000290000000401000029000002ea0110009c0000000701000029000006a30000213d00000004030000290000000000310435000002e501000041000000000013043500000000010200190ad703d30000040f0000000403000029000000000231004900000000010300190ad703a50000040f00000001020000290000000201000029000002ea0110009c0000000701000029000006a30000213d00000002030000290000000000310435000002e501000041000000000013043500000000010200190ad703d30000040f0000000203000029000000000231004900000000010300190ad703a50000040f00000002020000290000000501000029000002ea0110009c0000000701000029000006a30000213d00000005030000290000000000310435000002e501000041000000000013043500000000010200190ad703dc0000040f0000000503000029000000000231004900000000010300190ad703a50000040f00000002020000290000000501000029000002ea0110009c0000000701000029000006a30000213d00000005030000290000000000310435000002e501000041000000000013043500000000010200190ad703dc0000040f0000000503000029000000000231004900000000010300190ad703a50000040f00000001020000290000000201000029000002ea0110009c0000000701000029000006a30000213d00000002030000290000000000310435000002e501000041000000000013043500000000010200190ad703e90000040f0000000203000029000000000231004900000000010300190ad703a50000040f00000001020000290000000201000029000002ea0110009c0000000701000029000006a30000213d00000002030000290000000000310435000002e501000041000000000013043500000000010200190ad703e90000040f0000000203000029000000000231004900000000010300190ad703a50000040f00000001020000290000000201000029000002ea0110009c0000000701000029000006a30000213d00000002030000290000000000310435000002e501000041000000000013043500000000010200190ad703e90000040f0000000203000029000000000231004900000000010300190ad703a50000040f00000002020000290000000401000029000002ea0110009c0000000701000029000006a30000213d00000004030000290000000000310435000002e501000041000000000013043500000000010200190ad703f20000040f0000000403000029000000000231004900000000010300190ad703a50000040f00000004020000290000000601000029000002ea0110009c0000000701000029000006dc0000a13d000002da010000410000000000100435000000410100003900000003020000290000000000120435000000240200003900000000010000190ad703a50000040f000000030200036700000001040000310000001f0340018f000000070100002900000000010104330000000504400270000000000540004c000006bc0000613d000000000500001900000005065002100000000007610019000000000662034f000000000606043b00000000006704350000000105500039000000000645004b000006b40000413d000000000530004c000006cb0000613d0000000504400210000000000242034f00000000044100190000000303300210000000000504043300000000053501cf000000000535022f000000000202043b0000010003300089000000000232022f00000000023201cf000000000252019f000000000024043500000001020000310ad703a50000040f000000070100002900000000010104330000004402100039000002f6030000410000000000320435000000240210003900000019030000390000000000320435000002e502000041000000000021043500000004021000390000002003000039000000000032043500000064020000390ad703a50000040f00000006030000290000000000310435000002e501000041000000000013043500000000010200190ad703f20000040f0000000603000029000000000231004900000000010300190ad703a50000040f0004000000000002000002fa0100004100000000001004390000800b0100003900000004020000390ad7036b0000040f0000000002000411000000000121004b000007740000c13d0000000001000032000007740000c13d000002fb0100004100000000001004390000800b0100003900000004020000390ad7036b0000040f000000000110004c000007120000613d000002fb0100004100000000001004390000800b010000390000000402000039000100000002001d0ad7036b0000040f000000000110004c0000076c0000613d000002fb01000041000400000001001d00000000001004390000800b01000039000300000001001d0000000402000039000200000002001d0ad7036b0000040f00000004020000290000000000200439000400000001001d000000030100002900000002020000290ad7036b0000040f000003e8011000390000000402000029000000000112004b0000076c0000213d000002fc0100004100000000001004390000800b01000039000300000001001d0000000402000039000400000002001d0ad7036b0000040f0000000a020000390ad70ad30000040f000002fd010000410000000000100439000000030100002900000004020000290ad7036b0000040f000100000001001d0000000901000039000200000001001d0ad70ad50000040f0000000102000029000002d002200197000002fe01100197000000000121019f00000002020000290ad70ad30000040f000002ff010000410000000000100439000000030100002900000004020000290ad7036b0000040f00000008020000390ad70ad30000040f00000300010000410000000000100439000000030100002900000004020000290ad7036b0000040f00000007020000390ad70ad30000040f00000301010000410000000000100439000000030100002900000004020000290ad7036b0000040f00000006020000390ad70ad30000040f00000302010000410000000000100439000000030100002900000004020000290ad7036b0000040f00000003020000390ad70ad30000040f000002fa010000410000000000100439000000030100002900000004020000290ad7036b0000040f000200000001001d00000004010000290ad70ad50000040f0000000202000029000002d002200197000002fe01100197000000000121019f00000004020000290ad70ad30000040f0000000201000367000000000101043b000100000001001d0000000201000039000200000001001d0ad70ad50000040f0000000102000029000000e0022002700000030301100197000000000121019f00000002020000290ad70ad30000040f000002fb010000410000000000100439000000030100002900000004020000290ad7036b0000040f00000005020000390ad70ad30000040f00000000010004160000000b020000390ad70ad30000040f0000000400000005000000000001042d000002da010000410000000000100435000000110100003900000001020000290000000000120435000000240200003900000000010000190ad703a50000040f000000000100001900000000020000190ad703a50000040f000a0000000000020000000001000414000100000001001d0000004001000039000400000001001d0000000003010433000003040130009c000008640000813d000000a001300039000000040200002900000000001204350000008001300039000003050200004100000000002104350000006001300039000003060200004100000000002104350000004001300039000003070200004100000000002104350000002001300039000003080200004100000000002104350000007a0100003900000000001304350000000002000019000000030120008c000a00000003001d0000082d0000213d000200000002001d000000000203043300000020013000390ad703540000040f0000000a0700002900000004020000290000000003020433000900000001001d000000000100041400000000040704330000000002000019000000000542004b000007a70000813d000000000532001900000020022000390000000006720019000000000606043300000000006504350000079f0000013d000000000234001900000000000204350000000202000039000000200600003900000000050000190ad7031f0000040f000000000110004c0000086c0000613d00000000020004330000000a0800002900000000010804330000000403000029000000000703043300000020037000390000000004000019000000000514004b000007be0000813d00000000053400190000002004400039000000000684001900000000060604330000000000650435000007b60000013d0000000904000029000000000442013f0000000002310019000500000004001d0000000000420435000000200210003900000000002704350000005f01100039000000200200008a000000000221016f000300000007001d0000000001720019000000000221004b00000000020000190000000102004039000002ea0310009c000008640000213d0000000102200190000008640000c13d000000040200002900000000001204350000000c01000039000a00000001001d0ad70ad50000040f0000000003010019000002ea0130009c000008640000213d00000001013000390000000a02000029000900000003001d0ad70ad30000040f0000000a01000029000000000010043500000009010000290000030c0210004100000005010000290ad70ad30000040f0000000a010000290ad70ad50000040f000000000210004c0000085c0000613d000000010110008a000000000210004c000008190000613d000a00000001001d0ad708b00000040f000800000002001d0ad70ad50000040f000600000001001d0000000a01000029000000010110008a0000000101100270000900000001001d0ad708b00000040f000700000002001d0ad70ad50000040f00000007020000290000000302200210000000000121022f000000ff0220008c000000000100201900000008020000290000000302200210000000ff0320008c0000000a03000029000008190000213d0000000604000029000000000224022f000000000112004b000008190000a13d00000009010000290ad708b00000040f000800000002001d0ad70ad50000040f000700000001001d0000000a010000290ad708b00000040f000000080300002900000003033002100000000704000029000000000434022f000000ff0330008c000000000304001900000000030020190ad708c60000040f00000009010000290ad708b00000040f00000005030000290ad708c60000040f0000000901000029000007e80000013d0000000c010000390ad70ad50000040f000000000210004c0000085c0000613d000000010210008a0000000001210170000008270000c13d0000000d010000390ad70ad50000040f000002ea01100197000002ea0210009c0000085c0000613d00000001011000390ad708dc0000040f00000003010000290ad709ab0000040f000000020200002900000001022000390000000303000029000007910000013d0ad708e90000040f0000000007000414000000040100002900000000010104330000000102000029000000000272004b0000088e0000a13d0000000a0600002900000000020604330000000003000019000000000423004b0000083f0000813d00000000041300190000002003300039000000000563001900000000050504330000000000540435000008370000013d00000000031200190000000000030435000a00000007001d0ad703540000040f00000001020000290000000a0300002900000000023200490000000403000029000000000303043300000000002304350000000005010019000002b7010000410000000002000414000002b70420009c0000000002018019000002b70430009c00000000010340190000004001100210000000c002200210000000000112019f0000030a011001c70000800d0200003900000002030000390000030b040000410ad70ac90000040f00000001012001900000089b0000613d0000000a00000005000000000001042d000002da010000410000000000100435000000110100003900000004020000390000000000120435000000240200003900000000010000190ad703a50000040f000002da010000410000000000100435000000410100003900000004020000390000000000120435000000240200003900000000010000190ad703a50000040f000000030200036700000001040000310000001f0340018f000000040100002900000000010104330000000504400270000000000540004c0000087d0000613d000000000500001900000005065002100000000007610019000000000662034f000000000606043b00000000006704350000000105500039000000000645004b000008750000413d000000000530004c0000088c0000613d0000000504400210000000000242034f00000000044100190000000303300210000000000504043300000000053501cf000000000535022f000000000202043b0000010003300089000000000232022f00000000023201cf000000000252019f000000000024043500000001020000310ad703a50000040f000000440210003900000309030000410000000000320435000000240210003900000012030000390000000000320435000002e502000041000000000021043500000004021000390000002003000039000000000032043500000064020000390ad703a50000040f000000000100001900000000020000190ad703a50000040f00010000000000020000000c01000039000100000001001d0ad70ad50000040f000000000110004c000008a80000613d000000010100002900000000001004350000000100000005000000000001042d000002da010000410000000000100435000000320100003900000004020000390000000000120435000000240200003900000000010000190ad703a50000040f0002000000000002000200000001001d0000000c01000039000100000001001d0ad70ad50000040f0000000202000029000000000121004b000008be0000a13d000000010100002900000000001004350000030c0120004100000000020000190000000200000005000000000001042d000002da010000410000000000100435000000320100003900000004020000390000000000120435000000240200003900000000010000190ad703a50000040f0003000000000002000200000003001d000100000002001d000300000001001d0ad70ad50000040f00000001020000290000000302200210000000010300008a00000000042301cf000000ff0520008c0000000004002019000000020500002900000000022501cf0000000002002019000000000242016f000000000334013f000000000131016f000000000121019f00000003020000290ad70ad30000040f0000000300000005000000000001042d0002000000000002000100000001001d0000000d01000039000200000001001d0ad70ad50000040f0000000102000029000002ea022001970000030d01100197000000000121019f00000002020000290ad70ad30000040f0000000200000005000000000001042d00080000000000020000000c010000390ad70ad50000040f000700000001001d000000000110004c000009940000613d0ad7089e0000040f0000030c01000041000800000001001d0ad70ad50000040f0000000701000029000000010110008a0ad708b00000040f0ad70ad50000040f000700000001001d0ad7089e0000040f00000008010000290ad70ad50000040f000000070100002900000008020000290ad70ad30000040f0000000c01000039000200000001001d0ad70ad50000040f000000000210004c000009a30000613d00000002020000290000000000200435000800000001001d0000030e0210004100000000010000190ad70ad30000040f0000000801000029000000010110008a00000002020000290ad70ad30000040f000000010100008a000100000001001d0000000003000019000700000003001d000002cf010000410000000102000029000000000223004b00000000020000190000000002012019000002cf03300197000002cf0430009c0000000001008019000002cf03300167000002cf0330009c000000000102c019000000000110004c0000098c0000613d00000002010000290ad70ad50000040f0000000704000029000000010240021000000001032001bf000800000003001d000000000313004b0000097b0000813d0000000202200039000000000112004b000009430000813d0000000801000029000600000002001d0ad708b00000040f000500000002001d0ad70ad50000040f000400000001001d00000006010000290ad708b00000040f000300000002001d0ad70ad50000040f000000050200002900000003022002100000000403000029000000000323022f000000ff0220008c0000000002030019000000000200201900000003030000290000000303300210000000ff0430008c0000000604000029000009430000213d000000000131022f000000000121004b000009430000a13d000800000004001d00000008010000290ad708b00000040f000600000002001d0ad70ad50000040f000400000001001d00000007010000290ad708b00000040f000500000002001d0ad70ad50000040f000000070400002900000005020000290000000302200210000000000121022f000000ff0220008c000000000100201900000006020000290000000302200210000000ff0320008c0000097b0000213d0000000403000029000000000223022f000000000112004b0000097b0000a13d00000000010400190ad708b00000040f000600000002001d0ad70ad50000040f000500000001001d0000000801000029000800000001001d0ad708b00000040f000400000002001d0ad70ad50000040f000300000001001d00000007010000290ad708b00000040f000000040300002900000003033002100000000304000029000000000434022f000000ff0330008c000000000304001900000000030020190ad708c60000040f00000008010000290ad708b00000040f000000060300002900000003033002100000000504000029000000000434022f000000ff0330008c000000000304001900000000030020190ad708c60000040f0000000803000029000009100000013d0000000c010000390ad70ad50000040f0000000102000029000000000221004b0000098c0000613d000000010210003900000000011201700000098a0000c13d0000000d010000390ad70ad50000040f000002ea01100197000000010110008a000002ea0210009c0000098c0000213d0ad708dc0000040f0000000800000005000000000001042d000002da010000410000000000100435000000110100003900000004020000390000000000120435000000240200003900000000010000190ad703a50000040f0000004001000039000000000101043300000044021000390000030f030000410000000000320435000000240210003900000001030000390000000000320435000002e502000041000000000021043500000004021000390000002003000039000000000032043500000064020000390ad703a50000040f000002da010000410000000000100435000000310100003900000004020000390000000000120435000000240200003900000000010000190ad703a50000040f00020000000000020000004002000039000200000002001d00000000030204330000031002000041000000000023043500000004023000390000002004000039000000000042043500000000020104330000002404300039000000000024043500000044073000390000000004000019000000000524004b000009c10000813d00000000057400190000002004400039000000000614001900000000060604330000000000650435000009b90000013d000000000172001900000000000104350000001f01200039000000200200008a000000000121016f00000044041000390000000001000414000080080200003900000020060000390000000005030019000100000003001d0ad702ea0000040f0000000104000031000000000110004c000009e40000613d000000200140008c000000200100003900000000010440190000001f01100039000000600210018f00000001010000290000000001120019000000000221004b00000000020000190000000102004039000002ea0310009c00000a050000213d000000010220019000000a050000c13d00000002020000290000000000120435000000200140008c00000a0d0000413d0000000200000005000000000001042d00000003030003670000001f0240018f000000020100002900000000010104330000000504400270000000000540004c000009f40000613d000000000500001900000005065002100000000007610019000000000663034f000000000606043b00000000006704350000000105500039000000000645004b000009ec0000413d000000000520004c00000a030000613d0000000504400210000000000343034f00000000044100190000000302200210000000000504043300000000052501cf000000000525022f000000000303043b0000010002200089000000000323022f00000000022301cf000000000252019f000000000024043500000001020000310ad703a50000040f000002da010000410000000000100435000000410100003900000004020000390000000000120435000000240200003900000000010000190ad703a50000040f000000000100001900000000020000190ad703a50000040f000300000000000200000040050000390000000001050433000002d90210009c00000a6e0000813d00000060021000390000000000250435000003110200004100000000002104350000000002050433000003120320009c00000a6e0000213d0000008003200039000000000035043500000060032000390000031304000041000000000043043500000040032000390000031404000041000000000043043500000020032000390000031504000041000000000043043500000041060000390000000000620435000000400310003900000316040000410000000000430435000000200310003900000000002304350000000007050433000003170270009c00000a6e0000213d00000060027000390000000000250435000003180200004100000000002704350000000002050433000003120320009c00000a6e0000213d0000008003200039000000000035043500000060032000390000031304000041000000000043043500000040032000390000031904000041000000000043043500000020032000390000031a040000410000000000430435000000000062043500000040037000390000031b04000041000000000043043500000020037000390000000000230435000300000005001d000200000006001d000100000007001d0ad70a760000040f00000001010000290ad70a760000040f000000020500002900000003040000290000000001040433000003170210009c00000a6e0000213d000000600210003900000000002404350000031c0200004100000000002104350000000002040433000003120320009c00000a6e0000213d0000008003200039000000000034043500000060032000390000031d04000041000000000043043500000040032000390000031e04000041000000000043043500000020032000390000031f040000410000000000430435000000000052043500000020031000390000000000230435000000400210003900000000000204350ad70a760000040f0000000300000005000000000001042d000002da010000410000000000100435000000410100003900000004020000390000000000120435000000240200003900000000010000190ad703a50000040f0002000000000002000000200210003900000000030204330000000002030433000000410220008c00000aa40000c13d00000041023000390000000002020433000000ff0220018f0000001b0420008a000000010440008c00000aa40000213d00000040041000390000000004040433000200000004001d000000000101043300000020043000390000000004040433000000400330003900000000050304330000004003000039000100000003001d000000000303043300000060063000390000000000560435000000400530003900000000004504350000002004300039000000000024043500000000001304350000000000000435000000000100041400000001020000390000008004000039000000200600003900000000050000190ad7031f0000040f000000000110004c00000aa70000613d00000000010004330000000202000029000000000121013f000002d00110019800000aa40000c13d0000000200000005000000000001042d000000000100001900000000020000190ad703a50000040f000000030200036700000001040000310000001f0340018f000000010100002900000000010104330000000504400270000000000540004c00000ab80000613d000000000500001900000005065002100000000007610019000000000662034f000000000606043b00000000006704350000000105500039000000000645004b00000ab00000413d000000000530004c00000ac70000613d0000000504400210000000000242034f00000000044100190000000303300210000000000504043300000000053501cf000000000535022f000000000202043b0000010003300089000000000232022f00000000023201cf000000000252019f000000000024043500000001020000310ad703a50000040f00000acc002104210000000102000039000000000001042d0000000002000019000000000001042d00000ad1002104230000000102000039000000000001042d0000000002000019000000000001042d000000000012041b000000000001042d000000000101041a000000000001042d00000ad70000043200000ad80001042e00000ad9000104300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffff0000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006603c2f10000000000000000000000000000000000000000000000000000000002d05d3f000000000000000000000000000000000000000000000000000000000738693d0000000000000000000000000000000000000000000000000000000019d8ac610000000000000000000000000000000000000000000000000000000022844fbc000000000000000000000000000000000000000000000000000000002abbd748000000000000000000000000000000000000000000000000000000003b29037c000000000000000000000000000000000000000000000000000000004840a05100000000000000000000000000000000000000000000000000000000579ae3ec0000000000000000000000000000000000000000000000000000000059308f0f000000000000000000000000000000000000000000000000000000005efe4bb4000000000000000000000000000000000000000000000000000000007737dde7000000000000000000000000000000000000000000000000000000007b494b6e000000000000000000000000000000000000000000000000000000007fd5946100000000000000000000000000000000000000000000000000000000874e8f8f00000000000000000000000000000000000000000000000000000000993a04b700000000000000000000000000000000000000000000000000000000ab25690f00000000000000000000000000000000000000000000000000000000aea34ae800000000000000000000000000000000000000000000000000000000af640d0f00000000000000000000000000000000000000000000000000000000be8b112000000000000000000000000000000000000000000000000000000000c6f9688400000000000000000000000000000000000000000000000000000000fb38aa568000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffffffffffff54657374206d65737361676520320000000000000000000000000000000000003ea98af6e35141fbcacc1724e14f5d76b9b58e41f6c35d0e8ae2e204e66695eb993a04b70000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000449bf97d987c61f24f2a6bbac8f2e426eab123cdfadfc01364acfff36c658d902000002000000000000000000000000000000000000000000000000000000009c4d535bdea7cd8a978f128b93471df48c7dbab89d703809115bdc118c235bfd0200000000000000000000000000000000000084000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffa04e487b71000000000000000000000000000000000000000000000000000000006865617020746573742073686f756c64206661696c65640000000000000000006661696c6564000000000000000000000000000000000000000000000000000073656e64696e67206c31206d6573736167657320746573742073686f756c642072657475726e206d656d6f727920746573742073686f756c64206661696c656465640000000000000000000000000000000000000000000000000000000000006163636573732063616c6c6461746120746573742073686f756c64206661696c616363657373206d656d6f727920746573742073686f756c64206661696c6564686f756c64206661696c656400000000000000000000000000000000000000007261772063616c6c2074657374207769746820626967206f7574207075742073696e2064656c65676174652063616c6c0000000000000000000000000000000008c379a0000000000000000000000000000000000000000000000000000000001806aa1896bbf26568e884a7374b41e002500962caba6a15023a8d90e8508b836603c2f100000000000000000000000000000000000000000000000000000000486561702073686f756c64206e6f74206265206d6f6469666965640000000000ab25690f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffff000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeaea34ae8000000000000000000000000000000000000000000000000000000007b494b6e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000738693d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffff00000000000000000000000000000000000000000000000000000000800000003b29037c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffff7b01000035cd4a1b3f84331419050d6ae2d93c44ec0563f2f82bd890769ed5abec2d49c67975aadd2d389580b368cfff5b49965b0bd5da33c144922ce01e7a4d7b4661696c656420746f206465706c6f7920636f6e7472616374000000000000006661696c6564207472616e736665722063616c6c0000000000000000000000000000000000000000000000000000000000000000000000010000000000000000486561702073686f756c64206e6f7420626520656d7074790000000000000000938b5f3299a1f3b18e458564efbb950733226014eece26fae19012d850b48d8342cbb15ccdc3cad6266b0e7a08c0454b23bf29dc2df74b6f3c209e9336465bd119cae4629a2dd7890036d0d1f6a82742845b778b7184e38d5bebfd4cce3b181ea6ae0aac158b2d5c9a9c9285743419d62a32f6727a640955e4ce8ee41503c784ffffffffffffffffffffffff00000000000000000000000000000000000000007877a797fe6dca4321f33fd95414da079ab78e698d761514c01ced9211af267efe173b97ed9aa263236c52fa3eb334d07741add95e972d17352d76816b4aaea39a8a0592ac89c5ad3bc6df8224c17b485976f597df104ee20d0df415241f670b796b89b91644bc98cd93958e4c9038275d622183e25ac5af08cc6b5d95539132ffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000000000000000000000000000000000000000000000000000ffffffffffffff6074686520696e6475737472792773207374616e646172642e2e2e00000000000020696e6475737472792e204c6f72656d20497073756d20686173206265656e20206f6620746865207072696e74696e6720616e64207479706573657474696e674c6f72656d20497073756d2069732073696d706c792064756d6d792074657874536f6d65206572726f72206d6573736167650000000000000000000000000000020000000000000000000000000000000000002000000000000000000000000085bd2d2aa0e5528cca3248dfb1e992d0113a553802d7924fdf049ae9ed1d5b30df6966c971051c3d54ec59162606531493a51404a002842f56009d7e5cf4a8c7ffffffffffffffffffffffffffffffffffffffffffffffff0000000000000000df6966c971051c3d54ec59162606531493a51404a002842f56009d7e5cf4a8c6770000000000000000000000000000000000000000000000000000000000000062f84b240000000000000000000000000000000000000000000000000000000014431339128bd25f2c7f93baa611e367472048757f4ad67f6d71a5ca0da550f5000000000000000000000000000000000000000000000000ffffffffffffff7f1c0000000000000000000000000000000000000000000000000000000000000046eabf35680328e26ef4579caf8aeb2cf9ece05dbf67a4f3d1f28c7b1d0e354651e4dbbbcebade695a3f0fdf10beb8b5f83fda161e1a3105a14c41168bf3dce00000000000000000000000007f8b3b04bf34618f4a1723fba96b5db211279a2b000000000000000000000000000000000000000000000000ffffffffffffff9fe0682fd4a26032afff3b18053a0c33d2a6c465c0e19cb1e4c10eb0a949f2827c0bdb5f0ac79d1a7efdc255f399a045038c1b433e9d06c1b1abd58a5fcaab33f1c46cdc50a66f4d07c6e9a127a7277e882fb21bcfb5b068f2b58c7f7283993b790000000000000000000000000865a77d4d68c7e3cdd219d431cfee9271905074dd69e9950f52dddcbc6751fdbb6949787cc1b84ac4020ab0617ec8ad950e554a1b000000000000000000000000000000000000000000000000000000000000004068f5b5e6c4b442e83fcb7b6290520ebb5e077cd10d3bd86cf431ca4b640162b00986d8bb52ee7acb06cabfa6c2c099d8904c7c8d56707a267ddbafd7aed0700000000000000000000000000000000000000000000000000000000000000000",
- "default_account_code": "0x0004000000000002000700000000000200000000030100190000006003300270000003540430019700030000004103550002000000010355000003540030019d000100000000001f00000080010000390000004007000039000000000017043500000001012001900000005b0000c13d0000000001000031000000040210008c000000660000413d0000000202000367000000000302043b000000e003300270000003560430009c000000000a00041100000000090004120000000008000410000000740000613d000003570430009c0000008c0000613d000003580430009c000000b30000613d000003590430009c000000c50000613d0000035a0330009c0000006c0000c13d000000040310008a0000035b04000041000000200530008c000000000500001900000000050440190000035b03300197000000000630004c000000000400a0190000035b0330009c00000000030500190000000003046019000000000330004c000000cb0000c13d0000000402200370000000000602043b0000035c0260009c000000cb0000213d000000040560003900000000015100490000035b02000041000002600310008c000000000300001900000000030240190000035b01100197000000000410004c000000000200a0190000035b0110009c00000000010300190000000001026019000000000110004c000000cb0000c13d0000800101a0008c000000680000c13d0000035d09900197000000000189004b000000680000c13d0000000001000414000000000207043300000020032000390000035e04000041000000000043043500000104036000390000000203300367000000000303043b00000024042000390000000000340435000000240300003900000000003204350000035f0320009c000000f60000a13d00000363010000410000000000100435000000410100003900000004020000390000000000120435000000240200003900000000010000190d4902a00000040f0000000001000416000000000110004c000000cb0000c13d00000020020000390000010001000039000000000021043900000120020000390000000000020439000000400200003900000355030000410d4902960000040f000000000110004c0000006c0000c13d0000000001000019000000000200001900000000030000190d4902960000040f0000000001000416000000000110004c000000cb0000c13d0d4905bf0000040f0000000001000019000000000200001900000000030000190d4902960000040f000500000009001d000600000008001d000400000007001d00070000000a001d0d4902a90000040f0000000701000029000080010110008c000000680000c13d00000005010000290000035d011001970000000604000029000000000141004b000000680000c13d000000000102001900000000020300190d49042e0000040f00000004020000290000000003020433000003640110019700000000001304350000002002000039000000000103001900000000030000190d4902960000040f000500000009001d000600000008001d000400000007001d00070000000a001d0d4902a90000040f0000000701000029000080010110008c000000680000c13d00000005010000290000035d021001970000000601000029000000000112004b000000680000c13d000600000002001d00000220023000390000000001030019000700000002001d000300000003001d0d4903300000040f000000030120008c000000c60000213d0000000401000029000000000101043300000064021000390000036f03000041000000000032043500000044021000390000037003000041000000000032043500000024021000390000003a0300003900000000003204350000036702000041000000000021043500000004021000390000002003000039000000000032043500000084020000390d4902a00000040f000500000009001d000600000008001d00070000000a001d0d4902a90000040f0000000701000029000080010110008c000000680000c13d00000005010000290000035d011001970000000602000029000000000121004b000000680000c13d00000000010300190d49049f0000040f0000000001000019000000000200001900000000030000190d4902960000040f0d4902d10000040f000000030100002900000007020000290d4903300000040f000000040220008c000000ce0000813d000000000100001900000000020000190d4902a00000040f0000000201100367000000000101043b0000036401100197000003650210009c000000e90000c13d000000030100002900000007020000290d4903300000040f000000430120008c000001390000213d0000000404000029000000000104043300000064021000390000036d03000041000000000032043500000044021000390000036e030000410000000000320435000000240210003900000000004204350000036702000041000000000021043500000004021000390000002003000039000000000032043500000084020000390d4902a00000040f000003660110009c000000680000613d00000004010000290000000002010433000700000002001d0000036701000041000000000012043500000004012000390d490c390000040f0000000703000029000000000231004900000000010300190d4902a00000040f000500000009001d000000600320003900000000003704350000035401100197000700000005001d000600000006001d0d4905cb0000040f00000007010000290d49061b0000040f000400000001001d000000060100002900000044011000390000000201100367000000000101043b000080060110008c0000010e0000c13d0000000601000029000001c40210003900000007010000290d4903300000040f000000030120008c000000000100001900000001010020390d49035d0000040f00000007010000290d490c430000040f0000036002000041000000000020043900000004030000390000000502000029000300000003001d0000000000230439000500000001001d0000800a0100003900000024020000390d4902840000040f0000000502000029000000000112004b0000000001000019000000010100a0390d49036e0000040f0000000601000029000001e402100039000600000002001d00000007010000290d4903300000040f00000000030000310d4903830000040f000000070100002900000006020000290d4903300000040f000000000120004c0000018d0000c13d000000060100002900000007010000290d4903c40000040f0000000002010433000000410220008c000001860000213d00000363010000410000000000100435000000320100003900000003020000290000000000120435000000240200003900000000010000190d4902a00000040f000000030100002900000007020000290d4903300000040f000000440220008c000000cb0000413d00000004031000390000000202000367000000000332034f000000000603043b0000035d0360009c000000cb0000213d0000000303000029000000e003300039000000000332034f0000002401100039000000000112034f000000000101043b000500000001001d000000000203043b000000040500002900000000030504330000036801000041000000000013043500000004073000390000000001000414000000060400002900000000004704350000035d042001970000002402300039000300000004001d0000000000420435000000040260008c0000019b0000613d000000440400003900000000020600190000000005030019000700000006001d000200000003001d0d49024a0000040f000000020300002900000007060000290000000405000029000000000110004c0000019b0000c13d000000030200036700000001040000310000001f0340018f00000000010504330000000504400270000000000540004c000001750000613d000000000500001900000005065002100000000007610019000000000662034f000000000606043b00000000006704350000000105500039000000000645004b0000016d0000413d000000000530004c000001840000613d0000000504400210000000000242034f00000000044100190000000303300210000000000504043300000000053501cf000000000535022f000000000202043b0000010003300089000000000232022f00000000023201cf000000000252019f000000000024043500000001020000310d4902a00000040f00000061011000390000000002010433000003610220019700000362022001c7000000000021043500000007010000290000000601000029000000070100002900000006020000290d4903300000040f00000000030000310d4903830000040f000000000201001900000004010000290d4905410000040f00000007010000290d49049f0000040f0000000001000019000000000200001900000000030000190d4902960000040f0000000101000031000000200210008c000000200200003900000000020140190000001f02200039000000600420018f00000000070300190000000002340019000000000342004b000000000300001900000001030040390000035c0420009c000000530000213d0000000103300190000000530000c13d0000000000250435000000200110008c000000cb0000413d000700000006001d00000000010704330000000503000029000000000131004b000000680000813d0000002001200039000003690300004100000000003104350000002401200039000000030300002900000000003104350000004401000039000100000001001d0000000000120435000000440120003900000000000104350000036a0120009c00000004030000290000000701000029000000530000213d000000800420003900000000004304350d490c7d0000040f000000070200002900000004050000290000000006050433000003680100004100000000001604350000002403600039000000000100041400000003040000290000000000430435000200000006001d000000040460003900000006030000290000000000340435000000040320008c000001da0000613d0000004404000039000000020300002900000000050300190d49024a0000040f0000000405000029000000000110004c000001650000613d0000000101000031000000200210008c000000200200003900000000020140190000001f02200039000000600220018f00000002030000290000000003320019000000000223004b000000000200001900000001020040390000035c0430009c000000530000213d0000000102200190000000530000c13d0000000000350435000000200110008c000000cb0000413d00000002010000290000000001010433000000000110004c000002040000c13d000000200130003900000369020000410000000000210435000000440130003900000005020000290000000000210435000000240130003900000003020000290000000000210435000000010100002900000000001304350000036a0130009c00000004020000290000000701000029000000530000213d0000008004300039000000000042043500000000020300190d490c7d0000040f000000680000013d00000064013000390000036b02000041000000000021043500000044013000390000036c02000041000000000021043500000024013000390000003602000039000000000021043500000367010000410000000000130435000000040130003900000020020000390000000000210435000000840200003900000000010300190d4902a00000040f0002000000000002000200000006001d000100000005001d0000035405000041000003540630009c00000000030580190000004003300210000003540640009c00000000040580190000006004400210000000000334019f000003540410009c0000000001058019000000c001100210000000000113019f0d490d3f0000040f000000010800002900000002040000290000001f0340018f0000000504400270000000000540004c000002340000613d000000000500001900000005065002100000000007680019000000000661034f000000000606043b00000000006704350000000105500039000000000645004b0000022c0000413d000000010220018f000000000530004c000002440000613d0000000504400210000000000541034f00000000044800190000000303300210000000000604043300000000063601cf000000000636022f000000000505043b0000010003300089000000000535022f00000000033501cf000000000363019f000000000034043500030000000103550000006001100270000103540010019d00000000010200190000000200000005000000000001042d0001000000000002000100000005001d0000035405000041000003540630009c00000000030580190000004003300210000003540640009c00000000040580190000006004400210000000000334019f000003540410009c0000000001058019000000c001100210000000000113019f0d490d440000040f0000000106000029000000010220018f000000000300001900000005043002100000000005460019000000000441034f000000000404043b00000000004504350000000103300039000000000430004c0000000004000019000000010400603900000001044001900000025c0000c13d00030000000103550000006001100270000103540010019d00000000010200190000000100000005000000000001042d0000035403000041000003540410009c00000000010380190000004001100210000003540420009c00000000020380190000006002200210000000000112019f0000000002000414000003540420009c0000000002038019000000c002200210000000000112019f00000371011001c700008010020000390d490d440000040f0000000102200190000002810000613d000000000101043b000000000001042d000000000100001900000000020000190d4902a00000040f000000000301001900000354010000410000000004000414000003540540009c0000000001044019000000c00110021000000060022002100000000001120019000003720110004100000000020300190d490d440000040f0000000102200190000002930000613d000000000101043b000000000001042d000000000100001900000000020000190d4902a00000040f0000035404000041000003540510009c000000000104801900000040011002100000000001310019000003540320009c00000000020480190000006002200210000000000121001900000d4a0001042e0000035403000041000003540420009c0000000002038019000003540410009c000000000103801900000040011002100000006002200210000000000112019f00000d4b00010430000000040210008a0000035b030000410000005f0420008c000000000400001900000000040320190000035b02200197000000000520004c00000000030080190000035b0220009c00000000020400190000000002036019000000000220004c000002ce0000613d00000002020003670000004403200370000000000303043b0000035c0430009c000002ce0000213d000000040330003900000000013100490000035b04000041000002600510008c000000000500001900000000050440190000035b01100197000000000610004c000000000400a0190000035b0110009c00000000010500190000000001046019000000000110004c000002ce0000c13d0000000401200370000000000101043b0000002402200370000000000202043b000000000001042d000000000100001900000000020000190d4902a00000040f000300000000000200000000010000310d4902a90000040f0000000001000411000080010110008c000003080000c13d00000000010004120000035d011001970000000002000410000000000121004b000003080000c13d000000a00230003900000000010004140000000204000367000000000524034f0000006002300039000000000224034f000000000202043b000000000405043b000000000340004c0000030c0000c13d0000000004000415000000030440008a00000020044000c9000300000000001d000100000004001d000080010200003900000000030000190000000004000019000000000500001900000000060000190d4902150000040f0000000103000029000000200230011a000000000201001f000000000110004c000003080000c13d000000400100003900000000010104330000006402100039000003730300004100000000003204350000004402100039000003740300004100000000003204350000002402100039000000250300003900000000003204350000036702000041000000000021043500000004021000390000002003000039000000000032043500000084020000390d4902a00000040f0000000001000019000000000200001900000000030000190d4902960000040f00000000534200a900000000544300d9000000000224004b000003280000c13d0000000004000415000000020440008a00000020044000c9000200000000001d000000000230004c000002ea0000613d0000035402000041000003540410009c0000000001028019000000c00110021000000371011001c70000800902000039000080010400003900000000050000190d490d3f0000040f00000000030100190000006003300270000103540030019d0000000003000415000000020330008a00000020033000c90003000000010355000000010120018f000002f20000013d00000363010000410000000000100435000000110100003900000004020000390000000000120435000000240200003900000000010000190d4902a00000040f000000000300003100000000041300490000001f0540008a0000000204000367000000000224034f000000000202043b0000035b06000041000000000752004b000000000700001900000000070640190000035b055001970000035b08200197000000000958004b000000000600a019000000000558013f0000035b0550009c00000000050700190000000005066019000000000550004c0000035a0000613d0000000001120019000000000214034f000000000202043b0000035c0420009c0000035a0000213d000000000323004900000020011000390000035b04000041000000000531004b000000000500001900000000050420190000035b033001970000035b06100197000000000736004b0000000004008019000000000336013f0000035b0330009c00000000030500190000000003046019000000000330004c0000035a0000c13d000000000001042d000000000100001900000000020000190d4902a00000040f000000000110004c000003600000613d000000000001042d00000040010000390000000001010433000000440210003900000375030000410000000000320435000003670200004100000000002104350000002402100039000000200300003900000000003204350000000402100039000000000032043500000064020000390d4902a00000040f000000000110004c000003710000613d000000000001042d000000400100003900000000010104330000006402100039000003760300004100000000003204350000004402100039000003770300004100000000003204350000002402100039000000220300003900000000003204350000036702000041000000000021043500000004021000390000002003000039000000000032043500000084020000390d4902a00000040f0000000004010019000003780120009c000003b90000813d0000003f01200039000000200500008a000000000651016f000000400500003900000000010504330000000006610019000000000716004b000000000700001900000001070040390000035c0860009c000003b90000213d0000000107700190000003b90000c13d000000000065043500000000002104350000000005420019000000000335004b000003c10000213d0000001f0520018f000000020440036700000020031000390000000506200270000000000760004c000003a70000613d000000000700001900000005087002100000000009830019000000000884034f000000000808043b00000000008904350000000107700039000000000867004b0000039f0000413d000000000750004c000003b60000613d0000000506600210000000000464034f00000000066300190000000305500210000000000706043300000000075701cf000000000757022f000000000404043b0000010005500089000000000454022f00000000045401cf000000000474019f000000000046043500000000022300190000000000020435000000000001042d00000363010000410000000000100435000000410100003900000004020000390000000000120435000000240200003900000000010000190d4902a00000040f000000000100001900000000020000190d4902a00000040f00000040020000390000000001020433000003790310009c000003d90000813d0000008003100039000000000032043500000041020000390000000000210435000000200210003900000000030000310000000203300367000000000400001900000005054002100000000006520019000000000553034f000000000505043b00000000005604350000000104400039000000030540008c000003d00000413d000000000001042d00000363010000410000000000100435000000410100003900000004020000390000000000120435000000240200003900000000010000190d4902a00000040f000000400200003900000000010204330000037a0310009c000003f90000813d0000004003100039000000000032043500000001020000390000000000210435000000200210003900000000030000310000000203300367000000000400001900000005054002100000000006520019000000000553034f000000000505043b00000000005604350000000104400039000000000540004c000000000500001900000001050060390000000105500190000003ed0000c13d000000000001042d00000363010000410000000000100435000000410100003900000004020000390000000000120435000000240200003900000000010000190d4902a00000040f0000000002010019000003780120009c000004260000813d0000003f01200039000000200300008a000000000431016f000000400300003900000000010304330000000004410019000000000514004b000000000500001900000001050040390000035c0640009c000004260000213d0000000105500190000004260000c13d000000000043043500000000002104350000001f022000390000000502200270000000000320004c000004230000613d000000200310003900000000040000310000000204400367000000000500001900000005065002100000000007630019000000000664034f000000000606043b00000000006704350000000105500039000000000625004b0000041b0000413d000000000200004c000004250000613d000000000001042d00000363010000410000000000100435000000410100003900000004020000390000000000120435000000240200003900000000010000190d4902a00000040f00040000000000020000000006020019000300000001001d00000000010004140000004003000039000000000203043300000020042000390000035e050000410000000000540435000400000006001d00000100046000390000000204400367000000000404043b00000024052000390000000000450435000000240400003900000000004204350000037b0420009c0000048f0000813d0000006004200039000000000043043500000354011001970d4905cb0000040f0000000302000029000000000120004c00000000010200190000044b0000c13d00000004010000290d49061b0000040f000300000001001d000000040100002900000040021000390000000202200367000000000202043b000080060220008c000004590000c13d000001c0021000390d4903300000040f000000030120008c000000000100001900000001010020390d49035d0000040f00000004010000290d490c430000040f0000036002000041000000000020043900000000020004100000000403000039000100000003001d0000000000230439000200000001001d0000800a0100003900000024020000390d4902840000040f0000000202000029000000000112004b0000000001000019000000010100a0390d49036e0000040f0000000401000029000001e002100039000200000002001d0d4903300000040f00000000030000310d4903830000040f000000040100002900000002020000290d4903300000040f000000000120004c0000000401000029000004820000c13d000000020100002900000001010000290d4903c40000040f0000000002010433000000410220008c000004970000a13d00000061011000390000000002010433000003610220019700000362022001c700000000002104350000000401000029000000020200002900000002020000290d4903300000040f00000000030000310d4903830000040f000000000201001900000003010000290d4905410000040f0000037c02000041000000000110004c000000000102001900000000010060190000000400000005000000000001042d00000363010000410000000000100435000000410100003900000004020000390000000000120435000000240200003900000000010000190d4902a00000040f00000363010000410000000000100435000000320100003900000001020000290000000000120435000000240200003900000000010000190d4902a00000040f0004000000000002000200000001001d00000120031000390000000202000367000000000432034f0000004003100039000000000232034f000000000202043b000400000002001d000000000104043b000300000001001d0000037d0110009c000000000100001900000001010040390d490c6b0000040f0000000201000029000001c0021000390d4903300000040f00000000030000310d4903830000040f00000003020000290000037e062001970000000002010019000000000700041400000004010000290000035d04100197000080060140008c000004e00000c13d0000037f0170009c00000000010000190000000101004039000300000006001d000100000007001d000400000002001d0d490c6b0000040f00000004010000290000000001010433000200000001001d0000037f0110009c000000000100001900000001010040390d490c6b0000040f00000003030000290000000101000029000000c00110021000000380011001970000000402000029000000400220021000000381022000410000038202200197000000000112019f000000020200002900000060022002100000038302200197000000000121019f00000384011001c7000000000230004c000004ff0000613d00008009020000390000800604000039000000010500003900000000060000190d490d3f0000040f000300000002001d000005060000013d000000040140008c0000053c0000613d00000000050204330000002003200039000000000160004c000005340000613d0000035401000041000003540230009c000000000201001900000000020340190000004002200210000003540350009c000000000301001900000000030540190000006003300210000000000223019f000003540370009c0000000001074019000000c001100210000000000112019f00000371011001c70000800902000039000000000306001900000000050000190d490d3f0000040f00000000030100190000006003300270000103540030019d0003000000010355000000010120018f0000053a0000013d000080060200003900000000030000190000000004000019000000000500001900000000060000190d490d3f0000040f000300000002001d00030000000103550000006001100270000103540010019d0000035401100197000400000001001d0d4904010000040f00000004050000290000000102000031000000000225004b0000053e0000213d000000200310003900000003040003670000001f0250018f0000000505500270000000000650004c0000051f0000613d000000000600001900000005076002100000000008730019000000000774034f000000000707043b00000000007804350000000106600039000000000756004b000005170000413d000000000620004c0000052e0000613d0000000505500210000000000454034f00000000055300190000000302200210000000000605043300000000062601cf000000000626022f000000000404043b0000010002200089000000000424022f00000000022401cf000000000262019f0000000000250435000000030200002900000001022001900000053c0000c13d000000000201043300000000010300190d4902a00000040f000000000107001900000000020400190000000004050019000000000500001900000000060000190d4902150000040f000000000110004c0000053e0000613d0000000400000005000000000001042d000000000100001900000000020000190d4902a00000040f00010000000000020000000003020433000000410330008c000005710000c13d00000041032000390000000003030433000000ff0430018f0000001d0340008a000000030500008a000000000353004b000005800000a13d00000040032000390000000005030433000000200220003900000000020204330000004003000039000100000003001d0000000003030433000003860650009c0000058f0000813d0000006006300039000000000056043500000040053000390000000000250435000000200230003900000000004204350000000000130435000000000000043500000000010004140000000102000039000000800400003900000000050000190d49024a0000040f000000000110004c0000059d0000613d00000000010004330000035d011001970000000002000410000000000221004b00000000020000190000000102006039000000000110004c0000000001000019000000010100c039000000000112016f000000010110018f0000000100000005000000000001042d0000004001000039000000000101043300000044021000390000038503000041000000000032043500000024021000390000001d0300003900000000003204350000036702000041000000000021043500000004021000390000002003000039000000000032043500000064020000390d4902a00000040f000000400100003900000000010104330000004402100039000003880300004100000000003204350000002402100039000000160300003900000000003204350000036702000041000000000021043500000004021000390000002003000039000000000032043500000064020000390d4902a00000040f00000044013000390000038702000041000000000021043500000024013000390000000902000039000000000021043500000367010000410000000000130435000000040130003900000020020000390000000000210435000000640200003900000000010300190d4902a00000040f000000030200036700000001040000310000001f0340018f000000010100002900000000010104330000000504400270000000000540004c000005ae0000613d000000000500001900000005065002100000000007610019000000000662034f000000000606043b00000000006704350000000105500039000000000645004b000005a60000413d000000000530004c000005bd0000613d0000000504400210000000000242034f00000000044100190000000303300210000000000504043300000000053501cf000000000535022f000000000202043b0000010003300089000000000232022f00000000023201cf000000000252019f000000000024043500000001020000310d4902a00000040f0000000001000411000080010110008c000005c30000613d000000000001042d00000363010000410000000000100435000000010100003900000004020000390000000000120435000000240200003900000000010000190d4902a00000040f0003000000000002000200000002001d000100000001001d0000000001020433000300000001001d0000037f0110009c000000000100001900000001010040390d490c6b0000040f0000000101000029000000c00110021000000380011001970000000202000029000000400220021000000381022000410000038202200197000000000121019f000000030200002900000060022002100000038302200197000000000121019f00000384011001c7000080030200003900000000030000190000000004000019000000000500001900000000060000190d490d3f0000040f000200000002001d00030000000103550000006001100270000103540010019d0000035401100197000300000001001d0d4904010000040f00000003050000290000000102000031000000000225004b000006150000213d000000200310003900000003040003670000001f0250018f0000000505500270000000000650004c000006010000613d000000000600001900000005076002100000000008730019000000000774034f000000000707043b00000000007804350000000106600039000000000756004b000005f90000413d000000000620004c000006100000613d0000000505500210000000000454034f00000000055300190000000302200210000000000605043300000000062601cf000000000626022f000000000404043b0000010002200089000000000424022f00000000022401cf000000000262019f000000000025043500000002020000290000000102200190000006180000613d0000000300000005000000000001042d000000000100001900000000020000190d4902a00000040f000000000201043300000000010300190d4902a00000040f000f0000000000020000000207000367000000000217034f000000000302043b000000000230004c0000010004100039000000a00610003900000060051000390000004002100039000a00000002001d0000012002100039000b00000002001d000001c002100039000f00000001001d000e00000002001d000d00000005001d000c00000006001d0000070b0000613d000900000004001d000000710430008c000000c004100039000007780000c13d000800000004001d0d4903300000040f00000000030000310d4903830000040f000000000201043300000020011000390d49026d0000040f0000000f020000290000020003200039000000000400003100000000022400490000001f0520008a0000000202000367000000000332034f000000000303043b0000035b06000041000000000753004b000000000700001900000000070640190000035b055001970000035b08300197000000000958004b000000000600a019000000000558013f0000035b0550009c00000000050700190000000005066019000000000a010019000000000150004c00000b200000613d0000000f010000290000000001130019000000000312034f000000000503043b0000035c0350009c00000b200000213d0000000503500210000000000434004900000020061000390000035b01000041000000000746004b000000000700001900000000070120190000035b044001970000035b08600197000000000948004b0000000001008019000000000448013f0000035b0440009c000000000107c019000000000110004c00000b200000c13d0000004001000039000e00000001001d000000000401043300000020014000390000038c05500197000000000750004c000006760000613d000000000262034f000000000600001900000005076002100000000008710019000000000772034f000000000707043b00000000007804350000000106600039000000000756004b0000066e0000413d000000000200004c000006780000613d00070000000a001d00000000003404350000003f02300039000000200300008a000000000232016f0000000002240019000000000342004b000000000300001900000001030040390000035c0520009c00000b180000213d000000010330019000000b180000c13d0000000e03000029000000000023043500000000020404330d49026d0000040f000600000001001d0000000f0100002900000220021000390d4903300000040f00000000030000310d4903830000040f000000000201043300000020011000390d49026d0000040f00000002020003670000000d03000029000000000632034f0000000a03000029000000000532034f0000000f0c0000290000002003c00039000000000432034f0000000b03000029000000000732034f0000000903000029000000000832034f000000e003c00039000000000932034f0000000803000029000000000a32034f0000000c03000029000000000b32034f0000008003c00039000000000d0c0019000000000c32034f0000000002d2034f000000000302043b000000000404043b000000000505043b000000000606043b000000000c0c043b000000000b0b043b000000000a0a043b000000000909043b000000000808043b000000000707043b0000000e020000290000000002020433000001c00d20003900000000001d0435000001a001200039000000060d0000290000000000d104350000018001200039000000070d0000290000000000d1043500000160012000390000000000710435000001400120003900000000008104350000012001200039000000000091043500000100012000390000000000a10435000000e0012000390000000000b10435000000c0012000390000000000c10435000000a0012000390000000000610435000000800120003900000000005104350000006001200039000000000041043500000040012000390000000000310435000001c00100003900000000001204350000038d03000041000000200120003900000000003104350000038e0320009c00000b180000213d000001e0032000390000000e04000029000000000034043500000000020204330d49026d0000040f0000000e020000290000000002020433000f00000002001d0000038a020000410000000000200439000d00000001001d0000800b0100003900000004020000390d4902840000040f0000038f020000410000000f040000290000006003400039000000000023043500000390020000410000004003400039000000000023043500000000030400190000008002300039000000000012043500000391020000410000002001300039000000000021043500000080020000390000000000230435000003920230009c00000b180000213d000000a0023000390000000e04000029000000000024043500000000020304330d49026d0000040f0000000e02000029000000000402043300000042024000390000000d03000029000000000032043500000393020000410000002003400039000000000023043500000022024000390000000000120435000000420100003900000000001404350000036a0140009c00000b180000213d000000800140003900000b110000013d000000000147034f000000000101043b00090000000703530d490b720000040f000000090200035f0000000c03000029000000000232034f000000000202043b000c00000001001d00000000010200190d490b720000040f0000000d02000029000000090300035f000000000223034f000000000202043b000d00000001001d00000000010200190d490b720000040f0000000d0700002900000000020704330000004009000039000000000809043300000020038000390000000004000019000000000524004b0000072b0000813d00000000053400190000002004400039000000000674001900000000060604330000000000650435000007230000013d0000000003320019000000000003043500000000040104330000000005000019000000000645004b000007370000813d000000000635001900000020055000390000000007150019000000000707043300000000007604350000072f0000013d00000000013400190000000000010435000000000124001900000000001804350000003f01100039000000200200008a000700000002001d000000000221016f000d00000008001d0000000001820019000000000221004b000000000200001900000001020040390000035c0310009c00000b180000213d000000010220019000000b180000c13d000900000009001d00000000001904350000000a010000290000000201100367000000000101043b0000035d011001970d490b5a0000040f0000000b020000290000000202200367000000000202043b000a00000001001d00000000010200190d490b720000040f000b00000001001d0000000f010000290000000e020000290d4903300000040f0000035c01200197000000010210008c000007ba0000c13d0000000f010000290000000e020000290d4903300000040f000000000220004c00000b230000613d0000000205000367000000000115034f000000000101043b000000010200008a0000035b03000041000000000221004b000000000200001900000000020320190000035b011001970000035b0410009c00000000030080190000035b011001670000035b0110009c000000000102001900000000010360190000006006000039000000000110004c000007bd0000c13d00080000000503530d490b460000040f000000080500035f0000000006010019000007bd0000013d000000020230008c000008ad0000c13d0000038a0100004100000000001004390000800b010000390000000402000039000800000004001d0d4902840000040f0d490b720000040f000000020300036700070000000303530000000902000029000000000223034f000000000202043b000500000001001d00000000010200190d490b720000040f000000070200035f0000000803000029000000000232034f000000000202043b000600000001001d00000000010200190d490b720000040f000000070200035f0000000c03000029000000000232034f000000000202043b000800000001001d00000000010200190d490b720000040f0000000d02000029000000070300035f000000000223034f000000000202043b000900000001001d00000000010200190d490b720000040f0000000a02000029000000070300035f000000000223034f000000000202043b0000035d02200197000c00000001001d00000000010200190d490b5a0000040f0000000b020000290000000202200367000000000202043b000d00000001001d00000000010200190d490b720000040f000000050700002900000000020704330000004009000039000000000809043300000020038000390000000004000019000000000524004b000008e70000813d00000000053400190000002004400039000000000674001900000000060604330000000000650435000007b20000013d0d490ba70000040f000000020500036700000000060100190000000f010000290000014002100039000000000225034f0000006007000039000000000202043b000000000220004c0000000d020000290000000c030000290000000b040000290000000a050000290000000908000029000600000006001d000007f40000613d0000038a0100004100000000001004390000800b0100003900000004020000390d4902840000040f0d490b720000040f00000009080000290000000007080433000000200370003900000000020104330000000004000019000000000524004b000007dd0000813d00000000053400190000002004400039000000000614001900000000060604330000000000650435000007d50000013d0000000001320019000003940300004100000000003104350000000201200039000000000017043500000041012000390000000702000029000000000221016f0000000001720019000000000221004b000000000200001900000001020040390000035c0310009c00000b180000213d000000010220019000000b180000c13d00000000001804350000000f010000290000000d020000290000000c030000290000000b040000290000000a050000290000000606000029000800000007001d0000000006060433000500000006001d0000000004040433000400000004001d0000000004050433000300000004001d0000000002020433000200000002001d0000000002030433000100000002001d0000000e020000290d4903300000040f00000002010000290000000103000029000000000131001900000003030000290000000001310019000000040300002900000000013100190000000503000029000000000131001900000000012100190000000802000029000000000202043300000000012100190000035c011001970d490be70000040f000500000001001d0000000f010000290000000e020000290d4903300000040f000000050900002900000000050904330000000903000029000000000403043300000020034000390000000006000019000000000756004b000008220000813d000000000736001900000020066000390000000008960019000000000808043300000000008704350000081a0000013d00000000063500190000000000060435000000000545001900000020075000390000000c0c00002900000000060c043300000000080000190000000d0b000029000000000968004b000008320000813d00000000097800190000002008800039000000000ac80019000000000a0a04330000000000a904350000082a0000013d000000000776001900000000000704350000000005560019000000200750003900000000060b043300000000080000190000000a0c000029000000000968004b000008410000813d00000000097800190000002008800039000000000ab80019000000000a0a04330000000000a90435000008390000013d000000000776001900000000000704350000000005560019000000200750003900000000060c043300000000080000190000000b0b000029000000000968004b000008500000813d00000000097800190000002008800039000000000ac80019000000000a0a04330000000000a90435000008480000013d000000000776001900000000000704350000000005560019000000200750003900000000060b04330000000008000019000000000968004b0000085e0000813d00000000097800190000002008800039000000000ab80019000000000a0a04330000000000a90435000008560000013d0000000007760019000000000007043500000000055600190000002007500039000000060b00002900000000060b04330000000008000019000000000968004b0000086d0000813d00000000097800190000002008800039000000000ab80019000000000a0a04330000000000a90435000008650000013d0000000007760019000000000007043500000000055600190000001f0620018f000000200750003900000002011003670000000508200270000000000980004c0000087f0000613d0000000009000019000000050a900210000000000ba70019000000000aa1034f000000000a0a043b0000000000ab04350000000109900039000000000a89004b000008770000413d000000000960004c0000088e0000613d0000000508800210000000000181034f00000000078700190000000306600210000000000807043300000000086801cf000000000868022f000000000101043b0000010006600089000000000161022f00000000016101cf000000000181019f0000000000170435000000000125001900000020051000390000000000050435000000080900002900000000020904330000000006000019000000000726004b0000089c0000813d00000000075600190000002006600039000000000896001900000000080804330000000000870435000008940000013d000000000552001900000000000504350000000001410049000000000112001900000000001404350000003f011000390000000702000029000000000221016f0000000001420019000000000221004b000000000200001900000001020040390000035c0510009c00000b180000213d000000010220019000000b110000613d00000b180000013d000000010130008c00000b2b0000c13d0000038a0100004100000000001004390000800b0100003900000004020000390d4902840000040f0d490b720000040f000000020300036700080000000303530000000902000029000000000223034f000000000202043b000600000001001d00000000010200190d490b720000040f0000000c02000029000000080300035f000000000223034f000000000202043b000700000001001d00000000010200190d490b720000040f0000000d02000029000000080300035f000000000223034f000000000202043b000900000001001d00000000010200190d490b720000040f0000000a02000029000000080300035f000000000223034f000000000202043b0000035d02200197000c00000001001d00000000010200190d490b5a0000040f0000000b020000290000000202200367000000000202043b000d00000001001d00000000010200190d490b720000040f000000060700002900000000020704330000004009000039000000000809043300000020038000390000000004000019000000000524004b000009710000813d00000000053400190000002004400039000000000674001900000000060604330000000000650435000008df0000013d0000000003320019000000000003043500000000028200190000002004200039000000060e00002900000000030e043300000000050000190000000d0a0000290000000c0b000029000000090c000029000000080d000029000000000635004b000008fa0000813d000000000645001900000020055000390000000007e5001900000000070704330000000000760435000008f20000013d000000000443001900000000000404350000000002230019000000200420003900000000030d04330000000005000019000000000635004b000009080000813d000000000645001900000020055000390000000007d5001900000000070704330000000000760435000009000000013d000000000443001900000000000404350000000002230019000000200420003900000000030c04330000000005000019000000000635004b000009160000813d000000000645001900000020055000390000000007c50019000000000707043300000000007604350000090e0000013d000000000443001900000000000404350000000002230019000000200420003900000000030b04330000000005000019000000000635004b000009240000813d000000000645001900000020055000390000000007b50019000000000707043300000000007604350000091c0000013d000000000443001900000000000404350000000002230019000000200420003900000000030a04330000000005000019000000000635004b000009320000813d000000000645001900000020055000390000000007a50019000000000707043300000000007604350000092a0000013d000000000443001900000000000404350000000002230019000000200420003900000000030104330000000005000019000000000635004b000009400000813d00000000064500190000002005500039000000000715001900000000070704330000000000760435000009380000013d000000000143001900000000000104350000000001820049000000000113001900000000001804350000003f01100039000000200200008a000a00000002001d000000000221016f000d00000008001d0000000001820019000000000221004b000000000200001900000001020040390000035c0310009c00000b180000213d000000010220019000000b180000c13d000900000009001d00000000001904350000000f010000290000000e020000290d4903300000040f0000035c01200197000000010210008c000009ec0000c13d0000000f010000290000000e020000290d4903300000040f000000000220004c00000b230000613d0000000201100367000000000101043b000000010200008a0000035b03000041000000000221004b000000000200001900000000020320190000035b011001970000035b0410009c00000000030080190000035b011001670000035b0110009c00000000020360190000006001000039000000000220004c000009ed0000c13d0d490b460000040f000009ed0000013d0000000003320019000000000003043500000000028200190000002004200039000000070d00002900000000030d043300000000050000190000000d0a0000290000000c0b000029000000090c000029000000000635004b000009830000813d000000000645001900000020055000390000000007d50019000000000707043300000000007604350000097b0000013d000000000443001900000000000404350000000002230019000000200420003900000000030c04330000000005000019000000000635004b000009910000813d000000000645001900000020055000390000000007c5001900000000070704330000000000760435000009890000013d000000000443001900000000000404350000000002230019000000200420003900000000030b04330000000005000019000000000635004b0000099f0000813d000000000645001900000020055000390000000007b5001900000000070704330000000000760435000009970000013d000000000443001900000000000404350000000002230019000000200420003900000000030a04330000000005000019000000000635004b000009ad0000813d000000000645001900000020055000390000000007a5001900000000070704330000000000760435000009a50000013d000000000443001900000000000404350000000002230019000000200420003900000000030104330000000005000019000000000635004b000009bb0000813d00000000064500190000002005500039000000000715001900000000070704330000000000760435000009b30000013d000000000143001900000000000104350000000001820049000000000113001900000000001804350000003f01100039000000200200008a000a00000002001d000000000221016f000d00000008001d0000000001820019000000000221004b000000000200001900000001020040390000035c0310009c00000b180000213d000000010220019000000b180000c13d000900000009001d00000000001904350000000f010000290000000e020000290d4903300000040f0000035c01200197000000010210008c00000a7f0000c13d0000000f010000290000000e020000290d4903300000040f000000000220004c00000b230000613d0000000201100367000000000101043b000000010200008a0000035b03000041000000000221004b000000000200001900000000020320190000035b011001970000035b0410009c00000000030080190000035b011001670000035b0110009c00000000020360190000006001000039000000000220004c00000a800000c13d0d490b460000040f00000a800000013d0d490ba70000040f000c00000001001d0d4903e10000040f00000000030100190000000001030433000000000110004c00000b230000613d0000002001300039000000000201043300000361022001970000038b022001c700000000002104350000000c010000290000000001010433000800000001001d0000000d010000290000000001010433000700000001001d0000000f010000290000000e02000029000b00000003001d0d4903300000040f00000008010000290000000703000029000000000131001900000000012100190000000b02000029000000000202043300000000012100190000035c011001970d490be70000040f000800000001001d0000000f010000290000000e020000290d4903300000040f000000080a00002900000009030000290000000004030433000003710500004100000020034000390000000000530435000000210640003900000000050a04330000000007000019000000000857004b00000a200000813d000000000867001900000020077000390000000009a700190000000009090433000000000098043500000a180000013d00000000066500190000000000060435000000000545001900000021075000390000000d0b00002900000000060b04330000000008000019000000000968004b00000a2f0000813d00000000097800190000002008800039000000000ab80019000000000a0a04330000000000a9043500000a270000013d00000000077600190000000000070435000000000556001900000021075000390000000c0b00002900000000060b04330000000008000019000000000968004b00000a3e0000813d00000000097800190000002008800039000000000ab80019000000000a0a04330000000000a9043500000a360000013d0000000007760019000000000007043500000000055600190000001f0620018f000000210750003900000002011003670000000508200270000000000980004c00000a500000613d0000000009000019000000050a900210000000000ba70019000000000aa1034f000000000a0a043b0000000000ab04350000000109900039000000000a89004b00000a480000413d000000000960004c00000a5f0000613d0000000508800210000000000181034f00000000078700190000000306600210000000000807043300000000086801cf000000000868022f000000000101043b0000010006600089000000000161022f00000000016101cf000000000181019f00000000001704350000000001250019000000210510003900000000000504350000000b0900002900000000020904330000000006000019000000000726004b00000a6d0000813d0000000007560019000000200660003900000000089600190000000008080433000000000087043500000a650000013d00000000055200190000000000050435000000000141004900000000011200190000000102100039000000000024043500000040011000390000000a02000029000000000221016f0000000001420019000000000221004b000000000200001900000001020040390000035c0510009c00000b180000213d000000010220019000000b110000613d00000b180000013d0d490ba70000040f000c00000001001d0d4903e10000040f00000000030100190000000001030433000000000110004c00000b230000613d0000002001300039000000000201043300000361022001970000038b022001c700000000002104350000000c010000290000000001010433000800000001001d0000000d010000290000000001010433000700000001001d0000000f010000290000000e02000029000b00000003001d0d4903300000040f00000008010000290000000703000029000000000131001900000000012100190000000b02000029000000000202043300000000012100190000035c011001970d490be70000040f000800000001001d0000000f010000290000000e020000290d4903300000040f000000080a00002900000009030000290000000004030433000003840500004100000020034000390000000000530435000000210640003900000000050a04330000000007000019000000000857004b00000ab30000813d000000000867001900000020077000390000000009a700190000000009090433000000000098043500000aab0000013d00000000066500190000000000060435000000000545001900000021075000390000000d0b00002900000000060b04330000000008000019000000000968004b00000ac20000813d00000000097800190000002008800039000000000ab80019000000000a0a04330000000000a9043500000aba0000013d00000000077600190000000000070435000000000556001900000021075000390000000c0b00002900000000060b04330000000008000019000000000968004b00000ad10000813d00000000097800190000002008800039000000000ab80019000000000a0a04330000000000a9043500000ac90000013d0000000007760019000000000007043500000000055600190000001f0620018f000000210750003900000002011003670000000508200270000000000980004c00000ae30000613d0000000009000019000000050a900210000000000ba70019000000000aa1034f000000000a0a043b0000000000ab04350000000109900039000000000a89004b00000adb0000413d000000000960004c00000af20000613d0000000508800210000000000181034f00000000078700190000000306600210000000000807043300000000086801cf000000000868022f000000000101043b0000010006600089000000000161022f00000000016101cf000000000181019f00000000001704350000000001250019000000210510003900000000000504350000000b0900002900000000020904330000000006000019000000000726004b00000b000000813d0000000007560019000000200660003900000000089600190000000008080433000000000087043500000af80000013d00000000055200190000000000050435000000000141004900000000011200190000000102100039000000000024043500000040011000390000000a02000029000000000221016f0000000001420019000000000221004b000000000200001900000001020040390000035c0510009c00000b180000213d000000010220019000000b180000c13d00000040020000390000000000120435000000000204043300000000010300190d49026d0000040f0000000f00000005000000000001042d00000363010000410000000000100435000000410100003900000004020000390000000000120435000000240200003900000000010000190d4902a00000040f000000000100001900000000020000190d4902a00000040f00000363010000410000000000100435000000320100003900000004020000390000000000120435000000240200003900000000010000190d4902a00000040f000000400100003900000000010104330000004402100039000003890300004100000000003204350000002402100039000000170300003900000000003204350000036702000041000000000021043500000004021000390000002003000039000000000032043500000064020000390d4902a00000040f0000000004000019000000000534004b00000b430000813d0000000005240019000000000614001900000000060604330000000000650435000000200440003900000b3b0000013d00000000012300190000000000010435000000000001042d000000400200003900000000010204330000037a0310009c00000b520000813d0000004003100039000000000032043500000020021000390000039503000041000000000032043500000001020000390000000000210435000000000001042d00000363010000410000000000100435000000410100003900000004020000390000000000120435000000240200003900000000010000190d4902a00000040f0000000002010019000000400300003900000000010304330000037a0410009c00000b6a0000813d0000004004100039000000000043043500000020031000390000039604000041000000000043043500000060022002100000002103100039000000000023043500000015020000390000000000210435000000000001042d00000363010000410000000000100435000000410100003900000004020000390000000000120435000000240200003900000000010000190d4902a00000040f00020000000000020000007f0210008c000200000001001d00000b8f0000a13d0d490c1d0000040f000100000001001d00000002011000390d4904010000040f0000000002010433000000000220004c00000b9f0000613d0000002002100039000000000302043300000361033001970000000105000029000000f804500210000000000334019f000003950330004100000000003204350000000302500210000000f802200089000000020300002900000000032301cf000000ff0220008c000000000203001900000000020020190000002103100039000000000023043500000b9d0000013d0d4903e10000040f0000000002010433000000000220004c00000b9f0000613d0000000204000029000000f8024002100000035b03000041000000000440004c0000000002036019000000200310003900000000040304330000036104400197000000000224019f00000000002304350000000200000005000000000001042d00000363010000410000000000100435000000320100003900000004020000390000000000120435000000240200003900000000010000190d4902a00000040f000200000000000200000000030100190000035c01300197000000010210008c00000bd70000613d000000370210008c00000bc80000a13d000200000001001d0d490c1d0000040f000100000001001d00000002011000390d4904010000040f0000000002010433000000000220004c00000bdf0000613d0000002002100039000000000302043300000361033001970000000105000029000000f804500210000000000334019f000003970330004100000000003204350000000302500210000000f802200089000000020300002900000000032301cf000000ff0220008c000000000203001900000000020020190000002103100039000000000023043500000bd50000013d000200000003001d0d4903e10000040f0000000002010433000000000220004c00000bdf0000613d0000000202000029000000f802200210000000200310003900000000040304330000036104400197000000000224019f0000035b0220016700000000002304350000000200000005000000000001042d00000363010000410000000000100435000000010100003900000004020000390000000000120435000000240200003900000000010000190d4902a00000040f00000363010000410000000000100435000000320100003900000004020000390000000000120435000000240200003900000000010000190d4902a00000040f000200000000000200000000030100190000035c01300197000000370210008c00000c060000a13d000200000001001d0d490c1d0000040f000100000001001d00000002011000390d4904010000040f0000000002010433000000000220004c00000c150000613d0000002002100039000000000302043300000361033001970000000105000029000000f804500210000000000334019f000003980330004100000000003204350000000302500210000000f802200089000000020300002900000000032301cf000000ff0220008c000000000203001900000000020020190000002103100039000000000023043500000c130000013d000200000003001d0d4903e10000040f0000000002010433000000000220004c00000c150000613d0000000202000029000000f802200210000000200310003900000000040304330000036104400197000000000242019f0000038b0220004100000000002304350000000200000005000000000001042d00000363010000410000000000100435000000320100003900000004020000390000000000120435000000240200003900000000010000190d4902a00000040f00000080021002700000037e0310009c000000000201a0190000037e0110009c0000000001000019000000100100203900000008031001bf0000035c0420009c000000000103201900000040032002700000035c0420009c000000000203201900000004031001bf000003540420009c00000000010320190000002003200270000003540420009c000000000203201900000002031001bf0000ffff0420008c000000000103201900000010032002700000000002032019000000ff0220008c000000000200001900000001020020390000000001210019000000000001042d00000040021000390000039903000041000000000032043500000020021000390000001a030000390000000000320435000000200200003900000000002104350000006001100039000000000001042d000000e0031000390000000202000367000000000332034f000000000303043b0000035d0330019800000c4d0000613d0000012001100039000000000112034f000000000101043b00000c620000013d000000a003100039000000000332034f0000006004100039000000000442034f000000000404043b000000000503043b00000000635400a9000000000650004c00000c590000613d00000000655300d9000000000445004b00000c630000c13d0000012001100039000000000112034f000000000201043b0000000001320019000000000221004b00000000020000190000000102004039000000010220019000000c630000c13d000000000001042d00000363010000410000000000100435000000110100003900000004020000390000000000120435000000240200003900000000010000190d4902a00000040f000000000110004c00000c6e0000613d000000000001042d0000004001000039000000000101043300000044021000390000039a0300004100000000003204350000002402100039000000080300003900000000003204350000036702000041000000000021043500000004021000390000002003000039000000000032043500000064020000390d4902a00000040f00050000000000020000035d0a1001970000004009000039000000000b0904330000037a01b0009c00000cfb0000813d0000004001b0003900000000001904350000002001000039000400000001001d00000000001b04350000002003b000390000039b01000041000300000003001d0000000000130435000000010100003900000000050004140000000403a0008c00000c9d0000613d00000000040204330000002003200039000000000105001900000000020a001900000000050000190000000006000019000500000009001d00020000000a001d00010000000b001d0d4902150000040f000000010b000029000000020a0000290000000509000029000000600c0000390000000102000031000000000320004c00000cd00000613d0000035c0320009c00000cfb0000213d0000003f03200039000000200400008a000000000343016f000000000c09043300000000033c00190000000004c3004b000000000400001900000001040040390000035c0530009c00000cfb0000213d000000010440019000000cfb0000c13d000000000039043500000000002c04350000002002c00039000000030300036700000001050000310000001f0450018f0000000505500270000000000650004c00000cc10000613d000000000600001900000005076002100000000008720019000000000773034f000000000707043b00000000007804350000000106600039000000000756004b00000cb90000413d000000000640004c00000cd00000613d0000000505500210000000000353034f00000000025200190000000304400210000000000502043300000000054501cf000000000545022f000000000303043b0000010004400089000000000343022f00000000034301cf000000000353019f000000000032043500000000020c0433000000000110004c00000d060000613d000000000120004c00000ce50000c13d00030000000c001d000500000009001d0000039c01000041000000000010043900000004010000390000000000a10439000080020100003900000024020000390d4902840000040f000000000110004c00000d300000613d000000030c00002900000000020c0433000000000120004c000000050900002900000cf90000613d0000035b01000041000000200320008c000000000300001900000000030140190000035b02200197000000000420004c000000000100a0190000035b0220009c000000000103c019000000000110004c00000d030000c13d0000002001c000390000000001010433000000000210004c0000000002000019000000010200c039000000000221004b00000d030000c13d000000000110004c00000d1d0000613d0000000500000005000000000001042d00000363010000410000000000100435000000410100003900000004020000390000000000120435000000240200003900000000010000190d4902a00000040f000000000100001900000000020000190d4902a00000040f000000000120004c00000d2e0000c13d0000000004090433000500000004001d0000036701000041000000000014043500000004014000390000000402000029000000000021043500000000030b0433000400000003001d00000024014000390000000000310435000000440240003900000003010000290d490b3a0000040f00000004010000290000001f01100039000000200200008a000000000121016f000000440210003900000005010000290d4902a00000040f000000000109043300000064021000390000039d03000041000000000032043500000044021000390000039e03000041000000000032043500000024021000390000002a0300003900000000003204350000036702000041000000000021043500000004021000390000000403000029000000000032043500000084020000390d4902a00000040f0000002001c000390d4902a00000040f0000000501000029000000000101043300000044021000390000039f03000041000000000032043500000024021000390000001d0300003900000000003204350000036702000041000000000021043500000004021000390000000403000029000000000032043500000064020000390d4902a00000040f00000d42002104210000000102000039000000000001042d0000000002000019000000000001042d00000d47002104230000000102000039000000000001042d0000000002000019000000000001042d00000d490000043200000d4a0001042e00000d4b00010430000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffff000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000202bcce700000000000000000000000000000000000000000000000000000000a28c1aee00000000000000000000000000000000000000000000000000000000df9c158900000000000000000000000000000000000000000000000000000000e2f318e300000000000000000000000000000000000000000000000000000000eeb8cb098000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffff000000000000000000000000ffffffffffffffffffffffffffffffffffffffffe1239cd800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffff9f9cc7f708afc65944829bd487b90b72536b1951864fbfc14e125fc972a6507f3900ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1b000000000000000000000000000000000000000000000000000000000000004e487b7100000000000000000000000000000000000000000000000000000000ffffffff00000000000000000000000000000000000000000000000000000000949431dc000000000000000000000000000000000000000000000000000000008c5a34450000000000000000000000000000000000000000000000000000000008c379a000000000000000000000000000000000000000000000000000000000dd62ed3e00000000000000000000000000000000000000000000000000000000095ea7b300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffff7f20746f206e6f6e2d7a65726f20616c6c6f77616e6365000000000000000000005361666545524332303a20617070726f76652066726f6d206e6f6e2d7a65726f74206d757374206265206174206c65617374203638206279746573206c6f6e6754686520617070726f76616c4261736564207061796d617374657220696e707574206265206174206c656173742034206279746573206c6f6e67000000000000546865207374616e64617264207061796d617374657220696e707574206d7573020000000000000000000000000000000000000000000000000000000000000002000002000000000000000000000000000000000000000000000000000000007261746f720000000000000000000000000000000000000000000000000000004661696c656420746f20706179207468652066656520746f20746865206f7065496e76616c69642063616c6c20746f20436f6e74726163744465706c6f79657275650000000000000000000000000000000000000000000000000000000000004e6f7420656e6f7567682062616c616e636520666f7220666565202b2076616c0000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000ffffffffffffff80000000000000000000000000000000000000000000000000ffffffffffffffc0000000000000000000000000000000000000000000000000ffffffffffffffa0202bcce700000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffff000000000000000000000000000000000000000000000000000000010000000000000000ffffffff00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000ffffffff000000000000000000000000000000000000000000000000ffffffff00000000000000000000000001000000000000000000000000000000000000000000000000000000000000005369676e6174757265206c656e67746820697320696e636f72726563740000007fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a1496e76616c69642073000000000000000000000000000000000000000000000076206973206e656974686572203237206e6f7220323800000000000000000000456e636f64696e6720756e737570706f727465642074780000000000000000009a8a0592ac89c5ad3bc6df8224c17b485976f597df104ee20d0df415241f670bc00000000000000000000000000000000000000000000000000000000000000007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848e1bfa1ac4e3576b728bda6721b215c70a7799a5b4866282a71bab954baac8000000000000000000000000000000000000000000000000fffffffffffffe1fad7c5bef027816a800da1736444fb58a807ef4c9603b7848673f7e3a68eb14a519b453ce45aaaaf3a300f5a9ec95869b4f28ab10430b572ee218c3a6a5e07d6fc2f8787176b8ac6bf7215b4adcc1e069bf4ab82d9ab1df05a57a91d425935b6e000000000000000000000000000000000000000000000000ffffffffffffff5f1901000000000000000000000000000000000000000000000000000000000000808000000000000000000000000000000000000000000000000000000000000081000000000000000000000000000000000000000000000000000000000000009400000000000000000000000000000000000000000000000000000000000000b800000000000000000000000000000000000000000000000000000000000000f800000000000000000000000000000000000000000000000000000000000000556e737570706f72746564207061796d617374657220666c6f770000000000004f766572666c6f770000000000000000000000000000000000000000000000005361666545524332303a206c6f772d6c6576656c2063616c6c206661696c65641806aa1896bbf26568e884a7374b41e002500962caba6a15023a8d90e8508b836f742073756363656564000000000000000000000000000000000000000000005361666545524332303a204552433230206f7065726174696f6e20646964206e416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000000000000000000000000000000000000000000000000000000000000000000000",
- "predeployed_contracts": {
- "0xdeadbeafdeadbeafdeadbeafdeadbeafdeadbeaf": "0x00020000000000020001000000000002000000000301001900000060033002700000002b033001970001000000310355000000000000001f0000008001000039000000400a00003900000000001a04350000000102200190000000190000c13d000000300200004100000000002104350000002002000039000000840300003900000000002304350000001d02000039000000a40300003900000000002304350000003202000041000000c4030000390000000000230435000000640200003900a6009a0000040f0000000001000416000000000110004c000000390000c13d000000010100003900000000030004140000000002000410000000040420008c000000250000613d000000000103001900010000000a001d00a6008d0000040f000000010a00002900000060020000390000000003000031000000000430004c0000003c0000c13d000000000110004c000000760000c13d00000000010a043300000044021000390000003103000041000000000032043500000024021000390000001303000039000000000032043500000030020000410000000000210435000000040210003900000020030000390000000000320435000000640200003900a6009a0000040f0000000001000019000000000200001900a6009a0000040f0000002c0230009c0000006e0000813d0000001f02300039000000200400008a000000000242016f0000003f02200039000000000442016f00000000020a04330000000004420019000000000524004b000000000500001900000001050040390000002d0640009c0000006e0000213d00000001055001900000006e0000c13d00000000004a043500000000003204350000002003200039000000010400036700000000060000310000001f0560018f0000000506600270000000000760004c0000005e0000613d000000000700001900000005087002100000000009830019000000000884034f000000000808043b00000000008904350000000107700039000000000867004b000000560000413d000000000750004c000000290000613d0000000506600210000000000464034f00000000036300190000000305500210000000000603043300000000065601cf000000000656022f000000000404043b0000010005500089000000000454022f00000000045401cf000000000464019f0000000000430435000000290000013d0000002e0100004100000000001004350000004101000039000000040200003900000000001204350000002402000039000000000100001900a6009a0000040f0000000001020433000000000110004c0000007f0000c13d0000002001000039000001000200003900000000001204390000012001000039000000000001043900a600980000040f00000000010a043300000044021000390000002f03000041000000000032043500000024021000390000001403000039000000000032043500000030020000410000000000210435000000040210003900000020030000390000000000320435000000640200003900a6009a0000040f0000002b030000410000002b0410009c0000000001038019000000c00110021000a600a10000040f000000000301001900000060033002700000002b0030019d0001000000010355000000010120018f000000000001042d0000003301000041000000a70001042e0000002b030000410000002b0410009c000000000103801900000040011002100000006002200210000000000121019f000000a800010430000000a4002104210000000102000039000000000001042d0000000002000019000000000001042d000000a600000432000000a70001042e000000a80001043000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffff0000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000ffffffffffffffff4e487b7100000000000000000000000000000000000000000000000000000000646174612073686f756c6420626520656d70747900000000000000000000000008c379a00000000000000000000000000000000000000000000000000000000063616c6c2073686f756c6420737563636565640000000000000000000000000066616c6c6261636b2073686f756c64206e6f742062652063616c6c656400000000000002000000000000000000000000000000400000010000000000000000000000000000000000000000000000000000000000000000000000000000000000",
- "0x0000000000000000000000000000000000008002": "0x0004000000000002000400000000000200000000030100190000006003300270000000630430019700030000004103550002000000010355000000630030019d000100000000001f0000008006000039000000400500003900000000006504350000000101200190000000460000c13d0000000001000031000000040110008c000001150000413d0000000201000367000000000101043b000000e001100270000000650210009c000000510000613d000000660210009c0000009e0000613d000000670210009c000000ba0000613d000000680210009c000000dd0000613d000000690110009c000001150000c13d0000000001000416000000000110004c000001150000c13d000000040100008a00000000011000310000006a02000041000000200310008c000000000300001900000000030240190000006a01100197000000000410004c000000000200a0190000006a0110009c00000000010300190000000001026019000000000110004c000001150000c13d00000004010000390000000201100367000000000101043b0000006b01100197000400000006001d018701850000040f0000006f02100197000000700220009c00000000020000190000000102006039000000000310004c0000000003000019000000010300603900000000022301a0000000db0110027000000073011001970000000002010019000000000200c0190000000401000029000000000021043500000020020000390000000003000019018701620000040f0000000001000416000000000110004c000001150000c13d0000002002000039000001000100003900000000002104390000012002000039000000000002043900000040020000390000006403000041018701620000040f0000000001000416000000000110004c000001150000c13d000000040100008a00000000011000310000006a02000041000000200310008c000000000300001900000000030240190000006a01100197000000000410004c000000000200a0190000006a0110009c00000000010300190000000001026019000000000110004c000001150000c13d0000000401000039000200000001001d0000000201100367000000000101043b0000006b01100197000300000001001d000400000005001d018701850000040f000000040200002900000000020204330000000003010019000000000130004c000001260000c13d000100000003001d0000006c010000410000000000120435000000040120003900000003030000290000000000310435000000000100041400000020040000390000000003020019000300000002001d0187012f0000040f000000000110004c000001020000c13d000000030200036700000001040000310000001f0340018f000000040100002900000000010104330000000504400270000000000540004c0000008d0000613d000000000500001900000005065002100000000007610019000000000662034f000000000606043b00000000006704350000000105500039000000000645004b000000850000413d000000000530004c0000009c0000613d0000000504400210000000000242034f00000000044100190000000303300210000000000504043300000000053501cf000000000535022f000000000202043b0000010003300089000000000232022f00000000023201cf000000000252019f000000000024043500000001020000310187016c0000040f0000000001000416000000000110004c000001150000c13d000000040100008a00000000011000310000006a02000041000000200310008c000000000300001900000000030240190000006a01100197000000000410004c000000000200a0190000006a0110009c00000000010300190000000001026019000000000110004c000001150000c13d000400000005001d018701750000040f0000006b01100197018701850000040f000000040200002900000000030204330000000000130435000000200200003900000000010300190000000003000019018701620000040f0000000001000416000000000110004c000001150000c13d000000040100008a00000000011000310000006a02000041000000400310008c000000000300001900000000030240190000006a01100197000000000410004c000000000200a0190000006a0110009c00000000010300190000000001026019000000000110004c000001150000c13d00000002010003670000000402100370000000000202043b0000006b0320009c000001150000213d0000002401100370000000000101043b0000006f031001970000000004000411000080060440008c000001150000c13d000000700330009c000001150000c13d018701830000040f000000000100001900000000020000190000000003000019018701620000040f0000000001000416000000000110004c000001150000c13d000000040100008a00000000011000310000006a02000041000000200310008c000000000300001900000000030240190000006a01100197000000000410004c000000000200a0190000006a0110009c00000000010300190000000001026019000000000110004c000001150000c13d00000004010000390000000201100367000000000101043b0000006b0210009c000001150000213d0000000002000411000080060220008c000001150000c13d000400000001001d018701850000040f0000006f02100197000000700220009c0000000402000029000001150000c13d0000007201100197018701830000040f000000000100001900000000020000190000000003000019018701620000040f0000000102000031000000200120008c000000200100003900000000010240190000001f01100039000000600310018f00000003050000290000000001530019000000000331004b000000000300001900000001030040390000006d0410009c0000000404000029000001180000213d0000000103300190000001180000c13d0000000000140435000000200220008c000001200000813d000000000100001900000000020000190187016c0000040f00000071010000410000000000100435000000410100003900000002020000290000000000120435000000240200003900000000010000190187016c0000040f0000006e040000410000000003050433000000000330004c000000000201001900000001030000290000012b0000c13d0000006f013001970000006e04000041000000700110009c000000000403c0190000000001020019000000000041043500000020020000390000000003000019018701620000040f0002000000000002000200000004001d000100000003001d0000006303000041000000630420009c0000000002038019000000630410009c0000000001038019000000c0011002100000004002200210000000000112019f00000074011001c700008003020000390187017e0000040f000000010800002900000002040000290000001f0340018f0000000504400270000000000540004c0000014c0000613d000000000500001900000005065002100000000007680019000000000661034f000000000606043b00000000006704350000000105500039000000000645004b000001440000413d000000010220018f000000000530004c0000015c0000613d0000000504400210000000000541034f00000000044800190000000303300210000000000604043300000000063601cf000000000636022f000000000505043b0000010003300089000000000535022f00000000033501cf000000000363019f000000000034043500030000000103550000006001100270000100630010019d00000000010200190000000200000005000000000001042d0000006304000041000000630510009c000000000104801900000040011002100000000001310019000000630320009c000000000204801900000060022002100000000001210019000001880001042e0000006303000041000000630420009c0000000002038019000000630410009c000000000103801900000040011002100000006002200210000000000112019f000001890001043000000004010000390000000201100367000000000101043b000000750210009c0000017b0000813d000000000001042d000000000100001900000000020000190187016c0000040f00000181002104230000000102000039000000000001042d0000000002000019000000000001042d000000000012041b000000000001042d000000000101041a000000000001042d0000018700000432000001880001042e00000189000104300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffff000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e03fe177000000000000000000000000000000000000000000000000000000004de2e468000000000000000000000000000000000000000000000000000000004f1e1be000000000000000000000000000000000000000000000000000000000c2e4ff97000000000000000000000000000000000000000000000000000000001806aa188000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffffffffffff5aa9b6b500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a47000ff00000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000004e487b7100000000000000000000000000000000000000000000000000000000ff00ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000000000000000000000000000000000000000000000000000001fffe0000000000000000000000000000000000000002400000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
- "0x000000000000000000000000000000000000800b": "0x0002000000000002000300000000000200010000000103550000006001100270000000cd0010019d00000080010000390000004005000039000000000015043500000001012001900000004d0000c13d0000000001000031000000040110008c000002610000413d0000000101000367000000000101043b000000e001100270000000d20210009c0000009a0000613d000000d30210009c000000650000613d000000d40210009c000000b50000613d000000d50210009c0000007f0000613d000000d60210009c000000e50000613d000000d70210009c000001000000613d000000d80210009c000001190000613d000000d90210009c0000014b0000613d000000da0210009c0000016f0000613d000000db0210009c0000018b0000613d000000dc0210009c000001a60000613d000000dd0210009c000001d60000613d000000de0210009c000001f10000613d000000df0210009c0000020d0000613d000000e00210009c000002330000613d000000e10210009c000002500000613d000000e20110009c000002610000c13d0000000001000416000000000110004c000002610000c13d000000040100008a0000000001100031000000e302000041000000000310004c00000000030000190000000003024019000000e301100197000000000410004c000000000200a019000000e30110009c00000000010300190000000001026019000000000110004c000002610000c13d0000000501000039000300000005001d032f032d0000040f000000030200002900000000030204330000000000130435000000200200003900000000010300190000000003000019032f02c30000040f0000000001000416000000000110004c000002610000c13d000000ce010000410000000302000039032f032b0000040f0000000401000039000300000001001d032f032d0000040f000000cf0110019700008001011001bf0000000302000029032f032b0000040f000000d0010000410000000502000039032f032b0000040f000000200200003900000100010000390000000000210439000001200200003900000000000204390000004002000039000000d103000041032f02c30000040f0000000001000416000000000110004c000002610000c13d000000040100008a0000000001100031000000e302000041000000000310004c00000000030000190000000003024019000000e301100197000000000410004c000000000200a019000000e30110009c00000000010300190000000001026019000000000110004c000002610000c13d000300000005001d032f02df0000040f000000030200002900000000030204330000000000130435000000200200003900000000010300190000000003000019032f02c30000040f0000000001000416000000000110004c000002610000c13d000000040100008a0000000001100031000000e302000041000000000310004c00000000030000190000000003024019000000e301100197000000000410004c000000000200a019000000e30110009c00000000010300190000000001026019000000000110004c000002610000c13d0000000601000039000300000005001d032f032d0000040f000000030200002900000000030204330000000000130435000000200200003900000000010300190000000003000019032f02c30000040f0000000001000416000000000110004c000002610000c13d000000040100008a0000000001100031000000e302000041000000000310004c00000000030000190000000003024019000000e301100197000000000410004c000000000200a019000000e30110009c00000000010300190000000001026019000000000110004c000002610000c13d0000000201000039000300000005001d032f032d0000040f000000030200002900000000030204330000000000130435000000200200003900000000010300190000000003000019032f02c30000040f0000000001000416000000000110004c000002610000c13d000000040100008a0000000001100031000000e302000041000000600310008c00000000030000190000000003024019000000e301100197000000000410004c000000000200a019000000e30110009c00000000010300190000000001026019000000000110004c000002610000c13d00000001010003670000002402100370000000000302043b0000000002000411000080010220008c000002610000c13d0000008002300210000000000430004c000000d20000613d00000000433200d9000000e90330009c000001430000c13d0000000401100370000000000301043b0000000001230019000000000231004b000000000200001900000001020040390000000102200190000001430000c13d0000000702000039032f032b0000040f00000044010000390000000101100367000000000101043b0000000602000039032f032b0000040f000000000100001900000000020000190000000003000019032f02c30000040f0000000001000416000000000110004c000002610000c13d000000040100008a0000000001100031000000e302000041000000000310004c00000000030000190000000003024019000000e301100197000000000410004c000000000200a019000000e30110009c00000000010300190000000001026019000000000110004c000002610000c13d0000000301000039000300000005001d032f032d0000040f000000030200002900000000030204330000000000130435000000200200003900000000010300190000000003000019032f02c30000040f0000000001000416000000000110004c000002610000c13d000000040100008a0000000001100031000000e302000041000000000310004c00000000030000190000000003024019000000e301100197000000000410004c000000000200a019000000e30110009c00000000010300190000000001026019000000000110004c000002610000c13d000300000005001d032f02df0000040f00000003010000290000000001010433000000000021043500000020020000390000000003000019032f02c30000040f0000000001000416000000000110004c000002610000c13d000000040100008a0000000001100031000000e302000041000000200310008c00000000030000190000000003024019000000e301100197000000000410004c000000000200a019000000e30110009c00000000010300190000000001026019000000000110004c000002610000c13d000300000005001d00000004010000390000000101100367000000000101043b000200000001001d000000e8010000410000000000100439032f02b40000040f0000000202000029000000000121004b00000000010000190000027a0000413d000000e801000041000100000001001d0000000000100439032f02b40000040f0000000102000029000000000020043900000002020000290000000001210049000100000001001d032f02b40000040f0000000102000029000000000112004b0000026f0000a13d000000ea01000041000000000010043500000011010000390000000402000039000000000012043500000024020000390000000001000019032f02cb0000040f0000000001000416000000000110004c000002610000c13d000000040100008a0000000001100031000000e302000041000000200310008c00000000030000190000000003024019000000e301100197000000000410004c000000000200a019000000e30110009c00000000010300190000000001026019000000000110004c000002610000c13d00000004010000390000000101100367000000000101043b000000000010043500000008010000390000002002000039000200000002001d00000000001204350000000001000019000300000005001d032f02a10000040f032f032d0000040f000000030200002900000000020204330000000000120435000000000102001900000002020000290000000003000019032f02c30000040f0000000001000416000000000110004c000002610000c13d000000040100008a0000000001100031000000e302000041000000000310004c00000000030000190000000003024019000000e301100197000000000410004c000000000200a019000000e30110009c00000000010300190000000001026019000000000110004c000002610000c13d0000000101000039000300000005001d032f032d0000040f00000003020000290000000003020433000000e4011001970000000000130435000000200200003900000000010300190000000003000019032f02c30000040f0000000001000416000000000110004c000002610000c13d000000040100008a0000000001100031000000e302000041000000000310004c00000000030000190000000003024019000000e301100197000000000410004c000000000200a019000000e30110009c00000000010300190000000001026019000000000110004c000002610000c13d0000000001000019000300000005001d032f032d0000040f000000030200002900000000030204330000000000130435000000200200003900000000010300190000000003000019032f02c30000040f0000000001000416000000000110004c000002610000c13d000000040100008a0000000001100031000000e302000041000000800310008c00000000030000190000000003024019000000e301100197000000000410004c000000000200a019000000e30110009c00000000010300190000000001026019000000000110004c000002610000c13d00000001010003670000002402100370000000000202043b0000000401100370000000000301043b0000000001000411000080010110008c000002610000c13d000100000003001d000300000005001d0000000701000039000200000002001d032f032d0000040f0000000203000029000000e502100197000000000223004b000002810000813d000000030100002900000000010104330000004402100039000000e6030000410000000000320435000000e7020000410000000000210435000000240210003900000020030000390000000000320435000000040210003900000000003204350000006402000039032f02cb0000040f0000000001000416000000000110004c000002610000c13d000000040100008a0000000001100031000000e302000041000000000310004c00000000030000190000000003024019000000e301100197000000000410004c000000000200a019000000e30110009c00000000010300190000000001026019000000000110004c000002610000c13d0000000701000039000300000005001d032f032d0000040f000000030200002900000000030204330000000000130435000000200200003900000000010300190000000003000019032f02c30000040f0000000001000416000000000110004c000002610000c13d000000040100008a0000000001100031000000e302000041000000000310004c00000000030000190000000003024019000000e301100197000000000410004c000000000200a019000000e30110009c00000000010300190000000001026019000000000110004c000002610000c13d0000000401000039000300000005001d032f032d0000040f00000003020000290000000003020433000000e4011001970000000000130435000000200200003900000000010300190000000003000019032f02c30000040f0000000001000416000000000110004c000002610000c13d000000040100008a0000000001100031000000e302000041000000200310008c00000000030000190000000003024019000000e301100197000000000410004c000000000200a019000000e30110009c00000000010300190000000001026019000000000110004c000002610000c13d00000004010000390000000101100367000000000201043b000000e40120009c000002610000213d0000000001000411000080010110008c000002610000c13d0000000101000039000300000001001d000200000002001d032f032d0000040f000000cf011001970000000202000029000000000121019f0000000302000029032f032b0000040f000000000100001900000000020000190000000003000019032f02c30000040f0000000001000416000000000110004c000002610000c13d000000040100008a0000000001100031000000e302000041000000200310008c00000000030000190000000003024019000000e301100197000000000410004c000000000200a019000000e30110009c00000000010300190000000001026019000000000110004c000002610000c13d0000000001000411000080010110008c000002610000c13d00000004010000390000000101100367000000000101043b0000000202000039032f032b0000040f000000000100001900000000020000190000000003000019032f02c30000040f0000000001000416000000000110004c000002610000c13d000000040100008a0000000001100031000000e302000041000000000310004c00000000030000190000000003024019000000e301100197000000000410004c000000000200a019000000e30110009c00000000010300190000000001026019000000000110004c000002640000613d00000000010000190000000002000019032f02cb0000040f000300000005001d032f02df0000040f00000003050000290000000003050433000000200430003900000000002404350000000000130435000000000103001900000000020500190000000003000019032f02c30000040f000001010120008c000000000100001900000002020000290000027a0000813d00000000002004350000000801000039000000200200003900000000001204350000000001000019032f02a10000040f032f032d0000040f000000030200002900000000030204330000000000130435000000200200003900000000010300190000000003000019032f02c30000040f00000044020000390000000102200367000000000202043b0000008001100270000300000001001d0000000101100039000000000121004b00000000010000190000000101006039032f03010000040f0000000301000029032f02d20000040f00000000020100190000000101000029032f032b0000040f0000000301000029032f02e50000040f032f03160000040f0000000202000029032f02f20000040f032f02d90000040f00000064010000390000000101100367000000000101043b032f02dc0000040f00000002010000290000000102000029000000000021041c000000000100001900000000020000190000000003000019032f02c30000040f000000cd020000410000000003000414000000cd0430009c0000000003028019000000cd0410009c00000000010280190000004001100210000000c002300210000000000112019f000000eb011001c70000801002000039032f03260000040f0000000102200190000002b10000613d000000000101043b000000000001042d00000000010000190000000002000019032f02cb0000040f000000cd010000410000000002000414000000cd0320009c0000000001024019000000c001100210000000ec011001c70000800b02000039032f03260000040f0000000102200190000002c00000613d000000000101043b000000000001042d00000000010000190000000002000019032f02cb0000040f000000cd04000041000000cd0510009c000000000104801900000040011002100000006002200210000000000121019f0000000001310019000003300001042e000000cd03000041000000cd0410009c000000000103801900000040011002100000006002200210000000000121019f000003310001043000000000001004350000000801000039000000200200003900000000001204350000000001000019032f02a10000040f000000000001042d0000000702000039032f032b0000040f000000000001042d0000000602000039032f032b0000040f000000000001042d0000000701000039032f032d0000040f0000008003100270000000e5021001970000000001030019000000000001042d000000010200008a000000000221004b000002ea0000613d0000000101100039000000000001042d000000ea01000041000000000010043500000011010000390000000402000039000000000012043500000024020000390000000001000019032f02cb0000040f0000000001120019000000000221004b000000000200001900000001020040390000000102200190000002f90000c13d000000000001042d000000ea01000041000000000010043500000011010000390000000402000039000000000012043500000024020000390000000001000019032f02cb0000040f000000000110004c000003040000613d000000000001042d000000400100003900000000010104330000006402100039000000ed0300004100000000003204350000004402100039000000ee030000410000000000320435000000240210003900000028030000390000000000320435000000e70200004100000000002104350000000402100039000000200300003900000000003204350000008402000039032f02cb0000040f00000000020100190000008001200210000000000320004c0000031d0000613d00000000322100d9000000e90220009c0000031e0000c13d000000000001042d000000ea01000041000000000010043500000011010000390000000402000039000000000012043500000024020000390000000001000019032f02cb0000040f00000329002104230000000102000039000000000001042d0000000002000019000000000001042d000000000012041b000000000001042d000000000101041a000000000001042d0000032f00000432000003300001042e00000331000104300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffff0000000000000000000000000000000000000000000000000000000040000000ffffffffffffffffffffffff00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008e1bc9bf04000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000fe173b970000000000000000000000000000000000000000000000000000000042cbb15c000000000000000000000000000000000000000000000000000000004d59979f000000000000000000000000000000000000000000000000000000006ef25c3a000000000000000000000000000000000000000000000000000000007877a79700000000000000000000000000000000000000000000000000000000796b89b90000000000000000000000000000000000000000000000000000000080b412460000000000000000000000000000000000000000000000000000000085df51fd00000000000000000000000000000000000000000000000000000000938b5f32000000000000000000000000000000000000000000000000000000009a8a0592000000000000000000000000000000000000000000000000000000009e830ad300000000000000000000000000000000000000000000000000000000a0803ef700000000000000000000000000000000000000000000000000000000a6ae0aac00000000000000000000000000000000000000000000000000000000a851ae7800000000000000000000000000000000000000000000000000000000bf1fe42000000000000000000000000000000000000000000000000000000000d4a4ca0d0000000000000000000000000000000000000000000000000000000019cae4628000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffffffffffff00000000000000000000000000000000ffffffffffffffffffffffffffffffff54696d657374616d70732073686f756c6420626520696e6372656d656e74616c08c379a00000000000000000000000000000000000000000000000000000000042cbb15ccdc3cad6266b0e7a08c0454b23bf29dc2df74b6f3c209e9336465bd100000000000000000000000000000001000000000000000000000000000000004e487b71000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000040000000000000000000000000020000020000000000000000000000000000000400000000000000000000000020636f72726563740000000000000000000000000000000000000000000000005468652070726f766964656420626c6f636b206e756d626572206973206e6f74",
- "0x0000000000000000000000000000000000008006": "0x0005000000000002000900000000000200000000030100190000006003300270000003050430019700040000004103550003000000010355000003050030019d000200000002001f000100000000001f0000008001000039000000400800003900000000001804350000000102200190000000550000c13d0000000002000031000000040320008c000003990000413d0000000303000367000000000403043b000000e006400270000003070460009c000000040520008a0000000404300370000000000a000411000001f40000613d000003080760009c000400000008001d000000600000613d000003090760009c000002540000613d0000030a0760009c000002810000613d0000030b0760009c000000a30000613d0000030c0760009c000002c50000613d0000030d0760009c000000ef0000613d0000030e0760009c000002f60000613d0000030f0760009c000001310000613d000003100160009c000001700000613d000003110160009c000001b10000613d000003120160009c000003990000c13d0000000001000416000000000110004c000003990000c13d000000040100008a00000000011000310000031302000041000000400310008c000000000300001900000000030240190000031301100197000000000410004c000000000200a019000003130110009c00000000010300190000000001026019000000000110004c000003990000c13d000000030100036700080000000103530000000401100370000000000101043b000900000001001d0c0f059b0000040f000000080100035f0000002401100370000000000201043b00000009010000290c0f079e0000040f00000004020000290000000003020433000003150110019700000000001304350000002002000039000000000103001900000000030000190c0f05880000040f0000000001000416000000000110004c000003990000c13d00000020020000390000010001000039000000000021043900000120020000390000000000020439000000400200003900000306030000410c0f05880000040f00090000000a001d00000000010200190c0f05bd0000040f000300000001001d000500000002001d000700000003001d000600000004001d000000020100003900000002021001870000000101200270000000000220004c000000700000c13d0000000901000029000003180110009c000000000100001900000001010040390c0f06c20000040f00000004010000290000000003010433000003190100004100000000001304350000000401300039000000090200002900000000002104350000000001000414000080030200003900000024040000390000002006000039000800000003001d00000000050300190c0f050a0000040f0000000104000031000000000110004c000003190000c13d00000004030003670000001f0240018f000000040100002900000000010104330000000504400270000000000540004c000000920000613d000000000500001900000005065002100000000007610019000000000663034f000000000606043b00000000006704350000000105500039000000000645004b0000008a0000413d000000000520004c000000a10000613d0000000504400210000000000343034f00000000044100190000000302200210000000000504043300000000052501cf000000000525022f000000000303043b0000010002200089000000000323022f00000000022301cf000000000252019f000000000024043500000001020000310c0f05920000040f0000000001000416000000000110004c000003990000c13d000000040100008a00000000011000310000031302000041000000200310008c000000000300001900000000030240190000031301100197000000000410004c000000000200a019000003130110009c00000000010300190000000001026019000000000110004c000003990000c13d00000004010000390000000301100367000000000101043b000900000001001d0c0f059b0000040f0c0f06250000040f00000009010000290000031501100197000000000010043500000020010000390000000000010435000000000100001900000004020000290c0f05620000040f000800000001001d00000004010000290000000001010433000900000001001d0c0f06170000040f00000008010000290c0f0c0d0000040f000800000001001d000000ff0110018f000700000001001d0c0f060c0000040f00000009010000290000000702000029000000000021043500000008010000290000000801100270000000ff0110018f000700000001001d0c0f060c0000040f00000009010000290000002002100039000800000002001d000000070300002900000000003204350000000002010433000700000002001d00000004010000290000000001010433000900000001001d00000000010200190c0f060c0000040f00000009010000290000000702000029000000000021043500000008010000290000000001010433000800000001001d0c0f060c0000040f0000000901000029000000200210003900000008030000290000000000320435000000040200002900000000030000190c0f05880000040f00090000000a001d00000000010200190c0f05bd0000040f000500000002001d000700000003001d000600000004001d000000020100003900000002021001870000000101200270000000000220004c000000fe0000c13d0000000901000029000003180110009c000000000100001900000001010040390c0f06c20000040f00000004010000290000000003010433000003190100004100000000001304350000000401300039000000090200002900000000002104350000000001000414000080030200003900000024040000390000002006000039000800000003001d00000000050300190c0f050a0000040f0000000104000031000000000110004c0000033f0000c13d00000004030003670000001f0240018f000000040100002900000000010104330000000504400270000000000540004c000001200000613d000000000500001900000005065002100000000007610019000000000663034f000000000606043b00000000006704350000000105500039000000000645004b000001180000413d000000000520004c0000012f0000613d0000000504400210000000000343034f00000000044100190000000302200210000000000504043300000000052501cf000000000525022f000000000303043b0000010002200089000000000323022f00000000022301cf000000000252019f000000000024043500000001020000310c0f05920000040f0000031306000041000000200750008c000000000700001900000000070640190000031305500197000000000850004c000000000600a019000003130550009c00000000050700190000000005066019000000000550004c000003990000c13d000000000404043b000003140540009c000003990000213d00000023054000390000031306000041000000000725004b0000000007000019000000000706801900000313082001970000031305500197000000000985004b0000000006008019000000000585013f000003130550009c00000000050700190000000005066019000000000550004c000003990000c13d0000000405400039000000000353034f000000000b03043b0000031403b0009c000003990000213d00000024044000390000000503b00210000600000004001d0000000003430019000000000223004b000003990000213d0000800702a0008c000003b00000c13d0000000002000019000000000300001900070000000b001d0000000001b3004b000003bf0000813d0000000601000029000800000002001d00000000020b0019000900000003001d00000009030000290c0f07ba0000040f00000009030000290000000802000029000000070b00002900000060011000390000000301100367000000000101043b000000000221001900000001033000390000015f0000013d0000000001000416000000000110004c000003990000c13d000000040100008a00000000011000310000031302000041000000200310008c000000000300001900000000030240190000031301100197000000000410004c000000000200a019000003130110009c00000000010300190000000001026019000000000110004c000003990000c13d00000004030000390000000301300367000000000201043b000000010120008c000003990000213d000800000003001d000700000002001d0000000101000039000000020200003900000002022001880000018f0000c13d0000031801a0009c0000000001000019000000010100403900090000000a001d0c0f06c20000040f0000000901000029000000000010043500000020010000390000000000010435000000000100001900000004020000290c0f05620000040f000000040300002900000000040304330000031a0240009c000004870000213d00000040024000390000000000230435000600000004001d0c0f0c0d0000040f0000000604000029000000ff0210018f000000020320008c000001a90000813d00000000002404350000000801100270000000ff0110018f000000010210008c0000048f0000a13d0000031b010000410000000000100435000000210100003900000008020000290000000000120435000000240200003900000000010000190c0f05920000040f00090000000a001d00000000010200190c0f05e20000040f000500000002001d000700000003001d000600000004001d000300000005001d000000020100003900000002021001870000000101200270000000000220004c000001c10000c13d0000000901000029000003180110009c000000000100001900000001010040390c0f06c20000040f00000004010000290000000003010433000003190100004100000000001304350000000401300039000000090200002900000000002104350000000001000414000080030200003900000024040000390000002006000039000800000003001d00000000050300190c0f050a0000040f0000000104000031000000000110004c000003620000c13d00000004030003670000001f0240018f000000040100002900000000010104330000000504400270000000000540004c000001e30000613d000000000500001900000005065002100000000007610019000000000663034f000000000606043b00000000006704350000000105500039000000000645004b000001db0000413d000000000520004c000001f20000613d0000000504400210000000000343034f00000000044100190000000302200210000000000504043300000000052501cf000000000525022f000000000303043b0000010002200089000000000323022f00000000022301cf000000000252019f000000000024043500000001020000310c0f05920000040f0000031301000041000000400250008c000000000200001900000000020140190000031306500197000000000760004c000000000100a019000003130660009c000000000102c019000000000110004c000003990000c13d000000000604043b000003140160009c000003990000213d00000000016500490000031302000041000000a00410008c000000000400001900000000040240190000031301100197000000000510004c000000000200a019000003130110009c00000000010400190000000001026019000000000110004c000003990000c13d0000002401300370000000000201043b000003150120009c000003990000213d000000000100041000000000011a004b000003990000c13d0000000401600039000500000001001d000000000113034f000000000101043b000800000001001d000700000002001d000900000006001d0c0f09980000040f000000090100002900000024031000390000000301300367000000000101043b000003150210009c000003990000213d0000000802000029000400000003001d000600000001001d0c0f09fa0000040f0c0f06250000040f000000000201001900000020012000390000000000010435000000000002043500000006010000290c0f07050000040f000000090700002900000006020000290000000404000029000000070500002900000044037000390000000301000367000000000331034f000000000603043b000000000360004c0000000003000019000000010300c039000000000336004b000003990000c13d0000000803000029000000000360004c000004b70000c13d000000000141034f000000000701043b000003150170009c0000000806000029000003990000213d00000305010000410000000002000414000003050320009c0000000001024019000000c00110021000000316011001c70000800d02000039000000040300003900000317040000410c0f0bfb0000040f0000000101200190000003990000613d0000000001000019000000000200001900000000030000190c0f05880000040f0000000001000416000000000110004c000003990000c13d000000040100008a00000000011000310000031302000041000000200310008c000000000300001900000000030240190000031301100197000000000410004c000000000200a019000003130110009c00000000010300190000000001026019000000000110004c000003990000c13d00000004010000390000000301100367000000000201043b000000010120008c000003990000213d000800000002001d000000010100003900000002020000390000000202200188000002720000c13d0000031801a0009c0000000001000019000000010100403900090000000a001d0c0f06c20000040f0000000901000029000000000010043500000020010000390000000000010435000000400200003900000000010000190c0f05620000040f00000008020000290c0f06d70000040f0000000001000019000000000200001900000000030000190c0f05880000040f00090000000a001d00000000010200190c0f05e20000040f000200000001001d000500000002001d000700000003001d000600000004001d000300000005001d000000020100003900000002021001870000000101200270000000000220004c000002920000c13d0000000901000029000003180110009c000000000100001900000001010040390c0f06c20000040f00000004010000290000000003010433000003190100004100000000001304350000000401300039000000090200002900000000002104350000000001000414000080030200003900000024040000390000002006000039000800000003001d00000000050300190c0f050a0000040f0000000104000031000000000110004c000003860000c13d00000004030003670000001f0240018f000000040100002900000000010104330000000504400270000000000540004c000002b40000613d000000000500001900000005065002100000000007610019000000000663034f000000000606043b00000000006704350000000105500039000000000645004b000002ac0000413d000000000520004c000002c30000613d0000000504400210000000000343034f00000000044100190000000302200210000000000504043300000000052501cf000000000525022f000000000303043b0000010002200089000000000323022f00000000022301cf000000000252019f000000000024043500000001020000310c0f05920000040f0000000001000416000000000110004c000003990000c13d0000000002000031000000040120008a0000031303000041000000800410008c000000000400001900000000040340190000031301100197000000000510004c000000000300a019000003130110009c00000000010400190000000001036019000000000110004c000003990000c13d00000003010003670000000403100370000000000403043b000003150340009c000003990000213d0000006401100370000000000101043b000003140310009c000003990000213d0000000401100039000900000004001d0c0f05a10000040f00000003030003670000002404300370000000000404043b0000004403300370000000000303043b0000000005010019000000000602001900000009010000290000000002040019000000000405001900000000050600190c0f076f0000040f00000004020000290000000003020433000003150110019700000000001304350000002002000039000000000103001900000000030000190c0f05880000040f0000000001000416000000000110004c000003990000c13d000000040100008a00000000011000310000031302000041000000200310008c000000000300001900000000030240190000031301100197000000000410004c000000000200a019000003130110009c00000000010300190000000001026019000000000110004c000003990000c13d00000004010000390000000301100367000000000101043b000900000001001d0c0f059b0000040f00000009010000290c0f06430000040f00000004020000290000000002020433000900000002001d000800000001001d0c0f060c0000040f000000090100002900000008020000290000000000210435000000200200003900000000030000190c0f05880000040f000000200140008c000000200100003900000000010440190000001f01100039000000600210018f00000008010000290000000001120019000000000221004b00000000020000190000000102004039000003140310009c0000000406000029000004870000213d0000000102200190000004870000c13d0000000000160435000000200140008c0000000901000029000003990000413d00000005020000290000000303000029000000070400002900000006050000290c0f076f0000040f0000000002010019000900000002001d0000000501000029000000070300002900000006040000290c0f08280000040f00000009010000290000031502100197000000040100002900000000010104330000000000210435000000200200003900000000030000190c0f05880000040f000000200140008c000000200100003900000000010440190000001f01100039000000600210018f00000008050000290000000001520019000000000221004b00000000020000190000000102004039000003140310009c0000000403000029000004870000213d0000000102200190000004870000c13d0000000000130435000000200140008c0000000901000029000003990000413d00000000020504330c0f079e0000040f0000000002010019000900000002001d0000000501000029000000070300002900000006040000290c0f08280000040f00000009010000290000031502100197000000040100002900000000010104330000000000210435000000200200003900000000030000190c0f05880000040f000000200140008c000000200100003900000000010440190000001f01100039000000600210018f00000008050000290000000001520019000000000221004b00000000020000190000000102004039000003140310009c0000000403000029000004870000213d0000000102200190000004870000c13d0000000000130435000000200140008c0000000901000029000003990000413d00000000020504330c0f079e0000040f0000000002010019000900000002001d00000005010000290000000303000029000000070400002900000006050000290c0f08da0000040f00000009010000290000031502100197000000040100002900000000010104330000000000210435000000200200003900000000030000190c0f05880000040f000000200140008c000000200100003900000000010440190000001f01100039000000600210018f00000008010000290000000001120019000000000221004b00000000020000190000000102004039000003140310009c0000000406000029000004870000213d0000000102200190000004870000c13d0000000000160435000000200140008c00000009010000290000039c0000813d000000000100001900000000020000190c0f05920000040f00000005020000290000000203000029000000070400002900000006050000290c0f076f0000040f0000000002010019000900000002001d00000005010000290000000303000029000000070400002900000006050000290c0f08da0000040f00000009010000290000031502100197000000040100002900000000010104330000000000210435000000200200003900000000030000190c0f05880000040f0000031c0200004100000000002104350000002003000039000000840200003900000000003204350000002d03000039000000a40400003900000000003404350000031d03000041000000c40400003900000000003404350000031e03000041000000e40400003900000000003404350c0f05920000040f0000000001000416000000000121004b000004a20000c13d0000000001000410000800000001001d0000000401000039000200000001001d0000000001000019000900000001001d0000000001b1004b000002500000813d000000060100002900000000020b001900000009030000290c0f07ba0000040f00000060011000390000000301100367000000000101043b000300000001001d0000000601000029000000070200002900000009030000290c0f07ba0000040f00000322020000410000000000200439000000080200002900000002030000290000000000230439000500000001001d0c0f05790000040f000000050d000029000000070b000029000000040a000029000000000110004c000003990000613d000000000c0a0433000003230100004100000000001c04350000000402c0003900000000010004140000000000a204350000000302d00367000000000202043b0000004403c0003900000000002304350000002002d000390000000302200367000000000202043b000003150320009c000003990000213d0000006403c0003900000000002304350000004002d000390000000302200367000000000202043b000000000320004c0000000003000019000000010300c039000000000332004b000003990000c13d0000008403c0003900000000002304350000006002d000390000000302200367000000000202043b000000a403c00039000000000023043500000000030000310000000002d300490000008004d000390000001f0520008a0000000302000367000000000442034f000000000404043b0000031306000041000000000754004b0000000007000019000000000706801900000313055001970000031308400197000000000958004b0000000006008019000000000558013f000003130550009c00000000050700190000000005066019000000000550004c000003990000c13d0000000004d40019000000000242034f000000000202043b000003140520009c000003990000213d000000200440003900000000032300490000031305000041000000000634004b0000000006000019000000000605201900000313033001970000031307400197000000000837004b0000000005008019000000000337013f000003130330009c00000000030600190000000003056019000000000330004c000003990000c13d000000c403c00039000000a0050000390000000000530435000000e403c0003900000000002304350000010403c0003900000003044003670000000505200270000000000650004c0000043f0000613d000000000600001900000005076002100000000008730019000000000774034f000000000707043b00000000007804350000000106600039000000000756004b000004370000413d0000001f0620018f000000000760004c0000044f0000613d0000000505500210000000000454034f00000000055300190000000306600210000000000705043300000000076701cf000000000767022f000000000404043b0000010006600089000000000464022f00000000046401cf000000000474019f0000000000450435000000000332001900000000000304350000002403c00039000080070400003900000000004304350000000803000029000000040330008c000004810000613d0000001f02200039000000200300008a000000000232016f00000104042000390000000303000029000000000230004c00010000000c001d000004770000613d00000305020000410000030505c0009c000000000502001900000000050c40190000004006500210000003050540009c00000000040280190000006004400210000000000564019f000003050410009c0000000001028019000000c001100210000000000115019f00000316011001c70000800902000039000000080400002900000000050000190c0f0bfb0000040f00000000030100190000006003300270000103050030019d0004000000010355000000010120018f0000047c0000013d000000080200002900000000030c001900000000050c001900000000060000190c0f050a0000040f000000000110004c000000040a000029000000070b000029000000010c000029000004e90000613d0000031401c0009c000004870000213d0000000000ca043500000009010000290000000101100039000003c70000013d0000031b010000410000000000100435000000410100003900000004020000390000000000120435000000240200003900000000010000190c0f05920000040f0000002002400039000800000002001d00000000001204350000000702000029000000010220015f00000000011201a0000000000100001900000001010060390c0f06ed0000040f000000080100002900000007020000290c0f06370000040f000000090100002900000006020000290c0f07050000040f0000000001000019000000000200001900000000030000190c0f05880000040f0000000401000029000000000101043300000084021000390000031f0300004100000000003204350000006402100039000003200300004100000000003204350000004402100039000003210300004100000000003204350000002402100039000000450300003900000000003204350000031c020000410000000000210435000000040210003900000020030000390000000000320435000000a4020000390c0f05920000040f0000008403700039000000000331034f000000000a00003100000000047a0049000000230440008a000000000303043b0000031309000041000000000643004b0000000006000019000000000609801900000313044001970000031307300197000000000847004b00000000080000190000000008094019000000000447013f000003130440009c00000000040600190000000004086019000000000440004c000003990000c13d00000005040000290000000003430019000000000131034f000000000401043b000003140140009c000003990000213d00000000014a004900000020033000390000031309000041000000000613004b0000000008000019000000000809201900000313011001970000031306300197000000000716004b00000000070000190000000007094019000000000116013f000003130110009c00000000010800190000000001076019000000000110004c000003990000c13d00000000010500190c0f0a510000040f0000000404000029000000070500002900000003010003670000023f0000013d000000040200036700000001040000310000001f0340018f00000000010a04330000000504400270000000000540004c000004f90000613d000000000500001900000005065002100000000007610019000000000662034f000000000606043b00000000006704350000000105500039000000000645004b000004f10000413d000000000530004c000005080000613d0000000504400210000000000242034f00000000044100190000000303300210000000000504043300000000053501cf000000000535022f000000000202043b0000010003300089000000000232022f00000000023201cf000000000252019f000000000024043500000001020000310c0f05920000040f0002000000000002000200000006001d000100000005001d0000030505000041000003050630009c00000000030580190000004003300210000003050640009c00000000040580190000006004400210000000000334019f000003050410009c0000000001058019000000c001100210000000000113019f0c0f0bfb0000040f000000010800002900000002040000290000001f0340018f0000000504400270000000000540004c000005290000613d000000000500001900000005065002100000000007680019000000000661034f000000000606043b00000000006704350000000105500039000000000645004b000005210000413d000000010220018f000000000530004c000005390000613d0000000504400210000000000541034f00000000044800190000000303300210000000000604043300000000063601cf000000000636022f000000000505043b0000010003300089000000000535022f00000000033501cf000000000363019f000000000034043500040000000103550000006001100270000103050010019d00000000010200190000000200000005000000000001042d0001000000000002000100000005001d0000030505000041000003050630009c00000000030580190000004003300210000003050640009c00000000040580190000006004400210000000000334019f000003050410009c0000000001058019000000c001100210000000000113019f0c0f0c000000040f0000000106000029000000010220018f000000000300001900000005043002100000000005460019000000000441034f000000000404043b00000000004504350000000103300039000000000430004c000000000400001900000001040060390000000104400190000005510000c13d00040000000103550000006001100270000103050010019d00000000010200190000000100000005000000000001042d0000030503000041000003050410009c00000000010380190000004001100210000003050420009c00000000020380190000006002200210000000000112019f0000000002000414000003050420009c0000000002038019000000c002200210000000000112019f00000316011001c700008010020000390c0f0c000000040f0000000102200190000005760000613d000000000101043b000000000001042d000000000100001900000000020000190c0f05920000040f00000305010000410000000002000414000003050320009c0000000001024019000000c00110021000000324011001c700008002020000390c0f0c000000040f0000000102200190000005850000613d000000000101043b000000000001042d000000000100001900000000020000190c0f05920000040f0000030504000041000003050510009c000000000104801900000040011002100000000001310019000003050320009c00000000020480190000006002200210000000000121001900000c100001042e0000030503000041000003050420009c0000000002038019000003050410009c000000000103801900000040011002100000006002200210000000000112019f00000c1100010430000003250110009c0000059e0000813d000000000001042d000000000100001900000000020000190c0f05920000040f0000001f031000390000031304000041000000000523004b0000000005000019000000000504401900000313062001970000031303300197000000000763004b000000000400a019000000000363013f000003130330009c00000000030500190000000003046019000000000330004c000005ba0000613d0000000303100367000000000303043b000003140430009c000005ba0000213d00000020011000390000000004310019000000000224004b000005ba0000213d0000000002030019000000000001042d000000000100001900000000020000190c0f05920000040f00020000000000020000000002010019000000040120008a00000313030000410000005f0410008c000000000400001900000000040320190000031301100197000000000510004c0000000003008019000003130110009c00000000010400190000000001036019000000000110004c000005df0000613d00000003030003670000004401300370000000000101043b000003140410009c000005df0000213d0000000404300370000000000404043b000200000004001d0000002403300370000000000303043b000100000003001d00000004011000390c0f05a10000040f00000000030100190000000004020019000000020100002900000001020000290000000200000005000000000001042d000000000100001900000000020000190c0f05920000040f00020000000000020000000002010019000000040120008a00000313030000410000007f0410008c000000000400001900000000040320190000031301100197000000000510004c0000000003008019000003130110009c00000000010400190000000001036019000000000110004c000006090000613d00000003010003670000002403100370000000000303043b000200000003001d0000000403100370000000000303043b000100000003001d0000004401100370000000000101043b000003140310009c000006090000213d00000004011000390c0f05a10000040f0000000003010019000000000402001900000064010000390000000301100367000000000501043b000000010150008c000006090000213d000000010100002900000002020000290000000200000005000000000001042d000000000100001900000000020000190c0f05920000040f000000020110008c0000060f0000813d000000000001042d0000031b010000410000000000100435000000210100003900000004020000390000000000120435000000240200003900000000010000190c0f05920000040f000003260210009c0000061d0000813d000000400110003900000040020000390000000000120435000000000001042d0000031b010000410000000000100435000000410100003900000004020000390000000000120435000000240200003900000000010000190c0f05920000040f00000040020000390000000001020433000003260310009c0000062f0000813d00000040031000390000000000320435000000200210003900000000000204350000000000010435000000000001042d0000031b010000410000000000100435000000410100003900000004020000390000000000120435000000240200003900000000010000190c0f05920000040f000000020320008c0000063b0000813d0000000000210435000000000001042d0000031b010000410000000000100435000000210100003900000004020000390000000000120435000000240200003900000000010000190c0f05920000040f00030000000000020000031501100197000100000001001d0000000000100435000000200100003900000000000104350000004002000039000300000002001d00000000010000190c0f05620000040f00000003030000290000000004030433000003260240009c000006960000813d00000040024000390000000000230435000200000004001d0c0f0c0d0000040f0000000204000029000000ff0210018f000000020320008c0000068e0000813d00000000002404350000000801100270000000ff0110018f000000010210008c0000068e0000213d000000200240003900000000001204350000000002040433000000010120008c0000068e0000213d0000000101000039000000000220004c0000068c0000c13d00000003010000290000000005010433000003270100004100000000001504350000000402500039000000000100041400000001030000290000000000320435000080020200003900000024040000390000000003050019000200000005001d0c0f053f0000040f0000000104000031000000000110004c0000069e0000613d000000200140008c000000200100003900000000010440190000001f01100039000000600210018f00000002050000290000000001520019000000000221004b00000000020000190000000102004039000003140310009c0000000303000029000006960000213d0000000102200190000006960000c13d00000000001304350000001f0140008c000006bf0000a13d0000000001050433000000000110004c000000000100001900000001010060390000000300000005000000000001042d0000031b010000410000000000100435000000210100003900000004020000390000000000120435000000240200003900000000010000190c0f05920000040f0000031b010000410000000000100435000000410100003900000004020000390000000000120435000000240200003900000000010000190c0f05920000040f00000004030003670000001f0240018f000000030100002900000000010104330000000504400270000000000540004c000006ae0000613d000000000500001900000005065002100000000007610019000000000663034f000000000606043b00000000006704350000000105500039000000000645004b000006a60000413d000000000520004c000006bd0000613d0000000504400210000000000343034f00000000044100190000000302200210000000000504043300000000052501cf000000000525022f000000000303043b0000010002200089000000000323022f00000000022301cf000000000252019f000000000024043500000001020000310c0f05920000040f000000000100001900000000020000190c0f05920000040f000000000110004c000006c50000613d000000000001042d000000400100003900000000010104330000006402100039000003280300004100000000003204350000004402100039000003290300004100000000003204350000002402100039000000240300003900000000003204350000031c02000041000000000021043500000004021000390000002003000039000000000032043500000084020000390c0f05920000040f0002000000000002000200000002001d000000020220008c000006e50000813d000100000001001d0c0f0c0d0000040f000001000200008a000000000121016f0000000202000029000000000121019f00000001020000290c0f0c0b0000040f0000000200000005000000000001042d0000031b010000410000000000100435000000210100003900000004020000390000000000120435000000240200003900000000010000190c0f05920000040f000000000110004c000006f00000613d000000000001042d0000004001000039000000000101043300000084021000390000032a03000041000000000032043500000064021000390000032b03000041000000000032043500000044021000390000032c0300004100000000003204350000002402100039000000430300003900000000003204350000031c020000410000000000210435000000040210003900000020030000390000000000320435000000a4020000390c0f05920000040f0002000000000002000200000002001d0000031501100197000000000010043500000020010000390000000000010435000000400200003900000000010000190c0f05620000040f00000002020000290000000002020433000000020320008c000007260000813d000100000001001d0c0f06d70000040f0000000101000029000000020200002900000020022000390000000002020433000200000002001d000000010220008c000007260000213d0c0f0c0d0000040f0000032d02000041000000000121016f000000020200002900000008022002100000ff000220018f000000000121019f00000001020000290c0f0c0b0000040f0000000200000005000000000001042d0000031b010000410000000000100435000000210100003900000004020000390000000000120435000000240200003900000000010000190c0f05920000040f00000000040100190000032e0120009c000007640000813d0000003f01200039000000200500008a000000000651016f000000400500003900000000010504330000000006610019000000000716004b00000000070000190000000107004039000003140860009c000007640000213d0000000107700190000007640000c13d000000000065043500000000002104350000000005420019000000000335004b0000076c0000213d0000001f0520018f000000030440036700000020031000390000000506200270000000000760004c000007520000613d000000000700001900000005087002100000000009830019000000000884034f000000000808043b00000000008904350000000107700039000000000867004b0000074a0000413d000000000750004c000007610000613d0000000506600210000000000464034f00000000066300190000000305500210000000000706043300000000075701cf000000000757022f000000000404043b0000010005500089000000000454022f00000000045401cf000000000474019f000000000046043500000000022300190000000000020435000000000001042d0000031b010000410000000000100435000000410100003900000004020000390000000000120435000000240200003900000000010000190c0f05920000040f000000000100001900000000020000190c0f05920000040f0003000000000002000200000003001d000300000002001d000100000001001d0000000003000031000000000104001900000000020500190c0f072e0000040f000000000201043300000020011000390c0f05620000040f000000010200002900000315042001970000004003000039000000000203043300000040052000390000000000450435000000600420003900000002050000290000000000540435000000800420003900000003050000290000000000540435000000a0042000390000000000140435000000a00100003900000000001204350000032f0400004100000020012000390000000000410435000003300420009c000007960000813d000000c004200039000000000043043500000000020204330c0f05620000040f00000315011001970000000300000005000000000001042d0000031b010000410000000000100435000000410100003900000004020000390000000000120435000000240200003900000000010000190c0f05920000040f000000400400003900000000030404330000006005300039000000000025043500000315011001970000004002300039000000000012043500000060010000390000000000130435000000200130003900000331020000410000000000210435000003320230009c000007b20000813d0000008002300039000000000024043500000000020304330c0f05620000040f0000031501100197000000000001042d0000031b010000410000000000100435000000410100003900000004020000390000000000120435000000240200003900000000010000190c0f05920000040f000000000223004b000007d20000813d000000050230021000000000021200190000000302200367000000000202043b00000000031000790000009f0330008a0000031304000041000000000532004b0000000005000019000000000504401900000313033001970000031306200197000000000736004b000000000400a019000000000336013f000003130330009c00000000030500190000000003046019000000000330004c000007da0000613d0000000001120019000000000001042d0000031b010000410000000000100435000000320100003900000004020000390000000000120435000000240200003900000000010000190c0f05920000040f000000000100001900000000020000190c0f05920000040f000000000110004c000007e00000613d000000000001042d0000004001000039000000000101043300000044021000390000033303000041000000000032043500000024021000390000001c0300003900000000003204350000031c02000041000000000021043500000004021000390000002003000039000000000032043500000064020000390c0f05920000040f000000000110004c000007f20000613d000000000001042d000000400100003900000000010104330000006402100039000003340300004100000000003204350000004402100039000003350300004100000000003204350000002402100039000000280300003900000000003204350000031c02000041000000000021043500000004021000390000002003000039000000000032043500000084020000390c0f05920000040f000000000110004c000008070000613d000000000001042d000000400100003900000000010104330000004402100039000003360300004100000000003204350000002402100039000000150300003900000000003204350000031c02000041000000000021043500000004021000390000002003000039000000000032043500000064020000390c0f05920000040f000000000110004c000008190000613d000000000001042d000000400100003900000000010104330000004402100039000003370300004100000000003204350000002402100039000000130300003900000000003204350000031c02000041000000000021043500000004021000390000002003000039000000000032043500000064020000390c0f05920000040f0007000000000002000200000004001d000100000003001d000700000002001d000400000001001d000000000110004c0000000001000019000000010100c0390c0f07dd0000040f00000007010000290000031501100197000500000001001d0000ffff0110008c000000000100001900000001010020390c0f07ef0000040f0000004001000039000600000001001d000000000301043300000338010000410000000000130435000000040230003900000000010004140000000504000029000000000042043500008002020000390000002404000039000300000003001d00000000050300190c0f053f0000040f000000000110004c000008b00000613d0000000101000031000000200210008c000000200200003900000000020140190000001f02200039000000600320018f00000003050000290000000002530019000000000332004b00000000030000190000000103004039000003140420009c0000000004050019000008d20000213d0000000103300190000008d20000c13d000000060300002900000000002304350000001f0110008c000008ad0000a13d0000000001040433000000000110004c000000000100001900000001010060390c0f08040000040f00000006010000290000000005010433000003390100004100000000001504350000000402500039000000000100041400000005030000290000000000320435000080030200003900000024040000390000000003050019000300000005001d0c0f053f0000040f000000000110004c000008b00000613d0000000101000031000000200210008c000000200200003900000000020140190000001f02200039000000600320018f00000003050000290000000002530019000000000332004b00000000030000190000000103004039000003140420009c0000000004050019000008d20000213d0000000103300190000008d20000c13d00000006030000290000000000230435000000200110008c000008ad0000413d0000000001040433000000000110004c000000000100001900000001010060390c0f08160000040f00000004010000290c0f09980000040f000000070100002900000004020000290c0f09fa0000040f0c0f06250000040f000000000201001900000020012000390000000000010435000000000002043500000007010000290c0f07050000040f0000000001000411000600000001001d0000000702000029000000010300002900000002040000290c0f0a510000040f00000305010000410000000002000414000003050320009c000000000102401900000006020000290000031505200197000000c00110021000000316011001c70000800d0200003900000004030000390000031704000041000000040600002900000005070000290c0f0bfb0000040f0000000101200190000008ad0000613d0000000700000005000000000001042d000000000100001900000000020000190c0f05920000040f000000040200036700000001040000310000001f0340018f000000060100002900000000010104330000000504400270000000000540004c000008c10000613d000000000500001900000005065002100000000007610019000000000662034f000000000606043b00000000006704350000000105500039000000000645004b000008b90000413d000000000530004c000008d00000613d0000000504400210000000000242034f00000000044100190000000303300210000000000504043300000000053501cf000000000535022f000000000202043b0000010003300089000000000232022f00000000023201cf000000000252019f000000000024043500000001020000310c0f05920000040f0000031b010000410000000000100435000000410100003900000004020000390000000000120435000000240200003900000000010000190c0f05920000040f0008000000000002000200000005001d000100000004001d000300000003001d000800000002001d000500000001001d000000000110004c0000000001000019000000010100c0390c0f07dd0000040f00000008010000290000031501100197000600000001001d0000ffff0110008c000000000100001900000001010020390c0f07ef0000040f0000004001000039000700000001001d000000000301043300000338010000410000000000130435000000040230003900000000010004140000000604000029000000000042043500008002020000390000002404000039000400000003001d00000000050300190c0f053f0000040f000000000110004c000009660000613d0000000101000031000000200210008c000000200200003900000000020140190000001f02200039000000600320018f00000004050000290000000002530019000000000332004b00000000030000190000000103004039000003140420009c0000000004050019000009880000213d0000000103300190000009880000c13d000000070300002900000000002304350000001f0110008c000009630000a13d0000000001040433000000000110004c000000000100001900000001010060390c0f08040000040f00000007010000290000000005010433000003390100004100000000001504350000000402500039000000000100041400000006030000290000000000320435000080030200003900000024040000390000000003050019000400000005001d0c0f053f0000040f000000000110004c000009660000613d0000000101000031000000200210008c000000200200003900000000020140190000001f02200039000000600320018f00000004050000290000000002530019000000000332004b00000000030000190000000103004039000003140420009c0000000004050019000009880000213d0000000103300190000009880000c13d00000007030000290000000000230435000000200110008c000009630000413d0000000001040433000000000110004c000000000100001900000001010060390c0f08160000040f00000005010000290c0f09980000040f000000080100002900000005020000290c0f09fa0000040f0c0f06250000040f00000000020100190000000303000029000000020130008c000009900000813d00000000003204350000002001200039000000000001043500000008010000290c0f07050000040f0000000001000411000700000001001d0000000802000029000000010300002900000002040000290c0f0a510000040f00000305010000410000000002000414000003050320009c000000000102401900000007020000290000031505200197000000c00110021000000316011001c70000800d0200003900000004030000390000031704000041000000050600002900000006070000290c0f0bfb0000040f0000000101200190000009630000613d0000000800000005000000000001042d000000000100001900000000020000190c0f05920000040f000000040200036700000001040000310000001f0340018f000000070100002900000000010104330000000504400270000000000540004c000009770000613d000000000500001900000005065002100000000007610019000000000662034f000000000606043b00000000006704350000000105500039000000000645004b0000096f0000413d000000000530004c000009860000613d0000000504400210000000000242034f00000000044100190000000303300210000000000504043300000000053501cf000000000535022f000000000202043b0000010003300089000000000232022f00000000023201cf000000000252019f000000000024043500000001020000310c0f05920000040f0000031b010000410000000000100435000000410100003900000004020000390000000000120435000000240200003900000000010000190c0f05920000040f0000031b010000410000000000100435000000210100003900000004020000390000000000120435000000240200003900000000010000190c0f05920000040f00020000000000020000004002000039000200000002001d00000000030204330000033a02000041000000000023043500000004023000390000000000120435000000000100041400008004020000390000002404000039000100000003001d00000000050300190c0f053f0000040f0000000104000031000000000110004c000009c10000613d000000200140008c000000200100003900000000010440190000001f01100039000000600210018f00000001050000290000000001520019000000000221004b00000000020000190000000102004039000003140310009c0000000003050019000009e20000213d0000000102200190000009e20000c13d000000020200002900000000001204350000001f0240008c000009ea0000a13d0000000002030433000000000220004c000009ed0000613d0000000200000005000000000001042d00000004030003670000001f0240018f000000020100002900000000010104330000000504400270000000000540004c000009d10000613d000000000500001900000005065002100000000007610019000000000663034f000000000606043b00000000006704350000000105500039000000000645004b000009c90000413d000000000520004c000009e00000613d0000000504400210000000000343034f00000000044100190000000302200210000000000504043300000000052501cf000000000525022f000000000303043b0000010002200089000000000323022f00000000022301cf000000000252019f000000000024043500000001020000310c0f05920000040f0000031b010000410000000000100435000000410100003900000004020000390000000000120435000000240200003900000000010000190c0f05920000040f000000000100001900000000020000190c0f05920000040f00000044021000390000033b03000041000000000032043500000024021000390000001a0300003900000000003204350000031c02000041000000000021043500000004021000390000002003000039000000000032043500000064020000390c0f05920000040f0003000000000002000200000002001d000300000001001d0000032201000041000000000010043900008002010000390000000402000039000100000002001d00000000001204390c0f05790000040f000000000110004c00000a240000613d00000002010000290000033c011001970000033d011001c70000004002000039000200000002001d0000000003020433000000240230003900000000001204350000033e0100004100000000001304350000000301000029000003150110019700000004023000390000000000120435000000000100041400008002020000390000004404000039000300000003001d000000000503001900000000060000190c0f050a0000040f000000000110004c00000a270000613d00000003020000290000032e0120009c00000a490000813d000000020100002900000000002104350000000300000005000000000001042d000000000100001900000000020000190c0f05920000040f000000040200036700000001040000310000001f0340018f000000020100002900000000010104330000000504400270000000000540004c00000a380000613d000000000500001900000005065002100000000007610019000000000662034f000000000606043b00000000006704350000000105500039000000000645004b00000a300000413d000000000530004c00000a470000613d0000000504400210000000000242034f00000000044100190000000303300210000000000504043300000000053501cf000000000535022f000000000202043b0000010003300089000000000232022f00000000023201cf000000000252019f000000000024043500000001020000310c0f05920000040f0000031b010000410000000000100435000000410100003900000001020000290000000000120435000000240200003900000000010000190c0f05920000040f00060000000000020000000005030019000500000002001d000600000001001d0000000001000416000000000110004c00000a850000613d000300000005001d000400000004001d000003220100004100000000001004390000800a01000039000000040200003900000000001204390c0f05790000040f000000000110004c00000ba20000613d0000004001000039000100000001001d00000000050104330000033f0100004100000000001504350000004402500039000000000100041400000000030004160000000000320435000000050200002900000315022001970000002403500039000000000023043500000000020004100000031502200197000000040350003900000000002304350000800a0200003900000064040000390000000003050019000200000005001d00000000060000190c0f050a0000040f000000000110004c00000bad0000613d0000000202000029000003140120009c0000000404000029000000030500002900000ba50000213d000000010100002900000000002104350000000001000416000003400110019700000000000104170000000003000031000000000105001900000000020400190c0f072e0000040f000400000001001d00000000010104330c0f0be90000040f000300000001001d00000000010004140c0f0be90000040f0000000402000029000000400220021000000341022000410000034202200197000000030300002900000060033002100000034303300197000000000232019f000000c0011002100000034401100197000000000112019f0000000602000029000003150d2001970000033d011001c700000005020000290c0f0c050000040f000000000302001900000000020100190000006002200270000103050020019d0000030502200197000400000001035500000001033001900000001f0320018f000000050420027000000bcf0000613d0000003f012000390000034506100197000000400c00003900000000050c04330000000001650019000000000751004b00000000070000190000000107004039000003140810009c00000ba50000213d000000010770019000000ba50000c13d00000000001c043500000000002504350000002001500039000000200860008a0000001f0680018f000000000700003100000003077003670000000508800270000000000980004c00000ac80000613d0000000009000019000000050a900210000000000ba10019000000000aa7034f000000000a0a043b0000000000ab04350000000109900039000000000a89004b00000ac00000413d000000000960004c00000ad70000613d0000000508800210000000000787034f00000000088100190000000306600210000000000908043300000000096901cf000000000969022f000000000707043b0000010006600089000000000767022f00000000066701cf000000000696019f000000000068043500000000002504350000000106000031000000000262004b00000ba20000213d0000000402000367000000000640004c00000ae70000613d000000000600001900000005076002100000000008710019000000000772034f000000000707043b00000000007804350000000106600039000000000746004b00000adf0000413d000000000630004c00000af60000613d0000000504400210000000000242034f00000000044100190000000303300210000000000604043300000000063601cf000000000636022f000000000202043b0000010003300089000000000232022f00000000023201cf000000000262019f000000000024043500000000020504330000031303000041000000200420008c000000000400001900000000040340190000031305200197000000000650004c000000000300a019000003130550009c000000000304c019000000000330004c00000ba20000c13d0000000003010433000003140430009c00000ba20000213d000000000221001900000000011300190000001f031000390000031304000041000000000523004b0000000005000019000000000504801900000313033001970000031306200197000000000763004b0000000004008019000000000363013f000003130330009c00000000030500190000000003046019000000000330004c00000ba20000c13d0000000003010433000003140430009c00000ba50000213d00000005043002100000003f04400039000000200500008a000000000454016f00000000090c04330000000004490019000000000594004b00000000050000190000000105004039000003140640009c00000ba50000213d000000010550019000000ba50000c13d00000000004c04350000000000390435000000200110003900000006033002100000000003130019000000000423004b00000ba20000213d0000000004090019000000000531004b00000b4c0000813d00000000051200490000031306000041000000400750008c000000000700001900000000070640190000031305500197000000000850004c000000000600a019000003130550009c00000000050700190000000005066019000000000550004c00000ba20000c13d00000000050c04330000031a0650009c00000ba50000213d0000002004400039000000400650003900000000006c04350000000006010433000000000065043500000020061000390000000006060433000000200750003900000000006704350000000000540435000000400110003900000b2e0000013d0000032201000041000000000010043900008005010000390000000402000039000300000002001d000000000012043900060000000c001d000400000009001d0c0f05790000040f00000004070000290000000604000029000000000110004c00000ba20000613d000000000304043300000346010000410000000000130435000000240230003900000000010004140000000000420435000000050200002900000315042001970000000402300039000200000004001d000000000042043500000000020704330000004404300039000000000024043500000064083000390000000004000019000000000524004b00000b760000813d000000200770003900000000050704330000000006050433000000000068043500000020055000390000000005050433000000200680003900000000005604350000000104400039000000400880003900000b690000013d0000000004380049000080050200003900000000050300190000000006000019000500000003001d0c0f050a0000040f000000000110004c00000bad0000613d0000000502000029000003140120009c000000060100002900000ba50000213d0000000000210435000003220100004100000000001004390000800201000039000000030200002900000000001204390c0f05790000040f0000000602000029000000000110004c00000ba20000613d0000000005020433000003470100004100000000001504350000000402500039000000000100041400000002030000290000000000320435000080020200003900000024040000390000000003050019000500000005001d00000000060000190c0f050a0000040f000000000110004c00000bad0000613d0000000502000029000003140120009c000000060100002900000ba50000213d00000000002104350000000600000005000000000001042d000000000100001900000000020000190c0f05920000040f0000031b010000410000000000100435000000410100003900000004020000390000000000120435000000240200003900000000010000190c0f05920000040f000000040200036700000001040000310000001f0340018f000000400100003900000000010104330000000504400270000000000540004c00000bbe0000613d000000000500001900000005065002100000000007610019000000000662034f000000000606043b00000000006704350000000105500039000000000645004b00000bb60000413d000000000530004c00000bcd0000613d0000000504400210000000000242034f00000000044100190000000303300210000000000504043300000000053501cf000000000535022f000000000202043b0000010003300089000000000232022f00000000023201cf000000000252019f000000000024043500000001020000310c0f05920000040f000000000540004c00000bd90000613d00000000050000190000000506500210000000000761034f000000000707043b00000000007604350000000105500039000000000645004b00000bd20000413d000000000530004c00000be70000613d00000003033002100000000504400210000000000504043300000000053501cf000000000535022f000000000141034f000000000101043b0000010003300089000000000131022f00000000013101cf000000000151019f000000000014043500000000010000190c0f05920000040f000003480210009c00000bec0000813d000000000001042d000000400100003900000000010104330000004402100039000003490300004100000000003204350000002402100039000000080300003900000000003204350000031c02000041000000000021043500000004021000390000002003000039000000000032043500000064020000390c0f05920000040f00000bfe002104210000000102000039000000000001042d0000000002000019000000000001042d00000c03002104230000000102000039000000000001042d0000000002000019000000000001042d000000000f0d001900000c09002104290000000102000039000000000001042d0000000002000019000000000001042d000000000012041b000000000001042d000000000101041a000000000001042d00000c0f0000043200000c100001042e00000c11000104300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffff000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f3385fb6000000000000000000000000000000000000000000000000000000003cda33510000000000000000000000000000000000000000000000000000000057180981000000000000000000000000000000000000000000000000000000005d382700000000000000000000000000000000000000000000000000000000007b510fe80000000000000000000000000000000000000000000000000000000084da1fb4000000000000000000000000000000000000000000000000000000009c4d535b00000000000000000000000000000000000000000000000000000000bb0fd61000000000000000000000000000000000000000000000000000000000e9f18c1700000000000000000000000000000000000000000000000000000000ec8067c700000000000000000000000000000000000000000000000000000000ecf95b8a00000000000000000000000000000000000000000000000000000000187598a58000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffff000000000000000000000000ffffffffffffffffffffffffffffffffffffffff0200000000000000000000000000000000000000000000000000000000000000290afdae231a3fc0bbae8b1af63698b0a1d79b21ad17df0342dfb952fe74f8e50000000000000000000000000000000000000000000000000000000000010000306395c600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffbf4e487b710000000000000000000000000000000000000000000000000000000008c379a00000000000000000000000000000000000000000000000000000000043616e206f6e6c792062652063616c6c656420627920464f5243455f4445504c4f5945525f434f4e5452414354000000000000000000000000000000000000006d656e74730000000000000000000000000000000000000000000000000000002074686520636f6d62696e6564206076616c75656073206f66206465706c6f796076616c7565602070726f7669646564206973206e6f7420657175616c20746f1806aa1896bbf26568e884a7374b41e002500962caba6a15023a8d90e8508b83f3385fb60000000000000000000000000000000000000000000000000000000002000002000000000000000000000000000000240000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffc04de2e46800000000000000000000000000000000000000000000000000000000666c61670000000000000000000000000000000000000000000000000000000054686973206d6574686f6420726571756972652073797374656d2063616c6c20696e6700000000000000000000000000000000000000000000000000000000006f6d2073657175656e7469616c20746f20617262697472617279206f726465724974206973206f6e6c7920706f737369626c6520746f206368616e6765206672ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff00000000000000000000000000000000000000000000000100000000000000002020dba91b30cc0006188af794c2fb30dd8520db7e2c088b7fc7c103c00ca494000000000000000000000000000000000000000000000000ffffffffffffff4063bae3a9951d38e8a3fbb7b70909afc1200610fc5bc55ade242f815974674f23000000000000000000000000000000000000000000000000ffffffffffffff8042797465636f6465486173682063616e206e6f74206265207a65726f00000000656c20737061636500000000000000000000000000000000000000000000000043616e206e6f74206465706c6f7920636f6e74726163747320696e206b65726e436f64652068617368206973206e6f6e2d7a65726f00000000000000000000004163636f756e74206973206f6363757069656400000000000000000000000000e03fe177000000000000000000000000000000000000000000000000000000005aa9b6b5000000000000000000000000000000000000000000000000000000004c6314f00000000000000000000000000000000000000000000000000000000054686520636f64652068617368206973206e6f74206b6e6f776e000000000000ff00ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00010000000000000000000000000000000000000000000000000000000000004f1e1be000000000000000000000000000000000000000000000000000000000579952fc0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffff00000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000ffffffff000000000000000000000000000000000000000000000000ffffffff00000000000000000000000000000000ffffffff00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001ffffffe0ad7e232e00000000000000000000000000000000000000000000000000000000c2e4ff970000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000004f766572666c6f770000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
- "0x0000000000000000000000000000000000000001": "0x00010000000000020000000000010355000000800300003900000040010000390000000000310435000000000300041600000001022001900000003b0000c13d000000000230004c000000450000c13d00000000020004120000001a022001970000000003000410000000000232004b000000450000c13d00000000040003670000006002400370000000000302043b0000001b063000410000002002400370000000000202043b0000004005400370000000000505043b0000001b075000410000001c0770009c000000470000413d0000001d0720008a000000020800008a000000000787004b000000470000413d0000001b0660009c000000470000a13d000000000404043b000000000101043300000060061000390000000000360435000000400310003900000000005304350000001b0220008a000000200310003900000000002304350000000000410435000000800110008c0000004b0000c13d0000000001000414000004580110008c000000450000413d00000458010000390000001e020000410000000001120420000000000110004c000000450000613d0000000001000433000000010110008c000000470000c13d000000200100003900000000020100190000000003000019005e00520000040f000000000130004c000000450000c13d0000002002000039000001000100003900000000002104390000012002000039000000000002043900000040020000390000001903000041005e00520000040f0000000001000019005e005c0000040f000000000100001900000000020000190000000003000019005e00520000040f0000001d0100004100000000001004350000000101000039000000040200003900000000001204350000002401000039005e005c0000040f0000001f040000410000001f0510009c0000000001048019000000400110021000000000013100190000001f0320009c0000000002048019000000600220021000000000012100190000005f0001042e000000600110021000000060000104300000005e000004320000005f0001042e00000060000104300000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffffffffffff000000000000000000000000000000014551231950b75fc4402da1732fc9bebf000000000000000000000000000000014551231950b75fc4402da1732fc9bec04e487b7100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000040000000400000000000000000000000000000000000000000000000000000000ffffffff0000000000000000000000000000000000000000000000000000000000000000",
- "0x0000000000000000000000000000000000008005": "0x00020000000000020007000000000002000100000001035500000060011002700000003a0010019d00000080050000390000004001000039000000000051043500000001012001900000003d0000c13d0000000001000031000000040110008c000000a50000413d0000000101000367000000000101043b000000e0011002700000003c0210009c000000480000613d0000003d0110009c000000a50000c13d0000000001000416000000000110004c000000a50000c13d000000040100008a00000000011000310000003e02000041000000400310008c000000000300001900000000030240190000003e01100197000000000410004c000000000200a0190000003e0110009c00000000010300190000000001026019000000000110004c000000a50000c13d000600000005001d00e400d20000040f0000003f0110019700000000001004350000002001000039000700000001001d0000000000010435000000000100001900e400ac0000040f00000024020000390000000102200367000000000202043b000000000020043500000007020000290000000000120435000000000100001900e400ac0000040f00e400e20000040f0000000602000029000000000012043500000000010200190000000702000029000000000300001900e400bf0000040f0000000001000416000000000110004c000000a50000c13d0000002002000039000001000100003900000000002104390000012002000039000000000002043900000040020000390000003b0300004100e400bf0000040f0000000001000416000000000110004c000000a50000c13d0000000001000031000000040210008a0000003e03000041000000400420008c000000000400001900000000040340190000003e02200197000000000520004c000000000300a0190000003e0220009c00000000020400190000000002036019000000000220004c000000a50000c13d00000001020003670000000403200370000000000303043b000300000003001d0000003f0330009c000000a50000213d0000002403200370000000000303043b000000400430009c000000a50000213d00000023043000390000003e05000041000000000614004b000000000600001900000000060580190000003e071001970000003e04400197000000000874004b0000000005008019000000000474013f0000003e0440009c00000000040600190000000004056019000000000440004c000000a50000c13d0000000404300039000000000242034f000000000402043b000000400240009c000000a50000213d00000024033000390000000602400210000200000003001d0000000002320019000000000112004b000000a50000213d0000000001000411000080060110008c000000a50000c13d0000002001000039000700000001001d0000000002000019000100000004001d000000000142004b000000a80000813d0000000601200210000600000002001d000000020200002900000000012100190000000102000367000000000312034f0000002001100039000000000112034f000000000101043b000500000001001d000000000103043b000400000001001d0000000301000029000000000010043500000007010000290000000000010435000000000100001900e400ac0000040f0000000402000029000000000020043500000007020000290000000000120435000000000100001900e400ac0000040f0000000002010019000000050100002900e400e00000040f000000060200002900000001040000290000000102200039000000840000013d0000000001000019000000000200001900e400c90000040f00000000010000190000000002000019000000000300001900e400bf0000040f0000003a0200004100000000030004140000003a0430009c00000000030280190000003a0410009c00000000010280190000004001100210000000c002300210000000000112019f00000041011001c7000080100200003900e400db0000040f0000000102200190000000bc0000613d000000000101043b000000000001042d0000000001000019000000000200001900e400c90000040f0000003a040000410000003a0510009c0000000001048019000000400110021000000000013100190000003a0320009c000000000204801900000060022002100000000001210019000000e50001042e0000003a030000410000003a0420009c00000000020380190000003a0410009c000000000103801900000040011002100000006002200210000000000112019f000000e60001043000000004010000390000000101100367000000000101043b000000420210009c000000d80000813d000000000001042d0000000001000019000000000200001900e400c90000040f000000de002104230000000102000039000000000001042d0000000002000019000000000001042d000000000012041b000000000001042d000000000101041a000000000001042d000000e400000432000000e50001042e000000e600010430000000000000000000000000000000000000000000000000000000000000000000000000ffffffff000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ad7e232e00000000000000000000000000000000000000000000000000000000310ab0898000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffffffffffff000000000000000000000000000000000000000000000000ffffffffffffffff02000000000000000000000000000000000000400000000000000000000000000000000000000000000000010000000000000000000000000000000000000000",
- "0x0000000000000000000000000000000000008010": "0x0002000000000002000200000000000200010000000103550000006001100270000000280010019d00000080010000390000004004000039000000000014043500000000030004160000000102200190000000550000c13d000000000230004c0000005f0000c13d00000000020004120000002a022001970000000003000410000000000232004b0000005f0000c13d000000010500036700000000030000310000001f0630018f0000000004040433000000882730011a0000000507300270000000000870004c000000230000613d00000000080000190000000509800210000000000a940019000000000995034f000000000909043b00000000009a04350000000108800039000000000978004b0000001b0000413d000000000860004c000000320000613d0000000507700210000000000575034f00000000077400190000000306600210000000000807043300000000086801cf000000000868022f000000000505043b0000010006600089000000000565022f00000000056501cf000000000585019f0000000000570435000000800440008c000000620000c13d000000000323004900000088043000390000002c030000410000000001100031000000870220008c0000003e0000613d0000002d0200004100000000002104350000002e030000410000007f014000390000000000310435000000881240011a000100000002001d00000028212000c9000200000004001d009a00880000040f0000000102000029000000c00220021000000002030000290000001b033002100000002f033000410000003003300197000000000223019f00000031022001c7000000000301001900000000010200190000000002030019009a007f0000040f009a00790000040f000000200200003900000000010000190000000003000019009a006a0000040f000000000130004c0000005f0000c13d0000002002000039000001000100003900000000002104390000012002000039000000000002043900000040020000390000002903000041009a006a0000040f00000000010000190000000002000019009a00720000040f0000002b01000041000000000010043500000001010000390000000402000039000000000012043500000024020000390000000001000019009a00720000040f0000002804000041000000280510009c000000000104801900000040011002100000006002200210000000000121019f00000000013100190000009b0001042e0000002803000041000000280410009c000000000103801900000040011002100000006002200210000000000121019f0000009c00010430000000000110004c0000007c0000613d000000000001042d00000000010000190000000002000019009a00720000040f00000028022001970000000003000414000000000323004b000000850000413d0000000001210420000000000001042d00000000010000190000000002000019009a00720000040f000000320210009c0000008b0000813d000000000001042d00000040010000390000000001010433000000440210003900000033030000410000000000320435000000240210003900000008030000390000000000320435000000340200004100000000002104350000000402100039000000200300003900000000003204350000006402000039009a00720000040f0000009a000004320000009b0001042e0000009c0001043000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffff0000000200000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffffffffffff4e487b710000000000000000000000000000000000000000000000000000000081000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f8000000000000000000000000000000000000000000000000000000ffffffff00000000000000000000000000000000000000000000000100000000000000000000000400000000000000000000000000000000000000000000000000000001000000004f766572666c6f7700000000000000000000000000000000000000000000000008c379a000000000000000000000000000000000000000000000000000000000",
- "0x0000000000000000000000000000000000008004": "0x0002000000000002000100000000000200010000000103550000006001100270000000520010019d0000008005000039000000400100003900000000005104350000000101200190000000300000c13d0000000001000031000000040110008c000000710000413d0000000101000367000000000101043b000000e001100270000000540210009c0000003b0000613d000000550110009c000000710000c13d0000000001000416000000000110004c000000710000c13d000000040100008a00000000011000310000005602000041000000200310008c000000000300001900000000030240190000005601100197000000000410004c000000000200a019000000560110009c00000000010300190000000001026019000000000110004c000000710000c13d00000004010000390000000101100367000000000101043b000100000005001d014201400000040f00000001030000290000000000130435000000200200003900000000010300190000000003000019014200790000040f0000000001000416000000000110004c000000710000c13d0000002002000039000001000100003900000000002104390000012002000039000000000002043900000040020000390000005303000041014200790000040f0000000001000416000000000110004c000000710000c13d0000000004000031000000040140008a0000005602000041000000400310008c000000000300001900000000030240190000005601100197000000000510004c000000000200a019000000560110009c00000000010300190000000001026019000000000110004c000000710000c13d00000001020003670000000401200370000000000101043b000000000310004c0000000003000019000000010300c039000000000331004b000000710000c13d0000002403200370000000000503043b000000570350009c000000710000213d00000023035000390000005606000041000000000743004b0000000007000019000000000706801900000056084001970000005603300197000000000983004b0000000006008019000000000383013f000000560330009c00000000030700190000000003066019000000000330004c000000710000c13d0000000403500039000000000232034f000000000302043b000000570230009c000000710000213d000000240250003900000005053002100000000005250019000000000445004b000000740000a13d00000000010000190000000002000019014200830000040f0142008c0000040f000000000100001900000000020000190000000003000019014200790000040f0000005204000041000000520510009c000000000104801900000040011002100000000001310019000000520320009c000000000204801900000060022002100000000001210019000001430001042e0000005203000041000000520420009c0000000002038019000000520410009c000000000103801900000040011002100000006002200210000000000112019f0000014400010430000a000000000002000700000003001d000600000002001d00000000030100190000000001000411000080010110008c0000012a0000c13d000000000130004c0000000001000019000000010100c039000500000001001d0000000101000039000400000001001d0000800d01000039000300000001001d0000000301000039000200000001001d0000000001000413000100000001001d0000000002000019000800000003001d0000000701000029000000000112004b000000df0000813d000a00000002001d0000000501200210000000060200002900000000012100190000000101100367000000000101043b000900000001001d014201400000040f0000000803000029000000000110004c000000dc0000c13d00000009020000290000005a012001970000005b0110009c000000e40000c13d0000005e01200198000000f60000613d000000000130004c000000cb0000613d00000001010000290000005205100197000000db012002700000005f01100197000000640310003900000000413500a900000000433100d9000000000335004b000001040000c13d0000000003020019000000610210009c0000010c0000813d0000000002000414000000000212004b000000e10000413d0000000001100420000000000110004c0000011b0000613d0000000002030019000000000002041d00000004010000290142013e0000040f00000052010000410000000002000414000000520320009c0000000001024019000000c00110021000000064011001c700000065040000410000000302000029000000020300002900000009050000290000000506000029014201390000040f00000008030000290000000101200190000000e10000613d0000000a020000290000000102200039000000a10000013d0000000a00000005000000000001042d00000000010000190000000002000019014200830000040f0000004001000039000000000101043300000064021000390000005c03000041000000000032043500000044021000390000005d030000410000000000320435000000240210003900000022030000390000000000320435000000590200004100000000002104350000000402100039000000200300003900000000003204350000008402000039014200830000040f0000004001000039000000000101043300000044021000390000006603000041000000000032043500000059020000410000000000210435000000240210003900000020030000390000000000320435000000040210003900000000003204350000006402000039014200830000040f0000006001000041000000000010043500000011010000390000000402000039000000000012043500000024020000390000000001000019014200830000040f00000040010000390000000001010433000000440210003900000063030000410000000000320435000000240210003900000008030000390000000000320435000000590200004100000000002104350000000402100039000000200300003900000000003204350000006402000039014200830000040f00000040010000390000000001010433000000440210003900000062030000410000000000320435000000240210003900000014030000390000000000320435000000590200004100000000002104350000000402100039000000200300003900000000003204350000006402000039014200830000040f0000004001000039000000000101043300000044021000390000005803000041000000000032043500000024021000390000001f030000390000000000320435000000590200004100000000002104350000000402100039000000200300003900000000003204350000006402000039014200830000040f0000013c002104210000000102000039000000000001042d0000000002000019000000000001042d000000000012041b000000000001042d000000000101041a000000000001042d0000014200000432000001430001042e000001440001043000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffff000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e516761e000000000000000000000000000000000000000000000000000000004c6314f08000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffff43616c6c61626c65206f6e6c792062792074686520626f6f746c6f616465720008c379a000000000000000000000000000000000000000000000000000000000ffff00000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000007368000000000000000000000000000000000000000000000000000000000000496e636f72726563746c7920666f726d61747465642062797465636f64654861000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001fffe04e487b710000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000004661696c656420746f20636861726765206761730000000000000000000000004f766572666c6f770000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000c94722ff13eacf53547c4741dab5228353a05938ffcdd5d4a2d533ae0e618287436f6465206c656e67746820696e20776f726473206d757374206265206f6464",
- "0x0000000000000000000000000000000000008008": "0x00020000000000020001000000000002000100000001035500000060011002700000004c0010019d00000080010000390000004008000039000000000018043500000001012001900000007a0000c13d0000000001000031000000040110008c000000850000413d0000000101000367000000000101043b0000004e011001970000004f0110009c000000850000c13d0000000001000416000000000110004c000000850000c13d0000000001000031000000040210008a0000005003000041000000200420008c000000000400001900000000040340190000005002200197000000000520004c000000000300a019000000500220009c00000000020400190000000002036019000000000220004c000000850000c13d00000001020003670000000403200370000000000303043b000000510430009c000000850000213d00000023043000390000005005000041000000000614004b0000000006000019000000000605801900000050011001970000005004400197000000000714004b0000000005008019000000000114013f000000500110009c00000000010600190000000001056019000000000110004c000000850000c13d0000000401300039000000000112034f000000000201043b000000520120009c000000880000813d0000001f01200039000000200400008a000000000141016f0000003f01100039000000000441016f00000000010804330000000004410019000000000514004b00000000050000190000000105004039000000510640009c000000880000213d0000000105500190000000880000c13d00000000004804350000000000210435000000240330003900000000043200190000000005000031000000000454004b000000850000213d000100000008001d0000001f0420018f000000010530036700000020031000390000000506200270000000000760004c000000610000613d000000000700001900000005087002100000000009830019000000000885034f000000000808043b00000000008904350000000107700039000000000867004b000000590000413d000000000740004c000000700000613d0000000506600210000000000565034f00000000066300190000000304400210000000000706043300000000074701cf000000000747022f000000000505043b0000010004400089000000000545022f00000000044501cf000000000474019f000000000046043500000000022300190000000000020435012a00ba0000040f000000010200002900000000030204330000000000130435000000200200003900000000010300190000000003000019012a00a70000040f0000000001000416000000000110004c000000850000c13d0000002002000039000001000100003900000000002104390000012002000039000000000002043900000040020000390000004d03000041012a00a70000040f00000000010000190000000002000019012a00b10000040f0000005301000041000000000010043500000041010000390000000402000039000000000012043500000024020000390000000001000019012a00b10000040f0000004c030000410000004c0410009c000000000103801900000040011002100000004c0420009c00000000020380190000006002200210000000000112019f00000000020004140000004c0420009c0000000002038019000000c002200210000000000112019f00000054011001c70000801002000039012a01250000040f0000000102200190000000a40000613d000000000101043b000000000001042d00000000010000190000000002000019012a00b10000040f0000004c040000410000004c0510009c0000000001048019000000400110021000000000013100190000004c0320009c0000000002048019000000600220021000000000012100190000012b0001042e0000004c030000410000004c0420009c00000000020380190000004c0410009c000000000103801900000040011002100000006002200210000000000112019f0000012c000104300001000000000002000100000001001d00000000020104330000002001100039012a00900000040f000000010a00002900000000020a04330000005f03200039000000200200008a000000000323016f000000000901001900000000010004130000004c0410019700000000514300a9000000000530004c000000cf0000613d00000000533100d9000000000334004b000001090000c13d000000550310009c000001110000813d00000058011001970000000003000414000000000313004b000001060000413d0000000001100420000000000110004c000001060000613d0000000005000411000000000095041d000000400100003900000000010104330000002003000039000000000031043500000000030a04330000002004100039000000000034043500000040041000390000000006000019000000000736004b000000e90000813d000000000746001900000020066000390000000008a6001900000000080804330000000000870435000000e10000013d000000000443001900000000000404350000005f03300039000000000223016f0000004c030000410000004c0410009c000000000103801900000040011002100000004c0420009c00000000020380190000006002200210000000000112019f00000000020004140000004c0420009c0000000002038019000000c002200210000000000112019f00000054011001c70000800d02000039000000030300003900000059040000410000000006090019000100000009001d012a01200000040f00000001010000290000000102200190000001060000613d0000000100000005000000000001042d00000000010000190000000002000019012a00b10000040f0000005301000041000000000010043500000011010000390000000402000039000000000012043500000024020000390000000001000019012a00b10000040f00000040010000390000000001010433000000440210003900000056030000410000000000320435000000240210003900000008030000390000000000320435000000570200004100000000002104350000000402100039000000200300003900000000003204350000006402000039012a00b10000040f00000123002104210000000102000039000000000001042d0000000002000019000000000001042d00000128002104230000000102000039000000000001042d0000000002000019000000000001042d0000012a000004320000012b0001042e0000012c0001043000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffff0000000200000000000000000000000000000000000000000000000000000000ffffffff0000000000000000000000000000000000000000000000000000000062f84b24000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffff00000000000000000000000000000000000000000000000100000000000000004e487b7100000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000004f766572666c6f7700000000000000000000000000000000000000000000000008c379a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffe03a36e47291f4201faf137fab081d92295bce2d53be2c6ca68ba82c7faa9ce2410000000000000000000000000000000000000000000000000000000000000000",
- "0x000000000000000000000000000000000000800a": "0x0004000000000002000600000000000200000000030100190000006003300270000000b60430019700030000004103550002000000010355000000b60030019d000100000000001f0000008001000039000000400600003900000000001604350000000101200190000000440000c13d0000000003000031000000040130008c000002410000413d0000000201000367000000000201043b000000e002200270000000b90420009c000000e90000613d000000ba0420009c0000010c0000613d000000bb0420009c000001270000613d000000bc0420009c0000013e0000613d000000bd0420009c000000550000613d000000be0120009c0000018f0000613d000000bf0120009c000000c10000613d000000c00120009c000002410000c13d0000000001000416000000000110004c000002410000c13d000000040100008a0000000001100031000000c102000041000000000310004c00000000030000190000000003024019000000c101100197000000000410004c000000000200a019000000c10110009c00000000010300190000000001026019000000000110004c000002410000c13d000600000006001d02d102b20000040f00000000020100190000002001200039000000d103000041000000000031043500000006010000290000000001010433000600000001001d02d1029d0000040f000000060300002900000000023100490000000001030019000000000300001902d102770000040f0000000001000416000000000110004c000002410000c13d0000000201000039000600000001001d02d102cf0000040f000000b701100197000000060200002902d102cd0000040f000000200200003900000100010000390000000000210439000001200200003900000000000204390000004002000039000000b80300004102d102770000040f000000040230008a000000c103000041000000200420008c00000000040000190000000004034019000000c102200197000000000520004c000000000300a019000000c10220009c00000000020400190000000002036019000000000220004c000002410000c13d0000000401100370000000000201043b000000c20120009c000002410000213d0000000001000410000000c20110019700000000001004350000002001000039000300000001001d0000000000010435000600000006001d000500000002001d02d102680000040f000400000001001d02d102cf0000040f00000000020004160000000001210049000000040200002902d102cd0000040f0000000101000039000400000001001d02d102cf0000040f00000000020004160000000001210049000000040200002902d102cd0000040f000000060500002900000000020004160000000001050433000000c9030000410000002004100039000000000034043500000005030000290000006003300210000000240410003900000000003404350000003803100039000000000023043500000038020000390000000000210435000000ca0210009c000001ce0000813d0000006003100039000400000003001d0000000000350435000000cb02000041000000000023043500000064021000390000000003000414000200000003001d00000003030000290000000000320435000000840210003902d1028a0000040f000000040200002900000000032100490000000201000029000000000402001902d102440000040f0000000104000031000000000110004c000001c30000c13d00000003030003670000001f0240018f000000060100002900000000010104330000000504400270000000000540004c000000b00000613d000000000500001900000005065002100000000007610019000000000663034f000000000606043b00000000006704350000000105500039000000000645004b000000a80000413d000000000520004c000000bf0000613d0000000504400210000000000343034f00000000044100190000000302200210000000000504043300000000052501cf000000000525022f000000000303043b0000010002200089000000000323022f00000000022301cf000000000252019f0000000000240435000000010200003102d102810000040f0000000001000416000000000110004c000002410000c13d000000040100008a0000000001100031000000c102000041000000000310004c00000000030000190000000003024019000000c101100197000000000410004c000000000200a019000000c10110009c00000000010300190000000001026019000000000110004c000002410000c13d0000000001060433000500000001001d000600000006001d02d102a40000040f00000005030000290000002001300039000000c302000041000000000021043500000003010000390000000000130435000000000103001900000006020000290000000003020433000600000003001d00000020020000390000000000230435000000200230003902d1028a0000040f000000060300002900000000023100490000000001030019000000000300001902d102770000040f0000000001000416000000000110004c000002410000c13d000000040100008a0000000001100031000000c102000041000000200310008c00000000030000190000000003024019000000c101100197000000000410004c000000000200a019000000c10110009c00000000010300190000000001026019000000000110004c000002410000c13d00000004010000390000000201100367000000000101043b000000c20110019700000000001004350000002001000039000500000001001d0000000000010435000600000006001d02d102680000040f02d102cf0000040f00000006020000290000000002020433000000000012043500000000010200190000000502000029000000000300001902d102770000040f0000000001000416000000000110004c000002410000c13d000000040100008a0000000001100031000000c102000041000000000310004c00000000030000190000000003024019000000c101100197000000000410004c000000000200a019000000c10110009c00000000010300190000000001026019000000000110004c000002410000c13d0000000101000039000600000006001d02d102cf0000040f00000006020000290000000003020433000000000013043500000020020000390000000001030019000000000300001902d102770000040f0000000001000416000000000110004c000002410000c13d000000040100008a0000000001100031000000c102000041000000000310004c00000000030000190000000003024019000000c101100197000000000410004c000000000200a019000000c10110009c00000000010300190000000001026019000000000110004c000002410000c13d0000000001060433000000120200003900000000002104350000002002000039000000000300001902d102770000040f0000000001000416000000000110004c000002410000c13d000000040100008a0000000001100031000000c102000041000000400310008c00000000030000190000000003024019000000c101100197000000000410004c000000000200a019000000c10110009c00000000010300190000000001026019000000000110004c000002410000c13d00000002010003670000000402100370000000000302043b000000c20230009c000002410000213d0000002401100370000000000201043b0000000001000411000080010110008c000001d60000c13d000400000003001d000600000006001d0000000101000039000500000002001d02d102cf0000040f000000000201001900000005010000290000000001120019000000000221004b000000000200001900000001020040390000000102200190000002210000c13d000000010200003902d102cd0000040f000000040100002900000000001004350000002001000039000000000001043502d102680000040f000300000001001d02d102cf0000040f000000050300002900000000020100190000000001320019000000000221004b000000000200001900000001020040390000000102200190000002210000c13d000000030200002902d102cd0000040f0000000601000029000000000101043300000005020000290000000000210435000000b6020000410000000003000414000000b60430009c0000000003028019000000b60410009c00000000010280190000004001100210000000c002300210000000000112019f000000c4011001c70000800d020000390000000203000039000000d004000041000000040500002902d102c30000040f0000000101200190000002410000613d000001fd0000013d0000000001000416000000000110004c000002410000c13d000000040100008a0000000001100031000000c102000041000000600310008c00000000030000190000000003024019000000c101100197000000000410004c000000000200a019000000c10110009c00000000010300190000000001026019000000000110004c000002410000c13d00000002010003670000000402100370000000000302043b000000c20230009c000002410000213d0000002402100370000000000402043b000000c20240009c000002410000213d00000000020004110000004401100370000000000501043b000080060120008c000002010000613d000000090100008a000000000112016f000080010110008c000002010000613d00000000010604330000006402100039000000c60300004100000000003204350000004402100039000000c703000041000000000032043500000024021000390000003e030000390000000000320435000000c8020000410000000000210435000000040210003900000020030000390000000000320435000000840200003902d102810000040f000000200140008c000000200100003900000000010440190000001f01100039000000600110018f00000004020000290000000001210019000000cc0210009c00000006020000290000000506000029000001e40000a13d000000ce0100004100000000001004350000004101000039000000040200003900000000001204350000002402000039000000000100001902d102810000040f00000000010604330000004402100039000000cf03000041000000000032043500000024021000390000001f030000390000000000320435000000c8020000410000000000210435000000040210003900000020030000390000000000320435000000640200003902d102810000040f0000000000120435000000200140008c000002410000413d0000000001000416000000000016041d000000000102043300000000020004160000000000210435000000b6020000410000000003000414000000b60430009c0000000003028019000000b60410009c00000000010280190000004001100210000000c002300210000000000112019f000000c4011001c70000800d020000390000000303000039000000cd04000041000000000500041102d102c30000040f0000000101200190000002410000613d00000000010000190000000002000019000000000300001902d102770000040f000400000004001d000600000006001d000100000003001d00000000003004350000002001000039000300000001001d0000000000010435000500000005001d02d102680000040f000200000001001d02d102cf0000040f0000000503000029000000000231004b000002210000413d0000000001310049000000020200002902d102cd0000040f000000040100002900000000001004350000000301000029000000000001043502d102680000040f000300000001001d02d102cf0000040f000000050300002900000000020100190000000001320019000000000221004b000000000200001900000001020040390000000102200190000002290000613d000000ce0100004100000000001004350000001101000039000000040200003900000000001204350000002402000039000000000100001902d102810000040f000000030200002902d102cd0000040f0000000601000029000000000101043300000005020000290000000000210435000000b6020000410000000003000414000000b60430009c0000000003028019000000b60410009c00000000010280190000004001100210000000c002300210000000000112019f000000c4011001c70000800d020000390000000303000039000000c5040000410000000105000029000000040600002902d102c30000040f0000000101200190000001fd0000c13d0000000001000019000000000200001902d102810000040f0001000000000002000100000004001d000000b604000041000000b60520009c00000000020480190000004002200210000000b60530009c00000000030480190000006003300210000000000223019f000000b60310009c0000000001048019000000c001100210000000000112019f000080080200003902d102c30000040f0000000106000029000000010220018f000000000300001900000005043002100000000005460019000000000441034f000000000404043b00000000004504350000000103300039000000000430004c000000000400001900000001040060390000000104400190000002570000c13d00030000000103550000006001100270000100b60010019d00000000010200190000000100000005000000000001042d000000b6010000410000000002000414000000b60320009c0000000001024019000000c001100210000000d2011001c7000080100200003902d102c80000040f0000000102200190000002740000613d000000000101043b000000000001042d0000000001000019000000000200001902d102810000040f000000b604000041000000b60510009c000000000104801900000040011002100000000001310019000000b60320009c000000000204801900000060022002100000000001210019000002d20001042e000000b603000041000000b60420009c0000000002038019000000b60410009c000000000103801900000040011002100000006002200210000000000112019f000002d3000104300000000003010433000000000032043500000020022000390000000004000019000000000534004b000002960000813d000000000542001900000020044000390000000006140019000000000606043300000000006504350000028e0000013d000000000132001900000000000104350000001f01300039000000200300008a000000000131016f0000000001120019000000000001042d0000000003020019000000200200003900000000002104350000002002100039000000000103001902d1028a0000040f000000000001042d000000d30210009c000002aa0000813d000000400110003900000040020000390000000000120435000000000001042d000000ce0100004100000000001004350000004101000039000000040200003900000000001204350000002402000039000000000100001902d102810000040f00000040020000390000000001020433000000d30310009c000002bb0000813d0000004003100039000000000032043500000005020000390000000000210435000000000001042d000000ce0100004100000000001004350000004101000039000000040200003900000000001204350000002402000039000000000100001902d102810000040f000002c6002104210000000102000039000000000001042d0000000002000019000000000001042d000002cb002104230000000102000039000000000001042d0000000002000019000000000001042d000000000012041b000000000001042d000000000101041a000000000001042d000002d100000432000002d20001042e000002d300010430000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffff00000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009cc7f7080000000000000000000000000000000000000000000000000000000018160ddd00000000000000000000000000000000000000000000000000000000313ce5670000000000000000000000000000000000000000000000000000000040c10f190000000000000000000000000000000000000000000000000000000051cff8d900000000000000000000000000000000000000000000000000000000579952fc0000000000000000000000000000000000000000000000000000000095d89b410000000000000000000000000000000000000000000000000000000006fdde038000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffffffffffff45544800000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000020000000000000000000000000ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef616c206163636573732063616e2063616c6c2074686973206d6574686f6400004f6e6c792073797374656d20636f6e747261637473207769746820737065636908c379a0000000000000000000000000000000000000000000000000000000006c0960f900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffa062f84b2400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffff2717ead6b9200dd235aad468c9809ea400fe33ac69b5bfaa6d3e90fc922b63984e487b710000000000000000000000000000000000000000000000000000000043616c6c61626c65206f6e6c792062792074686520626f6f746c6f61646572000f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d412139688545746865720000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffc00000000000000000000000000000000000000000000000000000000000000000",
- "0x0000000000000000000000000000000000008009": "0x0008000000000002000400000000000200000000060100190000006006600270000000740760019700070000007103550006000000010355000300000003001f000400000004001f000500000005001f000000740060019d000200000002001f000100000000001f00000080010000390000004007000039000000000017043500000001022001900000002c0000c13d000000020200003900000002032001870000000102300270000000000330004c00000000030004110000001b0000c13d000000760230009c00000000020000190000000102004039000000000220004c000000370000c13d0000007d0200004100000000002104350000002003000039000000840200003900000000003204350000002403000039000000a40400003900000000003404350000007e03000041000000c40400003900000000003404350000007f03000041000000e404000039000000000034043501cc00c90000040f0000000001000416000000000110004c000000660000c13d000000200200003900000100010000390000000000210439000001200200003900000000000204390000004002000039000000750300004101cc00bf0000040f0000000504000031000000770200004100000004052001870000000306000031000000000260004c000400000004001d000300000005001d0000004d0000c13d00000000000604170000000001000031000000000201001901cc00d20000040f00000000030100190000000401000029000000010410018f0000000002000411000000030100002901cc01120000040f00000000020104330000002001100039000000000300001901cc00bf0000040f0000007804000041000000a00200003900000000004204350000007703300197000000a4040000390000000000340435000000c4030000390000000000530435000000e403000039000100000006001d0000000000630435000000640300003900000000003104350000012003000039000200000007001d000000000037043500000000040004140000000003010433000000000104001901cc00ab0000040f0000000102000031000000000320004c000000690000c13d000000000110004c000000a20000c13d0000000001000019000000000200001901cc00c90000040f000000790320009c00000002070000290000009a0000813d0000003f03200039000000200400008a000000000443016f00000000030704330000000004430019000000000534004b000000000500001900000001050040390000007a0640009c0000009a0000213d00000001055001900000009a0000c13d000000000047043500000000002304350000002002300039000000070300036700000001050000310000001f0450018f0000000505500270000000000650004c0000008a0000613d000000000600001900000005076002100000000008720019000000000773034f000000000707043b00000000007804350000000106600039000000000756004b000000820000413d000000000640004c000000640000613d0000000505500210000000000353034f00000000025200190000000304400210000000000502043300000000054501cf000000000545022f000000000303043b0000010004400089000000000343022f00000000034301cf000000000353019f0000000000320435000000640000013d0000007b0100004100000000001004350000004101000039000000040200003900000000001204350000002402000039000000000100001901cc00c90000040f00000001060000290000007c0160009c000000040400002900000003050000290000003f0000413d00000000010000190000000002000019000000000300001901cc00bf0000040f0000007404000041000000740520009c00000000020480190000004002200210000000740530009c00000000030480190000006003300210000000000223019f000000740310009c0000000001048019000000c001100210000000000112019f0000800a0200003901cc01c10000040f00000000030100190000006003300270000100740030019d0007000000010355000000010120018f000000000001042d0000007404000041000000740510009c000000000104801900000040011002100000000001310019000000740320009c000000000204801900000060022002100000000001210019000001cd0001042e0000007403000041000000740420009c0000000002038019000000740410009c000000000103801900000040011002100000006002200210000000000112019f000001ce00010430000000790310009c000001070000813d0000003f03100039000000200400008a000000000543016f000000400400003900000000030404330000000005530019000000000635004b000000000600001900000001060040390000007a0750009c000001070000213d0000000106600190000001070000c13d00000000005404350000000000130435000000000221004b0000010f0000213d00000006050003670000001f0410018f00000020023000390000000506100270000000000760004c000000f40000613d000000000700001900000005087002100000000009820019000000000885034f000000000808043b00000000008904350000000107700039000000000867004b000000ec0000413d000000000740004c000001030000613d0000000506600210000000000565034f00000000066200190000000304400210000000000706043300000000074701cf000000000747022f000000000505043b0000010004400089000000000545022f00000000044501cf000000000474019f0000000000460435000000000112001900000000000104350000000001030019000000000001042d0000007b0100004100000000001004350000004101000039000000040200003900000000001204350000002402000039000000000100001901cc00c90000040f0000000001000019000000000200001901cc00c90000040f0005000000000002000300000004001d000200000003001d000400000002001d000500000001001d000000000103043301cc01af0000040f000100000001001d000000000100041401cc01af0000040f0000000202000029000000400220021000000080022000410000008102200197000000010300002900000060033002100000008203300197000000000223019f000000c0011002100000008301100197000000000112019f00000084021001c70000000303000029000000000330004c000000000102c0190000000402000029000000770d200197000000050200002901cc01c60000040f000000000302001900000000020100190000006002200270000100740020019d000000740220019700070000000103550000000103300190000001880000613d0000003f012000390000008504100197000000400300003900000000010304330000000005410019000000000615004b000000000600001900000001060040390000007a0750009c000001a40000213d0000000106600190000001a40000c13d000000000053043500000000002104350000002003100039000000200640008a0000001f0460018f000000000500003100000006055003670000000506600270000000000760004c000001560000613d000000000700001900000005087002100000000009830019000000000885034f000000000808043b00000000008904350000000107700039000000000867004b0000014e0000413d000000000740004c000001650000613d0000000506600210000000000565034f00000000066300190000000304400210000000000706043300000000074701cf000000000747022f000000000505043b0000010004400089000000000545022f00000000044501cf000000000474019f000000000046043500000000002104350000000104000031000000000442004b000001ac0000213d00000007050003670000001f0420018f0000000502200270000000000620004c000001770000613d000000000600001900000005076002100000000008730019000000000775034f000000000707043b00000000007804350000000106600039000000000726004b0000016f0000413d000000000640004c000001860000613d0000000502200210000000000525034f00000000022300190000000303400210000000000402043300000000043401cf000000000434022f000000000505043b0000010003300089000000000535022f00000000033501cf000000000343019f00000000003204350000000500000005000000000001042d0000001f0420018f0000000503200270000000000530004c000001940000613d00000000050000190000000506500210000000000761034f000000000707043b00000000007604350000000105500039000000000635004b0000018d0000413d000000000540004c000001a20000613d00000003044002100000000503300210000000000503043300000000054501cf000000000545022f000000000131034f000000000101043b0000010004400089000000000141022f00000000014101cf000000000151019f0000000000130435000000000100001901cc00c90000040f0000007b0100004100000000001004350000004101000039000000040200003900000000001204350000002402000039000000000100001901cc00c90000040f0000000001000019000000000200001901cc00c90000040f000000860210009c000001b20000813d000000000001042d000000400100003900000000010104330000004402100039000000870300004100000000003204350000002402100039000000080300003900000000003204350000007d020000410000000000210435000000040210003900000020030000390000000000320435000000640200003901cc00c90000040f000001c4002104210000000102000039000000000001042d0000000002000019000000000001042d000000000f0d0019000001ca002104290000000102000039000000000001042d0000000002000019000000000001042d000001cc00000432000001cd0001042e000001ce00010430000000000000000000000000000000000000000000000000000000000000000000000000ffffffff00000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000ffffffffffffffffffffffffffffffffffffffff579952fc000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000ffffffffffffffff4e487b7100000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000008c379a00000000000000000000000000000000000000000000000000000000054686973206d6574686f6420726571756972652073797374656d2063616c6c20666c61670000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000ffffffff000000000000000000000000000000000000000000000000ffffffff00000000000000000000000000000000ffffffff000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001ffffffe000000000000000000000000000000000000000000000000000000001000000004f766572666c6f770000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
- "0x0000000000000000000000000000000000008003": "0x0005000000000002000500000000000200000000030100190000006003300270000000dc0430019700040000004103550003000000010355000000dc0030019d000200000002001f000100000000001f00000080010000390000004005000039000000000015043500000001012001900000007d0000c13d0000000001000031000000040110008c000002800000413d0000000301000367000000000101043b000000e001100270000000de0210009c000001630000613d000000df0210009c000000880000613d000000e00210009c000001860000613d000000e10210009c000000c30000613d000000e20210009c000001ba0000613d000000e30210009c000001dc0000613d000000e40210009c000000ed0000613d000000e50210009c000001080000613d000000e60210009c000001290000613d000000e70110009c000002800000c13d0000000001000416000000000110004c000002800000c13d000000040100008a0000000001100031000000e802000041000000400310008c00000000030000190000000003024019000000e801100197000000000410004c000000000200a019000000e80110009c00000000010300190000000001026019000000000110004c000002800000c13d000500000005001d000000010100003900000003020003670000002403200370000000000303043b000200000003001d0000000402200370000000000202043b000100000002001d0000000202000039000000020220018800000000020004110000004a0000c13d000000ea0120009c00000000010000190000000101004039000400000002001d036c03260000040f00000005010000290000000004010433000000f30100004100000000001404350000000401000029000000e90210019700000004034000390000000001000414000000000023043500000024030000390000000002040019000300000004001d036c02ba0000040f0000000104000031000000000110004c000002120000c13d00000004030003670000001f0240018f000000050100002900000000010104330000000504400270000000000540004c0000006c0000613d000000000500001900000005065002100000000007610019000000000663034f000000000606043b00000000006704350000000105500039000000000645004b000000640000413d000000000520004c0000007b0000613d0000000504400210000000000343034f00000000044100190000000302200210000000000504043300000000052501cf000000000525022f000000000303043b0000010002200089000000000323022f00000000022301cf000000000252019f00000000002404350000000102000031036c02f80000040f0000000001000416000000000110004c000002800000c13d000000200200003900000100010000390000000000210439000001200200003900000000000204390000004002000039000000dd03000041036c02ee0000040f0000000001000416000000000110004c000002800000c13d000000040100008a0000000001100031000000e802000041000000200310008c00000000030000190000000003024019000000e801100197000000000410004c000000000200a019000000e80110009c00000000010300190000000001026019000000000110004c000002800000c13d00000004010000390000000301100367000000000201043b000000e90120009c000002800000213d000400000002001d000500000005001d000000010100003900000002020000390000000202200188000000a80000c13d0000000001000411000000ea0110009c00000000010000190000000101004039036c03260000040f0000000001000411000080060110008c000002580000c13d000000040100002900000000001004350000002001000039000200000001001d00000000000104350000000001000019036c02db0000040f036c036a0000040f000300000001001d0000000401000029036c03110000040f00000000020100190000000301000029000000f201100041036c03680000040f0000000301000029000000800210027000000005010000290000000001010433000000000021043500000002020000290000000003000019036c02ee0000040f0000000001000416000000000110004c000002800000c13d000000040100008a0000000001100031000000e802000041000000200310008c00000000030000190000000003024019000000e801100197000000000410004c000000000200a019000000e80110009c00000000010300190000000001026019000000000110004c000002800000c13d0000000001000411000000000010043500000001010000390000002002000039000400000002001d00000000001204350000000001000019000500000005001d036c02db0000040f00000004020000390000000302200367000000000202043b0000000000200435000000040200002900000000001204350000000001000019036c02db0000040f036c036a0000040f000000050200002900000000020204330000000000120435000000000102001900000004020000290000000003000019036c02ee0000040f0000000001000416000000000110004c000002800000c13d000000040100008a0000000001100031000000e802000041000000200310008c00000000030000190000000003024019000000e801100197000000000410004c000000000200a019000000e80110009c00000000010300190000000001026019000000000110004c000002800000c13d000500000005001d036c03010000040f036c031d0000040f000000050200002900000000030204330000000000130435000000200200003900000000010300190000000003000019036c02ee0000040f0000000001000416000000000110004c000002800000c13d000000040100008a0000000001100031000000e802000041000000400310008c00000000030000190000000003024019000000e801100197000000000410004c000000000200a019000000e80110009c00000000010300190000000001026019000000000110004c000002800000c13d000500000005001d036c03010000040f00000024020000390000000302200367000000000202043b036c033b0000040f00000005020000290000000003020433000000000110004c0000000001000019000000010100c0390000000000130435000000200200003900000000010300190000000003000019036c02ee0000040f0000000001000416000000000110004c000002800000c13d000000040100008a0000000001100031000000e802000041000000200310008c00000000030000190000000003024019000000e801100197000000000410004c000000000200a019000000e80110009c00000000010300190000000001026019000000000110004c000002800000c13d000500000005001d000000010100003900000002020000390000000202200188000001430000c13d0000000001000411000000ea0110009c00000000010000190000000101004039036c03260000040f0000000001000411000300000001001d00000000001004350000002001000039000400000001001d00000000000104350000000001000019036c02db0000040f036c036a0000040f00000004020000390000000302200367000000000202043b0000000003010019000000eb01300197000000000121004b0000022e0000c13d00000003010000290000000000100435000000040100002900000000000104350000000001000019000500000003001d036c02db0000040f000000000201001900000005010000290000000101100039036c03680000040f000000000100001900000000020000190000000003000019036c02ee0000040f0000000001000416000000000110004c000002800000c13d000000040100008a0000000001100031000000e802000041000000200310008c00000000030000190000000003024019000000e801100197000000000410004c000000000200a019000000e80110009c00000000010300190000000001026019000000000110004c000002800000c13d000500000005001d036c03010000040f000000e90110019700000000001004350000002001000039000400000001001d00000000000104350000000001000019036c02db0000040f036c036a0000040f0000000502000029000000000202043300000080011002700000000000120435000000000102001900000004020000290000000003000019036c02ee0000040f0000000001000416000000000110004c000002800000c13d000000040100008a0000000001100031000000e802000041000000200310008c00000000030000190000000003024019000000e801100197000000000410004c000000000200a019000000e80110009c00000000010300190000000001026019000000000110004c000002800000c13d000500000005001d000000010100003900000004020000390000000302200367000000000202043b000400000002001d00000002020000390000000202200188000001a40000c13d0000000001000411000000ea0110009c00000000010000190000000101004039036c03260000040f0000000402000029000000ef0120009c0000023d0000413d000000050100002900000000010104330000006402100039000000f00300004100000000003204350000004402100039000000f1030000410000000000320435000000240210003900000030030000390000000000320435000000ed0200004100000000002104350000000402100039000000200300003900000000003204350000008402000039036c02f80000040f0000000001000416000000000110004c000002800000c13d000000040100008a0000000001100031000000e802000041000000200310008c00000000030000190000000003024019000000e801100197000000000410004c000000000200a019000000e80110009c00000000010300190000000001026019000000000110004c000002800000c13d000500000005001d036c03010000040f000000e90110019700000000001004350000002001000039000400000001001d00000000000104350000000001000019036c02db0000040f036c036a0000040f000000050200002900000000020204330000000000120435000000000102001900000004020000290000000003000019036c02ee0000040f0000000001000416000000000110004c000002800000c13d000000040100008a0000000001100031000000e802000041000000600310008c00000000030000190000000003024019000000e801100197000000000410004c000000000200a019000000e80110009c00000000010300190000000001026019000000000110004c000002800000c13d00000003020003670000000401200370000000000101043b000000e90310009c000002800000213d0000004403200370000000000403043b000000000340004c0000000003000019000000010300c039000000000334004b000002800000c13d000400000004001d000500000005001d0000002402200370000000000202043b036c033b0000040f000000000110004c000002630000c13d0000000401000029000000000110004c0000000501000029000002710000613d00000000010104330000004402100039000000ee03000041000000000032043500000024021000390000001d030000390000000000320435000000ed0200004100000000002104350000000402100039000000200300003900000000003204350000006402000039036c02f80000040f000000400140008c000000400100003900000000010440190000001f01100039000000e00210018f00000003050000290000000001520019000000000221004b00000000020000190000000102004039000000f40310009c000002260000213d0000000102200190000002260000c13d00000005020000290000000000120435000000400240008c000002800000413d000000f50210009c000002750000a13d000000f801000041000000000010043500000041010000390000000402000039000000000012043500000024020000390000000001000019036c02f80000040f000000050100002900000000010104330000004402100039000000ec03000041000000000032043500000024021000390000000f030000390000000000320435000000ed0200004100000000002104350000000402100039000000040300002900000000003204350000006402000039036c02f80000040f0000000001000411000100000001001d00000000001004350000002001000039000200000001001d00000000000104350000000001000019036c02db0000040f036c036a0000040f000300000001001d0000000101000029036c03110000040f000000040200002900000003030000290000000002230019000000000301001900000000010200190000000002030019036c03680000040f0000000301000029000000eb0210019700000005010000290000000001010433000000000021043500000002020000290000000003000019036c02ee0000040f00000005010000290000000001010433000000ed020000410000000000210435000000040210003900000020030000390000000000320435000000240210003900000000000204350000004402000039036c02f80000040f0000000401000029000000000110004c0000000501000029000002710000c13d0000000002010433000500000002001d000000ed0100004100000000001204350000000401200039036c03590000040f000000050300002900000000023100490000000001030019036c02f80000040f000000000100001900000000020000190000000003000019036c02ee0000040f0000004002100039000000050400002900000000002404350000000002050433000000010320008c000002800000213d000000000021043500000020025000390000000002020433000000010320008c000002830000a13d00000000010000190000000002000019036c02f80000040f000000200110003900000000002104350000000201000029000000000110004c000002960000c13d00000000010404330000004402100039000000f703000041000000000032043500000024021000390000001f030000390000000000320435000000ed0200004100000000002104350000000402100039000000200300003900000000003204350000006402000039036c02f80000040f000000000120004c000002af0000c13d0000000101000029000000000110004c000002af0000613d0000000101000029000000010210008a0000000401000029036c033b0000040f000000000110004c000002af0000c13d000000050100002900000000010104330000004402100039000000f6030000410000000000320435000000ed020000410000000000210435000000240210003900000020030000390000000000320435000000040210003900000000003204350000006402000039036c02f80000040f0000000401000029036c030a0000040f0000000102000029036c03170000040f00000000020100190000000201000029036c03680000040f000000000100001900000000020000190000000003000019036c02ee0000040f0001000000000002000100000004001d000000dc04000041000000dc0520009c00000000020480190000004002200210000000dc0530009c00000000030480190000006003300210000000000223019f000000dc0310009c0000000001048019000000c001100210000000000112019f0000800602000039036c03630000040f0000000106000029000000010220018f000000000300001900000005043002100000000005460019000000000441034f000000000404043b00000000004504350000000103300039000000020430008c000002cd0000413d00040000000103550000006001100270000100dc0010019d00000000010200190000000100000005000000000001042d000000dc020000410000000003000414000000dc0430009c0000000003028019000000dc0410009c00000000010280190000004001100210000000c002300210000000000112019f000000f9011001c70000801002000039036c03630000040f0000000102200190000002eb0000613d000000000101043b000000000001042d00000000010000190000000002000019036c02f80000040f000000dc04000041000000dc0510009c000000000104801900000040011002100000000001310019000000dc0320009c0000000002048019000000600220021000000000012100190000036d0001042e000000dc03000041000000dc0420009c0000000002038019000000dc0410009c000000000103801900000040011002100000006002200210000000000112019f0000036e0001043000000004010000390000000301100367000000000101043b000000fa0210009c000003070000813d000000000001042d00000000010000190000000002000019036c02f80000040f00000000001004350000000101000039000000200200003900000000001204350000000001000019036c02db0000040f000000000001042d0000000000100435000000200100003900000000000104350000000001000019036c02db0000040f000000000001042d0000000000200435000000200200003900000000001204350000000001000019036c02db0000040f000000000001042d000000e9011001970000000000100435000000200100003900000000000104350000000001000019036c02db0000040f036c036a0000040f000000eb01100197000000000001042d000000000110004c000003290000613d000000000001042d000000400100003900000000010104330000006402100039000000fb0300004100000000003204350000004402100039000000fc030000410000000000320435000000240210003900000024030000390000000000320435000000ed0200004100000000002104350000000402100039000000200300003900000000003204350000008402000039036c02f80000040f0002000000000002000200000002001d000100000001001d036c031d0000040f00000001020000390000000203000029000000000131004b000003560000213d0000000101000029000000e901100197000000000010043500000001010000390000002002000039000100000002001d00000000001204350000000001000019036c02db0000040f00000002020000290000000000200435000000010200002900000000001204350000000001000019036c02db0000040f036c036a0000040f000000000110004c0000000002000019000000010200c039000000010120018f0000000200000005000000000001042d0000004002100039000000fd03000041000000000032043500000020021000390000001c030000390000000000320435000000200200003900000000002104350000006001100039000000000001042d00000366002104230000000102000039000000000001042d0000000002000019000000000001042d000000000012041b000000000001042d000000000101041a000000000001042d0000036c000004320000036d0001042e0000036e00010430000000000000000000000000000000000000000000000000000000000000000000000000ffffffff000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000fb1a9a5700000000000000000000000000000000000000000000000000000000306395c60000000000000000000000000000000000000000000000000000000038a780920000000000000000000000000000000000000000000000000000000055d35d18000000000000000000000000000000000000000000000000000000005aa9b6b5000000000000000000000000000000000000000000000000000000006ee1dc2000000000000000000000000000000000000000000000000000000000896909dc00000000000000000000000000000000000000000000000000000000cab7e8eb00000000000000000000000000000000000000000000000000000000e1239cd800000000000000000000000000000000000000000000000000000000155fd27a8000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffffffffffff000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000ffffffffffffffffffffffffffffffff496e636f7272656374206e6f6e6365000000000000000000000000000000000008c379a000000000000000000000000000000000000000000000000000000000546865206e6f6e636520776173206e6f7420736574206173207573656400000000000000000000000000000000000000000000000000000000000001000000016f6e636520697320746f6f2068696768000000000000000000000000000000005468652076616c756520666f7220696e6372656d656e74696e6720746865206e00000000000000000000000000000001000000000000000000000000000000007b510fe800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffff000000000000000000000000000000000000000000000000ffffffffffffffbf50726576696f7573206e6f6e636520686173206e6f74206265656e20757365644e6f6e63652076616c75652063616e206e6f742062652073657420746f2030004e487b710000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000400000000000000000000000000000000000000000000000010000000000000000000000000000000000000000666c61670000000000000000000000000000000000000000000000000000000054686973206d6574686f6420726571756972652073797374656d2063616c6c2052657573696e67207468652073616d65206e6f6e6365207477696365000000000000000000000000000000000000000000000000000000000000000000000000",
- "0x0000000000000000000000000000000000000002": "0x00020000000000020002000000000002000100000001035500000060011002700000002b0010019d000000800300003900000040010000390000000000310435000000000300041600000001022001900000005e0000c13d000000000230004c000000680000c13d00000000020004120000002d022001970000000003000410000000000232004b000000680000c13d000000400200008a0000000004000031000000000224016f000000400320003900000080022000390000003f0540018f000000370550008c000000000a030019000000000a02201900000006053002700000000006000019000000010600203900000001030003670000001f0240018f00000000010104330000000504400270000000000740004c0000002d0000613d000000000700001900000005087002100000000009810019000000000883034f000000000808043b00000000008904350000000107700039000000000847004b000000250000413d0000000005650019000200000005001d000000000520004c0000003e0000613d0000000504400210000000000343034f00000000044100190000000302200210000000000504043300000000052501cf000000000525022f000000000303043b0000010002200089000000000323022f00000000022301cf000000000252019f000000000024043500000000021000310000002e0300004100000000003204350000000002a10019000000080220008a000000c30300003900000000033001ff0000000000320435000000800110008c0000000001000019000000010100603900010000000a001d00a600800000040f000000020100002900000007211000c900a600940000040f0000000202000029000000c00220021000000001030000290000001b033002100000002f03300197000000000223019f00000030022001c700000000030100190000000001020019000000000203001900a6008b0000040f00a6007a0000040f00000020020000390000000001000019000000000300001900a6006b0000040f000000000130004c000000680000c13d0000002002000039000001000100003900000000002104390000012002000039000000000002043900000040020000390000002c0300004100a6006b0000040f0000000001000019000000000200001900a600730000040f0000002b040000410000002b0510009c000000000104801900000040011002100000006002200210000000000121019f0000000001310019000000a70001042e0000002b030000410000002b0410009c000000000103801900000040011002100000006002200210000000000121019f000000a800010430000000000110004c0000007d0000613d000000000001042d0000000001000019000000000200001900a600730000040f000000000110004c000000830000613d000000000001042d000000310100004100000000001004350000000101000039000000040200003900000000001204350000002402000039000000000100001900a600730000040f0000002b022001970000000003000414000000000323004b000000910000413d0000000001210420000000000001042d0000000001000019000000000200001900a600730000040f000000320210009c000000970000813d000000000001042d0000004001000039000000000101043300000044021000390000003303000041000000000032043500000024021000390000000803000039000000000032043500000034020000410000000000210435000000040210003900000020030000390000000000320435000000640200003900a600730000040f000000a600000432000000a70001042e000000a80001043000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffff0000000200000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffffffffffff8000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffff0000000000000000000000000000000000000000000000010000000000000000000000044e487b710000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000004f766572666c6f7700000000000000000000000000000000000000000000000008c379a000000000000000000000000000000000000000000000000000000000",
- "0x000000000000000000000000000000000000800c": "0x00020000000000020016000000000002000100000001035500000060011002700000026a0010019d000000800c00003900000040060000390000000000c604350000000101200190000000830000c13d0000000001000031000000040110008c000006380000413d0000000101000367000000000101043b0000026c011001970000026d0110009c000006380000c13d0000000001000416000000000110004c000006380000c13d000000040100008a00000000011000310000026e02000041000000200310008c000000000300001900000000030240190000026e04100197000000000540004c000000000200a0190000026e0440009c000000000203c019000000000220004c000006380000c13d000000010d0003670000000402d00370000000000502043b0000026f0250009c000006380000213d00000000015100490000026e02000041000002600310008c000000000300001900000000030240190000026e01100197000000000410004c000000000200a0190000026e0110009c00000000010300190000000001026019000000000110004c000006380000c13d000000040350003900000000013d034f000000000101043b000000000210004c000001040b500039000000a40a500039000000640950003900000044085000390000012407500039000001c402500039000000c404500039000b00000004001d0000014404500039000d00000004001d001400000006001d001600000003001d001500000002001d000e00000005001d001200000007001d001100000008001d001000000009001d000f0000000a001d000c0000000b001d0000008e0000c13d0000000001bd034f000000000101043b00130000000d035309a108b10000040f0000000f03000029000000130200035f000000000232034f000000000202043b000a00000001001d000000000102001909a108b10000040f0000001003000029000000130200035f000000000232034f000000000202043b000900000001001d000000000102001909a108b10000040f0000000002010019000000090100002909a1078d0000040f0000001102000029000000130300035f000000000223034f000000000202043b0000027302200197000900000001001d000000000102001909a108990000040f00000012020000290000000102200367000000000202043b000700000001001d000000000102001909a108b10000040f000800000001001d0000001601000029000000150200002909a107120000040f0000026f01200197000000010210008c0000016a0000c13d0000001601000029000000150200002909a107120000040f000000000220004c000001c80000c13d000002810100004100000000001004350000003201000039000000040200003900000000001204350000002402000039000000000100001909a106ff0000040f0000000001000416000000000110004c000006380000c13d0000002002000039000001000100003900000000002104390000012002000039000000000002043900000040020000390000026b0300004109a106f50000040f000000710410008c0000016e0000c13d000000000103001900130000000c001d09a107120000040f000000000300003109a1073f0000040f0000000002010433000000200110003909a106cf0000040f0000000e02000029000000140a000029000002040320003900000000040000310000000002240049000000230520008a0000000102000367000000000332034f000000000303043b0000026e06000041000000000753004b000000000700001900000000070680190000026e055001970000026e08300197000000000958004b0000000006008019000000000558013f0000026e0550009c00000000050700190000000005066019000000000b010019000000000150004c000006380000c13d00000016010000290000000001130019000000000312034f000000000503043b0000026f0350009c000006380000213d0000000503500210000000000434004900000020061000390000026e01000041000000000746004b000000000700001900000000070120190000026e044001970000026e08600197000000000948004b0000000001008019000000000448013f0000026e0440009c000000000107c019000000000110004c000006380000c13d00000000040a043300000020014000390000027605500197000000000750004c000000d50000613d000000000262034f000000000600001900000005076002100000000008710019000000000772034f000000000707043b00000000007804350000000106600039000000000756004b000000cd0000413d000000000200004c000000d70000613d00000000003404350000003f02300039000000200300008a000000000232016f0000000002240019000000000342004b000000000300001900000001030040390000026f0520009c000003b10000213d0000000103300190000003b10000c13d000000140300002900000000002304350000000002040433000a0000000b001d09a106cf0000040f000900000001001d0000000e010000290000022402100039000000160100002909a107120000040f000000000300003109a1073f0000040f0000000002010433000000200110003909a106cf0000040f0000000e04000029000000e4024000390000002403400039000000840440003900000001050003670000001006000029000000000665034f0000001107000029000000000775034f000000000835034f0000001203000029000000000935034f0000000c03000029000000000a35034f000000000225034f0000000b03000029000000000b35034f0000000f03000029000000000c35034f000000000d45034f0000001603000029000000000335034f000000000303043b000000000408043b000000000507043b000000000606043b00000000070d043b00000000080c043b000000000b0b043b000000000c02043b000000000a0a043b000000000909043b00000014020000290000000002020433000001c00d20003900000000001d0435000001a001200039000000090d0000290000000000d1043500000180012000390000000a0d0000290000000000d104350000016001200039000000000091043500000140012000390000000000a1043500000120012000390000000000c1043500000100012000390000000000b10435000000e0012000390000000000810435000000c0012000390000000000710435000000a0012000390000000000610435000000800120003900000000005104350000006001200039000000000041043500000040012000390000000000310435000001c0010000390000000000120435000002770300004100000020012000390000000000310435000002780320009c000003b10000213d000001e00320003900000014040000290000000000340435000000000202043309a106cf0000040f00000014020000290000000002020433000a00000002001d00000272020000410000000000200439000900000001001d09a106e60000040f00000279020000410000000a04000029000000600340003900000000002304350000027a0200004100000040034000390000000000230435000000800240003900000000001204350000027b02000041000000200140003900000000002104350000001302000029000000000024043500000000030400190000027c0240009c000003b10000213d000000a00230003900000014040000290000000000240435000000000203043309a106cf0000040f000000140200002900000000040204330000004202400039000000090300002900000000003204350000027d020000410000002003400039000400000003001d000000000023043500000022024000390000000000120435000000420100003900000000001404350000027e0140009c000003b10000213d0000008001400039000003910000013d09a108e60000040f00000001050003670000000002010019000001de0000013d000000020410008c000002720000c13d0000027201000041000000000010043909a106e60000040f09a108b10000040f000000010200036700130000000203530000000c03000029000000000232034f000000000202043b000a00000001001d000000000102001909a108b10000040f0000000b02000029000000130300035f000000000223034f000000000202043b000900000001001d000000000102001909a108b10000040f0000000f03000029000000130200035f000000000232034f000000000202043b000800000001001d000000000102001909a108b10000040f0000001002000029000000130300035f000000000223034f000000000202043b000700000001001d000000000102001909a108b10000040f0000001102000029000000130300035f000000000223034f000000000202043b0000027302200197001300000001001d000000000102001909a108990000040f00000012020000290000000102200367000000000202043b000600000001001d000000000102001909a108b10000040f00000000070100190000000a010000290000000902000029000000080300002900000007040000290000001305000029000000060600002909a108110000040f000a00000001001d0000001601000029000000150200002909a107120000040f0000026f01200197000000010210008c000002c40000c13d0000001601000029000000150200002909a107120000040f000000000220004c0000007b0000613d0000000101100367000000000101043b000000010200008a0000026e03000041000000000221004b000000000200001900000000020320190000026e011001970000026e0410009c00000000030080190000026e011001670000026e0110009c000000000102001900000000010360190000006002000039001300000002001d000000000110004c000002c60000c13d09a107b40000040f001300000001001d000002c60000013d0000000105000367000000000115034f000000000101043b000000010200008a0000026e03000041000000000221004b000000000200001900000000020320190000026e011001970000026e0410009c00000000030080190000026e011001670000026e0110009c000000000102001900000000010360190000006002000039000000000110004c000001de0000c13d001300000005035309a107b40000040f000000130500035f00000000020100190000000d01000029000000000115034f0000006004000039000000000101043b000000000110004c000500000002001d000002020000613d0000027201000041000000000010043909a106e60000040f09a108b10000040f00000014020000290000000002020433001300000002001d000000200220003909a107800000040f00000013040000290000027f02000041000000000021043500000000014100490000001e0210008a00000000002404350000002101100039000000200200008a000000000221016f0000000001420019000000000221004b000000000200001900000001020040390000026f0310009c000003b10000213d0000000102200190000003b10000c13d000000140200002900000000001204350000000502000029001300000004001d0000000001020433000600000001001d00000008010000290000000001010433000400000001001d00000007010000290000000001010433000300000001001d00000009010000290000000001010433000200000001001d0000000a010000290000000001010433000100000001001d0000001601000029000000150200002909a107120000040f00000002010000290000000103000029000000000131001900000003030000290000000001310019000000040300002900000000013100190000000603000029000000000131001900000000012100190000001302000029000000000202043300000000012100190000026f0110019709a1094a0000040f000400000001001d0000001601000029000000150200002909a107120000040f00000014030000290000000003030433000300000001001d000200000002001d000600000003001d00000020023000390000000401000029000400000002001d09a107800000040f00000000020100190000000a0100002909a107800000040f0000000002010019000000090100002909a107800000040f0000000002010019000000070100002909a107800000040f0000000002010019000000080100002909a107800000040f0000000002010019000000050100002909a107800000040f00000002080000290000001f0280018f000000030300002900000001033003670000000504800270000000000540004c0000024f0000613d000000000500001900000005065002100000000007610019000000000663034f000000000606043b00000000006704350000000105500039000000000645004b000002470000413d000000000520004c0000025e0000613d0000000504400210000000000343034f00000000044100190000000302200210000000000504043300000000052501cf000000000525022f000000000303043b0000010002200089000000000323022f00000000022301cf000000000252019f000000000024043500000000028100190000000000020435000000130100002909a107800000040f00000006040000290000000001410049000000200210008a00000000002404350000001f01100039000000200200008a000000000221016f0000000001420019000000000221004b000000000200001900000001020040390000026f0310009c000003b10000213d0000000102200190000003910000613d000003b10000013d000000010110008c000003240000c13d0000027201000041000000000010043909a106e60000040f09a108b10000040f000000010200036700130000000203530000000c03000029000000000232034f000000000202043b000a00000001001d000000000102001909a108b10000040f0000000f03000029000000130200035f000000000232034f000000000202043b000900000001001d000000000102001909a108b10000040f0000001002000029000000130300035f000000000223034f000000000202043b000800000001001d000000000102001909a108b10000040f0000001102000029000000130300035f000000000223034f000000000202043b0000027302200197001300000001001d000000000102001909a108990000040f00000012020000290000000102200367000000000202043b000700000001001d000000000102001909a108b10000040f00000000060100190000000a01000029000000090200002900000008030000290000001304000029000000070500002909a107da0000040f000a00000001001d0000001601000029000000150200002909a107120000040f0000026f01200197000000010210008c000003320000c13d0000001601000029000000150200002909a107120000040f000000000220004c0000007b0000613d0000000101100367000000000101043b000000010200008a0000026e03000041000000000221004b000000000200001900000000020320190000026e011001970000026e0410009c00000000030080190000026e011001670000026e0110009c000000000102001900000000010360190000006002000039001300000002001d000000000110004c000003340000c13d09a107b40000040f001300000001001d000003340000013d09a108e60000040f001300000001001d09a109380000040f000900000001001d0000000a010000290000000001010433000800000001001d0000001301000029001300000001001d0000000001010433000700000001001d0000001601000029000000150200002909a107120000040f00000008010000290000000703000029000000000113001900000000012100190000000902000029000000000202043300000000012100190000026f0110019709a1094a0000040f000500000001001d0000001601000029000000150200002909a107120000040f0000001403000029000000000403043300000275030000410000002005400039000400000005001d0000000000350435000800000001001d000700000002001d000600000004001d0000002102400039000000050100002909a107800000040f00000000020100190000000a0100002909a107800000040f0000000002010019000000130100002909a107800000040f00000007080000290000001f0280018f000000080300002900000001033003670000000504800270000000000540004c000003010000613d000000000500001900000005065002100000000007610019000000000663034f000000000606043b00000000006704350000000105500039000000000645004b000002f90000413d000000000520004c000003100000613d0000000504400210000000000343034f00000000044100190000000302200210000000000504043300000000052501cf000000000525022f000000000303043b0000010002200089000000000323022f00000000022301cf000000000252019f000000000024043500000000028100190000000000020435000000090100002909a107800000040f00000006040000290000000001410049000000200210008a00000000002404350000001f01100039000000200200008a000000000221016f0000000001420019000000000221004b000000000200001900000001020040390000026f0310009c000003b10000213d0000000102200190000003910000613d000003b10000013d000000000106043300000044021000390000027003000041000000000032043500000024021000390000001703000039000000000032043500000271020000410000000000210435000000040210003900000020030000390000000000320435000000640200003909a106ff0000040f09a108e60000040f001300000001001d09a109260000040f000900000001001d0000000a010000290000000001010433000800000001001d0000001301000029001300000001001d0000000001010433000700000001001d0000001601000029000000150200002909a107120000040f00000008010000290000000703000029000000000113001900000000012100190000000902000029000000000202043300000000012100190000026f0110019709a1094a0000040f000500000001001d0000001601000029000000150200002909a107120000040f0000001403000029000000000403043300000274030000410000002005400039000400000005001d0000000000350435000800000001001d000700000002001d000600000004001d0000002102400039000000050100002909a107800000040f00000000020100190000000a0100002909a107800000040f0000000002010019000000130100002909a107800000040f00000007080000290000001f0280018f000000080300002900000001033003670000000504800270000000000540004c0000036f0000613d000000000500001900000005065002100000000007610019000000000663034f000000000606043b00000000006704350000000105500039000000000645004b000003670000413d000000000520004c0000037e0000613d0000000504400210000000000343034f00000000044100190000000302200210000000000504043300000000052501cf000000000525022f000000000303043b0000010002200089000000000323022f00000000022301cf000000000252019f000000000024043500000000028100190000000000020435000000090100002909a107800000040f00000006040000290000000001410049000000200210008a00000000002404350000001f01100039000000200200008a000000000221016f0000000001420019000000000221004b000000000200001900000001020040390000026f0310009c000003b10000213d0000000102200190000003b10000c13d000000140200002900000000001204350000000002040433000000040100002909a106cf0000040f00000001050003670000001603000029000000000235034f0000000004010019000000000102043b000000710210008c001300000004001d000003b90000c13d0000000e01000029000001e402100039000000000103001909a107120000040f000000000300003109a1073f0000040f0000000002010433000000200110003909a106cf0000040f00000013030000290000001405000029000000000405043300000040024000390000000000120435000000000054043500000020014000390000000000310435000002820240009c000004000000a13d000002810100004100000000001004350000004101000039000000040200003900000000001204350000002402000039000000000100001909a106ff0000040f000000000210004c0000040e0000c13d0000000c01000029000000000115034f000000000101043b000c00000005035309a108b10000040f0000000f020000290000000c0300035f000000000223034f000000000202043b000f00000001001d000000000102001909a108b10000040f00000010020000290000000c0300035f000000000223034f000000000202043b001000000001001d000000000102001909a108b10000040f0000000002010019000000100100002909a1078d0000040f00000011020000290000000c0300035f000000000223034f000000000202043b0000027302200197001100000001001d000000000102001909a108990000040f00000012020000290000000102200367000000000202043b000c00000001001d000000000102001909a108b10000040f001000000001001d0000001601000029000000150200002909a107120000040f0000026f01200197000000010210008c000004680000c13d0000001601000029000000150200002909a107120000040f000000000220004c0000007b0000613d0000000101100367000000000101043b000000010200008a0000026e03000041000000000221004b000000000200001900000000020320190000026e011001970000026e0410009c00000000030080190000026e011001670000026e0110009c000000000102001900000000010360190000006002000039000b00000002001d000000000110004c0000046a0000c13d09a107b40000040f000b00000001001d0000046a0000013d000000600540003900000014020000290000000000520435000000000204043309a106cf0000040f0000001402000029000000000402043300000020034000390000001305000029000000000053043500000000001404350000000001040019000000000300001909a106f50000040f000000020210008c000005270000c13d0000027201000041000000000010043909a106e60000040f09a108b10000040f0000000103000367000d0000000303530000000c02000029000000000223034f000000000202043b000c00000001001d000000000102001909a108b10000040f0000000b020000290000000d0300035f000000000223034f000000000202043b000b00000001001d000000000102001909a108b10000040f0000000f020000290000000d0300035f000000000223034f000000000202043b000f00000001001d000000000102001909a108b10000040f00000010020000290000000d0300035f000000000223034f000000000202043b001000000001001d000000000102001909a108b10000040f00000011020000290000000d0300035f000000000223034f000000000202043b0000027302200197001100000001001d000000000102001909a108990000040f00000012020000290000000102200367000000000202043b001200000001001d000000000102001909a108b10000040f00000000070100190000000c010000290000000b020000290000000f0300002900000010040000290000001105000029000000120600002909a108110000040f001100000001001d0000001601000029000000150200002909a107120000040f0000026f01200197000000010210008c000005790000c13d0000001601000029000000150200002909a107120000040f000000000220004c0000007b0000613d0000000101100367000000000101043b000000010200008a0000026e03000041000000000221004b000000000200001900000000020320190000026e011001970000026e0410009c00000000030080190000026e011001670000026e0110009c000000000102001900000000010360190000006002000039001000000002001d000000000110004c0000057b0000c13d09a107b40000040f001000000001001d0000057b0000013d09a108e60000040f000b00000001001d0000000e01000029000001e4021000390000001601000029001200000002001d09a107120000040f000000200220008c000006380000413d0000000101100367000000000101043b09a108b10000040f000e00000001001d0000001601000029000000120200002909a107120000040f000000400220008c000006380000413d00000020011000390000000101100367000000000101043b09a108b10000040f000a00000001001d0000001601000029000000120200002909a107120000040f000000410220008c0000007b0000413d00000040011000390000000101100367000000000101043b000000f801100270001200000001001d0000001b0110008a000000020110008c0000000001000019000000010100403909a107c80000040f0000000d010000290000000101100367000000000101043b000000000110004c0000001201000029000004a50000613d0000027201000041000000000010043909a106e60000040f0000000102100210000000000310004c000004a00000613d000000090300008a000000000332004b000006530000213d00000000311200d9000000020110008c000006530000c13d000000120300002900000000012300190000000801100039000000000231004b000006530000413d09a108b10000040f001200000001001d0000000b01000029000b00000001001d0000000001010433000d00000001001d00000010010000290000000001010433000900000001001d0000000c010000290000000001010433000800000001001d0000000f010000290000000001010433000700000001001d00000011010000290000000001010433000600000001001d0000001601000029000000150200002909a107120000040f00000007010000290000000603000029000000000113001900000008030000290000000001310019000000090300002900000000013100190000000d03000029000000000131001900000000012100190000000e02000029000000000202043300000000012100190000000a02000029000000000202043300000000012100190000001202000029000000000202043300000000012100190000026f0110019709a1094a0000040f000800000001001d0000001601000029000000150200002909a107120000040f00000014030000290000000003030433000d00000001001d000900000002001d001600000003001d00000020023000390000000801000029001500000002001d09a107800000040f00000000020100190000000f0100002909a107800000040f0000000002010019000000110100002909a107800000040f00000000020100190000000c0100002909a107800000040f0000000002010019000000100100002909a107800000040f00000000020100190000000b0100002909a107800000040f00000009040000290000001f0240018f0000000d03000029000000010330036700000000080400190000000504400270000000000540004c000004fc0000613d000000000500001900000005065002100000000007610019000000000663034f000000000606043b00000000006704350000000105500039000000000645004b000004f40000413d000000000520004c0000050b0000613d0000000504400210000000000343034f00000000044100190000000302200210000000000504043300000000052501cf000000000525022f000000000303043b0000010002200089000000000323022f00000000022301cf000000000252019f000000000024043500000000028100190000000000020435000000120100002909a107800000040f00000000020100190000000e0100002909a107800000040f00000000020100190000000a0100002909a107800000040f00000016040000290000000001410049000000200210008a00000000002404350000001f01100039000000200200008a000000000221016f0000000005420019000000000225004b000000000200001900000001020040390000026f0350009c00000013030000290000001501000029000003b10000213d0000000102200190000004010000613d000003b10000013d000000010110008c000006190000c13d0000027201000041000000000010043909a106e60000040f09a108b10000040f0000000103000367000d0000000303530000000c02000029000000000223034f000000000202043b000c00000001001d000000000102001909a108b10000040f0000000f020000290000000d0300035f000000000223034f000000000202043b000f00000001001d000000000102001909a108b10000040f00000010020000290000000d0300035f000000000223034f000000000202043b001000000001001d000000000102001909a108b10000040f00000011020000290000000d0300035f000000000223034f000000000202043b0000027302200197001100000001001d000000000102001909a108990000040f00000012020000290000000102200367000000000202043b001200000001001d000000000102001909a108b10000040f00000000060100190000000c010000290000000f0200002900000010030000290000001104000029000000120500002909a107da0000040f001100000001001d0000001601000029000000150200002909a107120000040f0000026f01200197000000010210008c000006240000c13d0000001601000029000000150200002909a107120000040f000000000220004c0000007b0000613d0000000101100367000000000101043b000000010200008a0000026e03000041000000000221004b000000000200001900000000020320190000026e011001970000026e0410009c00000000030080190000026e011001670000026e0110009c000000000102001900000000010360190000006002000039001000000002001d000000000110004c000006260000c13d09a107b40000040f001000000001001d000006260000013d09a108e60000040f001000000001001d09a109380000040f000f00000001001d0000000e01000029000001e4021000390000001601000029001200000002001d09a107120000040f000000200220008c000006380000413d0000000101100367000000000101043b09a108b10000040f000e00000001001d0000001601000029000000120200002909a107120000040f000000400220008c000006380000413d00000020011000390000000101100367000000000101043b09a108b10000040f000d00000001001d0000001601000029000000120200002909a107120000040f000000410220008c0000007b0000413d00000040011000390000000101100367000000000101043b001200000001001d000000f8011002700000001b0110008a000c00000001001d000000020110008c0000000001000019000000010100403909a107c80000040f0000001201000029000002800110009c000006530000413d0000000c0100002909a108b10000040f001200000001001d00000011010000290000000001010433000c00000001001d0000001001000029001000000001001d0000000001010433000b00000001001d0000001601000029000000150200002909a107120000040f0000000c010000290000000b03000029000000000113001900000000012100190000000f02000029000000000202043300000000012100190000000e02000029000000000202043300000000012100190000000d02000029000000000202043300000000012100190000001202000029000000000202043300000000012100190000026f0110019709a1094a0000040f000a00000001001d0000001601000029000000150200002909a107120000040f0000001403000029000000000403043300000275030000410000002005400039001500000005001d0000000000350435000c00000001001d000b00000002001d001600000004001d00000021024000390000000a0100002909a107800000040f0000000002010019000000110100002909a107800000040f0000000002010019000000100100002909a107800000040f0000000b040000290000001f0240018f0000000c03000029000000010330036700000000080400190000000504400270000000000540004c000005eb0000613d000000000500001900000005065002100000000007610019000000000663034f000000000606043b00000000006704350000000105500039000000000645004b000005e30000413d000000000520004c000005fa0000613d0000000504400210000000000343034f00000000044100190000000302200210000000000504043300000000052501cf000000000525022f000000000303043b0000010002200089000000000323022f00000000022301cf000000000252019f0000000000240435000000000281001900000000000204350000000f0100002909a107800000040f0000000002010019000000120100002909a107800000040f00000000020100190000000e0100002909a107800000040f00000000020100190000000d0100002909a107800000040f00000016040000290000000001410049000000200210008a00000000002404350000001f01100039000000200200008a000000000221016f0000000005420019000000000225004b000000000200001900000001020040390000026f0350009c00000013030000290000001501000029000003b10000213d0000000102200190000004010000613d000003b10000013d00000014010000290000000002010433001600000002001d00000271010000410000000000120435000000040120003909a107080000040f00000016030000290000000002310049000000000103001909a106ff0000040f09a108e60000040f001000000001001d09a109260000040f000f00000001001d0000000e01000029000001e4021000390000001601000029001200000002001d09a107120000040f000000200220008c000006380000413d0000000101100367000000000101043b09a108b10000040f000e00000001001d0000001601000029000000120200002909a107120000040f000000400220008c0000063b0000813d0000000001000019000000000200001909a106ff0000040f00000020011000390000000101100367000000000101043b09a108b10000040f000d00000001001d0000001601000029000000120200002909a107120000040f000000410220008c0000007b0000413d00000040011000390000000101100367000000000101043b001200000001001d000000f8011002700000001b0110008a000c00000001001d000000020110008c0000000001000019000000010100403909a107c80000040f0000001201000029000002800110009c0000065b0000813d000002810100004100000000001004350000001101000039000000040200003900000000001204350000002402000039000000000100001909a106ff0000040f0000000c0100002909a108b10000040f001200000001001d00000011010000290000000001010433000c00000001001d0000001001000029001000000001001d0000000001010433000b00000001001d0000001601000029000000150200002909a107120000040f0000000c010000290000000b03000029000000000113001900000000012100190000000f02000029000000000202043300000000012100190000000e02000029000000000202043300000000012100190000000d02000029000000000202043300000000012100190000001202000029000000000202043300000000012100190000026f0110019709a1094a0000040f000a00000001001d0000001601000029000000150200002909a107120000040f0000001403000029000000000403043300000274030000410000002005400039001500000005001d0000000000350435000c00000001001d000b00000002001d001600000004001d00000021024000390000000a0100002909a107800000040f0000000002010019000000110100002909a107800000040f0000000002010019000000100100002909a107800000040f0000000b040000290000001f0240018f0000000c03000029000000010330036700000000080400190000000504400270000000000540004c000006a10000613d000000000500001900000005065002100000000007610019000000000663034f000000000606043b00000000006704350000000105500039000000000645004b000006990000413d000000000520004c000006b00000613d0000000504400210000000000343034f00000000044100190000000302200210000000000504043300000000052501cf000000000525022f000000000303043b0000010002200089000000000323022f00000000022301cf000000000252019f0000000000240435000000000281001900000000000204350000000f0100002909a107800000040f0000000002010019000000120100002909a107800000040f00000000020100190000000e0100002909a107800000040f00000000020100190000000d0100002909a107800000040f00000016040000290000000001410049000000200210008a00000000002404350000001f01100039000000200200008a000000000221016f0000000005420019000000000225004b000000000200001900000001020040390000026f0350009c00000013030000290000001501000029000003b10000213d0000000102200190000004010000613d000003b10000013d0000026a030000410000026a0410009c000000000103801900000040011002100000026a0420009c00000000020380190000006002200210000000000112019f00000000020004140000026a0420009c0000000002038019000000c002200210000000000112019f00000275011001c7000080100200003909a1099c0000040f0000000102200190000006e30000613d000000000101043b000000000001042d0000000001000019000000000200001909a106ff0000040f0000026a0100004100000000020004140000026a0320009c0000000001024019000000c00110021000000283011001c70000800b0200003909a1099c0000040f0000000102200190000006f20000613d000000000101043b000000000001042d0000000001000019000000000200001909a106ff0000040f0000026a040000410000026a0510009c0000000001048019000000400110021000000000013100190000026a0320009c000000000204801900000060022002100000000001210019000009a20001042e0000026a030000410000026a0420009c00000000020380190000026a0410009c000000000103801900000040011002100000006002200210000000000112019f000009a300010430000000400210003900000284030000410000000000320435000000200210003900000013030000390000000000320435000000200200003900000000002104350000006001100039000000000001042d000000000300003100000000041300490000001f0540008a0000000104000367000000000224034f000000000202043b0000026e06000041000000000752004b000000000700001900000000070640190000026e055001970000026e08200197000000000958004b000000000600a019000000000558013f0000026e0550009c00000000050700190000000005066019000000000550004c0000073c0000613d0000000001120019000000000214034f000000000202043b0000026f0420009c0000073c0000213d000000000323004900000020011000390000026e04000041000000000531004b000000000500001900000000050420190000026e033001970000026e06100197000000000736004b0000000004008019000000000336013f0000026e0330009c00000000030500190000000003046019000000000330004c0000073c0000c13d000000000001042d0000000001000019000000000200001909a106ff0000040f0000000004010019000002850120009c000007750000813d0000003f01200039000000200500008a000000000651016f000000400500003900000000010504330000000006610019000000000716004b000000000700001900000001070040390000026f0860009c000007750000213d0000000107700190000007750000c13d000000000065043500000000002104350000000005420019000000000335004b0000077d0000213d0000001f0520018f000000010440036700000020031000390000000506200270000000000760004c000007630000613d000000000700001900000005087002100000000009830019000000000884034f000000000808043b00000000008904350000000107700039000000000867004b0000075b0000413d000000000750004c000007720000613d0000000506600210000000000464034f00000000066300190000000305500210000000000706043300000000075701cf000000000757022f000000000404043b0000010005500089000000000454022f00000000045401cf000000000474019f000000000046043500000000022300190000000000020435000000000001042d000002810100004100000000001004350000004101000039000000040200003900000000001204350000002402000039000000000100001909a106ff0000040f0000000001000019000000000200001909a106ff0000040f00000000030104330000000004000019000000000534004b0000078a0000813d00000000052400190000002004400039000000000614001900000000060604330000000000650435000007820000013d00000000012300190000000000010435000000000001042d0003000000000002000300000002001d0000004002000039000100000002001d0000000002020433000200000002001d000000200220003909a107800000040f0000000002010019000000030100002909a107800000040f00000002040000290000000001410049000000200210008a00000000002404350000001f01100039000000200200008a000000000221016f0000000001420019000000000221004b000000000200001900000001020040390000026f0310009c000007ac0000213d0000000102200190000007ac0000c13d0000000102000029000000000012043500000000010400190000000300000005000000000001042d000002810100004100000000001004350000004101000039000000040200003900000000001204350000002402000039000000000100001909a106ff0000040f00000040020000390000000001020433000002860310009c000007c00000813d0000004003100039000000000032043500000020021000390000028703000041000000000032043500000001020000390000000000210435000000000001042d000002810100004100000000001004350000004101000039000000040200003900000000001204350000002402000039000000000100001909a106ff0000040f000000000110004c000007cb0000613d000000000001042d0000004001000039000000000101043300000044021000390000028803000041000000000032043500000024021000390000000f03000039000000000032043500000271020000410000000000210435000000040210003900000020030000390000000000320435000000640200003909a106ff0000040f0007000000000002000700000006001d000600000005001d000400000004001d000300000003001d000200000002001d0000004002000039000100000002001d0000000002020433000500000002001d000000200220003909a107800000040f0000000002010019000000020100002909a107800000040f0000000002010019000000030100002909a107800000040f0000000002010019000000040100002909a107800000040f0000000002010019000000060100002909a107800000040f0000000002010019000000070100002909a107800000040f00000005040000290000000001410049000000200210008a00000000002404350000001f01100039000000200200008a000000000221016f0000000001420019000000000221004b000000000200001900000001020040390000026f0310009c000008090000213d0000000102200190000008090000c13d0000000102000029000000000012043500000000010400190000000700000005000000000001042d000002810100004100000000001004350000004101000039000000040200003900000000001204350000002402000039000000000100001909a106ff0000040f0008000000000002000800000007001d000700000006001d000500000005001d000400000004001d000300000003001d000200000002001d0000004002000039000100000002001d0000000002020433000600000002001d000000200220003909a107800000040f0000000002010019000000020100002909a107800000040f0000000002010019000000030100002909a107800000040f0000000002010019000000040100002909a107800000040f0000000002010019000000050100002909a107800000040f0000000002010019000000070100002909a107800000040f0000000002010019000000080100002909a107800000040f00000006040000290000000001410049000000200210008a00000000002404350000001f01100039000000200200008a000000000221016f0000000001420019000000000221004b000000000200001900000001020040390000026f0310009c000008440000213d0000000102200190000008440000c13d0000000102000029000000000012043500000000010400190000000800000005000000000001042d000002810100004100000000001004350000004101000039000000040200003900000000001204350000002402000039000000000100001909a106ff0000040f00000040020000390000000001020433000002860310009c000008640000813d0000004003100039000000000032043500000001020000390000000000210435000000200210003900000000030000310000000103300367000000000400001900000005054002100000000006520019000000000553034f000000000505043b00000000005604350000000104400039000000000540004c000000000500001900000001050060390000000105500190000008580000c13d000000000001042d000002810100004100000000001004350000004101000039000000040200003900000000001204350000002402000039000000000100001909a106ff0000040f0000000002010019000002850120009c000008910000813d0000003f01200039000000200300008a000000000431016f000000400300003900000000010304330000000004410019000000000514004b000000000500001900000001050040390000026f0640009c000008910000213d0000000105500190000008910000c13d000000000043043500000000002104350000001f022000390000000502200270000000000320004c0000088e0000613d000000200310003900000000040000310000000104400367000000000500001900000005065002100000000007630019000000000664034f000000000606043b00000000006704350000000105500039000000000625004b000008860000413d000000000200004c000008900000613d000000000001042d000002810100004100000000001004350000004101000039000000040200003900000000001204350000002402000039000000000100001909a106ff0000040f000000000201001900000040030000390000000001030433000002860410009c000008a90000813d0000004004100039000000000043043500000020031000390000028904000041000000000043043500000060022002100000002103100039000000000023043500000015020000390000000000210435000000000001042d000002810100004100000000001004350000004101000039000000040200003900000000001204350000002402000039000000000100001909a106ff0000040f00020000000000020000007f0210008c000200000001001d000008ce0000a13d09a109800000040f000100000001001d000000020110003909a1086c0000040f0000000002010433000000000220004c000008de0000613d000000200210003900000000030204330000028a033001970000000105000029000000f804500210000000000334019f000002870330004100000000003204350000000302500210000000f802200089000000020300002900000000032301cf000000ff0220008c0000000002030019000000000200201900000021031000390000000000230435000008dc0000013d09a1084c0000040f0000000002010433000000000220004c000008de0000613d0000000204000029000000f8024002100000026e03000041000000000440004c0000000002036019000000200310003900000000040304330000028a04400197000000000224019f00000000002304350000000200000005000000000001042d000002810100004100000000001004350000003201000039000000040200003900000000001204350000002402000039000000000100001909a106ff0000040f000200000000000200000000030100190000026f01300197000000010210008c000009160000613d000000370210008c000009070000a13d000200000001001d09a109800000040f000100000001001d000000020110003909a1086c0000040f0000000002010433000000000220004c0000091e0000613d000000200210003900000000030204330000028a033001970000000105000029000000f804500210000000000334019f0000028b0330004100000000003204350000000302500210000000f802200089000000020300002900000000032301cf000000ff0220008c0000000002030019000000000200201900000021031000390000000000230435000009140000013d000200000003001d09a1084c0000040f0000000002010433000000000220004c0000091e0000613d0000000202000029000000f802200210000000200310003900000000040304330000028a04400197000000000224019f0000026e0220016700000000002304350000000200000005000000000001042d000002810100004100000000001004350000000101000039000000040200003900000000001204350000002402000039000000000100001909a106ff0000040f000002810100004100000000001004350000003201000039000000040200003900000000001204350000002402000039000000000100001909a106ff0000040f09a1084c0000040f0000000002010433000000000220004c000009300000613d000000200210003900000000030204330000028a033001970000028c033001c70000000000320435000000000001042d000002810100004100000000001004350000003201000039000000040200003900000000001204350000002402000039000000000100001909a106ff0000040f09a1084c0000040f0000000002010433000000000220004c000009420000613d000000200210003900000000030204330000028a033001970000028c033001c70000000000320435000000000001042d000002810100004100000000001004350000003201000039000000040200003900000000001204350000002402000039000000000100001909a106ff0000040f000200000000000200000000030100190000026f01300197000000370210008c000009690000a13d000200000001001d09a109800000040f000100000001001d000000020110003909a1086c0000040f0000000002010433000000000220004c000009780000613d000000200210003900000000030204330000028a033001970000000105000029000000f804500210000000000334019f0000028d0330004100000000003204350000000302500210000000f802200089000000020300002900000000032301cf000000ff0220008c0000000002030019000000000200201900000021031000390000000000230435000009760000013d000200000003001d09a1084c0000040f0000000002010433000000000220004c000009780000613d0000000202000029000000f802200210000000200310003900000000040304330000028a04400197000000000242019f0000028c0220004100000000002304350000000200000005000000000001042d000002810100004100000000001004350000003201000039000000040200003900000000001204350000002402000039000000000100001909a106ff0000040f00000080021002700000028e0310009c000000000201a0190000028e0110009c0000000001000019000000100100203900000008031001bf0000026f0420009c000000000103201900000040032002700000026f0420009c000000000203201900000004031001bf0000026a0420009c000000000103201900000020032002700000026a0420009c000000000203201900000002031001bf0000ffff0420008c000000000103201900000010032002700000000002032019000000ff0220008c000000000200001900000001020020390000000001210019000000000001042d0000099f002104230000000102000039000000000001042d0000000002000019000000000001042d000009a100000432000009a20001042e000009a300010430000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffff0000000200000000000000000000000000000000000000000000000000000000ffffffff00000000000000000000000000000000000000000000000000000000ebe4a3d7000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffff456e636f64696e6720756e737570706f7274656420747800000000000000000008c379a0000000000000000000000000000000000000000000000000000000009a8a0592ac89c5ad3bc6df8224c17b485976f597df104ee20d0df415241f670b000000000000000000000000ffffffffffffffffffffffffffffffffffffffff0100000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848e1bfa1ac4e3576b728bda6721b215c70a7799a5b4866282a71bab954baac8000000000000000000000000000000000000000000000000fffffffffffffe1fad7c5bef027816a800da1736444fb58a807ef4c9603b7848673f7e3a68eb14a519b453ce45aaaaf3a300f5a9ec95869b4f28ab10430b572ee218c3a6a5e07d6fc2f8787176b8ac6bf7215b4adcc1e069bf4ab82d9ab1df05a57a91d425935b6e000000000000000000000000000000000000000000000000ffffffffffffff5f1901000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffff7f80800000000000000000000000000000000000000000000000000000000000001b000000000000000000000000000000000000000000000000000000000000004e487b7100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffff9f0200000200000000000000000000000000000004000000000000000000000000556e737570706f727465642074782074797065000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000ffffffffffffffc08100000000000000000000000000000000000000000000000000000000000000496e76616c696420762076616c75650000000000000000000000000000000000940000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb800000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000000f80000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffff",
- "0x000000000000000000000000000000000000800d": "0x000d000000000002000b0000000c001f000a0000000b001f00090000000a001f000800000009001f000700000008001f000600000007001f000500000006001f000400000005001f000300000004001f000200000003001f000c0000000103550000006001100270000000330010019d000100000002001f000000800300003900000040010000390000000000310435000000000300041600000001022001900000002e0000c13d000000000230004c000000380000c13d000000020200003900000001022001880000003b0000c13d0000000002000411000000350220009c0000003b0000413d000000000101043300000064021000390000003603000041000000000032043500000044021000390000003703000041000000000032043500000024021000390000002403000039000000000032043500000038020000410000000000210435000000040210003900000020030000390000000000320435000000840200003900c5004a0000040f000000000130004c000000380000c13d000000200200003900000100010000390000000000210439000001200200003900000000000204390000004002000039000000340300004100c500420000040f0000000001000019000000000200001900c5004a0000040f000000000100003100c500510000040f000000600100003900000000020104330000008001000039000000000300001900c500420000040f000000400110021000000000013100190000003303000041000000330420009c000000000203801900000060022002100000000001210019000000c60001042e0000003303000041000000330410009c000000000103801900000040011002100000006002200210000000000121019f000000c70001043000050000000000020000000203000031000000050230008c0000009b0000813d000300000001001d000000200210021000000000012300190000000101100039000000000221004b000000930000413d0000000002000411000000000021041f000000010110008c000000610000c13d0000000500000005000000000001042d000000020100008a000200000001001d0000000002000019000100000003001d000000000123004b000000930000413d0000000001230049000000010110008c0000007b0000a13d00000001012001bf000500000002001d00c500ad0000040f0000000502000029000400000001001d0000000201000029000000000112004b000000930000613d0000000202200039000500000002001d000000000102001900c500ad0000040f000000050200002900000001030000290000000404000029000000000014041e000000650000013d00000001013001900000000001000019000000840000613d000000000103001900c500ad0000040f0000000c02000367000000000202043b000000000021041e0000002001000039000000410200008a0000000303000029000000000331004b0000005f0000813d00000020031000390000000c04000367000000000334034f000000000414034f000000000404043b000000000303043b000000000034041e0000004003100039000000000121004b0000000001030019000000850000a13d000000390100004100000000001004350000001101000039000000040200003900000000001204350000002402000039000000000100001900c5004a0000040f0000004001000039000000000101043300000064021000390000003a03000041000000000032043500000044021000390000003b03000041000000000032043500000024021000390000002103000039000000000032043500000038020000410000000000210435000000040210003900000020030000390000000000320435000000840200003900c5004a0000040f0000000a0210008c000000b30000813d0000000501100210000000200110011a0000000201010031000000000001042d0000004001000039000000000101043300000064021000390000003c03000041000000000032043500000044021000390000003d03000041000000000032043500000024021000390000002603000039000000000032043500000038020000410000000000210435000000040210003900000020030000390000000000320435000000840200003900c5004a0000040f000000c500000432000000c60001042e000000c700010430000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffff00000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000666c61670000000000000000000000000000000000000000000000000000000054686973206d6574686f6420726571756972652073797374656d2063616c6c2008c379a0000000000000000000000000000000000000000000000000000000004e487b710000000000000000000000000000000000000000000000000000000064000000000000000000000000000000000000000000000000000000000000004f6e6c79203420696e6465786564206669656c64732061726520616c6c6f77656973746572730000000000000000000000000000000000000000000000000000546865726520617265206f6e6c792031302061636365737369626c65207265670000000000000000000000000000000000000000000000000000000000000000"
- }
-}
+{"entry_point_address":"0xc54e30abb6a3eed1b9dc0494d90c9c22d76fba7e","entry_point_code":[[0,4,0,0,0,0,0,2,0,10,0,0,0,0,0,2,0,0,0,0,3,1,0,25,0,0,0,96,4,48,2,112],[0,0,3,119,3,64,1,151,0,3,0,0,0,49,3,85,0,2,0,0,0,1,3,85,0,0,3,119,0,64,1,157],[0,0,0,1,2,32,1,144,0,0,0,93,0,0,193,61,0,0,0,128,2,0,0,57,0,0,0,64,0,32,4,63],[0,0,0,4,2,48,0,140,0,0,0,144,0,0,65,61,0,0,0,0,1,1,4,59,0,0,0,224,1,16,2,112],[0,0,3,201,2,16,0,156,0,0,2,111,0,0,161,61,0,0,3,202,2,16,0,156,0,0,2,136,0,0,33,61],[0,0,3,209,2,16,0,156,0,0,2,186,0,0,161,61,0,0,3,210,2,16,0,156,0,0,2,245,0,0,97,61],[0,0,3,211,2,16,0,156,0,0,2,227,0,0,97,61,0,0,3,212,1,16,0,156,0,0,5,32,0,0,193,61],[0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,5,32,0,0,193,61,0,0,3,228,1,0,0,65],[0,0,0,128,0,16,4,63,0,0,3,119,1,0,0,65,0,0,0,0,2,0,4,20,0,0,3,119,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,3,229,1,16,1,199,0,0,0,2,2,0,0,57],[13,214,13,209,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,3,119,3,48,1,151],[0,0,0,32,4,48,0,140,0,0,0,0,4,3,0,25,0,0,0,32,4,0,128,57,0,0,0,31,5,64,1,143],[0,0,0,5,4,64,2,114,0,0,0,58,0,0,97,61,0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16],[0,0,0,0,8,113,3,79,0,0,0,0,8,8,4,59,0,0,0,0,0,135,4,53,0,0,0,1,6,96,0,57],[0,0,0,0,7,70,0,75,0,0,0,51,0,0,65,61,0,0,0,0,6,5,0,75,0,0,0,72,0,0,97,61],[0,0,0,3,5,80,2,16,0,0,0,5,4,64,2,16,0,0,0,0,6,4,4,51,0,0,0,0,6,86,1,207],[0,0,0,0,6,86,2,47,0,0,0,0,7,65,3,79,0,0,0,0,7,7,4,59,0,0,1,0,5,80,0,137],[0,0,0,0,7,87,2,47,0,0,0,0,5,87,1,207,0,0,0,0,5,101,1,159,0,0,0,0,0,84,4,53],[0,1,0,0,0,3,0,31,0,3,0,0,0,1,3,85,0,0,0,64,8,0,4,61,0,0,0,1,2,32,1,144],[0,0,3,184,0,0,97,61,0,0,0,0,1,0,4,51,0,0,3,230,1,16,1,103,0,0,0,64,2,128,0,57],[0,0,0,0,0,18,4,53,0,0,0,32,1,128,0,57,0,0,3,230,2,0,0,65,0,0,0,0,0,33,4,53],[0,0,0,64,1,0,0,57,0,0,0,0,0,24,4,53,0,0,0,0,1,8,0,25,0,10,0,0,0,8,0,29],[13,214,7,244,0,0,4,15,0,0,0,10,1,0,0,41,13,214,10,230,0,0,4,15,0,0,0,0,1,0,0,25],[0,0,13,216,0,1,4,48,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,5,32,0,0,193,61],[0,0,3,120,1,0,0,65,0,0,0,0,0,16,4,57,0,0,0,0,1,0,4,16,0,10,0,0,0,1,0,29],[0,0,0,4,0,16,4,67,0,0,3,119,1,0,0,65,0,0,0,0,2,0,4,20,0,0,3,119,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,3,121,1,16,1,199,0,0,128,2,2,0,0,57],[13,214,13,209,0,0,4,15,0,0,0,1,2,32,1,144,0,0,5,147,0,0,97,61,0,0,0,0,1,1,4,59],[0,0,0,0,1,1,0,75,0,0,5,32,0,0,193,61,0,0,3,122,1,0,0,65,0,0,0,0,0,16,4,57],[0,0,0,10,1,0,0,41,0,0,0,4,0,16,4,67,0,0,3,119,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,3,119,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,3,121,1,16,1,199],[0,0,128,2,2,0,0,57,13,214,13,209,0,0,4,15,0,0,0,1,2,32,1,144,0,0,5,147,0,0,97,61],[0,0,0,0,1,1,4,59,0,0,3,123,1,16,0,156,0,0,5,32,0,0,193,61,0,0,3,124,1,0,0,65],[0,0,0,160,0,16,4,63,0,0,0,4,1,0,0,57,0,0,0,128,0,16,4,63,0,0,0,192,1,0,0,57],[0,0,0,64,0,16,4,63,0,0,0,0,1,0,4,20,0,0,0,10,2,0,0,41,0,0,0,4,3,32,0,140],[0,0,3,13,0,0,193,61,0,0,0,1,2,0,0,57,0,0,0,1,3,0,0,49,0,0,3,24,0,0,1,61],[0,0,0,0,1,3,0,75,0,0,5,32,0,0,193,61,0,0,3,129,1,0,0,65,0,0,0,0,2,1,4,26],[0,0,0,0,2,2,0,75,0,0,5,32,0,0,193,61,0,0,0,1,2,0,0,57,0,5,0,0,0,2,0,29],[0,0,0,0,0,33,4,27,0,0,0,0,1,0,4,18,0,0,3,130,1,16,1,151,0,0,0,0,2,0,4,16],[0,0,0,0,1,33,0,75,0,0,2,160,0,0,193,61,0,2,0,0,0,2,0,29,0,0,3,134,1,0,0,65],[0,0,0,0,0,16,4,57,0,0,3,119,1,0,0,65,0,0,0,0,2,0,4,20,0,0,3,119,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,3,135,1,16,1,199,0,0,128,11,2,0,0,57],[13,214,13,209,0,0,4,15,0,0,0,1,2,32,1,144,0,0,5,147,0,0,97,61,0,0,0,0,1,1,4,59],[0,0,0,0,1,1,0,75,0,0,3,37,0,0,193,61,0,0,3,136,1,0,0,65,0,0,0,0,0,16,4,57],[0,0,3,119,3,0,0,65,0,0,0,0,1,0,4,20,0,0,3,119,2,16,0,156,0,0,0,0,1,3,128,25],[0,0,0,192,1,16,2,16,0,0,3,135,1,16,1,199,0,0,128,11,2,0,0,57,13,214,13,209,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,5,147,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,10,2,0,0,57],[0,0,0,0,0,18,4,27,0,0,3,137,1,0,0,65,0,0,0,0,0,16,4,57,0,0,0,0,1,0,4,20],[0,0,3,119,2,16,0,156,0,0,3,119,1,0,128,65,0,0,0,192,1,16,2,16,0,0,3,135,1,16,1,199],[0,0,128,11,2,0,0,57,13,214,13,209,0,0,4,15,0,0,0,1,2,32,1,144,0,0,5,147,0,0,97,61],[0,0,0,0,1,1,4,59,0,0,0,9,2,0,0,57,0,0,0,0,3,2,4,26,0,0,3,138,3,48,1,151],[0,0,0,0,1,19,1,159,0,0,0,0,0,18,4,27,0,0,3,139,1,0,0,65,0,0,0,0,0,16,4,57],[0,0,3,119,3,0,0,65,0,0,0,0,1,0,4,20,0,0,3,119,2,16,0,156,0,0,0,0,1,3,128,25],[0,0,0,192,1,16,2,16,0,0,3,135,1,16,1,199,0,0,128,11,2,0,0,57,13,214,13,209,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,5,147,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,8,2,0,0,57],[0,0,0,0,0,18,4,27,0,0,3,140,1,0,0,65,0,0,0,0,0,16,4,57,0,0,0,0,1,0,4,20],[0,0,3,119,2,16,0,156,0,0,3,119,1,0,128,65,0,0,0,192,1,16,2,16,0,0,3,135,1,16,1,199],[0,0,128,11,2,0,0,57,13,214,13,209,0,0,4,15,0,0,0,1,2,32,1,144,0,0,5,147,0,0,97,61],[0,0,0,0,1,1,4,59,0,0,0,7,2,0,0,57,0,0,0,0,0,18,4,27,0,0,3,141,1,0,0,65],[0,0,0,0,0,16,4,57,0,0,3,119,3,0,0,65,0,0,0,0,1,0,4,20,0,0,3,119,2,16,0,156],[0,0,0,0,1,3,128,25,0,0,0,192,1,16,2,16,0,0,3,135,1,16,1,199,0,0,128,11,2,0,0,57],[13,214,13,209,0,0,4,15,0,0,0,1,2,32,1,144,0,0,5,147,0,0,97,61,0,0,0,0,1,1,4,59],[0,0,0,6,2,0,0,57,0,0,0,0,0,18,4,27,0,0,3,142,1,0,0,65,0,0,0,0,0,16,4,57],[0,0,0,0,1,0,4,20,0,0,3,119,2,16,0,156,0,0,3,119,1,0,128,65,0,0,0,192,1,16,2,16],[0,0,3,135,1,16,1,199,0,0,128,11,2,0,0,57,13,214,13,209,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,5,147,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,3,2,0,0,57,0,0,0,0,0,18,4,27],[0,0,3,143,1,0,0,65,0,0,0,0,0,16,4,57,0,0,3,119,3,0,0,65,0,0,0,0,1,0,4,20],[0,0,3,119,2,16,0,156,0,0,0,0,1,3,128,25,0,0,0,192,1,16,2,16,0,0,3,135,1,16,1,199],[0,0,128,11,2,0,0,57,13,214,13,209,0,0,4,15,0,0,0,1,2,32,1,144,0,0,5,147,0,0,97,61],[0,0,0,0,1,1,4,59,0,0,3,130,1,16,1,151,0,0,0,4,2,0,0,57,0,0,0,0,3,2,4,26],[0,0,3,138,3,48,1,151,0,0,0,0,1,19,1,159,0,0,0,0,0,18,4,27,0,0,0,2,1,0,0,57],[0,0,0,0,2,1,4,26,0,0,3,144,2,32,1,151,0,0,0,2,3,0,3,103,0,0,0,0,3,3,4,59],[0,0,0,224,3,48,2,112,0,0,0,0,2,50,1,159,0,0,0,0,0,33,4,27,0,0,3,134,1,0,0,65],[0,0,0,0,0,16,4,57,0,0,0,0,1,0,4,20,0,0,3,119,2,16,0,156,0,0,3,119,1,0,128,65],[0,0,0,192,1,16,2,16,0,0,3,135,1,16,1,199,0,0,128,11,2,0,0,57,13,214,13,209,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,5,147,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,5,2,0,0,57],[0,0,0,0,0,18,4,27,0,0,0,11,1,0,0,57,0,0,0,0,2,0,4,22,0,0,0,0,0,33,4,27],[0,0,0,0,1,0,4,20,0,1,0,0,0,1,0,29,0,0,0,64,1,0,4,61,0,0,0,0,5,1,0,25],[0,0,3,145,1,16,0,156,0,0,3,58,0,0,33,61,0,0,0,160,1,80,0,57,0,0,0,64,0,16,4,63],[0,0,0,128,1,80,0,57,0,0,3,146,2,0,0,65,0,0,0,0,0,33,4,53,0,0,0,96,1,80,0,57],[0,0,3,147,2,0,0,65,0,0,0,0,0,33,4,53,0,0,0,64,1,80,0,57,0,0,3,148,2,0,0,65],[0,0,0,0,0,33,4,53,0,0,0,122,1,0,0,57,0,0,0,0,10,21,4,54,0,0,3,149,1,0,0,65],[0,0,0,0,0,26,4,53,0,4,128,16,0,0,0,61,0,8,0,0,0,0,0,29,0,10,0,0,0,5,0,29],[0,0,3,119,1,160,0,156,0,0,3,119,4,0,0,65,0,0,0,0,10,4,128,25,0,0,0,64,1,160,2,16],[0,0,0,0,2,5,4,51,0,0,3,119,3,32,0,156,0,0,0,0,2,4,128,25,0,0,0,96,2,32,2,16],[0,0,0,0,1,18,1,159,0,0,0,0,2,0,4,20,0,0,3,119,3,32,0,156,0,0,0,0,2,4,128,25],[0,0,0,192,2,32,2,16,0,0,0,0,1,18,1,159,0,0,3,150,1,16,1,199,0,0,0,4,2,0,0,41],[13,214,13,209,0,0,4,15,0,0,0,1,2,32,1,144,0,0,5,32,0,0,97,61,0,0,0,64,2,0,4,61],[0,0,0,0,1,1,4,59,0,9,0,0,0,1,0,29,0,0,0,10,6,0,0,41,0,0,0,0,1,6,4,51],[0,0,0,0,3,1,0,75,0,0,1,110,0,0,97,61,0,0,0,0,3,0,0,25,0,0,0,0,4,35,0,25],[0,0,0,32,3,48,0,57,0,0,0,0,5,99,0,25,0,0,0,0,5,5,4,51,0,0,0,0,0,84,4,53],[0,0,0,0,4,19,0,75,0,0,1,103,0,0,65,61,0,0,0,0,3,33,0,25,0,0,0,0,0,3,4,53],[0,0,3,119,3,32,0,156,0,0,3,119,4,0,0,65,0,0,0,0,2,4,128,25,0,0,0,64,2,32,2,16],[0,0,3,119,3,16,0,156,0,0,0,0,1,4,128,25,0,0,0,96,1,16,2,16,0,0,0,0,1,33,1,159],[0,0,0,0,2,0,4,20,0,0,3,119,3,32,0,156,0,0,0,0,2,4,128,25,0,0,0,192,2,32,2,16],[0,0,0,0,1,18,1,159,0,0,0,2,2,0,0,57,13,214,13,209,0,0,4,15,0,0,0,0,3,1,0,25],[0,0,0,96,3,48,2,112,0,0,3,119,3,48,1,151,0,0,0,32,4,48,0,140,0,0,0,0,5,3,0,25],[0,0,0,32,5,0,128,57,0,0,0,5,4,80,2,114,0,0,1,143,0,0,97,61,0,0,0,0,6,0,0,25],[0,0,0,5,7,96,2,16,0,0,0,0,8,113,3,79,0,0,0,0,8,8,4,59,0,0,0,0,0,135,4,53],[0,0,0,1,6,96,0,57,0,0,0,0,7,70,0,75,0,0,1,136,0,0,65,61,0,0,0,31,5,80,1,144],[0,0,1,157,0,0,97,61,0,0,0,3,5,80,2,16,0,0,0,5,4,64,2,16,0,0,0,0,6,4,4,51],[0,0,0,0,6,86,1,207,0,0,0,0,6,86,2,47,0,0,0,0,7,65,3,79,0,0,0,0,7,7,4,59],[0,0,1,0,5,80,0,137,0,0,0,0,7,87,2,47,0,0,0,0,5,87,1,207,0,0,0,0,5,101,1,159],[0,0,0,0,0,84,4,53,0,1,0,0,0,3,0,31,0,3,0,0,0,1,3,85,0,0,0,64,11,0,4,61],[0,0,0,1,2,32,1,144,0,0,3,251,0,0,97,61,0,0,0,0,2,0,4,51,0,0,0,32,12,176,0,57],[0,0,0,10,6,0,0,41,0,0,0,0,1,6,4,51,0,0,0,0,3,1,0,75,0,0,1,176,0,0,97,61],[0,0,0,0,3,0,0,25,0,0,0,0,4,195,0,25,0,0,0,32,3,48,0,57,0,0,0,0,5,99,0,25],[0,0,0,0,5,5,4,51,0,0,0,0,0,84,4,53,0,0,0,0,4,19,0,75,0,0,1,169,0,0,65,61],[0,0,0,9,2,32,1,79,0,0,0,0,3,193,0,25,0,0,0,0,0,35,4,53,0,0,0,32,3,16,0,57],[0,0,0,0,0,59,4,53,0,0,0,95,3,16,0,57,0,0,0,32,1,0,0,138,0,0,0,0,3,19,1,111],[0,0,0,0,13,179,0,25,0,0,0,0,3,61,0,75,0,0,0,0,3,0,0,25,0,0,0,1,3,0,64,57],[0,0,3,127,4,208,0,156,0,0,3,58,0,0,33,61,0,0,0,1,3,48,1,144,0,0,3,58,0,0,193,61],[0,0,0,64,0,208,4,63,0,0,0,12,10,0,0,57,0,0,0,0,3,10,4,26,0,0,3,127,4,48,0,156],[0,0,3,58,0,0,33,61,0,0,0,1,4,48,0,57,0,0,0,0,0,74,4,27,0,0,0,0,0,160,4,53],[0,0,3,151,3,48,0,65,0,0,0,0,0,35,4,27,0,0,0,0,3,10,4,26,0,0,0,0,4,3,0,75],[0,0,3,52,0,0,97,61,0,0,0,1,6,48,0,140,0,0,0,5,3,0,0,41,0,0,1,233,0,0,97,61],[0,0,0,0,3,10,4,26,0,0,0,0,4,99,0,75,0,0,5,3,0,0,161,61,0,0,0,1,4,96,0,138],[0,0,0,1,5,64,2,112,0,0,0,0,7,83,0,75,0,0,5,3,0,0,161,61,0,0,3,151,7,96,0,65],[0,0,0,0,9,7,4,26,0,0,0,0,0,160,4,53,0,0,3,151,6,80,0,65,0,0,0,0,8,6,4,26],[0,0,0,0,9,137,0,75,0,0,1,233,0,0,161,61,0,0,0,0,0,135,4,27,0,0,0,0,3,10,4,26],[0,0,0,0,3,83,0,75,0,0,5,3,0,0,161,61,0,0,0,0,0,38,4,27,0,0,0,2,3,64,0,140],[0,0,0,0,6,5,0,25,0,0,1,208,0,0,129,61,0,0,0,0,3,10,4,26,0,0,0,0,2,3,0,75],[0,0,3,52,0,0,97,61,0,0,0,1,2,48,0,138,0,0,0,0,2,35,1,112,0,0,1,245,0,0,193,61],[0,0,0,13,2,0,0,57,0,0,0,0,3,2,4,26,0,0,3,127,4,48,1,151,0,0,3,127,5,64,0,156],[0,0,3,52,0,0,97,61,0,0,3,152,3,48,1,151,0,0,0,1,4,64,0,57,0,0,0,0,3,52,1,159],[0,0,0,0,0,50,4,27,0,7,0,0,0,12,0,29,0,10,0,0,0,10,0,29,0,0,3,153,2,0,0,65],[0,0,0,0,0,45,4,53,0,0,0,4,2,208,0,57,0,0,0,32,3,0,0,57,0,3,0,0,0,3,0,29],[0,0,0,0,0,50,4,53,0,0,0,0,2,11,4,51,0,0,0,36,3,208,0,57,0,0,0,0,0,35,4,53],[0,0,0,68,3,208,0,57,0,0,0,0,4,2,0,75,0,0,2,11,0,0,97,61,0,0,0,0,4,0,0,25],[0,0,0,0,5,52,0,25,0,0,0,32,4,64,0,57,0,0,0,0,6,180,0,25,0,0,0,0,6,6,4,51],[0,0,0,0,0,101,4,53,0,0,0,0,5,36,0,75,0,0,2,4,0,0,65,61,0,9,0,0,0,11,0,29],[0,0,0,0,3,50,0,25,0,0,0,0,0,3,4,53,0,0,0,31,2,32,0,57,0,0,0,0,1,18,1,111],[0,0,3,119,2,208,0,156,0,0,3,119,4,0,0,65,0,0,0,0,2,4,0,25,0,0,0,0,2,13,64,25],[0,0,0,64,2,32,2,16,0,0,0,68,1,16,0,57,0,0,3,119,3,16,0,156,0,0,0,0,1,4,128,25],[0,0,0,96,1,16,2,16,0,0,0,0,1,33,1,159,0,0,0,0,2,0,4,20,0,0,3,119,3,32,0,156],[0,0,0,0,2,4,128,25,0,0,0,192,2,32,2,16,0,0,0,0,1,18,1,159,0,0,128,8,2,0,0,57],[0,6,0,0,0,13,0,29,13,214,13,204,0,0,4,15,0,0,0,6,11,0,0,41,0,0,0,0,3,1,0,25],[0,0,0,96,3,48,2,112,0,0,3,119,3,48,1,151,0,0,0,32,4,48,0,140,0,0,0,0,4,3,0,25],[0,0,0,32,4,0,128,57,0,0,0,5,5,64,2,114,0,0,2,52,0,0,97,61,0,0,0,0,6,0,0,25],[0,0,0,5,7,96,2,16,0,0,0,0,8,123,0,25,0,0,0,0,7,113,3,79,0,0,0,0,7,7,4,59],[0,0,0,0,0,120,4,53,0,0,0,1,6,96,0,57,0,0,0,0,7,86,0,75,0,0,2,44,0,0,65,61],[0,0,0,31,6,64,1,144,0,0,0,10,9,0,0,41,0,0,0,7,10,0,0,41,0,0,2,69,0,0,97,61],[0,0,0,5,5,80,2,16,0,0,0,0,7,81,3,79,0,0,0,0,5,91,0,25,0,0,0,3,6,96,2,16],[0,0,0,0,8,5,4,51,0,0,0,0,8,104,1,207,0,0,0,0,8,104,2,47,0,0,0,0,7,7,4,59],[0,0,1,0,6,96,0,137,0,0,0,0,7,103,2,47,0,0,0,0,6,103,1,207,0,0,0,0,6,134,1,159],[0,0,0,0,0,101,4,53,0,1,0,0,0,3,0,31,0,3,0,0,0,1,3,85,0,0,0,1,2,32,1,144],[0,0,0,9,5,0,0,41,0,0,4,27,0,0,97,61,0,0,0,31,1,64,0,57,0,0,0,96,2,16,1,143],[0,0,0,0,1,178,0,25,0,0,0,0,2,33,0,75,0,0,0,0,2,0,0,25,0,0,0,1,2,0,64,57],[0,0,3,127,4,16,0,156,0,0,3,58,0,0,33,61,0,0,0,1,2,32,1,144,0,0,3,58,0,0,193,61],[0,0,0,64,0,16,4,63,0,0,0,32,2,48,0,140,0,0,5,32,0,0,65,61,0,0,0,8,3,0,0,41],[0,0,0,2,2,48,0,140,0,8,0,1,0,48,0,61,0,0,1,75,0,0,161,61,0,0,0,0,2,9,4,26],[0,0,0,0,3,2,0,75,0,0,4,60,0,0,193,61,0,0,0,68,2,16,0,57,0,0,3,198,3,0,0,65],[0,0,0,0,0,50,4,53,0,0,0,36,2,16,0,57,0,0,0,1,3,0,0,57,0,0,0,0,0,50,4,53],[0,0,3,131,2,0,0,65,0,0,0,0,0,33,4,53,0,0,0,4,2,16,0,57,0,0,0,3,3,0,0,41],[0,0,0,0,0,50,4,53,0,0,3,119,2,0,0,65,0,0,3,119,3,16,0,156,0,0,0,0,1,2,128,25],[0,0,0,64,1,16,2,16,0,0,3,159,1,16,1,199,0,0,13,216,0,1,4,48,0,0,3,215,2,16,0,156],[0,0,2,149,0,0,161,61,0,0,3,216,2,16,0,156,0,0,2,179,0,0,161,61,0,0,3,217,2,16,0,156],[0,0,2,222,0,0,97,61,0,0,3,218,2,16,0,156,0,0,2,217,0,0,97,61,0,0,3,219,1,16,0,156],[0,0,5,32,0,0,193,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,5,32,0,0,193,61],[0,0,0,12,1,0,0,57,0,0,0,0,5,1,4,26,0,0,0,0,2,5,0,75,0,0,3,107,0,0,193,61],[0,0,3,131,1,0,0,65,0,0,0,128,0,16,4,63,0,0,0,32,1,0,0,57,0,0,0,132,0,16,4,63],[0,0,0,1,1,0,0,57,0,0,0,164,0,16,4,63,0,0,3,198,1,0,0,65,0,0,2,167,0,0,1,61],[0,0,3,203,2,16,0,156,0,0,2,196,0,0,161,61,0,0,3,204,2,16,0,156,0,0,2,251,0,0,97,61],[0,0,3,205,2,16,0,156,0,0,2,232,0,0,97,61,0,0,3,206,1,16,0,156,0,0,5,32,0,0,193,61],[0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,5,32,0,0,193,61,0,0,0,4,1,0,0,57],[0,0,2,242,0,0,1,61,0,0,3,222,2,16,0,156,0,0,2,170,0,0,33,61,0,0,3,225,2,16,0,156],[0,0,2,205,0,0,97,61,0,0,3,226,1,16,0,156,0,0,5,32,0,0,193,61,0,0,0,0,1,0,4,22],[0,0,0,0,1,1,0,75,0,0,5,32,0,0,193,61,0,0,0,3,1,0,0,57,0,0,3,9,0,0,1,61],[0,0,3,131,1,0,0,65,0,0,0,128,0,16,4,63,0,0,0,32,1,0,0,57,0,0,0,132,0,16,4,63],[0,0,0,16,1,0,0,57,0,0,0,164,0,16,4,63,0,0,3,132,1,0,0,65,0,0,0,196,0,16,4,63],[0,0,3,133,1,0,0,65,0,0,13,216,0,1,4,48,0,0,3,223,2,16,0,156,0,0,2,210,0,0,97,61],[0,0,3,224,1,16,0,156,0,0,5,32,0,0,193,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75],[0,0,5,32,0,0,193,61,0,0,0,6,1,0,0,57,0,0,3,9,0,0,1,61,0,0,3,220,2,16,0,156],[0,0,2,238,0,0,97,61,0,0,3,221,1,16,0,156,0,0,5,32,0,0,193,61,13,214,7,255,0,0,4,15],[0,0,0,0,1,0,0,25,0,0,13,215,0,1,4,46,0,0,3,213,2,16,0,156,0,0,3,0,0,0,97,61],[0,0,3,214,1,16,0,156,0,0,5,32,0,0,193,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75],[0,0,5,32,0,0,193,61,13,214,11,176,0,0,4,15,0,0,0,0,1,0,0,25,0,0,13,215,0,1,4,46],[0,0,3,207,2,16,0,156,0,0,3,5,0,0,97,61,0,0,3,208,1,16,0,156,0,0,5,32,0,0,193,61],[0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,5,32,0,0,193,61,0,0,0,11,1,0,0,57],[0,0,3,9,0,0,1,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,5,32,0,0,193,61],[0,0,0,0,1,0,4,26,0,0,2,243,0,0,1,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75],[0,0,5,32,0,0,193,61,0,0,0,2,1,0,0,57,0,0,0,0,1,1,4,26,0,0,0,224,1,16,2,16],[0,0,3,10,0,0,1,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,5,32,0,0,193,61],[0,0,0,10,1,0,0,57,0,0,3,9,0,0,1,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75],[0,0,5,32,0,0,193,61,0,0,0,7,1,0,0,57,0,0,3,9,0,0,1,61,0,0,0,0,1,0,4,22],[0,0,0,0,1,1,0,75,0,0,5,32,0,0,193,61,0,0,3,124,1,0,0,65,0,0,3,10,0,0,1,61],[0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,5,32,0,0,193,61,13,214,11,113,0,0,4,15],[0,0,0,0,1,0,0,25,0,0,13,215,0,1,4,46,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75],[0,0,5,32,0,0,193,61,0,0,0,9,1,0,0,57,0,0,0,0,1,1,4,26,0,0,3,130,1,16,1,151],[0,0,3,10,0,0,1,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,5,32,0,0,193,61],[13,214,8,206,0,0,4,15,0,0,0,0,1,0,0,25,0,0,13,215,0,1,4,46,0,0,0,0,1,0,4,22],[0,0,0,0,1,1,0,75,0,0,5,32,0,0,193,61,0,0,0,5,1,0,0,57,0,0,3,9,0,0,1,61],[0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,5,32,0,0,193,61,0,0,0,8,1,0,0,57],[0,0,3,9,0,0,1,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,5,32,0,0,193,61],[0,0,0,1,1,0,0,57,0,0,0,0,1,1,4,26,0,0,0,128,0,16,4,63,0,0,3,227,1,0,0,65],[0,0,13,215,0,1,4,46,0,0,3,119,4,0,0,65,0,0,3,119,3,16,0,156,0,0,0,0,1,4,128,25],[0,0,0,192,1,16,2,16,0,0,3,125,1,16,1,199,13,214,13,204,0,0,4,15,0,0,0,1,2,32,1,143],[0,3,0,0,0,1,3,85,0,0,0,96,1,16,2,112,0,1,3,119,0,16,1,157,0,0,3,119,3,16,1,151],[0,0,0,96,1,0,0,57,0,0,0,0,4,3,0,75,0,0,3,56,0,0,193,61,0,0,0,0,2,2,0,75],[0,0,5,32,0,0,97,61,0,0,0,0,1,1,4,51,0,0,0,0,1,1,0,75,0,0,5,32,0,0,193,61],[0,0,0,32,1,0,0,57,0,0,1,0,0,16,4,67,0,0,1,32,0,0,4,67,0,0,3,128,1,0,0,65],[0,0,13,215,0,1,4,46,0,0,3,134,1,0,0,65,0,0,0,0,0,16,4,57,0,0,3,119,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,3,119,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,3,135,1,16,1,199,0,0,128,11,2,0,0,57,13,214,13,209,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,5,147,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75,0,0,3,218,0,0,193,61],[0,0,3,199,1,0,0,65,0,0,0,0,0,16,4,53,0,0,0,17,1,0,0,57,0,0,5,6,0,0,1,61],[0,0,3,126,1,48,0,156,0,0,3,62,0,0,65,61,0,0,3,199,1,0,0,65,0,0,0,0,0,16,4,53],[0,0,0,65,1,0,0,57,0,0,5,6,0,0,1,61,0,0,0,31,1,48,0,57,0,0,0,32,4,0,0,138],[0,0,0,0,1,65,1,111,0,0,0,63,1,16,0,57,0,0,0,0,4,65,1,111,0,0,0,64,1,0,4,61],[0,0,0,0,4,65,0,25,0,0,0,0,5,20,0,75,0,0,0,0,5,0,0,25,0,0,0,1,5,0,64,57],[0,0,3,127,6,64,0,156,0,0,3,58,0,0,33,61,0,0,0,1,5,80,1,144,0,0,3,58,0,0,193,61],[0,0,0,64,0,64,4,63,0,0,0,31,4,48,1,143,0,0,0,0,5,49,4,54,0,0,0,3,6,0,3,103],[0,0,0,5,3,48,2,114,0,0,3,91,0,0,97,61,0,0,0,0,7,0,0,25,0,0,0,5,8,112,2,16],[0,0,0,0,9,133,0,25,0,0,0,0,8,134,3,79,0,0,0,0,8,8,4,59,0,0,0,0,0,137,4,53],[0,0,0,1,7,112,0,57,0,0,0,0,8,55,0,75,0,0,3,83,0,0,65,61,0,0,0,0,7,4,0,75],[0,0,3,27,0,0,97,61,0,0,0,5,3,48,2,16,0,0,0,0,6,54,3,79,0,0,0,0,3,53,0,25],[0,0,0,3,4,64,2,16,0,0,0,0,5,3,4,51,0,0,0,0,5,69,1,207,0,0,0,0,5,69,2,47],[0,0,0,0,6,6,4,59,0,0,1,0,4,64,0,137,0,0,0,0,6,70,2,47,0,0,0,0,4,70,1,207],[0,0,0,0,4,84,1,159,0,0,0,0,0,67,4,53,0,0,3,27,0,0,1,61,0,0,3,151,2,0,0,65],[0,0,0,1,3,0,0,57,0,0,3,157,4,0,0,65,0,0,3,119,0,0,1,61,0,0,0,1,6,0,0,138],[0,0,0,0,6,101,0,75,0,0,3,52,0,0,97,61,0,0,0,1,6,80,0,57,0,0,0,0,6,86,1,112],[0,0,3,174,0,0,97,61,0,0,0,0,6,5,0,75,0,0,3,249,0,0,97,61,0,0,3,154,6,80,0,65],[0,0,0,0,7,6,4,26,0,0,0,0,0,114,4,27,0,0,0,0,0,6,4,27,0,0,0,1,5,80,0,138],[0,0,0,0,0,81,4,27,0,0,0,2,6,80,0,140,0,0,3,114,0,0,65,61,0,0,0,0,8,3,0,25],[0,0,0,0,9,0,0,25,0,0,0,0,7,0,0,25,0,0,0,2,10,144,0,57,0,0,0,0,6,90,0,75],[0,0,0,0,6,8,0,25,0,0,3,141,0,0,129,61,0,0,3,155,6,144,0,65,0,0,0,0,6,6,4,26],[0,0,3,156,9,144,0,65,0,0,0,0,9,9,4,26,0,0,0,0,6,105,0,75,0,0,0,0,6,8,0,25],[0,0,0,0,6,10,64,25,0,0,0,0,8,101,0,75,0,0,5,3,0,0,161,61,0,0,3,151,8,96,0,65],[0,0,0,0,9,117,0,75,0,0,5,3,0,0,161,61,0,0,0,0,9,8,4,26,0,0,3,151,10,112,0,65],[0,0,0,0,7,10,4,26,0,0,0,0,11,121,0,75,0,0,3,111,0,0,161,61,0,0,0,0,0,154,4,27],[0,0,0,0,5,1,4,26,0,0,0,0,5,101,0,75,0,0,5,3,0,0,161,61,0,0,0,0,0,120,4,27],[0,0,0,0,5,6,0,75,0,0,0,0,5,0,0,25,0,0,0,0,5,4,64,25,0,0,3,157,7,96,1,151],[0,0,0,0,8,7,0,75,0,0,0,0,8,0,0,25,0,0,0,0,8,4,32,25,0,0,3,157,7,112,0,156],[0,0,0,0,8,5,192,25,0,0,0,0,5,8,0,75,0,0,3,52,0,0,193,61,0,0,0,0,5,1,4,26],[0,0,0,1,9,96,2,16,0,0,0,1,8,144,1,191,0,0,0,0,7,88,0,75,0,0,0,0,7,6,0,25],[0,0,3,130,0,0,65,61,0,0,3,111,0,0,1,61,0,0,0,13,6,0,0,57,0,0,0,0,7,6,4,26],[0,0,3,127,8,112,1,151,0,0,0,1,8,128,0,138,0,0,3,127,9,128,0,156,0,0,3,52,0,0,33,61],[0,0,3,152,7,112,1,151,0,0,0,0,7,120,1,159,0,0,0,0,0,118,4,27,0,0,3,117,0,0,1,61],[0,0,0,31,2,48,1,143,0,0,0,5,4,48,2,114,0,0,3,196,0,0,97,61,0,0,0,0,5,0,0,25],[0,0,0,5,6,80,2,16,0,0,0,0,7,104,0,25,0,0,0,0,6,97,3,79,0,0,0,0,6,6,4,59],[0,0,0,0,0,103,4,53,0,0,0,1,5,80,0,57,0,0,0,0,6,69,0,75,0,0,3,188,0,0,65,61],[0,0,0,0,5,2,0,75,0,0,3,211,0,0,97,61,0,0,0,5,4,64,2,16,0,0,0,0,1,65,3,79],[0,0,0,0,4,72,0,25,0,0,0,3,2,32,2,16,0,0,0,0,5,4,4,51,0,0,0,0,5,37,1,207],[0,0,0,0,5,37,2,47,0,0,0,0,1,1,4,59,0,0,1,0,2,32,0,137,0,0,0,0,1,33,2,47],[0,0,0,0,1,33,1,207,0,0,0,0,1,81,1,159,0,0,0,0,0,20,4,53,0,0,3,119,1,0,0,65],[0,0,3,119,2,128,0,156,0,0,0,0,8,1,128,25,0,0,0,64,1,128,2,16,0,0,0,96,2,48,2,16],[0,0,0,0,1,33,1,159,0,0,13,216,0,1,4,48,0,0,3,134,1,0,0,65,0,0,0,0,0,16,4,57],[0,0,3,119,3,0,0,65,0,0,0,0,1,0,4,20,0,0,3,119,2,16,0,156,0,0,0,0,1,3,128,25],[0,0,0,192,1,16,2,16,0,0,3,135,1,16,1,199,0,0,128,11,2,0,0,57,13,214,13,209,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,5,147,0,0,97,61,0,0,0,0,1,1,4,59,0,10,0,0,0,1,0,29],[0,0,3,134,1,0,0,65,0,0,0,0,0,16,4,57,0,0,0,0,1,0,4,20,0,0,3,119,2,16,0,156],[0,0,3,119,1,0,128,65,0,0,0,192,1,16,2,16,0,0,3,135,1,16,1,199,0,0,128,11,2,0,0,57],[13,214,13,209,0,0,4,15,0,0,0,1,2,32,1,144,0,0,5,147,0,0,97,61,0,0,0,10,2,0,0,41],[0,0,3,232,2,32,0,57,0,0,0,0,1,1,4,59,0,0,0,0,1,33,0,75,0,0,3,52,0,0,33,61],[0,0,0,174,0,0,1,61,0,0,0,0,0,16,4,53,0,0,2,128,0,0,1,61,0,0,0,31,2,48,1,143],[0,0,0,5,4,48,2,114,0,0,4,7,0,0,97,61,0,0,0,0,5,0,0,25,0,0,0,5,6,80,2,16],[0,0,0,0,7,107,0,25,0,0,0,0,6,97,3,79,0,0,0,0,6,6,4,59,0,0,0,0,0,103,4,53],[0,0,0,1,5,80,0,57,0,0,0,0,6,69,0,75,0,0,3,255,0,0,65,61,0,0,0,0,5,2,0,75],[0,0,4,22,0,0,97,61,0,0,0,5,4,64,2,16,0,0,0,0,1,65,3,79,0,0,0,0,4,75,0,25],[0,0,0,3,2,32,2,16,0,0,0,0,5,4,4,51,0,0,0,0,5,37,1,207,0,0,0,0,5,37,2,47],[0,0,0,0,1,1,4,59,0,0,1,0,2,32,0,137,0,0,0,0,1,33,2,47,0,0,0,0,1,33,1,207],[0,0,0,0,1,81,1,159,0,0,0,0,0,20,4,53,0,0,3,119,1,0,0,65,0,0,3,119,2,176,0,156],[0,0,0,0,11,1,128,25,0,0,0,64,1,176,2,16,0,0,3,215,0,0,1,61,0,0,0,64,2,0,4,61],[0,0,0,31,4,48,1,143,0,0,0,5,5,48,2,114,0,0,4,40,0,0,97,61,0,0,0,0,6,0,0,25],[0,0,0,5,7,96,2,16,0,0,0,0,8,114,0,25,0,0,0,0,7,113,3,79,0,0,0,0,7,7,4,59],[0,0,0,0,0,120,4,53,0,0,0,1,6,96,0,57,0,0,0,0,7,86,0,75,0,0,4,32,0,0,65,61],[0,0,0,0,6,4,0,75,0,0,4,55,0,0,97,61,0,0,0,5,5,80,2,16,0,0,0,0,1,81,3,79],[0,0,0,0,5,82,0,25,0,0,0,3,4,64,2,16,0,0,0,0,6,5,4,51,0,0,0,0,6,70,1,207],[0,0,0,0,6,70,2,47,0,0,0,0,1,1,4,59,0,0,1,0,4,64,0,137,0,0,0,0,1,65,2,47],[0,0,0,0,1,65,1,207,0,0,0,0,1,97,1,159,0,0,0,0,0,21,4,53,0,0,3,119,1,0,0,65],[0,0,3,119,4,32,0,156,0,0,0,0,2,1,128,25,0,0,0,64,1,32,2,16,0,0,3,215,0,0,1,61],[0,0,3,154,3,32,0,65,0,0,0,0,4,3,4,26,0,0,3,151,5,0,0,65,0,0,0,0,0,69,4,27],[0,0,0,10,10,0,0,41,0,0,0,0,0,160,4,53,0,0,0,0,0,3,4,27,0,0,0,1,3,32,0,138],[0,0,0,0,0,58,4,27,0,0,0,2,2,48,0,140,0,0,4,122,0,0,65,61,0,0,0,1,6,0,0,57],[0,0,3,157,2,0,0,65,0,0,0,0,7,0,0,25,0,0,0,0,5,0,0,25,0,0,0,2,8,112,0,57],[0,0,0,0,4,56,0,75,0,0,0,0,4,6,0,25,0,0,4,86,0,0,129,61,0,0,3,155,4,112,0,65],[0,0,0,0,4,4,4,26,0,0,3,156,7,112,0,65,0,0,0,0,7,7,4,26,0,0,0,0,4,71,0,75],[0,0,0,0,4,6,0,25,0,0,0,0,4,8,64,25,0,0,0,0,6,67,0,75,0,0,5,3,0,0,161,61],[0,0,3,151,6,64,0,65,0,0,0,0,7,83,0,75,0,0,5,3,0,0,161,61,0,0,0,0,7,6,4,26],[0,0,0,0,0,160,4,53,0,0,3,151,8,80,0,65,0,0,0,0,5,8,4,26,0,0,0,0,9,87,0,75],[0,0,4,119,0,0,161,61,0,0,0,0,0,120,4,27,0,0,0,0,3,10,4,26,0,0,0,0,3,67,0,75],[0,0,5,3,0,0,161,61,0,0,0,0,0,86,4,27,0,0,0,0,3,4,0,75,0,0,0,0,3,0,0,25],[0,0,0,0,3,2,64,25,0,0,3,157,5,64,1,151,0,0,0,0,6,5,0,75,0,0,0,0,6,0,0,25],[0,0,0,0,6,2,32,25,0,0,3,157,5,80,0,156,0,0,0,0,6,3,192,25,0,0,0,0,3,6,0,75],[0,0,3,52,0,0,193,61,0,0,0,0,3,10,4,26,0,0,0,1,7,64,2,16,0,0,0,1,6,112,1,191],[0,0,0,0,5,54,0,75,0,0,0,0,5,4,0,25,0,0,4,75,0,0,65,61,0,0,0,1,2,0,0,138],[0,0,0,0,2,35,0,75,0,0,3,52,0,0,97,61,0,0,0,1,2,48,0,57,0,0,0,0,2,50,1,112],[0,0,4,134,0,0,193,61,0,0,0,13,2,0,0,57,0,0,0,0,3,2,4,26,0,0,3,127,4,48,1,151],[0,0,0,1,4,64,0,138,0,0,3,127,5,64,0,156,0,0,3,52,0,0,33,61,0,0,3,152,3,48,1,151],[0,0,0,0,3,52,1,159,0,0,0,0,0,50,4,27,0,0,0,0,3,0,4,20,0,8,0,0,0,3,0,29],[0,0,0,1,2,48,0,107,0,0,5,9,0,0,161,61,0,0,0,9,6,0,0,41,0,0,0,0,2,6,4,51],[0,0,0,0,3,2,0,75,0,0,4,150,0,0,97,61,0,0,0,0,3,0,0,25,0,0,0,0,4,19,0,25],[0,0,0,32,3,48,0,57,0,0,0,0,5,99,0,25,0,0,0,0,5,5,4,51,0,0,0,0,0,84,4,53],[0,0,0,0,4,35,0,75,0,0,4,143,0,0,65,61,0,0,0,0,3,18,0,25,0,0,0,0,0,3,4,53],[0,0,3,119,4,0,0,65,0,0,3,119,3,16,0,156,0,0,0,0,1,4,128,25,0,0,0,64,1,16,2,16],[0,0,3,119,3,32,0,156,0,0,0,0,2,4,128,25,0,0,0,96,2,32,2,16,0,0,0,0,1,18,1,159],[0,0,0,0,2,0,4,20,0,0,3,119,3,32,0,156,0,0,0,0,2,4,128,25,0,0,0,192,2,32,2,16],[0,0,0,0,1,18,1,159,0,0,3,150,1,16,1,199,0,0,128,16,2,0,0,57,13,214,13,209,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,5,32,0,0,97,61,0,0,0,8,3,0,0,41,0,0,0,1,2,48,0,105],[0,0,0,0,5,1,4,59,0,0,0,64,1,0,4,61,0,0,0,0,0,33,4,53,0,0,0,0,2,0,4,20],[0,0,3,119,3,32,0,156,0,0,3,119,4,0,0,65,0,0,0,0,2,4,128,25,0,0,3,119,3,16,0,156],[0,0,0,0,1,4,128,25,0,0,0,64,1,16,2,16,0,0,0,192,2,32,2,16,0,0,0,0,1,18,1,159],[0,0,3,160,1,16,1,199,0,0,128,13,2,0,0,57,0,0,0,2,3,0,0,57,0,0,3,161,4,0,0,65],[13,214,13,204,0,0,4,15,0,0,0,10,5,0,0,41,0,0,0,1,1,32,1,144,0,0,5,32,0,0,97,61],[0,0,0,64,2,0,4,61,0,0,3,162,1,32,0,156,0,0,3,58,0,0,33,61,0,0,0,192,1,32,0,57],[0,0,0,64,0,16,4,63,0,0,0,160,1,32,0,57,0,0,3,163,3,0,0,65,0,0,0,0,0,49,4,53],[0,0,0,128,3,32,0,57,0,0,3,164,1,0,0,65,0,0,0,0,0,19,4,53,0,0,0,96,3,32,0,57],[0,0,0,0,0,19,4,53,0,0,0,64,3,32,0,57,0,0,0,0,0,19,4,53,0,0,0,32,3,32,0,57],[0,0,0,0,0,19,4,53,0,0,0,135,3,0,0,57,0,0,0,0,0,50,4,53,0,0,0,64,2,0,4,61],[0,0,3,162,3,32,0,156,0,0,3,58,0,0,33,61,0,0,0,192,3,32,0,57,0,0,0,64,0,48,4,63],[0,0,0,160,3,32,0,57,0,0,3,165,4,0,0,65,0,0,0,0,0,67,4,53,0,0,0,128,3,32,0,57],[0,0,0,0,0,19,4,53,0,0,0,96,3,32,0,57,0,0,0,0,0,19,4,53,0,0,0,64,3,32,0,57],[0,0,0,0,0,19,4,53,0,0,0,32,3,32,0,57,0,0,0,0,0,19,4,53,0,0,0,136,1,0,0,57],[0,0,0,0,0,18,4,53,0,0,0,64,1,0,4,61,0,0,3,162,2,16,0,156,0,0,3,58,0,0,33,61],[0,0,0,192,2,16,0,57,0,0,0,64,0,32,4,63,0,0,0,160,2,16,0,57,0,0,3,166,3,0,0,65],[0,0,0,0,0,50,4,53,0,0,0,128,2,16,0,57,0,0,3,164,3,0,0,65,0,0,0,0,0,50,4,53],[0,0,0,96,2,16,0,57,0,0,0,0,0,50,4,53,0,0,0,64,2,16,0,57,0,0,0,0,0,50,4,53],[0,0,0,32,2,16,0,57,0,0,0,0,0,50,4,53,0,0,0,137,2,0,0,57,0,0,0,0,0,33,4,53],[0,0,0,0,1,5,4,26,0,9,0,0,0,1,0,29,0,0,0,0,1,1,0,75,0,0,5,15,0,0,193,61],[0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57,0,0,3,197,3,0,0,65,0,0,0,0,0,50,4,53],[0,0,0,36,2,16,0,57,0,0,0,24,3,0,0,57,0,0,2,99,0,0,1,61,0,0,3,199,1,0,0,65],[0,0,0,0,0,16,4,53,0,0,0,50,1,0,0,57,0,0,0,4,0,16,4,63,0,0,3,200,1,0,0,65],[0,0,13,216,0,1,4,48,0,0,0,68,2,16,0,57,0,0,3,158,3,0,0,65,0,0,0,0,0,50,4,53],[0,0,0,36,2,16,0,57,0,0,0,18,3,0,0,57,0,0,2,99,0,0,1,61,0,0,3,120,1,0,0,65],[0,0,0,0,0,16,4,57,0,0,0,2,1,0,0,41,0,0,0,4,0,16,4,67,0,0,3,119,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,3,119,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,3,121,1,16,1,199,0,0,128,2,2,0,0,57,13,214,13,209,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,5,147,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75,0,0,5,34,0,0,193,61],[0,0,0,0,1,0,0,25,0,0,13,216,0,1,4,48,0,0,0,64,2,0,4,61,0,0,3,167,1,0,0,65],[0,8,0,0,0,2,0,29,0,0,0,0,0,18,4,53,0,0,0,0,1,0,4,20,0,0,0,2,2,0,0,41],[0,0,0,4,2,32,0,140,0,0,5,60,0,0,97,61,0,0,3,119,2,0,0,65,0,0,3,119,3,16,0,156],[0,0,0,0,1,2,128,25,0,0,0,8,4,0,0,41,0,0,3,119,3,64,0,156,0,0,0,0,2,4,64,25],[0,0,0,64,2,32,2,16,0,0,0,192,1,16,2,16,0,0,0,0,1,33,1,159,0,0,3,168,1,16,1,199],[0,0,0,2,2,0,0,41,13,214,13,204,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,1,3,119,0,48,1,157,0,3,0,0,0,1,3,85,0,0,0,1,1,32,1,144,0,0,5,82,0,0,97,61],[0,0,0,8,1,0,0,41,0,0,3,127,1,16,0,156,0,0,3,58,0,0,33,61,0,0,0,8,3,0,0,41],[0,0,0,64,0,48,4,63,0,0,0,68,1,48,0,57,0,0,3,196,2,0,0,65,0,0,0,0,0,33,4,53],[0,0,0,36,1,48,0,57,0,0,0,23,2,0,0,57,0,0,0,0,0,33,4,53,0,0,3,131,1,0,0,65],[0,0,0,0,0,19,4,53,0,0,0,4,1,48,0,57,0,0,0,3,2,0,0,41,0,0,0,0,0,33,4,53],[0,0,3,119,1,0,0,65,0,0,3,119,2,48,0,156,0,0,0,0,3,1,128,25,0,0,0,64,1,48,2,16],[0,0,3,159,1,16,1,199,0,0,13,216,0,1,4,48,0,0,0,10,1,0,0,41,0,0,0,0,1,1,4,26],[0,0,0,9,1,16,0,108,0,0,5,148,0,0,193,61,0,0,3,120,1,0,0,65,0,0,0,0,0,16,4,57],[0,0,0,2,1,0,0,41,0,0,0,4,0,16,4,67,0,0,3,119,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,3,119,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,3,121,1,16,1,199],[0,0,128,2,2,0,0,57,13,214,13,209,0,0,4,15,0,0,0,1,2,32,1,144,0,0,5,147,0,0,97,61],[0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75,0,0,5,32,0,0,97,61,0,0,0,64,4,0,4,61],[0,0,3,170,1,0,0,65,0,0,0,0,0,20,4,53,0,0,3,119,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,3,119,3,32,0,156,0,0,0,0,2,1,128,25,0,0,3,119,3,64,0,156,0,10,0,0,0,4,0,29],[0,0,0,0,1,4,64,25,0,9,0,64,0,16,2,24,0,0,0,192,1,32,2,16,0,0,0,9,1,16,1,175],[0,0,3,168,1,16,1,199,0,0,0,2,2,0,0,41,13,214,13,204,0,0,4,15,0,0,0,0,3,1,0,25],[0,0,0,96,3,48,2,112,0,1,3,119,0,48,1,157,0,3,0,0,0,1,3,85,0,0,0,1,1,32,1,144],[0,0,5,155,0,0,97,61,0,0,0,10,1,0,0,41,0,0,3,127,1,16,0,156,0,0,3,58,0,0,33,61],[0,0,0,10,3,0,0,41,0,0,0,64,0,48,4,63,0,0,0,100,1,48,0,57,0,0,3,193,2,0,0,65],[0,0,0,0,0,33,4,53,0,0,0,68,1,48,0,57,0,0,3,194,2,0,0,65,0,0,0,0,0,33,4,53],[0,0,0,36,1,48,0,57,0,0,0,38,2,0,0,57,0,0,0,0,0,33,4,53,0,0,3,131,1,0,0,65],[0,0,0,0,0,19,4,53,0,0,0,4,1,48,0,57,0,0,0,3,2,0,0,41,0,0,0,0,0,33,4,53],[0,0,0,9,1,0,0,41,0,0,3,195,1,16,1,199,0,0,13,216,0,1,4,48,0,0,0,0,0,1,4,47],[0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57,0,0,3,169,3,0,0,65,0,0,0,0,0,50,4,53],[0,0,0,36,2,16,0,57,0,0,0,27,3,0,0,57,0,0,2,99,0,0,1,61,0,0,0,64,1,0,4,61],[0,0,3,171,2,16,0,156,0,0,3,58,0,0,33,61,0,0,0,96,2,16,0,57,0,0,0,64,0,32,4,63],[0,0,3,172,2,0,0,65,0,0,0,0,2,33,4,54,0,0,0,64,4,0,4,61,0,0,3,173,3,64,0,156],[0,0,3,58,0,0,33,61,0,0,0,128,3,64,0,57,0,0,0,64,0,48,4,63,0,0,0,96,3,64,0,57],[0,0,3,174,5,0,0,65,0,0,0,0,0,83,4,53,0,0,0,64,3,64,0,57,0,0,3,175,5,0,0,65],[0,0,0,0,0,83,4,53,0,0,0,32,3,64,0,57,0,0,3,176,5,0,0,65,0,0,0,0,0,83,4,53],[0,0,0,65,3,0,0,57,0,9,0,0,0,3,0,29,0,0,0,0,0,52,4,53,0,0,0,64,3,16,0,57],[0,0,3,177,5,0,0,65,0,0,0,0,0,83,4,53,0,0,0,0,0,66,4,53,0,0,0,64,4,0,4,61],[0,10,0,0,0,4,0,29,0,0,3,171,4,64,0,156,0,0,3,58,0,0,33,61,0,0,0,10,5,0,0,41],[0,0,0,96,4,80,0,57,0,0,0,64,0,64,4,63,0,0,3,178,4,0,0,65,0,0,0,0,4,69,4,54],[0,8,0,0,0,4,0,29,0,0,0,64,4,0,4,61,0,0,3,173,5,64,0,156,0,0,3,58,0,0,33,61],[0,0,0,128,5,64,0,57,0,0,0,64,0,80,4,63,0,0,0,96,5,64,0,57,0,0,3,174,6,0,0,65],[0,0,0,0,0,101,4,53,0,0,0,64,5,64,0,57,0,0,3,179,6,0,0,65,0,0,0,0,0,101,4,53],[0,0,0,32,5,64,0,57,0,0,3,180,6,0,0,65,0,0,0,0,0,101,4,53,0,0,0,9,5,0,0,41],[0,0,0,0,0,84,4,53,0,0,0,10,5,0,0,41,0,0,0,64,6,80,0,57,0,0,3,181,5,0,0,65],[0,7,0,0,0,6,0,29,0,0,0,0,0,86,4,53,0,0,0,8,5,0,0,41,0,0,0,0,0,69,4,53],[0,0,0,0,2,2,4,51,0,0,0,0,84,2,4,52,0,0,0,65,4,64,0,140,0,0,5,32,0,0,193,61],[0,0,0,65,4,32,0,57,0,0,0,0,4,4,4,51,0,0,0,255,4,64,1,143,0,0,0,27,6,64,0,138],[0,0,0,1,6,96,0,140,0,0,5,32,0,0,33,61,0,0,0,0,3,3,4,51,0,6,0,0,0,3,0,29],[0,0,0,0,1,1,4,51,0,0,0,0,3,5,4,51,0,0,0,64,2,32,0,57,0,0,0,0,2,2,4,51],[0,0,0,64,5,0,4,61,0,0,0,96,6,80,0,57,0,0,0,0,0,38,4,53,0,0,0,64,2,80,0,57],[0,0,0,0,0,50,4,53,0,0,0,32,2,80,0,57,0,0,0,0,0,66,4,53,0,0,0,0,0,21,4,53],[0,0,0,0,0,0,4,53,0,0,3,119,1,0,0,65,0,0,0,0,2,0,4,20,0,0,3,119,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,3,119,3,80,0,156,0,0,0,0,5,1,128,25,0,0,0,64,1,80,2,16],[0,0,0,192,2,32,2,16,0,0,0,0,1,18,1,159,0,0,3,182,1,16,1,199,0,0,0,1,2,0,0,57],[13,214,13,209,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,3,119,3,48,1,151],[0,0,0,32,4,48,0,140,0,0,0,0,4,3,0,25,0,0,0,32,4,0,128,57,0,0,0,31,5,64,1,143],[0,0,0,5,4,64,2,114,0,0,6,14,0,0,97,61,0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16],[0,0,0,0,8,113,3,79,0,0,0,0,8,8,4,59,0,0,0,0,0,135,4,53,0,0,0,1,6,96,0,57],[0,0,0,0,7,70,0,75,0,0,6,7,0,0,65,61,0,0,0,0,6,5,0,75,0,0,6,28,0,0,97,61],[0,0,0,3,5,80,2,16,0,0,0,5,4,64,2,16,0,0,0,0,6,4,4,51,0,0,0,0,6,86,1,207],[0,0,0,0,6,86,2,47,0,0,0,0,7,65,3,79,0,0,0,0,7,7,4,59,0,0,1,0,5,80,0,137],[0,0,0,0,7,87,2,47,0,0,0,0,5,87,1,207,0,0,0,0,5,101,1,159,0,0,0,0,0,84,4,53],[0,1,0,0,0,3,0,31,0,3,0,0,0,1,3,85,0,0,0,1,2,32,1,144,0,0,7,64,0,0,97,61],[0,0,0,0,1,0,4,51,0,0,0,6,1,16,1,79,0,0,3,130,1,16,1,152,0,0,5,32,0,0,193,61],[0,0,0,8,1,0,0,41,0,0,0,0,1,1,4,51,0,0,0,0,50,1,4,52,0,0,0,65,2,32,0,140],[0,0,5,32,0,0,193,61,0,0,0,65,2,16,0,57,0,0,0,0,2,2,4,51,0,0,0,255,2,32,1,143],[0,0,0,27,4,32,0,138,0,0,0,1,4,64,0,140,0,0,5,32,0,0,33,61,0,0,0,7,4,0,0,41],[0,0,0,0,4,4,4,51,0,8,0,0,0,4,0,29,0,0,0,10,4,0,0,41,0,0,0,0,4,4,4,51],[0,0,0,0,3,3,4,51,0,0,0,64,1,16,0,57,0,0,0,0,1,1,4,51,0,0,0,64,5,0,4,61],[0,0,0,96,6,80,0,57,0,0,0,0,0,22,4,53,0,0,0,64,1,80,0,57,0,0,0,0,0,49,4,53],[0,0,0,32,1,80,0,57,0,0,0,0,0,33,4,53,0,0,0,0,0,69,4,53,0,0,0,0,0,0,4,53],[0,0,3,119,1,0,0,65,0,0,0,0,2,0,4,20,0,0,3,119,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,3,119,3,80,0,156,0,0,0,0,5,1,128,25,0,0,0,64,1,80,2,16,0,0,0,192,2,32,2,16],[0,0,0,0,1,18,1,159,0,0,3,182,1,16,1,199,0,0,0,1,2,0,0,57,13,214,13,209,0,0,4,15],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,3,119,3,48,1,151,0,0,0,32,4,48,0,140],[0,0,0,0,4,3,0,25,0,0,0,32,4,0,128,57,0,0,0,31,5,64,1,143,0,0,0,5,4,64,2,114],[0,0,6,93,0,0,97,61,0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16,0,0,0,0,8,113,3,79],[0,0,0,0,8,8,4,59,0,0,0,0,0,135,4,53,0,0,0,1,6,96,0,57,0,0,0,0,7,70,0,75],[0,0,6,86,0,0,65,61,0,0,0,0,6,5,0,75,0,0,6,107,0,0,97,61,0,0,0,3,5,80,2,16],[0,0,0,5,4,64,2,16,0,0,0,0,6,4,4,51,0,0,0,0,6,86,1,207,0,0,0,0,6,86,2,47],[0,0,0,0,7,65,3,79,0,0,0,0,7,7,4,59,0,0,1,0,5,80,0,137,0,0,0,0,7,87,2,47],[0,0,0,0,5,87,1,207,0,0,0,0,5,101,1,159,0,0,0,0,0,84,4,53,0,1,0,0,0,3,0,31],[0,3,0,0,0,1,3,85,0,0,0,1,2,32,1,144,0,0,7,93,0,0,97,61,0,0,0,0,1,0,4,51],[0,0,0,8,1,16,1,79,0,0,3,130,1,16,1,152,0,0,5,32,0,0,193,61,0,0,0,64,1,0,4,61],[0,0,3,171,2,16,0,156,0,0,3,58,0,0,33,61,0,0,0,96,2,16,0,57,0,0,0,64,0,32,4,63],[0,0,0,0,5,1,4,54,0,0,0,64,2,0,4,61,0,0,3,173,3,32,0,156,0,0,3,58,0,0,33,61],[0,0,0,128,3,32,0,57,0,0,0,64,0,48,4,63,0,0,0,96,3,32,0,57,0,0,3,174,4,0,0,65],[0,0,0,0,0,67,4,53,0,0,0,64,3,32,0,57,0,0,3,183,4,0,0,65,0,0,0,0,0,67,4,53],[0,0,0,32,4,32,0,57,0,0,3,184,6,0,0,65,0,0,0,0,0,100,4,53,0,0,0,9,6,0,0,41],[0,0,0,0,0,98,4,53,0,0,0,64,6,16,0,57,0,0,3,185,7,0,0,65,0,0,0,0,0,118,4,53],[0,0,0,0,0,37,4,53,0,0,0,0,5,2,4,51,0,0,0,65,5,80,0,140,0,0,5,32,0,0,193,61],[0,0,0,65,2,32,0,57,0,0,0,0,2,2,4,51,0,0,0,255,2,32,1,143,0,0,0,27,5,32,0,138],[0,0,0,1,5,80,0,140,0,0,5,32,0,0,33,61,0,0,0,0,1,1,4,51,0,0,0,0,4,4,4,51],[0,0,0,0,3,3,4,51,0,0,0,64,5,0,4,61,0,0,0,96,6,80,0,57,0,0,0,0,0,54,4,53],[0,0,0,64,3,80,0,57,0,0,0,0,0,67,4,53,0,0,0,32,3,80,0,57,0,0,0,0,0,35,4,53],[0,0,0,0,0,21,4,53,0,0,0,0,0,0,4,53,0,0,3,119,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,3,119,3,32,0,156,0,0,0,0,2,1,128,25,0,0,3,119,3,80,0,156,0,0,0,0,5,1,128,25],[0,0,0,64,1,80,2,16,0,0,0,192,2,32,2,16,0,0,0,0,1,18,1,159,0,0,3,182,1,16,1,199],[0,0,0,1,2,0,0,57,13,214,13,209,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,0,3,119,3,48,1,151,0,0,0,32,4,48,0,140,0,0,0,0,4,3,0,25,0,0,0,32,4,0,128,57],[0,0,0,31,5,64,1,143,0,0,0,5,4,64,2,114,0,0,6,191,0,0,97,61,0,0,0,0,6,0,0,25],[0,0,0,5,7,96,2,16,0,0,0,0,8,113,3,79,0,0,0,0,8,8,4,59,0,0,0,0,0,135,4,53],[0,0,0,1,6,96,0,57,0,0,0,0,7,70,0,75,0,0,6,184,0,0,65,61,0,0,0,0,6,5,0,75],[0,0,6,205,0,0,97,61,0,0,0,3,5,80,2,16,0,0,0,5,4,64,2,16,0,0,0,0,6,4,4,51],[0,0,0,0,6,86,1,207,0,0,0,0,6,86,2,47,0,0,0,0,7,65,3,79,0,0,0,0,7,7,4,59],[0,0,1,0,5,80,0,137,0,0,0,0,7,87,2,47,0,0,0,0,5,87,1,207,0,0,0,0,5,101,1,159],[0,0,0,0,0,84,4,53,0,1,0,0,0,3,0,31,0,3,0,0,0,1,3,85,0,0,0,1,2,32,1,144],[0,0,7,122,0,0,97,61,0,0,0,0,1,0,4,51,0,0,3,130,1,16,1,151,0,0,3,185,1,16,0,156],[0,0,5,32,0,0,193,61,0,0,0,64,1,0,4,61,0,0,3,171,2,16,0,156,0,0,3,58,0,0,33,61],[0,0,0,96,2,16,0,57,0,0,0,64,0,32,4,63,0,0,3,186,2,0,0,65,0,0,0,0,5,33,4,54],[0,0,0,64,2,0,4,61,0,0,3,173,3,32,0,156,0,0,3,58,0,0,33,61,0,0,0,128,3,32,0,57],[0,0,0,64,0,48,4,63,0,0,0,96,3,32,0,57,0,0,3,187,4,0,0,65,0,0,0,0,0,67,4,53],[0,0,0,64,3,32,0,57,0,0,3,188,4,0,0,65,0,0,0,0,0,67,4,53,0,0,0,32,4,32,0,57],[0,0,3,189,6,0,0,65,0,0,0,0,0,100,4,53,0,0,0,9,6,0,0,41,0,0,0,0,0,98,4,53],[0,0,0,0,0,37,4,53,0,0,0,64,5,16,0,57,0,0,0,0,0,5,4,53,0,0,0,0,5,2,4,51],[0,0,0,65,5,80,0,140,0,0,5,32,0,0,193,61,0,0,0,65,2,32,0,57,0,0,0,0,2,2,4,51],[0,0,0,255,2,32,1,143,0,0,0,27,5,32,0,138,0,0,0,1,5,80,0,140,0,0,5,32,0,0,33,61],[0,0,0,0,1,1,4,51,0,0,0,0,4,4,4,51,0,0,0,0,3,3,4,51,0,0,0,64,5,0,4,61],[0,0,0,96,6,80,0,57,0,0,0,0,0,54,4,53,0,0,0,64,3,80,0,57,0,0,0,0,0,67,4,53],[0,0,0,32,3,80,0,57,0,0,0,0,0,35,4,53,0,0,0,0,0,21,4,53,0,0,0,0,0,0,4,53],[0,0,3,119,1,0,0,65,0,0,0,0,2,0,4,20,0,0,3,119,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,3,119,3,80,0,156,0,0,0,0,5,1,128,25,0,0,0,64,1,80,2,16,0,0,0,192,2,32,2,16],[0,0,0,0,1,18,1,159,0,0,3,182,1,16,1,199,0,0,0,1,2,0,0,57,13,214,13,209,0,0,4,15],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,3,119,3,48,1,151,0,0,0,32,4,48,0,140],[0,0,0,0,4,3,0,25,0,0,0,32,4,0,128,57,0,0,0,31,5,64,1,143,0,0,0,5,4,64,2,114],[0,0,7,33,0,0,97,61,0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16,0,0,0,0,8,113,3,79],[0,0,0,0,8,8,4,59,0,0,0,0,0,135,4,53,0,0,0,1,6,96,0,57,0,0,0,0,7,70,0,75],[0,0,7,26,0,0,65,61,0,0,0,0,6,5,0,75,0,0,7,47,0,0,97,61,0,0,0,3,5,80,2,16],[0,0,0,5,4,64,2,16,0,0,0,0,6,4,4,51,0,0,0,0,6,86,1,207,0,0,0,0,6,86,2,47],[0,0,0,0,7,65,3,79,0,0,0,0,7,7,4,59,0,0,1,0,5,80,0,137,0,0,0,0,7,87,2,47],[0,0,0,0,5,87,1,207,0,0,0,0,5,101,1,159,0,0,0,0,0,84,4,53,0,1,0,0,0,3,0,31],[0,3,0,0,0,1,3,85,0,0,0,1,2,32,1,144,0,0,7,151,0,0,97,61,0,0,0,0,1,0,4,51],[0,0,3,130,1,16,1,152,0,0,5,32,0,0,193,61,0,0,0,0,3,0,4,22,0,0,3,119,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,3,119,4,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,0,0,2,3,0,75,0,0,7,180,0,0,193,61,0,0,3,190,2,0,0,65,0,0,7,184,0,0,1,61],[0,0,0,64,2,0,4,61,0,0,0,31,4,48,1,143,0,0,0,5,5,48,2,114,0,0,7,77,0,0,97,61],[0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16,0,0,0,0,8,114,0,25,0,0,0,0,7,113,3,79],[0,0,0,0,7,7,4,59,0,0,0,0,0,120,4,53,0,0,0,1,6,96,0,57,0,0,0,0,7,86,0,75],[0,0,7,69,0,0,65,61,0,0,0,0,6,4,0,75,0,0,7,92,0,0,97,61,0,0,0,5,5,80,2,16],[0,0,0,0,1,81,3,79,0,0,0,0,5,82,0,25,0,0,0,3,4,64,2,16,0,0,0,0,6,5,4,51],[0,0,0,0,6,70,1,207,0,0,0,0,6,70,2,47,0,0,0,0,1,1,4,59,0,0,1,0,4,64,0,137],[0,0,0,0,1,65,2,47,0,0,0,0,1,65,1,207,0,0,0,0,1,97,1,159,0,0,0,0,0,21,4,53],[0,0,4,55,0,0,1,61,0,0,0,64,2,0,4,61,0,0,0,31,4,48,1,143,0,0,0,5,5,48,2,114],[0,0,7,106,0,0,97,61,0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16,0,0,0,0,8,114,0,25],[0,0,0,0,7,113,3,79,0,0,0,0,7,7,4,59,0,0,0,0,0,120,4,53,0,0,0,1,6,96,0,57],[0,0,0,0,7,86,0,75,0,0,7,98,0,0,65,61,0,0,0,0,6,4,0,75,0,0,7,121,0,0,97,61],[0,0,0,5,5,80,2,16,0,0,0,0,1,81,3,79,0,0,0,0,5,82,0,25,0,0,0,3,4,64,2,16],[0,0,0,0,6,5,4,51,0,0,0,0,6,70,1,207,0,0,0,0,6,70,2,47,0,0,0,0,1,1,4,59],[0,0,1,0,4,64,0,137,0,0,0,0,1,65,2,47,0,0,0,0,1,65,1,207,0,0,0,0,1,97,1,159],[0,0,0,0,0,21,4,53,0,0,4,55,0,0,1,61,0,0,0,64,2,0,4,61,0,0,0,31,4,48,1,143],[0,0,0,5,5,48,2,114,0,0,7,135,0,0,97,61,0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16],[0,0,0,0,8,114,0,25,0,0,0,0,7,113,3,79,0,0,0,0,7,7,4,59,0,0,0,0,0,120,4,53],[0,0,0,1,6,96,0,57,0,0,0,0,7,86,0,75,0,0,7,127,0,0,65,61,0,0,0,0,6,4,0,75],[0,0,7,150,0,0,97,61,0,0,0,5,5,80,2,16,0,0,0,0,1,81,3,79,0,0,0,0,5,82,0,25],[0,0,0,3,4,64,2,16,0,0,0,0,6,5,4,51,0,0,0,0,6,70,1,207,0,0,0,0,6,70,2,47],[0,0,0,0,1,1,4,59,0,0,1,0,4,64,0,137,0,0,0,0,1,65,2,47,0,0,0,0,1,65,1,207],[0,0,0,0,1,97,1,159,0,0,0,0,0,21,4,53,0,0,4,55,0,0,1,61,0,0,0,64,2,0,4,61],[0,0,0,31,4,48,1,143,0,0,0,5,5,48,2,114,0,0,7,164,0,0,97,61,0,0,0,0,6,0,0,25],[0,0,0,5,7,96,2,16,0,0,0,0,8,114,0,25,0,0,0,0,7,113,3,79,0,0,0,0,7,7,4,59],[0,0,0,0,0,120,4,53,0,0,0,1,6,96,0,57,0,0,0,0,7,86,0,75,0,0,7,156,0,0,65,61],[0,0,0,0,6,4,0,75,0,0,7,179,0,0,97,61,0,0,0,5,5,80,2,16,0,0,0,0,1,81,3,79],[0,0,0,0,5,82,0,25,0,0,0,3,4,64,2,16,0,0,0,0,6,5,4,51,0,0,0,0,6,70,1,207],[0,0,0,0,6,70,2,47,0,0,0,0,1,1,4,59,0,0,1,0,4,64,0,137,0,0,0,0,1,65,2,47],[0,0,0,0,1,65,1,207,0,0,0,0,1,97,1,159,0,0,0,0,0,21,4,53,0,0,4,55,0,0,1,61],[0,0,3,150,1,16,1,199,0,0,128,9,2,0,0,57,0,0,3,190,4,0,0,65,0,0,0,0,5,0,0,25],[13,214,13,204,0,0,4,15,0,3,0,0,0,1,3,85,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,1,3,119,0,48,1,157,0,0,3,119,5,48,1,152,0,0,7,231,0,0,97,61,0,0,0,63,3,80,0,57],[0,0,3,191,3,48,1,151,0,0,0,64,4,0,4,61,0,0,0,0,3,52,0,25,0,0,0,0,6,67,0,75],[0,0,0,0,6,0,0,25,0,0,0,1,6,0,64,57,0,0,3,127,7,48,0,156,0,0,3,58,0,0,33,61],[0,0,0,1,6,96,1,144,0,0,3,58,0,0,193,61,0,0,0,64,0,48,4,63,0,0,0,31,3,80,1,143],[0,0,0,0,4,84,4,54,0,0,0,5,5,80,2,114,0,0,7,216,0,0,97,61,0,0,0,0,6,0,0,25],[0,0,0,5,7,96,2,16,0,0,0,0,8,116,0,25,0,0,0,0,7,113,3,79,0,0,0,0,7,7,4,59],[0,0,0,0,0,120,4,53,0,0,0,1,6,96,0,57,0,0,0,0,7,86,0,75,0,0,7,208,0,0,65,61],[0,0,0,0,6,3,0,75,0,0,7,231,0,0,97,61,0,0,0,5,5,80,2,16,0,0,0,0,1,81,3,79],[0,0,0,0,4,84,0,25,0,0,0,3,3,48,2,16,0,0,0,0,5,4,4,51,0,0,0,0,5,53,1,207],[0,0,0,0,5,53,2,47,0,0,0,0,1,1,4,59,0,0,1,0,3,48,0,137,0,0,0,0,1,49,2,47],[0,0,0,0,1,49,1,207,0,0,0,0,1,81,1,159,0,0,0,0,0,20,4,53,0,0,0,1,1,32,1,144],[0,0,7,237,0,0,97,61,0,0,3,129,1,0,0,65,0,0,0,0,0,1,4,27,0,0,0,0,1,0,0,25],[0,0,13,215,0,1,4,46,0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57,0,0,3,192,3,0,0,65],[0,0,0,0,0,50,4,53,0,0,0,36,2,16,0,57,0,0,0,20,3,0,0,57,0,0,2,99,0,0,1,61],[0,0,3,231,2,16,0,156,0,0,7,249,0,0,129,61,0,0,0,96,1,16,0,57,0,0,0,64,0,16,4,63],[0,0,0,0,0,1,4,45,0,0,3,199,1,0,0,65,0,0,0,0,0,16,4,53,0,0,0,65,1,0,0,57],[0,0,0,4,0,16,4,63,0,0,3,200,1,0,0,65,0,0,13,216,0,1,4,48,0,1,0,0,0,0,0,2],[0,0,0,0,1,0,0,50,0,0,8,204,0,0,193,61,0,0,3,134,1,0,0,65,0,0,0,0,0,16,4,57],[0,0,3,119,1,0,0,65,0,0,0,0,2,0,4,20,0,0,3,119,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,192,1,32,2,16,0,0,3,135,1,16,1,199,0,0,128,11,2,0,0,57,13,214,13,209,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,8,197,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75],[0,0,8,62,0,0,97,61,0,0,3,134,1,0,0,65,0,0,0,0,0,16,4,57,0,0,3,119,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,3,119,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,3,135,1,16,1,199,0,0,128,11,2,0,0,57,13,214,13,209,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,8,197,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75,0,0,8,198,0,0,97,61],[0,0,3,134,1,0,0,65,0,0,0,0,0,16,4,57,0,0,3,119,3,0,0,65,0,0,0,0,1,0,4,20],[0,0,3,119,2,16,0,156,0,0,0,0,1,3,128,25,0,0,0,192,1,16,2,16,0,0,3,135,1,16,1,199],[0,0,128,11,2,0,0,57,13,214,13,209,0,0,4,15,0,0,0,1,2,32,1,144,0,0,8,197,0,0,97,61],[0,0,0,0,1,1,4,59,0,1,0,0,0,1,0,29,0,0,3,134,1,0,0,65,0,0,0,0,0,16,4,57],[0,0,0,0,1,0,4,20,0,0,3,119,2,16,0,156,0,0,3,119,1,0,128,65,0,0,0,192,1,16,2,16],[0,0,3,135,1,16,1,199,0,0,128,11,2,0,0,57,13,214,13,209,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,8,197,0,0,97,61,0,0,0,1,2,0,0,41,0,0,3,232,2,32,0,57,0,0,0,0,1,1,4,59],[0,0,0,0,1,33,0,75,0,0,8,198,0,0,33,61,0,0,3,136,1,0,0,65,0,0,0,0,0,16,4,57],[0,0,3,119,3,0,0,65,0,0,0,0,1,0,4,20,0,0,3,119,2,16,0,156,0,0,0,0,1,3,128,25],[0,0,0,192,1,16,2,16,0,0,3,135,1,16,1,199,0,0,128,11,2,0,0,57,13,214,13,209,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,8,197,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,10,2,0,0,57],[0,0,0,0,0,18,4,27,0,0,3,137,1,0,0,65,0,0,0,0,0,16,4,57,0,0,0,0,1,0,4,20],[0,0,3,119,2,16,0,156,0,0,3,119,1,0,128,65,0,0,0,192,1,16,2,16,0,0,3,135,1,16,1,199],[0,0,128,11,2,0,0,57,13,214,13,209,0,0,4,15,0,0,0,1,2,32,1,144,0,0,8,197,0,0,97,61],[0,0,0,0,1,1,4,59,0,0,0,9,2,0,0,57,0,0,0,0,3,2,4,26,0,0,3,138,3,48,1,151],[0,0,0,0,1,19,1,159,0,0,0,0,0,18,4,27,0,0,3,139,1,0,0,65,0,0,0,0,0,16,4,57],[0,0,3,119,3,0,0,65,0,0,0,0,1,0,4,20,0,0,3,119,2,16,0,156,0,0,0,0,1,3,128,25],[0,0,0,192,1,16,2,16,0,0,3,135,1,16,1,199,0,0,128,11,2,0,0,57,13,214,13,209,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,8,197,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,8,2,0,0,57],[0,0,0,0,0,18,4,27,0,0,3,140,1,0,0,65,0,0,0,0,0,16,4,57,0,0,0,0,1,0,4,20],[0,0,3,119,2,16,0,156,0,0,3,119,1,0,128,65,0,0,0,192,1,16,2,16,0,0,3,135,1,16,1,199],[0,0,128,11,2,0,0,57,13,214,13,209,0,0,4,15,0,0,0,1,2,32,1,144,0,0,8,197,0,0,97,61],[0,0,0,0,1,1,4,59,0,0,0,7,2,0,0,57,0,0,0,0,0,18,4,27,0,0,3,141,1,0,0,65],[0,0,0,0,0,16,4,57,0,0,3,119,3,0,0,65,0,0,0,0,1,0,4,20,0,0,3,119,2,16,0,156],[0,0,0,0,1,3,128,25,0,0,0,192,1,16,2,16,0,0,3,135,1,16,1,199,0,0,128,11,2,0,0,57],[13,214,13,209,0,0,4,15,0,0,0,1,2,32,1,144,0,0,8,197,0,0,97,61,0,0,0,0,1,1,4,59],[0,0,0,6,2,0,0,57,0,0,0,0,0,18,4,27,0,0,3,142,1,0,0,65,0,0,0,0,0,16,4,57],[0,0,0,0,1,0,4,20,0,0,3,119,2,16,0,156,0,0,3,119,1,0,128,65,0,0,0,192,1,16,2,16],[0,0,3,135,1,16,1,199,0,0,128,11,2,0,0,57,13,214,13,209,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,8,197,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,3,2,0,0,57,0,0,0,0,0,18,4,27],[0,0,3,143,1,0,0,65,0,0,0,0,0,16,4,57,0,0,3,119,3,0,0,65,0,0,0,0,1,0,4,20],[0,0,3,119,2,16,0,156,0,0,0,0,1,3,128,25,0,0,0,192,1,16,2,16,0,0,3,135,1,16,1,199],[0,0,128,11,2,0,0,57,13,214,13,209,0,0,4,15,0,0,0,1,2,32,1,144,0,0,8,197,0,0,97,61],[0,0,0,0,1,1,4,59,0,0,3,130,1,16,1,151,0,0,0,4,2,0,0,57,0,0,0,0,3,2,4,26],[0,0,3,138,3,48,1,151,0,0,0,0,1,19,1,159,0,0,0,0,0,18,4,27,0,0,0,2,1,0,0,57],[0,0,0,0,2,1,4,26,0,0,3,144,2,32,1,151,0,0,0,2,3,0,3,103,0,0,0,0,3,3,4,59],[0,0,0,224,3,48,2,112,0,0,0,0,2,50,1,159,0,0,0,0,0,33,4,27,0,0,3,134,1,0,0,65],[0,0,0,0,0,16,4,57,0,0,0,0,1,0,4,20,0,0,3,119,2,16,0,156,0,0,3,119,1,0,128,65],[0,0,0,192,1,16,2,16,0,0,3,135,1,16,1,199,0,0,128,11,2,0,0,57,13,214,13,209,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,8,197,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,5,2,0,0,57],[0,0,0,0,0,18,4,27,0,0,0,11,1,0,0,57,0,0,0,0,2,0,4,22,0,0,0,0,0,33,4,27],[0,0,0,0,0,1,4,45,0,0,0,0,0,1,4,47,0,0,3,199,1,0,0,65,0,0,0,0,0,16,4,53],[0,0,0,17,1,0,0,57,0,0,0,4,0,16,4,63,0,0,3,200,1,0,0,65,0,0,13,216,0,1,4,48],[0,0,0,0,1,0,0,25,0,0,13,216,0,1,4,48,0,8,0,0,0,0,0,2,0,0,0,0,1,0,4,20],[0,1,0,0,0,1,0,29,0,0,0,64,5,0,4,61,0,0,3,232,1,80,0,156,0,0,10,130,0,0,129,61],[0,0,0,160,1,80,0,57,0,0,0,64,0,16,4,63,0,0,0,128,1,80,0,57,0,0,3,146,2,0,0,65],[0,0,0,0,0,33,4,53,0,0,0,96,1,80,0,57,0,0,3,147,2,0,0,65,0,0,0,0,0,33,4,53],[0,0,0,64,1,80,0,57,0,0,3,148,2,0,0,65,0,0,0,0,0,33,4,53,0,0,0,122,1,0,0,57],[0,0,0,0,9,21,4,54,0,0,3,149,1,0,0,65,0,0,0,0,0,25,4,53,0,3,128,16,0,0,0,61],[0,0,0,0,3,0,0,25,0,8,0,0,0,5,0,29,0,6,0,0,0,3,0,29,0,0,3,119,1,144,0,156],[0,0,3,119,4,0,0,65,0,0,0,0,9,4,128,25,0,0,0,64,1,144,2,16,0,0,0,0,2,5,4,51],[0,0,3,119,3,32,0,156,0,0,0,0,2,4,128,25,0,0,0,96,2,32,2,16,0,0,0,0,1,18,1,159],[0,0,0,0,2,0,4,20,0,0,3,119,3,32,0,156,0,0,0,0,2,4,128,25,0,0,0,192,2,32,2,16],[0,0,0,0,1,18,1,159,0,0,3,150,1,16,1,199,0,0,0,3,2,0,0,41,13,214,13,209,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,10,138,0,0,97,61,0,0,0,64,2,0,4,61,0,0,0,0,1,1,4,59],[0,7,0,0,0,1,0,29,0,0,0,8,6,0,0,41,0,0,0,0,1,6,4,51,0,0,0,0,3,1,0,75],[0,0,9,9,0,0,97,61,0,0,0,0,3,0,0,25,0,0,0,0,4,35,0,25,0,0,0,32,3,48,0,57],[0,0,0,0,5,99,0,25,0,0,0,0,5,5,4,51,0,0,0,0,0,84,4,53,0,0,0,0,4,19,0,75],[0,0,9,2,0,0,65,61,0,0,0,0,3,33,0,25,0,0,0,0,0,3,4,53,0,0,3,119,3,32,0,156],[0,0,3,119,4,0,0,65,0,0,0,0,2,4,128,25,0,0,0,64,2,32,2,16,0,0,3,119,3,16,0,156],[0,0,0,0,1,4,128,25,0,0,0,96,1,16,2,16,0,0,0,0,1,33,1,159,0,0,0,0,2,0,4,20],[0,0,3,119,3,32,0,156,0,0,0,0,2,4,128,25,0,0,0,192,2,32,2,16,0,0,0,0,1,18,1,159],[0,0,0,2,2,0,0,57,13,214,13,209,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,0,3,119,3,48,1,151,0,0,0,32,4,48,0,140,0,0,0,0,5,3,0,25,0,0,0,32,5,0,128,57],[0,0,0,5,4,80,2,114,0,0,9,42,0,0,97,61,0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16],[0,0,0,0,8,113,3,79,0,0,0,0,8,8,4,59,0,0,0,0,0,135,4,53,0,0,0,1,6,96,0,57],[0,0,0,0,7,70,0,75,0,0,9,35,0,0,65,61,0,0,0,31,5,80,1,144,0,0,9,56,0,0,97,61],[0,0,0,3,5,80,2,16,0,0,0,5,4,64,2,16,0,0,0,0,6,4,4,51,0,0,0,0,6,86,1,207],[0,0,0,0,6,86,2,47,0,0,0,0,7,65,3,79,0,0,0,0,7,7,4,59,0,0,1,0,5,80,0,137],[0,0,0,0,7,87,2,47,0,0,0,0,5,87,1,207,0,0,0,0,5,101,1,159,0,0,0,0,0,84,4,53],[0,1,0,0,0,3,0,31,0,3,0,0,0,1,3,85,0,0,0,64,10,0,4,61,0,0,0,1,2,32,1,144],[0,0,10,140,0,0,97,61,0,0,0,0,2,0,4,51,0,0,0,32,12,160,0,57,0,0,0,8,6,0,0,41],[0,0,0,0,1,6,4,51,0,0,0,0,3,1,0,75,0,0,9,75,0,0,97,61,0,0,0,0,3,0,0,25],[0,0,0,0,4,195,0,25,0,0,0,32,3,48,0,57,0,0,0,0,5,99,0,25,0,0,0,0,5,5,4,51],[0,0,0,0,0,84,4,53,0,0,0,0,4,19,0,75,0,0,9,68,0,0,65,61,0,0,0,7,2,32,1,79],[0,0,0,0,3,193,0,25,0,0,0,0,0,35,4,53,0,0,0,32,3,16,0,57,0,0,0,0,0,58,4,53],[0,0,0,95,3,16,0,57,0,0,0,32,1,0,0,138,0,0,0,0,3,19,1,111,0,0,0,0,13,163,0,25],[0,0,0,0,3,61,0,75,0,0,0,0,3,0,0,25,0,0,0,1,3,0,64,57,0,0,3,127,4,208,0,156],[0,0,10,130,0,0,33,61,0,0,0,1,3,48,1,144,0,0,10,130,0,0,193,61,0,0,0,64,0,208,4,63],[0,0,0,12,11,0,0,57,0,0,0,0,3,11,4,26,0,0,3,127,4,48,0,156,0,0,10,130,0,0,33,61],[0,0,0,1,4,48,0,57,0,0,0,0,0,75,4,27,0,0,0,0,0,176,4,53,0,0,3,151,3,48,0,65],[0,0,0,0,0,35,4,27,0,0,0,0,4,11,4,26,0,0,0,0,3,4,0,75,0,0,10,134,0,0,97,61],[0,0,0,1,3,0,0,57,0,0,0,1,6,64,0,140,0,0,9,132,0,0,97,61,0,0,0,0,3,11,4,26],[0,0,0,0,4,99,0,75,0,0,10,124,0,0,161,61,0,0,0,1,4,96,0,138,0,0,0,1,5,64,2,112],[0,0,0,0,7,83,0,75,0,0,10,124,0,0,161,61,0,0,3,151,7,96,0,65,0,0,0,0,9,7,4,26],[0,0,0,0,0,176,4,53,0,0,3,151,6,80,0,65,0,0,0,0,8,6,4,26,0,0,0,0,9,137,0,75],[0,0,9,132,0,0,161,61,0,0,0,0,0,135,4,27,0,0,0,0,3,11,4,26,0,0,0,0,3,83,0,75],[0,0,10,124,0,0,161,61,0,0,0,0,0,38,4,27,0,0,0,2,3,64,0,140,0,0,0,0,6,5,0,25],[0,0,9,107,0,0,129,61,0,0,0,0,3,11,4,26,0,0,0,0,2,3,0,75,0,0,10,134,0,0,97,61],[0,0,0,1,2,48,0,138,0,0,0,0,2,35,1,112,0,0,9,144,0,0,193,61,0,0,0,13,2,0,0,57],[0,0,0,0,3,2,4,26,0,0,3,127,4,48,1,151,0,0,3,127,5,64,0,156,0,0,10,134,0,0,97,61],[0,0,3,152,3,48,1,151,0,0,0,1,4,64,0,57,0,0,0,0,3,52,1,159,0,0,0,0,0,50,4,27],[0,5,0,0,0,12,0,29,0,7,0,0,0,11,0,29,0,0,3,153,2,0,0,65,0,0,0,0,0,45,4,53],[0,0,0,4,2,208,0,57,0,0,0,32,3,0,0,57,0,2,0,0,0,3,0,29,0,0,0,0,0,50,4,53],[0,0,0,0,2,10,4,51,0,0,0,36,3,208,0,57,0,0,0,0,0,35,4,53,0,0,0,68,3,208,0,57],[0,0,0,0,4,2,0,75,0,0,9,166,0,0,97,61,0,0,0,0,4,0,0,25,0,0,0,0,5,52,0,25],[0,0,0,32,4,64,0,57,0,0,0,0,6,164,0,25,0,0,0,0,6,6,4,51,0,0,0,0,0,101,4,53],[0,0,0,0,5,36,0,75,0,0,9,159,0,0,65,61,0,8,0,0,0,10,0,29,0,0,0,0,3,50,0,25],[0,0,0,0,0,3,4,53,0,0,0,31,2,32,0,57,0,0,0,0,1,18,1,111,0,0,3,119,2,208,0,156],[0,0,3,119,4,0,0,65,0,0,0,0,2,4,0,25,0,0,0,0,2,13,64,25,0,0,0,64,2,32,2,16],[0,0,0,68,1,16,0,57,0,0,3,119,3,16,0,156,0,0,0,0,1,4,128,25,0,0,0,96,1,16,2,16],[0,0,0,0,1,33,1,159,0,0,0,0,2,0,4,20,0,0,3,119,3,32,0,156,0,0,0,0,2,4,128,25],[0,0,0,192,2,32,2,16,0,0,0,0,1,18,1,159,0,0,128,8,2,0,0,57,0,4,0,0,0,13,0,29],[13,214,13,204,0,0,4,15,0,0,0,4,12,0,0,41,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,0,3,119,3,48,1,151,0,0,0,32,4,48,0,140,0,0,0,0,4,3,0,25,0,0,0,32,4,0,128,57],[0,0,0,5,5,64,2,114,0,0,9,207,0,0,97,61,0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16],[0,0,0,0,8,124,0,25,0,0,0,0,7,113,3,79,0,0,0,0,7,7,4,59,0,0,0,0,0,120,4,53],[0,0,0,1,6,96,0,57,0,0,0,0,7,86,0,75,0,0,9,199,0,0,65,61,0,0,0,31,6,64,1,144],[0,0,0,7,11,0,0,41,0,0,0,5,9,0,0,41,0,0,9,224,0,0,97,61,0,0,0,5,5,80,2,16],[0,0,0,0,7,81,3,79,0,0,0,0,5,92,0,25,0,0,0,3,6,96,2,16,0,0,0,0,8,5,4,51],[0,0,0,0,8,104,1,207,0,0,0,0,8,104,2,47,0,0,0,0,7,7,4,59,0,0,1,0,6,96,0,137],[0,0,0,0,7,103,2,47,0,0,0,0,6,103,1,207,0,0,0,0,6,134,1,159,0,0,0,0,0,101,4,53],[0,1,0,0,0,3,0,31,0,3,0,0,0,1,3,85,0,0,0,1,2,32,1,144,0,0,0,8,10,0,0,41],[0,0,10,172,0,0,97,61,0,0,0,31,1,64,0,57,0,0,0,96,2,16,1,143,0,0,0,0,1,194,0,25],[0,0,0,0,2,33,0,75,0,0,0,0,2,0,0,25,0,0,0,1,2,0,64,57,0,0,3,127,4,16,0,156],[0,0,10,130,0,0,33,61,0,0,0,1,2,32,1,144,0,0,10,130,0,0,193,61,0,0,0,64,0,16,4,63],[0,0,0,32,2,48,0,140,0,0,10,138,0,0,65,61,0,0,0,6,3,0,0,41,0,0,0,2,2,48,0,140],[0,0,0,1,3,48,0,57,0,0,0,0,5,10,0,25,0,0,8,229,0,0,161,61,0,0,0,0,2,11,4,26],[0,0,0,0,3,2,0,75,0,0,10,207,0,0,97,61,0,0,3,154,3,32,0,65,0,0,0,0,4,3,4,26],[0,0,3,151,5,0,0,65,0,0,0,0,0,69,4,27,0,0,0,0,0,176,4,53,0,0,0,0,0,3,4,27],[0,0,0,1,3,32,0,138,0,0,0,0,0,59,4,27,0,0,0,2,2,48,0,140,0,0,10,55,0,0,65,61],[0,0,0,1,6,0,0,57,0,0,3,157,2,0,0,65,0,0,0,0,7,0,0,25,0,0,0,0,5,0,0,25],[0,0,0,2,8,112,0,57,0,0,0,0,4,56,0,75,0,0,0,0,4,6,0,25,0,0,10,19,0,0,129,61],[0,0,3,155,4,112,0,65,0,0,0,0,4,4,4,26,0,0,3,156,7,112,0,65,0,0,0,0,7,7,4,26],[0,0,0,0,4,71,0,75,0,0,0,0,4,6,0,25,0,0,0,0,4,8,64,25,0,0,0,0,6,67,0,75],[0,0,10,124,0,0,161,61,0,0,3,151,6,64,0,65,0,0,0,0,7,83,0,75,0,0,10,124,0,0,161,61],[0,0,0,0,7,6,4,26,0,0,0,0,0,176,4,53,0,0,3,151,8,80,0,65,0,0,0,0,5,8,4,26],[0,0,0,0,9,87,0,75,0,0,10,52,0,0,161,61,0,0,0,0,0,120,4,27,0,0,0,0,3,11,4,26],[0,0,0,0,3,67,0,75,0,0,10,124,0,0,161,61,0,0,0,0,0,86,4,27,0,0,0,0,3,4,0,75],[0,0,0,0,3,0,0,25,0,0,0,0,3,2,64,25,0,0,3,157,5,64,1,151,0,0,0,0,6,5,0,75],[0,0,0,0,6,0,0,25,0,0,0,0,6,2,32,25,0,0,3,157,5,80,0,156,0,0,0,0,6,3,192,25],[0,0,0,0,3,6,0,75,0,0,10,134,0,0,193,61,0,0,0,0,3,11,4,26,0,0,0,1,7,64,2,16],[0,0,0,1,6,112,1,191,0,0,0,0,5,54,0,75,0,0,0,0,5,4,0,25,0,0,10,8,0,0,65,61],[0,0,0,1,2,0,0,138,0,0,0,0,2,35,0,75,0,0,10,134,0,0,97,61,0,0,0,1,2,48,0,57],[0,0,0,0,2,50,1,112,0,0,10,67,0,0,193,61,0,0,0,13,2,0,0,57,0,0,0,0,3,2,4,26],[0,0,3,127,4,48,1,151,0,0,0,1,4,64,0,138,0,0,3,127,5,64,0,156,0,0,10,134,0,0,33,61],[0,0,3,152,3,48,1,151,0,0,0,0,3,52,1,159,0,0,0,0,0,50,4,27,0,0,0,0,3,0,4,20],[0,0,0,1,2,48,0,107,0,0,10,213,0,0,161,61,0,7,0,0,0,3,0,29,0,0,0,0,2,10,4,51],[0,0,0,0,3,2,0,75,0,0,10,82,0,0,97,61,0,0,0,0,3,0,0,25,0,0,0,0,4,19,0,25],[0,0,0,32,3,48,0,57,0,0,0,0,5,163,0,25,0,0,0,0,5,5,4,51,0,0,0,0,0,84,4,53],[0,0,0,0,4,35,0,75,0,0,10,75,0,0,65,61,0,0,0,0,3,18,0,25,0,0,0,0,0,3,4,53],[0,0,3,119,4,0,0,65,0,0,3,119,3,16,0,156,0,0,0,0,1,4,128,25,0,0,0,64,1,16,2,16],[0,0,3,119,3,32,0,156,0,0,0,0,2,4,128,25,0,0,0,96,2,32,2,16,0,0,0,0,1,18,1,159],[0,0,0,0,2,0,4,20,0,0,3,119,3,32,0,156,0,0,0,0,2,4,128,25,0,0,0,192,2,32,2,16],[0,0,0,0,1,18,1,159,0,0,3,150,1,16,1,199,0,0,128,16,2,0,0,57,13,214,13,209,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,10,138,0,0,97,61,0,0,0,7,3,0,0,41,0,0,0,1,2,48,0,105],[0,0,0,0,5,1,4,59,0,0,0,64,1,0,4,61,0,0,0,0,0,33,4,53,0,0,0,0,2,0,4,20],[0,0,3,119,3,32,0,156,0,0,3,119,4,0,0,65,0,0,0,0,2,4,128,25,0,0,3,119,3,16,0,156],[0,0,0,0,1,4,128,25,0,0,0,64,1,16,2,16,0,0,0,192,2,32,2,16,0,0,0,0,1,18,1,159],[0,0,3,160,1,16,1,199,0,0,128,13,2,0,0,57,0,0,0,2,3,0,0,57,0,0,3,161,4,0,0,65],[13,214,13,204,0,0,4,15,0,0,0,1,1,32,1,144,0,0,10,138,0,0,97,61,0,0,0,0,0,1,4,45],[0,0,3,199,1,0,0,65,0,0,0,0,0,16,4,53,0,0,0,50,1,0,0,57,0,0,0,4,0,16,4,63],[0,0,3,200,1,0,0,65,0,0,13,216,0,1,4,48,0,0,3,199,1,0,0,65,0,0,0,0,0,16,4,53],[0,0,0,65,1,0,0,57,0,0,10,127,0,0,1,61,0,0,3,199,1,0,0,65,0,0,0,0,0,16,4,53],[0,0,0,17,1,0,0,57,0,0,10,127,0,0,1,61,0,0,0,0,1,0,0,25,0,0,13,216,0,1,4,48],[0,0,0,31,2,48,1,143,0,0,0,5,4,48,2,114,0,0,10,152,0,0,97,61,0,0,0,0,5,0,0,25],[0,0,0,5,6,80,2,16,0,0,0,0,7,106,0,25,0,0,0,0,6,97,3,79,0,0,0,0,6,6,4,59],[0,0,0,0,0,103,4,53,0,0,0,1,5,80,0,57,0,0,0,0,6,69,0,75,0,0,10,144,0,0,65,61],[0,0,0,0,5,2,0,75,0,0,10,167,0,0,97,61,0,0,0,5,4,64,2,16,0,0,0,0,1,65,3,79],[0,0,0,0,4,74,0,25,0,0,0,3,2,32,2,16,0,0,0,0,5,4,4,51,0,0,0,0,5,37,1,207],[0,0,0,0,5,37,2,47,0,0,0,0,1,1,4,59,0,0,1,0,2,32,0,137,0,0,0,0,1,33,2,47],[0,0,0,0,1,33,1,207,0,0,0,0,1,81,1,159,0,0,0,0,0,20,4,53,0,0,3,119,1,0,0,65],[0,0,3,119,2,160,0,156,0,0,0,0,10,1,128,25,0,0,0,64,1,160,2,16,0,0,10,204,0,0,1,61],[0,0,0,64,2,0,4,61,0,0,0,31,4,48,1,143,0,0,0,5,5,48,2,114,0,0,10,185,0,0,97,61],[0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16,0,0,0,0,8,114,0,25,0,0,0,0,7,113,3,79],[0,0,0,0,7,7,4,59,0,0,0,0,0,120,4,53,0,0,0,1,6,96,0,57,0,0,0,0,7,86,0,75],[0,0,10,177,0,0,65,61,0,0,0,0,6,4,0,75,0,0,10,200,0,0,97,61,0,0,0,5,5,80,2,16],[0,0,0,0,1,81,3,79,0,0,0,0,5,82,0,25,0,0,0,3,4,64,2,16,0,0,0,0,6,5,4,51],[0,0,0,0,6,70,1,207,0,0,0,0,6,70,2,47,0,0,0,0,1,1,4,59,0,0,1,0,4,64,0,137],[0,0,0,0,1,65,2,47,0,0,0,0,1,65,1,207,0,0,0,0,1,97,1,159,0,0,0,0,0,21,4,53],[0,0,3,119,1,0,0,65,0,0,3,119,4,32,0,156,0,0,0,0,2,1,128,25,0,0,0,64,1,32,2,16],[0,0,0,96,2,48,2,16,0,0,0,0,1,33,1,159,0,0,13,216,0,1,4,48,0,0,0,68,2,16,0,57],[0,0,3,198,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,36,2,16,0,57,0,0,0,1,3,0,0,57],[0,0,10,218,0,0,1,61,0,0,0,68,2,16,0,57,0,0,3,158,3,0,0,65,0,0,0,0,0,50,4,53],[0,0,0,36,2,16,0,57,0,0,0,18,3,0,0,57,0,0,0,0,0,50,4,53,0,0,3,131,2,0,0,65],[0,0,0,0,0,33,4,53,0,0,0,4,2,16,0,57,0,0,0,2,3,0,0,41,0,0,0,0,0,50,4,53],[0,0,3,119,2,0,0,65,0,0,3,119,3,16,0,156,0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16],[0,0,3,159,1,16,1,199,0,0,13,216,0,1,4,48,0,1,0,0,0,0,0,2,0,0,0,64,7,0,4,61],[0,0,3,153,2,0,0,65,0,0,0,0,0,39,4,53,0,0,0,4,2,112,0,57,0,0,0,32,3,0,0,57],[0,0,0,0,0,50,4,53,0,0,0,0,2,1,4,51,0,0,0,36,3,112,0,57,0,0,0,0,0,35,4,53],[0,0,0,68,3,112,0,57,0,0,0,0,4,2,0,75,0,0,10,251,0,0,97,61,0,0,0,0,4,0,0,25],[0,0,0,0,5,52,0,25,0,0,0,32,4,64,0,57,0,0,0,0,6,20,0,25,0,0,0,0,6,6,4,51],[0,0,0,0,0,101,4,53,0,0,0,0,5,36,0,75,0,0,10,244,0,0,65,61,0,0,0,0,1,50,0,25],[0,0,0,0,0,1,4,53,0,0,0,31,1,32,0,57,0,0,0,32,2,0,0,138,0,0,0,0,1,33,1,111],[0,0,3,119,2,0,0,65,0,0,3,119,3,112,0,156,0,0,0,0,3,2,0,25,0,0,0,0,3,7,64,25],[0,0,0,64,3,48,2,16,0,0,0,68,1,16,0,57,0,0,3,119,4,16,0,156,0,0,0,0,1,2,128,25],[0,0,0,96,1,16,2,16,0,0,0,0,1,49,1,159,0,0,0,0,3,0,4,20,0,0,3,119,4,48,0,156],[0,0,0,0,3,2,128,25,0,0,0,192,2,48,2,16,0,0,0,0,1,18,1,159,0,0,128,8,2,0,0,57],[0,1,0,0,0,7,0,29,13,214,13,204,0,0,4,15,0,0,0,1,10,0,0,41,0,0,0,0,3,1,0,25],[0,0,0,96,3,48,2,112,0,0,3,119,3,48,1,151,0,0,0,32,4,48,0,140,0,0,0,0,4,3,0,25],[0,0,0,32,4,0,128,57,0,0,0,31,5,64,1,143,0,0,0,5,6,64,2,114,0,0,11,37,0,0,97,61],[0,0,0,0,7,0,0,25,0,0,0,5,8,112,2,16,0,0,0,0,9,138,0,25,0,0,0,0,8,129,3,79],[0,0,0,0,8,8,4,59,0,0,0,0,0,137,4,53,0,0,0,1,7,112,0,57,0,0,0,0,8,103,0,75],[0,0,11,29,0,0,65,61,0,0,0,0,7,5,0,75,0,0,11,52,0,0,97,61,0,0,0,5,6,96,2,16],[0,0,0,0,7,97,3,79,0,0,0,0,6,106,0,25,0,0,0,3,5,80,2,16,0,0,0,0,8,6,4,51],[0,0,0,0,8,88,1,207,0,0,0,0,8,88,2,47,0,0,0,0,7,7,4,59,0,0,1,0,5,80,0,137],[0,0,0,0,7,87,2,47,0,0,0,0,5,87,1,207,0,0,0,0,5,133,1,159,0,0,0,0,0,86,4,53],[0,1,0,0,0,3,0,31,0,3,0,0,0,1,3,85,0,0,0,1,2,32,1,144,0,0,11,70,0,0,97,61],[0,0,0,31,1,64,0,57,0,0,0,96,2,16,1,143,0,0,0,0,1,162,0,25,0,0,0,0,2,33,0,75],[0,0,0,0,2,0,0,25,0,0,0,1,2,0,64,57,0,0,3,127,4,16,0,156,0,0,11,105,0,0,33,61],[0,0,0,1,2,32,1,144,0,0,11,105,0,0,193,61,0,0,0,64,0,16,4,63,0,0,0,32,1,48,0,140],[0,0,11,111,0,0,65,61,0,0,0,0,0,1,4,45,0,0,0,64,2,0,4,61,0,0,0,31,4,48,1,143],[0,0,0,5,5,48,2,114,0,0,11,83,0,0,97,61,0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16],[0,0,0,0,8,114,0,25,0,0,0,0,7,113,3,79,0,0,0,0,7,7,4,59,0,0,0,0,0,120,4,53],[0,0,0,1,6,96,0,57,0,0,0,0,7,86,0,75,0,0,11,75,0,0,65,61,0,0,0,0,6,4,0,75],[0,0,11,98,0,0,97,61,0,0,0,5,5,80,2,16,0,0,0,0,1,81,3,79,0,0,0,0,5,82,0,25],[0,0,0,3,4,64,2,16,0,0,0,0,6,5,4,51,0,0,0,0,6,70,1,207,0,0,0,0,6,70,2,47],[0,0,0,0,1,1,4,59,0,0,1,0,4,64,0,137,0,0,0,0,1,65,2,47,0,0,0,0,1,65,1,207],[0,0,0,0,1,97,1,159,0,0,0,0,0,21,4,53,0,0,3,119,1,0,0,65,0,0,3,119,4,32,0,156],[0,0,0,0,2,1,128,25,0,0,0,64,1,32,2,16,0,0,0,96,2,48,2,16,0,0,0,0,1,33,1,159],[0,0,13,216,0,1,4,48,0,0,3,199,1,0,0,65,0,0,0,0,0,16,4,53,0,0,0,65,1,0,0,57],[0,0,0,4,0,16,4,63,0,0,3,200,1,0,0,65,0,0,13,216,0,1,4,48,0,0,0,0,1,0,0,25],[0,0,13,216,0,1,4,48,0,0,0,64,2,0,4,61,0,0,3,233,1,32,0,156,0,0,11,170,0,0,129,61],[0,0,0,192,1,32,0,57,0,0,0,64,0,16,4,63,0,0,0,160,1,32,0,57,0,0,3,163,3,0,0,65],[0,0,0,0,0,49,4,53,0,0,0,128,3,32,0,57,0,0,3,164,1,0,0,65,0,0,0,0,0,19,4,53],[0,0,0,96,3,32,0,57,0,0,0,0,0,19,4,53,0,0,0,64,3,32,0,57,0,0,0,0,0,19,4,53],[0,0,0,32,3,32,0,57,0,0,0,0,0,19,4,53,0,0,0,135,3,0,0,57,0,0,0,0,0,50,4,53],[0,0,0,64,2,0,4,61,0,0,3,162,3,32,0,156,0,0,11,170,0,0,33,61,0,0,0,192,3,32,0,57],[0,0,0,64,0,48,4,63,0,0,0,160,3,32,0,57,0,0,3,165,4,0,0,65,0,0,0,0,0,67,4,53],[0,0,0,128,3,32,0,57,0,0,0,0,0,19,4,53,0,0,0,96,3,32,0,57,0,0,0,0,0,19,4,53],[0,0,0,64,3,32,0,57,0,0,0,0,0,19,4,53,0,0,0,32,3,32,0,57,0,0,0,0,0,19,4,53],[0,0,0,136,1,0,0,57,0,0,0,0,0,18,4,53,0,0,0,64,1,0,4,61,0,0,3,162,2,16,0,156],[0,0,11,170,0,0,33,61,0,0,0,192,2,16,0,57,0,0,0,64,0,32,4,63,0,0,0,160,2,16,0,57],[0,0,3,166,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,128,2,16,0,57,0,0,3,164,3,0,0,65],[0,0,0,0,0,50,4,53,0,0,0,96,2,16,0,57,0,0,0,0,0,50,4,53,0,0,0,64,2,16,0,57],[0,0,0,0,0,50,4,53,0,0,0,32,2,16,0,57,0,0,0,0,0,50,4,53,0,0,0,137,2,0,0,57],[0,0,0,0,0,33,4,53,0,0,0,0,0,1,4,45,0,0,3,199,1,0,0,65,0,0,0,0,0,16,4,53],[0,0,0,65,1,0,0,57,0,0,0,4,0,16,4,63,0,0,3,200,1,0,0,65,0,0,13,216,0,1,4,48],[0,5,0,0,0,0,0,2,0,0,0,64,1,0,4,61,0,0,3,231,2,16,0,156,0,0,13,75,0,0,129,61],[0,0,0,96,2,16,0,57,0,0,0,64,0,32,4,63,0,0,3,172,2,0,0,65,0,0,0,0,2,33,4,54],[0,0,0,64,4,0,4,61,0,0,3,173,3,64,0,156,0,0,13,75,0,0,33,61,0,0,0,128,3,64,0,57],[0,0,0,64,0,48,4,63,0,0,0,96,3,64,0,57,0,0,3,174,5,0,0,65,0,0,0,0,0,83,4,53],[0,0,0,64,3,64,0,57,0,0,3,175,5,0,0,65,0,0,0,0,0,83,4,53,0,0,0,32,3,64,0,57],[0,0,3,176,5,0,0,65,0,0,0,0,0,83,4,53,0,0,0,65,7,0,0,57,0,0,0,0,0,116,4,53],[0,0,0,64,3,16,0,57,0,0,3,177,5,0,0,65,0,0,0,0,0,83,4,53,0,0,0,0,0,66,4,53],[0,0,0,64,8,0,4,61,0,0,3,171,4,128,0,156,0,0,13,75,0,0,33,61,0,0,0,96,4,128,0,57],[0,0,0,64,0,64,4,63,0,0,3,178,4,0,0,65,0,0,0,0,9,72,4,54,0,0,0,64,4,0,4,61],[0,0,3,173,5,64,0,156,0,0,13,75,0,0,33,61,0,0,0,128,5,64,0,57,0,0,0,64,0,80,4,63],[0,0,0,96,5,64,0,57,0,0,3,174,6,0,0,65,0,0,0,0,0,101,4,53,0,0,0,64,5,64,0,57],[0,0,3,179,6,0,0,65,0,0,0,0,0,101,4,53,0,0,0,32,5,64,0,57,0,0,3,180,6,0,0,65],[0,0,0,0,0,101,4,53,0,5,0,0,0,7,0,29,0,0,0,0,0,116,4,53,0,0,0,64,6,128,0,57],[0,0,3,181,5,0,0,65,0,1,0,0,0,6,0,29,0,0,0,0,0,86,4,53,0,0,0,0,0,73,4,53],[0,0,0,0,2,2,4,51,0,0,0,0,84,2,4,52,0,0,0,65,4,64,0,140,0,0,13,73,0,0,193,61],[0,0,0,65,4,32,0,57,0,0,0,0,4,4,4,51,0,0,0,255,4,64,1,143,0,0,0,27,6,64,0,138],[0,0,0,1,6,96,0,140,0,0,13,73,0,0,33,61,0,3,0,0,0,9,0,29,0,4,0,0,0,8,0,29],[0,0,0,0,3,3,4,51,0,2,0,0,0,3,0,29,0,0,0,0,1,1,4,51,0,0,0,0,3,5,4,51],[0,0,0,64,2,32,0,57,0,0,0,0,2,2,4,51,0,0,0,64,5,0,4,61,0,0,0,96,6,80,0,57],[0,0,0,0,0,38,4,53,0,0,0,64,2,80,0,57,0,0,0,0,0,50,4,53,0,0,0,32,2,80,0,57],[0,0,0,0,0,66,4,53,0,0,0,0,0,21,4,53,0,0,0,0,0,0,4,53,0,0,3,119,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,3,119,3,32,0,156,0,0,0,0,2,1,128,25,0,0,3,119,3,80,0,156],[0,0,0,0,5,1,128,25,0,0,0,64,1,80,2,16,0,0,0,192,2,32,2,16,0,0,0,0,1,18,1,159],[0,0,3,182,1,16,1,199,0,0,0,1,2,0,0,57,13,214,13,209,0,0,4,15,0,0,0,0,3,1,0,25],[0,0,0,96,3,48,2,112,0,0,3,119,3,48,1,151,0,0,0,32,4,48,0,140,0,0,0,0,4,3,0,25],[0,0,0,32,4,0,128,57,0,0,0,31,5,64,1,143,0,0,0,5,4,64,2,114,0,0,12,32,0,0,97,61],[0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16,0,0,0,0,8,113,3,79,0,0,0,0,8,8,4,59],[0,0,0,0,0,135,4,53,0,0,0,1,6,96,0,57,0,0,0,0,7,70,0,75,0,0,12,25,0,0,65,61],[0,0,0,0,6,5,0,75,0,0,12,46,0,0,97,61,0,0,0,3,5,80,2,16,0,0,0,5,4,64,2,16],[0,0,0,0,6,4,4,51,0,0,0,0,6,86,1,207,0,0,0,0,6,86,2,47,0,0,0,0,7,65,3,79],[0,0,0,0,7,7,4,59,0,0,1,0,5,80,0,137,0,0,0,0,7,87,2,47,0,0,0,0,5,87,1,207],[0,0,0,0,5,101,1,159,0,0,0,0,0,84,4,53,0,1,0,0,0,3,0,31,0,3,0,0,0,1,3,85],[0,0,0,1,2,32,1,144,0,0,0,4,5,0,0,41,0,0,0,3,2,0,0,41,0,0,13,81,0,0,97,61],[0,0,0,0,1,0,4,51,0,0,0,2,1,16,1,79,0,0,3,130,1,16,1,152,0,0,13,73,0,0,193,61],[0,0,0,0,1,2,4,51,0,0,0,0,50,1,4,52,0,0,0,65,2,32,0,140,0,0,13,73,0,0,193,61],[0,0,0,65,2,16,0,57,0,0,0,0,2,2,4,51,0,0,0,255,2,32,1,143,0,0,0,27,4,32,0,138],[0,0,0,1,4,64,0,140,0,0,13,73,0,0,33,61,0,0,0,1,4,0,0,41,0,0,0,0,4,4,4,51],[0,3,0,0,0,4,0,29,0,0,0,0,4,5,4,51,0,0,0,0,3,3,4,51,0,0,0,64,1,16,0,57],[0,0,0,0,1,1,4,51,0,0,0,64,5,0,4,61,0,0,0,96,6,80,0,57,0,0,0,0,0,22,4,53],[0,0,0,64,1,80,0,57,0,0,0,0,0,49,4,53,0,0,0,32,1,80,0,57,0,0,0,0,0,33,4,53],[0,0,0,0,0,69,4,53,0,0,0,0,0,0,4,53,0,0,3,119,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,3,119,3,32,0,156,0,0,0,0,2,1,128,25,0,0,3,119,3,80,0,156,0,0,0,0,5,1,128,25],[0,0,0,64,1,80,2,16,0,0,0,192,2,32,2,16,0,0,0,0,1,18,1,159,0,0,3,182,1,16,1,199],[0,0,0,1,2,0,0,57,13,214,13,209,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,0,3,119,3,48,1,151,0,0,0,32,4,48,0,140,0,0,0,0,4,3,0,25,0,0,0,32,4,0,128,57],[0,0,0,31,5,64,1,143,0,0,0,5,4,64,2,114,0,0,12,111,0,0,97,61,0,0,0,0,6,0,0,25],[0,0,0,5,7,96,2,16,0,0,0,0,8,113,3,79,0,0,0,0,8,8,4,59,0,0,0,0,0,135,4,53],[0,0,0,1,6,96,0,57,0,0,0,0,7,70,0,75,0,0,12,104,0,0,65,61,0,0,0,0,6,5,0,75],[0,0,12,125,0,0,97,61,0,0,0,3,5,80,2,16,0,0,0,5,4,64,2,16,0,0,0,0,6,4,4,51],[0,0,0,0,6,86,1,207,0,0,0,0,6,86,2,47,0,0,0,0,7,65,3,79,0,0,0,0,7,7,4,59],[0,0,1,0,5,80,0,137,0,0,0,0,7,87,2,47,0,0,0,0,5,87,1,207,0,0,0,0,5,101,1,159],[0,0,0,0,0,84,4,53,0,1,0,0,0,3,0,31,0,3,0,0,0,1,3,85,0,0,0,1,2,32,1,144],[0,0,13,110,0,0,97,61,0,0,0,0,1,0,4,51,0,0,0,3,1,16,1,79,0,0,3,130,1,16,1,152],[0,0,13,73,0,0,193,61,0,0,0,64,1,0,4,61,0,0,3,171,2,16,0,156,0,0,0,5,7,0,0,41],[0,0,13,75,0,0,33,61,0,0,0,96,2,16,0,57,0,0,0,64,0,32,4,63,0,0,0,0,5,1,4,54],[0,0,0,64,2,0,4,61,0,0,3,173,3,32,0,156,0,0,13,75,0,0,33,61,0,0,0,128,3,32,0,57],[0,0,0,64,0,48,4,63,0,0,0,96,3,32,0,57,0,0,3,174,4,0,0,65,0,0,0,0,0,67,4,53],[0,0,0,64,3,32,0,57,0,0,3,183,4,0,0,65,0,0,0,0,0,67,4,53,0,0,0,32,4,32,0,57],[0,0,3,184,6,0,0,65,0,0,0,0,0,100,4,53,0,0,0,0,0,114,4,53,0,0,0,64,6,16,0,57],[0,0,3,185,7,0,0,65,0,0,0,0,0,118,4,53,0,0,0,0,0,37,4,53,0,0,0,0,5,2,4,51],[0,0,0,65,5,80,0,140,0,0,13,73,0,0,193,61,0,0,0,65,2,32,0,57,0,0,0,0,2,2,4,51],[0,0,0,255,2,32,1,143,0,0,0,27,5,32,0,138,0,0,0,1,5,80,0,140,0,0,13,73,0,0,33,61],[0,0,0,0,1,1,4,51,0,0,0,0,4,4,4,51,0,0,0,0,3,3,4,51,0,0,0,64,5,0,4,61],[0,0,0,96,6,80,0,57,0,0,0,0,0,54,4,53,0,0,0,64,3,80,0,57,0,0,0,0,0,67,4,53],[0,0,0,32,3,80,0,57,0,0,0,0,0,35,4,53,0,0,0,0,0,21,4,53,0,0,0,0,0,0,4,53],[0,0,3,119,1,0,0,65,0,0,0,0,2,0,4,20,0,0,3,119,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,3,119,3,80,0,156,0,0,0,0,5,1,128,25,0,0,0,64,1,80,2,16,0,0,0,192,2,32,2,16],[0,0,0,0,1,18,1,159,0,0,3,182,1,16,1,199,0,0,0,1,2,0,0,57,13,214,13,209,0,0,4,15],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,3,119,3,48,1,151,0,0,0,32,4,48,0,140],[0,0,0,0,4,3,0,25,0,0,0,32,4,0,128,57,0,0,0,31,5,64,1,143,0,0,0,5,4,64,2,114],[0,0,12,209,0,0,97,61,0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16,0,0,0,0,8,113,3,79],[0,0,0,0,8,8,4,59,0,0,0,0,0,135,4,53,0,0,0,1,6,96,0,57,0,0,0,0,7,70,0,75],[0,0,12,202,0,0,65,61,0,0,0,0,6,5,0,75,0,0,12,223,0,0,97,61,0,0,0,3,5,80,2,16],[0,0,0,5,4,64,2,16,0,0,0,0,6,4,4,51,0,0,0,0,6,86,1,207,0,0,0,0,6,86,2,47],[0,0,0,0,7,65,3,79,0,0,0,0,7,7,4,59,0,0,1,0,5,80,0,137,0,0,0,0,7,87,2,47],[0,0,0,0,5,87,1,207,0,0,0,0,5,101,1,159,0,0,0,0,0,84,4,53,0,1,0,0,0,3,0,31],[0,3,0,0,0,1,3,85,0,0,0,1,2,32,1,144,0,0,13,139,0,0,97,61,0,0,0,0,1,0,4,51],[0,0,3,130,1,16,1,151,0,0,3,185,1,16,0,156,0,0,13,73,0,0,193,61,0,0,0,64,1,0,4,61],[0,0,3,171,2,16,0,156,0,0,0,5,7,0,0,41,0,0,13,75,0,0,33,61,0,0,0,96,2,16,0,57],[0,0,0,64,0,32,4,63,0,0,3,186,2,0,0,65,0,0,0,0,5,33,4,54,0,0,0,64,2,0,4,61],[0,0,3,173,3,32,0,156,0,0,13,75,0,0,33,61,0,0,0,128,3,32,0,57,0,0,0,64,0,48,4,63],[0,0,0,96,3,32,0,57,0,0,3,187,4,0,0,65,0,0,0,0,0,67,4,53,0,0,0,64,3,32,0,57],[0,0,3,188,4,0,0,65,0,0,0,0,0,67,4,53,0,0,0,32,4,32,0,57,0,0,3,189,6,0,0,65],[0,0,0,0,0,100,4,53,0,0,0,0,0,114,4,53,0,0,0,0,0,37,4,53,0,0,0,64,5,16,0,57],[0,0,0,0,0,5,4,53,0,0,0,0,5,2,4,51,0,0,0,65,5,80,0,140,0,0,13,73,0,0,193,61],[0,0,0,65,2,32,0,57,0,0,0,0,2,2,4,51,0,0,0,255,2,32,1,143,0,0,0,27,5,32,0,138],[0,0,0,1,5,80,0,140,0,0,13,73,0,0,33,61,0,0,0,0,1,1,4,51,0,0,0,0,4,4,4,51],[0,0,0,0,3,3,4,51,0,0,0,64,5,0,4,61,0,0,0,96,6,80,0,57,0,0,0,0,0,54,4,53],[0,0,0,64,3,80,0,57,0,0,0,0,0,67,4,53,0,0,0,32,3,80,0,57,0,0,0,0,0,35,4,53],[0,0,0,0,0,21,4,53,0,0,0,0,0,0,4,53,0,0,3,119,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,3,119,3,32,0,156,0,0,0,0,2,1,128,25,0,0,3,119,3,80,0,156,0,0,0,0,5,1,128,25],[0,0,0,64,1,80,2,16,0,0,0,192,2,32,2,16,0,0,0,0,1,18,1,159,0,0,3,182,1,16,1,199],[0,0,0,1,2,0,0,57,13,214,13,209,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,0,3,119,3,48,1,151,0,0,0,32,4,48,0,140,0,0,0,0,4,3,0,25,0,0,0,32,4,0,128,57],[0,0,0,31,5,64,1,143,0,0,0,5,4,64,2,114,0,0,13,51,0,0,97,61,0,0,0,0,6,0,0,25],[0,0,0,5,7,96,2,16,0,0,0,0,8,113,3,79,0,0,0,0,8,8,4,59,0,0,0,0,0,135,4,53],[0,0,0,1,6,96,0,57,0,0,0,0,7,70,0,75,0,0,13,44,0,0,65,61,0,0,0,0,6,5,0,75],[0,0,13,65,0,0,97,61,0,0,0,3,5,80,2,16,0,0,0,5,4,64,2,16,0,0,0,0,6,4,4,51],[0,0,0,0,6,86,1,207,0,0,0,0,6,86,2,47,0,0,0,0,7,65,3,79,0,0,0,0,7,7,4,59],[0,0,1,0,5,80,0,137,0,0,0,0,7,87,2,47,0,0,0,0,5,87,1,207,0,0,0,0,5,101,1,159],[0,0,0,0,0,84,4,53,0,1,0,0,0,3,0,31,0,3,0,0,0,1,3,85,0,0,0,1,2,32,1,144],[0,0,13,168,0,0,97,61,0,0,0,0,1,0,4,51,0,0,3,130,1,16,1,152,0,0,13,73,0,0,193,61],[0,0,0,0,0,1,4,45,0,0,0,0,1,0,0,25,0,0,13,216,0,1,4,48,0,0,3,199,1,0,0,65],[0,0,0,0,0,16,4,53,0,0,0,65,1,0,0,57,0,0,0,4,0,16,4,63,0,0,3,200,1,0,0,65],[0,0,13,216,0,1,4,48,0,0,0,64,2,0,4,61,0,0,0,31,4,48,1,143,0,0,0,5,5,48,2,114],[0,0,13,94,0,0,97,61,0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16,0,0,0,0,8,114,0,25],[0,0,0,0,7,113,3,79,0,0,0,0,7,7,4,59,0,0,0,0,0,120,4,53,0,0,0,1,6,96,0,57],[0,0,0,0,7,86,0,75,0,0,13,86,0,0,65,61,0,0,0,0,6,4,0,75,0,0,13,196,0,0,97,61],[0,0,0,5,5,80,2,16,0,0,0,0,1,81,3,79,0,0,0,0,5,82,0,25,0,0,0,3,4,64,2,16],[0,0,0,0,6,5,4,51,0,0,0,0,6,70,1,207,0,0,0,0,6,70,2,47,0,0,0,0,1,1,4,59],[0,0,1,0,4,64,0,137,0,0,0,0,1,65,2,47,0,0,0,0,1,65,1,207,0,0,0,0,1,97,1,159],[0,0,0,0,0,21,4,53,0,0,13,196,0,0,1,61,0,0,0,64,2,0,4,61,0,0,0,31,4,48,1,143],[0,0,0,5,5,48,2,114,0,0,13,123,0,0,97,61,0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16],[0,0,0,0,8,114,0,25,0,0,0,0,7,113,3,79,0,0,0,0,7,7,4,59,0,0,0,0,0,120,4,53],[0,0,0,1,6,96,0,57,0,0,0,0,7,86,0,75,0,0,13,115,0,0,65,61,0,0,0,0,6,4,0,75],[0,0,13,138,0,0,97,61,0,0,0,5,5,80,2,16,0,0,0,0,1,81,3,79,0,0,0,0,5,82,0,25],[0,0,0,3,4,64,2,16,0,0,0,0,6,5,4,51,0,0,0,0,6,70,1,207,0,0,0,0,6,70,2,47],[0,0,0,0,1,1,4,59,0,0,1,0,4,64,0,137,0,0,0,0,1,65,2,47,0,0,0,0,1,65,1,207],[0,0,0,0,1,97,1,159,0,0,0,0,0,21,4,53,0,0,13,196,0,0,1,61,0,0,0,64,2,0,4,61],[0,0,0,31,4,48,1,143,0,0,0,5,5,48,2,114,0,0,13,152,0,0,97,61,0,0,0,0,6,0,0,25],[0,0,0,5,7,96,2,16,0,0,0,0,8,114,0,25,0,0,0,0,7,113,3,79,0,0,0,0,7,7,4,59],[0,0,0,0,0,120,4,53,0,0,0,1,6,96,0,57,0,0,0,0,7,86,0,75,0,0,13,144,0,0,65,61],[0,0,0,0,6,4,0,75,0,0,13,167,0,0,97,61,0,0,0,5,5,80,2,16,0,0,0,0,1,81,3,79],[0,0,0,0,5,82,0,25,0,0,0,3,4,64,2,16,0,0,0,0,6,5,4,51,0,0,0,0,6,70,1,207],[0,0,0,0,6,70,2,47,0,0,0,0,1,1,4,59,0,0,1,0,4,64,0,137,0,0,0,0,1,65,2,47],[0,0,0,0,1,65,1,207,0,0,0,0,1,97,1,159,0,0,0,0,0,21,4,53,0,0,13,196,0,0,1,61],[0,0,0,64,2,0,4,61,0,0,0,31,4,48,1,143,0,0,0,5,5,48,2,114,0,0,13,181,0,0,97,61],[0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16,0,0,0,0,8,114,0,25,0,0,0,0,7,113,3,79],[0,0,0,0,7,7,4,59,0,0,0,0,0,120,4,53,0,0,0,1,6,96,0,57,0,0,0,0,7,86,0,75],[0,0,13,173,0,0,65,61,0,0,0,0,6,4,0,75,0,0,13,196,0,0,97,61,0,0,0,5,5,80,2,16],[0,0,0,0,1,81,3,79,0,0,0,0,5,82,0,25,0,0,0,3,4,64,2,16,0,0,0,0,6,5,4,51],[0,0,0,0,6,70,1,207,0,0,0,0,6,70,2,47,0,0,0,0,1,1,4,59,0,0,1,0,4,64,0,137],[0,0,0,0,1,65,2,47,0,0,0,0,1,65,1,207,0,0,0,0,1,97,1,159,0,0,0,0,0,21,4,53],[0,0,3,119,1,0,0,65,0,0,3,119,4,32,0,156,0,0,0,0,2,1,128,25,0,0,0,64,1,32,2,16],[0,0,0,96,2,48,2,16,0,0,0,0,1,33,1,159,0,0,13,216,0,1,4,48,0,0,0,0,0,1,4,47],[0,0,13,207,0,33,4,33,0,0,0,1,2,0,0,57,0,0,0,0,0,1,4,45,0,0,0,0,2,0,0,25],[0,0,0,0,0,1,4,45,0,0,13,212,0,33,4,35,0,0,0,1,2,0,0,57,0,0,0,0,0,1,4,45],[0,0,0,0,2,0,0,25,0,0,0,0,0,1,4,45,0,0,13,214,0,0,4,50,0,0,13,215,0,1,4,46],[0,0,13,216,0,1,4,48,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],[24,6,170,24,150,187,242,101,104,232,132,167,55,75,65,224,2,80,9,98,202,186,106,21,2,58,141,144,232,80,139,131],[2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,36,0,0,0,0,0,0,0,0,0,0,0,0],[224,63,225,119,187,5,10,64,234,27,62,205,100,18,26,63,160,99,169,75,109,64,75,47,69,198,70,151,85,94,254,14],[197,210,70,1,134,247,35,60,146,126,125,178,220,199,3,192,229,0,182,83,202,130,39,59,123,250,216,4,93,133,164,112],[153,58,4,183,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,160,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255],[0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,1,0,0,0,0,0,0,0,0,0],[142,148,254,212,66,57,235,35,20,171,122,64,99,69,230,197,168,240,204,237,243,182,0,222,61,0,78,103,44,51,171,244],[0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255],[8,195,121,160,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[105,110,32,100,101,108,101,103,97,116,101,32,99,97,108,108,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,128,0,0,0,0,0,0,0,0],[66,203,177,92,205,195,202,214,38,107,14,122,8,192,69,75,35,191,41,220,45,247,75,111,60,32,158,147,54,70,91,209],[2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0],[25,202,228,98,154,45,215,137,0,54,208,209,246,168,39,66,132,91,119,139,113,132,227,141,91,235,253,76,206,59,24,30],[166,174,10,172,21,139,45,92,154,156,146,133,116,52,25,214,42,50,246,114,122,100,9,85,228,206,142,228,21,3,199,132],[255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[120,119,167,151,254,109,202,67,33,243,63,217,84,20,218,7,154,183,142,105,141,118,21,20,192,28,237,146,17,175,38,126],[254,23,59,151,237,154,162,99,35,108,82,250,62,179,52,208,119,65,173,217,94,151,45,23,53,45,118,129,107,74,174,163],[154,138,5,146,172,137,197,173,59,198,223,130,36,193,123,72,89,118,245,151,223,16,78,226,13,13,244,21,36,31,103,11],[121,107,137,185,22,68,188,152,205,147,149,142,76,144,56,39,93,98,33,131,226,90,197,175,8,204,107,93,149,83,145,50],[147,139,95,50,153,161,243,177,142,69,133,100,239,187,149,7,51,34,96,20,238,206,38,250,225,144,18,216,80,180,141,131],[255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,95],[116,104,101,32,105,110,100,117,115,116,114,121,39,115,32,115,116,97,110,100,97,114,100,46,46,46,0,0,0,0,0,0],[32,105,110,100,117,115,116,114,121,46,32,76,111,114,101,109,32,73,112,115,117,109,32,104,97,115,32,98,101,101,110,32],[32,111,102,32,116,104,101,32,112,114,105,110,116,105,110,103,32,97,110,100,32,116,121,112,101,115,101,116,116,105,110,103],[76,111,114,101,109,32,73,112,115,117,109,32,105,115,32,115,105,109,112,108,121,32,100,117,109,109,121,32,116,101,120,116],[2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[223,105,102,201,113,5,28,61,84,236,89,22,38,6,83,20,147,165,20,4,160,2,132,47,86,0,157,126,92,244,168,199],[255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0],[98,248,75,36,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[223,105,102,201,113,5,28,61,84,236,89,22,38,6,83,20,147,165,20,4,160,2,132,47,86,0,157,126,92,244,168,198],[223,105,102,201,113,5,28,61,84,236,89,22,38,6,83,20,147,165,20,4,160,2,132,47,86,0,157,126,92,244,168,201],[223,105,102,201,113,5,28,61,84,236,89,22,38,6,83,20,147,165,20,4,160,2,132,47,86,0,157,126,92,244,168,200],[128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[83,111,109,101,32,101,114,114,111,114,32,109,101,115,115,97,103,101,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,0,0,0,0,0,0,0,0],[2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,0],[133,189,45,42,160,229,82,140,202,50,72,223,177,233,146,208,17,58,85,56,2,215,146,79,223,4,154,233,237,29,91,48],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,63],[97,97,97,97,97,97,97,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[97,97,97,97,97,97,97,97,97,97,97,97,97,97,97,97,97,97,97,97,97,97,97,97,97,97,97,97,97,97,97,97],[97,97,97,97,97,97,97,97,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[97,97,97,97,97,97,97,97,97,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[102,3,194,241,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0],[72,101,97,112,32,115,104,111,117,108,100,32,110,111,116,32,98,101,32,109,111,100,105,102,105,101,100,0,0,0,0,0],[171,37,105,15,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,159],[20,67,19,57,18,139,210,95,44,127,147,186,166,17,227,103,71,32,72,117,127,74,214,127,109,113,165,202,13,165,80,245],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,127],[28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[70,234,191,53,104,3,40,226,110,244,87,156,175,138,235,44,249,236,224,93,191,103,164,243,209,242,140,123,29,14,53,70],[81,228,219,187,206,186,222,105,90,63,15,223,16,190,184,181,248,63,218,22,30,26,49,5,161,76,65,22,139,243,220,224],[0,0,0,0,0,0,0,0,0,0,0,0,127,139,59,4,191,52,97,143,74,23,35,251,169,107,93,178,17,39,154,43],[224,104,47,212,162,96,50,175,255,59,24,5,58,12,51,210,166,196,101,192,225,156,177,228,193,14,176,169,73,242,130,124],[11,219,95,10,199,157,26,126,253,194,85,243,153,160,69,3,140,27,67,62,157,6,193,177,171,213,138,95,202,171,51,241],[196,108,220,80,166,111,77,7,198,233,161,39,167,39,126,136,47,178,27,207,181,176,104,242,181,140,127,114,131,153,59,121],[0,0,0,0,0,0,0,0,0,0,0,0,8,101,167,125,77,104,199,227,205,210,25,212,49,207,238,146,113,144,80,116],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0],[46,56,93,100,142,59,225,148,212,95,187,31,114,41,239,16,197,183,238,28,124,48,20,90,164,221,249,56,14,171,90,3],[155,55,233,20,69,233,43,20,35,53,72,37,170,51,216,65,216,60,172,253,216,149,211,22,174,136,218,188,49,115,105,150],[0,0,0,0,0,0,0,0,0,0,0,0,158,21,153,225,16,206,239,79,21,232,238,112,106,217,205,74,91,142,198,237],[221,105,233,149,15,82,221,220,188,103,81,253,187,105,73,120,124,193,184,74,196,2,10,176,97,126,200,173,149,14,85,74],[27,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[64,104,245,181,230,196,180,66,232,63,203,123,98,144,82,14,187,94,7,124,209,13,59,216,108,244,49,202,75,100,1,98],[176,9,134,216,187,82,238,122,203,6,202,191,166,194,192,153,216,144,76,124,141,86,112,122,38,125,219,175,215,174,208,112],[0,0,0,0,0,0,0,0,0,0,0,0,238,238,238,238,238,238,238,238,238,238,238,238,238,238,238,238,238,238,238,238],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,255,255,255,224],[102,97,105,108,101,100,32,116,114,97,110,115,102,101,114,32,99,97,108,108,0,0,0,0,0,0,0,0,0,0,0,0],[102,97,105,108,101,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[115,101,110,100,105,110,103,32,108,49,32,109,101,115,115,97,103,101,115,32,116,101,115,116,32,115,104,111,117,108,100,32],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,132,0,0,0,0,0,0,0,0,0,0,0,0],[104,101,97,112,32,116,101,115,116,32,115,104,111,117,108,100,32,102,97,105,108,101,100,0,0,0,0,0,0,0,0,0],[72,101,97,112,32,115,104,111,117,108,100,32,110,111,116,32,98,101,32,101,109,112,116,121,0,0,0,0,0,0,0,0],[119,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[78,72,123,113,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,36,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,119,55,221,230],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,175,100,13,14],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,198,249,104,131],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,198,249,104,132],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,230,246,42,184],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,251,56,170,86],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,175,100,13,15],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,190,139,17,32],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,135,78,143,142],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,135,78,143,143],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,153,58,4,183],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,171,37,105,15],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,119,55,221,231],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,213,148,97],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,72,64,160,80],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,89,48,143,14],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,89,48,143,15],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,94,254,75,180],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,102,3,194,241],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,72,64,160,81],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,87,154,227,236],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,34,132,79,187],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,34,132,79,188],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,42,187,215,72],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,208,93,63],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25,216,172,97],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,0,0,0,128,0,0,0,0,0,0,0,0],[84,101,115,116,32,109,101,115,115,97,103,101,32,50,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,128,0,0,0,0,0,0,0,0],[62,169,138,246,227,81,65,251,202,204,23,36,225,79,93,118,185,181,142,65,246,195,93,14,138,226,226,4,230,102,149,235],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,160],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,96],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,64],[214,157,133,29,132,62,228,160,250,200,14,30,42,137,20,209,16,252,193,75,95,47,89,133,35,162,110,88,69,252,146,234]],"default_account_code":[[0,4,0,0,0,0,0,2,0,12,0,0,0,0,0,2,0,0,0,0,3,1,0,25,0,0,0,96,7,48,2,112],[0,0,5,2,6,112,1,151,0,3,0,0,0,97,3,85,0,2,0,0,0,1,3,85,0,0,5,2,0,112,1,157],[0,0,0,128,4,0,0,57,0,0,0,64,0,64,4,63,0,0,0,1,2,32,1,144,0,0,0,44,0,0,193,61],[0,0,0,4,2,96,0,140,0,0,0,52,0,0,65,61,0,0,0,0,2,1,4,59,0,0,0,224,2,32,2,112],[0,0,5,4,3,32,0,156,0,0,0,68,0,0,161,61,0,0,5,5,3,32,0,156,0,0,0,150,0,0,97,61],[0,0,5,6,3,32,0,156,0,0,0,197,0,0,97,61,0,0,5,7,2,32,0,156,0,0,0,54,0,0,193,61],[0,0,0,4,2,96,0,138,0,0,0,32,3,32,0,140,0,0,1,39,0,0,65,61,0,0,0,4,1,16,3,112],[0,0,0,0,1,1,4,59,0,0,5,10,3,16,0,156,0,0,1,39,0,0,33,61,0,0,0,0,1,18,0,73],[0,0,5,11,2,0,0,65,0,0,2,96,3,16,0,140,0,0,0,0,3,0,0,25,0,0,0,0,3,2,64,25],[0,0,5,11,1,16,1,151,0,0,0,0,4,1,0,75,0,0,0,0,2,0,160,25,0,0,5,11,1,16,0,156],[0,0,0,0,2,3,192,25,0,0,0,0,1,2,0,75,0,0,3,118,0,0,97,61,0,0,1,39,0,0,1,61],[0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,1,39,0,0,193,61,0,0,0,32,1,0,0,57],[0,0,1,0,0,16,4,67,0,0,1,32,0,0,4,67,0,0,5,3,1,0,0,65,0,0,20,2,0,1,4,46],[0,0,0,0,1,6,0,75,0,0,3,118,0,0,97,61,0,0,0,0,1,0,4,18,0,0,5,12,1,16,1,151],[0,0,0,0,2,0,4,16,0,0,0,0,1,33,0,75,0,0,3,118,0,0,193,61,0,0,0,0,1,0,4,17],[0,0,128,1,1,16,0,140,0,0,3,118,0,0,193,61,0,0,5,88,1,0,0,65,0,0,0,0,0,16,4,53],[0,0,0,1,1,0,0,57,0,0,0,4,0,16,4,63,0,0,5,89,1,0,0,65,0,0,20,3,0,1,4,48],[0,0,5,8,3,32,0,156,0,0,1,17,0,0,97,61,0,10,0,0,0,4,0,29,0,0,5,9,2,32,0,156],[0,0,0,54,0,0,193,61,0,0,0,4,2,96,0,138,0,0,0,96,2,32,0,140,0,0,1,39,0,0,65,61],[0,0,0,68,2,16,3,112,0,0,0,0,3,2,4,59,0,0,5,10,2,48,0,156,0,0,1,39,0,0,33,61],[0,0,0,4,4,48,0,57,0,0,0,0,5,70,0,73,0,0,5,11,2,0,0,65,0,0,2,96,7,80,0,140],[0,0,0,0,7,0,0,25,0,0,0,0,7,2,64,25,0,0,5,11,8,80,1,151,0,0,0,0,9,8,0,75],[0,0,0,0,2,0,160,25,0,0,5,11,8,128,0,156,0,0,0,0,2,7,192,25,0,0,0,0,2,2,0,75],[0,0,1,39,0,0,193,61,0,0,0,0,2,0,4,17,0,0,128,1,2,32,0,140,0,0,3,118,0,0,193,61],[0,0,0,0,2,0,4,18,0,0,5,12,7,32,1,151,0,0,0,0,2,0,4,16,0,0,0,0,7,39,0,75],[0,0,3,118,0,0,193,61,0,0,2,36,3,48,0,57,0,0,0,0,7,49,3,79,0,0,0,0,7,7,4,59],[0,0,0,31,5,80,0,138,0,0,5,11,8,0,0,65,0,0,0,0,9,87,0,75,0,0,0,0,9,0,0,25],[0,0,0,0,9,8,128,25,0,0,5,11,5,80,1,151,0,0,5,11,10,112,1,151,0,0,0,0,11,90,0,75],[0,0,0,0,8,0,128,25,0,0,0,0,5,90,1,63,0,0,5,11,5,80,0,156,0,0,0,0,8,9,192,25],[0,0,0,0,5,8,0,75,0,0,1,39,0,0,193,61,0,0,0,0,5,71,0,25,0,0,0,0,4,81,3,79],[0,0,0,0,4,4,4,59,0,0,5,10,7,64,0,156,0,0,1,39,0,0,33,61,0,0,0,0,7,70,0,73],[0,0,0,32,5,80,0,57,0,0,5,11,8,0,0,65,0,0,0,0,9,117,0,75,0,0,0,0,9,0,0,25],[0,0,0,0,9,8,32,25,0,0,5,11,7,112,1,151,0,0,5,11,10,80,1,151,0,0,0,0,11,122,0,75],[0,0,0,0,8,0,128,25,0,0,0,0,7,122,1,63,0,0,5,11,7,112,0,156,0,0,0,0,8,9,192,25],[0,0,0,0,7,8,0,75,0,0,1,39,0,0,193,61,0,0,0,3,7,64,0,140,0,0,2,87,0,0,33,61],[0,0,5,16,1,0,0,65,0,0,0,128,0,16,4,63,0,0,0,32,1,0,0,57,0,0,0,132,0,16,4,63],[0,0,0,58,1,0,0,57,0,0,0,164,0,16,4,63,0,0,5,50,1,0,0,65,0,0,0,196,0,16,4,63],[0,0,5,51,1,0,0,65,0,0,2,103,0,0,1,61,0,0,0,4,2,96,0,138,0,0,0,96,2,32,0,140],[0,0,1,39,0,0,65,61,0,0,0,68,2,16,3,112,0,0,0,0,3,2,4,59,0,0,5,10,2,48,0,156],[0,0,1,39,0,0,33,61,0,0,0,4,2,48,0,57,0,0,0,0,5,38,0,73,0,0,5,11,4,0,0,65],[0,0,2,96,8,80,0,140,0,0,0,0,8,0,0,25,0,0,0,0,8,4,64,25,0,0,5,11,9,80,1,151],[0,0,0,0,10,9,0,75,0,0,0,0,4,0,160,25,0,0,5,11,9,144,0,156,0,0,0,0,4,8,192,25],[0,0,0,0,4,4,0,75,0,0,1,39,0,0,193,61,0,0,0,0,4,0,4,17,0,0,128,1,4,64,0,140],[0,0,3,118,0,0,193,61,0,0,0,0,4,0,4,18,0,0,5,12,4,64,1,151,0,0,0,0,8,0,4,16],[0,0,0,0,4,132,0,75,0,0,3,118,0,0,193,61,0,0,0,68,4,48,0,57,0,0,0,0,4,65,3,79],[0,0,1,36,8,48,0,57,0,0,0,0,3,129,3,79,0,0,0,0,4,4,4,59,0,0,5,12,4,64,1,151],[0,0,0,0,3,3,4,59,0,0,5,18,9,48,0,156,0,0,1,248,0,0,65,61,0,0,5,16,1,0,0,65],[0,0,0,128,0,16,4,63,0,0,0,32,1,0,0,57,0,0,0,132,0,16,4,63,0,0,0,8,1,0,0,57],[0,0,0,164,0,16,4,63,0,0,5,27,1,0,0,65,0,0,0,196,0,16,4,63,0,0,5,28,1,0,0,65],[0,0,20,3,0,1,4,48,0,0,0,4,3,96,0,138,0,0,0,96,2,48,0,140,0,0,1,39,0,0,65,61],[0,0,0,68,2,16,3,112,0,0,0,0,2,2,4,59,0,0,5,10,4,32,0,156,0,0,1,39,0,0,33,61],[0,0,0,0,3,35,0,73,0,0,5,11,4,0,0,65,0,0,2,96,5,48,0,140,0,0,0,0,5,0,0,25],[0,0,0,0,5,4,64,25,0,0,5,11,3,48,1,151,0,0,0,0,6,3,0,75,0,0,0,0,4,0,160,25],[0,0,5,11,3,48,0,156,0,0,0,0,4,5,192,25,0,0,0,0,3,4,0,75,0,0,1,39,0,0,193,61],[0,0,0,0,3,0,4,17,0,0,128,1,3,48,0,140,0,0,3,118,0,0,193,61,0,0,0,0,3,0,4,18],[0,0,5,12,3,48,1,151,0,0,0,0,4,0,4,16,0,0,0,0,3,67,0,75,0,0,3,118,0,0,193,61],[0,0,0,164,3,32,0,57,0,0,0,0,3,49,3,79,0,0,0,100,2,32,0,57,0,0,0,0,1,33,3,79],[0,0,0,0,1,1,4,59,0,0,0,0,2,3,4,59,0,0,0,0,3,2,0,75,0,0,1,224,0,0,193,61],[0,0,0,0,4,0,4,21,0,0,0,12,4,64,0,138,0,0,0,32,4,64,0,201,0,0,0,0,1,0,4,20],[0,12,0,0,0,0,0,29,0,10,0,0,0,4,0,29,0,0,5,2,2,0,0,65,0,0,5,2,3,16,0,156],[0,0,0,0,1,2,128,25,0,0,0,192,1,16,2,16,0,0,128,1,2,0,0,57,20,1,19,237,0,0,4,15],[0,0,0,10,3,0,0,41,0,3,0,0,0,1,3,85,0,0,0,96,1,16,2,112,0,1,5,2,0,16,1,157],[0,0,0,5,1,48,2,112,0,0,0,1,1,32,1,149,0,0,0,1,1,32,1,144,0,0,3,118,0,0,193,61],[0,0,0,64,1,0,4,61,0,0,0,100,2,16,0,57,0,0,5,14,3,0,0,65,0,0,0,0,0,50,4,53],[0,0,0,68,2,16,0,57,0,0,5,15,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,36,2,16,0,57],[0,0,0,37,3,0,0,57,0,0,0,0,0,50,4,53,0,0,5,16,2,0,0,65,0,0,0,0,0,33,4,53],[0,0,0,4,2,16,0,57,0,0,0,32,3,0,0,57,0,0,0,0,0,50,4,53,0,0,5,2,2,0,0,65],[0,0,5,2,3,16,0,156,0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16,0,0,5,17,1,16,1,199],[0,0,20,3,0,1,4,48,0,0,0,4,2,96,0,138,0,0,0,96,2,32,0,140,0,0,1,39,0,0,65,61],[0,0,0,68,2,16,3,112,0,0,0,0,2,2,4,59,0,10,0,0,0,2,0,29,0,0,5,10,2,32,0,156],[0,0,1,39,0,0,33,61,0,0,0,10,2,0,0,41,0,9,0,4,0,32,0,61,0,0,0,9,2,96,0,106],[0,0,5,11,3,0,0,65,0,0,2,96,4,32,0,140,0,0,0,0,4,0,0,25,0,0,0,0,4,3,64,25],[0,0,5,11,2,32,1,151,0,0,0,0,5,2,0,75,0,0,0,0,3,0,160,25,0,0,5,11,2,32,0,156],[0,0,0,0,3,4,192,25,0,0,0,0,2,3,0,75,0,0,1,41,0,0,97,61,0,0,0,0,1,0,0,25],[0,0,20,3,0,1,4,48,0,0,0,36,2,16,3,112,0,0,0,0,2,2,4,59,0,8,0,0,0,2,0,29],[0,0,0,0,2,0,4,17,0,0,128,1,2,32,0,140,0,0,3,118,0,0,193,61,0,0,0,0,2,0,4,18],[0,0,5,12,2,32,1,151,0,0,0,0,3,0,4,16,0,7,0,0,0,3,0,29,0,0,0,0,2,50,0,75],[0,0,3,118,0,0,193,61,0,0,0,0,2,0,4,20,0,0,5,52,3,0,0,65,0,0,0,160,0,48,4,63],[0,0,0,10,3,0,0,41,0,6,1,4,0,48,0,61,0,0,0,6,1,16,3,96,0,0,0,0,1,1,4,59],[0,0,0,164,0,16,4,63,0,0,0,36,1,0,0,57,0,0,0,128,0,16,4,63,0,0,0,224,1,0,0,57],[0,0,0,64,0,16,4,63,0,0,0,192,1,32,2,16,0,0,5,24,1,16,1,151,0,0,5,53,1,16,1,199],[0,0,128,3,2,0,0,57,0,0,0,0,3,0,0,25,0,0,0,0,4,0,0,25,0,0,0,0,5,0,0,25],[0,0,0,0,6,0,0,25,20,1,19,237,0,0,4,15,0,3,0,0,0,1,3,85,0,0,0,0,3,1,0,25],[0,0,0,96,3,48,2,112,0,1,5,2,0,48,1,157,0,0,5,2,8,48,1,151,0,0,0,63,3,128,0,57],[0,0,5,54,4,48,1,151,0,0,0,64,6,0,4,61,0,0,0,0,3,100,0,25,0,0,0,0,4,67,0,75],[0,0,0,0,4,0,0,25,0,0,0,1,4,0,64,57,0,0,5,10,5,48,0,156,0,0,18,165,0,0,33,61],[0,0,0,1,4,64,1,144,0,0,18,165,0,0,193,61,0,0,0,64,0,48,4,63,0,0,0,0,7,134,4,54],[0,0,0,2,3,0,3,103,0,0,0,0,4,0,0,49,0,0,0,0,5,67,3,79,0,0,0,31,9,128,0,57],[0,0,0,5,9,144,2,114,0,0,1,107,0,0,97,61,0,0,0,0,10,0,0,25,0,0,0,5,11,160,2,16],[0,0,0,0,12,183,0,25,0,0,0,0,11,181,3,79,0,0,0,0,11,11,4,59,0,0,0,0,0,188,4,53],[0,0,0,1,10,160,0,57,0,0,0,0,11,154,0,75,0,0,1,99,0,0,65,61,0,0,0,0,9,0,0,75],[0,0,1,109,0,0,97,61,0,0,0,31,9,128,1,143,0,0,0,5,8,128,2,114,0,0,1,121,0,0,97,61],[0,0,0,0,10,0,0,25,0,0,0,5,11,160,2,16,0,0,0,0,12,183,0,25,0,0,0,0,11,177,3,79],[0,0,0,0,11,11,4,59,0,0,0,0,0,188,4,53,0,0,0,1,10,160,0,57,0,0,0,0,11,138,0,75],[0,0,1,113,0,0,65,61,0,0,0,0,10,9,0,75,0,0,1,136,0,0,97,61,0,0,0,5,8,128,2,16],[0,0,0,0,1,129,3,79,0,0,0,0,8,135,0,25,0,0,0,3,9,144,2,16,0,0,0,0,10,8,4,51],[0,0,0,0,10,154,1,207,0,0,0,0,10,154,2,47,0,0,0,0,1,1,4,59,0,0,1,0,9,144,0,137],[0,0,0,0,1,145,2,47,0,0,0,0,1,145,1,207,0,0,0,0,1,161,1,159,0,0,0,0,0,24,4,53],[0,0,0,1,1,32,1,144,0,0,2,77,0,0,97,61,0,0,0,8,1,0,0,107,0,0,16,183,0,0,193,61],[0,0,0,6,1,0,0,41,0,0,1,0,1,16,0,138,0,0,0,0,1,19,3,79,0,0,0,0,1,1,4,59],[0,0,0,0,2,1,0,75,0,0,2,106,0,0,193,61,0,0,0,6,1,48,3,96,0,0,0,64,9,0,4,61],[0,0,0,0,1,1,4,59,0,0,0,128,2,16,0,140,0,8,0,0,0,9,0,29,0,0,2,161,0,0,65,61],[0,0,0,128,2,16,2,112,0,0,5,60,6,16,0,156,0,0,0,0,2,1,160,25,0,0,5,60,6,16,0,156],[0,0,0,0,6,0,0,25,0,0,0,16,6,0,32,57,0,0,0,8,7,96,1,191,0,0,5,10,8,32,0,156],[0,0,0,0,7,6,160,25,0,0,0,64,6,32,2,112,0,0,5,10,8,32,0,156,0,0,0,0,6,2,160,25],[0,0,0,4,8,112,1,191,0,0,5,2,2,96,0,156,0,0,0,0,8,7,160,25,0,0,0,32,7,96,2,112],[0,0,5,2,2,96,0,156,0,0,0,0,7,6,160,25,0,0,0,2,2,128,1,191,0,0,255,255,6,112,0,140],[0,0,0,0,2,8,160,25,0,0,0,16,6,112,2,112,0,0,0,0,6,7,160,25,0,0,0,255,6,96,0,140],[0,0,0,1,2,32,32,57,0,0,0,32,6,0,0,138,0,0,0,65,7,32,0,57,0,0,0,0,6,103,1,111],[0,0,0,0,6,105,0,25,0,0,0,0,7,150,0,75,0,0,0,0,7,0,0,25,0,0,0,1,7,0,64,57],[0,0,5,10,8,96,0,156,0,0,18,165,0,0,33,61,0,0,0,1,7,112,1,144,0,0,18,165,0,0,193,61],[0,0,0,64,0,96,4,63,0,0,0,2,6,32,0,57,0,0,0,8,7,0,0,41,0,0,0,0,6,103,4,54],[0,0,0,33,7,32,0,57,0,0,0,5,7,112,2,114,0,0,1,204,0,0,97,61,0,0,0,0,8,0,0,25],[0,0,0,5,9,128,2,16,0,0,0,0,10,150,0,25,0,0,0,0,9,149,3,79,0,0,0,0,9,9,4,59],[0,0,0,0,0,154,4,53,0,0,0,1,8,128,0,57,0,0,0,0,9,120,0,75,0,0,1,196,0,0,65,61],[0,0,0,0,7,0,0,75,0,0,1,206,0,0,97,61,0,0,0,8,7,0,0,41,0,0,0,0,7,7,4,51],[0,0,0,0,7,7,0,75,0,0,12,17,0,0,97,61,0,0,0,0,7,6,4,51,0,0,5,59,7,112,1,151],[0,0,0,248,8,32,2,16,0,0,0,0,7,120,1,159,0,0,5,61,7,112,0,65,0,0,0,0,0,118,4,53],[0,0,0,3,2,32,2,16,0,0,0,248,2,32,0,137,0,0,0,0,1,33,1,207,0,0,0,255,2,32,0,140],[0,0,0,0,1,0,32,25,0,0,0,8,2,0,0,41,0,0,0,33,2,32,0,57,0,0,2,178,0,0,1,61],[0,0,0,0,67,18,0,169,0,0,0,0,66,35,0,217,0,0,0,0,1,18,0,75,0,0,16,208,0,0,193,61],[0,0,0,0,4,0,4,21,0,0,0,11,4,64,0,138,0,0,0,32,4,64,0,201,0,0,0,0,1,0,4,20],[0,11,0,0,0,0,0,29,0,0,0,0,2,3,0,75,0,0,0,237,0,0,97,61,0,0,5,2,2,0,0,65],[0,0,5,2,4,16,0,156,0,0,0,0,1,2,128,25,0,0,0,192,1,16,2,16,0,0,5,13,1,16,1,199],[0,0,128,9,2,0,0,57,0,0,128,1,4,0,0,57,0,0,0,0,5,0,0,25,20,1,19,237,0,0,4,15],[0,0,0,0,3,0,4,21,0,0,0,11,3,48,0,138,0,0,0,32,3,48,0,201,0,0,0,245,0,0,1,61],[0,0,0,160,8,128,0,57,0,0,0,0,8,129,3,79,0,0,0,0,8,8,4,59,0,0,0,31,5,80,0,138],[0,0,5,11,9,0,0,65,0,0,0,0,10,88,0,75,0,0,0,0,10,0,0,25,0,0,0,0,10,9,128,25],[0,0,5,11,5,80,1,151,0,0,5,11,11,128,1,151,0,0,0,0,12,91,0,75,0,0,0,0,9,0,128,25],[0,0,0,0,5,91,1,63,0,0,5,11,5,80,0,156,0,0,0,0,9,10,192,25,0,0,0,0,5,9,0,75],[0,0,1,39,0,0,193,61,0,0,0,0,2,40,0,25,0,0,0,0,5,33,3,79,0,0,0,0,8,5,4,59],[0,0,5,10,5,128,0,156,0,0,1,39,0,0,33,61,0,0,0,0,5,134,0,73,0,0,0,32,9,32,0,57],[0,0,5,11,2,0,0,65,0,0,0,0,10,89,0,75,0,0,0,0,10,0,0,25,0,0,0,0,10,2,32,25],[0,0,5,11,5,80,1,151,0,0,5,11,11,144,1,151,0,0,0,0,12,91,0,75,0,0,0,0,2,0,128,25],[0,0,0,0,5,91,1,63,0,0,5,11,5,80,0,156,0,0,0,0,2,10,192,25,0,0,0,0,2,2,0,75],[0,0,1,39,0,0,193,61,0,0,0,0,2,0,4,20,0,0,5,2,5,32,0,156,0,0,0,187,0,0,33,61],[0,0,128,6,5,64,0,140,0,0,0,0,5,0,0,25,0,0,2,52,0,0,193,61,0,0,0,4,5,128,0,140],[0,0,0,0,5,0,0,25,0,0,2,52,0,0,65,61,0,0,0,0,10,145,3,79,0,0,0,1,5,0,0,57],[0,0,0,0,10,10,4,59,0,0,5,19,10,160,1,151,0,0,5,20,11,160,0,156,0,0,2,51,0,0,97,61],[0,0,5,21,11,160,0,156,0,0,2,51,0,0,97,61,0,0,5,22,11,160,0,156,0,0,2,51,0,0,97,61],[0,0,5,23,5,160,0,156,0,0,0,0,5,0,0,25,0,0,0,1,5,0,96,57,0,0,0,1,5,80,1,143],[0,0,0,0,10,152,0,25,0,0,0,0,6,166,0,75,0,0,0,0,6,0,0,25,0,0,0,1,6,0,64,57],[0,0,0,0,8,138,0,75,0,0,0,1,6,96,65,191,0,0,5,2,8,144,1,151,0,0,0,0,1,129,3,79],[0,0,0,0,8,3,0,75,0,0,3,99,0,0,193,61,0,0,0,1,3,96,1,144,0,0,16,208,0,0,193,61],[0,0,5,25,3,0,0,65,0,0,5,26,6,0,0,65,0,0,0,0,5,5,0,75,0,0,0,0,6,3,192,25],[0,0,0,192,2,32,2,16,0,0,5,24,2,32,1,151,0,0,0,0,2,38,1,159,0,0,0,0,3,167,0,73],[0,0,5,2,3,48,1,151,0,0,0,0,1,49,3,223,0,0,0,0,1,33,3,175,0,0,0,0,2,4,0,25],[0,0,3,110,0,0,1,61,0,0,0,0,1,6,4,51,0,0,5,2,2,0,0,65,0,0,5,2,3,16,0,156],[0,0,0,0,1,2,128,25,0,0,5,2,3,112,0,156,0,0,0,0,7,2,128,25,0,0,0,64,2,112,2,16],[0,0,0,96,1,16,2,16,0,0,0,0,1,33,1,159,0,0,20,3,0,1,4,48,0,0,0,0,7,81,3,79],[0,0,0,0,7,7,4,59,0,0,5,19,7,112,1,151,0,0,5,29,8,112,0,156,0,0,2,255,0,0,193,61],[0,0,0,67,4,64,0,140,0,0,3,120,0,0,33,61,0,0,5,16,1,0,0,65,0,0,0,128,0,16,4,63],[0,0,0,32,1,0,0,57,0,0,0,132,0,16,4,63,0,0,0,64,1,0,0,57,0,0,0,164,0,16,4,63],[0,0,5,47,1,0,0,65,0,0,0,196,0,16,4,63,0,0,5,48,1,0,0,65,0,0,0,228,0,16,4,63],[0,0,5,49,1,0,0,65,0,0,20,3,0,1,4,48,0,0,0,113,2,16,0,140,0,0,3,9,0,0,193,61],[0,0,0,10,2,0,0,41,0,0,1,196,1,32,0,57,0,0,0,0,1,19,3,79,0,0,0,0,2,36,0,73],[0,0,0,35,2,32,0,138,0,0,0,0,1,1,4,59,0,0,5,11,5,0,0,65,0,0,0,0,6,33,0,75],[0,0,0,0,6,0,0,25,0,0,0,0,6,5,128,25,0,0,5,11,2,32,1,151,0,0,5,11,7,16,1,151],[0,0,0,0,8,39,0,75,0,0,0,0,5,0,128,25,0,0,0,0,2,39,1,63,0,0,5,11,2,32,0,156],[0,0,0,0,5,6,192,25,0,0,0,0,2,5,0,75,0,0,1,39,0,0,193,61,0,0,0,9,1,16,0,41],[0,0,0,0,2,19,3,79,0,0,0,0,2,2,4,59,0,0,5,10,5,32,0,156,0,0,1,39,0,0,33,61],[0,0,0,0,5,36,0,73,0,0,0,32,1,16,0,57,0,0,5,11,6,0,0,65,0,0,0,0,7,81,0,75],[0,0,0,0,7,0,0,25,0,0,0,0,7,6,32,25,0,0,5,11,5,80,1,151,0,0,5,11,8,16,1,151],[0,0,0,0,9,88,0,75,0,0,0,0,6,0,128,25,0,0,0,0,5,88,1,63,0,0,5,11,5,80,0,156],[0,0,0,0,6,7,192,25,0,0,0,0,5,6,0,75,0,0,1,39,0,0,193,61,0,0,0,0,5,18,0,26],[0,0,0,0,2,0,4,20,0,0,16,208,0,0,65,61,0,0,0,0,6,84,0,75,0,0,16,208,0,0,65,61],[0,0,5,67,6,32,0,156,0,0,6,77,0,0,65,61,0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57],[0,0,5,27,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,36,2,16,0,57,0,0,0,8,3,0,0,57],[0,0,4,110,0,0,1,61,0,0,5,58,2,144,0,156,0,0,18,165,0,0,33,61,0,0,0,8,6,0,0,41],[0,0,0,64,2,96,0,57,0,0,0,64,0,32,4,63,0,0,0,1,2,0,0,58,0,0,0,0,2,38,4,54],[0,0,0,0,6,80,3,80,0,0,0,0,6,6,4,59,0,0,0,0,0,98,4,53,0,0,12,17,0,0,97,61],[0,0,0,248,7,16,2,16,0,0,5,11,8,0,0,65,0,0,0,0,1,1,0,75,0,0,0,0,8,7,192,25],[0,0,5,59,1,96,1,151,0,0,0,0,1,129,1,159,0,0,0,0,0,18,4,53,0,0,0,64,1,0,4,61],[0,0,0,6,2,0,0,41,0,0,0,96,2,32,0,138,0,0,0,0,6,35,3,79,0,0,0,0,6,6,4,59],[0,0,0,128,7,96,0,140,0,0,3,241,0,0,65,61,0,0,0,128,7,96,2,112,0,0,5,60,8,96,0,156],[0,0,0,0,7,6,160,25,0,0,5,60,8,96,0,156,0,0,0,0,8,0,0,25,0,0,0,16,8,0,32,57],[0,0,0,8,9,128,1,191,0,0,5,10,10,112,0,156,0,0,0,0,9,8,160,25,0,0,0,64,8,112,2,112],[0,0,5,10,10,112,0,156,0,0,0,0,8,7,160,25,0,0,0,4,10,144,1,191,0,0,5,2,7,128,0,156],[0,0,0,0,10,9,160,25,0,0,0,32,9,128,2,112,0,0,5,2,7,128,0,156,0,0,0,0,9,8,160,25],[0,0,0,2,7,160,1,191,0,0,255,255,8,144,0,140,0,0,0,0,7,10,160,25,0,0,0,16,8,144,2,112],[0,0,0,0,8,9,160,25,0,0,0,255,8,128,0,140,0,0,0,1,7,112,32,57,0,0,0,32,8,0,0,138],[0,0,0,65,9,112,0,57,0,0,0,0,8,137,1,111,0,0,0,0,8,129,0,25,0,0,0,0,9,24,0,75],[0,0,0,0,9,0,0,25,0,0,0,1,9,0,64,57,0,0,5,10,10,128,0,156,0,0,18,165,0,0,33,61],[0,0,0,1,9,144,1,144,0,0,18,165,0,0,193,61,0,0,0,64,0,128,4,63,0,0,0,2,8,112,0,57],[0,0,0,0,8,129,4,54,0,0,0,33,9,112,0,57,0,0,0,5,9,144,2,114,0,0,2,237,0,0,97,61],[0,0,0,0,10,0,0,25,0,0,0,5,11,160,2,16,0,0,0,0,12,184,0,25,0,0,0,0,11,181,3,79],[0,0,0,0,11,11,4,59,0,0,0,0,0,188,4,53,0,0,0,1,10,160,0,57,0,0,0,0,11,154,0,75],[0,0,2,229,0,0,65,61,0,0,0,0,9,0,0,75,0,0,2,239,0,0,97,61,0,0,0,0,9,1,4,51],[0,0,0,0,9,9,0,75,0,0,12,17,0,0,97,61,0,0,0,0,9,8,4,51,0,0,5,59,9,144,1,151],[0,0,0,248,10,112,2,16,0,0,0,0,9,154,1,159,0,0,5,61,9,144,0,65,0,0,0,0,0,152,4,53],[0,0,0,3,7,112,2,16,0,0,0,248,7,112,0,137,0,0,0,0,6,118,1,207,0,0,0,255,7,112,0,140],[0,0,0,0,6,0,32,25,0,0,0,33,7,16,0,57,0,0,4,1,0,0,1,61,0,0,5,30,1,112,0,156],[0,0,3,118,0,0,97,61,0,0,5,16,1,0,0,65,0,0,0,128,0,16,4,63,0,0,0,32,1,0,0,57],[0,0,0,132,0,16,4,63,0,0,0,26,1,0,0,57,0,0,0,164,0,16,4,63,0,0,5,31,1,0,0,65],[0,0,0,194,0,0,1,61,0,0,0,2,2,16,0,140,0,0,3,151,0,0,193,61,0,0,5,56,1,0,0,65],[0,0,0,0,0,16,4,57,0,0,5,2,1,0,0,65,0,0,0,0,2,0,4,20,0,0,5,2,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,5,57,1,16,1,199,0,0,128,11,2,0,0,57],[20,1,19,242,0,0,4,15,0,0,0,1,2,32,1,144,0,0,16,244,0,0,97,61,0,0,0,64,3,0,4,61],[0,0,0,0,4,1,4,59,0,0,0,128,1,64,0,140,0,0,4,122,0,0,65,61,0,0,0,128,1,64,2,112],[0,0,5,60,2,64,0,156,0,0,0,0,1,4,160,25,0,0,5,60,2,64,0,156,0,0,0,0,2,0,0,25],[0,0,0,16,2,0,32,57,0,0,0,8,5,32,1,191,0,0,5,10,6,16,0,156,0,0,0,0,5,2,160,25],[0,0,0,64,2,16,2,112,0,0,5,10,6,16,0,156,0,0,0,0,2,1,160,25,0,0,0,4,1,80,1,191],[0,0,5,2,6,32,0,156,0,0,0,0,1,5,160,25,0,0,0,32,6,32,2,112,0,0,5,2,5,32,0,156],[0,0,0,0,6,2,160,25,0,0,0,2,5,16,1,191,0,0,255,255,2,96,0,140,0,0,0,0,5,1,160,25],[0,0,0,16,1,96,2,112,0,0,0,0,1,6,160,25,0,0,0,255,1,16,0,140,0,0,0,1,5,80,32,57],[0,0,0,32,1,0,0,138,0,0,0,65,2,80,0,57,0,0,0,0,1,18,1,111,0,0,0,0,1,19,0,25],[0,0,0,0,2,49,0,75,0,0,0,0,2,0,0,25,0,0,0,1,2,0,64,57,0,0,5,10,6,16,0,156],[0,0,18,165,0,0,33,61,0,0,0,1,2,32,1,144,0,0,18,165,0,0,193,61,0,0,0,64,0,16,4,63],[0,0,0,2,1,80,0,57,0,0,0,0,6,19,4,54,0,0,0,2,1,0,3,103,0,0,0,0,2,0,0,49],[0,0,0,33,7,80,0,57,0,0,0,5,7,112,2,114,0,0,3,81,0,0,97,61,0,0,0,0,8,33,3,79],[0,0,0,0,9,0,0,25,0,0,0,5,10,144,2,16,0,0,0,0,11,166,0,25,0,0,0,0,10,168,3,79],[0,0,0,0,10,10,4,59,0,0,0,0,0,171,4,53,0,0,0,1,9,144,0,57,0,0,0,0,10,121,0,75],[0,0,3,73,0,0,65,61,0,0,0,0,7,0,0,75,0,0,3,83,0,0,97,61,0,0,0,0,7,3,4,51],[0,0,0,0,7,7,0,75,0,0,12,17,0,0,97,61,0,0,0,0,7,6,4,51,0,0,5,59,7,112,1,151],[0,0,0,248,8,80,2,16,0,0,0,0,7,120,1,159,0,0,5,61,7,112,0,65,0,0,0,0,0,118,4,53],[0,0,0,3,5,80,2,16,0,0,0,248,5,80,0,137,0,0,0,0,4,84,1,207,0,0,0,255,5,80,0,140],[0,0,0,0,4,0,32,25,0,0,0,33,5,48,0,57,0,0,4,141,0,0,1,61,0,0,0,1,6,96,1,144],[0,0,16,208,0,0,193,61,0,0,0,0,6,167,0,73,0,0,5,2,6,96,1,151,0,0,0,0,1,97,3,223],[0,0,0,192,2,32,2,16,0,0,5,24,2,32,1,151,0,0,5,25,2,32,1,199,0,0,0,0,1,33,3,175],[0,0,128,9,2,0,0,57,0,0,0,0,6,0,0,25,20,1,19,247,0,0,4,15,0,3,0,0,0,1,3,85],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,1,5,2,0,48,1,157,0,0,5,2,3,48,1,151],[0,0,0,1,2,32,1,144,0,0,4,77,0,0,97,61,0,0,0,0,1,0,0,25,0,0,20,2,0,1,4,46],[0,0,0,4,4,80,0,57,0,0,0,0,5,65,3,79,0,0,0,0,5,5,4,59,0,9,0,0,0,5,0,29],[0,0,5,12,5,80,0,156,0,0,1,39,0,0,33,61,0,0,1,64,3,48,0,138,0,0,0,0,3,49,3,79],[0,0,0,32,4,64,0,57,0,0,0,0,4,65,3,79,0,0,0,0,4,4,4,59,0,8,0,0,0,4,0,29],[0,0,0,0,3,3,4,59,0,0,5,32,4,0,0,65,0,0,0,128,0,64,4,63,0,0,5,12,2,32,1,151],[0,6,0,0,0,2,0,29,0,0,0,132,0,32,4,63,0,0,5,12,2,48,1,151,0,7,0,0,0,2,0,29],[0,0,0,164,0,32,4,63,0,0,0,0,2,0,4,20,0,0,0,9,3,0,0,41,0,0,0,4,3,48,0,140],[0,0,4,217,0,0,193,61,0,0,0,0,1,97,3,79,0,0,0,1,3,0,0,49,0,0,0,32,2,48,0,140],[0,0,0,0,4,3,0,25,0,0,0,32,4,0,128,57,0,0,5,5,0,0,1,61,0,0,0,1,1,16,0,140],[0,0,4,104,0,0,193,61,0,0,5,56,1,0,0,65,0,0,0,0,0,16,4,57,0,0,5,2,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,5,2,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,5,57,1,16,1,199,0,0,128,11,2,0,0,57,20,1,19,242,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,16,244,0,0,97,61,0,0,0,64,3,0,4,61,0,0,0,0,4,1,4,59,0,0,0,128,1,64,0,140],[0,0,5,45,0,0,65,61,0,0,0,128,1,64,2,112,0,0,5,60,2,64,0,156,0,0,0,0,1,4,160,25],[0,0,5,60,2,64,0,156,0,0,0,0,2,0,0,25,0,0,0,16,2,0,32,57,0,0,0,8,5,32,1,191],[0,0,5,10,6,16,0,156,0,0,0,0,5,2,160,25,0,0,0,64,2,16,2,112,0,0,5,10,6,16,0,156],[0,0,0,0,2,1,160,25,0,0,0,4,1,80,1,191,0,0,5,2,6,32,0,156,0,0,0,0,1,5,160,25],[0,0,0,32,6,32,2,112,0,0,5,2,5,32,0,156,0,0,0,0,6,2,160,25,0,0,0,2,5,16,1,191],[0,0,255,255,2,96,0,140,0,0,0,0,5,1,160,25,0,0,0,16,1,96,2,112,0,0,0,0,1,6,160,25],[0,0,0,255,1,16,0,140,0,0,0,1,5,80,32,57,0,0,0,32,1,0,0,138,0,0,0,65,2,80,0,57],[0,0,0,0,1,18,1,111,0,0,0,0,1,19,0,25,0,0,0,0,2,49,0,75,0,0,0,0,2,0,0,25],[0,0,0,1,2,0,64,57,0,0,5,10,6,16,0,156,0,0,18,165,0,0,33,61,0,0,0,1,2,32,1,144],[0,0,18,165,0,0,193,61,0,0,0,64,0,16,4,63,0,0,0,2,1,80,0,57,0,0,0,0,6,19,4,54],[0,0,0,2,1,0,3,103,0,0,0,0,2,0,0,49,0,0,0,33,7,80,0,57,0,0,0,5,7,112,2,114],[0,0,3,223,0,0,97,61,0,0,0,0,8,33,3,79,0,0,0,0,9,0,0,25,0,0,0,5,10,144,2,16],[0,0,0,0,11,166,0,25,0,0,0,0,10,168,3,79,0,0,0,0,10,10,4,59,0,0,0,0,0,171,4,53],[0,0,0,1,9,144,0,57,0,0,0,0,10,121,0,75,0,0,3,215,0,0,65,61,0,0,0,0,7,0,0,75],[0,0,3,225,0,0,97,61,0,0,0,0,7,3,4,51,0,0,0,0,7,7,0,75,0,0,12,17,0,0,97,61],[0,0,0,0,7,6,4,51,0,0,5,59,7,112,1,151,0,0,0,248,8,80,2,16,0,0,0,0,7,120,1,159],[0,0,5,61,7,112,0,65,0,0,0,0,0,118,4,53,0,0,0,3,5,80,2,16,0,0,0,248,5,80,0,137],[0,0,0,0,4,84,1,207,0,0,0,255,5,80,0,140,0,0,0,0,4,0,32,25,0,0,0,33,5,48,0,57],[0,0,5,64,0,0,1,61,0,0,5,58,7,16,0,156,0,0,18,165,0,0,33,61,0,0,0,64,7,16,0,57],[0,0,0,64,0,112,4,63,0,0,0,1,7,0,0,58,0,0,0,0,7,113,4,54,0,0,0,0,8,80,3,80],[0,0,0,0,8,8,4,59,0,0,0,0,0,135,4,53,0,0,12,17,0,0,97,61,0,0,0,248,9,96,2,16],[0,0,5,11,10,0,0,65,0,0,0,0,6,6,0,75,0,0,0,0,10,9,192,25,0,0,5,59,6,128,1,151],[0,0,0,0,6,166,1,159,0,0,0,0,0,103,4,53,0,0,0,64,2,32,0,138,0,0,0,0,6,35,3,79],[0,0,0,64,2,0,4,61,0,0,0,0,6,6,4,59,0,0,0,128,7,96,0,140,0,0,5,140,0,0,65,61],[0,0,0,128,7,96,2,112,0,0,5,60,8,96,0,156,0,0,0,0,7,6,160,25,0,0,5,60,8,96,0,156],[0,0,0,0,8,0,0,25,0,0,0,16,8,0,32,57,0,0,0,8,9,128,1,191,0,0,5,10,10,112,0,156],[0,0,0,0,9,8,160,25,0,0,0,64,8,112,2,112,0,0,5,10,10,112,0,156,0,0,0,0,8,7,160,25],[0,0,0,4,10,144,1,191,0,0,5,2,7,128,0,156,0,0,0,0,10,9,160,25,0,0,0,32,9,128,2,112],[0,0,5,2,7,128,0,156,0,0,0,0,9,8,160,25,0,0,0,2,7,160,1,191,0,0,255,255,8,144,0,140],[0,0,0,0,7,10,160,25,0,0,0,16,8,144,2,112,0,0,0,0,8,9,160,25,0,0,0,255,8,128,0,140],[0,0,0,1,7,112,32,57,0,0,0,32,8,0,0,138,0,0,0,65,9,112,0,57,0,0,0,0,8,137,1,111],[0,0,0,0,8,130,0,25,0,0,0,0,9,40,0,75,0,0,0,0,9,0,0,25,0,0,0,1,9,0,64,57],[0,0,5,10,10,128,0,156,0,0,18,165,0,0,33,61,0,0,0,1,9,144,1,144,0,0,18,165,0,0,193,61],[0,0,0,64,0,128,4,63,0,0,0,2,8,112,0,57,0,0,0,0,8,130,4,54,0,0,0,33,9,112,0,57],[0,0,0,5,9,144,2,114,0,0,4,59,0,0,97,61,0,0,0,0,10,0,0,25,0,0,0,5,11,160,2,16],[0,0,0,0,12,184,0,25,0,0,0,0,11,181,3,79,0,0,0,0,11,11,4,59,0,0,0,0,0,188,4,53],[0,0,0,1,10,160,0,57,0,0,0,0,11,154,0,75,0,0,4,51,0,0,65,61,0,0,0,0,9,0,0,75],[0,0,4,61,0,0,97,61,0,0,0,0,9,2,4,51,0,0,0,0,9,9,0,75,0,0,12,17,0,0,97,61],[0,0,0,0,9,8,4,51,0,0,5,59,9,144,1,151,0,0,0,248,10,112,2,16,0,0,0,0,9,154,1,159],[0,0,5,61,9,144,0,65,0,0,0,0,0,152,4,53,0,0,0,3,7,112,2,16,0,0,0,248,7,112,0,137],[0,0,0,0,6,118,1,207,0,0,0,255,7,112,0,140,0,0,0,0,6,0,32,25,0,0,0,33,7,32,0,57],[0,0,5,156,0,0,1,61,0,0,0,31,4,48,1,143,0,0,0,5,2,48,2,114,0,0,4,88,0,0,97,61],[0,0,0,0,5,0,0,25,0,0,0,5,6,80,2,16,0,0,0,0,7,97,3,79,0,0,0,0,7,7,4,59],[0,0,0,0,0,118,4,53,0,0,0,1,5,80,0,57,0,0,0,0,6,37,0,75,0,0,4,81,0,0,65,61],[0,0,0,0,5,4,0,75,0,0,4,102,0,0,97,61,0,0,0,3,4,64,2,16,0,0,0,5,2,32,2,16],[0,0,0,0,5,2,4,51,0,0,0,0,5,69,1,207,0,0,0,0,5,69,2,47,0,0,0,0,1,33,3,79],[0,0,0,0,1,1,4,59,0,0,1,0,4,64,0,137,0,0,0,0,1,65,2,47,0,0,0,0,1,65,1,207],[0,0,0,0,1,81,1,159,0,0,0,0,0,18,4,53,0,0,0,96,1,48,2,16,0,0,20,3,0,1,4,48],[0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57,0,0,5,55,3,0,0,65,0,0,0,0,0,50,4,53],[0,0,0,36,2,16,0,57,0,0,0,23,3,0,0,57,0,0,0,0,0,50,4,53,0,0,5,16,2,0,0,65],[0,0,0,0,0,33,4,53,0,0,0,4,2,16,0,57,0,0,0,32,3,0,0,57,0,0,0,0,0,50,4,53],[0,0,5,2,2,0,0,65,0,0,5,2,3,16,0,156,0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16],[0,0,5,46,1,16,1,199,0,0,20,3,0,1,4,48,0,0,5,58,1,48,0,156,0,0,18,165,0,0,33,61],[0,0,0,64,1,48,0,57,0,0,0,64,0,16,4,63,0,0,0,1,1,0,0,58,0,0,0,0,5,19,4,54],[0,0,0,0,2,0,0,49,0,0,0,2,1,0,3,103,0,0,0,0,6,33,3,79,0,0,0,0,6,96,3,80],[0,0,0,0,6,6,4,59,0,0,0,0,0,101,4,53,0,0,12,17,0,0,97,61,0,0,0,248,7,64,2,16],[0,0,5,11,8,0,0,65,0,0,0,0,4,4,0,75,0,0,0,0,8,7,192,25,0,0,5,59,4,96,1,151],[0,0,0,0,4,132,1,159,0,0,0,0,0,69,4,53,0,0,0,6,5,16,3,96,0,0,0,64,4,0,4,61],[0,0,0,0,5,5,4,59,0,0,0,128,6,80,0,140,0,0,8,32,0,0,65,61,0,0,0,128,6,80,2,112],[0,0,5,60,7,80,0,156,0,0,0,0,6,5,160,25,0,0,5,60,7,80,0,156,0,0,0,0,7,0,0,25],[0,0,0,16,7,0,32,57,0,0,0,8,8,112,1,191,0,0,5,10,9,96,0,156,0,0,0,0,8,7,160,25],[0,0,0,64,7,96,2,112,0,0,5,10,9,96,0,156,0,0,0,0,7,6,160,25,0,0,0,4,9,128,1,191],[0,0,5,2,6,112,0,156,0,0,0,0,9,8,160,25,0,0,0,32,8,112,2,112,0,0,5,2,6,112,0,156],[0,0,0,0,8,7,160,25,0,0,0,2,6,144,1,191,0,0,255,255,7,128,0,140,0,0,0,0,6,9,160,25],[0,0,0,16,7,128,2,112,0,0,0,0,7,8,160,25,0,0,0,255,7,112,0,140,0,0,0,1,6,96,32,57],[0,0,0,32,7,0,0,138,0,0,0,65,8,96,0,57,0,0,0,0,7,120,1,111,0,0,0,0,7,116,0,25],[0,0,0,0,8,71,0,75,0,0,0,0,8,0,0,25,0,0,0,1,8,0,64,57,0,0,5,10,9,112,0,156],[0,0,18,165,0,0,33,61,0,0,0,1,8,128,1,144,0,0,18,165,0,0,193,61,0,0,0,64,0,112,4,63],[0,0,0,2,7,96,0,57,0,0,0,0,7,116,4,54,0,0,0,33,8,96,0,57,0,0,0,5,8,128,2,114],[0,0,4,199,0,0,97,61,0,0,0,0,9,33,3,79,0,0,0,0,10,0,0,25,0,0,0,5,11,160,2,16],[0,0,0,0,12,183,0,25,0,0,0,0,11,185,3,79,0,0,0,0,11,11,4,59,0,0,0,0,0,188,4,53],[0,0,0,1,10,160,0,57,0,0,0,0,11,138,0,75,0,0,4,191,0,0,65,61,0,0,0,0,8,0,0,75],[0,0,4,201,0,0,97,61,0,0,0,0,8,4,4,51,0,0,0,0,8,8,0,75,0,0,12,17,0,0,97,61],[0,0,0,0,8,7,4,51,0,0,5,59,8,128,1,151,0,0,0,248,9,96,2,16,0,0,0,0,8,137,1,159],[0,0,5,61,8,128,0,65,0,0,0,0,0,135,4,53,0,0,0,3,6,96,2,16,0,0,0,248,6,96,0,137],[0,0,0,0,5,101,1,207,0,0,0,255,6,96,0,140,0,0,0,0,5,0,32,25,0,0,0,33,6,64,0,57],[0,0,8,49,0,0,1,61,0,0,5,2,1,0,0,65,0,0,5,2,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,192,1,32,2,16,0,0,5,33,1,16,1,199,0,0,0,9,2,0,0,41,20,1,19,242,0,0,4,15],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,5,2,3,48,1,151,0,0,0,32,4,48,0,140],[0,0,0,0,4,3,0,25,0,0,0,32,4,0,128,57,0,0,0,31,5,64,1,143,0,0,0,5,6,64,2,114],[0,0,4,242,0,0,97,61,0,0,0,0,7,0,0,25,0,0,0,5,8,112,2,16,0,0,0,0,9,129,3,79],[0,0,0,0,9,9,4,59,0,0,0,128,8,128,0,57,0,0,0,0,0,152,4,53,0,0,0,1,7,112,0,57],[0,0,0,0,8,103,0,75,0,0,4,234,0,0,65,61,0,0,0,0,7,5,0,75,0,0,5,1,0,0,97,61],[0,0,0,5,6,96,2,16,0,0,0,0,7,97,3,79,0,0,0,3,5,80,2,16,0,0,0,128,6,96,0,57],[0,0,0,0,8,6,4,51,0,0,0,0,8,88,1,207,0,0,0,0,8,88,2,47,0,0,0,0,7,7,4,59],[0,0,1,0,5,80,0,137,0,0,0,0,7,87,2,47,0,0,0,0,5,87,1,207,0,0,0,0,5,133,1,159],[0,0,0,0,0,86,4,53,0,1,0,0,0,3,0,31,0,3,0,0,0,1,3,85,0,0,0,1,2,32,1,144],[0,0,6,42,0,0,97,61,0,0,0,31,2,64,0,57,0,0,0,96,5,32,1,143,0,0,0,128,2,80,1,191],[0,0,0,64,0,32,4,63,0,0,0,32,4,48,0,140,0,0,1,39,0,0,65,61,0,0,0,128,4,0,4,61],[0,0,0,8,4,64,0,108,0,0,3,118,0,0,129,61,0,0,0,160,4,80,0,57,0,0,5,34,6,0,0,65],[0,0,0,0,0,100,4,53,0,0,0,164,6,80,0,57,0,0,0,7,7,0,0,41,0,0,0,0,0,118,4,53],[0,0,0,196,6,80,0,57,0,0,0,0,0,6,4,53,0,0,0,68,6,0,0,57,0,1,0,0,0,6,0,29],[0,0,0,0,0,98,4,53,0,0,1,64,6,80,0,57,0,0,0,64,0,96,4,63,0,0,1,32,7,80,0,57],[0,0,5,35,6,0,0,65,0,3,0,0,0,7,0,29,0,0,0,0,0,103,4,53,0,0,1,0,6,80,1,191],[0,0,0,32,5,0,0,57,0,4,0,0,0,5,0,29,0,2,0,0,0,6,0,29,0,0,0,0,0,86,4,53],[0,0,0,0,5,2,4,51,0,0,0,0,2,0,4,20,0,0,0,9,6,0,0,41,0,0,0,4,6,96,0,140],[0,0,8,127,0,0,193,61,0,0,0,1,2,0,0,57,0,0,5,10,4,48,0,156,0,0,18,165,0,0,33,61],[0,0,8,147,0,0,1,61,0,0,5,58,1,48,0,156,0,0,18,165,0,0,33,61,0,0,0,64,1,48,0,57],[0,0,0,64,0,16,4,63,0,0,0,1,1,0,0,58,0,0,0,0,5,19,4,54,0,0,0,0,2,0,0,49],[0,0,0,2,1,0,3,103,0,0,0,0,6,33,3,79,0,0,0,0,6,96,3,80,0,0,0,0,6,6,4,59],[0,0,0,0,0,101,4,53,0,0,12,17,0,0,97,61,0,0,0,248,7,64,2,16,0,0,5,11,8,0,0,65],[0,0,0,0,4,4,0,75,0,0,0,0,8,7,192,25,0,0,5,59,4,96,1,151,0,0,0,0,4,132,1,159],[0,0,0,0,0,69,4,53,0,0,0,6,5,16,3,96,0,0,0,64,4,0,4,61,0,0,0,0,5,5,4,59],[0,0,0,128,6,80,0,140,0,0,8,225,0,0,65,61,0,0,0,128,6,80,2,112,0,0,5,60,7,80,0,156],[0,0,0,0,6,5,160,25,0,0,5,60,7,80,0,156,0,0,0,0,7,0,0,25,0,0,0,16,7,0,32,57],[0,0,0,8,8,112,1,191,0,0,5,10,9,96,0,156,0,0,0,0,8,7,160,25,0,0,0,64,7,96,2,112],[0,0,5,10,9,96,0,156,0,0,0,0,7,6,160,25,0,0,0,4,9,128,1,191,0,0,5,2,6,112,0,156],[0,0,0,0,9,8,160,25,0,0,0,32,8,112,2,112,0,0,5,2,6,112,0,156,0,0,0,0,8,7,160,25],[0,0,0,2,6,144,1,191,0,0,255,255,7,128,0,140,0,0,0,0,6,9,160,25,0,0,0,16,7,128,2,112],[0,0,0,0,7,8,160,25,0,0,0,255,7,112,0,140,0,0,0,1,6,96,32,57,0,0,0,32,7,0,0,138],[0,0,0,65,8,96,0,57,0,0,0,0,7,120,1,111,0,0,0,0,7,116,0,25,0,0,0,0,8,71,0,75],[0,0,0,0,8,0,0,25,0,0,0,1,8,0,64,57,0,0,5,10,9,112,0,156,0,0,18,165,0,0,33,61],[0,0,0,1,8,128,1,144,0,0,18,165,0,0,193,61,0,0,0,64,0,112,4,63,0,0,0,2,7,96,0,57],[0,0,0,0,7,116,4,54,0,0,0,33,8,96,0,57,0,0,0,5,8,128,2,114,0,0,5,122,0,0,97,61],[0,0,0,0,9,33,3,79,0,0,0,0,10,0,0,25,0,0,0,5,11,160,2,16,0,0,0,0,12,183,0,25],[0,0,0,0,11,185,3,79,0,0,0,0,11,11,4,59,0,0,0,0,0,188,4,53,0,0,0,1,10,160,0,57],[0,0,0,0,11,138,0,75,0,0,5,114,0,0,65,61,0,0,0,0,8,0,0,75,0,0,5,124,0,0,97,61],[0,0,0,0,8,4,4,51,0,0,0,0,8,8,0,75,0,0,12,17,0,0,97,61,0,0,0,0,8,7,4,51],[0,0,5,59,8,128,1,151,0,0,0,248,9,96,2,16,0,0,0,0,8,137,1,159,0,0,5,61,8,128,0,65],[0,0,0,0,0,135,4,53,0,0,0,3,6,96,2,16,0,0,0,248,6,96,0,137,0,0,0,0,5,101,1,207],[0,0,0,255,6,96,0,140,0,0,0,0,5,0,32,25,0,0,0,33,6,64,0,57,0,0,8,242,0,0,1,61],[0,0,5,58,7,32,0,156,0,0,18,165,0,0,33,61,0,0,0,64,7,32,0,57,0,0,0,64,0,112,4,63],[0,0,0,1,7,0,0,58,0,0,0,0,7,114,4,54,0,0,0,0,8,80,3,80,0,0,0,0,8,8,4,59],[0,0,0,0,0,135,4,53,0,0,12,17,0,0,97,61,0,0,0,248,9,96,2,16,0,0,5,11,10,0,0,65],[0,0,0,0,6,6,0,75,0,0,0,0,10,9,192,25,0,0,5,59,6,128,1,151,0,0,0,0,6,166,1,159],[0,0,0,0,0,103,4,53,0,0,0,64,6,0,4,61,0,6,0,0,0,6,0,29,0,0,0,32,7,96,0,57],[0,0,0,0,6,1,4,51,0,0,0,0,8,6,0,75,0,0,5,171,0,0,97,61,0,0,0,0,8,0,0,25],[0,0,0,0,9,120,0,25,0,0,0,32,8,128,0,57,0,0,0,0,10,24,0,25,0,0,0,0,10,10,4,51],[0,0,0,0,0,169,4,53,0,0,0,0,9,104,0,75,0,0,5,164,0,0,65,61,0,0,0,0,1,118,0,25],[0,0,0,0,0,1,4,53,0,0,0,0,7,2,4,51,0,0,0,0,8,7,0,75,0,0,5,184,0,0,97,61],[0,0,0,0,8,0,0,25,0,0,0,0,9,24,0,25,0,0,0,32,8,128,0,57,0,0,0,0,10,40,0,25],[0,0,0,0,10,10,4,51,0,0,0,0,0,169,4,53,0,0,0,0,9,120,0,75,0,0,5,177,0,0,65,61],[0,0,0,0,1,23,0,25,0,0,0,0,0,1,4,53,0,0,0,0,1,103,0,25,0,0,0,6,6,0,0,41],[0,0,0,0,0,22,4,53,0,0,0,63,1,16,0,57,0,2,0,32,0,0,0,146,0,0,0,2,1,16,1,127],[0,0,0,0,2,97,0,25,0,0,0,0,1,18,0,75,0,0,0,0,1,0,0,25,0,0,0,1,1,0,64,57],[0,5,0,0,0,2,0,29,0,0,5,10,2,32,0,156,0,0,18,165,0,0,33,61,0,0,0,1,1,16,1,144],[0,0,18,165,0,0,193,61,0,0,0,5,1,0,0,41,0,0,0,64,0,16,4,63,0,0,5,58,1,16,0,156],[0,0,18,165,0,0,33,61,0,0,0,10,7,0,0,41,0,0,0,68,1,112,0,57,0,0,0,0,1,19,3,79],[0,0,0,0,1,1,4,59,0,0,0,5,8,0,0,41,0,0,0,64,2,128,0,57,0,0,0,64,0,32,4,63],[0,0,0,32,2,128,0,57,0,0,5,62,6,0,0,65,0,0,0,0,0,98,4,53,0,0,0,21,2,0,0,57],[0,0,0,0,0,40,4,53,0,0,0,96,1,16,2,16,0,0,0,33,2,128,0,57,0,0,0,0,0,18,4,53],[0,0,1,36,1,112,0,57,0,0,0,0,2,19,3,79,0,0,0,64,6,0,4,61,0,4,0,0,0,6,0,29],[0,0,0,0,2,2,4,59,0,0,0,128,6,32,0,140,0,0,9,223,0,0,65,61,0,0,0,128,6,32,2,112],[0,0,5,60,7,32,0,156,0,0,0,0,6,2,160,25,0,0,5,60,7,32,0,156,0,0,0,0,7,0,0,25],[0,0,0,16,7,0,32,57,0,0,0,8,8,112,1,191,0,0,5,10,9,96,0,156,0,0,0,0,8,7,160,25],[0,0,0,64,7,96,2,112,0,0,5,10,9,96,0,156,0,0,0,0,7,6,160,25,0,0,0,4,9,128,1,191],[0,0,5,2,6,112,0,156,0,0,0,0,9,8,160,25,0,0,0,32,8,112,2,112,0,0,5,2,6,112,0,156],[0,0,0,0,8,7,160,25,0,0,0,2,6,144,1,191,0,0,255,255,7,128,0,140,0,0,0,0,6,9,160,25],[0,0,0,16,7,128,2,112,0,0,0,0,7,8,160,25,0,0,0,255,7,112,0,140,0,0,0,1,6,96,32,57],[0,0,0,65,7,96,0,57,0,0,0,2,7,112,1,127,0,0,0,4,7,112,0,41,0,0,0,4,8,112,0,108],[0,0,0,0,8,0,0,25,0,0,0,1,8,0,64,57,0,0,5,10,9,112,0,156,0,0,18,165,0,0,33,61],[0,0,0,1,8,128,1,144,0,0,18,165,0,0,193,61,0,0,0,64,0,112,4,63,0,0,0,2,7,96,0,57],[0,0,0,4,8,0,0,41,0,0,0,0,7,120,4,54,0,0,0,33,8,96,0,57,0,0,0,5,8,128,2,114],[0,0,6,22,0,0,97,61,0,0,0,0,9,0,0,25,0,0,0,5,10,144,2,16,0,0,0,0,11,167,0,25],[0,0,0,0,10,165,3,79,0,0,0,0,10,10,4,59,0,0,0,0,0,171,4,53,0,0,0,1,9,144,0,57],[0,0,0,0,10,137,0,75,0,0,6,14,0,0,65,61,0,0,0,0,8,0,0,75,0,0,6,24,0,0,97,61],[0,0,0,4,8,0,0,41,0,0,0,0,8,8,4,51,0,0,0,0,8,8,0,75,0,0,12,17,0,0,97,61],[0,0,0,0,8,7,4,51,0,0,5,59,8,128,1,151,0,0,0,248,9,96,2,16,0,0,0,0,8,137,1,159],[0,0,5,61,8,128,0,65,0,0,0,0,0,135,4,53,0,0,0,3,6,96,2,16,0,0,0,248,6,96,0,137],[0,0,0,0,2,98,1,207,0,0,0,255,6,96,0,140,0,0,0,0,2,0,32,25,0,0,0,4,6,0,0,41],[0,0,0,33,6,96,0,57,0,0,9,241,0,0,1,61,0,0,0,64,2,0,4,61,0,0,0,31,4,48,1,143],[0,0,0,5,5,48,2,114,0,0,6,55,0,0,97,61,0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16],[0,0,0,0,8,114,0,25,0,0,0,0,7,113,3,79,0,0,0,0,7,7,4,59,0,0,0,0,0,120,4,53],[0,0,0,1,6,96,0,57,0,0,0,0,7,86,0,75,0,0,6,47,0,0,65,61,0,0,0,0,6,4,0,75],[0,0,6,70,0,0,97,61,0,0,0,5,5,80,2,16,0,0,0,0,1,81,3,79,0,0,0,0,5,82,0,25],[0,0,0,3,4,64,2,16,0,0,0,0,6,5,4,51,0,0,0,0,6,70,1,207,0,0,0,0,6,70,2,47],[0,0,0,0,1,1,4,59,0,0,1,0,4,64,0,137,0,0,0,0,1,65,2,47,0,0,0,0,1,65,1,207],[0,0,0,0,1,97,1,159,0,0,0,0,0,21,4,53,0,0,5,2,1,0,0,65,0,0,5,2,4,32,0,156],[0,0,0,0,2,1,128,25,0,0,0,64,1,32,2,16,0,0,0,96,2,48,2,16,0,0,0,0,1,33,1,159],[0,0,20,3,0,1,4,48,0,0,5,2,1,16,1,151,0,0,0,0,1,19,3,79,0,0,0,0,3,84,0,73],[0,0,5,2,3,48,1,151,0,0,0,0,1,49,3,223,0,0,0,192,2,32,2,16,0,0,5,24,2,32,1,151],[0,0,5,26,2,32,1,199,0,0,0,0,1,33,3,175,0,0,128,16,2,0,0,57,20,1,19,252,0,0,4,15],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,1,5,2,0,48,1,157,0,0,5,2,5,48,1,151],[0,3,0,0,0,1,3,85,0,0,0,1,2,32,1,144,0,0,9,64,0,0,97,61,0,0,0,63,2,80,0,57],[0,0,5,54,2,32,1,151,0,0,0,64,6,0,4,61,0,0,0,0,2,38,0,25,0,0,0,0,3,98,0,75],[0,0,0,0,3,0,0,25,0,0,0,1,3,0,64,57,0,0,5,10,4,32,0,156,0,0,18,165,0,0,33,61],[0,0,0,1,3,48,1,144,0,0,18,165,0,0,193,61,0,0,0,64,0,32,4,63,0,0,0,0,4,86,4,54],[0,0,0,2,2,0,3,103,0,0,0,0,3,0,0,49,0,0,0,31,7,80,0,57,0,0,0,5,7,112,2,114],[0,0,6,123,0,0,97,61,0,0,0,0,8,50,3,79,0,0,0,0,9,0,0,25,0,0,0,5,10,144,2,16],[0,0,0,0,11,164,0,25,0,0,0,0,10,168,3,79,0,0,0,0,10,10,4,59,0,0,0,0,0,171,4,53],[0,0,0,1,9,144,0,57,0,0,0,0,10,121,0,75,0,0,6,115,0,0,65,61,0,0,0,0,7,0,0,75],[0,0,6,125,0,0,97,61,0,0,0,31,7,80,1,143,0,0,0,5,5,80,2,114,0,0,6,137,0,0,97,61],[0,0,0,0,8,0,0,25,0,0,0,5,9,128,2,16,0,0,0,0,10,148,0,25,0,0,0,0,9,145,3,79],[0,0,0,0,9,9,4,59,0,0,0,0,0,154,4,53,0,0,0,1,8,128,0,57,0,0,0,0,9,88,0,75],[0,0,6,129,0,0,65,61,0,0,0,0,8,7,0,75,0,0,6,152,0,0,97,61,0,0,0,5,5,80,2,16],[0,0,0,0,1,81,3,79,0,0,0,0,5,84,0,25,0,0,0,3,7,112,2,16,0,0,0,0,8,5,4,51],[0,0,0,0,8,120,1,207,0,0,0,0,8,120,2,47,0,0,0,0,1,1,4,59,0,0,1,0,7,112,0,137],[0,0,0,0,1,113,2,47,0,0,0,0,1,113,1,207,0,0,0,0,1,129,1,159,0,0,0,0,0,21,4,53],[0,0,0,0,1,6,4,51,0,0,0,32,1,16,0,140,0,0,9,216,0,0,193,61,0,0,0,10,6,0,0,41],[0,0,0,0,1,99,0,73,0,0,0,35,5,16,0,138,0,8,2,4,0,96,0,61,0,0,0,8,1,32,3,96],[0,0,0,0,1,1,4,59,0,0,5,11,6,0,0,65,0,0,0,0,7,81,0,75,0,0,0,0,7,0,0,25],[0,0,0,0,7,6,128,25,0,0,5,11,5,80,1,151,0,0,5,11,8,16,1,151,0,0,0,0,9,88,0,75],[0,0,0,0,6,0,128,25,0,0,0,0,5,88,1,63,0,0,5,11,5,80,0,156,0,0,0,0,6,7,192,25],[0,0,0,0,5,6,0,75,0,0,1,39,0,0,193,61,0,0,0,0,4,4,4,51,0,5,0,0,0,4,0,29],[0,0,0,9,1,16,0,41,0,0,0,0,4,18,3,79,0,0,0,0,5,4,4,59,0,0,5,10,4,80,0,156],[0,0,1,39,0,0,33,61,0,0,0,5,4,80,2,16,0,0,0,0,3,67,0,73,0,0,0,32,6,16,0,57],[0,0,5,11,1,0,0,65,0,0,0,0,7,54,0,75,0,0,0,0,7,0,0,25,0,0,0,0,7,1,32,25],[0,0,5,11,3,48,1,151,0,0,5,11,8,96,1,151,0,0,0,0,9,56,0,75,0,0,0,0,1,0,128,25],[0,0,0,0,3,56,1,63,0,0,5,11,3,48,0,156,0,0,0,0,1,7,192,25,0,0,0,0,1,1,0,75],[0,0,1,39,0,0,193,61,0,0,0,64,1,0,4,61,0,0,0,32,3,16,0,57,0,0,5,68,5,80,1,152],[0,0,6,211,0,0,97,61,0,0,0,0,2,98,3,79,0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16],[0,0,0,0,8,115,0,25,0,0,0,0,7,114,3,79,0,0,0,0,7,7,4,59,0,0,0,0,0,120,4,53],[0,0,0,1,6,96,0,57,0,0,0,0,7,86,0,75,0,0,6,203,0,0,65,61,0,0,0,0,2,0,0,75],[0,0,6,213,0,0,97,61,0,0,0,0,0,65,4,53,0,0,0,63,2,64,0,57,0,0,0,32,4,0,0,138],[0,0,0,0,2,66,1,111,0,0,0,0,2,33,0,25,0,0,0,0,4,18,0,75,0,0,0,0,4,0,0,25],[0,0,0,1,4,0,64,57,0,0,5,10,5,32,0,156,0,0,18,165,0,0,33,61,0,0,0,1,4,64,1,144],[0,0,18,165,0,0,193,61,0,0,0,64,0,32,4,63,0,0,5,2,2,0,0,65,0,0,5,2,4,48,0,156],[0,0,0,0,3,2,128,25,0,0,0,64,3,48,2,16,0,0,0,0,1,1,4,51,0,0,5,2,4,16,0,156],[0,0,0,0,1,2,128,25,0,0,0,96,1,16,2,16,0,0,0,0,1,49,1,159,0,0,0,0,3,0,4,20],[0,0,5,2,4,48,0,156,0,0,0,0,3,2,128,25,0,0,0,192,2,48,2,16,0,0,0,0,1,18,1,159],[0,0,5,13,1,16,1,199,0,0,128,16,2,0,0,57,20,1,19,242,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,1,39,0,0,97,61,0,0,0,0,2,0,0,49,0,0,0,10,3,32,0,106,0,0,0,35,5,48,0,138],[0,0,0,8,3,0,0,41,0,0,0,32,4,48,0,57,0,0,0,2,3,0,3,103,0,0,0,0,4,67,3,79],[0,0,0,0,4,4,4,59,0,0,5,11,6,0,0,65,0,0,0,0,7,84,0,75,0,0,0,0,7,0,0,25],[0,0,0,0,7,6,128,25,0,0,5,11,5,80,1,151,0,0,5,11,8,64,1,151,0,0,0,0,9,88,0,75],[0,0,0,0,6,0,128,25,0,0,0,0,5,88,1,63,0,0,5,11,5,80,0,156,0,0,0,0,6,7,192,25],[0,0,0,0,1,1,4,59,0,8,0,0,0,1,0,29,0,0,0,0,1,6,0,75,0,0,1,39,0,0,193,61],[0,0,0,9,1,64,0,41,0,0,0,0,4,19,3,79,0,0,0,0,4,4,4,59,0,0,5,10,5,64,0,156],[0,0,1,39,0,0,33,61,0,0,0,0,5,66,0,73,0,0,0,32,1,16,0,57,0,0,5,11,6,0,0,65],[0,0,0,0,7,81,0,75,0,0,0,0,7,0,0,25,0,0,0,0,7,6,32,25,0,0,5,11,5,80,1,151],[0,0,5,11,8,16,1,151,0,0,0,0,9,88,0,75,0,0,0,0,6,0,128,25,0,0,0,0,5,88,1,63],[0,0,5,11,5,80,0,156,0,0,0,0,6,7,192,25,0,0,0,0,5,6,0,75,0,0,1,39,0,0,193,61],[0,0,0,0,5,20,0,26,0,0,0,0,4,0,4,20,0,0,16,208,0,0,65,61,0,0,0,0,6,82,0,75],[0,0,16,208,0,0,65,61,0,0,5,2,6,64,0,156,0,0,2,154,0,0,33,61,0,0,5,2,1,16,1,151],[0,0,0,0,1,19,3,79,0,0,0,0,2,82,0,73,0,0,5,2,2,32,1,151,0,0,0,0,1,33,3,223],[0,0,0,192,2,64,2,16,0,0,5,24,2,32,1,151,0,0,5,26,2,32,1,199,0,0,0,0,1,33,3,175],[0,0,128,16,2,0,0,57,20,1,19,252,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,1,5,2,0,48,1,157,0,0,5,2,3,48,1,151,0,3,0,0,0,1,3,85,0,0,0,1,2,32,1,144],[0,0,17,218,0,0,97,61,0,0,0,63,2,48,0,57,0,0,5,54,2,32,1,151,0,0,0,64,5,0,4,61],[0,0,0,0,2,37,0,25,0,0,0,0,4,82,0,75,0,0,0,0,4,0,0,25,0,0,0,1,4,0,64,57],[0,0,5,10,6,32,0,156,0,0,18,165,0,0,33,61,0,0,0,1,4,64,1,144,0,0,18,165,0,0,193,61],[0,0,0,64,0,32,4,63,0,0,0,0,2,53,4,54,0,0,0,2,4,0,3,103,0,0,0,31,6,48,0,57],[0,0,0,5,6,96,2,114,0,0,7,84,0,0,97,61,0,0,0,0,7,64,3,104,0,0,0,0,8,0,0,25],[0,0,0,5,9,128,2,16,0,0,0,0,10,146,0,25,0,0,0,0,9,151,3,79,0,0,0,0,9,9,4,59],[0,0,0,0,0,154,4,53,0,0,0,1,8,128,0,57,0,0,0,0,9,104,0,75,0,0,7,76,0,0,65,61],[0,0,0,0,6,0,0,75,0,0,7,86,0,0,97,61,0,0,0,31,6,48,1,143,0,0,0,5,3,48,2,114],[0,0,7,98,0,0,97,61,0,0,0,0,7,0,0,25,0,0,0,5,8,112,2,16,0,0,0,0,9,130,0,25],[0,0,0,0,8,129,3,79,0,0,0,0,8,8,4,59,0,0,0,0,0,137,4,53,0,0,0,1,7,112,0,57],[0,0,0,0,8,55,0,75,0,0,7,90,0,0,65,61,0,0,0,0,7,6,0,75,0,0,7,113,0,0,97,61],[0,0,0,5,3,48,2,16,0,0,0,0,1,49,3,79,0,0,0,0,3,50,0,25,0,0,0,3,6,96,2,16],[0,0,0,0,7,3,4,51,0,0,0,0,7,103,1,207,0,0,0,0,7,103,2,47,0,0,0,0,1,1,4,59],[0,0,1,0,6,96,0,137,0,0,0,0,1,97,2,47,0,0,0,0,1,97,1,207,0,0,0,0,1,113,1,159],[0,0,0,0,0,19,4,53,0,0,0,0,1,5,4,51,0,0,0,32,1,16,0,140,0,0,9,216,0,0,193,61],[0,0,0,10,12,0,0,41,0,0,0,100,1,192,0,57,0,0,0,0,1,20,3,79,0,0,0,68,3,192,0,57],[0,0,0,0,5,52,3,79,0,0,0,36,3,192,0,57,0,0,0,0,6,52,3,79,0,0,1,36,3,192,0,57],[0,0,0,0,7,52,3,79,0,0,0,6,8,64,3,96,0,0,0,228,3,192,0,57,0,0,0,0,9,52,3,79],[0,0,0,196,3,192,0,57,0,0,0,0,10,52,3,79,0,0,0,164,3,192,0,57,0,0,0,0,11,52,3,79],[0,0,0,132,3,192,0,57,0,0,0,0,12,52,3,79,0,0,0,9,3,64,3,96,0,0,0,0,3,3,4,59],[0,0,0,0,4,6,4,59,0,0,0,0,5,5,4,59,0,0,0,0,6,1,4,59,0,0,0,0,12,12,4,59],[0,0,0,0,11,11,4,59,0,0,0,0,10,10,4,59,0,0,0,0,9,9,4,59,0,0,0,0,8,8,4,59],[0,0,0,0,7,7,4,59,0,0,0,0,2,2,4,51,0,0,0,64,1,0,4,61,0,0,1,192,13,16,0,57],[0,0,0,0,0,45,4,53,0,0,1,160,2,16,0,57,0,0,0,8,13,0,0,41,0,0,0,0,0,210,4,53],[0,0,1,128,2,16,0,57,0,0,0,5,13,0,0,41,0,0,0,0,0,210,4,53,0,0,1,96,2,16,0,57],[0,0,0,0,0,114,4,53,0,0,1,64,2,16,0,57,0,0,0,0,0,130,4,53,0,0,1,32,2,16,0,57],[0,0,0,0,0,146,4,53,0,0,1,0,2,16,0,57,0,0,0,0,0,162,4,53,0,0,0,224,2,16,0,57],[0,0,0,0,0,178,4,53,0,0,0,192,2,16,0,57,0,0,0,0,0,194,4,53,0,0,0,160,2,16,0,57],[0,0,0,0,0,98,4,53,0,0,0,128,2,16,0,57,0,0,0,0,0,82,4,53,0,0,0,96,2,16,0,57],[0,0,0,0,0,66,4,53,0,0,0,64,2,16,0,57,0,0,0,0,0,50,4,53,0,0,0,32,2,16,0,57],[0,0,5,70,3,0,0,65,0,0,0,0,0,50,4,53,0,0,1,192,3,0,0,57,0,0,0,0,0,49,4,53],[0,0,5,71,3,16,0,156,0,0,18,165,0,0,33,61,0,0,1,224,3,16,0,57,0,0,0,64,0,48,4,63],[0,0,5,2,4,0,0,65,0,0,5,2,3,32,0,156,0,0,0,0,2,4,128,25,0,0,0,64,2,32,2,16],[0,0,0,0,1,1,4,51,0,0,5,2,3,16,0,156,0,0,0,0,1,4,128,25,0,0,0,96,1,16,2,16],[0,0,0,0,1,33,1,159,0,0,0,0,2,0,4,20,0,0,5,2,3,32,0,156,0,0,0,0,2,4,128,25],[0,0,0,192,2,32,2,16,0,0,0,0,1,18,1,159,0,0,5,13,1,16,1,199,0,0,128,16,2,0,0,57],[20,1,19,242,0,0,4,15,0,0,0,1,2,32,1,144,0,0,1,39,0,0,97,61,0,0,0,0,1,1,4,59],[0,6,0,0,0,1,0,29,0,0,0,64,1,0,4,61,0,8,0,0,0,1,0,29,0,0,5,56,1,0,0,65],[0,0,0,0,0,16,4,57,0,0,0,0,1,0,4,20,0,0,5,2,2,16,0,156,0,0,5,2,1,0,128,65],[0,0,0,192,1,16,2,16,0,0,5,57,1,16,1,199,0,0,128,11,2,0,0,57,20,1,19,242,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,16,244,0,0,97,61,0,0,0,8,4,0,0,41,0,0,0,32,2,64,0,57],[0,0,0,0,1,1,4,59,0,0,5,72,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,128,3,64,0,57],[0,0,0,0,0,19,4,53,0,0,0,96,1,64,0,57,0,0,5,73,3,0,0,65,0,0,0,0,0,49,4,53],[0,0,0,64,1,64,0,57,0,0,5,74,3,0,0,65,0,0,0,0,0,49,4,53,0,0,0,128,1,0,0,57],[0,0,0,0,0,20,4,53,0,0,5,75,1,64,0,156,0,0,18,165,0,0,33,61,0,0,0,8,4,0,0,41],[0,0,0,160,1,64,0,57,0,0,0,64,0,16,4,63,0,0,5,2,1,0,0,65,0,0,5,2,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,0,64,2,32,2,16,0,0,0,0,3,4,4,51,0,0,5,2,4,48,0,156],[0,0,0,0,3,1,128,25,0,0,0,96,3,48,2,16,0,0,0,0,2,35,1,159,0,0,0,0,3,0,4,20],[0,0,5,2,4,48,0,156,0,0,0,0,3,1,128,25,0,0,0,192,1,48,2,16,0,0,0,0,1,33,1,159],[0,0,5,13,1,16,1,199,0,0,128,16,2,0,0,57,20,1,19,242,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,1,39,0,0,97,61,0,0,0,0,3,1,4,59,0,0,0,64,1,0,4,61,0,0,0,66,2,16,0,57],[0,0,0,6,4,0,0,41,0,0,0,0,0,66,4,53,0,0,0,32,2,16,0,57,0,0,5,76,4,0,0,65],[0,0,0,0,0,66,4,53,0,0,0,34,4,16,0,57,0,0,0,0,0,52,4,53,0,0,0,66,3,0,0,57],[0,0,0,0,0,49,4,53,0,0,5,41,3,16,0,156,0,0,18,165,0,0,33,61,0,0,0,128,3,16,0,57],[0,0,0,64,0,48,4,63,0,0,5,2,3,0,0,65,0,0,5,2,4,32,0,156,0,0,0,0,2,3,128,25],[0,0,0,64,2,32,2,16,0,0,0,0,1,1,4,51,0,0,5,2,4,16,0,156,0,0,0,0,1,3,128,25],[0,0,0,96,1,16,2,16,0,0,0,0,1,33,1,159,0,0,0,0,2,0,4,20,0,0,5,2,4,32,0,156],[0,0,0,0,2,3,128,25,0,0,0,192,2,32,2,16,0,0,0,0,1,18,1,159,0,0,16,175,0,0,1,61],[0,0,5,58,6,64,0,156,0,0,18,165,0,0,33,61,0,0,0,64,6,64,0,57,0,0,0,64,0,96,4,63],[0,0,0,0,7,33,3,79,0,0,0,1,6,0,0,58,0,0,0,0,6,100,4,54,0,0,0,0,7,112,3,80],[0,0,0,0,7,7,4,59,0,0,0,0,0,118,4,53,0,0,12,17,0,0,97,61,0,0,0,248,8,80,2,16],[0,0,5,11,9,0,0,65,0,0,0,0,5,5,0,75,0,0,0,0,9,8,192,25,0,0,5,59,5,112,1,151],[0,0,0,0,5,149,1,159,0,0,0,0,0,86,4,53,0,0,0,64,5,0,4,61,0,0,0,6,6,0,0,41],[0,0,0,64,7,96,0,138,0,0,0,0,6,113,3,79,0,0,0,0,6,6,4,59,0,0,0,128,8,96,0,140],[0,0,9,122,0,0,65,61,0,0,0,128,8,96,2,112,0,0,5,60,9,96,0,156,0,0,0,0,8,6,160,25],[0,0,5,60,9,96,0,156,0,0,0,0,9,0,0,25,0,0,0,16,9,0,32,57,0,0,0,8,10,144,1,191],[0,0,5,10,11,128,0,156,0,0,0,0,10,9,160,25,0,0,0,64,9,128,2,112,0,0,5,10,11,128,0,156],[0,0,0,0,9,8,160,25,0,0,0,4,11,160,1,191,0,0,5,2,8,144,0,156,0,0,0,0,11,10,160,25],[0,0,0,32,10,144,2,112,0,0,5,2,8,144,0,156,0,0,0,0,10,9,160,25,0,0,0,2,8,176,1,191],[0,0,255,255,9,160,0,140,0,0,0,0,8,11,160,25,0,0,0,16,9,160,2,112,0,0,0,0,9,10,160,25],[0,0,0,255,9,144,0,140,0,0,0,1,8,128,32,57,0,0,0,32,9,0,0,138,0,0,0,65,10,128,0,57],[0,0,0,0,9,154,1,111,0,0,0,0,9,149,0,25,0,0,0,0,10,89,0,75,0,0,0,0,10,0,0,25],[0,0,0,1,10,0,64,57,0,0,5,10,11,144,0,156,0,0,18,165,0,0,33,61,0,0,0,1,10,160,1,144],[0,0,18,165,0,0,193,61,0,0,0,64,0,144,4,63,0,0,0,2,9,128,0,57,0,0,0,0,9,149,4,54],[0,0,0,33,10,128,0,57,0,0,0,5,10,160,2,114,0,0,8,109,0,0,97,61,0,0,0,0,11,33,3,79],[0,0,0,0,12,0,0,25,0,0,0,5,13,192,2,16,0,0,0,0,14,217,0,25,0,0,0,0,13,219,3,79],[0,0,0,0,13,13,4,59,0,0,0,0,0,222,4,53,0,0,0,1,12,192,0,57,0,0,0,0,13,172,0,75],[0,0,8,101,0,0,65,61,0,0,0,0,10,0,0,75,0,0,8,111,0,0,97,61,0,0,0,0,10,5,4,51],[0,0,0,0,10,10,0,75,0,0,12,17,0,0,97,61,0,0,0,0,10,9,4,51,0,0,5,59,10,160,1,151],[0,0,0,248,11,128,2,16,0,0,0,0,10,171,1,159,0,0,5,61,10,160,0,65,0,0,0,0,0,169,4,53],[0,0,0,3,8,128,2,16,0,0,0,248,8,128,0,137,0,0,0,0,6,134,1,207,0,0,0,255,8,128,0,140],[0,0,0,0,6,0,32,25,0,0,0,33,8,80,0,57,0,0,9,139,0,0,1,61,0,0,5,2,1,0,0,65],[0,0,5,2,3,80,0,156,0,0,0,0,5,1,128,25,0,0,0,96,3,80,2,16,0,0,0,64,4,64,2,16],[0,0,0,0,3,67,1,159,0,0,5,2,4,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,0,0,1,19,1,159,0,0,0,9,2,0,0,41,20,1,19,237,0,0,4,15,0,5,0,96,0,0,0,61],[0,0,0,1,2,32,1,143,0,3,0,0,0,1,3,85,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,1,5,2,0,48,1,157,0,0,5,2,3,48,1,152,0,0,8,191,0,0,97,61,0,0,0,63,4,48,0,57],[0,0,0,32,5,0,0,138,0,0,0,0,4,84,1,111,0,0,0,64,5,0,4,61,0,0,0,0,4,69,0,25],[0,5,0,0,0,5,0,29,0,0,0,0,5,84,0,75,0,0,0,0,5,0,0,25,0,0,0,1,5,0,64,57],[0,0,5,10,6,64,0,156,0,0,18,165,0,0,33,61,0,0,0,1,5,80,1,144,0,0,18,165,0,0,193,61],[0,0,0,64,0,64,4,63,0,0,0,31,4,48,1,143,0,0,0,5,5,0,0,41,0,0,0,0,8,53,4,54],[0,0,0,5,3,48,2,114,0,0,8,175,0,0,97,61,0,0,0,0,5,0,0,25,0,0,0,5,6,80,2,16],[0,0,0,0,7,104,0,25,0,0,0,0,6,97,3,79,0,0,0,0,6,6,4,59,0,0,0,0,0,103,4,53],[0,0,0,1,5,80,0,57,0,0,0,0,6,53,0,75,0,0,8,167,0,0,65,61,0,10,0,0,0,8,0,29],[0,0,0,0,5,4,0,75,0,0,8,191,0,0,97,61,0,0,0,5,3,48,2,16,0,0,0,0,1,49,3,79],[0,0,0,10,3,48,0,41,0,0,0,3,4,64,2,16,0,0,0,0,5,3,4,51,0,0,0,0,5,69,1,207],[0,0,0,0,5,69,2,47,0,0,0,0,1,1,4,59,0,0,1,0,4,64,0,137,0,0,0,0,1,65,2,47],[0,0,0,0,1,65,1,207,0,0,0,0,1,81,1,159,0,0,0,0,0,19,4,53,0,0,0,5,1,0,0,41],[0,0,0,0,1,1,4,51,0,0,0,0,2,2,0,75,0,0,9,91,0,0,193,61,0,0,0,0,2,1,0,75],[0,0,8,217,0,0,193,61,0,0,0,64,4,0,4,61,0,10,0,0,0,4,0,29,0,0,5,16,1,0,0,65],[0,0,0,0,0,20,4,53,0,0,0,4,1,64,0,57,0,0,0,4,2,0,0,41,0,0,0,0,0,33,4,53],[0,0,0,2,1,0,0,41,0,0,0,0,3,1,4,51,0,9,0,0,0,3,0,29,0,0,0,36,1,64,0,57],[0,0,0,0,0,49,4,53,0,0,0,68,2,64,0,57,0,0,0,3,1,0,0,41,20,1,19,223,0,0,4,15],[0,0,0,9,1,0,0,41,0,0,0,31,1,16,0,57,0,0,0,32,2,0,0,138,0,0,0,0,1,33,1,111],[0,0,0,68,1,16,0,57,0,0,5,2,2,0,0,65,0,0,5,2,3,16,0,156,0,0,0,0,1,2,128,25],[0,0,0,10,4,0,0,41,0,0,5,2,3,64,0,156,0,0,0,0,4,2,128,25,0,0,0,64,2,64,2,16],[0,0,2,84,0,0,1,61,0,0,5,58,6,64,0,156,0,0,18,165,0,0,33,61,0,0,0,64,6,64,0,57],[0,0,0,64,0,96,4,63,0,0,0,0,7,33,3,79,0,0,0,1,6,0,0,58,0,0,0,0,6,100,4,54],[0,0,0,0,7,112,3,80,0,0,0,0,7,7,4,59,0,0,0,0,0,118,4,53,0,0,12,17,0,0,97,61],[0,0,0,248,8,80,2,16,0,0,5,11,9,0,0,65,0,0,0,0,5,5,0,75,0,0,0,0,9,8,192,25],[0,0,5,59,5,112,1,151,0,0,0,0,5,149,1,159,0,0,0,0,0,86,4,53,0,0,0,64,5,0,4,61],[0,0,0,6,6,0,0,41,0,0,0,96,6,96,0,138,0,0,0,0,7,97,3,79,0,0,0,0,7,7,4,59],[0,0,0,128,8,112,0,140,0,0,10,55,0,0,65,61,0,0,0,128,8,112,2,112,0,0,5,60,9,112,0,156],[0,0,0,0,8,7,160,25,0,0,5,60,9,112,0,156,0,0,0,0,9,0,0,25,0,0,0,16,9,0,32,57],[0,0,0,8,10,144,1,191,0,0,5,10,11,128,0,156,0,0,0,0,10,9,160,25,0,0,0,64,9,128,2,112],[0,0,5,10,11,128,0,156,0,0,0,0,9,8,160,25,0,0,0,4,11,160,1,191,0,0,5,2,8,144,0,156],[0,0,0,0,11,10,160,25,0,0,0,32,10,144,2,112,0,0,5,2,8,144,0,156,0,0,0,0,10,9,160,25],[0,0,0,2,8,176,1,191,0,0,255,255,9,160,0,140,0,0,0,0,8,11,160,25,0,0,0,16,9,160,2,112],[0,0,0,0,9,10,160,25,0,0,0,255,9,144,0,140,0,0,0,1,8,128,32,57,0,0,0,32,9,0,0,138],[0,0,0,65,10,128,0,57,0,0,0,0,9,154,1,111,0,0,0,0,9,149,0,25,0,0,0,0,10,89,0,75],[0,0,0,0,10,0,0,25,0,0,0,1,10,0,64,57,0,0,5,10,11,144,0,156,0,0,18,165,0,0,33,61],[0,0,0,1,10,160,1,144,0,0,18,165,0,0,193,61,0,0,0,64,0,144,4,63,0,0,0,2,9,128,0,57],[0,0,0,0,9,149,4,54,0,0,0,33,10,128,0,57,0,0,0,5,10,160,2,114,0,0,9,46,0,0,97,61],[0,0,0,0,11,33,3,79,0,0,0,0,12,0,0,25,0,0,0,5,13,192,2,16,0,0,0,0,14,217,0,25],[0,0,0,0,13,219,3,79,0,0,0,0,13,13,4,59,0,0,0,0,0,222,4,53,0,0,0,1,12,192,0,57],[0,0,0,0,13,172,0,75,0,0,9,38,0,0,65,61,0,0,0,0,10,0,0,75,0,0,9,48,0,0,97,61],[0,0,0,0,10,5,4,51,0,0,0,0,10,10,0,75,0,0,12,17,0,0,97,61,0,0,0,0,10,9,4,51],[0,0,5,59,10,160,1,151,0,0,0,248,11,128,2,16,0,0,0,0,10,171,1,159,0,0,5,61,10,160,0,65],[0,0,0,0,0,169,4,53,0,0,0,3,8,128,2,16,0,0,0,248,8,128,0,137,0,0,0,0,7,135,1,207],[0,0,0,255,8,128,0,140,0,0,0,0,7,0,32,25,0,0,0,33,8,80,0,57,0,0,10,72,0,0,1,61],[0,0,0,31,3,80,1,143,0,0,0,5,2,80,2,114,0,0,9,75,0,0,97,61,0,0,0,0,4,0,0,25],[0,0,0,5,6,64,2,16,0,0,0,0,7,97,3,79,0,0,0,0,7,7,4,59,0,0,0,0,0,118,4,53],[0,0,0,1,4,64,0,57,0,0,0,0,6,36,0,75,0,0,9,68,0,0,65,61,0,0,0,0,4,3,0,75],[0,0,9,89,0,0,97,61,0,0,0,3,3,48,2,16,0,0,0,5,2,32,2,16,0,0,0,0,4,2,4,51],[0,0,0,0,4,52,1,207,0,0,0,0,4,52,2,47,0,0,0,0,1,33,3,79,0,0,0,0,1,1,4,59],[0,0,1,0,3,48,0,137,0,0,0,0,1,49,2,47,0,0,0,0,1,49,1,207,0,0,0,0,1,65,1,159],[0,0,0,0,0,18,4,53,0,0,0,96,1,80,2,16,0,0,20,3,0,1,4,48,0,0,0,0,2,1,0,75],[0,0,10,248,0,0,193,61,0,0,5,36,1,0,0,65,0,0,0,0,0,16,4,57,0,0,0,9,1,0,0,41],[0,0,0,4,0,16,4,67,0,0,5,2,1,0,0,65,0,0,0,0,2,0,4,20,0,0,5,2,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,5,37,1,16,1,199,0,0,128,2,2,0,0,57],[20,1,19,242,0,0,4,15,0,0,0,1,2,32,1,144,0,0,16,244,0,0,97,61,0,0,0,0,1,1,4,59],[0,0,0,0,1,1,0,75,0,0,10,244,0,0,193,61,0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57],[0,0,5,45,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,36,2,16,0,57,0,0,0,29,3,0,0,57],[0,0,0,0,0,50,4,53,0,0,5,16,2,0,0,65,0,0,0,0,0,33,4,53,0,0,0,4,2,16,0,57],[0,0,0,4,3,0,0,41,0,0,4,115,0,0,1,61,0,0,5,58,8,80,0,156,0,0,18,165,0,0,33,61],[0,0,0,64,8,80,0,57,0,0,0,64,0,128,4,63,0,0,0,0,9,33,3,79,0,0,0,1,8,0,0,58],[0,0,0,0,8,133,4,54,0,0,0,0,9,144,3,80,0,0,0,0,9,9,4,59,0,0,0,0,0,152,4,53],[0,0,12,17,0,0,97,61,0,0,0,248,10,96,2,16,0,0,5,11,11,0,0,65,0,0,0,0,6,6,0,75],[0,0,0,0,11,10,192,25,0,0,5,59,6,144,1,151,0,0,0,0,6,182,1,159,0,0,0,0,0,104,4,53],[0,0,0,64,6,0,4,61,0,0,0,32,7,112,0,138,0,0,0,0,8,113,3,79,0,0,0,0,8,8,4,59],[0,0,0,128,9,128,0,140,0,0,10,149,0,0,65,61,0,0,0,128,9,128,2,112,0,0,5,60,10,128,0,156],[0,0,0,0,9,8,160,25,0,0,5,60,10,128,0,156,0,0,0,0,10,0,0,25,0,0,0,16,10,0,32,57],[0,0,0,8,11,160,1,191,0,0,5,10,12,144,0,156,0,0,0,0,11,10,160,25,0,0,0,64,10,144,2,112],[0,0,5,10,12,144,0,156,0,0,0,0,10,9,160,25,0,0,0,4,12,176,1,191,0,0,5,2,9,160,0,156],[0,0,0,0,12,11,160,25,0,0,0,32,11,160,2,112,0,0,5,2,9,160,0,156,0,0,0,0,11,10,160,25],[0,0,0,2,9,192,1,191,0,0,255,255,10,176,0,140,0,0,0,0,9,12,160,25,0,0,0,16,10,176,2,112],[0,0,0,0,10,11,160,25,0,0,0,255,10,160,0,140,0,0,0,1,9,144,32,57,0,0,0,32,10,0,0,138],[0,0,0,65,11,144,0,57,0,0,0,0,10,171,1,111,0,0,0,0,10,166,0,25,0,0,0,0,11,106,0,75],[0,0,0,0,11,0,0,25,0,0,0,1,11,0,64,57,0,0,5,10,12,160,0,156,0,0,18,165,0,0,33,61],[0,0,0,1,11,176,1,144,0,0,18,165,0,0,193,61,0,0,0,64,0,160,4,63,0,0,0,2,10,144,0,57],[0,0,0,0,10,166,4,54,0,0,0,33,11,144,0,57,0,0,0,5,11,176,2,114,0,0,9,198,0,0,97,61],[0,0,0,0,12,33,3,79,0,0,0,0,13,0,0,25,0,0,0,5,14,208,2,16,0,0,0,0,15,234,0,25],[0,0,0,0,14,236,3,79,0,0,0,0,14,14,4,59,0,0,0,0,0,239,4,53,0,0,0,1,13,208,0,57],[0,0,0,0,14,189,0,75,0,0,9,190,0,0,65,61,0,0,0,0,11,0,0,75,0,0,9,200,0,0,97,61],[0,0,0,0,11,6,4,51,0,0,0,0,11,11,0,75,0,0,12,17,0,0,97,61,0,0,0,0,11,10,4,51],[0,0,5,59,11,176,1,151,0,0,0,248,12,144,2,16,0,0,0,0,11,188,1,159,0,0,5,61,11,176,0,65],[0,0,0,0,0,186,4,53,0,0,0,3,9,144,2,16,0,0,0,248,9,144,0,137,0,0,0,0,8,152,1,207],[0,0,0,255,9,144,0,140,0,0,0,0,8,0,32,25,0,0,0,33,9,96,0,57,0,0,10,166,0,0,1,61],[0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57,0,0,5,69,3,0,0,65,0,0,0,0,0,50,4,53],[0,0,0,36,2,16,0,57,0,0,0,31,3,0,0,57,0,0,4,110,0,0,1,61,0,0,0,4,6,0,0,41],[0,0,5,58,6,96,0,156,0,0,18,165,0,0,33,61,0,0,0,4,7,0,0,41,0,0,0,64,6,112,0,57],[0,0,0,64,0,96,4,63,0,0,0,1,6,0,0,58,0,0,0,0,6,103,4,54,0,0,0,0,7,80,3,80],[0,0,0,0,7,7,4,59,0,0,0,0,0,118,4,53,0,0,12,17,0,0,97,61,0,0,0,248,8,32,2,16],[0,0,5,11,9,0,0,65,0,0,0,0,2,2,0,75,0,0,0,0,9,8,192,25,0,0,5,59,2,112,1,151],[0,0,0,0,2,146,1,159,0,0,0,0,0,38,4,53,0,0,0,9,6,64,0,106,0,0,0,160,1,16,0,57],[0,0,0,0,2,19,3,79,0,0,0,0,2,2,4,59,0,0,0,31,6,96,0,138,0,0,5,11,7,96,1,151],[0,0,5,11,8,32,1,151,0,0,5,11,9,0,0,65,0,0,0,0,10,120,0,75,0,0,0,0,10,0,0,25],[0,0,0,0,10,9,64,25,0,0,0,0,7,120,1,63,0,0,0,0,8,98,0,75,0,0,0,0,9,0,64,25],[0,0,5,11,7,112,0,156,0,0,0,0,10,9,192,25,0,0,0,0,7,10,0,75,0,0,1,39,0,0,193,61],[0,0,0,9,8,32,0,41,0,0,0,0,7,131,3,79,0,0,0,0,7,7,4,59,0,0,5,10,9,112,0,156],[0,0,1,39,0,0,33,61,0,0,0,0,9,116,0,73,0,0,0,32,8,128,0,57,0,0,5,11,10,0,0,65],[0,0,0,0,11,152,0,75,0,0,0,0,11,0,0,25,0,0,0,0,11,10,32,25,0,0,5,11,9,144,1,151],[0,0,5,11,12,128,1,151,0,0,0,0,13,156,0,75,0,0,0,0,10,0,128,25,0,0,0,0,9,156,1,63],[0,0,5,11,9,144,0,156,0,0,0,0,10,11,192,25,0,0,0,0,9,10,0,75,0,0,1,39,0,0,193,61],[0,0,0,1,9,112,0,140,0,0,12,62,0,0,193,61,0,0,0,0,5,131,3,79,0,0,0,0,5,5,4,59],[0,0,0,1,7,0,0,138,0,0,5,11,8,0,0,65,0,0,0,0,7,117,0,75,0,0,0,0,7,0,0,25],[0,0,0,0,7,8,32,25,0,0,5,11,5,80,1,151,0,0,5,11,9,80,0,156,0,0,0,0,8,0,128,25],[0,0,5,11,5,80,1,103,0,0,5,11,5,80,0,156,0,0,0,0,8,7,192,25,0,3,0,96,0,0,0,61],[0,0,0,0,5,8,0,75,0,0,13,164,0,0,193,61,0,0,0,64,5,0,4,61,0,3,0,0,0,5,0,29],[0,0,5,58,5,80,0,156,0,0,18,165,0,0,33,61,0,0,0,3,8,0,0,41,0,0,0,64,5,128,0,57],[0,0,0,64,0,80,4,63,0,0,0,32,5,128,0,57,0,0,5,61,7,0,0,65,0,0,0,0,0,117,4,53],[0,0,0,1,5,0,0,57,0,0,0,0,0,88,4,53,0,0,13,164,0,0,1,61,0,0,5,58,8,80,0,156],[0,0,18,165,0,0,33,61,0,0,0,64,8,80,0,57,0,0,0,64,0,128,4,63,0,0,0,0,9,33,3,79],[0,0,0,1,8,0,0,58,0,0,0,0,8,133,4,54,0,0,0,0,9,144,3,80,0,0,0,0,9,9,4,59],[0,0,0,0,0,152,4,53,0,0,12,17,0,0,97,61,0,0,0,248,10,112,2,16,0,0,5,11,11,0,0,65],[0,0,0,0,7,7,0,75,0,0,0,0,11,10,192,25,0,0,5,59,7,144,1,151,0,0,0,0,7,183,1,159],[0,0,0,0,0,120,4,53,0,0,0,64,7,0,4,61,0,0,0,64,6,96,0,138,0,0,0,0,8,97,3,79],[0,0,0,0,8,8,4,59,0,0,0,128,9,128,0,140,0,0,11,46,0,0,65,61,0,0,0,128,9,128,2,112],[0,0,5,60,10,128,0,156,0,0,0,0,9,8,160,25,0,0,5,60,10,128,0,156,0,0,0,0,10,0,0,25],[0,0,0,16,10,0,32,57,0,0,0,8,11,160,1,191,0,0,5,10,12,144,0,156,0,0,0,0,11,10,160,25],[0,0,0,64,10,144,2,112,0,0,5,10,12,144,0,156,0,0,0,0,10,9,160,25,0,0,0,4,12,176,1,191],[0,0,5,2,9,160,0,156,0,0,0,0,12,11,160,25,0,0,0,32,11,160,2,112,0,0,5,2,9,160,0,156],[0,0,0,0,11,10,160,25,0,0,0,2,9,192,1,191,0,0,255,255,10,176,0,140,0,0,0,0,9,12,160,25],[0,0,0,16,10,176,2,112,0,0,0,0,10,11,160,25,0,0,0,255,10,160,0,140,0,0,0,1,9,144,32,57],[0,0,0,32,10,0,0,138,0,0,0,65,11,144,0,57,0,0,0,0,10,171,1,111,0,0,0,0,10,167,0,25],[0,0,0,0,11,122,0,75,0,0,0,0,11,0,0,25,0,0,0,1,11,0,64,57,0,0,5,10,12,160,0,156],[0,0,18,165,0,0,33,61,0,0,0,1,11,176,1,144,0,0,18,165,0,0,193,61,0,0,0,64,0,160,4,63],[0,0,0,2,10,144,0,57,0,0,0,0,10,167,4,54,0,0,0,33,11,144,0,57,0,0,0,5,11,176,2,114],[0,0,10,131,0,0,97,61,0,0,0,0,12,33,3,79,0,0,0,0,13,0,0,25,0,0,0,5,14,208,2,16],[0,0,0,0,15,234,0,25,0,0,0,0,14,236,3,79,0,0,0,0,14,14,4,59,0,0,0,0,0,239,4,53],[0,0,0,1,13,208,0,57,0,0,0,0,14,189,0,75,0,0,10,123,0,0,65,61,0,0,0,0,11,0,0,75],[0,0,10,133,0,0,97,61,0,0,0,0,11,7,4,51,0,0,0,0,11,11,0,75,0,0,12,17,0,0,97,61],[0,0,0,0,11,10,4,51,0,0,5,59,11,176,1,151,0,0,0,248,12,144,2,16,0,0,0,0,11,188,1,159],[0,0,5,61,11,176,0,65,0,0,0,0,0,186,4,53,0,0,0,3,9,144,2,16,0,0,0,248,9,144,0,137],[0,0,0,0,8,152,1,207,0,0,0,255,9,144,0,140,0,0,0,0,8,0,32,25,0,0,0,33,9,112,0,57],[0,0,11,63,0,0,1,61,0,0,5,58,9,96,0,156,0,0,18,165,0,0,33,61,0,0,0,64,9,96,0,57],[0,0,0,64,0,144,4,63,0,0,0,0,10,33,3,79,0,0,0,1,9,0,0,58,0,0,0,0,9,150,4,54],[0,0,0,0,10,160,3,80,0,0,0,0,10,10,4,59,0,0,0,0,0,169,4,53,0,0,12,17,0,0,97,61],[0,0,0,248,11,128,2,16,0,0,5,11,12,0,0,65,0,0,0,0,8,8,0,75,0,0,0,0,12,11,192,25],[0,0,5,59,8,160,1,151,0,0,0,0,8,200,1,159,0,0,0,0,0,137,4,53,0,0,0,64,8,0,4,61],[0,8,0,64,0,112,0,146,0,0,0,8,9,16,3,96,0,0,0,0,9,9,4,59,0,0,0,128,10,144,0,140],[0,0,12,6,0,0,65,61,0,0,0,128,10,144,2,112,0,0,5,60,11,144,0,156,0,0,0,0,10,9,160,25],[0,0,5,60,11,144,0,156,0,0,0,0,11,0,0,25,0,0,0,16,11,0,32,57,0,0,0,8,12,176,1,191],[0,0,5,10,13,160,0,156,0,0,0,0,12,11,160,25,0,0,0,64,11,160,2,112,0,0,5,10,13,160,0,156],[0,0,0,0,11,10,160,25,0,0,0,4,13,192,1,191,0,0,5,2,10,176,0,156,0,0,0,0,13,12,160,25],[0,0,0,32,12,176,2,112,0,0,5,2,10,176,0,156,0,0,0,0,12,11,160,25,0,0,0,2,10,208,1,191],[0,0,255,255,11,192,0,140,0,0,0,0,10,13,160,25,0,0,0,16,11,192,2,112,0,0,0,0,11,12,160,25],[0,0,0,255,11,176,0,140,0,0,0,1,10,160,32,57,0,0,0,32,11,0,0,138,0,0,0,65,12,160,0,57],[0,0,0,0,11,188,1,111,0,0,0,0,11,184,0,25,0,0,0,0,12,139,0,75,0,0,0,0,12,0,0,25],[0,0,0,1,12,0,64,57,0,0,5,10,13,176,0,156,0,0,18,165,0,0,33,61,0,0,0,1,12,192,1,144],[0,0,18,165,0,0,193,61,0,0,0,64,0,176,4,63,0,0,0,2,11,160,0,57,0,0,0,0,11,184,4,54],[0,0,0,33,12,160,0,57,0,0,0,5,12,192,2,114,0,0,10,225,0,0,97,61,0,0,0,0,13,33,3,79],[0,0,0,0,14,0,0,25,0,0,0,5,15,224,2,16,0,0,0,0,7,251,0,25,0,0,0,0,15,253,3,79],[0,0,0,0,15,15,4,59,0,0,0,0,0,247,4,53,0,0,0,1,14,224,0,57,0,0,0,0,7,206,0,75],[0,0,10,217,0,0,65,61,0,0,0,0,7,0,0,75,0,0,10,227,0,0,97,61,0,0,0,0,7,8,4,51],[0,0,0,0,7,7,0,75,0,0,12,17,0,0,97,61,0,0,0,0,7,11,4,51,0,0,5,59,7,112,1,151],[0,0,0,248,12,160,2,16,0,0,0,0,7,124,1,159,0,0,5,61,7,112,0,65,0,0,0,0,0,123,4,53],[0,0,0,3,7,160,2,16,0,0,0,248,7,112,0,137,0,0,0,0,9,121,1,207,0,0,0,255,7,112,0,140],[0,0,0,0,9,0,32,25,0,0,0,33,7,128,0,57,0,0,0,0,0,151,4,53,0,0,13,48,0,0,1,61],[0,0,0,5,1,0,0,41,0,0,0,0,1,1,4,51,0,0,0,0,2,1,0,75,0,0,11,27,0,0,97,61],[0,0,5,11,2,0,0,65,0,0,0,32,3,16,0,140,0,0,0,0,3,0,0,25,0,0,0,0,3,2,64,25],[0,0,5,11,1,16,1,151,0,0,0,0,4,1,0,75,0,0,0,0,2,0,160,25,0,0,5,11,1,16,0,156],[0,0,0,0,2,3,192,25,0,0,0,0,1,2,0,75,0,0,1,39,0,0,193,61,0,0,0,10,1,0,0,41],[0,0,0,0,1,1,4,51,0,0,0,0,2,1,0,75,0,0,0,0,2,0,0,25,0,0,0,1,2,0,192,57],[0,0,0,0,2,33,0,75,0,0,1,39,0,0,193,61,0,0,0,0,1,1,0,75,0,0,11,27,0,0,193,61],[0,0,0,64,1,0,4,61,0,0,0,100,2,16,0,57,0,0,5,43,3,0,0,65,0,0,0,0,0,50,4,53],[0,0,0,68,2,16,0,57,0,0,5,44,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,36,2,16,0,57],[0,0,0,42,3,0,0,57,0,0,0,0,0,50,4,53,0,0,5,16,2,0,0,65,0,0,0,0,0,33,4,53],[0,0,0,4,2,16,0,57,0,0,0,4,3,0,0,41,0,0,1,10,0,0,1,61,0,0,0,64,3,0,4,61],[0,0,0,36,1,48,0,57,0,0,0,7,2,0,0,41,0,0,0,0,0,33,4,53,0,0,5,32,1,0,0,65],[0,0,0,0,0,19,4,53,0,10,0,0,0,3,0,29,0,0,0,4,1,48,0,57,0,0,0,6,2,0,0,41],[0,0,0,0,0,33,4,53,0,0,0,0,1,0,4,20,0,0,0,9,2,0,0,41,0,0,0,4,2,32,0,140],[0,0,11,159,0,0,193,61,0,0,0,1,3,0,0,49,0,0,0,32,1,48,0,140,0,0,0,0,4,3,0,25],[0,0,0,32,4,0,128,57,0,0,11,209,0,0,1,61,0,0,5,58,9,112,0,156,0,0,18,165,0,0,33,61],[0,0,0,64,9,112,0,57,0,0,0,64,0,144,4,63,0,0,0,0,10,33,3,79,0,0,0,1,9,0,0,58],[0,0,0,0,9,151,4,54,0,0,0,0,10,160,3,80,0,0,0,0,10,10,4,59,0,0,0,0,0,169,4,53],[0,0,12,17,0,0,97,61,0,0,0,248,11,128,2,16,0,0,5,11,12,0,0,65,0,0,0,0,8,8,0,75],[0,0,0,0,12,11,192,25,0,0,5,59,8,160,1,151,0,0,0,0,8,200,1,159,0,0,0,0,0,137,4,53],[0,0,0,64,9,0,4,61,0,0,5,58,8,144,0,156,0,0,18,165,0,0,33,61,0,0,0,32,8,96,0,138],[0,0,0,0,8,129,3,79,0,0,0,0,8,8,4,59,0,0,0,64,10,144,0,57,0,0,0,64,0,160,4,63],[0,0,0,32,10,144,0,57,0,0,5,62,11,0,0,65,0,0,0,0,0,186,4,53,0,0,0,21,10,0,0,57],[0,0,0,0,0,169,4,53,0,0,0,96,8,128,2,16,0,0,0,33,10,144,0,57,0,0,0,0,0,138,4,53],[0,0,0,192,6,96,0,57,0,0,0,0,6,97,3,79,0,0,0,64,8,0,4,61,0,0,0,0,6,6,4,59],[0,8,0,0,0,6,0,29,0,0,0,128,10,96,0,140,0,0,12,105,0,0,65,61,0,0,0,8,6,0,0,41],[0,0,0,128,10,96,2,112,0,0,5,60,11,96,0,156,0,0,0,0,10,6,160,25,0,0,5,60,11,96,0,156],[0,0,0,0,11,0,0,25,0,0,0,16,11,0,32,57,0,0,0,8,12,176,1,191,0,0,5,10,13,160,0,156],[0,0,0,0,12,11,160,25,0,0,0,64,11,160,2,112,0,0,5,10,13,160,0,156,0,0,0,0,11,10,160,25],[0,0,0,4,13,192,1,191,0,0,5,2,10,176,0,156,0,0,0,0,13,12,160,25,0,0,0,32,12,176,2,112],[0,0,5,2,10,176,0,156,0,0,0,0,12,11,160,25,0,0,0,2,10,208,1,191,0,0,255,255,11,192,0,140],[0,0,0,0,10,13,160,25,0,0,0,16,11,192,2,112,0,0,0,0,11,12,160,25,0,0,0,255,11,176,0,140],[0,0,0,1,10,160,32,57,0,0,0,32,11,0,0,138,0,0,0,65,12,160,0,57,0,0,0,0,11,188,1,111],[0,0,0,0,11,184,0,25,0,0,0,0,12,139,0,75,0,0,0,0,12,0,0,25,0,0,0,1,12,0,64,57],[0,0,5,10,13,176,0,156,0,0,18,165,0,0,33,61,0,0,0,1,12,192,1,144,0,0,18,165,0,0,193,61],[0,0,0,64,0,176,4,63,0,0,0,2,11,160,0,57,0,0,0,0,11,184,4,54,0,0,0,33,12,160,0,57],[0,0,0,5,12,192,2,114,0,0,11,140,0,0,97,61,0,0,0,0,13,33,3,79,0,0,0,0,14,0,0,25],[0,0,0,5,15,224,2,16,0,0,0,0,6,251,0,25,0,0,0,0,15,253,3,79,0,0,0,0,15,15,4,59],[0,0,0,0,0,246,4,53,0,0,0,1,14,224,0,57,0,0,0,0,6,206,0,75,0,0,11,132,0,0,65,61],[0,0,0,0,6,0,0,75,0,0,11,142,0,0,97,61,0,0,0,0,6,8,4,51,0,0,0,0,6,6,0,75],[0,0,12,17,0,0,97,61,0,0,0,0,6,11,4,51,0,0,5,59,6,96,1,151,0,0,0,248,12,160,2,16],[0,0,0,0,6,108,1,159,0,0,5,61,6,96,0,65,0,0,0,0,0,107,4,53,0,0,0,3,6,160,2,16],[0,0,0,248,6,96,0,137,0,0,0,8,10,96,1,239,0,0,0,255,6,96,0,140,0,0,0,0,10,0,32,25],[0,0,0,33,6,128,0,57,0,0,0,0,0,166,4,53,0,0,12,124,0,0,1,61,0,0,5,2,2,0,0,65],[0,0,5,2,3,16,0,156,0,0,0,0,1,2,128,25,0,0,0,10,4,0,0,41,0,0,5,2,3,64,0,156],[0,0,0,0,2,4,64,25,0,0,0,64,2,32,2,16,0,0,0,192,1,16,2,16,0,0,0,0,1,33,1,159],[0,0,5,38,1,16,1,199,0,0,0,9,2,0,0,41,20,1,19,242,0,0,4,15,0,0,0,10,10,0,0,41],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,5,2,3,48,1,151,0,0,0,32,4,48,0,140],[0,0,0,0,4,3,0,25,0,0,0,32,4,0,128,57,0,0,0,31,5,64,1,143,0,0,0,5,6,64,2,114],[0,0,11,190,0,0,97,61,0,0,0,0,7,0,0,25,0,0,0,5,8,112,2,16,0,0,0,0,9,138,0,25],[0,0,0,0,8,129,3,79,0,0,0,0,8,8,4,59,0,0,0,0,0,137,4,53,0,0,0,1,7,112,0,57],[0,0,0,0,8,103,0,75,0,0,11,182,0,0,65,61,0,0,0,0,7,5,0,75,0,0,11,205,0,0,97,61],[0,0,0,5,6,96,2,16,0,0,0,0,7,97,3,79,0,0,0,10,6,96,0,41,0,0,0,3,5,80,2,16],[0,0,0,0,8,6,4,51,0,0,0,0,8,88,1,207,0,0,0,0,8,88,2,47,0,0,0,0,7,7,4,59],[0,0,1,0,5,80,0,137,0,0,0,0,7,87,2,47,0,0,0,0,5,87,1,207,0,0,0,0,5,133,1,159],[0,0,0,0,0,86,4,53,0,1,0,0,0,3,0,31,0,3,0,0,0,1,3,85,0,0,0,1,2,32,1,144],[0,0,12,21,0,0,97,61,0,0,0,31,1,64,0,57,0,0,0,96,2,16,1,143,0,0,0,10,1,32,0,41],[0,0,0,0,2,33,0,75,0,0,0,0,2,0,0,25,0,0,0,1,2,0,64,57,0,0,5,10,4,16,0,156],[0,0,18,165,0,0,33,61,0,0,0,1,2,32,1,144,0,0,18,165,0,0,193,61,0,0,0,64,0,16,4,63],[0,0,0,32,2,48,0,140,0,0,1,39,0,0,65,61,0,0,0,68,4,16,0,57,0,0,0,36,5,16,0,57],[0,0,0,10,2,0,0,41,0,0,0,0,2,2,4,51,0,0,0,0,2,2,0,75,0,0,12,50,0,0,193,61],[0,0,0,32,2,16,0,57,0,0,5,34,6,0,0,65,0,0,0,0,0,98,4,53,0,0,0,7,6,0,0,41],[0,0,0,0,0,101,4,53,0,0,0,8,5,0,0,41,0,0,0,0,0,84,4,53,0,0,0,1,4,0,0,41],[0,0,0,0,0,65,4,53,0,0,5,41,4,16,0,156,0,0,18,165,0,0,33,61,0,0,0,128,4,16,0,57],[0,10,0,0,0,4,0,29,0,0,0,64,0,64,4,63,0,0,5,42,4,16,0,156,0,0,18,165,0,0,33,61],[0,0,0,192,4,16,0,57,0,0,0,64,0,64,4,63,0,0,0,4,4,0,0,41,0,0,0,10,5,0,0,41],[0,0,0,0,0,69,4,53,0,0,0,160,5,16,0,57,0,0,5,35,4,0,0,65,0,7,0,0,0,5,0,29],[0,0,0,0,0,69,4,53,0,0,0,0,4,1,4,51,0,0,0,0,1,0,4,20,0,0,0,9,5,0,0,41],[0,0,0,4,5,80,0,140,0,0,15,43,0,0,193,61,0,0,0,1,2,0,0,57,0,0,5,10,1,48,0,156],[0,0,18,165,0,0,33,61,0,0,15,65,0,0,1,61,0,0,5,58,7,128,0,156,0,0,18,165,0,0,33,61],[0,0,0,64,7,128,0,57,0,0,0,64,0,112,4,63,0,0,0,0,7,33,3,79,0,0,0,1,10,0,0,58],[0,0,0,0,10,168,4,54,0,0,0,0,7,112,3,80,0,0,0,0,11,7,4,59,0,0,0,0,0,186,4,53],[0,0,13,41,0,0,193,61,0,0,5,88,1,0,0,65,0,0,0,0,0,16,4,53,0,0,0,50,1,0,0,57],[0,0,0,65,0,0,1,61,0,0,0,64,2,0,4,61,0,0,0,31,4,48,1,143,0,0,0,5,5,48,2,114],[0,0,12,34,0,0,97,61,0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16,0,0,0,0,8,114,0,25],[0,0,0,0,7,113,3,79,0,0,0,0,7,7,4,59,0,0,0,0,0,120,4,53,0,0,0,1,6,96,0,57],[0,0,0,0,7,86,0,75,0,0,12,26,0,0,65,61,0,0,0,0,6,4,0,75,0,0,12,49,0,0,97,61],[0,0,0,5,5,80,2,16,0,0,0,0,1,81,3,79,0,0,0,0,5,82,0,25,0,0,0,3,4,64,2,16],[0,0,0,0,6,5,4,51,0,0,0,0,6,70,1,207,0,0,0,0,6,70,2,47,0,0,0,0,1,1,4,59],[0,0,1,0,4,64,0,137,0,0,0,0,1,65,2,47,0,0,0,0,1,65,1,207,0,0,0,0,1,97,1,159],[0,0,0,0,0,21,4,53,0,0,6,70,0,0,1,61,0,0,5,16,2,0,0,65,0,0,0,0,0,33,4,53],[0,0,0,4,2,16,0,57,0,0,0,4,3,0,0,41,0,0,0,0,0,50,4,53,0,0,0,54,2,0,0,57],[0,0,0,0,0,37,4,53,0,0,5,39,2,0,0,65,0,0,0,0,0,36,4,53,0,0,0,100,2,16,0,57],[0,0,5,40,3,0,0,65,0,0,1,10,0,0,1,61,0,0,0,64,8,0,4,61,0,3,0,0,0,8,0,29],[0,0,0,56,8,112,0,140,0,0,13,147,0,0,65,61,0,0,0,32,9,112,2,112,0,0,5,2,8,112,0,156],[0,0,0,0,9,7,160,25,0,0,5,2,8,112,0,156,0,0,0,0,10,0,0,25,0,0,0,4,10,0,32,57],[0,0,0,2,8,160,1,191,0,0,255,255,11,144,0,140,0,0,0,0,8,10,160,25,0,0,0,16,10,144,2,112],[0,0,0,0,10,9,160,25,0,0,0,255,9,160,0,140,0,0,0,0,9,0,0,25,0,0,0,1,9,0,32,57],[0,0,0,3,10,0,0,41,0,0,5,58,10,160,0,156,0,0,18,165,0,0,33,61,0,0,0,0,8,152,1,159],[0,0,0,3,10,0,0,41,0,0,0,64,9,160,0,57,0,0,0,64,0,144,4,63,0,0,0,2,9,128,0,58],[0,0,0,0,9,154,4,54,0,0,0,0,5,80,3,80,0,0,0,0,5,5,4,59,0,0,0,0,0,89,4,53],[0,0,12,17,0,0,97,61,0,0,5,59,5,80,1,151,0,0,0,248,10,128,2,16,0,0,0,0,5,90,1,159],[0,0,5,63,5,80,1,199,0,0,0,0,0,89,4,53,0,0,0,3,5,128,2,16,0,0,0,248,5,80,1,95],[0,0,0,0,5,87,1,207,0,0,0,3,7,0,0,41,0,0,0,33,7,112,0,57,0,0,0,0,0,87,4,53],[0,0,13,164,0,0,1,61,0,0,5,58,6,128,0,156,0,0,18,165,0,0,33,61,0,0,0,64,6,128,0,57],[0,0,0,64,0,96,4,63,0,0,0,0,6,33,3,79,0,0,0,1,10,0,0,58,0,0,0,0,10,168,4,54],[0,0,0,0,6,96,3,80,0,0,0,0,11,6,4,59,0,0,0,0,0,186,4,53,0,0,12,17,0,0,97,61],[0,0,0,8,13,0,0,41,0,0,0,248,6,208,2,16,0,0,5,11,12,0,0,65,0,0,0,0,13,13,0,75],[0,0,0,0,12,6,192,25,0,0,5,59,6,176,1,151,0,0,0,0,6,198,1,159,0,0,0,0,0,106,4,53],[0,0,0,64,6,0,4,61,0,0,0,32,11,96,0,57,0,0,0,0,10,3,4,51,0,0,0,0,12,10,0,75],[0,0,12,137,0,0,97,61,0,0,0,0,12,0,0,25,0,0,0,0,13,188,0,25,0,0,0,32,12,192,0,57],[0,0,0,0,14,60,0,25,0,0,0,0,14,14,4,51,0,0,0,0,0,237,4,53,0,0,0,0,13,172,0,75],[0,0,12,130,0,0,65,61,0,0,0,0,3,186,0,25,0,0,0,0,0,3,4,53,0,0,0,0,3,106,0,25],[0,0,0,32,11,48,0,57,0,0,0,0,10,4,4,51,0,0,0,0,12,10,0,75,0,0,12,152,0,0,97,61],[0,0,0,0,12,0,0,25,0,0,0,0,13,188,0,25,0,0,0,32,12,192,0,57,0,0,0,0,14,76,0,25],[0,0,0,0,14,14,4,51,0,0,0,0,0,237,4,53,0,0,0,0,13,172,0,75,0,0,12,145,0,0,65,61],[0,0,0,0,4,186,0,25,0,0,0,0,0,4,4,53,0,0,0,0,3,58,0,25,0,0,0,32,10,48,0,57],[0,0,0,0,4,5,4,51,0,0,0,0,11,4,0,75,0,0,12,167,0,0,97,61,0,0,0,0,11,0,0,25],[0,0,0,0,12,171,0,25,0,0,0,32,11,176,0,57,0,0,0,0,13,91,0,25,0,0,0,0,13,13,4,51],[0,0,0,0,0,220,4,53,0,0,0,0,12,75,0,75,0,0,12,160,0,0,65,61,0,0,0,0,5,164,0,25],[0,0,0,0,0,5,4,53,0,0,0,0,3,52,0,25,0,0,0,32,5,48,0,57,0,0,0,0,4,7,4,51],[0,0,0,0,10,4,0,75,0,0,12,182,0,0,97,61,0,0,0,0,10,0,0,25,0,0,0,0,11,90,0,25],[0,0,0,32,10,160,0,57,0,0,0,0,12,122,0,25,0,0,0,0,12,12,4,51,0,0,0,0,0,203,4,53],[0,0,0,0,11,74,0,75,0,0,12,175,0,0,65,61,0,0,0,0,5,84,0,25,0,0,0,0,0,5,4,53],[0,0,0,0,3,52,0,25,0,0,0,32,5,48,0,57,0,0,0,0,4,9,4,51,0,0,0,0,7,4,0,75],[0,0,12,197,0,0,97,61,0,0,0,0,7,0,0,25,0,0,0,0,10,87,0,25,0,0,0,32,7,112,0,57],[0,0,0,0,11,151,0,25,0,0,0,0,11,11,4,51,0,0,0,0,0,186,4,53,0,0,0,0,10,71,0,75],[0,0,12,190,0,0,65,61,0,0,0,0,5,84,0,25,0,0,0,0,0,5,4,53,0,0,0,0,3,52,0,25],[0,0,0,32,5,48,0,57,0,0,0,0,4,8,4,51,0,0,0,0,7,4,0,75,0,0,12,212,0,0,97,61],[0,0,0,0,7,0,0,25,0,0,0,0,9,87,0,25,0,0,0,32,7,112,0,57,0,0,0,0,10,135,0,25],[0,0,0,0,10,10,4,51,0,0,0,0,0,169,4,53,0,0,0,0,9,71,0,75,0,0,12,205,0,0,65,61],[0,0,0,0,5,84,0,25,0,0,0,0,0,5,4,53,0,0,0,0,3,99,0,73,0,0,0,0,3,52,0,25],[0,0,0,0,0,54,4,53,0,0,0,63,4,48,0,57,0,0,0,32,3,0,0,138,0,0,0,0,4,52,1,111],[0,0,0,0,7,100,0,25,0,0,0,0,4,71,0,75,0,0,0,0,4,0,0,25,0,0,0,1,4,0,64,57],[0,0,5,10,5,112,0,156,0,0,18,165,0,0,33,61,0,0,0,1,4,64,1,144,0,0,18,165,0,0,193,61],[0,0,0,64,0,112,4,63,0,0,0,10,5,0,0,41,0,0,1,196,4,80,0,57,0,0,0,0,4,65,3,79],[0,0,0,0,5,82,0,73,0,0,0,35,5,80,0,138,0,0,0,0,4,4,4,59,0,0,5,11,8,0,0,65],[0,0,0,0,9,84,0,75,0,0,0,0,9,0,0,25,0,0,0,0,9,8,128,25,0,0,5,11,5,80,1,151],[0,0,5,11,10,64,1,151,0,0,0,0,11,90,0,75,0,0,0,0,8,0,128,25,0,0,0,0,5,90,1,63],[0,0,5,11,5,80,0,156,0,0,0,0,8,9,192,25,0,0,0,0,5,8,0,75,0,0,1,39,0,0,193,61],[0,0,0,9,5,64,0,41,0,0,0,0,4,81,3,79,0,0,0,0,4,4,4,59,0,0,5,10,8,64,0,156],[0,0,1,39,0,0,33,61,0,0,0,0,8,66,0,73,0,0,0,32,5,80,0,57,0,0,5,11,9,0,0,65],[0,0,0,0,10,133,0,75,0,0,0,0,10,0,0,25,0,0,0,0,10,9,32,25,0,0,5,11,8,128,1,151],[0,0,5,11,11,80,1,151,0,0,0,0,12,139,0,75,0,0,0,0,9,0,128,25,0,0,0,0,8,139,1,63],[0,0,5,11,8,128,0,156,0,0,0,0,9,10,192,25,0,0,0,0,8,9,0,75,0,0,1,39,0,0,193,61],[0,0,0,1,8,64,0,140,0,0,17,245,0,0,193,61,0,0,0,0,8,81,3,79,0,0,0,0,8,8,4,59],[0,0,0,1,9,0,0,138,0,0,5,11,10,0,0,65,0,0,0,0,9,152,0,75,0,0,0,0,9,0,0,25],[0,0,0,0,9,10,32,25,0,0,5,11,8,128,1,151,0,0,5,11,11,128,0,156,0,0,0,0,10,0,128,25],[0,0,5,11,8,128,1,103,0,0,5,11,8,128,0,156,0,0,0,0,10,9,192,25,0,0,0,96,8,0,0,57],[0,0,0,0,9,10,0,75,0,0,18,86,0,0,193,61,0,0,5,58,8,112,0,156,0,0,18,165,0,0,33,61],[0,0,0,64,8,112,0,57,0,0,0,64,0,128,4,63,0,0,0,32,8,112,0,57,0,0,5,61,9,0,0,65],[0,0,0,0,0,152,4,53,0,0,0,1,8,0,0,57,0,0,0,0,0,135,4,53,0,0,0,0,8,7,0,25],[0,0,18,86,0,0,1,61,0,0,0,248,7,144,2,16,0,0,5,11,12,0,0,65,0,0,0,0,9,9,0,75],[0,0,0,0,12,7,192,25,0,0,5,59,7,176,1,151,0,0,0,0,7,199,1,159,0,0,0,0,0,122,4,53],[0,0,0,64,10,0,4,61,0,0,5,58,7,160,0,156,0,0,18,165,0,0,33,61,0,0,0,8,12,0,0,41],[0,0,0,32,7,192,0,138,0,0,0,0,7,113,3,79,0,0,0,0,7,7,4,59,0,0,0,64,9,160,0,57],[0,0,0,64,0,144,4,63,0,0,0,32,9,160,0,57,0,0,5,62,11,0,0,65,0,0,0,0,0,185,4,53],[0,0,0,21,9,0,0,57,0,0,0,0,0,154,4,53,0,0,0,96,7,112,2,16,0,0,0,33,9,160,0,57],[0,0,0,0,0,121,4,53,0,0,0,192,7,192,0,57,0,0,0,0,7,113,3,79,0,0,0,64,9,0,4,61],[0,0,0,0,7,7,4,59,0,8,0,0,0,7,0,29,0,0,0,128,11,112,0,140,0,0,14,5,0,0,65,61],[0,0,0,8,7,0,0,41,0,0,0,128,11,112,2,112,0,0,5,60,12,112,0,156,0,0,0,0,11,7,160,25],[0,0,5,60,12,112,0,156,0,0,0,0,12,0,0,25,0,0,0,16,12,0,32,57,0,0,0,8,13,192,1,191],[0,0,5,10,14,176,0,156,0,0,0,0,13,12,160,25,0,0,0,64,12,176,2,112,0,0,5,10,14,176,0,156],[0,0,0,0,12,11,160,25,0,0,0,4,14,208,1,191,0,0,5,2,11,192,0,156,0,0,0,0,14,13,160,25],[0,0,0,32,13,192,2,112,0,0,5,2,11,192,0,156,0,0,0,0,13,12,160,25,0,0,0,2,7,224,1,191],[0,0,255,255,12,208,0,140,0,0,0,0,7,14,160,25,0,0,0,16,12,208,2,112,0,0,0,0,12,13,160,25],[0,0,0,255,12,192,0,140,0,0,0,1,7,112,32,57,0,0,0,32,12,0,0,138,0,6,0,0,0,7,0,29],[0,0,0,65,13,112,0,57,0,0,0,0,12,205,1,111,0,0,0,0,12,201,0,25,0,0,0,0,13,156,0,75],[0,0,0,0,13,0,0,25,0,0,0,1,13,0,64,57,0,0,5,10,14,192,0,156,0,0,18,165,0,0,33,61],[0,0,0,1,13,208,1,144,0,0,18,165,0,0,193,61,0,0,0,64,0,192,4,63,0,0,0,6,7,0,0,41],[0,0,0,2,12,112,0,57,0,0,0,0,12,201,4,54,0,0,0,33,13,112,0,57,0,0,0,5,13,208,2,114],[0,0,13,127,0,0,97,61,0,0,0,0,14,33,3,79,0,0,0,0,15,0,0,25,0,0,0,5,7,240,2,16],[0,0,0,0,11,124,0,25,0,0,0,0,7,126,3,79,0,0,0,0,7,7,4,59,0,0,0,0,0,123,4,53],[0,0,0,1,15,240,0,57,0,0,0,0,7,223,0,75,0,0,13,119,0,0,65,61,0,0,0,0,7,0,0,75],[0,0,13,129,0,0,97,61,0,0,0,0,7,9,4,51,0,0,0,0,7,7,0,75,0,0,12,17,0,0,97,61],[0,0,0,0,7,12,4,51,0,0,5,59,7,112,1,151,0,0,0,6,13,0,0,41,0,0,0,248,11,208,2,16],[0,0,0,0,7,123,1,159,0,0,5,61,7,112,0,65,0,0,0,0,0,124,4,53,0,0,0,3,7,208,2,16],[0,0,0,248,7,112,0,137,0,0,0,8,11,112,1,239,0,0,0,255,7,112,0,140,0,0,0,0,11,0,32,25],[0,0,0,33,7,144,0,57,0,0,0,0,0,183,4,53,0,0,14,24,0,0,1,61,0,0,0,3,8,0,0,41],[0,0,5,58,8,128,0,156,0,0,18,165,0,0,33,61,0,0,0,3,9,0,0,41,0,0,0,64,8,144,0,57],[0,0,0,64,0,128,4,63,0,0,0,1,8,0,0,58,0,0,0,0,8,137,4,54,0,0,0,0,5,80,3,80],[0,0,0,0,5,5,4,59,0,0,0,0,0,88,4,53,0,0,12,17,0,0,97,61,0,0,0,248,7,112,2,16],[0,0,5,59,5,80,1,151,0,0,0,0,5,117,1,159,0,0,5,11,5,80,1,103,0,0,0,0,0,88,4,53],[0,0,0,128,1,16,0,138,0,0,0,0,5,19,3,79,0,0,0,96,1,0,0,57,0,0,0,0,5,5,4,59],[0,0,0,0,5,5,0,75,0,0,14,212,0,0,193,61,0,0,5,11,5,0,0,65,0,0,0,0,7,98,0,75],[0,0,0,0,7,0,0,25,0,0,0,0,7,5,128,25,0,0,5,11,6,96,1,151,0,0,5,11,8,32,1,151],[0,0,0,0,9,104,0,75,0,0,0,0,5,0,128,25,0,0,0,0,6,104,1,63,0,0,5,11,6,96,0,156],[0,0,0,0,5,7,192,25,0,0,0,0,5,5,0,75,0,0,1,39,0,0,193,61,0,0,0,8,5,0,0,41],[0,0,0,0,6,5,4,51,0,0,0,6,5,0,0,41,0,0,0,0,7,5,4,51,0,0,0,5,5,0,0,41],[0,0,0,0,8,5,4,51,0,0,0,4,5,0,0,41,0,0,0,0,9,5,4,51,0,0,0,3,5,0,0,41],[0,0,0,0,10,5,4,51,0,0,0,9,5,32,0,41,0,0,0,0,2,83,3,79,0,0,0,0,2,2,4,59],[0,0,5,10,11,32,0,156,0,0,1,39,0,0,33,61,0,0,0,0,11,36,0,73,0,0,0,32,5,80,0,57],[0,0,5,11,12,0,0,65,0,0,0,0,13,181,0,75,0,0,0,0,13,0,0,25,0,0,0,0,13,12,32,25],[0,0,5,11,11,176,1,151,0,0,5,11,14,80,1,151,0,0,0,0,15,190,0,75,0,0,0,0,12,0,128,25],[0,0,0,0,11,190,1,63,0,0,5,11,11,176,0,156,0,0,0,0,12,13,192,25,0,0,0,0,11,12,0,75],[0,0,1,39,0,0,193,61,0,0,0,0,6,103,0,25,0,0,0,0,6,134,0,25,0,0,0,0,6,150,0,25],[0,0,0,0,6,166,0,25,0,0,0,0,6,38,0,25,0,0,0,0,7,1,4,51,0,0,0,0,6,118,0,25],[0,0,0,64,7,0,4,61,0,0,5,10,6,96,1,151,0,0,0,56,8,96,0,140,0,0,15,246,0,0,65,61],[0,0,0,32,9,96,2,112,0,0,5,2,8,96,0,156,0,0,0,0,9,6,160,25,0,0,5,2,8,96,0,156],[0,0,0,0,10,0,0,25,0,0,0,4,10,0,32,57,0,0,0,2,8,160,1,191,0,0,255,255,11,144,0,140],[0,0,0,0,8,10,160,25,0,0,0,16,10,144,2,112,0,0,0,0,10,9,160,25,0,0,0,255,9,160,0,140],[0,0,0,0,9,0,0,25,0,0,0,1,9,0,32,57,0,0,5,58,10,112,0,156,0,0,18,165,0,0,33,61],[0,0,0,0,8,152,1,159,0,0,0,64,9,112,0,57,0,0,0,64,0,144,4,63,0,0,0,0,9,67,3,79],[0,0,0,2,4,128,0,58,0,0,0,0,4,71,4,54,0,0,0,0,9,144,3,80,0,0,0,0,9,9,4,59],[0,0,0,0,0,148,4,53,0,0,12,17,0,0,97,61,0,0,5,59,9,144,1,151,0,0,0,248,10,128,2,16],[0,0,0,0,9,154,1,159,0,0,5,65,9,144,1,199,0,0,0,0,0,148,4,53,0,0,0,3,4,128,2,16],[0,0,0,248,4,64,1,95,0,0,0,0,4,70,1,207,0,0,0,33,6,112,0,57,0,0,0,0,0,70,4,53],[0,0,16,6,0,0,1,61,0,0,5,58,7,144,0,156,0,0,18,165,0,0,33,61,0,0,0,64,7,144,0,57],[0,0,0,64,0,112,4,63,0,0,0,0,7,33,3,79,0,0,0,1,11,0,0,58,0,0,0,0,11,185,4,54],[0,0,0,0,7,112,3,80,0,0,0,0,12,7,4,59,0,0,0,0,0,203,4,53,0,0,12,17,0,0,97,61],[0,0,0,8,14,0,0,41,0,0,0,248,7,224,2,16,0,0,5,11,13,0,0,65,0,0,0,0,14,14,0,75],[0,0,0,0,13,7,192,25,0,0,5,59,7,192,1,151,0,0,0,0,7,215,1,159,0,0,0,0,0,123,4,53],[0,0,0,64,7,0,4,61,0,0,0,32,12,112,0,57,0,0,0,0,11,3,4,51,0,0,0,0,13,11,0,75],[0,0,14,37,0,0,97,61,0,0,0,0,13,0,0,25,0,0,0,0,14,205,0,25,0,0,0,32,13,208,0,57],[0,0,0,0,15,61,0,25,0,0,0,0,15,15,4,51,0,0,0,0,0,254,4,53,0,0,0,0,14,189,0,75],[0,0,14,30,0,0,65,61,0,0,0,0,3,203,0,25,0,0,0,0,0,3,4,53,0,0,0,0,3,123,0,25],[0,0,0,32,12,48,0,57,0,0,0,0,11,4,4,51,0,0,0,0,13,11,0,75,0,0,14,52,0,0,97,61],[0,0,0,0,13,0,0,25,0,0,0,0,14,205,0,25,0,0,0,32,13,208,0,57,0,0,0,0,15,77,0,25],[0,0,0,0,15,15,4,51,0,0,0,0,0,254,4,53,0,0,0,0,14,189,0,75,0,0,14,45,0,0,65,61],[0,0,0,0,4,203,0,25,0,0,0,0,0,4,4,53,0,0,0,0,3,59,0,25,0,0,0,32,11,48,0,57],[0,0,0,0,4,5,4,51,0,0,0,0,12,4,0,75,0,0,14,67,0,0,97,61,0,0,0,0,12,0,0,25],[0,0,0,0,13,188,0,25,0,0,0,32,12,192,0,57,0,0,0,0,14,92,0,25,0,0,0,0,14,14,4,51],[0,0,0,0,0,237,4,53,0,0,0,0,13,76,0,75,0,0,14,60,0,0,65,61,0,0,0,0,5,180,0,25],[0,0,0,0,0,5,4,53,0,0,0,0,3,52,0,25,0,0,0,32,5,48,0,57,0,0,0,0,4,6,4,51],[0,0,0,0,11,4,0,75,0,0,14,82,0,0,97,61,0,0,0,0,11,0,0,25,0,0,0,0,12,91,0,25],[0,0,0,32,11,176,0,57,0,0,0,0,13,107,0,25,0,0,0,0,13,13,4,51,0,0,0,0,0,220,4,53],[0,0,0,0,12,75,0,75,0,0,14,75,0,0,65,61,0,0,0,0,5,84,0,25,0,0,0,0,0,5,4,53],[0,0,0,0,3,52,0,25,0,0,0,32,5,48,0,57,0,0,0,0,4,8,4,51,0,0,0,0,6,4,0,75],[0,0,14,97,0,0,97,61,0,0,0,0,6,0,0,25,0,0,0,0,11,86,0,25,0,0,0,32,6,96,0,57],[0,0,0,0,12,134,0,25,0,0,0,0,12,12,4,51,0,0,0,0,0,203,4,53,0,0,0,0,11,70,0,75],[0,0,14,90,0,0,65,61,0,0,0,0,5,84,0,25,0,0,0,0,0,5,4,53,0,0,0,0,3,52,0,25],[0,0,0,32,5,48,0,57,0,0,0,0,4,10,4,51,0,0,0,0,6,4,0,75,0,0,14,112,0,0,97,61],[0,0,0,0,6,0,0,25,0,0,0,0,8,86,0,25,0,0,0,32,6,96,0,57,0,0,0,0,11,166,0,25],[0,0,0,0,11,11,4,51,0,0,0,0,0,184,4,53,0,0,0,0,8,70,0,75,0,0,14,105,0,0,65,61],[0,0,0,0,5,84,0,25,0,0,0,0,0,5,4,53,0,0,0,0,3,52,0,25,0,0,0,32,5,48,0,57],[0,0,0,0,4,9,4,51,0,0,0,0,6,4,0,75,0,0,14,127,0,0,97,61,0,0,0,0,6,0,0,25],[0,0,0,0,8,86,0,25,0,0,0,32,6,96,0,57,0,0,0,0,10,150,0,25,0,0,0,0,10,10,4,51],[0,0,0,0,0,168,4,53,0,0,0,0,8,70,0,75,0,0,14,120,0,0,65,61,0,0,0,0,5,84,0,25],[0,0,0,0,0,5,4,53,0,0,0,0,3,115,0,73,0,0,0,0,3,52,0,25,0,0,0,0,0,55,4,53],[0,0,0,63,4,48,0,57,0,0,0,32,3,0,0,138,0,0,0,0,4,52,1,111,0,0,0,0,6,116,0,25],[0,0,0,0,4,70,0,75,0,0,0,0,4,0,0,25,0,0,0,1,4,0,64,57,0,0,5,10,5,96,0,156],[0,0,18,165,0,0,33,61,0,0,0,1,4,64,1,144,0,0,18,165,0,0,193,61,0,0,0,64,0,96,4,63],[0,0,0,10,5,0,0,41,0,0,1,196,4,80,0,57,0,0,0,0,4,65,3,79,0,0,0,0,5,82,0,73],[0,0,0,35,5,80,0,138,0,0,0,0,4,4,4,59,0,0,5,11,8,0,0,65,0,0,0,0,9,84,0,75],[0,0,0,0,9,0,0,25,0,0,0,0,9,8,128,25,0,0,5,11,5,80,1,151,0,0,5,11,10,64,1,151],[0,0,0,0,11,90,0,75,0,0,0,0,8,0,128,25,0,0,0,0,5,90,1,63,0,0,5,11,5,80,0,156],[0,0,0,0,8,9,192,25,0,0,0,0,5,8,0,75,0,0,1,39,0,0,193,61,0,0,0,9,5,64,0,41],[0,0,0,0,4,81,3,79,0,0,0,0,4,4,4,59,0,0,5,10,8,64,0,156,0,0,1,39,0,0,33,61],[0,0,0,0,8,66,0,73,0,0,0,32,5,80,0,57,0,0,5,11,9,0,0,65,0,0,0,0,10,133,0,75],[0,0,0,0,10,0,0,25,0,0,0,0,10,9,32,25,0,0,5,11,8,128,1,151,0,0,5,11,11,80,1,151],[0,0,0,0,12,139,0,75,0,0,0,0,9,0,128,25,0,0,0,0,8,139,1,63,0,0,5,11,8,128,0,156],[0,0,0,0,9,10,192,25,0,0,0,0,8,9,0,75,0,0,1,39,0,0,193,61,0,0,0,1,8,64,0,140],[0,0,18,29,0,0,193,61,0,0,0,0,8,81,3,79,0,0,0,0,8,8,4,59,0,0,0,1,9,0,0,138],[0,0,5,11,10,0,0,65,0,0,0,0,9,152,0,75,0,0,0,0,9,0,0,25,0,0,0,0,9,10,32,25],[0,0,5,11,8,128,1,151,0,0,5,11,11,128,0,156,0,0,0,0,10,0,128,25,0,0,5,11,8,128,1,103],[0,0,5,11,8,128,0,156,0,0,0,0,10,9,192,25,0,0,0,96,8,0,0,57,0,0,0,0,9,10,0,75],[0,0,18,162,0,0,193,61,0,0,5,58,8,96,0,156,0,0,18,165,0,0,33,61,0,0,0,64,8,96,0,57],[0,0,0,64,0,128,4,63,0,0,0,32,8,96,0,57,0,0,5,61,9,0,0,65,0,0,0,0,0,152,4,53],[0,0,0,1,8,0,0,57,0,0,0,0,0,134,4,53,0,0,0,0,8,6,0,25,0,0,18,162,0,0,1,61],[0,0,5,56,1,0,0,65,0,0,0,0,0,16,4,57,0,0,5,2,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,5,2,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,5,57,1,16,1,199],[0,0,128,11,2,0,0,57,20,1,19,242,0,0,4,15,0,0,0,1,2,32,1,144,0,0,16,244,0,0,97,61],[0,0,0,64,2,0,4,61,0,0,0,0,1,1,4,59,0,0,0,128,3,16,0,140,0,0,15,141,0,0,65,61],[0,0,0,128,3,16,2,112,0,0,5,60,4,16,0,156,0,0,0,0,3,1,160,25,0,0,5,60,4,16,0,156],[0,0,0,0,4,0,0,25,0,0,0,16,4,0,32,57,0,0,0,8,5,64,1,191,0,0,5,10,6,48,0,156],[0,0,0,0,5,4,160,25,0,0,0,64,4,48,2,112,0,0,5,10,6,48,0,156,0,0,0,0,4,3,160,25],[0,0,0,4,3,80,1,191,0,0,5,2,6,64,0,156,0,0,0,0,3,5,160,25,0,0,0,32,6,64,2,112],[0,0,5,2,5,64,0,156,0,0,0,0,6,4,160,25,0,0,0,2,5,48,1,191,0,0,255,255,4,96,0,140],[0,0,0,0,5,3,160,25,0,0,0,16,3,96,2,112,0,0,0,0,3,6,160,25,0,0,0,255,3,48,0,140],[0,0,0,1,5,80,32,57,0,0,0,65,3,80,0,57,0,0,0,2,3,48,1,127,0,0,0,0,3,50,0,25],[0,0,0,0,4,35,0,75,0,0,0,0,4,0,0,25,0,0,0,1,4,0,64,57,0,0,5,10,6,48,0,156],[0,0,18,165,0,0,33,61,0,0,0,1,4,64,1,144,0,0,18,165,0,0,193,61,0,0,0,64,0,48,4,63],[0,0,0,2,3,80,0,57,0,0,0,0,6,50,4,54,0,0,0,2,3,0,3,103,0,0,0,0,4,0,0,49],[0,0,0,33,7,80,0,57,0,0,0,5,7,112,2,114,0,0,15,25,0,0,97,61,0,0,0,0,8,67,3,79],[0,0,0,0,9,0,0,25,0,0,0,5,10,144,2,16,0,0,0,0,11,166,0,25,0,0,0,0,10,168,3,79],[0,0,0,0,10,10,4,59,0,0,0,0,0,171,4,53,0,0,0,1,9,144,0,57,0,0,0,0,10,121,0,75],[0,0,15,17,0,0,65,61,0,0,0,0,7,0,0,75,0,0,15,27,0,0,97,61,0,0,0,0,7,2,4,51],[0,0,0,0,7,7,0,75,0,0,12,17,0,0,97,61,0,0,0,0,7,6,4,51,0,0,5,59,7,112,1,151],[0,0,0,248,8,80,2,16,0,0,0,0,7,120,1,159,0,0,5,61,7,112,0,65,0,0,0,0,0,118,4,53],[0,0,0,3,5,80,2,16,0,0,0,248,5,80,0,137,0,0,0,0,1,81,1,207,0,0,0,255,5,80,0,140],[0,0,0,0,1,0,32,25,0,0,0,33,5,32,0,57,0,0,15,160,0,0,1,61,0,0,5,2,3,0,0,65],[0,0,5,2,5,32,0,156,0,0,0,0,2,3,128,25,0,0,0,64,2,32,2,16,0,0,5,2,5,64,0,156],[0,0,0,0,4,3,128,25,0,0,0,96,4,64,2,16,0,0,0,0,2,36,1,159,0,0,5,2,4,16,0,156],[0,0,0,0,1,3,128,25,0,0,0,192,1,16,2,16,0,0,0,0,1,18,1,159,0,0,0,9,2,0,0,41],[20,1,19,237,0,0,4,15,0,8,0,96,0,0,0,61,0,6,0,128,0,0,0,61,0,0,0,1,2,32,1,143],[0,3,0,0,0,1,3,85,0,0,0,96,1,16,2,112,0,1,5,2,0,16,1,157,0,0,5,2,3,16,1,152],[0,0,15,110,0,0,97,61,0,0,0,63,1,48,0,57,0,0,0,32,4,0,0,138,0,0,0,0,1,65,1,111],[0,0,0,64,4,0,4,61,0,0,0,0,1,20,0,25,0,8,0,0,0,4,0,29,0,0,0,0,4,65,0,75],[0,0,0,0,4,0,0,25,0,0,0,1,4,0,64,57,0,0,5,10,5,16,0,156,0,0,18,165,0,0,33,61],[0,0,0,1,4,64,1,144,0,0,18,165,0,0,193,61,0,0,0,64,0,16,4,63,0,0,0,31,1,48,1,143],[0,0,0,8,4,0,0,41,0,0,0,0,8,52,4,54,0,0,0,3,4,0,3,103,0,0,0,5,3,48,2,114],[0,0,15,94,0,0,97,61,0,0,0,0,5,0,0,25,0,0,0,5,6,80,2,16,0,0,0,0,7,104,0,25],[0,0,0,0,6,100,3,79,0,0,0,0,6,6,4,59,0,0,0,0,0,103,4,53,0,0,0,1,5,80,0,57],[0,0,0,0,6,53,0,75,0,0,15,86,0,0,65,61,0,6,0,0,0,8,0,29,0,0,0,0,5,1,0,75],[0,0,15,110,0,0,97,61,0,0,0,5,3,48,2,16,0,0,0,0,4,52,3,79,0,0,0,6,3,48,0,41],[0,0,0,3,1,16,2,16,0,0,0,0,5,3,4,51,0,0,0,0,5,21,1,207,0,0,0,0,5,21,2,47],[0,0,0,0,4,4,4,59,0,0,1,0,1,16,0,137,0,0,0,0,4,20,2,47,0,0,0,0,1,20,1,207],[0,0,0,0,1,81,1,159,0,0,0,0,0,19,4,53,0,0,0,8,1,0,0,41,0,0,0,0,1,1,4,51],[0,0,0,0,2,2,0,75,0,0,15,197,0,0,193,61,0,0,0,0,2,1,0,75,0,0,15,241,0,0,193,61],[0,0,0,64,4,0,4,61,0,9,0,0,0,4,0,29,0,0,5,16,1,0,0,65,0,0,0,0,0,20,4,53],[0,0,0,4,1,64,0,57,0,0,0,4,2,0,0,41,0,0,0,0,0,33,4,53,0,0,0,10,1,0,0,41],[0,0,0,0,3,1,4,51,0,10,0,0,0,3,0,29,0,0,0,36,1,64,0,57,0,0,0,0,0,49,4,53],[0,0,0,68,2,64,0,57,0,0,0,7,1,0,0,41,20,1,19,223,0,0,4,15,0,0,0,10,1,0,0,41],[0,0,0,31,1,16,0,57,0,0,0,32,2,0,0,138,0,0,0,0,1,33,1,111,0,0,0,68,1,16,0,57],[0,0,5,2,2,0,0,65,0,0,5,2,3,16,0,156,0,0,0,0,1,2,128,25,0,0,0,9,4,0,0,41],[0,0,8,221,0,0,1,61,0,0,5,58,3,32,0,156,0,0,18,165,0,0,33,61,0,0,0,64,3,32,0,57],[0,0,0,64,0,48,4,63,0,0,0,1,3,0,0,58,0,0,0,0,5,50,4,54,0,0,0,0,4,0,0,49],[0,0,0,2,3,0,3,103,0,0,0,0,6,67,3,79,0,0,0,0,6,96,3,80,0,0,0,0,6,6,4,59],[0,0,0,0,0,101,4,53,0,0,12,17,0,0,97,61,0,0,0,248,7,16,2,16,0,0,5,11,8,0,0,65],[0,0,0,0,1,1,0,75,0,0,0,0,8,7,192,25,0,0,5,59,1,96,1,151,0,0,0,0,1,129,1,159],[0,0,0,0,0,21,4,53,0,0,0,64,1,0,4,61,0,0,0,32,6,16,0,57,0,0,0,0,5,2,4,51],[0,0,0,0,7,5,0,75,0,0,15,174,0,0,97,61,0,0,0,0,7,0,0,25,0,0,0,0,8,103,0,25],[0,0,0,32,7,112,0,57,0,0,0,0,9,39,0,25,0,0,0,0,9,9,4,51,0,0,0,0,0,152,4,53],[0,0,0,0,8,87,0,75,0,0,15,167,0,0,65,61,0,0,0,0,2,101,0,25,0,0,5,77,6,0,0,65],[0,0,0,0,0,98,4,53,0,0,0,2,2,80,0,57,0,0,0,0,0,33,4,53,0,0,0,65,2,80,0,57],[0,0,0,2,5,32,1,127,0,0,0,0,2,21,0,25,0,0,0,0,5,82,0,75,0,0,0,0,5,0,0,25],[0,0,0,1,5,0,64,57,0,0,5,10,6,32,0,156,0,0,18,165,0,0,33,61,0,0,0,1,5,80,1,144],[0,0,18,165,0,0,193,61,0,0,0,10,6,0,0,41,0,0,1,196,5,96,0,57,0,0,0,64,0,32,4,63],[0,0,0,0,2,83,3,79,0,0,0,0,5,100,0,73,0,0,0,35,6,80,0,138,0,0,0,0,2,2,4,59],[0,0,13,170,0,0,1,61,0,0,0,0,2,1,0,75,0,0,15,220,0,0,193,61,0,0,5,36,1,0,0,65],[0,0,0,0,0,16,4,57,0,0,0,9,1,0,0,41,0,0,0,4,0,16,4,67,0,0,5,2,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,5,2,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,5,37,1,16,1,199,0,0,128,2,2,0,0,57,20,1,19,242,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,16,244,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75,0,0,9,110,0,0,97,61],[0,0,0,8,1,0,0,41,0,0,0,0,1,1,4,51,0,0,0,0,2,1,0,75,0,0,3,118,0,0,97,61],[0,0,5,11,2,0,0,65,0,0,0,32,3,16,0,140,0,0,0,0,3,0,0,25,0,0,0,0,3,2,64,25],[0,0,5,11,1,16,1,151,0,0,0,0,4,1,0,75,0,0,0,0,2,0,160,25,0,0,5,11,1,16,0,156],[0,0,0,0,2,3,192,25,0,0,0,0,1,2,0,75,0,0,1,39,0,0,193,61,0,0,0,6,1,0,0,41],[0,0,0,0,1,1,4,51,0,0,0,0,2,1,0,75,0,0,0,0,2,0,0,25,0,0,0,1,2,0,192,57],[0,0,0,0,2,33,0,75,0,0,1,39,0,0,193,61,0,0,0,0,1,1,0,75,0,0,3,118,0,0,193,61],[0,0,11,12,0,0,1,61,0,0,5,2,2,0,0,65,0,0,5,2,3,16,0,156,0,0,0,0,1,2,128,25],[0,0,0,6,4,0,0,41,0,0,8,221,0,0,1,61,0,0,5,58,8,112,0,156,0,0,18,165,0,0,33,61],[0,0,0,64,8,112,0,57,0,0,0,64,0,128,4,63,0,0,0,0,8,67,3,79,0,0,0,1,4,0,0,58],[0,0,0,0,4,71,4,54,0,0,0,0,8,128,3,80,0,0,0,0,8,8,4,59,0,0,0,0,0,132,4,53],[0,0,12,17,0,0,97,61,0,0,5,59,8,128,1,151,0,0,0,248,6,96,2,16,0,0,0,0,6,134,1,159],[0,0,5,64,6,96,0,65,0,0,0,0,0,100,4,53,0,0,0,64,4,0,4,61,0,0,0,32,6,64,0,57],[0,0,0,0,8,7,4,51,0,0,0,0,9,8,0,75,0,0,16,19,0,0,97,61,0,0,0,0,9,0,0,25],[0,0,0,0,10,105,0,25,0,0,0,32,9,144,0,57,0,0,0,0,11,121,0,25,0,0,0,0,11,11,4,51],[0,0,0,0,0,186,4,53,0,0,0,0,10,137,0,75,0,0,16,12,0,0,65,61,0,0,0,0,7,104,0,25],[0,0,0,0,0,7,4,53,0,0,0,0,7,72,0,25,0,0,0,32,9,112,0,57,0,0,0,8,8,0,0,41],[0,0,0,0,8,8,4,51,0,0,0,0,10,8,0,75,0,0,16,35,0,0,97,61,0,0,0,0,10,0,0,25],[0,0,0,0,11,154,0,25,0,0,0,32,10,160,0,57,0,0,0,8,12,160,0,41,0,0,0,0,12,12,4,51],[0,0,0,0,0,203,4,53,0,0,0,0,11,138,0,75,0,0,16,28,0,0,65,61,0,0,0,0,9,152,0,25],[0,0,0,0,0,9,4,53,0,0,0,0,7,120,0,25,0,0,0,32,9,112,0,57,0,0,0,6,8,0,0,41],[0,0,0,0,8,8,4,51,0,0,0,0,10,8,0,75,0,0,16,51,0,0,97,61,0,0,0,0,10,0,0,25],[0,0,0,0,11,154,0,25,0,0,0,32,10,160,0,57,0,0,0,6,12,160,0,41,0,0,0,0,12,12,4,51],[0,0,0,0,0,203,4,53,0,0,0,0,11,138,0,75,0,0,16,44,0,0,65,61,0,0,0,0,9,152,0,25],[0,0,0,0,0,9,4,53,0,0,0,0,7,120,0,25,0,0,0,32,9,112,0,57,0,0,0,5,8,0,0,41],[0,0,0,0,8,8,4,51,0,0,0,0,10,8,0,75,0,0,16,67,0,0,97,61,0,0,0,0,10,0,0,25],[0,0,0,0,11,154,0,25,0,0,0,32,10,160,0,57,0,0,0,5,12,160,0,41,0,0,0,0,12,12,4,51],[0,0,0,0,0,203,4,53,0,0,0,0,11,138,0,75,0,0,16,60,0,0,65,61,0,0,0,0,9,152,0,25],[0,0,0,0,0,9,4,53,0,0,0,0,7,120,0,25,0,0,0,32,9,112,0,57,0,0,0,4,8,0,0,41],[0,0,0,0,8,8,4,51,0,0,0,0,10,8,0,75,0,0,16,83,0,0,97,61,0,0,0,0,10,0,0,25],[0,0,0,0,11,154,0,25,0,0,0,32,10,160,0,57,0,0,0,4,12,160,0,41,0,0,0,0,12,12,4,51],[0,0,0,0,0,203,4,53,0,0,0,0,11,138,0,75,0,0,16,76,0,0,65,61,0,0,0,0,9,152,0,25],[0,0,0,0,0,9,4,53,0,0,0,0,7,120,0,25,0,0,0,32,9,112,0,57,0,0,0,3,8,0,0,41],[0,0,0,0,8,8,4,51,0,0,0,0,10,8,0,75,0,0,16,99,0,0,97,61,0,0,0,0,10,0,0,25],[0,0,0,0,11,154,0,25,0,0,0,32,10,160,0,57,0,0,0,3,12,160,0,41,0,0,0,0,12,12,4,51],[0,0,0,0,0,203,4,53,0,0,0,0,11,138,0,75,0,0,16,92,0,0,65,61,0,0,0,0,9,152,0,25],[0,0,0,0,0,9,4,53,0,0,0,0,5,83,3,79,0,0,0,0,3,120,0,25,0,0,0,31,7,32,1,143],[0,0,0,32,8,48,0,57,0,0,0,5,9,32,2,114,0,0,16,116,0,0,97,61,0,0,0,0,10,0,0,25],[0,0,0,5,11,160,2,16,0,0,0,0,12,184,0,25,0,0,0,0,11,181,3,79,0,0,0,0,11,11,4,59],[0,0,0,0,0,188,4,53,0,0,0,1,10,160,0,57,0,0,0,0,11,154,0,75,0,0,16,108,0,0,65,61],[0,0,0,0,10,7,0,75,0,0,16,131,0,0,97,61,0,0,0,5,9,144,2,16,0,0,0,0,5,149,3,79],[0,0,0,0,8,152,0,25,0,0,0,3,7,112,2,16,0,0,0,0,9,8,4,51,0,0,0,0,9,121,1,207],[0,0,0,0,9,121,2,47,0,0,0,0,5,5,4,59,0,0,1,0,7,112,0,137,0,0,0,0,5,117,2,47],[0,0,0,0,5,117,1,207,0,0,0,0,5,149,1,159,0,0,0,0,0,88,4,53,0,0,0,0,2,35,0,25],[0,0,0,32,5,32,0,57,0,0,0,0,0,5,4,53,0,0,0,0,3,1,4,51,0,0,0,0,7,3,0,75],[0,0,16,145,0,0,97,61,0,0,0,0,7,0,0,25,0,0,0,0,8,87,0,25,0,0,0,32,7,112,0,57],[0,0,0,0,9,23,0,25,0,0,0,0,9,9,4,51,0,0,0,0,0,152,4,53,0,0,0,0,8,55,0,75],[0,0,16,138,0,0,65,61,0,0,0,0,1,83,0,25,0,0,0,0,0,1,4,53,0,0,0,0,1,66,0,73],[0,0,0,0,1,19,0,25,0,0,0,0,0,20,4,53,0,0,0,63,1,16,0,57,0,0,0,2,2,16,1,127],[0,0,0,0,1,66,0,25,0,0,0,0,2,33,0,75,0,0,0,0,2,0,0,25,0,0,0,1,2,0,64,57],[0,0,5,10,3,16,0,156,0,0,18,165,0,0,33,61,0,0,0,1,2,32,1,144,0,0,18,165,0,0,193,61],[0,0,0,64,0,16,4,63,0,0,5,2,1,0,0,65,0,0,5,2,2,96,0,156,0,0,0,0,6,1,128,25],[0,0,0,64,2,96,2,16,0,0,0,0,3,4,4,51,0,0,5,2,4,48,0,156,0,0,0,0,3,1,128,25],[0,0,0,96,3,48,2,16,0,0,0,0,2,35,1,159,0,0,0,0,3,0,4,20,0,0,5,2,4,48,0,156],[0,0,0,0,3,1,128,25,0,0,0,192,1,48,2,16,0,0,0,0,1,33,1,159,0,0,5,13,1,16,1,199],[0,0,128,16,2,0,0,57,20,1,19,242,0,0,4,15,0,0,0,1,2,32,1,144,0,0,1,39,0,0,97,61],[0,0,0,2,3,0,3,103,0,0,0,0,1,1,4,59,0,8,0,0,0,1,0,29,0,0,0,10,1,0,0,41],[0,0,0,228,4,16,0,57,0,0,0,0,1,67,3,79,0,0,0,0,1,1,4,59,0,0,5,12,1,16,1,152],[0,5,0,0,0,4,0,29,0,0,16,212,0,0,193,61,0,0,0,128,1,64,0,138,0,0,0,0,2,19,3,79],[0,0,0,64,1,64,0,138,0,0,0,0,5,19,3,79,0,0,0,0,4,2,4,59,0,0,0,0,5,5,4,59],[0,0,0,0,98,69,0,169,0,0,0,0,6,5,0,75,0,0,16,202,0,0,97,61,0,0,0,0,101,82,0,217],[0,0,0,0,4,69,0,75,0,0,16,208,0,0,193,61,0,0,0,128,1,16,0,57,0,0,0,0,1,19,3,79],[0,0,0,0,1,1,4,59,0,6,0,0,0,33,0,30,0,0,16,208,0,0,65,61,0,0,16,217,0,0,1,61],[0,0,5,88,1,0,0,65,0,0,0,0,0,16,4,53,0,0,0,17,1,0,0,57,0,0,0,65,0,0,1,61],[0,0,0,10,1,0,0,41,0,0,1,36,1,16,0,57,0,0,0,0,1,19,3,79,0,0,0,0,1,1,4,59],[0,6,0,0,0,1,0,29,0,0,5,78,1,0,0,65,0,0,0,0,0,16,4,57,0,0,0,7,1,0,0,41],[0,0,0,4,0,16,4,67,0,0,5,2,1,0,0,65,0,0,0,0,2,0,4,20,0,0,5,2,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,5,37,1,16,1,199,0,0,128,10,2,0,0,57],[20,1,19,242,0,0,4,15,0,0,0,1,2,32,1,144,0,0,16,244,0,0,97,61,0,0,0,0,1,1,4,59],[0,0,0,6,1,16,0,107,0,0,16,245,0,0,161,61,0,0,0,64,1,0,4,61,0,0,0,100,2,16,0,57],[0,0,5,86,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,68,2,16,0,57,0,0,5,87,3,0,0,65],[0,0,0,0,0,50,4,53,0,0,0,36,2,16,0,57,0,0,0,34,3,0,0,57,0,0,1,5,0,0,1,61],[0,0,0,0,0,1,4,47,0,0,0,0,4,0,0,49,0,0,0,10,1,64,0,106,0,0,0,35,2,16,0,138],[0,0,0,5,1,0,0,41,0,0,1,0,1,16,0,57,0,0,0,2,3,0,3,103,0,0,0,0,1,19,3,79],[0,0,0,0,1,1,4,59,0,0,5,11,5,0,0,65,0,0,0,0,6,33,0,75,0,0,0,0,6,0,0,25],[0,0,0,0,6,5,128,25,0,0,5,11,2,32,1,151,0,0,5,11,7,16,1,151,0,0,0,0,8,39,0,75],[0,0,0,0,5,0,128,25,0,0,0,0,2,39,1,63,0,0,5,11,2,32,0,156,0,0,0,0,5,6,192,25],[0,0,0,0,2,5,0,75,0,0,1,39,0,0,193,61,0,0,0,9,2,16,0,41,0,0,0,0,1,35,3,79],[0,0,0,0,1,1,4,59,0,0,5,10,5,16,0,156,0,0,1,39,0,0,33,61,0,0,0,0,5,20,0,73],[0,0,0,32,6,32,0,57,0,0,5,11,2,0,0,65,0,0,0,0,7,86,0,75,0,0,0,0,7,0,0,25],[0,0,0,0,7,2,32,25,0,0,5,11,5,80,1,151,0,0,5,11,8,96,1,151,0,0,0,0,9,88,0,75],[0,0,0,0,2,0,128,25,0,0,0,0,5,88,1,63,0,0,5,11,5,80,0,156,0,0,0,0,2,7,192,25],[0,0,0,0,2,2,0,75,0,0,1,39,0,0,193,61,0,0,0,63,2,16,0,57,0,0,0,32,5,0,0,138],[0,0,0,0,5,82,1,111,0,0,0,64,2,0,4,61,0,0,0,0,5,82,0,25,0,0,0,0,7,37,0,75],[0,0,0,0,7,0,0,25,0,0,0,1,7,0,64,57,0,0,5,10,8,80,0,156,0,0,18,165,0,0,33,61],[0,0,0,1,7,112,1,144,0,0,18,165,0,0,193,61,0,0,0,64,0,80,4,63,0,0,0,0,5,18,4,54],[0,0,0,0,7,97,0,25,0,0,0,0,4,71,0,75,0,0,1,39,0,0,33,61,0,0,0,0,4,99,3,79],[0,0,0,31,3,16,1,143,0,0,0,5,6,16,2,114,0,0,17,60,0,0,97,61,0,0,0,0,7,0,0,25],[0,0,0,5,8,112,2,16,0,0,0,0,9,133,0,25,0,0,0,0,8,132,3,79,0,0,0,0,8,8,4,59],[0,0,0,0,0,137,4,53,0,0,0,1,7,112,0,57,0,0,0,0,8,103,0,75,0,0,17,52,0,0,65,61],[0,0,0,0,7,3,0,75,0,0,17,75,0,0,97,61,0,0,0,5,6,96,2,16,0,0,0,0,4,100,3,79],[0,0,0,0,6,101,0,25,0,0,0,3,3,48,2,16,0,0,0,0,7,6,4,51,0,0,0,0,7,55,1,207],[0,0,0,0,7,55,2,47,0,0,0,0,4,4,4,59,0,0,1,0,3,48,0,137,0,0,0,0,4,52,2,47],[0,0,0,0,3,52,1,207,0,0,0,0,3,115,1,159,0,0,0,0,0,54,4,53,0,0,0,0,1,21,0,25],[0,0,0,0,0,1,4,53,0,0,0,64,1,0,4,61,0,0,0,0,3,2,4,51,0,0,0,65,3,48,0,140],[0,0,17,94,0,0,193,61,0,0,0,65,3,32,0,57,0,0,0,0,3,3,4,51,0,0,0,255,3,48,1,143],[0,0,0,29,4,48,0,138,0,0,0,3,6,0,0,138,0,0,0,0,4,100,0,75,0,0,17,100,0,0,33,61],[0,0,0,68,2,16,0,57,0,0,5,85,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,36,2,16,0,57],[0,0,0,22,3,0,0,57,0,0,4,110,0,0,1,61,0,0,0,68,2,16,0,57,0,0,5,79,3,0,0,65],[0,0,0,0,0,50,4,53,0,0,0,36,2,16,0,57,0,0,0,29,3,0,0,57,0,0,4,110,0,0,1,61],[0,0,0,0,4,5,4,51,0,0,0,64,2,32,0,57,0,0,0,0,2,2,4,51,0,0,5,80,5,32,0,156],[0,0,17,111,0,0,65,61,0,0,0,68,2,16,0,57,0,0,5,84,3,0,0,65,0,0,0,0,0,50,4,53],[0,0,0,36,2,16,0,57,0,0,0,9,3,0,0,57,0,0,4,110,0,0,1,61,0,0,0,96,5,16,0,57],[0,0,0,0,0,37,4,53,0,0,0,64,2,16,0,57,0,0,0,0,0,66,4,53,0,0,0,32,2,16,0,57],[0,0,0,0,0,50,4,53,0,0,0,8,2,0,0,41,0,0,0,0,0,33,4,53,0,0,0,0,0,0,4,53],[0,0,5,2,2,0,0,65,0,0,0,0,3,0,4,20,0,0,5,2,4,48,0,156,0,0,0,0,3,2,128,25],[0,0,5,2,4,16,0,156,0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16,0,0,0,192,2,48,2,16],[0,0,0,0,1,18,1,159,0,0,5,81,1,16,1,199,0,0,0,1,2,0,0,57,20,1,19,242,0,0,4,15],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,5,2,3,48,1,151,0,0,0,32,4,48,0,140],[0,0,0,0,4,3,0,25,0,0,0,32,4,0,128,57,0,0,0,31,5,64,1,143,0,0,0,5,4,64,2,114],[0,0,17,149,0,0,97,61,0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16,0,0,0,0,8,113,3,79],[0,0,0,0,8,8,4,59,0,0,0,0,0,135,4,53,0,0,0,1,6,96,0,57,0,0,0,0,7,70,0,75],[0,0,17,142,0,0,65,61,0,0,0,0,6,5,0,75,0,0,17,163,0,0,97,61,0,0,0,3,5,80,2,16],[0,0,0,5,4,64,2,16,0,0,0,0,6,4,4,51,0,0,0,0,6,86,1,207,0,0,0,0,6,86,2,47],[0,0,0,0,7,65,3,79,0,0,0,0,7,7,4,59,0,0,1,0,5,80,0,137,0,0,0,0,7,87,2,47],[0,0,0,0,5,87,1,207,0,0,0,0,5,101,1,159,0,0,0,0,0,84,4,53,0,1,0,0,0,3,0,31],[0,3,0,0,0,1,3,85,0,0,0,64,4,0,4,61,0,0,0,1,2,32,1,144,0,0,17,186,0,0,97,61],[0,0,0,0,1,0,4,51,0,0,5,12,1,16,1,151,0,0,0,7,2,16,0,108,0,0,0,0,2,0,0,25],[0,0,0,1,2,0,192,57,0,0,0,0,1,1,0,75,0,0,0,0,1,0,0,25,0,0,0,1,1,0,96,57],[0,0,0,0,1,18,1,160,0,0,5,82,1,0,0,65,0,0,0,0,1,0,192,25,0,0,0,0,0,20,4,53],[0,0,5,2,1,0,0,65,0,0,5,2,2,64,0,156,0,0,0,0,4,1,128,25,0,0,0,64,1,64,2,16],[0,0,5,83,1,16,1,199,0,0,20,2,0,1,4,46,0,0,0,31,2,48,1,143,0,0,0,5,5,48,2,114],[0,0,17,198,0,0,97,61,0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16,0,0,0,0,8,116,0,25],[0,0,0,0,7,113,3,79,0,0,0,0,7,7,4,59,0,0,0,0,0,120,4,53,0,0,0,1,6,96,0,57],[0,0,0,0,7,86,0,75,0,0,17,190,0,0,65,61,0,0,0,0,6,2,0,75,0,0,17,213,0,0,97,61],[0,0,0,5,5,80,2,16,0,0,0,0,1,81,3,79,0,0,0,0,5,84,0,25,0,0,0,3,2,32,2,16],[0,0,0,0,6,5,4,51,0,0,0,0,6,38,1,207,0,0,0,0,6,38,2,47,0,0,0,0,1,1,4,59],[0,0,1,0,2,32,0,137,0,0,0,0,1,33,2,47,0,0,0,0,1,33,1,207,0,0,0,0,1,97,1,159],[0,0,0,0,0,21,4,53,0,0,5,2,1,0,0,65,0,0,5,2,2,64,0,156,0,0,0,0,4,1,128,25],[0,0,0,64,1,64,2,16,0,0,6,74,0,0,1,61,0,0,0,31,4,48,1,143,0,0,0,5,2,48,2,114],[0,0,17,229,0,0,97,61,0,0,0,0,5,0,0,25,0,0,0,5,6,80,2,16,0,0,0,0,7,97,3,79],[0,0,0,0,7,7,4,59,0,0,0,0,0,118,4,53,0,0,0,1,5,80,0,57,0,0,0,0,6,37,0,75],[0,0,17,222,0,0,65,61,0,0,0,0,5,4,0,75,0,0,17,243,0,0,97,61,0,0,0,3,4,64,2,16],[0,0,0,5,2,32,2,16,0,0,0,0,5,2,4,51,0,0,0,0,5,69,1,207,0,0,0,0,5,69,2,47],[0,0,0,0,1,33,3,79,0,0,0,0,1,1,4,59,0,0,1,0,4,64,0,137,0,0,0,0,1,65,2,47],[0,0,0,0,1,65,1,207,0,0,0,0,1,81,1,159,0,0,0,0,0,18,4,53,0,0,0,96,1,48,2,16],[0,0,20,3,0,1,4,48,0,0,0,56,8,64,0,140,0,0,18,69,0,0,65,61,0,0,0,32,9,64,2,112],[0,0,5,2,8,64,0,156,0,0,0,0,9,4,160,25,0,0,5,2,8,64,0,156,0,0,0,0,10,0,0,25],[0,0,0,4,10,0,32,57,0,0,0,2,8,160,1,191,0,0,255,255,11,144,0,140,0,0,0,0,8,10,160,25],[0,0,0,16,10,144,2,112,0,0,0,0,10,9,160,25,0,0,0,255,9,160,0,140,0,0,0,0,9,0,0,25],[0,0,0,1,9,0,32,57,0,0,5,58,10,112,0,156,0,0,18,165,0,0,33,61,0,0,0,0,8,152,1,159],[0,0,0,64,9,112,0,57,0,0,0,64,0,144,4,63,0,0,0,0,10,33,3,79,0,0,0,2,9,128,0,58],[0,0,0,0,9,151,4,54,0,0,0,0,10,160,3,80,0,0,0,0,10,10,4,59,0,0,0,0,0,169,4,53],[0,0,12,17,0,0,97,61,0,0,5,59,10,160,1,151,0,0,0,248,11,128,2,16,0,0,0,0,10,171,1,159],[0,0,5,63,10,160,1,199,0,0,0,0,0,169,4,53,0,0,0,3,8,128,2,16,0,0,0,248,8,128,1,95],[0,0,0,0,8,132,1,207,0,0,0,33,9,112,0,57,0,0,0,0,0,137,4,53,0,0,0,0,8,7,0,25],[0,0,18,86,0,0,1,61,0,0,0,56,8,64,0,140,0,0,18,145,0,0,65,61,0,0,0,32,9,64,2,112],[0,0,5,2,8,64,0,156,0,0,0,0,9,4,160,25,0,0,5,2,8,64,0,156,0,0,0,0,10,0,0,25],[0,0,0,4,10,0,32,57,0,0,0,2,8,160,1,191,0,0,255,255,11,144,0,140,0,0,0,0,8,10,160,25],[0,0,0,16,10,144,2,112,0,0,0,0,10,9,160,25,0,0,0,255,9,160,0,140,0,0,0,0,9,0,0,25],[0,0,0,1,9,0,32,57,0,0,5,58,10,96,0,156,0,0,18,165,0,0,33,61,0,0,0,0,8,152,1,159],[0,0,0,64,9,96,0,57,0,0,0,64,0,144,4,63,0,0,0,0,10,33,3,79,0,0,0,2,9,128,0,58],[0,0,0,0,9,150,4,54,0,0,0,0,10,160,3,80,0,0,0,0,10,10,4,59,0,0,0,0,0,169,4,53],[0,0,12,17,0,0,97,61,0,0,5,59,10,160,1,151,0,0,0,248,11,128,2,16,0,0,0,0,10,171,1,159],[0,0,5,63,10,160,1,199,0,0,0,0,0,169,4,53,0,0,0,3,8,128,2,16,0,0,0,248,8,128,1,95],[0,0,0,0,8,132,1,207,0,0,0,33,9,96,0,57,0,0,0,0,0,137,4,53,0,0,0,0,8,6,0,25],[0,0,18,162,0,0,1,61,0,0,5,58,8,112,0,156,0,0,18,165,0,0,33,61,0,0,0,64,8,112,0,57],[0,0,0,64,0,128,4,63,0,0,0,0,9,33,3,79,0,0,0,1,8,0,0,58,0,0,0,0,8,135,4,54],[0,0,0,0,9,144,3,80,0,0,0,0,9,9,4,59,0,0,0,0,0,152,4,53,0,0,12,17,0,0,97,61],[0,0,0,248,10,64,2,16,0,0,5,59,9,144,1,151,0,0,0,0,9,169,1,159,0,0,5,11,9,144,1,103],[0,0,0,0,0,152,4,53,0,0,0,0,8,7,0,25,0,0,0,64,7,0,4,61,0,0,5,58,9,112,0,156],[0,0,18,165,0,0,33,61,0,0,0,64,9,112,0,57,0,0,0,64,0,144,4,63,0,0,0,0,2,33,3,79],[0,0,0,1,12,0,0,58,0,0,0,0,9,199,4,54,0,0,0,0,2,32,3,80,0,0,0,0,11,2,4,59],[0,0,0,0,0,185,4,53,0,0,12,17,0,0,97,61,0,0,5,59,2,176,1,151,0,0,5,64,10,32,1,199],[0,0,0,0,0,169,4,53,0,0,0,0,9,6,4,51,0,0,0,0,9,73,0,25,0,0,0,0,10,8,4,51],[0,0,0,0,9,169,0,25,0,0,0,0,10,7,4,51,0,0,0,0,9,169,0,25,0,0,0,64,10,0,4,61],[0,0,5,10,9,144,1,151,0,0,0,56,13,144,0,140,0,0,18,225,0,0,65,61,0,0,0,32,13,144,2,112],[0,0,5,2,12,144,0,156,0,0,0,0,13,9,160,25,0,0,5,2,12,144,0,156,0,0,0,0,14,0,0,25],[0,0,0,4,14,0,32,57,0,0,0,2,12,224,1,191,0,0,255,255,15,208,0,140,0,0,0,0,12,14,160,25],[0,0,0,16,14,208,2,112,0,0,0,0,14,13,160,25,0,0,0,255,13,224,0,140,0,0,0,0,13,0,0,25],[0,0,0,1,13,0,32,57,0,0,5,58,14,160,0,156,0,0,18,165,0,0,33,61,0,0,0,0,12,220,1,159],[0,0,0,64,13,160,0,57,0,0,0,64,0,208,4,63,0,0,0,32,13,160,0,57,0,0,0,0,0,189,4,53],[0,0,0,2,11,192,0,58,0,0,0,0,0,186,4,53,0,0,12,17,0,0,97,61,0,0,0,248,11,192,2,16],[0,0,0,0,2,43,1,159,0,0,5,65,2,32,1,199,0,0,0,0,0,45,4,53,0,0,0,3,2,192,2,16],[0,0,0,248,2,32,1,95,0,0,0,0,2,41,1,207,0,0,0,33,9,160,0,57,0,0,0,0,0,41,4,53],[0,0,18,238,0,0,1,61,0,0,5,58,8,96,0,156,0,0,18,165,0,0,33,61,0,0,0,64,8,96,0,57],[0,0,0,64,0,128,4,63,0,0,0,0,9,33,3,79,0,0,0,1,8,0,0,58,0,0,0,0,8,134,4,54],[0,0,0,0,9,144,3,80,0,0,0,0,9,9,4,59,0,0,0,0,0,152,4,53,0,0,12,17,0,0,97,61],[0,0,0,248,10,64,2,16,0,0,5,59,9,144,1,151,0,0,0,0,9,169,1,159,0,0,5,11,9,144,1,103],[0,0,0,0,0,152,4,53,0,0,0,0,8,6,0,25,0,0,0,64,6,0,4,61,0,0,5,58,9,96,0,156],[0,0,18,169,0,0,161,61,0,0,5,88,1,0,0,65,0,0,0,0,0,16,4,53,0,0,0,65,1,0,0,57],[0,0,0,65,0,0,1,61,0,0,0,64,9,96,0,57,0,0,0,64,0,144,4,63,0,0,0,0,2,33,3,79],[0,0,0,1,12,0,0,58,0,0,0,0,9,198,4,54,0,0,0,0,2,32,3,80,0,0,0,0,11,2,4,59],[0,0,0,0,0,185,4,53,0,0,12,17,0,0,97,61,0,0,5,59,2,176,1,151,0,0,5,64,10,32,1,199],[0,0,0,0,0,169,4,53,0,0,0,0,9,7,4,51,0,0,0,0,9,73,0,25,0,0,0,0,10,8,4,51],[0,0,0,0,9,169,0,25,0,0,0,0,10,6,4,51,0,0,0,0,9,169,0,25,0,0,0,64,10,0,4,61],[0,0,5,10,9,144,1,151,0,0,0,56,13,144,0,140,0,0,19,91,0,0,65,61,0,0,0,32,13,144,2,112],[0,0,5,2,12,144,0,156,0,0,0,0,13,9,160,25,0,0,5,2,12,144,0,156,0,0,0,0,14,0,0,25],[0,0,0,4,14,0,32,57,0,0,0,2,12,224,1,191,0,0,255,255,15,208,0,140,0,0,0,0,12,14,160,25],[0,0,0,16,14,208,2,112,0,0,0,0,14,13,160,25,0,0,0,255,13,224,0,140,0,0,0,0,13,0,0,25],[0,0,0,1,13,0,32,57,0,0,5,58,14,160,0,156,0,0,18,165,0,0,33,61,0,0,0,0,12,220,1,159],[0,0,0,64,13,160,0,57,0,0,0,64,0,208,4,63,0,0,0,32,13,160,0,57,0,0,0,0,0,189,4,53],[0,0,0,2,11,192,0,58,0,0,0,0,0,186,4,53,0,0,12,17,0,0,97,61,0,0,0,248,11,192,2,16],[0,0,0,0,2,43,1,159,0,0,5,65,2,32,1,199,0,0,0,0,0,45,4,53,0,0,0,3,2,192,2,16],[0,0,0,248,2,32,1,95,0,0,0,0,2,41,1,207,0,0,0,33,9,160,0,57,0,0,0,0,0,41,4,53],[0,0,19,104,0,0,1,61,0,0,5,58,13,160,0,156,0,0,18,165,0,0,33,61,0,0,0,64,13,160,0,57],[0,0,0,64,0,208,4,63,0,0,0,32,13,160,0,57,0,0,0,0,0,189,4,53,0,0,0,0,0,202,4,53],[0,0,0,0,11,12,0,75,0,0,12,17,0,0,97,61,0,0,0,248,9,144,2,16,0,0,0,0,2,41,1,159],[0,0,5,64,2,32,0,65,0,0,0,0,0,45,4,53,0,0,0,64,2,0,4,61,0,0,0,32,9,32,0,57],[0,0,5,66,11,0,0,65,0,0,0,0,0,185,4,53,0,0,0,33,12,32,0,57,0,0,0,0,11,10,4,51],[0,0,0,0,13,11,0,75,0,0,18,254,0,0,97,61,0,0,0,0,13,0,0,25,0,0,0,0,14,205,0,25],[0,0,0,32,13,208,0,57,0,0,0,0,15,173,0,25,0,0,0,0,15,15,4,51,0,0,0,0,0,254,4,53],[0,0,0,0,14,189,0,75,0,0,18,247,0,0,65,61,0,0,0,0,10,203,0,25,0,0,0,0,0,10,4,53],[0,0,0,0,10,43,0,25,0,0,0,33,12,160,0,57,0,0,0,0,11,6,4,51,0,0,0,0,13,11,0,75],[0,0,19,13,0,0,97,61,0,0,0,0,13,0,0,25,0,0,0,0,14,205,0,25,0,0,0,32,13,208,0,57],[0,0,0,0,15,109,0,25,0,0,0,0,15,15,4,51,0,0,0,0,0,254,4,53,0,0,0,0,14,189,0,75],[0,0,19,6,0,0,65,61,0,0,0,0,6,203,0,25,0,0,0,0,0,6,4,53,0,0,0,0,6,171,0,25],[0,0,0,33,11,96,0,57,0,0,0,0,10,8,4,51,0,0,0,0,12,10,0,75,0,0,19,28,0,0,97,61],[0,0,0,0,12,0,0,25,0,0,0,0,13,188,0,25,0,0,0,32,12,192,0,57,0,0,0,0,14,140,0,25],[0,0,0,0,14,14,4,51,0,0,0,0,0,237,4,53,0,0,0,0,13,172,0,75,0,0,19,21,0,0,65,61],[0,0,0,0,8,186,0,25,0,0,0,0,0,8,4,53,0,0,0,0,5,81,3,79,0,0,0,0,1,106,0,25],[0,0,0,31,6,64,1,143,0,0,0,33,8,16,0,57,0,0,0,5,10,64,2,114,0,0,19,45,0,0,97,61],[0,0,0,0,11,0,0,25,0,0,0,5,12,176,2,16,0,0,0,0,13,200,0,25,0,0,0,0,12,197,3,79],[0,0,0,0,12,12,4,59,0,0,0,0,0,205,4,53,0,0,0,1,11,176,0,57,0,0,0,0,12,171,0,75],[0,0,19,37,0,0,65,61,0,0,0,0,11,6,0,75,0,0,19,60,0,0,97,61,0,0,0,5,10,160,2,16],[0,0,0,0,5,165,3,79,0,0,0,0,8,168,0,25,0,0,0,3,6,96,2,16,0,0,0,0,10,8,4,51],[0,0,0,0,10,106,1,207,0,0,0,0,10,106,2,47,0,0,0,0,5,5,4,59,0,0,1,0,6,96,0,137],[0,0,0,0,5,101,2,47,0,0,0,0,5,101,1,207,0,0,0,0,5,165,1,159,0,0,0,0,0,88,4,53],[0,0,0,0,1,65,0,25,0,0,0,33,5,16,0,57,0,0,0,0,0,5,4,53,0,0,0,0,4,7,4,51],[0,0,0,0,6,4,0,75,0,0,19,74,0,0,97,61,0,0,0,0,6,0,0,25,0,0,0,0,8,86,0,25],[0,0,0,32,6,96,0,57,0,0,0,0,10,118,0,25,0,0,0,0,10,10,4,51,0,0,0,0,0,168,4,53],[0,0,0,0,8,70,0,75,0,0,19,67,0,0,65,61,0,0,0,0,5,84,0,25,0,0,0,0,0,5,4,53],[0,0,0,0,1,33,0,73,0,0,0,0,1,20,0,25,0,0,0,1,4,16,0,57,0,0,0,0,0,66,4,53],[0,0,0,64,1,16,0,57,0,0,0,0,3,49,1,111,0,0,0,0,1,35,0,25,0,0,0,0,3,49,0,75],[0,0,0,0,3,0,0,25,0,0,0,1,3,0,64,57,0,0,5,10,4,16,0,156,0,0,18,165,0,0,33,61],[0,0,0,1,3,48,1,144,0,0,19,212,0,0,97,61,0,0,18,165,0,0,1,61,0,0,5,58,13,160,0,156],[0,0,18,165,0,0,33,61,0,0,0,64,13,160,0,57,0,0,0,64,0,208,4,63,0,0,0,32,13,160,0,57],[0,0,0,0,0,189,4,53,0,0,0,0,0,202,4,53,0,0,0,0,11,12,0,75,0,0,12,17,0,0,97,61],[0,0,0,248,9,144,2,16,0,0,0,0,2,41,1,159,0,0,5,64,2,32,0,65,0,0,0,0,0,45,4,53],[0,0,0,64,2,0,4,61,0,0,0,32,9,32,0,57,0,0,5,13,11,0,0,65,0,0,0,0,0,185,4,53],[0,0,0,33,12,32,0,57,0,0,0,0,11,10,4,51,0,0,0,0,13,11,0,75,0,0,19,120,0,0,97,61],[0,0,0,0,13,0,0,25,0,0,0,0,14,205,0,25,0,0,0,32,13,208,0,57,0,0,0,0,15,173,0,25],[0,0,0,0,15,15,4,51,0,0,0,0,0,254,4,53,0,0,0,0,14,189,0,75,0,0,19,113,0,0,65,61],[0,0,0,0,10,203,0,25,0,0,0,0,0,10,4,53,0,0,0,0,10,43,0,25,0,0,0,33,12,160,0,57],[0,0,0,0,11,7,4,51,0,0,0,0,13,11,0,75,0,0,19,135,0,0,97,61,0,0,0,0,13,0,0,25],[0,0,0,0,14,205,0,25,0,0,0,32,13,208,0,57,0,0,0,0,15,125,0,25,0,0,0,0,15,15,4,51],[0,0,0,0,0,254,4,53,0,0,0,0,14,189,0,75,0,0,19,128,0,0,65,61,0,0,0,0,7,203,0,25],[0,0,0,0,0,7,4,53,0,0,0,0,7,171,0,25,0,0,0,33,11,112,0,57,0,0,0,0,10,8,4,51],[0,0,0,0,12,10,0,75,0,0,19,150,0,0,97,61,0,0,0,0,12,0,0,25,0,0,0,0,13,188,0,25],[0,0,0,32,12,192,0,57,0,0,0,0,14,140,0,25,0,0,0,0,14,14,4,51,0,0,0,0,0,237,4,53],[0,0,0,0,13,172,0,75,0,0,19,143,0,0,65,61,0,0,0,0,8,186,0,25,0,0,0,0,0,8,4,53],[0,0,0,0,5,81,3,79,0,0,0,0,1,122,0,25,0,0,0,31,7,64,1,143,0,0,0,33,8,16,0,57],[0,0,0,5,10,64,2,114,0,0,19,167,0,0,97,61,0,0,0,0,11,0,0,25,0,0,0,5,12,176,2,16],[0,0,0,0,13,200,0,25,0,0,0,0,12,197,3,79,0,0,0,0,12,12,4,59,0,0,0,0,0,205,4,53],[0,0,0,1,11,176,0,57,0,0,0,0,12,171,0,75,0,0,19,159,0,0,65,61,0,0,0,0,11,7,0,75],[0,0,19,182,0,0,97,61,0,0,0,5,10,160,2,16,0,0,0,0,5,165,3,79,0,0,0,0,8,168,0,25],[0,0,0,3,7,112,2,16,0,0,0,0,10,8,4,51,0,0,0,0,10,122,1,207,0,0,0,0,10,122,2,47],[0,0,0,0,5,5,4,59,0,0,1,0,7,112,0,137,0,0,0,0,5,117,2,47,0,0,0,0,5,117,1,207],[0,0,0,0,5,165,1,159,0,0,0,0,0,88,4,53,0,0,0,0,1,65,0,25,0,0,0,33,5,16,0,57],[0,0,0,0,0,5,4,53,0,0,0,0,4,6,4,51,0,0,0,0,7,4,0,75,0,0,19,196,0,0,97,61],[0,0,0,0,7,0,0,25,0,0,0,0,8,87,0,25,0,0,0,32,7,112,0,57,0,0,0,0,10,103,0,25],[0,0,0,0,10,10,4,51,0,0,0,0,0,168,4,53,0,0,0,0,8,71,0,75,0,0,19,189,0,0,65,61],[0,0,0,0,5,84,0,25,0,0,0,0,0,5,4,53,0,0,0,0,1,33,0,73,0,0,0,0,1,20,0,25],[0,0,0,1,4,16,0,57,0,0,0,0,0,66,4,53,0,0,0,64,1,16,0,57,0,0,0,0,3,49,1,111],[0,0,0,0,1,35,0,25,0,0,0,0,3,49,0,75,0,0,0,0,3,0,0,25,0,0,0,1,3,0,64,57],[0,0,5,10,4,16,0,156,0,0,18,165,0,0,33,61,0,0,0,1,3,48,1,144,0,0,18,165,0,0,193,61],[0,0,0,64,0,16,4,63,0,0,5,2,1,0,0,65,0,0,5,2,3,144,0,156,0,0,0,0,9,1,128,25],[0,0,0,64,3,144,2,16,0,0,0,0,2,2,4,51,0,0,5,2,4,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,96,2,32,2,16,0,0,0,0,2,50,1,159,0,0,16,170,0,0,1,61,0,0,0,0,4,3,0,75],[0,0,19,233,0,0,97,61,0,0,0,0,4,0,0,25,0,0,0,0,5,36,0,25,0,0,0,0,6,20,0,25],[0,0,0,0,6,6,4,51,0,0,0,0,0,101,4,53,0,0,0,32,4,64,0,57,0,0,0,0,5,52,0,75],[0,0,19,226,0,0,65,61,0,0,0,0,1,35,0,25,0,0,0,0,0,1,4,53,0,0,0,0,0,1,4,45],[0,0,0,0,0,1,4,47,0,0,19,240,0,33,4,33,0,0,0,1,2,0,0,57,0,0,0,0,0,1,4,45],[0,0,0,0,2,0,0,25,0,0,0,0,0,1,4,45,0,0,19,245,0,33,4,35,0,0,0,1,2,0,0,57],[0,0,0,0,0,1,4,45,0,0,0,0,2,0,0,25,0,0,0,0,0,1,4,45,0,0,19,250,0,33,4,33],[0,0,0,1,2,0,0,57,0,0,0,0,0,1,4,45,0,0,0,0,2,0,0,25,0,0,0,0,0,1,4,45],[0,0,19,255,0,33,4,35,0,0,0,1,2,0,0,57,0,0,0,0,0,1,4,45,0,0,0,0,2,0,0,25],[0,0,0,0,0,1,4,45,0,0,20,1,0,0,4,50,0,0,20,2,0,1,4,46,0,0,20,3,0,1,4,48],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],[0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,1,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,223,156,21,136],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,223,156,21,137],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,226,243,24,227],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,238,184,203,9],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,43,204,231],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,162,140,26,238],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255],[128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255],[2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[114,97,116,111,114,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[70,97,105,108,101,100,32,116,111,32,112,97,121,32,116,104,101,32,102,101,101,32,116,111,32,116,104,101,32,111,112,101],[8,195,121,160,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,132,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[236,249,91,138,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[156,77,83,91,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[60,218,51,81,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[93,56,39,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[79,118,101,114,102,108,111,119,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,128,0,0,0,0,0,0,0,0],[148,148,49,220,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[140,90,52,69,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[85,110,115,117,112,112,111,114,116,101,100,32,112,97,121,109,97,115,116,101,114,32,102,108,111,119,0,0,0,0,0,0],[221,98,237,62,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,68,0,0,0,128,0,0,0,0,0,0,0,0],[9,94,167,179,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[83,97,102,101,69,82,67,50,48,58,32,108,111,119,45,108,101,118,101,108,32,99,97,108,108,32,102,97,105,108,101,100],[24,6,170,24,150,187,242,101,104,232,132,167,55,75,65,224,2,80,9,98,202,186,106,21,2,58,141,144,232,80,139,131],[2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,36,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,68,0,0,0,0,0,0,0,0,0,0,0,0],[83,97,102,101,69,82,67,50,48,58,32,97,112,112,114,111,118,101,32,102,114,111,109,32,110,111,110,45,122,101,114,111],[32,116,111,32,110,111,110,45,122,101,114,111,32,97,108,108,111,119,97,110,99,101,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,127],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,63],[111,116,32,115,117,99,99,101,101,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[83,97,102,101,69,82,67,50,48,58,32,69,82,67,50,48,32,111,112,101,114,97,116,105,111,110,32,100,105,100,32,110],[65,100,100,114,101,115,115,58,32,99,97,108,108,32,116,111,32,110,111,110,45,99,111,110,116,114,97,99,116,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,0,0,0,0,0,0,0,0],[84,104,101,32,97,112,112,114,111,118,97,108,66,97,115,101,100,32,112,97,121,109,97,115,116,101,114,32,105,110,112,117],[116,32,109,117,115,116,32,98,101,32,97,116,32,108,101,97,115,116,32,54,56,32,98,121,116,101,115,32,108,111,110,103],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,132,0,0,0,128,0,0,0,0,0,0,0,0],[84,104,101,32,115,116,97,110,100,97,114,100,32,112,97,121,109,97,115,116,101,114,32,105,110,112,117,116,32,109,117,115],[116,32,98,101,32,97,116,32,108,101,97,115,116,32,52,32,98,121,116,101,115,32,108,111,110,103,0,0,0,0,0,0],[225,35,156,216,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,36,0,0,0,160,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,255,255,255,224],[69,110,99,111,100,105,110,103,32,117,110,115,117,112,112,111,114,116,101,100,32,116,120,0,0,0,0,0,0,0,0,0],[154,138,5,146,172,137,197,173,59,198,223,130,36,193,123,72,89,118,245,151,223,16,78,226,13,13,244,21,36,31,103,11],[2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,191],[0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255],[129,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[148,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[184,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0],[7,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255],[107,101,99,99,97,107,50,53,54,32,114,101,116,117,114,110,101,100,32,105,110,118,97,108,105,100,32,100,97,116,97,0],[132,142,27,250,26,196,227,87,107,114,139,218,103,33,178,21,199,10,119,153,165,180,134,98,130,167,27,171,149,75,170,200],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,254,31],[194,248,120,113,118,184,172,107,247,33,91,74,220,193,224,105,191,74,184,45,154,177,223,5,165,122,145,212,37,147,91,110],[173,124,91,239,2,120,22,168,0,218,23,54,68,79,181,138,128,126,244,201,96,59,120,72,103,63,126,58,104,235,20,165],[25,180,83,206,69,170,170,243,163,0,245,169,236,149,134,155,79,40,171,16,67,11,87,46,226,24,195,166,165,224,125,111],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,95],[25,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[128,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[156,199,247,8,175,198,89,68,130,155,212,135,185,11,114,83,107,25,81,134,79,191,193,78,18,95,201,114,166,80,127,57],[83,105,103,110,97,116,117,114,101,32,108,101,110,103,116,104,32,105,115,32,105,110,99,111,114,114,101,99,116,0,0,0],[127,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,93,87,110,115,87,164,80,29,223,233,47,70,104,27,32,161],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0],[32,43,204,231,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,0],[73,110,118,97,108,105,100,32,115,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[118,32,105,115,32,110,101,105,116,104,101,114,32,50,55,32,110,111,114,32,50,56,0,0,0,0,0,0,0,0,0,0],[117,101,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[78,111,116,32,101,110,111,117,103,104,32,98,97,108,97,110,99,101,32,102,111,114,32,102,101,101,32,43,32,118,97,108],[78,72,123,113,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,36,0,0,0,0,0,0,0,0,0,0,0,0],[205,226,41,223,135,157,189,123,19,91,210,22,87,91,13,13,139,233,20,214,167,167,41,134,204,148,77,212,186,226,50,198]],"predeployed_contracts":{"0x0000000000000000000000000000000000000001":[[0,0,0,1,2,32,1,144,0,0,0,32,0,0,193,61,0,0,0,96,2,16,3,112,0,0,0,0,2,2,4,59],[0,0,0,12,5,32,0,65,0,0,0,64,3,16,3,112,0,0,0,0,3,3,4,59,0,0,0,12,6,48,0,65],[0,0,0,32,4,16,3,112,0,0,0,0,4,4,4,59,0,0,0,29,7,64,0,138,0,0,0,2,8,0,0,138],[0,0,0,0,7,135,0,75,0,0,0,30,0,0,65,61,0,0,0,13,6,96,0,156,0,0,0,30,0,0,65,61],[0,0,0,12,5,80,0,156,0,0,0,30,0,0,161,61,0,0,0,0,1,1,4,59,0,0,0,0,0,16,4,53],[0,0,0,27,1,64,0,138,0,0,0,32,0,16,4,63,0,0,0,64,0,48,4,63,0,0,0,96,0,32,4,63],[0,0,4,88,1,0,0,57,0,0,0,14,2,0,0,65,0,0,0,0,1,18,4,32,0,0,0,0,2,0,4,51],[0,0,0,0,1,18,1,112,0,0,0,37,0,0,193,61,0,0,0,0,1,0,0,25,0,0,0,40,0,1,4,46],[0,0,0,32,1,0,0,57,0,0,1,0,0,16,4,67,0,0,1,32,0,0,4,67,0,0,0,11,1,0,0,65],[0,0,0,40,0,1,4,46,0,0,0,15,1,0,0,65,0,0,0,40,0,1,4,46,0,0,0,39,0,0,4,50],[0,0,0,40,0,1,4,46,0,0,0,41,0,1,4,48,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,1,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,69,81,35,25,80,183,95,196,64,45,161,115,47,201,190,191],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,69,81,35,25,80,183,95,196,64,45,161,115,47,201,190,192],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,0,0,0,32,0,0,0,0,0,0,0,0],[205,76,193,251,171,13,182,237,9,254,102,184,97,34,209,59,23,93,45,253,17,17,77,105,136,160,250,31,151,204,138,222]],"0x0000000000000000000000000000000000000006":[[0,4,0,0,0,0,0,2,0,0,0,1,2,32,1,144,0,0,0,17,0,0,193,61,0,0,0,96,2,16,3,112],[0,0,0,0,2,2,4,59,0,0,0,64,3,16,3,112,0,0,0,0,3,3,4,59,0,0,0,0,5,50,1,159],[0,0,0,0,20,1,4,60,0,0,0,0,1,1,4,59,0,0,0,0,6,65,1,159,0,0,0,0,7,101,1,160],[0,0,0,22,0,0,193,61,0,0,0,0,0,0,4,53,0,0,0,32,0,0,4,63,0,0,0,141,1,0,0,65],[0,0,2,8,0,1,4,46,0,0,0,32,1,0,0,57,0,0,1,0,0,16,4,67,0,0,1,32,0,0,4,67],[0,0,0,131,1,0,0,65,0,0,2,8,0,1,4,46,0,0,0,0,7,5,0,75,0,0,0,87,0,0,97,61],[0,0,0,0,7,6,0,75,0,0,0,87,0,0,193,61,0,0,0,132,1,48,0,156,0,0,0,30,0,0,33,61],[0,0,0,132,1,32,0,156,0,0,0,32,0,0,161,61,0,0,0,0,1,0,4,20,0,0,0,0,1,16,4,32],[0,0,0,0,1,3,0,75,0,0,0,133,65,48,0,209,0,0,0,1,4,64,192,57,0,0,0,134,81,48,0,209],[0,0,0,135,81,16,0,209,0,0,0,0,1,84,0,25,0,0,0,136,4,16,0,65,0,0,0,132,5,16,0,156],[0,0,0,0,4,1,160,25,0,0,0,0,81,68,0,170,0,0,0,1,5,80,192,57,0,0,0,137,97,16,0,209],[0,0,0,135,97,16,0,209,0,0,0,0,1,101,0,25,0,0,0,136,5,16,0,65,0,0,0,132,6,16,0,156],[0,0,0,0,5,1,160,25,0,0,0,0,65,69,0,170,0,0,0,1,4,64,192,57,0,0,0,0,5,2,0,75],[0,0,0,133,101,32,0,209,0,0,0,1,6,96,192,57,0,0,0,134,117,32,0,209,0,0,0,135,117,80,0,209],[0,0,0,0,5,118,0,25,0,0,0,136,6,80,0,65,0,0,0,132,7,80,0,156,0,0,0,0,6,5,160,25],[0,0,0,0,101,102,0,170,0,0,0,1,6,96,192,57,0,0,0,137,113,16,0,209,0,0,0,137,117,80,0,209],[0,0,0,135,113,16,0,209,0,0,0,0,1,116,0,25,0,0,0,135,84,80,0,209,0,0,0,0,4,86,0,25],[0,0,0,136,5,16,0,65,0,0,0,132,6,16,0,156,0,0,0,0,5,1,160,25,0,0,0,136,1,64,0,65],[0,0,0,132,6,64,0,156,0,0,0,0,1,4,160,25,0,0,0,138,4,0,0,65,0,0,0,139,6,0,0,65],[0,0,0,140,7,80,0,156,0,0,0,0,6,4,160,25,0,0,0,0,4,86,0,25,0,0,0,0,1,65,0,75],[0,0,0,83,0,0,97,61,0,0,0,0,1,0,4,20,0,0,0,0,1,16,4,32,0,0,0,0,0,48,4,53],[0,0,0,32,0,32,4,63,0,0,0,141,1,0,0,65,0,0,2,8,0,1,4,46,0,0,0,132,7,16,0,156],[0,0,0,0,7,0,0,25,0,0,0,1,7,0,32,57,0,0,0,132,8,64,0,156,0,0,0,1,7,112,33,191],[0,0,0,0,6,6,0,75,0,0,0,153,0,0,97,61,0,0,0,0,5,5,0,75,0,0,0,153,0,0,193,61],[0,0,0,1,2,112,1,144,0,0,0,100,0,0,97,61,0,0,0,0,2,0,4,20,0,0,0,0,2,32,4,32],[0,0,0,0,2,4,0,75,0,0,0,133,50,64,0,209,0,0,0,1,3,48,192,57,0,0,0,134,82,64,0,209],[0,0,0,135,82,32,0,209,0,0,0,0,2,83,0,25,0,0,0,136,3,32,0,65,0,0,0,132,5,32,0,156],[0,0,0,0,3,2,160,25,0,0,0,0,82,51,0,170,0,0,0,1,5,80,192,57,0,0,0,137,98,32,0,209],[0,0,0,135,98,32,0,209,0,0,0,0,2,101,0,25,0,0,0,136,5,32,0,65,0,0,0,132,6,32,0,156],[0,0,0,0,5,2,160,25,0,0,0,0,50,53,0,170,0,0,0,1,3,48,192,57,0,0,0,0,5,1,0,75],[0,0,0,133,101,16,0,209,0,0,0,1,6,96,192,57,0,0,0,134,117,16,0,209,0,0,0,135,117,80,0,209],[0,0,0,0,5,118,0,25,0,0,0,136,6,80,0,65,0,0,0,132,7,80,0,156,0,0,0,0,6,5,160,25],[0,0,0,0,101,102,0,170,0,0,0,1,6,96,192,57,0,0,0,137,114,32,0,209,0,0,0,137,117,80,0,209],[0,0,0,135,114,32,0,209,0,0,0,0,2,115,0,25,0,0,0,135,83,80,0,209,0,0,0,0,3,86,0,25],[0,0,0,136,5,32,0,65,0,0,0,132,6,32,0,156,0,0,0,0,5,2,160,25,0,0,0,136,2,48,0,65],[0,0,0,132,6,48,0,156,0,0,0,0,2,3,160,25,0,0,0,138,3,0,0,65,0,0,0,139,6,0,0,65],[0,0,0,140,7,80,0,156,0,0,0,0,6,3,160,25,0,0,0,0,3,86,0,25,0,0,0,0,2,50,0,75],[0,0,0,151,0,0,97,61,0,0,0,0,2,0,4,20,0,0,0,0,2,32,4,32,0,0,0,0,0,64,4,53],[0,0,1,193,0,0,1,61,0,0,0,1,5,112,1,144,0,0,0,157,0,0,97,61,0,0,0,0,5,0,4,20],[0,0,0,0,5,80,4,32,0,0,0,132,5,48,0,156,0,0,0,161,0,0,33,61,0,0,0,135,5,32,0,156],[0,0,0,163,0,0,65,61,0,0,0,0,5,0,4,20,0,0,0,0,5,80,4,32,0,0,0,135,5,0,0,65],[0,0,0,0,6,21,0,73,0,0,0,135,103,96,1,42,0,0,0,0,7,52,0,75,0,0,0,241,0,0,193,61],[0,0,0,0,6,38,0,75,0,0,0,241,0,0,193,61,0,0,0,0,3,4,0,75,0,0,0,133,83,64,0,209],[0,0,0,1,5,80,192,57,0,0,0,134,67,64,0,209,0,0,0,135,67,48,0,209,0,0,0,0,3,69,0,25],[0,0,0,136,4,48,0,65,0,0,0,132,5,48,0,156,0,0,0,0,4,3,160,25,0,0,0,0,83,68,0,170],[0,0,0,1,5,80,192,57,0,0,0,137,99,48,0,209,0,0,0,135,99,48,0,209,0,0,0,0,3,101,0,25],[0,0,0,136,5,48,0,65,0,0,0,132,6,48,0,156,0,0,0,0,5,3,160,25,0,0,0,0,52,69,0,170],[0,0,0,1,3,48,192,57,0,0,0,0,5,2,0,75,0,0,0,133,101,32,0,209,0,0,0,1,6,96,192,57],[0,0,0,134,82,32,0,209,0,0,0,135,82,32,0,209,0,0,0,0,2,86,0,25,0,0,0,136,5,32,0,65],[0,0,0,132,6,32,0,156,0,0,0,0,5,2,160,25,0,0,0,0,82,85,0,170,0,0,0,1,5,80,192,57],[0,0,0,0,6,1,0,75,0,0,0,133,118,16,0,209,0,0,0,1,7,112,192,57,0,0,0,134,97,16,0,209],[0,0,0,135,97,16,0,209,0,0,0,0,1,103,0,25,0,0,0,136,6,16,0,65,0,0,0,132,7,16,0,156],[0,0,0,0,6,1,160,25,0,0,0,0,97,102,0,170,0,0,0,1,6,96,192,57,0,0,0,137,116,64,0,209],[0,0,0,137,114,32,0,209,0,0,0,135,114,32,0,209,0,0,0,0,2,117,0,25,0,0,0,137,21,16,0,209],[0,0,0,135,65,64,0,209,0,0,0,0,1,67,0,25,0,0,0,136,3,16,0,65,0,0,0,132,4,16,0,156],[0,0,0,0,3,1,160,25,0,0,0,136,1,32,0,65,0,0,0,132,4,32,0,156,0,0,0,0,1,2,160,25],[0,0,0,135,66,80,0,209,0,0,0,0,2,70,0,25,0,0,0,136,4,32,0,65,0,0,0,132,5,32,0,156],[0,0,0,0,4,2,160,25,0,0,0,138,2,0,0,65,0,0,0,139,5,0,0,65,0,0,0,140,6,48,0,156],[0,0,0,0,5,2,160,25,0,0,0,0,2,53,0,25,0,0,0,0,3,36,0,75,0,0,0,238,0,0,193,61],[0,0,0,0,1,33,0,75,0,0,0,13,0,0,97,61,0,0,0,0,1,0,4,20,0,0,0,0,1,16,4,32],[0,0,0,13,0,0,1,61,0,0,0,0,5,37,0,73,0,0,0,135,86,80,1,42,0,0,0,0,6,52,0,75],[0,0,0,251,0,0,193,61,0,0,0,0,5,81,0,75,0,0,0,251,0,0,97,61,0,0,0,0,5,33,0,75],[0,0,0,251,0,0,97,61,0,0,0,0,5,0,4,20,0,0,0,0,5,80,4,32,0,0,0,0,5,4,0,75],[0,0,0,133,101,64,0,209,0,0,0,1,6,96,192,57,0,0,0,134,117,64,0,209,0,0,0,135,117,80,0,209],[0,0,0,0,5,118,0,25,0,0,0,136,12,80,0,65,0,0,0,132,6,80,0,156,0,0,0,0,12,5,160,25],[0,0,0,0,101,204,0,170,0,0,0,1,6,96,192,57,0,0,0,137,117,80,0,209,0,0,0,135,117,80,0,209],[0,0,0,0,5,118,0,25,0,0,0,136,6,80,0,65,0,0,0,132,7,80,0,156,0,0,0,0,6,5,160,25],[0,0,0,0,101,198,0,170,0,0,0,1,6,96,192,57,0,0,0,0,7,1,0,75,0,0,0,133,135,16,0,209],[0,0,0,1,8,128,192,57,0,0,0,134,151,16,0,209,0,0,0,135,151,112,0,209,0,0,0,0,7,152,0,25],[0,0,0,136,13,112,0,65,0,0,0,132,8,112,0,156,0,0,0,0,13,7,160,25,0,0,0,0,135,221,0,170],[0,0,0,1,8,128,192,57,0,0,0,137,149,80,0,209,0,0,0,137,151,112,0,209,0,0,0,135,149,80,0,209],[0,0,0,0,5,150,0,25,0,0,0,135,118,112,0,209,0,0,0,0,6,120,0,25,0,0,0,136,8,80,0,65],[0,0,0,132,7,80,0,156,0,0,0,0,8,5,160,25,0,0,0,136,5,96,0,65,0,0,0,132,7,96,0,156],[0,0,0,0,5,6,160,25,0,0,0,138,7,0,0,65,0,0,0,139,6,0,0,65,0,0,0,140,9,128,0,156],[0,0,0,0,9,7,0,25,0,0,0,0,9,6,32,25,0,0,0,0,8,137,0,25,0,0,0,0,4,52,0,75],[0,4,0,0,0,12,0,29,0,0,1,96,0,0,193,61,0,0,0,0,1,33,0,75,0,0,1,96,0,0,193,61],[0,3,0,0,0,13,0,29,0,0,0,0,1,133,0,75,0,0,1,53,0,0,97,61,0,0,0,0,1,0,4,20],[0,0,0,0,1,16,4,32,0,0,0,0,1,12,0,25,0,0,0,0,2,12,0,25,2,7,1,204,0,0,4,15],[0,0,0,135,33,16,1,42,0,0,0,1,1,32,2,16,0,0,0,135,49,16,1,42,0,0,0,0,1,35,0,25],[0,0,0,135,18,16,1,42,0,0,0,3,2,0,0,41,0,0,0,135,50,32,1,42,0,0,0,1,2,48,2,16],[0,0,0,135,35,32,1,42,2,7,1,213,0,0,4,15,0,2,0,0,0,1,0,29,0,0,0,0,2,1,0,25],[2,7,1,204,0,0,4,15,0,0,0,4,2,0,0,41,0,0,0,135,50,32,1,42,0,0,0,1,2,48,2,16],[0,0,0,135,66,32,1,42,0,0,0,135,5,0,0,65,0,0,0,0,2,69,0,73,0,0,0,135,66,32,1,42],[0,0,0,135,33,16,1,42,0,0,0,0,1,66,0,25,0,0,0,135,33,16,1,42,0,4,0,0,0,2,0,29],[0,0,0,0,1,37,0,73,0,0,0,135,33,16,1,42,0,0,0,0,1,50,0,25,0,0,0,135,33,16,1,42],[0,0,0,2,1,0,0,41,2,7,1,204,0,0,4,15,0,2,0,0,0,1,0,29,0,0,0,4,1,0,0,41],[2,7,1,196,0,0,4,15,0,0,0,135,3,0,0,65,0,0,0,3,2,48,0,106,0,0,0,135,50,32,1,42],[0,0,0,2,2,0,0,41,0,0,0,135,66,32,1,42,0,0,0,0,2,52,0,25,0,0,1,187,0,0,1,61],[0,0,0,0,1,3,0,75,0,0,0,133,65,48,0,209,0,0,0,1,4,64,192,57,0,0,0,134,49,48,0,209],[0,0,0,135,49,16,0,209,0,0,0,0,1,52,0,25,0,0,0,136,3,16,0,65,0,0,0,132,4,16,0,156],[0,0,0,0,3,1,160,25,0,0,0,0,65,51,0,170,0,0,0,1,4,64,192,57,0,0,0,137,145,16,0,209],[0,0,0,135,145,16,0,209,0,0,0,0,1,148,0,25,0,0,0,136,4,16,0,65,0,0,0,132,9,16,0,156],[0,0,0,0,4,1,160,25,0,0,0,0,148,52,0,170,0,0,0,1,9,144,192,57,0,0,0,0,1,2,0,75],[0,0,0,133,161,32,0,209,0,0,0,1,10,160,192,57,0,0,0,134,33,32,0,209,0,0,0,135,33,16,0,209],[0,0,0,0,2,42,0,25,0,0,0,136,1,32,0,65,0,0,0,132,10,32,0,156,0,0,0,0,1,2,160,25],[0,0,0,0,162,17,0,170,0,0,0,1,10,160,192,57,0,0,0,137,180,64,0,209,0,0,0,137,178,32,0,209],[0,0,0,135,180,64,0,209,0,0,0,0,4,185,0,25,0,0,0,135,146,32,0,209,0,0,0,0,9,154,0,25],[0,0,0,136,2,64,0,65,0,0,0,132,10,64,0,156,0,0,0,0,2,4,160,25,0,0,0,136,4,144,0,65],[0,0,0,132,10,144,0,156,0,0,0,0,4,9,160,25,0,0,0,140,9,32,0,156,0,0,0,0,6,7,160,25],[0,0,0,0,5,133,0,75,0,0,1,145,0,0,193,61,0,0,0,0,2,38,0,25,0,0,0,0,2,36,0,75],[0,0,1,147,0,0,97,61,0,0,0,0,2,0,4,20,0,0,0,0,2,32,4,32,0,0,0,135,5,0,0,65],[0,0,0,0,2,213,0,73,0,0,0,135,66,32,1,42,0,3,0,0,0,4,0,29,0,0,0,135,33,16,1,42],[0,0,0,0,1,66,0,25,0,0,0,135,18,16,1,42,0,0,0,0,2,197,0,73,0,0,0,135,66,32,1,42],[0,0,0,135,50,48,1,42,0,1,0,0,0,3,0,29,0,0,0,0,2,67,0,25,0,0,0,135,35,32,1,42],[2,7,1,213,0,0,4,15,0,2,0,0,0,1,0,29,0,0,0,0,2,1,0,25,2,7,1,204,0,0,4,15],[0,0,0,4,2,0,0,41,0,0,0,135,50,32,1,42,0,0,0,1,2,48,0,41,0,0,0,135,66,32,1,42],[0,0,0,135,5,0,0,65,0,0,0,0,2,69,0,73,0,0,0,135,66,32,1,42,0,0,0,135,33,16,1,42],[0,0,0,0,1,66,0,25,0,0,0,135,33,16,1,42,0,4,0,0,0,2,0,29,0,0,0,0,1,37,0,73],[0,0,0,135,33,16,1,42,0,0,0,0,1,50,0,25,0,0,0,135,33,16,1,42,0,0,0,2,1,0,0,41],[2,7,1,204,0,0,4,15,0,2,0,0,0,1,0,29,0,0,0,4,1,0,0,41,2,7,1,196,0,0,4,15],[0,0,0,2,2,0,0,41,0,0,0,135,50,32,1,42,0,0,0,3,2,48,0,41,0,0,0,135,35,32,1,42],[0,4,0,0,0,1,0,29,0,0,0,0,1,2,0,25,2,7,1,196,0,0,4,15,0,0,0,4,2,0,0,41],[0,0,0,0,0,32,4,53,0,0,0,32,0,16,4,63,0,0,0,141,1,0,0,65,0,0,2,8,0,1,4,46],[0,0,0,0,2,1,0,75,0,0,0,137,33,16,0,209,0,0,0,135,33,16,0,209,0,0,0,1,2,32,192,57],[0,0,0,136,1,32,0,65,0,0,0,132,3,32,0,156,0,0,0,0,1,2,160,25,0,0,0,0,0,1,4,45],[0,0,0,0,33,18,0,170,0,0,0,1,2,32,192,57,0,0,0,137,49,16,0,209,0,0,0,135,49,16,0,209],[0,0,0,0,2,50,0,25,0,0,0,136,1,32,0,65,0,0,0,132,3,32,0,156,0,0,0,0,1,2,160,25],[0,0,0,0,0,1,4,45,0,0,0,133,3,0,0,65,0,0,0,1,4,32,0,140,0,0,1,254,0,0,97,61],[0,0,0,135,4,0,0,65,0,0,0,133,3,0,0,65,0,0,0,0,5,0,0,25,0,0,0,1,6,32,1,144],[0,0,1,227,0,0,193,61,0,0,0,1,6,48,1,144,0,0,0,135,3,48,192,65,0,0,0,2,6,32,1,144],[0,0,0,1,2,32,2,112,0,0,0,1,3,48,2,112,0,0,1,221,0,0,97,61,0,0,0,1,6,64,1,144],[0,0,1,235,0,0,193,61,0,0,0,1,6,80,1,144,0,0,0,135,5,80,192,65,0,0,0,2,6,64,1,144],[0,0,0,1,4,64,2,112,0,0,0,1,5,80,2,112,0,0,1,229,0,0,97,61,0,0,0,0,6,36,0,75],[0,0,1,243,0,0,161,61,0,0,0,135,6,80,0,65,0,0,0,0,7,53,0,75,0,0,0,0,6,5,128,25],[0,0,0,0,5,54,0,73,0,0,0,0,4,36,0,73,0,0,1,248,0,0,1,61,0,0,0,135,6,48,0,65],[0,0,0,0,7,83,0,75,0,0,0,0,6,3,128,25,0,0,0,0,3,86,0,73,0,0,0,0,2,66,0,73],[0,0,0,1,6,32,0,140,0,0,1,252,0,0,97,61,0,0,0,1,6,64,0,140,0,0,1,219,0,0,193,61],[0,0,0,1,2,32,0,140,0,0,0,0,3,5,192,25,0,0,0,0,33,19,0,170,0,0,0,1,2,32,192,57],[0,0,0,137,49,16,0,209,0,0,0,135,49,16,0,209,0,0,0,0,2,50,0,25,0,0,0,136,1,32,0,65],[0,0,0,132,3,32,0,156,0,0,0,0,1,2,160,25,0,0,0,0,0,1,4,45,0,0,2,7,0,0,4,50],[0,0,2,8,0,1,4,46,0,0,2,9,0,1,4,48,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,1,0,0,0,0,0,0,0,0,0],[48,100,78,114,225,49,160,41,184,80,69,182,129,129,88,93,151,129,106,145,104,113,202,141,60,32,140,22,216,124,253,70],[6,216,159,113,202,184,53,31,71,171,30,255,10,65,127,246,181,231,25,17,212,69,1,251,243,44,252,91,83,138,250,137],[74,71,70,38,35,160,74,122,176,116,165,134,128,115,1,58,233,101,225,118,124,212,192,134,243,174,216,161,155,249,14,81],[48,100,78,114,225,49,160,41,184,80,69,182,129,129,88,93,151,129,106,145,104,113,202,141,60,32,140,22,216,124,253,71],[207,155,177,141,30,206,95,214,71,175,186,73,126,126,167,162,104,126,149,110,151,142,53,114,195,223,115,233,39,131,2,185],[245,122,34,183,145,136,140,107,216,175,203,208,24,51,218,128,158,222,125,101,30,202,106,201,135,210,7,130,228,134,99,137],[42,31,103,68,206,23,157,142,51,75,234,78,105,107,210,132,31,106,193,122,225,85,33,185,122,23,202,169,80,173,40,215],[249,187,24,209,236,229,253,100,122,251,164,151,231,234,122,38,135,233,86,233,120,227,87,44,61,247,62,146,120,48,43,144],[6,68,231,46,19,26,2,155,133,4,91,104,24,21,133,217,120,22,169,22,135,28,168,211,194,8,193,109,135,207,212,111],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,0],[7,155,177,253,3,237,92,151,14,41,125,66,188,24,151,228,93,136,135,3,202,158,108,195,48,138,79,213,56,163,134,170]],"0x000000000000000000000000000000000000800d":[[0,5,0,0,0,0,0,2,0,0,0,0,0,4,0,31,0,1,0,0,0,5,0,31,0,2,0,0,0,6,0,31],[0,3,0,0,0,7,0,31,0,4,0,0,0,1,3,85,0,0,0,96,1,16,2,112,0,0,0,20,1,16,1,151],[0,0,0,1,4,32,1,144,0,0,0,69,0,0,193,61,0,0,0,2,2,32,1,144,0,0,0,67,0,0,97,61],[0,0,0,5,2,48,0,140,0,0,0,67,0,0,129,61,0,0,0,32,2,16,2,16,0,0,0,0,2,35,0,25],[0,0,0,1,2,32,0,57,0,0,0,0,4,0,4,17,0,0,0,0,0,66,4,31,0,0,0,1,2,48,0,140],[0,0,0,33,0,0,161,61,0,0,0,2,2,48,0,140,0,0,0,41,0,0,97,61,0,0,0,3,2,48,0,140],[0,0,0,46,0,0,97,61,0,0,0,4,2,48,0,140,0,0,0,67,0,0,193,61,0,0,0,1,2,0,0,49],[0,0,0,0,3,0,0,49,0,0,0,0,0,35,4,30,0,0,0,3,2,0,0,49,0,0,0,2,3,0,0,49],[0,0,0,43,0,0,1,61,0,0,0,0,2,3,0,75,0,0,0,54,0,0,97,61,0,0,0,1,2,48,0,140],[0,0,0,67,0,0,193,61,0,0,0,4,2,0,3,103,0,0,0,0,2,2,4,59,0,0,0,0,3,0,0,49],[0,0,0,52,0,0,1,61,0,0,0,1,2,0,0,49,0,0,0,0,3,0,0,49,0,0,0,0,0,35,4,30],[0,0,0,0,3,0,0,25,0,0,0,54,0,0,1,61,0,0,0,1,2,0,0,49,0,0,0,0,3,0,0,49],[0,0,0,0,0,35,4,30,0,0,0,4,2,0,3,103,0,0,0,0,2,2,4,59,0,0,0,2,3,0,0,49],[0,0,0,0,0,35,4,30,0,0,0,32,3,0,0,57,0,0,0,0,2,19,0,75,0,0,0,65,0,0,129,61],[0,0,0,32,2,48,0,57,0,0,0,4,2,32,3,103,0,0,0,4,4,48,3,103,0,0,0,0,4,4,4,59],[0,0,0,0,2,2,4,59,0,0,0,0,0,36,4,30,0,0,0,64,3,48,0,57,0,0,0,0,2,19,0,75],[0,0,0,56,0,0,65,61,0,0,0,0,1,0,0,25,0,0,0,0,0,1,4,45,0,0,0,0,1,0,0,25],[0,0,0,76,0,1,4,48,0,0,0,32,1,0,0,57,0,0,1,0,0,16,4,67,0,0,1,32,0,0,4,67],[0,0,0,21,1,0,0,65,0,0,0,75,0,1,4,46,0,0,0,74,0,0,4,50,0,0,0,75,0,1,4,46],[0,0,0,76,0,1,4,48,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],[0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,1,0,0,0,0,0,0,0,0,0],[180,184,165,48,127,13,205,253,29,139,217,234,142,173,226,137,254,133,108,230,229,7,36,30,205,42,49,201,117,98,142,148]],"0x000000000000000000000000000000000000800a":[[0,5,0,0,0,0,0,2,0,0,0,128,3,0,0,57,0,0,0,64,0,48,4,63,0,0,0,0,3,1,0,25],[0,0,0,96,3,48,2,112,0,0,0,215,3,48,1,151,0,0,0,1,2,32,1,144,0,0,0,36,0,0,193,61],[0,0,0,4,2,48,0,140,0,0,3,10,0,0,65,61,0,0,0,0,2,1,4,59,0,0,0,224,2,32,2,112],[0,0,0,217,4,32,0,156,0,0,0,44,0,0,161,61,0,0,0,218,4,32,0,156,0,0,0,56,0,0,161,61],[0,0,0,219,4,32,0,156,0,0,0,149,0,0,97,61,0,0,0,220,4,32,0,156,0,0,1,234,0,0,97,61],[0,0,0,221,2,32,0,156,0,0,3,10,0,0,193,61,0,0,0,0,2,0,4,22,0,0,0,0,2,2,0,75],[0,0,3,10,0,0,193,61,0,0,0,4,2,48,0,138,0,0,0,32,2,32,0,140,0,0,3,10,0,0,65,61],[0,0,0,4,1,16,3,112,0,0,0,0,1,1,4,59,0,0,0,229,1,16,1,151,0,0,0,0,0,16,4,53],[0,0,0,32,0,0,4,63,0,0,0,0,1,0,0,25,3,88,3,60,0,0,4,15,0,0,0,54,0,0,1,61],[0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,3,10,0,0,193,61,0,0,0,32,1,0,0,57],[0,0,1,0,0,16,4,67,0,0,1,32,0,0,4,67,0,0,0,216,1,0,0,65,0,0,3,89,0,1,4,46],[0,0,0,224,4,32,0,156,0,0,0,96,0,0,33,61,0,0,0,227,1,32,0,156,0,0,1,166,0,0,97,61],[0,0,0,228,1,32,0,156,0,0,3,10,0,0,193,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75],[0,0,3,10,0,0,193,61,0,0,0,1,1,0,0,57,0,0,0,0,1,1,4,26,0,0,1,231,0,0,1,61],[0,0,0,222,4,32,0,156,0,0,1,175,0,0,97,61,0,0,0,223,2,32,0,156,0,0,3,10,0,0,193,61],[0,0,0,0,2,0,4,22,0,0,0,0,2,2,0,75,0,0,3,10,0,0,193,61,0,0,0,4,2,48,0,138],[0,0,0,96,2,32,0,140,0,0,3,10,0,0,65,61,0,0,0,4,2,16,3,112,0,0,0,0,4,2,4,59],[0,0,0,229,2,64,0,156,0,0,3,10,0,0,33,61,0,0,0,36,2,16,3,112,0,0,0,0,2,2,4,59],[0,0,0,229,5,32,1,151,0,0,0,229,2,32,0,156,0,0,3,10,0,0,33,61,0,0,0,0,2,0,4,17],[0,0,0,68,1,16,3,112,0,0,0,0,3,1,4,59,0,0,128,6,1,32,0,140,0,0,2,9,0,0,97,61],[0,0,0,9,1,0,0,138,0,0,0,0,1,18,1,111,0,0,128,1,1,16,0,140,0,0,2,9,0,0,97,61],[0,0,0,240,1,0,0,65,0,0,0,128,0,16,4,63,0,0,0,32,1,0,0,57,0,0,0,132,0,16,4,63],[0,0,0,62,1,0,0,57,0,0,0,164,0,16,4,63,0,0,0,241,1,0,0,65,0,0,0,196,0,16,4,63],[0,0,0,242,1,0,0,65,0,0,0,228,0,16,4,63,0,0,0,243,1,0,0,65,0,0,3,90,0,1,4,48],[0,0,0,225,4,32,0,156,0,0,1,227,0,0,97,61,0,0,0,226,2,32,0,156,0,0,3,10,0,0,193,61],[0,0,0,0,2,0,4,22,0,0,0,0,2,2,0,75,0,0,3,10,0,0,193,61,0,0,0,4,2,48,0,138],[0,0,0,64,2,32,0,140,0,0,3,10,0,0,65,61,0,0,0,4,2,16,3,112,0,0,0,0,4,2,4,59],[0,0,0,229,2,64,0,156,0,0,3,10,0,0,33,61,0,0,0,36,1,16,3,112,0,0,0,0,5,1,4,59],[0,0,0,0,1,0,4,17,0,0,128,1,1,16,0,140,0,0,1,255,0,0,193,61,0,0,0,1,1,0,0,57],[0,0,0,0,3,1,4,26,0,0,0,0,2,83,0,25,0,0,0,0,3,50,0,75,0,0,0,0,3,0,0,25],[0,0,0,1,3,0,64,57,0,0,0,1,3,48,1,144,0,0,0,145,0,0,193,61,0,4,0,0,0,5,0,29],[0,0,0,0,0,33,4,27,0,0,0,0,0,64,4,53,0,0,0,32,0,0,4,63,0,0,0,215,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,0,215,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,0,235,1,16,1,199,0,0,128,16,2,0,0,57,0,5,0,0,0,4,0,29,3,88,3,83,0,0,4,15],[0,0,0,5,5,0,0,41,0,0,0,1,2,32,1,144,0,0,3,10,0,0,97,61,0,0,0,0,1,1,4,59],[0,0,0,0,2,1,4,26,0,0,0,4,3,0,0,41,0,0,0,0,2,50,0,26,0,0,0,145,0,0,65,61],[0,0,2,194,0,0,1,61,0,0,0,250,1,0,0,65,0,0,0,0,0,16,4,53,0,0,0,17,1,0,0,57],[0,0,1,224,0,0,1,61,0,0,0,4,2,48,0,138,0,0,0,64,2,32,0,140,0,0,3,10,0,0,65,61],[0,0,0,4,2,16,3,112,0,0,0,0,8,2,4,59,0,0,0,229,2,128,0,156,0,0,3,10,0,0,33,61],[0,0,0,36,2,16,3,112,0,0,0,0,4,2,4,59,0,0,0,233,2,64,0,156,0,0,3,10,0,0,33,61],[0,0,0,35,2,64,0,57,0,0,0,234,5,0,0,65,0,0,0,0,6,50,0,75,0,0,0,0,6,0,0,25],[0,0,0,0,6,5,128,25,0,0,0,234,2,32,1,151,0,0,0,0,7,2,0,75,0,0,0,0,5,0,128,25],[0,0,0,234,2,32,0,156,0,0,0,0,5,6,192,25,0,0,0,0,2,5,0,75,0,0,3,10,0,0,193,61],[0,0,0,4,5,64,0,57,0,0,0,0,2,81,3,79,0,0,0,0,2,2,4,59,0,0,0,233,6,32,0,156],[0,0,1,221,0,0,33,61,0,0,0,191,6,32,0,57,0,0,0,32,9,0,0,138,0,0,0,0,6,150,1,111],[0,0,0,233,7,96,0,156,0,0,1,221,0,0,33,61,0,0,0,64,0,96,4,63,0,0,0,128,0,32,4,63],[0,0,0,0,4,36,0,25,0,0,0,36,4,64,0,57,0,0,0,0,3,52,0,75,0,0,3,10,0,0,33,61],[0,0,0,32,3,80,0,57,0,0,0,0,1,49,3,79,0,0,0,31,3,32,1,143,0,0,0,5,4,32,2,114],[0,0,0,202,0,0,97,61,0,0,0,0,5,0,0,25,0,0,0,5,6,80,2,16,0,0,0,0,7,97,3,79],[0,0,0,0,7,7,4,59,0,0,0,160,6,96,0,57,0,0,0,0,0,118,4,53,0,0,0,1,5,80,0,57],[0,0,0,0,6,69,0,75,0,0,0,194,0,0,65,61,0,4,0,0,0,9,0,29,0,5,0,0,0,8,0,29],[0,0,0,0,5,3,0,75,0,0,0,219,0,0,97,61,0,0,0,5,4,64,2,16,0,0,0,0,1,65,3,79],[0,0,0,3,3,48,2,16,0,0,0,160,4,64,0,57,0,0,0,0,5,4,4,51,0,0,0,0,5,53,1,207],[0,0,0,0,5,53,2,47,0,0,0,0,1,1,4,59,0,0,1,0,3,48,0,137,0,0,0,0,1,49,2,47],[0,0,0,0,1,49,1,207,0,0,0,0,1,81,1,159,0,0,0,0,0,20,4,53,0,0,0,160,1,32,0,57],[0,0,0,0,0,1,4,53,0,0,0,0,1,0,4,22,0,3,0,0,0,1,0,29,0,0,0,0,1,0,4,16],[0,0,0,0,0,16,4,53,0,0,0,32,0,0,4,63,0,0,0,215,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,0,215,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,0,235,1,16,1,199],[0,0,128,16,2,0,0,57,3,88,3,83,0,0,4,15,0,0,0,1,2,32,1,144,0,0,0,5,4,0,0,41],[0,0,0,4,7,0,0,41,0,0,3,10,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,0,2,1,4,26],[0,0,0,3,9,0,0,41,0,0,0,0,2,146,0,73,0,0,0,0,0,33,4,27,0,0,0,1,1,0,0,57],[0,0,0,0,2,1,4,26,0,0,0,0,2,146,0,73,0,0,0,0,0,33,4,27,0,0,0,236,2,0,0,65],[0,0,0,64,1,0,4,61,0,0,0,32,3,16,0,57,0,0,0,0,0,35,4,53,0,0,0,96,2,64,2,16],[0,0,0,36,3,16,0,57,0,0,0,0,0,35,4,53,0,0,0,0,8,0,4,17,0,0,0,96,2,128,2,16],[0,0,0,88,3,16,0,57,0,0,0,0,0,35,4,53,0,0,0,56,2,16,0,57,0,0,0,0,0,146,4,53],[0,0,0,108,3,16,0,57,0,0,0,128,2,0,4,61,0,0,0,0,4,2,0,75,0,0,1,16,0,0,97,61],[0,0,0,0,4,0,0,25,0,0,0,0,5,52,0,25,0,0,0,160,6,64,0,57,0,0,0,0,6,6,4,51],[0,0,0,0,0,101,4,53,0,0,0,32,4,64,0,57,0,0,0,0,5,36,0,75,0,0,1,9,0,0,65,61],[0,0,0,0,3,50,0,25,0,0,0,0,0,3,4,53,0,0,0,76,3,32,0,57,0,0,0,0,0,49,4,53],[0,0,0,139,2,32,0,57,0,0,0,0,2,114,1,111,0,0,0,0,10,18,0,25,0,0,0,0,2,42,0,75],[0,0,0,0,2,0,0,25,0,0,0,1,2,0,64,57,0,0,0,233,3,160,0,156,0,0,1,221,0,0,33,61],[0,0,0,1,2,32,1,144,0,0,1,221,0,0,193,61,0,1,0,0,0,8,0,29,0,0,0,64,0,160,4,63],[0,0,0,237,2,0,0,65,0,0,0,0,0,42,4,53,0,0,0,4,2,160,0,57,0,0,0,32,3,0,0,57],[0,0,0,0,0,50,4,53,0,0,0,0,2,1,4,51,0,0,0,36,3,160,0,57,0,0,0,0,0,35,4,53],[0,0,0,68,3,160,0,57,0,0,0,0,4,2,0,75,0,0,1,51,0,0,97,61,0,0,0,0,4,0,0,25],[0,0,0,0,5,52,0,25,0,0,0,32,4,64,0,57,0,0,0,0,6,20,0,25,0,0,0,0,6,6,4,51],[0,0,0,0,0,101,4,53,0,0,0,0,5,36,0,75,0,0,1,44,0,0,65,61,0,0,0,0,1,50,0,25],[0,0,0,0,0,1,4,53,0,0,0,31,1,32,0,57,0,0,0,0,1,113,1,111,0,0,0,215,2,0,0,65],[0,0,0,215,3,160,0,156,0,0,0,0,3,2,0,25,0,0,0,0,3,10,64,25,0,0,0,64,3,48,2,16],[0,0,0,68,1,16,0,57,0,0,0,215,4,16,0,156,0,0,0,0,1,2,128,25,0,0,0,96,1,16,2,16],[0,0,0,0,1,49,1,159,0,0,0,0,3,0,4,20,0,0,0,215,4,48,0,156,0,0,0,0,3,2,128,25],[0,0,0,192,2,48,2,16,0,0,0,0,1,18,1,159,0,0,128,8,2,0,0,57,0,2,0,0,0,10,0,29],[3,88,3,78,0,0,4,15,0,0,0,2,10,0,0,41,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,0,0,215,3,48,1,151,0,0,0,32,4,48,0,140,0,0,0,0,4,3,0,25,0,0,0,32,4,0,128,57],[0,0,0,31,5,64,1,143,0,0,0,5,6,64,2,114,0,0,1,92,0,0,97,61,0,0,0,0,7,0,0,25],[0,0,0,5,8,112,2,16,0,0,0,0,9,138,0,25,0,0,0,0,8,129,3,79,0,0,0,0,8,8,4,59],[0,0,0,0,0,137,4,53,0,0,0,1,7,112,0,57,0,0,0,0,8,103,0,75,0,0,1,84,0,0,65,61],[0,0,0,0,7,5,0,75,0,0,1,107,0,0,97,61,0,0,0,5,6,96,2,16,0,0,0,0,7,97,3,79],[0,0,0,0,6,106,0,25,0,0,0,3,5,80,2,16,0,0,0,0,8,6,4,51,0,0,0,0,8,88,1,207],[0,0,0,0,8,88,2,47,0,0,0,0,7,7,4,59,0,0,1,0,5,80,0,137,0,0,0,0,7,87,2,47],[0,0,0,0,5,87,1,207,0,0,0,0,5,133,1,159,0,0,0,0,0,86,4,53,0,0,0,1,2,32,1,144],[0,0,3,12,0,0,97,61,0,0,0,31,1,64,0,57,0,0,0,96,2,16,1,143,0,0,0,0,1,162,0,25],[0,0,0,0,2,33,0,75,0,0,0,0,2,0,0,25,0,0,0,1,2,0,64,57,0,0,0,233,4,16,0,156],[0,0,0,5,4,0,0,41,0,0,0,3,5,0,0,41,0,0,1,221,0,0,33,61,0,0,0,1,2,32,1,144],[0,0,1,221,0,0,193,61,0,0,0,64,0,16,4,63,0,0,0,32,2,48,0,140,0,0,3,10,0,0,65,61],[0,0,0,32,2,16,0,57,0,0,0,64,3,0,0,57,0,0,0,0,0,50,4,53,0,0,0,0,0,81,4,53],[0,0,0,64,3,16,0,57,0,0,0,128,2,0,4,61,0,0,0,0,0,35,4,53,0,0,0,96,3,16,0,57],[0,0,0,229,6,64,1,151,0,0,0,0,4,2,0,75,0,0,1,143,0,0,97,61,0,0,0,0,4,0,0,25],[0,0,0,0,5,52,0,25,0,0,0,160,7,64,0,57,0,0,0,0,7,7,4,51,0,0,0,0,0,117,4,53],[0,0,0,32,4,64,0,57,0,0,0,0,5,36,0,75,0,0,1,136,0,0,65,61,0,0,0,0,3,50,0,25],[0,0,0,0,0,3,4,53,0,0,0,127,2,32,0,57,0,0,0,4,2,32,1,127,0,0,0,215,3,0,0,65],[0,0,0,215,4,16,0,156,0,0,0,0,1,3,128,25,0,0,0,64,1,16,2,16,0,0,0,215,4,32,0,156],[0,0,0,0,2,3,128,25,0,0,0,96,2,32,2,16,0,0,0,0,1,18,1,159,0,0,0,0,2,0,4,20],[0,0,0,215,4,32,0,156,0,0,0,0,2,3,128,25,0,0,0,192,2,32,2,16,0,0,0,0,1,18,1,159],[0,0,0,238,1,16,1,199,0,0,128,13,2,0,0,57,0,0,0,3,3,0,0,57,0,0,0,239,4,0,0,65],[0,0,0,1,5,0,0,41,0,0,3,5,0,0,1,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75],[0,0,3,10,0,0,193,61,0,0,0,192,1,0,0,57,0,0,0,64,0,16,4,63,0,0,0,5,1,0,0,57],[0,0,0,128,0,16,4,63,0,0,0,255,1,0,0,65,0,0,1,242,0,0,1,61,0,0,0,4,2,48,0,138],[0,0,0,32,2,32,0,140,0,0,3,10,0,0,65,61,0,0,0,4,1,16,3,112,0,0,0,0,4,1,4,59],[0,0,0,229,1,64,0,156,0,0,3,10,0,0,33,61,0,0,0,0,1,0,4,22,0,4,0,0,0,1,0,29],[0,0,0,0,1,0,4,16,0,0,0,0,0,16,4,53,0,0,0,32,0,0,4,63,0,0,0,215,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,0,215,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,0,235,1,16,1,199,0,0,128,16,2,0,0,57,0,5,0,0,0,4,0,29,3,88,3,83,0,0,4,15],[0,0,0,5,4,0,0,41,0,0,0,1,2,32,1,144,0,0,3,10,0,0,97,61,0,0,0,0,1,1,4,59],[0,0,0,0,2,1,4,26,0,0,0,4,5,0,0,41,0,0,0,0,2,82,0,73,0,0,0,0,0,33,4,27],[0,0,0,1,1,0,0,57,0,0,0,0,2,1,4,26,0,0,0,0,2,82,0,73,0,0,0,0,0,33,4,27],[0,0,0,236,2,0,0,65,0,0,0,64,1,0,4,61,0,0,0,32,3,16,0,57,0,0,0,0,0,35,4,53],[0,0,0,96,2,64,2,16,0,0,0,36,3,16,0,57,0,0,0,0,0,35,4,53,0,0,0,56,2,16,0,57],[0,0,0,0,0,82,4,53,0,0,0,56,2,0,0,57,0,0,0,0,0,33,4,53,0,0,0,248,2,16,0,156],[0,0,2,47,0,0,65,61,0,0,0,250,1,0,0,65,0,0,0,0,0,16,4,53,0,0,0,65,1,0,0,57],[0,0,0,4,0,16,4,63,0,0,0,251,1,0,0,65,0,0,3,90,0,1,4,48,0,0,0,0,1,0,4,22],[0,0,0,0,1,1,0,75,0,0,3,10,0,0,193,61,0,0,0,18,1,0,0,57,0,0,0,128,0,16,4,63],[0,0,0,230,1,0,0,65,0,0,3,89,0,1,4,46,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75],[0,0,3,10,0,0,193,61,0,0,0,192,1,0,0,57,0,0,0,64,0,16,4,63,0,0,0,3,1,0,0,57],[0,0,0,128,0,16,4,63,0,0,0,231,1,0,0,65,0,0,0,160,0,16,4,63,0,0,0,32,1,0,0,57],[0,0,0,192,0,16,4,63,0,0,0,128,1,0,0,57,0,0,0,224,2,0,0,57,3,88,3,41,0,0,4,15],[0,0,0,192,1,16,0,138,0,0,0,215,2,0,0,65,0,0,0,215,3,16,0,156,0,0,0,0,1,2,128,25],[0,0,0,96,1,16,2,16,0,0,0,232,1,16,1,199,0,0,3,89,0,1,4,46,0,0,0,240,1,0,0,65],[0,0,0,128,0,16,4,63,0,0,0,32,1,0,0,57,0,0,0,132,0,16,4,63,0,0,0,31,1,0,0,57],[0,0,0,164,0,16,4,63,0,0,0,252,1,0,0,65,0,0,0,196,0,16,4,63,0,0,0,253,1,0,0,65],[0,0,3,90,0,1,4,48,0,4,0,0,0,3,0,29,0,0,0,0,0,64,4,53,0,0,0,32,0,0,4,63],[0,0,0,215,1,0,0,65,0,0,0,0,2,0,4,20,0,0,0,215,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,192,1,32,2,16,0,0,0,235,1,16,1,199,0,0,128,16,2,0,0,57,0,5,0,0,0,4,0,29],[0,3,0,0,0,5,0,29,3,88,3,83,0,0,4,15,0,0,0,5,3,0,0,41,0,0,0,1,2,32,1,144],[0,0,3,10,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,0,2,1,4,26,0,0,0,4,1,32,0,108],[0,0,2,211,0,0,129,61,0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57,0,0,0,246,3,0,0,65],[0,0,0,0,0,50,4,53,0,0,0,36,2,16,0,57,0,0,0,31,3,0,0,57,0,0,0,0,0,50,4,53],[0,0,0,240,2,0,0,65,0,0,0,0,0,33,4,53,0,0,0,4,2,16,0,57,0,0,0,32,3,0,0,57],[0,0,0,0,0,50,4,53,0,0,0,215,2,0,0,65,0,0,0,215,3,16,0,156,0,0,0,0,1,2,128,25],[0,0,0,64,1,16,2,16,0,0,0,247,1,16,1,199,0,0,3,90,0,1,4,48,0,0,0,96,7,16,0,57],[0,0,0,64,0,112,4,63,0,0,0,237,2,0,0,65,0,0,0,0,0,39,4,53,0,0,0,100,2,16,0,57],[0,0,0,32,3,0,0,57,0,0,0,0,0,50,4,53,0,0,0,132,3,16,0,57,0,0,0,0,2,1,4,51],[0,0,0,0,0,35,4,53,0,0,0,164,3,16,0,57,0,0,0,0,4,2,0,75,0,0,2,68,0,0,97,61],[0,0,0,0,4,0,0,25,0,0,0,0,5,52,0,25,0,0,0,32,4,64,0,57,0,0,0,0,6,20,0,25],[0,0,0,0,6,6,4,51,0,0,0,0,0,101,4,53,0,0,0,0,5,36,0,75,0,0,2,61,0,0,65,61],[0,0,0,0,1,50,0,25,0,0,0,0,0,1,4,53,0,0,0,31,1,32,0,57,0,0,0,32,2,0,0,138],[0,0,0,0,1,33,1,111,0,0,0,215,2,0,0,65,0,0,0,215,3,112,0,156,0,0,0,0,3,2,0,25],[0,0,0,0,3,7,64,25,0,0,0,64,3,48,2,16,0,0,0,68,1,16,0,57,0,0,0,215,4,16,0,156],[0,0,0,0,1,2,128,25,0,0,0,96,1,16,2,16,0,0,0,0,1,49,1,159,0,0,0,0,3,0,4,20],[0,0,0,215,4,48,0,156,0,0,0,0,3,2,128,25,0,0,0,192,2,48,2,16,0,0,0,0,1,18,1,159],[0,0,128,8,2,0,0,57,0,3,0,0,0,7,0,29,3,88,3,78,0,0,4,15,0,0,0,3,10,0,0,41],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,0,215,3,48,1,151,0,0,0,32,4,48,0,140],[0,0,0,0,4,3,0,25,0,0,0,32,4,0,128,57,0,0,0,31,5,64,1,143,0,0,0,5,6,64,2,114],[0,0,2,110,0,0,97,61,0,0,0,0,7,0,0,25,0,0,0,5,8,112,2,16,0,0,0,0,9,138,0,25],[0,0,0,0,8,129,3,79,0,0,0,0,8,8,4,59,0,0,0,0,0,137,4,53,0,0,0,1,7,112,0,57],[0,0,0,0,8,103,0,75,0,0,2,102,0,0,65,61,0,0,0,0,7,5,0,75,0,0,2,125,0,0,97,61],[0,0,0,5,6,96,2,16,0,0,0,0,7,97,3,79,0,0,0,0,6,106,0,25,0,0,0,3,5,80,2,16],[0,0,0,0,8,6,4,51,0,0,0,0,8,88,1,207,0,0,0,0,8,88,2,47,0,0,0,0,7,7,4,59],[0,0,1,0,5,80,0,137,0,0,0,0,7,87,2,47,0,0,0,0,5,87,1,207,0,0,0,0,5,133,1,159],[0,0,0,0,0,86,4,53,0,0,0,1,2,32,1,144,0,0,2,159,0,0,97,61,0,0,0,31,1,64,0,57],[0,0,0,96,2,16,1,143,0,0,0,0,1,162,0,25,0,0,0,0,2,33,0,75,0,0,0,0,2,0,0,25],[0,0,0,1,2,0,64,57,0,0,0,233,4,16,0,156,0,0,0,5,5,0,0,41,0,0,0,4,4,0,0,41],[0,0,1,221,0,0,33,61,0,0,0,1,2,32,1,144,0,0,1,221,0,0,193,61,0,0,0,64,0,16,4,63],[0,0,0,32,2,48,0,140,0,0,3,10,0,0,65,61,0,0,0,0,0,65,4,53,0,0,0,215,2,0,0,65],[0,0,0,0,3,0,4,20,0,0,0,215,4,48,0,156,0,0,0,0,3,2,128,25,0,0,0,215,4,16,0,156],[0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16,0,0,0,192,2,48,2,16,0,0,0,0,1,18,1,159],[0,0,0,244,1,16,1,199,0,0,0,229,6,80,1,151,0,0,128,13,2,0,0,57,0,0,0,3,3,0,0,57],[0,0,0,0,5,0,4,17,0,0,0,249,4,0,0,65,0,0,3,5,0,0,1,61,0,0,0,64,2,0,4,61],[0,0,0,31,4,48,1,143,0,0,0,5,5,48,2,114,0,0,2,172,0,0,97,61,0,0,0,0,6,0,0,25],[0,0,0,5,7,96,2,16,0,0,0,0,8,114,0,25,0,0,0,0,7,113,3,79,0,0,0,0,7,7,4,59],[0,0,0,0,0,120,4,53,0,0,0,1,6,96,0,57,0,0,0,0,7,86,0,75,0,0,2,164,0,0,65,61],[0,0,0,0,6,4,0,75,0,0,2,187,0,0,97,61,0,0,0,5,5,80,2,16,0,0,0,0,1,81,3,79],[0,0,0,0,5,82,0,25,0,0,0,3,4,64,2,16,0,0,0,0,6,5,4,51,0,0,0,0,6,70,1,207],[0,0,0,0,6,70,2,47,0,0,0,0,1,1,4,59,0,0,1,0,4,64,0,137,0,0,0,0,1,65,2,47],[0,0,0,0,1,65,1,207,0,0,0,0,1,97,1,159,0,0,0,0,0,21,4,53,0,0,0,215,1,0,0,65],[0,0,0,215,4,32,0,156,0,0,0,0,2,1,128,25,0,0,0,64,1,32,2,16,0,0,0,96,2,48,2,16],[0,0,0,0,1,33,1,159,0,0,3,90,0,1,4,48,0,0,0,0,0,33,4,27,0,0,0,64,1,0,4,61],[0,0,0,0,0,49,4,53,0,0,0,215,2,0,0,65,0,0,0,0,3,0,4,20,0,0,0,215,4,48,0,156],[0,0,0,0,3,2,128,25,0,0,0,215,4,16,0,156,0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16],[0,0,0,192,2,48,2,16,0,0,0,0,1,18,1,159,0,0,0,244,1,16,1,199,0,0,128,13,2,0,0,57],[0,0,0,2,3,0,0,57,0,0,0,254,4,0,0,65,0,0,3,5,0,0,1,61,0,2,0,0,0,2,0,29],[0,0,0,0,0,48,4,53,0,0,0,32,0,0,4,63,0,0,0,215,3,0,0,65,0,0,0,0,1,0,4,20],[0,0,0,215,2,16,0,156,0,0,0,0,1,3,128,25,0,0,0,192,1,16,2,16,0,0,0,235,1,16,1,199],[0,0,128,16,2,0,0,57,3,88,3,83,0,0,4,15,0,0,0,3,3,0,0,41,0,0,0,1,2,32,1,144],[0,0,3,10,0,0,97,61,0,0,0,2,4,0,0,41,0,0,0,4,2,64,0,106,0,0,0,0,1,1,4,59],[0,0,0,0,0,33,4,27,0,0,0,0,0,48,4,53,0,0,0,0,1,0,4,20,0,0,0,215,2,16,0,156],[0,0,0,215,1,0,128,65,0,0,0,192,1,16,2,16,0,0,0,235,1,16,1,199,0,0,128,16,2,0,0,57],[3,88,3,83,0,0,4,15,0,0,0,3,6,0,0,41,0,0,0,5,5,0,0,41,0,0,0,1,2,32,1,144],[0,0,3,10,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,0,2,1,4,26,0,0,0,4,3,0,0,41],[0,0,0,0,2,50,0,25,0,0,0,0,0,33,4,27,0,0,0,64,1,0,4,61,0,0,0,0,0,49,4,53],[0,0,0,215,2,0,0,65,0,0,0,0,3,0,4,20,0,0,0,215,4,48,0,156,0,0,0,0,3,2,128,25],[0,0,0,215,4,16,0,156,0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16,0,0,0,192,2,48,2,16],[0,0,0,0,1,18,1,159,0,0,0,244,1,16,1,199,0,0,128,13,2,0,0,57,0,0,0,3,3,0,0,57],[0,0,0,245,4,0,0,65,3,88,3,78,0,0,4,15,0,0,0,1,1,32,1,144,0,0,3,10,0,0,97,61],[0,0,0,0,1,0,0,25,0,0,3,89,0,1,4,46,0,0,0,0,1,0,0,25,0,0,3,90,0,1,4,48],[0,0,0,64,2,0,4,61,0,0,0,31,4,48,1,143,0,0,0,5,5,48,2,114,0,0,3,25,0,0,97,61],[0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16,0,0,0,0,8,114,0,25,0,0,0,0,7,113,3,79],[0,0,0,0,7,7,4,59,0,0,0,0,0,120,4,53,0,0,0,1,6,96,0,57,0,0,0,0,7,86,0,75],[0,0,3,17,0,0,65,61,0,0,0,0,6,4,0,75,0,0,3,40,0,0,97,61,0,0,0,5,5,80,2,16],[0,0,0,0,1,81,3,79,0,0,0,0,5,82,0,25,0,0,0,3,4,64,2,16,0,0,0,0,6,5,4,51],[0,0,0,0,6,70,1,207,0,0,0,0,6,70,2,47,0,0,0,0,1,1,4,59,0,0,1,0,4,64,0,137],[0,0,0,0,1,65,2,47,0,0,0,0,1,65,1,207,0,0,0,0,1,97,1,159,0,0,0,0,0,21,4,53],[0,0,2,187,0,0,1,61,0,0,0,0,3,1,4,51,0,0,0,0,2,50,4,54,0,0,0,0,4,3,0,75],[0,0,3,53,0,0,97,61,0,0,0,0,4,0,0,25,0,0,0,0,5,36,0,25,0,0,0,32,4,64,0,57],[0,0,0,0,6,20,0,25,0,0,0,0,6,6,4,51,0,0,0,0,0,101,4,53,0,0,0,0,5,52,0,75],[0,0,3,46,0,0,65,61,0,0,0,0,1,35,0,25,0,0,0,0,0,1,4,53,0,0,0,31,1,48,0,57],[0,0,0,32,3,0,0,138,0,0,0,0,1,49,1,111,0,0,0,0,1,18,0,25,0,0,0,0,0,1,4,45],[0,0,0,215,2,0,0,65,0,0,0,215,3,16,0,156,0,0,0,0,1,2,128,25,0,0,0,0,3,0,4,20],[0,0,0,215,4,48,0,156,0,0,0,0,3,2,128,25,0,0,0,192,2,48,2,16,0,0,0,64,1,16,2,16],[0,0,0,0,1,33,1,159,0,0,0,235,1,16,1,199,0,0,128,16,2,0,0,57,3,88,3,83,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,3,76,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,0,0,1,4,45],[0,0,0,0,1,0,0,25,0,0,3,90,0,1,4,48,0,0,3,81,0,33,4,33,0,0,0,1,2,0,0,57],[0,0,0,0,0,1,4,45,0,0,0,0,2,0,0,25,0,0,0,0,0,1,4,45,0,0,3,86,0,33,4,35],[0,0,0,1,2,0,0,57,0,0,0,0,0,1,4,45,0,0,0,0,2,0,0,25,0,0,0,0,0,1,4,45],[0,0,3,88,0,0,4,50,0,0,3,89,0,1,4,46,0,0,3,90,0,1,4,48,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],[0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,1,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,81,207,248,216],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,132,188,62,175],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,132,188,62,176],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,149,216,155,65],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,156,199,247,8],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,81,207,248,217],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,87,153,82,252],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,49,60,229,102],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,49,60,229,103],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,193,15,25],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,253,222,3],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,22,13,221],[0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,0,0,0,128,0,0,0,0,0,0,0,0],[69,84,72,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255],[128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,0],[108,9,96,249,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[98,248,75,36,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[196,5,254,137,88,65,11,186,240,199,59,122,12,62,32,133,158,134,202,22,138,76,155,13,239,156,84,210,85,90,48,107],[8,195,121,160,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[79,110,108,121,32,115,121,115,116,101,109,32,99,111,110,116,114,97,99,116,115,32,119,105,116,104,32,115,112,101,99,105],[97,108,32,97,99,99,101,115,115,32,99,97,110,32,99,97,108,108,32,116,104,105,115,32,109,101,116,104,111,100,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,132,0,0,0,128,0,0,0,0,0,0,0,0],[2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,0],[221,242,82,173,27,226,200,155,105,194,176,104,252,55,141,170,149,43,167,241,99,196,161,22,40,245,90,77,245,35,179,239],[84,114,97,110,115,102,101,114,32,97,109,111,117,110,116,32,101,120,99,101,101,100,115,32,98,97,108,97,110,99,101,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,160],[39,23,234,214,185,32,13,210,53,170,212,104,201,128,158,164,0,254,51,172,105,181,191,170,109,62,144,252,146,43,99,152],[78,72,123,113,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,36,0,0,0,0,0,0,0,0,0,0,0,0],[67,97,108,108,97,98,108,101,32,111,110,108,121,32,98,121,32,116,104,101,32,98,111,111,116,108,111,97,100,101,114,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,128,0,0,0,0,0,0,0,0],[15,103,152,165,96,121,58,84,195,188,254,134,169,60,222,30,115,8,125,148,76,14,162,5,68,19,125,65,33,57,104,133],[69,116,104,101,114,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[138,45,232,35,156,84,136,62,74,211,18,128,185,183,6,203,181,237,138,115,51,209,123,80,172,154,86,215,37,44,38,96]],"0x0000000000000000000000000000000000008004":[[0,1,0,0,0,0,0,2,0,8,0,0,0,0,0,2,0,0,0,0,0,1,3,85,0,0,0,128,3,0,0,57],[0,0,0,64,0,48,4,63,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,0,95,3,48,1,151],[0,0,0,1,2,32,1,144,0,0,0,32,0,0,193,61,0,0,0,4,2,48,0,140,0,0,1,24,0,0,65,61],[0,0,0,0,2,1,4,59,0,0,0,224,2,32,2,112,0,0,0,97,4,32,0,156,0,0,0,40,0,0,97,61],[0,0,0,98,4,32,0,156,0,0,0,127,0,0,97,61,0,0,0,99,2,32,0,156,0,0,1,24,0,0,193,61],[0,0,0,0,2,0,4,22,0,0,0,0,2,2,0,75,0,0,1,24,0,0,193,61,0,0,0,4,2,48,0,138],[0,0,0,32,2,32,0,140,0,0,1,24,0,0,65,61,0,0,0,4,1,16,3,112,0,0,0,0,1,1,4,59],[0,0,0,0,1,1,4,26,0,0,0,128,0,16,4,63,0,0,0,123,1,0,0,65,0,0,1,121,0,1,4,46],[0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,1,24,0,0,193,61,0,0,0,32,1,0,0,57],[0,0,1,0,0,16,4,67,0,0,1,32,0,0,4,67,0,0,0,96,1,0,0,65,0,0,1,121,0,1,4,46],[0,0,0,0,2,0,4,22,0,0,0,0,2,2,0,75,0,0,1,24,0,0,193,61,0,0,0,4,2,48,0,138],[0,0,0,64,2,32,0,140,0,0,1,24,0,0,65,61,0,0,0,4,2,16,3,112,0,0,0,0,4,2,4,59],[0,0,0,0,2,4,0,75,0,0,0,0,2,0,0,25,0,0,0,1,2,0,192,57,0,2,0,0,0,4,0,29],[0,0,0,0,2,36,0,75,0,0,1,24,0,0,193,61,0,0,0,36,2,16,3,112,0,0,0,0,2,2,4,59],[0,0,0,100,4,32,0,156,0,0,1,24,0,0,33,61,0,0,0,35,4,32,0,57,0,0,0,101,5,0,0,65],[0,0,0,0,6,52,0,75,0,0,0,0,6,0,0,25,0,0,0,0,6,5,128,25,0,0,0,101,4,64,1,151],[0,0,0,0,7,4,0,75,0,0,0,0,5,0,128,25,0,0,0,101,4,64,0,156,0,0,0,0,5,6,192,25],[0,0,0,0,4,5,0,75,0,0,1,24,0,0,193,61,0,0,0,4,4,32,0,57,0,0,0,0,4,65,3,79],[0,0,0,0,4,4,4,59,0,8,0,0,0,4,0,29,0,0,0,100,4,64,0,156,0,0,1,24,0,0,33,61],[0,7,0,36,0,32,0,61,0,0,0,8,2,0,0,41,0,0,0,5,2,32,2,16,0,0,0,7,2,32,0,41],[0,0,0,0,2,50,0,75,0,0,1,24,0,0,33,61,0,0,0,0,2,0,4,17,0,0,128,1,2,32,0,140],[0,0,0,192,0,0,193,61,0,0,0,8,2,0,0,107,0,0,0,190,0,0,97,61,0,0,0,2,2,0,0,107],[0,0,0,200,0,0,193,61,0,5,0,1,0,0,0,61,0,4,128,13,0,0,0,61,0,3,0,3,0,0,0,61],[0,0,0,0,4,0,0,25,0,0,0,97,0,0,1,61,0,0,0,1,4,64,0,57,0,0,0,8,2,64,0,108],[0,0,0,190,0,0,129,61,0,0,0,5,2,64,2,16,0,0,0,7,2,32,0,41,0,0,0,0,2,33,3,79],[0,0,0,0,5,2,4,59,0,0,0,0,2,5,4,26,0,0,0,0,2,2,0,75,0,0,0,94,0,0,193,61],[0,0,0,105,1,80,1,151,0,0,0,106,1,16,0,156,0,0,1,26,0,0,193,61,0,6,0,0,0,4,0,29],[0,0,0,107,1,80,1,152,0,0,1,47,0,0,97,61,0,0,0,5,1,0,0,41,0,0,0,0,0,21,4,27],[0,0,0,0,1,0,4,20,0,0,0,95,2,16,0,156,0,0,0,95,1,0,128,65,0,0,0,192,1,16,2,16],[0,0,0,113,1,16,1,199,0,0,0,4,2,0,0,41,0,0,0,3,3,0,0,41,0,0,0,114,4,0,0,65],[0,0,0,0,6,0,0,25,1,120,1,110,0,0,4,15,0,0,0,0,1,0,3,103,0,0,0,1,2,32,1,144],[0,0,0,6,4,0,0,41,0,0,0,94,0,0,193,61,0,0,1,24,0,0,1,61,0,0,0,0,2,0,4,22],[0,0,0,0,2,2,0,75,0,0,1,24,0,0,193,61,0,0,0,4,2,48,0,138,0,0,0,32,2,32,0,140],[0,0,1,24,0,0,65,61,0,0,0,4,1,16,3,112,0,0,0,0,5,1,4,59,0,0,0,0,1,0,4,17],[0,0,128,14,1,16,0,140,0,0,0,153,0,0,193,61,0,0,0,0,1,5,4,26,0,0,0,0,1,1,0,75],[0,0,0,190,0,0,193,61,0,0,0,105,1,80,1,151,0,0,0,106,1,16,0,156,0,0,0,163,0,0,193,61],[0,0,0,107,1,80,1,152,0,0,0,175,0,0,193,61,0,0,0,102,1,0,0,65,0,0,0,128,0,16,4,63],[0,0,0,32,1,0,0,57,0,0,0,132,0,16,4,63,0,0,0,164,0,16,4,63,0,0,0,119,1,0,0,65],[0,0,0,160,0,0,1,61,0,0,0,102,1,0,0,65,0,0,0,128,0,16,4,63,0,0,0,32,1,0,0,57],[0,0,0,132,0,16,4,63,0,0,0,31,1,0,0,57,0,0,0,164,0,16,4,63,0,0,0,121,1,0,0,65],[0,0,0,196,0,16,4,63,0,0,0,104,1,0,0,65,0,0,1,122,0,1,4,48,0,0,0,102,1,0,0,65],[0,0,0,128,0,16,4,63,0,0,0,32,1,0,0,57,0,0,0,132,0,16,4,63,0,0,0,34,1,0,0,57],[0,0,0,164,0,16,4,63,0,0,0,117,1,0,0,65,0,0,0,196,0,16,4,63,0,0,0,116,1,0,0,65],[0,0,0,228,0,16,4,63,0,0,0,122,1,0,0,65,0,0,1,122,0,1,4,48,0,0,0,1,1,0,0,57],[0,0,0,0,0,21,4,27,0,0,0,95,1,0,0,65,0,0,0,0,2,0,4,20,0,0,0,95,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,0,113,1,16,1,199,0,0,128,13,2,0,0,57],[0,0,0,3,3,0,0,57,0,0,0,114,4,0,0,65,0,0,0,0,6,0,0,25,1,120,1,110,0,0,4,15],[0,0,0,1,1,32,1,144,0,0,1,24,0,0,97,61,0,0,0,0,1,0,0,25,0,0,1,121,0,1,4,46],[0,0,0,102,1,0,0,65,0,0,0,128,0,16,4,63,0,0,0,32,1,0,0,57,0,0,0,132,0,16,4,63],[0,0,0,31,1,0,0,57,0,0,0,164,0,16,4,63,0,0,0,103,1,0,0,65,0,0,0,160,0,0,1,61],[0,5,128,8,0,0,0,61,0,1,128,2,0,0,0,61,0,0,0,0,4,0,0,25,0,0,0,207,0,0,1,61],[0,0,0,1,4,64,0,57,0,0,0,8,2,64,0,108,0,0,0,190,0,0,129,61,0,0,0,5,2,64,2,16],[0,0,0,7,2,32,0,41,0,0,0,0,2,33,3,79,0,0,0,0,3,2,4,59,0,0,0,0,2,3,4,26],[0,0,0,0,2,2,0,75,0,0,0,204,0,0,193,61,0,0,0,105,1,48,1,151,0,0,0,106,1,16,0,156],[0,0,1,26,0,0,193,61,0,4,0,0,0,4,0,29,0,6,0,0,0,3,0,29,0,0,0,107,1,48,1,152],[0,0,1,47,0,0,97,61,0,0,0,108,1,0,0,65,0,0,0,0,0,16,4,57,0,0,0,5,1,0,0,41],[0,0,0,4,0,16,4,67,0,0,0,0,1,0,4,20,0,0,0,95,2,16,0,156,0,0,0,95,1,0,128,65],[0,0,0,192,1,16,2,16,0,0,0,109,1,16,1,199,0,0,0,1,2,0,0,41,1,120,1,115,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,1,64,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75],[0,0,0,6,2,0,0,41,0,0,1,24,0,0,97,61,0,0,0,64,4,0,4,61,0,0,0,110,1,0,0,65],[0,0,0,0,0,20,4,53,0,0,0,4,1,64,0,57,0,0,0,0,0,33,4,53,0,0,0,0,1,0,4,20],[0,0,0,95,2,16,0,156,0,0,0,95,3,0,0,65,0,0,0,0,1,3,128,25,0,0,0,95,2,64,0,156],[0,3,0,0,0,4,0,29,0,0,0,0,2,3,0,25,0,0,0,0,2,4,64,25,0,0,0,64,2,32,2,16],[0,0,0,192,1,16,2,16,0,0,0,0,1,33,1,159,0,0,0,111,1,16,1,199,0,0,0,5,2,0,0,41],[1,120,1,110,0,0,4,15,0,0,0,1,2,32,1,144,0,0,1,65,0,0,97,61,0,0,0,3,2,0,0,41],[0,0,0,112,1,32,0,156,0,0,1,103,0,0,129,61,0,0,0,64,0,32,4,63,0,0,0,1,1,0,0,57],[0,0,0,6,5,0,0,41,0,0,0,0,0,21,4,27,0,0,0,0,1,0,4,20,0,0,0,95,2,16,0,156],[0,0,0,95,1,0,128,65,0,0,0,192,1,16,2,16,0,0,0,113,1,16,1,199,0,0,128,13,2,0,0,57],[0,0,0,3,3,0,0,57,0,0,0,114,4,0,0,65,0,0,0,2,6,0,0,41,1,120,1,110,0,0,4,15],[0,0,0,0,1,0,3,103,0,0,0,1,2,32,1,144,0,0,0,4,4,0,0,41,0,0,0,204,0,0,193,61],[0,0,0,0,1,0,0,25,0,0,1,122,0,1,4,48,0,0,0,64,1,0,4,61,0,0,0,100,2,16,0,57],[0,0,0,116,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,68,2,16,0,57,0,0,0,117,3,0,0,65],[0,0,0,0,0,50,4,53,0,0,0,36,2,16,0,57,0,0,0,34,3,0,0,57,0,0,0,0,0,50,4,53],[0,0,0,102,2,0,0,65,0,0,0,0,0,33,4,53,0,0,0,4,2,16,0,57,0,0,0,32,3,0,0,57],[0,0,0,0,0,50,4,53,0,0,0,95,2,0,0,65,0,0,0,95,3,16,0,156,0,0,0,0,1,2,128,25],[0,0,0,64,1,16,2,16,0,0,0,118,1,16,1,199,0,0,1,122,0,1,4,48,0,0,0,64,1,0,4,61],[0,0,0,68,2,16,0,57,0,0,0,119,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,102,2,0,0,65],[0,0,0,0,0,33,4,53,0,0,0,36,2,16,0,57,0,0,0,32,3,0,0,57,0,0,0,0,0,50,4,53],[0,0,0,4,2,16,0,57,0,0,0,0,0,50,4,53,0,0,0,95,2,0,0,65,0,0,0,95,3,16,0,156],[0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16,0,0,0,120,1,16,1,199,0,0,1,122,0,1,4,48],[0,0,0,0,0,1,4,47,0,0,0,64,2,0,4,61,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,0,0,31,4,48,1,143,0,0,0,95,3,48,1,151,0,0,0,5,5,48,2,114,0,0,1,81,0,0,97,61],[0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16,0,0,0,0,8,114,0,25,0,0,0,0,7,113,3,79],[0,0,0,0,7,7,4,59,0,0,0,0,0,120,4,53,0,0,0,1,6,96,0,57,0,0,0,0,7,86,0,75],[0,0,1,73,0,0,65,61,0,0,0,0,6,4,0,75,0,0,1,96,0,0,97,61,0,0,0,5,5,80,2,16],[0,0,0,0,1,81,3,79,0,0,0,0,5,82,0,25,0,0,0,3,4,64,2,16,0,0,0,0,6,5,4,51],[0,0,0,0,6,70,1,207,0,0,0,0,6,70,2,47,0,0,0,0,1,1,4,59,0,0,1,0,4,64,0,137],[0,0,0,0,1,65,2,47,0,0,0,0,1,65,1,207,0,0,0,0,1,97,1,159,0,0,0,0,0,21,4,53],[0,0,0,95,1,0,0,65,0,0,0,95,4,32,0,156,0,0,0,0,2,1,128,25,0,0,0,64,1,32,2,16],[0,0,0,96,2,48,2,16,0,0,0,0,1,33,1,159,0,0,1,122,0,1,4,48,0,0,0,115,1,0,0,65],[0,0,0,0,0,16,4,53,0,0,0,65,1,0,0,57,0,0,0,4,0,16,4,63,0,0,0,111,1,0,0,65],[0,0,1,122,0,1,4,48,0,0,0,0,0,1,4,47,0,0,1,113,0,33,4,33,0,0,0,1,2,0,0,57],[0,0,0,0,0,1,4,45,0,0,0,0,2,0,0,25,0,0,0,0,0,1,4,45,0,0,1,118,0,33,4,35],[0,0,0,1,2,0,0,57,0,0,0,0,0,1,4,45,0,0,0,0,2,0,0,25,0,0,0,0,0,1,4,45],[0,0,1,120,0,0,4,50,0,0,1,121,0,1,4,46,0,0,1,122,0,1,4,48,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],[0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,1,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,229,22,118,30],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,121,196,249,41],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,76,99,20,240],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255],[128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[8,195,121,160,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[67,97,108,108,97,98,108,101,32,111,110,108,121,32,98,121,32,116,104,101,32,98,111,111,116,108,111,97,100,101,114,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,128,0,0,0,0,0,0,0,0],[255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[24,6,170,24,150,187,242,101,104,232,132,167,55,75,65,224,2,80,9,98,202,186,106,21,2,58,141,144,232,80,139,131],[2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,36,0,0,0,0,0,0,0,0,0,0,0,0],[57,179,76,110,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,36,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0],[2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[201,71,34,255,19,234,207,83,84,124,71,65,218,181,34,131,83,160,89,56,255,205,213,212,162,213,51,174,14,97,130,135],[78,72,123,113,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[115,104,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[73,110,99,111,114,114,101,99,116,108,121,32,102,111,114,109,97,116,116,101,100,32,98,121,116,101,99,111,100,101,72,97],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,132,0,0,0,0,0,0,0,0,0,0,0,0],[67,111,100,101,32,108,101,110,103,116,104,32,105,110,32,119,111,114,100,115,32,109,117,115,116,32,98,101,32,111,100,100],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,0,0,0,0,0,0,0,0],[67,97,108,108,97,98,108,101,32,111,110,108,121,32,98,121,32,116,104,101,32,99,111,109,112,114,101,115,115,111,114,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,132,0,0,0,128,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,0,0,0,128,0,0,0,0,0,0,0,0],[19,244,124,140,251,27,40,215,67,122,206,132,217,200,125,100,205,240,125,135,58,151,188,173,230,233,239,192,213,110,224,239]],"0x0000000000000000000000000000000000008006":[[0,2,0,0,0,0,0,2,0,11,0,0,0,0,0,2,0,0,0,0,3,2,0,25,0,1,0,0,0,1,3,85],[0,0,0,0,2,1,0,25,0,0,0,96,2,32,2,112,0,0,4,244,0,32,1,157,0,0,0,128,4,0,0,57],[0,0,0,64,0,64,4,63,0,0,4,244,2,32,1,151,0,0,0,1,4,48,1,144,0,0,0,134,0,0,193,61],[0,0,0,4,4,32,0,140,0,0,7,102,0,0,65,61,0,0,0,0,4,1,4,59,0,0,0,224,4,64,2,112],[0,0,4,246,5,64,0,156,0,0,0,142,0,0,161,61,0,0,4,247,5,64,0,156,0,0,0,207,0,0,161,61],[0,0,4,248,5,64,0,156,0,0,0,0,5,0,4,16,0,11,0,0,0,5,0,29,0,0,1,71,0,0,33,61],[0,0,4,251,5,64,0,156,0,0,1,180,0,0,97,61,0,0,4,252,4,64,0,156,0,0,7,102,0,0,193,61],[0,0,0,0,4,0,4,22,0,0,0,0,4,4,0,75,0,0,7,102,0,0,193,61,0,0,0,4,2,32,0,138],[0,0,0,32,2,32,0,140,0,0,7,102,0,0,65,61,0,0,0,4,1,16,3,112,0,0,0,0,1,1,4,59],[0,11,0,0,0,1,0,29,0,0,0,1,1,16,0,140,0,0,7,102,0,0,33,61,0,0,0,0,2,0,4,17],[0,0,0,2,1,48,1,144,0,0,0,44,0,0,193,61,0,0,255,255,1,32,0,140,0,0,3,170,0,0,33,61],[0,10,0,0,0,2,0,29,0,0,0,0,0,32,4,53,0,0,0,32,0,0,4,63,0,0,4,244,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,4,244,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,5,15,1,16,1,199,0,0,128,16,2,0,0,57,19,201,19,185,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,7,102,0,0,97,61,0,0,0,64,4,0,4,61,0,0,5,32,2,64,0,156,0,0,3,211,0,0,33,61],[0,0,0,0,1,1,4,59,0,0,0,64,2,64,0,57,0,0,0,64,0,32,4,63,0,0,0,0,1,1,4,26],[0,0,0,255,2,16,1,143,0,0,0,1,3,32,0,140,0,0,4,25,0,0,33,61,0,0,0,0,3,36,4,54],[0,0,0,8,1,16,2,112,0,0,0,255,1,16,1,143,0,0,0,1,2,16,0,140,0,0,4,25,0,0,33,61],[0,9,0,0,0,4,0,29,0,0,0,0,0,19,4,53,0,0,0,11,2,0,0,41,0,0,0,1,2,32,0,140],[0,0,6,94,0,0,193,61,0,0,0,0,1,1,0,75,0,0,6,94,0,0,193,61,0,0,0,1,1,0,0,57],[0,11,0,0,0,3,0,29,0,8,0,0,0,1,0,29,0,0,0,0,0,19,4,53,0,0,0,10,1,0,0,41],[0,0,5,9,1,16,1,151,0,0,0,0,0,16,4,53,0,0,0,32,0,0,4,63,0,0,4,244,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,4,244,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,5,15,1,16,1,199,0,0,128,16,2,0,0,57,19,201,19,185,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,7,102,0,0,97,61,0,0,0,9,2,0,0,41,0,0,0,0,2,2,4,51,0,0,0,1,3,32,0,140],[0,0,0,11,5,0,0,41,0,0,4,25,0,0,33,61,0,0,0,0,1,1,4,59,0,0,0,0,3,1,4,26],[0,0,1,0,4,0,0,138,0,0,0,0,3,67,1,111,0,0,0,0,2,35,1,159,0,0,0,0,0,33,4,27],[0,0,0,0,3,5,4,51,0,0,0,1,4,48,0,140,0,0,4,25,0,0,33,61,0,0,5,16,4,0,0,65],[0,0,0,0,2,66,1,111,0,0,0,8,3,48,2,16,0,0,255,0,3,48,1,143,0,0,0,0,2,35,1,159],[0,0,0,0,0,33,4,27,0,0,0,64,1,0,4,61,0,0,0,8,2,0,0,41,0,0,0,0,0,33,4,53],[0,0,4,244,2,0,0,65,0,0,0,0,3,0,4,20,0,0,4,244,4,48,0,156,0,0,0,0,3,2,128,25],[0,0,4,244,4,16,0,156,0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16,0,0,0,192,2,48,2,16],[0,0,0,0,1,18,1,159,0,0,5,49,1,16,1,199,0,0,128,13,2,0,0,57,0,0,0,2,3,0,0,57],[0,0,5,50,4,0,0,65,0,0,0,201,0,0,1,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75],[0,0,7,102,0,0,193,61,0,0,0,32,1,0,0,57,0,0,1,0,0,16,4,67,0,0,1,32,0,0,4,67],[0,0,4,245,1,0,0,65,0,0,19,202,0,1,4,46,0,0,5,0,5,64,0,156,0,0,1,35,0,0,33,61],[0,0,5,4,5,64,0,156,0,0,2,240,0,0,97,61,0,0,5,5,5,64,0,156,0,0,3,125,0,0,97,61],[0,0,5,6,4,64,0,156,0,0,7,102,0,0,193,61,0,0,0,0,4,0,4,22,0,0,0,0,4,4,0,75],[0,0,7,102,0,0,193,61,0,0,0,4,2,32,0,138,0,0,0,32,2,32,0,140,0,0,7,102,0,0,65,61],[0,0,0,4,1,16,3,112,0,0,0,0,1,1,4,59,0,11,0,0,0,1,0,29,0,0,0,1,1,16,0,140],[0,0,7,102,0,0,33,61,0,0,0,0,2,0,4,17,0,0,0,2,1,48,1,144,0,0,0,166,0,0,193,61],[0,0,255,255,1,32,0,140,0,0,3,170,0,0,33,61,0,10,0,0,0,2,0,29,0,0,0,0,0,32,4,53],[0,0,0,32,0,0,4,63,0,0,4,244,3,0,0,65,0,0,0,0,1,0,4,20,0,0,4,244,2,16,0,156],[0,0,0,0,1,3,128,25,0,0,0,192,1,16,2,16,0,0,5,15,1,16,1,199,0,0,128,16,2,0,0,57],[19,201,19,185,0,0,4,15,0,0,0,1,2,32,1,144,0,0,7,102,0,0,97,61,0,0,0,0,1,1,4,59],[0,0,0,0,2,1,4,26,0,0,1,0,3,0,0,138,0,0,0,0,2,50,1,111,0,0,0,11,3,0,0,41],[0,0,0,0,2,50,1,159,0,0,0,0,0,33,4,27,0,0,0,64,1,0,4,61,0,0,0,0,0,49,4,53],[0,0,0,0,2,0,4,20,0,0,4,244,3,32,0,156,0,0,4,244,4,0,0,65,0,0,0,0,2,4,128,25],[0,0,4,244,3,16,0,156,0,0,0,0,1,4,128,25,0,0,0,64,1,16,2,16,0,0,0,192,2,32,2,16],[0,0,0,0,1,18,1,159,0,0,5,49,1,16,1,199,0,0,128,13,2,0,0,57,0,0,0,2,3,0,0,57],[0,0,5,67,4,0,0,65,0,0,0,10,5,0,0,41,19,201,19,180,0,0,4,15,0,0,0,1,1,32,1,144],[0,0,7,102,0,0,97,61,0,0,0,0,1,0,0,25,0,0,19,202,0,1,4,46,0,0,4,253,5,64,0,156],[0,0,2,81,0,0,97,61,0,0,4,254,3,64,0,156,0,0,2,188,0,0,97,61,0,0,4,255,3,64,0,156],[0,0,7,102,0,0,193,61,0,0,0,4,2,32,0,138,0,0,0,32,2,32,0,140,0,0,7,102,0,0,65,61],[0,0,0,4,1,16,3,112,0,0,0,0,2,1,4,59,0,0,0,0,1,0,4,17,0,0,128,7,1,16,0,140],[0,0,3,215,0,0,193,61,0,0,5,13,1,0,0,65,0,0,0,128,0,16,4,63,0,11,0,0,0,2,0,29],[0,0,0,132,0,32,4,63,0,0,4,244,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,244,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,5,14,1,16,1,199,0,0,128,4,2,0,0,57],[19,201,19,185,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,4,244,3,48,1,151],[0,0,0,32,4,48,0,140,0,0,0,0,4,3,0,25,0,0,0,32,4,0,128,57,0,0,0,31,5,64,1,143],[0,0,0,5,6,64,2,114,0,0,0,251,0,0,97,61,0,0,0,0,7,0,0,25,0,0,0,5,8,112,2,16],[0,0,0,0,9,129,3,79,0,0,0,0,9,9,4,59,0,0,0,128,8,128,0,57,0,0,0,0,0,152,4,53],[0,0,0,1,7,112,0,57,0,0,0,0,8,103,0,75,0,0,0,243,0,0,65,61,0,0,0,0,7,5,0,75],[0,0,1,10,0,0,97,61,0,0,0,5,6,96,2,16,0,0,0,0,7,97,3,79,0,0,0,3,5,80,2,16],[0,0,0,128,6,96,0,57,0,0,0,0,8,6,4,51,0,0,0,0,8,88,1,207,0,0,0,0,8,88,2,47],[0,0,0,0,7,7,4,59,0,0,1,0,5,80,0,137,0,0,0,0,7,87,2,47,0,0,0,0,5,87,1,207],[0,0,0,0,5,133,1,159,0,0,0,0,0,86,4,53,0,0,0,1,2,32,1,144,0,0,3,225,0,0,97,61],[0,0,0,31,1,64,0,57,0,0,0,96,2,16,1,143,0,0,0,128,1,32,1,191,0,0,0,64,0,16,4,63],[0,0,0,32,3,48,0,140,0,0,7,102,0,0,65,61,0,0,0,128,3,0,4,61,0,0,0,0,3,3,0,75],[0,0,4,119,0,0,193,61,0,0,5,10,3,0,0,65,0,0,0,0,0,49,4,53,0,0,0,132,3,32,1,191],[0,0,0,32,4,0,0,57,0,0,0,0,0,67,4,53,0,0,0,196,3,32,0,57,0,0,5,41,4,0,0,65],[0,0,0,0,0,67,4,53,0,0,0,164,2,32,0,57,0,0,0,26,3,0,0,57,0,0,0,0,0,50,4,53],[0,0,0,64,1,16,2,16,0,0,5,20,1,16,1,199,0,0,19,203,0,1,4,48,0,0,5,1,5,64,0,156],[0,0,3,7,0,0,97,61,0,0,5,2,3,64,0,156,0,0,3,182,0,0,97,61,0,0,5,3,3,64,0,156],[0,0,7,102,0,0,193,61,0,0,0,0,3,0,4,22,0,0,0,0,3,3,0,75,0,0,7,102,0,0,193,61],[0,0,0,4,3,32,0,138,0,0,0,128,3,48,0,140,0,0,7,102,0,0,65,61,0,0,0,4,3,16,3,112],[0,0,0,0,3,3,4,59,0,11,0,0,0,3,0,29,0,0,5,9,3,48,0,156,0,0,7,102,0,0,33,61],[0,0,0,100,1,16,3,112,0,0,0,0,1,1,4,59,0,0,5,7,3,16,0,156,0,0,7,102,0,0,33,61],[0,0,0,4,1,16,0,57,19,201,10,44,0,0,4,15,0,0,0,1,4,0,3,103,0,0,0,68,3,64,3,112],[0,0,0,0,3,3,4,59,0,0,0,36,4,64,3,112,0,0,0,0,4,4,4,59,0,0,0,0,5,1,0,25],[0,0,0,0,6,2,0,25,0,0,0,11,1,0,0,41,0,0,0,0,2,4,0,25,0,0,0,0,4,5,0,25],[0,0,0,0,5,6,0,25,19,201,10,70,0,0,4,15,0,0,2,254,0,0,1,61,0,0,4,249,5,64,0,156],[0,0,1,224,0,0,97,61,0,0,4,250,3,64,0,156,0,0,7,102,0,0,193,61,0,0,0,4,3,32,0,138],[0,0,0,64,3,48,0,140,0,0,7,102,0,0,65,61,0,0,0,4,3,16,3,112,0,0,0,0,3,3,4,59],[0,10,0,0,0,3,0,29,0,0,5,7,3,48,0,156,0,0,7,102,0,0,33,61,0,0,0,10,4,32,0,106],[0,0,5,8,2,0,0,65,0,0,0,164,3,64,0,140,0,0,0,0,3,0,0,25,0,0,0,0,3,2,64,25],[0,9,0,0,0,4,0,29,0,0,5,8,4,64,1,151,0,0,0,0,5,4,0,75,0,0,0,0,2,0,160,25],[0,0,5,8,4,64,0,156,0,0,0,0,2,3,192,25,0,0,0,0,2,2,0,75,0,0,7,102,0,0,193,61],[0,0,0,36,2,16,3,112,0,0,0,0,2,2,4,59,0,8,0,0,0,2,0,29,0,0,5,9,2,32,0,156],[0,0,7,102,0,0,33,61,0,0,0,0,2,0,4,17,0,0,0,11,2,32,0,108,0,0,4,43,0,0,193,61],[0,0,0,10,2,0,0,41,0,7,0,4,0,32,0,61,0,0,0,7,1,16,3,96,0,0,0,0,2,1,4,59],[0,0,5,13,1,0,0,65,0,0,0,128,0,16,4,63,0,6,0,0,0,2,0,29,0,0,0,132,0,32,4,63],[0,0,4,244,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,244,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,192,1,32,2,16,0,0,5,14,1,16,1,199,0,0,128,4,2,0,0,57,19,201,19,185,0,0,4,15],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,4,244,3,48,1,151,0,0,0,32,4,48,0,140],[0,0,0,0,4,3,0,25,0,0,0,32,4,0,128,57,0,0,0,31,5,64,1,143,0,0,0,5,6,64,2,114],[0,0,1,138,0,0,97,61,0,0,0,0,7,0,0,25,0,0,0,5,8,112,2,16,0,0,0,0,9,129,3,79],[0,0,0,0,9,9,4,59,0,0,0,128,8,128,0,57,0,0,0,0,0,152,4,53,0,0,0,1,7,112,0,57],[0,0,0,0,8,103,0,75,0,0,1,130,0,0,65,61,0,0,0,0,7,5,0,75,0,0,1,153,0,0,97,61],[0,0,0,5,6,96,2,16,0,0,0,0,7,97,3,79,0,0,0,3,5,80,2,16,0,0,0,128,6,96,0,57],[0,0,0,0,8,6,4,51,0,0,0,0,8,88,1,207,0,0,0,0,8,88,2,47,0,0,0,0,7,7,4,59],[0,0,1,0,5,80,0,137,0,0,0,0,7,87,2,47,0,0,0,0,5,87,1,207,0,0,0,0,5,133,1,159],[0,0,0,0,0,86,4,53,0,0,0,1,2,32,1,144,0,0,5,174,0,0,97,61,0,0,0,31,1,64,0,57],[0,0,0,96,1,16,1,143,0,0,0,128,2,16,1,191,0,5,0,0,0,2,0,29,0,0,0,64,0,32,4,63],[0,0,0,32,2,48,0,140,0,0,7,102,0,0,65,61,0,0,0,128,2,0,4,61,0,0,0,0,2,2,0,75],[0,0,6,118,0,0,193,61,0,0,5,10,2,0,0,65,0,0,0,5,4,0,0,41,0,0,0,0,0,36,4,53],[0,0,0,132,2,16,1,191,0,0,0,32,3,0,0,57,0,0,0,0,0,50,4,53,0,0,0,196,2,16,0,57],[0,0,5,41,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,164,1,16,0,57,0,0,0,26,2,0,0,57],[0,0,0,0,0,33,4,53,0,0,0,64,1,64,2,16,0,0,5,20,1,16,1,199,0,0,19,203,0,1,4,48],[0,0,0,4,3,32,0,138,0,0,0,32,3,48,0,140,0,0,7,102,0,0,65,61,0,0,0,4,3,16,3,112],[0,0,0,0,3,3,4,59,0,5,0,0,0,3,0,29,0,0,5,7,3,48,0,156,0,0,7,102,0,0,33,61],[0,0,0,5,3,0,0,41,0,0,0,35,3,48,0,57,0,0,5,8,4,0,0,65,0,0,0,0,5,35,0,75],[0,0,0,0,5,0,0,25,0,0,0,0,5,4,128,25,0,0,5,8,3,48,1,151,0,0,0,0,6,3,0,75],[0,0,0,0,4,0,128,25,0,0,5,8,3,48,0,156,0,0,0,0,4,5,192,25,0,0,0,0,3,4,0,75],[0,0,7,102,0,0,193,61,0,0,0,5,3,0,0,41,0,0,0,4,3,48,0,57,0,0,0,0,3,49,3,79],[0,0,0,0,13,3,4,59,0,0,5,7,3,208,0,156,0,0,7,102,0,0,33,61,0,0,0,5,3,0,0,41],[0,0,0,36,14,48,0,57,0,0,0,5,3,208,2,16,0,0,0,0,3,227,0,25,0,0,0,0,3,35,0,75],[0,0,7,102,0,0,33,61,0,0,0,9,4,0,0,138,0,0,0,0,3,0,4,17,0,0,0,0,4,67,1,111],[0,0,128,7,4,64,0,140,0,0,4,31,0,0,193,61,0,0,0,0,4,13,0,75,0,0,4,180,0,0,193,61],[0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,0,205,0,0,97,61,0,0,6,22,0,0,1,61],[0,0,0,4,4,32,0,138,0,0,0,128,4,64,0,140,0,0,7,102,0,0,65,61,0,0,0,36,4,16,3,112],[0,0,0,0,4,4,4,59,0,11,0,0,0,4,0,29,0,0,0,68,4,16,3,112,0,0,0,0,4,4,4,59],[0,0,5,7,5,64,0,156,0,0,7,102,0,0,33,61,0,0,0,35,5,64,0,57,0,0,5,8,6,0,0,65],[0,0,0,0,7,37,0,75,0,0,0,0,7,0,0,25,0,0,0,0,7,6,128,25,0,0,5,8,5,80,1,151],[0,0,0,0,8,5,0,75,0,0,0,0,6,0,128,25,0,0,5,8,5,80,0,156,0,0,0,0,6,7,192,25],[0,0,0,0,5,6,0,75,0,0,7,102,0,0,193,61,0,0,0,4,5,64,0,57,0,0,0,0,5,81,3,79],[0,0,0,0,5,5,4,59,0,10,0,0,0,5,0,29,0,0,5,7,5,80,0,156,0,0,7,102,0,0,33,61],[0,0,0,36,5,64,0,57,0,9,0,0,0,5,0,29,0,0,0,10,4,80,0,41,0,0,0,0,2,36,0,75],[0,0,7,102,0,0,33,61,0,0,0,100,1,16,3,112,0,0,0,0,1,1,4,59,0,8,0,0,0,1,0,29],[0,0,0,1,1,16,0,140,0,0,7,102,0,0,33,61,0,0,0,2,1,48,1,144,0,0,0,1,1,16,2,112],[0,0,2,13,0,0,193,61,0,0,0,0,1,0,4,17,0,0,5,42,1,16,0,156,0,0,0,0,1,0,0,25],[0,0,0,1,1,0,64,57,0,0,0,0,1,1,0,75,0,0,3,170,0,0,97,61,0,0,5,43,1,0,0,65],[0,0,0,128,0,16,4,63,0,0,0,0,1,0,4,17,0,7,0,0,0,1,0,29,0,0,0,132,0,16,4,63],[0,0,4,244,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,244,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,192,1,32,2,16,0,0,5,14,1,16,1,199,0,0,128,3,2,0,0,57,19,201,19,180,0,0,4,15],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,4,244,3,48,1,151,0,0,0,32,4,48,0,140],[0,0,0,0,4,3,0,25,0,0,0,32,4,0,128,57,0,0,0,31,5,64,1,143,0,0,0,5,6,64,2,114],[0,0,2,46,0,0,97,61,0,0,0,0,7,0,0,25,0,0,0,5,8,112,2,16,0,0,0,0,9,129,3,79],[0,0,0,0,9,9,4,59,0,0,0,128,8,128,0,57,0,0,0,0,0,152,4,53,0,0,0,1,7,112,0,57],[0,0,0,0,8,103,0,75,0,0,2,38,0,0,65,61,0,0,0,0,7,5,0,75,0,0,2,61,0,0,97,61],[0,0,0,5,6,96,2,16,0,0,0,0,7,97,3,79,0,0,0,3,5,80,2,16,0,0,0,128,6,96,0,57],[0,0,0,0,8,6,4,51,0,0,0,0,8,88,1,207,0,0,0,0,8,88,2,47,0,0,0,0,7,7,4,59],[0,0,1,0,5,80,0,137,0,0,0,0,7,87,2,47,0,0,0,0,5,87,1,207,0,0,0,0,5,133,1,159],[0,0,0,0,0,86,4,53,0,0,0,1,2,32,1,144,0,0,6,36,0,0,97,61,0,0,0,31,1,64,0,57],[0,0,0,96,1,16,1,143,0,0,0,128,1,16,1,191,0,0,0,64,0,16,4,63,0,0,0,32,1,48,0,140],[0,0,7,102,0,0,65,61,0,0,0,128,2,0,4,61,0,0,0,7,1,0,0,41,19,201,11,13,0,0,4,15],[0,0,0,0,2,1,0,25,0,7,0,0,0,2,0,29,0,0,0,11,1,0,0,41,0,0,0,8,3,0,0,41],[0,0,0,9,4,0,0,41,0,0,0,10,5,0,0,41,19,201,15,118,0,0,4,15,0,0,0,7,1,0,0,41],[0,0,2,254,0,0,1,61,0,0,0,4,4,32,0,138,0,0,0,96,4,64,0,140,0,0,7,102,0,0,65,61],[0,0,0,36,4,16,3,112,0,0,0,0,4,4,4,59,0,11,0,0,0,4,0,29,0,0,0,68,4,16,3,112],[0,0,0,0,4,4,4,59,0,0,5,7,5,64,0,156,0,0,7,102,0,0,33,61,0,0,0,35,5,64,0,57],[0,0,5,8,6,0,0,65,0,0,0,0,7,37,0,75,0,0,0,0,7,0,0,25,0,0,0,0,7,6,128,25],[0,0,5,8,5,80,1,151,0,0,0,0,8,5,0,75,0,0,0,0,6,0,128,25,0,0,5,8,5,80,0,156],[0,0,0,0,6,7,192,25,0,0,0,0,5,6,0,75,0,0,7,102,0,0,193,61,0,0,0,4,5,64,0,57],[0,0,0,0,1,81,3,79,0,0,0,0,1,1,4,59,0,10,0,0,0,1,0,29,0,0,5,7,1,16,0,156],[0,0,7,102,0,0,33,61,0,0,0,36,4,64,0,57,0,9,0,0,0,4,0,29,0,0,0,10,1,64,0,41],[0,0,0,0,1,33,0,75,0,0,7,102,0,0,33,61,0,0,0,2,1,48,1,144,0,0,0,1,1,16,2,112],[0,0,2,121,0,0,193,61,0,0,0,0,1,0,4,17,0,0,5,42,1,16,0,156,0,0,0,0,1,0,0,25],[0,0,0,1,1,0,64,57,0,0,0,0,1,1,0,75,0,0,3,170,0,0,97,61,0,0,5,43,1,0,0,65],[0,0,0,128,0,16,4,63,0,0,0,0,1,0,4,17,0,8,0,0,0,1,0,29,0,0,0,132,0,16,4,63],[0,0,4,244,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,244,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,192,1,32,2,16,0,0,5,14,1,16,1,199,0,0,128,3,2,0,0,57,19,201,19,180,0,0,4,15],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,4,244,3,48,1,151,0,0,0,32,4,48,0,140],[0,0,0,0,4,3,0,25,0,0,0,32,4,0,128,57,0,0,0,31,5,64,1,143,0,0,0,5,6,64,2,114],[0,0,2,154,0,0,97,61,0,0,0,0,7,0,0,25,0,0,0,5,8,112,2,16,0,0,0,0,9,129,3,79],[0,0,0,0,9,9,4,59,0,0,0,128,8,128,0,57,0,0,0,0,0,152,4,53,0,0,0,1,7,112,0,57],[0,0,0,0,8,103,0,75,0,0,2,146,0,0,65,61,0,0,0,0,7,5,0,75,0,0,2,169,0,0,97,61],[0,0,0,5,6,96,2,16,0,0,0,0,7,97,3,79,0,0,0,3,5,80,2,16,0,0,0,128,6,96,0,57],[0,0,0,0,8,6,4,51,0,0,0,0,8,88,1,207,0,0,0,0,8,88,2,47,0,0,0,0,7,7,4,59],[0,0,1,0,5,80,0,137,0,0,0,0,7,87,2,47,0,0,0,0,5,87,1,207,0,0,0,0,5,133,1,159],[0,0,0,0,0,86,4,53,0,0,0,1,2,32,1,144,0,0,5,203,0,0,97,61,0,0,0,31,1,64,0,57],[0,0,0,96,1,16,1,143,0,0,0,128,1,16,1,191,0,0,0,64,0,16,4,63,0,0,0,32,1,48,0,140],[0,0,7,102,0,0,65,61,0,0,0,128,2,0,4,61,0,0,0,8,1,0,0,41,19,201,11,13,0,0,4,15],[0,0,0,0,2,1,0,25,0,8,0,0,0,2,0,29,0,0,0,11,1,0,0,41,0,0,0,9,3,0,0,41],[0,0,0,10,4,0,0,41,19,201,11,57,0,0,4,15,0,0,0,8,1,0,0,41,0,0,2,254,0,0,1,61],[0,0,0,0,3,0,4,22,0,0,0,0,3,3,0,75,0,0,7,102,0,0,193,61,0,0,0,4,2,32,0,138],[0,0,0,32,2,32,0,140,0,0,7,102,0,0,65,61,0,0,0,4,1,16,3,112,0,0,0,0,1,1,4,59],[0,11,0,0,0,1,0,29,0,0,5,9,1,16,0,156,0,0,7,102,0,0,33,61,0,0,0,11,1,0,0,41],[0,0,0,0,0,16,4,53,0,0,0,32,0,0,4,63,0,0,4,244,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,4,244,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,5,15,1,16,1,199],[0,0,128,16,2,0,0,57,19,201,19,185,0,0,4,15,0,0,0,1,2,32,1,144,0,0,7,102,0,0,97,61],[0,0,0,64,2,0,4,61,0,0,5,32,3,32,0,156,0,0,3,211,0,0,33,61,0,0,0,0,1,1,4,59],[0,0,0,64,3,32,0,57,0,0,0,64,0,48,4,63,0,0,0,0,1,1,4,26,0,0,0,255,3,16,1,143],[0,0,0,1,4,48,0,140,0,0,4,25,0,0,33,61,0,0,0,0,3,50,4,54,0,0,0,8,1,16,2,112],[0,0,0,255,1,16,1,143,0,0,0,1,4,16,0,140,0,0,4,25,0,0,33,61,0,0,0,0,0,19,4,53],[0,0,0,0,2,2,4,51,0,0,0,1,1,32,0,140,0,0,4,25,0,0,33,61,0,0,0,1,1,0,0,57],[0,0,0,0,2,2,0,75,0,0,2,255,0,0,193,61,0,0,0,11,1,0,0,41,0,0,5,63,1,16,1,152],[0,0,0,0,1,0,0,25,0,0,7,33,0,0,193,61,0,0,0,1,1,16,1,143,0,0,2,255,0,0,1,61],[0,0,0,0,3,0,4,22,0,0,0,0,3,3,0,75,0,0,7,102,0,0,193,61,0,0,0,4,2,32,0,138],[0,0,0,64,2,32,0,140,0,0,7,102,0,0,65,61,0,0,0,4,2,16,3,112,0,0,0,0,3,2,4,59],[0,0,5,9,2,48,0,156,0,0,7,102,0,0,33,61,0,0,0,36,1,16,3,112,0,0,0,0,2,1,4,59],[0,0,0,0,1,3,0,25,19,201,11,13,0,0,4,15,0,0,5,9,1,16,1,151,0,0,0,64,2,0,4,61],[0,0,0,0,0,18,4,53,0,0,4,244,1,0,0,65,0,0,4,244,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,64,1,32,2,16,0,0,5,44,1,16,1,199,0,0,19,202,0,1,4,46,0,0,0,4,4,32,0,138],[0,0,0,128,4,64,0,140,0,0,7,102,0,0,65,61,0,0,0,36,4,16,3,112,0,0,0,0,4,4,4,59],[0,11,0,0,0,4,0,29,0,0,0,4,4,16,3,112,0,0,0,0,4,4,4,59,0,10,0,0,0,4,0,29],[0,0,0,68,4,16,3,112,0,0,0,0,4,4,4,59,0,0,5,7,5,64,0,156,0,0,7,102,0,0,33,61],[0,0,0,35,5,64,0,57,0,0,5,8,6,0,0,65,0,0,0,0,7,37,0,75,0,0,0,0,7,0,0,25],[0,0,0,0,7,6,128,25,0,0,5,8,5,80,1,151,0,0,0,0,8,5,0,75,0,0,0,0,6,0,128,25],[0,0,5,8,5,80,0,156,0,0,0,0,6,7,192,25,0,0,0,0,5,6,0,75,0,0,7,102,0,0,193,61],[0,0,0,4,5,64,0,57,0,0,0,0,5,81,3,79,0,0,0,0,5,5,4,59,0,9,0,0,0,5,0,29],[0,0,5,7,5,80,0,156,0,0,7,102,0,0,33,61,0,0,0,36,5,64,0,57,0,8,0,0,0,5,0,29],[0,0,0,9,4,80,0,41,0,0,0,0,2,36,0,75,0,0,7,102,0,0,33,61,0,0,0,100,1,16,3,112],[0,0,0,0,1,1,4,59,0,7,0,0,0,1,0,29,0,0,0,1,1,16,0,140,0,0,7,102,0,0,33,61],[0,0,0,2,1,48,1,144,0,0,0,1,1,16,2,112,0,0,3,55,0,0,193,61,0,0,0,0,1,0,4,17],[0,0,5,42,1,16,0,156,0,0,0,0,1,0,0,25,0,0,0,1,1,0,64,57,0,0,0,0,1,1,0,75],[0,0,3,170,0,0,97,61,0,0,5,43,1,0,0,65,0,0,0,128,0,16,4,63,0,0,0,0,1,0,4,17],[0,6,0,0,0,1,0,29,0,0,0,132,0,16,4,63,0,0,4,244,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,4,244,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,5,14,1,16,1,199],[0,0,128,3,2,0,0,57,19,201,19,180,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,0,4,244,3,48,1,151,0,0,0,32,4,48,0,140,0,0,0,0,4,3,0,25,0,0,0,32,4,0,128,57],[0,0,0,31,5,64,1,143,0,0,0,5,6,64,2,114,0,0,3,88,0,0,97,61,0,0,0,0,7,0,0,25],[0,0,0,5,8,112,2,16,0,0,0,0,9,129,3,79,0,0,0,0,9,9,4,59,0,0,0,128,8,128,0,57],[0,0,0,0,0,152,4,53,0,0,0,1,7,112,0,57,0,0,0,0,8,103,0,75,0,0,3,80,0,0,65,61],[0,0,0,0,7,5,0,75,0,0,3,103,0,0,97,61,0,0,0,5,6,96,2,16,0,0,0,0,7,97,3,79],[0,0,0,3,5,80,2,16,0,0,0,128,6,96,0,57,0,0,0,0,8,6,4,51,0,0,0,0,8,88,1,207],[0,0,0,0,8,88,2,47,0,0,0,0,7,7,4,59,0,0,1,0,5,80,0,137,0,0,0,0,7,87,2,47],[0,0,0,0,5,87,1,207,0,0,0,0,5,133,1,159,0,0,0,0,0,86,4,53,0,0,0,1,2,32,1,144],[0,0,6,65,0,0,97,61,0,0,0,31,1,64,0,57,0,0,0,96,1,16,1,143,0,0,0,128,1,16,1,191],[0,0,0,64,0,16,4,63,0,0,0,32,1,48,0,140,0,0,7,102,0,0,65,61,0,0,0,6,1,0,0,41],[0,0,0,11,2,0,0,41,0,0,0,10,3,0,0,41,0,0,0,8,4,0,0,41,0,0,0,9,5,0,0,41],[19,201,10,70,0,0,4,15,0,0,0,0,2,1,0,25,0,10,0,0,0,2,0,29,0,0,0,11,1,0,0,41],[0,0,0,7,3,0,0,41,0,0,0,8,4,0,0,41,0,0,0,9,5,0,0,41,19,201,15,118,0,0,4,15],[0,0,4,117,0,0,1,61,0,0,0,4,4,32,0,138,0,0,0,96,4,64,0,140,0,0,7,102,0,0,65,61],[0,0,0,36,4,16,3,112,0,0,0,0,4,4,4,59,0,11,0,0,0,4,0,29,0,0,0,4,4,16,3,112],[0,0,0,0,4,4,4,59,0,10,0,0,0,4,0,29,0,0,0,68,4,16,3,112,0,0,0,0,4,4,4,59],[0,0,5,7,5,64,0,156,0,0,7,102,0,0,33,61,0,0,0,35,5,64,0,57,0,0,5,8,6,0,0,65],[0,0,0,0,7,37,0,75,0,0,0,0,7,0,0,25,0,0,0,0,7,6,128,25,0,0,5,8,5,80,1,151],[0,0,0,0,8,5,0,75,0,0,0,0,6,0,128,25,0,0,5,8,5,80,0,156,0,0,0,0,6,7,192,25],[0,0,0,0,5,6,0,75,0,0,7,102,0,0,193,61,0,0,0,4,5,64,0,57,0,0,0,0,1,81,3,79],[0,0,0,0,1,1,4,59,0,9,0,0,0,1,0,29,0,0,5,7,1,16,0,156,0,0,7,102,0,0,33,61],[0,0,0,36,4,64,0,57,0,8,0,0,0,4,0,29,0,0,0,9,1,64,0,41,0,0,0,0,1,33,0,75],[0,0,7,102,0,0,33,61,0,0,0,2,1,48,1,144,0,0,0,1,1,16,2,112,0,0,3,168,0,0,193,61],[0,0,0,0,1,0,4,17,0,0,5,42,1,16,0,156,0,0,0,0,1,0,0,25,0,0,0,1,1,0,64,57],[0,0,0,0,1,1,0,75,0,0,4,51,0,0,193,61,0,0,5,10,1,0,0,65,0,0,0,128,0,16,4,63],[0,0,0,32,1,0,0,57,0,0,0,132,0,16,4,63,0,0,0,36,1,0,0,57,0,0,0,164,0,16,4,63],[0,0,5,68,1,0,0,65,0,0,0,196,0,16,4,63,0,0,5,69,1,0,0,65,0,0,0,228,0,16,4,63],[0,0,5,70,1,0,0,65,0,0,19,203,0,1,4,48,0,0,0,0,3,0,4,22,0,0,0,0,3,3,0,75],[0,0,7,102,0,0,193,61,0,0,0,4,2,32,0,138,0,0,0,32,2,32,0,140,0,0,7,102,0,0,65,61],[0,0,0,4,1,16,3,112,0,0,0,0,1,1,4,59,0,0,5,9,2,16,0,156,0,0,7,102,0,0,33,61],[0,0,0,192,2,0,0,57,0,0,0,64,0,32,4,63,0,0,0,128,0,0,4,63,0,0,0,160,0,0,4,63],[0,0,0,0,0,16,4,53,0,0,0,32,0,0,4,63,0,0,4,244,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,4,244,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,5,15,1,16,1,199],[0,0,128,16,2,0,0,57,19,201,19,185,0,0,4,15,0,0,0,1,2,32,1,144,0,0,7,102,0,0,97,61],[0,0,0,64,2,0,4,61,0,0,5,65,3,32,0,156,0,0,4,4,0,0,65,61,0,0,5,58,1,0,0,65],[0,0,0,0,0,16,4,53,0,0,0,65,1,0,0,57,0,0,4,28,0,0,1,61,0,0,5,10,1,0,0,65],[0,0,0,128,0,16,4,63,0,0,0,32,1,0,0,57,0,0,0,132,0,16,4,63,0,0,0,20,1,0,0,57],[0,0,0,164,0,16,4,63,0,0,5,62,1,0,0,65,0,0,0,196,0,16,4,63,0,0,5,12,1,0,0,65],[0,0,19,203,0,1,4,48,0,0,0,64,2,0,4,61,0,0,0,31,4,48,1,143,0,0,0,5,5,48,2,114],[0,0,3,238,0,0,97,61,0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16,0,0,0,0,8,114,0,25],[0,0,0,0,7,113,3,79,0,0,0,0,7,7,4,59,0,0,0,0,0,120,4,53,0,0,0,1,6,96,0,57],[0,0,0,0,7,86,0,75,0,0,3,230,0,0,65,61,0,0,0,0,6,4,0,75,0,0,3,253,0,0,97,61],[0,0,0,5,5,80,2,16,0,0,0,0,1,81,3,79,0,0,0,0,5,82,0,25,0,0,0,3,4,64,2,16],[0,0,0,0,6,5,4,51,0,0,0,0,6,70,1,207,0,0,0,0,6,70,2,47,0,0,0,0,1,1,4,59],[0,0,1,0,4,64,0,137,0,0,0,0,1,65,2,47,0,0,0,0,1,65,1,207,0,0,0,0,1,97,1,159],[0,0,0,0,0,21,4,53,0,0,4,244,1,0,0,65,0,0,4,244,4,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,64,1,32,2,16,0,0,0,96,2,48,2,16,0,0,0,0,1,33,1,159,0,0,19,203,0,1,4,48],[0,0,0,0,1,1,4,59,0,0,0,64,3,32,0,57,0,0,0,64,0,48,4,63,0,0,0,0,3,1,4,26],[0,0,0,255,1,48,1,143,0,0,0,2,4,16,0,140,0,0,4,25,0,0,129,61,0,0,0,0,1,18,4,54],[0,0,0,8,3,48,2,112,0,0,0,255,3,48,1,143,0,0,0,1,4,48,0,140,0,0,4,25,0,0,33,61],[0,0,0,0,0,49,4,53,0,0,0,0,3,2,4,51,0,0,0,1,2,48,0,140,0,0,4,25,0,0,33,61],[0,0,0,64,2,0,4,61,0,0,0,0,3,50,4,54,0,0,0,0,1,1,4,51,0,0,0,1,4,16,0,140],[0,0,7,26,0,0,161,61,0,0,5,58,1,0,0,65,0,0,0,0,0,16,4,53,0,0,0,33,1,0,0,57],[0,0,0,4,0,16,4,63,0,0,5,31,1,0,0,65,0,0,19,203,0,1,4,48,0,0,5,10,1,0,0,65],[0,0,0,128,0,16,4,63,0,0,0,32,1,0,0,57,0,0,0,132,0,16,4,63,0,0,0,65,1,0,0,57],[0,0,0,164,0,16,4,63,0,0,5,51,1,0,0,65,0,0,0,196,0,16,4,63,0,0,5,52,1,0,0,65],[0,0,0,228,0,16,4,63,0,0,5,53,1,0,0,65,0,0,6,33,0,0,1,61,0,0,5,10,1,0,0,65],[0,0,0,128,0,16,4,63,0,0,0,32,1,0,0,57,0,0,0,132,0,16,4,63,0,0,0,21,1,0,0,57],[0,0,0,164,0,16,4,63,0,0,5,11,1,0,0,65,0,0,3,222,0,0,1,61,0,0,5,43,1,0,0,65],[0,0,0,128,0,16,4,63,0,0,0,0,1,0,4,17,0,7,0,0,0,1,0,29,0,0,0,132,0,16,4,63],[0,0,4,244,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,244,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,192,1,32,2,16,0,0,5,14,1,16,1,199,0,0,128,3,2,0,0,57,19,201,19,180,0,0,4,15],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,4,244,3,48,1,151,0,0,0,32,4,48,0,140],[0,0,0,0,4,3,0,25,0,0,0,32,4,0,128,57,0,0,0,31,5,64,1,143,0,0,0,5,6,64,2,114],[0,0,4,82,0,0,97,61,0,0,0,0,7,0,0,25,0,0,0,5,8,112,2,16,0,0,0,0,9,129,3,79],[0,0,0,0,9,9,4,59,0,0,0,128,8,128,0,57,0,0,0,0,0,152,4,53,0,0,0,1,7,112,0,57],[0,0,0,0,8,103,0,75,0,0,4,74,0,0,65,61,0,0,0,0,7,5,0,75,0,0,4,97,0,0,97,61],[0,0,0,5,6,96,2,16,0,0,0,0,7,97,3,79,0,0,0,3,5,80,2,16,0,0,0,128,6,96,0,57],[0,0,0,0,8,6,4,51,0,0,0,0,8,88,1,207,0,0,0,0,8,88,2,47,0,0,0,0,7,7,4,59],[0,0,1,0,5,80,0,137,0,0,0,0,7,87,2,47,0,0,0,0,5,87,1,207,0,0,0,0,5,133,1,159],[0,0,0,0,0,86,4,53,0,0,0,1,2,32,1,144,0,0,5,232,0,0,97,61,0,0,0,31,1,64,0,57],[0,0,0,96,1,16,1,143,0,0,0,128,1,16,1,191,0,0,0,64,0,16,4,63,0,0,0,32,1,48,0,140],[0,0,7,102,0,0,65,61,0,0,0,7,1,0,0,41,0,0,0,11,2,0,0,41,0,0,0,10,3,0,0,41],[0,0,0,8,4,0,0,41,0,0,0,9,5,0,0,41,19,201,10,70,0,0,4,15,0,0,0,0,2,1,0,25],[0,10,0,0,0,2,0,29,0,0,0,11,1,0,0,41,0,0,0,8,3,0,0,41,0,0,0,9,4,0,0,41],[19,201,11,57,0,0,4,15,0,0,0,10,1,0,0,41,0,0,2,254,0,0,1,61,0,0,0,0,3,0,4,22],[0,0,0,0,3,3,0,75,0,0,6,5,0,0,193,61,0,0,5,17,1,0,0,65,0,0,0,0,0,16,4,57],[0,0,128,2,2,0,0,57,0,0,0,4,0,32,4,67,0,0,4,244,1,0,0,65,0,0,0,0,3,0,4,20],[0,0,4,244,4,48,0,156,0,0,0,0,3,1,128,25,0,0,0,192,1,48,2,16,0,0,5,18,1,16,1,199],[19,201,19,185,0,0,4,15,0,0,0,1,2,32,1,144,0,0,9,208,0,0,97,61,0,0,0,0,1,1,4,59],[0,0,0,0,1,1,0,75,0,0,7,102,0,0,97,61,0,0,0,64,4,0,4,61,0,0,0,36,1,64,0,57],[0,0,0,11,2,0,0,41,0,0,0,0,0,33,4,53,0,0,5,38,1,0,0,65,0,0,0,0,0,20,4,53],[0,0,0,4,1,64,0,57,0,0,128,16,2,0,0,57,0,0,0,0,0,33,4,53,0,0,4,244,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,4,244,3,32,0,156,0,0,0,0,2,1,128,25,0,0,4,244,3,64,0,156],[0,10,0,0,0,4,0,29,0,0,0,0,1,4,64,25,0,0,0,64,1,16,2,16,0,0,0,192,2,32,2,16],[0,0,0,0,1,18,1,159,0,0,5,24,1,16,1,199,0,0,128,2,2,0,0,57,19,201,19,180,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,7,104,0,0,97,61,0,0,0,10,1,0,0,41,0,0,5,7,1,16,0,156],[0,0,3,211,0,0,33,61,0,0,0,10,1,0,0,41,0,0,0,64,0,16,4,63,0,0,4,244,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,4,244,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,5,39,1,16,1,199,0,0,128,13,2,0,0,57,0,0,0,4,3,0,0,57,0,0,128,7,5,0,0,57],[0,0,128,16,7,0,0,57,0,0,5,40,4,0,0,65,0,0,0,11,6,0,0,41,0,0,0,202,0,0,1,61],[0,0,0,5,5,0,0,41,0,0,0,0,4,82,0,73,0,0,0,132,2,80,0,57,0,0,0,195,4,64,0,138],[0,0,5,8,6,0,0,65,0,0,0,0,7,0,0,25,0,0,0,0,5,0,0,25,0,0,0,5,8,112,2,16],[0,0,0,0,8,232,0,25,0,0,0,0,8,129,3,79,0,0,0,0,8,8,4,59,0,0,0,0,9,72,0,75],[0,0,0,0,9,0,0,25,0,0,0,0,9,6,128,25,0,0,5,8,10,64,1,151,0,0,5,8,11,128,1,151],[0,0,0,0,12,171,0,75,0,0,0,0,12,0,0,25,0,0,0,0,12,6,64,25,0,0,0,0,10,171,1,63],[0,0,5,8,10,160,0,156,0,0,0,0,12,9,192,25,0,0,0,0,9,12,0,75,0,0,7,102,0,0,193,61],[0,0,0,0,8,130,0,25,0,0,0,0,8,129,3,79,0,0,0,0,8,8,4,59,0,0,0,0,5,88,0,25],[0,0,0,0,8,133,0,75,0,0,0,0,8,0,0,25,0,0,0,1,8,0,64,57,0,0,0,1,8,128,1,144],[0,0,8,11,0,0,193,61,0,0,0,1,7,112,0,57,0,0,0,0,8,215,0,75,0,0,4,187,0,0,65,61],[0,0,0,0,1,0,4,22,0,0,0,0,1,81,0,75,0,0,6,22,0,0,193,61,0,4,5,9,0,48,1,155],[0,0,5,8,8,0,0,65,0,0,0,0,9,0,0,25,0,8,0,0,0,13,0,29,0,7,0,0,0,14,0,29],[0,0,0,5,1,144,2,16,0,0,0,0,2,225,0,25,0,0,0,1,1,0,3,103,0,0,0,0,2,33,3,79],[0,0,0,0,2,2,4,59,0,0,0,5,3,0,0,41,0,0,0,0,3,48,0,121,0,0,0,195,3,48,0,138],[0,0,0,0,4,50,0,75,0,0,0,0,4,0,0,25,0,0,0,0,4,8,128,25,0,0,5,8,3,48,1,151],[0,0,5,8,5,32,1,151,0,0,0,0,6,53,0,75,0,0,0,0,6,0,0,25,0,0,0,0,6,8,64,25],[0,0,0,0,3,53,1,63,0,0,5,8,3,48,0,156,0,0,0,0,6,4,192,25,0,0,0,0,3,6,0,75],[0,0,7,102,0,0,193,61,0,10,0,0,0,9,0,29,0,0,0,0,2,226,0,25,0,9,0,0,0,2,0,29],[0,0,0,96,2,32,0,57,0,0,0,0,1,33,3,79,0,0,0,0,1,1,4,59,0,6,0,0,0,1,0,29],[0,0,5,17,1,0,0,65,0,0,0,0,0,16,4,57,0,0,0,11,1,0,0,41,0,0,0,4,0,16,4,67],[0,0,0,0,1,0,4,20,0,0,4,244,2,16,0,156,0,0,4,244,1,0,128,65,0,0,0,192,1,16,2,16],[0,0,5,18,1,16,1,199,0,0,128,2,2,0,0,57,19,201,19,185,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,9,208,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75,0,0,0,8,13,0,0,41],[0,0,0,7,14,0,0,41,0,0,5,8,8,0,0,65,0,0,0,10,9,0,0,41,0,0,0,9,11,0,0,41],[0,0,7,102,0,0,97,61,0,0,0,64,10,0,4,61,0,0,5,55,1,0,0,65,0,0,0,0,0,26,4,53],[0,0,0,4,1,160,0,57,0,0,0,64,2,0,0,57,0,0,0,0,0,33,4,53,0,0,0,1,1,0,3,103],[0,0,0,0,2,177,3,79,0,0,0,0,2,2,4,59,0,0,0,68,3,160,0,57,0,0,0,0,0,35,4,53],[0,0,0,32,2,176,0,57,0,0,0,0,3,33,3,79,0,0,0,0,3,3,4,59,0,0,5,9,4,48,0,156],[0,0,7,102,0,0,33,61,0,0,0,100,4,160,0,57,0,0,0,0,0,52,4,53,0,0,0,32,2,32,0,57],[0,0,0,0,3,33,3,79,0,0,0,0,3,3,4,59,0,0,0,0,4,3,0,75,0,0,0,0,4,0,0,25],[0,0,0,1,4,0,192,57,0,0,0,0,4,67,0,75,0,0,7,102,0,0,193,61,0,0,0,132,4,160,0,57],[0,0,0,0,0,52,4,53,0,0,0,32,3,32,0,57,0,0,0,0,3,49,3,79,0,0,0,0,3,3,4,59],[0,0,0,164,4,160,0,57,0,0,0,0,0,52,4,53,0,0,0,64,2,32,0,57,0,0,0,0,2,33,3,79],[0,0,0,0,2,2,4,59,0,0,0,0,3,0,0,49,0,0,0,0,4,179,0,73,0,0,0,31,4,64,0,138],[0,0,0,0,5,66,0,75,0,0,0,0,5,0,0,25,0,0,0,0,5,8,128,25,0,0,5,8,4,64,1,151],[0,0,5,8,6,32,1,151,0,0,0,0,7,70,0,75,0,0,0,0,7,0,0,25,0,0,0,0,7,8,64,25],[0,0,0,0,4,70,1,63,0,0,5,8,4,64,0,156,0,0,0,0,7,5,192,25,0,0,0,0,4,7,0,75],[0,0,7,102,0,0,193,61,0,0,0,0,4,178,0,25,0,0,0,0,2,65,3,79,0,0,0,0,2,2,4,59],[0,0,5,7,5,32,0,156,0,0,7,102,0,0,33,61,0,0,0,32,4,64,0,57,0,0,0,0,3,35,0,73],[0,0,0,0,5,52,0,75,0,0,0,0,5,0,0,25,0,0,0,0,5,8,32,25,0,0,5,8,3,48,1,151],[0,0,5,8,6,64,1,151,0,0,0,0,7,54,0,75,0,0,0,0,7,0,0,25,0,0,0,0,7,8,64,25],[0,0,0,0,3,54,1,63,0,0,5,8,3,48,0,156,0,0,0,0,7,5,192,25,0,0,0,0,3,7,0,75],[0,0,7,102,0,0,193,61,0,0,0,196,3,160,0,57,0,0,0,160,5,0,0,57,0,0,0,0,0,83,4,53],[0,0,0,228,3,160,0,57,0,0,0,0,0,35,4,53,0,0,0,0,3,65,3,79,0,0,1,4,1,160,0,57],[0,0,0,5,4,32,2,114,0,0,5,107,0,0,97,61,0,0,0,0,5,0,0,25,0,0,0,5,6,80,2,16],[0,0,0,0,7,97,0,25,0,0,0,0,6,99,3,79,0,0,0,0,6,6,4,59,0,0,0,0,0,103,4,53],[0,0,0,1,5,80,0,57,0,0,0,0,6,69,0,75,0,0,5,99,0,0,65,61,0,0,0,31,5,32,1,144],[0,0,5,122,0,0,97,61,0,0,0,5,4,64,2,16,0,0,0,0,3,67,3,79,0,0,0,0,4,65,0,25],[0,0,0,3,5,80,2,16,0,0,0,0,6,4,4,51,0,0,0,0,6,86,1,207,0,0,0,0,6,86,2,47],[0,0,0,0,3,3,4,59,0,0,1,0,5,80,0,137,0,0,0,0,3,83,2,47,0,0,0,0,3,83,1,207],[0,0,0,0,3,99,1,159,0,0,0,0,0,52,4,53,0,0,0,0,1,18,0,25,0,0,0,0,0,1,4,53],[0,0,0,36,1,160,0,57,0,0,0,4,3,0,0,41,0,0,0,0,0,49,4,53,0,0,0,0,1,0,4,20],[0,0,0,11,3,0,0,41,0,0,0,4,3,48,0,140,0,0,5,167,0,0,97,61,0,0,0,31,2,32,0,57],[0,0,0,32,3,0,0,138,0,0,0,0,2,50,1,111,0,0,5,56,3,32,0,156,0,0,5,56,2,0,128,65],[0,0,4,244,3,160,0,156,0,0,4,244,4,0,0,65,0,9,0,0,0,10,0,29,0,0,0,0,3,4,0,25],[0,0,0,0,3,10,64,25,0,0,0,64,3,48,2,16,0,0,0,96,2,32,2,16,0,0,0,0,2,50,1,159],[0,0,4,244,3,16,0,156,0,0,0,0,1,4,128,25,0,0,0,192,1,16,2,16,0,0,0,0,1,18,1,159],[0,0,5,57,1,16,0,65,0,0,0,6,3,0,0,41,0,0,0,0,2,3,0,75,0,0,5,158,0,0,97,61],[0,0,5,39,1,16,1,199,0,0,128,9,2,0,0,57,0,0,0,11,4,0,0,41,0,0,0,0,5,0,0,25],[19,201,19,180,0,0,4,15,0,0,5,160,0,0,1,61,0,0,0,11,2,0,0,41,19,201,19,180,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,0,8,13,0,0,41,0,0,0,7,14,0,0,41,0,0,5,8,8,0,0,65],[0,0,0,10,9,0,0,41,0,0,0,9,10,0,0,41,0,0,7,170,0,0,97,61,0,0,5,7,1,160,0,156],[0,0,3,211,0,0,33,61,0,0,0,64,0,160,4,63,0,0,0,1,9,144,0,57,0,0,0,0,1,217,0,75],[0,0,4,224,0,0,65,61,0,0,0,205,0,0,1,61,0,0,0,64,2,0,4,61,0,0,0,31,4,48,1,143],[0,0,0,5,5,48,2,114,0,0,5,187,0,0,97,61,0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16],[0,0,0,0,8,114,0,25,0,0,0,0,7,113,3,79,0,0,0,0,7,7,4,59,0,0,0,0,0,120,4,53],[0,0,0,1,6,96,0,57,0,0,0,0,7,86,0,75,0,0,5,179,0,0,65,61,0,0,0,0,6,4,0,75],[0,0,5,202,0,0,97,61,0,0,0,5,5,80,2,16,0,0,0,0,1,81,3,79,0,0,0,0,5,82,0,25],[0,0,0,3,4,64,2,16,0,0,0,0,6,5,4,51,0,0,0,0,6,70,1,207,0,0,0,0,6,70,2,47],[0,0,0,0,1,1,4,59,0,0,1,0,4,64,0,137,0,0,0,0,1,65,2,47,0,0,0,0,1,65,1,207],[0,0,0,0,1,97,1,159,0,0,0,0,0,21,4,53,0,0,3,253,0,0,1,61,0,0,0,64,2,0,4,61],[0,0,0,31,4,48,1,143,0,0,0,5,5,48,2,114,0,0,5,216,0,0,97,61,0,0,0,0,6,0,0,25],[0,0,0,5,7,96,2,16,0,0,0,0,8,114,0,25,0,0,0,0,7,113,3,79,0,0,0,0,7,7,4,59],[0,0,0,0,0,120,4,53,0,0,0,1,6,96,0,57,0,0,0,0,7,86,0,75,0,0,5,208,0,0,65,61],[0,0,0,0,6,4,0,75,0,0,5,231,0,0,97,61,0,0,0,5,5,80,2,16,0,0,0,0,1,81,3,79],[0,0,0,0,5,82,0,25,0,0,0,3,4,64,2,16,0,0,0,0,6,5,4,51,0,0,0,0,6,70,1,207],[0,0,0,0,6,70,2,47,0,0,0,0,1,1,4,59,0,0,1,0,4,64,0,137,0,0,0,0,1,65,2,47],[0,0,0,0,1,65,1,207,0,0,0,0,1,97,1,159,0,0,0,0,0,21,4,53,0,0,3,253,0,0,1,61],[0,0,0,64,2,0,4,61,0,0,0,31,4,48,1,143,0,0,0,5,5,48,2,114,0,0,5,245,0,0,97,61],[0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16,0,0,0,0,8,114,0,25,0,0,0,0,7,113,3,79],[0,0,0,0,7,7,4,59,0,0,0,0,0,120,4,53,0,0,0,1,6,96,0,57,0,0,0,0,7,86,0,75],[0,0,5,237,0,0,65,61,0,0,0,0,6,4,0,75,0,0,3,253,0,0,97,61,0,0,0,5,5,80,2,16],[0,0,0,0,1,81,3,79,0,0,0,0,5,82,0,25,0,0,0,3,4,64,2,16,0,0,0,0,6,5,4,51],[0,0,0,0,6,70,1,207,0,0,0,0,6,70,2,47,0,0,0,0,1,1,4,59,0,0,1,0,4,64,0,137],[0,0,0,0,1,65,2,47,0,0,0,0,1,65,1,207,0,0,0,0,1,97,1,159,0,0,0,0,0,21,4,53],[0,0,3,253,0,0,1,61,0,0,5,10,3,0,0,65,0,0,0,0,0,49,4,53,0,0,0,132,3,32,1,191],[0,0,0,32,4,0,0,57,0,0,0,0,0,67,4,53,0,0,0,228,3,32,0,57,0,0,5,35,4,0,0,65],[0,0,0,0,0,67,4,53,0,0,0,196,3,32,0,57,0,0,5,36,4,0,0,65,0,0,0,0,0,67,4,53],[0,0,0,164,2,32,0,57,0,0,0,56,3,0,0,57,0,0,0,0,0,50,4,53,0,0,0,64,1,16,2,16],[0,0,5,37,1,16,1,199,0,0,19,203,0,1,4,48,0,0,5,10,1,0,0,65,0,0,0,128,0,16,4,63],[0,0,0,32,1,0,0,57,0,0,0,132,0,16,4,63,0,0,0,69,1,0,0,57,0,0,0,164,0,16,4,63],[0,0,5,59,1,0,0,65,0,0,0,196,0,16,4,63,0,0,5,60,1,0,0,65,0,0,0,228,0,16,4,63],[0,0,5,61,1,0,0,65,0,0,1,4,0,16,4,63,0,0,5,54,1,0,0,65,0,0,19,203,0,1,4,48],[0,0,0,64,2,0,4,61,0,0,0,31,4,48,1,143,0,0,0,5,5,48,2,114,0,0,6,49,0,0,97,61],[0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16,0,0,0,0,8,114,0,25,0,0,0,0,7,113,3,79],[0,0,0,0,7,7,4,59,0,0,0,0,0,120,4,53,0,0,0,1,6,96,0,57,0,0,0,0,7,86,0,75],[0,0,6,41,0,0,65,61,0,0,0,0,6,4,0,75,0,0,6,64,0,0,97,61,0,0,0,5,5,80,2,16],[0,0,0,0,1,81,3,79,0,0,0,0,5,82,0,25,0,0,0,3,4,64,2,16,0,0,0,0,6,5,4,51],[0,0,0,0,6,70,1,207,0,0,0,0,6,70,2,47,0,0,0,0,1,1,4,59,0,0,1,0,4,64,0,137],[0,0,0,0,1,65,2,47,0,0,0,0,1,65,1,207,0,0,0,0,1,97,1,159,0,0,0,0,0,21,4,53],[0,0,3,253,0,0,1,61,0,0,0,64,2,0,4,61,0,0,0,31,4,48,1,143,0,0,0,5,5,48,2,114],[0,0,6,78,0,0,97,61,0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16,0,0,0,0,8,114,0,25],[0,0,0,0,7,113,3,79,0,0,0,0,7,7,4,59,0,0,0,0,0,120,4,53,0,0,0,1,6,96,0,57],[0,0,0,0,7,86,0,75,0,0,6,70,0,0,65,61,0,0,0,0,6,4,0,75,0,0,6,93,0,0,97,61],[0,0,0,5,5,80,2,16,0,0,0,0,1,81,3,79,0,0,0,0,5,82,0,25,0,0,0,3,4,64,2,16],[0,0,0,0,6,5,4,51,0,0,0,0,6,70,1,207,0,0,0,0,6,70,2,47,0,0,0,0,1,1,4,59],[0,0,1,0,4,64,0,137,0,0,0,0,1,65,2,47,0,0,0,0,1,65,1,207,0,0,0,0,1,97,1,159],[0,0,0,0,0,21,4,53,0,0,3,253,0,0,1,61,0,0,0,64,1,0,4,61,0,0,0,132,2,16,0,57],[0,0,5,45,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,100,2,16,0,57,0,0,5,46,3,0,0,65],[0,0,0,0,0,50,4,53,0,0,0,68,2,16,0,57,0,0,5,47,3,0,0,65,0,0,0,0,0,50,4,53],[0,0,0,36,2,16,0,57,0,0,0,67,3,0,0,57,0,0,0,0,0,50,4,53,0,0,5,10,2,0,0,65],[0,0,0,0,0,33,4,53,0,0,0,4,2,16,0,57,0,0,0,32,3,0,0,57,0,0,0,0,0,50,4,53],[0,0,4,244,2,0,0,65,0,0,4,244,3,16,0,156,0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16],[0,0,5,48,1,16,1,199,0,0,19,203,0,1,4,48,0,0,0,192,2,16,0,57,0,0,0,64,0,32,4,63],[0,0,0,5,2,0,0,41,0,0,0,0,0,2,4,53,0,0,0,160,1,16,0,57,0,4,0,0,0,1,0,29],[0,0,0,0,0,1,4,53,0,0,0,7,1,0,0,41,0,0,0,32,1,16,0,57,0,3,0,0,0,1,0,29],[0,0,0,1,1,16,3,103,0,0,0,0,1,1,4,59,0,7,0,0,0,1,0,29,0,0,5,9,1,16,0,156],[0,0,7,102,0,0,33,61,0,0,0,7,1,0,0,41,0,0,0,0,0,16,4,53,0,0,0,32,0,0,4,63],[0,0,4,244,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,244,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,192,1,32,2,16,0,0,5,15,1,16,1,199,0,0,128,16,2,0,0,57,19,201,19,185,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,7,102,0,0,97,61,0,0,0,5,2,0,0,41,0,0,0,0,2,2,4,51],[0,0,0,1,3,32,0,140,0,0,4,25,0,0,33,61,0,0,0,0,1,1,4,59,0,0,0,0,3,1,4,26],[0,0,1,0,4,0,0,138,0,0,0,0,3,67,1,111,0,0,0,0,2,35,1,159,0,0,0,0,0,33,4,27],[0,0,0,4,3,0,0,41,0,0,0,0,3,3,4,51,0,0,0,1,4,48,0,140,0,0,4,25,0,0,33,61],[0,0,5,16,4,0,0,65,0,0,0,0,2,66,1,111,0,0,0,8,3,48,2,16,0,0,255,0,3,48,1,143],[0,0,0,0,2,35,1,159,0,0,0,0,0,33,4,27,0,0,0,3,1,0,0,41,0,0,0,96,2,16,0,57],[0,0,0,1,1,0,3,103,0,0,0,0,3,33,3,79,0,0,0,0,3,3,4,59,0,0,0,9,4,0,0,41],[0,0,0,35,4,64,0,138,0,0,5,8,5,0,0,65,0,0,0,0,6,67,0,75,0,0,0,0,6,0,0,25],[0,0,0,0,6,5,128,25,0,0,5,8,4,64,1,151,0,0,5,8,7,48,1,151,0,0,0,0,8,71,0,75],[0,0,0,0,5,0,128,25,0,0,0,0,4,71,1,63,0,0,5,8,4,64,0,156,0,0,0,0,5,6,192,25],[0,0,0,0,4,5,0,75,0,0,7,102,0,0,193,61,0,0,0,10,3,48,0,41,0,0,0,4,4,48,0,57],[0,0,0,0,4,65,3,79,0,0,0,0,4,4,4,59,0,10,0,0,0,4,0,29,0,0,5,7,4,64,0,156],[0,0,7,102,0,0,33,61,0,0,0,10,4,0,0,41,0,0,0,0,4,64,0,121,0,0,0,36,6,48,0,57],[0,0,5,8,3,0,0,65,0,0,0,0,5,70,0,75,0,0,0,0,5,0,0,25,0,0,0,0,5,3,32,25],[0,0,5,8,4,64,1,151,0,9,0,0,0,6,0,29,0,0,5,8,6,96,1,151,0,0,0,0,7,70,0,75],[0,0,0,0,3,0,128,25,0,0,0,0,4,70,1,63,0,0,5,8,4,64,0,156,0,0,0,0,3,5,192,25],[0,0,0,0,3,3,0,75,0,0,7,102,0,0,193,61,0,0,0,64,2,32,0,138,0,0,0,0,1,33,3,79],[0,0,0,0,1,1,4,59,0,0,0,0,2,1,0,75,0,0,0,0,2,0,0,25,0,0,0,1,2,0,192,57],[0,0,0,0,2,33,0,75,0,0,7,102,0,0,193,61,0,0,0,0,2,0,4,22,0,5,0,0,0,2,0,29],[0,0,0,0,1,1,0,75,0,0,7,202,0,0,193,61,0,0,0,5,1,0,0,107,0,0,8,15,0,0,193,61],[0,0,5,17,1,0,0,65,0,0,0,0,0,16,4,57,0,0,128,2,2,0,0,57,0,0,0,4,0,32,4,67],[0,0,4,244,1,0,0,65,0,0,0,0,3,0,4,20,0,0,4,244,4,48,0,156,0,0,0,0,3,1,128,25],[0,0,0,192,1,48,2,16,0,0,5,18,1,16,1,199,19,201,19,185,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,9,208,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75,0,0,7,102,0,0,97,61],[0,0,0,64,4,0,4,61,0,0,0,36,1,64,0,57,0,0,0,6,2,0,0,41,0,0,0,0,0,33,4,53],[0,0,5,38,1,0,0,65,0,0,0,0,0,20,4,53,0,0,0,4,1,64,0,57,0,0,0,7,2,0,0,41],[0,0,0,0,0,33,4,53,0,0,4,244,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,244,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,4,244,3,64,0,156,0,11,0,0,0,4,0,29,0,0,0,0,1,4,64,25],[0,0,0,64,1,16,2,16,0,0,0,192,2,32,2,16,0,0,0,0,1,18,1,159,0,0,5,24,1,16,1,199],[0,0,128,2,2,0,0,57,19,201,19,180,0,0,4,15,0,0,0,1,2,32,1,144,0,0,8,117,0,0,97,61],[0,0,0,11,1,0,0,41,0,0,5,7,1,16,0,156,0,0,3,211,0,0,33,61,0,0,0,11,1,0,0,41],[0,0,0,64,0,16,4,63,0,0,4,244,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,244,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,5,39,1,16,1,199,0,0,128,13,2,0,0,57],[0,0,0,4,3,0,0,57,0,0,5,40,4,0,0,65,0,0,0,8,5,0,0,41,0,0,0,6,6,0,0,41],[0,0,0,7,7,0,0,41,0,0,0,202,0,0,1,61,0,0,0,0,0,19,4,53,0,0,4,244,1,0,0,65],[0,0,4,244,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,64,1,32,2,16,0,0,5,66,1,16,1,199],[0,0,19,202,0,1,4,46,0,0,0,64,4,0,4,61,0,10,0,0,0,4,0,29,0,0,5,64,1,0,0,65],[0,0,0,0,0,20,4,53,0,0,0,4,1,64,0,57,0,0,0,11,2,0,0,41,0,0,0,0,0,33,4,53],[0,0,4,244,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,244,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,4,244,3,64,0,156,0,0,0,0,1,4,64,25,0,0,0,64,1,16,2,16,0,0,0,192,2,32,2,16],[0,0,0,0,1,18,1,159,0,0,5,31,1,16,1,199,0,0,128,2,2,0,0,57,19,201,19,185,0,0,4,15],[0,0,0,10,10,0,0,41,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,4,244,3,48,1,151],[0,0,0,32,4,48,0,140,0,0,0,0,4,3,0,25,0,0,0,32,4,0,128,57,0,0,0,31,5,64,1,143],[0,0,0,5,6,64,2,114,0,0,7,71,0,0,97,61,0,0,0,0,7,0,0,25,0,0,0,5,8,112,2,16],[0,0,0,0,9,138,0,25,0,0,0,0,8,129,3,79,0,0,0,0,8,8,4,59,0,0,0,0,0,137,4,53],[0,0,0,1,7,112,0,57,0,0,0,0,8,103,0,75,0,0,7,63,0,0,65,61,0,0,0,0,9,10,0,25],[0,0,0,0,7,5,0,75,0,0,7,87,0,0,97,61,0,0,0,5,6,96,2,16,0,0,0,0,7,97,3,79],[0,0,0,0,6,105,0,25,0,0,0,3,5,80,2,16,0,0,0,0,8,6,4,51,0,0,0,0,8,88,1,207],[0,0,0,0,8,88,2,47,0,0,0,0,7,7,4,59,0,0,1,0,5,80,0,137,0,0,0,0,7,87,2,47],[0,0,0,0,5,87,1,207,0,0,0,0,5,133,1,159,0,0,0,0,0,86,4,53,0,0,0,1,2,32,1,144],[0,0,7,136,0,0,97,61,0,0,0,31,1,64,0,57,0,0,0,96,2,16,1,143,0,0,0,0,1,146,0,25],[0,0,0,0,2,33,0,75,0,0,0,0,2,0,0,25,0,0,0,1,2,0,64,57,0,0,5,7,4,16,0,156],[0,0,3,211,0,0,33,61,0,0,0,1,2,32,1,144,0,0,3,211,0,0,193,61,0,0,0,64,0,16,4,63],[0,0,0,32,1,48,0,140,0,0,7,165,0,0,129,61,0,0,0,0,1,0,0,25,0,0,19,203,0,1,4,48],[0,0,0,64,2,0,4,61,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,0,31,4,48,1,143],[0,0,4,244,3,48,1,151,0,0,0,5,5,48,2,114,0,0,7,120,0,0,97,61,0,0,0,0,6,0,0,25],[0,0,0,5,7,96,2,16,0,0,0,0,8,114,0,25,0,0,0,0,7,113,3,79,0,0,0,0,7,7,4,59],[0,0,0,0,0,120,4,53,0,0,0,1,6,96,0,57,0,0,0,0,7,86,0,75,0,0,7,112,0,0,65,61],[0,0,0,0,6,4,0,75,0,0,7,135,0,0,97,61,0,0,0,5,5,80,2,16,0,0,0,0,1,81,3,79],[0,0,0,0,5,82,0,25,0,0,0,3,4,64,2,16,0,0,0,0,6,5,4,51,0,0,0,0,6,70,1,207],[0,0,0,0,6,70,2,47,0,0,0,0,1,1,4,59,0,0,1,0,4,64,0,137,0,0,0,0,1,65,2,47],[0,0,0,0,1,65,1,207,0,0,0,0,1,97,1,159,0,0,0,0,0,21,4,53,0,0,3,253,0,0,1,61],[0,0,0,64,2,0,4,61,0,0,0,31,4,48,1,143,0,0,0,5,5,48,2,114,0,0,7,149,0,0,97,61],[0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16,0,0,0,0,8,114,0,25,0,0,0,0,7,113,3,79],[0,0,0,0,7,7,4,59,0,0,0,0,0,120,4,53,0,0,0,1,6,96,0,57,0,0,0,0,7,86,0,75],[0,0,7,141,0,0,65,61,0,0,0,0,6,4,0,75,0,0,7,164,0,0,97,61,0,0,0,5,5,80,2,16],[0,0,0,0,1,81,3,79,0,0,0,0,5,82,0,25,0,0,0,3,4,64,2,16,0,0,0,0,6,5,4,51],[0,0,0,0,6,70,1,207,0,0,0,0,6,70,2,47,0,0,0,0,1,1,4,59,0,0,1,0,4,64,0,137],[0,0,0,0,1,65,2,47,0,0,0,0,1,65,1,207,0,0,0,0,1,97,1,159,0,0,0,0,0,21,4,53],[0,0,3,253,0,0,1,61,0,0,0,0,1,9,4,51,0,0,0,0,1,1,0,75,0,0,0,0,1,0,0,25],[0,0,0,1,1,0,96,57,0,0,2,238,0,0,1,61,0,0,0,64,2,0,4,61,0,0,0,0,3,1,0,25],[0,0,0,96,3,48,2,112,0,0,0,31,4,48,1,143,0,0,4,244,3,48,1,151,0,0,0,5,5,48,2,114],[0,0,7,186,0,0,97,61,0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16,0,0,0,0,8,114,0,25],[0,0,0,0,7,113,3,79,0,0,0,0,7,7,4,59,0,0,0,0,0,120,4,53,0,0,0,1,6,96,0,57],[0,0,0,0,7,86,0,75,0,0,7,178,0,0,65,61,0,0,0,0,6,4,0,75,0,0,7,201,0,0,97,61],[0,0,0,5,5,80,2,16,0,0,0,0,1,81,3,79,0,0,0,0,5,82,0,25,0,0,0,3,4,64,2,16],[0,0,0,0,6,5,4,51,0,0,0,0,6,70,1,207,0,0,0,0,6,70,2,47,0,0,0,0,1,1,4,59],[0,0,1,0,4,64,0,137,0,0,0,0,1,65,2,47,0,0,0,0,1,65,1,207,0,0,0,0,1,97,1,159],[0,0,0,0,0,21,4,53,0,0,3,253,0,0,1,61,0,0,0,5,1,0,0,107,0,0,8,34,0,0,193,61],[0,0,5,17,1,0,0,65,0,0,0,0,0,16,4,57,0,0,128,2,2,0,0,57,0,0,0,4,0,32,4,67],[0,0,4,244,1,0,0,65,0,0,0,0,3,0,4,20,0,0,4,244,4,48,0,156,0,0,0,0,3,1,128,25],[0,0,0,192,1,48,2,16,0,0,5,18,1,16,1,199,19,201,19,185,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,9,208,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75,0,0,7,102,0,0,97,61],[0,0,0,64,4,0,4,61,0,0,5,21,1,0,0,65,0,0,0,0,0,20,4,53,0,0,0,4,2,64,0,57],[0,0,0,7,1,0,0,41,0,4,0,0,0,2,0,29,0,0,0,0,0,18,4,53,0,0,0,6,1,0,0,41],[0,0,5,22,1,16,1,151,0,0,5,23,1,16,1,199,0,0,0,36,2,64,0,57,0,3,0,0,0,2,0,29],[0,0,0,0,0,18,4,53,0,0,4,244,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,244,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,4,244,3,64,0,156,0,11,0,0,0,4,0,29,0,0,0,0,1,4,64,25],[0,2,0,64,0,16,2,24,0,0,0,192,1,32,2,16,0,0,0,2,1,16,1,175,0,0,5,24,1,16,1,199],[0,0,128,2,2,0,0,57,0,1,0,0,0,2,0,29,19,201,19,180,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,8,85,0,0,97,61,0,0,0,11,1,0,0,41,0,0,5,7,1,16,0,156,0,0,3,211,0,0,33,61],[0,0,0,11,1,0,0,41,0,0,0,64,0,16,4,63,0,0,0,5,1,0,0,107,0,0,8,3,0,0,97,61],[0,0,0,0,1,0,4,22,0,0,5,25,1,16,1,151,0,0,0,0,0,1,4,23,0,0,0,0,1,0,4,20],[0,0,0,9,3,0,0,41,0,0,0,10,2,48,0,42,0,0,4,244,4,48,1,151,0,0,8,11,0,0,65,61],[0,0,0,0,3,0,0,49,0,0,0,0,5,35,0,75,0,0,8,181,0,0,129,61,0,0,5,58,1,0,0,65],[0,0,0,0,0,16,4,53,0,0,0,17,1,0,0,57,0,0,4,28,0,0,1,61,0,0,0,64,1,0,4,61],[0,0,0,100,2,16,0,57,0,0,5,35,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,68,2,16,0,57],[0,0,5,36,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,36,2,16,0,57,0,0,0,56,3,0,0,57],[0,0,0,0,0,50,4,53,0,0,5,10,2,0,0,65,0,0,0,0,0,33,4,53,0,0,0,4,2,16,0,57],[0,0,0,32,3,0,0,57,0,0,0,0,0,50,4,53,0,0,4,244,2,0,0,65,0,0,4,244,3,16,0,156],[0,0,0,0,1,2,128,25,0,0,6,19,0,0,1,61,0,0,5,17,1,0,0,65,0,0,0,0,0,16,4,57],[0,0,128,10,1,0,0,57,0,0,0,4,0,16,4,67,0,0,4,244,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,4,244,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,5,18,1,16,1,199],[0,0,128,2,2,0,0,57,19,201,19,185,0,0,4,15,0,0,0,1,2,32,1,144,0,0,9,208,0,0,97,61],[0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75,0,0,7,102,0,0,97,61,0,0,0,64,4,0,4,61],[0,0,5,19,1,0,0,65,0,0,0,0,0,20,4,53,0,0,0,68,1,64,0,57,0,0,0,0,2,0,4,22],[0,0,0,0,0,33,4,53,0,0,0,36,1,64,0,57,0,0,0,7,2,0,0,41,0,0,0,0,0,33,4,53],[0,0,0,11,1,0,0,41,0,0,5,9,1,16,1,151,0,0,0,4,2,64,0,57,0,0,0,0,0,18,4,53],[0,0,4,244,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,244,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,4,244,3,64,0,156,0,11,0,0,0,4,0,29,0,0,0,0,1,4,64,25,0,0,0,64,1,16,2,16],[0,0,0,192,2,32,2,16,0,0,0,0,1,18,1,159,0,0,5,20,1,16,1,199,0,0,128,10,2,0,0,57],[19,201,19,180,0,0,4,15,0,0,0,1,2,32,1,144,0,0,8,149,0,0,97,61,0,0,0,11,1,0,0,41],[0,0,5,7,1,16,0,156,0,0,3,211,0,0,33,61,0,0,0,11,1,0,0,41,0,0,0,64,0,16,4,63],[0,0,7,204,0,0,1,61,0,0,0,64,2,0,4,61,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,0,0,31,4,48,1,143,0,0,4,244,3,48,1,151,0,0,0,5,5,48,2,114,0,0,8,101,0,0,97,61],[0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16,0,0,0,0,8,114,0,25,0,0,0,0,7,113,3,79],[0,0,0,0,7,7,4,59,0,0,0,0,0,120,4,53,0,0,0,1,6,96,0,57,0,0,0,0,7,86,0,75],[0,0,8,93,0,0,65,61,0,0,0,0,6,4,0,75,0,0,8,116,0,0,97,61,0,0,0,5,5,80,2,16],[0,0,0,0,1,81,3,79,0,0,0,0,5,82,0,25,0,0,0,3,4,64,2,16,0,0,0,0,6,5,4,51],[0,0,0,0,6,70,1,207,0,0,0,0,6,70,2,47,0,0,0,0,1,1,4,59,0,0,1,0,4,64,0,137],[0,0,0,0,1,65,2,47,0,0,0,0,1,65,1,207,0,0,0,0,1,97,1,159,0,0,0,0,0,21,4,53],[0,0,3,253,0,0,1,61,0,0,0,64,2,0,4,61,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,0,0,31,4,48,1,143,0,0,4,244,3,48,1,151,0,0,0,5,5,48,2,114,0,0,8,133,0,0,97,61],[0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16,0,0,0,0,8,114,0,25,0,0,0,0,7,113,3,79],[0,0,0,0,7,7,4,59,0,0,0,0,0,120,4,53,0,0,0,1,6,96,0,57,0,0,0,0,7,86,0,75],[0,0,8,125,0,0,65,61,0,0,0,0,6,4,0,75,0,0,8,148,0,0,97,61,0,0,0,5,5,80,2,16],[0,0,0,0,1,81,3,79,0,0,0,0,5,82,0,25,0,0,0,3,4,64,2,16,0,0,0,0,6,5,4,51],[0,0,0,0,6,70,1,207,0,0,0,0,6,70,2,47,0,0,0,0,1,1,4,59,0,0,1,0,4,64,0,137],[0,0,0,0,1,65,2,47,0,0,0,0,1,65,1,207,0,0,0,0,1,97,1,159,0,0,0,0,0,21,4,53],[0,0,3,253,0,0,1,61,0,0,0,64,2,0,4,61,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,0,0,31,4,48,1,143,0,0,4,244,3,48,1,151,0,0,0,5,5,48,2,114,0,0,8,165,0,0,97,61],[0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16,0,0,0,0,8,114,0,25,0,0,0,0,7,113,3,79],[0,0,0,0,7,7,4,59,0,0,0,0,0,120,4,53,0,0,0,1,6,96,0,57,0,0,0,0,7,86,0,75],[0,0,8,157,0,0,65,61,0,0,0,0,6,4,0,75,0,0,8,180,0,0,97,61,0,0,0,5,5,80,2,16],[0,0,0,0,1,81,3,79,0,0,0,0,5,82,0,25,0,0,0,3,4,64,2,16,0,0,0,0,6,5,4,51],[0,0,0,0,6,70,1,207,0,0,0,0,6,70,2,47,0,0,0,0,1,1,4,59,0,0,1,0,4,64,0,137],[0,0,0,0,1,65,2,47,0,0,0,0,1,65,1,207,0,0,0,0,1,97,1,159,0,0,0,0,0,21,4,53],[0,0,3,253,0,0,1,61,0,0,0,1,4,64,3,103,0,0,5,26,5,16,0,156,0,0,8,199,0,0,65,61],[0,0,5,10,1,0,0,65,0,0,0,11,2,0,0,41,0,0,0,0,0,18,4,53,0,0,0,32,1,0,0,57],[0,0,0,4,3,0,0,41,0,0,0,0,0,19,4,53,0,0,0,8,1,0,0,57,0,0,0,3,3,0,0,41],[0,0,0,0,0,19,4,53,0,0,0,68,1,32,0,57,0,0,5,34,2,0,0,65,0,0,0,0,0,33,4,53],[0,0,0,2,1,0,0,41,0,0,5,20,1,16,1,199,0,0,19,203,0,1,4,48,0,0,0,0,2,35,0,73],[0,0,4,244,2,32,1,151,0,0,0,0,2,36,3,223,0,0,0,192,1,16,2,16,0,0,5,27,1,16,1,151],[0,0,5,28,1,16,1,199,0,0,0,0,1,18,3,175,0,0,0,7,2,0,0,41,0,0,0,8,13,0,0,41],[19,201,19,195,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,4,244,3,48,1,151],[0,0,0,1,2,32,1,144,0,0,9,209,0,0,97,61,0,0,0,63,2,48,0,57,0,0,5,29,2,32,1,151],[0,0,0,64,4,0,4,61,0,0,0,0,2,36,0,25,0,11,0,0,0,4,0,29,0,0,0,0,4,66,0,75],[0,0,0,0,4,0,0,25,0,0,0,1,4,0,64,57,0,0,5,7,5,32,0,156,0,0,3,211,0,0,33,61],[0,0,0,1,4,64,1,144,0,0,3,211,0,0,193,61,0,0,0,64,0,32,4,63,0,0,0,11,2,0,0,41],[0,0,0,0,8,50,4,54,0,0,0,31,2,48,0,57,0,0,0,5,2,32,2,114,0,0,8,243,0,0,97,61],[0,0,0,0,4,0,0,49,0,0,0,1,4,64,3,103,0,0,0,0,5,0,0,25,0,0,0,5,6,80,2,16],[0,0,0,0,7,104,0,25,0,0,0,0,6,100,3,79,0,0,0,0,6,6,4,59,0,0,0,0,0,103,4,53],[0,0,0,1,5,80,0,57,0,0,0,0,6,37,0,75,0,0,8,235,0,0,65,61,0,9,0,0,0,8,0,29],[0,0,0,0,2,0,0,75,0,0,8,246,0,0,97,61,0,0,0,31,2,48,1,143,0,0,0,5,3,48,2,114],[0,0,0,9,7,0,0,41,0,0,9,3,0,0,97,61,0,0,0,0,4,0,0,25,0,0,0,5,5,64,2,16],[0,0,0,0,6,87,0,25,0,0,0,0,5,81,3,79,0,0,0,0,5,5,4,59,0,0,0,0,0,86,4,53],[0,0,0,1,4,64,0,57,0,0,0,0,5,52,0,75,0,0,8,251,0,0,65,61,0,0,0,0,4,2,0,75],[0,0,9,18,0,0,97,61,0,0,0,5,3,48,2,16,0,0,0,0,1,49,3,79,0,0,0,9,3,48,0,41],[0,0,0,3,2,32,2,16,0,0,0,0,4,3,4,51,0,0,0,0,4,36,1,207,0,0,0,0,4,36,2,47],[0,0,0,0,1,1,4,59,0,0,1,0,2,32,0,137,0,0,0,0,1,33,2,47,0,0,0,0,1,33,1,207],[0,0,0,0,1,65,1,159,0,0,0,0,0,19,4,53,0,0,5,17,1,0,0,65,0,0,0,0,0,16,4,57],[0,0,0,1,2,0,0,41,0,0,0,4,0,32,4,67,0,0,4,244,1,0,0,65,0,0,0,0,4,0,4,20],[0,0,4,244,3,64,0,156,0,0,0,0,4,1,128,25,0,0,0,192,1,64,2,16,0,0,5,18,1,16,1,199],[19,201,19,185,0,0,4,15,0,0,0,1,2,32,1,144,0,0,9,208,0,0,97,61,0,0,0,0,1,1,4,59],[0,0,0,0,1,1,0,75,0,0,7,102,0,0,97,61,0,0,0,64,4,0,4,61,0,0,5,30,1,0,0,65],[0,0,0,0,0,20,4,53,0,0,0,4,1,64,0,57,0,0,0,7,2,0,0,41,0,0,0,0,0,33,4,53],[0,0,4,244,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,244,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,4,244,3,64,0,156,0,10,0,0,0,4,0,29,0,0,0,0,1,4,64,25,0,0,0,64,1,16,2,16],[0,0,0,192,2,32,2,16,0,0,0,0,1,18,1,159,0,0,5,31,1,16,1,199,0,0,128,2,2,0,0,57],[19,201,19,180,0,0,4,15,0,0,0,1,2,32,1,144,0,0,9,236,0,0,97,61,0,0,0,10,1,0,0,41],[0,0,5,7,1,16,0,156,0,0,3,211,0,0,33,61,0,0,0,10,1,0,0,41,0,0,0,64,0,16,4,63],[0,0,0,11,1,0,0,41,0,0,0,0,1,1,4,51,0,0,5,8,2,0,0,65,0,0,0,32,3,16,0,140],[0,0,0,0,3,0,0,25,0,0,0,0,3,2,64,25,0,0,5,8,4,16,1,151,0,0,0,0,5,4,0,75],[0,0,0,0,2,0,160,25,0,0,5,8,4,64,0,156,0,0,0,0,2,3,192,25,0,0,0,0,2,2,0,75],[0,0,7,102,0,0,193,61,0,0,0,9,2,0,0,41,0,0,0,0,2,2,4,51,0,0,5,7,3,32,0,156],[0,0,7,102,0,0,33,61,0,0,0,9,1,16,0,41,0,0,0,9,2,32,0,41,0,0,0,31,3,32,0,57],[0,0,5,8,4,0,0,65,0,0,0,0,5,19,0,75,0,0,0,0,5,0,0,25,0,0,0,0,5,4,128,25],[0,0,5,8,3,48,1,151,0,0,5,8,6,16,1,151,0,0,0,0,7,99,0,75,0,0,0,0,4,0,128,25],[0,0,0,0,3,99,1,63,0,0,5,8,3,48,0,156,0,0,0,0,4,5,192,25,0,0,0,0,3,4,0,75],[0,0,7,102,0,0,193,61,0,0,0,0,35,2,4,52,0,0,5,7,4,48,0,156,0,0,3,211,0,0,33,61],[0,0,0,5,4,48,2,16,0,0,0,63,4,64,0,57,0,0,0,32,5,0,0,138,0,0,0,0,4,84,1,111],[0,0,0,10,4,64,0,41,0,0,5,7,5,64,0,156,0,0,3,211,0,0,33,61,0,0,0,64,0,64,4,63],[0,0,0,10,4,0,0,41,0,0,0,0,0,52,4,53,0,0,0,6,3,48,2,16,0,0,0,0,3,35,0,25],[0,0,0,0,4,19,0,75,0,0,7,102,0,0,33,61,0,0,0,0,4,50,0,75,0,0,9,140,0,0,129,61],[0,0,5,8,4,0,0,65,0,0,0,10,5,0,0,41,0,0,0,0,6,33,0,73,0,0,0,64,7,96,0,140],[0,0,0,0,7,0,0,25,0,0,0,0,7,4,64,25,0,0,5,8,6,96,1,151,0,0,0,0,8,6,0,75],[0,0,0,0,8,0,0,25,0,0,0,0,8,4,32,25,0,0,5,8,6,96,0,156,0,0,0,0,8,7,192,25],[0,0,0,0,6,8,0,75,0,0,7,102,0,0,193,61,0,0,0,64,6,0,4,61,0,0,5,32,7,96,0,156],[0,0,3,211,0,0,33,61,0,0,0,32,5,80,0,57,0,0,0,64,7,96,0,57,0,0,0,64,0,112,4,63],[0,0,0,0,135,2,4,52,0,0,0,0,7,118,4,54,0,0,0,0,8,8,4,51,0,0,0,0,0,135,4,53],[0,0,0,0,0,101,4,53,0,0,0,64,2,32,0,57,0,0,0,0,6,50,0,75,0,0,9,114,0,0,65,61],[0,0,5,17,1,0,0,65,0,0,0,0,0,16,4,57,0,0,128,5,1,0,0,57,0,0,0,4,0,16,4,67],[0,0,4,244,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,244,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,192,1,32,2,16,0,0,5,18,1,16,1,199,0,0,128,2,2,0,0,57,19,201,19,185,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,9,208,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75],[0,0,7,102,0,0,97,61,0,0,0,64,3,0,4,61,0,0,0,36,1,48,0,57,0,0,0,64,2,0,0,57],[0,0,0,0,0,33,4,53,0,0,5,33,1,0,0,65,0,0,0,0,0,19,4,53,0,0,0,4,1,48,0,57],[0,0,0,7,2,0,0,41,0,0,0,0,0,33,4,53,0,0,0,10,1,0,0,41,0,0,0,0,1,1,4,51],[0,0,0,68,2,48,0,57,0,0,0,0,0,18,4,53,0,11,0,0,0,3,0,29,0,0,0,100,2,48,0,57],[0,0,0,0,3,1,0,75,0,0,9,187,0,0,97,61,0,0,0,0,3,0,0,25,0,0,0,10,4,0,0,41],[0,0,0,32,4,64,0,57,0,10,0,0,0,4,0,29,0,0,0,0,4,4,4,51,0,0,0,0,84,4,4,52],[0,0,0,0,4,66,4,54,0,0,0,0,5,5,4,51,0,0,0,0,0,84,4,53,0,0,0,64,2,32,0,57],[0,0,0,1,3,48,0,57,0,0,0,0,4,19,0,75,0,0,9,175,0,0,65,61,0,0,0,11,4,0,0,41],[0,0,0,0,1,66,0,73,0,0,4,244,2,0,0,65,0,0,4,244,3,64,0,156,0,0,0,0,3,2,0,25],[0,0,0,0,3,4,64,25,0,0,0,64,3,48,2,16,0,0,4,244,4,16,0,156,0,0,0,0,1,2,128,25],[0,0,0,96,1,16,2,16,0,0,0,0,1,49,1,159,0,0,0,0,3,0,4,20,0,0,4,244,4,48,0,156],[0,0,0,0,3,2,128,25,0,0,0,192,2,48,2,16,0,0,0,0,1,33,1,159,0,0,128,5,2,0,0,57],[19,201,19,180,0,0,4,15,0,0,0,1,2,32,1,144,0,0,10,12,0,0,97,61,0,0,7,8,0,0,1,61],[0,0,0,0,0,1,4,47,0,0,0,31,4,48,1,143,0,0,0,5,2,48,2,114,0,0,9,220,0,0,97,61],[0,0,0,0,5,0,0,25,0,0,0,5,6,80,2,16,0,0,0,0,7,97,3,79,0,0,0,0,7,7,4,59],[0,0,0,0,0,118,4,53,0,0,0,1,5,80,0,57,0,0,0,0,6,37,0,75,0,0,9,213,0,0,65,61],[0,0,0,0,5,4,0,75,0,0,9,234,0,0,97,61,0,0,0,3,4,64,2,16,0,0,0,5,2,32,2,16],[0,0,0,0,5,2,4,51,0,0,0,0,5,69,1,207,0,0,0,0,5,69,2,47,0,0,0,0,1,33,3,79],[0,0,0,0,1,1,4,59,0,0,1,0,4,64,0,137,0,0,0,0,1,65,2,47,0,0,0,0,1,65,1,207],[0,0,0,0,1,81,1,159,0,0,0,0,0,18,4,53,0,0,0,96,1,48,2,16,0,0,19,203,0,1,4,48],[0,0,0,64,2,0,4,61,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,0,31,4,48,1,143],[0,0,4,244,3,48,1,151,0,0,0,5,5,48,2,114,0,0,9,252,0,0,97,61,0,0,0,0,6,0,0,25],[0,0,0,5,7,96,2,16,0,0,0,0,8,114,0,25,0,0,0,0,7,113,3,79,0,0,0,0,7,7,4,59],[0,0,0,0,0,120,4,53,0,0,0,1,6,96,0,57,0,0,0,0,7,86,0,75,0,0,9,244,0,0,65,61],[0,0,0,0,6,4,0,75,0,0,10,11,0,0,97,61,0,0,0,5,5,80,2,16,0,0,0,0,1,81,3,79],[0,0,0,0,5,82,0,25,0,0,0,3,4,64,2,16,0,0,0,0,6,5,4,51,0,0,0,0,6,70,1,207],[0,0,0,0,6,70,2,47,0,0,0,0,1,1,4,59,0,0,1,0,4,64,0,137,0,0,0,0,1,65,2,47],[0,0,0,0,1,65,1,207,0,0,0,0,1,97,1,159,0,0,0,0,0,21,4,53,0,0,3,253,0,0,1,61],[0,0,0,64,2,0,4,61,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,0,31,4,48,1,143],[0,0,4,244,3,48,1,151,0,0,0,5,5,48,2,114,0,0,10,28,0,0,97,61,0,0,0,0,6,0,0,25],[0,0,0,5,7,96,2,16,0,0,0,0,8,114,0,25,0,0,0,0,7,113,3,79,0,0,0,0,7,7,4,59],[0,0,0,0,0,120,4,53,0,0,0,1,6,96,0,57,0,0,0,0,7,86,0,75,0,0,10,20,0,0,65,61],[0,0,0,0,6,4,0,75,0,0,10,43,0,0,97,61,0,0,0,5,5,80,2,16,0,0,0,0,1,81,3,79],[0,0,0,0,5,82,0,25,0,0,0,3,4,64,2,16,0,0,0,0,6,5,4,51,0,0,0,0,6,70,1,207],[0,0,0,0,6,70,2,47,0,0,0,0,1,1,4,59,0,0,1,0,4,64,0,137,0,0,0,0,1,65,2,47],[0,0,0,0,1,65,1,207,0,0,0,0,1,97,1,159,0,0,0,0,0,21,4,53,0,0,3,253,0,0,1,61],[0,0,0,31,3,16,0,57,0,0,5,8,4,0,0,65,0,0,0,0,5,35,0,75,0,0,0,0,5,0,0,25],[0,0,0,0,5,4,64,25,0,0,5,8,6,32,1,151,0,0,5,8,3,48,1,151,0,0,0,0,7,99,0,75],[0,0,0,0,4,0,160,25,0,0,0,0,3,99,1,63,0,0,5,8,3,48,0,156,0,0,0,0,4,5,192,25],[0,0,0,0,3,4,0,75,0,0,10,68,0,0,97,61,0,0,0,1,3,16,3,103,0,0,0,0,3,3,4,59],[0,0,5,7,4,48,0,156,0,0,10,68,0,0,33,61,0,0,0,32,1,16,0,57,0,0,0,0,4,49,0,25],[0,0,0,0,2,36,0,75,0,0,10,68,0,0,33,61,0,0,0,0,2,3,0,25,0,0,0,0,0,1,4,45],[0,0,0,0,1,0,0,25,0,0,19,203,0,1,4,48,0,3,0,0,0,0,0,2,0,0,0,0,7,0,4,20],[0,0,0,0,8,69,0,25,0,0,0,0,5,88,0,75,0,0,0,0,5,0,0,25,0,0,0,1,5,0,64,57],[0,0,4,244,4,64,1,151,0,0,0,1,5,80,1,144,0,0,10,206,0,0,193,61,0,0,0,0,6,0,0,49],[0,0,0,0,5,134,0,75,0,0,10,206,0,0,65,61,0,2,0,0,0,2,0,29,0,3,0,0,0,1,0,29],[0,1,0,0,0,3,0,29,0,0,0,1,4,64,3,103,0,0,5,26,5,112,0,156,0,0,10,216,0,0,129,61],[0,0,0,0,2,134,0,73,0,0,4,244,2,32,1,151,0,0,0,0,2,36,3,223,0,0,0,192,1,112,2,16],[0,0,5,27,1,16,1,151,0,0,5,71,1,16,1,199,0,0,0,0,1,18,3,175,0,0,128,16,2,0,0,57],[19,201,19,190,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,4,244,3,48,1,151],[0,0,0,1,2,32,1,144,0,0,10,223,0,0,97,61,0,0,0,63,2,48,0,57,0,0,5,29,4,32,1,151],[0,0,0,64,2,0,4,61,0,0,0,0,4,66,0,25,0,0,0,0,5,36,0,75,0,0,0,0,5,0,0,25],[0,0,0,1,5,0,64,57,0,0,5,7,6,64,0,156,0,0,10,210,0,0,33,61,0,0,0,1,5,80,1,144],[0,0,10,210,0,0,193,61,0,0,0,64,0,64,4,63,0,0,0,0,4,50,4,54,0,0,0,31,5,48,0,57],[0,0,0,5,5,80,2,114,0,0,10,129,0,0,97,61,0,0,0,0,6,0,0,49,0,0,0,1,6,96,3,103],[0,0,0,0,7,0,0,25,0,0,0,5,8,112,2,16,0,0,0,0,9,132,0,25,0,0,0,0,8,134,3,79],[0,0,0,0,8,8,4,59,0,0,0,0,0,137,4,53,0,0,0,1,7,112,0,57,0,0,0,0,8,87,0,75],[0,0,10,121,0,0,65,61,0,0,0,0,5,0,0,75,0,0,10,131,0,0,97,61,0,0,0,31,5,48,1,143],[0,0,0,5,3,48,2,114,0,0,10,143,0,0,97,61,0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16],[0,0,0,0,8,116,0,25,0,0,0,0,7,113,3,79,0,0,0,0,7,7,4,59,0,0,0,0,0,120,4,53],[0,0,0,1,6,96,0,57,0,0,0,0,7,54,0,75,0,0,10,135,0,0,65,61,0,0,0,0,6,5,0,75],[0,0,10,158,0,0,97,61,0,0,0,5,3,48,2,16,0,0,0,0,1,49,3,79,0,0,0,0,3,52,0,25],[0,0,0,3,5,80,2,16,0,0,0,0,6,3,4,51,0,0,0,0,6,86,1,207,0,0,0,0,6,86,2,47],[0,0,0,0,1,1,4,59,0,0,1,0,5,80,0,137,0,0,0,0,1,81,2,47,0,0,0,0,1,81,1,207],[0,0,0,0,1,97,1,159,0,0,0,0,0,19,4,53,0,0,0,64,1,0,4,61,0,0,0,0,2,2,4,51],[0,0,0,32,2,32,0,140,0,0,0,3,5,0,0,41,0,0,0,2,6,0,0,41,0,0,10,250,0,0,193,61],[0,0,0,0,2,4,4,51,0,0,0,160,3,16,0,57,0,0,0,0,0,35,4,53,0,0,0,128,2,16,0,57],[0,0,0,0,0,98,4,53,0,0,0,96,2,16,0,57,0,0,0,1,3,0,0,41,0,0,0,0,0,50,4,53],[0,0,5,9,2,80,1,151,0,0,0,64,3,16,0,57,0,0,0,0,0,35,4,53,0,0,0,32,2,16,0,57],[0,0,5,73,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,160,3,0,0,57,0,0,0,0,0,49,4,53],[0,0,5,74,3,16,0,156,0,0,10,210,0,0,33,61,0,0,0,192,3,16,0,57,0,0,0,64,0,48,4,63],[0,0,4,244,3,0,0,65,0,0,4,244,4,32,0,156,0,0,0,0,2,3,128,25,0,0,0,64,2,32,2,16],[0,0,0,0,1,1,4,51,0,0,4,244,4,16,0,156,0,0,0,0,1,3,128,25,0,0,0,96,1,16,2,16],[0,0,0,0,1,33,1,159,0,0,0,0,2,0,4,20,0,0,4,244,4,32,0,156,0,0,0,0,2,3,128,25],[0,0,0,192,2,32,2,16,0,0,0,0,1,18,1,159,0,0,5,39,1,16,1,199,0,0,128,16,2,0,0,57],[19,201,19,185,0,0,4,15,0,0,0,1,2,32,1,144,0,0,11,11,0,0,97,61,0,0,0,0,1,1,4,59],[0,0,5,9,1,16,1,151,0,0,0,0,0,1,4,45,0,0,5,58,1,0,0,65,0,0,0,0,0,16,4,53],[0,0,0,17,1,0,0,57,0,0,10,213,0,0,1,61,0,0,5,58,1,0,0,65,0,0,0,0,0,16,4,53],[0,0,0,65,1,0,0,57,0,0,0,4,0,16,4,63,0,0,5,31,1,0,0,65,0,0,19,203,0,1,4,48],[0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57,0,0,5,34,3,0,0,65,0,0,0,0,0,50,4,53],[0,0,0,36,2,16,0,57,0,0,0,8,3,0,0,57,0,0,10,255,0,0,1,61,0,0,0,31,4,48,1,143],[0,0,0,5,2,48,2,114,0,0,10,234,0,0,97,61,0,0,0,0,5,0,0,25,0,0,0,5,6,80,2,16],[0,0,0,0,7,97,3,79,0,0,0,0,7,7,4,59,0,0,0,0,0,118,4,53,0,0,0,1,5,80,0,57],[0,0,0,0,6,37,0,75,0,0,10,227,0,0,65,61,0,0,0,0,5,4,0,75,0,0,10,248,0,0,97,61],[0,0,0,3,4,64,2,16,0,0,0,5,2,32,2,16,0,0,0,0,5,2,4,51,0,0,0,0,5,69,1,207],[0,0,0,0,5,69,2,47,0,0,0,0,1,33,3,79,0,0,0,0,1,1,4,59,0,0,1,0,4,64,0,137],[0,0,0,0,1,65,2,47,0,0,0,0,1,65,1,207,0,0,0,0,1,81,1,159,0,0,0,0,0,18,4,53],[0,0,0,96,1,48,2,16,0,0,19,203,0,1,4,48,0,0,0,68,2,16,0,57,0,0,5,72,3,0,0,65],[0,0,0,0,0,50,4,53,0,0,0,36,2,16,0,57,0,0,0,31,3,0,0,57,0,0,0,0,0,50,4,53],[0,0,5,10,2,0,0,65,0,0,0,0,0,33,4,53,0,0,0,4,2,16,0,57,0,0,0,32,3,0,0,57],[0,0,0,0,0,50,4,53,0,0,4,244,2,0,0,65,0,0,4,244,3,16,0,156,0,0,0,0,1,2,128,25],[0,0,0,64,1,16,2,16,0,0,5,20,1,16,1,199,0,0,19,203,0,1,4,48,0,0,0,0,1,0,0,25],[0,0,19,203,0,1,4,48,0,0,0,64,3,0,4,61,0,0,0,96,4,48,0,57,0,0,0,0,0,36,4,53],[0,0,5,9,1,16,1,151,0,0,0,64,2,48,0,57,0,0,0,0,0,18,4,53,0,0,0,96,1,0,0,57],[0,0,0,0,1,19,4,54,0,0,5,75,2,0,0,65,0,0,0,0,0,33,4,53,0,0,5,76,2,48,0,156],[0,0,11,49,0,0,129,61,0,0,0,128,2,48,0,57,0,0,0,64,0,32,4,63,0,0,4,244,2,0,0,65],[0,0,4,244,4,16,0,156,0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16,0,0,0,0,3,3,4,51],[0,0,4,244,4,48,0,156,0,0,0,0,3,2,128,25,0,0,0,96,3,48,2,16,0,0,0,0,1,19,1,159],[0,0,0,0,3,0,4,20,0,0,4,244,4,48,0,156,0,0,0,0,3,2,128,25,0,0,0,192,2,48,2,16],[0,0,0,0,1,18,1,159,0,0,5,39,1,16,1,199,0,0,128,16,2,0,0,57,19,201,19,185,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,11,55,0,0,97,61,0,0,0,0,1,1,4,59,0,0,5,9,1,16,1,151],[0,0,0,0,0,1,4,45,0,0,5,58,1,0,0,65,0,0,0,0,0,16,4,53,0,0,0,65,1,0,0,57],[0,0,0,4,0,16,4,63,0,0,5,31,1,0,0,65,0,0,19,203,0,1,4,48,0,0,0,0,1,0,0,25],[0,0,19,203,0,1,4,48,0,9,0,0,0,0,0,2,0,5,0,0,0,3,0,29,0,0,0,64,5,0,4,61],[0,0,0,4,3,80,0,57,0,8,0,0,0,1,0,29,0,0,0,0,1,1,0,75,0,0,14,5,0,0,97,61],[0,4,0,0,0,4,0,29,0,3,0,0,0,2,0,29,0,0,5,9,1,32,1,151,0,0,255,255,2,16,0,140],[0,0,14,21,0,0,161,61,0,0,5,77,2,0,0,65,0,0,0,0,0,37,4,53,0,9,0,0,0,1,0,29],[0,0,0,0,0,19,4,53,0,0,4,244,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,244,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,4,244,3,80,0,156,0,0,0,0,1,5,64,25,0,0,0,64,1,16,2,16],[0,0,0,192,2,32,2,16,0,0,0,0,1,18,1,159,0,0,5,31,1,16,1,199,0,0,128,2,2,0,0,57],[0,6,0,0,0,2,0,29,0,7,0,0,0,5,0,29,19,201,19,185,0,0,4,15,0,0,0,7,10,0,0,41],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,4,244,3,48,1,151,0,0,0,32,4,48,0,140],[0,0,0,0,4,3,0,25,0,0,0,32,4,0,128,57,0,0,0,31,5,64,1,143,0,0,0,5,6,64,2,114],[0,0,11,106,0,0,97,61,0,0,0,0,7,0,0,25,0,0,0,5,8,112,2,16,0,0,0,0,9,138,0,25],[0,0,0,0,8,129,3,79,0,0,0,0,8,8,4,59,0,0,0,0,0,137,4,53,0,0,0,1,7,112,0,57],[0,0,0,0,8,103,0,75,0,0,11,98,0,0,65,61,0,0,0,0,7,5,0,75,0,0,11,121,0,0,97,61],[0,0,0,5,6,96,2,16,0,0,0,0,7,97,3,79,0,0,0,0,6,106,0,25,0,0,0,3,5,80,2,16],[0,0,0,0,8,6,4,51,0,0,0,0,8,88,1,207,0,0,0,0,8,88,2,47,0,0,0,0,7,7,4,59],[0,0,1,0,5,80,0,137,0,0,0,0,7,87,2,47,0,0,0,0,5,87,1,207,0,0,0,0,5,133,1,159],[0,0,0,0,0,86,4,53,0,0,0,1,2,32,1,144,0,0,14,40,0,0,97,61,0,0,0,31,1,64,0,57],[0,0,0,96,1,16,1,143,0,0,0,0,4,161,0,25,0,0,0,0,1,20,0,75,0,0,0,0,1,0,0,25],[0,0,0,1,1,0,64,57,0,0,5,7,2,64,0,156,0,0,13,246,0,0,33,61,0,0,0,1,1,16,1,144],[0,0,13,246,0,0,193,61,0,0,0,64,0,64,4,63,0,0,0,31,1,48,0,140,0,0,13,244,0,0,161,61],[0,0,0,4,1,64,0,57,0,0,0,0,2,10,4,51,0,0,0,0,2,2,0,75,0,0,14,69,0,0,193,61],[0,0,5,79,2,0,0,65,0,0,0,0,0,36,4,53,0,0,0,9,2,0,0,41,0,0,0,0,0,33,4,53],[0,0,4,244,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,244,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,4,244,3,64,0,156,0,0,0,0,1,4,64,25,0,0,0,64,1,16,2,16,0,0,0,192,2,32,2,16],[0,0,0,0,1,18,1,159,0,0,5,31,1,16,1,199,0,0,128,3,2,0,0,57,0,7,0,0,0,4,0,29],[19,201,19,185,0,0,4,15,0,0,0,7,10,0,0,41,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,0,4,244,3,48,1,151,0,0,0,32,4,48,0,140,0,0,0,0,4,3,0,25,0,0,0,32,4,0,128,57],[0,0,0,31,5,64,1,143,0,0,0,5,6,64,2,114,0,0,11,176,0,0,97,61,0,0,0,0,7,0,0,25],[0,0,0,5,8,112,2,16,0,0,0,0,9,138,0,25,0,0,0,0,8,129,3,79,0,0,0,0,8,8,4,59],[0,0,0,0,0,137,4,53,0,0,0,1,7,112,0,57,0,0,0,0,8,103,0,75,0,0,11,168,0,0,65,61],[0,0,0,0,7,5,0,75,0,0,11,191,0,0,97,61,0,0,0,5,6,96,2,16,0,0,0,0,7,97,3,79],[0,0,0,0,6,106,0,25,0,0,0,3,5,80,2,16,0,0,0,0,8,6,4,51,0,0,0,0,8,88,1,207],[0,0,0,0,8,88,2,47,0,0,0,0,7,7,4,59,0,0,1,0,5,80,0,137,0,0,0,0,7,87,2,47],[0,0,0,0,5,87,1,207,0,0,0,0,5,133,1,159,0,0,0,0,0,86,4,53,0,0,0,1,2,32,1,144],[0,0,14,79,0,0,97,61,0,0,0,31,1,64,0,57,0,0,0,96,1,16,1,143,0,0,0,0,4,161,0,25],[0,0,5,7,1,64,0,156,0,0,13,246,0,0,33,61,0,0,0,64,0,64,4,63,0,0,0,32,1,48,0,140],[0,0,13,244,0,0,65,61,0,0,0,4,1,64,0,57,0,0,0,0,2,10,4,51,0,0,0,0,2,2,0,75],[0,0,14,108,0,0,193,61,0,0,5,13,2,0,0,65,0,0,0,0,0,36,4,53,0,0,0,8,2,0,0,41],[0,0,0,0,0,33,4,53,0,0,4,244,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,244,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,4,244,3,64,0,156,0,0,0,0,1,4,64,25,0,0,0,64,1,16,2,16],[0,0,0,192,2,32,2,16,0,0,0,0,1,18,1,159,0,0,5,31,1,16,1,199,0,0,128,4,2,0,0,57],[0,7,0,0,0,4,0,29,19,201,19,185,0,0,4,15,0,0,0,7,10,0,0,41,0,0,0,0,3,1,0,25],[0,0,0,96,3,48,2,112,0,0,4,244,3,48,1,151,0,0,0,32,4,48,0,140,0,0,0,0,4,3,0,25],[0,0,0,32,4,0,128,57,0,0,0,31,5,64,1,143,0,0,0,5,6,64,2,114,0,0,11,241,0,0,97,61],[0,0,0,0,7,0,0,25,0,0,0,5,8,112,2,16,0,0,0,0,9,138,0,25,0,0,0,0,8,129,3,79],[0,0,0,0,8,8,4,59,0,0,0,0,0,137,4,53,0,0,0,1,7,112,0,57,0,0,0,0,8,103,0,75],[0,0,11,233,0,0,65,61,0,0,0,0,7,5,0,75,0,0,12,0,0,0,97,61,0,0,0,5,6,96,2,16],[0,0,0,0,7,97,3,79,0,0,0,0,6,106,0,25,0,0,0,3,5,80,2,16,0,0,0,0,8,6,4,51],[0,0,0,0,8,88,1,207,0,0,0,0,8,88,2,47,0,0,0,0,7,7,4,59,0,0,1,0,5,80,0,137],[0,0,0,0,7,87,2,47,0,0,0,0,5,87,1,207,0,0,0,0,5,133,1,159,0,0,0,0,0,86,4,53],[0,0,0,1,2,32,1,144,0,0,14,118,0,0,97,61,0,0,0,31,1,64,0,57,0,0,0,96,1,16,1,143],[0,0,0,0,4,161,0,25,0,0,5,7,1,64,0,156,0,0,13,246,0,0,33,61,0,0,0,64,0,64,4,63],[0,0,0,32,1,48,0,140,0,0,13,244,0,0,65,61,0,0,0,0,1,10,4,51,0,0,0,0,1,1,0,75],[0,0,14,147,0,0,97,61,0,0,5,32,1,64,0,156,0,0,13,246,0,0,33,61,0,0,0,64,1,64,0,57],[0,0,0,64,0,16,4,63,0,0,0,0,1,4,4,54,0,2,0,0,0,1,0,29,0,0,0,0,0,1,4,53],[0,0,0,9,1,0,0,41,0,0,0,0,0,16,4,53,0,0,0,32,0,0,4,63,0,0,4,244,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,4,244,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,5,15,1,16,1,199,0,0,128,16,2,0,0,57,0,7,0,0,0,4,0,29,19,201,19,185,0,0,4,15],[0,0,0,7,3,0,0,41,0,0,0,1,2,32,1,144,0,0,13,244,0,0,97,61,0,0,0,0,2,3,4,51],[0,0,0,2,3,32,0,140,0,0,13,253,0,0,129,61,0,0,0,0,1,1,4,59,0,0,0,0,3,1,4,26],[0,0,1,0,4,0,0,138,0,0,0,0,3,67,1,111,0,0,0,0,2,35,1,159,0,0,0,0,0,33,4,27],[0,0,0,2,3,0,0,41,0,0,0,0,3,3,4,51,0,0,0,1,4,48,0,140,0,0,13,253,0,0,33,61],[0,0,5,16,4,0,0,65,0,0,0,0,2,66,1,111,0,0,0,8,3,48,2,16,0,0,255,0,3,48,1,143],[0,0,0,0,2,35,1,159,0,0,0,0,0,33,4,27,0,0,0,0,1,0,4,22,0,0,5,17,2,0,0,65],[0,0,0,0,0,32,4,57,0,0,0,0,1,1,0,75,0,0,12,159,0,0,97,61,0,0,128,10,1,0,0,57],[0,0,0,4,0,16,4,67,0,0,4,244,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,244,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,5,18,1,16,1,199,0,0,128,2,2,0,0,57],[0,7,0,0,0,2,0,29,19,201,19,185,0,0,4,15,0,0,0,1,2,32,1,144,0,0,13,252,0,0,97,61],[0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75,0,0,13,244,0,0,97,61,0,0,0,64,4,0,4,61],[0,0,5,19,1,0,0,65,0,0,0,0,0,20,4,53,0,0,0,68,1,64,0,57,0,0,0,0,2,0,4,22],[0,0,0,0,0,33,4,53,0,0,0,36,1,64,0,57,0,0,0,9,2,0,0,41,0,0,0,0,0,33,4,53],[0,0,0,0,1,0,4,16,0,0,5,9,1,16,1,151,0,0,0,4,2,64,0,57,0,0,0,0,0,18,4,53],[0,0,4,244,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,244,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,4,244,3,64,0,156,0,2,0,0,0,4,0,29,0,0,0,0,1,4,64,25,0,0,0,64,1,16,2,16],[0,0,0,192,2,32,2,16,0,0,0,0,1,18,1,159,0,0,5,20,1,16,1,199,0,0,128,10,2,0,0,57],[19,201,19,180,0,0,4,15,0,0,0,1,2,32,1,144,0,0,15,16,0,0,97,61,0,0,0,2,2,0,0,41],[0,0,5,7,1,32,0,156,0,0,13,246,0,0,33,61,0,0,0,64,0,32,4,63,0,0,5,17,1,0,0,65],[0,0,0,0,0,16,4,57,0,0,0,7,2,0,0,41,0,0,0,4,0,32,4,67,0,0,4,244,1,0,0,65],[0,0,0,0,4,0,4,20,0,0,4,244,3,64,0,156,0,0,0,0,4,1,128,25,0,0,0,192,1,64,2,16],[0,0,5,18,1,16,1,199,19,201,19,185,0,0,4,15,0,0,0,1,2,32,1,144,0,0,13,252,0,0,97,61],[0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75,0,0,13,244,0,0,97,61,0,0,0,64,4,0,4,61],[0,0,5,21,1,0,0,65,0,0,0,0,0,20,4,53,0,0,0,4,2,64,0,57,0,0,0,9,1,0,0,41],[0,2,0,0,0,2,0,29,0,0,0,0,0,18,4,53,0,0,0,8,1,0,0,41,0,0,5,22,1,16,1,151],[0,0,5,23,1,16,1,199,0,0,0,36,2,64,0,57,0,1,0,0,0,2,0,29,0,0,0,0,0,18,4,53],[0,0,4,244,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,244,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,4,244,3,64,0,156,0,7,0,0,0,4,0,29,0,0,0,0,1,4,64,25,0,0,0,64,1,16,2,16],[0,0,0,192,2,32,2,16,0,0,0,0,1,18,1,159,0,0,5,24,1,16,1,199,0,0,128,2,2,0,0,57],[19,201,19,180,0,0,4,15,0,0,0,1,2,32,1,144,0,0,15,48,0,0,97,61,0,0,0,7,6,0,0,41],[0,0,5,7,1,96,0,156,0,0,13,246,0,0,33,61,0,0,0,64,0,96,4,63,0,0,0,0,1,0,4,22],[0,0,5,25,1,16,1,151,0,0,0,0,0,1,4,23,0,0,12,205,0,0,1,61,0,0,0,6,2,0,0,41],[0,0,0,4,0,32,4,67,0,0,4,244,1,0,0,65,0,0,0,0,4,0,4,20,0,0,4,244,3,64,0,156],[0,0,0,0,4,1,128,25,0,0,0,192,1,64,2,16,0,0,5,18,1,16,1,199,19,201,19,185,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,13,252,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75],[0,0,13,244,0,0,97,61,0,0,0,64,4,0,4,61,0,0,5,21,1,0,0,65,0,0,0,0,0,20,4,53],[0,0,0,4,2,64,0,57,0,0,0,9,1,0,0,41,0,2,0,0,0,2,0,29,0,0,0,0,0,18,4,53],[0,0,0,8,1,0,0,41,0,0,5,22,1,16,1,151,0,0,5,23,1,16,1,199,0,0,0,36,2,64,0,57],[0,1,0,0,0,2,0,29,0,0,0,0,0,18,4,53,0,0,4,244,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,4,244,3,32,0,156,0,0,0,0,2,1,128,25,0,0,4,244,3,64,0,156,0,7,0,0,0,4,0,29],[0,0,0,0,1,4,64,25,0,0,0,64,1,16,2,16,0,0,0,192,2,32,2,16,0,0,0,0,1,18,1,159],[0,0,5,24,1,16,1,199,0,0,128,2,2,0,0,57,19,201,19,180,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,15,80,0,0,97,61,0,0,0,7,6,0,0,41,0,0,5,7,1,96,0,156,0,0,13,246,0,0,33,61],[0,0,0,64,0,96,4,63,0,0,0,0,1,0,4,20,0,0,0,5,4,0,0,41,0,0,0,4,2,64,0,41],[0,0,0,4,3,32,0,108,0,0,0,0,3,0,0,25,0,0,0,1,3,0,64,57,0,0,4,244,4,64,1,151],[0,0,0,1,3,48,1,144,0,0,14,1,0,0,193,61,0,0,0,0,3,0,0,49,0,0,0,0,5,35,0,75],[0,0,14,1,0,0,65,61,0,0,0,1,4,64,3,103,0,0,5,26,5,16,0,156,0,0,14,164,0,0,129,61],[0,0,0,0,5,0,4,17,0,0,0,0,2,35,0,73,0,0,4,244,2,32,1,151,0,0,0,0,2,36,3,223],[0,0,0,192,1,16,2,16,0,0,5,27,1,16,1,151,0,0,5,28,1,16,1,199,0,0,0,0,1,18,3,175],[0,4,0,0,0,5,0,29,0,0,5,9,13,80,1,151,0,0,0,3,2,0,0,41,19,201,19,195,0,0,4,15],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,4,244,3,48,1,151,0,0,0,1,2,32,1,144],[0,0,14,181,0,0,97,61,0,0,0,63,2,48,0,57,0,0,5,29,2,32,1,151,0,0,0,64,6,0,4,61],[0,0,0,0,2,38,0,25,0,0,0,0,4,98,0,75,0,0,0,0,4,0,0,25,0,0,0,1,4,0,64,57],[0,0,5,7,5,32,0,156,0,0,13,246,0,0,33,61,0,0,0,1,4,64,1,144,0,0,13,246,0,0,193,61],[0,0,0,64,0,32,4,63,0,5,0,0,0,6,0,29,0,0,0,0,8,54,4,54,0,0,0,31,2,48,0,57],[0,0,0,5,2,32,2,114,0,0,13,9,0,0,97,61,0,0,0,0,4,0,0,49,0,0,0,1,4,64,3,103],[0,0,0,0,5,0,0,25,0,0,0,5,6,80,2,16,0,0,0,0,7,104,0,25,0,0,0,0,6,100,3,79],[0,0,0,0,6,6,4,59,0,0,0,0,0,103,4,53,0,0,0,1,5,80,0,57,0,0,0,0,6,37,0,75],[0,0,13,1,0,0,65,61,0,0,0,0,2,0,0,75,0,0,13,11,0,0,97,61,0,0,0,31,2,48,1,143],[0,0,0,5,3,48,2,114,0,0,13,23,0,0,97,61,0,0,0,0,4,0,0,25,0,0,0,5,5,64,2,16],[0,0,0,0,6,88,0,25,0,0,0,0,5,81,3,79,0,0,0,0,5,5,4,59,0,0,0,0,0,86,4,53],[0,0,0,1,4,64,0,57,0,0,0,0,5,52,0,75,0,0,13,15,0,0,65,61,0,0,0,0,4,2,0,75],[0,0,13,38,0,0,97,61,0,0,0,5,3,48,2,16,0,0,0,0,1,49,3,79,0,0,0,0,3,56,0,25],[0,0,0,3,2,32,2,16,0,0,0,0,4,3,4,51,0,0,0,0,4,36,1,207,0,0,0,0,4,36,2,47],[0,0,0,0,1,1,4,59,0,0,1,0,2,32,0,137,0,0,0,0,1,33,2,47,0,0,0,0,1,33,1,207],[0,0,0,0,1,65,1,159,0,0,0,0,0,19,4,53,0,7,0,0,0,8,0,29,0,0,5,17,1,0,0,65],[0,0,0,0,0,16,4,57,0,0,0,6,2,0,0,41,0,0,0,4,0,32,4,67,0,0,4,244,1,0,0,65],[0,0,0,0,4,0,4,20,0,0,4,244,3,64,0,156,0,0,0,0,4,1,128,25,0,0,0,192,1,64,2,16],[0,0,5,18,1,16,1,199,19,201,19,185,0,0,4,15,0,0,0,1,2,32,1,144,0,0,13,252,0,0,97,61],[0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75,0,0,13,244,0,0,97,61,0,0,0,64,4,0,4,61],[0,0,5,30,1,0,0,65,0,0,0,0,0,20,4,53,0,0,0,4,1,64,0,57,0,0,0,9,2,0,0,41],[0,0,0,0,0,33,4,53,0,0,4,244,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,244,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,4,244,3,64,0,156,0,6,0,0,0,4,0,29,0,0,0,0,1,4,64,25],[0,0,0,64,1,16,2,16,0,0,0,192,2,32,2,16,0,0,0,0,1,18,1,159,0,0,5,31,1,16,1,199],[0,0,128,2,2,0,0,57,19,201,19,180,0,0,4,15,0,0,0,1,2,32,1,144,0,0,14,208,0,0,97,61],[0,0,0,6,9,0,0,41,0,0,5,7,1,144,0,156,0,0,0,5,1,0,0,41,0,0,13,246,0,0,33,61],[0,0,0,64,0,144,4,63,0,0,0,0,1,1,4,51,0,0,5,8,2,0,0,65,0,0,0,32,3,16,0,140],[0,0,0,0,3,0,0,25,0,0,0,0,3,2,64,25,0,0,5,8,4,16,1,151,0,0,0,0,5,4,0,75],[0,0,0,0,2,0,160,25,0,0,5,8,4,64,0,156,0,0,0,0,2,3,192,25,0,0,0,0,2,2,0,75],[0,0,13,244,0,0,193,61,0,0,0,7,2,0,0,41,0,0,0,0,2,2,4,51,0,0,5,7,3,32,0,156],[0,0,13,244,0,0,33,61,0,0,0,7,1,16,0,41,0,0,0,7,2,32,0,41,0,0,0,31,3,32,0,57],[0,0,5,8,4,0,0,65,0,0,0,0,5,19,0,75,0,0,0,0,5,0,0,25,0,0,0,0,5,4,128,25],[0,0,5,8,3,48,1,151,0,0,5,8,6,16,1,151,0,0,0,0,7,99,0,75,0,0,0,0,4,0,128,25],[0,0,0,0,3,99,1,63,0,0,5,8,3,48,0,156,0,0,0,0,4,5,192,25,0,0,0,0,3,4,0,75],[0,0,13,244,0,0,193,61,0,0,0,0,35,2,4,52,0,0,5,7,4,48,0,156,0,0,13,246,0,0,33,61],[0,0,0,5,4,48,2,16,0,0,0,63,4,64,0,57,0,0,0,32,5,0,0,138,0,0,0,0,4,84,1,111],[0,0,0,0,4,148,0,25,0,0,5,7,5,64,0,156,0,0,13,246,0,0,33,61,0,0,0,64,0,64,4,63],[0,0,0,0,0,57,4,53,0,0,0,6,3,48,2,16,0,0,0,0,3,35,0,25,0,0,0,0,4,19,0,75],[0,0,13,244,0,0,33,61,0,0,0,0,4,50,0,75,0,0,13,159,0,0,129,61,0,0,5,8,4,0,0,65],[0,0,0,0,5,9,0,25,0,0,0,0,6,33,0,73,0,0,0,64,7,96,0,140,0,0,0,0,7,0,0,25],[0,0,0,0,7,4,64,25,0,0,5,8,6,96,1,151,0,0,0,0,8,6,0,75,0,0,0,0,8,0,0,25],[0,0,0,0,8,4,32,25,0,0,5,8,6,96,0,156,0,0,0,0,8,7,192,25,0,0,0,0,6,8,0,75],[0,0,13,244,0,0,193,61,0,0,0,64,6,0,4,61,0,0,5,32,7,96,0,156,0,0,13,246,0,0,33,61],[0,0,0,32,5,80,0,57,0,0,0,64,7,96,0,57,0,0,0,64,0,112,4,63,0,0,0,0,135,2,4,52],[0,0,0,0,7,118,4,54,0,0,0,0,8,8,4,51,0,0,0,0,0,135,4,53,0,0,0,0,0,101,4,53],[0,0,0,64,2,32,0,57,0,0,0,0,6,50,0,75,0,0,13,133,0,0,65,61,0,0,5,17,1,0,0,65],[0,0,0,0,0,16,4,57,0,0,128,5,1,0,0,57,0,0,0,4,0,16,4,67,0,0,4,244,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,4,244,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,5,18,1,16,1,199,0,0,128,2,2,0,0,57,19,201,19,185,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,13,252,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75,0,0,0,6,6,0,0,41],[0,0,13,244,0,0,97,61,0,0,0,64,7,0,4,61,0,0,0,36,1,112,0,57,0,0,0,64,2,0,0,57],[0,0,0,0,0,33,4,53,0,0,5,33,1,0,0,65,0,0,0,0,0,23,4,53,0,0,0,4,1,112,0,57],[0,0,0,9,2,0,0,41,0,0,0,0,0,33,4,53,0,0,0,0,1,6,4,51,0,0,0,68,2,112,0,57],[0,0,0,0,0,18,4,53,0,0,0,100,2,112,0,57,0,0,0,0,3,1,0,75,0,0,13,203,0,0,97,61],[0,0,0,0,3,0,0,25,0,0,0,32,6,96,0,57,0,0,0,0,4,6,4,51,0,0,0,0,84,4,4,52],[0,0,0,0,4,66,4,54,0,0,0,0,5,5,4,51,0,0,0,0,0,84,4,53,0,0,0,64,2,32,0,57],[0,0,0,1,3,48,0,57,0,0,0,0,4,19,0,75,0,0,13,193,0,0,65,61,0,0,0,0,1,114,0,73],[0,0,4,244,2,0,0,65,0,0,4,244,3,112,0,156,0,0,0,0,3,2,0,25,0,0,0,0,3,7,64,25],[0,0,0,64,3,48,2,16,0,0,4,244,4,16,0,156,0,0,0,0,1,2,128,25,0,0,0,96,1,16,2,16],[0,0,0,0,1,49,1,159,0,0,0,0,3,0,4,20,0,0,4,244,4,48,0,156,0,0,0,0,3,2,128,25],[0,0,0,192,2,48,2,16,0,0,0,0,1,33,1,159,0,0,128,5,2,0,0,57,0,7,0,0,0,7,0,29],[19,201,19,180,0,0,4,15,0,0,0,1,2,32,1,144,0,0,14,240,0,0,97,61,0,0,0,7,2,0,0,41],[0,0,5,7,1,32,0,156,0,0,0,0,1,2,0,25,0,0,13,246,0,0,33,61,0,0,0,64,0,16,4,63],[0,0,4,244,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,244,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,192,1,32,2,16,0,0,5,39,1,16,1,199,0,0,128,13,2,0,0,57,0,0,0,4,3,0,0,57],[0,0,5,40,4,0,0,65,0,0,0,4,5,0,0,41,0,0,0,8,6,0,0,41,0,0,0,9,7,0,0,41],[19,201,19,180,0,0,4,15,0,0,0,1,1,32,1,144,0,0,13,244,0,0,97,61,0,0,0,0,0,1,4,45],[0,0,0,0,1,0,0,25,0,0,19,203,0,1,4,48,0,0,5,58,1,0,0,65,0,0,0,0,0,16,4,53],[0,0,0,65,1,0,0,57,0,0,0,4,0,16,4,63,0,0,5,31,1,0,0,65,0,0,19,203,0,1,4,48],[0,0,0,0,0,1,4,47,0,0,5,58,1,0,0,65,0,0,0,0,0,16,4,53,0,0,0,33,1,0,0,57],[0,0,13,249,0,0,1,61,0,0,5,58,1,0,0,65,0,0,0,0,0,16,4,53,0,0,0,17,1,0,0,57],[0,0,13,249,0,0,1,61,0,0,5,10,2,0,0,65,0,0,0,0,0,37,4,53,0,0,0,32,2,0,0,57],[0,0,0,0,0,35,4,53,0,0,0,68,1,80,0,57,0,0,5,83,2,0,0,65,0,0,0,0,0,33,4,53],[0,0,0,36,1,80,0,57,0,0,0,27,2,0,0,57,0,0,0,0,0,33,4,53,0,0,4,244,1,0,0,65],[0,0,4,244,2,80,0,156,0,0,0,0,5,1,128,25,0,0,0,64,1,80,2,16,0,0,5,20,1,16,1,199],[0,0,19,203,0,1,4,48,0,0,5,10,2,0,0,65,0,0,0,0,0,37,4,53,0,0,0,32,2,0,0,57],[0,0,0,0,0,35,4,53,0,0,0,100,1,80,0,57,0,0,5,81,2,0,0,65,0,0,0,0,0,33,4,53],[0,0,0,68,1,80,0,57,0,0,5,82,2,0,0,65,0,0,0,0,0,33,4,53,0,0,0,36,1,80,0,57],[0,0,0,40,2,0,0,57,0,0,0,0,0,33,4,53,0,0,4,244,1,0,0,65,0,0,4,244,2,80,0,156],[0,0,0,0,5,1,128,25,0,0,0,64,1,80,2,16,0,0,5,37,1,16,1,199,0,0,19,203,0,1,4,48],[0,0,0,64,2,0,4,61,0,0,0,31,4,48,1,143,0,0,0,5,5,48,2,114,0,0,14,53,0,0,97,61],[0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16,0,0,0,0,8,114,0,25,0,0,0,0,7,113,3,79],[0,0,0,0,7,7,4,59,0,0,0,0,0,120,4,53,0,0,0,1,6,96,0,57,0,0,0,0,7,86,0,75],[0,0,14,45,0,0,65,61,0,0,0,0,6,4,0,75,0,0,15,111,0,0,97,61,0,0,0,5,5,80,2,16],[0,0,0,0,1,81,3,79,0,0,0,0,5,82,0,25,0,0,0,3,4,64,2,16,0,0,0,0,6,5,4,51],[0,0,0,0,6,70,1,207,0,0,0,0,6,70,2,47,0,0,0,0,1,1,4,59,0,0,1,0,4,64,0,137],[0,0,0,0,1,65,2,47,0,0,0,0,1,65,1,207,0,0,0,0,1,97,1,159,0,0,0,0,0,21,4,53],[0,0,15,111,0,0,1,61,0,0,5,10,2,0,0,65,0,0,0,0,0,36,4,53,0,0,0,32,2,0,0,57],[0,0,0,0,0,33,4,53,0,0,0,68,1,64,0,57,0,0,5,78,2,0,0,65,0,0,0,0,0,33,4,53],[0,0,0,36,1,64,0,57,0,0,0,21,2,0,0,57,0,0,14,157,0,0,1,61,0,0,0,64,2,0,4,61],[0,0,0,31,4,48,1,143,0,0,0,5,5,48,2,114,0,0,14,92,0,0,97,61,0,0,0,0,6,0,0,25],[0,0,0,5,7,96,2,16,0,0,0,0,8,114,0,25,0,0,0,0,7,113,3,79,0,0,0,0,7,7,4,59],[0,0,0,0,0,120,4,53,0,0,0,1,6,96,0,57,0,0,0,0,7,86,0,75,0,0,14,84,0,0,65,61],[0,0,0,0,6,4,0,75,0,0,14,107,0,0,97,61,0,0,0,5,5,80,2,16,0,0,0,0,1,81,3,79],[0,0,0,0,5,82,0,25,0,0,0,3,4,64,2,16,0,0,0,0,6,5,4,51,0,0,0,0,6,70,1,207],[0,0,0,0,6,70,2,47,0,0,0,0,1,1,4,59,0,0,1,0,4,64,0,137,0,0,0,0,1,65,2,47],[0,0,0,0,1,65,1,207,0,0,0,0,1,97,1,159,0,0,0,0,0,21,4,53,0,0,15,111,0,0,1,61],[0,0,5,10,2,0,0,65,0,0,0,0,0,36,4,53,0,0,0,32,2,0,0,57,0,0,0,0,0,33,4,53],[0,0,0,68,1,64,0,57,0,0,5,80,2,0,0,65,0,0,0,0,0,33,4,53,0,0,0,36,1,64,0,57],[0,0,0,19,2,0,0,57,0,0,14,157,0,0,1,61,0,0,0,64,2,0,4,61,0,0,0,31,4,48,1,143],[0,0,0,5,5,48,2,114,0,0,14,131,0,0,97,61,0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16],[0,0,0,0,8,114,0,25,0,0,0,0,7,113,3,79,0,0,0,0,7,7,4,59,0,0,0,0,0,120,4,53],[0,0,0,1,6,96,0,57,0,0,0,0,7,86,0,75,0,0,14,123,0,0,65,61,0,0,0,0,6,4,0,75],[0,0,14,146,0,0,97,61,0,0,0,5,5,80,2,16,0,0,0,0,1,81,3,79,0,0,0,0,5,82,0,25],[0,0,0,3,4,64,2,16,0,0,0,0,6,5,4,51,0,0,0,0,6,70,1,207,0,0,0,0,6,70,2,47],[0,0,0,0,1,1,4,59,0,0,1,0,4,64,0,137,0,0,0,0,1,65,2,47,0,0,0,0,1,65,1,207],[0,0,0,0,1,97,1,159,0,0,0,0,0,21,4,53,0,0,15,111,0,0,1,61,0,0,0,68,1,64,0,57],[0,0,5,41,2,0,0,65,0,0,0,0,0,33,4,53,0,0,0,36,1,64,0,57,0,0,0,26,2,0,0,57],[0,0,0,0,0,33,4,53,0,0,5,10,1,0,0,65,0,0,0,0,0,20,4,53,0,0,0,4,1,64,0,57],[0,0,0,32,2,0,0,57,0,0,0,0,0,33,4,53,0,0,4,244,1,0,0,65,0,0,4,244,2,64,0,156],[0,0,0,0,4,1,128,25,0,0,0,64,1,64,2,16,0,0,5,20,1,16,1,199,0,0,19,203,0,1,4,48],[0,0,5,10,1,0,0,65,0,0,0,0,0,22,4,53,0,0,0,32,1,0,0,57,0,0,0,2,2,0,0,41],[0,0,0,0,0,18,4,53,0,0,0,8,1,0,0,57,0,0,0,1,2,0,0,41,0,0,0,0,0,18,4,53],[0,0,0,68,1,96,0,57,0,0,5,34,2,0,0,65,0,0,0,0,0,33,4,53,0,0,4,244,1,0,0,65],[0,0,4,244,2,96,0,156,0,0,0,0,6,1,128,25,0,0,0,64,1,96,2,16,0,0,5,20,1,16,1,199],[0,0,19,203,0,1,4,48,0,0,0,31,4,48,1,143,0,0,0,5,2,48,2,114,0,0,14,192,0,0,97,61],[0,0,0,0,5,0,0,25,0,0,0,5,6,80,2,16,0,0,0,0,7,97,3,79,0,0,0,0,7,7,4,59],[0,0,0,0,0,118,4,53,0,0,0,1,5,80,0,57,0,0,0,0,6,37,0,75,0,0,14,185,0,0,65,61],[0,0,0,0,5,4,0,75,0,0,14,206,0,0,97,61,0,0,0,3,4,64,2,16,0,0,0,5,2,32,2,16],[0,0,0,0,5,2,4,51,0,0,0,0,5,69,1,207,0,0,0,0,5,69,2,47,0,0,0,0,1,33,3,79],[0,0,0,0,1,1,4,59,0,0,1,0,4,64,0,137,0,0,0,0,1,65,2,47,0,0,0,0,1,65,1,207],[0,0,0,0,1,81,1,159,0,0,0,0,0,18,4,53,0,0,0,96,1,48,2,16,0,0,19,203,0,1,4,48],[0,0,0,64,2,0,4,61,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,0,31,4,48,1,143],[0,0,4,244,3,48,1,151,0,0,0,5,5,48,2,114,0,0,14,224,0,0,97,61,0,0,0,0,6,0,0,25],[0,0,0,5,7,96,2,16,0,0,0,0,8,114,0,25,0,0,0,0,7,113,3,79,0,0,0,0,7,7,4,59],[0,0,0,0,0,120,4,53,0,0,0,1,6,96,0,57,0,0,0,0,7,86,0,75,0,0,14,216,0,0,65,61],[0,0,0,0,6,4,0,75,0,0,14,239,0,0,97,61,0,0,0,5,5,80,2,16,0,0,0,0,1,81,3,79],[0,0,0,0,5,82,0,25,0,0,0,3,4,64,2,16,0,0,0,0,6,5,4,51,0,0,0,0,6,70,1,207],[0,0,0,0,6,70,2,47,0,0,0,0,1,1,4,59,0,0,1,0,4,64,0,137,0,0,0,0,1,65,2,47],[0,0,0,0,1,65,1,207,0,0,0,0,1,97,1,159,0,0,0,0,0,21,4,53,0,0,15,111,0,0,1,61],[0,0,0,64,2,0,4,61,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,0,31,4,48,1,143],[0,0,4,244,3,48,1,151,0,0,0,5,5,48,2,114,0,0,15,0,0,0,97,61,0,0,0,0,6,0,0,25],[0,0,0,5,7,96,2,16,0,0,0,0,8,114,0,25,0,0,0,0,7,113,3,79,0,0,0,0,7,7,4,59],[0,0,0,0,0,120,4,53,0,0,0,1,6,96,0,57,0,0,0,0,7,86,0,75,0,0,14,248,0,0,65,61],[0,0,0,0,6,4,0,75,0,0,15,15,0,0,97,61,0,0,0,5,5,80,2,16,0,0,0,0,1,81,3,79],[0,0,0,0,5,82,0,25,0,0,0,3,4,64,2,16,0,0,0,0,6,5,4,51,0,0,0,0,6,70,1,207],[0,0,0,0,6,70,2,47,0,0,0,0,1,1,4,59,0,0,1,0,4,64,0,137,0,0,0,0,1,65,2,47],[0,0,0,0,1,65,1,207,0,0,0,0,1,97,1,159,0,0,0,0,0,21,4,53,0,0,15,111,0,0,1,61],[0,0,0,64,2,0,4,61,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,0,31,4,48,1,143],[0,0,4,244,3,48,1,151,0,0,0,5,5,48,2,114,0,0,15,32,0,0,97,61,0,0,0,0,6,0,0,25],[0,0,0,5,7,96,2,16,0,0,0,0,8,114,0,25,0,0,0,0,7,113,3,79,0,0,0,0,7,7,4,59],[0,0,0,0,0,120,4,53,0,0,0,1,6,96,0,57,0,0,0,0,7,86,0,75,0,0,15,24,0,0,65,61],[0,0,0,0,6,4,0,75,0,0,15,47,0,0,97,61,0,0,0,5,5,80,2,16,0,0,0,0,1,81,3,79],[0,0,0,0,5,82,0,25,0,0,0,3,4,64,2,16,0,0,0,0,6,5,4,51,0,0,0,0,6,70,1,207],[0,0,0,0,6,70,2,47,0,0,0,0,1,1,4,59,0,0,1,0,4,64,0,137,0,0,0,0,1,65,2,47],[0,0,0,0,1,65,1,207,0,0,0,0,1,97,1,159,0,0,0,0,0,21,4,53,0,0,15,111,0,0,1,61],[0,0,0,64,2,0,4,61,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,0,31,4,48,1,143],[0,0,4,244,3,48,1,151,0,0,0,5,5,48,2,114,0,0,15,64,0,0,97,61,0,0,0,0,6,0,0,25],[0,0,0,5,7,96,2,16,0,0,0,0,8,114,0,25,0,0,0,0,7,113,3,79,0,0,0,0,7,7,4,59],[0,0,0,0,0,120,4,53,0,0,0,1,6,96,0,57,0,0,0,0,7,86,0,75,0,0,15,56,0,0,65,61],[0,0,0,0,6,4,0,75,0,0,15,79,0,0,97,61,0,0,0,5,5,80,2,16,0,0,0,0,1,81,3,79],[0,0,0,0,5,82,0,25,0,0,0,3,4,64,2,16,0,0,0,0,6,5,4,51,0,0,0,0,6,70,1,207],[0,0,0,0,6,70,2,47,0,0,0,0,1,1,4,59,0,0,1,0,4,64,0,137,0,0,0,0,1,65,2,47],[0,0,0,0,1,65,1,207,0,0,0,0,1,97,1,159,0,0,0,0,0,21,4,53,0,0,15,111,0,0,1,61],[0,0,0,64,2,0,4,61,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,0,31,4,48,1,143],[0,0,4,244,3,48,1,151,0,0,0,5,5,48,2,114,0,0,15,96,0,0,97,61,0,0,0,0,6,0,0,25],[0,0,0,5,7,96,2,16,0,0,0,0,8,114,0,25,0,0,0,0,7,113,3,79,0,0,0,0,7,7,4,59],[0,0,0,0,0,120,4,53,0,0,0,1,6,96,0,57,0,0,0,0,7,86,0,75,0,0,15,88,0,0,65,61],[0,0,0,0,6,4,0,75,0,0,15,111,0,0,97,61,0,0,0,5,5,80,2,16,0,0,0,0,1,81,3,79],[0,0,0,0,5,82,0,25,0,0,0,3,4,64,2,16,0,0,0,0,6,5,4,51,0,0,0,0,6,70,1,207],[0,0,0,0,6,70,2,47,0,0,0,0,1,1,4,59,0,0,1,0,4,64,0,137,0,0,0,0,1,65,2,47],[0,0,0,0,1,65,1,207,0,0,0,0,1,97,1,159,0,0,0,0,0,21,4,53,0,0,4,244,1,0,0,65],[0,0,4,244,4,32,0,156,0,0,0,0,2,1,128,25,0,0,0,64,1,32,2,16,0,0,0,96,2,48,2,16],[0,0,0,0,1,33,1,159,0,0,19,203,0,1,4,48,0,9,0,0,0,0,0,2,0,3,0,0,0,5,0,29],[0,4,0,0,0,4,0,29,0,5,0,0,0,3,0,29,0,0,0,64,4,0,4,61,0,0,0,4,3,64,0,57],[0,8,0,0,0,1,0,29,0,0,0,0,1,1,0,75,0,0,18,72,0,0,97,61,0,2,0,0,0,2,0,29],[0,0,5,9,1,32,1,151,0,0,255,255,2,16,0,140,0,0,18,82,0,0,161,61,0,0,5,77,2,0,0,65],[0,0,0,0,0,36,4,53,0,9,0,0,0,1,0,29,0,0,0,0,0,19,4,53,0,0,4,244,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,4,244,3,32,0,156,0,0,0,0,2,1,128,25,0,0,4,244,3,64,0,156],[0,0,0,0,1,4,64,25,0,0,0,64,1,16,2,16,0,0,0,192,2,32,2,16,0,0,0,0,1,18,1,159],[0,0,5,31,1,16,1,199,0,0,128,2,2,0,0,57,0,6,0,0,0,2,0,29,0,7,0,0,0,4,0,29],[19,201,19,185,0,0,4,15,0,0,0,7,10,0,0,41,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,0,4,244,3,48,1,151,0,0,0,32,4,48,0,140,0,0,0,0,4,3,0,25,0,0,0,32,4,0,128,57],[0,0,0,31,5,64,1,143,0,0,0,5,6,64,2,114,0,0,15,168,0,0,97,61,0,0,0,0,7,0,0,25],[0,0,0,5,8,112,2,16,0,0,0,0,9,138,0,25,0,0,0,0,8,129,3,79,0,0,0,0,8,8,4,59],[0,0,0,0,0,137,4,53,0,0,0,1,7,112,0,57,0,0,0,0,8,103,0,75,0,0,15,160,0,0,65,61],[0,0,0,0,7,5,0,75,0,0,15,183,0,0,97,61,0,0,0,5,6,96,2,16,0,0,0,0,7,97,3,79],[0,0,0,0,6,106,0,25,0,0,0,3,5,80,2,16,0,0,0,0,8,6,4,51,0,0,0,0,8,88,1,207],[0,0,0,0,8,88,2,47,0,0,0,0,7,7,4,59,0,0,1,0,5,80,0,137,0,0,0,0,7,87,2,47],[0,0,0,0,5,87,1,207,0,0,0,0,5,133,1,159,0,0,0,0,0,86,4,53,0,0,0,1,2,32,1,144],[0,0,18,101,0,0,97,61,0,0,0,31,1,64,0,57,0,0,0,96,1,16,1,143,0,0,0,0,4,161,0,25],[0,0,0,0,1,20,0,75,0,0,0,0,1,0,0,25,0,0,0,1,1,0,64,57,0,0,5,7,2,64,0,156],[0,0,18,57,0,0,33,61,0,0,0,1,1,16,1,144,0,0,18,57,0,0,193,61,0,0,0,64,0,64,4,63],[0,0,0,31,1,48,0,140,0,0,18,55,0,0,161,61,0,0,0,4,1,64,0,57,0,0,0,0,2,10,4,51],[0,0,0,0,2,2,0,75,0,0,18,130,0,0,193,61,0,0,5,79,2,0,0,65,0,0,0,0,0,36,4,53],[0,0,0,9,2,0,0,41,0,0,0,0,0,33,4,53,0,0,4,244,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,4,244,3,32,0,156,0,0,0,0,2,1,128,25,0,0,4,244,3,64,0,156,0,0,0,0,1,4,64,25],[0,0,0,64,1,16,2,16,0,0,0,192,2,32,2,16,0,0,0,0,1,18,1,159,0,0,5,31,1,16,1,199],[0,0,128,3,2,0,0,57,0,7,0,0,0,4,0,29,19,201,19,185,0,0,4,15,0,0,0,7,10,0,0,41],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,4,244,3,48,1,151,0,0,0,32,4,48,0,140],[0,0,0,0,4,3,0,25,0,0,0,32,4,0,128,57,0,0,0,31,5,64,1,143,0,0,0,5,6,64,2,114],[0,0,15,238,0,0,97,61,0,0,0,0,7,0,0,25,0,0,0,5,8,112,2,16,0,0,0,0,9,138,0,25],[0,0,0,0,8,129,3,79,0,0,0,0,8,8,4,59,0,0,0,0,0,137,4,53,0,0,0,1,7,112,0,57],[0,0,0,0,8,103,0,75,0,0,15,230,0,0,65,61,0,0,0,0,7,5,0,75,0,0,15,253,0,0,97,61],[0,0,0,5,6,96,2,16,0,0,0,0,7,97,3,79,0,0,0,0,6,106,0,25,0,0,0,3,5,80,2,16],[0,0,0,0,8,6,4,51,0,0,0,0,8,88,1,207,0,0,0,0,8,88,2,47,0,0,0,0,7,7,4,59],[0,0,1,0,5,80,0,137,0,0,0,0,7,87,2,47,0,0,0,0,5,87,1,207,0,0,0,0,5,133,1,159],[0,0,0,0,0,86,4,53,0,0,0,1,2,32,1,144,0,0,18,140,0,0,97,61,0,0,0,31,1,64,0,57],[0,0,0,96,1,16,1,143,0,0,0,0,4,161,0,25,0,0,5,7,1,64,0,156,0,0,18,57,0,0,33,61],[0,0,0,64,0,64,4,63,0,0,0,32,1,48,0,140,0,0,18,55,0,0,65,61,0,0,0,4,1,64,0,57],[0,0,0,0,2,10,4,51,0,0,0,0,2,2,0,75,0,0,18,169,0,0,193,61,0,0,5,13,2,0,0,65],[0,0,0,0,0,36,4,53,0,0,0,8,2,0,0,41,0,0,0,0,0,33,4,53,0,0,4,244,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,4,244,3,32,0,156,0,0,0,0,2,1,128,25,0,0,4,244,3,64,0,156],[0,0,0,0,1,4,64,25,0,0,0,64,1,16,2,16,0,0,0,192,2,32,2,16,0,0,0,0,1,18,1,159],[0,0,5,31,1,16,1,199,0,0,128,4,2,0,0,57,0,7,0,0,0,4,0,29,19,201,19,185,0,0,4,15],[0,0,0,7,10,0,0,41,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,4,244,3,48,1,151],[0,0,0,32,4,48,0,140,0,0,0,0,4,3,0,25,0,0,0,32,4,0,128,57,0,0,0,31,5,64,1,143],[0,0,0,5,6,64,2,114,0,0,16,47,0,0,97,61,0,0,0,0,7,0,0,25,0,0,0,5,8,112,2,16],[0,0,0,0,9,138,0,25,0,0,0,0,8,129,3,79,0,0,0,0,8,8,4,59,0,0,0,0,0,137,4,53],[0,0,0,1,7,112,0,57,0,0,0,0,8,103,0,75,0,0,16,39,0,0,65,61,0,0,0,0,7,5,0,75],[0,0,16,62,0,0,97,61,0,0,0,5,6,96,2,16,0,0,0,0,7,97,3,79,0,0,0,0,6,106,0,25],[0,0,0,3,5,80,2,16,0,0,0,0,8,6,4,51,0,0,0,0,8,88,1,207,0,0,0,0,8,88,2,47],[0,0,0,0,7,7,4,59,0,0,1,0,5,80,0,137,0,0,0,0,7,87,2,47,0,0,0,0,5,87,1,207],[0,0,0,0,5,133,1,159,0,0,0,0,0,86,4,53,0,0,0,1,2,32,1,144,0,0,18,179,0,0,97,61],[0,0,0,31,1,64,0,57,0,0,0,96,1,16,1,143,0,0,0,0,4,161,0,25,0,0,5,7,1,64,0,156],[0,0,18,57,0,0,33,61,0,0,0,64,0,64,4,63,0,0,0,32,1,48,0,140,0,0,18,55,0,0,65,61],[0,0,0,0,1,10,4,51,0,0,0,0,1,1,0,75,0,0,18,208,0,0,97,61,0,0,5,32,1,64,0,156],[0,0,18,57,0,0,33,61,0,0,0,64,1,64,0,57,0,0,0,64,0,16,4,63,0,0,0,0,3,4,4,54],[0,0,0,0,0,3,4,53,0,0,0,5,2,0,0,41,0,0,0,2,1,32,0,140,0,0,18,64,0,0,129,61],[0,0,0,0,0,36,4,53,0,5,0,0,0,3,0,29,0,0,0,0,0,3,4,53,0,0,0,9,1,0,0,41],[0,0,0,0,0,16,4,53,0,0,0,32,0,0,4,63,0,0,4,244,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,4,244,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,5,15,1,16,1,199],[0,0,128,16,2,0,0,57,0,7,0,0,0,4,0,29,19,201,19,185,0,0,4,15,0,0,0,7,3,0,0,41],[0,0,0,1,2,32,1,144,0,0,18,55,0,0,97,61,0,0,0,0,2,3,4,51,0,0,0,1,3,32,0,140],[0,0,0,5,5,0,0,41,0,0,18,64,0,0,33,61,0,0,0,0,1,1,4,59,0,0,0,0,3,1,4,26],[0,0,1,0,4,0,0,138,0,0,0,0,3,67,1,111,0,0,0,0,2,35,1,159,0,0,0,0,0,33,4,27],[0,0,0,0,3,5,4,51,0,0,0,1,4,48,0,140,0,0,18,64,0,0,33,61,0,0,5,16,4,0,0,65],[0,0,0,0,2,66,1,111,0,0,0,8,3,48,2,16,0,0,255,0,3,48,1,143,0,0,0,0,2,35,1,159],[0,0,0,0,0,33,4,27,0,0,0,0,1,0,4,22,0,0,5,17,2,0,0,65,0,0,0,0,0,32,4,57],[0,0,0,0,1,1,0,75,0,0,16,226,0,0,97,61,0,0,128,10,1,0,0,57,0,0,0,4,0,16,4,67],[0,0,4,244,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,244,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,192,1,32,2,16,0,0,5,18,1,16,1,199,0,0,128,2,2,0,0,57,0,7,0,0,0,2,0,29],[19,201,19,185,0,0,4,15,0,0,0,1,2,32,1,144,0,0,18,63,0,0,97,61,0,0,0,0,1,1,4,59],[0,0,0,0,1,1,0,75,0,0,18,55,0,0,97,61,0,0,0,64,4,0,4,61,0,0,5,19,1,0,0,65],[0,0,0,0,0,20,4,53,0,0,0,68,1,64,0,57,0,0,0,0,2,0,4,22,0,0,0,0,0,33,4,53],[0,0,0,36,1,64,0,57,0,0,0,9,2,0,0,41,0,0,0,0,0,33,4,53,0,0,0,0,1,0,4,16],[0,0,5,9,1,16,1,151,0,0,0,4,2,64,0,57,0,0,0,0,0,18,4,53,0,0,4,244,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,4,244,3,32,0,156,0,0,0,0,2,1,128,25,0,0,4,244,3,64,0,156],[0,5,0,0,0,4,0,29,0,0,0,0,1,4,64,25,0,0,0,64,1,16,2,16,0,0,0,192,2,32,2,16],[0,0,0,0,1,18,1,159,0,0,5,20,1,16,1,199,0,0,128,10,2,0,0,57,19,201,19,180,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,19,77,0,0,97,61,0,0,0,5,2,0,0,41,0,0,5,7,1,32,0,156],[0,0,18,57,0,0,33,61,0,0,0,64,0,32,4,63,0,0,5,17,1,0,0,65,0,0,0,0,0,16,4,57],[0,0,0,7,2,0,0,41,0,0,0,4,0,32,4,67,0,0,4,244,1,0,0,65,0,0,0,0,4,0,4,20],[0,0,4,244,3,64,0,156,0,0,0,0,4,1,128,25,0,0,0,192,1,64,2,16,0,0,5,18,1,16,1,199],[19,201,19,185,0,0,4,15,0,0,0,1,2,32,1,144,0,0,18,63,0,0,97,61,0,0,0,0,1,1,4,59],[0,0,0,0,1,1,0,75,0,0,18,55,0,0,97,61,0,0,0,64,4,0,4,61,0,0,5,21,1,0,0,65],[0,0,0,0,0,20,4,53,0,0,0,4,2,64,0,57,0,0,0,9,1,0,0,41,0,5,0,0,0,2,0,29],[0,0,0,0,0,18,4,53,0,0,0,8,1,0,0,41,0,0,5,22,1,16,1,151,0,0,5,23,1,16,1,199],[0,0,0,36,2,64,0,57,0,1,0,0,0,2,0,29,0,0,0,0,0,18,4,53,0,0,4,244,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,4,244,3,32,0,156,0,0,0,0,2,1,128,25,0,0,4,244,3,64,0,156],[0,7,0,0,0,4,0,29,0,0,0,0,1,4,64,25,0,0,0,64,1,16,2,16,0,0,0,192,2,32,2,16],[0,0,0,0,1,18,1,159,0,0,5,24,1,16,1,199,0,0,128,2,2,0,0,57,19,201,19,180,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,19,109,0,0,97,61,0,0,0,7,6,0,0,41,0,0,5,7,1,96,0,156],[0,0,18,57,0,0,33,61,0,0,0,64,0,96,4,63,0,0,0,0,1,0,4,22,0,0,5,25,1,16,1,151],[0,0,0,0,0,1,4,23,0,0,17,16,0,0,1,61,0,0,0,6,2,0,0,41,0,0,0,4,0,32,4,67],[0,0,4,244,1,0,0,65,0,0,0,0,4,0,4,20,0,0,4,244,3,64,0,156,0,0,0,0,4,1,128,25],[0,0,0,192,1,64,2,16,0,0,5,18,1,16,1,199,19,201,19,185,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,18,63,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75,0,0,18,55,0,0,97,61],[0,0,0,64,4,0,4,61,0,0,5,21,1,0,0,65,0,0,0,0,0,20,4,53,0,0,0,4,2,64,0,57],[0,0,0,9,1,0,0,41,0,5,0,0,0,2,0,29,0,0,0,0,0,18,4,53,0,0,0,8,1,0,0,41],[0,0,5,22,1,16,1,151,0,0,5,23,1,16,1,199,0,0,0,36,2,64,0,57,0,1,0,0,0,2,0,29],[0,0,0,0,0,18,4,53,0,0,4,244,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,244,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,4,244,3,64,0,156,0,7,0,0,0,4,0,29,0,0,0,0,1,4,64,25],[0,0,0,64,1,16,2,16,0,0,0,192,2,32,2,16,0,0,0,0,1,18,1,159,0,0,5,24,1,16,1,199],[0,0,128,2,2,0,0,57,19,201,19,180,0,0,4,15,0,0,0,1,2,32,1,144,0,0,19,141,0,0,97,61],[0,0,0,7,6,0,0,41,0,0,5,7,1,96,0,156,0,0,18,57,0,0,33,61,0,0,0,64,0,96,4,63],[0,0,0,0,1,0,4,20,0,0,0,4,4,0,0,41,0,0,0,3,2,64,0,41,0,0,0,3,3,32,0,108],[0,0,0,0,3,0,0,25,0,0,0,1,3,0,64,57,0,0,4,244,4,64,1,151,0,0,0,1,3,48,1,144],[0,0,18,68,0,0,193,61,0,0,0,0,3,0,0,49,0,0,0,0,5,35,0,75,0,0,18,68,0,0,65,61],[0,0,0,1,4,64,3,103,0,0,5,26,5,16,0,156,0,0,18,225,0,0,129,61,0,0,0,0,5,0,4,17],[0,0,0,0,2,35,0,73,0,0,4,244,2,32,1,151,0,0,0,0,2,36,3,223,0,0,0,192,1,16,2,16],[0,0,5,27,1,16,1,151,0,0,5,28,1,16,1,199,0,0,0,0,1,18,3,175,0,4,0,0,0,5,0,29],[0,0,5,9,13,80,1,151,0,0,0,2,2,0,0,41,19,201,19,195,0,0,4,15,0,0,0,0,3,1,0,25],[0,0,0,96,3,48,2,112,0,0,4,244,3,48,1,151,0,0,0,1,2,32,1,144,0,0,18,242,0,0,97,61],[0,0,0,63,2,48,0,57,0,0,5,29,2,32,1,151,0,0,0,64,6,0,4,61,0,0,0,0,2,38,0,25],[0,0,0,0,4,98,0,75,0,0,0,0,4,0,0,25,0,0,0,1,4,0,64,57,0,0,5,7,5,32,0,156],[0,0,18,57,0,0,33,61,0,0,0,1,4,64,1,144,0,0,18,57,0,0,193,61,0,0,0,64,0,32,4,63],[0,5,0,0,0,6,0,29,0,0,0,0,8,54,4,54,0,0,0,31,2,48,0,57,0,0,0,5,2,32,2,114],[0,0,17,76,0,0,97,61,0,0,0,0,4,0,0,49,0,0,0,1,4,64,3,103,0,0,0,0,5,0,0,25],[0,0,0,5,6,80,2,16,0,0,0,0,7,104,0,25,0,0,0,0,6,100,3,79,0,0,0,0,6,6,4,59],[0,0,0,0,0,103,4,53,0,0,0,1,5,80,0,57,0,0,0,0,6,37,0,75,0,0,17,68,0,0,65,61],[0,0,0,0,2,0,0,75,0,0,17,78,0,0,97,61,0,0,0,31,2,48,1,143,0,0,0,5,3,48,2,114],[0,0,17,90,0,0,97,61,0,0,0,0,4,0,0,25,0,0,0,5,5,64,2,16,0,0,0,0,6,88,0,25],[0,0,0,0,5,81,3,79,0,0,0,0,5,5,4,59,0,0,0,0,0,86,4,53,0,0,0,1,4,64,0,57],[0,0,0,0,5,52,0,75,0,0,17,82,0,0,65,61,0,0,0,0,4,2,0,75,0,0,17,105,0,0,97,61],[0,0,0,5,3,48,2,16,0,0,0,0,1,49,3,79,0,0,0,0,3,56,0,25,0,0,0,3,2,32,2,16],[0,0,0,0,4,3,4,51,0,0,0,0,4,36,1,207,0,0,0,0,4,36,2,47,0,0,0,0,1,1,4,59],[0,0,1,0,2,32,0,137,0,0,0,0,1,33,2,47,0,0,0,0,1,33,1,207,0,0,0,0,1,65,1,159],[0,0,0,0,0,19,4,53,0,7,0,0,0,8,0,29,0,0,5,17,1,0,0,65,0,0,0,0,0,16,4,57],[0,0,0,6,2,0,0,41,0,0,0,4,0,32,4,67,0,0,4,244,1,0,0,65,0,0,0,0,4,0,4,20],[0,0,4,244,3,64,0,156,0,0,0,0,4,1,128,25,0,0,0,192,1,64,2,16,0,0,5,18,1,16,1,199],[19,201,19,185,0,0,4,15,0,0,0,1,2,32,1,144,0,0,18,63,0,0,97,61,0,0,0,0,1,1,4,59],[0,0,0,0,1,1,0,75,0,0,18,55,0,0,97,61,0,0,0,64,4,0,4,61,0,0,5,30,1,0,0,65],[0,0,0,0,0,20,4,53,0,0,0,4,1,64,0,57,0,0,0,9,2,0,0,41,0,0,0,0,0,33,4,53],[0,0,4,244,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,244,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,4,244,3,64,0,156,0,6,0,0,0,4,0,29,0,0,0,0,1,4,64,25,0,0,0,64,1,16,2,16],[0,0,0,192,2,32,2,16,0,0,0,0,1,18,1,159,0,0,5,31,1,16,1,199,0,0,128,2,2,0,0,57],[19,201,19,180,0,0,4,15,0,0,0,1,2,32,1,144,0,0,19,13,0,0,97,61,0,0,0,6,9,0,0,41],[0,0,5,7,1,144,0,156,0,0,0,5,1,0,0,41,0,0,18,57,0,0,33,61,0,0,0,64,0,144,4,63],[0,0,0,0,1,1,4,51,0,0,5,8,2,0,0,65,0,0,0,32,3,16,0,140,0,0,0,0,3,0,0,25],[0,0,0,0,3,2,64,25,0,0,5,8,4,16,1,151,0,0,0,0,5,4,0,75,0,0,0,0,2,0,160,25],[0,0,5,8,4,64,0,156,0,0,0,0,2,3,192,25,0,0,0,0,2,2,0,75,0,0,18,55,0,0,193,61],[0,0,0,7,2,0,0,41,0,0,0,0,2,2,4,51,0,0,5,7,3,32,0,156,0,0,18,55,0,0,33,61],[0,0,0,7,1,16,0,41,0,0,0,7,2,32,0,41,0,0,0,31,3,32,0,57,0,0,5,8,4,0,0,65],[0,0,0,0,5,19,0,75,0,0,0,0,5,0,0,25,0,0,0,0,5,4,128,25,0,0,5,8,3,48,1,151],[0,0,5,8,6,16,1,151,0,0,0,0,7,99,0,75,0,0,0,0,4,0,128,25,0,0,0,0,3,99,1,63],[0,0,5,8,3,48,0,156,0,0,0,0,4,5,192,25,0,0,0,0,3,4,0,75,0,0,18,55,0,0,193,61],[0,0,0,0,35,2,4,52,0,0,5,7,4,48,0,156,0,0,18,57,0,0,33,61,0,0,0,5,4,48,2,16],[0,0,0,63,4,64,0,57,0,0,0,32,5,0,0,138,0,0,0,0,4,84,1,111,0,0,0,0,4,148,0,25],[0,0,5,7,5,64,0,156,0,0,18,57,0,0,33,61,0,0,0,64,0,64,4,63,0,0,0,0,0,57,4,53],[0,0,0,6,3,48,2,16,0,0,0,0,3,35,0,25,0,0,0,0,4,19,0,75,0,0,18,55,0,0,33,61],[0,0,0,0,4,50,0,75,0,0,17,226,0,0,129,61,0,0,5,8,4,0,0,65,0,0,0,0,5,9,0,25],[0,0,0,0,6,33,0,73,0,0,0,64,7,96,0,140,0,0,0,0,7,0,0,25,0,0,0,0,7,4,64,25],[0,0,5,8,6,96,1,151,0,0,0,0,8,6,0,75,0,0,0,0,8,0,0,25,0,0,0,0,8,4,32,25],[0,0,5,8,6,96,0,156,0,0,0,0,8,7,192,25,0,0,0,0,6,8,0,75,0,0,18,55,0,0,193,61],[0,0,0,64,6,0,4,61,0,0,5,32,7,96,0,156,0,0,18,57,0,0,33,61,0,0,0,32,5,80,0,57],[0,0,0,64,7,96,0,57,0,0,0,64,0,112,4,63,0,0,0,0,135,2,4,52,0,0,0,0,7,118,4,54],[0,0,0,0,8,8,4,51,0,0,0,0,0,135,4,53,0,0,0,0,0,101,4,53,0,0,0,64,2,32,0,57],[0,0,0,0,6,50,0,75,0,0,17,200,0,0,65,61,0,0,5,17,1,0,0,65,0,0,0,0,0,16,4,57],[0,0,128,5,1,0,0,57,0,0,0,4,0,16,4,67,0,0,4,244,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,4,244,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,5,18,1,16,1,199],[0,0,128,2,2,0,0,57,19,201,19,185,0,0,4,15,0,0,0,1,2,32,1,144,0,0,18,63,0,0,97,61],[0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75,0,0,0,6,6,0,0,41,0,0,18,55,0,0,97,61],[0,0,0,64,7,0,4,61,0,0,0,36,1,112,0,57,0,0,0,64,2,0,0,57,0,0,0,0,0,33,4,53],[0,0,5,33,1,0,0,65,0,0,0,0,0,23,4,53,0,0,0,4,1,112,0,57,0,0,0,9,2,0,0,41],[0,0,0,0,0,33,4,53,0,0,0,0,1,6,4,51,0,0,0,68,2,112,0,57,0,0,0,0,0,18,4,53],[0,0,0,100,2,112,0,57,0,0,0,0,3,1,0,75,0,0,18,14,0,0,97,61,0,0,0,0,3,0,0,25],[0,0,0,32,6,96,0,57,0,0,0,0,4,6,4,51,0,0,0,0,84,4,4,52,0,0,0,0,4,66,4,54],[0,0,0,0,5,5,4,51,0,0,0,0,0,84,4,53,0,0,0,64,2,32,0,57,0,0,0,1,3,48,0,57],[0,0,0,0,4,19,0,75,0,0,18,4,0,0,65,61,0,0,0,0,1,114,0,73,0,0,4,244,2,0,0,65],[0,0,4,244,3,112,0,156,0,0,0,0,3,2,0,25,0,0,0,0,3,7,64,25,0,0,0,64,3,48,2,16],[0,0,4,244,4,16,0,156,0,0,0,0,1,2,128,25,0,0,0,96,1,16,2,16,0,0,0,0,1,49,1,159],[0,0,0,0,3,0,4,20,0,0,4,244,4,48,0,156,0,0,0,0,3,2,128,25,0,0,0,192,2,48,2,16],[0,0,0,0,1,33,1,159,0,0,128,5,2,0,0,57,0,7,0,0,0,7,0,29,19,201,19,180,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,19,45,0,0,97,61,0,0,0,7,2,0,0,41,0,0,5,7,1,32,0,156],[0,0,0,0,1,2,0,25,0,0,18,57,0,0,33,61,0,0,0,64,0,16,4,63,0,0,4,244,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,4,244,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,5,39,1,16,1,199,0,0,128,13,2,0,0,57,0,0,0,4,3,0,0,57,0,0,5,40,4,0,0,65],[0,0,0,4,5,0,0,41,0,0,0,8,6,0,0,41,0,0,0,9,7,0,0,41,19,201,19,180,0,0,4,15],[0,0,0,1,1,32,1,144,0,0,18,55,0,0,97,61,0,0,0,0,0,1,4,45,0,0,0,0,1,0,0,25],[0,0,19,203,0,1,4,48,0,0,5,58,1,0,0,65,0,0,0,0,0,16,4,53,0,0,0,65,1,0,0,57],[0,0,0,4,0,16,4,63,0,0,5,31,1,0,0,65,0,0,19,203,0,1,4,48,0,0,0,0,0,1,4,47],[0,0,5,58,1,0,0,65,0,0,0,0,0,16,4,53,0,0,0,33,1,0,0,57,0,0,18,60,0,0,1,61],[0,0,5,58,1,0,0,65,0,0,0,0,0,16,4,53,0,0,0,17,1,0,0,57,0,0,18,60,0,0,1,61],[0,0,5,10,2,0,0,65,0,0,0,0,0,36,4,53,0,0,0,32,2,0,0,57,0,0,0,0,0,35,4,53],[0,0,0,68,1,64,0,57,0,0,5,83,2,0,0,65,0,0,0,0,0,33,4,53,0,0,0,36,1,64,0,57],[0,0,0,27,2,0,0,57,0,0,18,218,0,0,1,61,0,0,5,10,2,0,0,65,0,0,0,0,0,36,4,53],[0,0,0,32,2,0,0,57,0,0,0,0,0,35,4,53,0,0,0,100,1,64,0,57,0,0,5,81,2,0,0,65],[0,0,0,0,0,33,4,53,0,0,0,68,1,64,0,57,0,0,5,82,2,0,0,65,0,0,0,0,0,33,4,53],[0,0,0,36,1,64,0,57,0,0,0,40,2,0,0,57,0,0,0,0,0,33,4,53,0,0,4,244,1,0,0,65],[0,0,4,244,2,64,0,156,0,0,0,0,4,1,128,25,0,0,0,64,1,64,2,16,0,0,5,37,1,16,1,199],[0,0,19,203,0,1,4,48,0,0,0,64,2,0,4,61,0,0,0,31,4,48,1,143,0,0,0,5,5,48,2,114],[0,0,18,114,0,0,97,61,0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16,0,0,0,0,8,114,0,25],[0,0,0,0,7,113,3,79,0,0,0,0,7,7,4,59,0,0,0,0,0,120,4,53,0,0,0,1,6,96,0,57],[0,0,0,0,7,86,0,75,0,0,18,106,0,0,65,61,0,0,0,0,6,4,0,75,0,0,19,172,0,0,97,61],[0,0,0,5,5,80,2,16,0,0,0,0,1,81,3,79,0,0,0,0,5,82,0,25,0,0,0,3,4,64,2,16],[0,0,0,0,6,5,4,51,0,0,0,0,6,70,1,207,0,0,0,0,6,70,2,47,0,0,0,0,1,1,4,59],[0,0,1,0,4,64,0,137,0,0,0,0,1,65,2,47,0,0,0,0,1,65,1,207,0,0,0,0,1,97,1,159],[0,0,0,0,0,21,4,53,0,0,19,172,0,0,1,61,0,0,5,10,2,0,0,65,0,0,0,0,0,36,4,53],[0,0,0,32,2,0,0,57,0,0,0,0,0,33,4,53,0,0,0,68,1,64,0,57,0,0,5,78,2,0,0,65],[0,0,0,0,0,33,4,53,0,0,0,36,1,64,0,57,0,0,0,21,2,0,0,57,0,0,18,218,0,0,1,61],[0,0,0,64,2,0,4,61,0,0,0,31,4,48,1,143,0,0,0,5,5,48,2,114,0,0,18,153,0,0,97,61],[0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16,0,0,0,0,8,114,0,25,0,0,0,0,7,113,3,79],[0,0,0,0,7,7,4,59,0,0,0,0,0,120,4,53,0,0,0,1,6,96,0,57,0,0,0,0,7,86,0,75],[0,0,18,145,0,0,65,61,0,0,0,0,6,4,0,75,0,0,18,168,0,0,97,61,0,0,0,5,5,80,2,16],[0,0,0,0,1,81,3,79,0,0,0,0,5,82,0,25,0,0,0,3,4,64,2,16,0,0,0,0,6,5,4,51],[0,0,0,0,6,70,1,207,0,0,0,0,6,70,2,47,0,0,0,0,1,1,4,59,0,0,1,0,4,64,0,137],[0,0,0,0,1,65,2,47,0,0,0,0,1,65,1,207,0,0,0,0,1,97,1,159,0,0,0,0,0,21,4,53],[0,0,19,172,0,0,1,61,0,0,5,10,2,0,0,65,0,0,0,0,0,36,4,53,0,0,0,32,2,0,0,57],[0,0,0,0,0,33,4,53,0,0,0,68,1,64,0,57,0,0,5,80,2,0,0,65,0,0,0,0,0,33,4,53],[0,0,0,36,1,64,0,57,0,0,0,19,2,0,0,57,0,0,18,218,0,0,1,61,0,0,0,64,2,0,4,61],[0,0,0,31,4,48,1,143,0,0,0,5,5,48,2,114,0,0,18,192,0,0,97,61,0,0,0,0,6,0,0,25],[0,0,0,5,7,96,2,16,0,0,0,0,8,114,0,25,0,0,0,0,7,113,3,79,0,0,0,0,7,7,4,59],[0,0,0,0,0,120,4,53,0,0,0,1,6,96,0,57,0,0,0,0,7,86,0,75,0,0,18,184,0,0,65,61],[0,0,0,0,6,4,0,75,0,0,18,207,0,0,97,61,0,0,0,5,5,80,2,16,0,0,0,0,1,81,3,79],[0,0,0,0,5,82,0,25,0,0,0,3,4,64,2,16,0,0,0,0,6,5,4,51,0,0,0,0,6,70,1,207],[0,0,0,0,6,70,2,47,0,0,0,0,1,1,4,59,0,0,1,0,4,64,0,137,0,0,0,0,1,65,2,47],[0,0,0,0,1,65,1,207,0,0,0,0,1,97,1,159,0,0,0,0,0,21,4,53,0,0,19,172,0,0,1,61],[0,0,0,68,1,64,0,57,0,0,5,41,2,0,0,65,0,0,0,0,0,33,4,53,0,0,0,36,1,64,0,57],[0,0,0,26,2,0,0,57,0,0,0,0,0,33,4,53,0,0,5,10,1,0,0,65,0,0,0,0,0,20,4,53],[0,0,0,4,1,64,0,57,0,0,0,32,2,0,0,57,0,0,0,0,0,33,4,53,0,0,4,244,1,0,0,65],[0,0,4,244,2,64,0,156,0,0,0,0,4,1,128,25,0,0,0,64,1,64,2,16,0,0,5,20,1,16,1,199],[0,0,19,203,0,1,4,48,0,0,5,10,1,0,0,65,0,0,0,0,0,22,4,53,0,0,0,32,1,0,0,57],[0,0,0,5,2,0,0,41,0,0,0,0,0,18,4,53,0,0,0,8,1,0,0,57,0,0,0,1,2,0,0,41],[0,0,0,0,0,18,4,53,0,0,0,68,1,96,0,57,0,0,5,34,2,0,0,65,0,0,0,0,0,33,4,53],[0,0,4,244,1,0,0,65,0,0,4,244,2,96,0,156,0,0,0,0,6,1,128,25,0,0,0,64,1,96,2,16],[0,0,5,20,1,16,1,199,0,0,19,203,0,1,4,48,0,0,0,31,4,48,1,143,0,0,0,5,2,48,2,114],[0,0,18,253,0,0,97,61,0,0,0,0,5,0,0,25,0,0,0,5,6,80,2,16,0,0,0,0,7,97,3,79],[0,0,0,0,7,7,4,59,0,0,0,0,0,118,4,53,0,0,0,1,5,80,0,57,0,0,0,0,6,37,0,75],[0,0,18,246,0,0,65,61,0,0,0,0,5,4,0,75,0,0,19,11,0,0,97,61,0,0,0,3,4,64,2,16],[0,0,0,5,2,32,2,16,0,0,0,0,5,2,4,51,0,0,0,0,5,69,1,207,0,0,0,0,5,69,2,47],[0,0,0,0,1,33,3,79,0,0,0,0,1,1,4,59,0,0,1,0,4,64,0,137,0,0,0,0,1,65,2,47],[0,0,0,0,1,65,1,207,0,0,0,0,1,81,1,159,0,0,0,0,0,18,4,53,0,0,0,96,1,48,2,16],[0,0,19,203,0,1,4,48,0,0,0,64,2,0,4,61,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,0,0,31,4,48,1,143,0,0,4,244,3,48,1,151,0,0,0,5,5,48,2,114,0,0,19,29,0,0,97,61],[0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16,0,0,0,0,8,114,0,25,0,0,0,0,7,113,3,79],[0,0,0,0,7,7,4,59,0,0,0,0,0,120,4,53,0,0,0,1,6,96,0,57,0,0,0,0,7,86,0,75],[0,0,19,21,0,0,65,61,0,0,0,0,6,4,0,75,0,0,19,44,0,0,97,61,0,0,0,5,5,80,2,16],[0,0,0,0,1,81,3,79,0,0,0,0,5,82,0,25,0,0,0,3,4,64,2,16,0,0,0,0,6,5,4,51],[0,0,0,0,6,70,1,207,0,0,0,0,6,70,2,47,0,0,0,0,1,1,4,59,0,0,1,0,4,64,0,137],[0,0,0,0,1,65,2,47,0,0,0,0,1,65,1,207,0,0,0,0,1,97,1,159,0,0,0,0,0,21,4,53],[0,0,19,172,0,0,1,61,0,0,0,64,2,0,4,61,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,0,0,31,4,48,1,143,0,0,4,244,3,48,1,151,0,0,0,5,5,48,2,114,0,0,19,61,0,0,97,61],[0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16,0,0,0,0,8,114,0,25,0,0,0,0,7,113,3,79],[0,0,0,0,7,7,4,59,0,0,0,0,0,120,4,53,0,0,0,1,6,96,0,57,0,0,0,0,7,86,0,75],[0,0,19,53,0,0,65,61,0,0,0,0,6,4,0,75,0,0,19,76,0,0,97,61,0,0,0,5,5,80,2,16],[0,0,0,0,1,81,3,79,0,0,0,0,5,82,0,25,0,0,0,3,4,64,2,16,0,0,0,0,6,5,4,51],[0,0,0,0,6,70,1,207,0,0,0,0,6,70,2,47,0,0,0,0,1,1,4,59,0,0,1,0,4,64,0,137],[0,0,0,0,1,65,2,47,0,0,0,0,1,65,1,207,0,0,0,0,1,97,1,159,0,0,0,0,0,21,4,53],[0,0,19,172,0,0,1,61,0,0,0,64,2,0,4,61,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,0,0,31,4,48,1,143,0,0,4,244,3,48,1,151,0,0,0,5,5,48,2,114,0,0,19,93,0,0,97,61],[0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16,0,0,0,0,8,114,0,25,0,0,0,0,7,113,3,79],[0,0,0,0,7,7,4,59,0,0,0,0,0,120,4,53,0,0,0,1,6,96,0,57,0,0,0,0,7,86,0,75],[0,0,19,85,0,0,65,61,0,0,0,0,6,4,0,75,0,0,19,108,0,0,97,61,0,0,0,5,5,80,2,16],[0,0,0,0,1,81,3,79,0,0,0,0,5,82,0,25,0,0,0,3,4,64,2,16,0,0,0,0,6,5,4,51],[0,0,0,0,6,70,1,207,0,0,0,0,6,70,2,47,0,0,0,0,1,1,4,59,0,0,1,0,4,64,0,137],[0,0,0,0,1,65,2,47,0,0,0,0,1,65,1,207,0,0,0,0,1,97,1,159,0,0,0,0,0,21,4,53],[0,0,19,172,0,0,1,61,0,0,0,64,2,0,4,61,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,0,0,31,4,48,1,143,0,0,4,244,3,48,1,151,0,0,0,5,5,48,2,114,0,0,19,125,0,0,97,61],[0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16,0,0,0,0,8,114,0,25,0,0,0,0,7,113,3,79],[0,0,0,0,7,7,4,59,0,0,0,0,0,120,4,53,0,0,0,1,6,96,0,57,0,0,0,0,7,86,0,75],[0,0,19,117,0,0,65,61,0,0,0,0,6,4,0,75,0,0,19,140,0,0,97,61,0,0,0,5,5,80,2,16],[0,0,0,0,1,81,3,79,0,0,0,0,5,82,0,25,0,0,0,3,4,64,2,16,0,0,0,0,6,5,4,51],[0,0,0,0,6,70,1,207,0,0,0,0,6,70,2,47,0,0,0,0,1,1,4,59,0,0,1,0,4,64,0,137],[0,0,0,0,1,65,2,47,0,0,0,0,1,65,1,207,0,0,0,0,1,97,1,159,0,0,0,0,0,21,4,53],[0,0,19,172,0,0,1,61,0,0,0,64,2,0,4,61,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,0,0,31,4,48,1,143,0,0,4,244,3,48,1,151,0,0,0,5,5,48,2,114,0,0,19,157,0,0,97,61],[0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16,0,0,0,0,8,114,0,25,0,0,0,0,7,113,3,79],[0,0,0,0,7,7,4,59,0,0,0,0,0,120,4,53,0,0,0,1,6,96,0,57,0,0,0,0,7,86,0,75],[0,0,19,149,0,0,65,61,0,0,0,0,6,4,0,75,0,0,19,172,0,0,97,61,0,0,0,5,5,80,2,16],[0,0,0,0,1,81,3,79,0,0,0,0,5,82,0,25,0,0,0,3,4,64,2,16,0,0,0,0,6,5,4,51],[0,0,0,0,6,70,1,207,0,0,0,0,6,70,2,47,0,0,0,0,1,1,4,59,0,0,1,0,4,64,0,137],[0,0,0,0,1,65,2,47,0,0,0,0,1,65,1,207,0,0,0,0,1,97,1,159,0,0,0,0,0,21,4,53],[0,0,4,244,1,0,0,65,0,0,4,244,4,32,0,156,0,0,0,0,2,1,128,25,0,0,0,64,1,32,2,16],[0,0,0,96,2,48,2,16,0,0,0,0,1,33,1,159,0,0,19,203,0,1,4,48,0,0,0,0,0,1,4,47],[0,0,19,183,0,33,4,33,0,0,0,1,2,0,0,57,0,0,0,0,0,1,4,45,0,0,0,0,2,0,0,25],[0,0,0,0,0,1,4,45,0,0,19,188,0,33,4,35,0,0,0,1,2,0,0,57,0,0,0,0,0,1,4,45],[0,0,0,0,2,0,0,25,0,0,0,0,0,1,4,45,0,0,19,193,0,33,4,35,0,0,0,1,2,0,0,57],[0,0,0,0,0,1,4,45,0,0,0,0,2,0,0,25,0,0,0,0,0,1,4,45,0,0,0,0,15,13,0,25],[0,0,19,199,0,33,4,41,0,0,0,1,2,0,0,57,0,0,0,0,0,1,4,45,0,0,0,0,2,0,0,25],[0,0,0,0,0,1,4,45,0,0,19,201,0,0,4,50,0,0,19,202,0,1,4,46,0,0,19,203,0,1,4,48],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],[0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,1,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,156,77,83,90],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,233,241,140,22],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,236,249,91,137],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,236,249,91,138],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,243,56,95,182],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,233,241,140,23],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,236,128,103,199],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,156,77,83,91],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,187,15,214,16],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,218,55,240,127],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,93,56,38,255],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,93,56,39,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,123,81,15,232],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,132,218,31,180],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,117,152,165],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,60,218,51,81],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,87,24,9,129],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255],[128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255],[8,195,121,160,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[67,97,108,108,97,98,108,101,32,111,110,108,121,32,98,121,32,115,101,108,102,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,128,0,0,0,0,0,0,0,0],[76,99,20,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,36,0,0,0,128,0,0,0,0,0,0,0,0],[2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,0],[255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,255],[24,6,170,24,150,187,242,101,104,232,132,167,55,75,65,224,2,80,9,98,202,186,106,21,2,58,141,144,232,80,139,131],[2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,36,0,0,0,0,0,0,0,0,0,0,0,0],[87,153,82,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,0,0,0,0,0,0,0,0],[79,30,27,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[255,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255],[0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,68,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0],[0,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,255,255,255,224],[194,228,255,151,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,36,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,191],[173,126,35,46,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[79,118,101,114,102,108,111,119,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[110,111,116,32,99,97,108,108,32,116,104,101,32,99,111,110,115,116,114,117,99,116,111,114,0,0,0,0,0,0,0,0],[84,104,101,32,118,97,108,117,101,32,109,117,115,116,32,98,101,32,122,101,114,111,32,105,102,32,119,101,32,100,111,32],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,132,0,0,0,0,0,0,0,0,0,0,0,0],[13,70,81,170,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[41,10,253,174,35,26,63,192,187,174,139,26,246,54,152,176,161,215,155,33,173,23,223,3,66,223,185,82,254,116,248,229],[84,104,101,32,99,111,100,101,32,104,97,115,104,32,105,115,32,110,111,116,32,107,110,111,119,110,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0],[48,99,149,198,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,0],[105,110,103,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[111,109,32,115,101,113,117,101,110,116,105,97,108,32,116,111,32,97,114,98,105,116,114,97,114,121,32,111,114,100,101,114],[73,116,32,105,115,32,111,110,108,121,32,112,111,115,115,105,98,108,101,32,116,111,32,99,104,97,110,103,101,32,102,114],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,164,0,0,0,0,0,0,0,0,0,0,0,0],[2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,0],[199,84,65,148,218,179,139,22,82,243,84,57,185,180,128,109,139,113,225,19,242,207,92,19,81,203,46,207,124,131,149,154],[67,97,110,32,111,110,108,121,32,98,101,32,99,97,108,108,101,100,32,98,121,32,70,79,82,67,69,95,68,69,80,76],[79,89,69,82,32,111,114,32,67,79,77,80,76,69,88,95,85,80,71,82,65,68,69,82,95,67,79,78,84,82,65,67],[84,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,164,0,0,0,128,0,0,0,0,0,0,0,0],[243,56,95,182,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,254,251],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,4,0,0,0,0,0,0,0,0,0,0,0,0],[78,72,123,113,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[96,118,97,108,117,101,96,32,112,114,111,118,105,100,101,100,32,105,115,32,110,111,116,32,101,113,117,97,108,32,116,111],[32,116,104,101,32,99,111,109,98,105,110,101,100,32,96,118,97,108,117,101,96,115,32,111,102,32,100,101,112,108,111,121],[109,101,110,116,115,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[73,110,97,112,112,114,111,112,114,105,97,116,101,32,99,97,108,108,101,114,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0],[77,226,228,104,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,192],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,0],[63,182,244,241,93,221,74,117,88,140,169,52,137,74,210,205,202,178,90,80,18,226,81,94,23,131,67,61,1,40,97,26],[84,104,105,115,32,109,101,116,104,111,100,32,114,101,113,117,105,114,101,32,115,121,115,116,101,109,32,99,97,108,108,32],[102,108,97,103,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,132,0,0,0,128,0,0,0,0,0,0,0,0],[0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[107,101,99,99,97,107,50,53,54,32,114,101,116,117,114,110,101,100,32,105,110,118,97,108,105,100,32,100,97,116,97,0],[32,32,219,169,27,48,204,0,6,24,138,247,148,194,251,48,221,133,32,219,126,44,8,139,127,199,193,3,192,12,164,148],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,63],[99,186,227,169,149,29,56,232,163,251,183,183,9,9,175,193,32,6,16,252,91,197,90,222,36,47,129,89,116,103,79,35],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,128],[224,63,225,119,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[67,111,100,101,32,104,97,115,104,32,105,115,32,110,111,110,45,122,101,114,111,0,0,0,0,0,0,0,0,0,0,0],[90,169,182,181,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[65,99,99,111,117,110,116,32,105,115,32,111,99,99,117,112,105,101,100,0,0,0,0,0,0,0,0,0,0,0,0,0],[101,108,32,115,112,97,99,101,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[67,97,110,32,110,111,116,32,100,101,112,108,111,121,32,99,111,110,116,114,97,99,116,115,32,105,110,32,107,101,114,110],[66,121,116,101,99,111,100,101,72,97,115,104,32,99,97,110,110,111,116,32,98,101,32,122,101,114,111,0,0,0,0,0],[240,216,92,27,130,178,83,239,156,199,86,153,75,62,76,240,236,53,132,231,151,139,5,161,93,133,7,213,47,126,122,185]],"0x0000000000000000000000000000000000000007":[[0,1,0,0,0,0,0,2,0,2,0,0,0,0,0,2,0,0,0,0,0,1,3,85,0,0,0,1,2,32,1,144],[0,0,0,74,0,0,193,61,0,0,0,32,2,16,3,112,0,0,0,0,3,2,4,59,0,0,0,0,4,1,4,59],[0,0,0,201,2,64,0,156,0,0,0,12,0,0,33,61,0,0,0,202,2,48,0,156,0,0,0,15,0,0,65,61],[0,0,0,0,1,0,4,20,0,0,0,0,1,16,4,32,0,0,0,0,1,0,3,103,0,0,0,0,2,67,1,160],[0,0,0,64,1,16,3,112,0,0,0,0,6,1,4,59,0,0,0,72,0,0,97,61,0,0,0,0,1,4,0,75],[0,0,0,203,33,64,0,209,0,0,0,1,2,32,192,57,0,0,0,204,81,64,0,209,0,0,0,202,81,16,0,209],[0,0,0,0,2,82,0,25,0,0,0,205,1,32,0,65,0,0,0,201,5,32,0,156,0,0,0,0,1,2,160,25],[0,0,0,0,82,17,0,170,0,0,0,1,5,80,192,57,0,0,0,206,114,32,0,209,0,0,0,202,114,32,0,209],[0,0,0,0,2,117,0,25,0,0,0,205,5,32,0,65,0,0,0,201,7,32,0,156,0,0,0,0,5,2,160,25],[0,0,0,0,117,21,0,170,0,0,0,1,7,112,192,57,0,0,0,0,2,3,0,75,0,0,0,203,130,48,0,209],[0,0,0,1,8,128,192,57,0,0,0,204,146,48,0,209,0,0,0,202,146,32,0,209,0,0,0,0,8,152,0,25],[0,0,0,205,2,128,0,65,0,0,0,201,9,128,0,156,0,0,0,0,2,8,160,25,0,0,0,0,152,34,0,170],[0,0,0,1,9,144,192,57,0,0,0,206,165,80,0,209,0,0,0,206,168,128,0,209,0,0,0,202,165,80,0,209],[0,0,0,0,5,167,0,25,0,0,0,202,135,128,0,209,0,0,0,0,7,137,0,25,0,0,0,205,8,80,0,65],[0,0,0,201,9,80,0,156,0,0,0,0,8,5,160,25,0,0,0,205,5,112,0,65,0,0,0,201,9,112,0,156],[0,0,0,0,5,7,160,25,0,0,0,207,7,0,0,65,0,0,0,208,9,0,0,65,0,0,0,209,10,128,0,156],[0,0,0,0,9,7,160,25,0,0,0,0,7,137,0,25,0,0,0,0,5,117,0,75,0,0,0,70,0,0,97,61],[0,0,0,0,5,0,4,20,0,0,0,0,5,80,4,32,0,0,0,0,5,6,0,75,0,0,0,79,0,0,193,61],[0,0,0,214,1,0,0,65,0,0,3,27,0,1,4,46,0,0,0,32,1,0,0,57,0,0,1,0,0,16,4,67],[0,0,1,32,0,0,4,67,0,0,0,200,1,0,0,65,0,0,3,27,0,1,4,46,0,0,0,1,5,96,0,140],[0,0,0,85,0,0,193,61,0,0,0,0,0,64,4,53,0,0,0,32,0,48,4,63,0,0,0,214,1,0,0,65],[0,0,3,27,0,1,4,46,0,0,0,2,3,96,0,140,0,0,0,90,0,0,193,61,0,0,0,210,3,0,0,65],[3,26,2,172,0,0,4,15,0,0,2,89,0,0,1,61,0,0,0,210,8,0,0,65,0,0,0,0,3,0,0,25],[0,0,0,210,4,0,0,65,0,0,0,0,15,0,0,25,0,0,0,211,0,0,1,61,0,0,0,0,10,0,0,25],[0,0,0,0,152,34,0,170,0,0,0,206,184,128,0,209,0,0,0,202,184,128,0,209,0,0,0,1,11,176,192,57],[0,0,0,0,9,155,0,25,0,0,0,205,8,144,0,65,0,0,0,201,11,144,0,156,0,0,0,0,8,9,160,25],[0,0,0,1,9,128,2,16,0,0,0,2,11,128,2,16,0,0,0,211,12,176,0,65,0,0,0,201,9,144,0,156],[0,0,0,0,12,11,160,25,0,0,0,0,185,119,0,170,0,0,0,206,217,144,0,209,0,0,0,202,217,144,0,209],[0,0,0,1,13,208,192,57,0,0,0,0,11,189,0,25,0,0,0,0,151,39,0,170,0,0,0,206,215,112,0,209],[0,0,0,202,215,112,0,209,0,0,0,1,13,208,192,57,0,0,0,0,7,157,0,25,0,0,0,1,13,192,2,16],[0,0,0,211,9,208,0,65,0,0,0,201,12,192,0,156,0,0,0,0,9,13,160,25,0,0,0,205,12,176,0,65],[0,0,0,201,13,176,0,156,0,0,0,0,12,11,160,25,0,0,0,0,186,162,0,169,0,0,0,0,219,18,0,169],[0,0,0,0,10,173,0,25,0,0,0,0,33,33,0,170,0,0,0,206,33,16,0,209,0,0,0,202,33,16,0,209],[0,0,0,1,2,32,192,57,0,0,0,0,2,162,0,25,0,0,0,0,1,12,0,75,0,0,0,212,161,192,0,209],[0,0,0,1,10,160,192,57,0,0,0,47,177,192,0,201,0,0,0,202,177,16,0,209,0,0,0,0,10,186,0,25],[0,0,0,205,1,160,0,65,0,0,0,201,11,160,0,156,0,0,0,0,1,10,160,25,0,0,0,205,10,32,0,65],[0,0,0,201,11,32,0,156,0,0,0,0,10,2,160,25,0,0,0,1,2,16,2,16,0,0,0,205,11,32,0,65],[0,0,0,213,12,16,0,156,0,0,0,0,11,2,160,25,0,0,0,0,2,27,0,25,0,0,0,205,11,32,0,65],[0,0,0,201,12,32,0,156,0,0,0,0,11,2,160,25,0,0,0,0,2,184,0,73,0,0,0,202,11,32,0,65],[0,0,0,205,12,32,0,156,0,0,0,0,2,11,128,25,0,0,0,0,186,162,0,170,0,0,0,1,11,176,192,57],[0,0,0,0,8,129,0,25,0,0,0,205,12,128,0,65,0,0,0,201,13,128,0,156,0,0,0,0,12,8,160,25],[0,0,0,0,130,194,0,170,0,0,0,1,8,128,192,57,0,0,0,205,12,144,0,65,0,0,0,201,13,144,0,156],[0,0,0,0,12,9,160,25,0,0,0,0,145,28,0,170,0,0,0,1,9,144,192,57,0,0,0,205,13,112,0,65],[0,0,0,201,14,112,0,156,0,0,0,0,13,7,160,25,0,0,0,0,199,220,0,170,0,0,0,1,12,192,192,57],[0,0,0,206,218,160,0,209,0,0,0,202,218,160,0,209,0,0,0,0,10,219,0,25,0,0,0,1,11,160,2,16],[0,0,0,211,13,176,0,65,0,0,0,201,10,160,0,156,0,0,0,0,13,11,160,25,0,0,0,206,162,32,0,209],[0,0,0,206,161,16,0,209,0,0,0,206,167,112,0,209,0,0,0,202,162,32,0,209,0,0,0,0,2,168,0,25],[0,0,0,202,135,112,0,209,0,0,0,0,7,140,0,25,0,0,0,205,8,112,0,65,0,0,0,201,10,112,0,156],[0,0,0,0,8,7,160,25,0,0,0,202,113,16,0,209,0,0,0,0,7,121,0,25,0,0,0,205,1,208,0,65],[0,0,0,201,9,208,0,156,0,0,0,0,1,13,160,25,0,0,0,205,9,32,0,65,0,0,0,201,10,32,0,156],[0,0,0,0,9,2,160,25,0,0,0,205,2,112,0,65,0,0,0,201,10,112,0,156,0,0,0,0,2,7,160,25],[0,0,0,0,7,41,0,25,0,0,0,205,2,112,0,65,0,0,0,201,9,112,0,156,0,0,0,0,2,7,160,25],[0,0,0,1,7,96,0,140,0,0,0,1,6,96,2,112,0,0,2,87,0,0,161,61,0,0,0,0,7,8,0,25],[0,0,0,1,8,96,1,144,0,0,0,95,0,0,97,61,0,0,0,0,8,3,0,75,0,0,1,114,0,0,97,61],[0,2,0,0,0,1,0,29,0,0,0,0,168,49,0,170,0,0,0,1,10,160,192,57,0,0,0,0,203,127,0,170],[0,0,0,1,12,192,192,57,0,0,0,0,237,116,0,170,0,0,0,1,14,224,192,57,0,0,0,0,1,15,0,25],[0,0,0,0,159,50,0,170,0,0,0,1,9,144,192,57,0,0,0,206,91,176,0,209,0,0,0,202,181,176,0,209],[0,0,0,0,5,188,0,25,0,0,0,206,184,128,0,209,0,0,0,205,12,80,0,65,0,0,0,201,11,80,0,156],[0,0,0,0,12,5,160,25,0,0,0,202,133,128,0,209,0,0,0,0,5,138,0,25,0,0,0,205,11,80,0,65],[0,0,0,201,8,80,0,156,0,0,0,0,11,5,160,25,0,0,0,206,133,208,0,209,0,0,0,202,133,80,0,209],[0,0,0,0,5,142,0,25,0,0,0,0,8,203,0,73,0,0,0,202,10,128,0,65,0,0,0,205,13,128,0,156],[0,0,0,0,8,10,128,25,0,0,0,205,10,80,0,65,0,0,0,201,13,80,0,156,0,0,0,0,10,5,160,25],[0,0,0,206,213,240,0,209,0,0,0,202,213,80,0,209,0,0,0,0,5,217,0,25,0,0,0,205,9,80,0,65],[0,0,0,201,13,80,0,156,0,0,0,0,9,5,160,25,0,0,0,0,10,169,0,73,0,0,0,202,5,160,0,65],[0,0,0,205,13,160,0,156,0,0,0,0,10,5,128,25,0,0,0,0,5,168,1,160,0,0,1,229,0,0,97,61],[0,0,0,0,67,55,0,170,0,0,0,1,4,64,192,57,0,0,0,0,213,170,0,170,0,0,0,1,13,208,192,57],[0,0,0,0,1,7,0,25,0,0,0,0,127,136,0,170,0,0,0,1,7,112,192,57,0,0,0,206,227,48,0,209],[0,0,0,202,227,48,0,209,0,0,0,0,4,228,0,25,0,0,0,205,3,64,0,65,0,0,0,201,14,64,0,156],[0,0,0,0,3,4,160,25,0,0,0,206,84,80,0,209,0,0,0,202,84,64,0,209,0,0,0,0,4,93,0,25],[0,0,0,205,5,64,0,65,0,0,0,201,13,64,0,156,0,0,0,0,5,4,160,25,0,0,0,0,222,53,0,170],[0,0,0,1,13,208,192,57,0,0,0,0,4,188,0,25,0,0,0,205,5,64,0,65,0,0,0,201,12,64,0,156],[0,0,0,0,5,4,160,25,0,0,0,206,196,240,0,209,0,0,0,202,196,64,0,209,0,0,0,0,4,199,0,25],[0,0,0,205,7,64,0,65,0,0,0,201,12,64,0,156,0,0,0,0,7,4,160,25,0,0,0,0,252,87,0,170],[0,0,0,1,15,240,192,57,0,0,0,0,91,183,0,170,0,0,0,1,5,80,192,57,0,1,0,0,64,135,0,174],[0,0,0,1,4,64,192,57,0,0,0,206,124,192,0,209,0,0,0,202,199,192,0,209,0,0,0,0,7,207,0,25],[0,0,0,205,12,112,0,65,0,0,0,201,15,112,0,156,0,0,0,0,12,7,160,25,0,0,0,206,231,224,0,209],[0,0,0,202,231,112,0,209,0,0,0,0,7,237,0,25,0,0,0,205,13,112,0,65,0,0,0,201,14,112,0,156],[0,0,0,0,13,7,160,25,0,0,0,0,7,205,0,73,0,0,0,206,203,176,0,209,0,0,0,202,12,112,0,65],[0,0,0,205,13,112,0,156,0,0,0,0,7,12,128,25,0,0,0,202,203,176,0,209,0,0,0,0,5,197,0,25],[0,0,0,205,11,80,0,65,0,0,0,201,12,80,0,156,0,0,0,0,11,5,160,25,0,0,0,0,5,123,0,73],[0,0,0,202,11,80,0,65,0,0,0,205,12,80,0,156,0,0,0,0,5,11,128,25,0,0,0,0,165,165,0,170],[0,0,0,1,10,160,192,57,0,0,0,0,135,135,0,170,0,0,0,1,8,128,192,57,0,0,0,1,11,0,0,41],[0,0,0,206,203,176,0,209,0,0,0,202,203,176,0,209,0,0,0,0,4,196,0,25,0,0,0,205,11,64,0,65],[0,0,0,201,12,64,0,156,0,0,0,0,11,4,160,25,0,0,0,0,148,155,0,170,0,0,0,1,9,144,192,57],[0,0,0,0,179,59,0,170,0,0,0,1,11,176,192,57,0,0,0,206,197,80,0,209,0,0,0,202,197,80,0,209],[0,0,0,0,5,202,0,25,0,0,0,206,167,112,0,209,0,0,0,206,164,64,0,209,0,0,0,202,164,64,0,209],[0,0,0,0,4,169,0,25,0,0,0,205,9,80,0,65,0,0,0,201,10,80,0,156,0,0,0,0,9,5,160,25],[0,0,0,202,117,112,0,209,0,0,0,0,5,120,0,25,0,0,0,205,7,64,0,65,0,0,0,201,8,64,0,156],[0,0,0,0,7,4,160,25,0,0,0,206,67,48,0,209,0,0,0,202,67,48,0,209,0,0,0,0,4,75,0,25],[0,0,0,205,3,64,0,65,0,0,0,201,8,64,0,156,0,0,0,0,3,4,160,25,0,0,0,0,4,121,0,73],[0,0,0,202,7,64,0,65,0,0,0,205,8,64,0,156,0,0,0,0,4,7,128,25,0,0,0,205,15,80,0,65],[0,0,0,201,7,80,0,156,0,0,0,0,7,1,0,25,0,0,0,0,15,5,160,25,0,0,0,0,10,0,0,25],[0,0,0,2,1,0,0,41,0,0,0,96,0,0,1,61,0,0,0,0,67,34,0,170,0,0,0,1,4,64,192,57],[0,0,0,206,83,48,0,209,0,0,0,202,83,48,0,209,0,0,0,0,3,84,0,25,0,0,0,205,4,48,0,65],[0,0,0,201,5,48,0,156,0,0,0,0,4,3,160,25,0,0,0,1,3,64,2,16,0,0,0,2,5,64,2,16],[0,0,0,211,9,80,0,65,0,0,0,201,3,48,0,156,0,0,0,0,9,5,160,25,0,0,0,0,186,119,0,170],[0,0,0,1,11,176,192,57,0,0,0,0,220,33,0,170,0,0,0,1,13,208,192,57,0,0,0,0,53,39,0,170],[0,0,0,1,3,48,192,57,0,0,0,1,14,144,2,16,0,0,0,211,8,224,0,65,0,0,0,201,9,144,0,156],[0,0,0,0,8,14,160,25,0,0,0,206,169,160,0,209,0,0,0,202,169,144,0,209,0,0,0,0,9,171,0,25],[0,0,0,205,10,144,0,65,0,0,0,201,11,144,0,156,0,0,0,0,10,9,160,25,0,0,0,0,9,10,0,75],[0,0,0,212,185,160,0,209,0,0,0,1,11,176,192,57,0,0,0,206,201,192,0,209,0,0,0,47,202,160,0,201],[0,0,0,202,202,160,0,209,0,0,0,0,10,203,0,25,0,0,0,202,185,144,0,209,0,0,0,0,11,189,0,25],[0,0,0,205,9,160,0,65,0,0,0,201,12,160,0,156,0,0,0,0,9,10,160,25,0,0,0,205,10,176,0,65],[0,0,0,201,12,176,0,156,0,0,0,0,10,11,160,25,0,0,0,1,11,144,2,16,0,0,0,205,12,176,0,65],[0,0,0,213,13,144,0,156,0,0,0,0,12,11,160,25,0,0,0,0,11,156,0,25,0,0,0,205,12,176,0,65],[0,0,0,201,13,176,0,156,0,0,0,0,12,11,160,25,0,0,0,0,11,196,0,73,0,0,0,202,12,176,0,65],[0,0,0,205,13,176,0,156,0,0,0,0,11,12,128,25,0,0,0,0,220,171,0,170,0,0,0,1,13,208,192,57],[0,0,0,0,4,73,0,25,0,0,0,205,10,64,0,65,0,0,0,201,14,64,0,156,0,0,0,0,10,4,160,25],[0,0,0,0,171,171,0,170,0,0,0,1,10,160,192,57,0,0,0,205,14,128,0,65,0,0,0,201,4,128,0,156],[0,0,0,0,14,8,160,25,0,0,0,0,72,233,0,170,0,0,0,1,4,64,192,57,0,0,0,206,149,80,0,209],[0,0,0,202,149,80,0,209,0,0,0,0,3,147,0,25,0,0,0,205,5,48,0,65,0,0,0,201,9,48,0,156],[0,0,0,0,5,3,160,25,0,0,0,0,83,94,0,170,0,0,0,1,5,80,192,57,0,0,0,206,201,192,0,209],[0,0,0,202,201,144,0,209,0,0,0,0,9,205,0,25,0,0,0,1,12,144,2,16,0,0,0,211,13,192,0,65],[0,0,0,201,9,144,0,156,0,0,0,0,13,12,160,25,0,0,0,206,185,176,0,209,0,0,0,206,139,128,0,209],[0,0,0,206,131,48,0,209,0,0,0,202,152,144,0,209,0,0,0,0,9,154,0,25,0,0,0,202,131,48,0,209],[0,0,0,0,3,133,0,25,0,0,0,205,8,48,0,65,0,0,0,201,5,48,0,156,0,0,0,0,8,3,160,25],[0,0,0,202,83,176,0,209,0,0,0,0,3,84,0,25,0,0,0,205,4,208,0,65,0,0,0,201,5,208,0,156],[0,0,0,0,4,13,160,25,0,0,0,205,5,144,0,65,0,0,0,201,10,144,0,156,0,0,0,0,5,9,160,25],[0,0,0,205,9,48,0,65,0,0,0,201,10,48,0,156,0,0,0,0,9,3,160,25,0,0,0,0,3,149,0,25],[0,0,0,205,9,48,0,65,0,0,0,201,5,48,0,156,0,0,0,0,9,3,160,25,0,0,0,0,15,1,0,25],[0,0,0,0,1,4,0,25,0,0,0,0,4,2,0,25,0,0,0,0,2,9,0,25,0,0,0,0,3,7,0,25],[0,0,0,208,0,0,1,61,0,0,0,0,9,1,0,25,0,0,0,0,33,68,0,170,0,0,0,1,2,32,192,57],[0,0,0,206,81,16,0,209,0,0,0,202,81,16,0,209,0,0,0,0,1,82,0,25,0,0,0,205,2,16,0,65],[0,0,0,201,5,16,0,156,0,0,0,0,2,1,160,25,0,0,0,1,1,32,2,16,0,0,0,2,5,32,2,16],[0,0,0,211,7,80,0,65,0,0,0,201,1,16,0,156,0,0,0,0,7,5,160,25,0,0,0,0,133,51,0,170],[0,0,0,1,8,128,192,57,0,0,0,0,169,73,0,170,0,0,0,1,10,160,192,57,0,0,0,0,19,52,0,170],[0,0,0,1,1,16,192,57,0,0,0,1,11,112,2,16,0,0,0,211,4,176,0,65,0,0,0,201,7,112,0,156],[0,0,0,0,4,11,160,25,0,0,0,206,117,80,0,209,0,0,0,202,117,80,0,209,0,0,0,0,5,120,0,25],[0,0,0,205,7,80,0,65,0,0,0,201,8,80,0,156,0,0,0,0,7,5,160,25,0,0,0,0,5,7,0,75],[0,0,0,212,133,112,0,209,0,0,0,1,8,128,192,57,0,0,0,206,149,144,0,209,0,0,0,47,151,112,0,201],[0,0,0,202,151,112,0,209,0,0,0,0,7,152,0,25,0,0,0,202,133,80,0,209,0,0,0,0,8,138,0,25],[0,0,0,205,5,112,0,65,0,0,0,201,9,112,0,156,0,0,0,0,5,7,160,25,0,0,0,205,7,128,0,65],[0,0,0,201,9,128,0,156,0,0,0,0,7,8,160,25,0,0,0,1,8,80,2,16,0,0,0,205,9,128,0,65],[0,0,0,213,10,80,0,156,0,0,0,0,9,8,160,25,0,0,0,0,8,89,0,25,0,0,0,205,9,128,0,65],[0,0,0,201,10,128,0,156,0,0,0,0,9,8,160,25,0,0,0,0,8,146,0,73,0,0,0,202,9,128,0,65],[0,0,0,205,10,128,0,156,0,0,0,0,8,9,128,25,0,0,0,0,169,120,0,170,0,0,0,1,10,160,192,57],[0,0,0,0,2,37,0,25,0,0,0,205,7,32,0,65,0,0,0,201,11,32,0,156,0,0,0,0,7,2,160,25],[0,0,0,0,120,120,0,170,0,0,0,1,7,112,192,57,0,0,0,205,11,64,0,65,0,0,0,201,2,64,0,156],[0,0,0,0,11,4,160,25,0,0,0,0,36,91,0,170,0,0,0,1,2,32,192,57,0,0,0,206,83,48,0,209],[0,0,0,202,83,48,0,209,0,0,0,0,1,81,0,25,0,0,0,205,3,16,0,65,0,0,0,201,5,16,0,156],[0,0,0,0,3,1,160,25,0,0,0,0,49,59,0,170,0,0,0,1,3,48,192,57,0,0,0,206,149,144,0,209],[0,0,0,202,149,80,0,209,0,0,0,0,5,154,0,25,0,0,0,1,9,80,2,16,0,0,0,211,10,144,0,65],[0,0,0,201,5,80,0,156,0,0,0,0,10,9,160,25,0,0,0,206,133,128,0,209,0,0,0,206,132,64,0,209],[0,0,0,206,129,16,0,209,0,0,0,202,133,80,0,209,0,0,0,0,5,135,0,25,0,0,0,202,113,16,0,209],[0,0,0,0,1,115,0,25,0,0,0,205,8,16,0,65,0,0,0,201,3,16,0,156,0,0,0,0,8,1,160,25],[0,0,0,202,49,64,0,209,0,0,0,0,1,50,0,25,0,0,0,205,15,160,0,65,0,0,0,201,2,160,0,156],[0,0,0,0,15,10,160,25,0,0,0,205,2,80,0,65,0,0,0,201,3,80,0,156,0,0,0,0,2,5,160,25],[0,0,0,205,3,16,0,65,0,0,0,201,4,16,0,156,0,0,0,0,3,1,160,25,0,0,0,0,1,50,0,25],[0,0,0,205,4,16,0,65,0,0,0,201,2,16,0,156,0,0,0,0,4,1,160,25,0,0,0,0,1,15,0,25],[0,0,0,0,2,4,0,25,0,0,0,0,3,8,0,25,0,0,0,208,0,0,1,61,0,0,0,0,1,15,0,25],[0,0,0,0,2,4,0,25,3,26,2,108,0,0,4,15,0,2,0,0,0,2,0,29,3,26,2,100,0,0,4,15],[0,1,0,0,0,1,0,29,0,0,0,2,1,0,0,41,3,26,2,100,0,0,4,15,0,0,0,1,2,0,0,41],[0,0,0,0,0,32,4,53,0,0,0,32,0,16,4,63,0,0,0,214,1,0,0,65,0,0,3,27,0,1,4,46],[0,0,0,0,2,1,0,75,0,0,0,206,33,16,0,209,0,0,0,202,33,16,0,209,0,0,0,1,2,32,192,57],[0,0,0,205,1,32,0,65,0,0,0,201,3,32,0,156,0,0,0,0,1,2,160,25,0,0,0,0,0,1,4,45],[0,0,0,0,4,3,0,75,0,0,0,0,5,0,0,25,0,0,0,0,4,0,0,25,0,0,2,169,0,0,97,61],[0,0,0,203,4,0,0,65,0,0,0,1,5,48,0,140,0,0,2,153,0,0,97,61,0,0,0,202,5,0,0,65],[0,0,0,203,4,0,0,65,0,0,0,0,6,0,0,25,0,0,0,1,7,48,1,144,0,0,2,126,0,0,193,61],[0,0,0,1,7,64,1,144,0,0,0,202,4,64,192,65,0,0,0,2,7,48,1,144,0,0,0,1,3,48,2,112],[0,0,0,1,4,64,2,112,0,0,2,120,0,0,97,61,0,0,0,1,7,80,1,144,0,0,2,134,0,0,193,61],[0,0,0,1,7,96,1,144,0,0,0,202,6,96,192,65,0,0,0,2,7,80,1,144,0,0,0,1,5,80,2,112],[0,0,0,1,6,96,2,112,0,0,2,128,0,0,97,61,0,0,0,0,7,53,0,75,0,0,2,142,0,0,161,61],[0,0,0,202,7,96,0,65,0,0,0,0,8,70,0,75,0,0,0,0,7,6,128,25,0,0,0,0,6,71,0,73],[0,0,0,0,5,53,0,73,0,0,2,147,0,0,1,61,0,0,0,202,7,64,0,65,0,0,0,0,8,100,0,75],[0,0,0,0,7,4,128,25,0,0,0,0,4,103,0,73,0,0,0,0,3,83,0,73,0,0,0,1,7,48,0,140],[0,0,2,151,0,0,97,61,0,0,0,1,7,80,0,140,0,0,2,118,0,0,193,61,0,0,0,1,3,48,0,140],[0,0,0,0,4,6,192,25,0,0,0,0,49,20,0,170,0,0,0,1,3,48,192,57,0,0,0,0,66,36,0,170],[0,0,0,1,4,64,192,57,0,0,0,206,82,32,0,209,0,0,0,202,82,32,0,209,0,0,0,0,2,84,0,25],[0,0,0,205,4,32,0,65,0,0,0,201,5,32,0,156,0,0,0,0,4,2,160,25,0,0,0,206,33,16,0,209],[0,0,0,202,33,16,0,209,0,0,0,0,1,35,0,25,0,0,0,205,5,16,0,65,0,0,0,201,2,16,0,156],[0,0,0,0,5,1,160,25,0,0,0,0,1,5,0,25,0,0,0,0,2,4,0,25,0,0,0,0,0,1,4,45],[0,0,0,0,84,34,0,170,0,0,0,1,5,80,192,57,0,0,0,206,100,64,0,209,0,0,0,202,100,64,0,209],[0,0,0,0,5,101,0,25,0,0,0,205,4,80,0,65,0,0,0,201,6,80,0,156,0,0,0,0,4,5,160,25],[0,0,0,1,5,64,2,16,0,0,0,2,6,64,2,16,0,0,0,211,7,96,0,65,0,0,0,201,5,80,0,156],[0,0,0,0,7,6,160,25,0,0,0,0,101,51,0,170,0,0,0,1,6,96,192,57,0,0,0,0,152,18,0,170],[0,0,0,1,9,144,192,57,0,0,0,0,18,35,0,170,0,0,0,1,1,16,192,57,0,0,0,1,10,112,2,16],[0,0,0,211,3,160,0,65,0,0,0,201,7,112,0,156,0,0,0,0,3,10,160,25,0,0,0,206,117,80,0,209],[0,0,0,202,117,80,0,209,0,0,0,0,5,118,0,25,0,0,0,205,6,80,0,65,0,0,0,201,7,80,0,156],[0,0,0,0,6,5,160,25,0,0,0,0,5,6,0,75,0,0,0,212,117,96,0,209,0,0,0,1,7,112,192,57],[0,0,0,206,133,128,0,209,0,0,0,47,134,96,0,201,0,0,0,202,134,96,0,209,0,0,0,0,6,135,0,25],[0,0,0,202,117,80,0,209,0,0,0,0,7,121,0,25,0,0,0,205,5,96,0,65,0,0,0,201,8,96,0,156],[0,0,0,0,5,6,160,25,0,0,0,205,6,112,0,65,0,0,0,201,8,112,0,156,0,0,0,0,6,7,160,25],[0,0,0,1,7,80,2,16,0,0,0,205,8,112,0,65,0,0,0,213,9,80,0,156,0,0,0,0,8,7,160,25],[0,0,0,0,7,88,0,25,0,0,0,205,8,112,0,65,0,0,0,201,9,112,0,156,0,0,0,0,8,7,160,25],[0,0,0,0,7,132,0,73,0,0,0,202,8,112,0,65,0,0,0,205,9,112,0,156,0,0,0,0,7,8,128,25],[0,0,0,0,152,103,0,170,0,0,0,1,9,144,192,57,0,0,0,0,4,69,0,25,0,0,0,205,6,64,0,65],[0,0,0,201,10,64,0,156,0,0,0,0,6,4,160,25,0,0,0,0,103,103,0,170,0,0,0,1,6,96,192,57],[0,0,0,205,10,48,0,65,0,0,0,201,4,48,0,156,0,0,0,0,10,3,160,25,0,0,0,0,67,165,0,170],[0,0,0,1,4,64,192,57,0,0,0,206,82,32,0,209,0,0,0,202,82,32,0,209,0,0,0,0,1,81,0,25],[0,0,0,205,2,16,0,65,0,0,0,201,5,16,0,156,0,0,0,0,2,1,160,25,0,0,0,0,33,42,0,170],[0,0,0,1,2,32,192,57,0,0,0,206,133,128,0,209,0,0,0,202,133,80,0,209,0,0,0,0,5,137,0,25],[0,0,0,1,8,80,2,16,0,0,0,211,9,128,0,65,0,0,0,201,5,80,0,156,0,0,0,0,9,8,160,25],[0,0,0,206,117,112,0,209,0,0,0,206,55,48,0,209,0,0,0,206,49,16,0,209,0,0,0,202,83,80,0,209],[0,0,0,0,5,86,0,25,0,0,0,202,49,16,0,209,0,0,0,0,1,50,0,25,0,0,0,205,3,16,0,65],[0,0,0,201,2,16,0,156,0,0,0,0,3,1,160,25,0,0,0,202,33,112,0,209,0,0,0,0,2,36,0,25],[0,0,0,205,1,144,0,65,0,0,0,201,4,144,0,156,0,0,0,0,1,9,160,25,0,0,0,205,4,80,0,65],[0,0,0,201,6,80,0,156,0,0,0,0,4,5,160,25,0,0,0,205,5,32,0,65,0,0,0,201,6,32,0,156],[0,0,0,0,5,2,160,25,0,0,0,0,4,84,0,25,0,0,0,205,2,64,0,65,0,0,0,201,5,64,0,156],[0,0,0,0,2,4,160,25,0,0,0,0,0,1,4,45,0,0,3,26,0,0,4,50,0,0,3,27,0,1,4,46],[0,0,3,28,0,1,4,48,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,1,0,0,0,0,0,0,0,0,0],[48,100,78,114,225,49,160,41,184,80,69,182,129,129,88,93,151,129,106,145,104,113,202,141,60,32,140,22,216,124,253,70],[48,100,78,114,225,49,160,41,184,80,69,182,129,129,88,93,151,129,106,145,104,113,202,141,60,32,140,22,216,124,253,71],[6,216,159,113,202,184,53,31,71,171,30,255,10,65,127,246,181,231,25,17,212,69,1,251,243,44,252,91,83,138,250,137],[74,71,70,38,35,160,74,122,176,116,165,134,128,115,1,58,233,101,225,118,124,212,192,134,243,174,216,161,155,249,14,81],[207,155,177,141,30,206,95,214,71,175,186,73,126,126,167,162,104,126,149,110,151,142,53,114,195,223,115,233,39,131,2,185],[245,122,34,183,145,136,140,107,216,175,203,208,24,51,218,128,158,222,125,101,30,202,106,201,135,210,7,130,228,134,99,137],[42,31,103,68,206,23,157,142,51,75,234,78,105,107,210,132,31,106,193,122,225,85,33,185,122,23,202,169,80,173,40,215],[249,187,24,209,236,229,253,100,122,251,164,151,231,234,122,38,135,233,86,233,120,227,87,44,61,247,62,146,120,48,43,144],[6,68,231,46,19,26,2,155,133,4,91,104,24,21,133,217,120,22,169,22,135,28,168,211,194,8,193,109,135,207,212,111],[14,10,119,193,154,7,223,47,102,110,163,111,120,121,70,44,10,120,235,40,245,199,11,61,211,93,67,141,197,143,13,157],[159,55,99,26,61,156,191,172,143,95,116,146,252,253,79,68,208,253,42,221,47,28,106,229,135,190,231,210,79,6,5,114],[29,149,152,232,167,227,152,87,41,67,51,126,57,64,198,209,47,61,111,77,211,27,208,17,246,6,71,206,65,13,127,247],[24,50,39,57,112,152,208,20,220,40,34,219,64,192,172,46,203,192,181,72,180,56,229,70,158,16,70,11,108,62,126,163],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[136,210,215,145,1,9,72,102,245,6,226,206,231,74,222,121,140,90,74,182,159,125,137,7,252,66,94,207,167,28,22,58]],"0x0000000000000000000000000000000000000002":[[0,0,0,1,2,32,1,144,0,0,0,51,0,0,193,61,0,0,0,0,2,1,0,25,0,0,0,96,3,32,2,112],[0,0,0,31,4,48,1,143,0,0,0,17,2,48,1,151,0,0,0,5,5,32,2,114,0,0,0,16,0,0,97,61],[0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16,0,0,0,0,8,113,3,79,0,0,0,0,8,8,4,59],[0,0,0,0,0,135,4,53,0,0,0,1,6,96,0,57,0,0,0,0,7,86,0,75,0,0,0,9,0,0,65,61],[0,0,0,0,6,4,0,75,0,0,0,30,0,0,97,61,0,0,0,3,4,64,2,16,0,0,0,5,5,80,2,16],[0,0,0,0,6,5,4,51,0,0,0,0,6,70,1,207,0,0,0,0,6,70,2,47,0,0,0,0,1,81,3,79],[0,0,0,0,1,1,4,59,0,0,1,0,4,64,0,137,0,0,0,0,1,65,2,47,0,0,0,0,1,65,1,207],[0,0,0,0,1,97,1,159,0,0,0,0,0,21,4,53,0,0,0,18,1,0,0,65,0,0,0,0,0,18,4,53],[0,0,0,8,1,48,0,57,0,0,0,63,1,16,1,143,0,0,0,0,1,18,0,73,0,0,0,195,2,32,2,16],[0,0,0,64,3,16,0,57,0,0,0,0,0,35,4,53,0,0,0,72,1,16,0,57,0,0,0,27,2,16,2,16],[0,0,0,19,2,32,1,151,0,0,0,6,1,16,2,112,0,0,0,192,3,16,2,16,0,0,0,0,2,50,1,159],[0,0,0,20,2,32,1,199,0,0,0,7,49,16,0,201,0,0,0,0,1,18,4,32,0,0,0,0,1,1,0,75],[0,0,0,56,0,0,193,61,0,0,0,0,1,0,0,25,0,0,0,60,0,1,4,48,0,0,0,32,1,0,0,57],[0,0,1,0,0,16,4,67,0,0,1,32,0,0,4,67,0,0,0,16,1,0,0,65,0,0,0,59,0,1,4,46],[0,0,0,21,1,0,0,65,0,0,0,59,0,1,4,46,0,0,0,58,0,0,4,50,0,0,0,59,0,1,4,46],[0,0,0,60,0,1,4,48,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,1,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],[128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,254,255,255,255,255,255,255,255,255,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,0],[163,6,139,9,248,74,233,86,156,89,18,239,176,49,25,58,139,131,161,16,140,157,193,139,157,74,170,24,136,162,125,123]],"0x0000000000000000000000000000000000008009":[[0,2,0,0,0,0,0,2,0,6,0,0,0,0,0,2,0,1,0,0,0,1,3,85,0,0,0,0,6,1,0,25],[0,0,0,96,6,96,2,112,0,0,0,75,0,96,1,157,0,0,0,128,7,0,0,57,0,0,0,64,0,112,4,63],[0,0,0,75,9,96,1,151,0,0,0,0,8,0,4,22,0,0,0,1,7,32,1,144,0,0,0,31,0,0,193,61],[0,0,0,0,7,8,0,75,0,0,0,105,0,0,193,61,0,0,0,2,2,32,1,144,0,0,0,38,0,0,193,61],[0,0,0,0,2,0,4,17,0,0,0,77,2,32,0,156,0,0,0,38,0,0,65,61,0,0,0,90,1,0,0,65],[0,0,0,128,0,16,4,63,0,0,0,32,1,0,0,57,0,0,0,132,0,16,4,63,0,0,0,36,1,0,0,57],[0,0,0,164,0,16,4,63,0,0,0,94,1,0,0,65,0,0,0,196,0,16,4,63,0,0,0,95,1,0,0,65],[0,0,0,228,0,16,4,63,0,0,0,96,1,0,0,65,0,0,1,42,0,1,4,48,0,0,0,0,1,8,0,75],[0,0,0,105,0,0,193,61,0,0,0,32,1,0,0,57,0,0,1,0,0,16,4,67,0,0,1,32,0,0,4,67],[0,0,0,76,1,0,0,65,0,0,1,41,0,1,4,46,0,0,0,78,2,64,1,151,0,0,0,0,4,0,4,16],[0,0,0,0,4,66,0,75,0,0,0,52,0,0,193,61,0,0,0,90,1,0,0,65,0,0,0,128,0,16,4,63],[0,0,0,32,1,0,0,57,0,0,0,132,0,16,4,63,0,0,0,30,1,0,0,57,0,0,0,164,0,16,4,63],[0,0,0,92,1,0,0,65,0,0,0,196,0,16,4,63,0,0,0,93,1,0,0,65,0,0,1,42,0,1,4,48],[0,0,0,0,4,3,0,75,0,0,0,0,8,0,4,17,0,0,0,0,7,9,0,25,0,0,0,64,0,0,193,61],[0,0,0,0,0,3,4,23,0,0,0,0,3,0,4,20,0,0,0,0,4,151,0,75,0,0,0,107,0,0,129,61],[0,0,0,87,1,0,0,65,0,0,0,0,0,16,4,53,0,0,0,17,1,0,0,57,0,0,0,255,0,0,1,61],[0,3,0,0,0,9,0,29,0,5,0,0,0,5,0,29,0,6,0,0,0,6,0,29,0,0,0,79,1,0,0,65],[0,0,0,160,0,16,4,63,0,1,0,0,0,8,0,29,0,0,0,78,1,128,1,151,0,0,0,164,0,16,4,63],[0,2,0,0,0,2,0,29,0,0,0,196,0,32,4,63,0,4,0,0,0,3,0,29,0,0,0,228,0,48,4,63],[0,0,0,100,1,0,0,57,0,0,0,128,0,16,4,63,0,0,1,32,1,0,0,57,0,0,0,64,0,16,4,63],[0,0,0,75,1,0,0,65,0,0,0,0,2,0,4,20,0,0,0,75,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,192,1,32,2,16,0,0,0,80,1,16,1,199,0,0,128,10,2,0,0,57,1,40,1,29,0,0,4,15],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,0,75,5,48,1,152,0,0,0,127,0,0,193,61],[0,0,0,1,1,32,1,144,0,0,0,6,6,0,0,41,0,0,0,5,5,0,0,41,0,0,0,4,3,0,0,41],[0,0,0,3,9,0,0,41,0,0,0,105,0,0,97,61,0,0,0,83,1,48,0,156,0,0,0,2,2,0,0,41],[0,0,0,1,8,0,0,41,0,0,0,109,0,0,33,61,0,0,0,1,1,0,3,103,0,0,0,0,7,0,0,49],[0,0,0,56,0,0,1,61,0,0,0,0,1,0,0,25,0,0,1,42,0,1,4,48,0,0,0,75,4,48,0,156],[0,0,0,168,0,0,161,61,0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57,0,0,0,89,3,0,0,65],[0,0,0,0,0,50,4,53,0,0,0,36,2,16,0,57,0,0,0,8,3,0,0,57,0,0,0,0,0,50,4,53],[0,0,0,90,2,0,0,65,0,0,0,0,0,33,4,53,0,0,0,4,2,16,0,57,0,0,0,32,3,0,0,57],[0,0,0,0,0,50,4,53,0,0,0,75,2,0,0,65,0,0,0,75,3,16,0,156,0,0,0,0,1,2,128,25],[0,0,0,64,1,16,2,16,0,0,0,91,1,16,1,199,0,0,1,42,0,1,4,48,0,0,0,63,3,80,0,57],[0,0,0,81,3,48,1,151,0,0,0,64,4,0,4,61,0,0,0,0,3,52,0,25,0,0,0,0,6,67,0,75],[0,0,0,0,6,0,0,25,0,0,0,1,6,0,64,57,0,0,0,82,7,48,0,156,0,0,0,252,0,0,33,61],[0,0,0,1,6,96,1,144,0,0,0,252,0,0,193,61,0,0,0,64,0,48,4,63,0,0,0,31,3,80,1,143],[0,0,0,0,4,84,4,54,0,0,0,5,5,80,2,114,0,0,0,152,0,0,97,61,0,0,0,0,6,0,0,25],[0,0,0,5,7,96,2,16,0,0,0,0,8,116,0,25,0,0,0,0,7,113,3,79,0,0,0,0,7,7,4,59],[0,0,0,0,0,120,4,53,0,0,0,1,6,96,0,57,0,0,0,0,7,86,0,75,0,0,0,144,0,0,65,61],[0,0,0,0,6,3,0,75,0,0,0,92,0,0,97,61,0,0,0,5,5,80,2,16,0,0,0,0,1,81,3,79],[0,0,0,0,4,84,0,25,0,0,0,3,3,48,2,16,0,0,0,0,5,4,4,51,0,0,0,0,5,53,1,207],[0,0,0,0,5,53,2,47,0,0,0,0,1,1,4,59,0,0,1,0,3,48,0,137,0,0,0,0,1,49,2,47],[0,0,0,0,1,49,1,207,0,0,0,0,1,81,1,159,0,0,0,0,0,20,4,53,0,0,0,92,0,0,1,61],[0,0,0,1,4,80,1,144,0,0,0,84,4,0,0,65,0,0,0,85,5,0,0,65,0,0,0,0,5,4,192,25],[0,0,0,192,3,48,2,16,0,0,0,86,3,48,1,151,0,0,0,0,3,83,1,159,0,0,0,0,4,103,0,73],[0,0,0,75,4,64,1,151,0,0,0,0,1,65,3,223,0,0,0,0,1,49,3,175,0,0,0,78,13,128,1,151],[1,40,1,34,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,0,75,3,48,1,151],[0,0,0,1,2,32,1,144,0,0,1,2,0,0,97,61,0,0,0,63,2,48,0,57,0,0,0,81,4,32,1,151],[0,0,0,64,2,0,4,61,0,0,0,0,4,66,0,25,0,0,0,0,5,36,0,75,0,0,0,0,5,0,0,25],[0,0,0,1,5,0,64,57,0,0,0,82,6,64,0,156,0,0,0,252,0,0,33,61,0,0,0,1,5,80,1,144],[0,0,0,252,0,0,193,61,0,0,0,64,0,64,4,63,0,0,0,0,4,50,4,54,0,0,0,31,5,48,0,57],[0,0,0,5,5,80,2,114,0,0,0,213,0,0,97,61,0,0,0,0,6,0,0,49,0,0,0,1,6,96,3,103],[0,0,0,0,7,0,0,25,0,0,0,5,8,112,2,16,0,0,0,0,9,132,0,25,0,0,0,0,8,134,3,79],[0,0,0,0,8,8,4,59,0,0,0,0,0,137,4,53,0,0,0,1,7,112,0,57,0,0,0,0,8,87,0,75],[0,0,0,205,0,0,65,61,0,0,0,0,5,0,0,75,0,0,0,215,0,0,97,61,0,0,0,31,5,48,1,143],[0,0,0,5,3,48,2,114,0,0,0,227,0,0,97,61,0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16],[0,0,0,0,8,116,0,25,0,0,0,0,7,113,3,79,0,0,0,0,7,7,4,59,0,0,0,0,0,120,4,53],[0,0,0,1,6,96,0,57,0,0,0,0,7,54,0,75,0,0,0,219,0,0,65,61,0,0,0,0,6,5,0,75],[0,0,0,242,0,0,97,61,0,0,0,5,3,48,2,16,0,0,0,0,1,49,3,79,0,0,0,0,3,52,0,25],[0,0,0,3,5,80,2,16,0,0,0,0,6,3,4,51,0,0,0,0,6,86,1,207,0,0,0,0,6,86,2,47],[0,0,0,0,1,1,4,59,0,0,1,0,5,80,0,137,0,0,0,0,1,81,2,47,0,0,0,0,1,81,1,207],[0,0,0,0,1,97,1,159,0,0,0,0,0,19,4,53,0,0,0,0,1,2,4,51,0,0,0,75,2,0,0,65],[0,0,0,75,3,16,0,156,0,0,0,0,1,2,128,25,0,0,0,75,3,64,0,156,0,0,0,0,4,2,128,25],[0,0,0,64,2,64,2,16,0,0,0,96,1,16,2,16,0,0,0,0,1,33,1,159,0,0,1,41,0,1,4,46],[0,0,0,87,1,0,0,65,0,0,0,0,0,16,4,53,0,0,0,65,1,0,0,57,0,0,0,4,0,16,4,63],[0,0,0,88,1,0,0,65,0,0,1,42,0,1,4,48,0,0,0,31,4,48,1,143,0,0,0,5,2,48,2,114],[0,0,1,13,0,0,97,61,0,0,0,0,5,0,0,25,0,0,0,5,6,80,2,16,0,0,0,0,7,97,3,79],[0,0,0,0,7,7,4,59,0,0,0,0,0,118,4,53,0,0,0,1,5,80,0,57,0,0,0,0,6,37,0,75],[0,0,1,6,0,0,65,61,0,0,0,0,5,4,0,75,0,0,1,27,0,0,97,61,0,0,0,3,4,64,2,16],[0,0,0,5,2,32,2,16,0,0,0,0,5,2,4,51,0,0,0,0,5,69,1,207,0,0,0,0,5,69,2,47],[0,0,0,0,1,33,3,79,0,0,0,0,1,1,4,59,0,0,1,0,4,64,0,137,0,0,0,0,1,65,2,47],[0,0,0,0,1,65,1,207,0,0,0,0,1,81,1,159,0,0,0,0,0,18,4,53,0,0,0,96,1,48,2,16],[0,0,1,42,0,1,4,48,0,0,1,32,0,33,4,33,0,0,0,1,2,0,0,57,0,0,0,0,0,1,4,45],[0,0,0,0,2,0,0,25,0,0,0,0,0,1,4,45,0,0,0,0,15,13,0,25,0,0,1,38,0,33,4,41],[0,0,0,1,2,0,0,57,0,0,0,0,0,1,4,45,0,0,0,0,2,0,0,25,0,0,0,0,0,1,4,45],[0,0,1,40,0,0,4,50,0,0,1,41,0,1,4,46,0,0,1,42,0,1,4,48,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],[0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,1,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255],[87,153,82,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,160,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,255,255,255,224],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255],[1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[78,72,123,113,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,36,0,0,0,0,0,0,0,0,0,0,0,0],[79,118,101,114,102,108,111,119,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[8,195,121,160,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,0,0,0,0,0,0,0,0],[77,115,103,86,97,108,117,101,83,105,109,117,108,97,116,111,114,32,99,97,108,108,115,32,105,116,115,101,108,102,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,128,0,0,0,0,0,0,0,0],[84,104,105,115,32,109,101,116,104,111,100,32,114,101,113,117,105,114,101,32,115,121,115,116,101,109,32,99,97,108,108,32],[102,108,97,103,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,132,0,0,0,128,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[104,86,206,249,159,64,233,200,187,185,162,103,175,77,178,97,168,231,132,34,191,2,15,56,177,244,203,85,226,83,209,29]],"0x000000000000000000000000000000000000800b":[[0,1,0,0,0,0,0,2,0,6,0,0,0,0,0,2,0,0,0,0,0,1,3,85,0,0,0,128,4,0,0,57],[0,0,0,64,0,64,4,63,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,1,24,3,48,1,151],[0,0,0,1,2,32,1,144,0,0,0,33,0,0,193,61,0,0,0,4,2,48,0,140,0,0,3,150,0,0,65,61],[0,0,0,0,2,1,4,59,0,0,0,224,2,32,2,112,0,0,1,28,5,32,0,156,0,0,0,52,0,0,33,61],[0,0,1,46,5,32,0,156,0,0,0,67,0,0,161,61,0,0,1,47,4,32,0,156,0,0,0,123,0,0,161,61],[0,0,1,48,4,32,0,156,0,0,0,200,0,0,33,61,0,0,1,51,1,32,0,156,0,0,1,16,0,0,97,61],[0,0,1,52,1,32,0,156,0,0,3,150,0,0,193,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75],[0,0,3,150,0,0,193,61,0,0,1,12,1,0,0,57,0,0,0,0,1,1,4,26,0,0,1,64,1,16,1,151],[0,0,1,241,0,0,1,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,3,150,0,0,193,61],[0,0,1,24,1,0,0,65,0,0,0,3,2,0,0,57,0,0,0,0,0,18,4,27,0,0,0,4,1,0,0,57],[0,0,0,0,2,1,4,26,0,0,1,25,2,32,1,151,0,0,128,1,2,32,1,191,0,0,0,0,0,33,4,27],[0,0,1,26,1,0,0,65,0,0,0,5,2,0,0,57,0,0,0,0,0,18,4,27,0,0,0,32,1,0,0,57],[0,0,1,0,0,16,4,67,0,0,1,32,0,0,4,67,0,0,1,27,1,0,0,65,0,0,4,90,0,1,4,46],[0,0,1,29,4,32,0,156,0,0,0,99,0,0,161,61,0,0,1,30,4,32,0,156,0,0,0,134,0,0,161,61],[0,0,1,31,4,32,0,156,0,0,0,248,0,0,33,61,0,0,1,34,1,32,0,156,0,0,0,62,0,0,97,61],[0,0,1,35,1,32,0,156,0,0,3,150,0,0,193,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75],[0,0,3,150,0,0,193,61,4,89,4,24,0,0,4,15,0,0,0,111,0,0,1,61,0,0,1,56,5,32,0,156],[0,0,0,156,0,0,33,61,0,0,1,60,5,32,0,156,0,0,1,21,0,0,97,61,0,0,1,61,5,32,0,156],[0,0,1,87,0,0,97,61,0,0,1,62,2,32,0,156,0,0,3,150,0,0,193,61,0,0,0,0,2,0,4,22],[0,0,0,0,2,2,0,75,0,0,3,150,0,0,193,61,0,0,0,4,2,48,0,138,0,0,0,32,2,32,0,140],[0,0,3,150,0,0,65,61,0,0,0,0,2,0,4,17,0,0,128,1,2,32,0,140,0,0,2,22,0,0,193,61],[0,0,0,10,2,0,0,57,0,6,0,0,0,2,0,29,0,0,0,0,2,2,4,26,0,0,0,160,0,32,4,63],[0,0,0,4,1,16,3,112,0,0,0,0,1,1,4,59,0,0,0,192,0,16,4,63,0,0,0,64,2,0,0,57],[0,0,0,128,0,32,4,63,0,0,0,224,1,0,0,57,0,0,0,64,0,16,4,63,0,0,0,160,1,0,0,57],[4,89,4,62,0,0,4,15,0,0,0,6,2,0,0,41,0,0,1,227,0,0,1,61,0,0,1,39,4,32,0,156],[0,0,0,179,0,0,33,61,0,0,1,43,4,32,0,156,0,0,1,1,0,0,97,61,0,0,1,44,1,32,0,156],[0,0,1,143,0,0,97,61,0,0,1,45,1,32,0,156,0,0,3,150,0,0,193,61,0,0,0,0,1,0,4,22],[0,0,0,0,1,1,0,75,0,0,3,150,0,0,193,61,4,89,4,43,0,0,4,15,0,0,1,64,2,32,1,151],[0,0,0,64,3,0,4,61,0,0,0,32,4,48,0,57,0,0,0,0,0,36,4,53,0,0,1,64,1,16,1,151],[0,0,0,0,0,19,4,53,0,0,1,24,1,0,0,65,0,0,1,24,2,48,0,156,0,0,0,0,3,1,128,25],[0,0,0,64,1,48,2,16,0,0,1,65,1,16,1,199,0,0,4,90,0,1,4,46,0,0,1,53,1,32,0,156],[0,0,1,150,0,0,97,61,0,0,1,54,1,32,0,156,0,0,1,162,0,0,97,61,0,0,1,55,1,32,0,156],[0,0,3,150,0,0,193,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,3,150,0,0,193,61],[0,0,0,6,1,0,0,57,0,0,1,199,0,0,1,61,0,0,1,36,4,32,0,156,0,0,1,169,0,0,97,61],[0,0,1,37,4,32,0,156,0,0,1,174,0,0,97,61,0,0,1,38,1,32,0,156,0,0,3,150,0,0,193,61],[0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,3,150,0,0,193,61,0,0,0,4,1,48,0,138],[0,0,0,32,1,16,0,140,0,0,3,150,0,0,65,61,0,0,0,0,1,0,4,17,0,0,128,1,1,16,0,140],[0,0,0,0,1,0,0,25,0,0,0,1,1,0,96,57,4,89,3,248,0,0,4,15,0,0,0,4,1,0,0,57],[0,0,0,0,1,16,3,103,0,0,0,0,1,1,4,59,0,0,0,2,2,0,0,57,0,0,1,227,0,0,1,61],[0,0,1,57,1,32,0,156,0,0,1,195,0,0,97,61,0,0,1,58,1,32,0,156,0,0,1,201,0,0,97,61],[0,0,1,59,1,32,0,156,0,0,3,150,0,0,193,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75],[0,0,3,150,0,0,193,61,0,0,0,0,1,0,4,17,0,0,128,1,1,16,0,140,0,0,2,22,0,0,193,61],[0,0,1,14,1,0,0,57,0,0,0,0,2,1,4,26,0,0,255,255,3,32,1,143,0,0,255,255,4,48,0,140],[0,0,2,32,0,0,193,61,0,0,1,123,1,0,0,65,0,0,0,0,0,16,4,53,0,0,0,17,1,0,0,57],[0,0,0,4,0,16,4,63,0,0,1,124,1,0,0,65,0,0,4,91,0,1,4,48,0,0,1,40,1,32,0,156],[0,0,1,230,0,0,97,61,0,0,1,41,1,32,0,156,0,0,1,237,0,0,97,61,0,0,1,42,1,32,0,156],[0,0,3,150,0,0,193,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,3,150,0,0,193,61],[4,89,4,24,0,0,4,15,0,0,1,64,2,32,1,151,0,0,0,128,1,16,2,16,0,0,0,0,1,33,1,159],[0,0,0,64,2,0,4,61,0,0,0,0,0,18,4,53,0,0,1,24,1,0,0,65,0,0,1,24,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,0,64,1,32,2,16,0,0,1,67,1,16,1,199,0,0,4,90,0,1,4,46],[0,0,1,49,4,32,0,156,0,0,1,244,0,0,97,61,0,0,1,50,2,32,0,156,0,0,3,150,0,0,193,61],[0,0,0,0,2,0,4,22,0,0,0,0,2,2,0,75,0,0,3,150,0,0,193,61,0,0,0,4,2,48,0,138],[0,0,0,32,2,32,0,140,0,0,3,150,0,0,65,61,0,0,0,4,1,16,3,112,0,0,0,0,1,1,4,59],[0,0,1,12,2,0,0,57,0,0,0,0,2,2,4,26,0,0,0,192,3,0,0,57,0,0,0,64,0,48,4,63],[0,0,0,128,6,32,2,112,0,0,1,13,2,0,0,57,0,0,0,0,3,2,4,26,0,0,1,64,5,48,1,151],[0,0,0,128,0,80,4,63,0,0,0,128,2,48,2,112,0,0,0,160,0,32,4,63,0,0,0,0,4,22,0,75],[0,0,0,0,4,0,0,25,0,0,2,68,0,0,161,61,0,0,0,0,4,22,0,73,0,0,1,1,4,64,0,140],[0,0,0,0,4,0,0,25,0,0,2,68,0,0,129,61,0,0,0,0,4,81,0,75,0,0,2,38,0,0,129,61],[0,0,0,0,0,16,4,53,0,0,0,8,1,0,0,57,0,0,0,32,0,16,4,63,0,0,1,24,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,1,24,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,1,70,1,16,1,199,0,0,128,16,2,0,0,57,4,89,4,84,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,3,150,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,0,4,1,4,26,0,0,2,68,0,0,1,61],[0,0,1,32,4,32,0,156,0,0,1,1,0,0,97,61,0,0,1,33,1,32,0,156,0,0,3,150,0,0,193,61],[0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,3,150,0,0,193,61,0,0,0,2,1,0,0,57],[0,0,1,199,0,0,1,61,0,0,0,0,2,0,4,22,0,0,0,0,2,2,0,75,0,0,3,150,0,0,193,61],[0,0,0,4,2,48,0,138,0,0,0,32,2,32,0,140,0,0,3,150,0,0,65,61,0,0,0,4,1,16,3,112],[0,0,0,0,1,1,4,59,0,0,0,0,0,16,4,53,0,0,0,8,1,0,0,57,0,0,0,32,0,16,4,63],[0,0,0,64,2,0,0,57,0,0,0,0,1,0,0,25,4,89,4,62,0,0,4,15,0,0,1,199,0,0,1,61],[0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,3,150,0,0,193,61,0,0,0,3,1,0,0,57],[0,0,1,199,0,0,1,61,0,0,0,0,2,0,4,22,0,0,0,0,2,2,0,75,0,0,3,150,0,0,193,61],[0,0,0,4,2,48,0,138,0,0,0,128,2,32,0,140,0,0,3,150,0,0,65,61,0,0,0,4,2,16,3,112],[0,0,0,0,3,2,4,59,0,0,0,36,2,16,3,112,0,0,0,0,4,2,4,59,0,0,1,64,2,64,0,156],[0,0,3,150,0,0,33,61,0,0,0,68,1,16,3,112,0,0,0,0,5,1,4,59,0,0,1,64,1,80,0,156],[0,0,3,150,0,0,33,61,0,0,0,0,1,0,4,17,0,0,128,1,1,16,0,140,0,0,2,22,0,0,193,61],[0,0,0,192,1,0,0,57,0,0,0,64,0,16,4,63,0,0,0,7,6,0,0,57,0,0,0,0,1,6,4,26],[0,0,1,64,2,16,1,151,0,0,0,128,0,32,4,63,0,0,0,128,1,16,2,112,0,0,0,160,0,16,4,63],[0,0,0,0,2,36,0,75,0,0,2,76,0,0,161,61,0,0,1,64,2,16,0,156,0,0,0,173,0,0,97,61],[0,0,0,1,2,16,0,57,0,0,0,0,2,82,0,75,0,0,2,85,0,0,193,61,0,3,0,0,0,6,0,29],[0,4,0,0,0,5,0,29,0,6,0,0,0,3,0,29,0,0,0,9,2,0,0,57,0,0,0,0,2,2,4,26],[0,0,1,64,2,32,1,151,0,5,0,0,0,4,0,29,0,0,0,0,2,36,0,75,0,0,2,97,0,0,161,61],[0,0,0,0,0,16,4,53,0,0,0,8,1,0,0,57,0,0,0,32,0,16,4,63,0,0,1,24,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,1,24,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,1,70,1,16,1,199,0,0,128,16,2,0,0,57,4,89,4,84,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,0,6,2,0,0,41,0,0,3,150,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,0,0,33,4,27],[0,0,0,64,1,0,4,61,0,0,1,94,2,16,0,156,0,0,3,17,0,0,161,61,0,0,1,123,1,0,0,65],[0,0,0,0,0,16,4,53,0,0,0,65,1,0,0,57,0,0,0,176,0,0,1,61,0,0,0,0,2,0,4,22],[0,0,0,0,2,2,0,75,0,0,3,150,0,0,193,61,0,0,0,4,2,48,0,138,0,0,0,160,2,32,0,140],[0,0,3,150,0,0,65,61,0,0,0,4,2,16,3,112,0,0,0,0,6,2,4,59,0,0,1,64,2,96,0,156],[0,0,3,150,0,0,33,61,0,0,0,36,2,16,3,112,0,0,0,0,5,2,4,59,0,0,1,64,2,80,0,156],[0,0,3,150,0,0,33,61,0,0,0,68,2,16,3,112,0,0,0,0,7,2,4,59,0,0,0,100,2,16,3,112],[0,0,0,0,2,2,4,59,0,0,0,0,3,2,0,75,0,0,0,0,3,0,0,25,0,0,0,1,3,0,192,57],[0,0,0,0,3,50,0,75,0,0,3,150,0,0,193,61,0,0,0,132,1,16,3,112,0,0,0,0,3,1,4,59],[0,0,1,64,1,48,0,156,0,0,3,150,0,0,33,61,0,0,0,0,1,0,4,17,0,0,128,1,1,16,0,140],[0,0,2,22,0,0,193,61,0,0,0,0,1,2,0,75,0,6,0,0,0,3,0,29,0,4,0,0,0,7,0,29],[0,0,2,126,0,0,97,61,0,0,0,7,1,0,0,57,0,0,0,0,1,1,4,26,0,0,1,64,1,16,1,151],[0,0,0,0,3,5,0,25,0,0,0,0,1,21,0,75,0,0,2,111,0,0,129,61,0,0,1,71,1,0,0,65],[0,0,0,128,0,16,4,63,0,0,0,32,1,0,0,57,0,0,0,132,0,16,4,63,0,0,0,97,1,0,0,57],[0,0,0,164,0,16,4,63,0,0,1,79,1,0,0,65,0,0,0,196,0,16,4,63,0,0,1,80,1,0,0,65],[0,0,0,228,0,16,4,63,0,0,1,81,1,0,0,65,0,0,1,4,0,16,4,63,0,0,1,82,1,0,0,65],[0,0,1,36,0,16,4,63,0,0,1,83,1,0,0,65,0,0,4,91,0,1,4,48,0,0,0,0,1,0,4,22],[0,0,0,0,1,1,0,75,0,0,3,150,0,0,193,61,0,0,1,14,1,0,0,57,0,0,0,0,1,1,4,26],[0,0,255,255,1,16,1,143,0,0,1,241,0,0,1,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75],[0,0,3,150,0,0,193,61,0,0,0,0,1,0,4,17,0,0,128,1,1,16,0,140,0,0,0,0,1,0,0,25],[0,0,0,1,1,0,96,57,4,89,3,248,0,0,4,15,0,0,1,14,1,0,0,57,0,0,0,0,2,1,4,26],[0,0,1,75,2,32,1,151,0,0,2,35,0,0,1,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75],[0,0,3,150,0,0,193,61,0,0,1,12,1,0,0,57,0,0,0,0,1,1,4,26,0,0,0,128,1,16,2,112],[0,0,1,241,0,0,1,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,3,150,0,0,193,61],[0,0,0,4,1,0,0,57,0,0,1,234,0,0,1,61,0,0,0,0,2,0,4,22,0,0,0,0,2,2,0,75],[0,0,3,150,0,0,193,61,0,0,0,4,2,48,0,138,0,0,0,32,2,32,0,140,0,0,3,150,0,0,65,61],[0,0,0,4,1,16,3,112,0,0,0,0,2,1,4,59,0,0,1,66,1,32,0,156,0,0,3,150,0,0,33,61],[0,0,0,0,1,0,4,17,0,0,128,1,1,16,0,140,0,0,0,0,1,0,0,25,0,0,0,1,1,0,96,57],[0,6,0,0,0,2,0,29,4,89,3,248,0,0,4,15,0,0,0,1,1,0,0,57,0,0,0,0,2,1,4,26],[0,0,1,25,2,32,1,151,0,0,0,6,2,32,1,175,0,0,2,35,0,0,1,61,0,0,0,0,1,0,4,22],[0,0,0,0,1,1,0,75,0,0,3,150,0,0,193,61,0,0,0,5,1,0,0,57,0,0,0,0,1,1,4,26],[0,0,1,241,0,0,1,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,3,150,0,0,193,61],[0,0,0,4,1,48,0,138,0,0,0,96,1,16,0,140,0,0,3,150,0,0,65,61,0,0,0,0,1,0,4,17],[0,0,128,1,1,16,0,140,0,0,0,0,1,0,0,25,0,0,0,1,1,0,96,57,4,89,3,248,0,0,4,15],[0,0,0,64,1,0,4,61,4,89,4,13,0,0,4,15,0,0,0,0,1,0,3,103,0,0,0,36,2,16,3,112],[0,0,0,0,2,2,4,59,0,0,0,128,2,32,2,16,0,0,0,4,3,16,3,112,0,0,0,0,3,3,4,59],[0,0,1,64,3,48,1,151,0,0,0,0,2,35,1,159,0,0,0,7,3,0,0,57,0,0,0,0,0,35,4,27],[0,0,0,68,1,16,3,112,0,0,0,0,1,1,4,59,0,0,0,6,2,0,0,57,0,0,0,0,0,18,4,27],[0,0,0,0,1,0,0,25,0,0,4,90,0,1,4,46,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75],[0,0,3,150,0,0,193,61,0,0,0,1,1,0,0,57,0,0,0,0,1,1,4,26,0,0,1,66,1,16,1,151],[0,0,1,241,0,0,1,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,3,150,0,0,193,61],[0,0,0,0,1,0,4,26,0,0,0,128,0,16,4,63,0,0,1,63,1,0,0,65,0,0,4,90,0,1,4,46],[0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,3,150,0,0,193,61,0,0,0,0,1,0,4,17],[0,0,128,1,1,16,0,140,0,0,2,22,0,0,193,61,0,0,0,7,1,0,0,57,0,0,0,0,3,1,4,26],[0,0,1,64,1,48,1,151,0,0,0,128,0,16,4,63,0,0,0,128,2,48,2,112,0,0,0,160,0,32,4,63],[0,0,1,0,2,0,0,57,0,0,0,64,0,32,4,63,0,0,0,9,2,0,0,57,0,0,0,0,4,2,4,26],[0,0,1,64,2,64,1,151,0,0,0,192,0,32,4,63,0,0,0,128,4,64,2,112,0,0,0,224,0,64,4,63],[0,0,1,64,3,48,0,156,0,0,2,46,0,0,33,61,0,0,1,71,1,0,0,65,0,0,1,0,0,16,4,63],[0,0,0,32,1,0,0,57,0,0,1,4,0,16,4,63,0,0,0,47,1,0,0,57,0,0,1,36,0,16,4,63],[0,0,1,72,1,0,0,65,0,0,1,68,0,16,4,63,0,0,1,73,1,0,0,65,0,0,1,100,0,16,4,63],[0,0,1,74,1,0,0,65,0,0,4,91,0,1,4,48,0,0,1,71,1,0,0,65,0,0,0,128,0,16,4,63],[0,0,0,32,1,0,0,57,0,0,0,132,0,16,4,63,0,0,0,31,1,0,0,57,0,0,0,164,0,16,4,63],[0,0,1,114,1,0,0,65,0,0,0,196,0,16,4,63,0,0,1,115,1,0,0,65,0,0,4,91,0,1,4,48],[0,0,1,75,2,32,1,151,0,0,0,1,3,48,0,57,0,0,0,0,2,35,1,159,0,0,0,0,0,33,4,27],[0,0,0,0,1,0,0,25,0,0,4,90,0,1,4,46,0,0,1,68,3,48,0,156,0,0,2,52,0,0,65,61],[0,0,0,0,2,33,0,75,0,0,2,52,0,0,65,61,0,0,1,1,33,16,1,26,0,0,0,11,1,32,0,57],[0,0,0,0,4,1,4,26,0,0,2,68,0,0,1,61,0,0,0,128,1,16,2,16,0,0,0,0,1,18,1,159],[0,0,0,3,2,0,0,57,0,0,0,0,0,18,4,28,0,0,0,0,1,0,0,25,0,0,4,90,0,1,4,46],[0,0,0,224,0,16,4,63,0,0,0,32,1,0,0,57,0,0,0,192,0,16,4,63,0,0,1,0,1,0,0,57],[0,0,0,64,0,16,4,63,0,0,1,24,1,0,0,65,0,0,0,0,2,0,4,20,0,0,1,24,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,1,69,1,16,1,199,0,0,128,16,2,0,0,57],[4,89,4,84,0,0,4,15,0,0,0,1,2,32,1,144,0,0,3,150,0,0,97,61,0,0,0,0,4,1,4,59],[0,0,0,64,1,0,4,61,0,0,0,0,0,65,4,53,0,0,1,24,2,0,0,65,0,0,1,24,3,16,0,156],[0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16,0,0,1,67,1,16,1,199,0,0,4,90,0,1,4,46],[0,0,1,71,1,0,0,65,0,0,0,192,0,16,4,63,0,0,0,32,1,0,0,57,0,0,0,196,0,16,4,63],[0,0,0,228,0,16,4,63,0,0,1,116,1,0,0,65,0,0,1,4,0,16,4,63,0,0,1,85,1,0,0,65],[0,0,4,91,0,1,4,48,0,0,1,71,1,0,0,65,0,0,0,192,0,16,4,63,0,0,0,32,1,0,0,57],[0,0,0,196,0,16,4,63,0,0,0,40,1,0,0,57,0,0,0,228,0,16,4,63,0,0,1,117,1,0,0,65],[0,0,1,4,0,16,4,63,0,0,1,118,1,0,0,65,0,0,1,36,0,16,4,63,0,0,1,97,1,0,0,65],[0,0,4,91,0,1,4,48,0,0,1,71,1,0,0,65,0,0,0,192,0,16,4,63,0,0,0,32,1,0,0,57],[0,0,0,196,0,16,4,63,0,0,0,83,1,0,0,57,0,0,0,228,0,16,4,63,0,0,1,119,1,0,0,65],[0,0,1,4,0,16,4,63,0,0,1,120,1,0,0,65,0,0,1,36,0,16,4,63,0,0,1,121,1,0,0,65],[0,0,1,68,0,16,4,63,0,0,1,122,1,0,0,65,0,0,4,91,0,1,4,48,0,0,0,6,1,0,0,107],[0,0,0,0,5,3,0,25,0,0,2,126,0,0,193,61,0,0,1,71,1,0,0,65,0,0,0,128,0,16,4,63],[0,0,0,32,1,0,0,57,0,0,0,132,0,16,4,63,0,0,0,63,1,0,0,57,0,0,0,164,0,16,4,63],[0,0,1,76,1,0,0,65,0,0,0,196,0,16,4,63,0,0,1,77,1,0,0,65,0,0,0,228,0,16,4,63],[0,0,1,78,1,0,0,65,0,0,4,91,0,1,4,48,0,2,0,0,0,5,0,29,0,0,0,192,1,0,0,57],[0,0,0,64,0,16,4,63,0,0,0,9,1,0,0,57,0,1,0,0,0,1,0,29,0,0,0,0,3,1,4,26],[0,0,1,64,5,48,1,151,0,0,0,128,0,80,4,63,0,0,0,128,1,48,2,112,0,0,0,160,0,16,4,63],[0,0,1,64,3,48,0,156,0,5,0,0,0,6,0,29,0,3,0,0,0,5,0,29,0,0,2,154,0,0,33,61],[0,0,0,0,3,5,0,75,0,0,2,159,0,0,193,61,0,0,0,0,1,2,0,75,0,0,2,253,0,0,193,61],[0,0,1,71,1,0,0,65,0,0,0,192,0,16,4,63,0,0,0,32,1,0,0,57,0,0,0,196,0,16,4,63],[0,0,0,33,1,0,0,57,0,0,0,228,0,16,4,63,0,0,1,112,1,0,0,65,0,0,1,4,0,16,4,63],[0,0,1,113,1,0,0,65,0,0,2,94,0,0,1,61,0,0,0,0,3,97,0,75,0,0,2,161,0,0,97,61],[0,0,1,64,2,16,0,156,0,0,0,173,0,0,97,61,0,0,2,188,0,0,1,61,0,0,0,5,3,16,0,108],[0,0,2,188,0,0,193,61,0,0,0,0,1,2,0,75,0,0,2,243,0,0,193,61,0,0,0,3,2,0,0,41],[0,0,0,2,1,32,0,108,0,0,3,39,0,0,193,61,0,0,0,5,1,0,0,41,0,0,0,1,1,16,0,138],[0,0,1,64,2,16,0,156,0,0,0,173,0,0,33,61,0,0,1,64,1,16,1,151,0,0,1,1,33,16,1,26],[0,0,0,11,1,32,0,57,0,0,0,0,1,1,4,26,0,0,0,4,1,16,0,107,0,0,3,152,0,0,193,61],[0,0,0,6,1,0,0,107,0,0,3,100,0,0,97,61,0,0,1,71,1,0,0,65,0,0,0,192,0,16,4,63],[0,0,0,32,1,0,0,57,0,0,0,196,0,16,4,63,0,0,0,60,1,0,0,57,0,0,0,228,0,16,4,63],[0,0,1,102,1,0,0,65,0,0,1,4,0,16,4,63,0,0,1,103,1,0,0,65,0,0,2,94,0,0,1,61],[0,0,0,1,2,16,0,57,0,0,0,5,2,32,0,108,0,0,3,9,0,0,193,61,0,0,0,1,2,16,0,138],[0,0,1,64,3,32,0,156,0,0,0,173,0,0,33,61,0,0,0,10,3,0,0,57,0,0,0,0,3,3,4,26],[0,0,1,64,2,32,1,151,0,0,1,1,82,32,1,26,0,0,0,11,2,80,0,57,0,0,0,0,2,2,4,26],[0,0,0,224,0,16,4,63,0,0,0,3,1,0,0,41,0,0,1,0,0,16,4,63,0,0,1,32,0,32,4,63],[0,0,1,64,0,48,4,63,0,0,0,192,0,64,4,63,0,0,1,96,1,0,0,57,0,0,0,64,0,16,4,63],[0,0,1,24,1,0,0,65,0,0,0,0,2,0,4,20,0,0,1,24,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,192,1,32,2,16,0,0,1,86,1,16,1,199,0,0,128,16,2,0,0,57,4,89,4,84,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,0,4,3,0,0,41,0,0,3,150,0,0,97,61,0,0,0,64,2,0,4,61],[0,0,0,0,1,1,4,59,0,0,0,0,1,19,0,75,0,0,3,162,0,0,193,61,0,0,0,3,3,0,0,41],[0,0,0,2,1,48,0,107,0,0,3,197,0,0,161,61,0,0,1,94,1,32,0,156,0,0,1,83,0,0,33,61],[0,0,0,64,1,32,0,57,0,0,0,64,0,16,4,63,0,0,0,32,1,32,0,57,0,0,0,5,4,0,0,41],[0,0,0,0,0,65,4,53,0,0,0,2,3,0,0,41,0,0,0,0,0,50,4,53,0,0,0,128,1,64,2,16],[0,0,0,0,1,19,1,159,0,0,0,1,2,0,0,41,0,0,0,0,0,18,4,27,0,0,0,1,1,64,0,138],[0,0,1,64,2,16,0,156,0,0,0,173,0,0,33,61,0,0,3,93,0,0,1,61,0,0,1,71,1,0,0,65],[0,0,0,192,0,16,4,63,0,0,0,32,1,0,0,57,0,0,0,196,0,16,4,63,0,0,0,53,1,0,0,57],[0,0,0,228,0,16,4,63,0,0,1,95,1,0,0,65,0,0,1,4,0,16,4,63,0,0,1,96,1,0,0,65],[0,0,2,94,0,0,1,61,0,0,0,5,1,0,0,107,0,0,3,49,0,0,193,61,0,0,1,71,1,0,0,65],[0,0,0,192,0,16,4,63,0,0,0,32,1,0,0,57,0,0,0,196,0,16,4,63,0,0,0,44,1,0,0,57],[0,0,0,228,0,16,4,63,0,0,1,110,1,0,0,65,0,0,1,4,0,16,4,63,0,0,1,111,1,0,0,65],[0,0,2,94,0,0,1,61,0,0,1,71,1,0,0,65,0,0,0,192,0,16,4,63,0,0,0,32,1,0,0,57],[0,0,0,196,0,16,4,63,0,0,0,27,1,0,0,57,0,0,0,228,0,16,4,63,0,0,1,84,1,0,0,65],[0,0,2,82,0,0,1,61,0,0,0,64,2,16,0,57,0,0,0,64,0,32,4,63,0,0,0,32,2,16,0,57],[0,0,0,4,3,0,0,41,0,0,0,0,0,50,4,53,0,0,0,5,2,0,0,41,0,0,0,0,0,33,4,53],[0,0,0,128,1,48,2,16,0,0,1,64,2,32,1,151,0,0,0,0,1,18,1,159,0,0,0,3,2,0,0,41],[0,0,0,0,0,18,4,27,0,0,0,100,1,0,0,57,0,0,0,0,1,16,3,103,0,0,0,0,1,1,4,59],[0,0,0,6,2,0,0,57,0,0,0,0,0,18,4,27,0,0,0,4,1,0,0,57,0,0,0,6,2,0,0,41],[0,0,0,0,0,33,4,28,0,0,0,0,1,0,0,25,0,0,4,90,0,1,4,46,0,0,1,71,1,0,0,65],[0,0,0,192,0,16,4,63,0,0,0,32,1,0,0,57,0,0,0,196,0,16,4,63,0,0,0,47,1,0,0,57],[0,0,0,228,0,16,4,63,0,0,1,98,1,0,0,65,0,0,1,4,0,16,4,63,0,0,1,99,1,0,0,65],[0,0,2,94,0,0,1,61,0,0,0,5,1,0,0,41,0,0,1,64,1,16,0,65,0,3,0,0,0,1,0,29],[0,0,0,224,1,16,2,16,0,0,0,224,0,16,4,63,0,0,0,4,1,0,0,57,0,0,0,192,0,16,4,63],[0,0,1,0,1,0,0,57,0,0,0,64,0,16,4,63,0,0,1,24,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,1,24,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,1,104,1,16,1,199],[0,0,128,16,2,0,0,57,4,89,4,84,0,0,4,15,0,0,0,1,2,32,1,144,0,0,0,4,3,0,0,41],[0,0,3,150,0,0,97,61,0,0,0,64,2,0,4,61,0,0,0,0,1,1,4,59,0,0,0,0,1,49,0,75],[0,0,3,171,0,0,193,61,0,0,0,3,1,0,0,41,0,0,1,64,1,16,1,151,0,0,1,1,49,16,1,26],[0,0,0,11,1,48,0,57,0,0,0,4,3,0,0,41,0,0,0,0,0,49,4,27,0,0,1,94,1,32,0,156],[0,0,1,83,0,0,33,61,0,0,0,64,1,32,0,57,0,0,0,64,0,16,4,63,0,0,0,32,1,32,0,57],[0,0,0,5,4,0,0,41,0,0,0,0,0,65,4,53,0,0,0,2,3,0,0,41,0,0,0,0,0,50,4,53],[0,0,0,128,1,64,2,16,0,0,0,0,1,19,1,159,0,0,0,1,2,0,0,41,0,0,0,0,0,18,4,27],[0,0,0,1,1,64,0,138,0,0,1,64,1,16,1,151,0,0,1,1,33,16,1,26,0,0,0,11,1,32,0,57],[0,0,0,4,2,0,0,41,0,0,0,0,0,33,4,27,0,0,0,10,1,0,0,57,0,0,0,0,0,1,4,27],[0,0,1,13,1,0,0,57,0,0,0,0,2,1,4,26,0,0,1,68,3,32,0,156,0,0,3,191,0,0,129,61],[0,0,0,64,3,0,4,61,0,0,1,94,4,48,0,156,0,0,1,83,0,0,33,61,0,0,0,64,4,48,0,57],[0,0,0,64,0,64,4,63,0,0,1,12,4,0,0,57,0,0,0,0,6,4,4,26,0,0,1,64,4,96,1,151],[0,0,0,0,4,67,4,54,0,0,0,128,5,96,2,112,0,0,0,0,0,84,4,53,0,0,1,64,6,96,0,156],[0,0,3,220,0,0,33,61,0,0,0,0,6,3,4,51,0,0,1,64,6,96,1,152,0,0,3,220,0,0,193,61],[0,0,0,7,5,0,0,57,0,0,0,0,5,5,4,26,0,0,0,128,5,80,2,112,0,0,0,0,0,84,4,53],[0,0,1,107,2,32,1,151,0,0,0,0,2,37,1,159,0,0,0,0,0,33,4,27,0,0,0,6,6,0,0,107],[0,0,3,223,0,0,193,61,0,0,0,64,1,0,4,61,0,0,0,100,2,16,0,57,0,0,1,108,3,0,0,65],[0,0,0,0,0,50,4,53,0,0,0,68,2,16,0,57,0,0,1,109,3,0,0,65,0,0,0,0,0,50,4,53],[0,0,0,36,2,16,0,57,0,0,0,40,3,0,0,57,0,0,0,0,0,50,4,53,0,0,1,71,2,0,0,65],[0,0,0,0,0,33,4,53,0,0,0,4,2,16,0,57,0,0,0,32,3,0,0,57,0,0,0,0,0,50,4,53],[0,0,1,24,2,0,0,65,0,0,1,24,3,16,0,156,0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16],[0,0,1,89,1,16,1,199,0,0,4,91,0,1,4,48,0,0,0,0,1,0,0,25,0,0,4,91,0,1,4,48],[0,0,1,71,1,0,0,65,0,0,0,192,0,16,4,63,0,0,0,32,1,0,0,57,0,0,0,196,0,16,4,63],[0,0,0,51,1,0,0,57,0,0,0,228,0,16,4,63,0,0,1,100,1,0,0,65,0,0,1,4,0,16,4,63],[0,0,1,101,1,0,0,65,0,0,2,94,0,0,1,61,0,0,0,100,1,32,0,57,0,0,1,87,3,0,0,65],[0,0,0,0,0,49,4,53,0,0,0,68,1,32,0,57,0,0,1,88,3,0,0,65,0,0,0,0,0,49,4,53],[0,0,0,36,1,32,0,57,0,0,0,38,3,0,0,57,0,0,3,179,0,0,1,61,0,0,0,100,1,32,0,57],[0,0,1,105,3,0,0,65,0,0,0,0,0,49,4,53,0,0,0,68,1,32,0,57,0,0,1,106,3,0,0,65],[0,0,0,0,0,49,4,53,0,0,0,36,1,32,0,57,0,0,0,39,3,0,0,57,0,0,0,0,0,49,4,53],[0,0,1,71,1,0,0,65,0,0,0,0,0,18,4,53,0,0,0,4,1,32,0,57,0,0,0,32,3,0,0,57],[0,0,0,0,0,49,4,53,0,0,1,24,1,0,0,65,0,0,1,24,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,64,1,32,2,16,0,0,1,89,1,16,1,199,0,0,4,91,0,1,4,48,0,0,0,1,1,0,0,41],[0,0,0,0,1,1,4,26,0,0,1,12,2,0,0,57,0,0,0,0,0,18,4,27,0,0,0,0,1,0,0,25],[0,0,4,90,0,1,4,46,0,0,0,132,1,32,0,57,0,0,1,90,3,0,0,65,0,0,0,0,0,49,4,53],[0,0,0,100,1,32,0,57,0,0,1,91,3,0,0,65,0,0,0,0,0,49,4,53,0,0,0,68,1,32,0,57],[0,0,1,92,3,0,0,65,0,0,0,0,0,49,4,53,0,0,0,36,1,32,0,57,0,0,0,93,3,0,0,57],[0,0,0,0,0,49,4,53,0,0,1,71,1,0,0,65,0,0,0,0,0,18,4,53,0,0,0,4,1,32,0,57],[0,0,0,32,3,0,0,57,0,0,0,0,0,49,4,53,0,0,1,24,1,0,0,65,0,0,1,24,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,0,64,1,32,2,16,0,0,1,93,1,16,1,199,0,0,4,91,0,1,4,48],[0,0,0,6,6,0,0,107,0,0,3,225,0,0,193,61,0,0,3,195,0,0,1,61,0,0,0,6,6,0,0,41],[0,6,0,1,0,96,0,146,0,0,0,6,5,80,0,41,0,0,1,64,6,80,0,156,0,0,0,173,0,0,33,61],[0,0,0,0,0,84,4,53,0,0,0,2,5,0,0,41,0,0,0,0,0,83,4,53,0,0,0,0,5,4,4,51],[0,0,1,64,6,80,1,151,0,0,0,5,6,96,0,108,0,0,3,237,0,0,129,61,0,0,0,128,5,80,2,16],[0,0,3,244,0,0,1,61,0,0,0,5,6,0,0,41,0,0,0,128,5,96,2,16,0,0,0,0,2,82,1,159],[0,0,0,0,0,33,4,27,0,0,0,0,0,100,4,53,0,0,0,0,1,3,4,51,0,2,0,0,0,1,0,29],[0,0,0,2,1,0,0,41,0,0,1,64,1,16,1,151,0,0,0,0,1,81,1,159,0,0,3,193,0,0,1,61],[0,0,0,0,1,1,0,75,0,0,3,251,0,0,97,61,0,0,0,0,0,1,4,45,0,0,0,64,1,0,4,61],[0,0,0,68,2,16,0,57,0,0,1,114,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,36,2,16,0,57],[0,0,0,31,3,0,0,57,0,0,0,0,0,50,4,53,0,0,1,71,2,0,0,65,0,0,0,0,0,33,4,53],[0,0,0,4,2,16,0,57,0,0,0,32,3,0,0,57,0,0,0,0,0,50,4,53,0,0,1,24,2,0,0,65],[0,0,1,24,3,16,0,156,0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16,0,0,1,125,1,16,1,199],[0,0,4,91,0,1,4,48,0,0,1,126,2,16,0,156,0,0,4,18,0,0,129,61,0,0,0,64,1,16,0,57],[0,0,0,64,0,16,4,63,0,0,0,0,0,1,4,45,0,0,1,123,1,0,0,65,0,0,0,0,0,16,4,53],[0,0,0,65,1,0,0,57,0,0,0,4,0,16,4,63,0,0,1,124,1,0,0,65,0,0,4,91,0,1,4,48],[0,0,0,64,3,0,4,61,0,0,1,126,1,48,0,156,0,0,4,37,0,0,129,61,0,0,0,64,1,48,0,57],[0,0,0,64,0,16,4,63,0,0,0,7,1,0,0,57,0,0,0,0,2,1,4,26,0,0,0,32,4,48,0,57],[0,0,0,128,1,32,2,112,0,0,0,0,0,20,4,53,0,0,1,64,2,32,1,151,0,0,0,0,0,35,4,53],[0,0,0,0,0,1,4,45,0,0,1,123,1,0,0,65,0,0,0,0,0,16,4,53,0,0,0,65,1,0,0,57],[0,0,0,4,0,16,4,63,0,0,1,124,1,0,0,65,0,0,4,91,0,1,4,48,0,0,0,64,3,0,4,61],[0,0,1,126,1,48,0,156,0,0,4,56,0,0,129,61,0,0,0,64,1,48,0,57,0,0,0,64,0,16,4,63],[0,0,0,9,1,0,0,57,0,0,0,0,2,1,4,26,0,0,0,32,4,48,0,57,0,0,0,128,1,32,2,112],[0,0,0,0,0,20,4,53,0,0,1,64,2,32,1,151,0,0,0,0,0,35,4,53,0,0,0,0,0,1,4,45],[0,0,1,123,1,0,0,65,0,0,0,0,0,16,4,53,0,0,0,65,1,0,0,57,0,0,0,4,0,16,4,63],[0,0,1,124,1,0,0,65,0,0,4,91,0,1,4,48,0,0,1,24,3,0,0,65,0,0,1,24,4,16,0,156],[0,0,0,0,1,3,128,25,0,0,0,64,1,16,2,16,0,0,1,24,4,32,0,156,0,0,0,0,2,3,128,25],[0,0,0,96,2,32,2,16,0,0,0,0,1,18,1,159,0,0,0,0,2,0,4,20,0,0,1,24,4,32,0,156],[0,0,0,0,2,3,128,25,0,0,0,192,2,32,2,16,0,0,0,0,1,18,1,159,0,0,1,127,1,16,1,199],[0,0,128,16,2,0,0,57,4,89,4,84,0,0,4,15,0,0,0,1,2,32,1,144,0,0,4,82,0,0,97,61],[0,0,0,0,1,1,4,59,0,0,0,0,0,1,4,45,0,0,0,0,1,0,0,25,0,0,4,91,0,1,4,48],[0,0,4,87,0,33,4,35,0,0,0,1,2,0,0,57,0,0,0,0,0,1,4,45,0,0,0,0,2,0,0,25],[0,0,0,0,0,1,4,45,0,0,4,89,0,0,4,50,0,0,4,90,0,1,4,46,0,0,4,91,0,1,4,48],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],[255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,225,188,155,240,64,0],[0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,1,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,133,223,81,252],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,166,174,10,171],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,208,242,198,98],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,221,234,168,229],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,221,234,168,230],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,254,23,59,151],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,208,242,198,99],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,212,164,202,13],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,166,174,10,172],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,168,81,174,120],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,191,31,228,32],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,147,139,95,49],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,147,139,95,50],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,154,138,5,146],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,160,128,62,247],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,133,223,81,253],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,138,200,76,14],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,142,138,207,135],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,54,53,243,229],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,120,119,167,150],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,124,155,209,242],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,124,155,209,243],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,180,18,70],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,120,119,167,151],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,121,107,137,185],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,54,53,243,230],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,66,203,177,92],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,110,242,92,58],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25,202,228,97],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25,202,228,98],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,41,241,114,173],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,48,229,204,189],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,250,87,121],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,190,208,54],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,231,81,123],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,0,0,0,128,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,0,0,0,224,0,0,0,0,0,0,0,0],[2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,0],[8,195,121,160,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[84,104,101,32,99,117,114,114,101,110,116,32,98,97,116,99,104,32,110,117,109,98,101,114,32,109,117,115,116,32,98,101],[32,103,114,101,97,116,101,114,32,116,104,97,110,32,48,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,132,0,0,1,0,0,0,0,0,0,0,0,0],[255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0],[84,104,101,114,101,32,109,117,115,116,32,98,101,32,97,32,118,105,114,116,117,97,108,32,98,108,111,99,107,32,99,114],[101,97,116,101,100,32,97,116,32,116,104,101,32,115,116,97,114,116,32,111,102,32,116,104,101,32,98,97,116,99,104,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,132,0,0,0,128,0,0,0,0,0,0,0,0],[84,104,101,32,116,105,109,101,115,116,97,109,112,32,111,102,32,116,104,101,32,76,50,32,98,108,111,99,107,32,109,117],[115,116,32,98,101,32,103,114,101,97,116,101,114,32,116,104,97,110,32,111,114,32,101,113,117,97,108,32,116,111,32,116],[104,101,32,116,105,109,101,115,116,97,109,112,32,111,102,32,116,104,101,32,99,117,114,114,101,110,116,32,98,97,116,99],[104,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,196,0,0,0,128,0,0,0,0,0,0,0,0],[73,110,118,97,108,105,100,32,110,101,119,32,76,50,32,98,108,111,99,107,32,110,117,109,98,101,114,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,192,0,0,0,0,0,0,0,0],[2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,0,0,0,224,0,0,0,0,0,0,0,0],[111,114,114,101,99,116,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[84,104,101,32,99,117,114,114,101,110,116,32,76,50,32,98,108,111,99,107,32,104,97,115,104,32,105,115,32,105,110,99],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,132,0,0,0,0,0,0,0,0,0,0,0,0],[116,97,109,112,32,111,102,32,116,104,101,32,112,114,101,118,105,111,117,115,32,76,50,32,98,108,111,99,107,0,0,0],[107,32,109,117,115,116,32,98,101,32,103,114,101,97,116,101,114,32,116,104,97,110,32,116,104,101,32,116,105,109,101,115],[84,104,101,32,116,105,109,101,115,116,97,109,112,32,111,102,32,116,104,101,32,110,101,119,32,76,50,32,98,108,111,99],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,164,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,191],[67,97,110,32,110,111,116,32,114,101,117,115,101,32,76,50,32,98,108,111,99,107,32,110,117,109,98,101,114,32,102,114],[111,109,32,116,104,101,32,112,114,101,118,105,111,117,115,32,98,97,116,99,104,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,132,0,0,0,192,0,0,0,0,0,0,0,0],[84,104,101,32,116,105,109,101,115,116,97,109,112,32,111,102,32,116,104,101,32,115,97,109,101,32,76,50,32,98,108,111],[99,107,32,109,117,115,116,32,98,101,32,115,97,109,101,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[84,104,101,32,112,114,101,118,105,111,117,115,32,104,97,115,104,32,111,102,32,116,104,101,32,115,97,109,101,32,76,50],[32,98,108,111,99,107,32,109,117,115,116,32,98,101,32,115,97,109,101,0,0,0,0,0,0,0,0,0,0,0,0,0],[67,97,110,32,110,111,116,32,99,114,101,97,116,101,32,118,105,114,116,117,97,108,32,98,108,111,99,107,115,32,105,110],[32,116,104,101,32,109,105,100,100,108,101,32,111,102,32,116,104,101,32,109,105,110,105,98,108,111,99,107,0,0,0,0],[2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,224,0,0,0,0,0,0,0,0],[99,111,114,114,101,99,116,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[84,104,101,32,112,114,101,118,105,111,117,115,32,76,50,32,98,108,111,99,107,32,104,97,115,104,32,105,115,32,105,110],[255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[97,108,32,98,108,111,99,107,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[67,97,110,39,116,32,105,110,105,116,105,97,108,105,122,101,32,116,104,101,32,102,105,114,115,116,32,118,105,114,116,117],[76,50,32,98,108,111,99,107,32,110,117,109,98,101,114,32,105,115,32,110,101,118,101,114,32,101,120,112,101,99,116,101],[100,32,116,111,32,98,101,32,122,101,114,111,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[85,112,103,114,97,100,101,32,116,114,97,110,115,97,99,116,105,111,110,32,109,117,115,116,32,98,101,32,102,105,114,115],[116,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[67,97,108,108,97,98,108,101,32,111,110,108,121,32,98,121,32,116,104,101,32,98,111,111,116,108,111,97,100,101,114,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,128,0,0,0,0,0,0,0,0],[84,105,109,101,115,116,97,109,112,115,32,115,104,111,117,108,100,32,98,101,32,105,110,99,114,101,109,101,110,116,97,108],[84,104,101,32,112,114,111,118,105,100,101,100,32,98,108,111,99,107,32,110,117,109,98,101,114,32,105,115,32,110,111,116],[32,99,111,114,114,101,99,116,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[84,104,101,32,116,105,109,101,115,116,97,109,112,32,111,102,32,116,104,101,32,98,97,116,99,104,32,109,117,115,116,32],[98,101,32,103,114,101,97,116,101,114,32,116,104,97,110,32,116,104,101,32,116,105,109,101,115,116,97,109,112,32,111,102],[32,116,104,101,32,112,114,101,118,105,111,117,115,32,98,108,111,99,107,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,164,0,0,0,192,0,0,0,0,0,0,0,0],[78,72,123,113,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,36,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,192],[2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[24,39,86,27,18,102,204,92,30,2,117,140,74,185,186,92,56,38,42,164,136,173,174,88,124,113,102,32,107,183,146,68]],"0x000000000000000000000000000000000000800c":[[0,2,0,0,0,0,0,2,0,17,0,0,0,0,0,2,0,1,0,0,0,1,3,85,0,0,0,0,3,1,0,25],[0,0,0,96,5,48,2,112,0,0,7,155,0,80,1,157,0,0,0,128,4,0,0,57,0,0,0,64,0,64,4,63],[0,0,7,155,3,80,1,151,0,0,0,1,2,32,1,144,0,0,0,111,0,0,193,61,0,0,0,4,2,48,0,140],[0,0,0,159,0,0,65,61,0,0,0,0,2,1,4,59,0,0,7,157,2,32,1,151,0,0,7,158,2,32,0,156],[0,0,0,159,0,0,193,61,0,0,0,0,2,0,4,22,0,0,0,0,2,2,0,75,0,0,0,159,0,0,193,61],[0,0,0,4,2,48,0,138,0,0,0,32,6,32,0,140,0,0,0,159,0,0,65,61,0,0,0,4,6,16,3,112],[0,0,0,0,13,6,4,59,0,0,7,159,6,208,0,156,0,0,0,159,0,0,33,61,0,0,0,0,2,210,0,73],[0,0,7,160,6,0,0,65,0,0,2,96,7,32,0,140,0,0,0,0,7,0,0,25,0,0,0,0,7,6,64,25],[0,0,7,160,2,32,1,151,0,0,0,0,8,2,0,75,0,0,0,0,6,0,160,25,0,0,7,160,2,32,0,156],[0,0,0,0,6,7,192,25,0,0,0,0,2,6,0,75,0,0,0,159,0,0,193,61,0,0,0,4,12,208,0,57],[0,0,0,0,2,193,3,79,0,0,0,0,2,2,4,59,0,0,0,0,6,2,0,75,0,0,0,119,0,0,193,61],[0,0,0,0,2,49,3,79,0,0,1,0,5,192,0,57,0,0,0,0,4,81,3,79,0,0,0,0,4,4,4,59],[0,0,0,128,6,64,0,140,0,0,0,161,0,0,65,61,0,0,0,128,6,64,2,112,0,0,7,168,7,64,0,156],[0,0,0,0,6,4,160,25,0,0,7,168,7,64,0,156,0,0,0,0,7,0,0,25,0,0,0,16,7,0,32,57],[0,0,0,8,8,112,1,191,0,0,7,159,9,96,0,156,0,0,0,0,8,7,160,25,0,0,0,64,7,96,2,112],[0,0,7,159,9,96,0,156,0,0,0,0,7,6,160,25,0,0,0,4,9,128,1,191,0,0,7,155,6,112,0,156],[0,0,0,0,9,8,160,25,0,0,0,32,8,112,2,112,0,0,7,155,6,112,0,156,0,0,0,0,8,7,160,25],[0,0,0,2,6,144,1,191,0,0,255,255,7,128,0,140,0,0,0,0,6,9,160,25,0,0,0,16,7,128,2,112],[0,0,0,0,7,8,160,25,0,0,0,255,7,112,0,140,0,0,0,1,6,96,32,57,0,0,0,32,7,0,0,138],[0,0,0,193,8,96,0,57,0,0,0,0,7,120,1,111,0,0,0,64,0,112,4,63,0,0,0,2,7,96,0,57],[0,0,0,128,0,112,4,63,0,0,0,33,7,96,0,57,0,0,0,5,7,112,2,114,0,0,0,93,0,0,97,61],[0,0,0,0,8,0,0,25,0,0,0,5,9,128,2,16,0,0,0,0,10,146,3,79,0,0,0,0,10,10,4,59],[0,0,0,160,9,144,0,57,0,0,0,0,0,169,4,53,0,0,0,1,8,128,0,57,0,0,0,0,9,120,0,75],[0,0,0,85,0,0,65,61,0,0,0,0,7,0,0,75,0,0,0,95,0,0,97,61,0,0,0,128,7,0,4,61],[0,0,0,0,7,7,0,75,0,0,1,193,0,0,97,61,0,0,0,160,7,0,4,61,0,0,7,167,7,112,1,151],[0,0,0,248,8,96,2,16,0,0,0,0,7,120,1,159,0,0,7,169,7,112,0,65,0,0,0,160,0,112,4,63],[0,0,0,3,6,96,2,16,0,0,0,248,6,96,0,137,0,0,0,0,4,100,1,207,0,0,0,255,6,96,0,140],[0,0,0,0,4,0,32,25,0,0,0,161,0,64,4,63,0,0,0,174,0,0,1,61,0,0,0,0,1,0,4,22],[0,0,0,0,1,1,0,75,0,0,0,159,0,0,193,61,0,0,0,32,1,0,0,57,0,0,1,0,0,16,4,67],[0,0,1,32,0,0,4,67,0,0,7,156,1,0,0,65,0,0,30,105,0,1,4,46,0,0,0,113,6,32,0,140],[0,0,0,251,0,0,193,61,0,0,1,196,2,208,0,57,0,0,0,0,2,33,3,79,0,0,0,0,6,211,0,73],[0,0,0,35,6,96,0,138,0,0,0,0,2,2,4,59,0,0,7,160,7,0,0,65,0,0,0,0,8,98,0,75],[0,0,0,0,8,0,0,25,0,0,0,0,8,7,128,25,0,0,7,160,6,96,1,151,0,0,7,160,9,32,1,151],[0,0,0,0,10,105,0,75,0,0,0,0,7,0,128,25,0,0,0,0,6,105,1,63,0,0,7,160,6,96,0,156],[0,0,0,0,7,8,192,25,0,0,0,0,6,7,0,75,0,0,0,159,0,0,193,61,0,0,0,0,2,194,0,25],[0,0,0,0,6,33,3,79,0,0,0,0,6,6,4,59,0,0,7,159,7,96,0,156,0,0,0,159,0,0,33,61],[0,0,0,0,7,99,0,73,0,0,0,32,2,32,0,57,0,0,7,160,8,0,0,65,0,0,0,0,9,114,0,75],[0,0,0,0,9,0,0,25,0,0,0,0,9,8,32,25,0,0,7,160,7,112,1,151,0,0,7,160,10,32,1,151],[0,0,0,0,11,122,0,75,0,0,0,0,8,0,128,25,0,0,0,0,7,122,1,63,0,0,7,160,7,112,0,156],[0,0,0,0,8,9,192,25,0,0,0,0,7,8,0,75,0,0,2,193,0,0,97,61,0,0,0,0,1,0,0,25],[0,0,30,106,0,1,4,48,0,0,0,248,6,64,2,16,0,0,7,160,7,0,0,65,0,0,0,0,4,4,0,75],[0,0,0,0,7,6,192,25,0,0,0,192,4,0,0,57,0,0,0,64,0,64,4,63,0,0,0,1,4,0,0,57],[0,0,0,128,0,64,4,63,0,0,0,0,4,32,3,80,0,0,0,0,4,4,4,59,0,0,7,167,4,64,1,151],[0,0,0,0,4,116,1,159,0,0,0,160,0,64,4,63,0,13,0,0,0,13,0,29,0,12,0,0,0,12,0,29],[0,0,0,64,4,0,4,61,0,0,0,96,5,80,0,138,0,0,0,0,6,81,3,79,0,0,0,0,6,6,4,59],[0,0,0,128,7,96,0,140,0,0,1,87,0,0,65,61,0,0,0,128,7,96,2,112,0,0,7,168,8,96,0,156],[0,0,0,0,7,6,160,25,0,0,7,168,8,96,0,156,0,0,0,0,8,0,0,25,0,0,0,16,8,0,32,57],[0,0,0,8,9,128,1,191,0,0,7,159,10,112,0,156,0,0,0,0,9,8,160,25,0,0,0,64,8,112,2,112],[0,0,7,159,10,112,0,156,0,0,0,0,8,7,160,25,0,0,0,4,10,144,1,191,0,0,7,155,7,128,0,156],[0,0,0,0,10,9,160,25,0,0,0,32,9,128,2,112,0,0,7,155,7,128,0,156,0,0,0,0,9,8,160,25],[0,0,0,2,7,160,1,191,0,0,255,255,8,144,0,140,0,0,0,0,7,10,160,25,0,0,0,16,8,144,2,112],[0,0,0,0,8,9,160,25,0,0,0,255,8,128,0,140,0,0,0,1,7,112,32,57,0,0,0,32,8,0,0,138],[0,0,0,65,9,112,0,57,0,0,0,0,8,137,1,111,0,0,0,0,8,132,0,25,0,0,0,0,9,72,0,75],[0,0,0,0,9,0,0,25,0,0,0,1,9,0,64,57,0,0,7,159,10,128,0,156,0,0,1,89,0,0,33,61],[0,0,0,1,9,144,1,144,0,0,1,89,0,0,193,61,0,0,0,64,0,128,4,63,0,0,0,2,8,112,0,57],[0,0,0,0,8,132,4,54,0,0,0,33,9,112,0,57,0,0,0,5,9,144,2,114,0,0,0,233,0,0,97,61],[0,0,0,0,10,0,0,25,0,0,0,5,11,160,2,16,0,0,0,0,12,184,0,25,0,0,0,0,11,178,3,79],[0,0,0,0,11,11,4,59,0,0,0,0,0,188,4,53,0,0,0,1,10,160,0,57,0,0,0,0,11,154,0,75],[0,0,0,225,0,0,65,61,0,0,0,0,9,0,0,75,0,0,0,235,0,0,97,61,0,0,0,0,9,4,4,51],[0,0,0,0,9,9,0,75,0,0,1,193,0,0,97,61,0,0,0,0,9,8,4,51,0,0,7,167,9,144,1,151],[0,0,0,248,10,112,2,16,0,0,0,0,9,154,1,159,0,0,7,169,9,144,0,65,0,0,0,0,0,152,4,53],[0,0,0,3,7,112,2,16,0,0,0,248,7,112,0,137,0,0,0,0,6,118,1,207,0,0,0,255,7,112,0,140],[0,0,0,0,6,0,32,25,0,0,0,33,7,64,0,57,0,0,1,215,0,0,1,61,0,0,0,2,1,32,0,140],[0,0,1,93,0,0,193,61,0,13,0,0,0,13,0,29,0,12,0,0,0,12,0,29,0,0,7,164,1,0,0,65],[0,0,0,0,0,16,4,57,0,0,7,155,1,0,0,65,0,0,0,0,2,0,4,20,0,0,7,155,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,7,165,1,16,1,199,0,0,128,11,2,0,0,57],[30,104,30,94,0,0,4,15,0,0,0,1,2,32,1,144,0,0,24,107,0,0,97,61,0,0,0,64,3,0,4,61],[0,0,0,0,4,1,4,59,0,0,0,128,1,64,0,140,0,0,2,219,0,0,65,61,0,0,0,128,1,64,2,112],[0,0,7,168,2,64,0,156,0,0,0,0,1,4,160,25,0,0,7,168,2,64,0,156,0,0,0,0,2,0,0,25],[0,0,0,16,2,0,32,57,0,0,0,8,5,32,1,191,0,0,7,159,6,16,0,156,0,0,0,0,5,2,160,25],[0,0,0,64,2,16,2,112,0,0,7,159,6,16,0,156,0,0,0,0,2,1,160,25,0,0,0,4,1,80,1,191],[0,0,7,155,6,32,0,156,0,0,0,0,1,5,160,25,0,0,0,32,6,32,2,112,0,0,7,155,5,32,0,156],[0,0,0,0,6,2,160,25,0,0,0,2,5,16,1,191,0,0,255,255,2,96,0,140,0,0,0,0,5,1,160,25],[0,0,0,16,1,96,2,112,0,0,0,0,1,6,160,25,0,0,0,255,1,16,0,140,0,0,0,1,5,80,32,57],[0,0,0,32,1,0,0,138,0,0,0,65,2,80,0,57,0,0,0,0,1,18,1,111,0,0,0,0,1,19,0,25],[0,0,0,0,2,49,0,75,0,0,0,0,2,0,0,25,0,0,0,1,2,0,64,57,0,0,7,159,6,16,0,156],[0,0,1,89,0,0,33,61,0,0,0,1,2,32,1,144,0,0,1,89,0,0,193,61,0,0,0,64,0,16,4,63],[0,0,0,2,1,80,0,57,0,0,0,0,6,19,4,54,0,0,0,1,1,0,3,103,0,0,0,0,2,0,0,49],[0,0,0,33,7,80,0,57,0,0,0,5,7,112,2,114,0,0,1,69,0,0,97,61,0,0,0,0,8,33,3,79],[0,0,0,0,9,0,0,25,0,0,0,5,10,144,2,16,0,0,0,0,11,166,0,25,0,0,0,0,10,168,3,79],[0,0,0,0,10,10,4,59,0,0,0,0,0,171,4,53,0,0,0,1,9,144,0,57,0,0,0,0,10,121,0,75],[0,0,1,61,0,0,65,61,0,0,0,0,7,0,0,75,0,0,1,71,0,0,97,61,0,0,0,0,7,3,4,51],[0,0,0,0,7,7,0,75,0,0,1,193,0,0,97,61,0,0,0,0,7,6,4,51,0,0,7,167,7,112,1,151],[0,0,0,248,8,80,2,16,0,0,0,0,7,120,1,159,0,0,7,169,7,112,0,65,0,0,0,0,0,118,4,53],[0,0,0,3,5,80,2,16,0,0,0,248,5,80,0,137,0,0,0,0,4,84,1,207,0,0,0,255,5,80,0,140],[0,0,0,0,4,0,32,25,0,0,0,33,5,48,0,57,0,0,2,238,0,0,1,61,0,0,7,166,7,64,0,156],[0,0,1,185,0,0,161,61,0,0,7,195,1,0,0,65,0,0,0,0,0,16,4,53,0,0,0,65,1,0,0,57],[0,0,1,196,0,0,1,61,0,0,0,1,1,32,0,140,0,0,1,199,0,0,193,61,0,13,0,0,0,13,0,29],[0,12,0,0,0,12,0,29,0,0,7,164,1,0,0,65,0,0,0,0,0,16,4,57,0,0,7,155,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,7,155,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,7,165,1,16,1,199,0,0,128,11,2,0,0,57,30,104,30,94,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,24,107,0,0,97,61,0,0,0,64,3,0,4,61,0,0,0,0,4,1,4,59,0,0,0,128,1,64,0,140],[0,0,3,60,0,0,65,61,0,0,0,128,1,64,2,112,0,0,7,168,2,64,0,156,0,0,0,0,1,4,160,25],[0,0,7,168,2,64,0,156,0,0,0,0,2,0,0,25,0,0,0,16,2,0,32,57,0,0,0,8,5,32,1,191],[0,0,7,159,6,16,0,156,0,0,0,0,5,2,160,25,0,0,0,64,2,16,2,112,0,0,7,159,6,16,0,156],[0,0,0,0,2,1,160,25,0,0,0,4,1,80,1,191,0,0,7,155,6,32,0,156,0,0,0,0,1,5,160,25],[0,0,0,32,6,32,2,112,0,0,7,155,5,32,0,156,0,0,0,0,6,2,160,25,0,0,0,2,5,16,1,191],[0,0,255,255,2,96,0,140,0,0,0,0,5,1,160,25,0,0,0,16,1,96,2,112,0,0,0,0,1,6,160,25],[0,0,0,255,1,16,0,140,0,0,0,1,5,80,32,57,0,0,0,32,1,0,0,138,0,0,0,65,2,80,0,57],[0,0,0,0,1,18,1,111,0,0,0,0,1,19,0,25,0,0,0,0,2,49,0,75,0,0,0,0,2,0,0,25],[0,0,0,1,2,0,64,57,0,0,7,159,6,16,0,156,0,0,1,89,0,0,33,61,0,0,0,1,2,32,1,144],[0,0,1,89,0,0,193,61,0,0,0,64,0,16,4,63,0,0,0,2,1,80,0,57,0,0,0,0,6,19,4,54],[0,0,0,1,1,0,3,103,0,0,0,0,2,0,0,49,0,0,0,33,7,80,0,57,0,0,0,5,7,112,2,114],[0,0,1,167,0,0,97,61,0,0,0,0,8,33,3,79,0,0,0,0,9,0,0,25,0,0,0,5,10,144,2,16],[0,0,0,0,11,166,0,25,0,0,0,0,10,168,3,79,0,0,0,0,10,10,4,59,0,0,0,0,0,171,4,53],[0,0,0,1,9,144,0,57,0,0,0,0,10,121,0,75,0,0,1,159,0,0,65,61,0,0,0,0,7,0,0,75],[0,0,1,169,0,0,97,61,0,0,0,0,7,3,4,51,0,0,0,0,7,7,0,75,0,0,1,193,0,0,97,61],[0,0,0,0,7,6,4,51,0,0,7,167,7,112,1,151,0,0,0,248,8,80,2,16,0,0,0,0,7,120,1,159],[0,0,7,169,7,112,0,65,0,0,0,0,0,118,4,53,0,0,0,3,5,80,2,16,0,0,0,248,5,80,0,137],[0,0,0,0,4,84,1,207,0,0,0,255,5,80,0,140,0,0,0,0,4,0,32,25,0,0,0,33,5,48,0,57],[0,0,3,79,0,0,1,61,0,0,0,64,7,64,0,57,0,0,0,64,0,112,4,63,0,0,0,1,7,0,0,58],[0,0,0,0,7,116,4,54,0,0,0,0,8,32,3,80,0,0,0,0,8,8,4,59,0,0,0,0,0,135,4,53],[0,0,1,209,0,0,193,61,0,0,7,195,1,0,0,65,0,0,0,0,0,16,4,53,0,0,0,50,1,0,0,57],[0,0,0,4,0,16,4,63,0,0,7,196,1,0,0,65,0,0,30,106,0,1,4,48,0,0,7,161,1,0,0,65],[0,0,0,128,0,16,4,63,0,0,0,32,1,0,0,57,0,0,0,132,0,16,4,63,0,0,0,23,1,0,0,57],[0,0,0,164,0,16,4,63,0,0,7,162,1,0,0,65,0,0,0,196,0,16,4,63,0,0,7,163,1,0,0,65],[0,0,30,106,0,1,4,48,0,0,0,248,9,96,2,16,0,0,7,160,10,0,0,65,0,0,0,0,6,6,0,75],[0,0,0,0,10,9,192,25,0,0,7,167,6,128,1,151,0,0,0,0,6,166,1,159,0,0,0,0,0,103,4,53],[0,0,0,64,5,80,0,138,0,0,0,0,6,81,3,79,0,0,0,64,5,0,4,61,0,0,0,0,6,6,4,59],[0,0,0,128,7,96,0,140,0,0,2,35,0,0,65,61,0,0,0,128,7,96,2,112,0,0,7,168,8,96,0,156],[0,0,0,0,7,6,160,25,0,0,7,168,8,96,0,156,0,0,0,0,8,0,0,25,0,0,0,16,8,0,32,57],[0,0,0,8,9,128,1,191,0,0,7,159,10,112,0,156,0,0,0,0,9,8,160,25,0,0,0,64,8,112,2,112],[0,0,7,159,10,112,0,156,0,0,0,0,8,7,160,25,0,0,0,4,10,144,1,191,0,0,7,155,7,128,0,156],[0,0,0,0,10,9,160,25,0,0,0,32,9,128,2,112,0,0,7,155,7,128,0,156,0,0,0,0,9,8,160,25],[0,0,0,2,7,160,1,191,0,0,255,255,8,144,0,140,0,0,0,0,7,10,160,25,0,0,0,16,8,144,2,112],[0,0,0,0,8,9,160,25,0,0,0,255,8,128,0,140,0,0,0,1,7,112,32,57,0,0,0,32,8,0,0,138],[0,0,0,65,9,112,0,57,0,0,0,0,8,137,1,111,0,0,0,0,8,133,0,25,0,0,0,0,9,88,0,75],[0,0,0,0,9,0,0,25,0,0,0,1,9,0,64,57,0,0,7,159,10,128,0,156,0,0,1,89,0,0,33,61],[0,0,0,1,9,144,1,144,0,0,1,89,0,0,193,61,0,0,0,64,0,128,4,63,0,0,0,2,8,112,0,57],[0,0,0,0,8,133,4,54,0,0,0,33,9,112,0,57,0,0,0,5,9,144,2,114,0,0,2,17,0,0,97,61],[0,0,0,0,10,0,0,25,0,0,0,5,11,160,2,16,0,0,0,0,12,184,0,25,0,0,0,0,11,178,3,79],[0,0,0,0,11,11,4,59,0,0,0,0,0,188,4,53,0,0,0,1,10,160,0,57,0,0,0,0,11,154,0,75],[0,0,2,9,0,0,65,61,0,0,0,0,9,0,0,75,0,0,2,19,0,0,97,61,0,0,0,0,9,5,4,51],[0,0,0,0,9,9,0,75,0,0,1,193,0,0,97,61,0,0,0,0,9,8,4,51,0,0,7,167,9,144,1,151],[0,0,0,248,10,112,2,16,0,0,0,0,9,154,1,159,0,0,7,169,9,144,0,65,0,0,0,0,0,152,4,53],[0,0,0,3,7,112,2,16,0,0,0,248,7,112,0,137,0,0,0,0,6,118,1,207,0,0,0,255,7,112,0,140],[0,0,0,0,6,0,32,25,0,0,0,33,7,80,0,57,0,0,2,51,0,0,1,61,0,0,7,166,7,80,0,156],[0,0,1,89,0,0,33,61,0,0,0,64,7,80,0,57,0,0,0,64,0,112,4,63,0,0,0,1,7,0,0,58],[0,0,0,0,7,117,4,54,0,0,0,0,8,32,3,80,0,0,0,0,8,8,4,59,0,0,0,0,0,135,4,53],[0,0,1,193,0,0,97,61,0,0,0,248,9,96,2,16,0,0,7,160,10,0,0,65,0,0,0,0,6,6,0,75],[0,0,0,0,10,9,192,25,0,0,7,167,6,128,1,151,0,0,0,0,6,166,1,159,0,0,0,0,0,103,4,53],[0,0,0,64,11,0,4,61,0,0,0,32,6,176,0,57,0,0,0,0,7,4,4,51,0,0,0,0,8,7,0,75],[0,0,2,65,0,0,97,61,0,0,0,0,8,0,0,25,0,0,0,0,9,104,0,25,0,0,0,32,8,128,0,57],[0,0,0,0,10,72,0,25,0,0,0,0,10,10,4,51,0,0,0,0,0,169,4,53,0,0,0,0,9,120,0,75],[0,0,2,58,0,0,65,61,0,0,0,0,4,103,0,25,0,0,0,0,0,4,4,53,0,0,0,0,6,5,4,51],[0,0,0,0,7,6,0,75,0,0,2,78,0,0,97,61,0,0,0,0,7,0,0,25,0,0,0,0,8,71,0,25],[0,0,0,32,7,112,0,57,0,0,0,0,9,87,0,25,0,0,0,0,9,9,4,51,0,0,0,0,0,152,4,53],[0,0,0,0,8,103,0,75,0,0,2,71,0,0,65,61,0,0,0,0,4,70,0,25,0,0,0,0,0,4,4,53],[0,0,0,0,4,180,0,73,0,0,0,32,5,64,0,138,0,0,0,0,0,91,4,53,0,0,0,31,4,64,0,57],[0,10,0,32,0,0,0,146,0,0,0,10,4,64,1,127,0,9,0,0,0,11,0,29,0,0,0,0,5,180,0,25],[0,0,0,0,4,69,0,75,0,0,0,0,4,0,0,25,0,0,0,1,4,0,64,57,0,11,0,0,0,5,0,29],[0,0,7,159,5,80,0,156,0,0,1,89,0,0,33,61,0,0,0,1,4,64,1,144,0,0,1,89,0,0,193,61],[0,0,0,11,4,0,0,41,0,0,0,64,0,64,4,63,0,0,7,166,4,64,0,156,0,0,1,89,0,0,33,61],[0,0,0,13,7,0,0,41,0,0,0,68,4,112,0,57,0,0,0,0,4,65,3,79,0,0,0,0,4,4,4,59],[0,0,0,11,8,0,0,41,0,0,0,64,5,128,0,57,0,0,0,64,0,80,4,63,0,0,0,32,5,128,0,57],[0,0,7,170,6,0,0,65,0,0,0,0,0,101,4,53,0,0,0,21,5,0,0,57,0,0,0,0,0,88,4,53],[0,0,0,96,4,64,2,16,0,0,0,33,5,128,0,57,0,0,0,0,0,69,4,53,0,0,1,36,4,112,0,57],[0,0,0,0,5,65,3,79,0,0,0,64,6,0,4,61,0,8,0,0,0,6,0,29,0,0,0,0,5,5,4,59],[0,0,0,128,6,80,0,140,0,0,5,81,0,0,65,61,0,0,0,128,6,80,2,112,0,0,7,168,7,80,0,156],[0,0,0,0,6,5,160,25,0,0,7,168,7,80,0,156,0,0,0,0,7,0,0,25,0,0,0,16,7,0,32,57],[0,0,0,8,8,112,1,191,0,0,7,159,9,96,0,156,0,0,0,0,8,7,160,25,0,0,0,64,7,96,2,112],[0,0,7,159,9,96,0,156,0,0,0,0,7,6,160,25,0,0,0,4,9,128,1,191,0,0,7,155,6,112,0,156],[0,0,0,0,9,8,160,25,0,0,0,32,8,112,2,112,0,0,7,155,6,112,0,156,0,0,0,0,8,7,160,25],[0,0,0,2,6,144,1,191,0,0,255,255,7,128,0,140,0,0,0,0,6,9,160,25,0,0,0,16,7,128,2,112],[0,0,0,0,7,8,160,25,0,0,0,255,7,112,0,140,0,0,0,1,6,96,32,57,0,0,0,65,7,96,0,57],[0,0,0,10,7,112,1,127,0,0,0,8,7,112,0,41,0,0,0,8,8,112,0,108,0,0,0,0,8,0,0,25],[0,0,0,1,8,0,64,57,0,0,7,159,9,112,0,156,0,0,1,89,0,0,33,61,0,0,0,1,8,128,1,144],[0,0,1,89,0,0,193,61,0,0,0,64,0,112,4,63,0,0,0,2,7,96,0,57,0,0,0,8,8,0,0,41],[0,0,0,0,7,120,4,54,0,0,0,33,8,96,0,57,0,0,0,5,8,128,2,114,0,0,2,173,0,0,97,61],[0,0,0,0,9,0,0,25,0,0,0,5,10,144,2,16,0,0,0,0,11,167,0,25,0,0,0,0,10,162,3,79],[0,0,0,0,10,10,4,59,0,0,0,0,0,171,4,53,0,0,0,1,9,144,0,57,0,0,0,0,10,137,0,75],[0,0,2,165,0,0,65,61,0,0,0,0,8,0,0,75,0,0,2,175,0,0,97,61,0,0,0,8,8,0,0,41],[0,0,0,0,8,8,4,51,0,0,0,0,8,8,0,75,0,0,1,193,0,0,97,61,0,0,0,0,8,7,4,51],[0,0,7,167,8,128,1,151,0,0,0,248,9,96,2,16,0,0,0,0,8,137,1,159,0,0,7,169,8,128,0,65],[0,0,0,0,0,135,4,53,0,0,0,3,6,96,2,16,0,0,0,248,6,96,0,137,0,0,0,0,5,101,1,207],[0,0,0,255,6,96,0,140,0,0,0,0,5,0,32,25,0,0,0,8,6,0,0,41,0,0,0,33,6,96,0,57],[0,0,5,99,0,0,1,61,0,0,0,0,7,38,0,26,0,0,0,0,6,0,4,20,0,0,24,103,0,0,65,61],[0,0,0,0,3,115,0,75,0,0,24,103,0,0,65,61,0,13,0,0,0,13,0,29,0,12,0,0,0,12,0,29],[0,0,7,176,3,96,0,156,0,0,3,251,0,0,65,61,0,0,0,68,1,64,0,57,0,0,7,191,2,0,0,65],[0,0,0,0,0,33,4,53,0,0,0,36,1,64,0,57,0,0,0,8,2,0,0,57,0,0,0,0,0,33,4,53],[0,0,7,161,1,0,0,65,0,0,0,0,0,20,4,53,0,0,0,4,1,64,0,57,0,0,0,32,2,0,0,57],[0,0,0,0,0,33,4,53,0,0,7,155,1,0,0,65,0,0,7,155,2,64,0,156,0,0,0,0,4,1,128,25],[0,0,0,64,1,64,2,16,0,0,7,182,1,16,1,199,0,0,30,106,0,1,4,48,0,0,7,166,1,48,0,156],[0,0,1,89,0,0,33,61,0,0,0,64,1,48,0,57,0,0,0,64,0,16,4,63,0,0,0,1,1,0,0,58],[0,0,0,0,5,19,4,54,0,0,0,0,2,0,0,49,0,0,0,1,1,0,3,103,0,0,0,0,6,33,3,79],[0,0,0,0,6,96,3,80,0,0,0,0,6,6,4,59,0,0,0,0,0,101,4,53,0,0,1,193,0,0,97,61],[0,0,0,248,7,64,2,16,0,0,7,160,8,0,0,65,0,0,0,0,4,4,0,75,0,0,0,0,8,7,192,25],[0,0,7,167,4,96,1,151,0,0,0,0,4,132,1,159,0,0,0,0,0,69,4,53,0,0,0,64,4,0,4,61],[0,0,0,13,5,0,0,41,0,0,1,4,6,80,0,57,0,0,0,0,5,97,3,79,0,0,0,0,5,5,4,59],[0,0,0,128,7,80,0,140,0,0,3,157,0,0,65,61,0,0,0,128,7,80,2,112,0,0,7,168,8,80,0,156],[0,0,0,0,7,5,160,25,0,0,7,168,8,80,0,156,0,0,0,0,8,0,0,25,0,0,0,16,8,0,32,57],[0,0,0,8,9,128,1,191,0,0,7,159,10,112,0,156,0,0,0,0,9,8,160,25,0,0,0,64,8,112,2,112],[0,0,7,159,10,112,0,156,0,0,0,0,8,7,160,25,0,0,0,4,10,144,1,191,0,0,7,155,7,128,0,156],[0,0,0,0,10,9,160,25,0,0,0,32,9,128,2,112,0,0,7,155,7,128,0,156,0,0,0,0,9,8,160,25],[0,0,0,2,7,160,1,191,0,0,255,255,8,144,0,140,0,0,0,0,7,10,160,25,0,0,0,16,8,144,2,112],[0,0,0,0,8,9,160,25,0,0,0,255,8,128,0,140,0,0,0,1,7,112,32,57,0,0,0,32,8,0,0,138],[0,0,0,65,9,112,0,57,0,0,0,0,8,137,1,111,0,0,0,0,8,132,0,25,0,0,0,0,9,72,0,75],[0,0,0,0,9,0,0,25,0,0,0,1,9,0,64,57,0,0,7,159,10,128,0,156,0,0,1,89,0,0,33,61],[0,0,0,1,9,144,1,144,0,0,1,89,0,0,193,61,0,0,0,64,0,128,4,63,0,0,0,2,8,112,0,57],[0,0,0,0,8,132,4,54,0,0,0,33,9,112,0,57,0,0,0,5,9,144,2,114,0,0,3,42,0,0,97,61],[0,0,0,0,10,33,3,79,0,0,0,0,11,0,0,25,0,0,0,5,12,176,2,16,0,0,0,0,13,200,0,25],[0,0,0,0,12,202,3,79,0,0,0,0,12,12,4,59,0,0,0,0,0,205,4,53,0,0,0,1,11,176,0,57],[0,0,0,0,12,155,0,75,0,0,3,34,0,0,65,61,0,0,0,0,9,0,0,75,0,0,3,44,0,0,97,61],[0,0,0,0,9,4,4,51,0,0,0,0,9,9,0,75,0,0,1,193,0,0,97,61,0,0,0,0,9,8,4,51],[0,0,7,167,9,144,1,151,0,0,0,248,10,112,2,16,0,0,0,0,9,154,1,159,0,0,7,169,9,144,0,65],[0,0,0,0,0,152,4,53,0,0,0,3,7,112,2,16,0,0,0,248,7,112,0,137,0,0,0,0,5,117,1,207],[0,0,0,255,7,112,0,140,0,0,0,0,5,0,32,25,0,0,0,33,7,64,0,57,0,0,3,174,0,0,1,61],[0,0,7,166,1,48,0,156,0,0,1,89,0,0,33,61,0,0,0,64,1,48,0,57,0,0,0,64,0,16,4,63],[0,0,0,1,1,0,0,58,0,0,0,0,5,19,4,54,0,0,0,0,2,0,0,49,0,0,0,1,1,0,3,103],[0,0,0,0,6,33,3,79,0,0,0,0,6,96,3,80,0,0,0,0,6,6,4,59,0,0,0,0,0,101,4,53],[0,0,1,193,0,0,97,61,0,0,0,248,7,64,2,16,0,0,7,160,8,0,0,65,0,0,0,0,4,4,0,75],[0,0,0,0,8,7,192,25,0,0,7,167,4,96,1,151,0,0,0,0,4,132,1,159,0,0,0,0,0,69,4,53],[0,0,0,64,4,0,4,61,0,0,0,13,5,0,0,41,0,0,1,4,6,80,0,57,0,0,0,0,5,97,3,79],[0,0,0,0,5,5,4,59,0,0,0,128,7,80,0,140,0,0,4,216,0,0,65,61,0,0,0,128,7,80,2,112],[0,0,7,168,8,80,0,156,0,0,0,0,7,5,160,25,0,0,7,168,8,80,0,156,0,0,0,0,8,0,0,25],[0,0,0,16,8,0,32,57,0,0,0,8,9,128,1,191,0,0,7,159,10,112,0,156,0,0,0,0,9,8,160,25],[0,0,0,64,8,112,2,112,0,0,7,159,10,112,0,156,0,0,0,0,8,7,160,25,0,0,0,4,10,144,1,191],[0,0,7,155,7,128,0,156,0,0,0,0,10,9,160,25,0,0,0,32,9,128,2,112,0,0,7,155,7,128,0,156],[0,0,0,0,9,8,160,25,0,0,0,2,7,160,1,191,0,0,255,255,8,144,0,140,0,0,0,0,7,10,160,25],[0,0,0,16,8,144,2,112,0,0,0,0,8,9,160,25,0,0,0,255,8,128,0,140,0,0,0,1,7,112,32,57],[0,0,0,32,8,0,0,138,0,0,0,65,9,112,0,57,0,0,0,0,8,137,1,111,0,0,0,0,8,132,0,25],[0,0,0,0,9,72,0,75,0,0,0,0,9,0,0,25,0,0,0,1,9,0,64,57,0,0,7,159,10,128,0,156],[0,0,1,89,0,0,33,61,0,0,0,1,9,144,1,144,0,0,1,89,0,0,193,61,0,0,0,64,0,128,4,63],[0,0,0,2,8,112,0,57,0,0,0,0,8,132,4,54,0,0,0,33,9,112,0,57,0,0,0,5,9,144,2,114],[0,0,3,139,0,0,97,61,0,0,0,0,10,33,3,79,0,0,0,0,11,0,0,25,0,0,0,5,12,176,2,16],[0,0,0,0,13,200,0,25,0,0,0,0,12,202,3,79,0,0,0,0,12,12,4,59,0,0,0,0,0,205,4,53],[0,0,0,1,11,176,0,57,0,0,0,0,12,155,0,75,0,0,3,131,0,0,65,61,0,0,0,0,9,0,0,75],[0,0,3,141,0,0,97,61,0,0,0,0,9,4,4,51,0,0,0,0,9,9,0,75,0,0,1,193,0,0,97,61],[0,0,0,0,9,8,4,51,0,0,7,167,9,144,1,151,0,0,0,248,10,112,2,16,0,0,0,0,9,154,1,159],[0,0,7,169,9,144,0,65,0,0,0,0,0,152,4,53,0,0,0,3,7,112,2,16,0,0,0,248,7,112,0,137],[0,0,0,0,5,117,1,207,0,0,0,255,7,112,0,140,0,0,0,0,5,0,32,25,0,0,0,33,7,64,0,57],[0,0,4,233,0,0,1,61,0,0,7,166,7,64,0,156,0,0,1,89,0,0,33,61,0,0,0,64,7,64,0,57],[0,0,0,64,0,112,4,63,0,0,0,0,8,33,3,79,0,0,0,1,7,0,0,58,0,0,0,0,7,116,4,54],[0,0,0,0,8,128,3,80,0,0,0,0,8,8,4,59,0,0,0,0,0,135,4,53,0,0,1,193,0,0,97,61],[0,0,0,248,9,80,2,16,0,0,7,160,10,0,0,65,0,0,0,0,5,5,0,75,0,0,0,0,10,9,192,25],[0,0,7,167,5,128,1,151,0,0,0,0,5,165,1,159,0,0,0,0,0,87,4,53,0,0,0,64,5,0,4,61],[0,0,0,64,7,96,0,138,0,0,0,0,6,113,3,79,0,0,0,0,6,6,4,59,0,0,0,128,8,96,0,140],[0,0,5,170,0,0,65,61,0,0,0,128,8,96,2,112,0,0,7,168,9,96,0,156,0,0,0,0,8,6,160,25],[0,0,7,168,9,96,0,156,0,0,0,0,9,0,0,25,0,0,0,16,9,0,32,57,0,0,0,8,10,144,1,191],[0,0,7,159,11,128,0,156,0,0,0,0,10,9,160,25,0,0,0,64,9,128,2,112,0,0,7,159,11,128,0,156],[0,0,0,0,9,8,160,25,0,0,0,4,11,160,1,191,0,0,7,155,8,144,0,156,0,0,0,0,11,10,160,25],[0,0,0,32,10,144,2,112,0,0,7,155,8,144,0,156,0,0,0,0,10,9,160,25,0,0,0,2,8,176,1,191],[0,0,255,255,9,160,0,140,0,0,0,0,8,11,160,25,0,0,0,16,9,160,2,112,0,0,0,0,9,10,160,25],[0,0,0,255,9,144,0,140,0,0,0,1,8,128,32,57,0,0,0,32,9,0,0,138,0,0,0,65,10,128,0,57],[0,0,0,0,9,154,1,111,0,0,0,0,9,149,0,25,0,0,0,0,10,89,0,75,0,0,0,0,10,0,0,25],[0,0,0,1,10,0,64,57,0,0,7,159,11,144,0,156,0,0,1,89,0,0,33,61,0,0,0,1,10,160,1,144],[0,0,1,89,0,0,193,61,0,0,0,64,0,144,4,63,0,0,0,2,9,128,0,57,0,0,0,0,9,149,4,54],[0,0,0,33,10,128,0,57,0,0,0,5,10,160,2,114,0,0,3,233,0,0,97,61,0,0,0,0,11,33,3,79],[0,0,0,0,12,0,0,25,0,0,0,5,13,192,2,16,0,0,0,0,14,217,0,25,0,0,0,0,13,219,3,79],[0,0,0,0,13,13,4,59,0,0,0,0,0,222,4,53,0,0,0,1,12,192,0,57,0,0,0,0,13,172,0,75],[0,0,3,225,0,0,65,61,0,0,0,0,10,0,0,75,0,0,3,235,0,0,97,61,0,0,0,0,10,5,4,51],[0,0,0,0,10,10,0,75,0,0,1,193,0,0,97,61,0,0,0,0,10,9,4,51,0,0,7,167,10,160,1,151],[0,0,0,248,11,128,2,16,0,0,0,0,10,171,1,159,0,0,7,169,10,160,0,65,0,0,0,0,0,169,4,53],[0,0,0,3,8,128,2,16,0,0,0,248,8,128,0,137,0,0,0,0,6,134,1,207,0,0,0,255,8,128,0,140],[0,0,0,0,6,0,32,25,0,0,0,33,8,80,0,57,0,0,5,187,0,0,1,61,0,0,7,155,2,32,1,151],[0,0,0,0,1,33,3,79,0,0,0,0,2,117,0,73,0,0,7,155,2,32,1,151,0,0,0,0,1,33,3,223],[0,0,0,192,2,96,2,16,0,0,7,177,2,32,1,151,0,0,7,178,2,32,1,199,0,0,0,0,1,33,3,175],[0,0,128,16,2,0,0,57,30,104,30,99,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,0,7,155,5,48,1,151,0,0,0,1,2,32,1,144,0,0,5,54,0,0,97,61,0,0,0,63,2,80,0,57],[0,0,7,179,2,32,1,151,0,0,0,64,6,0,4,61,0,0,0,0,2,38,0,25,0,0,0,0,3,98,0,75],[0,0,0,0,3,0,0,25,0,0,0,1,3,0,64,57,0,0,7,159,4,32,0,156,0,0,1,89,0,0,33,61],[0,0,0,1,3,48,1,144,0,0,1,89,0,0,193,61,0,0,0,64,0,32,4,63,0,0,0,0,4,86,4,54],[0,0,0,1,2,0,3,103,0,0,0,0,3,0,0,49,0,0,0,31,7,80,0,57,0,0,0,5,7,112,2,114],[0,0,4,39,0,0,97,61,0,0,0,0,8,50,3,79,0,0,0,0,9,0,0,25,0,0,0,5,10,144,2,16],[0,0,0,0,11,164,0,25,0,0,0,0,10,168,3,79,0,0,0,0,10,10,4,59,0,0,0,0,0,171,4,53],[0,0,0,1,9,144,0,57,0,0,0,0,10,121,0,75,0,0,4,31,0,0,65,61,0,0,0,0,7,0,0,75],[0,0,4,41,0,0,97,61,0,0,0,31,7,80,1,143,0,0,0,5,5,80,2,114,0,0,4,53,0,0,97,61],[0,0,0,0,8,0,0,25,0,0,0,5,9,128,2,16,0,0,0,0,10,148,0,25,0,0,0,0,9,145,3,79],[0,0,0,0,9,9,4,59,0,0,0,0,0,154,4,53,0,0,0,1,8,128,0,57,0,0,0,0,9,88,0,75],[0,0,4,45,0,0,65,61,0,0,0,0,8,7,0,75,0,0,4,68,0,0,97,61,0,0,0,5,5,80,2,16],[0,0,0,0,1,81,3,79,0,0,0,0,5,84,0,25,0,0,0,3,7,112,2,16,0,0,0,0,8,5,4,51],[0,0,0,0,8,120,1,207,0,0,0,0,8,120,2,47,0,0,0,0,1,1,4,59,0,0,1,0,7,112,0,137],[0,0,0,0,1,113,2,47,0,0,0,0,1,113,1,207,0,0,0,0,1,129,1,159,0,0,0,0,0,21,4,53],[0,0,0,0,1,6,4,51,0,0,0,32,1,16,0,140,0,0,12,89,0,0,193,61,0,0,0,13,6,0,0,41],[0,0,0,0,1,99,0,73,0,0,0,35,5,16,0,138,0,11,2,4,0,96,0,61,0,0,0,11,1,32,3,96],[0,0,0,0,1,1,4,59,0,0,7,160,6,0,0,65,0,0,0,0,7,81,0,75,0,0,0,0,7,0,0,25],[0,0,0,0,7,6,128,25,0,0,7,160,5,80,1,151,0,0,7,160,8,16,1,151,0,0,0,0,9,88,0,75],[0,0,0,0,6,0,128,25,0,0,0,0,5,88,1,63,0,0,7,160,5,80,0,156,0,0,0,0,6,7,192,25],[0,0,0,0,5,6,0,75,0,0,0,12,5,0,0,41,0,0,0,159,0,0,193,61,0,0,0,0,4,4,4,51],[0,10,0,0,0,4,0,29,0,0,0,0,1,81,0,25,0,0,0,0,4,18,3,79,0,0,0,0,5,4,4,59],[0,0,7,159,4,80,0,156,0,0,0,159,0,0,33,61,0,0,0,5,4,80,2,16,0,0,0,0,3,67,0,73],[0,0,0,32,6,16,0,57,0,0,7,160,1,0,0,65,0,0,0,0,7,54,0,75,0,0,0,0,7,0,0,25],[0,0,0,0,7,1,32,25,0,0,7,160,3,48,1,151,0,0,7,160,8,96,1,151,0,0,0,0,9,56,0,75],[0,0,0,0,1,0,128,25,0,0,0,0,3,56,1,63,0,0,7,160,3,48,0,156,0,0,0,0,1,7,192,25],[0,0,0,0,1,1,0,75,0,0,0,159,0,0,193,61,0,0,0,64,1,0,4,61,0,0,0,32,3,16,0,57],[0,0,7,180,5,80,1,152,0,0,4,128,0,0,97,61,0,0,0,0,2,98,3,79,0,0,0,0,6,0,0,25],[0,0,0,5,7,96,2,16,0,0,0,0,8,115,0,25,0,0,0,0,7,114,3,79,0,0,0,0,7,7,4,59],[0,0,0,0,0,120,4,53,0,0,0,1,6,96,0,57,0,0,0,0,7,86,0,75,0,0,4,120,0,0,65,61],[0,0,0,0,2,0,0,75,0,0,4,130,0,0,97,61,0,0,0,0,0,65,4,53,0,0,0,63,2,64,0,57],[0,0,0,32,4,0,0,138,0,0,0,0,2,66,1,111,0,0,0,0,2,33,0,25,0,0,0,0,4,18,0,75],[0,0,0,0,4,0,0,25,0,0,0,1,4,0,64,57,0,0,7,159,5,32,0,156,0,0,1,89,0,0,33,61],[0,0,0,1,4,64,1,144,0,0,1,89,0,0,193,61,0,0,0,64,0,32,4,63,0,0,7,155,2,0,0,65],[0,0,7,155,4,48,0,156,0,0,0,0,3,2,128,25,0,0,0,64,3,48,2,16,0,0,0,0,1,1,4,51],[0,0,7,155,4,16,0,156,0,0,0,0,1,2,128,25,0,0,0,96,1,16,2,16,0,0,0,0,1,49,1,159],[0,0,0,0,3,0,4,20,0,0,7,155,4,48,0,156,0,0,0,0,3,2,128,25,0,0,0,192,2,48,2,16],[0,0,0,0,1,18,1,159,0,0,7,175,1,16,1,199,0,0,128,16,2,0,0,57,30,104,30,94,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,0,12,10,0,0,41,0,0,0,13,3,0,0,41,0,0,0,159,0,0,97,61],[0,0,0,0,2,0,0,49,0,0,0,0,3,50,0,73,0,0,0,35,5,48,0,138,0,0,0,11,3,0,0,41],[0,0,0,32,4,48,0,57,0,0,0,1,3,0,3,103,0,0,0,0,4,67,3,79,0,0,0,0,4,4,4,59],[0,0,7,160,6,0,0,65,0,0,0,0,7,84,0,75,0,0,0,0,7,0,0,25,0,0,0,0,7,6,128,25],[0,0,7,160,5,80,1,151,0,0,7,160,8,64,1,151,0,0,0,0,9,88,0,75,0,0,0,0,6,0,128,25],[0,0,0,0,5,88,1,63,0,0,7,160,5,80,0,156,0,0,0,0,6,7,192,25,0,0,0,0,1,1,4,59],[0,11,0,0,0,1,0,29,0,0,0,0,1,6,0,75,0,0,0,159,0,0,193,61,0,0,0,0,1,164,0,25],[0,0,0,0,4,19,3,79,0,0,0,0,4,4,4,59,0,0,7,159,5,64,0,156,0,0,0,159,0,0,33,61],[0,0,0,0,5,66,0,73,0,0,0,32,1,16,0,57,0,0,7,160,6,0,0,65,0,0,0,0,7,81,0,75],[0,0,0,0,7,0,0,25,0,0,0,0,7,6,32,25,0,0,7,160,5,80,1,151,0,0,7,160,8,16,1,151],[0,0,0,0,9,88,0,75,0,0,0,0,6,0,128,25,0,0,0,0,5,88,1,63,0,0,7,160,5,80,0,156],[0,0,0,0,6,7,192,25,0,0,0,0,5,6,0,75,0,0,0,159,0,0,193,61,0,0,0,0,5,20,0,26],[0,0,0,0,4,0,4,20,0,0,24,103,0,0,65,61,0,0,0,0,6,82,0,75,0,0,24,103,0,0,65,61],[0,0,7,176,6,64,0,156,0,0,11,97,0,0,65,61,0,0,0,64,4,0,4,61,0,0,2,202,0,0,1,61],[0,0,7,166,7,64,0,156,0,0,1,89,0,0,33,61,0,0,0,64,7,64,0,57,0,0,0,64,0,112,4,63],[0,0,0,0,8,33,3,79,0,0,0,1,7,0,0,58,0,0,0,0,7,116,4,54,0,0,0,0,8,128,3,80],[0,0,0,0,8,8,4,59,0,0,0,0,0,135,4,53,0,0,1,193,0,0,97,61,0,0,0,248,9,80,2,16],[0,0,7,160,10,0,0,65,0,0,0,0,5,5,0,75,0,0,0,0,10,9,192,25,0,0,7,167,5,128,1,151],[0,0,0,0,5,165,1,159,0,0,0,0,0,87,4,53,0,0,0,64,5,0,4,61,0,0,0,96,6,96,0,138],[0,0,0,0,7,97,3,79,0,0,0,0,7,7,4,59,0,0,0,128,8,112,0,140,0,0,6,8,0,0,65,61],[0,0,0,128,8,112,2,112,0,0,7,168,9,112,0,156,0,0,0,0,8,7,160,25,0,0,7,168,9,112,0,156],[0,0,0,0,9,0,0,25,0,0,0,16,9,0,32,57,0,0,0,8,10,144,1,191,0,0,7,159,11,128,0,156],[0,0,0,0,10,9,160,25,0,0,0,64,9,128,2,112,0,0,7,159,11,128,0,156,0,0,0,0,9,8,160,25],[0,0,0,4,11,160,1,191,0,0,7,155,8,144,0,156,0,0,0,0,11,10,160,25,0,0,0,32,10,144,2,112],[0,0,7,155,8,144,0,156,0,0,0,0,10,9,160,25,0,0,0,2,8,176,1,191,0,0,255,255,9,160,0,140],[0,0,0,0,8,11,160,25,0,0,0,16,9,160,2,112,0,0,0,0,9,10,160,25,0,0,0,255,9,144,0,140],[0,0,0,1,8,128,32,57,0,0,0,32,9,0,0,138,0,0,0,65,10,128,0,57,0,0,0,0,9,154,1,111],[0,0,0,0,9,149,0,25,0,0,0,0,10,89,0,75,0,0,0,0,10,0,0,25,0,0,0,1,10,0,64,57],[0,0,7,159,11,144,0,156,0,0,1,89,0,0,33,61,0,0,0,1,10,160,1,144,0,0,1,89,0,0,193,61],[0,0,0,64,0,144,4,63,0,0,0,2,9,128,0,57,0,0,0,0,9,149,4,54,0,0,0,33,10,128,0,57],[0,0,0,5,10,160,2,114,0,0,5,36,0,0,97,61,0,0,0,0,11,33,3,79,0,0,0,0,12,0,0,25],[0,0,0,5,13,192,2,16,0,0,0,0,14,217,0,25,0,0,0,0,13,219,3,79,0,0,0,0,13,13,4,59],[0,0,0,0,0,222,4,53,0,0,0,1,12,192,0,57,0,0,0,0,13,172,0,75,0,0,5,28,0,0,65,61],[0,0,0,0,10,0,0,75,0,0,5,38,0,0,97,61,0,0,0,0,10,5,4,51,0,0,0,0,10,10,0,75],[0,0,1,193,0,0,97,61,0,0,0,0,10,9,4,51,0,0,7,167,10,160,1,151,0,0,0,248,11,128,2,16],[0,0,0,0,10,171,1,159,0,0,7,169,10,160,0,65,0,0,0,0,0,169,4,53,0,0,0,3,8,128,2,16],[0,0,0,248,8,128,0,137,0,0,0,0,7,135,1,207,0,0,0,255,8,128,0,140,0,0,0,0,7,0,32,25],[0,0,0,33,8,80,0,57,0,0,6,25,0,0,1,61,0,0,0,31,3,80,1,143,0,0,0,5,2,80,2,114],[0,0,5,65,0,0,97,61,0,0,0,0,4,0,0,25,0,0,0,5,6,64,2,16,0,0,0,0,7,97,3,79],[0,0,0,0,7,7,4,59,0,0,0,0,0,118,4,53,0,0,0,1,4,64,0,57,0,0,0,0,6,36,0,75],[0,0,5,58,0,0,65,61,0,0,0,0,4,3,0,75,0,0,5,79,0,0,97,61,0,0,0,3,3,48,2,16],[0,0,0,5,2,32,2,16,0,0,0,0,4,2,4,51,0,0,0,0,4,52,1,207,0,0,0,0,4,52,2,47],[0,0,0,0,1,33,3,79,0,0,0,0,1,1,4,59,0,0,1,0,3,48,0,137,0,0,0,0,1,49,2,47],[0,0,0,0,1,49,1,207,0,0,0,0,1,65,1,159,0,0,0,0,0,18,4,53,0,0,0,96,1,80,2,16],[0,0,30,106,0,1,4,48,0,0,0,8,6,0,0,41,0,0,7,166,6,96,0,156,0,0,1,89,0,0,33,61],[0,0,0,8,7,0,0,41,0,0,0,64,6,112,0,57,0,0,0,64,0,96,4,63,0,0,0,1,6,0,0,58],[0,0,0,0,6,103,4,54,0,0,0,0,7,32,3,80,0,0,0,0,7,7,4,59,0,0,0,0,0,118,4,53],[0,0,1,193,0,0,97,61,0,0,0,248,8,80,2,16,0,0,7,160,9,0,0,65,0,0,0,0,5,5,0,75],[0,0,0,0,9,8,192,25,0,0,7,167,5,112,1,151,0,0,0,0,5,149,1,159,0,0,0,0,0,86,4,53],[0,0,0,12,11,0,0,41,0,0,0,0,5,179,0,73,0,0,0,160,6,64,0,57,0,0,0,0,4,97,3,79],[0,0,0,0,4,4,4,59,0,0,0,31,5,80,0,138,0,0,7,160,7,80,1,151,0,0,7,160,8,64,1,151],[0,0,7,160,9,0,0,65,0,0,0,0,10,120,0,75,0,0,0,0,10,0,0,25,0,0,0,0,10,9,64,25],[0,0,0,0,7,120,1,63,0,0,0,0,8,84,0,75,0,0,0,0,9,0,64,25,0,0,7,160,7,112,0,156],[0,0,0,0,10,9,192,25,0,0,0,0,7,10,0,75,0,0,0,159,0,0,193,61,0,0,0,0,8,180,0,25],[0,0,0,0,7,129,3,79,0,0,0,0,7,7,4,59,0,0,7,159,9,112,0,156,0,0,0,159,0,0,33,61],[0,0,0,0,9,115,0,73,0,0,0,32,8,128,0,57,0,0,7,160,10,0,0,65,0,0,0,0,11,152,0,75],[0,0,0,0,11,0,0,25,0,0,0,0,11,10,32,25,0,0,7,160,9,144,1,151,0,0,7,160,12,128,1,151],[0,0,0,0,13,156,0,75,0,0,0,0,10,0,128,25,0,0,0,0,9,156,1,63,0,0,7,160,9,144,0,156],[0,0,0,0,10,11,192,25,0,0,0,0,9,10,0,75,0,0,0,159,0,0,193,61,0,0,0,1,9,112,0,140],[0,0,7,171,0,0,193,61,0,0,0,0,2,129,3,79,0,0,0,0,2,2,4,59,0,0,0,1,7,0,0,138],[0,0,7,160,8,0,0,65,0,0,0,0,7,114,0,75,0,0,0,0,7,0,0,25,0,0,0,0,7,8,32,25],[0,0,7,160,2,32,1,151,0,0,7,160,9,32,0,156,0,0,0,0,8,0,128,25,0,0,7,160,2,32,1,103],[0,0,7,160,2,32,0,156,0,0,0,0,8,7,192,25,0,7,0,96,0,0,0,61,0,0,0,0,2,8,0,75],[0,0,7,231,0,0,193,61,0,0,0,64,2,0,4,61,0,7,0,0,0,2,0,29,0,0,7,166,2,32,0,156],[0,0,1,89,0,0,33,61,0,0,0,7,8,0,0,41,0,0,0,64,2,128,0,57,0,0,0,64,0,32,4,63],[0,0,0,32,2,128,0,57,0,0,7,169,7,0,0,65,0,0,0,0,0,114,4,53,0,0,0,1,2,0,0,57],[0,0,0,0,0,40,4,53,0,0,7,231,0,0,1,61,0,0,7,166,8,80,0,156,0,0,1,89,0,0,33,61],[0,0,0,64,8,80,0,57,0,0,0,64,0,128,4,63,0,0,0,0,9,33,3,79,0,0,0,1,8,0,0,58],[0,0,0,0,8,133,4,54,0,0,0,0,9,144,3,80,0,0,0,0,9,9,4,59,0,0,0,0,0,152,4,53],[0,0,1,193,0,0,97,61,0,0,0,248,10,96,2,16,0,0,7,160,11,0,0,65,0,0,0,0,6,6,0,75],[0,0,0,0,11,10,192,25,0,0,7,167,6,144,1,151,0,0,0,0,6,182,1,159,0,0,0,0,0,104,4,53],[0,0,0,64,6,0,4,61,0,0,0,32,7,112,0,138,0,0,0,0,8,113,3,79,0,0,0,0,8,8,4,59],[0,0,0,128,9,128,0,140,0,0,6,102,0,0,65,61,0,0,0,128,9,128,2,112,0,0,7,168,10,128,0,156],[0,0,0,0,9,8,160,25,0,0,7,168,10,128,0,156,0,0,0,0,10,0,0,25,0,0,0,16,10,0,32,57],[0,0,0,8,11,160,1,191,0,0,7,159,12,144,0,156,0,0,0,0,11,10,160,25,0,0,0,64,10,144,2,112],[0,0,7,159,12,144,0,156,0,0,0,0,10,9,160,25,0,0,0,4,12,176,1,191,0,0,7,155,9,160,0,156],[0,0,0,0,12,11,160,25,0,0,0,32,11,160,2,112,0,0,7,155,9,160,0,156,0,0,0,0,11,10,160,25],[0,0,0,2,9,192,1,191,0,0,255,255,10,176,0,140,0,0,0,0,9,12,160,25,0,0,0,16,10,176,2,112],[0,0,0,0,10,11,160,25,0,0,0,255,10,160,0,140,0,0,0,1,9,144,32,57,0,0,0,32,10,0,0,138],[0,0,0,65,11,144,0,57,0,0,0,0,10,171,1,111,0,0,0,0,10,166,0,25,0,0,0,0,11,106,0,75],[0,0,0,0,11,0,0,25,0,0,0,1,11,0,64,57,0,0,7,159,12,160,0,156,0,0,1,89,0,0,33,61],[0,0,0,1,11,176,1,144,0,0,1,89,0,0,193,61,0,0,0,64,0,160,4,63,0,0,0,2,10,144,0,57],[0,0,0,0,10,166,4,54,0,0,0,33,11,144,0,57,0,0,0,5,11,176,2,114,0,0,5,246,0,0,97,61],[0,0,0,0,12,33,3,79,0,0,0,0,13,0,0,25,0,0,0,5,14,208,2,16,0,0,0,0,15,234,0,25],[0,0,0,0,14,236,3,79,0,0,0,0,14,14,4,59,0,0,0,0,0,239,4,53,0,0,0,1,13,208,0,57],[0,0,0,0,14,189,0,75,0,0,5,238,0,0,65,61,0,0,0,0,11,0,0,75,0,0,5,248,0,0,97,61],[0,0,0,0,11,6,4,51,0,0,0,0,11,11,0,75,0,0,1,193,0,0,97,61,0,0,0,0,11,10,4,51],[0,0,7,167,11,176,1,151,0,0,0,248,12,144,2,16,0,0,0,0,11,188,1,159,0,0,7,169,11,176,0,65],[0,0,0,0,0,186,4,53,0,0,0,3,9,144,2,16,0,0,0,248,9,144,0,137,0,0,0,0,8,152,1,207],[0,0,0,255,9,144,0,140,0,0,0,0,8,0,32,25,0,0,0,33,9,96,0,57,0,0,6,119,0,0,1,61],[0,0,7,166,8,80,0,156,0,0,1,89,0,0,33,61,0,0,0,64,8,80,0,57,0,0,0,64,0,128,4,63],[0,0,0,0,9,33,3,79,0,0,0,1,8,0,0,58,0,0,0,0,8,133,4,54,0,0,0,0,9,144,3,80],[0,0,0,0,9,9,4,59,0,0,0,0,0,152,4,53,0,0,1,193,0,0,97,61,0,0,0,248,10,112,2,16],[0,0,7,160,11,0,0,65,0,0,0,0,7,7,0,75,0,0,0,0,11,10,192,25,0,0,7,167,7,144,1,151],[0,0,0,0,7,183,1,159,0,0,0,0,0,120,4,53,0,0,0,64,7,0,4,61,0,0,0,64,6,96,0,138],[0,0,0,0,8,97,3,79,0,0,0,0,8,8,4,59,0,0,0,128,9,128,0,140,0,0,6,197,0,0,65,61],[0,0,0,128,9,128,2,112,0,0,7,168,10,128,0,156,0,0,0,0,9,8,160,25,0,0,7,168,10,128,0,156],[0,0,0,0,10,0,0,25,0,0,0,16,10,0,32,57,0,0,0,8,11,160,1,191,0,0,7,159,12,144,0,156],[0,0,0,0,11,10,160,25,0,0,0,64,10,144,2,112,0,0,7,159,12,144,0,156,0,0,0,0,10,9,160,25],[0,0,0,4,12,176,1,191,0,0,7,155,9,160,0,156,0,0,0,0,12,11,160,25,0,0,0,32,11,160,2,112],[0,0,7,155,9,160,0,156,0,0,0,0,11,10,160,25,0,0,0,2,9,192,1,191,0,0,255,255,10,176,0,140],[0,0,0,0,9,12,160,25,0,0,0,16,10,176,2,112,0,0,0,0,10,11,160,25,0,0,0,255,10,160,0,140],[0,0,0,1,9,144,32,57,0,0,0,32,10,0,0,138,0,0,0,65,11,144,0,57,0,0,0,0,10,171,1,111],[0,0,0,0,10,167,0,25,0,0,0,0,11,122,0,75,0,0,0,0,11,0,0,25,0,0,0,1,11,0,64,57],[0,0,7,159,12,160,0,156,0,0,1,89,0,0,33,61,0,0,0,1,11,176,1,144,0,0,1,89,0,0,193,61],[0,0,0,64,0,160,4,63,0,0,0,2,10,144,0,57,0,0,0,0,10,167,4,54,0,0,0,33,11,144,0,57],[0,0,0,5,11,176,2,114,0,0,6,84,0,0,97,61,0,0,0,0,12,33,3,79,0,0,0,0,13,0,0,25],[0,0,0,5,14,208,2,16,0,0,0,0,15,234,0,25,0,0,0,0,14,236,3,79,0,0,0,0,14,14,4,59],[0,0,0,0,0,239,4,53,0,0,0,1,13,208,0,57,0,0,0,0,14,189,0,75,0,0,6,76,0,0,65,61],[0,0,0,0,11,0,0,75,0,0,6,86,0,0,97,61,0,0,0,0,11,7,4,51,0,0,0,0,11,11,0,75],[0,0,1,193,0,0,97,61,0,0,0,0,11,10,4,51,0,0,7,167,11,176,1,151,0,0,0,248,12,144,2,16],[0,0,0,0,11,188,1,159,0,0,7,169,11,176,0,65,0,0,0,0,0,186,4,53,0,0,0,3,9,144,2,16],[0,0,0,248,9,144,0,137,0,0,0,0,8,152,1,207,0,0,0,255,9,144,0,140,0,0,0,0,8,0,32,25],[0,0,0,33,9,112,0,57,0,0,6,214,0,0,1,61,0,0,7,166,9,96,0,156,0,0,1,89,0,0,33,61],[0,0,0,64,9,96,0,57,0,0,0,64,0,144,4,63,0,0,0,0,10,33,3,79,0,0,0,1,9,0,0,58],[0,0,0,0,9,150,4,54,0,0,0,0,10,160,3,80,0,0,0,0,10,10,4,59,0,0,0,0,0,169,4,53],[0,0,1,193,0,0,97,61,0,0,0,248,11,128,2,16,0,0,7,160,12,0,0,65,0,0,0,0,8,8,0,75],[0,0,0,0,12,11,192,25,0,0,7,167,8,160,1,151,0,0,0,0,8,200,1,159,0,0,0,0,0,137,4,53],[0,0,0,64,8,0,4,61,0,11,0,64,0,112,0,146,0,0,0,11,9,16,3,96,0,0,0,0,9,9,4,59],[0,0,0,128,10,144,0,140,0,0,7,54,0,0,65,61,0,0,0,128,10,144,2,112,0,0,7,168,11,144,0,156],[0,0,0,0,10,9,160,25,0,0,7,168,11,144,0,156,0,0,0,0,11,0,0,25,0,0,0,16,11,0,32,57],[0,0,0,8,12,176,1,191,0,0,7,159,13,160,0,156,0,0,0,0,12,11,160,25,0,0,0,64,11,160,2,112],[0,0,7,159,13,160,0,156,0,0,0,0,11,10,160,25,0,0,0,4,13,192,1,191,0,0,7,155,10,176,0,156],[0,0,0,0,13,12,160,25,0,0,0,32,12,176,2,112,0,0,7,155,10,176,0,156,0,0,0,0,12,11,160,25],[0,0,0,2,10,208,1,191,0,0,255,255,11,192,0,140,0,0,0,0,10,13,160,25,0,0,0,16,11,192,2,112],[0,0,0,0,11,12,160,25,0,0,0,255,11,176,0,140,0,0,0,1,10,160,32,57,0,0,0,32,11,0,0,138],[0,0,0,65,12,160,0,57,0,0,0,0,11,188,1,111,0,0,0,0,11,184,0,25,0,0,0,0,12,139,0,75],[0,0,0,0,12,0,0,25,0,0,0,1,12,0,64,57,0,0,7,159,13,176,0,156,0,0,1,89,0,0,33,61],[0,0,0,1,12,192,1,144,0,0,1,89,0,0,193,61,0,0,0,64,0,176,4,63,0,0,0,2,11,160,0,57],[0,0,0,0,11,184,4,54,0,0,0,33,12,160,0,57,0,0,0,5,12,192,2,114,0,0,6,178,0,0,97,61],[0,0,0,0,13,33,3,79,0,0,0,0,14,0,0,25,0,0,0,5,15,224,2,16,0,0,0,0,7,251,0,25],[0,0,0,0,15,253,3,79,0,0,0,0,15,15,4,59,0,0,0,0,0,247,4,53,0,0,0,1,14,224,0,57],[0,0,0,0,7,206,0,75,0,0,6,170,0,0,65,61,0,0,0,0,7,0,0,75,0,0,6,180,0,0,97,61],[0,0,0,0,7,8,4,51,0,0,0,0,7,7,0,75,0,0,1,193,0,0,97,61,0,0,0,0,7,11,4,51],[0,0,7,167,7,112,1,151,0,0,0,248,12,160,2,16,0,0,0,0,7,124,1,159,0,0,7,169,7,112,0,65],[0,0,0,0,0,123,4,53,0,0,0,3,7,160,2,16,0,0,0,248,7,112,0,137,0,0,0,0,9,121,1,207],[0,0,0,255,7,112,0,140,0,0,0,0,9,0,32,25,0,0,0,33,7,128,0,57,0,0,0,0,0,151,4,53],[0,0,7,72,0,0,1,61,0,0,7,166,9,112,0,156,0,0,1,89,0,0,33,61,0,0,0,64,9,112,0,57],[0,0,0,64,0,144,4,63,0,0,0,0,10,33,3,79,0,0,0,1,9,0,0,58,0,0,0,0,9,151,4,54],[0,0,0,0,10,160,3,80,0,0,0,0,10,10,4,59,0,0,0,0,0,169,4,53,0,0,1,193,0,0,97,61],[0,0,0,248,11,128,2,16,0,0,7,160,12,0,0,65,0,0,0,0,8,8,0,75,0,0,0,0,12,11,192,25],[0,0,7,167,8,160,1,151,0,0,0,0,8,200,1,159,0,0,0,0,0,137,4,53,0,0,0,64,9,0,4,61],[0,0,7,166,8,144,0,156,0,0,1,89,0,0,33,61,0,0,0,32,8,96,0,138,0,0,0,0,8,129,3,79],[0,0,0,0,8,8,4,59,0,0,0,64,10,144,0,57,0,0,0,64,0,160,4,63,0,0,0,32,10,144,0,57],[0,0,7,170,11,0,0,65,0,0,0,0,0,186,4,53,0,0,0,21,10,0,0,57,0,0,0,0,0,169,4,53],[0,0,0,96,8,128,2,16,0,0,0,33,10,144,0,57,0,0,0,0,0,138,4,53,0,0,0,192,6,96,0,57],[0,0,0,0,6,97,3,79,0,0,0,64,8,0,4,61,0,0,0,0,6,6,4,59,0,11,0,0,0,6,0,29],[0,0,0,128,10,96,0,140,0,0,8,159,0,0,65,61,0,0,0,11,6,0,0,41,0,0,0,128,10,96,2,112],[0,0,7,168,11,96,0,156,0,0,0,0,10,6,160,25,0,0,7,168,11,96,0,156,0,0,0,0,11,0,0,25],[0,0,0,16,11,0,32,57,0,0,0,8,12,176,1,191,0,0,7,159,13,160,0,156,0,0,0,0,12,11,160,25],[0,0,0,64,11,160,2,112,0,0,7,159,13,160,0,156,0,0,0,0,11,10,160,25,0,0,0,4,13,192,1,191],[0,0,7,155,10,176,0,156,0,0,0,0,13,12,160,25,0,0,0,32,12,176,2,112,0,0,7,155,10,176,0,156],[0,0,0,0,12,11,160,25,0,0,0,2,10,208,1,191,0,0,255,255,11,192,0,140,0,0,0,0,10,13,160,25],[0,0,0,16,11,192,2,112,0,0,0,0,11,12,160,25,0,0,0,255,11,176,0,140,0,0,0,1,10,160,32,57],[0,0,0,32,11,0,0,138,0,0,0,65,12,160,0,57,0,0,0,0,11,188,1,111,0,0,0,0,11,184,0,25],[0,0,0,0,12,139,0,75,0,0,0,0,12,0,0,25,0,0,0,1,12,0,64,57,0,0,7,159,13,176,0,156],[0,0,1,89,0,0,33,61,0,0,0,1,12,192,1,144,0,0,1,89,0,0,193,61,0,0,0,64,0,176,4,63],[0,0,0,2,11,160,0,57,0,0,0,0,11,184,4,54,0,0,0,33,12,160,0,57,0,0,0,5,12,192,2,114],[0,0,7,35,0,0,97,61,0,0,0,0,13,33,3,79,0,0,0,0,14,0,0,25,0,0,0,5,15,224,2,16],[0,0,0,0,6,251,0,25,0,0,0,0,15,253,3,79,0,0,0,0,15,15,4,59,0,0,0,0,0,246,4,53],[0,0,0,1,14,224,0,57,0,0,0,0,6,206,0,75,0,0,7,27,0,0,65,61,0,0,0,0,6,0,0,75],[0,0,7,37,0,0,97,61,0,0,0,0,6,8,4,51,0,0,0,0,6,6,0,75,0,0,1,193,0,0,97,61],[0,0,0,0,6,11,4,51,0,0,7,167,6,96,1,151,0,0,0,248,12,160,2,16,0,0,0,0,6,108,1,159],[0,0,7,169,6,96,0,65,0,0,0,0,0,107,4,53,0,0,0,3,6,160,2,16,0,0,0,248,6,96,0,137],[0,0,0,11,10,96,1,239,0,0,0,255,6,96,0,140,0,0,0,0,10,0,32,25,0,0,0,33,6,128,0,57],[0,0,0,0,0,166,4,53,0,0,8,178,0,0,1,61,0,0,7,166,7,128,0,156,0,0,1,89,0,0,33,61],[0,0,0,64,7,128,0,57,0,0,0,64,0,112,4,63,0,0,0,0,7,33,3,79,0,0,0,1,10,0,0,58],[0,0,0,0,10,168,4,54,0,0,0,0,7,112,3,80,0,0,0,0,11,7,4,59,0,0,0,0,0,186,4,53],[0,0,1,193,0,0,97,61,0,0,0,248,7,144,2,16,0,0,7,160,12,0,0,65,0,0,0,0,9,9,0,75],[0,0,0,0,12,7,192,25,0,0,7,167,7,176,1,151,0,0,0,0,7,199,1,159,0,0,0,0,0,122,4,53],[0,0,0,64,10,0,4,61,0,0,7,166,7,160,0,156,0,0,1,89,0,0,33,61,0,0,0,11,12,0,0,41],[0,0,0,32,7,192,0,138,0,0,0,0,7,113,3,79,0,0,0,0,7,7,4,59,0,0,0,64,9,160,0,57],[0,0,0,64,0,144,4,63,0,0,0,32,9,160,0,57,0,0,7,170,11,0,0,65,0,0,0,0,0,185,4,53],[0,0,0,21,9,0,0,57,0,0,0,0,0,154,4,53,0,0,0,96,7,112,2,16,0,0,0,33,9,160,0,57],[0,0,0,0,0,121,4,53,0,0,0,192,7,192,0,57,0,0,0,0,7,113,3,79,0,0,0,64,9,0,4,61],[0,0,0,0,7,7,4,59,0,11,0,0,0,7,0,29,0,0,0,128,11,112,0,140,0,0,9,86,0,0,65,61],[0,0,0,11,7,0,0,41,0,0,0,128,11,112,2,112,0,0,7,168,12,112,0,156,0,0,0,0,11,7,160,25],[0,0,7,168,12,112,0,156,0,0,0,0,12,0,0,25,0,0,0,16,12,0,32,57,0,0,0,8,13,192,1,191],[0,0,7,159,14,176,0,156,0,0,0,0,13,12,160,25,0,0,0,64,12,176,2,112,0,0,7,159,14,176,0,156],[0,0,0,0,12,11,160,25,0,0,0,4,14,208,1,191,0,0,7,155,11,192,0,156,0,0,0,0,14,13,160,25],[0,0,0,32,13,192,2,112,0,0,7,155,11,192,0,156,0,0,0,0,13,12,160,25,0,0,0,2,7,224,1,191],[0,0,255,255,12,208,0,140,0,0,0,0,7,14,160,25,0,0,0,16,12,208,2,112,0,0,0,0,12,13,160,25],[0,0,0,255,12,192,0,140,0,0,0,1,7,112,32,57,0,0,0,32,12,0,0,138,0,10,0,0,0,7,0,29],[0,0,0,65,13,112,0,57,0,0,0,0,12,205,1,111,0,0,0,0,12,201,0,25,0,0,0,0,13,156,0,75],[0,0,0,0,13,0,0,25,0,0,0,1,13,0,64,57,0,0,7,159,14,192,0,156,0,0,1,89,0,0,33,61],[0,0,0,1,13,208,1,144,0,0,1,89,0,0,193,61,0,0,0,64,0,192,4,63,0,0,0,10,7,0,0,41],[0,0,0,2,12,112,0,57,0,0,0,0,12,201,4,54,0,0,0,33,13,112,0,57,0,0,0,5,13,208,2,114],[0,0,7,151,0,0,97,61,0,0,0,0,14,33,3,79,0,0,0,0,15,0,0,25,0,0,0,5,7,240,2,16],[0,0,0,0,11,124,0,25,0,0,0,0,7,126,3,79,0,0,0,0,7,7,4,59,0,0,0,0,0,123,4,53],[0,0,0,1,15,240,0,57,0,0,0,0,7,223,0,75,0,0,7,143,0,0,65,61,0,0,0,0,7,0,0,75],[0,0,7,153,0,0,97,61,0,0,0,0,7,9,4,51,0,0,0,0,7,7,0,75,0,0,1,193,0,0,97,61],[0,0,0,0,7,12,4,51,0,0,7,167,7,112,1,151,0,0,0,10,13,0,0,41,0,0,0,248,11,208,2,16],[0,0,0,0,7,123,1,159,0,0,7,169,7,112,0,65,0,0,0,0,0,124,4,53,0,0,0,3,7,208,2,16],[0,0,0,248,7,112,0,137,0,0,0,11,11,112,1,239,0,0,0,255,7,112,0,140,0,0,0,0,11,0,32,25],[0,0,0,33,7,144,0,57,0,0,0,0,0,183,4,53,0,0,9,105,0,0,1,61,0,0,0,64,8,0,4,61],[0,7,0,0,0,8,0,29,0,0,0,56,8,112,0,140,0,0,7,214,0,0,65,61,0,0,0,32,9,112,2,112],[0,0,7,155,8,112,0,156,0,0,0,0,9,7,160,25,0,0,7,155,8,112,0,156,0,0,0,0,10,0,0,25],[0,0,0,4,10,0,32,57,0,0,0,2,8,160,1,191,0,0,255,255,11,144,0,140,0,0,0,0,8,10,160,25],[0,0,0,16,10,144,2,112,0,0,0,0,10,9,160,25,0,0,0,255,9,160,0,140,0,0,0,0,9,0,0,25],[0,0,0,1,9,0,32,57,0,0,0,7,10,0,0,41,0,0,7,166,10,160,0,156,0,0,1,89,0,0,33,61],[0,0,0,0,8,152,1,159,0,0,0,7,10,0,0,41,0,0,0,64,9,160,0,57,0,0,0,64,0,144,4,63],[0,0,0,2,9,128,0,58,0,0,0,0,9,154,4,54,0,0,0,0,2,32,3,80,0,0,0,0,2,2,4,59],[0,0,0,0,0,41,4,53,0,0,1,193,0,0,97,61,0,0,7,167,2,32,1,151,0,0,0,248,10,128,2,16],[0,0,0,0,2,42,1,159,0,0,7,171,2,32,1,199,0,0,0,0,0,41,4,53,0,0,0,3,2,128,2,16],[0,0,0,248,2,32,1,95,0,0,0,0,2,39,1,207,0,0,0,7,7,0,0,41,0,0,0,33,7,112,0,57],[0,0,0,0,0,39,4,53,0,0,7,231,0,0,1,61,0,0,0,7,8,0,0,41,0,0,7,166,8,128,0,156],[0,0,1,89,0,0,33,61,0,0,0,7,9,0,0,41,0,0,0,64,8,144,0,57,0,0,0,64,0,128,4,63],[0,0,0,1,8,0,0,58,0,0,0,0,8,137,4,54,0,0,0,0,2,32,3,80,0,0,0,0,2,2,4,59],[0,0,0,0,0,40,4,53,0,0,1,193,0,0,97,61,0,0,0,248,7,112,2,16,0,0,7,167,2,32,1,151],[0,0,0,0,2,114,1,159,0,0,7,160,2,32,1,103,0,0,0,0,0,40,4,53,0,0,0,128,2,96,0,138],[0,0,0,0,6,33,3,79,0,0,0,96,2,0,0,57,0,0,0,0,6,6,4,59,0,0,0,0,6,6,0,75],[0,0,8,72,0,0,193,61,0,0,7,160,6,0,0,65,0,0,0,0,7,84,0,75,0,0,0,0,7,0,0,25],[0,0,0,0,7,6,128,25,0,0,7,160,5,80,1,151,0,0,7,160,8,64,1,151,0,0,0,0,9,88,0,75],[0,0,0,0,6,0,128,25,0,0,0,0,5,88,1,63,0,0,7,160,5,80,0,156,0,0,0,0,6,7,192,25],[0,0,0,0,5,6,0,75,0,0,0,12,5,0,0,41,0,0,0,159,0,0,193,61,0,0,0,9,6,0,0,41],[0,0,0,0,6,6,4,51,0,0,0,128,7,0,4,61,0,0,0,11,8,0,0,41,0,0,0,0,8,8,4,51],[0,0,0,8,9,0,0,41,0,0,0,0,9,9,4,51,0,0,0,7,10,0,0,41,0,0,0,0,10,10,4,51],[0,0,0,0,5,84,0,25,0,0,0,0,4,81,3,79,0,0,0,0,4,4,4,59,0,0,7,159,11,64,0,156],[0,0,0,159,0,0,33,61,0,0,0,0,11,67,0,73,0,0,0,32,5,80,0,57,0,0,7,160,12,0,0,65],[0,0,0,0,13,181,0,75,0,0,0,0,13,0,0,25,0,0,0,0,13,12,32,25,0,0,7,160,11,176,1,151],[0,0,7,160,14,80,1,151,0,0,0,0,15,190,0,75,0,0,0,0,12,0,128,25,0,0,0,0,11,190,1,63],[0,0,7,160,11,176,0,156,0,0,0,0,12,13,192,25,0,0,0,0,11,12,0,75,0,0,0,159,0,0,193,61],[0,0,0,0,6,118,0,25,0,0,0,0,6,134,0,25,0,0,0,0,6,150,0,25,0,0,0,0,6,166,0,25],[0,0,0,0,6,70,0,25,0,0,0,0,7,2,4,51,0,0,0,0,6,118,0,25,0,0,0,64,7,0,4,61],[0,0,7,159,6,96,1,151,0,0,0,56,8,96,0,140,0,0,10,83,0,0,65,61,0,0,0,32,9,96,2,112],[0,0,7,155,8,96,0,156,0,0,0,0,9,6,160,25,0,0,7,155,8,96,0,156,0,0,0,0,10,0,0,25],[0,0,0,4,10,0,32,57,0,0,0,2,8,160,1,191,0,0,255,255,11,144,0,140,0,0,0,0,8,10,160,25],[0,0,0,16,10,144,2,112,0,0,0,0,10,9,160,25,0,0,0,255,9,160,0,140,0,0,0,0,9,0,0,25],[0,0,0,1,9,0,32,57,0,0,7,166,10,112,0,156,0,0,1,89,0,0,33,61,0,0,0,0,8,152,1,159],[0,0,0,64,9,112,0,57,0,0,0,64,0,144,4,63,0,0,0,0,9,49,3,79,0,0,0,2,3,128,0,58],[0,0,0,0,3,55,4,54,0,0,0,0,9,144,3,80,0,0,0,0,9,9,4,59,0,0,0,0,0,147,4,53],[0,0,1,193,0,0,97,61,0,0,7,167,9,144,1,151,0,0,0,248,10,128,2,16,0,0,0,0,9,154,1,159],[0,0,7,173,9,144,1,199,0,0,0,0,0,147,4,53,0,0,0,3,3,128,2,16,0,0,0,248,3,48,1,95],[0,0,0,0,3,54,1,207,0,0,0,33,6,112,0,57,0,0,0,0,0,54,4,53,0,0,10,99,0,0,1,61],[0,0,7,164,1,0,0,65,0,0,0,0,0,16,4,57,0,0,7,155,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,7,155,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,7,165,1,16,1,199],[0,0,128,11,2,0,0,57,30,104,30,94,0,0,4,15,0,0,0,1,2,32,1,144,0,0,24,107,0,0,97,61],[0,0,0,64,4,0,4,61,0,0,0,0,2,1,4,59,0,0,0,128,1,32,0,140,0,0,10,26,0,0,65,61],[0,0,0,128,1,32,2,112,0,0,7,168,3,32,0,156,0,0,0,0,1,2,160,25,0,0,7,168,3,32,0,156],[0,0,0,0,3,0,0,25,0,0,0,16,3,0,32,57,0,0,0,8,5,48,1,191,0,0,7,159,6,16,0,156],[0,0,0,0,5,3,160,25,0,0,0,64,3,16,2,112,0,0,7,159,6,16,0,156,0,0,0,0,3,1,160,25],[0,0,0,4,1,80,1,191,0,0,7,155,6,48,0,156,0,0,0,0,1,5,160,25,0,0,0,32,6,48,2,112],[0,0,7,155,5,48,0,156,0,0,0,0,6,3,160,25,0,0,0,2,5,16,1,191,0,0,255,255,3,96,0,140],[0,0,0,0,5,1,160,25,0,0,0,16,1,96,2,112,0,0,0,0,1,6,160,25,0,0,0,255,1,16,0,140],[0,0,0,1,5,80,32,57,0,0,0,65,1,80,0,57,0,0,0,10,1,16,1,127,0,0,0,0,1,20,0,25],[0,0,0,0,3,65,0,75,0,0,0,0,3,0,0,25,0,0,0,1,3,0,64,57,0,0,7,159,6,16,0,156],[0,0,1,89,0,0,33,61,0,0,0,1,3,48,1,144,0,0,1,89,0,0,193,61,0,0,0,64,0,16,4,63],[0,0,0,2,1,80,0,57,0,0,0,0,6,20,4,54,0,0,0,1,1,0,3,103,0,0,0,0,3,0,0,49],[0,0,0,33,7,80,0,57,0,0,0,5,7,112,2,114,0,0,8,141,0,0,97,61,0,0,0,0,8,49,3,79],[0,0,0,0,9,0,0,25,0,0,0,5,10,144,2,16,0,0,0,0,11,166,0,25,0,0,0,0,10,168,3,79],[0,0,0,0,10,10,4,59,0,0,0,0,0,171,4,53,0,0,0,1,9,144,0,57,0,0,0,0,10,121,0,75],[0,0,8,133,0,0,65,61,0,0,0,0,7,0,0,75,0,0,8,143,0,0,97,61,0,0,0,0,7,4,4,51],[0,0,0,0,7,7,0,75,0,0,1,193,0,0,97,61,0,0,0,0,7,6,4,51,0,0,7,167,7,112,1,151],[0,0,0,248,8,80,2,16,0,0,0,0,7,120,1,159,0,0,7,169,7,112,0,65,0,0,0,0,0,118,4,53],[0,0,0,3,5,80,2,16,0,0,0,248,5,80,0,137,0,0,0,0,2,82,1,207,0,0,0,255,5,80,0,140],[0,0,0,0,2,0,32,25,0,0,0,33,5,64,0,57,0,0,10,45,0,0,1,61,0,0,7,166,6,128,0,156],[0,0,1,89,0,0,33,61,0,0,0,64,6,128,0,57,0,0,0,64,0,96,4,63,0,0,0,0,6,33,3,79],[0,0,0,1,10,0,0,58,0,0,0,0,10,168,4,54,0,0,0,0,6,96,3,80,0,0,0,0,11,6,4,59],[0,0,0,0,0,186,4,53,0,0,1,193,0,0,97,61,0,0,0,11,13,0,0,41,0,0,0,248,6,208,2,16],[0,0,7,160,12,0,0,65,0,0,0,0,13,13,0,75,0,0,0,0,12,6,192,25,0,0,7,167,6,176,1,151],[0,0,0,0,6,198,1,159,0,0,0,0,0,106,4,53,0,0,0,64,6,0,4,61,0,0,0,32,10,96,0,57],[0,0,0,0,11,3,4,51,0,0,0,0,12,11,0,75,0,0,8,191,0,0,97,61,0,0,0,0,12,0,0,25],[0,0,0,0,13,172,0,25,0,0,0,32,12,192,0,57,0,0,0,0,14,60,0,25,0,0,0,0,14,14,4,51],[0,0,0,0,0,237,4,53,0,0,0,0,13,188,0,75,0,0,8,184,0,0,65,61,0,0,0,0,3,171,0,25],[0,0,0,0,0,3,4,53,0,0,0,0,10,4,4,51,0,0,0,0,11,10,0,75,0,0,8,204,0,0,97,61],[0,0,0,0,11,0,0,25,0,0,0,0,12,59,0,25,0,0,0,32,11,176,0,57,0,0,0,0,13,75,0,25],[0,0,0,0,13,13,4,51,0,0,0,0,0,220,4,53,0,0,0,0,12,171,0,75,0,0,8,197,0,0,65,61],[0,0,0,0,3,58,0,25,0,0,0,0,0,3,4,53,0,0,0,0,4,5,4,51,0,0,0,0,10,4,0,75],[0,0,8,217,0,0,97,61,0,0,0,0,10,0,0,25,0,0,0,0,11,58,0,25,0,0,0,32,10,160,0,57],[0,0,0,0,12,90,0,25,0,0,0,0,12,12,4,51,0,0,0,0,0,203,4,53,0,0,0,0,11,74,0,75],[0,0,8,210,0,0,65,61,0,0,0,0,3,52,0,25,0,0,0,0,0,3,4,53,0,0,0,0,4,7,4,51],[0,0,0,0,5,4,0,75,0,0,8,230,0,0,97,61,0,0,0,0,5,0,0,25,0,0,0,0,10,53,0,25],[0,0,0,32,5,80,0,57,0,0,0,0,11,117,0,25,0,0,0,0,11,11,4,51,0,0,0,0,0,186,4,53],[0,0,0,0,10,69,0,75,0,0,8,223,0,0,65,61,0,0,0,0,3,52,0,25,0,0,0,0,0,3,4,53],[0,0,0,0,4,9,4,51,0,0,0,0,5,4,0,75,0,0,8,243,0,0,97,61,0,0,0,0,5,0,0,25],[0,0,0,0,7,53,0,25,0,0,0,32,5,80,0,57,0,0,0,0,10,149,0,25,0,0,0,0,10,10,4,51],[0,0,0,0,0,167,4,53,0,0,0,0,7,69,0,75,0,0,8,236,0,0,65,61,0,0,0,0,3,52,0,25],[0,0,0,0,0,3,4,53,0,0,0,0,4,8,4,51,0,0,0,0,5,4,0,75,0,0,9,0,0,0,97,61],[0,0,0,0,5,0,0,25,0,0,0,0,7,53,0,25,0,0,0,32,5,80,0,57,0,0,0,0,9,133,0,25],[0,0,0,0,9,9,4,51,0,0,0,0,0,151,4,53,0,0,0,0,7,69,0,75,0,0,8,249,0,0,65,61],[0,0,0,0,3,52,0,25,0,0,0,0,0,3,4,53,0,0,0,0,3,99,0,73,0,0,0,32,4,48,0,138],[0,0,0,0,0,70,4,53,0,0,0,31,4,48,0,57,0,0,0,32,3,0,0,138,0,0,0,0,4,52,1,111],[0,0,0,0,7,100,0,25,0,0,0,0,4,71,0,75,0,0,0,0,4,0,0,25,0,0,0,1,4,0,64,57],[0,0,7,159,5,112,0,156,0,0,1,89,0,0,33,61,0,0,0,1,4,64,1,144,0,0,1,89,0,0,193,61],[0,0,0,64,0,112,4,63,0,0,0,13,5,0,0,41,0,0,1,196,4,80,0,57,0,0,0,0,4,65,3,79],[0,0,0,0,5,82,0,73,0,0,0,35,5,80,0,138,0,0,0,0,4,4,4,59,0,0,7,160,8,0,0,65],[0,0,0,0,9,84,0,75,0,0,0,0,9,0,0,25,0,0,0,0,9,8,128,25,0,0,7,160,5,80,1,151],[0,0,7,160,10,64,1,151,0,0,0,0,11,90,0,75,0,0,0,0,8,0,128,25,0,0,0,0,5,90,1,63],[0,0,7,160,5,80,0,156,0,0,0,0,8,9,192,25,0,0,0,0,5,8,0,75,0,0,0,12,5,0,0,41],[0,0,0,159,0,0,193,61,0,0,0,0,5,84,0,25,0,0,0,0,4,81,3,79,0,0,0,0,4,4,4,59],[0,0,7,159,8,64,0,156,0,0,0,159,0,0,33,61,0,0,0,0,8,66,0,73,0,0,0,32,5,80,0,57],[0,0,7,160,9,0,0,65,0,0,0,0,10,133,0,75,0,0,0,0,10,0,0,25,0,0,0,0,10,9,32,25],[0,0,7,160,8,128,1,151,0,0,7,160,11,80,1,151,0,0,0,0,12,139,0,75,0,0,0,0,9,0,128,25],[0,0,0,0,8,139,1,63,0,0,7,160,8,128,0,156,0,0,0,0,9,10,192,25,0,0,0,0,8,9,0,75],[0,0,0,159,0,0,193,61,0,0,0,1,8,64,0,140,0,0,12,107,0,0,193,61,0,0,0,0,8,81,3,79],[0,0,0,0,8,8,4,59,0,0,0,1,9,0,0,138,0,0,7,160,10,0,0,65,0,0,0,0,9,152,0,75],[0,0,0,0,9,0,0,25,0,0,0,0,9,10,32,25,0,0,7,160,8,128,1,151,0,0,7,160,11,128,0,156],[0,0,0,0,10,0,128,25,0,0,7,160,8,128,1,103,0,0,7,160,8,128,0,156,0,0,0,0,10,9,192,25],[0,0,0,96,8,0,0,57,0,0,0,0,9,10,0,75,0,0,12,231,0,0,193,61,0,0,7,166,8,112,0,156],[0,0,1,89,0,0,33,61,0,0,0,64,8,112,0,57,0,0,0,64,0,128,4,63,0,0,0,32,8,112,0,57],[0,0,7,169,9,0,0,65,0,0,0,0,0,152,4,53,0,0,0,1,8,0,0,57,0,0,0,0,0,135,4,53],[0,0,0,0,8,7,0,25,0,0,12,231,0,0,1,61,0,0,7,166,7,144,0,156,0,0,1,89,0,0,33,61],[0,0,0,64,7,144,0,57,0,0,0,64,0,112,4,63,0,0,0,0,7,33,3,79,0,0,0,1,11,0,0,58],[0,0,0,0,11,185,4,54,0,0,0,0,7,112,3,80,0,0,0,0,12,7,4,59,0,0,0,0,0,203,4,53],[0,0,1,193,0,0,97,61,0,0,0,11,14,0,0,41,0,0,0,248,7,224,2,16,0,0,7,160,13,0,0,65],[0,0,0,0,14,14,0,75,0,0,0,0,13,7,192,25,0,0,7,167,7,192,1,151,0,0,0,0,7,215,1,159],[0,0,0,0,0,123,4,53,0,0,0,64,7,0,4,61,0,0,0,32,11,112,0,57,0,0,0,0,12,3,4,51],[0,0,0,0,13,12,0,75,0,0,9,118,0,0,97,61,0,0,0,0,13,0,0,25,0,0,0,0,14,189,0,25],[0,0,0,32,13,208,0,57,0,0,0,0,15,61,0,25,0,0,0,0,15,15,4,51,0,0,0,0,0,254,4,53],[0,0,0,0,14,205,0,75,0,0,9,111,0,0,65,61,0,0,0,0,3,188,0,25,0,0,0,0,0,3,4,53],[0,0,0,0,11,4,4,51,0,0,0,0,12,11,0,75,0,0,9,131,0,0,97,61,0,0,0,0,12,0,0,25],[0,0,0,0,13,60,0,25,0,0,0,32,12,192,0,57,0,0,0,0,14,76,0,25,0,0,0,0,14,14,4,51],[0,0,0,0,0,237,4,53,0,0,0,0,13,188,0,75,0,0,9,124,0,0,65,61,0,0,0,0,3,59,0,25],[0,0,0,0,0,3,4,53,0,0,0,0,4,5,4,51,0,0,0,0,11,4,0,75,0,0,9,144,0,0,97,61],[0,0,0,0,11,0,0,25,0,0,0,0,12,59,0,25,0,0,0,32,11,176,0,57,0,0,0,0,13,91,0,25],[0,0,0,0,13,13,4,51,0,0,0,0,0,220,4,53,0,0,0,0,12,75,0,75,0,0,9,137,0,0,65,61],[0,0,0,0,3,52,0,25,0,0,0,0,0,3,4,53,0,0,0,0,4,6,4,51,0,0,0,0,5,4,0,75],[0,0,9,157,0,0,97,61,0,0,0,0,5,0,0,25,0,0,0,0,11,53,0,25,0,0,0,32,5,80,0,57],[0,0,0,0,12,101,0,25,0,0,0,0,12,12,4,51,0,0,0,0,0,203,4,53,0,0,0,0,11,69,0,75],[0,0,9,150,0,0,65,61,0,0,0,0,3,52,0,25,0,0,0,0,0,3,4,53,0,0,0,0,4,8,4,51],[0,0,0,0,5,4,0,75,0,0,9,170,0,0,97,61,0,0,0,0,5,0,0,25,0,0,0,0,6,53,0,25],[0,0,0,32,5,80,0,57,0,0,0,0,11,133,0,25,0,0,0,0,11,11,4,51,0,0,0,0,0,182,4,53],[0,0,0,0,6,69,0,75,0,0,9,163,0,0,65,61,0,0,0,0,3,52,0,25,0,0,0,0,0,3,4,53],[0,0,0,0,4,10,4,51,0,0,0,0,5,4,0,75,0,0,9,183,0,0,97,61,0,0,0,0,5,0,0,25],[0,0,0,0,6,53,0,25,0,0,0,32,5,80,0,57,0,0,0,0,8,165,0,25,0,0,0,0,8,8,4,51],[0,0,0,0,0,134,4,53,0,0,0,0,6,69,0,75,0,0,9,176,0,0,65,61,0,0,0,0,3,52,0,25],[0,0,0,0,0,3,4,53,0,0,0,0,4,9,4,51,0,0,0,0,5,4,0,75,0,0,9,196,0,0,97,61],[0,0,0,0,5,0,0,25,0,0,0,0,6,53,0,25,0,0,0,32,5,80,0,57,0,0,0,0,8,149,0,25],[0,0,0,0,8,8,4,51,0,0,0,0,0,134,4,53,0,0,0,0,6,69,0,75,0,0,9,189,0,0,65,61],[0,0,0,0,3,52,0,25,0,0,0,0,0,3,4,53,0,0,0,0,3,115,0,73,0,0,0,32,4,48,0,138],[0,0,0,0,0,71,4,53,0,0,0,31,4,48,0,57,0,0,0,32,3,0,0,138,0,0,0,0,4,52,1,111],[0,0,0,0,6,116,0,25,0,0,0,0,4,70,0,75,0,0,0,0,4,0,0,25,0,0,0,1,4,0,64,57],[0,0,7,159,5,96,0,156,0,0,1,89,0,0,33,61,0,0,0,1,4,64,1,144,0,0,1,89,0,0,193,61],[0,0,0,64,0,96,4,63,0,0,0,13,5,0,0,41,0,0,1,196,4,80,0,57,0,0,0,0,4,65,3,79],[0,0,0,0,5,82,0,73,0,0,0,35,5,80,0,138,0,0,0,0,4,4,4,59,0,0,7,160,8,0,0,65],[0,0,0,0,9,84,0,75,0,0,0,0,9,0,0,25,0,0,0,0,9,8,128,25,0,0,7,160,5,80,1,151],[0,0,7,160,10,64,1,151,0,0,0,0,11,90,0,75,0,0,0,0,8,0,128,25,0,0,0,0,5,90,1,63],[0,0,7,160,5,80,0,156,0,0,0,0,8,9,192,25,0,0,0,0,5,8,0,75,0,0,0,12,5,0,0,41],[0,0,0,159,0,0,193,61,0,0,0,0,5,84,0,25,0,0,0,0,4,81,3,79,0,0,0,0,4,4,4,59],[0,0,7,159,8,64,0,156,0,0,0,159,0,0,33,61,0,0,0,0,8,66,0,73,0,0,0,32,5,80,0,57],[0,0,7,160,9,0,0,65,0,0,0,0,10,133,0,75,0,0,0,0,10,0,0,25,0,0,0,0,10,9,32,25],[0,0,7,160,8,128,1,151,0,0,7,160,11,80,1,151,0,0,0,0,12,139,0,75,0,0,0,0,9,0,128,25],[0,0,0,0,8,139,1,63,0,0,7,160,8,128,0,156,0,0,0,0,9,10,192,25,0,0,0,0,8,9,0,75],[0,0,0,159,0,0,193,61,0,0,0,1,8,64,0,140,0,0,12,174,0,0,193,61,0,0,0,0,8,81,3,79],[0,0,0,0,8,8,4,59,0,0,0,1,9,0,0,138,0,0,7,160,10,0,0,65,0,0,0,0,9,152,0,75],[0,0,0,0,9,0,0,25,0,0,0,0,9,10,32,25,0,0,7,160,8,128,1,151,0,0,7,160,11,128,0,156],[0,0,0,0,10,0,128,25,0,0,7,160,8,128,1,103,0,0,7,160,8,128,0,156,0,0,0,0,10,9,192,25],[0,0,0,96,8,0,0,57,0,0,0,0,9,10,0,75,0,0,13,135,0,0,193,61,0,0,7,166,8,96,0,156],[0,0,1,89,0,0,33,61,0,0,0,64,8,96,0,57,0,0,0,64,0,128,4,63,0,0,0,32,8,96,0,57],[0,0,7,169,9,0,0,65,0,0,0,0,0,152,4,53,0,0,0,1,8,0,0,57,0,0,0,0,0,134,4,53],[0,0,0,0,8,6,0,25,0,0,13,135,0,0,1,61,0,0,7,166,1,64,0,156,0,0,1,89,0,0,33,61],[0,0,0,64,1,64,0,57,0,0,0,64,0,16,4,63,0,0,0,1,1,0,0,58,0,0,0,0,5,20,4,54],[0,0,0,0,3,0,0,49,0,0,0,1,1,0,3,103,0,0,0,0,6,49,3,79,0,0,0,0,6,96,3,80],[0,0,0,0,6,6,4,59,0,0,0,0,0,101,4,53,0,0,1,193,0,0,97,61,0,0,0,248,7,32,2,16],[0,0,7,160,8,0,0,65,0,0,0,0,2,2,0,75,0,0,0,0,8,7,192,25,0,0,7,167,2,96,1,151],[0,0,0,0,2,130,1,159,0,0,0,0,0,37,4,53,0,0,0,64,2,0,4,61,0,0,0,32,5,32,0,57],[0,0,0,0,6,4,4,51,0,0,0,0,7,6,0,75,0,0,10,59,0,0,97,61,0,0,0,0,7,0,0,25],[0,0,0,0,8,87,0,25,0,0,0,32,7,112,0,57,0,0,0,0,9,71,0,25,0,0,0,0,9,9,4,51],[0,0,0,0,0,152,4,53,0,0,0,0,8,103,0,75,0,0,10,52,0,0,65,61,0,0,0,0,4,86,0,25],[0,0,7,192,5,0,0,65,0,0,0,0,0,84,4,53,0,0,0,0,4,36,0,73,0,0,0,30,5,64,0,138],[0,0,0,0,0,82,4,53,0,0,0,33,4,64,0,57,0,0,0,10,5,64,1,127,0,0,0,0,4,37,0,25],[0,0,0,0,5,84,0,75,0,0,0,0,5,0,0,25,0,0,0,1,5,0,64,57,0,0,7,159,6,64,0,156],[0,0,1,89,0,0,33,61,0,0,0,1,5,80,1,144,0,0,1,89,0,0,193,61,0,0,0,13,6,0,0,41],[0,0,1,196,5,96,0,57,0,0,0,64,0,64,4,63,0,0,0,0,4,81,3,79,0,0,0,0,5,99,0,73],[0,0,0,35,5,80,0,138,0,0,0,0,4,4,4,59,0,0,7,237,0,0,1,61,0,0,7,166,8,112,0,156],[0,0,1,89,0,0,33,61,0,0,0,64,8,112,0,57,0,0,0,64,0,128,4,63,0,0,0,0,8,49,3,79],[0,0,0,1,3,0,0,58,0,0,0,0,3,55,4,54,0,0,0,0,8,128,3,80,0,0,0,0,8,8,4,59],[0,0,0,0,0,131,4,53,0,0,1,193,0,0,97,61,0,0,7,167,8,128,1,151,0,0,0,248,6,96,2,16],[0,0,0,0,6,134,1,159,0,0,7,172,6,96,0,65,0,0,0,0,0,99,4,53,0,0,0,64,3,0,4,61],[0,0,0,32,6,48,0,57,0,0,0,0,8,7,4,51,0,0,0,0,9,8,0,75,0,0,10,112,0,0,97,61],[0,0,0,0,9,0,0,25,0,0,0,0,10,105,0,25,0,0,0,32,9,144,0,57,0,0,0,0,11,121,0,25],[0,0,0,0,11,11,4,51,0,0,0,0,0,186,4,53,0,0,0,0,10,137,0,75,0,0,10,105,0,0,65,61],[0,0,0,0,7,104,0,25,0,0,0,0,0,7,4,53,0,0,0,128,8,0,4,61,0,0,0,0,9,8,0,75],[0,0,10,125,0,0,97,61,0,0,0,0,9,0,0,25,0,0,0,0,10,121,0,25,0,0,0,160,11,144,0,57],[0,0,0,0,11,11,4,51,0,0,0,0,0,186,4,53,0,0,0,32,9,144,0,57,0,0,0,0,10,137,0,75],[0,0,10,118,0,0,65,61,0,0,0,0,7,120,0,25,0,0,0,0,0,7,4,53,0,0,0,9,12,0,0,41],[0,0,0,0,8,12,4,51,0,0,0,0,9,8,0,75,0,0,10,139,0,0,97,61,0,0,0,0,9,0,0,25],[0,0,0,0,10,121,0,25,0,0,0,32,9,144,0,57,0,0,0,0,11,201,0,25,0,0,0,0,11,11,4,51],[0,0,0,0,0,186,4,53,0,0,0,0,10,137,0,75,0,0,10,132,0,0,65,61,0,0,0,0,7,120,0,25],[0,0,0,0,0,7,4,53,0,0,0,11,12,0,0,41,0,0,0,0,8,12,4,51,0,0,0,0,9,8,0,75],[0,0,10,153,0,0,97,61,0,0,0,0,9,0,0,25,0,0,0,0,10,121,0,25,0,0,0,32,9,144,0,57],[0,0,0,0,11,201,0,25,0,0,0,0,11,11,4,51,0,0,0,0,0,186,4,53,0,0,0,0,10,137,0,75],[0,0,10,146,0,0,65,61,0,0,0,0,7,120,0,25,0,0,0,0,0,7,4,53,0,0,0,8,12,0,0,41],[0,0,0,0,8,12,4,51,0,0,0,0,9,8,0,75,0,0,10,167,0,0,97,61,0,0,0,0,9,0,0,25],[0,0,0,0,10,121,0,25,0,0,0,32,9,144,0,57,0,0,0,0,11,201,0,25,0,0,0,0,11,11,4,51],[0,0,0,0,0,186,4,53,0,0,0,0,10,137,0,75,0,0,10,160,0,0,65,61,0,0,0,0,7,120,0,25],[0,0,0,0,0,7,4,53,0,0,0,7,12,0,0,41,0,0,0,0,8,12,4,51,0,0,0,0,9,8,0,75],[0,0,10,181,0,0,97,61,0,0,0,0,9,0,0,25,0,0,0,0,10,121,0,25,0,0,0,32,9,144,0,57],[0,0,0,0,11,201,0,25,0,0,0,0,11,11,4,51,0,0,0,0,0,186,4,53,0,0,0,0,10,137,0,75],[0,0,10,174,0,0,65,61,0,0,0,0,5,81,3,79,0,0,0,0,1,120,0,25,0,0,0,31,7,64,1,143],[0,0,0,0,0,1,4,53,0,0,0,5,8,64,2,114,0,0,10,196,0,0,97,61,0,0,0,0,9,0,0,25],[0,0,0,5,10,144,2,16,0,0,0,0,11,161,0,25,0,0,0,0,10,165,3,79,0,0,0,0,10,10,4,59],[0,0,0,0,0,171,4,53,0,0,0,1,9,144,0,57,0,0,0,0,10,137,0,75,0,0,10,188,0,0,65,61],[0,0,0,0,9,7,0,75,0,0,10,211,0,0,97,61,0,0,0,5,8,128,2,16,0,0,0,0,5,133,3,79],[0,0,0,0,8,129,0,25,0,0,0,3,7,112,2,16,0,0,0,0,9,8,4,51,0,0,0,0,9,121,1,207],[0,0,0,0,9,121,2,47,0,0,0,0,5,5,4,59,0,0,1,0,7,112,0,137,0,0,0,0,5,117,2,47],[0,0,0,0,5,117,1,207,0,0,0,0,5,149,1,159,0,0,0,0,0,88,4,53,0,0,0,0,1,65,0,25],[0,0,0,0,0,1,4,53,0,0,0,0,4,2,4,51,0,0,0,0,5,4,0,75,0,0,10,224,0,0,97,61],[0,0,0,0,5,0,0,25,0,0,0,0,7,21,0,25,0,0,0,32,5,80,0,57,0,0,0,0,8,37,0,25],[0,0,0,0,8,8,4,51,0,0,0,0,0,135,4,53,0,0,0,0,7,69,0,75,0,0,10,217,0,0,65,61],[0,0,0,0,1,20,0,25,0,0,0,0,0,1,4,53,0,0,0,0,1,49,0,73,0,0,0,32,2,16,0,138],[0,0,0,0,0,35,4,53,0,0,0,31,1,16,0,57,0,0,0,10,2,16,1,127,0,0,0,0,1,50,0,25],[0,0,0,0,2,33,0,75,0,0,0,0,2,0,0,25,0,0,0,1,2,0,64,57,0,0,7,159,4,16,0,156],[0,0,1,89,0,0,33,61,0,0,0,1,2,32,1,144,0,0,1,89,0,0,193,61,0,0,0,64,0,16,4,63],[0,0,7,155,1,0,0,65,0,0,7,155,2,96,0,156,0,0,0,0,6,1,128,25,0,0,0,64,2,96,2,16],[0,0,0,0,3,3,4,51,0,0,7,155,4,48,0,156,0,0,0,0,3,1,128,25,0,0,0,96,3,48,2,16],[0,0,0,0,2,35,1,159,0,0,0,0,3,0,4,20,0,0,7,155,4,48,0,156,0,0,0,0,3,1,128,25],[0,0,0,192,1,48,2,16,0,0,0,0,1,33,1,159,0,0,7,175,1,16,1,199,0,0,128,16,2,0,0,57],[30,104,30,94,0,0,4,15,0,0,0,1,2,32,1,144,0,0,0,12,3,0,0,41,0,0,0,13,2,0,0,41],[0,0,0,159,0,0,97,61,0,13,0,0,0,2,0,29,0,0,0,1,2,0,3,103,0,12,0,0,0,3,0,29],[0,0,0,0,3,50,3,79,0,0,0,0,1,1,4,59,0,11,0,0,0,1,0,29,0,0,0,0,1,3,4,59],[0,0,0,113,3,16,0,140,0,0,13,34,0,0,193,61,0,0,0,12,9,0,0,41,0,0,1,224,1,144,0,57],[0,0,0,0,3,18,3,79,0,0,0,0,1,0,0,49,0,0,0,13,4,16,0,106,0,0,0,35,4,64,0,138],[0,0,0,0,3,3,4,59,0,0,7,160,5,0,0,65,0,0,0,0,6,67,0,75,0,0,0,0,6,0,0,25],[0,0,0,0,6,5,128,25,0,0,7,160,4,64,1,151,0,0,7,160,7,48,1,151,0,0,0,0,8,71,0,75],[0,0,0,0,5,0,128,25,0,0,0,0,4,71,1,63,0,0,7,160,4,64,0,156,0,0,0,0,5,6,192,25],[0,0,0,0,4,5,0,75,0,0,0,159,0,0,193,61,0,0,0,0,3,147,0,25,0,0,0,0,2,50,3,79],[0,0,0,0,2,2,4,59,0,0,7,159,4,32,0,156,0,0,0,159,0,0,33,61,0,0,0,0,4,33,0,73],[0,0,0,32,1,48,0,57,0,0,7,160,3,0,0,65,0,0,0,0,5,65,0,75,0,0,0,0,5,0,0,25],[0,0,0,0,5,3,32,25,0,0,7,160,4,64,1,151,0,0,7,160,6,16,1,151,0,0,0,0,7,70,0,75],[0,0,0,0,3,0,128,25,0,0,0,0,4,70,1,63,0,0,7,160,4,64,0,156,0,0,0,0,3,5,192,25],[0,0,0,0,3,3,0,75,0,0,0,159,0,0,193,61,30,104,29,198,0,0,4,15,0,0,0,64,2,0,4,61],[0,0,0,64,3,32,0,57,0,0,0,0,0,19,4,53,0,0,0,64,1,0,0,57,0,0,0,0,1,18,4,54],[0,0,0,11,3,0,0,41,0,0,0,0,0,49,4,53,0,0,7,197,3,32,0,156,0,0,1,89,0,0,33,61],[0,0,0,96,3,32,0,57,0,0,0,64,0,48,4,63,0,0,7,155,3,0,0,65,0,0,7,155,4,16,0,156],[0,0,0,0,1,3,128,25,0,0,0,64,1,16,2,16,0,0,0,0,2,2,4,51,0,0,7,155,4,32,0,156],[0,0,0,0,2,3,128,25,0,0,0,96,2,32,2,16,0,0,0,0,1,18,1,159,0,0,0,0,2,0,4,20],[0,0,7,155,4,32,0,156,0,0,0,0,2,3,128,25,0,0,0,192,2,32,2,16,0,0,0,0,1,18,1,159],[0,0,7,175,1,16,1,199,0,0,128,16,2,0,0,57,30,104,30,94,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,0,159,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,64,2,0,4,61,0,0,0,32,3,32,0,57],[0,0,0,11,4,0,0,41,0,0,0,0,0,67,4,53,0,0,0,0,0,18,4,53,0,0,7,155,1,0,0,65],[0,0,7,155,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,64,1,32,2,16,0,0,7,198,1,16,1,199],[0,0,30,105,0,1,4,46,0,0,7,155,1,16,1,151,0,0,0,0,1,19,3,79,0,0,0,0,2,82,0,73],[0,0,7,155,2,32,1,151,0,0,0,0,1,33,3,223,0,0,0,192,2,64,2,16,0,0,7,177,2,32,1,151],[0,0,7,178,2,32,1,199,0,0,0,0,1,33,3,175,0,0,128,16,2,0,0,57,30,104,30,99,0,0,4,15],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,7,155,4,48,1,151,0,0,0,1,2,32,1,144],[0,0,12,147,0,0,97,61,0,0,0,63,2,64,0,57,0,0,7,179,2,32,1,151,0,0,0,64,5,0,4,61],[0,0,0,0,2,37,0,25,0,0,0,0,3,82,0,75,0,0,0,0,3,0,0,25,0,0,0,1,3,0,64,57],[0,0,7,159,6,32,0,156,0,0,1,89,0,0,33,61,0,0,0,1,3,48,1,144,0,0,1,89,0,0,193,61],[0,0,0,64,0,32,4,63,0,0,0,0,2,69,4,54,0,0,0,1,3,0,3,103,0,0,0,31,6,64,0,57],[0,0,0,5,6,96,2,114,0,0,11,140,0,0,97,61,0,0,0,0,7,48,3,104,0,0,0,0,8,0,0,25],[0,0,0,5,9,128,2,16,0,0,0,0,10,146,0,25,0,0,0,0,9,151,3,79,0,0,0,0,9,9,4,59],[0,0,0,0,0,154,4,53,0,0,0,1,8,128,0,57,0,0,0,0,9,104,0,75,0,0,11,132,0,0,65,61],[0,0,0,0,6,0,0,75,0,0,11,142,0,0,97,61,0,0,0,31,6,64,1,143,0,0,0,5,4,64,2,114],[0,0,11,154,0,0,97,61,0,0,0,0,7,0,0,25,0,0,0,5,8,112,2,16,0,0,0,0,9,130,0,25],[0,0,0,0,8,129,3,79,0,0,0,0,8,8,4,59,0,0,0,0,0,137,4,53,0,0,0,1,7,112,0,57],[0,0,0,0,8,71,0,75,0,0,11,146,0,0,65,61,0,0,0,0,7,6,0,75,0,0,11,169,0,0,97,61],[0,0,0,5,4,64,2,16,0,0,0,0,1,65,3,79,0,0,0,0,4,66,0,25,0,0,0,3,6,96,2,16],[0,0,0,0,7,4,4,51,0,0,0,0,7,103,1,207,0,0,0,0,7,103,2,47,0,0,0,0,1,1,4,59],[0,0,1,0,6,96,0,137,0,0,0,0,1,97,2,47,0,0,0,0,1,97,1,207,0,0,0,0,1,113,1,159],[0,0,0,0,0,20,4,53,0,0,0,0,1,5,4,51,0,0,0,32,1,16,0,140,0,0,12,89,0,0,193,61],[0,0,0,13,11,0,0,41,0,0,0,100,1,176,0,57,0,0,0,0,1,19,3,79,0,0,0,68,4,176,0,57],[0,0,0,0,5,67,3,79,0,0,0,36,4,176,0,57,0,0,0,0,4,67,3,79,0,0,1,36,6,176,0,57],[0,0,0,0,6,99,3,79,0,0,1,4,7,176,0,57,0,0,0,0,7,115,3,79,0,0,0,228,8,176,0,57],[0,0,0,0,8,131,3,79,0,0,0,196,9,176,0,57,0,0,0,0,9,147,3,79,0,0,0,164,10,176,0,57],[0,0,0,0,10,163,3,79,0,0,0,132,11,176,0,57,0,0,0,0,11,179,3,79,0,0,0,12,3,48,3,96],[0,0,0,0,3,3,4,59,0,0,0,0,4,4,4,59,0,0,0,0,5,5,4,59,0,0,0,0,12,1,4,59],[0,0,0,0,11,11,4,59,0,0,0,0,10,10,4,59,0,0,0,0,9,9,4,59,0,0,0,0,8,8,4,59],[0,0,0,0,7,7,4,59,0,0,0,0,6,6,4,59,0,0,0,0,2,2,4,51,0,0,0,64,1,0,4,61],[0,0,1,192,13,16,0,57,0,0,0,0,0,45,4,53,0,0,1,160,2,16,0,57,0,0,0,11,13,0,0,41],[0,0,0,0,0,210,4,53,0,0,1,128,2,16,0,57,0,0,0,10,13,0,0,41,0,0,0,0,0,210,4,53],[0,0,1,96,2,16,0,57,0,0,0,0,0,98,4,53,0,0,1,64,2,16,0,57,0,0,0,0,0,114,4,53],[0,0,1,32,2,16,0,57,0,0,0,0,0,130,4,53,0,0,1,0,2,16,0,57,0,0,0,0,0,146,4,53],[0,0,0,224,2,16,0,57,0,0,0,0,0,162,4,53,0,0,0,192,2,16,0,57,0,0,0,0,0,178,4,53],[0,0,0,160,2,16,0,57,0,0,0,0,0,194,4,53,0,0,0,128,2,16,0,57,0,0,0,0,0,82,4,53],[0,0,0,96,2,16,0,57,0,0,0,0,0,66,4,53,0,0,0,64,2,16,0,57,0,0,0,0,0,50,4,53],[0,0,0,32,2,16,0,57,0,0,7,183,3,0,0,65,0,0,0,0,0,50,4,53,0,0,1,192,3,0,0,57],[0,0,0,0,0,49,4,53,0,0,7,184,3,16,0,156,0,0,1,89,0,0,33,61,0,0,1,224,3,16,0,57],[0,0,0,64,0,48,4,63,0,0,7,155,4,0,0,65,0,0,7,155,3,32,0,156,0,0,0,0,2,4,128,25],[0,0,0,64,2,32,2,16,0,0,0,0,1,1,4,51,0,0,7,155,3,16,0,156,0,0,0,0,1,4,128,25],[0,0,0,96,1,16,2,16,0,0,0,0,1,33,1,159,0,0,0,0,2,0,4,20,0,0,7,155,3,32,0,156],[0,0,0,0,2,4,128,25,0,0,0,192,2,32,2,16,0,0,0,0,1,18,1,159,0,0,7,175,1,16,1,199],[0,0,128,16,2,0,0,57,30,104,30,94,0,0,4,15,0,0,0,1,2,32,1,144,0,0,0,159,0,0,97,61],[0,0,0,0,1,1,4,59,0,10,0,0,0,1,0,29,0,0,0,64,1,0,4,61,0,11,0,0,0,1,0,29],[0,0,7,164,1,0,0,65,0,0,0,0,0,16,4,57,0,0,0,0,1,0,4,20,0,0,7,155,2,16,0,156],[0,0,7,155,1,0,128,65,0,0,0,192,1,16,2,16,0,0,7,165,1,16,1,199,0,0,128,11,2,0,0,57],[30,104,30,94,0,0,4,15,0,0,0,1,2,32,1,144,0,0,24,107,0,0,97,61,0,0,0,11,4,0,0,41],[0,0,0,32,2,64,0,57,0,0,0,0,1,1,4,59,0,0,7,185,3,0,0,65,0,0,0,0,0,50,4,53],[0,0,0,128,3,64,0,57,0,0,0,0,0,19,4,53,0,0,0,96,1,64,0,57,0,0,7,186,3,0,0,65],[0,0,0,0,0,49,4,53,0,0,0,64,1,64,0,57,0,0,7,187,3,0,0,65,0,0,0,0,0,49,4,53],[0,0,0,128,1,0,0,57,0,0,0,0,0,20,4,53,0,0,7,188,1,64,0,156,0,0,1,89,0,0,33,61],[0,0,0,11,4,0,0,41,0,0,0,160,1,64,0,57,0,0,0,64,0,16,4,63,0,0,7,155,1,0,0,65],[0,0,7,155,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,64,2,32,2,16,0,0,0,0,3,4,4,51],[0,0,7,155,4,48,0,156,0,0,0,0,3,1,128,25,0,0,0,96,3,48,2,16,0,0,0,0,2,35,1,159],[0,0,0,0,3,0,4,20,0,0,7,155,4,48,0,156,0,0,0,0,3,1,128,25,0,0,0,192,1,48,2,16],[0,0,0,0,1,33,1,159,0,0,7,175,1,16,1,199,0,0,128,16,2,0,0,57,30,104,30,94,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,0,159,0,0,97,61,0,0,0,0,3,1,4,59,0,0,0,64,1,0,4,61],[0,0,0,66,2,16,0,57,0,0,0,10,4,0,0,41,0,0,0,0,0,66,4,53,0,0,0,32,2,16,0,57],[0,0,7,189,4,0,0,65,0,0,0,0,0,66,4,53,0,0,0,34,4,16,0,57,0,0,0,0,0,52,4,53],[0,0,0,66,3,0,0,57,0,0,0,0,0,49,4,53,0,0,7,190,3,16,0,156,0,0,1,89,0,0,33,61],[0,0,0,128,3,16,0,57,0,0,0,64,0,48,4,63,0,0,7,155,3,0,0,65,0,0,7,155,4,32,0,156],[0,0,0,0,2,3,128,25,0,0,0,64,2,32,2,16,0,0,0,0,1,1,4,51,0,0,7,155,4,16,0,156],[0,0,0,0,1,3,128,25,0,0,0,96,1,16,2,16,0,0,0,0,1,33,1,159,0,0,0,0,2,0,4,20],[0,0,7,155,4,32,0,156,0,0,0,0,2,3,128,25,0,0,0,192,2,32,2,16,0,0,0,0,1,18,1,159],[0,0,10,254,0,0,1,61,0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57,0,0,7,181,3,0,0,65],[0,0,0,0,0,50,4,53,0,0,0,36,2,16,0,57,0,0,0,31,3,0,0,57,0,0,0,0,0,50,4,53],[0,0,7,161,2,0,0,65,0,0,0,0,0,33,4,53,0,0,0,4,2,16,0,57,0,0,0,32,3,0,0,57],[0,0,0,0,0,50,4,53,0,0,7,155,2,0,0,65,0,0,7,155,3,16,0,156,0,0,0,0,1,2,128,25],[0,0,0,64,1,16,2,16,0,0,7,182,1,16,1,199,0,0,30,106,0,1,4,48,0,0,0,56,8,64,0,140],[0,0,12,214,0,0,65,61,0,0,0,32,9,64,2,112,0,0,7,155,8,64,0,156,0,0,0,0,9,4,160,25],[0,0,7,155,8,64,0,156,0,0,0,0,10,0,0,25,0,0,0,4,10,0,32,57,0,0,0,2,8,160,1,191],[0,0,255,255,11,144,0,140,0,0,0,0,8,10,160,25,0,0,0,16,10,144,2,112,0,0,0,0,10,9,160,25],[0,0,0,255,9,160,0,140,0,0,0,0,9,0,0,25,0,0,0,1,9,0,32,57,0,0,7,166,10,112,0,156],[0,0,1,89,0,0,33,61,0,0,0,0,8,152,1,159,0,0,0,64,9,112,0,57,0,0,0,64,0,144,4,63],[0,0,0,0,10,33,3,79,0,0,0,2,9,128,0,58,0,0,0,0,9,151,4,54,0,0,0,0,10,160,3,80],[0,0,0,0,10,10,4,59,0,0,0,0,0,169,4,53,0,0,1,193,0,0,97,61,0,0,7,167,10,160,1,151],[0,0,0,248,11,128,2,16,0,0,0,0,10,171,1,159,0,0,7,171,10,160,1,199,0,0,0,0,0,169,4,53],[0,0,0,3,8,128,2,16,0,0,0,248,8,128,1,95,0,0,0,0,8,132,1,207,0,0,0,33,9,112,0,57],[0,0,0,0,0,137,4,53,0,0,0,0,8,7,0,25,0,0,12,231,0,0,1,61,0,0,0,31,3,64,1,143],[0,0,0,5,2,64,2,114,0,0,12,158,0,0,97,61,0,0,0,0,5,0,0,25,0,0,0,5,6,80,2,16],[0,0,0,0,7,97,3,79,0,0,0,0,7,7,4,59,0,0,0,0,0,118,4,53,0,0,0,1,5,80,0,57],[0,0,0,0,6,37,0,75,0,0,12,151,0,0,65,61,0,0,0,0,5,3,0,75,0,0,12,172,0,0,97,61],[0,0,0,3,3,48,2,16,0,0,0,5,2,32,2,16,0,0,0,0,5,2,4,51,0,0,0,0,5,53,1,207],[0,0,0,0,5,53,2,47,0,0,0,0,1,33,3,79,0,0,0,0,1,1,4,59,0,0,1,0,3,48,0,137],[0,0,0,0,1,49,2,47,0,0,0,0,1,49,1,207,0,0,0,0,1,81,1,159,0,0,0,0,0,18,4,53],[0,0,0,96,1,64,2,16,0,0,30,106,0,1,4,48,0,0,0,56,8,64,0,140,0,0,13,118,0,0,65,61],[0,0,0,32,9,64,2,112,0,0,7,155,8,64,0,156,0,0,0,0,9,4,160,25,0,0,7,155,8,64,0,156],[0,0,0,0,10,0,0,25,0,0,0,4,10,0,32,57,0,0,0,2,8,160,1,191,0,0,255,255,11,144,0,140],[0,0,0,0,8,10,160,25,0,0,0,16,10,144,2,112,0,0,0,0,10,9,160,25,0,0,0,255,9,160,0,140],[0,0,0,0,9,0,0,25,0,0,0,1,9,0,32,57,0,0,7,166,10,96,0,156,0,0,1,89,0,0,33,61],[0,0,0,0,8,152,1,159,0,0,0,64,9,96,0,57,0,0,0,64,0,144,4,63,0,0,0,0,10,33,3,79],[0,0,0,2,9,128,0,58,0,0,0,0,9,150,4,54,0,0,0,0,10,160,3,80,0,0,0,0,10,10,4,59],[0,0,0,0,0,169,4,53,0,0,1,193,0,0,97,61,0,0,7,167,10,160,1,151,0,0,0,248,11,128,2,16],[0,0,0,0,10,171,1,159,0,0,7,171,10,160,1,199,0,0,0,0,0,169,4,53,0,0,0,3,8,128,2,16],[0,0,0,248,8,128,1,95,0,0,0,0,8,132,1,207,0,0,0,33,9,96,0,57,0,0,0,0,0,137,4,53],[0,0,0,0,8,6,0,25,0,0,13,135,0,0,1,61,0,0,7,166,8,112,0,156,0,0,1,89,0,0,33,61],[0,0,0,64,8,112,0,57,0,0,0,64,0,128,4,63,0,0,0,0,9,33,3,79,0,0,0,1,8,0,0,58],[0,0,0,0,8,135,4,54,0,0,0,0,9,144,3,80,0,0,0,0,9,9,4,59,0,0,0,0,0,152,4,53],[0,0,1,193,0,0,97,61,0,0,0,248,10,64,2,16,0,0,7,167,9,144,1,151,0,0,0,0,9,169,1,159],[0,0,7,160,9,144,1,103,0,0,0,0,0,152,4,53,0,0,0,0,8,7,0,25,0,0,0,64,7,0,4,61],[0,0,7,166,9,112,0,156,0,0,1,89,0,0,33,61,0,0,0,64,9,112,0,57,0,0,0,64,0,144,4,63],[0,0,0,0,2,33,3,79,0,0,0,1,12,0,0,58,0,0,0,0,9,199,4,54,0,0,0,0,2,32,3,80],[0,0,0,0,11,2,4,59,0,0,0,0,0,185,4,53,0,0,1,193,0,0,97,61,0,0,7,167,2,176,1,151],[0,0,7,172,10,32,1,199,0,0,0,0,0,169,4,53,0,0,0,0,9,6,4,51,0,0,0,0,9,73,0,25],[0,0,0,0,10,8,4,51,0,0,0,0,9,169,0,25,0,0,0,0,10,7,4,51,0,0,0,0,9,169,0,25],[0,0,0,64,10,0,4,61,0,0,7,159,9,144,1,151,0,0,0,56,13,144,0,140,0,0,14,30,0,0,65,61],[0,0,0,32,13,144,2,112,0,0,7,155,12,144,0,156,0,0,0,0,13,9,160,25,0,0,7,155,12,144,0,156],[0,0,0,0,14,0,0,25,0,0,0,4,14,0,32,57,0,0,0,2,12,224,1,191,0,0,255,255,15,208,0,140],[0,0,0,0,12,14,160,25,0,0,0,16,14,208,2,112,0,0,0,0,14,13,160,25,0,0,0,255,13,224,0,140],[0,0,0,0,13,0,0,25,0,0,0,1,13,0,32,57,0,0,7,166,14,160,0,156,0,0,1,89,0,0,33,61],[0,0,0,0,12,220,1,159,0,0,0,64,13,160,0,57,0,0,0,64,0,208,4,63,0,0,0,32,13,160,0,57],[0,0,0,0,0,189,4,53,0,0,0,2,11,192,0,58,0,0,0,0,0,186,4,53,0,0,1,193,0,0,97,61],[0,0,0,248,11,192,2,16,0,0,0,0,2,43,1,159,0,0,7,173,2,32,1,199,0,0,0,0,0,45,4,53],[0,0,0,3,2,192,2,16,0,0,0,248,2,32,1,95,0,0,0,0,2,41,1,207,0,0,0,33,9,160,0,57],[0,0,0,0,0,41,4,53,0,0,14,43,0,0,1,61,0,0,0,0,3,1,0,75,0,0,13,194,0,0,193,61],[0,0,0,64,1,0,4,61,0,10,0,0,0,1,0,29,0,0,0,12,1,0,0,41,0,0,1,0,4,16,0,57],[0,0,0,0,1,66,3,79,0,0,0,0,3,1,4,59,0,0,0,128,1,48,0,140,0,0,14,144,0,0,65,61],[0,0,0,128,1,48,2,112,0,0,7,168,5,48,0,156,0,0,0,0,1,3,160,25,0,0,7,168,5,48,0,156],[0,0,0,0,5,0,0,25,0,0,0,16,5,0,32,57,0,0,0,8,6,80,1,191,0,0,7,159,7,16,0,156],[0,0,0,0,6,5,160,25,0,0,0,64,5,16,2,112,0,0,7,159,7,16,0,156,0,0,0,0,5,1,160,25],[0,0,0,4,1,96,1,191,0,0,7,155,7,80,0,156,0,0,0,0,1,6,160,25,0,0,0,32,6,80,2,112],[0,0,7,155,7,80,0,156,0,0,0,0,6,5,160,25,0,0,0,2,5,16,1,191,0,0,255,255,7,96,0,140],[0,0,0,0,5,1,160,25,0,0,0,16,1,96,2,112,0,0,0,0,1,6,160,25,0,0,0,255,1,16,0,140],[0,0,0,1,5,80,32,57,0,0,0,32,1,0,0,138,0,0,0,65,6,80,0,57,0,0,0,0,1,22,1,111],[0,0,0,10,1,16,0,41,0,0,0,10,6,16,0,108,0,0,0,0,6,0,0,25,0,0,0,1,6,0,64,57],[0,0,7,159,7,16,0,156,0,0,1,89,0,0,33,61,0,0,0,1,6,96,1,144,0,0,1,89,0,0,193,61],[0,0,0,64,0,16,4,63,0,0,0,2,1,80,0,57,0,0,0,10,6,0,0,41,0,0,0,0,6,22,4,54],[0,0,0,0,1,0,0,49,0,0,0,33,7,80,0,57,0,0,0,5,7,112,2,114,0,0,13,98,0,0,97,61],[0,0,0,0,8,18,3,79,0,0,0,0,9,0,0,25,0,0,0,5,10,144,2,16,0,0,0,0,11,166,0,25],[0,0,0,0,10,168,3,79,0,0,0,0,10,10,4,59,0,0,0,0,0,171,4,53,0,0,0,1,9,144,0,57],[0,0,0,0,10,121,0,75,0,0,13,90,0,0,65,61,0,0,0,0,7,0,0,75,0,0,13,100,0,0,97,61],[0,0,0,10,7,0,0,41,0,0,0,0,7,7,4,51,0,0,0,0,7,7,0,75,0,0,1,193,0,0,97,61],[0,0,0,0,7,6,4,51,0,0,7,167,7,112,1,151,0,0,0,248,8,80,2,16,0,0,0,0,7,120,1,159],[0,0,7,169,7,112,0,65,0,0,0,0,0,118,4,53,0,0,0,3,5,80,2,16,0,0,0,248,5,80,0,137],[0,0,0,0,3,83,1,207,0,0,0,255,5,80,0,140,0,0,0,0,3,0,32,25,0,0,0,10,5,0,0,41],[0,0,0,33,5,80,0,57,0,0,14,164,0,0,1,61,0,0,7,166,8,96,0,156,0,0,1,89,0,0,33,61],[0,0,0,64,8,96,0,57,0,0,0,64,0,128,4,63,0,0,0,0,9,33,3,79,0,0,0,1,8,0,0,58],[0,0,0,0,8,134,4,54,0,0,0,0,9,144,3,80,0,0,0,0,9,9,4,59,0,0,0,0,0,152,4,53],[0,0,1,193,0,0,97,61,0,0,0,248,10,64,2,16,0,0,7,167,9,144,1,151,0,0,0,0,9,169,1,159],[0,0,7,160,9,144,1,103,0,0,0,0,0,152,4,53,0,0,0,0,8,6,0,25,0,0,0,64,6,0,4,61],[0,0,7,166,9,96,0,156,0,0,1,89,0,0,33,61,0,0,0,64,9,96,0,57,0,0,0,64,0,144,4,63],[0,0,0,0,2,33,3,79,0,0,0,1,12,0,0,58,0,0,0,0,9,198,4,54,0,0,0,0,2,32,3,80],[0,0,0,0,11,2,4,59,0,0,0,0,0,185,4,53,0,0,1,193,0,0,97,61,0,0,7,167,2,176,1,151],[0,0,7,172,10,32,1,199,0,0,0,0,0,169,4,53,0,0,0,0,9,7,4,51,0,0,0,0,9,73,0,25],[0,0,0,0,10,8,4,51,0,0,0,0,9,169,0,25,0,0,0,0,10,6,4,51,0,0,0,0,9,169,0,25],[0,0,0,64,10,0,4,61,0,0,7,159,9,144,1,151,0,0,0,56,13,144,0,140,0,0,15,77,0,0,65,61],[0,0,0,32,13,144,2,112,0,0,7,155,12,144,0,156,0,0,0,0,13,9,160,25,0,0,7,155,12,144,0,156],[0,0,0,0,14,0,0,25,0,0,0,4,14,0,32,57,0,0,0,2,12,224,1,191,0,0,255,255,15,208,0,140],[0,0,0,0,12,14,160,25,0,0,0,16,14,208,2,112,0,0,0,0,14,13,160,25,0,0,0,255,13,224,0,140],[0,0,0,0,13,0,0,25,0,0,0,1,13,0,32,57,0,0,7,166,14,160,0,156,0,0,1,89,0,0,33,61],[0,0,0,0,12,220,1,159,0,0,0,64,13,160,0,57,0,0,0,64,0,208,4,63,0,0,0,32,13,160,0,57],[0,0,0,0,0,189,4,53,0,0,0,2,11,192,0,58,0,0,0,0,0,186,4,53,0,0,1,193,0,0,97,61],[0,0,0,248,11,192,2,16,0,0,0,0,2,43,1,159,0,0,7,173,2,32,1,199,0,0,0,0,0,45,4,53],[0,0,0,3,2,192,2,16,0,0,0,248,2,32,1,95,0,0,0,0,2,41,1,207,0,0,0,33,9,160,0,57],[0,0,0,0,0,41,4,53,0,0,15,90,0,0,1,61,0,0,0,2,2,16,0,140,0,0,14,241,0,0,193,61],[0,0,0,0,1,0,4,21,0,10,0,0,0,1,0,29,0,0,7,164,1,0,0,65,0,0,0,0,0,16,4,57],[0,0,7,155,1,0,0,65,0,0,0,0,2,0,4,20,0,0,7,155,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,192,1,32,2,16,0,0,7,165,1,16,1,199,0,0,128,11,2,0,0,57,30,104,30,94,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,24,107,0,0,97,61,0,0,0,64,3,0,4,61,0,0,0,0,4,1,4,59],[0,0,0,128,1,64,0,140,0,0,15,208,0,0,65,61,0,0,0,128,1,64,2,112,0,0,7,168,2,64,0,156],[0,0,0,0,1,4,160,25,0,0,7,168,2,64,0,156,0,0,0,0,2,0,0,25,0,0,0,16,2,0,32,57],[0,0,0,8,5,32,1,191,0,0,7,159,6,16,0,156,0,0,0,0,5,2,160,25,0,0,0,64,2,16,2,112],[0,0,7,159,6,16,0,156,0,0,0,0,2,1,160,25,0,0,0,4,1,80,1,191,0,0,7,155,6,32,0,156],[0,0,0,0,1,5,160,25,0,0,0,32,6,32,2,112,0,0,7,155,5,32,0,156,0,0,0,0,6,2,160,25],[0,0,0,2,5,16,1,191,0,0,255,255,2,96,0,140,0,0,0,0,5,1,160,25,0,0,0,16,1,96,2,112],[0,0,0,0,1,6,160,25,0,0,0,255,1,16,0,140,0,0,0,1,5,80,32,57,0,0,0,32,1,0,0,138],[0,0,0,65,2,80,0,57,0,0,0,0,1,18,1,111,0,0,0,0,1,19,0,25,0,0,0,0,2,49,0,75],[0,0,0,0,2,0,0,25,0,0,0,1,2,0,64,57,0,0,7,159,6,16,0,156,0,0,1,89,0,0,33,61],[0,0,0,1,2,32,1,144,0,0,1,89,0,0,193,61,0,0,0,64,0,16,4,63,0,0,0,2,1,80,0,57],[0,0,0,0,6,19,4,54,0,0,0,1,1,0,3,103,0,0,0,0,2,0,0,49,0,0,0,33,7,80,0,57],[0,0,0,5,7,112,2,114,0,0,14,12,0,0,97,61,0,0,0,0,8,33,3,79,0,0,0,0,9,0,0,25],[0,0,0,5,10,144,2,16,0,0,0,0,11,166,0,25,0,0,0,0,10,168,3,79,0,0,0,0,10,10,4,59],[0,0,0,0,0,171,4,53,0,0,0,1,9,144,0,57,0,0,0,0,10,121,0,75,0,0,14,4,0,0,65,61],[0,0,0,0,7,0,0,75,0,0,14,14,0,0,97,61,0,0,0,0,7,3,4,51,0,0,0,0,7,7,0,75],[0,0,1,193,0,0,97,61,0,0,0,0,7,6,4,51,0,0,7,167,7,112,1,151,0,0,0,248,8,80,2,16],[0,0,0,0,7,120,1,159,0,0,7,169,7,112,0,65,0,0,0,0,0,118,4,53,0,0,0,3,5,80,2,16],[0,0,0,248,5,80,0,137,0,0,0,0,4,84,1,207,0,0,0,255,5,80,0,140,0,0,0,0,4,0,32,25],[0,0,0,33,5,48,0,57,0,0,15,227,0,0,1,61,0,0,7,166,13,160,0,156,0,0,1,89,0,0,33,61],[0,0,0,64,13,160,0,57,0,0,0,64,0,208,4,63,0,0,0,32,13,160,0,57,0,0,0,0,0,189,4,53],[0,0,0,0,0,202,4,53,0,0,0,0,11,12,0,75,0,0,1,193,0,0,97,61,0,0,0,248,9,144,2,16],[0,0,0,0,2,41,1,159,0,0,7,172,2,32,0,65,0,0,0,0,0,45,4,53,0,0,0,64,2,0,4,61],[0,0,0,32,9,32,0,57,0,0,7,174,11,0,0,65,0,0,0,0,0,185,4,53,0,0,0,33,11,32,0,57],[0,0,0,0,12,10,4,51,0,0,0,0,13,12,0,75,0,0,14,59,0,0,97,61,0,0,0,0,13,0,0,25],[0,0,0,0,14,189,0,25,0,0,0,32,13,208,0,57,0,0,0,0,15,173,0,25,0,0,0,0,15,15,4,51],[0,0,0,0,0,254,4,53,0,0,0,0,14,205,0,75,0,0,14,52,0,0,65,61,0,0,0,0,10,188,0,25],[0,0,0,0,0,10,4,53,0,0,0,0,11,6,4,51,0,0,0,0,12,11,0,75,0,0,14,72,0,0,97,61],[0,0,0,0,12,0,0,25,0,0,0,0,13,172,0,25,0,0,0,32,12,192,0,57,0,0,0,0,14,108,0,25],[0,0,0,0,14,14,4,51,0,0,0,0,0,237,4,53,0,0,0,0,13,188,0,75,0,0,14,65,0,0,65,61],[0,0,0,0,6,171,0,25,0,0,0,0,0,6,4,53,0,0,0,0,10,8,4,51,0,0,0,0,11,10,0,75],[0,0,14,85,0,0,97,61,0,0,0,0,11,0,0,25,0,0,0,0,12,107,0,25,0,0,0,32,11,176,0,57],[0,0,0,0,13,139,0,25,0,0,0,0,13,13,4,51,0,0,0,0,0,220,4,53,0,0,0,0,12,171,0,75],[0,0,14,78,0,0,65,61,0,0,0,0,5,81,3,79,0,0,0,0,1,106,0,25,0,0,0,31,6,64,1,143],[0,0,0,0,0,1,4,53,0,0,0,5,8,64,2,114,0,0,14,100,0,0,97,61,0,0,0,0,10,0,0,25],[0,0,0,5,11,160,2,16,0,0,0,0,12,177,0,25,0,0,0,0,11,181,3,79,0,0,0,0,11,11,4,59],[0,0,0,0,0,188,4,53,0,0,0,1,10,160,0,57,0,0,0,0,11,138,0,75,0,0,14,92,0,0,65,61],[0,0,0,0,10,6,0,75,0,0,14,115,0,0,97,61,0,0,0,5,8,128,2,16,0,0,0,0,5,133,3,79],[0,0,0,0,8,129,0,25,0,0,0,3,6,96,2,16,0,0,0,0,10,8,4,51,0,0,0,0,10,106,1,207],[0,0,0,0,10,106,2,47,0,0,0,0,5,5,4,59,0,0,1,0,6,96,0,137,0,0,0,0,5,101,2,47],[0,0,0,0,5,101,1,207,0,0,0,0,5,165,1,159,0,0,0,0,0,88,4,53,0,0,0,0,1,65,0,25],[0,0,0,0,0,1,4,53,0,0,0,0,4,7,4,51,0,0,0,0,5,4,0,75,0,0,14,128,0,0,97,61],[0,0,0,0,5,0,0,25,0,0,0,0,6,21,0,25,0,0,0,32,5,80,0,57,0,0,0,0,8,117,0,25],[0,0,0,0,8,8,4,51,0,0,0,0,0,134,4,53,0,0,0,0,6,69,0,75,0,0,14,121,0,0,65,61],[0,0,0,0,1,20,0,25,0,0,0,0,0,1,4,53,0,0,0,0,1,33,0,73,0,0,0,32,4,16,0,138],[0,0,0,0,0,66,4,53,0,0,0,31,1,16,0,57,0,0,0,0,3,49,1,111,0,0,0,0,1,35,0,25],[0,0,0,0,3,49,0,75,0,0,0,0,3,0,0,25,0,0,0,1,3,0,64,57,0,0,7,159,4,16,0,156],[0,0,1,89,0,0,33,61,0,0,0,1,3,48,1,144,0,0,15,190,0,0,97,61,0,0,1,89,0,0,1,61],[0,0,0,10,1,0,0,41,0,0,7,166,1,16,0,156,0,0,1,89,0,0,33,61,0,0,0,10,5,0,0,41],[0,0,0,64,1,80,0,57,0,0,0,64,0,16,4,63,0,0,0,1,1,0,0,58,0,0,0,0,5,21,4,54],[0,0,0,0,1,0,0,49,0,0,0,0,6,18,3,79,0,0,0,0,6,96,3,80,0,0,0,0,6,6,4,59],[0,0,0,0,0,101,4,53,0,0,1,193,0,0,97,61,0,0,0,248,7,48,2,16,0,0,7,160,8,0,0,65],[0,0,0,0,3,3,0,75,0,0,0,0,8,7,192,25,0,0,7,167,3,96,1,151,0,0,0,0,3,131,1,159],[0,0,0,0,0,53,4,53,0,0,0,64,3,0,4,61,0,0,0,96,4,64,0,138,0,0,0,0,5,66,3,79],[0,0,0,0,5,5,4,59,0,0,0,128,6,80,0,140,0,0,16,49,0,0,65,61,0,0,0,128,6,80,2,112],[0,0,7,168,7,80,0,156,0,0,0,0,6,5,160,25,0,0,7,168,7,80,0,156,0,0,0,0,7,0,0,25],[0,0,0,16,7,0,32,57,0,0,0,8,8,112,1,191,0,0,7,159,9,96,0,156,0,0,0,0,8,7,160,25],[0,0,0,64,7,96,2,112,0,0,7,159,9,96,0,156,0,0,0,0,7,6,160,25,0,0,0,4,9,128,1,191],[0,0,7,155,6,112,0,156,0,0,0,0,9,8,160,25,0,0,0,32,8,112,2,112,0,0,7,155,6,112,0,156],[0,0,0,0,8,7,160,25,0,0,0,2,6,144,1,191,0,0,255,255,7,128,0,140,0,0,0,0,6,9,160,25],[0,0,0,16,7,128,2,112,0,0,0,0,7,8,160,25,0,0,0,255,7,112,0,140,0,0,0,1,6,96,32,57],[0,0,0,32,7,0,0,138,0,0,0,65,8,96,0,57,0,0,0,0,7,120,1,111,0,0,0,0,7,115,0,25],[0,0,0,0,8,55,0,75,0,0,0,0,8,0,0,25,0,0,0,1,8,0,64,57,0,0,7,159,9,112,0,156],[0,0,1,89,0,0,33,61,0,0,0,1,8,128,1,144,0,0,1,89,0,0,193,61,0,0,0,64,0,112,4,63],[0,0,0,2,7,96,0,57,0,0,0,0,7,115,4,54,0,0,0,33,8,96,0,57,0,0,0,5,8,128,2,114],[0,0,14,223,0,0,97,61,0,0,0,0,9,18,3,79,0,0,0,0,10,0,0,25,0,0,0,5,11,160,2,16],[0,0,0,0,12,183,0,25,0,0,0,0,11,185,3,79,0,0,0,0,11,11,4,59,0,0,0,0,0,188,4,53],[0,0,0,1,10,160,0,57,0,0,0,0,11,138,0,75,0,0,14,215,0,0,65,61,0,0,0,0,8,0,0,75],[0,0,14,225,0,0,97,61,0,0,0,0,8,3,4,51,0,0,0,0,8,8,0,75,0,0,1,193,0,0,97,61],[0,0,0,0,8,7,4,51,0,0,7,167,8,128,1,151,0,0,0,248,9,96,2,16,0,0,0,0,8,137,1,159],[0,0,7,169,8,128,0,65,0,0,0,0,0,135,4,53,0,0,0,3,6,96,2,16,0,0,0,248,6,96,0,137],[0,0,0,0,5,101,1,207,0,0,0,255,6,96,0,140,0,0,0,0,5,0,32,25,0,0,0,33,6,48,0,57],[0,0,16,66,0,0,1,61,0,0,0,1,1,16,0,140,0,0,15,201,0,0,193,61,0,0,0,0,1,0,4,21],[0,10,0,0,0,1,0,29,0,0,7,164,1,0,0,65,0,0,0,0,0,16,4,57,0,0,7,155,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,7,155,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,7,165,1,16,1,199,0,0,128,11,2,0,0,57,30,104,30,94,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,24,107,0,0,97,61,0,0,0,64,3,0,4,61,0,0,0,0,4,1,4,59,0,0,0,128,1,64,0,140],[0,0,16,143,0,0,65,61,0,0,0,128,1,64,2,112,0,0,7,168,2,64,0,156,0,0,0,0,1,4,160,25],[0,0,7,168,2,64,0,156,0,0,0,0,2,0,0,25,0,0,0,16,2,0,32,57,0,0,0,8,5,32,1,191],[0,0,7,159,6,16,0,156,0,0,0,0,5,2,160,25,0,0,0,64,2,16,2,112,0,0,7,159,6,16,0,156],[0,0,0,0,2,1,160,25,0,0,0,4,1,80,1,191,0,0,7,155,6,32,0,156,0,0,0,0,1,5,160,25],[0,0,0,32,6,32,2,112,0,0,7,155,5,32,0,156,0,0,0,0,6,2,160,25,0,0,0,2,5,16,1,191],[0,0,255,255,2,96,0,140,0,0,0,0,5,1,160,25,0,0,0,16,1,96,2,112,0,0,0,0,1,6,160,25],[0,0,0,255,1,16,0,140,0,0,0,1,5,80,32,57,0,0,0,32,1,0,0,138,0,0,0,65,2,80,0,57],[0,0,0,0,1,18,1,111,0,0,0,0,1,19,0,25,0,0,0,0,2,49,0,75,0,0,0,0,2,0,0,25],[0,0,0,1,2,0,64,57,0,0,7,159,6,16,0,156,0,0,1,89,0,0,33,61,0,0,0,1,2,32,1,144],[0,0,1,89,0,0,193,61,0,0,0,64,0,16,4,63,0,0,0,2,1,80,0,57,0,0,0,0,6,19,4,54],[0,0,0,1,1,0,3,103,0,0,0,0,2,0,0,49,0,0,0,33,7,80,0,57,0,0,0,5,7,112,2,114],[0,0,15,59,0,0,97,61,0,0,0,0,8,33,3,79,0,0,0,0,9,0,0,25,0,0,0,5,10,144,2,16],[0,0,0,0,11,166,0,25,0,0,0,0,10,168,3,79,0,0,0,0,10,10,4,59,0,0,0,0,0,171,4,53],[0,0,0,1,9,144,0,57,0,0,0,0,10,121,0,75,0,0,15,51,0,0,65,61,0,0,0,0,7,0,0,75],[0,0,15,61,0,0,97,61,0,0,0,0,7,3,4,51,0,0,0,0,7,7,0,75,0,0,1,193,0,0,97,61],[0,0,0,0,7,6,4,51,0,0,7,167,7,112,1,151,0,0,0,248,8,80,2,16,0,0,0,0,7,120,1,159],[0,0,7,169,7,112,0,65,0,0,0,0,0,118,4,53,0,0,0,3,5,80,2,16,0,0,0,248,5,80,0,137],[0,0,0,0,4,84,1,207,0,0,0,255,5,80,0,140,0,0,0,0,4,0,32,25,0,0,0,33,5,48,0,57],[0,0,16,162,0,0,1,61,0,0,7,166,13,160,0,156,0,0,1,89,0,0,33,61,0,0,0,64,13,160,0,57],[0,0,0,64,0,208,4,63,0,0,0,32,13,160,0,57,0,0,0,0,0,189,4,53,0,0,0,0,0,202,4,53],[0,0,0,0,11,12,0,75,0,0,1,193,0,0,97,61,0,0,0,248,9,144,2,16,0,0,0,0,2,41,1,159],[0,0,7,172,2,32,0,65,0,0,0,0,0,45,4,53,0,0,0,64,2,0,4,61,0,0,0,32,9,32,0,57],[0,0,7,175,11,0,0,65,0,0,0,0,0,185,4,53,0,0,0,33,11,32,0,57,0,0,0,0,12,10,4,51],[0,0,0,0,13,12,0,75,0,0,15,106,0,0,97,61,0,0,0,0,13,0,0,25,0,0,0,0,14,189,0,25],[0,0,0,32,13,208,0,57,0,0,0,0,15,173,0,25,0,0,0,0,15,15,4,51,0,0,0,0,0,254,4,53],[0,0,0,0,14,205,0,75,0,0,15,99,0,0,65,61,0,0,0,0,10,188,0,25,0,0,0,0,0,10,4,53],[0,0,0,0,11,7,4,51,0,0,0,0,12,11,0,75,0,0,15,119,0,0,97,61,0,0,0,0,12,0,0,25],[0,0,0,0,13,172,0,25,0,0,0,32,12,192,0,57,0,0,0,0,14,124,0,25,0,0,0,0,14,14,4,51],[0,0,0,0,0,237,4,53,0,0,0,0,13,188,0,75,0,0,15,112,0,0,65,61,0,0,0,0,7,171,0,25],[0,0,0,0,0,7,4,53,0,0,0,0,10,8,4,51,0,0,0,0,11,10,0,75,0,0,15,132,0,0,97,61],[0,0,0,0,11,0,0,25,0,0,0,0,12,123,0,25,0,0,0,32,11,176,0,57,0,0,0,0,13,139,0,25],[0,0,0,0,13,13,4,51,0,0,0,0,0,220,4,53,0,0,0,0,12,171,0,75,0,0,15,125,0,0,65,61],[0,0,0,0,5,81,3,79,0,0,0,0,1,122,0,25,0,0,0,31,7,64,1,143,0,0,0,0,0,1,4,53],[0,0,0,5,8,64,2,114,0,0,15,147,0,0,97,61,0,0,0,0,10,0,0,25,0,0,0,5,11,160,2,16],[0,0,0,0,12,177,0,25,0,0,0,0,11,181,3,79,0,0,0,0,11,11,4,59,0,0,0,0,0,188,4,53],[0,0,0,1,10,160,0,57,0,0,0,0,11,138,0,75,0,0,15,139,0,0,65,61,0,0,0,0,10,7,0,75],[0,0,15,162,0,0,97,61,0,0,0,5,8,128,2,16,0,0,0,0,5,133,3,79,0,0,0,0,8,129,0,25],[0,0,0,3,7,112,2,16,0,0,0,0,10,8,4,51,0,0,0,0,10,122,1,207,0,0,0,0,10,122,2,47],[0,0,0,0,5,5,4,59,0,0,1,0,7,112,0,137,0,0,0,0,5,117,2,47,0,0,0,0,5,117,1,207],[0,0,0,0,5,165,1,159,0,0,0,0,0,88,4,53,0,0,0,0,1,65,0,25,0,0,0,0,0,1,4,53],[0,0,0,0,4,6,4,51,0,0,0,0,5,4,0,75,0,0,15,175,0,0,97,61,0,0,0,0,5,0,0,25],[0,0,0,0,7,21,0,25,0,0,0,32,5,80,0,57,0,0,0,0,8,101,0,25,0,0,0,0,8,8,4,51],[0,0,0,0,0,135,4,53,0,0,0,0,7,69,0,75,0,0,15,168,0,0,65,61,0,0,0,0,1,20,0,25],[0,0,0,0,0,1,4,53,0,0,0,0,1,33,0,73,0,0,0,32,4,16,0,138,0,0,0,0,0,66,4,53],[0,0,0,31,1,16,0,57,0,0,0,0,3,49,1,111,0,0,0,0,1,35,0,25,0,0,0,0,3,49,0,75],[0,0,0,0,3,0,0,25,0,0,0,1,3,0,64,57,0,0,7,159,4,16,0,156,0,0,1,89,0,0,33,61],[0,0,0,1,3,48,1,144,0,0,1,89,0,0,193,61,0,0,0,64,0,16,4,63,0,0,7,155,1,0,0,65],[0,0,7,155,3,144,0,156,0,0,0,0,9,1,128,25,0,0,0,64,3,144,2,16,0,0,0,0,2,2,4,51],[0,0,7,155,4,32,0,156,0,0,0,0,2,1,128,25,0,0,0,96,2,32,2,16,0,0,0,0,2,50,1,159],[0,0,10,249,0,0,1,61,0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57,0,0,7,193,3,0,0,65],[0,0,0,0,0,50,4,53,0,0,0,36,2,16,0,57,0,0,0,19,3,0,0,57,0,0,12,95,0,0,1,61],[0,0,7,166,1,48,0,156,0,0,1,89,0,0,33,61,0,0,0,64,1,48,0,57,0,0,0,64,0,16,4,63],[0,0,0,1,1,0,0,58,0,0,0,0,5,19,4,54,0,0,0,0,2,0,0,49,0,0,0,1,1,0,3,103],[0,0,0,0,6,33,3,79,0,0,0,0,6,96,3,80,0,0,0,0,6,6,4,59,0,0,0,0,0,101,4,53],[0,0,1,193,0,0,97,61,0,0,0,248,7,64,2,16,0,0,7,160,8,0,0,65,0,0,0,0,4,4,0,75],[0,0,0,0,8,7,192,25,0,0,7,167,4,96,1,151,0,0,0,0,4,132,1,159,0,0,0,0,0,69,4,53],[0,0,0,64,5,0,4,61,0,0,0,13,4,0,0,41,0,0,1,4,4,64,0,57,0,0,0,0,6,65,3,79],[0,0,0,0,6,6,4,59,0,0,0,128,7,96,0,140,0,0,16,240,0,0,65,61,0,0,0,128,7,96,2,112],[0,0,7,168,8,96,0,156,0,0,0,0,7,6,160,25,0,0,7,168,8,96,0,156,0,0,0,0,8,0,0,25],[0,0,0,16,8,0,32,57,0,0,0,8,9,128,1,191,0,0,7,159,10,112,0,156,0,0,0,0,9,8,160,25],[0,0,0,64,8,112,2,112,0,0,7,159,10,112,0,156,0,0,0,0,8,7,160,25,0,0,0,4,10,144,1,191],[0,0,7,155,7,128,0,156,0,0,0,0,10,9,160,25,0,0,0,32,9,128,2,112,0,0,7,155,7,128,0,156],[0,0,0,0,9,8,160,25,0,0,0,2,7,160,1,191,0,0,255,255,8,144,0,140,0,0,0,0,7,10,160,25],[0,0,0,16,8,144,2,112,0,0,0,0,8,9,160,25,0,0,0,255,8,128,0,140,0,0,0,1,7,112,32,57],[0,0,0,32,8,0,0,138,0,0,0,65,9,112,0,57,0,0,0,0,8,137,1,111,0,0,0,0,8,133,0,25],[0,0,0,0,9,88,0,75,0,0,0,0,9,0,0,25,0,0,0,1,9,0,64,57,0,0,7,159,10,128,0,156],[0,0,1,89,0,0,33,61,0,0,0,1,9,144,1,144,0,0,1,89,0,0,193,61,0,0,0,64,0,128,4,63],[0,0,0,2,8,112,0,57,0,0,0,0,8,133,4,54,0,0,0,33,9,112,0,57,0,0,0,5,9,144,2,114],[0,0,16,31,0,0,97,61,0,0,0,0,10,33,3,79,0,0,0,0,11,0,0,25,0,0,0,5,12,176,2,16],[0,0,0,0,13,200,0,25,0,0,0,0,12,202,3,79,0,0,0,0,12,12,4,59,0,0,0,0,0,205,4,53],[0,0,0,1,11,176,0,57,0,0,0,0,12,155,0,75,0,0,16,23,0,0,65,61,0,0,0,0,9,0,0,75],[0,0,16,33,0,0,97,61,0,0,0,0,9,5,4,51,0,0,0,0,9,9,0,75,0,0,1,193,0,0,97,61],[0,0,0,0,9,8,4,51,0,0,7,167,9,144,1,151,0,0,0,248,10,112,2,16,0,0,0,0,9,154,1,159],[0,0,7,169,9,144,0,65,0,0,0,0,0,152,4,53,0,0,0,3,7,112,2,16,0,0,0,248,7,112,0,137],[0,0,0,0,6,118,1,207,0,0,0,255,7,112,0,140,0,0,0,0,6,0,32,25,0,0,0,33,7,80,0,57],[0,0,17,1,0,0,1,61,0,0,7,166,6,48,0,156,0,0,1,89,0,0,33,61,0,0,0,64,6,48,0,57],[0,0,0,64,0,96,4,63,0,0,0,0,7,18,3,79,0,0,0,1,6,0,0,58,0,0,0,0,6,99,4,54],[0,0,0,0,7,112,3,80,0,0,0,0,7,7,4,59,0,0,0,0,0,118,4,53,0,0,1,193,0,0,97,61],[0,0,0,248,8,80,2,16,0,0,7,160,9,0,0,65,0,0,0,0,5,5,0,75,0,0,0,0,9,8,192,25],[0,0,7,167,5,112,1,151,0,0,0,0,5,149,1,159,0,0,0,0,0,86,4,53,0,0,0,64,4,64,0,138],[0,0,0,0,5,66,3,79,0,0,0,64,4,0,4,61,0,0,0,0,5,5,4,59,0,0,0,128,6,80,0,140],[0,0,17,78,0,0,65,61,0,0,0,128,6,80,2,112,0,0,7,168,7,80,0,156,0,0,0,0,6,5,160,25],[0,0,7,168,7,80,0,156,0,0,0,0,7,0,0,25,0,0,0,16,7,0,32,57,0,0,0,8,8,112,1,191],[0,0,7,159,9,96,0,156,0,0,0,0,8,7,160,25,0,0,0,64,7,96,2,112,0,0,7,159,9,96,0,156],[0,0,0,0,7,6,160,25,0,0,0,4,9,128,1,191,0,0,7,155,6,112,0,156,0,0,0,0,9,8,160,25],[0,0,0,32,8,112,2,112,0,0,7,155,6,112,0,156,0,0,0,0,8,7,160,25,0,0,0,2,6,144,1,191],[0,0,255,255,7,128,0,140,0,0,0,0,6,9,160,25,0,0,0,16,7,128,2,112,0,0,0,0,7,8,160,25],[0,0,0,255,7,112,0,140,0,0,0,1,6,96,32,57,0,0,0,32,7,0,0,138,0,0,0,65,8,96,0,57],[0,0,0,0,7,120,1,111,0,0,0,0,7,116,0,25,0,0,0,0,8,71,0,75,0,0,0,0,8,0,0,25],[0,0,0,1,8,0,64,57,0,0,7,159,9,112,0,156,0,0,1,89,0,0,33,61,0,0,0,1,8,128,1,144],[0,0,1,89,0,0,193,61,0,0,0,64,0,112,4,63,0,0,0,2,7,96,0,57,0,0,0,0,7,116,4,54],[0,0,0,33,8,96,0,57,0,0,0,5,8,128,2,114,0,0,16,125,0,0,97,61,0,0,0,0,9,18,3,79],[0,0,0,0,10,0,0,25,0,0,0,5,11,160,2,16,0,0,0,0,12,183,0,25,0,0,0,0,11,185,3,79],[0,0,0,0,11,11,4,59,0,0,0,0,0,188,4,53,0,0,0,1,10,160,0,57,0,0,0,0,11,138,0,75],[0,0,16,117,0,0,65,61,0,0,0,0,8,0,0,75,0,0,16,127,0,0,97,61,0,0,0,0,8,4,4,51],[0,0,0,0,8,8,0,75,0,0,1,193,0,0,97,61,0,0,0,0,8,7,4,51,0,0,7,167,8,128,1,151],[0,0,0,248,9,96,2,16,0,0,0,0,8,137,1,159,0,0,7,169,8,128,0,65,0,0,0,0,0,135,4,53],[0,0,0,3,6,96,2,16,0,0,0,248,6,96,0,137,0,0,0,0,5,101,1,207,0,0,0,255,6,96,0,140],[0,0,0,0,5,0,32,25,0,0,0,33,6,64,0,57,0,0,17,95,0,0,1,61,0,0,7,166,1,48,0,156],[0,0,1,89,0,0,33,61,0,0,0,64,1,48,0,57,0,0,0,64,0,16,4,63,0,0,0,1,1,0,0,58],[0,0,0,0,5,19,4,54,0,0,0,0,2,0,0,49,0,0,0,1,1,0,3,103,0,0,0,0,6,33,3,79],[0,0,0,0,6,96,3,80,0,0,0,0,6,6,4,59,0,0,0,0,0,101,4,53,0,0,1,193,0,0,97,61],[0,0,0,248,7,64,2,16,0,0,7,160,8,0,0,65,0,0,0,0,4,4,0,75,0,0,0,0,8,7,192,25],[0,0,7,167,4,96,1,151,0,0,0,0,4,132,1,159,0,0,0,0,0,69,4,53,0,0,0,64,5,0,4,61],[0,0,0,13,4,0,0,41,0,0,1,4,4,64,0,57,0,0,0,0,6,65,3,79,0,0,0,0,6,6,4,59],[0,0,0,128,7,96,0,140,0,0,17,239,0,0,65,61,0,0,0,128,7,96,2,112,0,0,7,168,8,96,0,156],[0,0,0,0,7,6,160,25,0,0,7,168,8,96,0,156,0,0,0,0,8,0,0,25,0,0,0,16,8,0,32,57],[0,0,0,8,9,128,1,191,0,0,7,159,10,112,0,156,0,0,0,0,9,8,160,25,0,0,0,64,8,112,2,112],[0,0,7,159,10,112,0,156,0,0,0,0,8,7,160,25,0,0,0,4,10,144,1,191,0,0,7,155,7,128,0,156],[0,0,0,0,10,9,160,25,0,0,0,32,9,128,2,112,0,0,7,155,7,128,0,156,0,0,0,0,9,8,160,25],[0,0,0,2,7,160,1,191,0,0,255,255,8,144,0,140,0,0,0,0,7,10,160,25,0,0,0,16,8,144,2,112],[0,0,0,0,8,9,160,25,0,0,0,255,8,128,0,140,0,0,0,1,7,112,32,57,0,0,0,32,8,0,0,138],[0,0,0,65,9,112,0,57,0,0,0,0,8,137,1,111,0,0,0,0,8,133,0,25,0,0,0,0,9,88,0,75],[0,0,0,0,9,0,0,25,0,0,0,1,9,0,64,57,0,0,7,159,10,128,0,156,0,0,1,89,0,0,33,61],[0,0,0,1,9,144,1,144,0,0,1,89,0,0,193,61,0,0,0,64,0,128,4,63,0,0,0,2,8,112,0,57],[0,0,0,0,8,133,4,54,0,0,0,33,9,112,0,57,0,0,0,5,9,144,2,114,0,0,16,222,0,0,97,61],[0,0,0,0,10,33,3,79,0,0,0,0,11,0,0,25,0,0,0,5,12,176,2,16,0,0,0,0,13,200,0,25],[0,0,0,0,12,202,3,79,0,0,0,0,12,12,4,59,0,0,0,0,0,205,4,53,0,0,0,1,11,176,0,57],[0,0,0,0,12,155,0,75,0,0,16,214,0,0,65,61,0,0,0,0,9,0,0,75,0,0,16,224,0,0,97,61],[0,0,0,0,9,5,4,51,0,0,0,0,9,9,0,75,0,0,1,193,0,0,97,61,0,0,0,0,9,8,4,51],[0,0,7,167,9,144,1,151,0,0,0,248,10,112,2,16,0,0,0,0,9,154,1,159,0,0,7,169,9,144,0,65],[0,0,0,0,0,152,4,53,0,0,0,3,7,112,2,16,0,0,0,248,7,112,0,137,0,0,0,0,6,118,1,207],[0,0,0,255,7,112,0,140,0,0,0,0,6,0,32,25,0,0,0,33,7,80,0,57,0,0,18,0,0,0,1,61],[0,0,7,166,7,80,0,156,0,0,1,89,0,0,33,61,0,0,0,64,7,80,0,57,0,0,0,64,0,112,4,63],[0,0,0,0,8,33,3,79,0,0,0,1,7,0,0,58,0,0,0,0,7,117,4,54,0,0,0,0,8,128,3,80],[0,0,0,0,8,8,4,59,0,0,0,0,0,135,4,53,0,0,1,193,0,0,97,61,0,0,0,248,9,96,2,16],[0,0,7,160,10,0,0,65,0,0,0,0,6,6,0,75,0,0,0,0,10,9,192,25,0,0,7,167,6,128,1,151],[0,0,0,0,6,166,1,159,0,0,0,0,0,103,4,53,0,0,0,64,6,0,4,61,0,0,0,64,4,64,0,138],[0,0,0,0,7,65,3,79,0,0,0,0,7,7,4,59,0,0,0,128,8,112,0,140,0,0,18,77,0,0,65,61],[0,0,0,128,8,112,2,112,0,0,7,168,9,112,0,156,0,0,0,0,8,7,160,25,0,0,7,168,9,112,0,156],[0,0,0,0,9,0,0,25,0,0,0,16,9,0,32,57,0,0,0,8,10,144,1,191,0,0,7,159,11,128,0,156],[0,0,0,0,10,9,160,25,0,0,0,64,9,128,2,112,0,0,7,159,11,128,0,156,0,0,0,0,9,8,160,25],[0,0,0,4,11,160,1,191,0,0,7,155,8,144,0,156,0,0,0,0,11,10,160,25,0,0,0,32,10,144,2,112],[0,0,7,155,8,144,0,156,0,0,0,0,10,9,160,25,0,0,0,2,8,176,1,191,0,0,255,255,9,160,0,140],[0,0,0,0,8,11,160,25,0,0,0,16,9,160,2,112,0,0,0,0,9,10,160,25,0,0,0,255,9,144,0,140],[0,0,0,1,8,128,32,57,0,0,0,32,9,0,0,138,0,0,0,65,10,128,0,57,0,0,0,0,9,154,1,111],[0,0,0,0,9,150,0,25,0,0,0,0,10,105,0,75,0,0,0,0,10,0,0,25,0,0,0,1,10,0,64,57],[0,0,7,159,11,144,0,156,0,0,1,89,0,0,33,61,0,0,0,1,10,160,1,144,0,0,1,89,0,0,193,61],[0,0,0,64,0,144,4,63,0,0,0,2,9,128,0,57,0,0,0,0,9,150,4,54,0,0,0,33,10,128,0,57],[0,0,0,5,10,160,2,114,0,0,17,60,0,0,97,61,0,0,0,0,11,33,3,79,0,0,0,0,12,0,0,25],[0,0,0,5,13,192,2,16,0,0,0,0,14,217,0,25,0,0,0,0,13,219,3,79,0,0,0,0,13,13,4,59],[0,0,0,0,0,222,4,53,0,0,0,1,12,192,0,57,0,0,0,0,13,172,0,75,0,0,17,52,0,0,65,61],[0,0,0,0,10,0,0,75,0,0,17,62,0,0,97,61,0,0,0,0,10,6,4,51,0,0,0,0,10,10,0,75],[0,0,1,193,0,0,97,61,0,0,0,0,10,9,4,51,0,0,7,167,10,160,1,151,0,0,0,248,11,128,2,16],[0,0,0,0,10,171,1,159,0,0,7,169,10,160,0,65,0,0,0,0,0,169,4,53,0,0,0,3,8,128,2,16],[0,0,0,248,8,128,0,137,0,0,0,0,7,135,1,207,0,0,0,255,8,128,0,140,0,0,0,0,7,0,32,25],[0,0,0,33,8,96,0,57,0,0,18,94,0,0,1,61,0,0,7,166,6,64,0,156,0,0,1,89,0,0,33,61],[0,0,0,64,6,64,0,57,0,0,0,64,0,96,4,63,0,0,0,0,7,18,3,79,0,0,0,1,6,0,0,58],[0,0,0,0,6,100,4,54,0,0,0,0,7,112,3,80,0,0,0,0,7,7,4,59,0,0,0,0,0,118,4,53],[0,0,1,193,0,0,97,61,0,0,0,248,8,80,2,16,0,0,7,160,9,0,0,65,0,0,0,0,5,5,0,75],[0,0,0,0,9,8,192,25,0,0,7,167,5,112,1,151,0,0,0,0,5,149,1,159,0,0,0,0,0,86,4,53],[0,0,0,64,5,0,4,61,0,9,0,0,0,5,0,29,0,0,0,32,5,80,0,57,0,0,0,0,6,3,4,51],[0,0,0,0,7,6,0,75,0,0,17,110,0,0,97,61,0,0,0,0,7,0,0,25,0,0,0,0,8,87,0,25],[0,0,0,32,7,112,0,57,0,0,0,0,9,55,0,25,0,0,0,0,9,9,4,51,0,0,0,0,0,152,4,53],[0,0,0,0,8,103,0,75,0,0,17,103,0,0,65,61,0,0,0,0,3,86,0,25,0,0,0,0,0,3,4,53],[0,0,0,0,5,4,4,51,0,0,0,0,6,5,0,75,0,0,17,123,0,0,97,61,0,0,0,0,6,0,0,25],[0,0,0,0,7,54,0,25,0,0,0,32,6,96,0,57,0,0,0,0,8,70,0,25,0,0,0,0,8,8,4,51],[0,0,0,0,0,135,4,53,0,0,0,0,7,86,0,75,0,0,17,116,0,0,65,61,0,0,0,0,3,53,0,25],[0,0,0,0,0,3,4,53,0,0,0,9,5,0,0,41,0,0,0,0,3,83,0,73,0,0,0,32,4,48,0,138],[0,0,0,0,0,69,4,53,0,0,0,31,3,48,0,57,0,7,0,32,0,0,0,146,0,0,0,7,3,48,1,127],[0,0,0,0,4,83,0,25,0,0,0,0,3,52,0,75,0,0,0,0,3,0,0,25,0,0,0,1,3,0,64,57],[0,8,0,0,0,4,0,29,0,0,7,159,4,64,0,156,0,0,1,89,0,0,33,61,0,0,0,1,3,48,1,144],[0,0,1,89,0,0,193,61,0,0,0,8,3,0,0,41,0,0,0,64,0,48,4,63,0,0,7,166,3,48,0,156],[0,0,1,89,0,0,33,61,0,0,0,13,6,0,0,41,0,0,0,68,3,96,0,57,0,0,0,0,3,50,3,79],[0,0,0,0,3,3,4,59,0,0,0,8,7,0,0,41,0,0,0,64,4,112,0,57,0,0,0,64,0,64,4,63],[0,0,0,32,4,112,0,57,0,0,7,170,5,0,0,65,0,0,0,0,0,84,4,53,0,0,0,21,4,0,0,57],[0,0,0,0,0,71,4,53,0,0,0,96,3,48,2,16,0,0,0,33,4,112,0,57,0,0,0,0,0,52,4,53],[0,0,1,36,3,96,0,57,0,0,0,0,4,50,3,79,0,0,0,64,5,0,4,61,0,6,0,0,0,5,0,29],[0,0,0,0,4,4,4,59,0,0,0,128,5,64,0,140,0,0,19,9,0,0,65,61,0,0,0,128,5,64,2,112],[0,0,7,168,6,64,0,156,0,0,0,0,5,4,160,25,0,0,7,168,6,64,0,156,0,0,0,0,6,0,0,25],[0,0,0,16,6,0,32,57,0,0,0,8,7,96,1,191,0,0,7,159,8,80,0,156,0,0,0,0,7,6,160,25],[0,0,0,64,6,80,2,112,0,0,7,159,8,80,0,156,0,0,0,0,6,5,160,25,0,0,0,4,8,112,1,191],[0,0,7,155,5,96,0,156,0,0,0,0,8,7,160,25,0,0,0,32,7,96,2,112,0,0,7,155,5,96,0,156],[0,0,0,0,7,6,160,25,0,0,0,2,5,128,1,191,0,0,255,255,6,112,0,140,0,0,0,0,5,8,160,25],[0,0,0,16,6,112,2,112,0,0,0,0,6,7,160,25,0,0,0,255,6,96,0,140,0,0,0,1,5,80,32,57],[0,0,0,65,6,80,0,57,0,0,0,7,6,96,1,127,0,0,0,6,6,96,0,41,0,0,0,6,7,96,0,108],[0,0,0,0,7,0,0,25,0,0,0,1,7,0,64,57,0,0,7,159,8,96,0,156,0,0,1,89,0,0,33,61],[0,0,0,1,7,112,1,144,0,0,1,89,0,0,193,61,0,0,0,64,0,96,4,63,0,0,0,2,6,80,0,57],[0,0,0,6,7,0,0,41,0,0,0,0,6,103,4,54,0,0,0,33,7,80,0,57,0,0,0,5,7,112,2,114],[0,0,17,219,0,0,97,61,0,0,0,0,8,18,3,79,0,0,0,0,9,0,0,25,0,0,0,5,10,144,2,16],[0,0,0,0,11,166,0,25,0,0,0,0,10,168,3,79,0,0,0,0,10,10,4,59,0,0,0,0,0,171,4,53],[0,0,0,1,9,144,0,57,0,0,0,0,10,121,0,75,0,0,17,211,0,0,65,61,0,0,0,0,7,0,0,75],[0,0,17,221,0,0,97,61,0,0,0,6,7,0,0,41,0,0,0,0,7,7,4,51,0,0,0,0,7,7,0,75],[0,0,1,193,0,0,97,61,0,0,0,0,7,6,4,51,0,0,7,167,7,112,1,151,0,0,0,248,8,80,2,16],[0,0,0,0,7,120,1,159,0,0,7,169,7,112,0,65,0,0,0,0,0,118,4,53,0,0,0,3,5,80,2,16],[0,0,0,248,5,80,0,137,0,0,0,0,4,84,1,207,0,0,0,255,5,80,0,140,0,0,0,0,4,0,32,25],[0,0,0,6,5,0,0,41,0,0,0,33,5,80,0,57,0,0,19,28,0,0,1,61,0,0,7,166,7,80,0,156],[0,0,1,89,0,0,33,61,0,0,0,64,7,80,0,57,0,0,0,64,0,112,4,63,0,0,0,0,8,33,3,79],[0,0,0,1,7,0,0,58,0,0,0,0,7,117,4,54,0,0,0,0,8,128,3,80,0,0,0,0,8,8,4,59],[0,0,0,0,0,135,4,53,0,0,1,193,0,0,97,61,0,0,0,248,9,96,2,16,0,0,7,160,10,0,0,65],[0,0,0,0,6,6,0,75,0,0,0,0,10,9,192,25,0,0,7,167,6,128,1,151,0,0,0,0,6,166,1,159],[0,0,0,0,0,103,4,53,0,0,0,64,6,0,4,61,0,0,0,96,4,64,0,138,0,0,0,0,7,65,3,79],[0,0,0,0,7,7,4,59,0,0,0,128,8,112,0,140,0,0,18,171,0,0,65,61,0,0,0,128,8,112,2,112],[0,0,7,168,9,112,0,156,0,0,0,0,8,7,160,25,0,0,7,168,9,112,0,156,0,0,0,0,9,0,0,25],[0,0,0,16,9,0,32,57,0,0,0,8,10,144,1,191,0,0,7,159,11,128,0,156,0,0,0,0,10,9,160,25],[0,0,0,64,9,128,2,112,0,0,7,159,11,128,0,156,0,0,0,0,9,8,160,25,0,0,0,4,11,160,1,191],[0,0,7,155,8,144,0,156,0,0,0,0,11,10,160,25,0,0,0,32,10,144,2,112,0,0,7,155,8,144,0,156],[0,0,0,0,10,9,160,25,0,0,0,2,8,176,1,191,0,0,255,255,9,160,0,140,0,0,0,0,8,11,160,25],[0,0,0,16,9,160,2,112,0,0,0,0,9,10,160,25,0,0,0,255,9,144,0,140,0,0,0,1,8,128,32,57],[0,0,0,32,9,0,0,138,0,0,0,65,10,128,0,57,0,0,0,0,9,154,1,111,0,0,0,0,9,150,0,25],[0,0,0,0,10,105,0,75,0,0,0,0,10,0,0,25,0,0,0,1,10,0,64,57,0,0,7,159,11,144,0,156],[0,0,1,89,0,0,33,61,0,0,0,1,10,160,1,144,0,0,1,89,0,0,193,61,0,0,0,64,0,144,4,63],[0,0,0,2,9,128,0,57,0,0,0,0,9,150,4,54,0,0,0,33,10,128,0,57,0,0,0,5,10,160,2,114],[0,0,18,59,0,0,97,61,0,0,0,0,11,33,3,79,0,0,0,0,12,0,0,25,0,0,0,5,13,192,2,16],[0,0,0,0,14,217,0,25,0,0,0,0,13,219,3,79,0,0,0,0,13,13,4,59,0,0,0,0,0,222,4,53],[0,0,0,1,12,192,0,57,0,0,0,0,13,172,0,75,0,0,18,51,0,0,65,61,0,0,0,0,10,0,0,75],[0,0,18,61,0,0,97,61,0,0,0,0,10,6,4,51,0,0,0,0,10,10,0,75,0,0,1,193,0,0,97,61],[0,0,0,0,10,9,4,51,0,0,7,167,10,160,1,151,0,0,0,248,11,128,2,16,0,0,0,0,10,171,1,159],[0,0,7,169,10,160,0,65,0,0,0,0,0,169,4,53,0,0,0,3,8,128,2,16,0,0,0,248,8,128,0,137],[0,0,0,0,7,135,1,207,0,0,0,255,8,128,0,140,0,0,0,0,7,0,32,25,0,0,0,33,8,96,0,57],[0,0,18,188,0,0,1,61,0,0,7,166,8,96,0,156,0,0,1,89,0,0,33,61,0,0,0,64,8,96,0,57],[0,0,0,64,0,128,4,63,0,0,0,0,9,33,3,79,0,0,0,1,8,0,0,58,0,0,0,0,8,134,4,54],[0,0,0,0,9,144,3,80,0,0,0,0,9,9,4,59,0,0,0,0,0,152,4,53,0,0,1,193,0,0,97,61],[0,0,0,248,10,112,2,16,0,0,7,160,11,0,0,65,0,0,0,0,7,7,0,75,0,0,0,0,11,10,192,25],[0,0,7,167,7,144,1,151,0,0,0,0,7,183,1,159,0,0,0,0,0,120,4,53,0,0,0,64,7,0,4,61],[0,0,0,32,4,64,0,138,0,0,0,0,8,65,3,79,0,0,0,0,8,8,4,59,0,0,0,128,9,128,0,140],[0,0,19,99,0,0,65,61,0,0,0,128,9,128,2,112,0,0,7,168,10,128,0,156,0,0,0,0,9,8,160,25],[0,0,7,168,10,128,0,156,0,0,0,0,10,0,0,25,0,0,0,16,10,0,32,57,0,0,0,8,11,160,1,191],[0,0,7,159,12,144,0,156,0,0,0,0,11,10,160,25,0,0,0,64,10,144,2,112,0,0,7,159,12,144,0,156],[0,0,0,0,10,9,160,25,0,0,0,4,12,176,1,191,0,0,7,155,9,160,0,156,0,0,0,0,12,11,160,25],[0,0,0,32,11,160,2,112,0,0,7,155,9,160,0,156,0,0,0,0,11,10,160,25,0,0,0,2,9,192,1,191],[0,0,255,255,10,176,0,140,0,0,0,0,9,12,160,25,0,0,0,16,10,176,2,112,0,0,0,0,10,11,160,25],[0,0,0,255,10,160,0,140,0,0,0,1,9,144,32,57,0,0,0,32,10,0,0,138,0,0,0,65,11,144,0,57],[0,0,0,0,10,171,1,111,0,0,0,0,10,167,0,25,0,0,0,0,11,122,0,75,0,0,0,0,11,0,0,25],[0,0,0,1,11,0,64,57,0,0,7,159,12,160,0,156,0,0,1,89,0,0,33,61,0,0,0,1,11,176,1,144],[0,0,1,89,0,0,193,61,0,0,0,64,0,160,4,63,0,0,0,2,10,144,0,57,0,0,0,0,10,167,4,54],[0,0,0,33,11,144,0,57,0,0,0,5,11,176,2,114,0,0,18,153,0,0,97,61,0,0,0,0,12,33,3,79],[0,0,0,0,13,0,0,25,0,0,0,5,14,208,2,16,0,0,0,0,15,234,0,25,0,0,0,0,14,236,3,79],[0,0,0,0,14,14,4,59,0,0,0,0,0,239,4,53,0,0,0,1,13,208,0,57,0,0,0,0,14,189,0,75],[0,0,18,145,0,0,65,61,0,0,0,0,11,0,0,75,0,0,18,155,0,0,97,61,0,0,0,0,11,7,4,51],[0,0,0,0,11,11,0,75,0,0,1,193,0,0,97,61,0,0,0,0,11,10,4,51,0,0,7,167,11,176,1,151],[0,0,0,248,12,144,2,16,0,0,0,0,11,188,1,159,0,0,7,169,11,176,0,65,0,0,0,0,0,186,4,53],[0,0,0,3,9,144,2,16,0,0,0,248,9,144,0,137,0,0,0,0,8,152,1,207,0,0,0,255,9,144,0,140],[0,0,0,0,8,0,32,25,0,0,0,33,9,112,0,57,0,0,19,116,0,0,1,61,0,0,7,166,8,96,0,156],[0,0,1,89,0,0,33,61,0,0,0,64,8,96,0,57,0,0,0,64,0,128,4,63,0,0,0,0,9,33,3,79],[0,0,0,1,8,0,0,58,0,0,0,0,8,134,4,54,0,0,0,0,9,144,3,80,0,0,0,0,9,9,4,59],[0,0,0,0,0,152,4,53,0,0,1,193,0,0,97,61,0,0,0,248,10,112,2,16,0,0,7,160,11,0,0,65],[0,0,0,0,7,7,0,75,0,0,0,0,11,10,192,25,0,0,7,167,7,144,1,151,0,0,0,0,7,183,1,159],[0,0,0,0,0,120,4,53,0,0,0,64,7,0,4,61,0,0,0,64,4,64,0,138,0,0,0,0,8,65,3,79],[0,0,0,0,8,8,4,59,0,0,0,128,9,128,0,140,0,0,19,194,0,0,65,61,0,0,0,128,9,128,2,112],[0,0,7,168,10,128,0,156,0,0,0,0,9,8,160,25,0,0,7,168,10,128,0,156,0,0,0,0,10,0,0,25],[0,0,0,16,10,0,32,57,0,0,0,8,11,160,1,191,0,0,7,159,12,144,0,156,0,0,0,0,11,10,160,25],[0,0,0,64,10,144,2,112,0,0,7,159,12,144,0,156,0,0,0,0,10,9,160,25,0,0,0,4,12,176,1,191],[0,0,7,155,9,160,0,156,0,0,0,0,12,11,160,25,0,0,0,32,11,160,2,112,0,0,7,155,9,160,0,156],[0,0,0,0,11,10,160,25,0,0,0,2,9,192,1,191,0,0,255,255,10,176,0,140,0,0,0,0,9,12,160,25],[0,0,0,16,10,176,2,112,0,0,0,0,10,11,160,25,0,0,0,255,10,160,0,140,0,0,0,1,9,144,32,57],[0,0,0,32,10,0,0,138,0,0,0,65,11,144,0,57,0,0,0,0,10,171,1,111,0,0,0,0,10,167,0,25],[0,0,0,0,11,122,0,75,0,0,0,0,11,0,0,25,0,0,0,1,11,0,64,57,0,0,7,159,12,160,0,156],[0,0,1,89,0,0,33,61,0,0,0,1,11,176,1,144,0,0,1,89,0,0,193,61,0,0,0,64,0,160,4,63],[0,0,0,2,10,144,0,57,0,0,0,0,10,167,4,54,0,0,0,33,11,144,0,57,0,0,0,5,11,176,2,114],[0,0,18,247,0,0,97,61,0,0,0,0,12,33,3,79,0,0,0,0,13,0,0,25,0,0,0,5,14,208,2,16],[0,0,0,0,15,234,0,25,0,0,0,0,14,236,3,79,0,0,0,0,14,14,4,59,0,0,0,0,0,239,4,53],[0,0,0,1,13,208,0,57,0,0,0,0,14,189,0,75,0,0,18,239,0,0,65,61,0,0,0,0,11,0,0,75],[0,0,18,249,0,0,97,61,0,0,0,0,11,7,4,51,0,0,0,0,11,11,0,75,0,0,1,193,0,0,97,61],[0,0,0,0,11,10,4,51,0,0,7,167,11,176,1,151,0,0,0,248,12,144,2,16,0,0,0,0,11,188,1,159],[0,0,7,169,11,176,0,65,0,0,0,0,0,186,4,53,0,0,0,3,9,144,2,16,0,0,0,248,9,144,0,137],[0,0,0,0,8,152,1,207,0,0,0,255,9,144,0,140,0,0,0,0,8,0,32,25,0,0,0,33,9,112,0,57],[0,0,19,211,0,0,1,61,0,0,0,6,5,0,0,41,0,0,7,166,5,80,0,156,0,0,1,89,0,0,33,61],[0,0,0,6,7,0,0,41,0,0,0,64,5,112,0,57,0,0,0,64,0,80,4,63,0,0,0,0,6,18,3,79],[0,0,0,1,5,0,0,58,0,0,0,0,5,87,4,54,0,0,0,0,6,96,3,80,0,0,0,0,6,6,4,59],[0,0,0,0,0,101,4,53,0,0,1,193,0,0,97,61,0,0,0,248,7,64,2,16,0,0,7,160,8,0,0,65],[0,0,0,0,4,4,0,75,0,0,0,0,8,7,192,25,0,0,7,167,4,96,1,151,0,0,0,0,4,132,1,159],[0,0,0,0,0,69,4,53,0,0,0,12,10,0,0,41,0,0,0,0,6,161,0,73,0,0,0,160,4,48,0,57],[0,0,0,0,3,66,3,79,0,0,0,0,5,3,4,59,0,0,0,31,3,96,0,138,0,0,7,160,6,48,1,151],[0,0,7,160,7,80,1,151,0,0,7,160,8,0,0,65,0,0,0,0,9,103,0,75,0,0,0,0,9,0,0,25],[0,0,0,0,9,8,64,25,0,0,0,0,6,103,1,63,0,0,0,0,7,53,0,75,0,0,0,0,8,0,64,25],[0,0,7,160,6,96,0,156,0,0,0,0,9,8,192,25,0,0,0,0,6,9,0,75,0,0,0,159,0,0,193,61],[0,0,0,0,6,165,0,25,0,0,0,0,5,98,3,79,0,0,0,0,5,5,4,59,0,0,7,159,7,80,0,156],[0,0,0,159,0,0,33,61,0,0,0,0,7,81,0,73,0,0,0,32,6,96,0,57,0,0,7,160,8,0,0,65],[0,0,0,0,9,118,0,75,0,0,0,0,9,0,0,25,0,0,0,0,9,8,32,25,0,0,7,160,7,112,1,151],[0,0,7,160,10,96,1,151,0,0,0,0,11,122,0,75,0,0,0,0,8,0,128,25,0,0,0,0,7,122,1,63],[0,0,7,160,7,112,0,156,0,0,0,0,8,9,192,25,0,0,0,0,7,8,0,75,0,0,0,159,0,0,193,61],[0,0,0,1,7,80,0,140,0,0,21,96,0,0,193,61,0,0,0,0,5,98,3,79,0,0,0,0,5,5,4,59],[0,0,0,1,6,0,0,138,0,0,7,160,7,0,0,65,0,0,0,0,6,101,0,75,0,0,0,0,6,0,0,25],[0,0,0,0,6,7,32,25,0,0,7,160,5,80,1,151,0,0,7,160,8,80,0,156,0,0,0,0,7,0,128,25],[0,0,7,160,5,80,1,103,0,0,7,160,5,80,0,156,0,0,0,0,7,6,192,25,0,5,0,96,0,0,0,61],[0,0,0,0,5,7,0,75,0,0,22,99,0,0,193,61,0,0,0,64,5,0,4,61,0,5,0,0,0,5,0,29],[0,0,7,166,5,80,0,156,0,0,1,89,0,0,33,61,0,0,0,5,7,0,0,41,0,0,0,64,5,112,0,57],[0,0,0,64,0,80,4,63,0,0,0,32,5,112,0,57,0,0,7,169,6,0,0,65,0,0,0,0,0,101,4,53],[0,0,0,1,5,0,0,57,0,0,0,0,0,87,4,53,0,0,22,99,0,0,1,61,0,0,7,166,9,112,0,156],[0,0,1,89,0,0,33,61,0,0,0,64,9,112,0,57,0,0,0,64,0,144,4,63,0,0,0,0,10,33,3,79],[0,0,0,1,9,0,0,58,0,0,0,0,9,151,4,54,0,0,0,0,10,160,3,80,0,0,0,0,10,10,4,59],[0,0,0,0,0,169,4,53,0,0,1,193,0,0,97,61,0,0,0,248,11,128,2,16,0,0,7,160,12,0,0,65],[0,0,0,0,8,8,0,75,0,0,0,0,12,11,192,25,0,0,7,167,8,160,1,151,0,0,0,0,8,200,1,159],[0,0,0,0,0,137,4,53,0,0,0,64,8,0,4,61,0,9,0,64,0,64,0,146,0,0,0,9,9,16,3,96],[0,0,0,0,9,9,4,59,0,0,0,128,10,144,0,140,0,0,20,51,0,0,65,61,0,0,0,128,10,144,2,112],[0,0,7,168,11,144,0,156,0,0,0,0,10,9,160,25,0,0,7,168,11,144,0,156,0,0,0,0,11,0,0,25],[0,0,0,16,11,0,32,57,0,0,0,8,12,176,1,191,0,0,7,159,13,160,0,156,0,0,0,0,12,11,160,25],[0,0,0,64,11,160,2,112,0,0,7,159,13,160,0,156,0,0,0,0,11,10,160,25,0,0,0,4,13,192,1,191],[0,0,7,155,10,176,0,156,0,0,0,0,13,12,160,25,0,0,0,32,12,176,2,112,0,0,7,155,10,176,0,156],[0,0,0,0,12,11,160,25,0,0,0,2,10,208,1,191,0,0,255,255,11,192,0,140,0,0,0,0,10,13,160,25],[0,0,0,16,11,192,2,112,0,0,0,0,11,12,160,25,0,0,0,255,11,176,0,140,0,0,0,1,10,160,32,57],[0,0,0,32,11,0,0,138,0,0,0,65,12,160,0,57,0,0,0,0,11,188,1,111,0,0,0,0,11,184,0,25],[0,0,0,0,12,139,0,75,0,0,0,0,12,0,0,25,0,0,0,1,12,0,64,57,0,0,7,159,13,176,0,156],[0,0,1,89,0,0,33,61,0,0,0,1,12,192,1,144,0,0,1,89,0,0,193,61,0,0,0,64,0,176,4,63],[0,0,0,2,11,160,0,57,0,0,0,0,11,184,4,54,0,0,0,33,12,160,0,57,0,0,0,5,12,192,2,114],[0,0,19,175,0,0,97,61,0,0,0,0,13,33,3,79,0,0,0,0,14,0,0,25,0,0,0,5,15,224,2,16],[0,0,0,0,4,251,0,25,0,0,0,0,15,253,3,79,0,0,0,0,15,15,4,59,0,0,0,0,0,244,4,53],[0,0,0,1,14,224,0,57,0,0,0,0,4,206,0,75,0,0,19,167,0,0,65,61,0,0,0,0,4,0,0,75],[0,0,19,177,0,0,97,61,0,0,0,0,4,8,4,51,0,0,0,0,4,4,0,75,0,0,1,193,0,0,97,61],[0,0,0,0,4,11,4,51,0,0,7,167,4,64,1,151,0,0,0,248,12,160,2,16,0,0,0,0,4,76,1,159],[0,0,7,169,4,64,0,65,0,0,0,0,0,75,4,53,0,0,0,3,4,160,2,16,0,0,0,248,4,64,0,137],[0,0,0,0,9,73,1,207,0,0,0,255,4,64,0,140,0,0,0,0,9,0,32,25,0,0,0,33,4,128,0,57],[0,0,0,0,0,148,4,53,0,0,20,69,0,0,1,61,0,0,7,166,9,112,0,156,0,0,1,89,0,0,33,61],[0,0,0,64,9,112,0,57,0,0,0,64,0,144,4,63,0,0,0,0,10,33,3,79,0,0,0,1,9,0,0,58],[0,0,0,0,9,151,4,54,0,0,0,0,10,160,3,80,0,0,0,0,10,10,4,59,0,0,0,0,0,169,4,53],[0,0,1,193,0,0,97,61,0,0,0,248,11,128,2,16,0,0,7,160,12,0,0,65,0,0,0,0,8,8,0,75],[0,0,0,0,12,11,192,25,0,0,7,167,8,160,1,151,0,0,0,0,8,200,1,159,0,0,0,0,0,137,4,53],[0,0,0,64,9,0,4,61,0,0,7,166,8,144,0,156,0,0,1,89,0,0,33,61,0,0,0,32,8,64,0,138],[0,0,0,0,8,129,3,79,0,0,0,0,8,8,4,59,0,0,0,64,10,144,0,57,0,0,0,64,0,160,4,63],[0,0,0,32,10,144,0,57,0,0,7,170,11,0,0,65,0,0,0,0,0,186,4,53,0,0,0,21,10,0,0,57],[0,0,0,0,0,169,4,53,0,0,0,96,8,128,2,16,0,0,0,33,10,144,0,57,0,0,0,0,0,138,4,53],[0,0,0,192,4,64,0,57,0,0,0,0,4,65,3,79,0,0,0,64,8,0,4,61,0,0,0,0,4,4,4,59],[0,9,0,0,0,4,0,29,0,0,0,128,10,64,0,140,0,0,20,168,0,0,65,61,0,0,0,9,4,0,0,41],[0,0,0,128,10,64,2,112,0,0,7,168,11,64,0,156,0,0,0,0,10,4,160,25,0,0,7,168,11,64,0,156],[0,0,0,0,11,0,0,25,0,0,0,16,11,0,32,57,0,0,0,8,12,176,1,191,0,0,7,159,13,160,0,156],[0,0,0,0,12,11,160,25,0,0,0,64,11,160,2,112,0,0,7,159,13,160,0,156,0,0,0,0,11,10,160,25],[0,0,0,4,13,192,1,191,0,0,7,155,10,176,0,156,0,0,0,0,13,12,160,25,0,0,0,32,12,176,2,112],[0,0,7,155,10,176,0,156,0,0,0,0,12,11,160,25,0,0,0,2,10,208,1,191,0,0,255,255,11,192,0,140],[0,0,0,0,10,13,160,25,0,0,0,16,11,192,2,112,0,0,0,0,11,12,160,25,0,0,0,255,11,176,0,140],[0,0,0,1,10,160,32,57,0,0,0,32,11,0,0,138,0,0,0,65,12,160,0,57,0,0,0,0,11,188,1,111],[0,0,0,0,11,184,0,25,0,0,0,0,12,139,0,75,0,0,0,0,12,0,0,25,0,0,0,1,12,0,64,57],[0,0,7,159,13,176,0,156,0,0,1,89,0,0,33,61,0,0,0,1,12,192,1,144,0,0,1,89,0,0,193,61],[0,0,0,64,0,176,4,63,0,0,0,2,11,160,0,57,0,0,0,0,11,184,4,54,0,0,0,33,12,160,0,57],[0,0,0,5,12,192,2,114,0,0,20,32,0,0,97,61,0,0,0,0,13,33,3,79,0,0,0,0,14,0,0,25],[0,0,0,5,15,224,2,16,0,0,0,0,4,251,0,25,0,0,0,0,15,253,3,79,0,0,0,0,15,15,4,59],[0,0,0,0,0,244,4,53,0,0,0,1,14,224,0,57,0,0,0,0,4,206,0,75,0,0,20,24,0,0,65,61],[0,0,0,0,4,0,0,75,0,0,20,34,0,0,97,61,0,0,0,0,4,8,4,51,0,0,0,0,4,4,0,75],[0,0,1,193,0,0,97,61,0,0,0,0,4,11,4,51,0,0,7,167,4,64,1,151,0,0,0,248,12,160,2,16],[0,0,0,0,4,76,1,159,0,0,7,169,4,64,0,65,0,0,0,0,0,75,4,53,0,0,0,3,4,160,2,16],[0,0,0,248,4,64,0,137,0,0,0,9,10,64,1,239,0,0,0,255,4,64,0,140,0,0,0,0,10,0,32,25],[0,0,0,33,4,128,0,57,0,0,0,0,0,164,4,53,0,0,20,187,0,0,1,61,0,0,7,166,4,128,0,156],[0,0,1,89,0,0,33,61,0,0,0,64,4,128,0,57,0,0,0,64,0,64,4,63,0,0,0,0,4,33,3,79],[0,0,0,1,10,0,0,58,0,0,0,0,10,168,4,54,0,0,0,0,4,64,3,80,0,0,0,0,11,4,4,59],[0,0,0,0,0,186,4,53,0,0,1,193,0,0,97,61,0,0,0,248,4,144,2,16,0,0,7,160,12,0,0,65],[0,0,0,0,9,9,0,75,0,0,0,0,12,4,192,25,0,0,7,167,4,176,1,151,0,0,0,0,4,196,1,159],[0,0,0,0,0,74,4,53,0,0,0,64,10,0,4,61,0,0,7,166,4,160,0,156,0,0,1,89,0,0,33,61],[0,0,0,9,12,0,0,41,0,0,0,32,4,192,0,138,0,0,0,0,4,65,3,79,0,0,0,0,4,4,4,59],[0,0,0,64,9,160,0,57,0,0,0,64,0,144,4,63,0,0,0,32,9,160,0,57,0,0,7,170,11,0,0,65],[0,0,0,0,0,185,4,53,0,0,0,21,9,0,0,57,0,0,0,0,0,154,4,53,0,0,0,96,4,64,2,16],[0,0,0,33,9,160,0,57,0,0,0,0,0,73,4,53,0,0,0,192,4,192,0,57,0,0,0,0,4,65,3,79],[0,0,0,64,9,0,4,61,0,0,0,0,4,4,4,59,0,9,0,0,0,4,0,29,0,0,0,128,11,64,0,140],[0,0,21,140,0,0,65,61,0,0,0,9,4,0,0,41,0,0,0,128,11,64,2,112,0,0,7,168,12,64,0,156],[0,0,0,0,11,4,160,25,0,0,7,168,12,64,0,156,0,0,0,0,12,0,0,25,0,0,0,16,12,0,32,57],[0,0,0,8,13,192,1,191,0,0,7,159,14,176,0,156,0,0,0,0,13,12,160,25,0,0,0,64,12,176,2,112],[0,0,7,159,14,176,0,156,0,0,0,0,12,11,160,25,0,0,0,4,14,208,1,191,0,0,7,155,11,192,0,156],[0,0,0,0,14,13,160,25,0,0,0,32,13,192,2,112,0,0,7,155,11,192,0,156,0,0,0,0,13,12,160,25],[0,0,0,2,4,224,1,191,0,0,255,255,12,208,0,140,0,0,0,0,4,14,160,25,0,0,0,16,12,208,2,112],[0,0,0,0,12,13,160,25,0,0,0,255,12,192,0,140,0,0,0,1,4,64,32,57,0,0,0,32,12,0,0,138],[0,8,0,0,0,4,0,29,0,0,0,65,13,64,0,57,0,0,0,0,12,205,1,111,0,0,0,0,12,201,0,25],[0,0,0,0,13,156,0,75,0,0,0,0,13,0,0,25,0,0,0,1,13,0,64,57,0,0,7,159,14,192,0,156],[0,0,1,89,0,0,33,61,0,0,0,1,13,208,1,144,0,0,1,89,0,0,193,61,0,0,0,64,0,192,4,63],[0,0,0,8,4,0,0,41,0,0,0,2,12,64,0,57,0,0,0,0,12,201,4,54,0,0,0,33,13,64,0,57],[0,0,0,5,13,208,2,114,0,0,20,148,0,0,97,61,0,0,0,0,14,33,3,79,0,0,0,0,15,0,0,25],[0,0,0,5,4,240,2,16,0,0,0,0,11,76,0,25,0,0,0,0,4,78,3,79,0,0,0,0,4,4,4,59],[0,0,0,0,0,75,4,53,0,0,0,1,15,240,0,57,0,0,0,0,4,223,0,75,0,0,20,140,0,0,65,61],[0,0,0,0,4,0,0,75,0,0,20,150,0,0,97,61,0,0,0,0,4,9,4,51,0,0,0,0,4,4,0,75],[0,0,1,193,0,0,97,61,0,0,0,0,4,12,4,51,0,0,7,167,4,64,1,151,0,0,0,8,13,0,0,41],[0,0,0,248,11,208,2,16,0,0,0,0,4,75,1,159,0,0,7,169,4,64,0,65,0,0,0,0,0,76,4,53],[0,0,0,3,4,208,2,16,0,0,0,248,4,64,0,137,0,0,0,9,11,64,1,239,0,0,0,255,4,64,0,140],[0,0,0,0,11,0,32,25,0,0,0,33,4,144,0,57,0,0,0,0,0,180,4,53,0,0,21,159,0,0,1,61],[0,0,7,166,4,128,0,156,0,0,1,89,0,0,33,61,0,0,0,64,4,128,0,57,0,0,0,64,0,64,4,63],[0,0,0,0,4,33,3,79,0,0,0,1,10,0,0,58,0,0,0,0,10,168,4,54,0,0,0,0,4,64,3,80],[0,0,0,0,11,4,4,59,0,0,0,0,0,186,4,53,0,0,1,193,0,0,97,61,0,0,0,9,13,0,0,41],[0,0,0,248,4,208,2,16,0,0,7,160,12,0,0,65,0,0,0,0,13,13,0,75,0,0,0,0,12,4,192,25],[0,0,7,167,4,176,1,151,0,0,0,0,4,196,1,159,0,0,0,0,0,74,4,53,0,0,0,64,4,0,4,61],[0,0,0,32,10,64,0,57,0,0,0,0,11,3,4,51,0,0,0,0,12,11,0,75,0,0,20,200,0,0,97,61],[0,0,0,0,12,0,0,25,0,0,0,0,13,172,0,25,0,0,0,32,12,192,0,57,0,0,0,0,14,60,0,25],[0,0,0,0,14,14,4,51,0,0,0,0,0,237,4,53,0,0,0,0,13,188,0,75,0,0,20,193,0,0,65,61],[0,0,0,0,3,171,0,25,0,0,0,0,0,3,4,53,0,0,0,0,10,5,4,51,0,0,0,0,11,10,0,75],[0,0,20,213,0,0,97,61,0,0,0,0,11,0,0,25,0,0,0,0,12,59,0,25,0,0,0,32,11,176,0,57],[0,0,0,0,13,91,0,25,0,0,0,0,13,13,4,51,0,0,0,0,0,220,4,53,0,0,0,0,12,171,0,75],[0,0,20,206,0,0,65,61,0,0,0,0,3,58,0,25,0,0,0,0,0,3,4,53,0,0,0,0,5,6,4,51],[0,0,0,0,10,5,0,75,0,0,20,226,0,0,97,61,0,0,0,0,10,0,0,25,0,0,0,0,11,58,0,25],[0,0,0,32,10,160,0,57,0,0,0,0,12,106,0,25,0,0,0,0,12,12,4,51,0,0,0,0,0,203,4,53],[0,0,0,0,11,90,0,75,0,0,20,219,0,0,65,61,0,0,0,0,3,53,0,25,0,0,0,0,0,3,4,53],[0,0,0,0,5,7,4,51,0,0,0,0,6,5,0,75,0,0,20,239,0,0,97,61,0,0,0,0,6,0,0,25],[0,0,0,0,10,54,0,25,0,0,0,32,6,96,0,57,0,0,0,0,11,118,0,25,0,0,0,0,11,11,4,51],[0,0,0,0,0,186,4,53,0,0,0,0,10,86,0,75,0,0,20,232,0,0,65,61,0,0,0,0,3,53,0,25],[0,0,0,0,0,3,4,53,0,0,0,0,5,9,4,51,0,0,0,0,6,5,0,75,0,0,20,252,0,0,97,61],[0,0,0,0,6,0,0,25,0,0,0,0,7,54,0,25,0,0,0,32,6,96,0,57,0,0,0,0,10,150,0,25],[0,0,0,0,10,10,4,51,0,0,0,0,0,167,4,53,0,0,0,0,7,86,0,75,0,0,20,245,0,0,65,61],[0,0,0,0,3,53,0,25,0,0,0,0,0,3,4,53,0,0,0,0,5,8,4,51,0,0,0,0,6,5,0,75],[0,0,21,9,0,0,97,61,0,0,0,0,6,0,0,25,0,0,0,0,7,54,0,25,0,0,0,32,6,96,0,57],[0,0,0,0,9,134,0,25,0,0,0,0,9,9,4,51,0,0,0,0,0,151,4,53,0,0,0,0,7,86,0,75],[0,0,21,2,0,0,65,61,0,0,0,0,3,53,0,25,0,0,0,0,0,3,4,53,0,0,0,0,3,67,0,73],[0,0,0,32,5,48,0,138,0,0,0,0,0,84,4,53,0,0,0,31,5,48,0,57,0,0,0,32,3,0,0,138],[0,0,0,0,5,53,1,111,0,0,0,0,7,69,0,25,0,0,0,0,5,87,0,75,0,0,0,0,5,0,0,25],[0,0,0,1,5,0,64,57,0,0,7,159,6,112,0,156,0,0,1,89,0,0,33,61,0,0,0,1,5,80,1,144],[0,0,1,89,0,0,193,61,0,0,0,64,0,112,4,63,0,0,0,12,13,0,0,41,0,0,0,0,6,210,0,73],[0,0,0,13,5,0,0,41,0,0,1,196,12,80,0,57,0,0,0,0,5,193,3,79,0,0,0,0,5,5,4,59],[0,0,0,31,9,96,0,138,0,0,7,160,6,144,1,151,0,0,7,160,8,80,1,151,0,0,7,160,10,0,0,65],[0,0,0,0,11,104,0,75,0,0,0,0,11,0,0,25,0,0,0,0,11,10,64,25,0,0,0,0,6,104,1,63],[0,0,0,0,8,149,0,75,0,0,0,0,10,0,64,25,0,0,7,160,6,96,0,156,0,0,0,0,11,10,192,25],[0,0,0,0,6,11,0,75,0,0,0,159,0,0,193,61,0,0,0,0,6,213,0,25,0,0,0,0,5,97,3,79],[0,0,0,0,5,5,4,59,0,0,7,159,8,80,0,156,0,0,0,159,0,0,33,61,0,0,0,0,8,82,0,73],[0,0,0,32,6,96,0,57,0,0,7,160,10,0,0,65,0,0,0,0,11,134,0,75,0,0,0,0,11,0,0,25],[0,0,0,0,11,10,32,25,0,0,7,160,8,128,1,151,0,13,0,0,0,6,0,29,0,0,7,160,13,96,1,151],[0,0,0,0,14,141,0,75,0,0,0,0,10,0,128,25,0,0,0,0,8,141,1,63,0,0,7,160,8,128,0,156],[0,0,0,0,10,11,192,25,0,0,0,0,8,10,0,75,0,0,0,159,0,0,193,61,0,0,0,1,8,80,0,140],[0,0,23,61,0,0,193,61,0,0,0,13,8,16,3,96,0,0,0,0,8,8,4,59,0,0,0,1,10,0,0,138],[0,0,7,160,11,0,0,65,0,0,0,0,10,168,0,75,0,0,0,0,10,0,0,25,0,0,0,0,10,11,32,25],[0,0,7,160,8,128,1,151,0,0,7,160,13,128,0,156,0,0,0,0,11,0,128,25,0,0,7,160,8,128,1,103],[0,0,7,160,8,128,0,156,0,0,0,0,11,10,192,25,0,0,0,96,8,0,0,57,0,0,0,0,10,11,0,75],[0,0,23,158,0,0,193,61,0,0,7,166,8,112,0,156,0,0,1,89,0,0,33,61,0,0,0,64,8,112,0,57],[0,0,0,64,0,128,4,63,0,0,0,32,8,112,0,57,0,0,7,169,10,0,0,65,0,0,0,0,0,168,4,53],[0,0,0,1,8,0,0,57,0,0,0,0,0,135,4,53,0,0,0,0,8,7,0,25,0,0,23,158,0,0,1,61],[0,0,0,64,6,0,4,61,0,5,0,0,0,6,0,29,0,0,0,56,6,80,0,140,0,0,22,81,0,0,65,61],[0,0,0,32,7,80,2,112,0,0,7,155,6,80,0,156,0,0,0,0,7,5,160,25,0,0,7,155,6,80,0,156],[0,0,0,0,8,0,0,25,0,0,0,4,8,0,32,57,0,0,0,2,6,128,1,191,0,0,255,255,9,112,0,140],[0,0,0,0,6,8,160,25,0,0,0,16,8,112,2,112,0,0,0,0,8,7,160,25,0,0,0,255,7,128,0,140],[0,0,0,0,7,0,0,25,0,0,0,1,7,0,32,57,0,0,0,5,8,0,0,41,0,0,7,166,8,128,0,156],[0,0,1,89,0,0,33,61,0,0,0,0,6,118,1,159,0,0,0,5,9,0,0,41,0,0,0,64,7,144,0,57],[0,0,0,64,0,112,4,63,0,0,0,0,8,18,3,79,0,0,0,2,7,96,0,58,0,0,0,0,7,121,4,54],[0,0,0,0,8,128,3,80,0,0,0,0,8,8,4,59,0,0,0,0,0,135,4,53,0,0,1,193,0,0,97,61],[0,0,7,167,8,128,1,151,0,0,0,248,9,96,2,16,0,0,0,0,8,137,1,159,0,0,7,171,8,128,1,199],[0,0,0,0,0,135,4,53,0,0,0,3,6,96,2,16,0,0,0,248,6,96,1,95,0,0,0,0,5,101,1,207],[0,0,0,5,6,0,0,41,0,0,0,33,6,96,0,57,0,0,0,0,0,86,4,53,0,0,22,99,0,0,1,61],[0,0,7,166,4,144,0,156,0,0,1,89,0,0,33,61,0,0,0,64,4,144,0,57,0,0,0,64,0,64,4,63],[0,0,0,0,4,33,3,79,0,0,0,1,11,0,0,58,0,0,0,0,11,185,4,54,0,0,0,0,4,64,3,80],[0,0,0,0,12,4,4,59,0,0,0,0,0,203,4,53,0,0,1,193,0,0,97,61,0,0,0,9,14,0,0,41],[0,0,0,248,4,224,2,16,0,0,7,160,13,0,0,65,0,0,0,0,14,14,0,75,0,0,0,0,13,4,192,25],[0,0,7,167,4,192,1,151,0,0,0,0,4,212,1,159,0,0,0,0,0,75,4,53,0,0,0,64,4,0,4,61],[0,0,0,32,11,64,0,57,0,0,0,0,12,3,4,51,0,0,0,0,13,12,0,75,0,0,21,172,0,0,97,61],[0,0,0,0,13,0,0,25,0,0,0,0,14,189,0,25,0,0,0,32,13,208,0,57,0,0,0,0,15,61,0,25],[0,0,0,0,15,15,4,51,0,0,0,0,0,254,4,53,0,0,0,0,14,205,0,75,0,0,21,165,0,0,65,61],[0,0,0,0,3,188,0,25,0,0,0,0,0,3,4,53,0,0,0,0,11,5,4,51,0,0,0,0,12,11,0,75],[0,0,21,185,0,0,97,61,0,0,0,0,12,0,0,25,0,0,0,0,13,60,0,25,0,0,0,32,12,192,0,57],[0,0,0,0,14,92,0,25,0,0,0,0,14,14,4,51,0,0,0,0,0,237,4,53,0,0,0,0,13,188,0,75],[0,0,21,178,0,0,65,61,0,0,0,0,3,59,0,25,0,0,0,0,0,3,4,53,0,0,0,0,5,6,4,51],[0,0,0,0,11,5,0,75,0,0,21,198,0,0,97,61,0,0,0,0,11,0,0,25,0,0,0,0,12,59,0,25],[0,0,0,32,11,176,0,57,0,0,0,0,13,107,0,25,0,0,0,0,13,13,4,51,0,0,0,0,0,220,4,53],[0,0,0,0,12,91,0,75,0,0,21,191,0,0,65,61,0,0,0,0,3,53,0,25,0,0,0,0,0,3,4,53],[0,0,0,0,5,7,4,51,0,0,0,0,6,5,0,75,0,0,21,211,0,0,97,61,0,0,0,0,6,0,0,25],[0,0,0,0,11,54,0,25,0,0,0,32,6,96,0,57,0,0,0,0,12,118,0,25,0,0,0,0,12,12,4,51],[0,0,0,0,0,203,4,53,0,0,0,0,11,86,0,75,0,0,21,204,0,0,65,61,0,0,0,0,3,53,0,25],[0,0,0,0,0,3,4,53,0,0,0,0,5,8,4,51,0,0,0,0,6,5,0,75,0,0,21,224,0,0,97,61],[0,0,0,0,6,0,0,25,0,0,0,0,7,54,0,25,0,0,0,32,6,96,0,57,0,0,0,0,11,134,0,25],[0,0,0,0,11,11,4,51,0,0,0,0,0,183,4,53,0,0,0,0,7,86,0,75,0,0,21,217,0,0,65,61],[0,0,0,0,3,53,0,25,0,0,0,0,0,3,4,53,0,0,0,0,5,10,4,51,0,0,0,0,6,5,0,75],[0,0,21,237,0,0,97,61,0,0,0,0,6,0,0,25,0,0,0,0,7,54,0,25,0,0,0,32,6,96,0,57],[0,0,0,0,8,166,0,25,0,0,0,0,8,8,4,51,0,0,0,0,0,135,4,53,0,0,0,0,7,86,0,75],[0,0,21,230,0,0,65,61,0,0,0,0,3,53,0,25,0,0,0,0,0,3,4,53,0,0,0,0,5,9,4,51],[0,0,0,0,6,5,0,75,0,0,21,250,0,0,97,61,0,0,0,0,6,0,0,25,0,0,0,0,7,54,0,25],[0,0,0,32,6,96,0,57,0,0,0,0,8,150,0,25,0,0,0,0,8,8,4,51,0,0,0,0,0,135,4,53],[0,0,0,0,7,86,0,75,0,0,21,243,0,0,65,61,0,0,0,0,3,53,0,25,0,0,0,0,0,3,4,53],[0,0,0,0,3,67,0,73,0,0,0,32,5,48,0,138,0,0,0,0,0,84,4,53,0,0,0,31,5,48,0,57],[0,0,0,32,3,0,0,138,0,0,0,0,5,53,1,111,0,0,0,0,7,69,0,25,0,0,0,0,5,87,0,75],[0,0,0,0,5,0,0,25,0,0,0,1,5,0,64,57,0,0,7,159,6,112,0,156,0,0,1,89,0,0,33,61],[0,0,0,1,5,80,1,144,0,0,1,89,0,0,193,61,0,0,0,64,0,112,4,63,0,0,0,12,13,0,0,41],[0,0,0,0,6,210,0,73,0,0,0,13,5,0,0,41,0,0,1,196,12,80,0,57,0,0,0,0,5,193,3,79],[0,0,0,0,5,5,4,59,0,0,0,31,9,96,0,138,0,0,7,160,6,144,1,151,0,0,7,160,8,80,1,151],[0,0,7,160,10,0,0,65,0,0,0,0,11,104,0,75,0,0,0,0,11,0,0,25,0,0,0,0,11,10,64,25],[0,0,0,0,6,104,1,63,0,0,0,0,8,149,0,75,0,0,0,0,10,0,64,25,0,0,7,160,6,96,0,156],[0,0,0,0,11,10,192,25,0,0,0,0,6,11,0,75,0,0,0,159,0,0,193,61,0,0,0,0,6,213,0,25],[0,0,0,0,5,97,3,79,0,0,0,0,5,5,4,59,0,0,7,159,8,80,0,156,0,0,0,159,0,0,33,61],[0,0,0,0,8,82,0,73,0,0,0,32,6,96,0,57,0,0,7,160,10,0,0,65,0,0,0,0,11,134,0,75],[0,0,0,0,11,0,0,25,0,0,0,0,11,10,32,25,0,0,7,160,8,128,1,151,0,13,0,0,0,6,0,29],[0,0,7,160,13,96,1,151,0,0,0,0,14,141,0,75,0,0,0,0,10,0,128,25,0,0,0,0,8,141,1,63],[0,0,7,160,8,128,0,156,0,0,0,0,10,11,192,25,0,0,0,0,8,10,0,75,0,0,0,159,0,0,193,61],[0,0,0,1,8,80,0,140,0,0,23,101,0,0,193,61,0,0,0,13,8,16,3,96,0,0,0,0,8,8,4,59],[0,0,0,1,10,0,0,138,0,0,7,160,11,0,0,65,0,0,0,0,10,168,0,75,0,0,0,0,10,0,0,25],[0,0,0,0,10,11,32,25,0,0,7,160,8,128,1,151,0,0,7,160,13,128,0,156,0,0,0,0,11,0,128,25],[0,0,7,160,8,128,1,103,0,0,7,160,8,128,0,156,0,0,0,0,11,10,192,25,0,0,0,96,8,0,0,57],[0,0,0,0,10,11,0,75,0,0,24,125,0,0,193,61,0,0,7,166,8,112,0,156,0,0,1,89,0,0,33,61],[0,0,0,64,8,112,0,57,0,0,0,64,0,128,4,63,0,0,0,32,8,112,0,57,0,0,7,169,10,0,0,65],[0,0,0,0,0,168,4,53,0,0,0,1,8,0,0,57,0,0,0,0,0,135,4,53,0,0,0,0,8,7,0,25],[0,0,24,125,0,0,1,61,0,0,0,5,6,0,0,41,0,0,7,166,6,96,0,156,0,0,1,89,0,0,33,61],[0,0,0,5,8,0,0,41,0,0,0,64,6,128,0,57,0,0,0,64,0,96,4,63,0,0,0,0,7,18,3,79],[0,0,0,1,6,0,0,58,0,0,0,0,6,104,4,54,0,0,0,0,7,112,3,80,0,0,0,0,7,7,4,59],[0,0,0,0,0,118,4,53,0,0,1,193,0,0,97,61,0,0,0,248,5,80,2,16,0,0,7,167,7,112,1,151],[0,0,0,0,5,87,1,159,0,0,7,160,5,80,1,103,0,0,0,0,0,86,4,53,0,0,0,32,4,64,0,57],[0,0,0,0,4,66,3,79,0,0,0,0,4,4,4,59,0,0,7,160,5,0,0,65,0,0,0,0,6,52,0,75],[0,0,0,0,6,0,0,25,0,0,0,0,6,5,128,25,0,0,7,160,3,48,1,151,0,0,7,160,7,64,1,151],[0,0,0,0,8,55,0,75,0,0,0,0,5,0,128,25,0,0,0,0,3,55,1,63,0,0,7,160,3,48,0,156],[0,0,0,0,5,6,192,25,0,0,0,0,3,5,0,75,0,0,0,12,3,0,0,41,0,0,0,159,0,0,193,61],[0,0,0,0,4,52,0,25,0,0,0,0,3,66,3,79,0,0,0,0,3,3,4,59,0,0,7,159,5,48,0,156],[0,0,0,159,0,0,33,61,0,0,0,32,5,48,0,140,0,0,0,159,0,0,65,61,0,0,0,0,5,49,0,73],[0,0,0,32,4,64,0,57,0,0,7,160,6,0,0,65,0,0,0,0,7,84,0,75,0,0,0,0,7,0,0,25],[0,0,0,0,7,6,32,25,0,0,7,160,5,80,1,151,0,0,7,160,8,64,1,151,0,0,0,0,9,88,0,75],[0,0,0,0,6,0,128,25,0,0,0,0,5,88,1,63,0,0,7,160,5,80,0,156,0,0,0,0,6,7,192,25],[0,0,0,0,5,6,0,75,0,0,0,159,0,0,193,61,0,0,0,0,5,66,3,79,0,0,0,64,6,0,4,61],[0,4,0,0,0,6,0,29,0,0,0,0,5,5,4,59,0,0,0,128,6,80,0,140,0,0,22,216,0,0,65,61],[0,0,0,128,6,80,2,112,0,0,7,168,7,80,0,156,0,0,0,0,6,5,160,25,0,0,7,168,7,80,0,156],[0,0,0,0,7,0,0,25,0,0,0,16,7,0,32,57,0,0,0,8,8,112,1,191,0,0,7,159,9,96,0,156],[0,0,0,0,8,7,160,25,0,0,0,64,7,96,2,112,0,0,7,159,9,96,0,156,0,0,0,0,7,6,160,25],[0,0,0,4,9,128,1,191,0,0,7,155,6,112,0,156,0,0,0,0,9,8,160,25,0,0,0,32,8,112,2,112],[0,0,7,155,6,112,0,156,0,0,0,0,8,7,160,25,0,0,0,2,6,144,1,191,0,0,255,255,7,128,0,140],[0,0,0,0,6,9,160,25,0,0,0,16,7,128,2,112,0,0,0,0,7,8,160,25,0,0,0,255,7,112,0,140],[0,0,0,1,6,96,32,57,0,0,0,65,7,96,0,57,0,0,0,7,7,112,1,127,0,0,0,4,7,112,0,41],[0,0,0,4,8,112,0,108,0,0,0,0,8,0,0,25,0,0,0,1,8,0,64,57,0,0,7,159,9,112,0,156],[0,0,1,89,0,0,33,61,0,0,0,1,8,128,1,144,0,0,1,89,0,0,193,61,0,0,0,64,0,112,4,63],[0,0,0,2,7,96,0,57,0,0,0,4,8,0,0,41,0,0,0,0,7,120,4,54,0,0,0,33,8,96,0,57],[0,0,0,5,8,128,2,114,0,0,22,196,0,0,97,61,0,0,0,0,9,18,3,79,0,0,0,0,10,0,0,25],[0,0,0,5,11,160,2,16,0,0,0,0,12,183,0,25,0,0,0,0,11,185,3,79,0,0,0,0,11,11,4,59],[0,0,0,0,0,188,4,53,0,0,0,1,10,160,0,57,0,0,0,0,11,138,0,75,0,0,22,188,0,0,65,61],[0,0,0,0,8,0,0,75,0,0,22,198,0,0,97,61,0,0,0,4,8,0,0,41,0,0,0,0,8,8,4,51],[0,0,0,0,8,8,0,75,0,0,1,193,0,0,97,61,0,0,0,0,8,7,4,51,0,0,7,167,8,128,1,151],[0,0,0,248,9,96,2,16,0,0,0,0,8,137,1,159,0,0,7,169,8,128,0,65,0,0,0,0,0,135,4,53],[0,0,0,3,6,96,2,16,0,0,0,248,6,96,0,137,0,0,0,0,5,101,1,207,0,0,0,255,6,96,0,140],[0,0,0,0,5,0,32,25,0,0,0,4,6,0,0,41,0,0,0,33,6,96,0,57,0,0,22,235,0,0,1,61],[0,0,0,4,6,0,0,41,0,0,7,166,6,96,0,156,0,0,1,89,0,0,33,61,0,0,0,4,8,0,0,41],[0,0,0,64,6,128,0,57,0,0,0,64,0,96,4,63,0,0,0,0,7,18,3,79,0,0,0,1,6,0,0,58],[0,0,0,0,6,104,4,54,0,0,0,0,7,112,3,80,0,0,0,0,7,7,4,59,0,0,0,0,0,118,4,53],[0,0,1,193,0,0,97,61,0,0,0,248,8,80,2,16,0,0,7,160,9,0,0,65,0,0,0,0,5,5,0,75],[0,0,0,0,9,8,192,25,0,0,7,167,5,112,1,151,0,0,0,0,5,149,1,159,0,0,0,0,0,86,4,53],[0,0,0,64,5,48,0,140,0,0,0,159,0,0,65,61,0,0,0,64,5,0,4,61,0,3,0,0,0,5,0,29],[0,0,0,32,4,64,0,57,0,0,0,0,5,66,3,79,0,0,0,0,5,5,4,59,0,0,0,128,6,80,0,140],[0,0,24,41,0,0,65,61,0,0,0,128,6,80,2,112,0,0,7,168,7,80,0,156,0,0,0,0,6,5,160,25],[0,0,7,168,7,80,0,156,0,0,0,0,7,0,0,25,0,0,0,16,7,0,32,57,0,0,0,8,8,112,1,191],[0,0,7,159,9,96,0,156,0,0,0,0,8,7,160,25,0,0,0,64,7,96,2,112,0,0,7,159,9,96,0,156],[0,0,0,0,7,6,160,25,0,0,0,4,9,128,1,191,0,0,7,155,6,112,0,156,0,0,0,0,9,8,160,25],[0,0,0,32,8,112,2,112,0,0,7,155,6,112,0,156,0,0,0,0,8,7,160,25,0,0,0,2,6,144,1,191],[0,0,255,255,7,128,0,140,0,0,0,0,6,9,160,25,0,0,0,16,7,128,2,112,0,0,0,0,7,8,160,25],[0,0,0,255,7,112,0,140,0,0,0,1,6,96,32,57,0,0,0,65,7,96,0,57,0,0,0,7,7,112,1,127],[0,0,0,3,7,112,0,41,0,0,0,3,8,112,0,108,0,0,0,0,8,0,0,25,0,0,0,1,8,0,64,57],[0,0,7,159,9,112,0,156,0,0,1,89,0,0,33,61,0,0,0,1,8,128,1,144,0,0,1,89,0,0,193,61],[0,0,0,64,0,112,4,63,0,0,0,2,7,96,0,57,0,0,0,3,8,0,0,41,0,0,0,0,7,120,4,54],[0,0,0,33,8,96,0,57,0,0,0,5,8,128,2,114,0,0,23,41,0,0,97,61,0,0,0,0,1,18,3,79],[0,0,0,0,9,0,0,25,0,0,0,5,10,144,2,16,0,0,0,0,11,167,0,25,0,0,0,0,10,161,3,79],[0,0,0,0,10,10,4,59,0,0,0,0,0,171,4,53,0,0,0,1,9,144,0,57,0,0,0,0,10,137,0,75],[0,0,23,33,0,0,65,61,0,0,0,0,1,0,0,75,0,0,23,43,0,0,97,61,0,0,0,3,1,0,0,41],[0,0,0,0,1,1,4,51,0,0,0,0,1,1,0,75,0,0,1,193,0,0,97,61,0,0,0,0,1,7,4,51],[0,0,7,167,1,16,1,151,0,0,0,248,8,96,2,16,0,0,0,0,1,24,1,159,0,0,7,169,1,16,0,65],[0,0,0,0,0,23,4,53,0,0,0,3,1,96,2,16,0,0,0,248,1,16,0,137,0,0,0,0,5,21,1,207],[0,0,0,255,1,16,0,140,0,0,0,0,5,0,32,25,0,0,0,3,1,0,0,41,0,0,0,33,1,16,0,57],[0,0,24,60,0,0,1,61,0,0,0,56,8,80,0,140,0,0,23,141,0,0,65,61,0,0,0,32,10,80,2,112],[0,0,7,155,8,80,0,156,0,0,0,0,10,5,160,25,0,0,7,155,8,80,0,156,0,0,0,0,11,0,0,25],[0,0,0,4,11,0,32,57,0,0,0,2,8,176,1,191,0,0,255,255,13,160,0,140,0,0,0,0,8,11,160,25],[0,0,0,16,11,160,2,112,0,0,0,0,11,10,160,25,0,0,0,255,10,176,0,140,0,0,0,0,10,0,0,25],[0,0,0,1,10,0,32,57,0,0,7,166,11,112,0,156,0,0,1,89,0,0,33,61,0,0,0,0,8,168,1,159],[0,0,0,64,10,112,0,57,0,0,0,64,0,160,4,63,0,0,0,0,11,33,3,79,0,0,0,2,10,128,0,58],[0,0,0,0,10,167,4,54,0,0,0,0,11,176,3,80,0,0,0,0,11,11,4,59,0,0,0,0,0,186,4,53],[0,0,1,193,0,0,97,61,0,0,7,167,11,176,1,151,0,0,0,248,13,128,2,16,0,0,0,0,11,189,1,159],[0,0,7,171,11,176,1,199,0,0,0,0,0,186,4,53,0,0,0,3,8,128,2,16,0,0,0,248,8,128,1,95],[0,0,0,0,8,133,1,207,0,0,0,33,10,112,0,57,0,0,0,0,0,138,4,53,0,0,0,0,8,7,0,25],[0,0,23,158,0,0,1,61,0,0,0,56,8,80,0,140,0,0,24,108,0,0,65,61,0,0,0,32,10,80,2,112],[0,0,7,155,8,80,0,156,0,0,0,0,10,5,160,25,0,0,7,155,8,80,0,156,0,0,0,0,11,0,0,25],[0,0,0,4,11,0,32,57,0,0,0,2,8,176,1,191,0,0,255,255,13,160,0,140,0,0,0,0,8,11,160,25],[0,0,0,16,11,160,2,112,0,0,0,0,11,10,160,25,0,0,0,255,10,176,0,140,0,0,0,0,10,0,0,25],[0,0,0,1,10,0,32,57,0,0,7,166,11,112,0,156,0,0,1,89,0,0,33,61,0,0,0,0,8,168,1,159],[0,0,0,64,10,112,0,57,0,0,0,64,0,160,4,63,0,0,0,0,11,33,3,79,0,0,0,2,10,128,0,58],[0,0,0,0,10,167,4,54,0,0,0,0,11,176,3,80,0,0,0,0,11,11,4,59,0,0,0,0,0,186,4,53],[0,0,1,193,0,0,97,61,0,0,7,167,11,176,1,151,0,0,0,248,13,128,2,16,0,0,0,0,11,189,1,159],[0,0,7,171,11,176,1,199,0,0,0,0,0,186,4,53,0,0,0,3,8,128,2,16,0,0,0,248,8,128,1,95],[0,0,0,0,8,133,1,207,0,0,0,33,10,112,0,57,0,0,0,0,0,138,4,53,0,0,0,0,8,7,0,25],[0,0,24,125,0,0,1,61,0,0,7,166,8,112,0,156,0,0,1,89,0,0,33,61,0,0,0,64,8,112,0,57],[0,0,0,64,0,128,4,63,0,0,0,0,10,33,3,79,0,0,0,1,8,0,0,58,0,0,0,0,8,135,4,54],[0,0,0,0,10,160,3,80,0,0,0,0,10,10,4,59,0,0,0,0,0,168,4,53,0,0,1,193,0,0,97,61],[0,0,0,248,11,80,2,16,0,0,7,167,10,160,1,151,0,0,0,0,10,186,1,159,0,0,7,160,10,160,1,103],[0,0,0,0,0,168,4,53,0,0,0,0,8,7,0,25,0,0,0,64,7,0,4,61,0,0,7,166,10,112,0,156],[0,0,1,89,0,0,33,61,0,0,0,64,10,112,0,57,0,0,0,64,0,160,4,63,0,0,0,0,13,33,3,79],[0,0,0,1,6,0,0,58,0,7,0,0,0,6,0,29,0,0,0,0,15,103,4,54,0,0,0,0,6,208,3,80],[0,8,0,0,0,6,3,83,0,0,0,0,6,6,4,59,0,9,0,0,0,6,0,29,0,0,0,0,0,111,4,53],[0,0,1,193,0,0,97,61,0,0,0,9,6,0,0,41,0,0,7,167,6,96,1,151,0,6,0,0,0,6,0,29],[0,0,7,172,11,96,1,199,0,0,0,0,0,191,4,53,0,0,0,32,11,192,0,57,0,0,0,0,11,177,3,79],[0,0,0,0,12,11,4,59,0,0,7,160,11,0,0,65,0,0,0,0,15,156,0,75,0,0,0,0,15,0,0,25],[0,0,0,0,15,11,128,25,0,0,7,160,9,144,1,151,0,0,7,160,14,192,1,151,0,0,0,0,10,158,0,75],[0,0,0,0,11,0,128,25,0,0,0,0,9,158,1,63,0,0,7,160,9,144,0,156,0,0,0,0,11,15,192,25],[0,0,0,0,9,11,0,75,0,0,0,12,6,0,0,41,0,0,0,159,0,0,193,61,0,0,0,0,9,108,0,25],[0,0,0,0,10,145,3,79,0,0,0,0,6,10,4,59,0,12,0,0,0,6,0,29,0,0,7,159,10,96,0,156],[0,0,0,159,0,0,33,61,0,0,0,12,6,0,0,41,0,0,0,32,10,96,0,140,0,0,0,159,0,0,65,61],[0,0,0,12,2,32,0,106,0,0,0,32,6,144,0,57,0,0,7,160,9,0,0,65,0,0,0,0,10,38,0,75],[0,0,0,0,10,0,0,25,0,0,0,0,10,9,32,25,0,0,7,160,2,32,1,151,0,4,0,0,0,6,0,29],[0,0,7,160,11,96,1,151,0,0,0,0,12,43,0,75,0,0,0,0,9,0,128,25,0,0,0,0,2,43,1,63],[0,0,7,160,2,32,0,156,0,0,0,0,9,10,192,25,0,0,0,0,2,9,0,75,0,0,0,159,0,0,193,61],[0,0,0,4,9,16,3,96,0,0,0,64,2,0,4,61,0,0,0,0,6,9,4,59,0,5,0,0,0,6,0,29],[0,0,0,128,10,96,0,140,0,0,0,32,15,32,0,57,0,0,25,8,0,0,65,61,0,0,0,5,6,0,0,41],[0,0,0,128,10,96,2,112,0,0,7,168,11,96,0,156,0,0,0,0,10,6,160,25,0,0,7,168,11,96,0,156],[0,0,0,0,11,0,0,25,0,0,0,16,11,0,32,57,0,0,0,8,12,176,1,191,0,0,7,159,14,160,0,156],[0,0,0,0,12,11,160,25,0,0,0,64,11,160,2,112,0,0,7,159,14,160,0,156,0,0,0,0,11,10,160,25],[0,0,0,4,14,192,1,191,0,0,7,155,10,176,0,156,0,0,0,0,14,12,160,25,0,0,0,32,12,176,2,112],[0,0,7,155,10,176,0,156,0,0,0,0,12,11,160,25,0,0,0,2,10,224,1,191,0,0,255,255,11,192,0,140],[0,0,0,0,10,14,160,25,0,0,0,16,11,192,2,112,0,0,0,0,11,12,160,25,0,0,0,255,11,176,0,140],[0,0,0,1,10,160,32,57,0,0,0,65,11,160,0,57,0,0,0,0,11,59,1,111,0,0,0,0,12,178,0,25],[0,0,0,0,11,44,0,75,0,0,0,0,14,0,0,25,0,0,0,1,14,0,64,57,0,0,7,159,11,192,0,156],[0,0,1,89,0,0,33,61,0,0,0,1,11,224,1,144,0,0,1,89,0,0,193,61,0,0,0,64,0,192,4,63],[0,0,0,2,11,160,0,57,0,0,0,0,0,178,4,53,0,0,0,33,11,160,0,57,0,0,0,5,14,176,2,114],[0,0,24,22,0,0,97,61,0,0,0,0,12,0,0,25,0,0,0,5,11,192,2,16,0,0,0,0,9,191,0,25],[0,0,0,0,11,189,3,79,0,0,0,0,11,11,4,59,0,0,0,0,0,185,4,53,0,0,0,1,12,192,0,57],[0,0,0,0,9,236,0,75,0,0,24,14,0,0,65,61,0,0,0,0,6,0,0,75,0,0,24,24,0,0,97,61],[0,0,0,0,9,2,4,51,0,0,0,0,9,9,0,75,0,0,1,193,0,0,97,61,0,0,0,0,9,15,4,51],[0,0,7,167,9,144,1,151,0,0,0,248,11,160,2,16,0,0,0,0,9,155,1,159,0,0,7,169,9,144,0,65],[0,0,0,0,0,159,4,53,0,0,0,3,9,160,2,16,0,0,0,248,9,144,0,137,0,0,0,5,10,144,1,239],[0,0,0,255,9,144,0,140,0,0,0,0,10,0,32,25,0,0,0,33,9,32,0,57,0,0,0,0,0,169,4,53],[0,0,25,25,0,0,1,61,0,0,0,3,6,0,0,41,0,0,7,166,6,96,0,156,0,0,1,89,0,0,33,61],[0,0,0,3,7,0,0,41,0,0,0,64,6,112,0,57,0,0,0,64,0,96,4,63,0,0,0,0,6,18,3,79],[0,0,0,1,1,0,0,58,0,0,0,0,1,23,4,54,0,0,0,0,6,96,3,80,0,0,0,0,6,6,4,59],[0,0,0,0,0,97,4,53,0,0,1,193,0,0,97,61,0,0,0,248,7,80,2,16,0,0,7,160,8,0,0,65],[0,0,0,0,5,5,0,75,0,0,0,0,8,7,192,25,0,0,7,167,5,96,1,151,0,0,0,0,5,133,1,159],[0,0,0,0,0,81,4,53,0,0,0,65,1,48,0,140,0,0,1,193,0,0,65,61,0,0,0,32,1,64,0,57],[0,0,0,0,1,18,3,79,0,0,0,0,1,1,4,59,0,0,0,248,1,16,2,112,0,2,0,0,0,1,0,29],[0,0,0,27,1,16,0,138,0,0,0,2,1,16,0,140,0,0,29,6,0,0,129,61,0,0,0,13,1,0,0,41],[0,1,1,68,0,16,0,61,0,0,0,1,1,32,3,96,0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75],[0,0,26,146,0,0,97,61,0,0,7,164,1,0,0,65,0,0,0,0,0,16,4,57,0,0,7,155,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,7,155,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,7,165,1,16,1,199,0,0,128,11,2,0,0,57,30,104,30,94,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,24,107,0,0,97,61,0,0,0,0,2,1,4,59,0,0,0,1,1,32,2,16,0,0,0,0,3,2,0,75],[0,0,24,99,0,0,97,61,0,0,0,9,3,0,0,138,0,0,0,0,3,49,0,75,0,0,24,103,0,0,33,61],[0,0,0,0,50,33,0,217,0,0,0,2,2,32,0,140,0,0,24,103,0,0,193,61,0,0,0,2,1,16,0,41],[0,0,0,8,3,16,0,57,0,0,0,2,1,48,0,108,0,0,25,110,0,0,129,61,0,0,7,195,1,0,0,65],[0,0,0,0,0,16,4,53,0,0,0,17,1,0,0,57,0,0,1,196,0,0,1,61,0,0,0,0,0,1,4,47],[0,0,7,166,8,112,0,156,0,0,1,89,0,0,33,61,0,0,0,64,8,112,0,57,0,0,0,64,0,128,4,63],[0,0,0,0,10,33,3,79,0,0,0,1,8,0,0,58,0,0,0,0,8,135,4,54,0,0,0,0,10,160,3,80],[0,0,0,0,10,10,4,59,0,0,0,0,0,168,4,53,0,0,1,193,0,0,97,61,0,0,0,248,11,80,2,16],[0,0,7,167,10,160,1,151,0,0,0,0,10,186,1,159,0,0,7,160,10,160,1,103,0,0,0,0,0,168,4,53],[0,0,0,0,8,7,0,25,0,0,0,64,7,0,4,61,0,0,7,166,10,112,0,156,0,0,1,89,0,0,33,61],[0,0,0,64,10,112,0,57,0,0,0,64,0,160,4,63,0,0,0,0,13,33,3,79,0,0,0,1,6,0,0,58],[0,9,0,0,0,6,0,29,0,0,0,0,10,103,4,54,0,0,0,0,6,208,3,80,0,7,0,0,0,6,3,83],[0,0,0,0,6,6,4,59,0,8,0,0,0,6,0,29,0,0,0,0,0,106,4,53,0,0,1,193,0,0,97,61],[0,0,0,8,6,0,0,41,0,0,7,167,6,96,1,151,0,5,0,0,0,6,0,29,0,0,7,172,15,96,1,199],[0,0,0,0,0,250,4,53,0,0,0,32,10,192,0,57,0,0,0,0,10,161,3,79,0,0,0,0,10,10,4,59],[0,0,7,160,12,0,0,65,0,0,0,0,15,154,0,75,0,0,0,0,15,0,0,25,0,0,0,0,15,12,128,25],[0,0,7,160,9,144,1,151,0,0,7,160,14,160,1,151,0,0,0,0,11,158,0,75,0,0,0,0,12,0,128,25],[0,0,0,0,9,158,1,63,0,0,7,160,9,144,0,156,0,0,0,0,12,15,192,25,0,0,0,0,9,12,0,75],[0,0,0,12,6,0,0,41,0,0,0,159,0,0,193,61,0,0,0,0,9,106,0,25,0,0,0,0,10,145,3,79],[0,0,0,0,6,10,4,59,0,12,0,0,0,6,0,29,0,0,7,159,10,96,0,156,0,0,0,159,0,0,33,61],[0,0,0,12,6,0,0,41,0,0,0,32,10,96,0,140,0,0,0,159,0,0,65,61,0,0,0,12,2,32,0,106],[0,0,0,32,6,144,0,57,0,0,7,160,9,0,0,65,0,0,0,0,10,38,0,75,0,0,0,0,10,0,0,25],[0,0,0,0,10,9,32,25,0,0,7,160,2,32,1,151,0,4,0,0,0,6,0,29,0,0,7,160,11,96,1,151],[0,0,0,0,14,43,0,75,0,0,0,0,9,0,128,25,0,0,0,0,2,43,1,63,0,0,7,160,2,32,0,156],[0,0,0,0,9,10,192,25,0,0,0,0,2,9,0,75,0,0,0,159,0,0,193,61,0,0,0,4,9,16,3,96],[0,0,0,64,2,0,4,61,0,0,0,0,6,9,4,59,0,6,0,0,0,6,0,29,0,0,0,128,10,96,0,140],[0,0,0,32,15,32,0,57,0,0,25,186,0,0,65,61,0,0,0,6,6,0,0,41,0,0,0,128,10,96,2,112],[0,0,7,168,11,96,0,156,0,0,0,0,10,6,160,25,0,0,7,168,11,96,0,156,0,0,0,0,11,0,0,25],[0,0,0,16,11,0,32,57,0,0,0,8,14,176,1,191,0,0,7,159,12,160,0,156,0,0,0,0,14,11,160,25],[0,0,0,64,11,160,2,112,0,0,7,159,12,160,0,156,0,0,0,0,11,10,160,25,0,0,0,4,10,224,1,191],[0,0,7,155,12,176,0,156,0,0,0,0,10,14,160,25,0,0,0,32,12,176,2,112,0,0,7,155,14,176,0,156],[0,0,0,0,12,11,160,25,0,0,0,2,11,160,1,191,0,0,255,255,14,192,0,140,0,0,0,0,11,10,160,25],[0,0,0,16,10,192,2,112,0,0,0,0,10,12,160,25,0,0,0,255,10,160,0,140,0,0,0,1,11,176,32,57],[0,0,0,65,10,176,0,57,0,0,0,0,10,58,1,111,0,0,0,0,10,162,0,25,0,0,0,0,12,42,0,75],[0,0,0,0,14,0,0,25,0,0,0,1,14,0,64,57,0,0,7,159,12,160,0,156,0,0,1,89,0,0,33,61],[0,0,0,1,12,224,1,144,0,0,1,89,0,0,193,61,0,0,0,64,0,160,4,63,0,0,0,2,10,176,0,57],[0,0,0,0,0,162,4,53,0,0,0,33,10,176,0,57,0,0,0,5,10,160,2,114,0,0,24,245,0,0,97,61],[0,0,0,0,14,0,0,25,0,0,0,5,12,224,2,16,0,0,0,0,9,207,0,25,0,0,0,0,12,205,3,79],[0,0,0,0,12,12,4,59,0,0,0,0,0,201,4,53,0,0,0,1,14,224,0,57,0,0,0,0,9,174,0,75],[0,0,24,237,0,0,65,61,0,0,0,0,6,0,0,75,0,0,24,247,0,0,97,61,0,0,0,0,9,2,4,51],[0,0,0,0,9,9,0,75,0,0,1,193,0,0,97,61,0,0,0,0,9,15,4,51,0,0,7,167,9,144,1,151],[0,0,0,248,10,176,2,16,0,0,0,0,9,154,1,159,0,0,7,169,9,144,0,65,0,0,0,0,0,159,4,53],[0,0,0,3,9,176,2,16,0,0,0,248,9,144,0,137,0,0,0,6,10,144,1,239,0,0,0,255,9,144,0,140],[0,0,0,0,10,0,32,25,0,0,0,33,9,32,0,57,0,0,0,0,0,169,4,53,0,0,25,203,0,0,1,61],[0,0,7,166,9,32,0,156,0,0,1,89,0,0,33,61,0,0,0,64,9,32,0,57,0,0,0,64,0,144,4,63],[0,0,0,9,6,0,0,41,0,0,0,0,0,111,4,53,0,0,0,7,6,0,0,41,0,0,0,0,0,98,4,53],[0,0,0,0,9,6,0,75,0,0,1,193,0,0,97,61,0,0,0,5,6,0,0,41,0,0,0,248,9,96,2,16],[0,0,7,160,10,0,0,65,0,0,0,0,11,6,0,75,0,0,0,0,10,9,192,25,0,0,0,6,9,160,1,175],[0,0,0,0,0,159,4,53,0,0,0,12,6,0,0,41,0,0,0,64,9,96,0,140,0,0,0,159,0,0,65,61],[0,0,0,64,9,0,4,61,0,0,0,4,6,0,0,41,0,5,0,32,0,96,0,61,0,0,0,5,10,16,3,96],[0,0,0,0,6,10,4,59,0,9,0,0,0,6,0,29,0,0,0,128,10,96,0,140,0,0,0,32,14,144,0,57],[0,0,26,32,0,0,65,61,0,0,0,9,6,0,0,41,0,0,0,128,10,96,2,112,0,0,7,168,11,96,0,156],[0,0,0,0,10,6,160,25,0,0,7,168,11,96,0,156,0,0,0,0,11,0,0,25,0,0,0,16,11,0,32,57],[0,0,0,8,12,176,1,191,0,0,7,159,15,160,0,156,0,0,0,0,12,11,160,25,0,0,0,64,11,160,2,112],[0,0,7,159,15,160,0,156,0,0,0,0,11,10,160,25,0,0,0,4,15,192,1,191,0,0,7,155,10,176,0,156],[0,0,0,0,15,12,160,25,0,0,0,32,12,176,2,112,0,0,7,155,10,176,0,156,0,0,0,0,12,11,160,25],[0,0,0,2,6,240,1,191,0,0,255,255,11,192,0,140,0,0,0,0,6,15,160,25,0,0,0,16,11,192,2,112],[0,0,0,0,11,12,160,25,0,0,0,255,11,176,0,140,0,0,0,1,6,96,32,57,0,6,0,0,0,6,0,29],[0,0,0,65,11,96,0,57,0,0,0,0,11,59,1,111,0,0,0,0,12,185,0,25,0,0,0,0,11,156,0,75],[0,0,0,0,15,0,0,25,0,0,0,1,15,0,64,57,0,0,7,159,11,192,0,156,0,0,1,89,0,0,33,61],[0,0,0,1,11,240,1,144,0,0,1,89,0,0,193,61,0,0,0,64,0,192,4,63,0,0,0,6,6,0,0,41],[0,0,0,2,11,96,0,57,0,0,0,0,0,185,4,53,0,0,0,33,11,96,0,57,0,0,0,5,12,176,2,114],[0,0,25,90,0,0,97,61,0,0,0,0,15,0,0,25,0,0,0,5,11,240,2,16,0,0,0,0,10,190,0,25],[0,0,0,0,11,189,3,79,0,0,0,0,11,11,4,59,0,0,0,0,0,186,4,53,0,0,0,1,15,240,0,57],[0,0,0,0,10,207,0,75,0,0,25,82,0,0,65,61,0,0,0,0,6,0,0,75,0,0,25,92,0,0,97,61],[0,0,0,0,10,9,4,51,0,0,0,0,10,10,0,75,0,0,1,193,0,0,97,61,0,0,0,0,10,14,4,51],[0,0,7,167,10,160,1,151,0,0,0,6,6,0,0,41,0,0,0,248,11,96,2,16,0,0,0,0,10,171,1,159],[0,0,7,169,10,160,0,65,0,0,0,0,0,174,4,53,0,0,0,3,10,96,2,16,0,0,0,248,10,160,0,137],[0,0,0,9,11,160,1,239,0,0,0,255,10,160,0,140,0,0,0,0,11,0,32,25,0,0,0,33,10,144,0,57],[0,0,0,0,0,186,4,53,0,0,26,51,0,0,1,61,0,0,0,128,1,48,0,140,0,2,0,0,0,3,0,29],[0,0,26,146,0,0,65,61,0,0,0,128,1,48,2,112,0,0,7,168,2,48,0,156,0,0,0,0,1,3,160,25],[0,0,7,168,2,48,0,156,0,0,0,0,2,0,0,25,0,0,0,16,2,0,32,57,0,0,0,8,4,32,1,191],[0,0,7,159,5,16,0,156,0,0,0,0,4,2,160,25,0,0,0,64,2,16,2,112,0,0,7,159,5,16,0,156],[0,0,0,0,2,1,160,25,0,0,0,4,1,64,1,191,0,0,7,155,5,32,0,156,0,0,0,0,1,4,160,25],[0,0,0,32,4,32,2,112,0,0,7,155,5,32,0,156,0,0,0,0,4,2,160,25,0,0,0,2,5,16,1,191],[0,0,255,255,2,64,0,140,0,0,0,0,5,1,160,25,0,0,0,16,1,64,2,112,0,0,0,0,1,4,160,25],[0,0,0,255,1,16,0,140,0,0,0,1,5,80,32,57,0,0,0,65,1,80,0,57,0,0,0,7,2,16,1,127],[0,0,0,64,1,0,4,61,0,0,0,0,2,33,0,25,0,0,0,0,4,18,0,75,0,0,0,0,4,0,0,25],[0,0,0,1,4,0,64,57,0,0,7,159,6,32,0,156,0,0,1,89,0,0,33,61,0,0,0,1,4,64,1,144],[0,0,1,89,0,0,193,61,0,0,0,64,0,32,4,63,0,0,0,2,2,80,0,57,0,0,0,0,6,33,4,54],[0,0,0,1,2,0,3,103,0,0,0,0,4,0,0,49,0,0,0,33,7,80,0,57,0,0,0,5,7,112,2,114],[0,0,25,167,0,0,97,61,0,0,0,0,8,66,3,79,0,0,0,0,9,0,0,25,0,0,0,5,10,144,2,16],[0,0,0,0,11,166,0,25,0,0,0,0,10,168,3,79,0,0,0,0,10,10,4,59,0,0,0,0,0,171,4,53],[0,0,0,1,9,144,0,57,0,0,0,0,10,121,0,75,0,0,25,159,0,0,65,61,0,0,0,0,7,0,0,75],[0,0,25,169,0,0,97,61,0,0,0,0,7,1,4,51,0,0,0,0,7,7,0,75,0,0,1,193,0,0,97,61],[0,0,0,0,7,6,4,51,0,0,7,167,7,112,1,151,0,0,0,248,8,80,2,16,0,0,0,0,7,120,1,159],[0,0,7,169,7,112,0,65,0,0,0,0,0,118,4,53,0,0,0,3,5,80,2,16,0,0,0,248,5,80,0,137],[0,0,0,0,3,83,1,207,0,0,0,255,5,80,0,140,0,0,0,0,3,0,32,25,0,0,0,33,5,16,0,57],[0,0,0,0,0,53,4,53,0,0,26,168,0,0,1,61,0,0,7,166,9,32,0,156,0,0,1,89,0,0,33,61],[0,0,0,64,9,32,0,57,0,0,0,64,0,144,4,63,0,0,0,8,6,0,0,41,0,0,0,0,0,111,4,53],[0,0,0,9,6,0,0,41,0,0,0,0,0,98,4,53,0,0,0,0,9,6,0,75,0,0,1,193,0,0,97,61],[0,0,0,6,6,0,0,41,0,0,0,248,9,96,2,16,0,0,7,160,10,0,0,65,0,0,0,0,11,6,0,75],[0,0,0,0,10,9,192,25,0,0,0,5,9,160,1,175,0,0,0,0,0,159,4,53,0,0,0,12,6,0,0,41],[0,0,0,64,9,96,0,140,0,0,0,159,0,0,65,61,0,0,0,64,9,0,4,61,0,0,0,4,6,0,0,41],[0,5,0,32,0,96,0,61,0,0,0,5,10,16,3,96,0,0,0,0,6,10,4,59,0,8,0,0,0,6,0,29],[0,0,0,128,10,96,0,140,0,0,0,32,14,144,0,57,0,0,27,17,0,0,65,61,0,0,0,8,6,0,0,41],[0,0,0,128,10,96,2,112,0,0,7,168,11,96,0,156,0,0,0,0,10,6,160,25,0,0,7,168,11,96,0,156],[0,0,0,0,11,0,0,25,0,0,0,16,11,0,32,57,0,0,0,8,12,176,1,191,0,0,7,159,15,160,0,156],[0,0,0,0,12,11,160,25,0,0,0,64,11,160,2,112,0,0,7,159,15,160,0,156,0,0,0,0,11,10,160,25],[0,0,0,4,10,192,1,191,0,0,7,155,15,176,0,156,0,0,0,0,10,12,160,25,0,0,0,32,12,176,2,112],[0,0,7,155,15,176,0,156,0,0,0,0,12,11,160,25,0,0,0,2,6,160,1,191,0,0,255,255,15,192,0,140],[0,0,0,0,6,10,160,25,0,0,0,16,10,192,2,112,0,0,0,0,10,12,160,25,0,0,0,255,10,160,0,140],[0,0,0,1,6,96,32,57,0,6,0,0,0,6,0,29,0,0,0,65,10,96,0,57,0,0,0,0,10,58,1,111],[0,0,0,0,10,169,0,25,0,0,0,0,12,154,0,75,0,0,0,0,12,0,0,25,0,0,0,1,12,0,64,57],[0,0,7,159,15,160,0,156,0,0,1,89,0,0,33,61,0,0,0,1,12,192,1,144,0,0,1,89,0,0,193,61],[0,0,0,64,0,160,4,63,0,0,0,6,6,0,0,41,0,0,0,2,10,96,0,57,0,0,0,0,0,169,4,53],[0,0,0,33,10,96,0,57,0,0,0,5,10,160,2,114,0,0,26,12,0,0,97,61,0,0,0,0,12,0,0,25],[0,0,0,5,15,192,2,16,0,0,0,0,11,254,0,25,0,0,0,0,15,253,3,79,0,0,0,0,15,15,4,59],[0,0,0,0,0,251,4,53,0,0,0,1,12,192,0,57,0,0,0,0,11,172,0,75,0,0,26,4,0,0,65,61],[0,0,0,0,6,0,0,75,0,0,26,14,0,0,97,61,0,0,0,0,10,9,4,51,0,0,0,0,10,10,0,75],[0,0,1,193,0,0,97,61,0,0,0,0,10,14,4,51,0,0,7,167,10,160,1,151,0,0,0,6,6,0,0,41],[0,0,0,248,11,96,2,16,0,0,0,0,10,171,1,159,0,0,7,169,10,160,0,65,0,0,0,0,0,174,4,53],[0,0,0,3,10,96,2,16,0,0,0,248,10,160,0,137,0,0,0,8,11,160,1,239,0,0,0,255,10,160,0,140],[0,0,0,0,11,0,32,25,0,0,0,33,10,144,0,57,0,0,0,0,0,186,4,53,0,0,27,36,0,0,1,61],[0,0,7,166,10,144,0,156,0,0,1,89,0,0,33,61,0,0,0,64,10,144,0,57,0,0,0,64,0,160,4,63],[0,0,0,7,11,0,0,41,0,0,0,0,0,185,4,53,0,0,0,8,6,0,3,95,0,0,0,0,10,6,4,59],[0,0,0,0,0,174,4,53,0,0,0,0,11,11,0,75,0,0,1,193,0,0,97,61,0,0,0,9,6,0,0,41],[0,0,0,248,11,96,2,16,0,0,7,160,12,0,0,65,0,0,0,0,13,6,0,75,0,0,0,0,12,11,192,25],[0,0,7,167,10,160,1,151,0,0,0,0,10,202,1,159,0,0,0,0,0,174,4,53,0,0,0,12,6,0,0,41],[0,0,0,65,10,96,0,140,0,0,1,193,0,0,65,61,0,0,0,5,6,0,0,41,0,0,0,32,10,96,0,57],[0,0,0,0,11,161,3,79,0,0,0,0,10,0,4,21,0,0,0,17,10,160,0,138,0,0,0,32,10,160,0,201],[0,0,7,160,13,0,0,65,0,0,0,0,11,11,4,59,0,0,0,248,12,176,2,112,0,0,0,27,11,192,0,140],[0,0,26,71,0,0,97,61,0,0,0,0,10,0,4,21,0,0,0,16,10,160,0,138,0,0,0,32,10,160,0,201],[0,0,7,174,13,0,0,65,0,0,0,28,11,192,0,140,0,0,29,6,0,0,193,61,0,0,0,64,12,0,4,61],[0,0,7,166,11,192,0,156,0,0,1,89,0,0,33,61,0,0,0,64,11,192,0,57,0,0,0,64,0,176,4,63],[0,0,0,7,11,0,0,41,0,0,0,0,14,188,4,54,0,0,0,8,6,0,3,95,0,0,0,0,15,6,4,59],[0,0,0,0,0,254,4,53,0,0,0,0,11,11,0,75,0,0,1,193,0,0,97,61,0,0,7,167,11,240,1,151],[0,0,0,0,11,219,1,159,0,0,0,0,0,190,4,53,0,0,0,0,11,4,4,51,0,0,0,0,13,8,4,51],[0,0,0,5,10,160,2,112,0,0,0,0,10,12,0,31,0,0,0,0,10,93,0,25,0,0,0,0,10,186,0,25],[0,0,0,0,11,7,4,51,0,0,0,0,10,186,0,25,0,0,0,0,11,2,4,51,0,0,0,0,10,186,0,25],[0,0,0,0,11,9,4,51,0,0,0,0,10,186,0,25,0,0,0,0,11,12,4,51,0,0,0,0,10,186,0,25],[0,0,0,64,13,0,4,61,0,0,7,159,6,160,1,151,0,9,0,0,0,6,0,29,0,0,0,56,11,96,0,140],[0,6,0,64,0,208,0,61,0,12,0,32,0,208,0,61,0,0,27,129,0,0,65,61,0,0,0,9,6,0,0,41],[0,0,0,32,15,96,2,112,0,0,7,155,11,96,0,156,0,0,0,0,15,6,160,25,0,0,7,155,11,96,0,156],[0,0,0,0,14,0,0,25,0,0,0,4,14,0,32,57,0,0,0,2,11,224,1,191,0,0,255,255,10,240,0,140],[0,0,0,0,11,14,160,25,0,0,0,16,10,240,2,112,0,0,0,0,10,15,160,25,0,0,0,255,10,160,0,140],[0,0,0,0,15,0,0,25,0,0,0,1,15,0,32,57,0,0,7,166,10,208,0,156,0,0,1,89,0,0,33,61],[0,0,0,0,11,251,1,159,0,0,0,6,6,0,0,41,0,0,0,64,0,96,4,63,0,0,0,2,10,176,0,58],[0,0,0,0,0,173,4,53,0,0,0,8,6,0,3,95,0,0,0,0,15,6,4,59,0,0,0,12,6,0,0,41],[0,0,0,0,0,246,4,53,0,0,1,193,0,0,97,61,0,0,7,167,10,240,1,151,0,0,0,248,14,176,2,16],[0,0,0,0,10,174,1,159,0,0,7,173,10,160,1,199,0,0,0,12,6,0,0,41,0,0,0,0,0,166,4,53],[0,0,0,3,10,176,2,16,0,0,0,248,10,160,1,95,0,0,0,9,10,160,1,239,0,0,0,33,11,208,0,57],[0,0,0,0,0,171,4,53,0,0,27,148,0,0,1,61,0,0,0,64,1,0,4,61,0,0,7,166,2,16,0,156],[0,0,1,89,0,0,33,61,0,0,0,64,2,16,0,57,0,0,0,64,0,32,4,63,0,0,0,1,2,0,0,58],[0,0,0,0,3,33,4,54,0,0,0,0,4,0,0,49,0,0,0,1,2,0,3,103,0,0,0,0,5,66,3,79],[0,0,0,0,5,80,3,80,0,0,0,0,5,5,4,59,0,0,0,0,0,83,4,53,0,0,1,193,0,0,97,61],[0,0,0,2,8,0,0,41,0,0,0,248,6,128,2,16,0,0,7,160,7,0,0,65,0,0,0,0,8,8,0,75],[0,0,0,0,7,6,192,25,0,0,7,167,5,80,1,151,0,0,0,0,5,117,1,159,0,0,0,0,0,83,4,53],[0,0,0,1,3,0,0,41,0,0,0,128,3,48,0,57,0,0,0,0,3,50,3,79,0,0,0,13,5,64,0,106],[0,0,0,35,5,80,0,138,0,0,0,0,3,3,4,59,0,0,7,160,6,0,0,65,0,0,0,0,7,83,0,75],[0,0,0,0,7,0,0,25,0,0,0,0,7,6,128,25,0,0,7,160,5,80,1,151,0,0,7,160,8,48,1,151],[0,0,0,0,9,88,0,75,0,0,0,0,6,0,128,25,0,0,0,0,5,88,1,63,0,0,7,160,5,80,0,156],[0,0,0,0,6,7,192,25,0,0,0,0,5,6,0,75,0,0,0,12,6,0,0,41,0,0,0,159,0,0,193,61],[0,0,0,10,5,0,0,41,0,0,0,0,5,5,4,51,0,0,0,9,7,0,0,41,0,0,0,0,7,7,4,51],[0,0,0,8,8,0,0,41,0,0,0,0,8,8,4,51,0,0,0,6,9,0,0,41,0,0,0,0,9,9,4,51],[0,0,0,5,10,0,0,41,0,0,0,0,10,10,4,51,0,0,0,0,6,99,0,25,0,0,0,0,3,98,3,79],[0,0,0,0,3,3,4,59,0,0,7,159,11,48,0,156,0,0,0,159,0,0,33,61,0,0,0,0,11,52,0,73],[0,0,0,32,6,96,0,57,0,0,7,160,12,0,0,65,0,0,0,0,13,182,0,75,0,0,0,0,13,0,0,25],[0,0,0,0,13,12,32,25,0,0,7,160,11,176,1,151,0,0,7,160,14,96,1,151,0,0,0,0,15,190,0,75],[0,0,0,0,12,0,128,25,0,0,0,0,11,190,1,63,0,0,7,160,11,176,0,156,0,0,0,0,12,13,192,25],[0,0,0,0,11,12,0,75,0,0,0,159,0,0,193,61,0,0,0,0,5,87,0,25,0,0,0,0,5,133,0,25],[0,0,0,0,5,149,0,25,0,0,0,0,5,165,0,25,0,0,0,0,5,53,0,25,0,0,0,4,7,0,0,41],[0,0,0,0,7,7,4,51,0,0,0,0,5,117,0,25,0,0,0,3,7,0,0,41,0,0,0,0,7,7,4,51],[0,0,0,0,5,117,0,25,0,0,0,0,7,1,4,51,0,0,0,0,5,117,0,25,0,0,0,64,7,0,4,61],[0,0,7,159,5,80,1,151,0,0,0,56,8,80,0,140,0,0,0,64,9,112,0,57,0,0,0,0,8,66,3,79],[0,0,0,32,4,112,0,57,0,0,28,57,0,0,65,61,0,0,0,32,11,80,2,112,0,0,7,155,10,80,0,156],[0,0,0,0,11,5,160,25,0,0,7,155,10,80,0,156,0,0,0,0,12,0,0,25,0,0,0,4,12,0,32,57],[0,0,0,2,10,192,1,191,0,0,255,255,13,176,0,140,0,0,0,0,10,12,160,25,0,0,0,16,12,176,2,112],[0,0,0,0,12,11,160,25,0,0,0,255,11,192,0,140,0,0,0,0,11,0,0,25,0,0,0,1,11,0,32,57],[0,0,7,166,12,112,0,156,0,0,1,89,0,0,33,61,0,0,0,0,10,186,1,159,0,0,0,64,0,144,4,63],[0,0,0,2,9,160,0,58,0,0,0,0,0,151,4,53,0,0,0,0,8,128,3,80,0,0,0,0,8,8,4,59],[0,0,0,0,0,132,4,53,0,0,1,193,0,0,97,61,0,0,7,167,8,128,1,151,0,0,0,248,9,160,2,16],[0,0,0,0,8,137,1,159,0,0,7,173,8,128,1,199,0,0,0,0,0,132,4,53,0,0,0,3,4,160,2,16],[0,0,0,248,4,64,1,95,0,0,0,0,4,69,1,207,0,0,0,33,5,112,0,57,0,0,0,0,0,69,4,53],[0,0,28,71,0,0,1,61,0,0,7,166,10,144,0,156,0,0,1,89,0,0,33,61,0,0,0,64,10,144,0,57],[0,0,0,64,0,160,4,63,0,0,0,9,6,0,0,41,0,0,0,0,0,105,4,53,0,0,0,7,10,0,3,95],[0,0,0,0,10,10,4,59,0,0,0,0,0,174,4,53,0,0,0,0,11,6,0,75,0,0,1,193,0,0,97,61],[0,0,0,8,6,0,0,41,0,0,0,248,11,96,2,16,0,0,7,160,12,0,0,65,0,0,0,0,13,6,0,75],[0,0,0,0,12,11,192,25,0,0,7,167,10,160,1,151,0,0,0,0,10,202,1,159,0,0,0,0,0,174,4,53],[0,0,0,12,6,0,0,41,0,0,0,65,10,96,0,140,0,0,1,193,0,0,65,61,0,0,0,5,6,0,0,41],[0,0,0,32,10,96,0,57,0,0,0,0,10,161,3,79,0,0,0,0,11,0,4,21,0,0,0,15,11,176,0,138],[0,0,0,32,11,176,0,201,0,0,7,160,13,0,0,65,0,0,0,0,10,10,4,59,0,0,0,248,10,160,2,112],[0,0,0,27,12,160,0,140,0,0,27,56,0,0,97,61,0,0,0,0,11,0,4,21,0,0,0,14,11,176,0,138],[0,0,0,32,11,176,0,201,0,0,7,174,13,0,0,65,0,0,0,28,10,160,0,140,0,0,29,6,0,0,193,61],[0,0,0,64,12,0,4,61,0,0,7,166,10,192,0,156,0,0,1,89,0,0,33,61,0,0,0,64,10,192,0,57],[0,0,0,64,0,160,4,63,0,0,0,9,6,0,0,41,0,0,0,0,10,108,4,54,0,0,0,7,14,0,3,95],[0,0,0,0,14,14,4,59,0,8,0,0,0,14,0,29,0,0,0,0,0,234,4,53,0,0,0,0,14,6,0,75],[0,0,1,193,0,0,97,61,0,0,0,8,6,0,0,41,0,7,7,167,0,96,1,155,0,0,0,7,13,208,1,175],[0,0,0,0,0,218,4,53,0,0,0,0,10,4,4,51,0,0,0,0,13,8,4,51,0,0,0,5,11,176,2,112],[0,0,0,0,11,12,0,31,0,0,0,0,11,93,0,25,0,0,0,0,10,171,0,25,0,0,0,0,11,7,4,51],[0,0,0,0,10,186,0,25,0,0,0,0,11,2,4,51,0,0,0,0,10,186,0,25,0,0,0,0,11,9,4,51],[0,0,0,0,10,186,0,25,0,0,0,0,11,12,4,51,0,0,0,0,10,186,0,25,0,0,0,64,13,0,4,61],[0,0,7,159,15,160,1,151,0,0,0,56,10,240,0,140,0,6,0,64,0,208,0,61,0,12,0,32,0,208,0,61],[0,0,29,13,0,0,65,61,0,0,0,32,14,240,2,112,0,0,7,155,10,240,0,156,0,0,0,0,14,15,160,25],[0,0,7,155,10,240,0,156,0,0,0,0,6,0,0,25,0,0,0,4,6,0,32,57,0,0,0,2,10,96,1,191],[0,0,255,255,11,224,0,140,0,0,0,0,10,6,160,25,0,0,0,16,11,224,2,112,0,0,0,0,11,14,160,25],[0,0,0,255,11,176,0,140,0,0,0,0,14,0,0,25,0,0,0,1,14,0,32,57,0,0,7,166,11,208,0,156],[0,0,1,89,0,0,33,61,0,0,0,0,10,234,1,159,0,0,0,6,6,0,0,41,0,0,0,64,0,96,4,63],[0,0,0,8,6,0,0,41,0,0,0,12,11,0,0,41,0,0,0,0,0,107,4,53,0,0,0,2,11,160,0,58],[0,0,0,0,0,189,4,53,0,0,1,193,0,0,97,61,0,0,0,248,11,160,2,16,0,0,0,7,11,176,1,175],[0,0,7,173,11,176,1,199,0,0,0,12,6,0,0,41,0,0,0,0,0,182,4,53,0,0,0,3,10,160,2,16],[0,0,0,248,10,160,1,95,0,0,0,0,10,175,1,207,0,0,0,33,11,208,0,57,0,0,0,0,0,171,4,53],[0,0,29,29,0,0,1,61,0,0,7,166,10,208,0,156,0,0,1,89,0,0,33,61,0,0,0,6,6,0,0,41],[0,0,0,64,0,96,4,63,0,0,0,7,10,0,0,41,0,0,0,0,0,173,4,53,0,0,0,8,6,0,3,95],[0,0,0,0,15,6,4,59,0,0,0,12,6,0,0,41,0,0,0,0,0,246,4,53,0,0,0,0,10,10,0,75],[0,0,1,193,0,0,97,61,0,0,7,167,10,240,1,151,0,0,0,9,6,0,0,41,0,0,0,248,11,96,2,16],[0,0,0,0,10,171,1,159,0,0,7,172,10,160,0,65,0,0,0,12,6,0,0,41,0,0,0,0,0,166,4,53],[0,0,0,64,6,0,4,61,0,0,0,32,10,96,0,57,0,0,7,174,11,0,0,65,0,9,0,0,0,10,0,29],[0,0,0,0,0,186,4,53,0,12,0,0,0,6,0,29,0,0,0,33,14,96,0,57,0,0,0,0,15,13,4,51],[0,0,0,0,11,15,0,75,0,0,27,166,0,0,97,61,0,0,0,0,11,0,0,25,0,0,0,0,10,235,0,25],[0,0,0,32,11,176,0,57,0,0,0,0,6,219,0,25,0,0,0,0,6,6,4,51,0,0,0,0,0,106,4,53],[0,0,0,0,6,251,0,75,0,0,27,159,0,0,65,61,0,0,0,0,13,239,0,25,0,0,0,0,0,13,4,53],[0,0,0,0,14,4,4,51,0,0,0,0,6,14,0,75,0,0,27,179,0,0,97,61,0,0,0,0,11,0,0,25],[0,0,0,0,6,219,0,25,0,0,0,32,11,176,0,57,0,0,0,0,10,75,0,25,0,0,0,0,10,10,4,51],[0,0,0,0,0,166,4,53,0,0,0,0,6,235,0,75,0,0,27,172,0,0,65,61,0,0,0,0,13,222,0,25],[0,0,0,0,0,13,4,53,0,0,0,0,14,8,4,51,0,0,0,0,4,14,0,75,0,0,27,192,0,0,97,61],[0,0,0,0,4,0,0,25,0,0,0,0,6,212,0,25,0,0,0,32,4,64,0,57,0,0,0,0,10,132,0,25],[0,0,0,0,10,10,4,51,0,0,0,0,0,166,4,53,0,0,0,0,6,228,0,75,0,0,27,185,0,0,65,61],[0,0,0,13,4,16,3,96,0,0,0,0,1,222,0,25,0,0,0,31,6,80,1,143,0,0,0,0,0,1,4,53],[0,0,0,5,8,80,2,114,0,0,27,207,0,0,97,61,0,0,0,0,13,0,0,25,0,0,0,5,10,208,2,16],[0,0,0,0,11,161,0,25,0,0,0,0,10,164,3,79,0,0,0,0,10,10,4,59,0,0,0,0,0,171,4,53],[0,0,0,1,13,208,0,57,0,0,0,0,10,141,0,75,0,0,27,199,0,0,65,61,0,0,0,0,10,6,0,75],[0,0,27,222,0,0,97,61,0,0,0,5,8,128,2,16,0,0,0,0,4,132,3,79,0,0,0,0,8,129,0,25],[0,0,0,3,6,96,2,16,0,0,0,0,10,8,4,51,0,0,0,0,10,106,1,207,0,0,0,0,10,106,2,47],[0,0,0,0,4,4,4,59,0,0,1,0,6,96,0,137,0,0,0,0,4,100,2,47,0,0,0,0,4,100,1,207],[0,0,0,0,4,164,1,159,0,0,0,0,0,72,4,53,0,0,0,0,1,81,0,25,0,0,0,0,0,1,4,53],[0,0,0,0,4,7,4,51,0,0,0,0,5,4,0,75,0,0,27,235,0,0,97,61,0,0,0,0,5,0,0,25],[0,0,0,0,6,21,0,25,0,0,0,32,5,80,0,57,0,0,0,0,8,117,0,25,0,0,0,0,8,8,4,51],[0,0,0,0,0,134,4,53,0,0,0,0,6,69,0,75,0,0,27,228,0,0,65,61,0,0,0,0,1,20,0,25],[0,0,0,0,0,1,4,53,0,0,0,0,4,12,4,51,0,0,0,0,5,4,0,75,0,0,27,248,0,0,97,61],[0,0,0,0,5,0,0,25,0,0,0,0,6,21,0,25,0,0,0,32,5,80,0,57,0,0,0,0,7,197,0,25],[0,0,0,0,7,7,4,51,0,0,0,0,0,118,4,53,0,0,0,0,6,69,0,75,0,0,27,241,0,0,65,61],[0,0,0,0,1,20,0,25,0,0,0,0,0,1,4,53,0,0,0,0,4,2,4,51,0,0,0,0,5,4,0,75],[0,0,28,5,0,0,97,61,0,0,0,0,5,0,0,25,0,0,0,0,6,21,0,25,0,0,0,32,5,80,0,57],[0,0,0,0,7,37,0,25,0,0,0,0,7,7,4,51,0,0,0,0,0,118,4,53,0,0,0,0,6,69,0,75],[0,0,27,254,0,0,65,61,0,0,0,0,1,20,0,25,0,0,0,0,0,1,4,53,0,0,0,0,2,9,4,51],[0,0,0,0,4,2,0,75,0,0,28,18,0,0,97,61,0,0,0,0,4,0,0,25,0,0,0,0,5,20,0,25],[0,0,0,32,4,64,0,57,0,0,0,0,6,148,0,25,0,0,0,0,6,6,4,51,0,0,0,0,0,101,4,53],[0,0,0,0,5,36,0,75,0,0,28,11,0,0,65,61,0,0,0,0,1,18,0,25,0,0,0,0,0,1,4,53],[0,0,0,12,4,0,0,41,0,0,0,0,1,65,0,73,0,0,0,32,2,16,0,138,0,0,0,0,0,36,4,53],[0,0,0,31,1,16,0,57,0,0,0,0,2,49,1,111,0,0,0,0,1,66,0,25,0,0,0,0,2,33,0,75],[0,0,0,0,2,0,0,25,0,0,0,1,2,0,64,57,0,0,7,159,3,16,0,156,0,0,1,89,0,0,33,61],[0,0,0,1,2,32,1,144,0,0,1,89,0,0,193,61,0,0,0,64,0,16,4,63,0,0,7,155,1,0,0,65],[0,0,0,9,3,0,0,41,0,0,7,155,2,48,0,156,0,0,0,0,3,1,128,25,0,0,0,64,2,48,2,16],[0,0,0,12,3,0,0,41,0,0,0,0,3,3,4,51,0,0,7,155,4,48,0,156,0,0,0,0,3,1,128,25],[0,0,0,96,3,48,2,16,0,0,0,0,2,35,1,159,0,0,0,0,3,0,4,20,0,0,7,155,4,48,0,156],[0,0,0,0,3,1,128,25,0,0,0,192,1,48,2,16,0,0,0,0,1,33,1,159,0,0,7,175,1,16,1,199],[0,0,128,16,2,0,0,57,30,104,30,94,0,0,4,15,0,0,0,1,2,32,1,144,0,0,0,159,0,0,97,61],[0,0,29,193,0,0,1,61,0,0,7,166,10,112,0,156,0,0,1,89,0,0,33,61,0,0,0,64,0,144,4,63],[0,0,0,1,9,0,0,58,0,0,0,0,0,151,4,53,0,0,0,0,8,128,3,80,0,0,0,0,8,8,4,59],[0,0,0,0,0,132,4,53,0,0,1,193,0,0,97,61,0,0,7,167,8,128,1,151,0,0,0,248,5,80,2,16],[0,0,0,0,5,133,1,159,0,0,7,172,5,80,0,65,0,0,0,0,0,84,4,53,0,0,0,64,4,0,4,61],[0,0,0,32,5,64,0,57,0,0,0,0,8,7,4,51,0,0,0,0,9,8,0,75,0,0,28,84,0,0,97,61],[0,0,0,0,9,0,0,25,0,0,0,0,10,89,0,25,0,0,0,32,9,144,0,57,0,0,0,0,11,121,0,25],[0,0,0,0,11,11,4,51,0,0,0,0,0,186,4,53,0,0,0,0,10,137,0,75,0,0,28,77,0,0,65,61],[0,0,0,0,7,88,0,25,0,0,0,0,0,7,4,53,0,0,0,10,8,0,0,41,0,0,0,0,8,8,4,51],[0,0,0,0,9,8,0,75,0,0,28,98,0,0,97,61,0,0,0,0,9,0,0,25,0,0,0,0,10,121,0,25],[0,0,0,32,9,144,0,57,0,0,0,10,11,144,0,41,0,0,0,0,11,11,4,51,0,0,0,0,0,186,4,53],[0,0,0,0,10,137,0,75,0,0,28,91,0,0,65,61,0,0,0,0,7,120,0,25,0,0,0,0,0,7,4,53],[0,0,0,9,8,0,0,41,0,0,0,0,8,8,4,51,0,0,0,0,9,8,0,75,0,0,28,112,0,0,97,61],[0,0,0,0,9,0,0,25,0,0,0,0,10,121,0,25,0,0,0,32,9,144,0,57,0,0,0,9,11,144,0,41],[0,0,0,0,11,11,4,51,0,0,0,0,0,186,4,53,0,0,0,0,10,137,0,75,0,0,28,105,0,0,65,61],[0,0,0,0,7,120,0,25,0,0,0,0,0,7,4,53,0,0,0,8,8,0,0,41,0,0,0,0,8,8,4,51],[0,0,0,0,9,8,0,75,0,0,28,126,0,0,97,61,0,0,0,0,9,0,0,25,0,0,0,0,10,121,0,25],[0,0,0,32,9,144,0,57,0,0,0,8,11,144,0,41,0,0,0,0,11,11,4,51,0,0,0,0,0,186,4,53],[0,0,0,0,10,137,0,75,0,0,28,119,0,0,65,61,0,0,0,0,7,120,0,25,0,0,0,0,0,7,4,53],[0,0,0,6,8,0,0,41,0,0,0,0,8,8,4,51,0,0,0,0,9,8,0,75,0,0,28,140,0,0,97,61],[0,0,0,0,9,0,0,25,0,0,0,0,10,121,0,25,0,0,0,32,9,144,0,57,0,0,0,6,11,144,0,41],[0,0,0,0,11,11,4,51,0,0,0,0,0,186,4,53,0,0,0,0,10,137,0,75,0,0,28,133,0,0,65,61],[0,0,0,0,7,120,0,25,0,0,0,0,0,7,4,53,0,0,0,5,8,0,0,41,0,0,0,0,8,8,4,51],[0,0,0,0,9,8,0,75,0,0,28,154,0,0,97,61,0,0,0,0,9,0,0,25,0,0,0,0,10,121,0,25],[0,0,0,32,9,144,0,57,0,0,0,5,11,144,0,41,0,0,0,0,11,11,4,51,0,0,0,0,0,186,4,53],[0,0,0,0,10,137,0,75,0,0,28,147,0,0,65,61,0,0,0,0,6,98,3,79,0,0,0,0,2,120,0,25],[0,0,0,31,7,48,1,143,0,0,0,0,0,2,4,53,0,0,0,5,8,48,2,114,0,0,28,169,0,0,97,61],[0,0,0,0,9,0,0,25,0,0,0,5,10,144,2,16,0,0,0,0,11,162,0,25,0,0,0,0,10,166,3,79],[0,0,0,0,10,10,4,59,0,0,0,0,0,171,4,53,0,0,0,1,9,144,0,57,0,0,0,0,10,137,0,75],[0,0,28,161,0,0,65,61,0,0,0,0,9,7,0,75,0,0,28,184,0,0,97,61,0,0,0,5,8,128,2,16],[0,0,0,0,6,134,3,79,0,0,0,0,8,130,0,25,0,0,0,3,7,112,2,16,0,0,0,0,9,8,4,51],[0,0,0,0,9,121,1,207,0,0,0,0,9,121,2,47,0,0,0,0,6,6,4,59,0,0,1,0,7,112,0,137],[0,0,0,0,6,118,2,47,0,0,0,0,6,118,1,207,0,0,0,0,6,150,1,159,0,0,0,0,0,104,4,53],[0,0,0,0,2,50,0,25,0,0,0,0,0,2,4,53,0,0,0,0,3,1,4,51,0,0,0,0,6,3,0,75],[0,0,28,197,0,0,97,61,0,0,0,0,6,0,0,25,0,0,0,0,7,38,0,25,0,0,0,32,6,96,0,57],[0,0,0,0,8,22,0,25,0,0,0,0,8,8,4,51,0,0,0,0,0,135,4,53,0,0,0,0,7,54,0,75],[0,0,28,190,0,0,65,61,0,0,0,0,1,35,0,25,0,0,0,0,0,1,4,53,0,0,0,4,2,0,0,41],[0,0,0,0,2,2,4,51,0,0,0,0,3,2,0,75,0,0,28,211,0,0,97,61,0,0,0,0,3,0,0,25],[0,0,0,0,6,19,0,25,0,0,0,32,3,48,0,57,0,0,0,4,7,48,0,41,0,0,0,0,7,7,4,51],[0,0,0,0,0,118,4,53,0,0,0,0,6,35,0,75,0,0,28,204,0,0,65,61,0,0,0,0,1,18,0,25],[0,0,0,0,0,1,4,53,0,0,0,3,2,0,0,41,0,0,0,0,2,2,4,51,0,0,0,0,3,2,0,75],[0,0,28,225,0,0,97,61,0,0,0,0,3,0,0,25,0,0,0,0,6,19,0,25,0,0,0,32,3,48,0,57],[0,0,0,3,7,48,0,41,0,0,0,0,7,7,4,51,0,0,0,0,0,118,4,53,0,0,0,0,6,35,0,75],[0,0,28,218,0,0,65,61,0,0,0,0,1,18,0,25,0,0,0,0,0,1,4,53,0,0,0,0,1,65,0,73],[0,0,0,32,2,16,0,138,0,0,0,0,0,36,4,53,0,0,0,31,1,16,0,57,0,0,0,7,2,16,1,127],[0,0,0,0,1,66,0,25,0,0,0,0,2,33,0,75,0,0,0,0,2,0,0,25,0,0,0,1,2,0,64,57],[0,0,7,159,3,16,0,156,0,0,1,89,0,0,33,61,0,0,0,1,2,32,1,144,0,0,1,89,0,0,193,61],[0,0,0,64,0,16,4,63,0,0,7,155,1,0,0,65,0,0,7,155,2,80,0,156,0,0,0,0,5,1,128,25],[0,0,0,64,2,80,2,16,0,0,0,0,3,4,4,51,0,0,7,155,4,48,0,156,0,0,0,0,3,1,128,25],[0,0,0,96,3,48,2,16,0,0,0,0,2,35,1,159,0,0,0,0,3,0,4,20,0,0,7,155,4,48,0,156],[0,0,0,0,3,1,128,25,0,0,0,192,1,48,2,16,0,0,0,0,1,33,1,159,0,0,7,175,1,16,1,199],[0,0,128,16,2,0,0,57,30,104,30,94,0,0,4,15,0,0,0,1,2,32,1,144,0,0,0,159,0,0,97,61],[0,0,0,0,1,1,4,59,0,0,11,86,0,0,1,61,0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57],[0,0,7,194,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,36,2,16,0,57,0,0,0,15,3,0,0,57],[0,0,12,95,0,0,1,61,0,0,7,166,10,208,0,156,0,0,1,89,0,0,33,61,0,0,0,6,6,0,0,41],[0,0,0,64,0,96,4,63,0,0,0,8,6,0,0,41,0,0,0,12,10,0,0,41,0,0,0,0,0,106,4,53],[0,0,0,9,6,0,0,41,0,0,0,0,0,109,4,53,0,0,0,0,10,6,0,75,0,0,1,193,0,0,97,61],[0,0,0,248,10,240,2,16,0,0,0,7,10,160,1,175,0,0,7,172,10,160,0,65,0,0,0,12,6,0,0,41],[0,0,0,0,0,166,4,53,0,0,0,64,6,0,4,61,0,0,0,32,10,96,0,57,0,0,7,175,11,0,0,65],[0,9,0,0,0,10,0,29,0,0,0,0,0,186,4,53,0,12,0,0,0,6,0,29,0,0,0,33,14,96,0,57],[0,0,0,0,15,13,4,51,0,0,0,0,11,15,0,75,0,0,29,47,0,0,97,61,0,0,0,0,11,0,0,25],[0,0,0,0,10,235,0,25,0,0,0,32,11,176,0,57,0,0,0,0,6,219,0,25,0,0,0,0,6,6,4,51],[0,0,0,0,0,106,4,53,0,0,0,0,6,251,0,75,0,0,29,40,0,0,65,61,0,0,0,0,13,239,0,25],[0,0,0,0,0,13,4,53,0,0,0,0,14,4,4,51,0,0,0,0,6,14,0,75,0,0,29,60,0,0,97,61],[0,0,0,0,11,0,0,25,0,0,0,0,6,219,0,25,0,0,0,32,11,176,0,57,0,0,0,0,10,75,0,25],[0,0,0,0,10,10,4,51,0,0,0,0,0,166,4,53,0,0,0,0,6,235,0,75,0,0,29,53,0,0,65,61],[0,0,0,0,13,222,0,25,0,0,0,0,0,13,4,53,0,0,0,0,14,8,4,51,0,0,0,0,4,14,0,75],[0,0,29,73,0,0,97,61,0,0,0,0,4,0,0,25,0,0,0,0,6,212,0,25,0,0,0,32,4,64,0,57],[0,0,0,0,10,132,0,25,0,0,0,0,10,10,4,51,0,0,0,0,0,166,4,53,0,0,0,0,6,228,0,75],[0,0,29,66,0,0,65,61,0,0,0,13,4,16,3,96,0,0,0,0,1,222,0,25,0,0,0,31,6,80,1,143],[0,0,0,0,0,1,4,53,0,0,0,5,8,80,2,114,0,0,29,88,0,0,97,61,0,0,0,0,13,0,0,25],[0,0,0,5,10,208,2,16,0,0,0,0,11,161,0,25,0,0,0,0,10,164,3,79,0,0,0,0,10,10,4,59],[0,0,0,0,0,171,4,53,0,0,0,1,13,208,0,57,0,0,0,0,10,141,0,75,0,0,29,80,0,0,65,61],[0,0,0,0,10,6,0,75,0,0,29,103,0,0,97,61,0,0,0,5,8,128,2,16,0,0,0,0,4,132,3,79],[0,0,0,0,8,129,0,25,0,0,0,3,6,96,2,16,0,0,0,0,10,8,4,51,0,0,0,0,10,106,1,207],[0,0,0,0,10,106,2,47,0,0,0,0,4,4,4,59,0,0,1,0,6,96,0,137,0,0,0,0,4,100,2,47],[0,0,0,0,4,100,1,207,0,0,0,0,4,164,1,159,0,0,0,0,0,72,4,53,0,0,0,0,1,81,0,25],[0,0,0,0,0,1,4,53,0,0,0,0,4,7,4,51,0,0,0,0,5,4,0,75,0,0,29,116,0,0,97,61],[0,0,0,0,5,0,0,25,0,0,0,0,6,21,0,25,0,0,0,32,5,80,0,57,0,0,0,0,8,117,0,25],[0,0,0,0,8,8,4,51,0,0,0,0,0,134,4,53,0,0,0,0,6,69,0,75,0,0,29,109,0,0,65,61],[0,0,0,0,1,20,0,25,0,0,0,0,0,1,4,53,0,0,0,0,4,12,4,51,0,0,0,0,5,4,0,75],[0,0,29,129,0,0,97,61,0,0,0,0,5,0,0,25,0,0,0,0,6,21,0,25,0,0,0,32,5,80,0,57],[0,0,0,0,7,197,0,25,0,0,0,0,7,7,4,51,0,0,0,0,0,118,4,53,0,0,0,0,6,69,0,75],[0,0,29,122,0,0,65,61,0,0,0,0,1,20,0,25,0,0,0,0,0,1,4,53,0,0,0,0,4,2,4,51],[0,0,0,0,5,4,0,75,0,0,29,142,0,0,97,61,0,0,0,0,5,0,0,25,0,0,0,0,6,21,0,25],[0,0,0,32,5,80,0,57,0,0,0,0,7,37,0,25,0,0,0,0,7,7,4,51,0,0,0,0,0,118,4,53],[0,0,0,0,6,69,0,75,0,0,29,135,0,0,65,61,0,0,0,0,1,20,0,25,0,0,0,0,0,1,4,53],[0,0,0,0,2,9,4,51,0,0,0,0,4,2,0,75,0,0,29,155,0,0,97,61,0,0,0,0,4,0,0,25],[0,0,0,0,5,20,0,25,0,0,0,32,4,64,0,57,0,0,0,0,6,148,0,25,0,0,0,0,6,6,4,51],[0,0,0,0,0,101,4,53,0,0,0,0,5,36,0,75,0,0,29,148,0,0,65,61,0,0,0,0,1,18,0,25],[0,0,0,0,0,1,4,53,0,0,0,12,4,0,0,41,0,0,0,0,1,65,0,73,0,0,0,32,2,16,0,138],[0,0,0,0,0,36,4,53,0,0,0,31,1,16,0,57,0,0,0,0,2,49,1,111,0,0,0,0,1,66,0,25],[0,0,0,0,2,33,0,75,0,0,0,0,2,0,0,25,0,0,0,1,2,0,64,57,0,0,7,159,3,16,0,156],[0,0,1,89,0,0,33,61,0,0,0,1,2,32,1,144,0,0,1,89,0,0,193,61,0,0,0,64,0,16,4,63],[0,0,7,155,1,0,0,65,0,0,0,9,3,0,0,41,0,0,7,155,2,48,0,156,0,0,0,0,3,1,128,25],[0,0,0,64,2,48,2,16,0,0,0,12,3,0,0,41,0,0,0,0,3,3,4,51,0,0,7,155,4,48,0,156],[0,0,0,0,3,1,128,25,0,0,0,96,3,48,2,16,0,0,0,0,2,35,1,159,0,0,0,0,3,0,4,20],[0,0,7,155,4,48,0,156,0,0,0,0,3,1,128,25,0,0,0,192,1,48,2,16,0,0,0,0,1,33,1,159],[0,0,7,175,1,16,1,199,0,0,128,16,2,0,0,57,30,104,30,94,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,0,159,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,0,2,0,4,21,0,0,0,10,2,32,0,105],[0,0,0,0,2,0,0,2,0,0,11,86,0,0,1,61,0,0,0,0,3,0,4,20,0,0,0,0,4,18,0,25],[0,0,0,0,2,36,0,75,0,0,0,0,5,0,0,25,0,0,0,1,5,0,64,57,0,0,7,155,2,16,1,151],[0,0,0,1,1,80,1,144,0,0,30,31,0,0,193,61,0,0,0,0,1,0,0,49,0,0,0,0,5,65,0,75],[0,0,30,31,0,0,65,61,0,0,0,1,2,32,3,103,0,0,7,176,5,48,0,156,0,0,30,35,0,0,129,61],[0,0,0,0,1,65,0,73,0,0,7,155,1,16,1,151,0,0,0,0,1,18,3,223,0,0,0,192,2,48,2,16],[0,0,7,177,2,32,1,151,0,0,7,178,2,32,1,199,0,0,0,0,1,33,3,175,0,0,128,16,2,0,0,57],[30,104,30,99,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,7,155,3,48,1,151],[0,0,0,1,2,32,1,144,0,0,30,42,0,0,97,61,0,0,0,63,2,48,0,57,0,0,7,179,4,32,1,151],[0,0,0,64,2,0,4,61,0,0,0,0,4,66,0,25,0,0,0,0,5,36,0,75,0,0,0,0,5,0,0,25],[0,0,0,1,5,0,64,57,0,0,7,159,6,64,0,156,0,0,30,69,0,0,33,61,0,0,0,1,5,80,1,144],[0,0,30,69,0,0,193,61,0,0,0,64,0,64,4,63,0,0,0,0,4,50,4,54,0,0,0,31,5,48,0,57],[0,0,0,5,5,80,2,114,0,0,29,253,0,0,97,61,0,0,0,0,6,0,0,49,0,0,0,1,6,96,3,103],[0,0,0,0,7,0,0,25,0,0,0,5,8,112,2,16,0,0,0,0,9,132,0,25,0,0,0,0,8,134,3,79],[0,0,0,0,8,8,4,59,0,0,0,0,0,137,4,53,0,0,0,1,7,112,0,57,0,0,0,0,8,87,0,75],[0,0,29,245,0,0,65,61,0,0,0,0,5,0,0,75,0,0,29,255,0,0,97,61,0,0,0,31,5,48,1,143],[0,0,0,5,3,48,2,114,0,0,30,11,0,0,97,61,0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16],[0,0,0,0,8,116,0,25,0,0,0,0,7,113,3,79,0,0,0,0,7,7,4,59,0,0,0,0,0,120,4,53],[0,0,0,1,6,96,0,57,0,0,0,0,7,54,0,75,0,0,30,3,0,0,65,61,0,0,0,0,6,5,0,75],[0,0,30,26,0,0,97,61,0,0,0,5,3,48,2,16,0,0,0,0,1,49,3,79,0,0,0,0,3,52,0,25],[0,0,0,3,5,80,2,16,0,0,0,0,6,3,4,51,0,0,0,0,6,86,1,207,0,0,0,0,6,86,2,47],[0,0,0,0,1,1,4,59,0,0,1,0,5,80,0,137,0,0,0,0,1,81,2,47,0,0,0,0,1,81,1,207],[0,0,0,0,1,97,1,159,0,0,0,0,0,19,4,53,0,0,0,0,1,2,4,51,0,0,0,32,1,16,0,140],[0,0,30,75,0,0,193,61,0,0,0,0,1,4,4,51,0,0,0,0,0,1,4,45,0,0,7,195,1,0,0,65],[0,0,0,0,0,16,4,53,0,0,0,17,1,0,0,57,0,0,30,72,0,0,1,61,0,0,0,64,1,0,4,61],[0,0,0,68,2,16,0,57,0,0,7,191,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,36,2,16,0,57],[0,0,0,8,3,0,0,57,0,0,30,81,0,0,1,61,0,0,0,31,4,48,1,143,0,0,0,5,2,48,2,114],[0,0,30,53,0,0,97,61,0,0,0,0,5,0,0,25,0,0,0,5,6,80,2,16,0,0,0,0,7,97,3,79],[0,0,0,0,7,7,4,59,0,0,0,0,0,118,4,53,0,0,0,1,5,80,0,57,0,0,0,0,6,37,0,75],[0,0,30,46,0,0,65,61,0,0,0,0,5,4,0,75,0,0,30,67,0,0,97,61,0,0,0,3,4,64,2,16],[0,0,0,5,2,32,2,16,0,0,0,0,5,2,4,51,0,0,0,0,5,69,1,207,0,0,0,0,5,69,2,47],[0,0,0,0,1,33,3,79,0,0,0,0,1,1,4,59,0,0,1,0,4,64,0,137,0,0,0,0,1,65,2,47],[0,0,0,0,1,65,1,207,0,0,0,0,1,81,1,159,0,0,0,0,0,18,4,53,0,0,0,96,1,48,2,16],[0,0,30,106,0,1,4,48,0,0,7,195,1,0,0,65,0,0,0,0,0,16,4,53,0,0,0,65,1,0,0,57],[0,0,0,4,0,16,4,63,0,0,7,196,1,0,0,65,0,0,30,106,0,1,4,48,0,0,0,64,1,0,4,61],[0,0,0,68,2,16,0,57,0,0,7,181,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,36,2,16,0,57],[0,0,0,31,3,0,0,57,0,0,0,0,0,50,4,53,0,0,7,161,2,0,0,65,0,0,0,0,0,33,4,53],[0,0,0,4,2,16,0,57,0,0,0,32,3,0,0,57,0,0,0,0,0,50,4,53,0,0,7,155,2,0,0,65],[0,0,7,155,3,16,0,156,0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16,0,0,7,182,1,16,1,199],[0,0,30,106,0,1,4,48,0,0,0,0,0,1,4,47,0,0,30,97,0,33,4,35,0,0,0,1,2,0,0,57],[0,0,0,0,0,1,4,45,0,0,0,0,2,0,0,25,0,0,0,0,0,1,4,45,0,0,30,102,0,33,4,35],[0,0,0,1,2,0,0,57,0,0,0,0,0,1,4,45,0,0,0,0,2,0,0,25,0,0,0,0,0,1,4,45],[0,0,30,104,0,0,4,50,0,0,30,105,0,1,4,46,0,0,30,106,0,1,4,48,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],[0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,1,0,0,0,0,0,0,0,0,0],[255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[235,228,163,215,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255],[128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[8,195,121,160,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[69,110,99,111,100,105,110,103,32,117,110,115,117,112,112,111,114,116,101,100,32,116,120,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,128,0,0,0,0,0,0,0,0],[154,138,5,146,172,137,197,173,59,198,223,130,36,193,123,72,89,118,245,151,223,16,78,226,13,13,244,21,36,31,103,11],[2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,191],[0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255],[129,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[148,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[184,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0],[0,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,255,255,255,224],[7,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255],[107,101,99,99,97,107,50,53,54,32,114,101,116,117,114,110,101,100,32,105,110,118,97,108,105,100,32,100,97,116,97,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,0,0,0,0,0,0,0,0],[132,142,27,250,26,196,227,87,107,114,139,218,103,33,178,21,199,10,119,153,165,180,134,98,130,167,27,171,149,75,170,200],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,254,31],[194,248,120,113,118,184,172,107,247,33,91,74,220,193,224,105,191,74,184,45,154,177,223,5,165,122,145,212,37,147,91,110],[173,124,91,239,2,120,22,168,0,218,23,54,68,79,181,138,128,126,244,201,96,59,120,72,103,63,126,58,104,235,20,165],[25,180,83,206,69,170,170,243,163,0,245,169,236,149,134,155,79,40,171,16,67,11,87,46,226,24,195,166,165,224,125,111],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,95],[25,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,127],[79,118,101,114,102,108,111,119,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[128,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[85,110,115,117,112,112,111,114,116,101,100,32,116,120,32,116,121,112,101,0,0,0,0,0,0,0,0,0,0,0,0,0],[73,110,118,97,108,105,100,32,118,32,118,97,108,117,101,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[78,72,123,113,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,36,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,159],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[161,135,70,180,171,129,132,196,113,180,222,52,244,51,34,63,179,4,137,162,144,246,227,135,212,103,1,116,178,89,133,86]],"0x000000000000000000000000000000000000800e":[[0,2,0,0,0,0,0,2,0,12,0,0,0,0,0,2,0,1,0,0,0,1,3,85,0,0,0,0,3,1,0,25],[0,0,0,96,4,48,2,112,0,0,1,44,0,64,1,157,0,0,0,128,3,0,0,57,0,0,0,64,0,48,4,63],[0,2,0,0,0,4,0,29,0,0,1,44,3,64,1,151,0,0,0,1,2,32,1,144,0,0,1,242,0,0,193,61],[0,0,0,4,2,48,0,140,0,0,2,74,0,0,65,61,0,0,0,0,2,1,4,59,0,0,0,224,2,32,2,112],[0,0,1,46,4,32,0,156,0,0,1,128,0,0,193,61,0,0,0,4,2,48,0,138,0,0,0,128,2,32,0,140],[0,0,2,74,0,0,65,61,0,0,0,4,2,16,3,112,0,0,0,0,8,2,4,59,0,0,0,68,2,16,3,112],[0,0,0,0,4,2,4,59,0,0,0,36,2,16,3,112,0,0,0,0,14,2,4,59,0,7,0,0,0,4,0,29],[0,0,1,48,2,64,0,156,0,0,2,74,0,0,33,61,0,0,0,7,2,0,0,41,0,0,0,35,2,32,0,57],[0,0,1,49,4,0,0,65,0,0,0,0,5,50,0,75,0,0,0,0,5,0,0,25,0,0,0,0,5,4,128,25],[0,0,1,49,2,32,1,151,0,0,0,0,6,2,0,75,0,0,0,0,4,0,128,25,0,0,1,49,2,32,0,156],[0,0,0,0,4,5,192,25,0,0,0,0,2,4,0,75,0,0,2,74,0,0,193,61,0,0,0,7,2,0,0,41],[0,0,0,4,2,32,0,57,0,0,0,0,2,33,3,79,0,0,0,0,6,2,4,59,0,0,1,48,2,96,0,156],[0,0,2,74,0,0,33,61,0,0,0,7,2,0,0,41,0,0,0,36,5,32,0,57,0,1,0,0,0,86,0,29],[0,0,0,1,2,48,0,108,0,0,2,74,0,0,65,61,0,0,0,100,2,16,3,112,0,0,0,0,2,2,4,59],[0,9,0,0,0,2,0,29,0,0,1,48,2,32,0,156,0,0,2,74,0,0,33,61,0,0,0,9,2,0,0,41],[0,0,0,35,2,32,0,57,0,0,1,49,4,0,0,65,0,0,0,0,7,50,0,75,0,0,0,0,7,0,0,25],[0,0,0,0,7,4,128,25,0,0,1,49,2,32,1,151,0,0,0,0,9,2,0,75,0,0,0,0,4,0,128,25],[0,0,1,49,2,32,0,156,0,0,0,0,4,7,192,25,0,0,0,0,2,4,0,75,0,0,2,74,0,0,193,61],[0,0,0,9,2,0,0,41,0,0,0,4,2,32,0,57,0,0,0,0,2,33,3,79,0,0,0,0,2,2,4,59],[0,11,0,0,0,2,0,29,0,0,1,48,2,32,0,156,0,0,2,74,0,0,33,61,0,0,0,9,2,0,0,41],[0,0,0,36,4,32,0,57,0,10,0,0,0,4,0,29,0,0,0,11,2,64,0,41,0,0,0,0,2,50,0,75],[0,0,2,74,0,0,33,61,0,0,0,0,2,0,4,17,0,0,128,8,2,32,0,140,0,0,1,250,0,0,193,61],[0,0,0,9,2,224,0,140,0,0,2,2,0,0,129,61,0,12,0,2,0,0,0,61,0,0,1,16,41,128,0,201],[0,0,1,17,10,0,0,138,0,8,0,0,0,0,0,29,0,0,0,0,7,0,0,25,0,6,0,0,0,14,0,29],[0,0,0,0,2,8,0,75,0,0,0,101,0,0,97,61,0,0,0,0,50,137,0,217,0,0,1,16,2,32,0,140],[0,0,2,239,0,0,193,61,0,0,0,0,2,151,0,75,0,0,0,206,0,0,129,61,0,0,0,0,2,167,0,75],[0,0,2,239,0,0,33,61,0,0,1,16,4,112,0,57,0,0,0,0,2,100,0,75,0,0,2,74,0,0,33,61],[0,0,0,0,2,87,0,25,0,0,0,60,2,32,0,57,0,0,0,0,3,33,3,79,0,0,0,0,3,3,4,59],[0,0,1,48,3,48,1,152,0,0,0,0,7,4,0,25,0,0,0,96,0,0,193,61,0,0,0,1,15,0,0,138],[0,0,0,8,3,240,0,107,0,0,2,239,0,0,97,61,0,0,0,12,11,0,0,41,0,0,0,10,3,176,0,41],[0,0,0,0,7,49,3,79,0,0,0,8,3,32,0,138,0,0,0,0,2,49,3,79,0,0,0,0,7,7,4,59],[0,0,0,0,2,2,4,59,0,0,0,0,2,114,0,75,0,0,2,42,0,0,193,61,0,0,0,33,2,0,0,138],[0,0,0,0,2,43,0,75,0,0,2,239,0,0,33,61,0,0,0,12,11,0,0,41,0,0,0,32,2,176,0,57],[0,0,0,11,7,32,0,108,0,0,1,86,0,0,129,61,0,0,0,10,2,32,0,41,0,0,0,0,2,33,3,79],[0,0,0,0,2,2,4,59,0,0,0,251,7,32,2,112,0,0,0,248,2,32,2,112,0,0,0,7,13,32,1,144],[0,0,0,32,7,0,96,57,0,0,0,33,2,176,0,57,0,12,0,0,0,39,0,30,0,0,2,239,0,0,65,61],[0,0,0,12,12,0,0,41,0,0,0,11,12,192,0,108,0,0,2,74,0,0,33,61,0,0,0,10,2,32,0,41],[0,0,0,72,12,48,0,57,0,0,0,0,12,193,3,79,0,0,0,40,3,48,0,57,0,0,0,0,14,49,3,79],[0,0,0,0,2,33,3,79,0,0,0,0,3,2,4,59,0,0,0,0,2,14,4,59,0,5,0,0,0,2,0,29],[0,0,0,6,14,0,0,41,0,0,0,0,11,12,4,59,0,0,0,31,2,112,0,140,0,0,0,3,2,112,2,16],[0,0,0,171,0,0,33,61,0,0,1,0,12,32,0,137,0,0,0,0,12,207,1,207,0,0,0,0,14,32,0,73],[0,0,1,0,15,0,0,138,0,0,0,0,14,254,0,75,0,0,0,6,14,0,0,41,0,0,0,0,12,0,64,25],[0,0,0,0,3,195,1,111,0,0,0,0,12,7,0,75,0,0,0,204,0,0,97,61,0,0,1,0,12,32,0,140],[0,0,2,239,0,0,33,61,0,0,0,0,199,114,0,217,0,0,0,8,7,112,0,140,0,0,2,239,0,0,193,61],[0,0,1,0,7,32,0,137,0,0,0,0,3,115,2,47,0,0,0,0,2,2,0,75,0,0,0,0,3,0,96,25],[0,0,0,8,2,0,0,41,0,8,0,1,0,32,0,61,0,0,0,0,2,13,0,75,0,0,0,193,0,0,97,61],[0,0,0,3,2,208,0,140,0,0,0,193,0,0,97,61,0,0,0,1,2,208,0,140,0,0,0,197,0,0,193,61],[0,0,0,5,2,48,0,41,0,0,0,0,2,178,0,75,0,0,0,0,7,4,0,25,0,0,0,96,0,0,97,61],[0,0,1,108,0,0,1,61,0,0,0,0,2,179,0,75,0,0,0,0,7,4,0,25,0,0,0,96,0,0,97,61],[0,0,1,90,0,0,1,61,0,0,0,2,2,208,0,140,0,0,1,100,0,0,193,61,0,0,0,5,2,48,0,105],[0,0,0,0,2,178,0,75,0,0,0,0,7,4,0,25,0,0,0,96,0,0,97,61,0,0,1,118,0,0,1,61],[0,0,0,0,3,0,0,25,0,0,0,180,0,0,1,61,0,0,0,9,2,0,0,41,0,0,0,6,2,32,0,57],[0,0,0,0,2,33,3,79,0,0,0,0,2,2,4,59,0,0,255,255,2,32,1,143,0,0,0,8,2,32,0,107],[0,0,2,12,0,0,193,61,0,0,0,3,3,224,2,16,0,0,1,0,2,48,0,137,0,0,0,1,4,0,0,138],[0,8,0,0,0,2,0,29,0,4,0,0,0,4,0,29,0,0,0,0,4,36,1,207,0,0,0,0,2,48,0,73],[0,3,1,0,0,0,0,146,0,0,0,3,2,32,0,108,0,0,0,0,4,0,64,25,0,5,0,0,0,4,0,29],[0,9,0,0,0,3,0,29,0,0,1,0,2,48,0,140,0,0,2,22,0,0,33,61,0,0,0,0,3,0,0,25],[0,0,0,232,0,0,1,61,0,0,0,0,2,210,0,75,0,0,0,0,3,4,0,25,0,0,1,90,0,0,193,61],[0,0,0,0,2,8,0,75,0,0,0,237,0,0,97,61,0,0,0,0,66,137,0,217,0,0,1,16,2,32,0,140],[0,0,2,239,0,0,193,61,0,0,0,0,2,147,0,75,0,0,2,76,0,0,129,61,0,0,0,0,2,163,0,75],[0,0,2,239,0,0,33,61,0,0,1,16,4,48,0,57,0,0,0,0,2,100,0,75,0,0,2,74,0,0,33,61],[0,0,0,0,2,83,0,25,0,0,0,60,13,32,0,57,0,0,0,0,2,209,3,79,0,0,0,0,2,2,4,59],[0,0,1,48,7,32,1,152,0,0,0,0,3,4,0,25,0,0,0,232,0,0,97,61,0,0,0,12,15,224,0,42],[0,0,2,239,0,0,65,61,0,0,0,11,2,240,0,108,0,0,2,74,0,0,33,61,0,0,0,10,3,0,0,41],[0,0,0,12,2,48,0,41,0,0,0,0,2,33,3,79,0,0,0,0,2,2,4,59,0,0,0,31,3,224,0,140],[0,0,1,8,0,0,33,61,0,0,0,5,2,32,1,127,0,0,0,0,3,14,0,75,0,0,2,231,0,0,97,61],[0,0,0,9,179,224,0,249,0,0,0,8,3,48,0,140,0,0,2,239,0,0,193,61,0,0,0,9,3,0,0,107],[0,0,2,231,0,0,97,61,0,0,0,8,2,32,2,80,0,0,0,0,2,39,0,75,0,0,2,231,0,0,193,61],[0,0,0,11,2,240,0,108,0,0,1,86,0,0,129,61,0,0,0,10,2,240,0,41,0,0,0,0,2,33,3,79],[0,0,0,0,2,2,4,59,0,0,0,251,7,32,2,112,0,0,0,248,2,32,2,112,0,0,0,7,3,32,1,144],[0,0,0,32,7,0,96,57,0,0,0,1,2,240,0,57,0,12,0,0,0,39,0,29,0,0,0,12,12,240,0,107],[0,0,2,239,0,0,161,61,0,0,0,12,12,0,0,41,0,0,0,11,12,192,0,108,0,0,2,74,0,0,33,61],[0,0,0,10,2,32,0,41,0,0,0,64,12,208,0,57,0,0,0,0,12,193,3,79,0,0,0,32,13,208,0,57],[0,0,0,0,13,209,3,79,0,0,0,0,2,33,3,79,0,0,0,0,2,2,4,59,0,0,0,0,15,13,4,59],[0,0,0,0,13,12,4,59,0,0,0,31,12,112,0,140,0,0,0,3,12,112,2,16,0,0,1,57,0,0,33,61],[0,0,1,0,14,192,0,137,0,0,0,4,14,224,1,239,0,0,0,0,11,192,0,73,0,7,0,0,0,13,0,29],[0,0,0,0,13,15,0,25,0,0,0,3,11,176,0,108,0,0,0,0,15,13,0,25,0,0,0,7,13,0,0,41],[0,0,0,0,14,0,64,25,0,0,0,0,2,226,1,111,0,0,0,6,14,0,0,41,0,0,0,0,11,7,0,75],[0,0,1,84,0,0,97,61,0,0,1,0,11,192,0,140,0,0,2,239,0,0,33,61,0,0,0,0,183,124,0,217],[0,0,0,8,7,112,0,140,0,0,2,239,0,0,193,61,0,0,1,0,7,192,0,137,0,0,0,0,2,114,2,47],[0,0,0,0,7,12,0,75,0,0,0,0,2,0,96,25,0,0,0,0,7,3,0,75,0,0,0,229,0,0,97,61],[0,0,0,3,7,48,0,140,0,0,0,229,0,0,97,61,0,0,0,1,7,48,0,140,0,0,1,77,0,0,193,61],[0,0,0,0,2,242,0,25,0,0,0,0,2,210,0,75,0,0,0,0,3,4,0,25,0,0,0,232,0,0,97,61],[0,0,1,108,0,0,1,61,0,0,0,2,3,48,0,140,0,0,1,100,0,0,193,61,0,0,0,0,2,47,0,73],[0,0,0,0,2,210,0,75,0,0,0,0,3,4,0,25,0,0,0,232,0,0,97,61,0,0,1,118,0,0,1,61],[0,0,0,0,2,0,0,25,0,0,1,66,0,0,1,61,0,0,1,88,1,0,0,65,0,0,0,0,0,16,4,53],[0,0,0,50,1,0,0,57,0,0,2,242,0,0,1,61,0,0,1,50,1,0,0,65,0,0,0,128,0,16,4,63],[0,0,0,32,1,0,0,57,0,0,0,132,0,16,4,63,0,0,0,58,1,0,0,57,0,0,0,164,0,16,4,63],[0,0,1,92,1,0,0,65,0,0,0,196,0,16,4,63,0,0,1,93,1,0,0,65,0,0,2,101,0,0,1,61],[0,0,1,50,1,0,0,65,0,0,0,128,0,16,4,63,0,0,0,32,1,0,0,57,0,0,0,132,0,16,4,63],[0,0,0,21,1,0,0,57,0,0,0,164,0,16,4,63,0,0,1,94,1,0,0,65,0,0,2,89,0,0,1,61],[0,0,1,50,1,0,0,65,0,0,0,128,0,16,4,63,0,0,0,32,1,0,0,57,0,0,0,132,0,16,4,63],[0,0,0,46,1,0,0,57,0,0,0,164,0,16,4,63,0,0,1,97,1,0,0,65,0,0,0,196,0,16,4,63],[0,0,1,98,1,0,0,65,0,0,2,101,0,0,1,61,0,0,1,50,1,0,0,65,0,0,0,128,0,16,4,63],[0,0,0,32,1,0,0,57,0,0,0,132,0,16,4,63,0,0,0,47,1,0,0,57,0,0,0,164,0,16,4,63],[0,0,1,95,1,0,0,65,0,0,0,196,0,16,4,63,0,0,1,96,1,0,0,65,0,0,2,101,0,0,1,61],[0,0,1,47,2,32,0,156,0,0,2,74,0,0,193,61,0,0,0,4,2,48,0,138,0,0,0,64,2,32,0,140],[0,0,2,74,0,0,65,61,0,0,0,4,2,16,3,112,0,0,0,0,5,2,4,59,0,0,1,48,2,80,0,156],[0,0,2,74,0,0,33,61,0,0,0,35,2,80,0,57,0,0,1,49,4,0,0,65,0,0,0,0,6,50,0,75],[0,0,0,0,6,0,0,25,0,0,0,0,6,4,128,25,0,0,1,49,2,32,1,151,0,0,0,0,7,2,0,75],[0,0,0,0,4,0,128,25,0,0,1,49,2,32,0,156,0,0,0,0,4,6,192,25,0,0,0,0,2,4,0,75],[0,0,2,74,0,0,193,61,0,0,0,4,2,80,0,57,0,0,0,0,2,33,3,79,0,0,0,0,2,2,4,59],[0,11,0,0,0,2,0,29,0,0,1,48,2,32,0,156,0,0,2,74,0,0,33,61,0,0,0,36,4,80,0,57],[0,0,0,11,2,64,0,41,0,0,0,0,6,35,0,75,0,0,2,74,0,0,65,61,0,0,0,36,6,16,3,112],[0,0,0,0,6,6,4,59,0,0,1,48,7,96,0,156,0,0,2,74,0,0,33,61,0,0,0,35,7,96,0,57],[0,0,1,49,8,0,0,65,0,0,0,0,9,55,0,75,0,0,0,0,9,0,0,25,0,0,0,0,9,8,128,25],[0,0,1,49,7,112,1,151,0,0,0,0,10,7,0,75,0,0,0,0,8,0,128,25,0,0,1,49,7,112,0,156],[0,0,0,0,8,9,192,25,0,0,0,0,7,8,0,75,0,0,2,74,0,0,193,61,0,0,0,4,7,96,0,57],[0,0,0,0,8,113,3,79,0,0,0,0,8,8,4,59,0,10,0,0,0,8,0,29,0,0,1,48,8,128,0,156],[0,0,2,74,0,0,33,61,0,0,0,36,9,96,0,57,0,9,0,0,0,9,0,29,0,0,0,10,8,144,0,41],[0,0,0,0,3,56,0,75,0,0,2,74,0,0,33,61,0,0,0,0,3,0,4,17,0,0,128,1,3,48,0,140],[0,0,2,245,0,0,193,61,0,0,0,2,3,112,0,57,0,0,0,0,3,49,3,79,0,0,0,0,3,3,4,59],[0,0,0,3,3,48,2,16,0,0,1,53,3,48,1,151,0,0,0,2,8,48,1,191,0,0,0,10,7,128,0,107],[0,0,2,74,0,0,65,61,0,0,0,10,7,128,0,105,0,0,0,2,9,112,2,16,0,0,0,11,9,144,0,108],[0,0,2,253,0,0,193,61,0,0,0,10,9,128,0,107,0,0,1,228,0,0,97,61,0,0,0,6,9,96,0,57],[0,0,0,0,8,152,0,25,0,0,0,14,6,96,0,57,0,0,0,12,5,80,0,57,0,0,0,0,9,0,0,25],[0,0,0,0,10,152,0,25,0,0,0,0,10,161,3,79,0,0,0,0,10,10,4,59,0,0,0,3,10,160,2,16],[0,0,1,53,10,160,1,151,0,0,0,0,11,58,0,75,0,0,3,19,0,0,129,61,0,0,0,0,10,166,0,25],[0,0,0,2,11,144,2,16,0,0,0,0,11,181,0,25,0,0,0,0,11,177,3,79,0,0,0,0,10,161,3,79],[0,0,0,0,10,10,4,59,0,0,0,0,11,11,4,59,0,0,0,0,10,186,1,63,0,0,1,48,10,160,1,152],[0,0,3,29,0,0,193,61,0,0,0,2,9,144,0,57,0,0,0,0,10,121,0,75,0,0,1,208,0,0,65,61],[0,0,0,11,3,0,0,41,0,0,0,31,3,48,1,144,0,0,3,11,0,0,193,61,0,0,0,11,3,0,0,41],[0,0,1,64,3,48,0,156,0,0,3,39,0,0,65,61,0,0,1,50,1,0,0,65,0,0,0,128,0,16,4,63],[0,0,0,32,1,0,0,57,0,0,0,132,0,16,4,63,0,0,0,2,1,0,0,57,0,0,0,164,0,16,4,63],[0,0,1,80,1,0,0,65,0,0,2,89,0,0,1,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75],[0,0,2,74,0,0,193,61,0,0,0,32,1,0,0,57,0,0,1,0,0,16,4,67,0,0,1,32,0,0,4,67],[0,0,1,45,1,0,0,65,0,0,4,170,0,1,4,46,0,0,1,50,1,0,0,65,0,0,0,128,0,16,4,63],[0,0,0,32,1,0,0,57,0,0,0,132,0,16,4,63,0,0,0,20,1,0,0,57,0,0,0,164,0,16,4,63],[0,0,1,81,1,0,0,65,0,0,2,89,0,0,1,61,0,0,1,50,1,0,0,65,0,0,0,128,0,16,4,63],[0,0,0,32,1,0,0,57,0,0,0,132,0,16,4,63,0,0,0,35,1,0,0,57,0,0,0,164,0,16,4,63],[0,0,1,99,1,0,0,65,0,0,0,196,0,16,4,63,0,0,1,100,1,0,0,65,0,0,2,101,0,0,1,61],[0,0,1,50,1,0,0,65,0,0,0,128,0,16,4,63,0,0,0,32,1,0,0,57,0,0,0,132,0,16,4,63],[0,0,0,41,1,0,0,57,0,0,0,164,0,16,4,63,0,0,1,82,1,0,0,65,0,0,0,196,0,16,4,63],[0,0,1,83,1,0,0,65,0,0,2,101,0,0,1,61,0,0,0,0,2,8,0,75,0,0,2,50,0,0,193,61],[0,0,0,7,2,0,0,41,0,0,0,96,2,32,0,57,0,0,0,0,3,0,0,25,0,0,0,6,8,0,0,41],[0,0,0,0,4,147,0,75,0,0,2,76,0,0,129,61,0,0,0,0,4,163,0,75,0,0,2,239,0,0,33,61],[0,0,1,16,4,48,0,57,0,0,0,0,7,100,0,75,0,0,2,74,0,0,33,61,0,0,0,0,3,50,0,25],[0,0,0,0,3,49,3,79,0,0,0,0,3,3,4,59,0,0,1,48,3,48,1,152,0,0,0,0,3,4,0,25],[0,0,2,28,0,0,97,61,0,0,2,70,0,0,1,61,0,0,1,50,1,0,0,65,0,0,0,128,0,16,4,63],[0,0,0,32,1,0,0,57,0,0,0,132,0,16,4,63,0,0,0,24,1,0,0,57,0,0,0,164,0,16,4,63],[0,0,1,91,1,0,0,65,0,0,2,89,0,0,1,61,0,0,0,0,50,137,0,217,0,0,1,16,2,32,0,140],[0,0,0,6,8,0,0,41,0,0,2,239,0,0,193,61,0,0,0,7,2,0,0,41,0,0,0,96,2,32,0,57],[0,0,0,0,3,0,0,25,0,0,0,0,4,147,0,75,0,0,2,76,0,0,129,61,0,0,0,0,4,163,0,75],[0,0,2,239,0,0,33,61,0,0,1,16,4,48,0,57,0,0,0,0,7,100,0,75,0,0,2,74,0,0,33,61],[0,0,0,0,3,50,0,25,0,0,0,0,3,49,3,79,0,0,0,0,3,3,4,59,0,0,1,48,3,48,1,152],[0,0,0,0,3,4,0,25,0,0,2,57,0,0,97,61,0,0,0,12,1,128,0,42,0,0,2,239,0,0,65,61],[0,0,0,11,1,16,0,108,0,0,2,229,0,0,161,61,0,0,0,0,1,0,0,25,0,0,4,171,0,1,4,48],[0,0,0,12,3,0,0,41,0,0,0,11,2,48,0,108,0,0,2,92,0,0,193,61,0,0,0,0,2,0,4,20],[0,0,1,86,3,32,0,156,0,0,2,104,0,0,65,61,0,0,1,50,1,0,0,65,0,0,0,128,0,16,4,63],[0,0,0,32,1,0,0,57,0,0,0,132,0,16,4,63,0,0,0,8,1,0,0,57,0,0,0,164,0,16,4,63],[0,0,1,89,1,0,0,65,0,0,0,196,0,16,4,63,0,0,1,52,1,0,0,65,0,0,4,171,0,1,4,48],[0,0,1,50,1,0,0,65,0,0,0,128,0,16,4,63,0,0,0,32,1,0,0,57,0,0,0,132,0,16,4,63],[0,0,0,35,1,0,0,57,0,0,0,164,0,16,4,63,0,0,1,84,1,0,0,65,0,0,0,196,0,16,4,63],[0,0,1,85,1,0,0,65,0,0,0,228,0,16,4,63,0,0,1,60,1,0,0,65,0,0,4,171,0,1,4,48],[0,0,1,44,3,80,1,151,0,0,0,0,1,49,3,79,0,0,0,1,4,0,0,41,0,0,0,2,3,64,0,105],[0,0,1,44,3,48,1,151,0,0,0,0,1,49,3,223,0,0,0,192,2,32,2,16,0,0,1,65,2,32,1,151],[0,0,1,66,2,32,1,199,0,0,0,0,1,33,3,175,0,0,128,16,2,0,0,57,4,169,4,164,0,0,4,15],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,1,44,3,48,1,151,0,0,0,1,2,32,1,144],[0,0,2,189,0,0,97,61,0,0,0,63,2,48,0,57,0,0,1,67,4,32,1,151,0,0,0,64,2,0,4,61],[0,0,0,0,4,66,0,25,0,0,0,0,5,36,0,75,0,0,0,0,5,0,0,25,0,0,0,1,5,0,64,57],[0,0,1,48,6,64,0,156,0,0,4,32,0,0,33,61,0,0,0,1,5,80,1,144,0,0,4,32,0,0,193,61],[0,0,0,64,0,64,4,63,0,0,0,0,4,50,4,54,0,0,0,31,5,48,0,57,0,0,0,5,5,80,2,114],[0,0,2,148,0,0,97,61,0,0,0,0,6,0,0,49,0,0,0,1,6,96,3,103,0,0,0,0,7,0,0,25],[0,0,0,5,8,112,2,16,0,0,0,0,9,132,0,25,0,0,0,0,8,134,3,79,0,0,0,0,8,8,4,59],[0,0,0,0,0,137,4,53,0,0,0,1,7,112,0,57,0,0,0,0,8,87,0,75,0,0,2,140,0,0,65,61],[0,0,0,0,5,0,0,75,0,0,2,150,0,0,97,61,0,0,0,31,5,48,1,143,0,0,0,5,3,48,2,114],[0,0,2,162,0,0,97,61,0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16,0,0,0,0,8,116,0,25],[0,0,0,0,7,113,3,79,0,0,0,0,7,7,4,59,0,0,0,0,0,120,4,53,0,0,0,1,6,96,0,57],[0,0,0,0,7,54,0,75,0,0,2,154,0,0,65,61,0,0,0,0,6,5,0,75,0,0,2,177,0,0,97,61],[0,0,0,5,3,48,2,16,0,0,0,0,1,49,3,79,0,0,0,0,3,52,0,25,0,0,0,3,5,80,2,16],[0,0,0,0,6,3,4,51,0,0,0,0,6,86,1,207,0,0,0,0,6,86,2,47,0,0,0,0,1,1,4,59],[0,0,1,0,5,80,0,137,0,0,0,0,1,81,2,47,0,0,0,0,1,81,1,207,0,0,0,0,1,97,1,159],[0,0,0,0,0,19,4,53,0,0,1,44,3,0,0,65,0,0,0,64,1,0,4,61,0,0,1,44,5,16,0,156],[0,0,0,0,3,1,64,25,0,0,0,64,3,48,2,16,0,0,0,0,2,2,4,51,0,0,0,32,2,32,0,140],[0,0,2,216,0,0,193,61,0,0,0,0,2,4,4,51,0,0,0,0,0,33,4,53,0,0,1,78,1,48,1,199],[0,0,4,170,0,1,4,46,0,0,0,31,4,48,1,143,0,0,0,5,2,48,2,114,0,0,2,200,0,0,97,61],[0,0,0,0,5,0,0,25,0,0,0,5,6,80,2,16,0,0,0,0,7,97,3,79,0,0,0,0,7,7,4,59],[0,0,0,0,0,118,4,53,0,0,0,1,5,80,0,57,0,0,0,0,6,37,0,75,0,0,2,193,0,0,65,61],[0,0,0,0,5,4,0,75,0,0,2,214,0,0,97,61,0,0,0,3,4,64,2,16,0,0,0,5,2,32,2,16],[0,0,0,0,5,2,4,51,0,0,0,0,5,69,1,207,0,0,0,0,5,69,2,47,0,0,0,0,1,33,3,79],[0,0,0,0,1,1,4,59,0,0,1,0,4,64,0,137,0,0,0,0,1,65,2,47,0,0,0,0,1,65,1,207],[0,0,0,0,1,81,1,159,0,0,0,0,0,18,4,53,0,0,0,96,1,48,2,16,0,0,4,171,0,1,4,48],[0,0,0,68,2,16,0,57,0,0,1,87,4,0,0,65,0,0,0,0,0,66,4,53,0,0,0,36,2,16,0,57],[0,0,0,31,4,0,0,57,0,0,0,0,0,66,4,53,0,0,1,50,2,0,0,65,0,0,0,0,0,33,4,53],[0,0,0,4,1,16,0,57,0,0,0,32,2,0,0,57,0,0,0,0,0,33,4,53,0,0,1,69,1,48,1,199],[0,0,4,171,0,1,4,48,0,0,0,0,1,8,0,75,0,0,2,239,0,0,193,61,0,0,1,50,1,0,0,65],[0,0,0,128,0,16,4,63,0,0,0,32,1,0,0,57,0,0,0,132,0,16,4,63,0,0,0,21,1,0,0,57],[0,0,0,164,0,16,4,63,0,0,1,90,1,0,0,65,0,0,2,89,0,0,1,61,0,0,1,88,1,0,0,65],[0,0,0,0,0,16,4,53,0,0,0,17,1,0,0,57,0,0,0,4,0,16,4,63,0,0,1,77,1,0,0,65],[0,0,4,171,0,1,4,48,0,0,1,50,1,0,0,65,0,0,0,128,0,16,4,63,0,0,0,32,1,0,0,57],[0,0,0,132,0,16,4,63,0,0,0,31,1,0,0,57,0,0,0,164,0,16,4,63,0,0,1,51,1,0,0,65],[0,0,2,89,0,0,1,61,0,0,1,50,1,0,0,65,0,0,0,128,0,16,4,63,0,0,0,32,1,0,0,57],[0,0,0,132,0,16,4,63,0,0,0,72,1,0,0,57,0,0,0,164,0,16,4,63,0,0,1,54,1,0,0,65],[0,0,0,196,0,16,4,63,0,0,1,55,1,0,0,65,0,0,0,228,0,16,4,63,0,0,1,56,1,0,0,65],[0,0,1,4,0,16,4,63,0,0,1,57,1,0,0,65,0,0,4,171,0,1,4,48,0,0,1,50,1,0,0,65],[0,0,0,128,0,16,4,63,0,0,0,32,1,0,0,57,0,0,0,132,0,16,4,63,0,0,0,2,1,0,0,57],[0,0,0,164,0,16,4,63,0,0,1,63,1,0,0,65,0,0,2,89,0,0,1,61,0,0,1,50,1,0,0,65],[0,0,0,128,0,16,4,63,0,0,0,32,1,0,0,57,0,0,0,132,0,16,4,63,0,0,0,36,1,0,0,57],[0,0,0,164,0,16,4,63,0,0,1,58,1,0,0,65,0,0,0,196,0,16,4,63,0,0,1,59,1,0,0,65],[0,0,2,101,0,0,1,61,0,0,1,50,1,0,0,65,0,0,0,128,0,16,4,63,0,0,0,32,1,0,0,57],[0,0,0,132,0,16,4,63,0,0,0,50,1,0,0,57,0,0,0,164,0,16,4,63,0,0,1,61,1,0,0,65],[0,0,0,196,0,16,4,63,0,0,1,62,1,0,0,65,0,0,2,101,0,0,1,61,0,0,0,11,3,0,0,41],[0,0,0,32,3,48,1,144,0,0,3,50,0,0,193,61,0,0,1,50,1,0,0,65,0,0,0,128,0,16,4,63],[0,0,0,32,1,0,0,57,0,0,0,132,0,16,4,63,0,0,0,2,1,0,0,57,0,0,0,164,0,16,4,63],[0,0,1,79,1,0,0,65,0,0,2,89,0,0,1,61,0,0,0,0,3,0,4,20,0,0,1,44,5,48,0,156],[0,0,2,82,0,0,33,61,0,0,1,44,4,64,1,151,0,0,0,0,1,65,3,79,0,0,0,2,2,32,0,105],[0,0,1,44,2,32,1,151,0,0,0,0,1,33,3,223,0,0,0,192,2,48,2,16,0,0,1,65,2,32,1,151],[0,0,1,66,2,32,1,199,0,0,0,0,1,33,3,175,0,0,0,2,2,0,0,57,4,169,4,164,0,0,4,15],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,1,44,3,48,1,151,0,0,0,1,2,32,1,144],[0,0,4,36,0,0,97,61,0,0,0,63,2,48,0,57,0,0,1,67,4,32,1,151,0,0,0,64,2,0,4,61],[0,0,0,0,4,66,0,25,0,0,0,0,5,36,0,75,0,0,0,0,5,0,0,25,0,0,0,1,5,0,64,57],[0,0,1,48,6,64,0,156,0,0,4,32,0,0,33,61,0,0,0,1,5,80,1,144,0,0,4,32,0,0,193,61],[0,0,0,64,0,64,4,63,0,0,0,0,5,50,4,54,0,0,0,1,4,0,3,103,0,0,0,31,6,48,0,57],[0,0,0,5,6,96,2,114,0,0,3,96,0,0,97,61,0,0,0,0,7,64,3,104,0,0,0,0,8,0,0,25],[0,0,0,5,9,128,2,16,0,0,0,0,10,149,0,25,0,0,0,0,9,151,3,79,0,0,0,0,9,9,4,59],[0,0,0,0,0,154,4,53,0,0,0,1,8,128,0,57,0,0,0,0,9,104,0,75,0,0,3,88,0,0,65,61],[0,0,0,0,6,0,0,75,0,0,3,98,0,0,97,61,0,0,0,31,6,48,1,143,0,0,0,5,3,48,2,114],[0,0,3,110,0,0,97,61,0,0,0,0,7,0,0,25,0,0,0,5,8,112,2,16,0,0,0,0,9,133,0,25],[0,0,0,0,8,129,3,79,0,0,0,0,8,8,4,59,0,0,0,0,0,137,4,53,0,0,0,1,7,112,0,57],[0,0,0,0,8,55,0,75,0,0,3,102,0,0,65,61,0,0,0,0,7,6,0,75,0,0,3,125,0,0,97,61],[0,0,0,5,3,48,2,16,0,0,0,0,1,49,3,79,0,0,0,0,3,53,0,25,0,0,0,3,6,96,2,16],[0,0,0,0,7,3,4,51,0,0,0,0,7,103,1,207,0,0,0,0,7,103,2,47,0,0,0,0,1,1,4,59],[0,0,1,0,6,96,0,137,0,0,0,0,1,97,2,47,0,0,0,0,1,97,1,207,0,0,0,0,1,113,1,159],[0,0,0,0,0,19,4,53,0,0,0,64,6,0,4,61,0,0,0,68,1,96,0,57,0,0,0,36,3,96,0,57],[0,12,0,0,0,6,0,29,0,0,0,4,6,96,0,57,0,0,0,0,2,2,4,51,0,0,0,32,2,32,0,140],[0,0,4,63,0,0,193,61,0,0,0,0,5,5,4,51,0,0,1,70,2,0,0,65,0,0,0,12,7,0,0,41],[0,0,0,0,0,39,4,53,0,0,0,32,2,0,0,57,0,0,0,0,0,38,4,53,0,0,0,10,6,0,0,41],[0,0,0,0,0,99,4,53,0,0,0,9,2,64,3,96,0,0,1,71,3,80,1,151,0,0,0,11,4,0,0,41],[0,0,0,219,4,64,2,16,0,0,1,72,4,64,1,151,0,0,0,0,4,52,1,159,0,0,0,31,3,96,1,143],[0,11,1,73,0,64,1,203,0,0,0,5,4,96,2,114,0,0,3,160,0,0,97,61,0,0,0,0,5,0,0,25],[0,0,0,5,6,80,2,16,0,0,0,0,7,97,0,25,0,0,0,0,6,98,3,79,0,0,0,0,6,6,4,59],[0,0,0,0,0,103,4,53,0,0,0,1,5,80,0,57,0,0,0,0,6,69,0,75,0,0,3,152,0,0,65,61],[0,0,0,0,5,3,0,75,0,0,3,175,0,0,97,61,0,0,0,5,4,64,2,16,0,0,0,0,2,66,3,79],[0,0,0,0,4,65,0,25,0,0,0,3,3,48,2,16,0,0,0,0,5,4,4,51,0,0,0,0,5,53,1,207],[0,0,0,0,5,53,2,47,0,0,0,0,2,2,4,59,0,0,1,0,3,48,0,137,0,0,0,0,2,50,2,47],[0,0,0,0,2,50,1,207,0,0,0,0,2,82,1,159,0,0,0,0,0,36,4,53,0,0,0,10,2,0,0,41],[0,0,0,0,1,33,0,25,0,0,0,0,0,1,4,53,0,0,0,31,1,32,0,57,0,0,0,32,2,0,0,138],[0,0,0,0,1,33,1,111,0,0,1,44,2,0,0,65,0,0,0,12,4,0,0,41,0,0,1,44,3,64,0,156],[0,0,0,0,3,2,0,25,0,0,0,0,3,4,64,25,0,0,0,64,3,48,2,16,0,0,0,68,1,16,0,57],[0,0,1,44,4,16,0,156,0,0,0,0,1,2,128,25,0,0,0,96,1,16,2,16,0,0,0,0,1,19,1,159],[0,0,0,0,3,0,4,20,0,0,1,44,4,48,0,156,0,0,0,0,3,2,128,25,0,0,0,192,2,48,2,16],[0,0,0,0,1,18,1,159,0,0,128,8,2,0,0,57,4,169,4,154,0,0,4,15,0,0,0,0,3,1,0,25],[0,0,0,96,3,48,2,112,0,0,1,44,3,48,1,151,0,0,0,32,4,48,0,140,0,0,0,0,4,3,0,25],[0,0,0,32,4,0,128,57,0,0,0,31,5,64,1,143,0,0,0,5,6,64,2,114,0,0,3,217,0,0,97,61],[0,0,0,0,7,0,0,25,0,0,0,5,8,112,2,16,0,0,0,12,9,128,0,41,0,0,0,0,8,129,3,79],[0,0,0,0,8,8,4,59,0,0,0,0,0,137,4,53,0,0,0,1,7,112,0,57,0,0,0,0,8,103,0,75],[0,0,3,209,0,0,65,61,0,0,0,0,7,5,0,75,0,0,3,232,0,0,97,61,0,0,0,5,6,96,2,16],[0,0,0,0,7,97,3,79,0,0,0,12,6,96,0,41,0,0,0,3,5,80,2,16,0,0,0,0,8,6,4,51],[0,0,0,0,8,88,1,207,0,0,0,0,8,88,2,47,0,0,0,0,7,7,4,59,0,0,1,0,5,80,0,137],[0,0,0,0,7,87,2,47,0,0,0,0,5,87,1,207,0,0,0,0,5,133,1,159,0,0,0,0,0,86,4,53],[0,0,0,1,2,32,1,144,0,0,4,78,0,0,97,61,0,0,0,31,1,64,0,57,0,0,0,96,2,16,1,143],[0,0,0,12,1,32,0,41,0,0,0,0,2,33,0,75,0,0,0,0,2,0,0,25,0,0,0,1,2,0,64,57],[0,0,1,48,4,16,0,156,0,0,4,32,0,0,33,61,0,0,0,1,2,32,1,144,0,0,4,32,0,0,193,61],[0,0,0,64,0,16,4,63,0,0,0,32,1,48,0,140,0,0,2,74,0,0,65,61,0,0,1,74,1,0,0,65],[0,0,0,0,0,16,4,57,0,0,128,4,1,0,0,57,0,0,0,4,0,16,4,67,0,0,1,44,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,1,44,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,1,75,1,16,1,199,0,0,128,2,2,0,0,57,4,169,4,159,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,4,113,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75,0,0,2,74,0,0,97,61],[0,0,0,64,4,0,4,61,0,0,1,76,1,0,0,65,0,0,0,0,0,20,4,53,0,0,0,4,1,64,0,57],[0,0,0,11,2,0,0,41,0,0,0,0,0,33,4,53,0,0,1,44,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,1,44,3,32,0,156,0,0,0,0,2,1,128,25,0,0,1,44,3,64,0,156,0,12,0,0,0,4,0,29],[0,0,0,0,1,4,64,25,0,10,0,64,0,16,2,24,0,0,0,192,1,32,2,16,0,0,0,10,1,16,1,175],[0,0,1,77,1,16,1,199,0,0,128,4,2,0,0,57,4,169,4,154,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,4,114,0,0,97,61,0,0,0,12,1,0,0,41,0,0,1,48,1,16,0,156,0,0,4,146,0,0,161,61],[0,0,1,88,1,0,0,65,0,0,0,0,0,16,4,53,0,0,0,65,1,0,0,57,0,0,2,242,0,0,1,61],[0,0,0,31,4,48,1,143,0,0,0,5,2,48,2,114,0,0,4,47,0,0,97,61,0,0,0,0,5,0,0,25],[0,0,0,5,6,80,2,16,0,0,0,0,7,97,3,79,0,0,0,0,7,7,4,59,0,0,0,0,0,118,4,53],[0,0,0,1,5,80,0,57,0,0,0,0,6,37,0,75,0,0,4,40,0,0,65,61,0,0,0,0,5,4,0,75],[0,0,4,61,0,0,97,61,0,0,0,3,4,64,2,16,0,0,0,5,2,32,2,16,0,0,0,0,5,2,4,51],[0,0,0,0,5,69,1,207,0,0,0,0,5,69,2,47,0,0,0,0,1,33,3,79,0,0,0,0,1,1,4,59],[0,0,1,0,4,64,0,137,0,0,0,0,1,65,2,47,0,0,0,0,1,65,1,207,0,0,0,0,1,81,1,159],[0,0,0,0,0,18,4,53,0,0,0,96,1,48,2,16,0,0,4,171,0,1,4,48,0,0,1,50,2,0,0,65],[0,0,0,12,4,0,0,41,0,0,0,0,0,36,4,53,0,0,0,32,2,0,0,57,0,0,0,0,0,38,4,53],[0,0,0,25,2,0,0,57,0,0,0,0,0,35,4,53,0,0,1,68,2,0,0,65,0,0,0,0,0,33,4,53],[0,0,1,44,1,0,0,65,0,0,1,44,2,64,0,156,0,0,0,0,4,1,128,25,0,0,0,64,1,64,2,16],[0,0,1,69,1,16,1,199,0,0,4,171,0,1,4,48,0,0,0,64,2,0,4,61,0,0,0,31,4,48,1,143],[0,0,0,5,5,48,2,114,0,0,4,91,0,0,97,61,0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16],[0,0,0,0,8,114,0,25,0,0,0,0,7,113,3,79,0,0,0,0,7,7,4,59,0,0,0,0,0,120,4,53],[0,0,0,1,6,96,0,57,0,0,0,0,7,86,0,75,0,0,4,83,0,0,65,61,0,0,0,0,6,4,0,75],[0,0,4,106,0,0,97,61,0,0,0,5,5,80,2,16,0,0,0,0,1,81,3,79,0,0,0,0,5,82,0,25],[0,0,0,3,4,64,2,16,0,0,0,0,6,5,4,51,0,0,0,0,6,70,1,207,0,0,0,0,6,70,2,47],[0,0,0,0,1,1,4,59,0,0,1,0,4,64,0,137,0,0,0,0,1,65,2,47,0,0,0,0,1,65,1,207],[0,0,0,0,1,97,1,159,0,0,0,0,0,21,4,53,0,0,1,44,1,0,0,65,0,0,1,44,4,32,0,156],[0,0,0,0,2,1,128,25,0,0,0,64,1,32,2,16,0,0,0,96,2,48,2,16,0,0,0,0,1,33,1,159],[0,0,4,171,0,1,4,48,0,0,0,0,0,1,4,47,0,0,0,64,2,0,4,61,0,0,0,0,3,1,0,25],[0,0,0,96,3,48,2,112,0,0,0,31,4,48,1,143,0,0,1,44,3,48,1,151,0,0,0,5,5,48,2,114],[0,0,4,130,0,0,97,61,0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16,0,0,0,0,8,114,0,25],[0,0,0,0,7,113,3,79,0,0,0,0,7,7,4,59,0,0,0,0,0,120,4,53,0,0,0,1,6,96,0,57],[0,0,0,0,7,86,0,75,0,0,4,122,0,0,65,61,0,0,0,0,6,4,0,75,0,0,4,145,0,0,97,61],[0,0,0,5,5,80,2,16,0,0,0,0,1,81,3,79,0,0,0,0,5,82,0,25,0,0,0,3,4,64,2,16],[0,0,0,0,6,5,4,51,0,0,0,0,6,70,1,207,0,0,0,0,6,70,2,47,0,0,0,0,1,1,4,59],[0,0,1,0,4,64,0,137,0,0,0,0,1,65,2,47,0,0,0,0,1,65,1,207,0,0,0,0,1,97,1,159],[0,0,0,0,0,21,4,53,0,0,4,106,0,0,1,61,0,0,0,12,2,0,0,41,0,0,0,64,0,32,4,63],[0,0,0,11,1,0,0,41,0,0,0,0,0,18,4,53,0,0,0,10,1,0,0,41,0,0,1,78,1,16,1,199],[0,0,4,170,0,1,4,46,0,0,0,0,0,1,4,47,0,0,4,157,0,33,4,33,0,0,0,1,2,0,0,57],[0,0,0,0,0,1,4,45,0,0,0,0,2,0,0,25,0,0,0,0,0,1,4,45,0,0,4,162,0,33,4,35],[0,0,0,1,2,0,0,57,0,0,0,0,0,1,4,45,0,0,0,0,2,0,0,25,0,0,0,0,0,1,4,45],[0,0,4,167,0,33,4,35,0,0,0,1,2,0,0,57,0,0,0,0,0,1,4,45,0,0,0,0,2,0,0,25],[0,0,0,0,0,1,4,45,0,0,4,169,0,0,4,50,0,0,4,170,0,1,4,46,0,0,4,171,0,1,4,48],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],[0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,1,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,96,6,216,181],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,245,230,154,71],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255],[128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[8,195,121,160,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[67,97,108,108,97,98,108,101,32,111,110,108,121,32,98,121,32,116,104,101,32,98,111,111,116,108,111,97,100,101,114,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,128,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,255,248],[69,110,99,111,100,101,100,32,100,97,116,97,32,108,101,110,103,116,104,32,115,104,111,117,108,100,32,98,101,32,52,32],[116,105,109,101,115,32,115,104,111,114,116,101,114,32,116,104,97,110,32,116,104,101,32,111,114,105,103,105,110,97,108,32],[98,121,116,101,99,111,100,101,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,164,0,0,0,128,0,0,0,0,0,0,0,0],[69,110,99,111,100,101,100,32,99,104,117,110,107,32,105,110,100,101,120,32,105,115,32,111,117,116,32,111,102,32,98,111],[117,110,100,115,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,132,0,0,0,128,0,0,0,0,0,0,0,0],[69,110,99,111,100,101,100,32,99,104,117,110,107,32,100,111,101,115,32,110,111,116,32,109,97,116,99,104,32,116,104,101],[32,111,114,105,103,105,110,97,108,32,98,121,116,101,99,111,100,101,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[112,111,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,0,0],[0,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,255,255,255,224],[115,104,97,32,114,101,116,117,114,110,101,100,32,105,110,118,97,108,105,100,32,100,97,116,97,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,0,0,0,0,0,0,0,0],[98,248,75,36,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255],[254,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[24,6,170,24,150,187,242,101,104,232,132,167,55,75,65,224,2,80,9,98,202,186,106,21,2,58,141,144,232,80,139,131],[2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,36,0,0,0,0,0,0,0,0,0,0,0,0],[121,196,249,41,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,36,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,0],[112,114,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[112,112,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[73,110,97,112,112,114,111,112,114,105,97,116,101,32,99,97,108,108,101,114,0,0,0,0,0,0,0,0,0,0,0,0],[73,110,99,111,114,114,101,99,116,32,110,117,109,98,101,114,32,111,102,32,105,110,105,116,105,97,108,32,115,116,111,114],[97,103,101,32,100,105,102,102,115,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[69,120,116,114,97,32,100,97,116,97,32,105,110,32,95,99,111,109,112,114,101,115,115,101,100,83,116,97,116,101,68,105],[102,102,115,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0],[107,101,99,99,97,107,50,53,54,32,114,101,116,117,114,110,101,100,32,105,110,118,97,108,105,100,32,100,97,116,97,0],[78,72,123,113,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[79,118,101,114,102,108,111,119,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[114,119,58,32,101,110,117,109,32,107,101,121,32,109,105,115,109,97,116,99,104,0,0,0,0,0,0,0,0,0,0,0],[105,119,58,32,105,110,105,116,105,97,108,32,107,101,121,32,109,105,115,109,97,116,99,104,0,0,0,0,0,0,0,0],[116,114,97,110,115,102,111,114,109,32,111,114,32,110,111,32,99,111,109,112,114,101,115,115,105,111,110,58,32,99,111,109],[112,114,101,115,115,101,100,32,97,110,100,32,102,105,110,97,108,32,109,105,115,109,97,116,99,104,0,0,0,0,0,0],[117,110,115,117,112,112,111,114,116,101,100,32,111,112,101,114,97,116,105,111,110,0,0,0,0,0,0,0,0,0,0,0],[115,117,98,58,32,105,110,105,116,105,97,108,32,109,105,110,117,115,32,99,111,110,118,101,114,116,101,100,32,110,111,116],[32,101,113,117,97,108,32,116,111,32,102,105,110,97,108,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[97,100,100,58,32,105,110,105,116,105,97,108,32,112,108,117,115,32,99,111,110,118,101,114,116,101,100,32,110,111,116,32],[101,113,117,97,108,32,116,111,32,102,105,110,97,108,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[101,110,117,109,101,114,97,116,105,111,110,32,105,110,100,101,120,32,115,105,122,101,32,105,115,32,116,111,111,32,108,97],[114,103,101,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[147,237,218,30,222,226,171,166,87,171,181,200,3,117,136,80,212,87,97,62,0,250,54,95,145,189,19,44,198,68,90,138]],"0x0000000000000000000000000000000000008005":[[0,1,0,0,0,0,0,2,0,7,0,0,0,0,0,2,0,0,0,0,7,1,3,79,0,0,0,0,0,7,3,85],[0,0,0,128,1,0,0,57,0,0,0,64,0,16,4,63,0,0,0,0,1,7,0,25,0,0,0,96,1,16,2,112],[0,0,0,47,1,16,1,151,0,0,0,1,2,32,1,144,0,0,0,45,0,0,193,61,0,0,0,4,2,16,0,140],[0,0,0,92,0,0,65,61,0,0,0,0,2,7,4,59,0,0,0,224,2,32,2,112,0,0,0,49,3,32,0,156],[0,0,0,53,0,0,97,61,0,0,0,50,2,32,0,156,0,0,0,92,0,0,193,61,0,0,0,0,2,0,4,22],[0,0,0,0,2,2,0,75,0,0,0,92,0,0,193,61,0,0,0,4,1,16,0,138,0,0,0,64,1,16,0,140],[0,0,0,92,0,0,65,61,0,0,0,4,1,112,3,112,0,0,0,0,1,1,4,59,0,0,0,51,2,16,0,156],[0,0,0,92,0,0,33,61,0,0,0,0,0,16,4,53,0,0,0,32,0,0,4,63,0,0,0,0,1,0,0,25],[0,7,0,0,0,7,3,83,0,184,0,161,0,0,4,15,0,0,0,7,2,0,3,95,0,0,0,36,2,32,3,112],[0,0,0,0,2,2,4,59,0,0,0,0,0,32,4,53,0,0,0,32,0,16,4,63,0,0,0,0,1,0,0,25],[0,184,0,161,0,0,4,15,0,0,0,0,1,1,4,26,0,0,0,128,0,16,4,63,0,0,0,59,1,0,0,65],[0,0,0,185,0,1,4,46,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,0,92,0,0,193,61],[0,0,0,32,1,0,0,57,0,0,1,0,0,16,4,67,0,0,1,32,0,0,4,67,0,0,0,48,1,0,0,65],[0,0,0,185,0,1,4,46,0,0,0,0,2,0,4,22,0,0,0,0,2,2,0,75,0,0,0,92,0,0,193,61],[0,0,0,4,2,16,0,138,0,0,0,64,2,32,0,140,0,0,0,92,0,0,65,61,0,0,0,4,2,112,3,112],[0,0,0,0,2,2,4,59,0,3,0,0,0,2,0,29,0,0,0,51,2,32,0,156,0,0,0,92,0,0,33,61],[0,0,0,36,2,112,3,112,0,0,0,0,2,2,4,59,0,0,0,52,3,32,0,156,0,0,0,92,0,0,33,61],[0,0,0,35,3,32,0,57,0,0,0,53,4,0,0,65,0,0,0,0,5,19,0,75,0,0,0,0,5,0,0,25],[0,0,0,0,5,4,128,25,0,0,0,53,3,48,1,151,0,0,0,0,6,3,0,75,0,0,0,0,4,0,128,25],[0,0,0,53,3,48,0,156,0,0,0,0,4,5,192,25,0,0,0,0,3,4,0,75,0,0,0,92,0,0,193,61],[0,0,0,4,3,32,0,57,0,0,0,0,3,55,3,79,0,0,0,0,3,3,4,59,0,2,0,0,0,3,0,29],[0,0,0,52,3,48,0,156,0,0,0,92,0,0,33,61,0,1,0,36,0,32,0,61,0,0,0,2,2,0,0,41],[0,0,0,6,2,32,2,16,0,0,0,1,2,32,0,41,0,0,0,0,1,18,0,75,0,0,0,94,0,0,161,61],[0,0,0,0,1,0,0,25,0,0,0,186,0,1,4,48,0,0,0,0,1,0,4,17,0,0,128,6,1,16,0,140],[0,0,0,149,0,0,193,61,0,0,0,2,1,0,0,107,0,0,0,147,0,0,97,61,0,0,0,47,4,0,0,65],[0,0,128,16,5,0,0,57,0,0,0,0,2,0,0,25,0,7,0,0,0,5,0,29,0,5,0,0,0,2,0,29],[0,0,0,6,1,32,2,16,0,0,0,1,1,16,0,41,0,0,0,32,2,16,0,57,0,0,0,0,2,32,3,103],[0,0,0,0,1,16,3,103,0,0,0,0,1,1,4,59,0,6,0,0,0,1,0,29,0,0,0,0,1,2,4,59],[0,4,0,0,0,1,0,29,0,0,0,3,1,0,0,41,0,0,0,0,0,16,4,53,0,0,0,32,0,0,4,63],[0,0,0,0,1,0,4,20,0,0,0,47,2,16,0,156,0,0,0,0,1,4,128,25,0,0,0,192,1,16,2,16],[0,0,0,58,1,16,1,199,0,0,0,0,2,5,0,25,0,184,0,179,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,0,92,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,6,2,0,0,41,0,0,0,0,0,32,4,53],[0,0,0,32,0,16,4,63,0,0,0,0,1,0,4,20,0,0,0,47,2,16,0,156,0,0,0,47,1,0,128,65],[0,0,0,192,1,16,2,16,0,0,0,58,1,16,1,199,0,0,0,7,2,0,0,41,0,184,0,179,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,0,92,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,4,2,0,0,41],[0,0,0,0,0,33,4,27,0,0,0,5,2,0,0,41,0,0,0,1,2,32,0,57,0,0,0,2,1,32,0,108],[0,0,0,47,4,0,0,65,0,0,0,7,5,0,0,41,0,0,0,103,0,0,65,61,0,0,0,0,1,0,0,25],[0,0,0,185,0,1,4,46,0,0,0,54,1,0,0,65,0,0,0,128,0,16,4,63,0,0,0,32,1,0,0,57],[0,0,0,132,0,16,4,63,0,0,0,45,1,0,0,57,0,0,0,164,0,16,4,63,0,0,0,55,1,0,0,65],[0,0,0,196,0,16,4,63,0,0,0,56,1,0,0,65,0,0,0,228,0,16,4,63,0,0,0,57,1,0,0,65],[0,0,0,186,0,1,4,48,0,0,0,47,2,0,0,65,0,0,0,47,3,16,0,156,0,0,0,0,1,2,128,25],[0,0,0,0,3,0,4,20,0,0,0,47,4,48,0,156,0,0,0,0,3,2,128,25,0,0,0,192,2,48,2,16],[0,0,0,64,1,16,2,16,0,0,0,0,1,33,1,159,0,0,0,58,1,16,1,199,0,0,128,16,2,0,0,57],[0,184,0,179,0,0,4,15,0,0,0,1,2,32,1,144,0,0,0,177,0,0,97,61,0,0,0,0,1,1,4,59],[0,0,0,0,0,1,4,45,0,0,0,0,1,0,0,25,0,0,0,186,0,1,4,48,0,0,0,182,0,33,4,35],[0,0,0,1,2,0,0,57,0,0,0,0,0,1,4,45,0,0,0,0,2,0,0,25,0,0,0,0,0,1,4,45],[0,0,0,184,0,0,4,50,0,0,0,185,0,1,4,46,0,0,0,186,0,1,4,48,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],[0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,1,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,173,126,35,46],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,49,10,176,137],[0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255],[128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[8,195,121,160,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[67,97,108,108,97,98,108,101,32,111,110,108,121,32,98,121,32,116,104,101,32,100,101,112,108,111,121,101,114,32,115,121],[115,116,101,109,32,99,111,110,116,114,97,99,116,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,132,0,0,0,128,0,0,0,0,0,0,0,0],[2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,0,0,0,128,0,0,0,0,0,0,0,0],[45,190,79,211,31,131,177,86,189,1,11,166,220,219,188,181,72,177,28,249,224,128,88,180,255,86,83,72,18,128,54,40]],"0x0000000000000000000000000000000000008002":[[0,2,0,0,0,0,0,2,0,0,0,128,4,0,0,57,0,0,0,64,0,64,4,63,0,0,0,0,3,1,0,25],[0,0,0,96,3,48,2,112,0,0,0,87,3,48,1,151,0,0,0,1,2,32,1,144,0,0,0,32,0,0,193,61],[0,0,0,4,2,48,0,140,0,0,0,219,0,0,65,61,0,0,0,0,2,1,4,59,0,0,0,224,2,32,2,112],[0,0,0,89,5,32,0,156,0,0,0,40,0,0,33,61,0,0,0,93,4,32,0,156,0,0,0,128,0,0,97,61],[0,0,0,94,4,32,0,156,0,0,0,155,0,0,97,61,0,0,0,95,2,32,0,156,0,0,0,219,0,0,193,61],[0,0,0,0,2,0,4,22,0,0,0,0,2,2,0,75,0,0,0,219,0,0,193,61,0,0,0,4,2,48,0,138],[0,0,0,32,2,32,0,140,0,0,0,219,0,0,65,61,0,0,0,4,1,16,3,112,0,0,0,0,1,1,4,59],[0,0,0,97,2,16,0,156,0,0,0,219,0,0,33,61,0,0,0,0,1,1,4,26,0,0,0,178,0,0,1,61],[0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,0,219,0,0,193,61,0,0,0,32,1,0,0,57],[0,0,1,0,0,16,4,67,0,0,1,32,0,0,4,67,0,0,0,88,1,0,0,65,0,0,1,86,0,1,4,46],[0,0,0,90,5,32,0,156,0,0,0,181,0,0,97,61,0,0,0,91,5,32,0,156,0,0,0,209,0,0,97,61],[0,0,0,92,2,32,0,156,0,0,0,219,0,0,193,61,0,0,0,0,2,0,4,22,0,0,0,0,2,2,0,75],[0,0,0,219,0,0,193,61,0,0,0,4,2,48,0,138,0,0,0,32,2,32,0,140,0,0,0,219,0,0,65,61],[0,0,0,96,3,0,0,65,0,0,0,4,1,16,3,112,0,0,0,0,1,1,4,59,0,0,0,97,1,16,1,151],[0,0,1,0,2,16,0,140,0,0,0,124,0,0,65,61,0,0,0,128,4,0,0,57,0,0,0,0,5,1,4,26],[0,0,0,0,2,5,0,75,0,0,0,120,0,0,193,61,0,2,0,0,0,5,0,29,0,0,0,98,2,0,0,65],[0,0,0,128,0,32,4,63,0,0,0,132,0,16,4,63,0,0,0,87,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,0,87,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,0,99,1,16,1,199],[0,0,128,3,2,0,0,57,1,85,1,80,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,0,0,87,3,48,1,151,0,0,0,32,4,48,0,140,0,0,0,0,4,3,0,25,0,0,0,32,4,0,128,57],[0,0,0,31,5,64,1,143,0,0,0,5,6,64,2,114,0,0,0,92,0,0,97,61,0,0,0,0,7,0,0,25],[0,0,0,5,8,112,2,16,0,0,0,0,9,129,3,79,0,0,0,0,9,9,4,59,0,0,0,128,8,128,0,57],[0,0,0,0,0,152,4,53,0,0,0,1,7,112,0,57,0,0,0,0,8,103,0,75,0,0,0,84,0,0,65,61],[0,0,0,0,7,5,0,75,0,0,0,107,0,0,97,61,0,0,0,5,6,96,2,16,0,0,0,0,7,97,3,79],[0,0,0,3,5,80,2,16,0,0,0,128,6,96,0,57,0,0,0,0,8,6,4,51,0,0,0,0,8,88,1,207],[0,0,0,0,8,88,2,47,0,0,0,0,7,7,4,59,0,0,1,0,5,80,0,137,0,0,0,0,7,87,2,47],[0,0,0,0,5,87,1,207,0,0,0,0,5,133,1,159,0,0,0,0,0,86,4,53,0,0,0,1,2,32,1,144],[0,0,0,253,0,0,97,61,0,0,0,31,1,64,0,57,0,0,0,96,1,16,1,143,0,0,0,128,4,16,1,191],[0,0,0,64,0,64,4,63,0,0,0,32,1,48,0,140,0,0,0,219,0,0,65,61,0,0,0,128,1,0,4,61],[0,0,0,0,1,1,0,75,0,0,0,96,3,0,0,65,0,0,0,2,5,0,0,41,0,0,0,124,0,0,193,61],[0,0,0,100,1,80,1,151,0,0,0,96,3,0,0,65,0,0,0,101,1,16,0,156,0,0,0,0,3,5,192,25],[0,0,0,0,0,52,4,53,0,0,0,64,1,64,2,16,0,0,0,102,1,16,1,199,0,0,1,86,0,1,4,46],[0,0,0,0,2,0,4,22,0,0,0,0,2,2,0,75,0,0,0,219,0,0,193,61,0,0,0,4,2,48,0,138],[0,0,0,64,2,32,0,140,0,0,0,219,0,0,65,61,0,0,0,4,2,16,3,112,0,0,0,0,2,2,4,59],[0,0,0,97,3,32,0,156,0,0,0,219,0,0,33,61,0,0,0,36,1,16,3,112,0,0,0,0,1,1,4,59],[0,0,0,0,3,0,4,17,0,0,128,6,3,48,0,140,0,0,0,241,0,0,193,61,0,0,0,100,3,16,1,152],[0,0,0,238,0,0,97,61,0,0,0,106,1,0,0,65,0,0,0,128,0,16,4,63,0,0,0,32,1,0,0,57],[0,0,0,132,0,16,4,63,0,0,0,43,1,0,0,57,0,0,0,164,0,16,4,63,0,0,0,110,1,0,0,65],[0,0,0,196,0,16,4,63,0,0,0,111,1,0,0,65,0,0,0,250,0,0,1,61,0,0,0,0,2,0,4,22],[0,0,0,0,2,2,0,75,0,0,0,219,0,0,193,61,0,0,0,4,2,48,0,138,0,0,0,32,2,32,0,140],[0,0,0,219,0,0,65,61,0,0,0,4,1,16,3,112,0,0,0,0,1,1,4,59,0,0,0,97,1,16,1,151],[0,0,1,0,2,16,0,140,0,0,0,0,2,0,0,25,0,0,0,1,2,0,64,57,0,0,0,0,1,1,4,26],[0,0,0,0,3,1,0,75,0,0,0,1,2,32,97,191,0,0,0,100,3,16,1,151,0,0,0,101,3,48,0,156],[0,0,0,0,3,0,0,25,0,0,0,1,3,0,96,57,0,0,0,0,2,50,1,160,0,0,0,219,1,16,2,112],[0,0,0,105,1,16,1,151,0,0,0,0,1,0,192,25,0,0,0,128,0,16,4,63,0,0,0,104,1,0,0,65],[0,0,1,86,0,1,4,46,0,0,0,0,2,0,4,22,0,0,0,0,2,2,0,75,0,0,0,219,0,0,193,61],[0,0,0,4,2,48,0,138,0,0,0,64,2,32,0,140,0,0,0,219,0,0,65,61,0,0,0,4,2,16,3,112],[0,0,0,0,3,2,4,59,0,0,0,97,2,48,0,156,0,0,0,219,0,0,33,61,0,0,0,36,1,16,3,112],[0,0,0,0,1,1,4,59,0,2,0,0,0,1,0,29,0,0,0,0,1,0,4,17,0,0,128,6,1,16,0,140],[0,0,0,0,1,0,0,25,0,0,0,1,1,0,96,57,0,1,0,0,0,3,0,29,1,85,1,32,0,0,4,15],[0,0,0,2,1,0,0,41,0,0,0,100,1,16,1,151,0,0,0,101,1,16,0,156,0,0,0,0,1,0,0,25],[0,0,0,1,1,0,96,57,1,85,1,56,0,0,4,15,0,0,0,2,1,0,0,41,0,0,0,1,2,0,0,41],[0,0,0,238,0,0,1,61,0,0,0,0,2,0,4,22,0,0,0,0,2,2,0,75,0,0,0,219,0,0,193,61],[0,0,0,4,2,48,0,138,0,0,0,32,2,32,0,140,0,0,0,219,0,0,65,61,0,0,0,4,1,16,3,112],[0,0,0,0,2,1,4,59,0,0,0,97,1,32,0,156,0,0,0,221,0,0,161,61,0,0,0,0,1,0,0,25],[0,0,1,87,0,1,4,48,0,0,0,0,1,0,4,17,0,0,128,6,1,16,0,140,0,0,0,0,1,0,0,25],[0,0,0,1,1,0,96,57,0,2,0,0,0,2,0,29,1,85,1,32,0,0,4,15,0,0,0,2,1,0,0,41],[0,0,0,0,1,1,4,26,0,1,0,0,0,1,0,29,0,0,0,100,1,16,1,151,0,0,0,101,1,16,0,156],[0,0,0,0,1,0,0,25,0,0,0,1,1,0,96,57,1,85,1,56,0,0,4,15,0,0,0,1,1,0,0,41],[0,0,0,103,1,16,1,151,0,0,0,2,2,0,0,41,0,0,0,0,0,18,4,27,0,0,0,0,1,0,0,25],[0,0,1,86,0,1,4,46,0,0,0,106,1,0,0,65,0,0,0,128,0,16,4,63,0,0,0,32,1,0,0,57],[0,0,0,132,0,16,4,63,0,0,0,45,1,0,0,57,0,0,0,164,0,16,4,63,0,0,0,107,1,0,0,65],[0,0,0,196,0,16,4,63,0,0,0,108,1,0,0,65,0,0,0,228,0,16,4,63,0,0,0,109,1,0,0,65],[0,0,1,87,0,1,4,48,0,0,0,64,2,0,4,61,0,0,0,31,4,48,1,143,0,0,0,5,5,48,2,114],[0,0,1,10,0,0,97,61,0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16,0,0,0,0,8,114,0,25],[0,0,0,0,7,113,3,79,0,0,0,0,7,7,4,59,0,0,0,0,0,120,4,53,0,0,0,1,6,96,0,57],[0,0,0,0,7,86,0,75,0,0,1,2,0,0,65,61,0,0,0,0,6,4,0,75,0,0,1,25,0,0,97,61],[0,0,0,5,5,80,2,16,0,0,0,0,1,81,3,79,0,0,0,0,5,82,0,25,0,0,0,3,4,64,2,16],[0,0,0,0,6,5,4,51,0,0,0,0,6,70,1,207,0,0,0,0,6,70,2,47,0,0,0,0,1,1,4,59],[0,0,1,0,4,64,0,137,0,0,0,0,1,65,2,47,0,0,0,0,1,65,1,207,0,0,0,0,1,97,1,159],[0,0,0,0,0,21,4,53,0,0,0,87,1,0,0,65,0,0,0,87,4,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,64,1,32,2,16,0,0,0,96,2,48,2,16,0,0,0,0,1,33,1,159,0,0,1,87,0,1,4,48],[0,0,0,0,1,1,0,75,0,0,1,35,0,0,97,61,0,0,0,0,0,1,4,45,0,0,0,64,1,0,4,61],[0,0,0,100,2,16,0,57,0,0,0,108,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,68,2,16,0,57],[0,0,0,107,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,36,2,16,0,57,0,0,0,45,3,0,0,57],[0,0,0,0,0,50,4,53,0,0,0,106,2,0,0,65,0,0,0,0,0,33,4,53,0,0,0,4,2,16,0,57],[0,0,0,32,3,0,0,57,0,0,0,0,0,50,4,53,0,0,0,87,2,0,0,65,0,0,0,87,3,16,0,156],[0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16,0,0,0,112,1,16,1,199,0,0,1,87,0,1,4,48],[0,0,0,0,1,1,0,75,0,0,1,59,0,0,97,61,0,0,0,0,0,1,4,45,0,0,0,64,1,0,4,61],[0,0,0,100,2,16,0,57,0,0,0,113,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,68,2,16,0,57],[0,0,0,114,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,36,2,16,0,57,0,0,0,46,3,0,0,57],[0,0,0,0,0,50,4,53,0,0,0,106,2,0,0,65,0,0,0,0,0,33,4,53,0,0,0,4,2,16,0,57],[0,0,0,32,3,0,0,57,0,0,0,0,0,50,4,53,0,0,0,87,2,0,0,65,0,0,0,87,3,16,0,156],[0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16,0,0,0,112,1,16,1,199,0,0,1,87,0,1,4,48],[0,0,1,83,0,33,4,35,0,0,0,1,2,0,0,57,0,0,0,0,0,1,4,45,0,0,0,0,2,0,0,25],[0,0,0,0,0,1,4,45,0,0,1,85,0,0,4,50,0,0,1,86,0,1,4,46,0,0,1,87,0,1,4,48],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],[0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,1,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,79,30,27,223],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,79,30,27,224],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,194,228,255,151],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,63,225,119],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,13,70,81,170],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,6,170,24],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,77,226,228,104],[197,210,70,1,134,247,35,60,146,126,125,178,220,199,3,192,229,0,182,83,202,130,39,59,123,250,216,4,93,133,164,112],[0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255],[90,169,182,181,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,36,0,0,0,128,0,0,0,0,0,0,0,0],[0,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,0],[255,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,0,0,0,128,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,255,224],[8,195,121,160,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[67,97,108,108,97,98,108,101,32,111,110,108,121,32,98,121,32,116,104,101,32,100,101,112,108,111,121,101,114,32,115,121],[115,116,101,109,32,99,111,110,116,114,97,99,116,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,132,0,0,0,128,0,0,0,0,0,0,0,0],[67,111,100,101,32,104,97,115,104,32,105,115,32,110,111,116,32,102,111,114,32,97,32,99,111,110,115,116,114,117,99,116],[101,100,32,99,111,110,116,114,97,99,116,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,132,0,0,0,0,0,0,0,0,0,0,0,0],[111,110,32,99,111,110,115,116,114,117,99,116,111,114,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[67,111,100,101,32,104,97,115,104,32,105,115,32,110,111,116,32,102,111,114,32,97,32,99,111,110,116,114,97,99,116,32],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[15,243,112,141,14,128,123,204,107,242,108,43,72,61,107,108,176,29,30,252,146,140,189,19,149,85,233,118,103,32,255,241]],"0x0000000000000000000000000000000000008008":[[0,2,0,0,0,0,0,2,0,14,0,0,0,0,0,2,0,1,0,0,0,1,3,85,0,0,0,0,3,1,0,25],[0,0,0,96,5,48,2,112,0,0,2,60,0,80,1,157,0,0,0,128,4,0,0,57,0,0,0,64,0,64,4,63],[0,0,2,60,3,80,1,151,0,0,0,1,2,32,1,144,0,0,0,49,0,0,193,61,0,0,0,4,2,48,0,140],[0,0,1,37,0,0,65,61,0,0,0,0,2,1,4,59,0,0,0,224,2,32,2,112,0,0,2,62,6,32,0,156],[0,0,0,57,0,0,33,61,0,0,2,65,4,32,0,156,0,0,0,113,0,0,97,61,0,0,2,66,2,32,0,156],[0,0,1,37,0,0,193,61,0,0,0,0,2,0,4,22,0,0,0,0,2,2,0,75,0,0,1,37,0,0,193,61],[0,0,0,4,2,48,0,138,0,0,0,96,2,32,0,140,0,0,1,37,0,0,65,61,0,0,0,4,1,16,3,112],[0,0,0,0,3,1,4,59,0,0,0,0,1,3,0,75,0,0,0,0,1,0,0,25,0,0,0,1,1,0,192,57],[0,0,0,0,1,19,0,75,0,0,1,37,0,0,193,61,0,0,0,0,2,0,4,17,0,0,2,129,1,32,0,156],[0,0,0,236,0,0,65,61,0,0,2,87,1,0,0,65,0,0,0,128,0,16,4,63,0,0,0,32,1,0,0,57],[0,0,0,132,0,16,4,63,0,0,0,52,1,0,0,57,0,0,0,164,0,16,4,63,0,0,2,131,1,0,0,65],[0,0,0,196,0,16,4,63,0,0,2,132,1,0,0,65,0,0,0,228,0,16,4,63,0,0,2,133,1,0,0,65],[0,0,8,236,0,1,4,48,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,1,37,0,0,193,61],[0,0,0,32,1,0,0,57,0,0,1,0,0,16,4,67,0,0,1,32,0,0,4,67,0,0,2,61,1,0,0,65],[0,0,8,235,0,1,4,46,0,0,2,63,6,32,0,156,0,0,0,174,0,0,97,61,0,0,2,64,2,32,0,156],[0,0,1,37,0,0,193,61,0,0,0,0,2,0,4,22,0,0,0,0,2,2,0,75,0,0,1,37,0,0,193,61],[0,0,0,4,2,48,0,138,0,0,0,32,2,32,0,140,0,0,1,37,0,0,65,61,0,0,0,4,2,16,3,112],[0,0,0,0,2,2,4,59,0,0,2,67,6,32,0,156,0,0,1,37,0,0,33,61,0,0,0,35,6,32,0,57],[0,0,2,68,7,0,0,65,0,0,0,0,8,54,0,75,0,0,0,0,8,0,0,25,0,0,0,0,8,7,128,25],[0,0,2,68,6,96,1,151,0,0,0,0,9,6,0,75,0,0,0,0,7,0,128,25,0,0,2,68,6,96,0,156],[0,0,0,0,7,8,192,25,0,0,0,0,6,7,0,75,0,0,1,37,0,0,193,61,0,0,0,4,6,32,0,57],[0,0,0,0,6,97,3,79,0,0,0,0,7,6,4,59,0,0,2,67,6,112,0,156,0,0,1,37,0,0,33,61],[0,0,0,36,8,32,0,57,0,0,0,0,2,135,0,25,0,0,0,0,3,35,0,75,0,0,1,37,0,0,65,61],[0,0,0,0,9,0,4,20,0,0,0,0,3,0,4,20,0,0,2,69,6,48,0,156,0,0,1,74,0,0,65,61],[0,0,0,68,1,64,0,57,0,0,2,89,2,0,0,65,0,0,0,0,0,33,4,53,0,0,0,36,1,64,0,57],[0,0,0,8,2,0,0,57,0,0,0,0,0,33,4,53,0,0,2,87,1,0,0,65,0,0,0,0,0,20,4,53],[0,0,0,4,1,64,0,57,0,0,0,32,2,0,0,57,0,0,0,0,0,33,4,53,0,0,2,60,1,0,0,65],[0,0,2,60,2,64,0,156,0,0,0,0,4,1,128,25,0,0,0,64,1,64,2,16,0,0,2,88,1,16,1,199],[0,0,8,236,0,1,4,48,0,0,0,0,2,0,4,22,0,0,0,0,2,2,0,75,0,0,1,37,0,0,193,61],[0,0,0,4,2,48,0,138,0,0,0,32,2,32,0,140,0,0,1,37,0,0,65,61,0,0,0,0,2,0,4,17],[0,0,128,4,2,32,0,140,0,0,0,226,0,0,193,61,0,0,0,4,1,16,3,112,0,0,0,0,2,1,4,59],[0,0,0,3,1,0,0,57,0,13,0,0,0,1,0,29,0,0,0,0,1,1,4,26,0,0,0,160,0,16,4,63],[0,14,0,0,0,2,0,29,0,0,0,192,0,32,4,63,0,0,0,64,1,0,0,57,0,0,0,128,0,16,4,63],[0,0,0,224,1,0,0,57,0,0,0,64,0,16,4,63,0,0,2,60,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,2,60,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,2,135,1,16,1,199],[0,0,128,16,2,0,0,57,8,234,8,224,0,0,4,15,0,0,0,1,2,32,1,144,0,0,1,37,0,0,97,61],[0,0,0,0,1,1,4,59,0,0,0,13,2,0,0,41,0,0,0,0,0,18,4,27,0,0,0,0,1,0,4,19],[0,0,2,60,3,16,1,151,0,0,0,14,6,0,0,41,0,0,0,224,1,96,2,112,0,0,255,255,2,16,1,143],[0,0,0,5,1,32,2,16,0,0,0,4,4,16,1,191,0,0,0,0,81,67,0,169,0,0,0,0,84,65,0,217],[0,0,0,0,3,67,0,75,0,0,1,157,0,0,193,61,0,0,0,1,2,32,2,112,0,0,0,1,3,32,0,57],[0,0,0,7,66,48,0,201,0,0,0,7,84,32,1,26,0,0,0,0,3,67,0,75,0,0,1,157,0,0,193,61],[0,0,0,0,1,33,0,25,0,0,2,136,2,16,0,156,0,0,1,223,0,0,65,61,0,0,0,64,1,0,4,61],[0,0,0,68,2,16,0,57,0,0,2,89,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,36,2,16,0,57],[0,0,0,8,3,0,0,57,0,0,5,238,0,0,1,61,0,0,0,0,2,0,4,22,0,0,0,0,2,2,0,75],[0,0,1,37,0,0,193,61,0,0,0,4,2,48,0,138,0,0,0,32,2,32,0,140,0,0,1,37,0,0,65,61],[0,0,0,4,2,16,3,112,0,0,0,0,2,2,4,59,0,0,2,67,4,32,0,156,0,0,1,37,0,0,33,61],[0,0,0,35,4,32,0,57,0,0,2,68,5,0,0,65,0,0,0,0,6,52,0,75,0,0,0,0,6,0,0,25],[0,0,0,0,6,5,128,25,0,0,2,68,4,64,1,151,0,0,0,0,7,4,0,75,0,0,0,0,5,0,128,25],[0,0,2,68,4,64,0,156,0,0,0,0,5,6,192,25,0,0,0,0,4,5,0,75,0,0,1,37,0,0,193,61],[0,0,0,4,4,32,0,57,0,0,0,0,5,65,3,79,0,0,0,0,5,5,4,59,0,11,0,0,0,5,0,29],[0,0,2,67,5,80,0,156,0,0,1,37,0,0,33,61,0,0,0,36,2,32,0,57,0,10,0,0,0,2,0,29],[0,0,0,11,2,32,0,41,0,0,0,0,2,50,0,75,0,0,1,37,0,0,33,61,0,0,0,0,2,0,4,17],[0,0,128,1,2,32,0,140,0,0,1,163,0,0,193,61,0,0,0,11,2,0,0,41,0,0,0,4,2,32,0,140],[0,0,1,37,0,0,65,61,0,0,0,32,2,64,0,57,0,0,0,0,2,33,3,79,0,0,0,0,4,2,4,59],[0,0,2,92,2,64,0,156,0,0,2,155,0,0,65,61,0,0,2,87,1,0,0,65,0,0,0,128,0,16,4,63],[0,0,0,32,1,0,0,57,0,0,0,132,0,16,4,63,0,0,0,20,1,0,0,57,0,0,0,164,0,16,4,63],[0,0,2,128,1,0,0,65,0,0,0,233,0,0,1,61,0,0,2,87,1,0,0,65,0,0,0,128,0,16,4,63],[0,0,0,32,1,0,0,57,0,0,0,132,0,16,4,63,0,0,0,20,1,0,0,57,0,0,0,164,0,16,4,63],[0,0,2,134,1,0,0,65,0,0,0,196,0,16,4,63,0,0,2,91,1,0,0,65,0,0,8,236,0,1,4,48],[0,14,0,0,0,3,0,29,0,13,0,0,0,2,0,29,0,0,2,75,1,0,0,65,0,0,0,128,0,16,4,63],[0,0,2,60,1,0,0,65,0,0,0,0,2,0,4,20,0,0,2,60,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,192,1,32,2,16,0,0,2,130,1,16,1,199,0,0,128,11,2,0,0,57,8,234,8,224,0,0,4,15],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,2,60,3,48,1,151,0,0,0,32,4,48,0,140],[0,0,0,0,4,3,0,25,0,0,0,32,4,0,128,57,0,0,0,31,5,64,1,143,0,0,0,5,6,64,2,114],[0,0,1,10,0,0,97,61,0,0,0,0,7,0,0,25,0,0,0,5,8,112,2,16,0,0,0,0,9,129,3,79],[0,0,0,0,9,9,4,59,0,0,0,128,8,128,0,57,0,0,0,0,0,152,4,53,0,0,0,1,7,112,0,57],[0,0,0,0,8,103,0,75,0,0,1,2,0,0,65,61,0,0,0,0,7,5,0,75,0,0,1,25,0,0,97,61],[0,0,0,5,6,96,2,16,0,0,0,0,7,97,3,79,0,0,0,3,5,80,2,16,0,0,0,128,6,96,0,57],[0,0,0,0,8,6,4,51,0,0,0,0,8,88,1,207,0,0,0,0,8,88,2,47,0,0,0,0,7,7,4,59],[0,0,1,0,5,80,0,137,0,0,0,0,7,87,2,47,0,0,0,0,5,87,1,207,0,0,0,0,5,133,1,159],[0,0,0,0,0,86,4,53,0,0,0,1,2,32,1,144,0,0,1,39,0,0,97,61,0,0,0,31,1,64,0,57],[0,0,0,96,2,16,1,143,0,0,0,128,8,32,1,191,0,0,0,64,0,128,4,63,0,0,0,32,1,48,0,140],[0,0,0,14,5,0,0,41,0,0,1,37,0,0,65,61,0,0,0,128,1,0,4,61,0,0,255,255,3,16,0,140],[0,0,1,171,0,0,161,61,0,0,0,0,1,0,0,25,0,0,8,236,0,1,4,48,0,0,0,64,2,0,4,61],[0,0,0,31,4,48,1,143,0,0,0,5,5,48,2,114,0,0,1,52,0,0,97,61,0,0,0,0,6,0,0,25],[0,0,0,5,7,96,2,16,0,0,0,0,8,114,0,25,0,0,0,0,7,113,3,79,0,0,0,0,7,7,4,59],[0,0,0,0,0,120,4,53,0,0,0,1,6,96,0,57,0,0,0,0,7,86,0,75,0,0,1,44,0,0,65,61],[0,0,0,0,6,4,0,75,0,0,1,67,0,0,97,61,0,0,0,5,5,80,2,16,0,0,0,0,1,81,3,79],[0,0,0,0,5,82,0,25,0,0,0,3,4,64,2,16,0,0,0,0,6,5,4,51,0,0,0,0,6,70,1,207],[0,0,0,0,6,70,2,47,0,0,0,0,1,1,4,59,0,0,1,0,4,64,0,137,0,0,0,0,1,65,2,47],[0,0,0,0,1,65,1,207,0,0,0,0,1,97,1,159,0,0,0,0,0,21,4,53,0,0,2,60,1,0,0,65],[0,0,2,60,4,32,0,156,0,0,0,0,2,1,128,25,0,0,0,64,1,32,2,16,0,0,0,96,2,48,2,16],[0,0,0,0,1,33,1,159,0,0,8,236,0,1,4,48,0,14,0,0,0,9,0,29,0,13,0,0,0,7,0,29],[0,12,0,0,0,8,0,29,0,0,2,60,4,128,1,151,0,0,0,0,1,65,3,79,0,0,0,0,2,37,0,73],[0,0,2,60,2,32,1,151,0,0,0,0,1,33,3,223,0,0,0,192,2,48,2,16,0,0,2,70,2,32,1,151],[0,0,2,71,2,32,1,199,0,0,0,0,1,33,3,175,0,0,128,16,2,0,0,57,8,234,8,229,0,0,4,15],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,2,60,3,48,1,151,0,0,0,1,2,32,1,144],[0,0,1,234,0,0,97,61,0,0,0,63,2,48,0,57,0,0,2,72,4,32,1,151,0,0,0,64,2,0,4,61],[0,0,0,0,4,66,0,25,0,0,0,0,5,36,0,75,0,0,0,0,5,0,0,25,0,0,0,1,5,0,64,57],[0,0,2,67,6,64,0,156,0,0,1,219,0,0,33,61,0,0,0,1,5,80,1,144,0,0,1,219,0,0,193,61],[0,0,0,64,0,64,4,63,0,0,0,0,4,50,4,54,0,0,0,31,5,48,0,57,0,0,0,5,5,80,2,114],[0,0,1,120,0,0,97,61,0,0,0,0,6,0,0,49,0,0,0,1,6,96,3,103,0,0,0,0,7,0,0,25],[0,0,0,5,8,112,2,16,0,0,0,0,9,132,0,25,0,0,0,0,8,134,3,79,0,0,0,0,8,8,4,59],[0,0,0,0,0,137,4,53,0,0,0,1,7,112,0,57,0,0,0,0,8,87,0,75,0,0,1,112,0,0,65,61],[0,0,0,0,5,0,0,75,0,0,1,122,0,0,97,61,0,0,0,31,5,48,1,143,0,0,0,5,3,48,2,114],[0,0,0,14,9,0,0,41,0,0,1,135,0,0,97,61,0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16],[0,0,0,0,8,116,0,25,0,0,0,0,7,113,3,79,0,0,0,0,7,7,4,59,0,0,0,0,0,120,4,53],[0,0,0,1,6,96,0,57,0,0,0,0,7,54,0,75,0,0,1,127,0,0,65,61,0,0,0,0,6,5,0,75],[0,0,1,150,0,0,97,61,0,0,0,5,3,48,2,16,0,0,0,0,1,49,3,79,0,0,0,0,3,52,0,25],[0,0,0,3,5,80,2,16,0,0,0,0,6,3,4,51,0,0,0,0,6,86,1,207,0,0,0,0,6,86,2,47],[0,0,0,0,1,1,4,59,0,0,1,0,5,80,0,137,0,0,0,0,1,81,2,47,0,0,0,0,1,81,1,207],[0,0,0,0,1,97,1,159,0,0,0,0,0,19,4,53,0,0,0,0,1,2,4,51,0,0,0,32,1,16,0,140],[0,0,5,232,0,0,193,61,0,0,0,0,4,4,4,51,0,0,0,0,2,0,4,20,0,0,0,0,1,41,0,75],[0,0,3,173,0,0,129,61,0,0,2,126,1,0,0,65,0,0,0,0,0,16,4,53,0,0,0,17,1,0,0,57],[0,0,0,4,0,16,4,63,0,0,2,127,1,0,0,65,0,0,8,236,0,1,4,48,0,0,2,87,1,0,0,65],[0,0,0,128,0,16,4,63,0,0,0,32,1,0,0,57,0,0,0,132,0,16,4,63,0,0,0,31,1,0,0,57],[0,0,0,164,0,16,4,63,0,0,2,90,1,0,0,65,0,0,0,233,0,0,1,61,0,0,1,64,3,32,0,57],[0,0,0,64,0,48,4,63,0,0,0,0,0,8,4,53,0,0,0,160,3,32,0,57,0,11,0,0,0,3,0,29],[0,0,0,0,0,83,4,53,0,0,2,79,4,0,0,65,0,0,0,0,3,5,0,75,0,0,0,0,4,0,96,25],[0,0,0,224,3,32,0,57,0,14,0,0,0,3,0,29,0,0,0,13,9,0,0,41,0,0,0,0,0,147,4,53],[0,0,0,192,3,32,0,57,0,9,0,0,0,3,0,29,0,0,0,0,0,19,4,53,0,0,0,1,3,0,3,103],[0,0,0,36,5,48,3,112,0,0,0,0,5,5,4,59,0,0,1,32,7,32,0,57,0,0,1,0,2,32,1,191],[0,10,0,0,0,2,0,29,0,0,0,0,0,82,4,53,0,0,0,68,2,48,3,112,0,0,0,0,6,2,4,59],[0,12,0,0,0,7,0,29,0,0,0,0,0,103,4,53,0,0,0,0,2,8,4,51,0,0,0,248,7,32,2,16],[0,0,0,64,2,0,4,61,0,0,0,32,3,32,0,57,0,0,0,0,0,115,4,53,0,0,0,33,7,32,0,57],[0,0,0,0,0,71,4,53,0,0,0,240,1,16,2,16,0,0,0,34,4,32,0,57,0,0,0,0,0,20,4,53],[0,0,0,96,1,144,2,16,0,0,0,36,4,32,0,57,0,0,0,0,0,20,4,53,0,0,0,88,1,32,0,57],[0,0,0,0,0,97,4,53,0,0,0,56,1,32,0,57,0,0,0,0,0,81,4,53,0,0,0,88,1,0,0,57],[0,0,0,0,0,18,4,53,0,0,2,80,1,32,0,156,0,0,2,5,0,0,161,61,0,0,2,126,1,0,0,65],[0,0,0,0,0,16,4,53,0,0,0,65,1,0,0,57,0,0,1,160,0,0,1,61,0,0,0,40,1,16,0,57],[0,0,0,0,2,16,4,32,0,0,0,64,1,0,4,61,0,0,0,0,2,2,0,75,0,0,2,136,0,0,193,61],[0,0,0,68,2,16,0,57,0,0,2,86,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,36,2,16,0,57],[0,0,0,20,3,0,0,57,0,0,5,238,0,0,1,61,0,0,0,31,4,48,1,143,0,0,0,5,2,48,2,114],[0,0,1,245,0,0,97,61,0,0,0,0,5,0,0,25,0,0,0,5,6,80,2,16,0,0,0,0,7,97,3,79],[0,0,0,0,7,7,4,59,0,0,0,0,0,118,4,53,0,0,0,1,5,80,0,57,0,0,0,0,6,37,0,75],[0,0,1,238,0,0,65,61,0,0,0,0,5,4,0,75,0,0,2,3,0,0,97,61,0,0,0,3,4,64,2,16],[0,0,0,5,2,32,2,16,0,0,0,0,5,2,4,51,0,0,0,0,5,69,1,207,0,0,0,0,5,69,2,47],[0,0,0,0,1,33,3,79,0,0,0,0,1,1,4,59,0,0,1,0,4,64,0,137,0,0,0,0,1,65,2,47],[0,0,0,0,1,65,1,207,0,0,0,0,1,81,1,159,0,0,0,0,0,18,4,53,0,0,0,96,1,48,2,16],[0,0,8,236,0,1,4,48,0,0,0,128,1,32,0,57,0,0,0,64,0,16,4,63,0,0,2,60,1,0,0,65],[0,0,2,60,4,48,0,156,0,0,0,0,3,1,128,25,0,0,0,64,3,48,2,16,0,0,0,0,2,2,4,51],[0,0,2,60,4,32,0,156,0,0,0,0,2,1,128,25,0,0,0,96,2,32,2,16,0,0,0,0,2,50,1,159],[0,0,0,0,3,0,4,20,0,0,2,60,4,48,0,156,0,0,0,0,3,1,128,25,0,0,0,192,1,48,2,16],[0,0,0,0,1,33,1,159,0,0,2,74,1,16,1,199,0,0,128,16,2,0,0,57,0,13,0,0,0,8,0,29],[8,234,8,224,0,0,4,15,0,0,0,1,2,32,1,144,0,0,1,37,0,0,97,61,0,0,0,0,2,1,4,59],[0,0,0,64,1,0,4,61,0,0,0,64,3,16,0,57,0,0,0,0,4,0,4,26,0,0,0,0,0,35,4,53],[0,0,0,32,2,16,0,57,0,0,0,0,0,66,4,53,0,0,0,64,3,0,0,57,0,0,0,0,0,49,4,53],[0,0,2,73,3,16,0,156,0,0,1,219,0,0,33,61,0,0,0,96,3,16,0,57,0,0,0,64,0,48,4,63],[0,0,2,60,3,0,0,65,0,0,2,60,4,32,0,156,0,0,0,0,2,3,128,25,0,0,0,64,2,32,2,16],[0,0,0,0,1,1,4,51,0,0,2,60,4,16,0,156,0,0,0,0,1,3,128,25,0,0,0,96,1,16,2,16],[0,0,0,0,1,33,1,159,0,0,0,0,2,0,4,20,0,0,2,60,4,32,0,156,0,0,0,0,2,3,128,25],[0,0,0,192,2,32,2,16,0,0,0,0,1,18,1,159,0,0,2,74,1,16,1,199,0,0,128,16,2,0,0,57],[8,234,8,224,0,0,4,15,0,0,0,1,2,32,1,144,0,0,1,37,0,0,97,61,0,0,0,0,1,1,4,59],[0,0,0,0,0,16,4,27,0,0,0,1,3,0,0,57,0,0,0,0,2,3,4,26,0,0,0,1,1,0,0,138],[0,8,0,0,0,2,0,29,0,0,0,0,1,18,0,75,0,0,1,157,0,0,97,61,0,0,0,8,1,0,0,41],[0,0,0,1,1,16,0,57,0,0,0,0,0,19,4,27,0,0,0,13,1,0,0,41,0,0,0,0,1,1,4,51],[0,0,0,255,1,16,1,143,0,0,0,64,2,0,4,61,0,0,0,0,1,18,4,54,0,0,0,11,4,0,0,41],[0,0,0,0,4,4,4,51,0,0,0,0,4,4,0,75,0,0,0,0,4,0,0,25,0,0,0,1,4,0,192,57],[0,0,0,0,0,65,4,53,0,0,0,9,1,0,0,41,0,0,0,0,1,1,4,51,0,0,255,255,1,16,1,143],[0,0,0,64,4,32,0,57,0,0,0,0,0,20,4,53,0,0,0,14,1,0,0,41,0,0,0,0,1,1,4,51],[0,0,2,78,1,16,1,151,0,0,0,96,4,32,0,57,0,0,0,0,0,20,4,53,0,0,0,10,1,0,0,41],[0,0,0,0,1,1,4,51,0,0,0,128,4,32,0,57,0,0,0,0,0,20,4,53,0,0,0,12,1,0,0,41],[0,0,0,0,1,1,4,51,0,0,0,160,4,32,0,57,0,0,0,0,0,20,4,53,0,0,2,60,5,0,0,65],[0,0,2,60,1,32,0,156,0,0,0,0,2,5,128,25,0,0,0,0,1,0,4,20,0,0,2,60,4,16,0,156],[0,0,0,0,1,5,128,25,0,0,0,64,2,32,2,16,0,0,0,192,1,16,2,16,0,0,0,0,1,33,1,159],[0,0,2,81,1,16,1,199,0,0,128,13,2,0,0,57,0,0,2,82,4,0,0,65,8,234,8,219,0,0,4,15],[0,0,0,1,1,32,1,144,0,0,1,37,0,0,97,61,0,0,0,120,1,0,0,57,0,0,0,0,3,16,4,32],[0,0,0,64,1,0,4,61,0,0,2,60,2,16,0,156,0,0,2,60,2,0,0,65,0,0,0,0,2,1,64,25],[0,0,0,64,2,32,2,16,0,0,0,0,3,3,0,75,0,0,5,2,0,0,193,61,0,0,0,68,3,16,0,57],[0,0,2,86,4,0,0,65,0,0,0,0,0,67,4,53,0,0,0,36,3,16,0,57,0,0,0,20,4,0,0,57],[0,0,0,0,0,67,4,53,0,0,2,87,3,0,0,65,0,0,0,0,0,49,4,53,0,0,0,4,1,16,0,57],[0,0,0,32,3,0,0,57,0,0,0,0,0,49,4,53,0,0,2,88,1,32,1,199,0,0,8,236,0,1,4,48],[0,0,0,0,0,97,4,53,0,0,2,60,2,0,0,65,0,0,0,0,3,0,4,20,0,0,2,60,4,48,0,156],[0,0,0,0,3,2,128,25,0,0,2,60,4,16,0,156,0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16],[0,0,0,192,2,48,2,16,0,0,0,0,1,18,1,159,0,0,2,137,1,16,1,199,0,0,128,13,2,0,0,57],[0,0,0,1,3,0,0,57,0,0,2,138,4,0,0,65,8,234,8,219,0,0,4,15,0,0,0,1,1,32,1,144],[0,0,1,37,0,0,97,61,0,0,0,0,1,0,0,25,0,0,8,235,0,1,4,46,0,0,0,0,1,49,3,79],[0,6,0,0,0,4,0,29,0,0,0,224,6,64,2,112,0,0,2,93,2,0,0,65,0,0,0,64,0,32,4,63],[0,0,8,0,2,0,0,57,0,7,0,0,0,2,0,29,0,0,0,128,0,32,4,63,0,0,0,160,2,0,0,57],[0,0,0,0,3,0,0,25,0,0,0,5,4,48,2,16,0,0,0,0,4,65,3,79,0,0,0,0,4,4,4,59],[0,0,0,0,2,66,4,54,0,0,0,1,3,48,0,57,0,0,8,0,4,48,0,140,0,0,2,165,0,0,65,61],[0,0,0,4,2,0,0,57,0,0,0,6,1,0,0,41,0,0,2,71,1,16,0,156,0,0,0,0,8,0,0,25],[0,0,3,10,0,0,129,61,0,0,0,0,1,0,4,26,0,0,0,0,1,24,0,75,0,0,3,152,0,0,193,61],[0,13,0,0,0,2,0,29,0,0,0,6,1,0,0,41,0,0,2,97,1,16,0,156,0,0,2,194,0,0,33,61],[0,0,2,98,1,0,0,65,0,0,0,128,2,0,4,61,0,0,0,0,2,98,0,75,0,0,3,6,0,0,161,61],[0,0,0,5,2,96,2,16,0,0,0,160,2,32,0,57,0,0,0,0,0,18,4,53,0,0,7,255,2,96,0,140],[0,0,0,1,6,96,0,57,0,0,2,185,0,0,65,61,0,9,0,64,0,0,0,61,0,8,128,16,0,0,0,61],[0,0,0,7,1,0,0,41,0,6,0,0,0,1,0,29,0,7,0,1,0,16,2,120,0,0,0,0,4,0,0,25],[0,0,0,1,1,64,2,16,0,0,0,128,2,0,4,61,0,0,0,0,3,18,0,75,0,0,3,6,0,0,161,61],[0,0,0,1,1,16,1,191,0,0,0,0,2,18,0,75,0,0,3,6,0,0,161,61,0,0,0,5,1,16,2,16],[0,0,0,160,1,16,0,57,0,0,0,0,2,1,4,51,0,14,0,0,0,4,0,29,0,0,0,6,1,64,2,16],[0,0,0,160,1,16,0,57,0,12,0,0,0,1,0,29,0,0,0,0,3,1,4,51,0,0,0,64,1,0,4,61],[0,0,0,64,4,16,0,57,0,0,0,0,0,36,4,53,0,0,0,32,2,16,0,57,0,0,0,0,0,50,4,53],[0,0,0,9,3,0,0,41,0,0,0,0,0,49,4,53,0,0,2,73,3,16,0,156,0,0,1,219,0,0,33,61],[0,0,0,96,3,16,0,57,0,0,0,64,0,48,4,63,0,0,2,60,3,32,0,156,0,0,2,60,4,0,0,65],[0,0,0,0,2,4,128,25,0,0,0,64,2,32,2,16,0,0,0,0,1,1,4,51,0,0,2,60,3,16,0,156],[0,0,0,0,1,4,128,25,0,0,0,96,1,16,2,16,0,0,0,0,1,33,1,159,0,0,0,0,2,0,4,20],[0,0,2,60,3,32,0,156,0,0,0,0,2,4,128,25,0,0,0,192,2,32,2,16,0,0,0,0,1,18,1,159],[0,0,2,74,1,16,1,199,0,0,0,8,2,0,0,41,8,234,8,224,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,1,37,0,0,97,61,0,0,0,128,2,0,4,61,0,0,0,14,4,0,0,41,0,0,0,0,2,66,0,75],[0,0,3,6,0,0,161,61,0,0,0,5,2,64,2,16,0,0,0,12,2,32,0,105,0,0,0,0,1,1,4,59],[0,0,0,0,0,18,4,53,0,0,0,1,4,64,0,57,0,0,0,7,1,64,0,108,0,0,2,200,0,0,65,61],[0,0,0,6,1,0,0,41,0,0,0,3,1,16,0,140,0,0,2,196,0,0,33,61,0,0,0,128,1,0,4,61],[0,0,0,0,1,1,0,75,0,0,5,6,0,0,193,61,0,0,2,126,1,0,0,65,0,0,0,0,0,16,4,53],[0,0,0,50,1,0,0,57,0,0,1,160,0,0,1,61,0,0,0,4,1,0,0,57,0,9,0,89,0,0,0,146],[0,0,0,0,7,0,0,25,0,0,0,0,8,0,0,25,0,8,0,0,0,6,0,29,0,0,0,88,3,16,0,57],[0,13,0,0,0,3,0,29,0,0,0,11,2,48,0,108,0,0,1,37,0,0,33,61,0,0,0,10,2,16,0,41],[0,0,0,0,1,0,4,20,0,0,2,60,3,32,1,151,0,0,0,9,4,32,0,108,0,0,1,157,0,0,33,61],[0,0,0,88,2,32,0,57,0,0,0,0,4,0,0,49,0,0,0,0,5,36,0,75,0,0,1,157,0,0,65,61],[0,12,0,0,0,8,0,29,0,14,0,0,0,7,0,29,0,0,0,1,3,48,3,103,0,0,2,60,5,16,0,156],[0,0,0,167,0,0,33,61,0,0,0,0,2,36,0,73,0,0,2,60,2,32,1,151,0,0,0,0,2,35,3,223],[0,0,0,192,1,16,2,16,0,0,2,70,1,16,1,151,0,0,2,71,1,16,1,199,0,0,0,0,1,18,3,175],[0,0,128,16,2,0,0,57,8,234,8,229,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,0,2,60,3,48,1,151,0,0,0,1,2,32,1,144,0,0,4,202,0,0,97,61,0,0,0,63,2,48,0,57],[0,0,2,72,4,32,1,151,0,0,0,64,2,0,4,61,0,0,0,0,4,66,0,25,0,0,0,0,5,36,0,75],[0,0,0,0,5,0,0,25,0,0,0,1,5,0,64,57,0,0,2,67,6,64,0,156,0,0,1,219,0,0,33,61],[0,0,0,1,5,80,1,144,0,0,1,219,0,0,193,61,0,0,0,64,0,64,4,63,0,0,0,0,4,50,4,54],[0,0,0,31,5,48,0,57,0,0,0,5,5,80,2,114,0,0,3,74,0,0,97,61,0,0,0,0,6,0,0,49],[0,0,0,1,6,96,3,103,0,0,0,0,7,0,0,25,0,0,0,5,8,112,2,16,0,0,0,0,9,132,0,25],[0,0,0,0,8,134,3,79,0,0,0,0,8,8,4,59,0,0,0,0,0,137,4,53,0,0,0,1,7,112,0,57],[0,0,0,0,8,87,0,75,0,0,3,66,0,0,65,61,0,0,0,0,5,0,0,75,0,0,3,76,0,0,97,61],[0,0,0,5,5,48,2,114,0,0,3,87,0,0,97,61,0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16],[0,0,0,0,8,116,0,25,0,0,0,0,7,113,3,79,0,0,0,0,7,7,4,59,0,0,0,0,0,120,4,53],[0,0,0,1,6,96,0,57,0,0,0,0,7,86,0,75,0,0,3,79,0,0,65,61,0,0,0,31,3,48,1,144],[0,0,3,102,0,0,97,61,0,0,0,5,5,80,2,16,0,0,0,0,1,81,3,79,0,0,0,0,5,84,0,25],[0,0,0,3,3,48,2,16,0,0,0,0,6,5,4,51,0,0,0,0,6,54,1,207,0,0,0,0,6,54,2,47],[0,0,0,0,1,1,4,59,0,0,1,0,3,48,0,137,0,0,0,0,1,49,2,47,0,0,0,0,1,49,1,207],[0,0,0,0,1,97,1,159,0,0,0,0,0,21,4,53,0,0,0,0,1,2,4,51,0,0,0,32,1,16,0,140],[0,0,0,14,3,0,0,41,0,0,0,12,5,0,0,41,0,0,5,232,0,0,193,61,0,0,0,128,1,0,4,61],[0,0,0,0,1,49,0,75,0,0,3,6,0,0,161,61,0,0,0,0,2,4,4,51,0,0,0,5,1,48,2,16],[0,0,0,160,1,16,0,57,0,0,0,0,0,33,4,53,0,0,0,64,1,0,4,61,0,0,0,64,3,16,0,57],[0,0,0,0,0,35,4,53,0,0,0,64,2,0,0,57,0,0,0,0,2,33,4,54,0,0,0,0,0,82,4,53],[0,0,2,73,3,16,0,156,0,0,1,219,0,0,33,61,0,0,0,96,3,16,0,57,0,0,0,64,0,48,4,63],[0,0,2,60,3,32,0,156,0,0,2,60,4,0,0,65,0,0,0,0,2,4,128,25,0,0,0,64,2,32,2,16],[0,0,0,0,1,1,4,51,0,0,2,60,3,16,0,156,0,0,0,0,1,4,128,25,0,0,0,96,1,16,2,16],[0,0,0,0,1,33,1,159,0,0,0,0,2,0,4,20,0,0,2,60,3,32,0,156,0,0,0,0,2,4,128,25],[0,0,0,192,2,32,2,16,0,0,0,0,1,18,1,159,0,0,2,74,1,16,1,199,0,0,128,16,2,0,0,57],[8,234,8,224,0,0,4,15,0,0,0,1,2,32,1,144,0,0,0,8,6,0,0,41,0,0,0,14,7,0,0,41],[0,0,1,37,0,0,97,61,0,0,0,0,8,1,4,59,0,0,0,1,7,112,0,57,0,0,0,0,1,103,0,75],[0,0,0,13,2,0,0,41,0,0,0,0,1,2,0,25,0,0,3,15,0,0,65,61,0,0,2,177,0,0,1,61],[0,0,0,64,1,0,4,61,0,0,0,100,2,16,0,57,0,0,2,94,3,0,0,65,0,0,0,0,0,50,4,53],[0,0,0,68,2,16,0,57,0,0,2,95,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,36,2,16,0,57],[0,0,0,60,3,0,0,57,0,0,0,0,0,50,4,53,0,0,2,87,2,0,0,65,0,0,0,0,0,33,4,53],[0,0,0,4,2,16,0,57,0,0,0,32,3,0,0,57,0,0,0,0,0,50,4,53,0,0,2,60,2,0,0,65],[0,0,2,60,3,16,0,156,0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16,0,0,2,96,1,16,1,199],[0,0,8,236,0,1,4,48,0,8,0,0,0,2,0,29,0,0,0,2,1,0,0,57,0,11,0,0,0,1,0,29],[0,0,0,0,3,1,4,26,0,0,0,64,1,0,4,61,0,0,0,64,2,16,0,57,0,10,0,0,0,4,0,29],[0,0,0,0,0,66,4,53,0,0,0,32,2,16,0,57,0,0,0,0,0,50,4,53,0,0,0,64,3,0,0,57],[0,9,0,0,0,3,0,29,0,0,0,0,0,49,4,53,0,0,2,73,3,16,0,156,0,0,1,219,0,0,33,61],[0,0,0,96,3,16,0,57,0,0,0,64,0,48,4,63,0,0,2,60,4,0,0,65,0,0,2,60,3,32,0,156],[0,0,0,0,2,4,128,25,0,0,0,64,2,32,2,16,0,0,0,0,1,1,4,51,0,0,2,60,3,16,0,156],[0,0,0,0,1,4,128,25,0,0,0,96,1,16,2,16,0,0,0,0,1,33,1,159,0,0,0,0,2,0,4,20],[0,0,2,60,3,32,0,156,0,0,0,0,2,4,128,25,0,0,0,192,2,32,2,16,0,0,0,0,1,18,1,159],[0,0,2,74,1,16,1,199,0,0,128,16,2,0,0,57,8,234,8,224,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,1,37,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,11,2,0,0,41,0,0,0,0,0,18,4,27],[0,0,2,75,1,0,0,65,0,0,0,64,4,0,4,61,0,11,0,0,0,4,0,29,0,0,0,0,0,20,4,53],[0,0,0,0,1,0,4,20,0,0,2,60,2,16,0,156,0,0,2,60,3,0,0,65,0,0,0,0,1,3,128,25],[0,0,2,60,2,64,0,156,0,0,0,0,3,4,64,25,0,0,0,64,2,48,2,16,0,0,0,192,1,16,2,16],[0,0,0,0,1,33,1,159,0,0,2,76,1,16,1,199,0,0,128,11,2,0,0,57,8,234,8,224,0,0,4,15],[0,0,0,11,10,0,0,41,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,2,60,3,48,1,151],[0,0,0,32,4,48,0,140,0,0,0,0,4,3,0,25,0,0,0,32,4,0,128,57,0,0,0,31,5,64,1,143],[0,0,0,5,6,64,2,114,0,0,3,247,0,0,97,61,0,0,0,0,7,0,0,25,0,0,0,5,8,112,2,16],[0,0,0,0,9,138,0,25,0,0,0,0,8,129,3,79,0,0,0,0,8,8,4,59,0,0,0,0,0,137,4,53],[0,0,0,1,7,112,0,57,0,0,0,0,8,103,0,75,0,0,3,239,0,0,65,61,0,0,0,0,9,10,0,25],[0,0,0,0,7,5,0,75,0,0,4,7,0,0,97,61,0,0,0,5,6,96,2,16,0,0,0,0,7,97,3,79],[0,0,0,0,6,105,0,25,0,0,0,3,5,80,2,16,0,0,0,0,8,6,4,51,0,0,0,0,8,88,1,207],[0,0,0,0,8,88,2,47,0,0,0,0,7,7,4,59,0,0,1,0,5,80,0,137,0,0,0,0,7,87,2,47],[0,0,0,0,5,87,1,207,0,0,0,0,5,133,1,159,0,0,0,0,0,86,4,53,0,0,0,1,2,32,1,144],[0,0,4,229,0,0,97,61,0,0,0,31,1,64,0,57,0,0,0,96,1,16,1,143,0,0,0,0,2,145,0,25],[0,0,0,0,1,18,0,75,0,0,0,0,1,0,0,25,0,0,0,1,1,0,64,57,0,7,0,0,0,2,0,29],[0,0,2,67,2,32,0,156,0,0,1,219,0,0,33,61,0,0,0,1,1,16,1,144,0,0,1,219,0,0,193,61],[0,0,0,7,1,0,0,41,0,0,0,64,0,16,4,63,0,0,0,32,1,48,0,140,0,0,1,37,0,0,65,61],[0,0,0,0,1,9,4,51,0,0,255,255,2,16,0,140,0,0,1,37,0,0,33,61,0,0,0,7,2,0,0,41],[0,0,2,77,2,32,0,156,0,0,1,219,0,0,33,61,0,0,0,7,3,0,0,41,0,0,0,192,2,48,0,57],[0,0,0,64,0,32,4,63,0,0,0,0,4,0,4,16,0,0,2,78,2,64,1,151,0,0,0,96,5,48,0,57],[0,5,0,0,0,5,0,29,0,0,0,0,0,37,4,53,0,0,0,32,5,48,0,57,0,0,0,1,2,0,0,57],[0,11,0,0,0,2,0,29,0,3,0,0,0,5,0,29,0,0,0,0,0,37,4,53,0,0,0,160,2,48,0,57],[0,0,0,10,7,0,0,41,0,6,0,0,0,2,0,29,0,0,0,0,0,114,4,53,0,0,0,128,2,48,0,57],[0,0,0,0,8,0,4,17,0,4,0,0,0,2,0,29,0,0,0,0,0,130,4,53,0,0,0,0,0,3,4,53],[0,0,0,64,2,48,0,57,0,2,0,0,0,2,0,29,0,0,0,0,0,18,4,53,0,0,0,64,2,0,4,61],[0,0,0,32,3,32,0,57,0,0,0,0,0,3,4,53,0,0,0,33,5,32,0,57,0,0,2,79,6,0,0,65],[0,0,0,0,0,101,4,53,0,0,0,240,1,16,2,16,0,0,0,34,5,32,0,57,0,0,0,0,0,21,4,53],[0,0,0,96,1,64,2,16,0,0,0,36,4,32,0,57,0,0,0,0,0,20,4,53,0,0,0,88,1,32,0,57],[0,0,0,0,0,113,4,53,0,0,0,88,1,0,0,57,0,0,0,0,0,18,4,53,0,0,0,56,1,32,0,57],[0,1,0,0,0,8,0,29,0,0,0,0,0,129,4,53,0,0,2,80,1,32,0,156,0,0,1,219,0,0,33,61],[0,0,0,128,1,32,0,57,0,0,0,64,0,16,4,63,0,0,2,60,1,0,0,65,0,0,2,60,4,48,0,156],[0,0,0,0,3,1,128,25,0,0,0,64,3,48,2,16,0,0,0,0,2,2,4,51,0,0,2,60,4,32,0,156],[0,0,0,0,2,1,128,25,0,0,0,96,2,32,2,16,0,0,0,0,2,50,1,159,0,0,0,0,3,0,4,20],[0,0,2,60,4,48,0,156,0,0,0,0,3,1,128,25,0,0,0,192,1,48,2,16,0,0,0,0,1,33,1,159],[0,0,2,74,1,16,1,199,0,0,128,16,2,0,0,57,8,234,8,224,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,1,37,0,0,97,61,0,0,0,0,2,1,4,59,0,0,0,64,1,0,4,61,0,0,0,64,3,16,0,57],[0,0,0,0,4,0,4,26,0,0,0,0,0,35,4,53,0,0,0,32,2,16,0,57,0,0,0,0,0,66,4,53],[0,0,0,9,3,0,0,41,0,0,0,0,0,49,4,53,0,0,2,73,3,16,0,156,0,0,1,219,0,0,33,61],[0,0,0,96,3,16,0,57,0,0,0,64,0,48,4,63,0,0,2,60,3,0,0,65,0,0,2,60,4,32,0,156],[0,0,0,0,2,3,128,25,0,0,0,64,2,32,2,16,0,0,0,0,1,1,4,51,0,0,2,60,4,16,0,156],[0,0,0,0,1,3,128,25,0,0,0,96,1,16,2,16,0,0,0,0,1,33,1,159,0,0,0,0,2,0,4,20],[0,0,2,60,4,32,0,156,0,0,0,0,2,3,128,25,0,0,0,192,2,32,2,16,0,0,0,0,1,18,1,159],[0,0,2,74,1,16,1,199,0,0,128,16,2,0,0,57,8,234,8,224,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,1,37,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,0,0,16,4,27,0,0,0,11,1,0,0,41],[0,0,0,0,1,1,4,26,0,0,0,1,2,0,0,138,0,0,0,0,2,33,0,75,0,0,1,157,0,0,97,61],[0,0,0,1,1,16,0,57,0,0,0,11,3,0,0,41,0,0,0,0,0,19,4,27,0,0,0,7,1,0,0,41],[0,0,0,0,1,1,4,51,0,0,0,255,1,16,1,143,0,0,0,64,2,0,4,61,0,0,0,0,1,18,4,54],[0,0,0,3,4,0,0,41,0,0,0,0,4,4,4,51,0,0,0,0,4,4,0,75,0,0,0,0,4,0,0,25],[0,0,0,1,4,0,192,57,0,0,0,0,0,65,4,53,0,0,0,2,1,0,0,41,0,0,0,0,1,1,4,51],[0,0,255,255,1,16,1,143,0,0,0,64,4,32,0,57,0,0,0,0,0,20,4,53,0,0,0,5,1,0,0,41],[0,0,0,0,1,1,4,51,0,0,2,78,1,16,1,151,0,0,0,96,4,32,0,57,0,0,0,0,0,20,4,53],[0,0,0,4,1,0,0,41,0,0,0,0,1,1,4,51,0,0,0,128,4,32,0,57,0,0,0,0,0,20,4,53],[0,0,0,6,1,0,0,41,0,0,0,0,1,1,4,51,0,0,0,160,4,32,0,57,0,0,0,0,0,20,4,53],[0,0,2,60,1,0,0,65,0,0,2,60,4,32,0,156,0,0,0,0,2,1,128,25,0,0,0,0,5,0,4,20],[0,0,2,60,4,80,0,156,0,0,0,0,5,1,128,25,0,0,0,64,1,32,2,16,0,0,0,192,2,80,2,16],[0,0,0,0,1,18,1,159,0,0,2,81,1,16,1,199,0,0,128,13,2,0,0,57,0,0,2,82,4,0,0,65],[8,234,8,219,0,0,4,15,0,0,0,1,1,32,1,144,0,0,0,13,1,0,0,41,0,0,1,37,0,0,97,61],[0,0,0,92,2,16,0,57,0,0,0,0,1,0,4,19,0,0,2,60,3,16,1,151,0,0,0,0,65,35,0,169],[0,0,2,83,2,32,1,151,0,0,2,83,4,16,1,151,0,0,0,0,66,36,0,217,0,0,0,0,2,35,0,75],[0,0,0,8,3,0,0,41,0,0,1,157,0,0,193,61,0,0,0,14,2,48,0,105,0,0,0,160,1,16,0,57],[0,0,0,0,1,33,0,26,0,0,1,157,0,0,65,61,0,0,2,69,2,16,0,156,0,0,6,200,0,0,65,61],[0,0,0,64,4,0,4,61,0,0,0,96,0,0,1,61,0,0,0,31,4,48,1,143,0,0,0,5,2,48,2,114],[0,0,4,213,0,0,97,61,0,0,0,0,5,0,0,25,0,0,0,5,6,80,2,16,0,0,0,0,7,97,3,79],[0,0,0,0,7,7,4,59,0,0,0,0,0,118,4,53,0,0,0,1,5,80,0,57,0,0,0,0,6,37,0,75],[0,0,4,206,0,0,65,61,0,0,0,0,5,4,0,75,0,0,4,227,0,0,97,61,0,0,0,3,4,64,2,16],[0,0,0,5,2,32,2,16,0,0,0,0,5,2,4,51,0,0,0,0,5,69,1,207,0,0,0,0,5,69,2,47],[0,0,0,0,1,33,3,79,0,0,0,0,1,1,4,59,0,0,1,0,4,64,0,137,0,0,0,0,1,65,2,47],[0,0,0,0,1,65,1,207,0,0,0,0,1,81,1,159,0,0,0,0,0,18,4,53,0,0,0,96,1,48,2,16],[0,0,8,236,0,1,4,48,0,0,0,64,2,0,4,61,0,0,0,31,4,48,1,143,0,0,0,5,5,48,2,114],[0,0,4,242,0,0,97,61,0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16,0,0,0,0,8,114,0,25],[0,0,0,0,7,113,3,79,0,0,0,0,7,7,4,59,0,0,0,0,0,120,4,53,0,0,0,1,6,96,0,57],[0,0,0,0,7,86,0,75,0,0,4,234,0,0,65,61,0,0,0,0,6,4,0,75,0,0,5,1,0,0,97,61],[0,0,0,5,5,80,2,16,0,0,0,0,1,81,3,79,0,0,0,0,5,82,0,25,0,0,0,3,4,64,2,16],[0,0,0,0,6,5,4,51,0,0,0,0,6,70,1,207,0,0,0,0,6,70,2,47,0,0,0,0,1,1,4,59],[0,0,1,0,4,64,0,137,0,0,0,0,1,65,2,47,0,0,0,0,1,65,1,207,0,0,0,0,1,97,1,159],[0,0,0,0,0,21,4,53,0,0,1,67,0,0,1,61,0,0,0,8,3,0,0,41,0,0,0,0,0,49,4,53],[0,0,2,85,1,32,1,199,0,0,8,235,0,1,4,46,0,0,0,5,1,0,0,138,0,8,0,0,0,1,0,29],[0,0,0,13,1,16,0,107,0,0,1,157,0,0,33,61,0,0,0,13,1,0,0,41,0,0,0,4,3,16,0,57],[0,0,0,11,1,48,0,108,0,0,1,37,0,0,33,61,0,0,0,160,1,0,4,61,0,5,0,0,0,1,0,29],[0,0,0,13,2,0,0,41,0,0,0,10,1,32,0,41,0,0,0,1,1,16,3,103,0,0,0,0,1,1,4,59],[0,0,2,71,2,16,0,156,0,0,0,0,9,0,0,25,0,0,5,90,0,0,129,61,0,0,0,2,1,0,0,57],[0,4,0,0,0,1,0,29,0,0,0,0,1,1,4,26,0,0,0,0,1,25,0,75,0,0,5,250,0,0,193,61],[0,0,0,0,2,3,0,25,0,0,0,8,1,32,0,108,0,0,1,157,0,0,33,61,0,0,0,4,3,32,0,57],[0,0,0,11,1,48,0,108,0,0,1,37,0,0,33,61,0,0,0,10,1,32,0,41,0,0,0,1,1,16,3,103],[0,0,0,0,1,1,4,59,0,0,2,71,2,16,0,156,0,0,0,0,9,0,0,25,0,0,6,45,0,0,129,61],[0,0,0,0,5,3,0,25,0,0,0,3,1,0,0,57,0,13,0,0,0,1,0,29,0,0,0,0,1,1,4,26],[0,0,0,0,1,25,0,75,0,0,6,205,0,0,193,61,0,0,0,11,1,80,0,108,0,0,3,6,0,0,129,61],[0,0,0,10,1,80,0,41,0,0,0,1,2,0,3,103,0,0,0,0,3,18,3,79,0,0,0,0,3,3,4,59],[0,0,2,116,3,48,1,151,0,0,2,79,3,48,0,156,0,0,7,32,0,0,193,61,0,0,0,0,4,5,0,25],[0,0,0,8,3,64,0,108,0,0,1,157,0,0,33,61,0,0,0,4,3,64,0,57,0,0,0,11,4,48,0,108],[0,0,1,37,0,0,33,61,0,0,0,1,1,16,0,57,0,0,0,0,1,18,3,79,0,0,0,0,1,1,4,59],[0,0,0,11,4,48,0,108,0,0,3,6,0,0,129,61,0,0,0,232,1,16,2,112,0,0,0,10,3,48,0,41],[0,0,0,0,4,50,3,79,0,0,0,5,3,80,0,57,0,12,0,0,0,49,0,30,0,0,0,0,5,4,4,59],[0,0,1,157,0,0,65,61,0,0,0,12,6,0,0,41,0,0,0,11,4,96,0,108,0,0,1,37,0,0,33,61],[0,0,0,12,4,0,0,41,0,0,2,119,4,64,0,156,0,0,7,90,0,0,65,61,0,0,0,64,1,0,4,61],[0,0,0,68,2,16,0,57,0,0,2,125,3,0,0,65,0,0,0,0,0,50,4,53,0,0,2,87,2,0,0,65],[0,0,0,0,0,33,4,53,0,0,0,36,2,16,0,57,0,0,0,32,3,0,0,57,0,0,0,0,0,50,4,53],[0,0,0,4,2,16,0,57,0,0,5,243,0,0,1,61,0,7,0,224,0,16,2,120,0,0,0,0,8,0,0,25],[0,0,0,0,9,0,0,25,0,0,0,8,1,48,0,108,0,0,1,157,0,0,33,61,0,0,0,4,2,48,0,57],[0,0,0,11,1,32,0,108,0,0,1,37,0,0,33,61,0,0,0,10,3,48,0,41,0,0,0,1,1,0,3,103],[0,0,0,0,3,49,3,79,0,0,0,0,3,3,4,59,0,0,0,224,3,48,2,112,0,0,0,0,7,35,0,26],[0,0,1,157,0,0,65,61,0,0,0,11,4,112,0,108,0,0,1,37,0,0,33,61,0,0,0,10,2,32,0,41],[0,0,0,0,3,35,0,26,0,0,2,60,4,32,1,151,0,0,0,0,2,0,4,20,0,0,1,157,0,0,65,61],[0,0,0,0,5,0,0,49,0,0,0,0,6,53,0,75,0,0,1,157,0,0,65,61,0,14,0,0,0,9,0,29],[0,12,0,0,0,8,0,29,0,13,0,0,0,7,0,29,0,0,2,60,6,32,0,156,0,0,0,167,0,0,33,61],[0,0,0,0,1,65,3,79,0,0,0,0,3,53,0,73,0,0,2,60,3,48,1,151,0,0,0,0,1,49,3,223],[0,0,0,192,2,32,2,16,0,0,2,70,2,32,1,151,0,0,2,71,2,32,1,199,0,0,0,0,1,33,3,175],[0,0,128,16,2,0,0,57,8,234,8,229,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,0,2,60,3,48,1,151,0,0,0,1,2,32,1,144,0,0,6,18,0,0,97,61,0,0,0,63,2,48,0,57],[0,0,2,72,4,32,1,151,0,0,0,64,2,0,4,61,0,0,0,0,4,66,0,25,0,0,0,0,5,36,0,75],[0,0,0,0,5,0,0,25,0,0,0,1,5,0,64,57,0,0,2,67,6,64,0,156,0,0,1,219,0,0,33,61],[0,0,0,1,5,80,1,144,0,0,1,219,0,0,193,61,0,0,0,64,0,64,4,63,0,0,0,0,4,50,4,54],[0,0,0,31,5,48,0,57,0,0,0,5,5,80,2,114,0,0,5,162,0,0,97,61,0,0,0,0,6,0,0,49],[0,0,0,1,6,96,3,103,0,0,0,0,7,0,0,25,0,0,0,5,8,112,2,16,0,0,0,0,9,132,0,25],[0,0,0,0,8,134,3,79,0,0,0,0,8,8,4,59,0,0,0,0,0,137,4,53,0,0,0,1,7,112,0,57],[0,0,0,0,8,87,0,75,0,0,5,154,0,0,65,61,0,0,0,0,5,0,0,75,0,0,5,164,0,0,97,61],[0,0,0,5,5,48,2,114,0,0,0,14,9,0,0,41,0,0,5,176,0,0,97,61,0,0,0,0,6,0,0,25],[0,0,0,5,7,96,2,16,0,0,0,0,8,116,0,25,0,0,0,0,7,113,3,79,0,0,0,0,7,7,4,59],[0,0,0,0,0,120,4,53,0,0,0,1,6,96,0,57,0,0,0,0,7,86,0,75,0,0,5,168,0,0,65,61],[0,0,0,31,3,48,1,144,0,0,5,191,0,0,97,61,0,0,0,5,5,80,2,16,0,0,0,0,1,81,3,79],[0,0,0,0,5,84,0,25,0,0,0,3,3,48,2,16,0,0,0,0,6,5,4,51,0,0,0,0,6,54,1,207],[0,0,0,0,6,54,2,47,0,0,0,0,1,1,4,59,0,0,1,0,3,48,0,137,0,0,0,0,1,49,2,47],[0,0,0,0,1,49,1,207,0,0,0,0,1,97,1,159,0,0,0,0,0,21,4,53,0,0,0,0,1,2,4,51],[0,0,0,32,1,16,0,140,0,0,5,232,0,0,193,61,0,0,0,0,2,4,4,51,0,0,0,64,1,0,4,61],[0,0,0,64,3,16,0,57,0,0,0,0,0,35,4,53,0,0,0,32,2,16,0,57,0,0,0,0,0,146,4,53],[0,0,0,9,3,0,0,41,0,0,0,0,0,49,4,53,0,0,2,73,3,16,0,156,0,0,1,219,0,0,33,61],[0,0,0,96,3,16,0,57,0,0,0,64,0,48,4,63,0,0,2,60,3,32,0,156,0,0,2,60,4,0,0,65],[0,0,0,0,2,4,128,25,0,0,0,64,2,32,2,16,0,0,0,0,1,1,4,51,0,0,2,60,3,16,0,156],[0,0,0,0,1,4,128,25,0,0,0,96,1,16,2,16,0,0,0,0,1,33,1,159,0,0,0,0,2,0,4,20],[0,0,2,60,3,32,0,156,0,0,0,0,2,4,128,25,0,0,0,192,2,32,2,16,0,0,0,0,1,18,1,159],[0,0,2,74,1,16,1,199,0,0,128,16,2,0,0,57,8,234,8,224,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,0,13,3,0,0,41,0,0,0,12,8,0,0,41,0,0,1,37,0,0,97,61,0,0,0,0,9,1,4,59],[0,0,0,1,8,128,0,57,0,0,0,7,1,128,0,108,0,0,5,93,0,0,65,61,0,0,5,23,0,0,1,61],[0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57,0,0,2,99,3,0,0,65,0,0,0,0,0,50,4,53],[0,0,0,36,2,16,0,57,0,0,0,31,3,0,0,57,0,0,0,0,0,50,4,53,0,0,2,87,2,0,0,65],[0,0,0,0,0,33,4,53,0,0,0,4,2,16,0,57,0,0,0,32,3,0,0,57,0,0,0,0,0,50,4,53],[0,0,2,60,2,0,0,65,0,0,2,60,3,16,0,156,0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16],[0,0,2,88,1,16,1,199,0,0,8,236,0,1,4,48,0,0,0,64,1,0,4,61,0,0,0,132,2,16,0,57],[0,0,2,100,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,100,2,16,0,57,0,0,2,101,3,0,0,65],[0,0,0,0,0,50,4,53,0,0,0,68,2,16,0,57,0,0,2,102,3,0,0,65,0,0,0,0,0,50,4,53],[0,0,0,36,2,16,0,57,0,0,0,68,3,0,0,57,0,0,0,0,0,50,4,53,0,0,2,87,2,0,0,65],[0,0,0,0,0,33,4,53,0,0,0,4,2,16,0,57,0,0,0,32,3,0,0,57,0,0,0,0,0,50,4,53],[0,0,2,60,2,0,0,65,0,0,2,60,3,16,0,156,0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16],[0,0,2,103,1,16,1,199,0,0,8,236,0,1,4,48,0,0,0,31,4,48,1,143,0,0,0,5,2,48,2,114],[0,0,6,29,0,0,97,61,0,0,0,0,5,0,0,25,0,0,0,5,6,80,2,16,0,0,0,0,7,97,3,79],[0,0,0,0,7,7,4,59,0,0,0,0,0,118,4,53,0,0,0,1,5,80,0,57,0,0,0,0,6,37,0,75],[0,0,6,22,0,0,65,61,0,0,0,0,5,4,0,75,0,0,6,43,0,0,97,61,0,0,0,3,4,64,2,16],[0,0,0,5,2,32,2,16,0,0,0,0,5,2,4,51,0,0,0,0,5,69,1,207,0,0,0,0,5,69,2,47],[0,0,0,0,1,33,3,79,0,0,0,0,1,1,4,59,0,0,1,0,4,64,0,137,0,0,0,0,1,65,2,47],[0,0,0,0,1,65,1,207,0,0,0,0,1,81,1,159,0,0,0,0,0,18,4,53,0,0,0,96,1,48,2,16],[0,0,8,236,0,1,4,48,0,6,0,224,0,16,2,120,0,0,0,0,8,0,0,25,0,0,0,0,9,0,0,25],[0,0,0,8,1,48,0,108,0,0,1,157,0,0,33,61,0,0,0,4,2,48,0,57,0,0,0,11,1,32,0,108],[0,0,1,37,0,0,33,61,0,0,0,10,3,48,0,41,0,0,0,1,1,0,3,103,0,0,0,0,3,49,3,79],[0,0,0,0,3,3,4,59,0,0,0,224,10,48,2,112,0,0,0,0,7,42,0,26,0,0,1,157,0,0,65,61],[0,0,0,11,4,112,0,108,0,0,1,37,0,0,33,61,0,0,2,104,4,48,1,152,0,0,7,42,0,0,193,61],[0,0,2,106,4,48,0,156,0,0,7,46,0,0,129,61,0,0,2,107,3,48,1,152,0,0,7,50,0,0,97,61],[0,0,0,10,2,32,0,41,0,0,0,0,3,42,0,26,0,0,2,60,4,32,1,151,0,0,0,0,2,0,4,20],[0,0,1,157,0,0,65,61,0,0,0,0,5,0,0,49,0,0,0,0,6,53,0,75,0,0,1,157,0,0,65,61],[0,13,0,0,0,10,0,29,0,14,0,0,0,9,0,29,0,7,0,0,0,8,0,29,0,12,0,0,0,7,0,29],[0,0,2,60,6,32,0,156,0,0,0,167,0,0,33,61,0,0,0,0,1,65,3,79,0,0,0,0,3,53,0,73],[0,0,2,60,3,48,1,151,0,0,0,0,1,49,3,223,0,0,0,192,2,32,2,16,0,0,2,70,2,32,1,151],[0,0,2,71,2,32,1,199,0,0,0,0,1,33,3,175,0,0,0,2,2,0,0,57,8,234,8,229,0,0,4,15],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,2,60,3,48,1,151,0,0,0,1,2,32,1,144],[0,0,7,57,0,0,97,61,0,0,0,63,2,48,0,57,0,0,2,72,4,32,1,151,0,0,0,64,2,0,4,61],[0,0,0,0,4,66,0,25,0,0,0,0,5,36,0,75,0,0,0,0,5,0,0,25,0,0,0,1,5,0,64,57],[0,0,2,67,6,64,0,156,0,0,1,219,0,0,33,61,0,0,0,1,5,80,1,144,0,0,1,219,0,0,193,61],[0,0,0,64,0,64,4,63,0,0,0,0,4,50,4,54,0,0,0,31,5,48,0,57,0,0,0,5,5,80,2,114],[0,0,0,13,10,0,0,41,0,0,6,125,0,0,97,61,0,0,0,0,6,0,0,49,0,0,0,1,6,96,3,103],[0,0,0,0,7,0,0,25,0,0,0,5,8,112,2,16,0,0,0,0,9,132,0,25,0,0,0,0,8,134,3,79],[0,0,0,0,8,8,4,59,0,0,0,0,0,137,4,53,0,0,0,1,7,112,0,57,0,0,0,0,8,87,0,75],[0,0,6,117,0,0,65,61,0,0,0,0,5,0,0,75,0,0,6,127,0,0,97,61,0,0,0,5,5,48,2,114],[0,0,0,14,9,0,0,41,0,0,6,139,0,0,97,61,0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16],[0,0,0,0,8,116,0,25,0,0,0,0,7,113,3,79,0,0,0,0,7,7,4,59,0,0,0,0,0,120,4,53],[0,0,0,1,6,96,0,57,0,0,0,0,7,86,0,75,0,0,6,131,0,0,65,61,0,0,0,31,3,48,1,144],[0,0,6,154,0,0,97,61,0,0,0,5,5,80,2,16,0,0,0,0,1,81,3,79,0,0,0,0,5,84,0,25],[0,0,0,3,3,48,2,16,0,0,0,0,6,5,4,51,0,0,0,0,6,54,1,207,0,0,0,0,6,54,2,47],[0,0,0,0,1,1,4,59,0,0,1,0,3,48,0,137,0,0,0,0,1,49,2,47,0,0,0,0,1,49,1,207],[0,0,0,0,1,97,1,159,0,0,0,0,0,21,4,53,0,0,0,64,1,0,4,61,0,0,0,0,2,2,4,51],[0,0,0,32,2,32,0,140,0,0,7,84,0,0,193,61,0,0,0,0,2,4,4,51,0,0,2,109,2,32,1,151],[0,0,0,219,3,160,2,16,0,0,2,110,3,48,1,151,0,0,0,0,2,35,1,159,0,0,2,79,2,32,1,199],[0,0,0,64,3,16,0,57,0,0,0,0,0,35,4,53,0,0,0,32,2,16,0,57,0,0,0,0,0,146,4,53],[0,0,0,9,3,0,0,41,0,0,0,0,0,49,4,53,0,0,2,73,3,16,0,156,0,0,1,219,0,0,33,61],[0,0,0,96,3,16,0,57,0,0,0,64,0,48,4,63,0,0,2,60,3,32,0,156,0,0,2,60,4,0,0,65],[0,0,0,0,2,4,128,25,0,0,0,64,2,32,2,16,0,0,0,0,1,1,4,51,0,0,2,60,3,16,0,156],[0,0,0,0,1,4,128,25,0,0,0,96,1,16,2,16,0,0,0,0,1,33,1,159,0,0,0,0,2,0,4,20],[0,0,2,60,3,32,0,156,0,0,0,0,2,4,128,25,0,0,0,192,2,32,2,16,0,0,0,0,1,18,1,159],[0,0,2,74,1,16,1,199,0,0,128,16,2,0,0,57,8,234,8,224,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,0,12,3,0,0,41,0,0,0,7,8,0,0,41,0,0,1,37,0,0,97,61,0,0,0,0,9,1,4,59],[0,0,0,1,8,128,0,57,0,0,0,6,1,128,0,108,0,0,6,48,0,0,65,61,0,0,5,40,0,0,1,61],[0,0,0,0,2,16,4,32,0,0,0,64,1,0,4,61,0,0,0,0,2,2,0,75,0,0,6,218,0,0,193,61],[0,0,1,228,0,0,1,61,0,0,0,64,1,0,4,61,0,0,0,132,2,16,0,57,0,0,2,113,3,0,0,65],[0,0,0,0,0,50,4,53,0,0,0,100,2,16,0,57,0,0,2,114,3,0,0,65,0,0,0,0,0,50,4,53],[0,0,0,68,2,16,0,57,0,0,2,115,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,36,2,16,0,57],[0,0,0,94,3,0,0,57,0,0,6,6,0,0,1,61,0,0,0,32,2,0,0,57,0,0,0,0,2,33,4,54],[0,0,0,13,5,0,0,41,0,0,0,0,0,82,4,53,0,0,0,31,3,80,1,143,0,0,0,64,2,16,0,57],[0,0,0,12,4,0,0,41,0,0,0,1,4,64,3,103,0,0,0,5,5,80,2,114,0,0,6,237,0,0,97,61],[0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16,0,0,0,0,8,114,0,25,0,0,0,0,7,116,3,79],[0,0,0,0,7,7,4,59,0,0,0,0,0,120,4,53,0,0,0,1,6,96,0,57,0,0,0,0,7,86,0,75],[0,0,6,229,0,0,65,61,0,0,0,0,6,3,0,75,0,0,6,252,0,0,97,61,0,0,0,5,5,80,2,16],[0,0,0,0,4,84,3,79,0,0,0,0,5,82,0,25,0,0,0,3,3,48,2,16,0,0,0,0,6,5,4,51],[0,0,0,0,6,54,1,207,0,0,0,0,6,54,2,47,0,0,0,0,4,4,4,59,0,0,1,0,3,48,0,137],[0,0,0,0,4,52,2,47,0,0,0,0,3,52,1,207,0,0,0,0,3,99,1,159,0,0,0,0,0,53,4,53],[0,0,0,13,3,0,0,41,0,0,0,0,2,50,0,25,0,0,0,0,0,2,4,53,0,0,0,95,2,48,0,57],[0,0,0,32,3,0,0,138,0,0,0,0,2,50,1,111,0,0,2,60,4,0,0,65,0,0,2,60,3,16,0,156],[0,0,0,0,1,4,128,25,0,0,0,64,1,16,2,16,0,0,2,60,3,32,0,156,0,0,0,0,2,4,128,25],[0,0,0,96,2,32,2,16,0,0,0,0,1,33,1,159,0,0,0,0,2,0,4,20,0,0,2,60,3,32,0,156],[0,0,0,0,2,4,128,25,0,0,0,192,2,32,2,16,0,0,0,0,1,18,1,159,0,0,2,74,1,16,1,199],[0,0,128,13,2,0,0,57,0,0,0,3,3,0,0,57,0,0,2,84,4,0,0,65,0,0,0,1,5,0,0,41],[0,0,0,10,6,0,0,41,8,234,8,219,0,0,4,15,0,0,0,1,1,32,1,144,0,0,1,37,0,0,97,61],[0,0,0,64,1,0,4,61,0,0,0,10,2,0,0,41,0,0,0,0,0,33,4,53,0,0,2,60,2,16,0,156],[0,0,2,60,1,0,128,65,0,0,0,64,1,16,2,16,0,0,2,85,1,16,1,199,0,0,8,235,0,1,4,46],[0,0,0,64,1,0,4,61,0,0,0,100,2,16,0,57,0,0,2,117,3,0,0,65,0,0,0,0,0,50,4,53],[0,0,0,68,2,16,0,57,0,0,2,118,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,36,2,16,0,57],[0,0,0,39,3,0,0,57,0,0,3,161,0,0,1,61,0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57],[0,0,2,105,3,0,0,65,0,0,7,53,0,0,1,61,0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57],[0,0,2,112,3,0,0,65,0,0,7,53,0,0,1,61,0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57],[0,0,2,111,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,36,2,16,0,57,0,0,0,4,3,0,0,41],[0,0,5,238,0,0,1,61,0,0,0,31,4,48,1,143,0,0,0,5,2,48,2,114,0,0,7,68,0,0,97,61],[0,0,0,0,5,0,0,25,0,0,0,5,6,80,2,16,0,0,0,0,7,97,3,79,0,0,0,0,7,7,4,59],[0,0,0,0,0,118,4,53,0,0,0,1,5,80,0,57,0,0,0,0,6,37,0,75,0,0,7,61,0,0,65,61],[0,0,0,0,5,4,0,75,0,0,7,82,0,0,97,61,0,0,0,3,4,64,2,16,0,0,0,5,2,32,2,16],[0,0,0,0,5,2,4,51,0,0,0,0,5,69,1,207,0,0,0,0,5,69,2,47,0,0,0,0,1,33,3,79],[0,0,0,0,1,1,4,59,0,0,1,0,4,64,0,137,0,0,0,0,1,65,2,47,0,0,0,0,1,65,1,207],[0,0,0,0,1,81,1,159,0,0,0,0,0,18,4,53,0,0,0,96,1,48,2,16,0,0,8,236,0,1,4,48],[0,0,0,68,2,16,0,57,0,0,2,108,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,36,2,16,0,57],[0,0,0,25,3,0,0,57,0,0,5,238,0,0,1,61,0,0,0,12,4,0,0,41,0,0,0,4,6,64,0,57],[0,0,0,11,4,96,0,108,0,0,1,37,0,0,33,61,0,0,0,12,7,0,0,41,0,0,0,10,4,112,0,41],[0,0,0,0,4,66,3,79,0,0,0,0,8,4,4,59,0,0,0,224,7,128,2,112,0,0,1,16,148,112,0,201],[0,0,2,71,8,128,0,156,0,0,7,105,0,0,65,61,0,0,0,0,152,116,0,217,0,0,1,16,8,128,0,140],[0,0,1,157,0,0,193,61,0,0,0,0,9,100,0,25,0,9,0,0,0,9,0,29,0,0,0,11,8,144,0,108],[0,0,1,37,0,0,33,61,0,0,0,248,5,80,2,112,0,0,0,64,10,0,4,61,0,0,0,68,8,160,0,57],[0,0,0,128,9,0,0,57,0,0,0,0,0,152,4,53,0,0,0,36,8,160,0,57,0,0,0,0,0,88,4,53],[0,0,2,120,5,0,0,65,0,0,0,0,0,90,4,53,0,0,0,10,6,96,0,41,0,0,0,132,5,160,0,57],[0,0,0,0,0,69,4,53,0,0,0,4,5,160,0,57,0,0,0,0,0,117,4,53,0,0,0,0,8,98,3,79],[0,0,0,31,7,64,1,143,0,14,0,0,0,10,0,29,0,0,0,164,6,160,0,57,0,0,0,5,9,64,2,114],[0,0,7,138,0,0,97,61,0,0,0,0,10,0,0,25,0,0,0,5,11,160,2,16,0,0,0,0,12,182,0,25],[0,0,0,0,11,184,3,79,0,0,0,0,11,11,4,59,0,0,0,0,0,188,4,53,0,0,0,1,10,160,0,57],[0,0,0,0,11,154,0,75,0,0,7,130,0,0,65,61,0,0,0,10,3,48,0,41,0,0,0,0,10,7,0,75],[0,0,7,154,0,0,97,61,0,0,0,5,9,144,2,16,0,0,0,0,8,152,3,79,0,0,0,0,9,150,0,25],[0,0,0,3,7,112,2,16,0,0,0,0,10,9,4,51,0,0,0,0,10,122,1,207,0,0,0,0,10,122,2,47],[0,0,0,0,8,8,4,59,0,0,1,0,7,112,0,137,0,0,0,0,8,120,2,47,0,0,0,0,7,120,1,207],[0,0,0,0,7,167,1,159,0,0,0,0,0,121,4,53,0,0,0,0,7,70,0,25,0,0,0,0,0,7,4,53],[0,0,0,31,4,64,0,57,0,0,2,121,4,64,1,151,0,0,0,0,6,70,0,25,0,0,0,0,4,86,0,73],[0,0,0,14,5,0,0,41,0,0,0,100,5,80,0,57,0,0,0,0,0,69,4,53,0,0,0,0,4,50,3,79],[0,0,0,31,3,16,1,143,0,0,0,0,2,22,4,54,0,0,0,5,5,16,2,114,0,0,7,177,0,0,97,61],[0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16,0,0,0,0,8,114,0,25,0,0,0,0,7,116,3,79],[0,0,0,0,7,7,4,59,0,0,0,0,0,120,4,53,0,0,0,1,6,96,0,57,0,0,0,0,7,86,0,75],[0,0,7,169,0,0,65,61,0,0,0,0,6,3,0,75,0,0,7,192,0,0,97,61,0,0,0,5,5,80,2,16],[0,0,0,0,4,84,3,79,0,0,0,0,5,82,0,25,0,0,0,3,3,48,2,16,0,0,0,0,6,5,4,51],[0,0,0,0,6,54,1,207,0,0,0,0,6,54,2,47,0,0,0,0,4,4,4,59,0,0,1,0,3,48,0,137],[0,0,0,0,4,52,2,47,0,0,0,0,3,52,1,207,0,0,0,0,3,99,1,159,0,0,0,0,0,53,4,53],[0,0,0,0,3,18,0,25,0,0,0,0,0,3,4,53,0,0,0,31,1,16,0,57,0,0,2,122,1,16,1,151],[0,0,0,14,4,0,0,41,0,0,0,0,1,65,0,73,0,0,0,0,1,33,0,25,0,0,2,60,2,0,0,65],[0,0,2,60,3,64,0,156,0,0,0,0,3,2,0,25,0,0,0,0,3,4,64,25,0,0,0,64,3,48,2,16],[0,0,2,60,4,16,0,156,0,0,0,0,1,2,128,25,0,0,0,96,1,16,2,16,0,0,0,0,1,49,1,159],[0,0,0,0,3,0,4,20,0,0,2,60,4,48,0,156,0,0,0,0,3,2,128,25,0,0,0,192,2,48,2,16],[0,0,0,0,1,18,1,159,0,0,128,14,2,0,0,57,8,234,8,219,0,0,4,15,0,0,0,0,3,1,0,25],[0,0,0,96,3,48,2,112,0,0,2,60,3,48,1,151,0,0,0,32,4,48,0,140,0,0,0,0,4,3,0,25],[0,0,0,32,4,0,128,57,0,0,0,31,5,64,1,143,0,0,0,5,6,64,2,114,0,0,7,233,0,0,97,61],[0,0,0,0,7,0,0,25,0,0,0,5,8,112,2,16,0,0,0,14,9,128,0,41,0,0,0,0,8,129,3,79],[0,0,0,0,8,8,4,59,0,0,0,0,0,137,4,53,0,0,0,1,7,112,0,57,0,0,0,0,8,103,0,75],[0,0,7,225,0,0,65,61,0,0,0,0,7,5,0,75,0,0,7,248,0,0,97,61,0,0,0,5,6,96,2,16],[0,0,0,0,7,97,3,79,0,0,0,14,6,96,0,41,0,0,0,3,5,80,2,16,0,0,0,0,8,6,4,51],[0,0,0,0,8,88,1,207,0,0,0,0,8,88,2,47,0,0,0,0,7,7,4,59,0,0,1,0,5,80,0,137],[0,0,0,0,7,87,2,47,0,0,0,0,5,87,1,207,0,0,0,0,5,133,1,159,0,0,0,0,0,86,4,53],[0,0,0,1,2,32,1,144,0,0,8,30,0,0,97,61,0,0,0,31,1,64,0,57,0,0,0,96,2,16,1,143],[0,0,0,14,1,32,0,41,0,0,0,0,2,33,0,75,0,0,0,0,2,0,0,25,0,0,0,1,2,0,64,57],[0,0,2,67,4,16,0,156,0,0,1,219,0,0,33,61,0,0,0,1,2,32,1,144,0,0,1,219,0,0,193,61],[0,0,0,64,0,16,4,63,0,0,0,32,2,48,0,140,0,0,1,37,0,0,65,61,0,0,0,9,3,0,0,41],[0,0,0,11,2,48,0,108,0,0,8,59,0,0,193,61,0,0,0,14,1,0,0,41,0,0,0,0,1,1,4,51],[0,14,0,0,0,1,0,29,0,0,0,5,1,0,0,41,0,0,0,0,0,16,4,29,0,0,0,10,1,0,0,41],[0,0,0,12,2,0,0,41,8,234,8,68,0,0,4,15,0,0,0,1,2,0,0,57,0,0,0,0,0,18,4,29],[0,0,0,4,1,0,0,41,0,0,0,14,3,0,0,41,0,0,0,0,0,49,4,29,0,0,0,0,0,0,4,27],[0,0,0,0,0,2,4,27,0,0,0,0,0,1,4,27,0,0,0,13,1,0,0,41,0,0,0,0,0,1,4,27],[0,0,0,0,1,0,0,25,0,0,8,235,0,1,4,46,0,0,0,64,2,0,4,61,0,0,0,31,4,48,1,143],[0,0,0,5,5,48,2,114,0,0,8,43,0,0,97,61,0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16],[0,0,0,0,8,114,0,25,0,0,0,0,7,113,3,79,0,0,0,0,7,7,4,59,0,0,0,0,0,120,4,53],[0,0,0,1,6,96,0,57,0,0,0,0,7,86,0,75,0,0,8,35,0,0,65,61,0,0,0,0,6,4,0,75],[0,0,8,58,0,0,97,61,0,0,0,5,5,80,2,16,0,0,0,0,1,81,3,79,0,0,0,0,5,82,0,25],[0,0,0,3,4,64,2,16,0,0,0,0,6,5,4,51,0,0,0,0,6,70,1,207,0,0,0,0,6,70,2,47],[0,0,0,0,1,1,4,59,0,0,1,0,4,64,0,137,0,0,0,0,1,65,2,47,0,0,0,0,1,65,1,207],[0,0,0,0,1,97,1,159,0,0,0,0,0,21,4,53,0,0,1,67,0,0,1,61,0,0,0,100,2,16,0,57],[0,0,2,123,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,68,2,16,0,57,0,0,2,124,3,0,0,65],[0,0,0,0,0,50,4,53,0,0,0,36,2,16,0,57,0,0,0,42,3,0,0,57,0,0,3,161,0,0,1,61],[0,0,0,0,3,0,4,20,0,0,0,0,4,18,0,25,0,0,0,0,2,36,0,75,0,0,0,0,5,0,0,25],[0,0,0,1,5,0,64,57,0,0,2,60,2,16,1,151,0,0,0,1,1,80,1,144,0,0,8,157,0,0,193,61],[0,0,0,0,1,0,0,49,0,0,0,0,5,65,0,75,0,0,8,157,0,0,65,61,0,0,0,1,2,32,3,103],[0,0,2,69,5,48,0,156,0,0,8,161,0,0,129,61,0,0,0,0,1,65,0,73,0,0,2,60,1,16,1,151],[0,0,0,0,1,18,3,223,0,0,0,192,2,48,2,16,0,0,2,70,2,32,1,151,0,0,2,71,2,32,1,199],[0,0,0,0,1,33,3,175,0,0,128,16,2,0,0,57,8,234,8,229,0,0,4,15,0,0,0,0,3,1,0,25],[0,0,0,96,3,48,2,112,0,0,2,60,3,48,1,151,0,0,0,1,2,32,1,144,0,0,8,168,0,0,97,61],[0,0,0,63,2,48,0,57,0,0,2,72,4,32,1,151,0,0,0,64,2,0,4,61,0,0,0,0,4,66,0,25],[0,0,0,0,5,36,0,75,0,0,0,0,5,0,0,25,0,0,0,1,5,0,64,57,0,0,2,67,6,64,0,156],[0,0,8,195,0,0,33,61,0,0,0,1,5,80,1,144,0,0,8,195,0,0,193,61,0,0,0,64,0,64,4,63],[0,0,0,0,4,50,4,54,0,0,0,31,5,48,0,57,0,0,0,5,5,80,2,114,0,0,8,123,0,0,97,61],[0,0,0,0,6,0,0,49,0,0,0,1,6,96,3,103,0,0,0,0,7,0,0,25,0,0,0,5,8,112,2,16],[0,0,0,0,9,132,0,25,0,0,0,0,8,134,3,79,0,0,0,0,8,8,4,59,0,0,0,0,0,137,4,53],[0,0,0,1,7,112,0,57,0,0,0,0,8,87,0,75,0,0,8,115,0,0,65,61,0,0,0,0,5,0,0,75],[0,0,8,125,0,0,97,61,0,0,0,31,5,48,1,143,0,0,0,5,3,48,2,114,0,0,8,137,0,0,97,61],[0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16,0,0,0,0,8,116,0,25,0,0,0,0,7,113,3,79],[0,0,0,0,7,7,4,59,0,0,0,0,0,120,4,53,0,0,0,1,6,96,0,57,0,0,0,0,7,54,0,75],[0,0,8,129,0,0,65,61,0,0,0,0,6,5,0,75,0,0,8,152,0,0,97,61,0,0,0,5,3,48,2,16],[0,0,0,0,1,49,3,79,0,0,0,0,3,52,0,25,0,0,0,3,5,80,2,16,0,0,0,0,6,3,4,51],[0,0,0,0,6,86,1,207,0,0,0,0,6,86,2,47,0,0,0,0,1,1,4,59,0,0,1,0,5,80,0,137],[0,0,0,0,1,81,2,47,0,0,0,0,1,81,1,207,0,0,0,0,1,97,1,159,0,0,0,0,0,19,4,53],[0,0,0,0,1,2,4,51,0,0,0,32,1,16,0,140,0,0,8,201,0,0,193,61,0,0,0,0,1,4,4,51],[0,0,0,0,0,1,4,45,0,0,2,126,1,0,0,65,0,0,0,0,0,16,4,53,0,0,0,17,1,0,0,57],[0,0,8,198,0,0,1,61,0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57,0,0,2,89,3,0,0,65],[0,0,0,0,0,50,4,53,0,0,0,36,2,16,0,57,0,0,0,8,3,0,0,57,0,0,8,207,0,0,1,61],[0,0,0,31,4,48,1,143,0,0,0,5,2,48,2,114,0,0,8,179,0,0,97,61,0,0,0,0,5,0,0,25],[0,0,0,5,6,80,2,16,0,0,0,0,7,97,3,79,0,0,0,0,7,7,4,59,0,0,0,0,0,118,4,53],[0,0,0,1,5,80,0,57,0,0,0,0,6,37,0,75,0,0,8,172,0,0,65,61,0,0,0,0,5,4,0,75],[0,0,8,193,0,0,97,61,0,0,0,3,4,64,2,16,0,0,0,5,2,32,2,16,0,0,0,0,5,2,4,51],[0,0,0,0,5,69,1,207,0,0,0,0,5,69,2,47,0,0,0,0,1,33,3,79,0,0,0,0,1,1,4,59],[0,0,1,0,4,64,0,137,0,0,0,0,1,65,2,47,0,0,0,0,1,65,1,207,0,0,0,0,1,81,1,159],[0,0,0,0,0,18,4,53,0,0,0,96,1,48,2,16,0,0,8,236,0,1,4,48,0,0,2,126,1,0,0,65],[0,0,0,0,0,16,4,53,0,0,0,65,1,0,0,57,0,0,0,4,0,16,4,63,0,0,2,127,1,0,0,65],[0,0,8,236,0,1,4,48,0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57,0,0,2,99,3,0,0,65],[0,0,0,0,0,50,4,53,0,0,0,36,2,16,0,57,0,0,0,31,3,0,0,57,0,0,0,0,0,50,4,53],[0,0,2,87,2,0,0,65,0,0,0,0,0,33,4,53,0,0,0,4,2,16,0,57,0,0,0,32,3,0,0,57],[0,0,0,0,0,50,4,53,0,0,2,60,2,0,0,65,0,0,2,60,3,16,0,156,0,0,0,0,1,2,128,25],[0,0,0,64,1,16,2,16,0,0,2,88,1,16,1,199,0,0,8,236,0,1,4,48,0,0,8,222,0,33,4,33],[0,0,0,1,2,0,0,57,0,0,0,0,0,1,4,45,0,0,0,0,2,0,0,25,0,0,0,0,0,1,4,45],[0,0,8,227,0,33,4,35,0,0,0,1,2,0,0,57,0,0,0,0,0,1,4,45,0,0,0,0,2,0,0,25],[0,0,0,0,0,1,4,45,0,0,8,232,0,33,4,35,0,0,0,1,2,0,0,57,0,0,0,0,0,1,4,45],[0,0,0,0,2,0,0,25,0,0,0,0,0,1,4,45,0,0,8,234,0,0,4,50,0,0,8,235,0,1,4,46],[0,0,8,236,0,1,4,48,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],[0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,1,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,98,139,99,109],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,98,139,99,110],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,98,248,75,36],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,57,179,76,110],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,86,7,154,200],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255],[128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0],[0,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,255,255,255,224],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,159],[2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[138,200,76,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,63],[0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255],[1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,127],[2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,0,0,0,0,0,0,0,0,0,0,0,0],[39,254,140,11,73,244,149,7,185,212,254,89,104,201,244,158,223,229,201,223,39,125,67,58,7,160,113,126,222,151,99,141],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255],[58,54,228,114,145,244,32,31,175,19,127,171,8,29,146,41,91,206,45,83,190,44,108,166,139,168,44,127,170,156,226,65],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,0],[70,97,105,108,101,100,32,116,111,32,99,104,97,114,103,101,32,103,97,115,0,0,0,0,0,0,0,0,0,0,0,0],[8,195,121,160,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,0,0,0,0,0,0,0,0],[79,118,101,114,102,108,111,119,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[67,97,108,108,97,98,108,101,32,111,110,108,121,32,98,121,32,116,104,101,32,98,111,111,116,108,111,97,100,101,114,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,128,0,0,0,0,0,0,0,0],[0,0,8,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,160],[110,111,116,32,101,113,117,97,108,32,116,111,32,99,104,97,105,110,101,100,76,111,103,115,72,97,115,104,0,0,0,0],[114,101,99,111,110,115,116,114,117,99,116,101,100,67,104,97,105,110,101,100,76,111,103,115,72,97,115,104,32,105,115,32],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,132,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,7,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255],[114,171,238,69,181,158,52,74,248,166,229,32,36,28,71,68,175,242,110,212,17,244,196,176,15,138,240,154,218,218,67,186],[107,101,99,99,97,107,50,53,54,32,114,101,116,117,114,110,101,100,32,105,110,118,97,108,105,100,32,100,97,116,97,0],[72,97,115,104,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[32,105,115,32,110,111,116,32,101,113,117,97,108,32,116,111,32,99,104,97,105,110,101,100,77,101,115,115,97,103,101,115],[114,101,99,111,110,115,116,114,117,99,116,101,100,67,104,97,105,110,101,100,77,101,115,115,97,103,101,115,72,97,115,104],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,164,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[112,111,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,32,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[115,104,97,32,114,101,116,117,114,110,101,100,32,105,110,118,97,108,105,100,32,100,97,116,97,0,0,0,0,0,0,0],[0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255],[6,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[112,114,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[112,112,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[97,105,110,101,100,76,49,66,121,116,101,99,111,100,101,115,82,101,118,101,97,108,68,97,116,97,72,97,115,104,0,0],[101,118,101,97,108,68,97,116,97,72,97,115,104,32,105,115,32,110,111,116,32,101,113,117,97,108,32,116,111,32,99,104],[114,101,99,111,110,115,116,114,117,99,116,101,100,67,104,97,105,110,101,100,76,49,66,121,116,101,99,111,100,101,115,82],[255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[105,115,109,97,116,99,104,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[115,116,97,116,101,32,100,105,102,102,32,99,111,109,112,114,101,115,115,105,111,110,32,118,101,114,115,105,111,110,32,109],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,239,65],[96,6,216,181,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,255,255,255,255,224],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,255,255,224],[100,97,116,97,32,97,114,114,97,121,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[69,120,116,114,97,32,100,97,116,97,32,105,110,32,116,104,101,32,116,111,116,97,108,76,50,84,111,76,49,80,117,98],[76,49,32,77,101,115,115,101,110,103,101,114,32,112,117,98,100,97,116,97,32,105,115,32,116,111,111,32,108,111,110,103],[78,72,123,113,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,36,0,0,0,0,0,0,0,0,0,0,0,0],[84,111,111,32,109,97,110,121,32,76,50,45,62,76,49,32,108,111,103,115,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,128,0,0,0,0,0,0,0,0],[84,104,105,115,32,109,101,116,104,111,100,32,114,101,113,117,105,114,101,32,116,104,101,32,99,97,108,108,101,114,32,116],[111,32,98,101,32,115,121,115,116,101,109,32,99,111,110,116,114,97,99,116,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,132,0,0,0,128,0,0,0,0,0,0,0,0],[73,110,97,112,112,114,111,112,114,105,97,116,101,32,99,97,108,108,101,114,0,0,0,0,0,0,0,0,0,0,0,0],[2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,160,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,216],[2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,0],[72,13,60,159,114,123,94,92,18,3,212,198,31,177,133,211,127,8,230,178,220,94,155,191,152,89,27,26,122,221,245,124],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[66,161,119,40,165,254,105,218,53,173,40,68,15,131,115,148,66,216,50,91,200,159,71,53,210,245,157,216,211,14,134,167]],"0x0000000000000000000000000000000000008010":[[0,0,0,1,2,32,1,144,0,0,0,20,0,0,193,61,0,0,0,96,2,16,2,16,0,0,0,9,2,32,1,151],[0,0,0,64,3,16,2,112,0,0,0,10,4,48,1,151,0,0,0,0,2,66,1,159,0,0,0,11,3,48,1,151],[0,0,0,0,2,50,1,159,0,0,0,12,2,32,1,199,0,0,0,96,1,16,2,112,0,0,0,10,1,16,1,151],[0,0,0,136,49,16,1,26,0,0,0,40,49,16,0,201,0,0,0,40,1,16,0,57,0,0,0,0,1,18,4,32],[0,0,0,0,1,1,0,75,0,0,0,25,0,0,193,61,0,0,0,0,1,0,0,25,0,0,0,29,0,1,4,48],[0,0,0,32,1,0,0,57,0,0,1,0,0,16,4,67,0,0,1,32,0,0,4,67,0,0,0,8,1,0,0,65],[0,0,0,28,0,1,4,46,0,0,0,13,1,0,0,65,0,0,0,28,0,1,4,46,0,0,0,27,0,0,4,50],[0,0,0,28,0,1,4,46,0,0,0,29,0,1,4,48,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,1,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,0],[231,235,90,132,103,57,44,46,94,80,157,131,248,179,91,153,186,138,67,197,69,4,157,187,159,87,148,17,34,213,184,114]],"0x000000000000000000000000000000000000800f":[[0,3,0,0,0,0,0,2,0,4,0,0,0,0,0,2,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,0,0,65,3,48,1,151,0,2,0,0,0,49,3,85,0,1,0,0,0,1,3,85,0,0,0,128,8,0,0,57],[0,0,0,64,0,128,4,63,0,0,0,1,2,32,1,144,0,0,0,90,0,0,193,61,0,0,0,4,2,48,0,140],[0,0,0,98,0,0,65,61,0,0,0,0,2,1,4,59,0,0,0,67,2,32,1,151,0,0,0,68,2,32,0,156],[0,0,0,98,0,0,193,61,0,0,0,4,2,48,0,138,0,0,0,64,2,32,0,140,0,0,0,98,0,0,65,61],[0,0,0,4,2,16,3,112,0,0,0,0,9,2,4,59,0,0,0,69,2,144,0,156,0,0,0,98,0,0,33,61],[0,0,0,36,2,16,3,112,0,0,0,0,2,2,4,59,0,0,0,70,4,32,0,156,0,0,0,98,0,0,33,61],[0,0,0,35,4,32,0,57,0,0,0,71,5,0,0,65,0,0,0,0,6,52,0,75,0,0,0,0,6,0,0,25],[0,0,0,0,6,5,128,25,0,0,0,71,4,64,1,151,0,0,0,0,7,4,0,75,0,0,0,0,5,0,128,25],[0,0,0,71,4,64,0,156,0,0,0,0,5,6,192,25,0,0,0,0,4,5,0,75,0,0,0,98,0,0,193,61],[0,0,0,4,5,32,0,57,0,0,0,0,1,81,3,79,0,0,0,0,4,1,4,59,0,0,0,70,1,64,0,156],[0,0,0,98,0,0,33,61,0,0,0,0,1,66,0,25,0,0,0,36,1,16,0,57,0,0,0,0,1,49,0,75],[0,0,0,98,0,0,33,61,0,0,0,0,1,0,4,17,0,0,128,7,1,16,0,140,0,0,0,100,0,0,193,61],[0,1,0,0,0,5,0,29,0,2,0,0,0,4,0,29,0,4,0,0,0,8,0,29,0,0,0,76,1,0,0,65],[0,0,0,0,0,16,4,57,0,3,0,0,0,9,0,29,0,0,0,4,0,144,4,67,0,0,0,65,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,0,65,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,0,77,1,16,1,199,0,0,128,2,2,0,0,57,0,253,0,243,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,0,112,0,0,97,61,0,0,0,64,8,0,4,61,0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75],[0,0,0,113,0,0,193,61,0,0,0,68,1,128,0,57,0,0,0,81,3,0,0,65,0,0,0,0,0,49,4,53],[0,0,0,36,1,128,0,57,0,0,0,19,3,0,0,57,0,0,0,0,0,49,4,53,0,0,0,72,1,0,0,65],[0,0,0,0,0,24,4,53,0,0,0,4,1,128,0,57,0,0,0,32,3,0,0,57,0,0,0,0,0,49,4,53],[0,0,0,65,1,0,0,65,0,0,0,65,3,128,0,156,0,0,0,0,8,1,128,25,0,0,0,64,1,128,2,16],[0,0,0,82,1,16,1,199,0,0,0,255,0,1,4,48,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75],[0,0,0,98,0,0,193,61,0,0,0,32,1,0,0,57,0,0,1,0,0,16,4,67,0,0,1,32,0,0,4,67],[0,0,0,66,1,0,0,65,0,0,0,254,0,1,4,46,0,0,0,0,1,0,0,25,0,0,0,255,0,1,4,48],[0,0,0,72,1,0,0,65,0,0,0,128,0,16,4,63,0,0,0,32,1,0,0,57,0,0,0,132,0,16,4,63],[0,0,0,36,1,0,0,57,0,0,0,164,0,16,4,63,0,0,0,73,1,0,0,65,0,0,0,196,0,16,4,63],[0,0,0,74,1,0,0,65,0,0,0,228,0,16,4,63,0,0,0,75,1,0,0,65,0,0,0,255,0,1,4,48],[0,0,0,0,0,1,4,47,0,0,0,2,9,0,0,41,0,0,0,31,1,144,1,143,0,0,0,1,2,0,0,41],[0,0,0,32,3,32,0,57,0,0,0,1,3,48,3,103,0,0,0,5,4,144,2,114,0,0,0,129,0,0,97,61],[0,0,0,0,5,0,0,25,0,0,0,5,6,80,2,16,0,0,0,0,7,104,0,25,0,0,0,0,6,99,3,79],[0,0,0,0,6,6,4,59,0,0,0,0,0,103,4,53,0,0,0,1,5,80,0,57,0,0,0,0,6,69,0,75],[0,0,0,121,0,0,65,61,0,0,0,0,5,1,0,75,0,0,0,3,2,0,0,41,0,0,0,145,0,0,97,61],[0,0,0,5,4,64,2,16,0,0,0,0,3,67,3,79,0,0,0,0,4,72,0,25,0,0,0,3,1,16,2,16],[0,0,0,0,5,4,4,51,0,0,0,0,5,21,1,207,0,0,0,0,5,21,2,47,0,0,0,0,3,3,4,59],[0,0,1,0,1,16,0,137,0,0,0,0,3,19,2,47,0,0,0,0,1,19,1,207,0,0,0,0,1,81,1,159],[0,0,0,0,0,20,4,53,0,0,0,0,1,152,0,25,0,0,0,0,0,1,4,53,0,0,0,0,1,0,4,20],[0,0,0,4,3,32,0,140,0,0,0,153,0,0,193,61,0,0,0,0,3,0,0,49,0,0,0,0,2,0,0,25],[0,0,0,171,0,0,1,61,0,0,0,65,3,0,0,65,0,0,0,65,4,144,0,156,0,0,0,0,9,3,128,25],[0,0,0,96,4,144,2,16,0,0,0,65,5,128,0,156,0,0,0,0,8,3,128,25,0,0,0,64,5,128,2,16],[0,0,0,0,5,69,1,159,0,0,0,65,4,16,0,156,0,0,0,0,1,3,128,25,0,0,0,192,1,16,2,16],[0,0,0,0,1,81,1,159,0,253,0,248,0,0,4,15,0,0,0,1,2,32,1,95,0,2,0,0,0,1,3,85],[0,0,0,96,1,16,2,112,0,0,0,65,0,16,1,157,0,0,0,65,3,16,1,151,0,0,0,4,9,0,0,41],[0,0,0,96,1,0,0,57,0,0,0,0,4,3,0,75,0,0,0,187,0,0,193,61,0,0,0,1,2,32,1,144],[0,0,0,240,0,0,97,61,0,0,0,0,1,1,4,51,0,0,0,65,2,0,0,65,0,0,0,65,3,16,0,156],[0,0,0,0,1,2,128,25,0,0,0,65,3,144,0,156,0,0,0,0,9,2,128,25,0,0,0,64,2,144,2,16],[0,0,0,96,1,16,2,16,0,0,0,0,1,33,1,159,0,0,0,255,0,1,4,48,0,0,0,78,1,48,0,156],[0,0,0,234,0,0,129,61,0,0,0,31,1,48,0,57,0,0,0,32,4,0,0,138,0,0,0,0,1,65,1,111],[0,0,0,63,1,16,0,57,0,0,0,0,4,65,1,111,0,0,0,64,1,0,4,61,0,0,0,0,4,65,0,25],[0,0,0,0,5,20,0,75,0,0,0,0,5,0,0,25,0,0,0,1,5,0,64,57,0,0,0,70,6,64,0,156],[0,0,0,234,0,0,33,61,0,0,0,1,5,80,1,144,0,0,0,234,0,0,193,61,0,0,0,64,0,64,4,63],[0,0,0,31,4,48,1,143,0,0,0,0,9,49,4,54,0,0,0,2,5,0,3,103,0,0,0,5,3,48,2,114],[0,0,0,218,0,0,97,61,0,0,0,0,6,0,0,25,0,0,0,5,7,96,2,16,0,0,0,0,8,121,0,25],[0,0,0,0,7,117,3,79,0,0,0,0,7,7,4,59,0,0,0,0,0,120,4,53,0,0,0,1,6,96,0,57],[0,0,0,0,7,54,0,75,0,0,0,210,0,0,65,61,0,0,0,0,6,4,0,75,0,0,0,175,0,0,97,61],[0,0,0,5,3,48,2,16,0,0,0,0,5,53,3,79,0,0,0,0,3,57,0,25,0,0,0,3,4,64,2,16],[0,0,0,0,6,3,4,51,0,0,0,0,6,70,1,207,0,0,0,0,6,70,2,47,0,0,0,0,5,5,4,59],[0,0,1,0,4,64,0,137,0,0,0,0,5,69,2,47,0,0,0,0,4,69,1,207,0,0,0,0,4,100,1,159],[0,0,0,0,0,67,4,53,0,0,0,175,0,0,1,61,0,0,0,79,1,0,0,65,0,0,0,0,0,16,4,53],[0,0,0,65,1,0,0,57,0,0,0,4,0,16,4,63,0,0,0,80,1,0,0,65,0,0,0,255,0,1,4,48],[0,0,0,0,1,0,0,25,0,0,0,254,0,1,4,46,0,0,0,0,0,1,4,47,0,0,0,246,0,33,4,35],[0,0,0,1,2,0,0,57,0,0,0,0,0,1,4,45,0,0,0,0,2,0,0,25,0,0,0,0,0,1,4,45],[0,0,0,251,0,33,4,37,0,0,0,1,2,0,0,57,0,0,0,0,0,1,4,45,0,0,0,0,2,0,0,25],[0,0,0,0,0,1,4,45,0,0,0,253,0,0,4,50,0,0,0,254,0,1,4,46,0,0,0,255,0,1,4,48],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],[0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,1,0,0,0,0,0,0,0,0,0],[255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[201,135,51,108,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255],[128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[8,195,121,160,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[67,97,110,32,111,110,108,121,32,98,101,32,99,97,108,108,101,100,32,98,121,32,70,79,82,67,69,95,68,69,80,76],[79,89,69,82,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,132,0,0,0,128,0,0,0,0,0,0,0,0],[24,6,170,24,150,187,242,101,104,232,132,167,55,75,65,224,2,80,9,98,202,186,106,21,2,58,141,144,232,80,139,131],[2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,36,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0],[78,72,123,113,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,36,0,0,0,0,0,0,0,0,0,0,0,0],[68,101,108,101,103,97,116,101,101,32,105,115,32,97,110,32,69,79,65,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[94,172,127,106,21,129,232,232,50,239,172,10,104,228,35,38,191,75,43,199,44,72,89,61,240,13,144,112,197,100,2,171]],"0x0000000000000000000000000000000000008003":[[0,1,0,0,0,0,0,2,0,5,0,0,0,0,0,2,0,0,0,0,6,1,3,79,0,0,0,0,0,6,3,85],[0,0,0,128,1,0,0,57,0,0,0,64,0,16,4,63,0,0,0,0,1,6,0,25,0,0,0,96,1,16,2,112],[0,0,0,187,1,16,1,151,0,0,0,1,3,32,1,144,0,0,0,38,0,0,193,61,0,0,0,4,3,16,0,140],[0,0,2,107,0,0,65,61,0,0,0,0,3,6,4,59,0,0,0,224,3,48,2,112,0,0,0,189,4,48,0,156],[0,0,0,46,0,0,33,61,0,0,0,196,4,48,0,156,0,0,0,71,0,0,161,61,0,0,0,197,4,48,0,156],[0,0,1,0,0,0,97,61,0,0,0,198,2,48,0,156,0,0,1,25,0,0,97,61,0,0,0,199,2,48,0,156],[0,0,2,107,0,0,193,61,0,0,0,0,2,0,4,22,0,0,0,0,2,2,0,75,0,0,2,107,0,0,193,61],[0,0,0,4,1,16,0,138,0,0,0,32,1,16,0,140,0,0,2,107,0,0,65,61,0,0,0,4,1,96,3,112],[0,0,0,0,1,1,4,59,0,0,0,202,2,16,0,156,0,0,2,107,0,0,33,61,0,0,0,0,0,16,4,53],[0,0,0,32,0,0,4,63,0,0,1,43,0,0,1,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75],[0,0,2,107,0,0,193,61,0,0,0,32,1,0,0,57,0,0,1,0,0,16,4,67,0,0,1,32,0,0,4,67],[0,0,0,188,1,0,0,65,0,0,2,231,0,1,4,46,0,0,0,190,4,48,0,156,0,0,0,99,0,0,161,61],[0,0,0,191,4,48,0,156,0,0,1,49,0,0,97,61,0,0,0,192,4,48,0,156,0,0,1,66,0,0,97,61],[0,0,0,193,2,48,0,156,0,0,2,107,0,0,193,61,0,0,0,0,2,0,4,22,0,0,0,0,2,2,0,75],[0,0,2,107,0,0,193,61,0,0,0,4,1,16,0,138,0,0,0,32,1,16,0,140,0,0,2,107,0,0,65,61],[0,0,0,4,1,96,3,112,0,0,0,0,1,1,4,59,0,0,0,202,2,16,0,156,0,0,2,107,0,0,33,61],[0,0,0,0,0,16,4,53,0,0,0,32,0,0,4,63,0,0,0,0,1,0,0,25,2,230,2,202,0,0,4,15],[0,0,0,0,1,1,4,26,0,0,0,128,1,16,2,112,0,0,1,46,0,0,1,61,0,0,0,200,4,48,0,156],[0,0,0,115,0,0,97,61,0,0,0,201,2,48,0,156,0,0,2,107,0,0,193,61,0,0,0,0,2,0,4,22],[0,0,0,0,2,2,0,75,0,0,2,107,0,0,193,61,0,0,0,4,1,16,0,138,0,0,0,32,1,16,0,140],[0,0,2,107,0,0,65,61,0,0,0,4,1,96,3,112,0,0,0,0,1,1,4,59,0,0,0,202,2,16,0,156],[0,0,2,107,0,0,33,61,0,0,0,0,2,0,4,17,0,0,128,6,2,32,0,140,0,0,1,178,0,0,193,61],[0,5,0,0,0,1,0,29,2,230,2,109,0,0,4,15,0,0,0,0,1,1,4,26,0,4,0,0,0,1,0,29],[0,0,0,5,1,0,0,41,2,230,2,109,0,0,4,15,0,0,0,4,3,0,0,41,0,0,0,218,2,48,0,65],[0,0,0,0,0,33,4,27,0,0,0,128,1,48,2,112,0,0,1,135,0,0,1,61,0,0,0,194,2,48,0,156],[0,0,0,207,0,0,97,61,0,0,0,195,2,48,0,156,0,0,2,107,0,0,193,61,0,0,0,0,2,0,4,22],[0,0,0,0,2,2,0,75,0,0,2,107,0,0,193,61,0,0,0,4,1,16,0,138,0,0,0,32,1,16,0,140],[0,0,2,107,0,0,65,61,0,0,0,4,1,96,3,112,0,0,0,0,1,1,4,59,0,0,0,202,2,16,0,156],[0,0,2,107,0,0,33,61,2,230,2,125,0,0,4,15,0,0,1,135,0,0,1,61,0,0,0,0,3,0,4,22],[0,0,0,0,3,3,0,75,0,0,2,107,0,0,193,61,0,0,0,4,1,16,0,138,0,0,0,64,1,16,0,140],[0,0,2,107,0,0,65,61,0,0,0,0,3,0,4,17,0,0,0,36,1,96,3,112,0,0,0,0,5,1,4,59],[0,0,0,4,1,96,3,112,0,0,0,0,4,1,4,59,0,0,0,2,1,32,1,144,0,0,0,130,0,0,193,61],[0,0,0,219,1,48,0,156,0,0,1,77,0,0,129,61,0,5,0,0,0,5,0,29,0,4,0,0,0,4,0,29],[0,0,0,220,1,0,0,65,0,0,0,128,0,16,4,63,0,3,0,0,0,3,0,29,0,0,0,202,1,48,1,151],[0,2,0,0,0,1,0,29,0,0,0,132,0,16,4,63,0,0,0,187,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,0,187,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,0,221,1,16,1,199],[0,0,128,6,2,0,0,57,2,230,2,225,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,0,0,187,3,48,1,151,0,0,0,64,4,48,0,140,0,0,0,0,4,3,0,25,0,0,0,64,4,0,128,57],[0,0,0,31,5,64,1,143,0,0,0,5,6,64,2,114,0,0,0,164,0,0,97,61,0,0,0,0,7,0,0,25],[0,0,0,5,8,112,2,16,0,0,0,0,9,129,3,79,0,0,0,0,9,9,4,59,0,0,0,128,8,128,0,57],[0,0,0,0,0,152,4,53,0,0,0,1,7,112,0,57,0,0,0,0,8,103,0,75,0,0,0,156,0,0,65,61],[0,0,0,0,7,5,0,75,0,0,0,179,0,0,97,61,0,0,0,5,6,96,2,16,0,0,0,0,7,97,3,79],[0,0,0,3,5,80,2,16,0,0,0,128,6,96,0,57,0,0,0,0,8,6,4,51,0,0,0,0,8,88,1,207],[0,0,0,0,8,88,2,47,0,0,0,0,7,7,4,59,0,0,1,0,5,80,0,137,0,0,0,0,7,87,2,47],[0,0,0,0,5,87,1,207,0,0,0,0,5,133,1,159,0,0,0,0,0,86,4,53,0,0,0,1,2,32,1,144],[0,0,1,143,0,0,97,61,0,0,0,31,1,64,0,57,0,0,0,224,1,16,1,143,0,0,0,128,2,16,0,57],[0,0,0,64,0,32,4,63,0,0,0,64,3,48,0,140,0,0,2,107,0,0,65,61,0,0,0,192,3,16,0,57],[0,0,0,64,0,48,4,63,0,0,0,128,3,0,4,61,0,0,0,1,4,48,0,140,0,0,2,107,0,0,33,61],[0,0,0,0,0,50,4,53,0,0,0,160,2,0,4,61,0,0,0,1,3,32,0,140,0,0,2,107,0,0,33,61],[0,0,0,160,1,16,0,57,0,0,0,0,0,33,4,53,0,0,0,5,1,0,0,107,0,0,1,245,0,0,193,61],[0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57,0,0,0,225,3,0,0,65,0,0,0,0,0,50,4,53],[0,0,0,36,2,16,0,57,0,0,0,30,3,0,0,57,0,0,1,194,0,0,1,61,0,0,0,0,2,0,4,22],[0,0,0,0,2,2,0,75,0,0,2,107,0,0,193,61,0,0,0,4,1,16,0,138,0,0,0,96,1,16,0,140],[0,0,2,107,0,0,65,61,0,0,0,4,1,96,3,112,0,0,0,0,3,1,4,59,0,0,0,202,1,48,0,156],[0,0,2,107,0,0,33,61,0,0,0,68,1,96,3,112,0,0,0,0,2,1,4,59,0,0,0,0,1,2,0,75],[0,0,0,0,1,0,0,25,0,0,0,1,1,0,192,57,0,5,0,0,0,2,0,29,0,0,0,0,1,18,0,75],[0,0,2,107,0,0,193,61,0,0,0,36,1,96,3,112,0,0,0,0,1,1,4,59,0,3,0,0,0,1,0,29],[0,0,0,0,0,48,4,53,0,0,0,32,0,0,4,63,0,0,0,187,1,0,0,65,0,0,0,0,2,0,4,20],[0,4,0,0,0,3,0,29,0,0,0,187,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,0,204,1,16,1,199,0,0,128,16,2,0,0,57,2,230,2,225,0,0,4,15,0,0,0,4,3,0,0,41],[0,0,0,1,2,32,1,144,0,0,2,107,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,0,1,1,4,26],[0,0,0,205,1,16,1,151,0,0,0,3,1,16,0,108,0,0,1,206,0,0,161,61,0,0,0,5,1,0,0,107],[0,0,2,63,0,0,193,61,0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57,0,0,0,211,3,0,0,65],[0,0,0,0,0,50,4,53,0,0,0,36,2,16,0,57,0,0,0,28,3,0,0,57,0,0,1,194,0,0,1,61],[0,0,0,0,3,0,4,22,0,0,0,0,3,3,0,75,0,0,2,107,0,0,193,61,0,0,0,4,1,16,0,138],[0,0,0,32,1,16,0,140,0,0,2,107,0,0,65,61,0,0,0,4,1,96,3,112,0,0,0,0,3,1,4,59],[0,0,0,2,1,32,1,144,0,0,1,13,0,0,193,61,0,0,0,0,1,0,4,17,0,0,255,255,1,16,0,140],[0,0,1,77,0,0,33,61,0,0,0,212,1,48,0,156,0,0,1,120,0,0,65,61,0,0,0,207,1,0,0,65],[0,0,0,128,0,16,4,63,0,0,0,32,1,0,0,57,0,0,0,132,0,16,4,63,0,0,0,48,1,0,0,57],[0,0,0,164,0,16,4,63,0,0,0,213,1,0,0,65,0,0,0,196,0,16,4,63,0,0,0,214,1,0,0,65],[0,0,1,86,0,0,1,61,0,0,0,0,2,0,4,22,0,0,0,0,2,2,0,75,0,0,2,107,0,0,193,61],[0,0,0,4,1,16,0,138,0,0,0,32,1,16,0,140,0,0,2,107,0,0,65,61,0,0,0,0,1,0,4,17],[0,0,0,0,0,16,4,53,0,0,0,1,1,0,0,57,0,0,0,32,0,16,4,63,0,0,0,0,1,0,0,25],[0,5,0,0,0,6,3,83,2,230,2,202,0,0,4,15,0,0,0,5,2,0,3,95,0,0,0,4,2,32,3,112],[0,0,0,0,2,2,4,59,0,0,0,0,0,32,4,53,0,0,0,32,0,16,4,63,0,0,0,0,1,0,0,25],[2,230,2,202,0,0,4,15,0,0,0,0,1,1,4,26,0,0,0,128,0,16,4,63,0,0,0,203,1,0,0,65],[0,0,2,231,0,1,4,46,0,0,0,0,2,0,4,22,0,0,0,0,2,2,0,75,0,0,2,107,0,0,193,61],[0,0,0,4,1,16,0,138,0,0,0,64,1,16,0,140,0,0,2,107,0,0,65,61,0,0,0,4,1,96,3,112],[0,0,0,0,1,1,4,59,0,0,0,202,2,16,0,156,0,0,2,107,0,0,33,61,0,0,0,36,2,96,3,112],[0,0,0,0,2,2,4,59,2,230,2,144,0,0,4,15,0,0,0,0,1,1,0,75,0,0,0,0,1,0,0,25],[0,0,0,1,1,0,192,57,0,0,1,135,0,0,1,61,0,0,0,0,3,0,4,22,0,0,0,0,3,3,0,75],[0,0,2,107,0,0,193,61,0,0,0,4,1,16,0,138,0,0,0,32,1,16,0,140,0,0,2,107,0,0,65,61],[0,0,0,0,3,0,4,17,0,0,0,2,1,32,1,144,0,0,1,89,0,0,193,61,0,0,255,255,1,48,0,140],[0,0,1,89,0,0,161,61,0,0,0,207,1,0,0,65,0,0,0,128,0,16,4,63,0,0,0,32,1,0,0,57],[0,0,0,132,0,16,4,63,0,0,0,36,1,0,0,57,0,0,0,164,0,16,4,63,0,0,0,226,1,0,0,65],[0,0,0,196,0,16,4,63,0,0,0,227,1,0,0,65,0,0,0,228,0,16,4,63,0,0,0,215,1,0,0,65],[0,0,2,232,0,1,4,48,0,5,0,0,0,3,0,29,0,0,0,0,0,48,4,53,0,0,0,32,0,0,4,63],[0,0,0,187,1,0,0,65,0,0,0,0,2,0,4,20,0,0,0,187,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,192,1,32,2,16,0,0,0,204,1,16,1,199,0,0,128,16,2,0,0,57,2,230,2,225,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,2,107,0,0,97,61,0,0,0,4,2,0,0,57,0,0,0,0,2,32,3,103],[0,0,0,0,2,2,4,59,0,0,0,0,1,1,4,59,0,0,0,0,1,1,4,26,0,0,0,205,3,16,1,151],[0,0,0,0,2,35,0,75,0,0,1,188,0,0,193,61,0,0,0,5,2,0,0,41,0,0,0,0,0,32,4,53],[0,0,0,32,0,0,4,63,0,5,0,1,0,16,0,61,0,0,0,0,1,0,0,25,2,230,2,202,0,0,4,15],[0,0,0,5,2,0,0,41,0,0,0,0,0,33,4,27,0,0,0,0,1,0,0,25,0,0,2,231,0,1,4,46],[0,0,0,0,1,0,4,17,0,4,0,0,0,1,0,29,0,0,0,0,0,16,4,53,0,0,0,32,0,0,4,63],[0,0,0,0,1,0,0,25,0,5,0,0,0,3,0,29,2,230,2,202,0,0,4,15,0,0,0,0,1,1,4,26],[0,3,0,0,0,1,0,29,0,0,0,4,1,0,0,41,2,230,2,109,0,0,4,15,0,0,0,3,3,0,0,41],[0,0,0,5,2,48,0,41,0,0,0,0,0,33,4,27,0,0,0,205,1,48,1,151,0,0,0,64,2,0,4,61],[0,0,0,0,0,18,4,53,0,0,0,187,1,0,0,65,0,0,0,187,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,64,1,32,2,16,0,0,0,209,1,16,1,199,0,0,2,231,0,1,4,46,0,0,0,64,2,0,4,61],[0,0,0,31,4,48,1,143,0,0,0,5,5,48,2,114,0,0,1,156,0,0,97,61,0,0,0,0,6,0,0,25],[0,0,0,5,7,96,2,16,0,0,0,0,8,114,0,25,0,0,0,0,7,113,3,79,0,0,0,0,7,7,4,59],[0,0,0,0,0,120,4,53,0,0,0,1,6,96,0,57,0,0,0,0,7,86,0,75,0,0,1,148,0,0,65,61],[0,0,0,0,6,4,0,75,0,0,1,171,0,0,97,61,0,0,0,5,5,80,2,16,0,0,0,0,1,81,3,79],[0,0,0,0,5,82,0,25,0,0,0,3,4,64,2,16,0,0,0,0,6,5,4,51,0,0,0,0,6,70,1,207],[0,0,0,0,6,70,2,47,0,0,0,0,1,1,4,59,0,0,1,0,4,64,0,137,0,0,0,0,1,65,2,47],[0,0,0,0,1,65,1,207,0,0,0,0,1,97,1,159,0,0,0,0,0,21,4,53,0,0,0,187,1,0,0,65],[0,0,0,187,4,32,0,156,0,0,0,0,2,1,128,25,0,0,0,64,1,32,2,16,0,0,0,96,2,48,2,16],[0,0,0,0,1,33,1,159,0,0,2,232,0,1,4,48,0,0,0,207,1,0,0,65,0,0,0,128,0,16,4,63],[0,0,0,32,1,0,0,57,0,0,0,132,0,16,4,63,0,0,0,61,1,0,0,57,0,0,0,164,0,16,4,63],[0,0,0,216,1,0,0,65,0,0,0,196,0,16,4,63,0,0,0,217,1,0,0,65,0,0,1,86,0,0,1,61],[0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57,0,0,0,206,3,0,0,65,0,0,0,0,0,50,4,53],[0,0,0,36,2,16,0,57,0,0,0,15,3,0,0,57,0,0,0,0,0,50,4,53,0,0,0,207,2,0,0,65],[0,0,0,0,0,33,4,53,0,0,0,4,2,16,0,57,0,0,0,32,3,0,0,57,0,0,0,0,0,50,4,53],[0,0,0,187,2,0,0,65,0,0,0,187,3,16,0,156,0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16],[0,0,0,208,1,16,1,199,0,0,2,232,0,1,4,48,0,0,0,0,0,48,4,53,0,0,0,1,1,0,0,57],[0,0,0,32,0,16,4,63,0,0,0,187,3,0,0,65,0,0,0,0,1,0,4,20,0,0,0,187,2,16,0,156],[0,0,0,0,1,3,128,25,0,0,0,192,1,16,2,16,0,0,0,204,1,16,1,199,0,0,128,16,2,0,0,57],[2,230,2,225,0,0,4,15,0,0,0,1,2,32,1,144,0,0,2,107,0,0,97,61,0,0,0,0,1,1,4,59],[0,0,0,3,2,0,0,41,0,0,0,0,0,32,4,53,0,0,0,32,0,16,4,63,0,0,0,0,1,0,4,20],[0,0,0,187,2,16,0,156,0,0,0,187,1,0,128,65,0,0,0,192,1,16,2,16,0,0,0,204,1,16,1,199],[0,0,128,16,2,0,0,57,2,230,2,225,0,0,4,15,0,0,0,1,2,32,1,144,0,0,2,107,0,0,97,61],[0,0,0,0,1,1,4,59,0,0,0,0,1,1,4,26,0,0,0,0,1,1,0,75,0,0,0,247,0,0,193,61],[0,0,0,5,1,0,0,107,0,0,2,63,0,0,97,61,0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57],[0,0,0,210,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,36,2,16,0,57,0,0,0,29,3,0,0,57],[0,0,1,194,0,0,1,61,0,0,0,0,1,2,0,75,0,0,2,13,0,0,193,61,0,0,0,4,1,0,0,107],[0,0,2,13,0,0,97,61,0,0,0,2,1,0,0,41,0,0,0,0,0,16,4,53,0,0,0,32,0,0,4,63],[0,0,0,187,1,0,0,65,0,0,0,0,2,0,4,20,0,0,0,187,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,192,1,32,2,16,0,0,0,204,1,16,1,199,0,0,128,16,2,0,0,57,2,230,2,225,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,2,107,0,0,97,61,0,0,0,4,2,0,0,41,0,1,0,1,0,32,0,146],[0,0,0,0,1,1,4,59,0,0,0,0,1,1,4,26,0,0,0,205,1,16,1,151,0,0,0,1,1,16,0,108],[0,0,2,65,0,0,161,61,0,0,0,3,1,0,0,41,0,0,0,0,0,16,4,53,0,0,0,1,1,0,0,57],[0,0,0,32,0,16,4,63,0,0,0,187,3,0,0,65,0,0,0,0,1,0,4,20,0,0,0,187,2,16,0,156],[0,0,0,0,1,3,128,25,0,0,0,192,1,16,2,16,0,0,0,204,1,16,1,199,0,0,128,16,2,0,0,57],[2,230,2,225,0,0,4,15,0,0,0,1,2,32,1,144,0,0,2,107,0,0,97,61,0,0,0,0,1,1,4,59],[0,0,0,4,2,0,0,41,0,0,0,0,0,32,4,53,0,0,0,32,0,16,4,63,0,0,0,0,1,0,4,20],[0,0,0,187,2,16,0,156,0,0,0,187,1,0,128,65,0,0,0,192,1,16,2,16,0,0,0,204,1,16,1,199],[0,0,128,16,2,0,0,57,2,230,2,225,0,0,4,15,0,0,0,1,2,32,1,144,0,0,2,107,0,0,97,61],[0,0,0,0,1,1,4,59,0,0,0,5,2,0,0,41,0,0,0,0,0,33,4,27,0,0,0,64,1,0,4,61],[0,0,0,0,0,33,4,53,0,0,0,187,2,0,0,65,0,0,0,0,3,0,4,20,0,0,0,187,4,48,0,156],[0,0,0,0,3,2,128,25,0,0,0,187,4,16,0,156,0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16],[0,0,0,192,2,48,2,16,0,0,0,0,1,18,1,159,0,0,0,223,1,16,1,199,0,0,128,13,2,0,0,57],[0,0,0,3,3,0,0,57,0,0,0,224,4,0,0,65,0,0,0,3,5,0,0,41,0,0,0,4,6,0,0,41],[2,230,2,220,0,0,4,15,0,0,0,1,1,32,1,144,0,0,2,107,0,0,97,61,0,0,0,0,1,0,0,25],[0,0,2,231,0,1,4,46,0,0,0,2,1,0,0,41,0,0,0,0,0,16,4,53,0,0,0,1,1,0,0,57],[0,0,0,32,0,16,4,63,0,0,0,187,3,0,0,65,0,0,0,0,1,0,4,20,0,0,0,187,2,16,0,156],[0,0,0,0,1,3,128,25,0,0,0,192,1,16,2,16,0,0,0,204,1,16,1,199,0,0,128,16,2,0,0,57],[2,230,2,225,0,0,4,15,0,0,0,1,2,32,1,144,0,0,2,107,0,0,97,61,0,0,0,0,1,1,4,59],[0,0,0,1,2,0,0,41,0,0,0,0,0,32,4,53,0,0,0,32,0,16,4,63,0,0,0,0,1,0,4,20],[0,0,0,187,2,16,0,156,0,0,0,187,1,0,128,65,0,0,0,192,1,16,2,16,0,0,0,204,1,16,1,199],[0,0,128,16,2,0,0,57,2,230,2,225,0,0,4,15,0,0,0,1,2,32,1,144,0,0,2,107,0,0,97,61],[0,0,0,0,1,1,4,59,0,0,0,0,1,1,4,26,0,0,0,0,1,1,0,75,0,0,2,13,0,0,193,61],[0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57,0,0,0,222,3,0,0,65,0,0,0,0,0,50,4,53],[0,0,0,207,2,0,0,65,0,0,0,0,0,33,4,53,0,0,0,36,2,16,0,57,0,0,0,32,3,0,0,57],[0,0,0,0,0,50,4,53,0,0,0,4,2,16,0,57,0,0,1,199,0,0,1,61,0,0,0,0,1,0,0,25],[0,0,2,232,0,1,4,48,0,0,0,0,0,16,4,53,0,0,0,32,0,0,4,63,0,0,0,187,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,0,187,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,0,204,1,16,1,199,0,0,128,16,2,0,0,57,2,230,2,225,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,2,123,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,0,0,1,4,45,0,0,0,0,1,0,0,25],[0,0,2,232,0,1,4,48,0,0,0,202,1,16,1,151,0,0,0,0,0,16,4,53,0,0,0,32,0,0,4,63],[0,0,0,187,1,0,0,65,0,0,0,0,2,0,4,20,0,0,0,187,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,192,1,32,2,16,0,0,0,204,1,16,1,199,0,0,128,16,2,0,0,57,2,230,2,225,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,2,142,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,0,1,1,4,26],[0,0,0,205,1,16,1,151,0,0,0,0,0,1,4,45,0,0,0,0,1,0,0,25,0,0,2,232,0,1,4,48],[0,2,0,0,0,0,0,2,0,2,0,0,0,2,0,29,0,0,0,202,1,16,1,151,0,1,0,0,0,1,0,29],[0,0,0,0,0,16,4,53,0,0,0,32,0,0,4,63,0,0,0,187,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,0,187,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,0,204,1,16,1,199],[0,0,128,16,2,0,0,57,2,230,2,225,0,0,4,15,0,0,0,1,2,32,1,144,0,0,2,200,0,0,97,61],[0,0,0,1,2,0,0,57,0,0,0,0,1,1,4,59,0,0,0,0,1,1,4,26,0,0,0,205,1,16,1,151],[0,0,0,2,1,16,0,108,0,0,2,198,0,0,33,61,0,0,0,1,1,0,0,41,0,0,0,0,0,16,4,53],[0,0,0,1,1,0,0,57,0,0,0,32,0,16,4,63,0,0,0,187,4,0,0,65,0,0,0,0,1,0,4,20],[0,0,0,187,2,16,0,156,0,0,0,0,1,4,128,25,0,0,0,192,1,16,2,16,0,0,0,204,1,16,1,199],[0,0,128,16,2,0,0,57,2,230,2,225,0,0,4,15,0,0,0,1,2,32,1,144,0,0,2,200,0,0,97,61],[0,0,0,0,1,1,4,59,0,0,0,2,2,0,0,41,0,0,0,0,0,32,4,53,0,0,0,32,0,16,4,63],[0,0,0,0,1,0,4,20,0,0,0,187,2,16,0,156,0,0,0,187,1,0,128,65,0,0,0,192,1,16,2,16],[0,0,0,204,1,16,1,199,0,0,128,16,2,0,0,57,2,230,2,225,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,2,200,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,0,1,1,4,26,0,0,0,0,1,1,0,75],[0,0,0,0,2,0,0,25,0,0,0,1,2,0,192,57,0,0,0,1,1,32,1,143,0,0,0,0,0,1,4,45],[0,0,0,0,1,0,0,25,0,0,2,232,0,1,4,48,0,0,0,187,2,0,0,65,0,0,0,187,3,16,0,156],[0,0,0,0,1,2,128,25,0,0,0,0,3,0,4,20,0,0,0,187,4,48,0,156,0,0,0,0,3,2,128,25],[0,0,0,192,2,48,2,16,0,0,0,64,1,16,2,16,0,0,0,0,1,33,1,159,0,0,0,204,1,16,1,199],[0,0,128,16,2,0,0,57,2,230,2,225,0,0,4,15,0,0,0,1,2,32,1,144,0,0,2,218,0,0,97,61],[0,0,0,0,1,1,4,59,0,0,0,0,0,1,4,45,0,0,0,0,1,0,0,25,0,0,2,232,0,1,4,48],[0,0,2,223,0,33,4,33,0,0,0,1,2,0,0,57,0,0,0,0,0,1,4,45,0,0,0,0,2,0,0,25],[0,0,0,0,0,1,4,45,0,0,2,228,0,33,4,35,0,0,0,1,2,0,0,57,0,0,0,0,0,1,4,45],[0,0,0,0,2,0,0,25,0,0,0,0,0,1,4,45,0,0,2,230,0,0,4,50,0,0,2,231,0,1,4,46],[0,0,2,232,0,1,4,48,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],[0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,1,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,110,225,220,31],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,202,183,232,234],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,202,183,232,235],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,225,35,156,216],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,251,26,154,87],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,110,225,220,32],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,137,105,9,220],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,56,167,128,145],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,56,167,128,146],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,85,211,93,24],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,90,169,182,181],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,21,95,210,122],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,48,99,149,198],[0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,0,0,0,128,0,0,0,0,0,0,0,0],[2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255],[73,110,99,111,114,114,101,99,116,32,110,111,110,99,101,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[8,195,121,160,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,0],[84,104,101,32,110,111,110,99,101,32,119,97,115,32,110,111,116,32,115,101,116,32,97,115,32,117,115,101,100,0,0,0],[82,101,117,115,105,110,103,32,116,104,101,32,115,97,109,101,32,110,111,110,99,101,32,116,119,105,99,101,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1],[84,104,101,32,118,97,108,117,101,32,102,111,114,32,105,110,99,114,101,109,101,110,116,105,110,103,32,116,104,101,32,110],[111,110,99,101,32,105,115,32,116,111,111,32,104,105,103,104,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,132,0,0,0,128,0,0,0,0,0,0,0,0],[79,110,108,121,32,116,104,101,32,99,111,110,116,114,97,99,116,32,100,101,112,108,111,121,101,114,32,99,97,110,32,105],[110,99,114,101,109,101,110,116,32,116,104,101,32,100,101,112,108,111,121,109,101,110,116,32,110,111,110,99,101,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0],[123,81,15,232,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,36,0,0,0,128,0,0,0,0,0,0,0,0],[80,114,101,118,105,111,117,115,32,110,111,110,99,101,32,104,97,115,32,110,111,116,32,98,101,101,110,32,117,115,101,100],[2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,0],[218,43,113,110,90,93,95,96,43,154,88,66,188,216,156,33,91,18,82,88,223,234,39,26,3,229,224,232,1,217,58,140],[78,111,110,99,101,32,118,97,108,117,101,32,99,97,110,110,111,116,32,98,101,32,115,101,116,32,116,111,32,48,0,0],[84,104,105,115,32,109,101,116,104,111,100,32,114,101,113,117,105,114,101,32,115,121,115,116,101,109,32,99,97,108,108,32],[102,108,97,103,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[205,38,218,213,70,69,248,169,15,229,84,69,140,55,53,181,164,198,188,161,173,181,140,218,24,152,223,38,173,188,41,218]]}}
\ No newline at end of file
diff --git a/prover/vk_setup_data_generator_server_fri/src/utils.rs b/prover/vk_setup_data_generator_server_fri/src/utils.rs
index 62b25e5d8bee..ee23e171d551 100644
--- a/prover/vk_setup_data_generator_server_fri/src/utils.rs
+++ b/prover/vk_setup_data_generator_server_fri/src/utils.rs
@@ -4,6 +4,7 @@ use std::{
};
use anyhow::Context as _;
+use circuit_definitions::circuit_definitions::recursion_layer::scheduler::SchedulerCircuit;
use itertools::Itertools;
use zkevm_test_harness::{
compute_setups::{generate_base_layer_vks_and_proofs, generate_recursive_layer_vks_and_proofs},
@@ -38,9 +39,8 @@ use zksync_prover_fri_types::circuit_definitions::{
recursion_layer::{
base_circuit_type_into_recursive_leaf_circuit_type,
leaf_layer::ZkSyncLeafLayerRecursiveCircuit,
- node_layer::ZkSyncNodeLayerRecursiveCircuit, scheduler::SchedulerCircuit,
- ZkSyncRecursionLayerStorageType, ZkSyncRecursionProof, ZkSyncRecursiveLayerCircuit,
- RECURSION_ARITY, SCHEDULER_CAPACITY,
+ node_layer::ZkSyncNodeLayerRecursiveCircuit, ZkSyncRecursionLayerStorageType,
+ ZkSyncRecursionProof, ZkSyncRecursiveLayerCircuit, RECURSION_ARITY, SCHEDULER_CAPACITY,
},
},
recursion_layer_proof_config, zk_evm,
@@ -193,6 +193,9 @@ pub fn get_scheduler_circuit() -> anyhow::Result {
witness: scheduler_witness,
config,
transcript_params: (),
+ eip4844_proof_config: None,
+ eip4844_vk: None,
+ eip4844_vk_fixed_parameters: None,
_marker: std::marker::PhantomData,
};
Ok(ZkSyncRecursiveLayerCircuit::SchedulerCircuit(
diff --git a/prover/witness_generator/Cargo.toml b/prover/witness_generator/Cargo.toml
index 153bac7fa296..b3235744af47 100644
--- a/prover/witness_generator/Cargo.toml
+++ b/prover/witness_generator/Cargo.toml
@@ -29,11 +29,11 @@ vk_setup_data_generator_server_fri = { path = "../vk_setup_data_generator_server
zksync_prover_fri_types = { path = "../prover_fri_types" }
zksync_prover_fri_utils = { path = "../prover_fri_utils" }
-zkevm_test_harness = { git = "https://github.com/matter-labs/era-zkevm_test_harness.git", branch = "v1.4.0" }
-circuit_definitions = { git = "https://github.com/matter-labs/era-zkevm_test_harness.git", branch = "v1.4.0", features = [
+zkevm_test_harness = { git = "https://github.com/matter-labs/era-zkevm_test_harness.git", branch = "v1.4.1" }
+circuit_definitions = { git = "https://github.com/matter-labs/era-zkevm_test_harness.git", branch = "v1.4.1", features = [
"log_tracing",
] }
-zk_evm = { git = "https://github.com/matter-labs/era-zk_evm.git", branch = "v1.4.0" }
+zk_evm = { git = "https://github.com/matter-labs/era-zk_evm.git", branch = "v1.4.1" }
anyhow = "1.0"
tracing = "0.1"
diff --git a/prover/witness_generator/src/basic_circuits.rs b/prover/witness_generator/src/basic_circuits.rs
index 6db57070c451..3835dcccdcd0 100644
--- a/prover/witness_generator/src/basic_circuits.rs
+++ b/prover/witness_generator/src/basic_circuits.rs
@@ -44,7 +44,7 @@ use zksync_state::{PostgresStorage, StorageView};
use zksync_types::{
proofs::{AggregationRound, BasicCircuitWitnessGeneratorInput, PrepareBasicCircuitsJob},
protocol_version::FriProtocolVersionId,
- Address, L1BatchNumber, BOOTLOADER_ADDRESS, H256, U256,
+ Address, L1BatchNumber, ProtocolVersionId, BOOTLOADER_ADDRESS, H256, U256,
};
use zksync_utils::{bytes_to_chunks, h256_to_u256, u256_to_h256};
@@ -531,6 +531,10 @@ async fn generate_witness(
.unwrap()
.unwrap();
+ let protocol_version = header
+ .protocol_version
+ .unwrap_or(ProtocolVersionId::last_potentially_undefined());
+
let previous_batch_with_metadata = connection
.blocks_dal()
.get_l1_batch_metadata(zksync_types::L1BatchNumber(
@@ -552,7 +556,8 @@ async fn generate_witness(
.await
.expect("Default aa bytecode should exist");
let account_bytecode = bytes_to_chunks(&account_bytecode_bytes);
- let bootloader_contents = expand_bootloader_contents(&input.initial_heap_content);
+ let bootloader_contents =
+ expand_bootloader_contents(&input.initial_heap_content, protocol_version);
let account_code_hash = h256_to_u256(header.base_system_contracts_hashes.default_aa);
let hashes: HashSet = input
diff --git a/prover/witness_generator/src/scheduler.rs b/prover/witness_generator/src/scheduler.rs
index 6571c6e63c4a..a6aa372b41e0 100644
--- a/prover/witness_generator/src/scheduler.rs
+++ b/prover/witness_generator/src/scheduler.rs
@@ -91,6 +91,9 @@ impl SchedulerWitnessGenerator {
witness: job.scheduler_witness,
config,
transcript_params: (),
+ eip4844_proof_config: None,
+ eip4844_vk: None,
+ eip4844_vk_fixed_parameters: None,
_marker: std::marker::PhantomData,
};
WITNESS_GENERATOR_METRICS.witness_generation_time[&AggregationRound::Scheduler.into()]
diff --git a/prover/witness_generator/src/storage_oracle.rs b/prover/witness_generator/src/storage_oracle.rs
index 6771a0252132..4ead5a3c781e 100644
--- a/prover/witness_generator/src/storage_oracle.rs
+++ b/prover/witness_generator/src/storage_oracle.rs
@@ -1,7 +1,5 @@
-use zksync_types::{
- zkevm_test_harness::zk_evm::abstractions::{RefundType, RefundedAmounts, Storage},
- LogQuery, Timestamp,
-};
+use zk_evm::aux_structures::{LogQuery, Timestamp};
+use zkevm_test_harness::zk_evm::abstractions::{RefundType, RefundedAmounts, Storage};
#[derive(Debug)]
pub struct StorageOracle {
diff --git a/prover/witness_generator/src/utils.rs b/prover/witness_generator/src/utils.rs
index 6efa333a8190..f3ae4de4993e 100644
--- a/prover/witness_generator/src/utils.rs
+++ b/prover/witness_generator/src/utils.rs
@@ -1,3 +1,4 @@
+use multivm::utils::get_used_bootloader_memory_bytes;
use zkevm_test_harness::{
boojum::field::goldilocks::GoldilocksField, witness::full_block_artifact::BlockBasicCircuits,
};
@@ -21,11 +22,15 @@ use zksync_prover_fri_types::{
},
CircuitWrapper, FriProofWrapper,
};
-use zksync_system_constants::USED_BOOTLOADER_MEMORY_BYTES;
-use zksync_types::{proofs::AggregationRound, L1BatchNumber, U256};
+use zksync_types::{proofs::AggregationRound, L1BatchNumber, ProtocolVersionId, U256};
-pub fn expand_bootloader_contents(packed: &[(usize, U256)]) -> Vec {
- let mut result = vec![0u8; USED_BOOTLOADER_MEMORY_BYTES];
+pub fn expand_bootloader_contents(
+ packed: &[(usize, U256)],
+ protocol_version: ProtocolVersionId,
+) -> Vec {
+ let full_length = get_used_bootloader_memory_bytes(protocol_version.into());
+
+ let mut result = vec![0u8; full_length];
for (offset, value) in packed {
value.to_big_endian(&mut result[(offset * 32)..(offset + 1) * 32]);
diff --git a/yarn.lock b/yarn.lock
index 6b91505e3f7c..3a7645da5c66 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -368,17 +368,17 @@
resolved "https://registry.yarnpkg.com/@colors/colors/-/colors-1.5.0.tgz#bb504579c1cae923e6576a4f5da43d25f97bdbd9"
integrity sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==
-"@cspell/cspell-bundled-dicts@8.1.3":
- version "8.1.3"
- resolved "https://registry.yarnpkg.com/@cspell/cspell-bundled-dicts/-/cspell-bundled-dicts-8.1.3.tgz#39d92ebeb9eeeeb943cc7e05525731a06b2f388a"
- integrity sha512-TwLyL2bCtetXGhMudjOIgFPAsWF2UkT0E7T+DAZG8aUBfHoC/eco/sTmR6UJVpi6Crjs0YOQkFUBGrQ2pxJPcA==
+"@cspell/cspell-bundled-dicts@8.3.2":
+ version "8.3.2"
+ resolved "https://registry.yarnpkg.com/@cspell/cspell-bundled-dicts/-/cspell-bundled-dicts-8.3.2.tgz#649ed168a72cb49a7d83f3840ab6933a8beba68d"
+ integrity sha512-3ubOgz1/MDixJbq//0rQ2omB3cSdhVJDviERZeiREGz4HOq84aaK1Fqbw5SjNZHvhpoq+AYXm6kJbIAH8YhKgg==
dependencies:
"@cspell/dict-ada" "^4.0.2"
- "@cspell/dict-aws" "^4.0.0"
+ "@cspell/dict-aws" "^4.0.1"
"@cspell/dict-bash" "^4.1.3"
- "@cspell/dict-companies" "^3.0.28"
+ "@cspell/dict-companies" "^3.0.29"
"@cspell/dict-cpp" "^5.0.10"
- "@cspell/dict-cryptocurrencies" "^4.0.0"
+ "@cspell/dict-cryptocurrencies" "^5.0.0"
"@cspell/dict-csharp" "^4.0.2"
"@cspell/dict-css" "^4.0.12"
"@cspell/dict-dart" "^2.0.3"
@@ -386,15 +386,15 @@
"@cspell/dict-docker" "^1.1.7"
"@cspell/dict-dotnet" "^5.0.0"
"@cspell/dict-elixir" "^4.0.3"
- "@cspell/dict-en-common-misspellings" "^1.0.2"
+ "@cspell/dict-en-common-misspellings" "^2.0.0"
"@cspell/dict-en-gb" "1.1.33"
- "@cspell/dict-en_us" "^4.3.12"
+ "@cspell/dict-en_us" "^4.3.13"
"@cspell/dict-filetypes" "^3.0.3"
"@cspell/dict-fonts" "^4.0.0"
"@cspell/dict-fsharp" "^1.0.1"
"@cspell/dict-fullstack" "^3.1.5"
"@cspell/dict-gaming-terms" "^1.0.4"
- "@cspell/dict-git" "^2.0.0"
+ "@cspell/dict-git" "^3.0.0"
"@cspell/dict-golang" "^6.0.5"
"@cspell/dict-haskell" "^4.0.1"
"@cspell/dict-html" "^4.0.5"
@@ -406,80 +406,80 @@
"@cspell/dict-lua" "^4.0.3"
"@cspell/dict-makefile" "^1.0.0"
"@cspell/dict-node" "^4.0.3"
- "@cspell/dict-npm" "^5.0.13"
- "@cspell/dict-php" "^4.0.4"
- "@cspell/dict-powershell" "^5.0.2"
+ "@cspell/dict-npm" "^5.0.14"
+ "@cspell/dict-php" "^4.0.5"
+ "@cspell/dict-powershell" "^5.0.3"
"@cspell/dict-public-licenses" "^2.0.5"
- "@cspell/dict-python" "^4.1.10"
+ "@cspell/dict-python" "^4.1.11"
"@cspell/dict-r" "^2.0.1"
- "@cspell/dict-ruby" "^5.0.1"
+ "@cspell/dict-ruby" "^5.0.2"
"@cspell/dict-rust" "^4.0.1"
"@cspell/dict-scala" "^5.0.0"
- "@cspell/dict-software-terms" "^3.3.11"
- "@cspell/dict-sql" "^2.1.2"
+ "@cspell/dict-software-terms" "^3.3.15"
+ "@cspell/dict-sql" "^2.1.3"
"@cspell/dict-svelte" "^1.0.2"
"@cspell/dict-swift" "^2.0.1"
"@cspell/dict-typescript" "^3.1.2"
"@cspell/dict-vue" "^3.0.0"
-"@cspell/cspell-json-reporter@8.1.3":
- version "8.1.3"
- resolved "https://registry.yarnpkg.com/@cspell/cspell-json-reporter/-/cspell-json-reporter-8.1.3.tgz#5645bead06de8bbacedc654b61663b05c57bd8d0"
- integrity sha512-9iOU0Y733XuF0cqC7xwzJkOKFdJ65rYGnHFdUHzr5lxEqeG9X/jhlkzyHuGGOhPxkUeFP1x9XoLhXo1isMDbKA==
+"@cspell/cspell-json-reporter@8.3.2":
+ version "8.3.2"
+ resolved "https://registry.yarnpkg.com/@cspell/cspell-json-reporter/-/cspell-json-reporter-8.3.2.tgz#314f7b7deb465a7b94b03405c3498d9b96d410ab"
+ integrity sha512-gHSz4jXMJPcxx+lOGfXhHuoyenAWQ8PVA/atHFrWYKo1LzKTbpkEkrsDnlX8QNJubc3EMH63Uy+lOIaFDVyHiQ==
dependencies:
- "@cspell/cspell-types" "8.1.3"
+ "@cspell/cspell-types" "8.3.2"
-"@cspell/cspell-pipe@8.1.3":
- version "8.1.3"
- resolved "https://registry.yarnpkg.com/@cspell/cspell-pipe/-/cspell-pipe-8.1.3.tgz#728567a69d7c315377c5a1178bbe9151da82048a"
- integrity sha512-/dcnyLDeyFuoX4seZv7VsDQyRpt3ZY0vjZiDpqFul8hPydM8czLyRPPMD6Za+Gqg6dZmh9+VsQWK52hVsqc0QA==
+"@cspell/cspell-pipe@8.3.2":
+ version "8.3.2"
+ resolved "https://registry.yarnpkg.com/@cspell/cspell-pipe/-/cspell-pipe-8.3.2.tgz#72b986c6c03ed9894d5ddafdcb435973336216b9"
+ integrity sha512-GZmDwvQGOjQi3IjD4k9xXeVTDANczksOsgVKb3v2QZk9mR4Qj8c6Uarjd4AgSiIhu/wBliJfzr5rWFJu4X2VfQ==
-"@cspell/cspell-resolver@8.1.3":
- version "8.1.3"
- resolved "https://registry.yarnpkg.com/@cspell/cspell-resolver/-/cspell-resolver-8.1.3.tgz#e54bbb0b5d06813907c92cdead6d1dea12a54263"
- integrity sha512-bGyJYqkHRilqhyKGL/NvODN5U+UvCuQo7kxgt0i3Vd7m7k6XYLsSLYZ4w6r1S5IQ/ybU8I5lh6/6fNqKwvo9eg==
+"@cspell/cspell-resolver@8.3.2":
+ version "8.3.2"
+ resolved "https://registry.yarnpkg.com/@cspell/cspell-resolver/-/cspell-resolver-8.3.2.tgz#e4a981ed8fc2029804d8fa5847e47934a26c5c86"
+ integrity sha512-w2Tmb95bzdEz9L4W5qvsP5raZbyEzKL7N2ksU/+yh8NEJcTuExmAl/nMnb3aIk7m2b+kPHnMOcJuwfUMLmyv4A==
dependencies:
global-directory "^4.0.1"
-"@cspell/cspell-service-bus@8.1.3":
- version "8.1.3"
- resolved "https://registry.yarnpkg.com/@cspell/cspell-service-bus/-/cspell-service-bus-8.1.3.tgz#2b34012d7905a596adf4a8a8daaead86c0d32666"
- integrity sha512-8E5ZveQKneNfK+cuFMy0y6tDsho71UPppEHNoLZsEFDbIxDdtQcAfs0pk4nwEzxPBt+dBB+Yl8KExQ6x2FAYQw==
+"@cspell/cspell-service-bus@8.3.2":
+ version "8.3.2"
+ resolved "https://registry.yarnpkg.com/@cspell/cspell-service-bus/-/cspell-service-bus-8.3.2.tgz#b1c6620232c22c0a7c8b68051e524963285f4768"
+ integrity sha512-skTHNyVi74//W/O+f4IauDhm6twA9S2whkylonsIzPxEl4Pn3y2ZEMXNki/MWUwZfDIzKKSxlcREH61g7zCvhg==
-"@cspell/cspell-types@8.1.3":
- version "8.1.3"
- resolved "https://registry.yarnpkg.com/@cspell/cspell-types/-/cspell-types-8.1.3.tgz#aaba55f4a8f6496a30ccf2235675ec6c21b9e33a"
- integrity sha512-j14FENj+DzWu6JjzTl+0X5/OJv9AEckpEp6Jaw9YglxirrBBzTkZGfoLePe/AWo/MlIYp0asl92C1UHEjgz+FQ==
+"@cspell/cspell-types@8.3.2":
+ version "8.3.2"
+ resolved "https://registry.yarnpkg.com/@cspell/cspell-types/-/cspell-types-8.3.2.tgz#35a6d0f1a4c7c2a8a5275bcd41dacf85618f44c3"
+ integrity sha512-qS/gWd9ItOrN6ZX5pwC9lJjnBoyiAyhxYq0GUXuV892LQvwrBmECGk6KhsA1lPW7JJS7o57YTAS1jmXnmXMEpg==
"@cspell/dict-ada@^4.0.2":
version "4.0.2"
resolved "https://registry.yarnpkg.com/@cspell/dict-ada/-/dict-ada-4.0.2.tgz#8da2216660aeb831a0d9055399a364a01db5805a"
integrity sha512-0kENOWQeHjUlfyId/aCM/mKXtkEgV0Zu2RhUXCBr4hHo9F9vph+Uu8Ww2b0i5a4ZixoIkudGA+eJvyxrG1jUpA==
-"@cspell/dict-aws@^4.0.0":
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/@cspell/dict-aws/-/dict-aws-4.0.0.tgz#ab71fe0c05d9ad662d27495e74361bdcb5b470eb"
- integrity sha512-1YkCMWuna/EGIDN/zKkW+j98/55mxigftrSFgsehXhPld+ZMJM5J9UuBA88YfL7+/ETvBdd7mwW6IwWsC+/ltQ==
+"@cspell/dict-aws@^4.0.1":
+ version "4.0.1"
+ resolved "https://registry.yarnpkg.com/@cspell/dict-aws/-/dict-aws-4.0.1.tgz#a0e758531ae81792b928a3f406618296291a658a"
+ integrity sha512-NXO+kTPQGqaaJKa4kO92NAXoqS+i99dQzf3/L1BxxWVSBS3/k1f3uhmqIh7Crb/n22W793lOm0D9x952BFga3Q==
"@cspell/dict-bash@^4.1.3":
version "4.1.3"
resolved "https://registry.yarnpkg.com/@cspell/dict-bash/-/dict-bash-4.1.3.tgz#25fba40825ac10083676ab2c777e471c3f71b36e"
integrity sha512-tOdI3QVJDbQSwPjUkOiQFhYcu2eedmX/PtEpVWg0aFps/r6AyjUQINtTgpqMYnYuq8O1QUIQqnpx21aovcgZCw==
-"@cspell/dict-companies@^3.0.28":
- version "3.0.28"
- resolved "https://registry.yarnpkg.com/@cspell/dict-companies/-/dict-companies-3.0.28.tgz#d617be3e036955d2f656d568f0cc6d1bdf198819"
- integrity sha512-UinHkMYB/1pUkLKm1PGIm9PBFYxeAa6YvbB1Rq/RAAlrs0WDwiDBr3BAYdxydukG1IqqwT5z9WtU+8D/yV/5lw==
+"@cspell/dict-companies@^3.0.29":
+ version "3.0.29"
+ resolved "https://registry.yarnpkg.com/@cspell/dict-companies/-/dict-companies-3.0.29.tgz#0c102c852a9b1c879cd926c0870e2cfbaf1cd176"
+ integrity sha512-F/8XnkqjU7jmSDAcD3LSSX+WxCVUWPssqlO4lzGMIK3MNIUt+d48eSIt3pFAIB/Z9y0ojoLHUtWX9HJ1ZtGrXQ==
"@cspell/dict-cpp@^5.0.10":
version "5.0.10"
resolved "https://registry.yarnpkg.com/@cspell/dict-cpp/-/dict-cpp-5.0.10.tgz#08c3eb438b631dd3f0fc04f5a6d4b6cab87c8d9b"
integrity sha512-WCRuDrkFdpmeIR6uXQYKU9loMQKNFS4bUhtHdv5fu4qVyJSh3k/kgmtTm1h1BDTj8EwPRc/RGxS+9Z3b2mnabA==
-"@cspell/dict-cryptocurrencies@^4.0.0":
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/@cspell/dict-cryptocurrencies/-/dict-cryptocurrencies-4.0.0.tgz#6517a7e1b0ed184cf3fc18f03230c82508369dec"
- integrity sha512-EiZp91ATyRxTmauIQfOX9adLYCunKjHEh092rrM7o2eMXP9n7zpXAL9BK7LviL+LbB8VDOm21q+s83cKrrRrsg==
+"@cspell/dict-cryptocurrencies@^5.0.0":
+ version "5.0.0"
+ resolved "https://registry.yarnpkg.com/@cspell/dict-cryptocurrencies/-/dict-cryptocurrencies-5.0.0.tgz#19fbc7bdbec76ce64daf7d53a6d0f3cfff7d0038"
+ integrity sha512-Z4ARIw5+bvmShL+4ZrhDzGhnc9znaAGHOEMaB/GURdS/jdoreEDY34wdN0NtdLHDO5KO7GduZnZyqGdRoiSmYA==
"@cspell/dict-csharp@^4.0.2":
version "4.0.2"
@@ -521,20 +521,20 @@
resolved "https://registry.yarnpkg.com/@cspell/dict-elixir/-/dict-elixir-4.0.3.tgz#57c25843e46cf3463f97da72d9ef8e37c818296f"
integrity sha512-g+uKLWvOp9IEZvrIvBPTr/oaO6619uH/wyqypqvwpmnmpjcfi8+/hqZH8YNKt15oviK8k4CkINIqNhyndG9d9Q==
-"@cspell/dict-en-common-misspellings@^1.0.2":
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/@cspell/dict-en-common-misspellings/-/dict-en-common-misspellings-1.0.2.tgz#3c4ebab8e9e906d66d60f53c8f8c2e77b7f108e7"
- integrity sha512-jg7ZQZpZH7+aAxNBlcAG4tGhYF6Ksy+QS5Df73Oo+XyckBjC9QS+PrRwLTeYoFIgXy5j3ICParK5r3MSSoL4gw==
+"@cspell/dict-en-common-misspellings@^2.0.0":
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/@cspell/dict-en-common-misspellings/-/dict-en-common-misspellings-2.0.0.tgz#708f424d75dc65237a6fcb8d253bc1e7ab641380"
+ integrity sha512-NOg8dlv37/YqLkCfBs5OXeJm/Wcfb/CzeOmOZJ2ZXRuxwsNuolb4TREUce0yAXRqMhawahY5TSDRJJBgKjBOdw==
"@cspell/dict-en-gb@1.1.33":
version "1.1.33"
resolved "https://registry.yarnpkg.com/@cspell/dict-en-gb/-/dict-en-gb-1.1.33.tgz#7f1fd90fc364a5cb77111b5438fc9fcf9cc6da0e"
integrity sha512-tKSSUf9BJEV+GJQAYGw5e+ouhEe2ZXE620S7BLKe3ZmpnjlNG9JqlnaBhkIMxKnNFkLY2BP/EARzw31AZnOv4g==
-"@cspell/dict-en_us@^4.3.12":
- version "4.3.12"
- resolved "https://registry.yarnpkg.com/@cspell/dict-en_us/-/dict-en_us-4.3.12.tgz#3b0ceaf5ed3cf30b225834ca7d528e4dc96e9605"
- integrity sha512-1bsUxFjgxF30FTzcU5uvmCvH3lyqVKR9dbwsJhomBlUM97f0edrd6590SiYBXDm7ruE68m3lJd4vs0Ev2D6FtQ==
+"@cspell/dict-en_us@^4.3.13":
+ version "4.3.13"
+ resolved "https://registry.yarnpkg.com/@cspell/dict-en_us/-/dict-en_us-4.3.13.tgz#4176be1e1510ac696a0fa33d9773aaffbf83a50d"
+ integrity sha512-T6lHiGCjloGNE0d8CogF+efJZPCAP8zdzn+KnlI0Bmjaz5nvG2LTX7CXl1zkOl1nYYev0FuIk9WJ9YPVRjcFbQ==
"@cspell/dict-filetypes@^3.0.3":
version "3.0.3"
@@ -561,10 +561,10 @@
resolved "https://registry.yarnpkg.com/@cspell/dict-gaming-terms/-/dict-gaming-terms-1.0.4.tgz#b67d89d014d865da6cb40de4269d4c162a00658e"
integrity sha512-hbDduNXlk4AOY0wFxcDMWBPpm34rpqJBeqaySeoUH70eKxpxm+dvjpoRLJgyu0TmymEICCQSl6lAHTHSDiWKZg==
-"@cspell/dict-git@^2.0.0":
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/@cspell/dict-git/-/dict-git-2.0.0.tgz#fa5cb298845da9c69efc01c6af07a99097718dc9"
- integrity sha512-n1AxyX5Kgxij/sZFkxFJlzn3K9y/sCcgVPg/vz4WNJ4K9YeTsUmyGLA2OQI7d10GJeiuAo2AP1iZf2A8j9aj2w==
+"@cspell/dict-git@^3.0.0":
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/@cspell/dict-git/-/dict-git-3.0.0.tgz#c275af86041a2b59a7facce37525e2af05653b95"
+ integrity sha512-simGS/lIiXbEaqJu9E2VPoYW1OTC2xrwPPXNXFMa2uo/50av56qOuaxDrZ5eH1LidFXwoc8HROCHYeKoNrDLSw==
"@cspell/dict-golang@^6.0.5":
version "6.0.5"
@@ -621,17 +621,17 @@
resolved "https://registry.yarnpkg.com/@cspell/dict-node/-/dict-node-4.0.3.tgz#5ae0222d72871e82978049f8e11ea627ca42fca3"
integrity sha512-sFlUNI5kOogy49KtPg8SMQYirDGIAoKBO3+cDLIwD4MLdsWy1q0upc7pzGht3mrjuyMiPRUV14Bb0rkVLrxOhg==
-"@cspell/dict-npm@^5.0.13":
- version "5.0.13"
- resolved "https://registry.yarnpkg.com/@cspell/dict-npm/-/dict-npm-5.0.13.tgz#81051f791ee29563430145b360947f711316ccd1"
- integrity sha512-uPb3DlQA/FvlmzT5RjZoy7fy91mxMRZW1B+K3atVM5A/cmP1QlDaSW/iCtde5kHET1MOV7uxz+vy0Yha2OI5pQ==
+"@cspell/dict-npm@^5.0.14":
+ version "5.0.14"
+ resolved "https://registry.yarnpkg.com/@cspell/dict-npm/-/dict-npm-5.0.14.tgz#1ca3d305390f393bbfa75f41c4db0fd590ce1a9c"
+ integrity sha512-k0kC7/W2qG5YII+SW6s+JtvKrkZg651vizi5dv/5G2HmJaeLNgDqBVeeDk/uV+ntBorM66XG4BPMjSxoaIlC5w==
-"@cspell/dict-php@^4.0.4":
- version "4.0.4"
- resolved "https://registry.yarnpkg.com/@cspell/dict-php/-/dict-php-4.0.4.tgz#7510c0fe4bdbb049c143eb3c471820d1e681bbb9"
- integrity sha512-fRlLV730fJbulDsLIouZxXoxHt3KIH6hcLFwxaupHL+iTXDg0lo7neRpbqD5MScr/J3idEr7i9G8XWzIikKFug==
+"@cspell/dict-php@^4.0.5":
+ version "4.0.5"
+ resolved "https://registry.yarnpkg.com/@cspell/dict-php/-/dict-php-4.0.5.tgz#fa16350d907180a42f16d5e4666e61a97ae9b8b3"
+ integrity sha512-9r8ao7Z/mH9Z8pSB7yLtyvcCJWw+/MnQpj7xGVYzIV7V2ZWDRjXZAMgteHMJ37m8oYz64q5d4tiipD300QSetQ==
-"@cspell/dict-powershell@^5.0.2":
+"@cspell/dict-powershell@^5.0.3":
version "5.0.3"
resolved "https://registry.yarnpkg.com/@cspell/dict-powershell/-/dict-powershell-5.0.3.tgz#7bceb4e7db39f87479a6d2af3a033ce26796ae49"
integrity sha512-lEdzrcyau6mgzu1ie98GjOEegwVHvoaWtzQnm1ie4DyZgMr+N6D0Iyj1lzvtmt0snvsDFa5F2bsYzf3IMKcpcA==
@@ -641,10 +641,10 @@
resolved "https://registry.yarnpkg.com/@cspell/dict-public-licenses/-/dict-public-licenses-2.0.5.tgz#86948b29bd36184943955eaa80bf594488c4dd8a"
integrity sha512-91HK4dSRri/HqzAypHgduRMarJAleOX5NugoI8SjDLPzWYkwZ1ftuCXSk+fy8DLc3wK7iOaFcZAvbjmnLhVs4A==
-"@cspell/dict-python@^4.1.10":
- version "4.1.10"
- resolved "https://registry.yarnpkg.com/@cspell/dict-python/-/dict-python-4.1.10.tgz#bae6557e7b828a1701d3733b7766c4d95f279175"
- integrity sha512-ErF/Ohcu6Xk4QVNzFgo8p7CxkxvAKAmFszvso41qOOhu8CVpB35ikBRpGVDw9gsCUtZzi15Yl0izi4do6WcLkA==
+"@cspell/dict-python@^4.1.11":
+ version "4.1.11"
+ resolved "https://registry.yarnpkg.com/@cspell/dict-python/-/dict-python-4.1.11.tgz#4e339def01bf468b32d459c46ecb6894970b7eb8"
+ integrity sha512-XG+v3PumfzUW38huSbfT15Vqt3ihNb462ulfXifpQllPok5OWynhszCLCRQjQReV+dgz784ST4ggRxW452/kVg==
dependencies:
"@cspell/dict-data-science" "^1.0.11"
@@ -653,10 +653,10 @@
resolved "https://registry.yarnpkg.com/@cspell/dict-r/-/dict-r-2.0.1.tgz#73474fb7cce45deb9094ebf61083fbf5913f440a"
integrity sha512-KCmKaeYMLm2Ip79mlYPc8p+B2uzwBp4KMkzeLd5E6jUlCL93Y5Nvq68wV5fRLDRTf7N1LvofkVFWfDcednFOgA==
-"@cspell/dict-ruby@^5.0.1":
- version "5.0.1"
- resolved "https://registry.yarnpkg.com/@cspell/dict-ruby/-/dict-ruby-5.0.1.tgz#a59df952d66781d811e7aac9208c145680e8cdf9"
- integrity sha512-rruTm7Emhty/BSYavSm8ZxRuVw0OBqzJkwIFXcV0cX7To8D1qbmS9HFHRuRg8IL11+/nJvtdDz+lMFBSmPUagQ==
+"@cspell/dict-ruby@^5.0.2":
+ version "5.0.2"
+ resolved "https://registry.yarnpkg.com/@cspell/dict-ruby/-/dict-ruby-5.0.2.tgz#cf1a71380c633dec0857143d3270cb503b10679a"
+ integrity sha512-cIh8KTjpldzFzKGgrqUX4bFyav5lC52hXDKo4LbRuMVncs3zg4hcSf4HtURY+f2AfEZzN6ZKzXafQpThq3dl2g==
"@cspell/dict-rust@^4.0.1":
version "4.0.1"
@@ -668,15 +668,15 @@
resolved "https://registry.yarnpkg.com/@cspell/dict-scala/-/dict-scala-5.0.0.tgz#b64365ad559110a36d44ccd90edf7151ea648022"
integrity sha512-ph0twaRoV+ylui022clEO1dZ35QbeEQaKTaV2sPOsdwIokABPIiK09oWwGK9qg7jRGQwVaRPEq0Vp+IG1GpqSQ==
-"@cspell/dict-software-terms@^3.3.11":
- version "3.3.12"
- resolved "https://registry.yarnpkg.com/@cspell/dict-software-terms/-/dict-software-terms-3.3.12.tgz#49db44c470925c759465b6fdbd078f2a831e09c8"
- integrity sha512-6aa4T9VqOMc0SFNBt6gxp0CWjvRqMg/uxvgpRbil+ToHWcU+Q+As0WKhPLaOniuTdCM85WWzRouD0O1XUGqg5Q==
+"@cspell/dict-software-terms@^3.3.15":
+ version "3.3.16"
+ resolved "https://registry.yarnpkg.com/@cspell/dict-software-terms/-/dict-software-terms-3.3.16.tgz#c088501687e6a19625800cc612dae8aebaf0f086"
+ integrity sha512-ixorEP80LGxAU+ODVSn/CYIDjV0XAlZ2VrBu7CT+PwUFJ7h8o3JX1ywKB4qnt0hHru3JjWFtBoBThmZdrXnREQ==
-"@cspell/dict-sql@^2.1.2":
- version "2.1.2"
- resolved "https://registry.yarnpkg.com/@cspell/dict-sql/-/dict-sql-2.1.2.tgz#80492b887e7986dd8bc39a9c5ea513ede2b17cb1"
- integrity sha512-Pi0hAcvsSGtZZeyyAN1VfGtQJbrXos5x2QjJU0niAQKhmITSOrXU/1II1Gogk+FYDjWyV9wP2De0U2f7EWs6oQ==
+"@cspell/dict-sql@^2.1.3":
+ version "2.1.3"
+ resolved "https://registry.yarnpkg.com/@cspell/dict-sql/-/dict-sql-2.1.3.tgz#8d9666a82e35b310d0be4064032c0d891fbd2702"
+ integrity sha512-SEyTNKJrjqD6PAzZ9WpdSu6P7wgdNtGV2RV8Kpuw1x6bV+YsSptuClYG+JSdRExBTE6LwIe1bTklejUp3ZP8TQ==
"@cspell/dict-svelte@^1.0.2":
version "1.0.2"
@@ -698,17 +698,17 @@
resolved "https://registry.yarnpkg.com/@cspell/dict-vue/-/dict-vue-3.0.0.tgz#68ccb432ad93fcb0fd665352d075ae9a64ea9250"
integrity sha512-niiEMPWPV9IeRBRzZ0TBZmNnkK3olkOPYxC1Ny2AX4TGlYRajcW0WUtoSHmvvjZNfWLSg2L6ruiBeuPSbjnG6A==
-"@cspell/dynamic-import@8.1.3":
- version "8.1.3"
- resolved "https://registry.yarnpkg.com/@cspell/dynamic-import/-/dynamic-import-8.1.3.tgz#7bfa0dc1dbbd44bced42677ff7129932bf325d3e"
- integrity sha512-/lXFLa92v4oOcZ2PbdRpOqBvnqWlYmGaV7iCy8+QhIWlMdzi+7tBX3LVTm9Jzvt/rJseVHQQ6RvfTsSmhbUMFQ==
+"@cspell/dynamic-import@8.3.2":
+ version "8.3.2"
+ resolved "https://registry.yarnpkg.com/@cspell/dynamic-import/-/dynamic-import-8.3.2.tgz#96fea6b1139164449a8ef92530de670d4c2fb36e"
+ integrity sha512-4t0xM5luA3yQhar2xWvYK4wQSDB2r0u8XkpzzJqd57MnJXd7uIAxI0awGUrDXukadRaCo0tDIlMUBemH48SNVg==
dependencies:
import-meta-resolve "^4.0.0"
-"@cspell/strong-weak-map@8.1.3":
- version "8.1.3"
- resolved "https://registry.yarnpkg.com/@cspell/strong-weak-map/-/strong-weak-map-8.1.3.tgz#8c782d32bea999999c761a46b4010ee1569d07c1"
- integrity sha512-GhWyximzk8tumo0zhrDV3+nFYiETYefiTBWAEVbXJMibuvitFocVZwddqN85J0UdZ2M7q6tvBleEaI9ME/16gA==
+"@cspell/strong-weak-map@8.3.2":
+ version "8.3.2"
+ resolved "https://registry.yarnpkg.com/@cspell/strong-weak-map/-/strong-weak-map-8.3.2.tgz#5a9490e042bbc472089817b50cf51262dfedef65"
+ integrity sha512-Mte/2000ap278kRYOUhiGWI7MNr1+A7WSWJmlcdP4CAH5SO20sZI3/cyZLjJJEyapdhK5vaP1L5J9sUcVDHd3A==
"@cspotcode/source-map-support@^0.8.0":
version "0.8.1"
@@ -717,22 +717,6 @@
dependencies:
"@jridgewell/trace-mapping" "0.3.9"
-"@ensdomains/ens@^0.4.4":
- version "0.4.5"
- resolved "https://registry.yarnpkg.com/@ensdomains/ens/-/ens-0.4.5.tgz#e0aebc005afdc066447c6e22feb4eda89a5edbfc"
- integrity sha512-JSvpj1iNMFjK6K+uVl4unqMoa9rf5jopb8cya5UGBWz23Nw8hSNT7efgUx4BTlAPAgpNlEioUfeTyQ6J9ZvTVw==
- dependencies:
- bluebird "^3.5.2"
- eth-ens-namehash "^2.0.8"
- solc "^0.4.20"
- testrpc "0.0.1"
- web3-utils "^1.0.0-beta.31"
-
-"@ensdomains/resolver@^0.2.4":
- version "0.2.4"
- resolved "https://registry.yarnpkg.com/@ensdomains/resolver/-/resolver-0.2.4.tgz#c10fe28bf5efbf49bff4666d909aed0265efbc89"
- integrity sha512-bvaTH34PMCbv6anRa9I/0zjLJgY4EuznbEMgbV77JBCQ9KNC46rzi0avuxpOfu+xDjPEtSFGqVEOr5GlUSGudA==
-
"@eslint-community/eslint-utils@^4.2.0", "@eslint-community/eslint-utils@^4.4.0":
version "4.4.0"
resolved "https://registry.yarnpkg.com/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz#a23514e8fb9af1269d5f7788aa556798d61c6b59"
@@ -780,64 +764,120 @@
resolved "https://registry.yarnpkg.com/@eslint/js/-/js-8.55.0.tgz#b721d52060f369aa259cf97392403cb9ce892ec6"
integrity sha512-qQfo2mxH5yVom1kacMtZZJFVdW+E70mqHMJvVg6WTLo+VBuQJ4TojZlfWBjK0ve5BdEeNAVxOsl/nvNMpJOaJA==
-"@ethereum-waffle/chai@^3.4.4":
- version "3.4.4"
- resolved "https://registry.yarnpkg.com/@ethereum-waffle/chai/-/chai-3.4.4.tgz#16c4cc877df31b035d6d92486dfdf983df9138ff"
- integrity sha512-/K8czydBtXXkcM9X6q29EqEkc5dN3oYenyH2a9hF7rGAApAJUpH8QBtojxOY/xQ2up5W332jqgxwp0yPiYug1g==
+"@ethereum-waffle/chai@4.0.10":
+ version "4.0.10"
+ resolved "https://registry.yarnpkg.com/@ethereum-waffle/chai/-/chai-4.0.10.tgz#6f600a40b6fdaed331eba42b8625ff23f3a0e59a"
+ integrity sha512-X5RepE7Dn8KQLFO7HHAAe+KeGaX/by14hn90wePGBhzL54tq4Y8JscZFu+/LCwCl6TnkAAy5ebiMoqJ37sFtWw==
dependencies:
- "@ethereum-waffle/provider" "^3.4.4"
- ethers "^5.5.2"
+ "@ethereum-waffle/provider" "4.0.5"
+ debug "^4.3.4"
+ json-bigint "^1.0.0"
-"@ethereum-waffle/compiler@^3.4.4":
- version "3.4.4"
- resolved "https://registry.yarnpkg.com/@ethereum-waffle/compiler/-/compiler-3.4.4.tgz#d568ee0f6029e68b5c645506079fbf67d0dfcf19"
- integrity sha512-RUK3axJ8IkD5xpWjWoJgyHclOeEzDLQFga6gKpeGxiS/zBu+HB0W2FvsrrLalTFIaPw/CGYACRBSIxqiCqwqTQ==
+"@ethereum-waffle/compiler@4.0.3":
+ version "4.0.3"
+ resolved "https://registry.yarnpkg.com/@ethereum-waffle/compiler/-/compiler-4.0.3.tgz#069e2df24b879b8a7b78857bad6f8bf6ebc8a5b1"
+ integrity sha512-5x5U52tSvEVJS6dpCeXXKvRKyf8GICDwiTwUvGD3/WD+DpvgvaoHOL82XqpTSUHgV3bBq6ma5/8gKUJUIAnJCw==
dependencies:
"@resolver-engine/imports" "^0.3.3"
"@resolver-engine/imports-fs" "^0.3.3"
- "@typechain/ethers-v5" "^2.0.0"
+ "@typechain/ethers-v5" "^10.0.0"
"@types/mkdirp" "^0.5.2"
- "@types/node-fetch" "^2.5.5"
- ethers "^5.0.1"
+ "@types/node-fetch" "^2.6.1"
mkdirp "^0.5.1"
- node-fetch "^2.6.1"
- solc "^0.6.3"
- ts-generator "^0.1.1"
- typechain "^3.0.0"
+ node-fetch "^2.6.7"
+
+"@ethereum-waffle/ens@4.0.3":
+ version "4.0.3"
+ resolved "https://registry.yarnpkg.com/@ethereum-waffle/ens/-/ens-4.0.3.tgz#4a46ac926414f3c83b4e8cc2562c8e2aee06377a"
+ integrity sha512-PVLcdnTbaTfCrfSOrvtlA9Fih73EeDvFS28JQnT5M5P4JMplqmchhcZB1yg/fCtx4cvgHlZXa0+rOCAk2Jk0Jw==
-"@ethereum-waffle/ens@^3.4.4":
- version "3.4.4"
- resolved "https://registry.yarnpkg.com/@ethereum-waffle/ens/-/ens-3.4.4.tgz#db97ea2c9decbb70b9205d53de2ccbd6f3182ba1"
- integrity sha512-0m4NdwWxliy3heBYva1Wr4WbJKLnwXizmy5FfSSr5PMbjI7SIGCdCB59U7/ZzY773/hY3bLnzLwvG5mggVjJWg==
+"@ethereum-waffle/mock-contract@4.0.4":
+ version "4.0.4"
+ resolved "https://registry.yarnpkg.com/@ethereum-waffle/mock-contract/-/mock-contract-4.0.4.tgz#f13fea29922d87a4d2e7c4fc8fe72ea04d2c13de"
+ integrity sha512-LwEj5SIuEe9/gnrXgtqIkWbk2g15imM/qcJcxpLyAkOj981tQxXmtV4XmQMZsdedEsZ/D/rbUAOtZbgwqgUwQA==
+
+"@ethereum-waffle/provider@4.0.5":
+ version "4.0.5"
+ resolved "https://registry.yarnpkg.com/@ethereum-waffle/provider/-/provider-4.0.5.tgz#8a65dbf0263f4162c9209608205dee1c960e716b"
+ integrity sha512-40uzfyzcrPh+Gbdzv89JJTMBlZwzya1YLDyim8mVbEqYLP5VRYWoGp0JMyaizgV3hMoUFRqJKVmIUw4v7r3hYw==
+ dependencies:
+ "@ethereum-waffle/ens" "4.0.3"
+ "@ganache/ethereum-options" "0.1.4"
+ debug "^4.3.4"
+ ganache "7.4.3"
+
+"@ethereumjs/block@^3.5.0", "@ethereumjs/block@^3.6.0", "@ethereumjs/block@^3.6.2":
+ version "3.6.3"
+ resolved "https://registry.yarnpkg.com/@ethereumjs/block/-/block-3.6.3.tgz#d96cbd7af38b92ebb3424223dbf773f5ccd27f84"
+ integrity sha512-CegDeryc2DVKnDkg5COQrE0bJfw/p0v3GBk2W5/Dj5dOVfEmb50Ux0GLnSPypooLnfqjwFaorGuT9FokWB3GRg==
dependencies:
- "@ensdomains/ens" "^0.4.4"
- "@ensdomains/resolver" "^0.2.4"
- ethers "^5.5.2"
+ "@ethereumjs/common" "^2.6.5"
+ "@ethereumjs/tx" "^3.5.2"
+ ethereumjs-util "^7.1.5"
+ merkle-patricia-tree "^4.2.4"
-"@ethereum-waffle/mock-contract@^3.4.4":
- version "3.4.4"
- resolved "https://registry.yarnpkg.com/@ethereum-waffle/mock-contract/-/mock-contract-3.4.4.tgz#fc6ffa18813546f4950a69f5892d4dd54b2c685a"
- integrity sha512-Mp0iB2YNWYGUV+VMl5tjPsaXKbKo8MDH9wSJ702l9EBjdxFf/vBvnMBAC1Fub1lLtmD0JHtp1pq+mWzg/xlLnA==
+"@ethereumjs/blockchain@^5.5.0":
+ version "5.5.3"
+ resolved "https://registry.yarnpkg.com/@ethereumjs/blockchain/-/blockchain-5.5.3.tgz#aa49a6a04789da6b66b5bcbb0d0b98efc369f640"
+ integrity sha512-bi0wuNJ1gw4ByNCV56H0Z4Q7D+SxUbwyG12Wxzbvqc89PXLRNR20LBcSUZRKpN0+YCPo6m0XZL/JLio3B52LTw==
dependencies:
- "@ethersproject/abi" "^5.5.0"
- ethers "^5.5.2"
+ "@ethereumjs/block" "^3.6.2"
+ "@ethereumjs/common" "^2.6.4"
+ "@ethereumjs/ethash" "^1.1.0"
+ debug "^4.3.3"
+ ethereumjs-util "^7.1.5"
+ level-mem "^5.0.1"
+ lru-cache "^5.1.1"
+ semaphore-async-await "^1.5.1"
+
+"@ethereumjs/common@2.6.0":
+ version "2.6.0"
+ resolved "https://registry.yarnpkg.com/@ethereumjs/common/-/common-2.6.0.tgz#feb96fb154da41ee2cc2c5df667621a440f36348"
+ integrity sha512-Cq2qS0FTu6O2VU1sgg+WyU9Ps0M6j/BEMHN+hRaECXCV/r0aI78u4N6p52QW/BDVhwWZpCdrvG8X7NJdzlpNUA==
+ dependencies:
+ crc-32 "^1.2.0"
+ ethereumjs-util "^7.1.3"
+
+"@ethereumjs/common@^2.6.0", "@ethereumjs/common@^2.6.4", "@ethereumjs/common@^2.6.5":
+ version "2.6.5"
+ resolved "https://registry.yarnpkg.com/@ethereumjs/common/-/common-2.6.5.tgz#0a75a22a046272579d91919cb12d84f2756e8d30"
+ integrity sha512-lRyVQOeCDaIVtgfbowla32pzeDv2Obr8oR8Put5RdUBNRGr1VGPGQNGP6elWIpgK3YdpzqTOh4GyUGOureVeeA==
+ dependencies:
+ crc-32 "^1.2.0"
+ ethereumjs-util "^7.1.5"
-"@ethereum-waffle/provider@^3.4.4":
- version "3.4.4"
- resolved "https://registry.yarnpkg.com/@ethereum-waffle/provider/-/provider-3.4.4.tgz#398fc1f7eb91cc2df7d011272eacba8af0c7fffb"
- integrity sha512-GK8oKJAM8+PKy2nK08yDgl4A80mFuI8zBkE0C9GqTRYQqvuxIyXoLmJ5NZU9lIwyWVv5/KsoA11BgAv2jXE82g==
+"@ethereumjs/ethash@^1.1.0":
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/@ethereumjs/ethash/-/ethash-1.1.0.tgz#7c5918ffcaa9cb9c1dc7d12f77ef038c11fb83fb"
+ integrity sha512-/U7UOKW6BzpA+Vt+kISAoeDie1vAvY4Zy2KF5JJb+So7+1yKmJeJEHOGSnQIj330e9Zyl3L5Nae6VZyh2TJnAA==
dependencies:
- "@ethereum-waffle/ens" "^3.4.4"
- ethers "^5.5.2"
- ganache-core "^2.13.2"
- patch-package "^6.2.2"
- postinstall-postinstall "^2.1.0"
+ "@ethereumjs/block" "^3.5.0"
+ "@types/levelup" "^4.3.0"
+ buffer-xor "^2.0.1"
+ ethereumjs-util "^7.1.1"
+ miller-rabin "^4.0.0"
"@ethereumjs/rlp@^4.0.1":
version "4.0.1"
resolved "https://registry.yarnpkg.com/@ethereumjs/rlp/-/rlp-4.0.1.tgz#626fabfd9081baab3d0a3074b0c7ecaf674aaa41"
integrity sha512-tqsQiBQDQdmPWE1xkkBq4rlSW5QZpLOUJ5RJh2/9fug+q9tnUhuZoVLk7s0scUIKTOzEtR72DFBXI4WiZcMpvw==
+"@ethereumjs/tx@3.4.0":
+ version "3.4.0"
+ resolved "https://registry.yarnpkg.com/@ethereumjs/tx/-/tx-3.4.0.tgz#7eb1947eefa55eb9cf05b3ca116fb7a3dbd0bce7"
+ integrity sha512-WWUwg1PdjHKZZxPPo274ZuPsJCWV3SqATrEKQP1n2DrVYVP1aZIYpo/mFaA0BDoE0tIQmBeimRCEA0Lgil+yYw==
+ dependencies:
+ "@ethereumjs/common" "^2.6.0"
+ ethereumjs-util "^7.1.3"
+
+"@ethereumjs/tx@^3.4.0", "@ethereumjs/tx@^3.5.2":
+ version "3.5.2"
+ resolved "https://registry.yarnpkg.com/@ethereumjs/tx/-/tx-3.5.2.tgz#197b9b6299582ad84f9527ca961466fce2296c1c"
+ integrity sha512-gQDNJWKrSDGu2w7w0PzVXVBNMzb7wwdDOmOqczmhNjqFxFuIbhVJDwiGEnxFNC2/b8ifcZzY7MLcluizohRzNw==
+ dependencies:
+ "@ethereumjs/common" "^2.6.4"
+ ethereumjs-util "^7.1.5"
+
"@ethereumjs/util@^8.1.0":
version "8.1.0"
resolved "https://registry.yarnpkg.com/@ethereumjs/util/-/util-8.1.0.tgz#299df97fb6b034e0577ce9f94c7d9d1004409ed4"
@@ -847,20 +887,23 @@
ethereum-cryptography "^2.0.0"
micro-ftch "^0.3.1"
-"@ethersproject/abi@5.0.0-beta.153":
- version "5.0.0-beta.153"
- resolved "https://registry.yarnpkg.com/@ethersproject/abi/-/abi-5.0.0-beta.153.tgz#43a37172b33794e4562999f6e2d555b7599a8eee"
- integrity sha512-aXweZ1Z7vMNzJdLpR1CZUAIgnwjrZeUSvN9syCwlBaEBUFJmFY+HHnfuTI5vIhVs/mRkfJVrbEyl51JZQqyjAg==
- dependencies:
- "@ethersproject/address" ">=5.0.0-beta.128"
- "@ethersproject/bignumber" ">=5.0.0-beta.130"
- "@ethersproject/bytes" ">=5.0.0-beta.129"
- "@ethersproject/constants" ">=5.0.0-beta.128"
- "@ethersproject/hash" ">=5.0.0-beta.128"
- "@ethersproject/keccak256" ">=5.0.0-beta.127"
- "@ethersproject/logger" ">=5.0.0-beta.129"
- "@ethersproject/properties" ">=5.0.0-beta.131"
- "@ethersproject/strings" ">=5.0.0-beta.130"
+"@ethereumjs/vm@5.6.0":
+ version "5.6.0"
+ resolved "https://registry.yarnpkg.com/@ethereumjs/vm/-/vm-5.6.0.tgz#e0ca62af07de820143674c30b776b86c1983a464"
+ integrity sha512-J2m/OgjjiGdWF2P9bj/4LnZQ1zRoZhY8mRNVw/N3tXliGI8ai1sI1mlDPkLpeUUM4vq54gH6n0ZlSpz8U/qlYQ==
+ dependencies:
+ "@ethereumjs/block" "^3.6.0"
+ "@ethereumjs/blockchain" "^5.5.0"
+ "@ethereumjs/common" "^2.6.0"
+ "@ethereumjs/tx" "^3.4.0"
+ async-eventemitter "^0.2.4"
+ core-js-pure "^3.0.1"
+ debug "^2.2.0"
+ ethereumjs-util "^7.1.3"
+ functional-red-black-tree "^1.0.1"
+ mcl-wasm "^0.7.1"
+ merkle-patricia-tree "^4.2.2"
+ rustbn.js "~0.2.0"
"@ethersproject/abi@5.5.0":
version "5.5.0"
@@ -951,7 +994,7 @@
"@ethersproject/logger" "^5.5.0"
"@ethersproject/rlp" "^5.5.0"
-"@ethersproject/address@5.7.0", "@ethersproject/address@>=5.0.0-beta.128", "@ethersproject/address@^5.0.2", "@ethersproject/address@^5.5.0", "@ethersproject/address@^5.7.0":
+"@ethersproject/address@5.7.0", "@ethersproject/address@^5.0.2", "@ethersproject/address@^5.5.0", "@ethersproject/address@^5.7.0":
version "5.7.0"
resolved "https://registry.yarnpkg.com/@ethersproject/address/-/address-5.7.0.tgz#19b56c4d74a3b0a46bfdbb6cfcc0a153fc697f37"
integrity sha512-9wYhYt7aghVGo758POM5nqcOMaE168Q6aRLJZwUmiqSrAungkG74gSSeKEIR7ukixesdRZGPgVqme6vmxs1fkA==
@@ -1001,7 +1044,7 @@
"@ethersproject/logger" "^5.5.0"
bn.js "^4.11.9"
-"@ethersproject/bignumber@5.7.0", "@ethersproject/bignumber@>=5.0.0-beta.130", "@ethersproject/bignumber@^5.5.0", "@ethersproject/bignumber@^5.7.0":
+"@ethersproject/bignumber@5.7.0", "@ethersproject/bignumber@^5.5.0", "@ethersproject/bignumber@^5.7.0":
version "5.7.0"
resolved "https://registry.yarnpkg.com/@ethersproject/bignumber/-/bignumber-5.7.0.tgz#e2f03837f268ba655ffba03a57853e18a18dc9c2"
integrity sha512-n1CAdIHRWjSucQO3MC1zPSVgV/6dy/fjL9pMrPP9peL+QxEg9wOsVqwD4+818B6LUEtaXzVHQiuivzRoxPxUGw==
@@ -1017,7 +1060,7 @@
dependencies:
"@ethersproject/logger" "^5.5.0"
-"@ethersproject/bytes@5.7.0", "@ethersproject/bytes@>=5.0.0-beta.129", "@ethersproject/bytes@^5.5.0", "@ethersproject/bytes@^5.7.0":
+"@ethersproject/bytes@5.7.0", "@ethersproject/bytes@^5.5.0", "@ethersproject/bytes@^5.7.0":
version "5.7.0"
resolved "https://registry.yarnpkg.com/@ethersproject/bytes/-/bytes-5.7.0.tgz#a00f6ea8d7e7534d6d87f47188af1148d71f155d"
integrity sha512-nsbxwgFXWh9NyYWo+U8atvmMsSdKJprTcICAkvbBffT75qDocbuggBU0SJiVK2MuTrp0q+xvLkTnGMPK1+uA9A==
@@ -1031,7 +1074,7 @@
dependencies:
"@ethersproject/bignumber" "^5.5.0"
-"@ethersproject/constants@5.7.0", "@ethersproject/constants@>=5.0.0-beta.128", "@ethersproject/constants@^5.5.0", "@ethersproject/constants@^5.7.0":
+"@ethersproject/constants@5.7.0", "@ethersproject/constants@^5.5.0", "@ethersproject/constants@^5.7.0":
version "5.7.0"
resolved "https://registry.yarnpkg.com/@ethersproject/constants/-/constants-5.7.0.tgz#df80a9705a7e08984161f09014ea012d1c75295e"
integrity sha512-DHI+y5dBNvkpYUMiRQyxRBYBefZkJfo70VUkUAsRjcPs47muV9evftfZ0PJVCXYbAiCgght0DtcF9srFQmIgWA==
@@ -1084,7 +1127,7 @@
"@ethersproject/properties" "^5.5.0"
"@ethersproject/strings" "^5.5.0"
-"@ethersproject/hash@5.7.0", "@ethersproject/hash@>=5.0.0-beta.128", "@ethersproject/hash@^5.5.0", "@ethersproject/hash@^5.7.0":
+"@ethersproject/hash@5.7.0", "@ethersproject/hash@^5.5.0", "@ethersproject/hash@^5.7.0":
version "5.7.0"
resolved "https://registry.yarnpkg.com/@ethersproject/hash/-/hash-5.7.0.tgz#eb7aca84a588508369562e16e514b539ba5240a7"
integrity sha512-qX5WrQfnah1EFnO5zJv1v46a8HW0+E5xuBBDTwMFZLuVTx0tbU2kkx15NqdjxecrLGatQN9FGQKpb1FKdHCt+g==
@@ -1181,7 +1224,7 @@
"@ethersproject/bytes" "^5.5.0"
js-sha3 "0.8.0"
-"@ethersproject/keccak256@5.7.0", "@ethersproject/keccak256@>=5.0.0-beta.127", "@ethersproject/keccak256@^5.5.0", "@ethersproject/keccak256@^5.7.0":
+"@ethersproject/keccak256@5.7.0", "@ethersproject/keccak256@^5.5.0", "@ethersproject/keccak256@^5.7.0":
version "5.7.0"
resolved "https://registry.yarnpkg.com/@ethersproject/keccak256/-/keccak256-5.7.0.tgz#3186350c6e1cd6aba7940384ec7d6d9db01f335a"
integrity sha512-2UcPboeL/iW+pSg6vZ6ydF8tCnv3Iu/8tUmLLzWWGzxWKFFqOBQFLo6uLUv6BDrLgCDfN28RJ/wtByx+jZ4KBg==
@@ -1194,7 +1237,7 @@
resolved "https://registry.yarnpkg.com/@ethersproject/logger/-/logger-5.5.0.tgz#0c2caebeff98e10aefa5aef27d7441c7fd18cf5d"
integrity sha512-rIY/6WPm7T8n3qS2vuHTUBPdXHl+rGxWxW5okDfo9J4Z0+gRRZT0msvUdIJkE4/HS29GUMziwGaaKO2bWONBrg==
-"@ethersproject/logger@5.7.0", "@ethersproject/logger@>=5.0.0-beta.129", "@ethersproject/logger@^5.5.0", "@ethersproject/logger@^5.7.0":
+"@ethersproject/logger@5.7.0", "@ethersproject/logger@^5.5.0", "@ethersproject/logger@^5.7.0":
version "5.7.0"
resolved "https://registry.yarnpkg.com/@ethersproject/logger/-/logger-5.7.0.tgz#6ce9ae168e74fecf287be17062b590852c311892"
integrity sha512-0odtFdXu/XHtjQXJYA3u9G0G8btm0ND5Cu8M7i5vhEcE8/HmF4Lbdqanwyv4uQTr2tx6b7fQRmgLrsnpQlmnig==
@@ -1236,7 +1279,7 @@
dependencies:
"@ethersproject/logger" "^5.5.0"
-"@ethersproject/properties@5.7.0", "@ethersproject/properties@>=5.0.0-beta.131", "@ethersproject/properties@^5.5.0", "@ethersproject/properties@^5.7.0":
+"@ethersproject/properties@5.7.0", "@ethersproject/properties@^5.5.0", "@ethersproject/properties@^5.7.0":
version "5.7.0"
resolved "https://registry.yarnpkg.com/@ethersproject/properties/-/properties-5.7.0.tgz#a6e12cb0439b878aaf470f1902a176033067ed30"
integrity sha512-J87jy8suntrAkIZtecpxEPxY//szqr1mlBaYlQ0r4RCaiD2hjheqF9s1LVE8vVuJCXisjIP+JgtK/Do54ej4Sw==
@@ -1401,7 +1444,7 @@
"@ethersproject/constants" "^5.5.0"
"@ethersproject/logger" "^5.5.0"
-"@ethersproject/strings@5.7.0", "@ethersproject/strings@>=5.0.0-beta.130", "@ethersproject/strings@^5.5.0", "@ethersproject/strings@^5.7.0":
+"@ethersproject/strings@5.7.0", "@ethersproject/strings@^5.5.0", "@ethersproject/strings@^5.7.0":
version "5.7.0"
resolved "https://registry.yarnpkg.com/@ethersproject/strings/-/strings-5.7.0.tgz#54c9d2a7c57ae8f1205c88a9d3a56471e14d5ed2"
integrity sha512-/9nu+lj0YswRNSH0NXYqrh8775XNyEdUQAuf3f+SmOrnVewcJ5SBNAjF7lpgehKi4abvNNXyf+HX86czCdJ8Mg==
@@ -1425,7 +1468,7 @@
"@ethersproject/rlp" "^5.5.0"
"@ethersproject/signing-key" "^5.5.0"
-"@ethersproject/transactions@5.7.0", "@ethersproject/transactions@^5.0.0-beta.135", "@ethersproject/transactions@^5.5.0", "@ethersproject/transactions@^5.7.0":
+"@ethersproject/transactions@5.7.0", "@ethersproject/transactions@^5.5.0", "@ethersproject/transactions@^5.7.0":
version "5.7.0"
resolved "https://registry.yarnpkg.com/@ethersproject/transactions/-/transactions-5.7.0.tgz#91318fc24063e057885a6af13fdb703e1f993d3b"
integrity sha512-kmcNicCp1lp8qanMTC3RIikGgoJ80ztTyvtsFvCYpSCfkjhD0jZ2LOrnbcuxuToLIUYYf+4XwD1rP+B/erDIhQ==
@@ -1549,6 +1592,68 @@
resolved "https://registry.yarnpkg.com/@fastify/busboy/-/busboy-2.0.0.tgz#f22824caff3ae506b18207bad4126dbc6ccdb6b8"
integrity sha512-JUFJad5lv7jxj926GPgymrWQxxjPYuJNiNjNMzqT+HiuP6Vl3dk5xzG+8sTX96np0ZAluvaMzPsjhHZ5rNuNQQ==
+"@ganache/ethereum-address@0.1.4":
+ version "0.1.4"
+ resolved "https://registry.yarnpkg.com/@ganache/ethereum-address/-/ethereum-address-0.1.4.tgz#0e6d66f4a24f64bf687cb3ff7358fb85b9d9005e"
+ integrity sha512-sTkU0M9z2nZUzDeHRzzGlW724xhMLXo2LeX1hixbnjHWY1Zg1hkqORywVfl+g5uOO8ht8T0v+34IxNxAhmWlbw==
+ dependencies:
+ "@ganache/utils" "0.1.4"
+
+"@ganache/ethereum-options@0.1.4":
+ version "0.1.4"
+ resolved "https://registry.yarnpkg.com/@ganache/ethereum-options/-/ethereum-options-0.1.4.tgz#6a559abb44225e2b8741a8f78a19a46714a71cd6"
+ integrity sha512-i4l46taoK2yC41FPkcoDlEVoqHS52wcbHPqJtYETRWqpOaoj9hAg/EJIHLb1t6Nhva2CdTO84bG+qlzlTxjAHw==
+ dependencies:
+ "@ganache/ethereum-address" "0.1.4"
+ "@ganache/ethereum-utils" "0.1.4"
+ "@ganache/options" "0.1.4"
+ "@ganache/utils" "0.1.4"
+ bip39 "3.0.4"
+ seedrandom "3.0.5"
+
+"@ganache/ethereum-utils@0.1.4":
+ version "0.1.4"
+ resolved "https://registry.yarnpkg.com/@ganache/ethereum-utils/-/ethereum-utils-0.1.4.tgz#fae4b5b9e642e751ff1fa0cd7316c92996317257"
+ integrity sha512-FKXF3zcdDrIoCqovJmHLKZLrJ43234Em2sde/3urUT/10gSgnwlpFmrv2LUMAmSbX3lgZhW/aSs8krGhDevDAg==
+ dependencies:
+ "@ethereumjs/common" "2.6.0"
+ "@ethereumjs/tx" "3.4.0"
+ "@ethereumjs/vm" "5.6.0"
+ "@ganache/ethereum-address" "0.1.4"
+ "@ganache/rlp" "0.1.4"
+ "@ganache/utils" "0.1.4"
+ emittery "0.10.0"
+ ethereumjs-abi "0.6.8"
+ ethereumjs-util "7.1.3"
+
+"@ganache/options@0.1.4":
+ version "0.1.4"
+ resolved "https://registry.yarnpkg.com/@ganache/options/-/options-0.1.4.tgz#325b07e6de85094667aaaaf3d653e32404a04b78"
+ integrity sha512-zAe/craqNuPz512XQY33MOAG6Si1Xp0hCvfzkBfj2qkuPcbJCq6W/eQ5MB6SbXHrICsHrZOaelyqjuhSEmjXRw==
+ dependencies:
+ "@ganache/utils" "0.1.4"
+ bip39 "3.0.4"
+ seedrandom "3.0.5"
+
+"@ganache/rlp@0.1.4":
+ version "0.1.4"
+ resolved "https://registry.yarnpkg.com/@ganache/rlp/-/rlp-0.1.4.tgz#f4043afda83e1a14a4f80607b103daf166a9b374"
+ integrity sha512-Do3D1H6JmhikB+6rHviGqkrNywou/liVeFiKIpOBLynIpvZhRCgn3SEDxyy/JovcaozTo/BynHumfs5R085MFQ==
+ dependencies:
+ "@ganache/utils" "0.1.4"
+ rlp "2.2.6"
+
+"@ganache/utils@0.1.4":
+ version "0.1.4"
+ resolved "https://registry.yarnpkg.com/@ganache/utils/-/utils-0.1.4.tgz#25d60d7689e3dda6a8a7ad70e3646f07c2c39a1f"
+ integrity sha512-oatUueU3XuXbUbUlkyxeLLH3LzFZ4y5aSkNbx6tjSIhVTPeh+AuBKYt4eQ73FFcTB3nj/gZoslgAh5CN7O369w==
+ dependencies:
+ emittery "0.10.0"
+ keccak "3.0.1"
+ seedrandom "3.0.5"
+ optionalDependencies:
+ "@trufflesuite/bigint-buffer" "1.1.9"
+
"@humanwhocodes/config-array@^0.11.13":
version "0.11.13"
resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.11.13.tgz#075dc9684f40a531d9b26b0822153c1e832ee297"
@@ -1587,6 +1692,18 @@
resolved "https://registry.yarnpkg.com/@iarna/toml/-/toml-2.2.5.tgz#b32366c89b43c6f8cefbdefac778b9c828e3ba8c"
integrity sha512-trnsAYxU3xnS1gPHPyU961coFyLkh4gAD/0zQ5mymY4yOZ+CYvsPqUbOFSw0aDM4y0tV7tiFxL/1XfXPNC6IPg==
+"@isaacs/cliui@^8.0.2":
+ version "8.0.2"
+ resolved "https://registry.yarnpkg.com/@isaacs/cliui/-/cliui-8.0.2.tgz#b37667b7bc181c168782259bab42474fbf52b550"
+ integrity sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==
+ dependencies:
+ string-width "^5.1.2"
+ string-width-cjs "npm:string-width@^4.2.0"
+ strip-ansi "^7.0.1"
+ strip-ansi-cjs "npm:strip-ansi@^6.0.1"
+ wrap-ansi "^8.1.0"
+ wrap-ansi-cjs "npm:wrap-ansi@^7.0.0"
+
"@istanbuljs/load-nyc-config@^1.0.0":
version "1.1.0"
resolved "https://registry.yarnpkg.com/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz#fd3db1d59ecf7cf121e80650bb86712f9b55eced"
@@ -1835,20 +1952,6 @@
"@jridgewell/resolve-uri" "^3.1.0"
"@jridgewell/sourcemap-codec" "^1.4.14"
-"@ljharb/resumer@~0.0.1":
- version "0.0.1"
- resolved "https://registry.yarnpkg.com/@ljharb/resumer/-/resumer-0.0.1.tgz#8a940a9192dd31f6a1df17564bbd26dc6ad3e68d"
- integrity sha512-skQiAOrCfO7vRTq53cxznMpks7wS1va95UCidALlOVWqvBAzwPVErwizDwoMqNVMEn1mDq0utxZd02eIrvF1lw==
- dependencies:
- "@ljharb/through" "^2.3.9"
-
-"@ljharb/through@^2.3.9", "@ljharb/through@~2.3.9":
- version "2.3.11"
- resolved "https://registry.yarnpkg.com/@ljharb/through/-/through-2.3.11.tgz#783600ff12c06f21a76cc26e33abd0b1595092f9"
- integrity sha512-ccfcIDlogiXNq5KcbAwbaO7lMh3Tm1i3khMPYpxlK8hH/W53zN81KM9coerRLOnTGu3nfXIniAmQbRI9OxbC0w==
- dependencies:
- call-bind "^1.0.2"
-
"@matterlabs/eslint-config-typescript@^1.1.2":
version "1.1.2"
resolved "https://registry.yarnpkg.com/@matterlabs/eslint-config-typescript/-/eslint-config-typescript-1.1.2.tgz#a9be4e56aedf298800f247c5049fc412f8b301a7"
@@ -1920,9 +2023,9 @@
dockerode "^3.3.4"
"@matterlabs/hardhat-zksync-solc@^1.0.5":
- version "1.0.5"
- resolved "https://registry.yarnpkg.com/@matterlabs/hardhat-zksync-solc/-/hardhat-zksync-solc-1.0.5.tgz#9f128da0b47c147216dbd84c82bc58c190052afe"
- integrity sha512-IBWvbGJSISNtWIz/4VBfV1NweVYK7xHmy787o6fDjntxP5P4XEklTJU3/pNBQdL5fZbIrQqMmXFMOwUXnuEY6Q==
+ version "1.0.6"
+ resolved "https://registry.yarnpkg.com/@matterlabs/hardhat-zksync-solc/-/hardhat-zksync-solc-1.0.6.tgz#7ef8438e6bb15244691600e2afa77aaff7dff9f0"
+ integrity sha512-0icYSufXba/Bbb7v2iXuZJ+IbYsiNpR4Wy6UizHnGuFw3OMHgh+saebQphuaN9yyRL2UPGZbPkQFHWBLZj5/xQ==
dependencies:
"@nomiclabs/hardhat-docker" "^2.0.0"
chalk "4.1.2"
@@ -2439,31 +2542,26 @@
resolved "https://registry.yarnpkg.com/@nomiclabs/hardhat-waffle/-/hardhat-waffle-2.0.6.tgz#d11cb063a5f61a77806053e54009c40ddee49a54"
integrity sha512-+Wz0hwmJGSI17B+BhU/qFRZ1l6/xMW82QGXE/Gi+WTmwgJrQefuBs1lIf7hzQ1hLk6hpkvb/zwcNkpVKRYTQYg==
-"@openzeppelin/contracts-upgradeable@4.6.0":
- version "4.6.0"
- resolved "https://registry.yarnpkg.com/@openzeppelin/contracts-upgradeable/-/contracts-upgradeable-4.6.0.tgz#1bf55f230f008554d4c6fe25eb165b85112108b0"
- integrity sha512-5OnVuO4HlkjSCJO165a4i2Pu1zQGzMs//o54LPrwUgxvEO2P3ax1QuaSI0cEHHTveA77guS0PnNugpR2JMsPfA==
-
-"@openzeppelin/contracts-upgradeable@4.8.0":
- version "4.8.0"
- resolved "https://registry.yarnpkg.com/@openzeppelin/contracts-upgradeable/-/contracts-upgradeable-4.8.0.tgz#26688982f46969018e3ed3199e72a07c8d114275"
- integrity sha512-5GeFgqMiDlqGT8EdORadp1ntGF0qzWZLmEY7Wbp/yVhN7/B3NNzCxujuI77ktlyG81N3CUZP8cZe3ZAQ/cW10w==
-
-"@openzeppelin/contracts@4.6.0":
- version "4.6.0"
- resolved "https://registry.yarnpkg.com/@openzeppelin/contracts/-/contracts-4.6.0.tgz#c91cf64bc27f573836dba4122758b4743418c1b3"
- integrity sha512-8vi4d50NNya/bQqCmaVzvHNmwHvS0OBKb7HNtuNwEE3scXWrP31fKQoGxNMT+KbzmrNZzatE3QK5p2gFONI/hg==
+"@openzeppelin/contracts-upgradeable@4.9.5":
+ version "4.9.5"
+ resolved "https://registry.yarnpkg.com/@openzeppelin/contracts-upgradeable/-/contracts-upgradeable-4.9.5.tgz#572b5da102fc9be1d73f34968e0ca56765969812"
+ integrity sha512-f7L1//4sLlflAN7fVzJLoRedrf5Na3Oal5PZfIq55NFcVZ90EpV1q5xOvL4lFvg3MNICSDr2hH0JUBxwlxcoPg==
-"@openzeppelin/contracts@4.8.0":
- version "4.8.0"
- resolved "https://registry.yarnpkg.com/@openzeppelin/contracts/-/contracts-4.8.0.tgz#6854c37df205dd2c056bdfa1b853f5d732109109"
- integrity sha512-AGuwhRRL+NaKx73WKRNzeCxOCOCxpaqF+kp8TJ89QzAipSwZy/NoflkWaL9bywXFRhIzXt8j38sfF7KBKCPWLw==
+"@openzeppelin/contracts@4.9.5":
+ version "4.9.5"
+ resolved "https://registry.yarnpkg.com/@openzeppelin/contracts/-/contracts-4.9.5.tgz#1eed23d4844c861a1835b5d33507c1017fa98de8"
+ integrity sha512-ZK+W5mVhRppff9BE6YdR8CC52C8zAvsVAiWhEtQ5+oNxFE6h1WdeWo+FJSF8KKvtxxVYZ7MTP/5KoVpAU3aSWg==
"@openzeppelin/contracts@^4.8.0":
version "4.9.3"
resolved "https://registry.yarnpkg.com/@openzeppelin/contracts/-/contracts-4.9.3.tgz#00d7a8cf35a475b160b3f0293a6403c511099364"
integrity sha512-He3LieZ1pP2TNt5JbkPA4PNT9WC3gOTOlDcFGJW4Le4QKqwmiNJCRt44APfxMxvq7OugU/cqYuPcSBzOw38DAg==
+"@pkgjs/parseargs@^0.11.0":
+ version "0.11.0"
+ resolved "https://registry.yarnpkg.com/@pkgjs/parseargs/-/parseargs-0.11.0.tgz#a77ea742fab25775145434eb1d2328cf5013ac33"
+ integrity sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==
+
"@pkgr/utils@^2.4.2":
version "2.4.2"
resolved "https://registry.yarnpkg.com/@pkgr/utils/-/utils-2.4.2.tgz#9e638bbe9a6a6f165580dc943f138fd3309a2cbc"
@@ -2678,16 +2776,6 @@
resolved "https://registry.yarnpkg.com/@sinclair/typebox/-/typebox-0.27.8.tgz#6667fac16c436b5434a387a34dedb013198f6e6e"
integrity sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==
-"@sindresorhus/is@^0.14.0":
- version "0.14.0"
- resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-0.14.0.tgz#9fb3a3cf3132328151f353de4632e01e52102bea"
- integrity sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==
-
-"@sindresorhus/is@^4.0.0":
- version "4.6.0"
- resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-4.6.0.tgz#3c7c9c46e678feefe7a2e5bb609d3dbd665ffb3f"
- integrity sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==
-
"@sinonjs/commons@^3.0.0":
version "3.0.0"
resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-3.0.0.tgz#beb434fe875d965265e04722ccfc21df7f755d72"
@@ -2723,19 +2811,19 @@
dependencies:
antlr4ts "^0.5.0-alpha.4"
-"@szmarczak/http-timer@^1.1.2":
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/@szmarczak/http-timer/-/http-timer-1.1.2.tgz#b1665e2c461a2cd92f4c1bbf50d5454de0d4b421"
- integrity sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==
+"@trufflesuite/bigint-buffer@1.1.10":
+ version "1.1.10"
+ resolved "https://registry.yarnpkg.com/@trufflesuite/bigint-buffer/-/bigint-buffer-1.1.10.tgz#a1d9ca22d3cad1a138b78baaf15543637a3e1692"
+ integrity sha512-pYIQC5EcMmID74t26GCC67946mgTJFiLXOT/BYozgrd4UEY2JHEGLhWi9cMiQCt5BSqFEvKkCHNnoj82SRjiEw==
dependencies:
- defer-to-connect "^1.0.1"
+ node-gyp-build "4.4.0"
-"@szmarczak/http-timer@^4.0.5":
- version "4.0.6"
- resolved "https://registry.yarnpkg.com/@szmarczak/http-timer/-/http-timer-4.0.6.tgz#b4a914bb62e7c272d4e5989fe4440f812ab1d807"
- integrity sha512-4BAffykYOgO+5nzBWYwE3W90sBgLJoUPRWWcL8wlyiM8IB8ipJz3UMJ9KXQd1RKQXpKp8Tutn80HZtWsu2u76w==
+"@trufflesuite/bigint-buffer@1.1.9":
+ version "1.1.9"
+ resolved "https://registry.yarnpkg.com/@trufflesuite/bigint-buffer/-/bigint-buffer-1.1.9.tgz#e2604d76e1e4747b74376d68f1312f9944d0d75d"
+ integrity sha512-bdM5cEGCOhDSwminryHJbRmXc1x7dPKg6Pqns3qyTwFlxsqUgxE29lsERS3PlIW1HTjoIGMUqsk1zQQwST1Yxw==
dependencies:
- defer-to-connect "^2.0.0"
+ node-gyp-build "4.3.0"
"@ts-morph/common@~0.20.0":
version "0.20.0"
@@ -2767,6 +2855,14 @@
resolved "https://registry.yarnpkg.com/@tsconfig/node16/-/node16-1.0.4.tgz#0b92dcc0cc1c81f6f306a381f28e31b1a56536e9"
integrity sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==
+"@typechain/ethers-v5@^10.0.0":
+ version "10.2.1"
+ resolved "https://registry.yarnpkg.com/@typechain/ethers-v5/-/ethers-v5-10.2.1.tgz#50241e6957683281ecfa03fb5a6724d8a3ce2391"
+ integrity sha512-n3tQmCZjRE6IU4h6lqUGiQ1j866n5MTCBJreNEHHVWXa2u9GJTaeYyU1/k+1qLutkyw+sS6VAN+AbeiTqsxd/A==
+ dependencies:
+ lodash "^4.17.15"
+ ts-essentials "^7.0.1"
+
"@typechain/ethers-v5@^2.0.0":
version "2.0.0"
resolved "https://registry.yarnpkg.com/@typechain/ethers-v5/-/ethers-v5-2.0.0.tgz#cd3ca1590240d587ca301f4c029b67bfccd08810"
@@ -2774,6 +2870,11 @@
dependencies:
ethers "^5.0.2"
+"@types/abstract-leveldown@*":
+ version "7.2.5"
+ resolved "https://registry.yarnpkg.com/@types/abstract-leveldown/-/abstract-leveldown-7.2.5.tgz#db2cf364c159fb1f12be6cd3549f56387eaf8d73"
+ integrity sha512-/2B0nQF4UdupuxeKTJA2+Rj1D+uDemo6P4kMwKCpbfpnzeVaWSELTsAw4Lxn3VJD6APtRrZOCuYo+4nHUQfTfg==
+
"@types/argparse@^1.0.36":
version "1.0.38"
resolved "https://registry.yarnpkg.com/@types/argparse/-/argparse-1.0.38.tgz#a81fd8606d481f873a3800c6ebae4f1d768a56a9"
@@ -2812,7 +2913,7 @@
dependencies:
"@babel/types" "^7.20.7"
-"@types/bn.js@^4.11.3", "@types/bn.js@^4.11.5":
+"@types/bn.js@^4.11.3":
version "4.11.6"
resolved "https://registry.yarnpkg.com/@types/bn.js/-/bn.js-4.11.6.tgz#c306c70d9358aaea33cd4eda092a742b9505967c"
integrity sha512-pqr857jrp2kPuO9uRjZ3PwnJTjoQy+fcdxvBTvHm6dkmEL9q+hDD/2j/0ELOBPtPnS8LjCX0gI9nbl8lVkadpg==
@@ -2826,16 +2927,6 @@
dependencies:
"@types/node" "*"
-"@types/cacheable-request@^6.0.1":
- version "6.0.3"
- resolved "https://registry.yarnpkg.com/@types/cacheable-request/-/cacheable-request-6.0.3.tgz#a430b3260466ca7b5ca5bfd735693b36e7a9d183"
- integrity sha512-IQ3EbTzGxIigb1I3qPZc1rWJnH0BmSKv5QYTalEwweFvyBDLSAe24zP0le/hyi7ecGfZVlIVAg4BZqb8WBwKqw==
- dependencies:
- "@types/http-cache-semantics" "*"
- "@types/keyv" "^3.1.4"
- "@types/node" "*"
- "@types/responselike" "^1.0.0"
-
"@types/chai-as-promised@^7.1.3", "@types/chai-as-promised@^7.1.4":
version "7.1.8"
resolved "https://registry.yarnpkg.com/@types/chai-as-promised/-/chai-as-promised-7.1.8.tgz#f2b3d82d53c59626b5d6bbc087667ccb4b677fe9"
@@ -2887,11 +2978,6 @@
dependencies:
"@types/node" "*"
-"@types/http-cache-semantics@*":
- version "4.0.4"
- resolved "https://registry.yarnpkg.com/@types/http-cache-semantics/-/http-cache-semantics-4.0.4.tgz#b979ebad3919799c979b17c72621c0bc0a31c6c4"
- integrity sha512-1m0bIFVc7eJWyve9S0RnuRgcQqF/Xd5QsUZAZeQFr1Q3/p9JWoQQEqmVy+DPTNpGXwhgIetAoYF8JSc33q29QA==
-
"@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0", "@types/istanbul-lib-coverage@^2.0.1":
version "2.0.6"
resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz#7739c232a1fee9b4d3ce8985f314c0c6d33549d7"
@@ -2929,11 +3015,18 @@
resolved "https://registry.yarnpkg.com/@types/json5/-/json5-0.0.29.tgz#ee28707ae94e11d2b827bcbe5270bcea7f3e71ee"
integrity sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==
-"@types/keyv@^3.1.4":
- version "3.1.4"
- resolved "https://registry.yarnpkg.com/@types/keyv/-/keyv-3.1.4.tgz#3ccdb1c6751b0c7e52300bcdacd5bcbf8faa75b6"
- integrity sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==
+"@types/level-errors@*":
+ version "3.0.2"
+ resolved "https://registry.yarnpkg.com/@types/level-errors/-/level-errors-3.0.2.tgz#f33ec813c50780b547463da9ad8acac89ee457d9"
+ integrity sha512-gyZHbcQ2X5hNXf/9KS2qGEmgDe9EN2WDM3rJ5Ele467C0nA1sLhtmv1bZiPMDYfAYCfPWft0uQIaTvXbASSTRA==
+
+"@types/levelup@^4.3.0":
+ version "4.3.3"
+ resolved "https://registry.yarnpkg.com/@types/levelup/-/levelup-4.3.3.tgz#4dc2b77db079b1cf855562ad52321aa4241b8ef4"
+ integrity sha512-K+OTIjJcZHVlZQN1HmU64VtrC0jC3dXWQozuEIR9zVvltIk90zaGPM2AgT+fIkChpzHhFE3YnvFLCbLtzAmexA==
dependencies:
+ "@types/abstract-leveldown" "*"
+ "@types/level-errors" "*"
"@types/node" "*"
"@types/lodash@^4.14.199":
@@ -2941,7 +3034,7 @@
resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.14.202.tgz#f09dbd2fb082d507178b2f2a5c7e74bd72ff98f8"
integrity sha512-OvlIYQK9tNneDlS0VN54LLd5uiPCBOp7gS5Z0f1mjoJYBrtStzgmJBxONW3U6OZqdtNzZPmn9BS/7WI7BFFcFQ==
-"@types/lru-cache@^5.1.0":
+"@types/lru-cache@5.1.1", "@types/lru-cache@^5.1.0":
version "5.1.1"
resolved "https://registry.yarnpkg.com/@types/lru-cache/-/lru-cache-5.1.1.tgz#c48c2e27b65d2a153b19bfc1a317e30872e01eef"
integrity sha512-ssE3Vlrys7sdIzs5LOxCzTVMsU7i9oa/IaW92wF32JFb3CVczqOkru2xspuKczHEbG3nvmPY7IFqVmGGHdNbYw==
@@ -2975,14 +3068,6 @@
resolved "https://registry.yarnpkg.com/@types/mocha/-/mocha-8.2.3.tgz#bbeb55fbc73f28ea6de601fbfa4613f58d785323"
integrity sha512-ekGvFhFgrc2zYQoX4JeZPmVzZxw6Dtllga7iGHzfbYIYkAMUx/sAFP2GdFpLff+vdHXu5fl7WX9AT+TtqYcsyw==
-"@types/node-fetch@^2.5.5":
- version "2.6.9"
- resolved "https://registry.yarnpkg.com/@types/node-fetch/-/node-fetch-2.6.9.tgz#15f529d247f1ede1824f7e7acdaa192d5f28071e"
- integrity sha512-bQVlnMLFJ2d35DkPNjEPmd9ueO/rh5EiaZt2bhqiSarPjZIuIV6bPQVqcrEyvNo+AfTrRGVazle1tl597w3gfA==
- dependencies:
- "@types/node" "*"
- form-data "^4.0.0"
-
"@types/node-fetch@^2.5.7":
version "2.6.7"
resolved "https://registry.yarnpkg.com/@types/node-fetch/-/node-fetch-2.6.7.tgz#a1abe2ce24228b58ad97f99480fdcf9bbc6ab16d"
@@ -2991,6 +3076,14 @@
"@types/node" "*"
form-data "^4.0.0"
+"@types/node-fetch@^2.6.1":
+ version "2.6.10"
+ resolved "https://registry.yarnpkg.com/@types/node-fetch/-/node-fetch-2.6.10.tgz#ff5c1ceacab782f2b7ce69957d38c1c27b0dc469"
+ integrity sha512-PPpPK6F9ALFTn59Ka3BaL+qGuipRfxNE8qVgkp0bVixeiR2c2/L+IVOiBdu9JhhT22sWnQEp6YyHGI2b2+CMcA==
+ dependencies:
+ "@types/node" "*"
+ form-data "^4.0.0"
+
"@types/node@*":
version "20.8.10"
resolved "https://registry.yarnpkg.com/@types/node/-/node-20.8.10.tgz#a5448b895c753ae929c26ce85cab557c6d4a365e"
@@ -2998,6 +3091,11 @@
dependencies:
undici-types "~5.26.4"
+"@types/node@11.11.6":
+ version "11.11.6"
+ resolved "https://registry.yarnpkg.com/@types/node/-/node-11.11.6.tgz#df929d1bb2eee5afdda598a41930fe50b43eaa6a"
+ integrity sha512-Exw4yUWMBXM3X+8oqzJNRqZSwUAaS4+7NdvHqQuFi/d+synz++xmX3QIf+BFqneW8N31R8Ky+sikfZUXq07ggQ==
+
"@types/node@>=13.7.0":
version "20.10.4"
resolved "https://registry.yarnpkg.com/@types/node/-/node-20.10.4.tgz#b246fd84d55d5b1b71bf51f964bd514409347198"
@@ -3010,11 +3108,6 @@
resolved "https://registry.yarnpkg.com/@types/node/-/node-10.17.60.tgz#35f3d6213daed95da7f0f73e75bcc6980e90597b"
integrity sha512-F0KIgDJfy2nA3zMLmWGKxcH2ZVEtCZXHHdOQs2gSaQ27+lNeEfGxzkIw90aXswATX7AZ33tahPbzy6KAfUreVw==
-"@types/node@^12.12.6":
- version "12.20.55"
- resolved "https://registry.yarnpkg.com/@types/node/-/node-12.20.55.tgz#c329cbd434c42164f846b909bd6f85b5537f6240"
- integrity sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==
-
"@types/node@^14.14.5", "@types/node@^14.6.1":
version "14.18.63"
resolved "https://registry.yarnpkg.com/@types/node/-/node-14.18.63.tgz#1788fa8da838dbb5f9ea994b834278205db6ca2b"
@@ -3071,13 +3164,6 @@
dependencies:
"@types/node" "*"
-"@types/responselike@^1.0.0":
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/@types/responselike/-/responselike-1.0.3.tgz#cc29706f0a397cfe6df89debfe4bf5cea159db50"
- integrity sha512-H/+L+UkTV33uf49PH5pCAUBVPNj2nDBXTN+qS1dOwyyg24l3CcicicCA7ca+HMvJBZcFgl5r8e+RR6elsb4Lyw==
- dependencies:
- "@types/node" "*"
-
"@types/secp256k1@^4.0.1":
version "4.0.5"
resolved "https://registry.yarnpkg.com/@types/secp256k1/-/secp256k1-4.0.5.tgz#14b1766b4fbc198b0af5599d9fd21c89056633ce"
@@ -3085,6 +3171,11 @@
dependencies:
"@types/node" "*"
+"@types/seedrandom@3.0.1":
+ version "3.0.1"
+ resolved "https://registry.yarnpkg.com/@types/seedrandom/-/seedrandom-3.0.1.tgz#1254750a4fec4aff2ebec088ccd0bb02e91fedb4"
+ integrity sha512-giB9gzDeiCeloIXDgzFBCgjj1k4WxcDrZtGl6h1IqmUPlxF+Nx8Ve+96QCyDZ/HseB/uvDsKbpib9hU5cU53pw==
+
"@types/semver@^7.5.0":
version "7.5.4"
resolved "https://registry.yarnpkg.com/@types/semver/-/semver-7.5.4.tgz#0a41252ad431c473158b22f9bfb9a63df7541cff"
@@ -3287,11 +3378,6 @@
resolved "https://registry.yarnpkg.com/@ungap/structured-clone/-/structured-clone-1.2.0.tgz#756641adb587851b5ccb3e095daf27ae581c8406"
integrity sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==
-"@yarnpkg/lockfile@^1.1.0":
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz#e77a97fbd345b76d83245edcd17d393b1b41fb31"
- integrity sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==
-
JSONStream@1.3.2:
version "1.3.2"
resolved "https://registry.yarnpkg.com/JSONStream/-/JSONStream-1.3.2.tgz#c102371b6ec3a7cf3b847ca00c20bb0fce4c6dea"
@@ -3330,42 +3416,40 @@ abstract-level@^1.0.0, abstract-level@^1.0.2, abstract-level@^1.0.3:
module-error "^1.0.1"
queue-microtask "^1.2.3"
-abstract-leveldown@3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/abstract-leveldown/-/abstract-leveldown-3.0.0.tgz#5cb89f958a44f526779d740d1440e743e0c30a57"
- integrity sha512-KUWx9UWGQD12zsmLNj64/pndaz4iJh/Pj7nopgkfDG6RlCcbMZvT6+9l7dchK4idog2Is8VdC/PvNbFuFmalIQ==
- dependencies:
- xtend "~4.0.0"
-
-abstract-leveldown@^2.4.1, abstract-leveldown@~2.7.1:
- version "2.7.2"
- resolved "https://registry.yarnpkg.com/abstract-leveldown/-/abstract-leveldown-2.7.2.tgz#87a44d7ebebc341d59665204834c8b7e0932cc93"
- integrity sha512-+OVvxH2rHVEhWLdbudP6p0+dNMXu8JA1CbhP19T8paTYAcX7oJ4OVjT+ZUVpv7mITxXHqDMej+GdqXBmXkw09w==
+abstract-leveldown@^6.2.1:
+ version "6.3.0"
+ resolved "https://registry.yarnpkg.com/abstract-leveldown/-/abstract-leveldown-6.3.0.tgz#d25221d1e6612f820c35963ba4bd739928f6026a"
+ integrity sha512-TU5nlYgta8YrBMNpc9FwQzRbiXsj49gsALsXadbGHt9CROPzX5fB0rWDR5mtdpOOKa5XqRFpbj1QroPAoPzVjQ==
dependencies:
+ buffer "^5.5.0"
+ immediate "^3.2.3"
+ level-concat-iterator "~2.0.0"
+ level-supports "~1.0.0"
xtend "~4.0.0"
-abstract-leveldown@^5.0.0, abstract-leveldown@~5.0.0:
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/abstract-leveldown/-/abstract-leveldown-5.0.0.tgz#f7128e1f86ccabf7d2893077ce5d06d798e386c6"
- integrity sha512-5mU5P1gXtsMIXg65/rsYGsi93+MlogXZ9FA8JnwKurHQg64bfXwGYVdVdijNTVNOlAsuIiOwHdvFFD5JqCJQ7A==
+abstract-leveldown@^7.2.0:
+ version "7.2.0"
+ resolved "https://registry.yarnpkg.com/abstract-leveldown/-/abstract-leveldown-7.2.0.tgz#08d19d4e26fb5be426f7a57004851b39e1795a2e"
+ integrity sha512-DnhQwcFEaYsvYDnACLZhMmCWd3rkOeEvglpa4q5i/5Jlm3UIsWaxVzuXvDLFCSCWRO3yy2/+V/G7FusFgejnfQ==
dependencies:
- xtend "~4.0.0"
+ buffer "^6.0.3"
+ catering "^2.0.0"
+ is-buffer "^2.0.5"
+ level-concat-iterator "^3.0.0"
+ level-supports "^2.0.1"
+ queue-microtask "^1.2.3"
-abstract-leveldown@~2.6.0:
- version "2.6.3"
- resolved "https://registry.yarnpkg.com/abstract-leveldown/-/abstract-leveldown-2.6.3.tgz#1c5e8c6a5ef965ae8c35dfb3a8770c476b82c4b8"
- integrity sha512-2++wDf/DYqkPR3o5tbfdhF96EfMApo1GpPfzOsR/ZYXdkSmELlvOOEAl9iKkRsktMPHdGjO4rtkBpf2I7TiTeA==
+abstract-leveldown@~6.2.1:
+ version "6.2.3"
+ resolved "https://registry.yarnpkg.com/abstract-leveldown/-/abstract-leveldown-6.2.3.tgz#036543d87e3710f2528e47040bc3261b77a9a8eb"
+ integrity sha512-BsLm5vFMRUrrLeCcRc+G0t2qOaTzpoJQLOubq2XM72eNpjF5UdU5o/5NvlNhx95XHcAvcl8OMXr4mlg/fRgUXQ==
dependencies:
+ buffer "^5.5.0"
+ immediate "^3.2.3"
+ level-concat-iterator "~2.0.0"
+ level-supports "~1.0.0"
xtend "~4.0.0"
-accepts@~1.3.8:
- version "1.3.8"
- resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.8.tgz#0bf0be125b67014adcb0b0921e62db7bffe16b2e"
- integrity sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==
- dependencies:
- mime-types "~2.1.34"
- negotiator "0.6.3"
-
acorn-jsx@^5.3.1, acorn-jsx@^5.3.2:
version "5.3.2"
resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937"
@@ -3401,11 +3485,6 @@ aes-js@3.0.0:
resolved "https://registry.yarnpkg.com/aes-js/-/aes-js-3.0.0.tgz#e21df10ad6c2053295bcbb8dab40b09dbea87e4d"
integrity sha512-H7wUZRn8WpTq9jocdxQ2c8x2sKo9ZVmzfRE13GiNJXfp7NcKYEdvl3vspKjXox6RIG2VtaRe4JFvxG4rqp2Zuw==
-aes-js@^3.1.1:
- version "3.1.2"
- resolved "https://registry.yarnpkg.com/aes-js/-/aes-js-3.1.2.tgz#db9aabde85d5caabbfc0d4f2a4446960f627146a"
- integrity sha512-e5pEa2kBnBOgR4Y/p20pskXI74UEz7de8ZGVo58asOtvSVG5YAbJeELPZxOmt+Bnz3rX753YKhfIn4X4l1PPRQ==
-
agent-base@6:
version "6.0.2"
resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-6.0.2.tgz#49fff58577cfee3f37176feab4c22e00f86d7f77"
@@ -3468,11 +3547,6 @@ ansi-escapes@^4.2.1, ansi-escapes@^4.3.0:
dependencies:
type-fest "^0.21.3"
-ansi-regex@^2.0.0:
- version "2.1.1"
- resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df"
- integrity sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==
-
ansi-regex@^3.0.0:
version "3.0.1"
resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.1.tgz#123d6479e92ad45ad897d4054e3c7ca7db4944e1"
@@ -3493,11 +3567,6 @@ ansi-regex@^6.0.1:
resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-6.0.1.tgz#3183e38fae9a65d7cb5e53945cd5897d0260a06a"
integrity sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==
-ansi-styles@^2.2.1:
- version "2.2.1"
- resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe"
- integrity sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==
-
ansi-styles@^3.2.1:
version "3.2.1"
resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d"
@@ -3517,6 +3586,11 @@ ansi-styles@^5.0.0:
resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-5.2.0.tgz#07449690ad45777d1924ac2abb2fc8895dba836b"
integrity sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==
+ansi-styles@^6.1.0:
+ version "6.2.1"
+ resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-6.2.1.tgz#0e62320cf99c21afff3b3012192546aacbfb05c5"
+ integrity sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==
+
antlr4@^4.11.0:
version "4.13.1"
resolved "https://registry.yarnpkg.com/antlr4/-/antlr4-4.13.1.tgz#1e0a1830a08faeb86217cb2e6c34716004e4253d"
@@ -3562,21 +3636,6 @@ argparse@^2.0.1:
resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38"
integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==
-arr-diff@^4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-4.0.0.tgz#d6461074febfec71e7e15235761a329a5dc7c520"
- integrity sha512-YVIQ82gZPGBebQV/a8dar4AitzCQs0jjXwMPZllpXMaGjXPYVUawSxQrRsjhjupyVxEvbHgUmIhKVlND+j02kA==
-
-arr-flatten@^1.1.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1"
- integrity sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==
-
-arr-union@^3.1.0:
- version "3.1.0"
- resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4"
- integrity sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q==
-
array-back@^1.0.3, array-back@^1.0.4:
version "1.0.4"
resolved "https://registry.yarnpkg.com/array-back/-/array-back-1.0.4.tgz#644ba7f095f7ffcf7c43b5f0dc39d3c1f03c063b"
@@ -3591,6 +3650,16 @@ array-back@^2.0.0:
dependencies:
typical "^2.6.1"
+array-back@^3.0.1, array-back@^3.1.0:
+ version "3.1.0"
+ resolved "https://registry.yarnpkg.com/array-back/-/array-back-3.1.0.tgz#b8859d7a508871c9a7b2cf42f99428f65e96bfb0"
+ integrity sha512-TkuxA4UCOvxuDK6NZYXCalszEzj+TLszyASooky+i742l9TqsOdYCMJJupxRic61hwquNtppB3hgcuq9SVSH1Q==
+
+array-back@^4.0.1, array-back@^4.0.2:
+ version "4.0.2"
+ resolved "https://registry.yarnpkg.com/array-back/-/array-back-4.0.2.tgz#8004e999a6274586beeb27342168652fdb89fa1e"
+ integrity sha512-NbdMezxqf94cnNfWLL7V/im0Ub+Anbb0IoZhvzie8+4HJ4nMQuzHuy49FkGYCJK2yAloZ3meiB6AVMClbrI1vg==
+
array-buffer-byte-length@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/array-buffer-byte-length/-/array-buffer-byte-length-1.0.0.tgz#fabe8bc193fea865f317fe7807085ee0dee5aead"
@@ -3599,11 +3668,6 @@ array-buffer-byte-length@^1.0.0:
call-bind "^1.0.2"
is-array-buffer "^3.0.1"
-array-flatten@1.1.1:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2"
- integrity sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==
-
array-includes@^3.1.7:
version "3.1.7"
resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.1.7.tgz#8cd2e01b26f7a3086cbc87271593fe921c62abda"
@@ -3630,11 +3694,6 @@ array-uniq@1.0.3:
resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6"
integrity sha512-MNha4BWQ6JbwhFhj03YK552f7cb3AzoE8SzeljgChvL1dl3IcvggXVz1DilzySZkCja+CXuZbdW7yATchWn8/Q==
-array-unique@^0.3.2:
- version "0.3.2"
- resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428"
- integrity sha512-SleRWjh9JUud2wH1hPs9rZBZ33H6T9HOiL0uwGnGx9FpE6wKGyfWugmbkEOIs6qWrZhg0LWeLziLrEwQJhs5mQ==
-
array.prototype.findlastindex@^1.2.3:
version "1.2.3"
resolved "https://registry.yarnpkg.com/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.3.tgz#b37598438f97b579166940814e2c0493a4f50207"
@@ -3666,17 +3725,6 @@ array.prototype.flatmap@^1.3.2:
es-abstract "^1.22.1"
es-shim-unscopables "^1.0.0"
-array.prototype.reduce@^1.0.6:
- version "1.0.6"
- resolved "https://registry.yarnpkg.com/array.prototype.reduce/-/array.prototype.reduce-1.0.6.tgz#63149931808c5fc1e1354814923d92d45f7d96d5"
- integrity sha512-UW+Mz8LG/sPSU8jRDCjVr6J/ZKAGpHfwrZ6kWTG5qCxIEiXdVshqGnu5vEZA8S1y6X4aCSbQZ0/EEsfvEvBiSg==
- dependencies:
- call-bind "^1.0.2"
- define-properties "^1.2.0"
- es-abstract "^1.22.1"
- es-array-method-boxes-properly "^1.0.0"
- is-string "^1.0.7"
-
arraybuffer.prototype.slice@^1.0.2:
version "1.0.2"
resolved "https://registry.yarnpkg.com/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.2.tgz#98bd561953e3e74bb34938e77647179dfe6e9f12"
@@ -3695,16 +3743,6 @@ asap@~2.0.6:
resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46"
integrity sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==
-asn1.js@^5.2.0:
- version "5.4.1"
- resolved "https://registry.yarnpkg.com/asn1.js/-/asn1.js-5.4.1.tgz#11a980b84ebb91781ce35b0fdc2ee294e3783f07"
- integrity sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==
- dependencies:
- bn.js "^4.0.0"
- inherits "^2.0.1"
- minimalistic-assert "^1.0.0"
- safer-buffer "^2.1.0"
-
asn1@^0.2.6, asn1@~0.2.3:
version "0.2.6"
resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.6.tgz#0d3a7bb6e64e02a90c0303b31f292868ea09a08d"
@@ -3722,11 +3760,6 @@ assertion-error@^1.1.0:
resolved "https://registry.yarnpkg.com/assertion-error/-/assertion-error-1.1.0.tgz#e60b6b0e8f301bd97e5375215bda406c85118c0b"
integrity sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==
-assign-symbols@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367"
- integrity sha512-Q+JC7Whu8HhmTdBph/Tq59IoRtoy6KAm5zzPv00WdujX82lbAL8K7WVjne7vdCsAmbF4AYaDOPyO3k0kl8qIrw==
-
ast-parents@^0.0.1:
version "0.0.1"
resolved "https://registry.yarnpkg.com/ast-parents/-/ast-parents-0.0.1.tgz#508fd0f05d0c48775d9eccda2e174423261e8dd3"
@@ -3737,31 +3770,19 @@ astral-regex@^2.0.0:
resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-2.0.0.tgz#483143c567aeed4785759c0865786dc77d7d2e31"
integrity sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==
-async-eventemitter@^0.2.2:
+async-eventemitter@^0.2.4:
version "0.2.4"
resolved "https://registry.yarnpkg.com/async-eventemitter/-/async-eventemitter-0.2.4.tgz#f5e7c8ca7d3e46aab9ec40a292baf686a0bafaca"
integrity sha512-pd20BwL7Yt1zwDFy+8MX8F1+WCT8aQeKj0kQnTrH9WaeRETlRamVhD0JtRPmrV4GfOJ2F9CvdQkZeZhnh2TuHw==
dependencies:
async "^2.4.0"
-async-limiter@~1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/async-limiter/-/async-limiter-1.0.1.tgz#dd379e94f0db8310b08291f9d64c3209766617fd"
- integrity sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==
-
-async@1.x, async@^1.4.2:
+async@1.x:
version "1.5.2"
resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a"
integrity sha512-nSVgobk4rv61R9PUSDtYt7mPVB2olxNR5RWJcAsH676/ef11bUZwvu7+RGYrYauVdDPcO519v68wRhXQtxsV9w==
-async@2.6.2:
- version "2.6.2"
- resolved "https://registry.yarnpkg.com/async/-/async-2.6.2.tgz#18330ea7e6e313887f5d2f2a904bac6fe4dd5381"
- integrity sha512-H1qVYh1MYhEEFLsP97cVKqCGo7KfCyTt6uEWqsTBr9SO84oK9Uwbyd/yCW+6rKJLHksBNUVWZDAjfS+Ccx0Bbg==
- dependencies:
- lodash "^4.17.11"
-
-async@^2.0.1, async@^2.1.2, async@^2.4.0, async@^2.5.0, async@^2.6.1:
+async@^2.4.0:
version "2.6.4"
resolved "https://registry.yarnpkg.com/async/-/async-2.6.4.tgz#706b7ff6084664cd7eae713f6f965433b5504221"
integrity sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==
@@ -3773,16 +3794,6 @@ asynckit@^0.4.0:
resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79"
integrity sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==
-at-least-node@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/at-least-node/-/at-least-node-1.0.0.tgz#602cd4b46e844ad4effc92a8011a3c46e0238dc2"
- integrity sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==
-
-atob@^2.1.2:
- version "2.1.2"
- resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9"
- integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==
-
available-typed-arrays@^1.0.5:
version "1.0.5"
resolved "https://registry.yarnpkg.com/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz#92f95616501069d07d10edb2fc37d3e1c65123b7"
@@ -3814,40 +3825,6 @@ axios@^1.4.0, axios@^1.5.1:
form-data "^4.0.0"
proxy-from-env "^1.1.0"
-babel-code-frame@^6.26.0:
- version "6.26.0"
- resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.26.0.tgz#63fd43f7dc1e3bb7ce35947db8fe369a3f58c74b"
- integrity sha512-XqYMR2dfdGMW+hd0IUZ2PwK+fGeFkOxZJ0wY+JaQAHzt1Zx8LcvpiZD2NiGkEG8qx0CfkAOr5xt76d1e8vG90g==
- dependencies:
- chalk "^1.1.3"
- esutils "^2.0.2"
- js-tokens "^3.0.2"
-
-babel-core@^6.0.14, babel-core@^6.26.0:
- version "6.26.3"
- resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-6.26.3.tgz#b2e2f09e342d0f0c88e2f02e067794125e75c207"
- integrity sha512-6jyFLuDmeidKmUEb3NM+/yawG0M2bDZ9Z1qbZP59cyHLz8kYGKYwpJP0UwUKKUiTRNvxfLesJnTedqczP7cTDA==
- dependencies:
- babel-code-frame "^6.26.0"
- babel-generator "^6.26.0"
- babel-helpers "^6.24.1"
- babel-messages "^6.23.0"
- babel-register "^6.26.0"
- babel-runtime "^6.26.0"
- babel-template "^6.26.0"
- babel-traverse "^6.26.0"
- babel-types "^6.26.0"
- babylon "^6.18.0"
- convert-source-map "^1.5.1"
- debug "^2.6.9"
- json5 "^0.5.1"
- lodash "^4.17.4"
- minimatch "^3.0.4"
- path-is-absolute "^1.0.1"
- private "^0.1.8"
- slash "^1.0.0"
- source-map "^0.5.7"
-
babel-eslint@^10.1.0:
version "10.1.0"
resolved "https://registry.yarnpkg.com/babel-eslint/-/babel-eslint-10.1.0.tgz#6968e568a910b78fb3779cdd8b6ac2f479943232"
@@ -3860,133 +3837,6 @@ babel-eslint@^10.1.0:
eslint-visitor-keys "^1.0.0"
resolve "^1.12.0"
-babel-generator@^6.26.0:
- version "6.26.1"
- resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.26.1.tgz#1844408d3b8f0d35a404ea7ac180f087a601bd90"
- integrity sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA==
- dependencies:
- babel-messages "^6.23.0"
- babel-runtime "^6.26.0"
- babel-types "^6.26.0"
- detect-indent "^4.0.0"
- jsesc "^1.3.0"
- lodash "^4.17.4"
- source-map "^0.5.7"
- trim-right "^1.0.1"
-
-babel-helper-builder-binary-assignment-operator-visitor@^6.24.1:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz#cce4517ada356f4220bcae8a02c2b346f9a56664"
- integrity sha512-gCtfYORSG1fUMX4kKraymq607FWgMWg+j42IFPc18kFQEsmtaibP4UrqsXt8FlEJle25HUd4tsoDR7H2wDhe9Q==
- dependencies:
- babel-helper-explode-assignable-expression "^6.24.1"
- babel-runtime "^6.22.0"
- babel-types "^6.24.1"
-
-babel-helper-call-delegate@^6.24.1:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz#ece6aacddc76e41c3461f88bfc575bd0daa2df8d"
- integrity sha512-RL8n2NiEj+kKztlrVJM9JT1cXzzAdvWFh76xh/H1I4nKwunzE4INBXn8ieCZ+wh4zWszZk7NBS1s/8HR5jDkzQ==
- dependencies:
- babel-helper-hoist-variables "^6.24.1"
- babel-runtime "^6.22.0"
- babel-traverse "^6.24.1"
- babel-types "^6.24.1"
-
-babel-helper-define-map@^6.24.1:
- version "6.26.0"
- resolved "https://registry.yarnpkg.com/babel-helper-define-map/-/babel-helper-define-map-6.26.0.tgz#a5f56dab41a25f97ecb498c7ebaca9819f95be5f"
- integrity sha512-bHkmjcC9lM1kmZcVpA5t2om2nzT/xiZpo6TJq7UlZ3wqKfzia4veeXbIhKvJXAMzhhEBd3cR1IElL5AenWEUpA==
- dependencies:
- babel-helper-function-name "^6.24.1"
- babel-runtime "^6.26.0"
- babel-types "^6.26.0"
- lodash "^4.17.4"
-
-babel-helper-explode-assignable-expression@^6.24.1:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz#f25b82cf7dc10433c55f70592d5746400ac22caa"
- integrity sha512-qe5csbhbvq6ccry9G7tkXbzNtcDiH4r51rrPUbwwoTzZ18AqxWYRZT6AOmxrpxKnQBW0pYlBI/8vh73Z//78nQ==
- dependencies:
- babel-runtime "^6.22.0"
- babel-traverse "^6.24.1"
- babel-types "^6.24.1"
-
-babel-helper-function-name@^6.24.1:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz#d3475b8c03ed98242a25b48351ab18399d3580a9"
- integrity sha512-Oo6+e2iX+o9eVvJ9Y5eKL5iryeRdsIkwRYheCuhYdVHsdEQysbc2z2QkqCLIYnNxkT5Ss3ggrHdXiDI7Dhrn4Q==
- dependencies:
- babel-helper-get-function-arity "^6.24.1"
- babel-runtime "^6.22.0"
- babel-template "^6.24.1"
- babel-traverse "^6.24.1"
- babel-types "^6.24.1"
-
-babel-helper-get-function-arity@^6.24.1:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz#8f7782aa93407c41d3aa50908f89b031b1b6853d"
- integrity sha512-WfgKFX6swFB1jS2vo+DwivRN4NB8XUdM3ij0Y1gnC21y1tdBoe6xjVnd7NSI6alv+gZXCtJqvrTeMW3fR/c0ng==
- dependencies:
- babel-runtime "^6.22.0"
- babel-types "^6.24.1"
-
-babel-helper-hoist-variables@^6.24.1:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz#1ecb27689c9d25513eadbc9914a73f5408be7a76"
- integrity sha512-zAYl3tqerLItvG5cKYw7f1SpvIxS9zi7ohyGHaI9cgDUjAT6YcY9jIEH5CstetP5wHIVSceXwNS7Z5BpJg+rOw==
- dependencies:
- babel-runtime "^6.22.0"
- babel-types "^6.24.1"
-
-babel-helper-optimise-call-expression@^6.24.1:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-helper-optimise-call-expression/-/babel-helper-optimise-call-expression-6.24.1.tgz#f7a13427ba9f73f8f4fa993c54a97882d1244257"
- integrity sha512-Op9IhEaxhbRT8MDXx2iNuMgciu2V8lDvYCNQbDGjdBNCjaMvyLf4wl4A3b8IgndCyQF8TwfgsQ8T3VD8aX1/pA==
- dependencies:
- babel-runtime "^6.22.0"
- babel-types "^6.24.1"
-
-babel-helper-regex@^6.24.1:
- version "6.26.0"
- resolved "https://registry.yarnpkg.com/babel-helper-regex/-/babel-helper-regex-6.26.0.tgz#325c59f902f82f24b74faceed0363954f6495e72"
- integrity sha512-VlPiWmqmGJp0x0oK27Out1D+71nVVCTSdlbhIVoaBAj2lUgrNjBCRR9+llO4lTSb2O4r7PJg+RobRkhBrf6ofg==
- dependencies:
- babel-runtime "^6.26.0"
- babel-types "^6.26.0"
- lodash "^4.17.4"
-
-babel-helper-remap-async-to-generator@^6.24.1:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz#5ec581827ad723fecdd381f1c928390676e4551b"
- integrity sha512-RYqaPD0mQyQIFRu7Ho5wE2yvA/5jxqCIj/Lv4BXNq23mHYu/vxikOy2JueLiBxQknwapwrJeNCesvY0ZcfnlHg==
- dependencies:
- babel-helper-function-name "^6.24.1"
- babel-runtime "^6.22.0"
- babel-template "^6.24.1"
- babel-traverse "^6.24.1"
- babel-types "^6.24.1"
-
-babel-helper-replace-supers@^6.24.1:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-helper-replace-supers/-/babel-helper-replace-supers-6.24.1.tgz#bf6dbfe43938d17369a213ca8a8bf74b6a90ab1a"
- integrity sha512-sLI+u7sXJh6+ToqDr57Bv973kCepItDhMou0xCP2YPVmR1jkHSCY+p1no8xErbV1Siz5QE8qKT1WIwybSWlqjw==
- dependencies:
- babel-helper-optimise-call-expression "^6.24.1"
- babel-messages "^6.23.0"
- babel-runtime "^6.22.0"
- babel-template "^6.24.1"
- babel-traverse "^6.24.1"
- babel-types "^6.24.1"
-
-babel-helpers@^6.24.1:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-helpers/-/babel-helpers-6.24.1.tgz#3471de9caec388e5c850e597e58a26ddf37602b2"
- integrity sha512-n7pFrqQm44TCYvrCDb0MqabAF+JUBq+ijBvNMUxpkLjJaAu32faIexewMumrH5KLLJ1HDyT0PTEqRyAe/GwwuQ==
- dependencies:
- babel-runtime "^6.22.0"
- babel-template "^6.24.1"
-
babel-jest@^29.7.0:
version "29.7.0"
resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-29.7.0.tgz#f4369919225b684c56085998ac63dbd05be020d5"
@@ -4000,20 +3850,6 @@ babel-jest@^29.7.0:
graceful-fs "^4.2.9"
slash "^3.0.0"
-babel-messages@^6.23.0:
- version "6.23.0"
- resolved "https://registry.yarnpkg.com/babel-messages/-/babel-messages-6.23.0.tgz#f3cdf4703858035b2a2951c6ec5edf6c62f2630e"
- integrity sha512-Bl3ZiA+LjqaMtNYopA9TYE9HP1tQ+E5dLxE0XrAzcIJeK2UqF0/EaqXwBn9esd4UmTfEab+P+UYQ1GnioFIb/w==
- dependencies:
- babel-runtime "^6.22.0"
-
-babel-plugin-check-es2015-constants@^6.22.0:
- version "6.22.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz#35157b101426fd2ffd3da3f75c7d1e91835bbf8a"
- integrity sha512-B1M5KBP29248dViEo1owyY32lk1ZSH2DaNNrXLGt8lyjjHm7pBqAdQ7VKUPR6EEDO323+OvT3MQXbCin8ooWdA==
- dependencies:
- babel-runtime "^6.22.0"
-
babel-plugin-istanbul@^6.1.1:
version "6.1.1"
resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz#fa88ec59232fd9b4e36dbbc540a8ec9a9b47da73"
@@ -4035,244 +3871,6 @@ babel-plugin-jest-hoist@^29.6.3:
"@types/babel__core" "^7.1.14"
"@types/babel__traverse" "^7.0.6"
-babel-plugin-syntax-async-functions@^6.8.0:
- version "6.13.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz#cad9cad1191b5ad634bf30ae0872391e0647be95"
- integrity sha512-4Zp4unmHgw30A1eWI5EpACji2qMocisdXhAftfhXoSV9j0Tvj6nRFE3tOmRY912E0FMRm/L5xWE7MGVT2FoLnw==
-
-babel-plugin-syntax-exponentiation-operator@^6.8.0:
- version "6.13.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz#9ee7e8337290da95288201a6a57f4170317830de"
- integrity sha512-Z/flU+T9ta0aIEKl1tGEmN/pZiI1uXmCiGFRegKacQfEJzp7iNsKloZmyJlQr+75FCJtiFfGIK03SiCvCt9cPQ==
-
-babel-plugin-syntax-trailing-function-commas@^6.22.0:
- version "6.22.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz#ba0360937f8d06e40180a43fe0d5616fff532cf3"
- integrity sha512-Gx9CH3Q/3GKbhs07Bszw5fPTlU+ygrOGfAhEt7W2JICwufpC4SuO0mG0+4NykPBSYPMJhqvVlDBU17qB1D+hMQ==
-
-babel-plugin-transform-async-to-generator@^6.22.0:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz#6536e378aff6cb1d5517ac0e40eb3e9fc8d08761"
- integrity sha512-7BgYJujNCg0Ti3x0c/DL3tStvnKS6ktIYOmo9wginv/dfZOrbSZ+qG4IRRHMBOzZ5Awb1skTiAsQXg/+IWkZYw==
- dependencies:
- babel-helper-remap-async-to-generator "^6.24.1"
- babel-plugin-syntax-async-functions "^6.8.0"
- babel-runtime "^6.22.0"
-
-babel-plugin-transform-es2015-arrow-functions@^6.22.0:
- version "6.22.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz#452692cb711d5f79dc7f85e440ce41b9f244d221"
- integrity sha512-PCqwwzODXW7JMrzu+yZIaYbPQSKjDTAsNNlK2l5Gg9g4rz2VzLnZsStvp/3c46GfXpwkyufb3NCyG9+50FF1Vg==
- dependencies:
- babel-runtime "^6.22.0"
-
-babel-plugin-transform-es2015-block-scoped-functions@^6.22.0:
- version "6.22.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-block-scoped-functions/-/babel-plugin-transform-es2015-block-scoped-functions-6.22.0.tgz#bbc51b49f964d70cb8d8e0b94e820246ce3a6141"
- integrity sha512-2+ujAT2UMBzYFm7tidUsYh+ZoIutxJ3pN9IYrF1/H6dCKtECfhmB8UkHVpyxDwkj0CYbQG35ykoz925TUnBc3A==
- dependencies:
- babel-runtime "^6.22.0"
-
-babel-plugin-transform-es2015-block-scoping@^6.23.0:
- version "6.26.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-block-scoping/-/babel-plugin-transform-es2015-block-scoping-6.26.0.tgz#d70f5299c1308d05c12f463813b0a09e73b1895f"
- integrity sha512-YiN6sFAQ5lML8JjCmr7uerS5Yc/EMbgg9G8ZNmk2E3nYX4ckHR01wrkeeMijEf5WHNK5TW0Sl0Uu3pv3EdOJWw==
- dependencies:
- babel-runtime "^6.26.0"
- babel-template "^6.26.0"
- babel-traverse "^6.26.0"
- babel-types "^6.26.0"
- lodash "^4.17.4"
-
-babel-plugin-transform-es2015-classes@^6.23.0:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-classes/-/babel-plugin-transform-es2015-classes-6.24.1.tgz#5a4c58a50c9c9461e564b4b2a3bfabc97a2584db"
- integrity sha512-5Dy7ZbRinGrNtmWpquZKZ3EGY8sDgIVB4CU8Om8q8tnMLrD/m94cKglVcHps0BCTdZ0TJeeAWOq2TK9MIY6cag==
- dependencies:
- babel-helper-define-map "^6.24.1"
- babel-helper-function-name "^6.24.1"
- babel-helper-optimise-call-expression "^6.24.1"
- babel-helper-replace-supers "^6.24.1"
- babel-messages "^6.23.0"
- babel-runtime "^6.22.0"
- babel-template "^6.24.1"
- babel-traverse "^6.24.1"
- babel-types "^6.24.1"
-
-babel-plugin-transform-es2015-computed-properties@^6.22.0:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-computed-properties/-/babel-plugin-transform-es2015-computed-properties-6.24.1.tgz#6fe2a8d16895d5634f4cd999b6d3480a308159b3"
- integrity sha512-C/uAv4ktFP/Hmh01gMTvYvICrKze0XVX9f2PdIXuriCSvUmV9j+u+BB9f5fJK3+878yMK6dkdcq+Ymr9mrcLzw==
- dependencies:
- babel-runtime "^6.22.0"
- babel-template "^6.24.1"
-
-babel-plugin-transform-es2015-destructuring@^6.23.0:
- version "6.23.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz#997bb1f1ab967f682d2b0876fe358d60e765c56d"
- integrity sha512-aNv/GDAW0j/f4Uy1OEPZn1mqD+Nfy9viFGBfQ5bZyT35YqOiqx7/tXdyfZkJ1sC21NyEsBdfDY6PYmLHF4r5iA==
- dependencies:
- babel-runtime "^6.22.0"
-
-babel-plugin-transform-es2015-duplicate-keys@^6.22.0:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-duplicate-keys/-/babel-plugin-transform-es2015-duplicate-keys-6.24.1.tgz#73eb3d310ca969e3ef9ec91c53741a6f1576423e"
- integrity sha512-ossocTuPOssfxO2h+Z3/Ea1Vo1wWx31Uqy9vIiJusOP4TbF7tPs9U0sJ9pX9OJPf4lXRGj5+6Gkl/HHKiAP5ug==
- dependencies:
- babel-runtime "^6.22.0"
- babel-types "^6.24.1"
-
-babel-plugin-transform-es2015-for-of@^6.23.0:
- version "6.23.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-for-of/-/babel-plugin-transform-es2015-for-of-6.23.0.tgz#f47c95b2b613df1d3ecc2fdb7573623c75248691"
- integrity sha512-DLuRwoygCoXx+YfxHLkVx5/NpeSbVwfoTeBykpJK7JhYWlL/O8hgAK/reforUnZDlxasOrVPPJVI/guE3dCwkw==
- dependencies:
- babel-runtime "^6.22.0"
-
-babel-plugin-transform-es2015-function-name@^6.22.0:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz#834c89853bc36b1af0f3a4c5dbaa94fd8eacaa8b"
- integrity sha512-iFp5KIcorf11iBqu/y/a7DK3MN5di3pNCzto61FqCNnUX4qeBwcV1SLqe10oXNnCaxBUImX3SckX2/o1nsrTcg==
- dependencies:
- babel-helper-function-name "^6.24.1"
- babel-runtime "^6.22.0"
- babel-types "^6.24.1"
-
-babel-plugin-transform-es2015-literals@^6.22.0:
- version "6.22.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-literals/-/babel-plugin-transform-es2015-literals-6.22.0.tgz#4f54a02d6cd66cf915280019a31d31925377ca2e"
- integrity sha512-tjFl0cwMPpDYyoqYA9li1/7mGFit39XiNX5DKC/uCNjBctMxyL1/PT/l4rSlbvBG1pOKI88STRdUsWXB3/Q9hQ==
- dependencies:
- babel-runtime "^6.22.0"
-
-babel-plugin-transform-es2015-modules-amd@^6.22.0, babel-plugin-transform-es2015-modules-amd@^6.24.1:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-6.24.1.tgz#3b3e54017239842d6d19c3011c4bd2f00a00d154"
- integrity sha512-LnIIdGWIKdw7zwckqx+eGjcS8/cl8D74A3BpJbGjKTFFNJSMrjN4bIh22HY1AlkUbeLG6X6OZj56BDvWD+OeFA==
- dependencies:
- babel-plugin-transform-es2015-modules-commonjs "^6.24.1"
- babel-runtime "^6.22.0"
- babel-template "^6.24.1"
-
-babel-plugin-transform-es2015-modules-commonjs@^6.23.0, babel-plugin-transform-es2015-modules-commonjs@^6.24.1:
- version "6.26.2"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.2.tgz#58a793863a9e7ca870bdc5a881117ffac27db6f3"
- integrity sha512-CV9ROOHEdrjcwhIaJNBGMBCodN+1cfkwtM1SbUHmvyy35KGT7fohbpOxkE2uLz1o6odKK2Ck/tz47z+VqQfi9Q==
- dependencies:
- babel-plugin-transform-strict-mode "^6.24.1"
- babel-runtime "^6.26.0"
- babel-template "^6.26.0"
- babel-types "^6.26.0"
-
-babel-plugin-transform-es2015-modules-systemjs@^6.23.0:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-systemjs/-/babel-plugin-transform-es2015-modules-systemjs-6.24.1.tgz#ff89a142b9119a906195f5f106ecf305d9407d23"
- integrity sha512-ONFIPsq8y4bls5PPsAWYXH/21Hqv64TBxdje0FvU3MhIV6QM2j5YS7KvAzg/nTIVLot2D2fmFQrFWCbgHlFEjg==
- dependencies:
- babel-helper-hoist-variables "^6.24.1"
- babel-runtime "^6.22.0"
- babel-template "^6.24.1"
-
-babel-plugin-transform-es2015-modules-umd@^6.23.0:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-umd/-/babel-plugin-transform-es2015-modules-umd-6.24.1.tgz#ac997e6285cd18ed6176adb607d602344ad38468"
- integrity sha512-LpVbiT9CLsuAIp3IG0tfbVo81QIhn6pE8xBJ7XSeCtFlMltuar5VuBV6y6Q45tpui9QWcy5i0vLQfCfrnF7Kiw==
- dependencies:
- babel-plugin-transform-es2015-modules-amd "^6.24.1"
- babel-runtime "^6.22.0"
- babel-template "^6.24.1"
-
-babel-plugin-transform-es2015-object-super@^6.22.0:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-object-super/-/babel-plugin-transform-es2015-object-super-6.24.1.tgz#24cef69ae21cb83a7f8603dad021f572eb278f8d"
- integrity sha512-8G5hpZMecb53vpD3mjs64NhI1au24TAmokQ4B+TBFBjN9cVoGoOvotdrMMRmHvVZUEvqGUPWL514woru1ChZMA==
- dependencies:
- babel-helper-replace-supers "^6.24.1"
- babel-runtime "^6.22.0"
-
-babel-plugin-transform-es2015-parameters@^6.23.0:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz#57ac351ab49caf14a97cd13b09f66fdf0a625f2b"
- integrity sha512-8HxlW+BB5HqniD+nLkQ4xSAVq3bR/pcYW9IigY+2y0dI+Y7INFeTbfAQr+63T3E4UDsZGjyb+l9txUnABWxlOQ==
- dependencies:
- babel-helper-call-delegate "^6.24.1"
- babel-helper-get-function-arity "^6.24.1"
- babel-runtime "^6.22.0"
- babel-template "^6.24.1"
- babel-traverse "^6.24.1"
- babel-types "^6.24.1"
-
-babel-plugin-transform-es2015-shorthand-properties@^6.22.0:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-shorthand-properties/-/babel-plugin-transform-es2015-shorthand-properties-6.24.1.tgz#24f875d6721c87661bbd99a4622e51f14de38aa0"
- integrity sha512-mDdocSfUVm1/7Jw/FIRNw9vPrBQNePy6wZJlR8HAUBLybNp1w/6lr6zZ2pjMShee65t/ybR5pT8ulkLzD1xwiw==
- dependencies:
- babel-runtime "^6.22.0"
- babel-types "^6.24.1"
-
-babel-plugin-transform-es2015-spread@^6.22.0:
- version "6.22.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz#d6d68a99f89aedc4536c81a542e8dd9f1746f8d1"
- integrity sha512-3Ghhi26r4l3d0Js933E5+IhHwk0A1yiutj9gwvzmFbVV0sPMYk2lekhOufHBswX7NCoSeF4Xrl3sCIuSIa+zOg==
- dependencies:
- babel-runtime "^6.22.0"
-
-babel-plugin-transform-es2015-sticky-regex@^6.22.0:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz#00c1cdb1aca71112cdf0cf6126c2ed6b457ccdbc"
- integrity sha512-CYP359ADryTo3pCsH0oxRo/0yn6UsEZLqYohHmvLQdfS9xkf+MbCzE3/Kolw9OYIY4ZMilH25z/5CbQbwDD+lQ==
- dependencies:
- babel-helper-regex "^6.24.1"
- babel-runtime "^6.22.0"
- babel-types "^6.24.1"
-
-babel-plugin-transform-es2015-template-literals@^6.22.0:
- version "6.22.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-template-literals/-/babel-plugin-transform-es2015-template-literals-6.22.0.tgz#a84b3450f7e9f8f1f6839d6d687da84bb1236d8d"
- integrity sha512-x8b9W0ngnKzDMHimVtTfn5ryimars1ByTqsfBDwAqLibmuuQY6pgBQi5z1ErIsUOWBdw1bW9FSz5RZUojM4apg==
- dependencies:
- babel-runtime "^6.22.0"
-
-babel-plugin-transform-es2015-typeof-symbol@^6.23.0:
- version "6.23.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-typeof-symbol/-/babel-plugin-transform-es2015-typeof-symbol-6.23.0.tgz#dec09f1cddff94b52ac73d505c84df59dcceb372"
- integrity sha512-fz6J2Sf4gYN6gWgRZaoFXmq93X+Li/8vf+fb0sGDVtdeWvxC9y5/bTD7bvfWMEq6zetGEHpWjtzRGSugt5kNqw==
- dependencies:
- babel-runtime "^6.22.0"
-
-babel-plugin-transform-es2015-unicode-regex@^6.22.0:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz#d38b12f42ea7323f729387f18a7c5ae1faeb35e9"
- integrity sha512-v61Dbbihf5XxnYjtBN04B/JBvsScY37R1cZT5r9permN1cp+b70DY3Ib3fIkgn1DI9U3tGgBJZVD8p/mE/4JbQ==
- dependencies:
- babel-helper-regex "^6.24.1"
- babel-runtime "^6.22.0"
- regexpu-core "^2.0.0"
-
-babel-plugin-transform-exponentiation-operator@^6.22.0:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz#2ab0c9c7f3098fa48907772bb813fe41e8de3a0e"
- integrity sha512-LzXDmbMkklvNhprr20//RStKVcT8Cu+SQtX18eMHLhjHf2yFzwtQ0S2f0jQ+89rokoNdmwoSqYzAhq86FxlLSQ==
- dependencies:
- babel-helper-builder-binary-assignment-operator-visitor "^6.24.1"
- babel-plugin-syntax-exponentiation-operator "^6.8.0"
- babel-runtime "^6.22.0"
-
-babel-plugin-transform-regenerator@^6.22.0:
- version "6.26.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.26.0.tgz#e0703696fbde27f0a3efcacf8b4dca2f7b3a8f2f"
- integrity sha512-LS+dBkUGlNR15/5WHKe/8Neawx663qttS6AGqoOUhICc9d1KciBvtrQSuc0PI+CxQ2Q/S1aKuJ+u64GtLdcEZg==
- dependencies:
- regenerator-transform "^0.10.0"
-
-babel-plugin-transform-strict-mode@^6.24.1:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz#d5faf7aa578a65bbe591cf5edae04a0c67020758"
- integrity sha512-j3KtSpjyLSJxNoCDrhwiJad8kw0gJ9REGj8/CqL0HeRyLnvUNYV9zcqluL6QJSXh3nfsLEmSLvwRfGzrgR96Pw==
- dependencies:
- babel-runtime "^6.22.0"
- babel-types "^6.24.1"
-
babel-preset-current-node-syntax@^1.0.0:
version "1.0.1"
resolved "https://registry.yarnpkg.com/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz#b4399239b89b2a011f9ddbe3e4f401fc40cff73b"
@@ -4291,42 +3889,6 @@ babel-preset-current-node-syntax@^1.0.0:
"@babel/plugin-syntax-optional-chaining" "^7.8.3"
"@babel/plugin-syntax-top-level-await" "^7.8.3"
-babel-preset-env@^1.7.0:
- version "1.7.0"
- resolved "https://registry.yarnpkg.com/babel-preset-env/-/babel-preset-env-1.7.0.tgz#dea79fa4ebeb883cd35dab07e260c1c9c04df77a"
- integrity sha512-9OR2afuKDneX2/q2EurSftUYM0xGu4O2D9adAhVfADDhrYDaxXV0rBbevVYoY9n6nyX1PmQW/0jtpJvUNr9CHg==
- dependencies:
- babel-plugin-check-es2015-constants "^6.22.0"
- babel-plugin-syntax-trailing-function-commas "^6.22.0"
- babel-plugin-transform-async-to-generator "^6.22.0"
- babel-plugin-transform-es2015-arrow-functions "^6.22.0"
- babel-plugin-transform-es2015-block-scoped-functions "^6.22.0"
- babel-plugin-transform-es2015-block-scoping "^6.23.0"
- babel-plugin-transform-es2015-classes "^6.23.0"
- babel-plugin-transform-es2015-computed-properties "^6.22.0"
- babel-plugin-transform-es2015-destructuring "^6.23.0"
- babel-plugin-transform-es2015-duplicate-keys "^6.22.0"
- babel-plugin-transform-es2015-for-of "^6.23.0"
- babel-plugin-transform-es2015-function-name "^6.22.0"
- babel-plugin-transform-es2015-literals "^6.22.0"
- babel-plugin-transform-es2015-modules-amd "^6.22.0"
- babel-plugin-transform-es2015-modules-commonjs "^6.23.0"
- babel-plugin-transform-es2015-modules-systemjs "^6.23.0"
- babel-plugin-transform-es2015-modules-umd "^6.23.0"
- babel-plugin-transform-es2015-object-super "^6.22.0"
- babel-plugin-transform-es2015-parameters "^6.23.0"
- babel-plugin-transform-es2015-shorthand-properties "^6.22.0"
- babel-plugin-transform-es2015-spread "^6.22.0"
- babel-plugin-transform-es2015-sticky-regex "^6.22.0"
- babel-plugin-transform-es2015-template-literals "^6.22.0"
- babel-plugin-transform-es2015-typeof-symbol "^6.23.0"
- babel-plugin-transform-es2015-unicode-regex "^6.22.0"
- babel-plugin-transform-exponentiation-operator "^6.22.0"
- babel-plugin-transform-regenerator "^6.22.0"
- browserslist "^3.2.6"
- invariant "^2.2.2"
- semver "^5.3.0"
-
babel-preset-jest@^29.6.3:
version "29.6.3"
resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-29.6.3.tgz#fa05fa510e7d493896d7b0dd2033601c840f171c"
@@ -4335,89 +3897,20 @@ babel-preset-jest@^29.6.3:
babel-plugin-jest-hoist "^29.6.3"
babel-preset-current-node-syntax "^1.0.0"
-babel-register@^6.26.0:
+babel-runtime@^6.26.0:
version "6.26.0"
- resolved "https://registry.yarnpkg.com/babel-register/-/babel-register-6.26.0.tgz#6ed021173e2fcb486d7acb45c6009a856f647071"
- integrity sha512-veliHlHX06wjaeY8xNITbveXSiI+ASFnOqvne/LaIJIqOWi2Ogmj91KOugEz/hoh/fwMhXNBJPCv8Xaz5CyM4A==
- dependencies:
- babel-core "^6.26.0"
- babel-runtime "^6.26.0"
- core-js "^2.5.0"
- home-or-tmp "^2.0.0"
- lodash "^4.17.4"
- mkdirp "^0.5.1"
- source-map-support "^0.4.15"
-
-babel-runtime@^6.18.0, babel-runtime@^6.22.0, babel-runtime@^6.26.0:
- version "6.26.0"
- resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.26.0.tgz#965c7058668e82b55d7bfe04ff2337bc8b5647fe"
- integrity sha512-ITKNuq2wKlW1fJg9sSW52eepoYgZBggvOAHC0u/CYu/qxQ9EVzThCgR69BnSXLHjy2f7SY5zaQ4yt7H9ZVxY2g==
+ resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.26.0.tgz#965c7058668e82b55d7bfe04ff2337bc8b5647fe"
+ integrity sha512-ITKNuq2wKlW1fJg9sSW52eepoYgZBggvOAHC0u/CYu/qxQ9EVzThCgR69BnSXLHjy2f7SY5zaQ4yt7H9ZVxY2g==
dependencies:
core-js "^2.4.0"
regenerator-runtime "^0.11.0"
-babel-template@^6.24.1, babel-template@^6.26.0:
- version "6.26.0"
- resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-6.26.0.tgz#de03e2d16396b069f46dd9fff8521fb1a0e35e02"
- integrity sha512-PCOcLFW7/eazGUKIoqH97sO9A2UYMahsn/yRQ7uOk37iutwjq7ODtcTNF+iFDSHNfkctqsLRjLP7URnOx0T1fg==
- dependencies:
- babel-runtime "^6.26.0"
- babel-traverse "^6.26.0"
- babel-types "^6.26.0"
- babylon "^6.18.0"
- lodash "^4.17.4"
-
-babel-traverse@^6.24.1, babel-traverse@^6.26.0:
- version "6.26.0"
- resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-6.26.0.tgz#46a9cbd7edcc62c8e5c064e2d2d8d0f4035766ee"
- integrity sha512-iSxeXx7apsjCHe9c7n8VtRXGzI2Bk1rBSOJgCCjfyXb6v1aCqE1KSEpq/8SXuVN8Ka/Rh1WDTF0MDzkvTA4MIA==
- dependencies:
- babel-code-frame "^6.26.0"
- babel-messages "^6.23.0"
- babel-runtime "^6.26.0"
- babel-types "^6.26.0"
- babylon "^6.18.0"
- debug "^2.6.8"
- globals "^9.18.0"
- invariant "^2.2.2"
- lodash "^4.17.4"
-
-babel-types@^6.19.0, babel-types@^6.24.1, babel-types@^6.26.0:
- version "6.26.0"
- resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.26.0.tgz#a3b073f94ab49eb6fa55cd65227a334380632497"
- integrity sha512-zhe3V/26rCWsEZK8kZN+HaQj5yQ1CilTObixFzKW1UWjqG7618Twz6YEsCnjfg5gBcJh02DrpCkS9h98ZqDY+g==
- dependencies:
- babel-runtime "^6.26.0"
- esutils "^2.0.2"
- lodash "^4.17.4"
- to-fast-properties "^1.0.3"
-
-babelify@^7.3.0:
- version "7.3.0"
- resolved "https://registry.yarnpkg.com/babelify/-/babelify-7.3.0.tgz#aa56aede7067fd7bd549666ee16dc285087e88e5"
- integrity sha512-vID8Fz6pPN5pJMdlUnNFSfrlcx5MUule4k9aKs/zbZPyXxMTcRrB0M4Tarw22L8afr8eYSWxDPYCob3TdrqtlA==
- dependencies:
- babel-core "^6.0.14"
- object-assign "^4.0.0"
-
-babylon@^6.18.0:
- version "6.18.0"
- resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.18.0.tgz#af2f3b88fa6f5c1e4c634d1a0f8eac4f55b395e3"
- integrity sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==
-
-backoff@^2.5.0:
- version "2.5.0"
- resolved "https://registry.yarnpkg.com/backoff/-/backoff-2.5.0.tgz#f616eda9d3e4b66b8ca7fca79f695722c5f8e26f"
- integrity sha512-wC5ihrnUXmR2douXmXLCe5O3zg3GKIyvRi/hi58a/XyRxVI+3/yM0PYueQOZXPXQ9pxBislYkw+sF9b7C/RuMA==
- dependencies:
- precond "0.2"
-
balanced-match@^1.0.0:
version "1.0.2"
resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee"
integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==
-base-x@^3.0.2, base-x@^3.0.8:
+base-x@^3.0.2:
version "3.0.9"
resolved "https://registry.yarnpkg.com/base-x/-/base-x-3.0.9.tgz#6349aaabb58526332de9f60995e548a53fe21320"
integrity sha512-H7JU6iBHTal1gp56aKoaa//YUxEaAOUiydvrV/pILqIHXTtqxSkATOnDA2u+jZ/61sD+L/412+7kzXRtWukhpQ==
@@ -4429,19 +3922,6 @@ base64-js@^1.3.1:
resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a"
integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==
-base@^0.11.1:
- version "0.11.2"
- resolved "https://registry.yarnpkg.com/base/-/base-0.11.2.tgz#7bde5ced145b6d551a90db87f83c558b4eb48a8f"
- integrity sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==
- dependencies:
- cache-base "^1.0.1"
- class-utils "^0.3.5"
- component-emitter "^1.2.1"
- define-property "^1.0.0"
- isobject "^3.0.1"
- mixin-deep "^1.2.0"
- pascalcase "^0.1.1"
-
bcrypt-pbkdf@^1.0.0, bcrypt-pbkdf@^1.0.2:
version "1.0.2"
resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz#a4301d389b6a43f9b67ff3ca11a3f6637e360e9e"
@@ -4474,16 +3954,15 @@ binary-extensions@^2.0.0:
resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d"
integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==
-bip39@2.5.0:
- version "2.5.0"
- resolved "https://registry.yarnpkg.com/bip39/-/bip39-2.5.0.tgz#51cbd5179460504a63ea3c000db3f787ca051235"
- integrity sha512-xwIx/8JKoT2+IPJpFEfXoWdYwP7UVAoUxxLNfGCfVowaJE7yg1Y5B1BVPqlUNsBq5/nGwmFkwRJ8xDW4sX8OdA==
+bip39@3.0.4:
+ version "3.0.4"
+ resolved "https://registry.yarnpkg.com/bip39/-/bip39-3.0.4.tgz#5b11fed966840b5e1b8539f0f54ab6392969b2a0"
+ integrity sha512-YZKQlb752TrUWqHWj7XAwCSjYEgGAk+/Aas3V7NyjQeZYsztO8JnQUaCWhcnL4T+jL8nvB8typ2jRPzTlgugNw==
dependencies:
+ "@types/node" "11.11.6"
create-hash "^1.1.0"
pbkdf2 "^3.0.9"
randombytes "^2.0.1"
- safe-buffer "^5.0.1"
- unorm "^1.3.3"
bl@^1.0.0:
version "1.2.3"
@@ -4507,11 +3986,6 @@ blakejs@^1.1.0:
resolved "https://registry.yarnpkg.com/blakejs/-/blakejs-1.2.1.tgz#5057e4206eadb4a97f7c0b6e197a505042fc3814"
integrity sha512-QXUSXI3QVc/gJME0dBpXrag1kbzOqCjCX8/b54ntNyW6sjtoqxqRk3LTmXzaJoh71zMsDCjM+47jS7XiwN/+fQ==
-bluebird@^3.5.0, bluebird@^3.5.2:
- version "3.7.2"
- resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.7.2.tgz#9f229c15be272454ffa973ace0dbee79a1b0c36f"
- integrity sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==
-
bn-str-256@^1.9.1:
version "1.9.1"
resolved "https://registry.yarnpkg.com/bn-str-256/-/bn-str-256-1.9.1.tgz#898cebee70a3edc3968f97b4cebbc4771025aa82"
@@ -4525,52 +3999,16 @@ bn.js@4.11.6:
resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.11.6.tgz#53344adb14617a13f6e8dd2ce28905d1c0ba3215"
integrity sha512-XWwnNNFCuuSQ0m3r3C4LE3EiORltHd9M05pq6FOlVeiophzRbMo50Sbz1ehl8K3Z+jw9+vmgnXefY1hz8X+2wA==
-bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.10.0, bn.js@^4.11.0, bn.js@^4.11.6, bn.js@^4.11.8, bn.js@^4.11.9, bn.js@^4.8.0:
+bn.js@^4.0.0, bn.js@^4.11.0, bn.js@^4.11.1, bn.js@^4.11.8, bn.js@^4.11.9:
version "4.12.0"
resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.12.0.tgz#775b3f278efbb9718eec7361f483fb36fbbfea88"
integrity sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==
-bn.js@^5.0.0, bn.js@^5.1.2, bn.js@^5.2.0, bn.js@^5.2.1:
+bn.js@^5.1.2, bn.js@^5.2.0, bn.js@^5.2.1:
version "5.2.1"
resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-5.2.1.tgz#0bc527a6a0d18d0aa8d5b0538ce4a77dccfa7b70"
integrity sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==
-body-parser@1.20.1:
- version "1.20.1"
- resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.20.1.tgz#b1812a8912c195cd371a3ee5e66faa2338a5c668"
- integrity sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==
- dependencies:
- bytes "3.1.2"
- content-type "~1.0.4"
- debug "2.6.9"
- depd "2.0.0"
- destroy "1.2.0"
- http-errors "2.0.0"
- iconv-lite "0.4.24"
- on-finished "2.4.1"
- qs "6.11.0"
- raw-body "2.5.1"
- type-is "~1.6.18"
- unpipe "1.0.0"
-
-body-parser@^1.16.0:
- version "1.20.2"
- resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.20.2.tgz#6feb0e21c4724d06de7ff38da36dad4f57a747fd"
- integrity sha512-ml9pReCu3M61kGlqoTm2umSXTlRTuGTx0bfYj+uIUKKYycG5NtSbeetV3faSU6R7ajOPw0g/J1PvK4qNy7s5bA==
- dependencies:
- bytes "3.1.2"
- content-type "~1.0.5"
- debug "2.6.9"
- depd "2.0.0"
- destroy "1.2.0"
- http-errors "2.0.0"
- iconv-lite "0.4.24"
- on-finished "2.4.1"
- qs "6.11.0"
- raw-body "2.5.2"
- type-is "~1.6.18"
- unpipe "1.0.0"
-
bplist-parser@^0.2.0:
version "0.2.0"
resolved "https://registry.yarnpkg.com/bplist-parser/-/bplist-parser-0.2.0.tgz#43a9d183e5bf9d545200ceac3e712f79ebbe8d0e"
@@ -4593,22 +4031,6 @@ brace-expansion@^2.0.1:
dependencies:
balanced-match "^1.0.0"
-braces@^2.3.1:
- version "2.3.2"
- resolved "https://registry.yarnpkg.com/braces/-/braces-2.3.2.tgz#5979fd3f14cd531565e5fa2df1abfff1dfaee729"
- integrity sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==
- dependencies:
- arr-flatten "^1.1.0"
- array-unique "^0.3.2"
- extend-shallow "^2.0.1"
- fill-range "^4.0.0"
- isobject "^3.0.1"
- repeat-element "^1.1.2"
- snapdragon "^0.8.1"
- snapdragon-node "^2.0.1"
- split-string "^3.0.2"
- to-regex "^3.0.1"
-
braces@^3.0.2, braces@~3.0.2:
version "3.0.2"
resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107"
@@ -4636,7 +4058,7 @@ browser-stdout@1.3.1:
resolved "https://registry.yarnpkg.com/browser-stdout/-/browser-stdout-1.3.1.tgz#baa559ee14ced73452229bad7326467c61fabd60"
integrity sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==
-browserify-aes@^1.0.0, browserify-aes@^1.0.4, browserify-aes@^1.2.0:
+browserify-aes@^1.2.0:
version "1.2.0"
resolved "https://registry.yarnpkg.com/browserify-aes/-/browserify-aes-1.2.0.tgz#326734642f403dabc3003209853bb70ad428ef48"
integrity sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==
@@ -4648,56 +4070,6 @@ browserify-aes@^1.0.0, browserify-aes@^1.0.4, browserify-aes@^1.2.0:
inherits "^2.0.1"
safe-buffer "^5.0.1"
-browserify-cipher@^1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/browserify-cipher/-/browserify-cipher-1.0.1.tgz#8d6474c1b870bfdabcd3bcfcc1934a10e94f15f0"
- integrity sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==
- dependencies:
- browserify-aes "^1.0.4"
- browserify-des "^1.0.0"
- evp_bytestokey "^1.0.0"
-
-browserify-des@^1.0.0:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/browserify-des/-/browserify-des-1.0.2.tgz#3af4f1f59839403572f1c66204375f7a7f703e9c"
- integrity sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==
- dependencies:
- cipher-base "^1.0.1"
- des.js "^1.0.0"
- inherits "^2.0.1"
- safe-buffer "^5.1.2"
-
-browserify-rsa@^4.0.0, browserify-rsa@^4.1.0:
- version "4.1.0"
- resolved "https://registry.yarnpkg.com/browserify-rsa/-/browserify-rsa-4.1.0.tgz#b2fd06b5b75ae297f7ce2dc651f918f5be158c8d"
- integrity sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog==
- dependencies:
- bn.js "^5.0.0"
- randombytes "^2.0.1"
-
-browserify-sign@^4.0.0:
- version "4.2.2"
- resolved "https://registry.yarnpkg.com/browserify-sign/-/browserify-sign-4.2.2.tgz#e78d4b69816d6e3dd1c747e64e9947f9ad79bc7e"
- integrity sha512-1rudGyeYY42Dk6texmv7c4VcQ0EsvVbLwZkA+AQB7SxvXxmcD93jcHie8bzecJ+ChDlmAm2Qyu0+Ccg5uhZXCg==
- dependencies:
- bn.js "^5.2.1"
- browserify-rsa "^4.1.0"
- create-hash "^1.2.0"
- create-hmac "^1.1.7"
- elliptic "^6.5.4"
- inherits "^2.0.4"
- parse-asn1 "^5.1.6"
- readable-stream "^3.6.2"
- safe-buffer "^5.2.1"
-
-browserslist@^3.2.6:
- version "3.2.8"
- resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-3.2.8.tgz#b0005361d6471f0f5952797a76fc985f1f978fc6"
- integrity sha512-WHVocJYavUwVgVViC0ORikPHQquXwVh939TaelZ4WDqpWgTX/FsGhl/+P4qBUAGcRvtOgDgC+xftNWWp2RUTAQ==
- dependencies:
- caniuse-lite "^1.0.30000844"
- electron-to-chromium "^1.3.47"
-
browserslist@^4.21.9:
version "4.22.1"
resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.22.1.tgz#ba91958d1a59b87dab6fed8dfbcb3da5e2e9c619"
@@ -4771,11 +4143,6 @@ buffer-reverse@^1.0.1:
resolved "https://registry.yarnpkg.com/buffer-reverse/-/buffer-reverse-1.0.1.tgz#49283c8efa6f901bc01fa3304d06027971ae2f60"
integrity sha512-M87YIUBsZ6N924W57vDwT/aOu8hw7ZgdByz6ijksLjmHJELBASmYTTlNHRgjE+pTsT9oJXGaDSgqqwfdHotDUg==
-buffer-to-arraybuffer@^0.0.5:
- version "0.0.5"
- resolved "https://registry.yarnpkg.com/buffer-to-arraybuffer/-/buffer-to-arraybuffer-0.0.5.tgz#6064a40fa76eb43c723aba9ef8f6e1216d10511a"
- integrity sha512-3dthu5CYiVB1DEJp61FtApNnNndTckcqe4pFcLdvHtrpG+kcyekCJKg4MRiDcFW7A6AODnXB9U4dwQiCW5kzJQ==
-
buffer-writer@2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/buffer-writer/-/buffer-writer-2.0.0.tgz#ce7eb81a38f7829db09c873f2fbb792c0c98ec04"
@@ -4793,7 +4160,7 @@ buffer-xor@^2.0.1:
dependencies:
safe-buffer "^5.1.1"
-buffer@^5.0.5, buffer@^5.2.1, buffer@^5.5.0, buffer@^5.6.0:
+buffer@^5.5.0, buffer@^5.6.0:
version "5.7.1"
resolved "https://registry.yarnpkg.com/buffer/-/buffer-5.7.1.tgz#ba62e7c13133053582197160851a8f648e99eed0"
integrity sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==
@@ -4809,10 +4176,10 @@ buffer@^6.0.3:
base64-js "^1.3.1"
ieee754 "^1.2.1"
-bufferutil@^4.0.1:
- version "4.0.8"
- resolved "https://registry.yarnpkg.com/bufferutil/-/bufferutil-4.0.8.tgz#1de6a71092d65d7766c4d8a522b261a6e787e8ea"
- integrity sha512-4T53u4PdgsXqKaIctwF8ifXlRTTmEPJ8iEPWFdGZvcf7sbwYo6FKFEX9eNNAnzFZ7EzJAQ3CJeOtCRA4rDp7Pw==
+bufferutil@4.0.5:
+ version "4.0.5"
+ resolved "https://registry.yarnpkg.com/bufferutil/-/bufferutil-4.0.5.tgz#da9ea8166911cc276bf677b8aed2d02d31f59028"
+ integrity sha512-HTm14iMQKK2FjFLRTM5lAVcyaUzOnqbPtesFIvREgXpJHdQm8bWS+GkQgIkfaBYRHuCnea7w8UVNfwiAQhlr9A==
dependencies:
node-gyp-build "^4.3.0"
@@ -4833,76 +4200,7 @@ bytes@3.1.2:
resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.2.tgz#8b0beeb98605adf1b128fa4386403c009e0221a5"
integrity sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==
-bytewise-core@^1.2.2:
- version "1.2.3"
- resolved "https://registry.yarnpkg.com/bytewise-core/-/bytewise-core-1.2.3.tgz#3fb410c7e91558eb1ab22a82834577aa6bd61d42"
- integrity sha512-nZD//kc78OOxeYtRlVk8/zXqTB4gf/nlguL1ggWA8FuchMyOxcyHR4QPQZMUmA7czC+YnaBrPUCubqAWe50DaA==
- dependencies:
- typewise-core "^1.2"
-
-bytewise@~1.1.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/bytewise/-/bytewise-1.1.0.tgz#1d13cbff717ae7158094aa881b35d081b387253e"
- integrity sha512-rHuuseJ9iQ0na6UDhnrRVDh8YnWVlU6xM3VH6q/+yHDeUH2zIhUzP+2/h3LIrhLDBtTqzWpE3p3tP/boefskKQ==
- dependencies:
- bytewise-core "^1.2.2"
- typewise "^1.0.3"
-
-cache-base@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2"
- integrity sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==
- dependencies:
- collection-visit "^1.0.0"
- component-emitter "^1.2.1"
- get-value "^2.0.6"
- has-value "^1.0.0"
- isobject "^3.0.1"
- set-value "^2.0.0"
- to-object-path "^0.3.0"
- union-value "^1.0.0"
- unset-value "^1.0.0"
-
-cacheable-lookup@^5.0.3:
- version "5.0.4"
- resolved "https://registry.yarnpkg.com/cacheable-lookup/-/cacheable-lookup-5.0.4.tgz#5a6b865b2c44357be3d5ebc2a467b032719a7005"
- integrity sha512-2/kNscPhpcxrOigMZzbiWF7dz8ilhb/nIHU3EyZiXWXpeq/au8qJ8VhdftMkty3n7Gj6HIGalQG8oiBNB3AJgA==
-
-cacheable-request@^6.0.0:
- version "6.1.0"
- resolved "https://registry.yarnpkg.com/cacheable-request/-/cacheable-request-6.1.0.tgz#20ffb8bd162ba4be11e9567d823db651052ca912"
- integrity sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==
- dependencies:
- clone-response "^1.0.2"
- get-stream "^5.1.0"
- http-cache-semantics "^4.0.0"
- keyv "^3.0.0"
- lowercase-keys "^2.0.0"
- normalize-url "^4.1.0"
- responselike "^1.0.2"
-
-cacheable-request@^7.0.2:
- version "7.0.4"
- resolved "https://registry.yarnpkg.com/cacheable-request/-/cacheable-request-7.0.4.tgz#7a33ebf08613178b403635be7b899d3e69bbe817"
- integrity sha512-v+p6ongsrp0yTGbJXjgxPow2+DL93DASP4kXCDKb8/bwRtt9OEF3whggkkDkGNzgcWy2XaF4a8nZglC7uElscg==
- dependencies:
- clone-response "^1.0.2"
- get-stream "^5.1.0"
- http-cache-semantics "^4.0.0"
- keyv "^4.0.0"
- lowercase-keys "^2.0.0"
- normalize-url "^6.0.1"
- responselike "^2.0.0"
-
-cachedown@1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/cachedown/-/cachedown-1.0.0.tgz#d43f036e4510696b31246d7db31ebf0f7ac32d15"
- integrity sha512-t+yVk82vQWCJF3PsWHMld+jhhjkkWjcAzz8NbFx1iULOXWl8Tm/FdM4smZNVw3MRr0X+lVTx9PKzvEn4Ng19RQ==
- dependencies:
- abstract-leveldown "^2.4.1"
- lru-cache "^3.2.0"
-
-call-bind@^1.0.0, call-bind@^1.0.2, call-bind@^1.0.4, call-bind@^1.0.5, call-bind@~1.0.2:
+call-bind@^1.0.0, call-bind@^1.0.2, call-bind@^1.0.4, call-bind@^1.0.5:
version "1.0.5"
resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.5.tgz#6fa2b7845ce0ea49bf4d8b9ef64727a2c2e2e513"
integrity sha512-C3nQxfFZxFRVoJoGKKI8y3MOEo129NQ+FgQ08iye+Mk4zNZZGdjfs06bVTr+DBSlA66Q2VEcMki/cUCP4SercQ==
@@ -4916,11 +4214,6 @@ callsites@^3.0.0, callsites@^3.1.0:
resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73"
integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==
-camelcase@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-3.0.0.tgz#32fc4b9fcdaf845fcdf7e73bb97cac2261f0ab0a"
- integrity sha512-4nhGqUkc4BqbBBB4Q6zLuD7lzzrHYrjKGeYaEji/3tFR5VdJu9v+LilhGIVe8wxEJPPOeWo7eg8dwY13TZ1BNg==
-
camelcase@^5.3.1:
version "5.3.1"
resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320"
@@ -4931,11 +4224,6 @@ camelcase@^6.0.0, camelcase@^6.2.0:
resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a"
integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==
-caniuse-lite@^1.0.30000844:
- version "1.0.30001570"
- resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001570.tgz#b4e5c1fa786f733ab78fc70f592df6b3f23244ca"
- integrity sha512-+3e0ASu4sw1SWaoCtvPeyXp+5PsjigkSt8OXZbF9StH5pQWbxEjLAZE3n8Aup5udop1uRiKA7a4utUk/uoSpUw==
-
caniuse-lite@^1.0.30001541:
version "1.0.30001558"
resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001558.tgz#d2c6e21fdbfe83817f70feab902421a19b7983ee"
@@ -4951,7 +4239,7 @@ caseless@^0.12.0, caseless@~0.12.0:
resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc"
integrity sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==
-catering@^2.1.0, catering@^2.1.1:
+catering@^2.0.0, catering@^2.1.0, catering@^2.1.1:
version "2.1.1"
resolved "https://registry.yarnpkg.com/catering/-/catering-2.1.1.tgz#66acba06ed5ee28d5286133982a927de9a04b510"
integrity sha512-K7Qy8O9p76sL3/3m7/zLKbRkyOlSZAgzEaLhyj2mXS8PsCud2Eo4hAb8aLtZqHh0QGqLcb9dlJSu6lHRVENm1w==
@@ -4970,6 +4258,19 @@ chai-as-promised@^7.1.1:
dependencies:
check-error "^1.0.2"
+chai@^4.3.10:
+ version "4.4.0"
+ resolved "https://registry.yarnpkg.com/chai/-/chai-4.4.0.tgz#f9ac79f26726a867ac9d90a9b382120479d5f55b"
+ integrity sha512-x9cHNq1uvkCdU+5xTkNh5WtgD4e4yDFCsp9jVc7N7qVeKeftv3gO/ZrviX5d+3ZfxdYnZXZYujjRInu1RogU6A==
+ dependencies:
+ assertion-error "^1.1.0"
+ check-error "^1.0.3"
+ deep-eql "^4.1.3"
+ get-func-name "^2.0.2"
+ loupe "^2.3.6"
+ pathval "^1.1.1"
+ type-detect "^4.0.8"
+
chai@^4.3.4:
version "4.3.10"
resolved "https://registry.yarnpkg.com/chai/-/chai-4.3.10.tgz#d784cec635e3b7e2ffb66446a63b4e33bd390384"
@@ -4998,17 +4299,6 @@ chalk@4.1.2, chalk@^4.0.0, chalk@^4.1.0, chalk@^4.1.2:
ansi-styles "^4.1.0"
supports-color "^7.1.0"
-chalk@^1.1.3:
- version "1.1.3"
- resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98"
- integrity sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==
- dependencies:
- ansi-styles "^2.2.1"
- escape-string-regexp "^1.0.2"
- has-ansi "^2.0.0"
- strip-ansi "^3.0.0"
- supports-color "^2.0.0"
-
chalk@^2.4.1, chalk@^2.4.2:
version "2.4.2"
resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424"
@@ -5045,13 +4335,6 @@ check-error@^1.0.2, check-error@^1.0.3:
dependencies:
get-func-name "^2.0.2"
-checkpoint-store@^1.1.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/checkpoint-store/-/checkpoint-store-1.1.0.tgz#04e4cb516b91433893581e6d4601a78e9552ea06"
- integrity sha512-J/NdY2WvIx654cc6LWSq/IYFFCUf75fFTgwzFnmbqyORH4MwgiQCgswLLKBGzmsyTI5V7i5bp/So6sMbDWhedg==
- dependencies:
- functional-red-black-tree "^1.0.1"
-
chokidar@3.5.3, chokidar@^3.4.0:
version "3.5.3"
resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.3.tgz#1cf37c8707b932bd1af1ae22c0432e2acd1903bd"
@@ -5067,7 +4350,7 @@ chokidar@3.5.3, chokidar@^3.4.0:
optionalDependencies:
fsevents "~2.3.2"
-chownr@^1.0.1, chownr@^1.1.1, chownr@^1.1.4:
+chownr@^1.0.1, chownr@^1.1.1:
version "1.1.4"
resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.4.tgz#6fc9d7b42d32a583596337666e7d08084da2cc6b"
integrity sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==
@@ -5082,17 +4365,6 @@ ci-info@^3.2.0:
resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-3.9.0.tgz#4279a62028a7b1f262f3473fc9605f5e218c59b4"
integrity sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==
-cids@^0.7.1:
- version "0.7.5"
- resolved "https://registry.yarnpkg.com/cids/-/cids-0.7.5.tgz#60a08138a99bfb69b6be4ceb63bfef7a396b28b2"
- integrity sha512-zT7mPeghoWAu+ppn8+BS1tQ5qGmbMfB4AregnQjA/qHY3GC1m1ptI9GkWNlgeu38r7CuRdXB47uY2XgAYt6QVA==
- dependencies:
- buffer "^5.5.0"
- class-is "^1.1.0"
- multibase "~0.6.0"
- multicodec "^1.0.0"
- multihashes "~0.4.15"
-
cipher-base@^1.0.0, cipher-base@^1.0.1, cipher-base@^1.0.3:
version "1.0.4"
resolved "https://registry.yarnpkg.com/cipher-base/-/cipher-base-1.0.4.tgz#8760e4ecc272f4c363532f926d874aae2c1397de"
@@ -5106,21 +4378,6 @@ cjs-module-lexer@^1.0.0:
resolved "https://registry.yarnpkg.com/cjs-module-lexer/-/cjs-module-lexer-1.2.3.tgz#6c370ab19f8a3394e318fe682686ec0ac684d107"
integrity sha512-0TNiGstbQmCFwt4akjjBg5pLRTSyj/PkWQ1ZoO2zntmg9yLqSRxwEa4iCfQLGjqhiqBfOJa7W/E8wfGrTDmlZQ==
-class-is@^1.1.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/class-is/-/class-is-1.1.0.tgz#9d3c0fba0440d211d843cec3dedfa48055005825"
- integrity sha512-rhjH9AG1fvabIDoGRVH587413LPjTZgmDF9fOFCbFJQV4yuocX1mHxxvXI4g3cGwbVY9wAYIoKlg1N79frJKQw==
-
-class-utils@^0.3.5:
- version "0.3.6"
- resolved "https://registry.yarnpkg.com/class-utils/-/class-utils-0.3.6.tgz#f93369ae8b9a7ce02fd41faad0ca83033190c463"
- integrity sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==
- dependencies:
- arr-union "^3.1.0"
- define-property "^0.2.5"
- isobject "^3.0.0"
- static-extend "^0.1.1"
-
classic-level@^1.2.0:
version "1.3.0"
resolved "https://registry.yarnpkg.com/classic-level/-/classic-level-1.3.0.tgz#5e36680e01dc6b271775c093f2150844c5edd5c8"
@@ -5176,15 +4433,6 @@ cli-width@^2.0.0:
resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.1.tgz#b0433d0b4e9c847ef18868a4ef16fd5fc8271c48"
integrity sha512-GRMWDxpOB6Dgk2E5Uo+3eEBvtOOlimMmpbFiKuLFnQzYDavtLFY3K5ona41jgN/WdRZtG7utuVSVTL4HbZHGkw==
-cliui@^3.2.0:
- version "3.2.0"
- resolved "https://registry.yarnpkg.com/cliui/-/cliui-3.2.0.tgz#120601537a916d29940f934da3b48d585a39213d"
- integrity sha512-0yayqDxWQbqk3ojkYqUKqaAQ6AfNKeKWRNA8kR0WXzAsdHpP4BIaOmMAG87JGuO6qcobyW4GjxHd9PmhEd+T9w==
- dependencies:
- string-width "^1.0.1"
- strip-ansi "^3.0.1"
- wrap-ansi "^2.0.0"
-
cliui@^7.0.2:
version "7.0.4"
resolved "https://registry.yarnpkg.com/cliui/-/cliui-7.0.4.tgz#a0265ee655476fc807aea9df3df8df7783808b4f"
@@ -5203,18 +4451,6 @@ cliui@^8.0.1:
strip-ansi "^6.0.1"
wrap-ansi "^7.0.0"
-clone-response@^1.0.2:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/clone-response/-/clone-response-1.0.3.tgz#af2032aa47816399cf5f0a1d0db902f517abb8c3"
- integrity sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==
- dependencies:
- mimic-response "^1.0.0"
-
-clone@2.1.2, clone@^2.0.0:
- version "2.1.2"
- resolved "https://registry.yarnpkg.com/clone/-/clone-2.1.2.tgz#1b7f4b9f591f1e8f83670401600345a02887435f"
- integrity sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==
-
co@^4.6.0:
version "4.6.0"
resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184"
@@ -5225,24 +4461,11 @@ code-block-writer@^12.0.0:
resolved "https://registry.yarnpkg.com/code-block-writer/-/code-block-writer-12.0.0.tgz#4dd58946eb4234105aff7f0035977b2afdc2a770"
integrity sha512-q4dMFMlXtKR3XNBHyMHt/3pwYNA69EDk00lloMOaaUMKPUXBw6lpXtbu3MMVG6/uOihGnRDOlkyqsONEUj60+w==
-code-point-at@^1.0.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77"
- integrity sha512-RpAVKQA5T63xEj6/giIbUEtZwJ4UFIc3ZtvEkiaUERylqe8xb5IvqcgOurZLahv93CLKfxcw5YI+DZcUBRyLXA==
-
collect-v8-coverage@^1.0.0:
version "1.0.2"
resolved "https://registry.yarnpkg.com/collect-v8-coverage/-/collect-v8-coverage-1.0.2.tgz#c0b29bcd33bcd0779a1344c2136051e6afd3d9e9"
integrity sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q==
-collection-visit@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/collection-visit/-/collection-visit-1.0.0.tgz#4bc0373c164bc3291b4d368c829cf1a80a59dca0"
- integrity sha512-lNkKvzEeMBBjUGHZ+q6z9pSJla0KWAQPvtzhEV9+iGyQYG+pBpl7xKDhxoNSOZH2hhv0v5k0y2yAM4o4SjoSkw==
- dependencies:
- map-visit "^1.0.0"
- object-visit "^1.0.0"
-
collections@^5.1.12:
version "5.1.13"
resolved "https://registry.yarnpkg.com/collections/-/collections-5.1.13.tgz#eee204a93b67473c8e74e00e934a997cc2817585"
@@ -5300,6 +4523,26 @@ command-line-args@^4.0.7:
find-replace "^1.0.3"
typical "^2.6.1"
+command-line-args@^5.1.1:
+ version "5.2.1"
+ resolved "https://registry.yarnpkg.com/command-line-args/-/command-line-args-5.2.1.tgz#c44c32e437a57d7c51157696893c5909e9cec42e"
+ integrity sha512-H4UfQhZyakIjC74I9d34fGYDwk3XpSr17QhEd0Q3I9Xq1CETHo4Hcuo87WyWHpAF1aSLjLRf5lD9ZGX2qStUvg==
+ dependencies:
+ array-back "^3.1.0"
+ find-replace "^3.0.0"
+ lodash.camelcase "^4.3.0"
+ typical "^4.0.0"
+
+command-line-usage@^6.1.0:
+ version "6.1.3"
+ resolved "https://registry.yarnpkg.com/command-line-usage/-/command-line-usage-6.1.3.tgz#428fa5acde6a838779dfa30e44686f4b6761d957"
+ integrity sha512-sH5ZSPr+7UStsloltmDh7Ce5fb8XPlHyoPzTpyyMuYCtervL65+ubVZ6Q61cFtFl62UyJlc8/JwERRbAFPUqgw==
+ dependencies:
+ array-back "^4.0.2"
+ chalk "^2.4.2"
+ table-layout "^1.0.2"
+ typical "^5.2.0"
+
commander@3.0.2:
version "3.0.2"
resolved "https://registry.yarnpkg.com/commander/-/commander-3.0.2.tgz#6837c3fb677ad9933d1cfba42dd14d5117d6b39e"
@@ -5358,17 +4601,12 @@ comment-json@^4.2.3:
has-own-prop "^2.0.0"
repeat-string "^1.6.1"
-component-emitter@^1.2.1:
- version "1.3.1"
- resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.3.1.tgz#ef1d5796f7d93f135ee6fb684340b26403c97d17"
- integrity sha512-T0+barUSQRTUQASh8bx02dl+DhF54GtIDY13Y3m9oWTklKbb3Wv974meRpeZ3lp1JpLVECWWNHC4vaG2XHXouQ==
-
concat-map@0.0.1:
version "0.0.1"
resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b"
integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==
-concat-stream@^1.5.1, concat-stream@^1.6.0, concat-stream@^1.6.2, concat-stream@~1.6.2:
+concat-stream@^1.6.0, concat-stream@^1.6.2, concat-stream@~1.6.2:
version "1.6.2"
resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.2.tgz#904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34"
integrity sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==
@@ -5389,68 +4627,22 @@ configstore@^6.0.0:
write-file-atomic "^3.0.3"
xdg-basedir "^5.0.1"
-content-disposition@0.5.4:
- version "0.5.4"
- resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.4.tgz#8b82b4efac82512a02bb0b1dcec9d2c5e8eb5bfe"
- integrity sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==
- dependencies:
- safe-buffer "5.2.1"
-
-content-hash@^2.5.2:
- version "2.5.2"
- resolved "https://registry.yarnpkg.com/content-hash/-/content-hash-2.5.2.tgz#bbc2655e7c21f14fd3bfc7b7d4bfe6e454c9e211"
- integrity sha512-FvIQKy0S1JaWV10sMsA7TRx8bpU+pqPkhbsfvOJAdjRXvYxEckAwQWGwtRjiaJfh+E0DvcWUGqcdjwMGFjsSdw==
- dependencies:
- cids "^0.7.1"
- multicodec "^0.5.5"
- multihashes "^0.4.15"
-
-content-type@~1.0.4, content-type@~1.0.5:
- version "1.0.5"
- resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.5.tgz#8b773162656d1d1086784c8f23a54ce6d73d7918"
- integrity sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==
-
-convert-source-map@^1.5.1:
- version "1.9.0"
- resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.9.0.tgz#7faae62353fb4213366d0ca98358d22e8368b05f"
- integrity sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==
-
convert-source-map@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-2.0.0.tgz#4b560f649fc4e918dd0ab75cf4961e8bc882d82a"
integrity sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==
-cookie-signature@1.0.6:
- version "1.0.6"
- resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c"
- integrity sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==
-
-cookie@0.5.0:
- version "0.5.0"
- resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.5.0.tgz#d1f5d71adec6558c58f389987c366aa47e994f8b"
- integrity sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==
-
cookie@^0.4.1:
version "0.4.2"
resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.4.2.tgz#0e41f24de5ecf317947c82fc789e06a884824432"
integrity sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==
-cookiejar@^2.1.1:
- version "2.1.4"
- resolved "https://registry.yarnpkg.com/cookiejar/-/cookiejar-2.1.4.tgz#ee669c1fea2cf42dc31585469d193fef0d65771b"
- integrity sha512-LDx6oHrK+PhzLKJU9j5S7/Y3jM/mUHvD/DeI1WQmJn652iPC5Y4TBzC9l+5OMOXlyTTA+SmVUPm0HQUwpD5Jqw==
-
-copy-descriptor@^0.1.0:
- version "0.1.1"
- resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d"
- integrity sha512-XgZ0pFcakEUlbwQEVNg3+QAis1FyTL3Qel9FYy8pSkQqoG3PNoT0bOCQtOXcOkur21r2Eq2kI+IE+gsmAEVlYw==
-
core-js-pure@^3.0.1:
version "3.34.0"
resolved "https://registry.yarnpkg.com/core-js-pure/-/core-js-pure-3.34.0.tgz#981e462500708664c91b827a75b011f04a8134a0"
integrity sha512-pmhivkYXkymswFfbXsANmBAewXx86UBfmagP+w0wkK06kLsLlTK5oQmsURPivzMkIBQiYq2cjamcZExIwlFQIg==
-core-js@^2.4.0, core-js@^2.5.0:
+core-js@^2.4.0:
version "2.6.12"
resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.6.12.tgz#d9333dfa7b065e347cc5682219d6f690859cc2ec"
integrity sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==
@@ -5465,14 +4657,6 @@ core-util-is@^1.0.3, core-util-is@~1.0.0:
resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.3.tgz#a6042d3634c2b27e9328f837b965fac83808db85"
integrity sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==
-cors@^2.8.1:
- version "2.8.5"
- resolved "https://registry.yarnpkg.com/cors/-/cors-2.8.5.tgz#eac11da51592dd86b9f06f6e7ac293b3df875d29"
- integrity sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==
- dependencies:
- object-assign "^4"
- vary "^1"
-
cosmiconfig@^8.0.0:
version "8.3.6"
resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-8.3.6.tgz#060a2b871d66dba6c8538ea1118ba1ac16f5fae3"
@@ -5496,14 +4680,6 @@ crc-32@^1.2.0:
resolved "https://registry.yarnpkg.com/crc-32/-/crc-32-1.2.2.tgz#3cad35a934b8bf71f25ca524b6da51fb7eace2ff"
integrity sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ==
-create-ecdh@^4.0.0:
- version "4.0.4"
- resolved "https://registry.yarnpkg.com/create-ecdh/-/create-ecdh-4.0.4.tgz#d6e7f4bffa66736085a0762fd3a632684dabcc4e"
- integrity sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==
- dependencies:
- bn.js "^4.1.0"
- elliptic "^6.5.3"
-
create-hash@^1.1.0, create-hash@^1.1.2, create-hash@^1.2.0:
version "1.2.0"
resolved "https://registry.yarnpkg.com/create-hash/-/create-hash-1.2.0.tgz#889078af11a63756bcfb59bd221996be3a9ef196"
@@ -5515,7 +4691,7 @@ create-hash@^1.1.0, create-hash@^1.1.2, create-hash@^1.2.0:
ripemd160 "^2.0.1"
sha.js "^2.4.0"
-create-hmac@^1.1.0, create-hmac@^1.1.4, create-hmac@^1.1.7:
+create-hmac@^1.1.4, create-hmac@^1.1.7:
version "1.1.7"
resolved "https://registry.yarnpkg.com/create-hmac/-/create-hmac-1.1.7.tgz#69170c78b3ab957147b2b8b04572e47ead2243ff"
integrity sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==
@@ -5545,14 +4721,6 @@ create-require@^1.1.0:
resolved "https://registry.yarnpkg.com/create-require/-/create-require-1.1.1.tgz#c1d7e8f1e5f6cfc9ff65f9cd352d37348756c333"
integrity sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==
-cross-fetch@^2.1.0, cross-fetch@^2.1.1:
- version "2.2.6"
- resolved "https://registry.yarnpkg.com/cross-fetch/-/cross-fetch-2.2.6.tgz#2ef0bb39a24ac034787965c457368a28730e220a"
- integrity sha512-9JZz+vXCmfKUZ68zAptS7k4Nu8e2qcibe7WVZYps7sAgk5R8GYTc+T1WR0v1rlP9HxgARmOX1UTIJZFytajpNA==
- dependencies:
- node-fetch "^2.6.7"
- whatwg-fetch "^2.0.4"
-
cross-spawn@^6.0.5:
version "6.0.5"
resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4"
@@ -5564,7 +4732,7 @@ cross-spawn@^6.0.5:
shebang-command "^1.2.0"
which "^1.2.9"
-cross-spawn@^7.0.2, cross-spawn@^7.0.3:
+cross-spawn@^7.0.0, cross-spawn@^7.0.2, cross-spawn@^7.0.3:
version "7.0.3"
resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6"
integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==
@@ -5578,27 +4746,10 @@ cross-spawn@^7.0.2, cross-spawn@^7.0.3:
resolved "https://registry.yarnpkg.com/crypt/-/crypt-0.0.2.tgz#88d7ff7ec0dfb86f713dc87bbb42d044d3e6c41b"
integrity sha512-mCxBlsHFYh9C+HVpiEacem8FEBnMXgU9gy4zmNC+SXAZNB/1idgp/aulFJ4FgCi7GPEVbfyng092GqL2k2rmow==
-crypto-browserify@3.12.0:
- version "3.12.0"
- resolved "https://registry.yarnpkg.com/crypto-browserify/-/crypto-browserify-3.12.0.tgz#396cf9f3137f03e4b8e532c58f698254e00f80ec"
- integrity sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==
- dependencies:
- browserify-cipher "^1.0.0"
- browserify-sign "^4.0.0"
- create-ecdh "^4.0.0"
- create-hash "^1.1.0"
- create-hmac "^1.1.0"
- diffie-hellman "^5.0.0"
- inherits "^2.0.1"
- pbkdf2 "^3.0.3"
- public-encrypt "^4.0.0"
- randombytes "^2.0.0"
- randomfill "^1.0.3"
-
-crypto-js@^3.1.9-1:
- version "3.3.0"
- resolved "https://registry.yarnpkg.com/crypto-js/-/crypto-js-3.3.0.tgz#846dd1cce2f68aacfa156c8578f926a609b7976b"
- integrity sha512-DIT51nX0dCfKltpRiXV+/TVZq+Qq2NgF4644+K7Ttnla7zEzqc+kjJyiB96BHNyUTBxyjzRcZYpUdZa+QAqi6Q==
+crypto-js@^4.2.0:
+ version "4.2.0"
+ resolved "https://registry.yarnpkg.com/crypto-js/-/crypto-js-4.2.0.tgz#4d931639ecdfd12ff80e8186dba6af2c2e856631"
+ integrity sha512-KALDyEYgpY+Rlob/iriUtjV6d5Eq+Y191A5g4UqLAi8CyGP9N1+FdVbkc1SxKc2r4YAYqG8JzO2KGL+AizD70Q==
crypto-random-string@^4.0.0:
version "4.0.0"
@@ -5607,76 +4758,76 @@ crypto-random-string@^4.0.0:
dependencies:
type-fest "^1.0.1"
-cspell-config-lib@8.1.3:
- version "8.1.3"
- resolved "https://registry.yarnpkg.com/cspell-config-lib/-/cspell-config-lib-8.1.3.tgz#5cd4a8e4d844e9b5737825bda5b445ed50795f88"
- integrity sha512-whzJYxcxos3vnywn0alCFZ+Myc0K/C62pUurfOGhgvIba7ArmlXhNRaL2r5noBxWARtpBOtzz3vrzSBK7Lq6jg==
+cspell-config-lib@8.3.2:
+ version "8.3.2"
+ resolved "https://registry.yarnpkg.com/cspell-config-lib/-/cspell-config-lib-8.3.2.tgz#050a6d782072a810cb6655efe11c08c80ae7636b"
+ integrity sha512-Wc98XhBNLwDxnxCzMtgRJALI9a69cu3C5Gf1rGjNTKSFo9JYiQmju0Ur3z25Pkx9Sa86f+2IjvNCf33rUDSoBQ==
dependencies:
- "@cspell/cspell-types" "8.1.3"
+ "@cspell/cspell-types" "8.3.2"
comment-json "^4.2.3"
yaml "^2.3.4"
-cspell-dictionary@8.1.3:
- version "8.1.3"
- resolved "https://registry.yarnpkg.com/cspell-dictionary/-/cspell-dictionary-8.1.3.tgz#7294ade35ceb388cb841a6ac8435b631aa1cac68"
- integrity sha512-nkRQDPNnA6tw+hJFBqq26M0nK306q5rtyv/AUIWa8ZHhQkwzACnpMSpuJA7/DV5GVvPKltMK5M4A6vgfpoaFHw==
+cspell-dictionary@8.3.2:
+ version "8.3.2"
+ resolved "https://registry.yarnpkg.com/cspell-dictionary/-/cspell-dictionary-8.3.2.tgz#6627a94501811a143f3b638e0e77f7262335dbd4"
+ integrity sha512-xyK95hO2BMPFxIo8zBwGml8035qOxSBdga1BMhwW/p2wDrQP8S4Cdm/54//tCDmKn6uRkFQvyOfWGaX2l8WMEg==
dependencies:
- "@cspell/cspell-pipe" "8.1.3"
- "@cspell/cspell-types" "8.1.3"
- cspell-trie-lib "8.1.3"
+ "@cspell/cspell-pipe" "8.3.2"
+ "@cspell/cspell-types" "8.3.2"
+ cspell-trie-lib "8.3.2"
fast-equals "^5.0.1"
gensequence "^6.0.0"
-cspell-gitignore@8.1.3:
- version "8.1.3"
- resolved "https://registry.yarnpkg.com/cspell-gitignore/-/cspell-gitignore-8.1.3.tgz#1d2ec9dc8d97ea8291a197e5acf6d6b6c9634193"
- integrity sha512-NHx5lg44eCKb6yJmUPOCz4prcuYowzoo5GJ5hOcCfbk7ZEBWV1E2/kDRuQMOK2W0y1hNGr45CSxO3UxWJlYg7w==
+cspell-gitignore@8.3.2:
+ version "8.3.2"
+ resolved "https://registry.yarnpkg.com/cspell-gitignore/-/cspell-gitignore-8.3.2.tgz#5cf244be494bf87257ca8715ac88b0849dd5fef3"
+ integrity sha512-3Qc9P5BVvl/cg//s2s+zIMGKcoH5v7oOtRgwn4UQry8yiyo19h0tiTKkSR574FMhF5NtcShTnwIwPSIXVBPFHA==
dependencies:
- cspell-glob "8.1.3"
+ cspell-glob "8.3.2"
find-up-simple "^1.0.0"
-cspell-glob@8.1.3:
- version "8.1.3"
- resolved "https://registry.yarnpkg.com/cspell-glob/-/cspell-glob-8.1.3.tgz#3eeecbf6ecbfab184107021fdf8691ce4e8fa6c5"
- integrity sha512-Likr7UVUXBpthQnM5r6yao3X0YBNRbJ9AHWXTC2RJfzwZOFKF+pKPfeo3FU+Px8My96M4RC2bVMbrbZUwN5NJw==
+cspell-glob@8.3.2:
+ version "8.3.2"
+ resolved "https://registry.yarnpkg.com/cspell-glob/-/cspell-glob-8.3.2.tgz#4c208e4ddd5604d2871df534a3054c7a3fdc9998"
+ integrity sha512-KtIFxE+3l5dGEofND4/CdZffXP8XN1+XGQKxJ96lIzWsc01mkotfhxTkla6mgvfH039t7BsY/SWv0460KyGslQ==
dependencies:
micromatch "^4.0.5"
-cspell-grammar@8.1.3:
- version "8.1.3"
- resolved "https://registry.yarnpkg.com/cspell-grammar/-/cspell-grammar-8.1.3.tgz#8ee7d4cef92053c53b320ae105e64b771c73d21e"
- integrity sha512-dTOwNq6a5wcVzOsi4xY5/tq2r2w/+wLVU+WfyySTsPe66Rjqx/QceFl4OinImks/ZMKF7Zyjd3WGyQ5TcSsJFQ==
+cspell-grammar@8.3.2:
+ version "8.3.2"
+ resolved "https://registry.yarnpkg.com/cspell-grammar/-/cspell-grammar-8.3.2.tgz#69d7980c036c206745d5d417d32c95edaaff6107"
+ integrity sha512-tYCkOmRzJe1a6/R+8QGSwG7TwTgznLPqsHtepKzLmnS4YX54VXjKRI9zMARxXDzUVfyCSVdW5MyiY/0WTNoy+A==
dependencies:
- "@cspell/cspell-pipe" "8.1.3"
- "@cspell/cspell-types" "8.1.3"
+ "@cspell/cspell-pipe" "8.3.2"
+ "@cspell/cspell-types" "8.3.2"
-cspell-io@8.1.3:
- version "8.1.3"
- resolved "https://registry.yarnpkg.com/cspell-io/-/cspell-io-8.1.3.tgz#57e99a78d998d5ab6a7a09468892174f1233b62b"
- integrity sha512-QkcFeYd79oIl7PgSqFSZyvwXnZQhXmdCI733n54IN2+iXDcf7W0mwptxoC/cE19RkEwAwEFLG81UAy6L/BXI6A==
+cspell-io@8.3.2:
+ version "8.3.2"
+ resolved "https://registry.yarnpkg.com/cspell-io/-/cspell-io-8.3.2.tgz#8ddd865fa9a1391852e3288789f5b2a6613239bd"
+ integrity sha512-WYpKsyBCQP0SY4gXnhW5fPuxcYchKYKG1PIXVV3ezFU4muSgW6GuLNbGuSfwv/8YNXRgFSN0e3hYH0rdBK2Aow==
dependencies:
- "@cspell/cspell-service-bus" "8.1.3"
+ "@cspell/cspell-service-bus" "8.3.2"
-cspell-lib@8.1.3:
- version "8.1.3"
- resolved "https://registry.yarnpkg.com/cspell-lib/-/cspell-lib-8.1.3.tgz#5c1f87c4adb2643baa510cf1bec083bd9145b5ab"
- integrity sha512-Kk8bpHVkDZO4MEiPkDvRf/LgJ0h5mufbKLTWModq6k0Ca8EkZ/qgQlZ0ve0rIivbleSqebuWjpJHKDM+IHmzHA==
- dependencies:
- "@cspell/cspell-bundled-dicts" "8.1.3"
- "@cspell/cspell-pipe" "8.1.3"
- "@cspell/cspell-resolver" "8.1.3"
- "@cspell/cspell-types" "8.1.3"
- "@cspell/dynamic-import" "8.1.3"
- "@cspell/strong-weak-map" "8.1.3"
+cspell-lib@8.3.2:
+ version "8.3.2"
+ resolved "https://registry.yarnpkg.com/cspell-lib/-/cspell-lib-8.3.2.tgz#8225f8d3a20596bda4b9689a2ad958f7831f5a7d"
+ integrity sha512-wTvdaev/TyGB/ln6CVD1QbVs2D7/+QiajQ67S7yj1suLHM6YcNQQb/5sPAM8VPtj0E7PgwgPXf3bq18OtPvnFg==
+ dependencies:
+ "@cspell/cspell-bundled-dicts" "8.3.2"
+ "@cspell/cspell-pipe" "8.3.2"
+ "@cspell/cspell-resolver" "8.3.2"
+ "@cspell/cspell-types" "8.3.2"
+ "@cspell/dynamic-import" "8.3.2"
+ "@cspell/strong-weak-map" "8.3.2"
clear-module "^4.1.2"
comment-json "^4.2.3"
configstore "^6.0.0"
- cspell-config-lib "8.1.3"
- cspell-dictionary "8.1.3"
- cspell-glob "8.1.3"
- cspell-grammar "8.1.3"
- cspell-io "8.1.3"
- cspell-trie-lib "8.1.3"
+ cspell-config-lib "8.3.2"
+ cspell-dictionary "8.3.2"
+ cspell-glob "8.3.2"
+ cspell-grammar "8.3.2"
+ cspell-io "8.3.2"
+ cspell-trie-lib "8.3.2"
fast-equals "^5.0.1"
gensequence "^6.0.0"
import-fresh "^3.3.0"
@@ -5684,47 +4835,39 @@ cspell-lib@8.1.3:
vscode-languageserver-textdocument "^1.0.11"
vscode-uri "^3.0.8"
-cspell-trie-lib@8.1.3:
- version "8.1.3"
- resolved "https://registry.yarnpkg.com/cspell-trie-lib/-/cspell-trie-lib-8.1.3.tgz#0831429f898f816c301ac440dc1f2b199d51f7ba"
- integrity sha512-EDSYU9MCtzPSJDrfvDrTKmc0rzl50Ehjg1c5rUCqn33p2LCRe/G8hW0FxXe0mxrZxrMO2b8l0PVSGlrCXCQ8RQ==
+cspell-trie-lib@8.3.2:
+ version "8.3.2"
+ resolved "https://registry.yarnpkg.com/cspell-trie-lib/-/cspell-trie-lib-8.3.2.tgz#e1e8c9926f41a094bec7f0af85b931be06019fe7"
+ integrity sha512-8qh2FqzkLMwzlTlvO/5Z+89fhi30rrfekocpight/BmqKbE2XFJQD7wS2ml24e7q/rdHJLXVpJbY/V5mByucCA==
dependencies:
- "@cspell/cspell-pipe" "8.1.3"
- "@cspell/cspell-types" "8.1.3"
+ "@cspell/cspell-pipe" "8.3.2"
+ "@cspell/cspell-types" "8.3.2"
gensequence "^6.0.0"
-cspell@^8.1.3:
- version "8.1.3"
- resolved "https://registry.yarnpkg.com/cspell/-/cspell-8.1.3.tgz#c8643b86d7e06b69e7032bf2ddf3b27563f85c43"
- integrity sha512-SU4Su6002bPoJYaiMeNV4wwLoS8TwaOgIwaTxhys3GDbJIxZV6CrDgwksezHcG7TZrC4yrveDVsdpnrzmQ7T5Q==
+cspell@*:
+ version "8.3.2"
+ resolved "https://registry.yarnpkg.com/cspell/-/cspell-8.3.2.tgz#56e7e919d87d38016b4c34b8c8ee745404c230a7"
+ integrity sha512-V8Ub3RO/a5lwSsltW/ib3Z3G/sczKtSpBBN1JChzbSCfEgaY2mJY8JW0BpkSV+Ug6uJitpXNOOaxa3Xr489i7g==
dependencies:
- "@cspell/cspell-json-reporter" "8.1.3"
- "@cspell/cspell-pipe" "8.1.3"
- "@cspell/cspell-types" "8.1.3"
- "@cspell/dynamic-import" "8.1.3"
+ "@cspell/cspell-json-reporter" "8.3.2"
+ "@cspell/cspell-pipe" "8.3.2"
+ "@cspell/cspell-types" "8.3.2"
+ "@cspell/dynamic-import" "8.3.2"
chalk "^5.3.0"
chalk-template "^1.1.0"
commander "^11.1.0"
- cspell-gitignore "8.1.3"
- cspell-glob "8.1.3"
- cspell-io "8.1.3"
- cspell-lib "8.1.3"
+ cspell-gitignore "8.3.2"
+ cspell-glob "8.3.2"
+ cspell-io "8.3.2"
+ cspell-lib "8.3.2"
fast-glob "^3.3.2"
fast-json-stable-stringify "^2.1.0"
- file-entry-cache "^7.0.2"
+ file-entry-cache "^8.0.0"
get-stdin "^9.0.0"
semver "^7.5.4"
strip-ansi "^7.1.0"
vscode-uri "^3.0.8"
-d@1, d@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/d/-/d-1.0.1.tgz#8698095372d58dbee346ffd0c7093f99f8f9eb5a"
- integrity sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==
- dependencies:
- es5-ext "^0.10.50"
- type "^1.0.1"
-
dashdash@^1.12.0:
version "1.14.1"
resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0"
@@ -5737,20 +4880,6 @@ death@^1.1.0:
resolved "https://registry.yarnpkg.com/death/-/death-1.1.0.tgz#01aa9c401edd92750514470b8266390c66c67318"
integrity sha512-vsV6S4KVHvTGxbEcij7hkWRv0It+sGGWVOM67dQde/o5Xjnr+KmLjxWJii2uEObIrt1CcM9w0Yaovx+iOlIL+w==
-debug@2.6.9, debug@^2.2.0, debug@^2.3.3, debug@^2.6.8, debug@^2.6.9:
- version "2.6.9"
- resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f"
- integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==
- dependencies:
- ms "2.0.0"
-
-debug@3.2.6:
- version "3.2.6"
- resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b"
- integrity sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==
- dependencies:
- ms "^2.1.1"
-
debug@4, debug@4.3.4, debug@^4.0.1, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.3, debug@^4.3.4:
version "4.3.4"
resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865"
@@ -5765,6 +4894,13 @@ debug@4.3.3:
dependencies:
ms "2.1.2"
+debug@^2.2.0:
+ version "2.6.9"
+ resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f"
+ integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==
+ dependencies:
+ ms "2.0.0"
+
debug@^3.1.0, debug@^3.2.6, debug@^3.2.7:
version "3.2.7"
resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.7.tgz#72580b7e9145fb39b6676f9c5e5fb100b934179a"
@@ -5772,11 +4908,6 @@ debug@^3.1.0, debug@^3.2.6, debug@^3.2.7:
dependencies:
ms "^2.1.1"
-decamelize@^1.1.1:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290"
- integrity sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==
-
decamelize@^4.0.0:
version "4.0.0"
resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-4.0.0.tgz#aa472d7bf660eb15f3494efd531cab7f2a709837"
@@ -5787,25 +4918,6 @@ decimal.js-light@^2.5.0:
resolved "https://registry.yarnpkg.com/decimal.js-light/-/decimal.js-light-2.5.1.tgz#134fd32508f19e208f4fb2f8dac0d2626a867934"
integrity sha512-qIMFpTMZmny+MMIitAB6D7iVPEorVw6YQRWkvarTkT4tBeSLLiHzcwj6q0MmYSFCiVpiqPJTJEYIrpcPzVEIvg==
-decode-uri-component@^0.2.0:
- version "0.2.2"
- resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.2.tgz#e69dbe25d37941171dd540e024c444cd5188e1e9"
- integrity sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ==
-
-decompress-response@^3.3.0:
- version "3.3.0"
- resolved "https://registry.yarnpkg.com/decompress-response/-/decompress-response-3.3.0.tgz#80a4dd323748384bfa248083622aedec982adff3"
- integrity sha512-BzRPQuY1ip+qDonAOz42gRm/pg9F768C+npV/4JOsxRC2sq+Rlk+Q4ZCAsOhnIaMrgarILY+RMUIvMmmX1qAEA==
- dependencies:
- mimic-response "^1.0.0"
-
-decompress-response@^6.0.0:
- version "6.0.0"
- resolved "https://registry.yarnpkg.com/decompress-response/-/decompress-response-6.0.0.tgz#ca387612ddb7e104bd16d85aab00d5ecf09c66fc"
- integrity sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==
- dependencies:
- mimic-response "^3.1.0"
-
dedent@^1.0.0:
version "1.5.1"
resolved "https://registry.yarnpkg.com/dedent/-/dedent-1.5.1.tgz#4f3fc94c8b711e9bb2800d185cd6ad20f2a90aff"
@@ -5818,19 +4930,7 @@ deep-eql@^4.0.1, deep-eql@^4.1.3:
dependencies:
type-detect "^4.0.0"
-deep-equal@~1.1.1:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.1.2.tgz#78a561b7830eef3134c7f6f3a3d6af272a678761"
- integrity sha512-5tdhKF6DbU7iIzrIOa1AOUt39ZRm13cmL1cGEh//aqR8x9+tNfbywRf0n5FD/18OKMdo7DNEtrX2t22ZAkI+eg==
- dependencies:
- is-arguments "^1.1.1"
- is-date-object "^1.0.5"
- is-regex "^1.1.4"
- object-is "^1.1.5"
- object-keys "^1.1.1"
- regexp.prototype.flags "^1.5.1"
-
-deep-extend@^0.6.0:
+deep-extend@^0.6.0, deep-extend@~0.6.0:
version "0.6.0"
resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac"
integrity sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==
@@ -5868,29 +4968,12 @@ default-browser@^4.0.0:
execa "^7.1.1"
titleize "^3.0.0"
-defer-to-connect@^1.0.1:
- version "1.1.3"
- resolved "https://registry.yarnpkg.com/defer-to-connect/-/defer-to-connect-1.1.3.tgz#331ae050c08dcf789f8c83a7b81f0ed94f4ac591"
- integrity sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==
-
-defer-to-connect@^2.0.0:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/defer-to-connect/-/defer-to-connect-2.0.1.tgz#8016bdb4143e4632b77a3449c6236277de520587"
- integrity sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==
-
-deferred-leveldown@~1.2.1:
- version "1.2.2"
- resolved "https://registry.yarnpkg.com/deferred-leveldown/-/deferred-leveldown-1.2.2.tgz#3acd2e0b75d1669924bc0a4b642851131173e1eb"
- integrity sha512-uukrWD2bguRtXilKt6cAWKyoXrTSMo5m7crUdLfWQmu8kIm88w3QZoUL+6nhpfKVmhHANER6Re3sKoNoZ3IKMA==
- dependencies:
- abstract-leveldown "~2.6.0"
-
-deferred-leveldown@~4.0.0:
- version "4.0.2"
- resolved "https://registry.yarnpkg.com/deferred-leveldown/-/deferred-leveldown-4.0.2.tgz#0b0570087827bf480a23494b398f04c128c19a20"
- integrity sha512-5fMC8ek8alH16QiV0lTCis610D1Zt1+LA4MS4d63JgS32lrCjTFDUFz2ao09/j2I4Bqb5jL4FZYwu7Jz0XO1ww==
+deferred-leveldown@~5.3.0:
+ version "5.3.0"
+ resolved "https://registry.yarnpkg.com/deferred-leveldown/-/deferred-leveldown-5.3.0.tgz#27a997ad95408b61161aa69bd489b86c71b78058"
+ integrity sha512-a59VOT+oDy7vtAbLRCZwWgxu2BaCfd5Hk7wxJd48ei7I+nsg8Orlb9CLG0PMZienk9BSUKgeAqkO2+Lw+1+Ukw==
dependencies:
- abstract-leveldown "~5.0.0"
+ abstract-leveldown "~6.2.1"
inherits "^2.0.3"
define-data-property@^1.0.1, define-data-property@^1.1.1:
@@ -5916,33 +4999,6 @@ define-properties@^1.1.3, define-properties@^1.1.4, define-properties@^1.2.0:
has-property-descriptors "^1.0.0"
object-keys "^1.1.1"
-define-property@^0.2.5:
- version "0.2.5"
- resolved "https://registry.yarnpkg.com/define-property/-/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116"
- integrity sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==
- dependencies:
- is-descriptor "^0.1.0"
-
-define-property@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/define-property/-/define-property-1.0.0.tgz#769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6"
- integrity sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA==
- dependencies:
- is-descriptor "^1.0.0"
-
-define-property@^2.0.2:
- version "2.0.2"
- resolved "https://registry.yarnpkg.com/define-property/-/define-property-2.0.2.tgz#d459689e8d654ba77e02a817f8710d702cb16e9d"
- integrity sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==
- dependencies:
- is-descriptor "^1.0.2"
- isobject "^3.0.1"
-
-defined@~1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/defined/-/defined-1.0.1.tgz#c0b9db27bfaffd95d6f61399419b893df0f91ebf"
- integrity sha512-hsBd2qSVCRE+5PmNdHt1uzyrFu5d3RwmFDKzyNZMFq/EwDNJF7Ee5+D5oEKF0hU6LhtoUF1macFvOe4AskQC1Q==
-
delayed-stream@~1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619"
@@ -5953,26 +5009,6 @@ depd@2.0.0:
resolved "https://registry.yarnpkg.com/depd/-/depd-2.0.0.tgz#b696163cc757560d09cf22cc8fad1571b79e76df"
integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==
-des.js@^1.0.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/des.js/-/des.js-1.1.0.tgz#1d37f5766f3bbff4ee9638e871a8768c173b81da"
- integrity sha512-r17GxjhUCjSRy8aiJpr8/UadFIzMzJGexI3Nmz4ADi9LYSFx4gTBp80+NaX/YsXWWLhpZ7v/v/ubEc/bCNfKwg==
- dependencies:
- inherits "^2.0.1"
- minimalistic-assert "^1.0.0"
-
-destroy@1.2.0:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.2.0.tgz#4803735509ad8be552934c67df614f94e66fa015"
- integrity sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==
-
-detect-indent@^4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-4.0.0.tgz#f76d064352cdf43a1cb6ce619c4ee3a9475de208"
- integrity sha512-BDKtmHlOzwI7iRuEkhzsnPoi5ypEhWAJB5RvHWe1kMr06js3uK5B3734i3ui5Yd+wOJV1cpE4JnivPD283GU/A==
- dependencies:
- repeating "^2.0.0"
-
detect-newline@^3.0.0:
version "3.1.0"
resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-3.1.0.tgz#576f5dfc63ae1a192ff192d8ad3af6308991b651"
@@ -6001,15 +5037,6 @@ diff@^4.0.1:
resolved "https://registry.yarnpkg.com/diff/-/diff-4.0.2.tgz#60f3aecb89d5fae520c11aa19efc2bb982aade7d"
integrity sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==
-diffie-hellman@^5.0.0:
- version "5.0.3"
- resolved "https://registry.yarnpkg.com/diffie-hellman/-/diffie-hellman-5.0.3.tgz#40e8ee98f55a2149607146921c63e1ae5f3d2875"
- integrity sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==
- dependencies:
- bn.js "^4.1.0"
- miller-rabin "^4.0.0"
- randombytes "^2.0.0"
-
difflib@^0.2.4:
version "0.2.4"
resolved "https://registry.yarnpkg.com/difflib/-/difflib-0.2.4.tgz#b5e30361a6db023176d562892db85940a718f47e"
@@ -6049,10 +5076,10 @@ docker-modem@^3.0.0:
split-ca "^1.0.1"
ssh2 "^1.11.0"
-docker-modem@^5.0.0:
- version "5.0.1"
- resolved "https://registry.yarnpkg.com/docker-modem/-/docker-modem-5.0.1.tgz#106bab0886d4df4ed1ea9053f1863ade4adbe846"
- integrity sha512-vqrE/nrweCyzmCpVpdFRC41qS+tfTF+IoUKlTZr52O82urbUqdfyJBGWMvT01pYUprWepLr8IkyVTEWJKRTQSg==
+docker-modem@^5.0.2:
+ version "5.0.2"
+ resolved "https://registry.yarnpkg.com/docker-modem/-/docker-modem-5.0.2.tgz#d119282d85679a8e7bc788e620093f1348658b5d"
+ integrity sha512-1Nwtxsk3D6CMj7ovGxSj/r3cEw2EVcT4AsAOdKngDVn2mENnRdq5tIgwpjecgdEtPhd7U5Ww39FNzxo8k++ESw==
dependencies:
debug "^4.1.1"
readable-stream "^3.5.0"
@@ -6078,12 +5105,12 @@ dockerode@^3.3.4:
tar-fs "~2.0.1"
dockerode@^4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/dockerode/-/dockerode-4.0.0.tgz#9c9c66926da77f6f894ad54057737a0bc7d34712"
- integrity sha512-3LF7/3MPz5+9RsUo91rD0MCcx0yxjC9bnbtgtVjOLKyKxlZSJ7/Kk3OPAgARlwlWHqXwAGYhmkAHYx7IwD0tJQ==
+ version "4.0.1"
+ resolved "https://registry.yarnpkg.com/dockerode/-/dockerode-4.0.1.tgz#c1d4dad585c14f091a34aed394c63fb67e986c30"
+ integrity sha512-2TGh2Sb/r4X9xVVjtcfDoxIYLYdBI3cFCK1OApLfDW+iNdGWAdHq8wJU/CGqueOTYF1JBflUSFVPy2gw8NAJoA==
dependencies:
"@balena/dockerignore" "^1.0.2"
- docker-modem "^5.0.0"
+ docker-modem "^5.0.2"
tar-fs "~2.0.1"
doctrine@^2.1.0:
@@ -6100,11 +5127,6 @@ doctrine@^3.0.0:
dependencies:
esutils "^2.0.2"
-dom-walk@^0.1.0:
- version "0.1.2"
- resolved "https://registry.yarnpkg.com/dom-walk/-/dom-walk-0.1.2.tgz#0c548bef048f4d1f2a97249002236060daa3fd84"
- integrity sha512-6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w==
-
dot-prop@^6.0.1:
version "6.0.1"
resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-6.0.1.tgz#fc26b3cf142b9e59b74dbd39ed66ce620c681083"
@@ -6122,17 +5144,10 @@ dotenv@^8.2.0:
resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-8.6.0.tgz#061af664d19f7f4d8fc6e4ff9b584ce237adcb8b"
integrity sha512-IrPdXQsk2BbzvCBGBOTmmSH5SodmqZNt4ERAZDmW4CT+tL8VtvinqywuANaFu4bOMWki16nqf0e4oC0QIaDr/g==
-dotignore@~0.1.2:
- version "0.1.2"
- resolved "https://registry.yarnpkg.com/dotignore/-/dotignore-0.1.2.tgz#f942f2200d28c3a76fbdd6f0ee9f3257c8a2e905"
- integrity sha512-UGGGWfSauusaVJC+8fgV+NVvBXkCTmVv7sk6nojDZZvuOUNGUy0Zk4UpHQD6EDjS0jpBwcACvH4eofvyzBcRDw==
- dependencies:
- minimatch "^3.0.4"
-
-duplexer3@^0.1.4:
- version "0.1.5"
- resolved "https://registry.yarnpkg.com/duplexer3/-/duplexer3-0.1.5.tgz#0b5e4d7bad5de8901ea4440624c8e1d20099217e"
- integrity sha512-1A8za6ws41LQgv9HrE/66jyC5yuSjQ3L/KOpFtoBilsAK2iA2wuS5rTt1OCzIvtS2V7nVmedsUU+DGRcjBmOYA==
+eastasianwidth@^0.2.0:
+ version "0.2.0"
+ resolved "https://registry.yarnpkg.com/eastasianwidth/-/eastasianwidth-0.2.0.tgz#696ce2ec0aa0e6ea93a397ffcf24aa7840c827cb"
+ integrity sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==
ecc-jsbn@~0.1.1:
version "0.1.2"
@@ -6149,22 +5164,12 @@ ecdsa-sig-formatter@1.0.11:
dependencies:
safe-buffer "^5.0.1"
-ee-first@1.1.1:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d"
- integrity sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==
-
-electron-to-chromium@^1.3.47:
- version "1.4.611"
- resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.611.tgz#92d3a8f03110fbf5f99b054da97825f994fa480a"
- integrity sha512-ZtRpDxrjHapOwxtv+nuth5ByB8clyn8crVynmRNGO3wG3LOp8RTcyZDqwaI6Ng6y8FCK2hVZmJoqwCskKbNMaw==
-
electron-to-chromium@^1.4.535:
version "1.4.569"
resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.569.tgz#1298b67727187ffbaac005a7425490d157f3ad03"
integrity sha512-LsrJjZ0IbVy12ApW3gpYpcmHS3iRxH4bkKOW98y1/D+3cvDUWGcbzbsFinfUS8knpcZk/PG/2p/RnkMCYN7PVg==
-elliptic@6.5.4, elliptic@^6.4.0, elliptic@^6.5.2, elliptic@^6.5.3, elliptic@^6.5.4:
+elliptic@6.5.4, elliptic@^6.5.2, elliptic@^6.5.4:
version "6.5.4"
resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.4.tgz#da37cebd31e79a1367e941b592ed1fbebd58abbb"
integrity sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==
@@ -6177,6 +5182,11 @@ elliptic@6.5.4, elliptic@^6.4.0, elliptic@^6.5.2, elliptic@^6.5.3, elliptic@^6.5
minimalistic-assert "^1.0.1"
minimalistic-crypto-utils "^1.0.1"
+emittery@0.10.0:
+ version "0.10.0"
+ resolved "https://registry.yarnpkg.com/emittery/-/emittery-0.10.0.tgz#bb373c660a9d421bb44706ec4967ed50c02a8026"
+ integrity sha512-AGvFfs+d0JKCJQ4o01ASQLGPmSCxgfU9RFXvzPvZdjKK8oscynksuJhWrSTSw7j7Ep/sZct5b5ZhYCi8S/t0HQ==
+
emittery@^0.13.1:
version "0.13.1"
resolved "https://registry.yarnpkg.com/emittery/-/emittery-0.13.1.tgz#c04b8c3457490e0847ae51fced3af52d338e3dad"
@@ -6192,28 +5202,20 @@ emoji-regex@^8.0.0:
resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37"
integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==
-encodeurl@~1.0.2:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59"
- integrity sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==
+emoji-regex@^9.2.2:
+ version "9.2.2"
+ resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-9.2.2.tgz#840c8803b0d8047f4ff0cf963176b32d4ef3ed72"
+ integrity sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==
-encoding-down@5.0.4, encoding-down@~5.0.0:
- version "5.0.4"
- resolved "https://registry.yarnpkg.com/encoding-down/-/encoding-down-5.0.4.tgz#1e477da8e9e9d0f7c8293d320044f8b2cd8e9614"
- integrity sha512-8CIZLDcSKxgzT+zX8ZVfgNbu8Md2wq/iqa1Y7zyVR18QBEAc0Nmzuvj/N5ykSKpfGzjM8qxbaFntLPwnVoUhZw==
+encoding-down@^6.3.0:
+ version "6.3.0"
+ resolved "https://registry.yarnpkg.com/encoding-down/-/encoding-down-6.3.0.tgz#b1c4eb0e1728c146ecaef8e32963c549e76d082b"
+ integrity sha512-QKrV0iKR6MZVJV08QY0wp1e7vF6QbhnbQhb07bwpEyuz4uZiZgPlEGdkCROuFkUwdxlFaiPIhjyarH1ee/3vhw==
dependencies:
- abstract-leveldown "^5.0.0"
+ abstract-leveldown "^6.2.1"
inherits "^2.0.3"
level-codec "^9.0.0"
level-errors "^2.0.0"
- xtend "^4.0.1"
-
-encoding@^0.1.11:
- version "0.1.13"
- resolved "https://registry.yarnpkg.com/encoding/-/encoding-0.1.13.tgz#56574afdd791f54a8e9b2785c0582a2d26210fa9"
- integrity sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==
- dependencies:
- iconv-lite "^0.6.2"
end-of-stream@^1.0.0, end-of-stream@^1.1.0, end-of-stream@^1.4.1:
version "1.4.4"
@@ -6260,7 +5262,7 @@ errno@~0.1.1:
dependencies:
prr "~1.0.1"
-error-ex@^1.2.0, error-ex@^1.3.1:
+error-ex@^1.3.1:
version "1.3.2"
resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf"
integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==
@@ -6312,11 +5314,6 @@ es-abstract@^1.22.1:
unbox-primitive "^1.0.2"
which-typed-array "^1.1.13"
-es-array-method-boxes-properly@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/es-array-method-boxes-properly/-/es-array-method-boxes-properly-1.0.0.tgz#873f3e84418de4ee19c5be752990b2e44718d09e"
- integrity sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA==
-
es-set-tostringtag@^2.0.1:
version "2.0.2"
resolved "https://registry.yarnpkg.com/es-set-tostringtag/-/es-set-tostringtag-2.0.2.tgz#11f7cc9f63376930a5f20be4915834f4bc74f9c9"
@@ -6342,53 +5339,22 @@ es-to-primitive@^1.2.1:
is-date-object "^1.0.1"
is-symbol "^1.0.2"
-es5-ext@^0.10.35, es5-ext@^0.10.50:
- version "0.10.62"
- resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.62.tgz#5e6adc19a6da524bf3d1e02bbc8960e5eb49a9a5"
- integrity sha512-BHLqn0klhEpnOKSrzn/Xsz2UIW8j+cGmo9JLzr8BiUapV8hPL9+FliFqjwr9ngW7jWdnxv6eO+/LqyhJVqgrjA==
- dependencies:
- es6-iterator "^2.0.3"
- es6-symbol "^3.1.3"
- next-tick "^1.1.0"
-
-es6-iterator@^2.0.3:
- version "2.0.3"
- resolved "https://registry.yarnpkg.com/es6-iterator/-/es6-iterator-2.0.3.tgz#a7de889141a05a94b0854403b2d0a0fbfa98f3b7"
- integrity sha512-zw4SRzoUkd+cl+ZoE15A9o1oQd920Bb0iOJMQkQhl3jNc03YqVjAhG7scf9C5KWRU/R13Orf588uCC6525o02g==
- dependencies:
- d "1"
- es5-ext "^0.10.35"
- es6-symbol "^3.1.1"
-
es6-promisify@^6.0.0:
version "6.1.1"
resolved "https://registry.yarnpkg.com/es6-promisify/-/es6-promisify-6.1.1.tgz#46837651b7b06bf6fff893d03f29393668d01621"
integrity sha512-HBL8I3mIki5C1Cc9QjKUenHtnG0A5/xA8Q/AllRcfiwl2CZFXGK7ddBiCoRwAix4i2KxcQfjtIVcrVbB3vbmwg==
-es6-symbol@^3.1.1, es6-symbol@^3.1.3:
- version "3.1.3"
- resolved "https://registry.yarnpkg.com/es6-symbol/-/es6-symbol-3.1.3.tgz#bad5d3c1bcdac28269f4cb331e431c78ac705d18"
- integrity sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==
- dependencies:
- d "^1.0.1"
- ext "^1.1.2"
-
escalade@^3.1.1:
version "3.1.1"
resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40"
integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==
-escape-html@~1.0.3:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988"
- integrity sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==
-
escape-string-regexp@4.0.0, escape-string-regexp@^4.0.0:
version "4.0.0"
resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34"
integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==
-escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5:
+escape-string-regexp@^1.0.5:
version "1.0.5"
resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4"
integrity sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==
@@ -6665,32 +5631,6 @@ esutils@^2.0.2:
resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64"
integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==
-etag@~1.8.1:
- version "1.8.1"
- resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887"
- integrity sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==
-
-eth-block-tracker@^3.0.0:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/eth-block-tracker/-/eth-block-tracker-3.0.1.tgz#95cd5e763c7293e0b1b2790a2a39ac2ac188a5e1"
- integrity sha512-WUVxWLuhMmsfenfZvFO5sbl1qFY2IqUlw/FPVmjjdElpqLsZtSG+wPe9Dz7W/sB6e80HgFKknOmKk2eNlznHug==
- dependencies:
- eth-query "^2.1.0"
- ethereumjs-tx "^1.3.3"
- ethereumjs-util "^5.1.3"
- ethjs-util "^0.1.3"
- json-rpc-engine "^3.6.0"
- pify "^2.3.0"
- tape "^4.6.3"
-
-eth-ens-namehash@2.0.8, eth-ens-namehash@^2.0.8:
- version "2.0.8"
- resolved "https://registry.yarnpkg.com/eth-ens-namehash/-/eth-ens-namehash-2.0.8.tgz#229ac46eca86d52e0c991e7cb2aef83ff0f68bcf"
- integrity sha512-VWEI1+KJfz4Km//dadyvBBoBeSQ0MHTXPvr8UIXiLW6IanxvAV+DmlZAijZwAyggqGUfwQBeHf7tc9wzc1piSw==
- dependencies:
- idna-uts46-hx "^2.3.1"
- js-sha3 "^0.5.7"
-
eth-gas-reporter@^0.2.25:
version "0.2.27"
resolved "https://registry.yarnpkg.com/eth-gas-reporter/-/eth-gas-reporter-0.2.27.tgz#928de8548a674ed64c7ba0bf5795e63079150d4e"
@@ -6710,110 +5650,6 @@ eth-gas-reporter@^0.2.25:
sha1 "^1.1.1"
sync-request "^6.0.0"
-eth-json-rpc-infura@^3.1.0:
- version "3.2.1"
- resolved "https://registry.yarnpkg.com/eth-json-rpc-infura/-/eth-json-rpc-infura-3.2.1.tgz#26702a821067862b72d979c016fd611502c6057f"
- integrity sha512-W7zR4DZvyTn23Bxc0EWsq4XGDdD63+XPUCEhV2zQvQGavDVC4ZpFDK4k99qN7bd7/fjj37+rxmuBOBeIqCA5Mw==
- dependencies:
- cross-fetch "^2.1.1"
- eth-json-rpc-middleware "^1.5.0"
- json-rpc-engine "^3.4.0"
- json-rpc-error "^2.0.0"
-
-eth-json-rpc-middleware@^1.5.0:
- version "1.6.0"
- resolved "https://registry.yarnpkg.com/eth-json-rpc-middleware/-/eth-json-rpc-middleware-1.6.0.tgz#5c9d4c28f745ccb01630f0300ba945f4bef9593f"
- integrity sha512-tDVCTlrUvdqHKqivYMjtFZsdD7TtpNLBCfKAcOpaVs7orBMS/A8HWro6dIzNtTZIR05FAbJ3bioFOnZpuCew9Q==
- dependencies:
- async "^2.5.0"
- eth-query "^2.1.2"
- eth-tx-summary "^3.1.2"
- ethereumjs-block "^1.6.0"
- ethereumjs-tx "^1.3.3"
- ethereumjs-util "^5.1.2"
- ethereumjs-vm "^2.1.0"
- fetch-ponyfill "^4.0.0"
- json-rpc-engine "^3.6.0"
- json-rpc-error "^2.0.0"
- json-stable-stringify "^1.0.1"
- promise-to-callback "^1.0.0"
- tape "^4.6.3"
-
-eth-lib@0.2.8:
- version "0.2.8"
- resolved "https://registry.yarnpkg.com/eth-lib/-/eth-lib-0.2.8.tgz#b194058bef4b220ad12ea497431d6cb6aa0623c8"
- integrity sha512-ArJ7x1WcWOlSpzdoTBX8vkwlkSQ85CjjifSZtV4co64vWxSV8geWfPI9x4SVYu3DSxnX4yWFVTtGL+j9DUFLNw==
- dependencies:
- bn.js "^4.11.6"
- elliptic "^6.4.0"
- xhr-request-promise "^0.1.2"
-
-eth-lib@^0.1.26:
- version "0.1.29"
- resolved "https://registry.yarnpkg.com/eth-lib/-/eth-lib-0.1.29.tgz#0c11f5060d42da9f931eab6199084734f4dbd1d9"
- integrity sha512-bfttrr3/7gG4E02HoWTDUcDDslN003OlOoBxk9virpAZQ1ja/jDgwkWB8QfJF7ojuEowrqy+lzp9VcJG7/k5bQ==
- dependencies:
- bn.js "^4.11.6"
- elliptic "^6.4.0"
- nano-json-stream-parser "^0.1.2"
- servify "^0.1.12"
- ws "^3.0.0"
- xhr-request-promise "^0.1.2"
-
-eth-query@^2.0.2, eth-query@^2.1.0, eth-query@^2.1.2:
- version "2.1.2"
- resolved "https://registry.yarnpkg.com/eth-query/-/eth-query-2.1.2.tgz#d6741d9000106b51510c72db92d6365456a6da5e"
- integrity sha512-srES0ZcvwkR/wd5OQBRA1bIJMww1skfGS0s8wlwK3/oNP4+wnds60krvu5R1QbpRQjMmpG5OMIWro5s7gvDPsA==
- dependencies:
- json-rpc-random-id "^1.0.0"
- xtend "^4.0.1"
-
-eth-sig-util@3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/eth-sig-util/-/eth-sig-util-3.0.0.tgz#75133b3d7c20a5731af0690c385e184ab942b97e"
- integrity sha512-4eFkMOhpGbTxBQ3AMzVf0haUX2uTur7DpWiHzWyTURa28BVJJtOkcb9Ok5TV0YvEPG61DODPW7ZUATbJTslioQ==
- dependencies:
- buffer "^5.2.1"
- elliptic "^6.4.0"
- ethereumjs-abi "0.6.5"
- ethereumjs-util "^5.1.1"
- tweetnacl "^1.0.0"
- tweetnacl-util "^0.15.0"
-
-eth-sig-util@^1.4.2:
- version "1.4.2"
- resolved "https://registry.yarnpkg.com/eth-sig-util/-/eth-sig-util-1.4.2.tgz#8d958202c7edbaae839707fba6f09ff327606210"
- integrity sha512-iNZ576iTOGcfllftB73cPB5AN+XUQAT/T8xzsILsghXC1o8gJUqe3RHlcDqagu+biFpYQ61KQrZZJza8eRSYqw==
- dependencies:
- ethereumjs-abi "git+https://github.com/ethereumjs/ethereumjs-abi.git"
- ethereumjs-util "^5.1.1"
-
-eth-tx-summary@^3.1.2:
- version "3.2.4"
- resolved "https://registry.yarnpkg.com/eth-tx-summary/-/eth-tx-summary-3.2.4.tgz#e10eb95eb57cdfe549bf29f97f1e4f1db679035c"
- integrity sha512-NtlDnaVZah146Rm8HMRUNMgIwG/ED4jiqk0TME9zFheMl1jOp6jL1m0NKGjJwehXQ6ZKCPr16MTr+qspKpEXNg==
- dependencies:
- async "^2.1.2"
- clone "^2.0.0"
- concat-stream "^1.5.1"
- end-of-stream "^1.1.0"
- eth-query "^2.0.2"
- ethereumjs-block "^1.4.1"
- ethereumjs-tx "^1.1.1"
- ethereumjs-util "^5.0.1"
- ethereumjs-vm "^2.6.0"
- through2 "^2.0.3"
-
-ethashjs@~0.0.7:
- version "0.0.8"
- resolved "https://registry.yarnpkg.com/ethashjs/-/ethashjs-0.0.8.tgz#227442f1bdee409a548fb04136e24c874f3aa6f9"
- integrity sha512-/MSbf/r2/Ld8o0l15AymjOTlPqpN8Cr4ByUEA9GtR4x0yAh3TdtDzEg29zMjXCNPI7u6E5fOQdj/Cf9Tc7oVNw==
- dependencies:
- async "^2.1.2"
- buffer-xor "^2.0.1"
- ethereumjs-util "^7.0.2"
- miller-rabin "^4.0.0"
-
ethereum-bloom-filters@^1.0.6:
version "1.0.10"
resolved "https://registry.yarnpkg.com/ethereum-bloom-filters/-/ethereum-bloom-filters-1.0.10.tgz#3ca07f4aed698e75bd134584850260246a5fed8a"
@@ -6821,16 +5657,6 @@ ethereum-bloom-filters@^1.0.6:
dependencies:
js-sha3 "^0.8.0"
-ethereum-common@0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/ethereum-common/-/ethereum-common-0.2.0.tgz#13bf966131cce1eeade62a1b434249bb4cb120ca"
- integrity sha512-XOnAR/3rntJgbCdGhqdaLIxDLWKLmsZOGhHdBKadEr6gEnJLH52k93Ou+TUdFaPN3hJc3isBZBal3U/XZ15abA==
-
-ethereum-common@^0.0.18:
- version "0.0.18"
- resolved "https://registry.yarnpkg.com/ethereum-common/-/ethereum-common-0.0.18.tgz#2fdc3576f232903358976eb39da783213ff9523f"
- integrity sha512-EoltVQTRNg2Uy4o84qpa2aXymXDJhxm7eos/ACOg0DG4baAbMjhbdAEsx9GeE8sC3XCxnYvrrzZDH8D8MtA2iQ==
-
ethereum-cryptography@0.1.3, ethereum-cryptography@^0.1.3:
version "0.1.3"
resolved "https://registry.yarnpkg.com/ethereum-cryptography/-/ethereum-cryptography-0.1.3.tgz#8d6143cfc3d74bf79bbd8edecdf29e4ae20dd191"
@@ -6866,129 +5692,44 @@ ethereum-cryptography@^2.0.0, ethereum-cryptography@^2.1.2:
version "2.1.2"
resolved "https://registry.yarnpkg.com/ethereum-cryptography/-/ethereum-cryptography-2.1.2.tgz#18fa7108622e56481157a5cb7c01c0c6a672eb67"
integrity sha512-Z5Ba0T0ImZ8fqXrJbpHcbpAvIswRte2wGNR/KePnu8GbbvgJ47lMxT/ZZPG6i9Jaht4azPDop4HaM00J0J59ug==
- dependencies:
- "@noble/curves" "1.1.0"
- "@noble/hashes" "1.3.1"
- "@scure/bip32" "1.3.1"
- "@scure/bip39" "1.2.1"
-
-ethereum-waffle@^3.0.0:
- version "3.4.4"
- resolved "https://registry.yarnpkg.com/ethereum-waffle/-/ethereum-waffle-3.4.4.tgz#1378b72040697857b7f5e8f473ca8f97a37b5840"
- integrity sha512-PA9+jCjw4WC3Oc5ocSMBj5sXvueWQeAbvCA+hUlb6oFgwwKyq5ka3bWQ7QZcjzIX+TdFkxP4IbFmoY2D8Dkj9Q==
- dependencies:
- "@ethereum-waffle/chai" "^3.4.4"
- "@ethereum-waffle/compiler" "^3.4.4"
- "@ethereum-waffle/mock-contract" "^3.4.4"
- "@ethereum-waffle/provider" "^3.4.4"
- ethers "^5.0.1"
-
-ethereumjs-abi@0.6.5:
- version "0.6.5"
- resolved "https://registry.yarnpkg.com/ethereumjs-abi/-/ethereumjs-abi-0.6.5.tgz#5a637ef16ab43473fa72a29ad90871405b3f5241"
- integrity sha512-rCjJZ/AE96c/AAZc6O3kaog4FhOsAViaysBxqJNy2+LHP0ttH0zkZ7nXdVHOAyt6lFwLO0nlCwWszysG/ao1+g==
- dependencies:
- bn.js "^4.10.0"
- ethereumjs-util "^4.3.0"
-
-ethereumjs-abi@0.6.8, ethereumjs-abi@^0.6.8:
- version "0.6.8"
- resolved "https://registry.yarnpkg.com/ethereumjs-abi/-/ethereumjs-abi-0.6.8.tgz#71bc152db099f70e62f108b7cdfca1b362c6fcae"
- integrity sha512-Tx0r/iXI6r+lRsdvkFDlut0N08jWMnKRZ6Gkq+Nmw75lZe4e6o3EkSnkaBP5NF6+m5PTGAr9JP43N3LyeoglsA==
- dependencies:
- bn.js "^4.11.8"
- ethereumjs-util "^6.0.0"
-
-"ethereumjs-abi@git+https://github.com/ethereumjs/ethereumjs-abi.git":
- version "0.6.8"
- resolved "git+https://github.com/ethereumjs/ethereumjs-abi.git#ee3994657fa7a427238e6ba92a84d0b529bbcde0"
- dependencies:
- bn.js "^4.11.8"
- ethereumjs-util "^6.0.0"
-
-ethereumjs-account@3.0.0, ethereumjs-account@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/ethereumjs-account/-/ethereumjs-account-3.0.0.tgz#728f060c8e0c6e87f1e987f751d3da25422570a9"
- integrity sha512-WP6BdscjiiPkQfF9PVfMcwx/rDvfZTjFKY0Uwc09zSQr9JfIVH87dYIJu0gNhBhpmovV4yq295fdllS925fnBA==
- dependencies:
- ethereumjs-util "^6.0.0"
- rlp "^2.2.1"
- safe-buffer "^5.1.1"
-
-ethereumjs-account@^2.0.3:
- version "2.0.5"
- resolved "https://registry.yarnpkg.com/ethereumjs-account/-/ethereumjs-account-2.0.5.tgz#eeafc62de544cb07b0ee44b10f572c9c49e00a84"
- integrity sha512-bgDojnXGjhMwo6eXQC0bY6UK2liSFUSMwwylOmQvZbSl/D7NXQ3+vrGO46ZeOgjGfxXmgIeVNDIiHw7fNZM4VA==
- dependencies:
- ethereumjs-util "^5.0.0"
- rlp "^2.0.0"
- safe-buffer "^5.1.1"
-
-ethereumjs-block@2.2.2, ethereumjs-block@^2.2.2, ethereumjs-block@~2.2.0, ethereumjs-block@~2.2.2:
- version "2.2.2"
- resolved "https://registry.yarnpkg.com/ethereumjs-block/-/ethereumjs-block-2.2.2.tgz#c7654be7e22df489fda206139ecd63e2e9c04965"
- integrity sha512-2p49ifhek3h2zeg/+da6XpdFR3GlqY3BIEiqxGF8j9aSRIgkb7M1Ky+yULBKJOu8PAZxfhsYA+HxUk2aCQp3vg==
- dependencies:
- async "^2.0.1"
- ethereumjs-common "^1.5.0"
- ethereumjs-tx "^2.1.1"
- ethereumjs-util "^5.0.0"
- merkle-patricia-tree "^2.1.2"
-
-ethereumjs-block@^1.2.2, ethereumjs-block@^1.4.1, ethereumjs-block@^1.6.0:
- version "1.7.1"
- resolved "https://registry.yarnpkg.com/ethereumjs-block/-/ethereumjs-block-1.7.1.tgz#78b88e6cc56de29a6b4884ee75379b6860333c3f"
- integrity sha512-B+sSdtqm78fmKkBq78/QLKJbu/4Ts4P2KFISdgcuZUPDm9x+N7qgBPIIFUGbaakQh8bzuquiRVbdmvPKqbILRg==
- dependencies:
- async "^2.0.1"
- ethereum-common "0.2.0"
- ethereumjs-tx "^1.2.2"
- ethereumjs-util "^5.0.0"
- merkle-patricia-tree "^2.1.2"
-
-ethereumjs-blockchain@^4.0.3:
- version "4.0.4"
- resolved "https://registry.yarnpkg.com/ethereumjs-blockchain/-/ethereumjs-blockchain-4.0.4.tgz#30f2228dc35f6dcf94423692a6902604ae34960f"
- integrity sha512-zCxaRMUOzzjvX78DTGiKjA+4h2/sF0OYL1QuPux0DHpyq8XiNoF5GYHtb++GUxVlMsMfZV7AVyzbtgcRdIcEPQ==
- dependencies:
- async "^2.6.1"
- ethashjs "~0.0.7"
- ethereumjs-block "~2.2.2"
- ethereumjs-common "^1.5.0"
- ethereumjs-util "^6.1.0"
- flow-stoplight "^1.0.0"
- level-mem "^3.0.1"
- lru-cache "^5.1.1"
- rlp "^2.2.2"
- semaphore "^1.1.0"
-
-ethereumjs-common@1.5.0:
- version "1.5.0"
- resolved "https://registry.yarnpkg.com/ethereumjs-common/-/ethereumjs-common-1.5.0.tgz#d3e82fc7c47c0cef95047f431a99485abc9bb1cd"
- integrity sha512-SZOjgK1356hIY7MRj3/ma5qtfr/4B5BL+G4rP/XSMYr2z1H5el4RX5GReYCKmQmYI/nSBmRnwrZ17IfHuG0viQ==
+ dependencies:
+ "@noble/curves" "1.1.0"
+ "@noble/hashes" "1.3.1"
+ "@scure/bip32" "1.3.1"
+ "@scure/bip39" "1.2.1"
-ethereumjs-common@^1.1.0, ethereumjs-common@^1.3.2, ethereumjs-common@^1.5.0:
- version "1.5.2"
- resolved "https://registry.yarnpkg.com/ethereumjs-common/-/ethereumjs-common-1.5.2.tgz#2065dbe9214e850f2e955a80e650cb6999066979"
- integrity sha512-hTfZjwGX52GS2jcVO6E2sx4YuFnf0Fhp5ylo4pEPhEffNln7vS59Hr5sLnp3/QCazFLluuBZ+FZ6J5HTp0EqCA==
+ethereum-waffle@^4.0.10:
+ version "4.0.10"
+ resolved "https://registry.yarnpkg.com/ethereum-waffle/-/ethereum-waffle-4.0.10.tgz#f1ef1564c0155236f1a66c6eae362a5d67c9f64c"
+ integrity sha512-iw9z1otq7qNkGDNcMoeNeLIATF9yKl1M8AIeu42ElfNBplq0e+5PeasQmm8ybY/elkZ1XyRO0JBQxQdVRb8bqQ==
+ dependencies:
+ "@ethereum-waffle/chai" "4.0.10"
+ "@ethereum-waffle/compiler" "4.0.3"
+ "@ethereum-waffle/mock-contract" "4.0.4"
+ "@ethereum-waffle/provider" "4.0.5"
+ solc "0.8.15"
+ typechain "^8.0.0"
-ethereumjs-tx@2.1.2, ethereumjs-tx@^2.1.1, ethereumjs-tx@^2.1.2:
- version "2.1.2"
- resolved "https://registry.yarnpkg.com/ethereumjs-tx/-/ethereumjs-tx-2.1.2.tgz#5dfe7688bf177b45c9a23f86cf9104d47ea35fed"
- integrity sha512-zZEK1onCeiORb0wyCXUvg94Ve5It/K6GD1K+26KfFKodiBiS6d9lfCXlUKGBBdQ+bv7Day+JK0tj1K+BeNFRAw==
+ethereumjs-abi@0.6.8, ethereumjs-abi@^0.6.8:
+ version "0.6.8"
+ resolved "https://registry.yarnpkg.com/ethereumjs-abi/-/ethereumjs-abi-0.6.8.tgz#71bc152db099f70e62f108b7cdfca1b362c6fcae"
+ integrity sha512-Tx0r/iXI6r+lRsdvkFDlut0N08jWMnKRZ6Gkq+Nmw75lZe4e6o3EkSnkaBP5NF6+m5PTGAr9JP43N3LyeoglsA==
dependencies:
- ethereumjs-common "^1.5.0"
+ bn.js "^4.11.8"
ethereumjs-util "^6.0.0"
-ethereumjs-tx@^1.1.1, ethereumjs-tx@^1.2.0, ethereumjs-tx@^1.2.2, ethereumjs-tx@^1.3.3:
- version "1.3.7"
- resolved "https://registry.yarnpkg.com/ethereumjs-tx/-/ethereumjs-tx-1.3.7.tgz#88323a2d875b10549b8347e09f4862b546f3d89a"
- integrity sha512-wvLMxzt1RPhAQ9Yi3/HKZTn0FZYpnsmQdbKYfUUpi4j1SEIcbkd9tndVjcPrufY3V7j2IebOpC00Zp2P/Ay2kA==
+ethereumjs-util@7.1.3:
+ version "7.1.3"
+ resolved "https://registry.yarnpkg.com/ethereumjs-util/-/ethereumjs-util-7.1.3.tgz#b55d7b64dde3e3e45749e4c41288238edec32d23"
+ integrity sha512-y+82tEbyASO0K0X1/SRhbJJoAlfcvq8JbrG4a5cjrOks7HS/36efU/0j2flxCPOUM++HFahk33kr/ZxyC4vNuw==
dependencies:
- ethereum-common "^0.0.18"
- ethereumjs-util "^5.0.0"
+ "@types/bn.js" "^5.1.0"
+ bn.js "^5.1.2"
+ create-hash "^1.1.2"
+ ethereum-cryptography "^0.1.3"
+ rlp "^2.2.4"
-ethereumjs-util@6.2.1, ethereumjs-util@^6.0.0, ethereumjs-util@^6.1.0, ethereumjs-util@^6.2.0, ethereumjs-util@^6.2.1:
+ethereumjs-util@^6.0.0, ethereumjs-util@^6.2.1:
version "6.2.1"
resolved "https://registry.yarnpkg.com/ethereumjs-util/-/ethereumjs-util-6.2.1.tgz#fcb4e4dd5ceacb9d2305426ab1a5cd93e3163b69"
integrity sha512-W2Ktez4L01Vexijrm5EB6w7dg4n/TgpoYU4avuT5T3Vmnw/eCRtiBrJfQYS/DCSvDIOLn2k57GcHdeBcgVxAqw==
@@ -7001,31 +5742,7 @@ ethereumjs-util@6.2.1, ethereumjs-util@^6.0.0, ethereumjs-util@^6.1.0, ethereumj
ethjs-util "0.1.6"
rlp "^2.2.3"
-ethereumjs-util@^4.3.0:
- version "4.5.1"
- resolved "https://registry.yarnpkg.com/ethereumjs-util/-/ethereumjs-util-4.5.1.tgz#f4bf9b3b515a484e3cc8781d61d9d980f7c83bd0"
- integrity sha512-WrckOZ7uBnei4+AKimpuF1B3Fv25OmoRgmYCpGsP7u8PFxXAmAgiJSYT2kRWnt6fVIlKaQlZvuwXp7PIrmn3/w==
- dependencies:
- bn.js "^4.8.0"
- create-hash "^1.1.2"
- elliptic "^6.5.2"
- ethereum-cryptography "^0.1.3"
- rlp "^2.0.0"
-
-ethereumjs-util@^5.0.0, ethereumjs-util@^5.0.1, ethereumjs-util@^5.1.1, ethereumjs-util@^5.1.2, ethereumjs-util@^5.1.3, ethereumjs-util@^5.1.5, ethereumjs-util@^5.2.0:
- version "5.2.1"
- resolved "https://registry.yarnpkg.com/ethereumjs-util/-/ethereumjs-util-5.2.1.tgz#a833f0e5fca7e5b361384dc76301a721f537bf65"
- integrity sha512-v3kT+7zdyCm1HIqWlLNrHGqHGLpGYIhjeHxQjnDXjLT2FyGJDsd3LWMYUo7pAFRrk86CR3nUJfhC81CCoJNNGQ==
- dependencies:
- bn.js "^4.11.0"
- create-hash "^1.1.2"
- elliptic "^6.5.2"
- ethereum-cryptography "^0.1.3"
- ethjs-util "^0.1.3"
- rlp "^2.0.0"
- safe-buffer "^5.1.1"
-
-ethereumjs-util@^7.0.2:
+ethereumjs-util@^7.1.1, ethereumjs-util@^7.1.3, ethereumjs-util@^7.1.4, ethereumjs-util@^7.1.5:
version "7.1.5"
resolved "https://registry.yarnpkg.com/ethereumjs-util/-/ethereumjs-util-7.1.5.tgz#9ecf04861e4fbbeed7465ece5f23317ad1129181"
integrity sha512-SDl5kKrQAudFBUe5OJM9Ac6WmMyYmXX/6sTmLZ3ffG2eY6ZIGBes3pEDxNN6V72WyOw4CPD5RomKdsa8DAAwLg==
@@ -7036,60 +5753,7 @@ ethereumjs-util@^7.0.2:
ethereum-cryptography "^0.1.3"
rlp "^2.2.4"
-ethereumjs-vm@4.2.0:
- version "4.2.0"
- resolved "https://registry.yarnpkg.com/ethereumjs-vm/-/ethereumjs-vm-4.2.0.tgz#e885e861424e373dbc556278f7259ff3fca5edab"
- integrity sha512-X6qqZbsY33p5FTuZqCnQ4+lo957iUJMM6Mpa6bL4UW0dxM6WmDSHuI4j/zOp1E2TDKImBGCJA9QPfc08PaNubA==
- dependencies:
- async "^2.1.2"
- async-eventemitter "^0.2.2"
- core-js-pure "^3.0.1"
- ethereumjs-account "^3.0.0"
- ethereumjs-block "^2.2.2"
- ethereumjs-blockchain "^4.0.3"
- ethereumjs-common "^1.5.0"
- ethereumjs-tx "^2.1.2"
- ethereumjs-util "^6.2.0"
- fake-merkle-patricia-tree "^1.0.1"
- functional-red-black-tree "^1.0.1"
- merkle-patricia-tree "^2.3.2"
- rustbn.js "~0.2.0"
- safe-buffer "^5.1.1"
- util.promisify "^1.0.0"
-
-ethereumjs-vm@^2.1.0, ethereumjs-vm@^2.3.4, ethereumjs-vm@^2.6.0:
- version "2.6.0"
- resolved "https://registry.yarnpkg.com/ethereumjs-vm/-/ethereumjs-vm-2.6.0.tgz#76243ed8de031b408793ac33907fb3407fe400c6"
- integrity sha512-r/XIUik/ynGbxS3y+mvGnbOKnuLo40V5Mj1J25+HEO63aWYREIqvWeRO/hnROlMBE5WoniQmPmhiaN0ctiHaXw==
- dependencies:
- async "^2.1.2"
- async-eventemitter "^0.2.2"
- ethereumjs-account "^2.0.3"
- ethereumjs-block "~2.2.0"
- ethereumjs-common "^1.1.0"
- ethereumjs-util "^6.0.0"
- fake-merkle-patricia-tree "^1.0.1"
- functional-red-black-tree "^1.0.1"
- merkle-patricia-tree "^2.3.2"
- rustbn.js "~0.2.0"
- safe-buffer "^5.1.1"
-
-ethereumjs-wallet@0.6.5:
- version "0.6.5"
- resolved "https://registry.yarnpkg.com/ethereumjs-wallet/-/ethereumjs-wallet-0.6.5.tgz#685e9091645cee230ad125c007658833991ed474"
- integrity sha512-MDwjwB9VQVnpp/Dc1XzA6J1a3wgHQ4hSvA1uWNatdpOrtCbPVuQSKSyRnjLvS0a+KKMw2pvQ9Ybqpb3+eW8oNA==
- dependencies:
- aes-js "^3.1.1"
- bs58check "^2.1.2"
- ethereum-cryptography "^0.1.3"
- ethereumjs-util "^6.0.0"
- randombytes "^2.0.6"
- safe-buffer "^5.1.2"
- scryptsy "^1.2.1"
- utf8 "^3.0.0"
- uuid "^3.3.2"
-
-ethers@^5.0.1, ethers@^5.0.2, ethers@^5.5.2, ethers@^5.7.0, ethers@^5.7.1, ethers@^5.7.2, ethers@~5.7.0:
+ethers@^5.0.2, ethers@^5.7.0, ethers@^5.7.1, ethers@^5.7.2, ethers@~5.7.0:
version "5.7.2"
resolved "https://registry.yarnpkg.com/ethers/-/ethers-5.7.2.tgz#3a7deeabbb8c030d4126b24f84e525466145872e"
integrity sha512-wswUsmWo1aOK8rR7DIKiWSw9DbLWe6x98Jrn8wcTflTVvaXhAMaB5zGAXy0GYQEQp9iO1iSHWVyARQm11zUtyg==
@@ -7252,7 +5916,7 @@ ethjs-util@0.1.3:
is-hex-prefixed "1.0.0"
strip-hex-prefix "1.0.0"
-ethjs-util@0.1.6, ethjs-util@^0.1.3, ethjs-util@^0.1.6:
+ethjs-util@0.1.6, ethjs-util@^0.1.6:
version "0.1.6"
resolved "https://registry.yarnpkg.com/ethjs-util/-/ethjs-util-0.1.6.tgz#f308b62f185f9fe6237132fb2a9818866a5cd536"
integrity sha512-CUnVOQq7gSpDHZVVrQW8ExxUETWrnrvXYvYz55wOU8Uj4VCgw56XC2B/fVqQN+f7gmrnRHSLVnFAwsCuNwji8w==
@@ -7281,17 +5945,7 @@ event-target-shim@^5.0.0:
resolved "https://registry.yarnpkg.com/event-target-shim/-/event-target-shim-5.0.1.tgz#5d4d3ebdf9583d63a5333ce2deb7480ab2b05789"
integrity sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==
-eventemitter3@4.0.4:
- version "4.0.4"
- resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.4.tgz#b5463ace635a083d018bdc7c917b4c5f10a85384"
- integrity sha512-rlaVLnVxtxvoyLsQQFBx53YmXHDxRIzzTLbdfxqi4yocpSjAxXwkU0cScM5JgSKMqEhrZpnvQ2D9gjylR0AimQ==
-
-events@^3.0.0:
- version "3.3.0"
- resolved "https://registry.yarnpkg.com/events/-/events-3.3.0.tgz#31a95ad0a924e2d2c419a813aeb2c4e878ea7400"
- integrity sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==
-
-evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3:
+evp_bytestokey@^1.0.3:
version "1.0.3"
resolved "https://registry.yarnpkg.com/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz#7fcbdb198dc71959432efe13842684e0525acb02"
integrity sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==
@@ -7334,19 +5988,6 @@ exit@^0.1.2:
resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c"
integrity sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==
-expand-brackets@^2.1.4:
- version "2.1.4"
- resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-2.1.4.tgz#b77735e315ce30f6b6eff0f83b04151a22449622"
- integrity sha512-w/ozOKR9Obk3qoWeY/WDi6MFta9AoMR+zud60mdnbniMcBxRuFJyDt2LdX/14A1UABeqk+Uk+LDfUpvoGKppZA==
- dependencies:
- debug "^2.3.3"
- define-property "^0.2.5"
- extend-shallow "^2.0.1"
- posix-character-classes "^0.1.0"
- regex-not "^1.0.0"
- snapdragon "^0.8.1"
- to-regex "^3.0.1"
-
expect@^29.0.0, expect@^29.7.0:
version "29.7.0"
resolved "https://registry.yarnpkg.com/expect/-/expect-29.7.0.tgz#578874590dcb3214514084c08115d8aee61e11bc"
@@ -7358,65 +5999,6 @@ expect@^29.0.0, expect@^29.7.0:
jest-message-util "^29.7.0"
jest-util "^29.7.0"
-express@^4.14.0:
- version "4.18.2"
- resolved "https://registry.yarnpkg.com/express/-/express-4.18.2.tgz#3fabe08296e930c796c19e3c516979386ba9fd59"
- integrity sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==
- dependencies:
- accepts "~1.3.8"
- array-flatten "1.1.1"
- body-parser "1.20.1"
- content-disposition "0.5.4"
- content-type "~1.0.4"
- cookie "0.5.0"
- cookie-signature "1.0.6"
- debug "2.6.9"
- depd "2.0.0"
- encodeurl "~1.0.2"
- escape-html "~1.0.3"
- etag "~1.8.1"
- finalhandler "1.2.0"
- fresh "0.5.2"
- http-errors "2.0.0"
- merge-descriptors "1.0.1"
- methods "~1.1.2"
- on-finished "2.4.1"
- parseurl "~1.3.3"
- path-to-regexp "0.1.7"
- proxy-addr "~2.0.7"
- qs "6.11.0"
- range-parser "~1.2.1"
- safe-buffer "5.2.1"
- send "0.18.0"
- serve-static "1.15.0"
- setprototypeof "1.2.0"
- statuses "2.0.1"
- type-is "~1.6.18"
- utils-merge "1.0.1"
- vary "~1.1.2"
-
-ext@^1.1.2:
- version "1.7.0"
- resolved "https://registry.yarnpkg.com/ext/-/ext-1.7.0.tgz#0ea4383c0103d60e70be99e9a7f11027a33c4f5f"
- integrity sha512-6hxeJYaL110a9b5TEJSj0gojyHQAmA2ch5Os+ySCiA1QGdS697XWY1pzsrSjqA9LDEEgdB/KypIlR59RcLuHYw==
- dependencies:
- type "^2.7.2"
-
-extend-shallow@^2.0.1:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f"
- integrity sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==
- dependencies:
- is-extendable "^0.1.0"
-
-extend-shallow@^3.0.0, extend-shallow@^3.0.2:
- version "3.0.2"
- resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-3.0.2.tgz#26a71aaf073b39fb2127172746131c2704028db8"
- integrity sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==
- dependencies:
- assign-symbols "^1.0.0"
- is-extendable "^1.0.1"
-
extend@~3.0.2:
version "3.0.2"
resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa"
@@ -7431,20 +6013,6 @@ external-editor@^3.0.3:
iconv-lite "^0.4.24"
tmp "^0.0.33"
-extglob@^2.0.4:
- version "2.0.4"
- resolved "https://registry.yarnpkg.com/extglob/-/extglob-2.0.4.tgz#ad00fe4dc612a9232e8718711dc5cb5ab0285543"
- integrity sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==
- dependencies:
- array-unique "^0.3.2"
- define-property "^1.0.0"
- expand-brackets "^2.1.4"
- extend-shallow "^2.0.1"
- fragment-cache "^0.2.1"
- regex-not "^1.0.0"
- snapdragon "^0.8.1"
- to-regex "^3.0.1"
-
extsprintf@1.3.0:
version "1.3.0"
resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05"
@@ -7455,13 +6023,6 @@ extsprintf@^1.2.0:
resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.1.tgz#8d172c064867f235c0c84a596806d279bf4bcc07"
integrity sha512-Wrk35e8ydCKDj/ArClo1VrPVmN8zph5V4AtHwIuHhvMXsKf73UT3BOD+azBIW+3wOJ4FhEH7zyaJCFvChjYvMA==
-fake-merkle-patricia-tree@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/fake-merkle-patricia-tree/-/fake-merkle-patricia-tree-1.0.1.tgz#4b8c3acfb520afadf9860b1f14cd8ce3402cddd3"
- integrity sha512-Tgq37lkc9pUIgIKw5uitNUKcgcYL3R6JvXtKQbOf/ZSavXbidsksgp/pAY6p//uhw0I4yoMsvTSovvVIsk/qxA==
- dependencies:
- checkpoint-store "^1.1.0"
-
fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3:
version "3.1.3"
resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525"
@@ -7472,6 +6033,11 @@ fast-diff@^1.1.2, fast-diff@^1.2.0:
resolved "https://registry.yarnpkg.com/fast-diff/-/fast-diff-1.3.0.tgz#ece407fa550a64d638536cd727e129c61616e0f0"
integrity sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==
+fast-equals@^5.0.1:
+ version "5.0.1"
+ resolved "https://registry.yarnpkg.com/fast-equals/-/fast-equals-5.0.1.tgz#a4eefe3c5d1c0d021aeed0bc10ba5e0c12ee405d"
+ integrity sha512-WF1Wi8PwwSY7/6Kx0vKXtw8RwuSGoM1bvDaJbu7MxDlR1vovZjIAKrnzyrThgAjm6JDTu0fVgWXDlMGspodfoQ==
+
fast-glob@^3.0.3, fast-glob@^3.3.0, fast-glob@^3.3.1, fast-glob@^3.3.2:
version "3.3.2"
resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.3.2.tgz#a904501e57cfdd2ffcded45e99a54fef55e46129"
@@ -7518,13 +6084,6 @@ fb-watchman@^2.0.0:
dependencies:
bser "2.1.1"
-fetch-ponyfill@^4.0.0:
- version "4.1.0"
- resolved "https://registry.yarnpkg.com/fetch-ponyfill/-/fetch-ponyfill-4.1.0.tgz#ae3ce5f732c645eab87e4ae8793414709b239893"
- integrity sha512-knK9sGskIg2T7OnYLdZ2hZXn0CtDrAIBxYQLpmEf0BqfdWnwmM1weccUl5+4EdA44tzNSFAuxITPbXtPehUB3g==
- dependencies:
- node-fetch "~1.7.1"
-
figures@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/figures/-/figures-2.0.0.tgz#3ab1a2d2a62c8bfb431a0c94cb797a2fce27c962"
@@ -7539,22 +6098,12 @@ file-entry-cache@^6.0.1:
dependencies:
flat-cache "^3.0.4"
-file-entry-cache@^7.0.2:
- version "7.0.2"
- resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-7.0.2.tgz#2d61bb70ba89b9548e3035b7c9173fe91deafff0"
- integrity sha512-TfW7/1iI4Cy7Y8L6iqNdZQVvdXn0f8B4QcIXmkIbtTIe/Okm/nSlHb4IwGzRVOd3WfSieCgvf5cMzEfySAIl0g==
- dependencies:
- flat-cache "^3.2.0"
-
-fill-range@^4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7"
- integrity sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ==
+file-entry-cache@^8.0.0:
+ version "8.0.0"
+ resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-8.0.0.tgz#7787bddcf1131bffb92636c69457bbc0edd6d81f"
+ integrity sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==
dependencies:
- extend-shallow "^2.0.1"
- is-number "^3.0.0"
- repeat-string "^1.6.1"
- to-regex-range "^2.1.0"
+ flat-cache "^4.0.0"
fill-range@^7.0.1:
version "7.0.1"
@@ -7563,19 +6112,6 @@ fill-range@^7.0.1:
dependencies:
to-regex-range "^5.0.1"
-finalhandler@1.2.0:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.2.0.tgz#7d23fe5731b207b4640e4fcd00aec1f9207a7b32"
- integrity sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==
- dependencies:
- debug "2.6.9"
- encodeurl "~1.0.2"
- escape-html "~1.0.3"
- on-finished "2.4.1"
- parseurl "~1.3.3"
- statuses "2.0.1"
- unpipe "~1.0.0"
-
find-replace@^1.0.3:
version "1.0.3"
resolved "https://registry.yarnpkg.com/find-replace/-/find-replace-1.0.3.tgz#b88e7364d2d9c959559f388c66670d6130441fa0"
@@ -7584,6 +6120,18 @@ find-replace@^1.0.3:
array-back "^1.0.4"
test-value "^2.1.0"
+find-replace@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/find-replace/-/find-replace-3.0.0.tgz#3e7e23d3b05167a76f770c9fbd5258b0def68c38"
+ integrity sha512-6Tb2myMioCAgv5kfvP5/PkZZ/ntTpVK39fHY7WkWBgvbeE+VHd/tZuZ4mrC+bxh4cfOZeYKVPaJIZtZXV7GNCQ==
+ dependencies:
+ array-back "^3.0.1"
+
+find-up-simple@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/find-up-simple/-/find-up-simple-1.0.0.tgz#21d035fde9fdbd56c8f4d2f63f32fd93a1cfc368"
+ integrity sha512-q7Us7kcjj2VMePAa02hDAF6d+MzsdsAWEwYyOpwUtlerRBkOEPBCRZrAV4XfcSN8fHAgaD0hP7miwoay6DCprw==
+
find-up@5.0.0, find-up@^5.0.0:
version "5.0.0"
resolved "https://registry.yarnpkg.com/find-up/-/find-up-5.0.0.tgz#4c92819ecb7083561e4f4a240a86be5198f536fc"
@@ -7592,14 +6140,6 @@ find-up@5.0.0, find-up@^5.0.0:
locate-path "^6.0.0"
path-exists "^4.0.0"
-find-up@^1.0.0:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f"
- integrity sha512-jvElSjyuo4EMQGoTwo1uJU5pQMwTW5lS1x05zzfJuTIyLR3zwO27LYrxNg+dlvKpGOuGy/MzBdXh80g0ve5+HA==
- dependencies:
- path-exists "^2.0.0"
- pinkie-promise "^2.0.0"
-
find-up@^2.1.0:
version "2.1.0"
resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7"
@@ -7615,21 +6155,6 @@ find-up@^4.0.0, find-up@^4.1.0:
locate-path "^5.0.0"
path-exists "^4.0.0"
-find-yarn-workspace-root@^1.2.1:
- version "1.2.1"
- resolved "https://registry.yarnpkg.com/find-yarn-workspace-root/-/find-yarn-workspace-root-1.2.1.tgz#40eb8e6e7c2502ddfaa2577c176f221422f860db"
- integrity sha512-dVtfb0WuQG+8Ag2uWkbG79hOUzEsRrhBzgfn86g2sJPkzmcpGdghbNTfUKGTxymFrY/tLIodDzLoW9nOJ4FY8Q==
- dependencies:
- fs-extra "^4.0.3"
- micromatch "^3.1.4"
-
-find-yarn-workspace-root@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/find-yarn-workspace-root/-/find-yarn-workspace-root-2.0.0.tgz#f47fb8d239c900eb78179aa81b66673eac88f7bd"
- integrity sha512-1IMnbjt4KzsQfnhnzNd8wUEgXZ44IzZaZmnLYx7D5FZlaHt2gW20Cri8Q+E/t5tIj4+epTBub+2Zxu/vNILzqQ==
- dependencies:
- micromatch "^4.0.2"
-
flat-cache@^3.0.4:
version "3.1.1"
resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-3.1.1.tgz#a02a15fdec25a8f844ff7cc658f03dd99eb4609b"
@@ -7639,14 +6164,14 @@ flat-cache@^3.0.4:
keyv "^4.5.3"
rimraf "^3.0.2"
-flat-cache@^3.2.0:
- version "3.2.0"
- resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-3.2.0.tgz#2c0c2d5040c99b1632771a9d105725c0115363ee"
- integrity sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==
+flat-cache@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-4.0.0.tgz#d12437636f83bb8a12b8f300c36fd1614e1c7224"
+ integrity sha512-EryKbCE/wxpxKniQlyas6PY1I9vwtF3uCBweX+N8KYTCn3Y12RTGtQAJ/bd5pl7kxUAc8v/R3Ake/N17OZiFqA==
dependencies:
flatted "^3.2.9"
- keyv "^4.5.3"
- rimraf "^3.0.2"
+ keyv "^4.5.4"
+ rimraf "^5.0.5"
flat@^5.0.2:
version "5.0.2"
@@ -7658,27 +6183,25 @@ flatted@^3.2.9:
resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.2.9.tgz#7eb4c67ca1ba34232ca9d2d93e9886e611ad7daf"
integrity sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ==
-flow-stoplight@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/flow-stoplight/-/flow-stoplight-1.0.0.tgz#4a292c5bcff8b39fa6cc0cb1a853d86f27eeff7b"
- integrity sha512-rDjbZUKpN8OYhB0IE/vY/I8UWO/602IIJEU/76Tv4LvYnwHCk0BCsvz4eRr9n+FQcri7L5cyaXOo0+/Kh4HisA==
-
follow-redirects@^1.12.1, follow-redirects@^1.14.0, follow-redirects@^1.15.0:
version "1.15.3"
resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.3.tgz#fe2f3ef2690afce7e82ed0b44db08165b207123a"
integrity sha512-1VzOtuEM8pC9SFU1E+8KfTjZyMztRsgEfwQl44z8A25uy13jSzTj6dyK2Df52iV0vgHCfBwLhDWevLn95w5v6Q==
-for-each@^0.3.3, for-each@~0.3.3:
+for-each@^0.3.3:
version "0.3.3"
resolved "https://registry.yarnpkg.com/for-each/-/for-each-0.3.3.tgz#69b447e88a0a5d32c3e7084f3f1710034b21376e"
integrity sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==
dependencies:
is-callable "^1.1.3"
-for-in@^1.0.2:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80"
- integrity sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ==
+foreground-child@^3.1.0:
+ version "3.1.1"
+ resolved "https://registry.yarnpkg.com/foreground-child/-/foreground-child-3.1.1.tgz#1d173e776d75d2772fed08efe4a0de1ea1b12d0d"
+ integrity sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==
+ dependencies:
+ cross-spawn "^7.0.0"
+ signal-exit "^4.0.1"
forever-agent@~0.6.1:
version "0.6.1"
@@ -7712,11 +6235,6 @@ form-data@~2.3.2:
combined-stream "^1.0.6"
mime-types "^2.1.12"
-forwarded@0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.2.0.tgz#2269936428aad4c15c7ebe9779a84bf0b2a81811"
- integrity sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==
-
fp-ts@1.19.3:
version "1.19.3"
resolved "https://registry.yarnpkg.com/fp-ts/-/fp-ts-1.19.3.tgz#261a60d1088fbff01f91256f91d21d0caaaaa96f"
@@ -7727,18 +6245,6 @@ fp-ts@^1.0.0:
resolved "https://registry.yarnpkg.com/fp-ts/-/fp-ts-1.19.5.tgz#3da865e585dfa1fdfd51785417357ac50afc520a"
integrity sha512-wDNqTimnzs8QqpldiId9OavWK2NptormjXnRJTQecNjzwfyp6P/8s/zG8e4h3ja3oqkKaY72UlTjQYt/1yXf9A==
-fragment-cache@^0.2.1:
- version "0.2.1"
- resolved "https://registry.yarnpkg.com/fragment-cache/-/fragment-cache-0.2.1.tgz#4290fad27f13e89be7f33799c6bc5a0abfff0d19"
- integrity sha512-GMBAbW9antB8iZRHLoGw0b3HANt57diZYFO/HL1JGIC1MjKrdmhxvrJbupnVvpys0zsz7yBApXdQyfepKly2kA==
- dependencies:
- map-cache "^0.2.2"
-
-fresh@0.5.2:
- version "0.5.2"
- resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7"
- integrity sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==
-
fs-constants@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/fs-constants/-/fs-constants-1.0.0.tgz#6be0de9be998ce16af8afc24497b9ee9b7ccd9ad"
@@ -7764,15 +6270,6 @@ fs-extra@^11.1.1:
jsonfile "^6.0.1"
universalify "^2.0.0"
-fs-extra@^4.0.2, fs-extra@^4.0.3:
- version "4.0.3"
- resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-4.0.3.tgz#0d852122e5bc5beb453fb028e9c0c9bf36340c94"
- integrity sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg==
- dependencies:
- graceful-fs "^4.1.2"
- jsonfile "^4.0.0"
- universalify "^0.1.0"
-
fs-extra@^7.0.0, fs-extra@^7.0.1:
version "7.0.1"
resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-7.0.1.tgz#4f189c44aa123b895f722804f55ea23eadc348e9"
@@ -7791,23 +6288,6 @@ fs-extra@^8.1.0:
jsonfile "^4.0.0"
universalify "^0.1.0"
-fs-extra@^9.0.0:
- version "9.1.0"
- resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-9.1.0.tgz#5954460c764a8da2094ba3554bf839e6b9a7c86d"
- integrity sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==
- dependencies:
- at-least-node "^1.0.0"
- graceful-fs "^4.2.0"
- jsonfile "^6.0.1"
- universalify "^2.0.0"
-
-fs-minipass@^1.2.7:
- version "1.2.7"
- resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-1.2.7.tgz#ccff8570841e7fe4265693da88936c55aed7f7c7"
- integrity sha512-GWSSJGFy4e9GUeCcbIkED+bgAoFyj7XF1mV8rma3QW4NIqX9Kyx79N/PF61H5udOV3aY1IaMLs6pGbH71nlCTA==
- dependencies:
- minipass "^2.6.0"
-
fs-readdir-recursive@^1.1.0:
version "1.1.0"
resolved "https://registry.yarnpkg.com/fs-readdir-recursive/-/fs-readdir-recursive-1.1.0.tgz#e32fc030a2ccee44a6b5371308da54be0b397d27"
@@ -7853,42 +6333,22 @@ functions-have-names@^1.2.3:
resolved "https://registry.yarnpkg.com/functions-have-names/-/functions-have-names-1.2.3.tgz#0404fe4ee2ba2f607f0e0ec3c80bae994133b834"
integrity sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==
-ganache-core@^2.13.2:
- version "2.13.2"
- resolved "https://registry.yarnpkg.com/ganache-core/-/ganache-core-2.13.2.tgz#27e6fc5417c10e6e76e2e646671869d7665814a3"
- integrity sha512-tIF5cR+ANQz0+3pHWxHjIwHqFXcVo0Mb+kcsNhglNFALcYo49aQpnS9dqHartqPfMFjiHh/qFoD3mYK0d/qGgw==
- dependencies:
- abstract-leveldown "3.0.0"
- async "2.6.2"
- bip39 "2.5.0"
- cachedown "1.0.0"
- clone "2.1.2"
- debug "3.2.6"
- encoding-down "5.0.4"
- eth-sig-util "3.0.0"
- ethereumjs-abi "0.6.8"
- ethereumjs-account "3.0.0"
- ethereumjs-block "2.2.2"
- ethereumjs-common "1.5.0"
- ethereumjs-tx "2.1.2"
- ethereumjs-util "6.2.1"
- ethereumjs-vm "4.2.0"
- heap "0.2.6"
- keccak "3.0.1"
- level-sublevel "6.6.4"
- levelup "3.1.1"
- lodash "4.17.20"
- lru-cache "5.1.1"
- merkle-patricia-tree "3.0.0"
- patch-package "6.2.2"
- seedrandom "3.0.1"
- source-map-support "0.5.12"
- tmp "0.1.0"
- web3-provider-engine "14.2.1"
- websocket "1.0.32"
+ganache@7.4.3:
+ version "7.4.3"
+ resolved "https://registry.yarnpkg.com/ganache/-/ganache-7.4.3.tgz#e995f1250697264efbb34d4241c374a2b0271415"
+ integrity sha512-RpEDUiCkqbouyE7+NMXG26ynZ+7sGiODU84Kz+FVoXUnQ4qQM4M8wif3Y4qUCt+D/eM1RVeGq0my62FPD6Y1KA==
+ dependencies:
+ "@trufflesuite/bigint-buffer" "1.1.10"
+ "@types/bn.js" "^5.1.0"
+ "@types/lru-cache" "5.1.1"
+ "@types/seedrandom" "3.0.1"
+ emittery "0.10.0"
+ keccak "3.0.2"
+ leveldown "6.1.0"
+ secp256k1 "4.0.3"
optionalDependencies:
- ethereumjs-wallet "0.6.5"
- web3 "1.2.11"
+ bufferutil "4.0.5"
+ utf-8-validate "5.0.7"
gensequence@^6.0.0:
version "6.0.0"
@@ -7900,11 +6360,6 @@ gensync@^1.0.0-beta.2:
resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.2.tgz#32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0"
integrity sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==
-get-caller-file@^1.0.1:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.3.tgz#f978fa4c90d1dfe7ff2d6beda2a515e713bdcf4a"
- integrity sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==
-
get-caller-file@^2.0.5:
version "2.0.5"
resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e"
@@ -7935,6 +6390,11 @@ get-port@^3.1.0:
resolved "https://registry.yarnpkg.com/get-port/-/get-port-3.2.0.tgz#dd7ce7de187c06c8bf353796ac71e099f0980ebc"
integrity sha512-x5UJKlgeUiNT8nyo/AcnwLnZuZNcSjSw0kogRB+Whd1fjjFq4B1hySFxSFWWSn4mIBzg3sRNUDFYc4g5gjPoLg==
+get-stdin@=8.0.0:
+ version "8.0.0"
+ resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-8.0.0.tgz#cbad6a73feb75f6eeb22ba9e01f89aa28aa97a53"
+ integrity sha512-sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg==
+
get-stdin@^9.0.0, get-stdin@~9.0.0:
version "9.0.0"
resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-9.0.0.tgz#3983ff82e03d56f1b2ea0d3e60325f39d703a575"
@@ -7945,20 +6405,6 @@ get-stdin@~5.0.1:
resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-5.0.1.tgz#122e161591e21ff4c52530305693f20e6393a398"
integrity sha512-jZV7n6jGE3Gt7fgSTJoz91Ak5MuTLwMwkoYdjxuJ/AmjIsE1UC03y/IWkZCQGEvVNS9qoRNwy5BCqxImv0FVeA==
-get-stream@^4.1.0:
- version "4.1.0"
- resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-4.1.0.tgz#c1b255575f3dc21d59bfc79cd3d2b46b1c3a54b5"
- integrity sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==
- dependencies:
- pump "^3.0.0"
-
-get-stream@^5.1.0:
- version "5.2.0"
- resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-5.2.0.tgz#4966a1795ee5ace65e706c4b7beb71257d6e22d3"
- integrity sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==
- dependencies:
- pump "^3.0.0"
-
get-stream@^6.0.0, get-stream@^6.0.1:
version "6.0.1"
resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7"
@@ -7979,11 +6425,6 @@ get-tsconfig@^4.5.0:
dependencies:
resolve-pkg-maps "^1.0.0"
-get-value@^2.0.3, get-value@^2.0.6:
- version "2.0.6"
- resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28"
- integrity sha512-Ln0UQDlxH1BapMu3GPtf7CuYNwRZf2gwCuPqbyG6pB8WfmFpzqcy4xtAaAMUhnNqjMKTiCPZG2oMT3YSx8U2NA==
-
getpass@^0.1.1:
version "0.1.7"
resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa"
@@ -8013,6 +6454,18 @@ glob-parent@^6.0.2:
dependencies:
is-glob "^4.0.3"
+glob@7.1.7, glob@~7.1.2:
+ version "7.1.7"
+ resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.7.tgz#3b193e9233f01d42d0b3f78294bbeeb418f94a90"
+ integrity sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==
+ dependencies:
+ fs.realpath "^1.0.0"
+ inflight "^1.0.4"
+ inherits "2"
+ minimatch "^3.0.4"
+ once "^1.3.0"
+ path-is-absolute "^1.0.0"
+
glob@7.2.0:
version "7.2.0"
resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.0.tgz#d15535af7732e02e948f4c41628bd910293f6023"
@@ -8025,6 +6478,17 @@ glob@7.2.0:
once "^1.3.0"
path-is-absolute "^1.0.0"
+glob@^10.3.7:
+ version "10.3.10"
+ resolved "https://registry.yarnpkg.com/glob/-/glob-10.3.10.tgz#0351ebb809fd187fe421ab96af83d3a70715df4b"
+ integrity sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==
+ dependencies:
+ foreground-child "^3.1.0"
+ jackspeak "^2.3.5"
+ minimatch "^9.0.1"
+ minipass "^5.0.0 || ^6.0.2 || ^7.0.0"
+ path-scurry "^1.10.1"
+
glob@^5.0.15:
version "5.0.15"
resolved "https://registry.yarnpkg.com/glob/-/glob-5.0.15.tgz#1bc936b9e02f4a603fcc222ecf7633d30b8b93b1"
@@ -8036,7 +6500,7 @@ glob@^5.0.15:
once "^1.3.0"
path-is-absolute "^1.0.0"
-glob@^7.0.0, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6, glob@~7.2.3:
+glob@^7.0.0, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6:
version "7.2.3"
resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b"
integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==
@@ -8059,18 +6523,6 @@ glob@^8.0.3:
minimatch "^5.0.1"
once "^1.3.0"
-glob@~7.1.2:
- version "7.1.7"
- resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.7.tgz#3b193e9233f01d42d0b3f78294bbeeb418f94a90"
- integrity sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==
- dependencies:
- fs.realpath "^1.0.0"
- inflight "^1.0.4"
- inherits "2"
- minimatch "^3.0.4"
- once "^1.3.0"
- path-is-absolute "^1.0.0"
-
glob@~8.0.3:
version "8.0.3"
resolved "https://registry.yarnpkg.com/glob/-/glob-8.0.3.tgz#415c6eb2deed9e502c68fa44a272e6da6eeca42e"
@@ -8105,14 +6557,6 @@ global-prefix@^3.0.0:
kind-of "^6.0.2"
which "^1.3.1"
-global@~4.4.0:
- version "4.4.0"
- resolved "https://registry.yarnpkg.com/global/-/global-4.4.0.tgz#3e7b105179006a323ed71aafca3e9c57a5cc6406"
- integrity sha512-wv/LAoHdRE3BeTGz53FAamhGlPLhlssK45usmGFThIi4XqnBmjKQ16u+RNbP7WvigRZDxUsM0J3gcQ5yicaL0w==
- dependencies:
- min-document "^2.19.0"
- process "^0.11.10"
-
globals@^11.1.0:
version "11.12.0"
resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e"
@@ -8132,11 +6576,6 @@ globals@^13.6.0, globals@^13.9.0:
dependencies:
type-fest "^0.20.2"
-globals@^9.18.0:
- version "9.18.0"
- resolved "https://registry.yarnpkg.com/globals/-/globals-9.18.0.tgz#aa3896b3e69b487f17e31ed2143d69a8e30c2d8a"
- integrity sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==
-
globalthis@^1.0.3:
version "1.0.3"
resolved "https://registry.yarnpkg.com/globalthis/-/globalthis-1.0.3.tgz#5852882a52b80dc301b0660273e1ed082f0b6ccf"
@@ -8177,41 +6616,7 @@ gopd@^1.0.1:
dependencies:
get-intrinsic "^1.1.3"
-got@9.6.0:
- version "9.6.0"
- resolved "https://registry.yarnpkg.com/got/-/got-9.6.0.tgz#edf45e7d67f99545705de1f7bbeeeb121765ed85"
- integrity sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==
- dependencies:
- "@sindresorhus/is" "^0.14.0"
- "@szmarczak/http-timer" "^1.1.2"
- cacheable-request "^6.0.0"
- decompress-response "^3.3.0"
- duplexer3 "^0.1.4"
- get-stream "^4.1.0"
- lowercase-keys "^1.0.1"
- mimic-response "^1.0.1"
- p-cancelable "^1.0.0"
- to-readable-stream "^1.0.0"
- url-parse-lax "^3.0.0"
-
-got@^11.8.5:
- version "11.8.6"
- resolved "https://registry.yarnpkg.com/got/-/got-11.8.6.tgz#276e827ead8772eddbcfc97170590b841823233a"
- integrity sha512-6tfZ91bOr7bOXnK7PRDCGBLa1H4U080YHNaAQ2KsMGlLEzRbk44nsZF2E1IeRc3vtJHPVbKCYgdFbaGO2ljd8g==
- dependencies:
- "@sindresorhus/is" "^4.0.0"
- "@szmarczak/http-timer" "^4.0.5"
- "@types/cacheable-request" "^6.0.1"
- "@types/responselike" "^1.0.0"
- cacheable-lookup "^5.0.3"
- cacheable-request "^7.0.2"
- decompress-response "^6.0.0"
- http2-wrapper "^1.0.0-beta.5.2"
- lowercase-keys "^2.0.0"
- p-cancelable "^2.0.0"
- responselike "^2.0.0"
-
-graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.1.9, graceful-fs@^4.2.0, graceful-fs@^4.2.4, graceful-fs@^4.2.6, graceful-fs@^4.2.9:
+graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.1.9, graceful-fs@^4.2.0, graceful-fs@^4.2.4, graceful-fs@^4.2.6, graceful-fs@^4.2.9:
version "4.2.11"
resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.11.tgz#4183e4e8bf08bb6e05bbb2f7d2e0c8f712ca40e3"
integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==
@@ -8388,13 +6793,6 @@ hardhat@^2.18.3:
uuid "^8.3.2"
ws "^7.4.6"
-has-ansi@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91"
- integrity sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg==
- dependencies:
- ansi-regex "^2.0.0"
-
has-bigints@^1.0.1, has-bigints@^1.0.2:
version "1.0.2"
resolved "https://registry.yarnpkg.com/has-bigints/-/has-bigints-1.0.2.tgz#0871bd3e3d51626f6ca0966668ba35d5602d6eaa"
@@ -8444,42 +6842,6 @@ has-tostringtag@^1.0.0:
dependencies:
has-symbols "^1.0.2"
-has-value@^0.3.1:
- version "0.3.1"
- resolved "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f"
- integrity sha512-gpG936j8/MzaeID5Yif+577c17TxaDmhuyVgSwtnL/q8UUTySg8Mecb+8Cf1otgLoD7DDH75axp86ER7LFsf3Q==
- dependencies:
- get-value "^2.0.3"
- has-values "^0.1.4"
- isobject "^2.0.0"
-
-has-value@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/has-value/-/has-value-1.0.0.tgz#18b281da585b1c5c51def24c930ed29a0be6b177"
- integrity sha512-IBXk4GTsLYdQ7Rvt+GRBrFSVEkmuOUy4re0Xjd9kJSUQpnTrWR4/y9RpfexN9vkAPMFuQoeWKwqzPozRTlasGw==
- dependencies:
- get-value "^2.0.6"
- has-values "^1.0.0"
- isobject "^3.0.0"
-
-has-values@^0.1.4:
- version "0.1.4"
- resolved "https://registry.yarnpkg.com/has-values/-/has-values-0.1.4.tgz#6d61de95d91dfca9b9a02089ad384bff8f62b771"
- integrity sha512-J8S0cEdWuQbqD9//tlZxiMuMNmxB8PlEwvYwuxsTmR1G5RXUePEX/SJn7aD0GMLieuZYSwNH0cQuJGwnYunXRQ==
-
-has-values@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/has-values/-/has-values-1.0.0.tgz#95b0b63fec2146619a6fe57fe75628d5a39efe4f"
- integrity sha512-ODYZC64uqzmtfGMEAX/FvZiRyWLpAC3vYnNunURUnkGVTS+mI0smVsWaPydRBsE3g+ok7h960jChO8mFcWlHaQ==
- dependencies:
- is-number "^3.0.0"
- kind-of "^4.0.0"
-
-has@~1.0.3:
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/has/-/has-1.0.4.tgz#2eb2860e000011dae4f1406a86fe80e530fb2ec6"
- integrity sha512-qdSAmqLF6209RFj4VVItywPMbm3vWylknmB3nvNiUIs72xAimcM8nVYxYr7ncvZq5qzk9MKIZR8ijqD/1QuYjQ==
-
hash-base@^3.0.0:
version "3.1.0"
resolved "https://registry.yarnpkg.com/hash-base/-/hash-base-3.1.0.tgz#55c381d9e06e1d2997a883b4a3fddfe7f0d3af33"
@@ -8509,11 +6871,6 @@ he@1.2.0:
resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f"
integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==
-heap@0.2.6:
- version "0.2.6"
- resolved "https://registry.yarnpkg.com/heap/-/heap-0.2.6.tgz#087e1f10b046932fc8594dd9e6d378afc9d1e5ac"
- integrity sha512-MzzWcnfB1e4EG2vHi3dXHoBupmuXNZzx6pY6HldVS55JKKBoq3xOyzfSaZRkJp37HIhEYC78knabHff3zc4dQQ==
-
"heap@>= 0.2.0":
version "0.2.7"
resolved "https://registry.yarnpkg.com/heap/-/heap-0.2.7.tgz#1e6adf711d3f27ce35a81fe3b7bd576c2260a8fc"
@@ -8528,14 +6885,6 @@ hmac-drbg@^1.0.1:
minimalistic-assert "^1.0.0"
minimalistic-crypto-utils "^1.0.1"
-home-or-tmp@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/home-or-tmp/-/home-or-tmp-2.0.0.tgz#e36c3f2d2cae7d746a857e38d18d5f32a7882db8"
- integrity sha512-ycURW7oUxE2sNiPVw1HVEFsW+ecOpJ5zaj7eC0RlwhibhRBod20muUN8qu/gzx956YrLolVvs1MTXwKgC2rVEg==
- dependencies:
- os-homedir "^1.0.0"
- os-tmpdir "^1.0.1"
-
hosted-git-info@^2.1.4, hosted-git-info@^2.6.0:
version "2.8.9"
resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9"
@@ -8556,11 +6905,6 @@ http-basic@^8.1.1:
http-response-object "^3.0.1"
parse-cache-control "^1.0.1"
-http-cache-semantics@^4.0.0:
- version "4.1.1"
- resolved "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz#abe02fcb2985460bf0323be664436ec3476a6d5a"
- integrity sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==
-
http-errors@2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-2.0.0.tgz#b7774a1486ef73cf7667ac9ae0858c012c57b9d3"
@@ -8572,11 +6916,6 @@ http-errors@2.0.0:
statuses "2.0.1"
toidentifier "1.0.1"
-http-https@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/http-https/-/http-https-1.0.0.tgz#2f908dd5f1db4068c058cd6e6d4ce392c913389b"
- integrity sha512-o0PWwVCSp3O0wS6FvNr6xfBCHgt0m1tvPLFOCc2iFDKTRAXhB7m8klDf7ErowFH8POa6dVdGatKU5I1YYwzUyg==
-
http-response-object@^3.0.1:
version "3.0.2"
resolved "https://registry.yarnpkg.com/http-response-object/-/http-response-object-3.0.2.tgz#7f435bb210454e4360d074ef1f989d5ea8aa9810"
@@ -8593,14 +6932,6 @@ http-signature@~1.2.0:
jsprim "^1.2.2"
sshpk "^1.7.0"
-http2-wrapper@^1.0.0-beta.5.2:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/http2-wrapper/-/http2-wrapper-1.0.3.tgz#b8f55e0c1f25d4ebd08b3b0c2c079f9590800b3d"
- integrity sha512-V+23sDMr12Wnz7iTcDeJr3O6AIxlnvT/bmaAAAP/Xda35C90p9599p0F1eHR/N1KILWSoWVAiOMFjBBXaXSMxg==
- dependencies:
- quick-lru "^5.1.1"
- resolve-alpn "^1.0.0"
-
https-proxy-agent@^5.0.0:
version "5.0.1"
resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz#c59ef224a04fe8b754f3db0063a25ea30d0005d6"
@@ -8626,20 +6957,6 @@ iconv-lite@0.4.24, iconv-lite@^0.4.24:
dependencies:
safer-buffer ">= 2.1.2 < 3"
-iconv-lite@^0.6.2:
- version "0.6.3"
- resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.6.3.tgz#a52f80bf38da1952eb5c681790719871a1a72501"
- integrity sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==
- dependencies:
- safer-buffer ">= 2.1.2 < 3.0.0"
-
-idna-uts46-hx@^2.3.1:
- version "2.3.1"
- resolved "https://registry.yarnpkg.com/idna-uts46-hx/-/idna-uts46-hx-2.3.1.tgz#a1dc5c4df37eee522bf66d969cc980e00e8711f9"
- integrity sha512-PWoF9Keq6laYdIRwwCdhTPl60xRqAloYNMQLiyUnG42VjT53oW07BXIRM+NK7eQjzXjAk2gUvX9caRxlnF9TAA==
- dependencies:
- punycode "2.1.0"
-
ieee754@^1.1.13, ieee754@^1.2.1:
version "1.2.1"
resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352"
@@ -8719,7 +7036,7 @@ inflight@^1.0.4:
once "^1.3.0"
wrappy "1"
-inherits@2, inherits@2.0.4, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.1, inherits@~2.0.3, inherits@~2.0.4:
+inherits@2, inherits@2.0.4, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.1, inherits@~2.0.3:
version "2.0.4"
resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c"
integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==
@@ -8777,18 +7094,6 @@ interpret@^1.0.0:
resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.4.0.tgz#665ab8bc4da27a774a40584e812e3e0fa45b1a1e"
integrity sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==
-invariant@^2.2.2:
- version "2.2.4"
- resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.4.tgz#610f3c92c9359ce1db616e538008d23ff35158e6"
- integrity sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==
- dependencies:
- loose-envify "^1.0.0"
-
-invert-kv@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-1.0.0.tgz#104a8e4aaca6d3d8cd157a8ef8bfab2d7a3ffdb6"
- integrity sha512-xgs2NH9AE66ucSq4cNG1nhSFghr5l6tdL15Pk+jl46bmmBapgoaY/AacXyaDznAqmGL99TiLSQgO/XazFSKYeQ==
-
io-ts@1.10.4:
version "1.10.4"
resolved "https://registry.yarnpkg.com/io-ts/-/io-ts-1.10.4.tgz#cd5401b138de88e4f920adbcb7026e2d1967e6e2"
@@ -8796,26 +7101,6 @@ io-ts@1.10.4:
dependencies:
fp-ts "^1.0.0"
-ipaddr.js@1.9.1:
- version "1.9.1"
- resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.9.1.tgz#bff38543eeb8984825079ff3a2a8e6cbd46781b3"
- integrity sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==
-
-is-accessor-descriptor@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-1.0.1.tgz#3223b10628354644b86260db29b3e693f5ceedd4"
- integrity sha512-YBUanLI8Yoihw923YeFUS5fs0fF2f5TSFTNiYAAzhhDscDa3lEqYuz1pDOEP5KvX94I9ey3vsqjJcLVFVU+3QA==
- dependencies:
- hasown "^2.0.0"
-
-is-arguments@^1.1.1:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/is-arguments/-/is-arguments-1.1.1.tgz#15b3f88fda01f2a97fec84ca761a560f123efa9b"
- integrity sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==
- dependencies:
- call-bind "^1.0.2"
- has-tostringtag "^1.0.0"
-
is-array-buffer@^3.0.1, is-array-buffer@^3.0.2:
version "3.0.2"
resolved "https://registry.yarnpkg.com/is-array-buffer/-/is-array-buffer-3.0.2.tgz#f2653ced8412081638ecb0ebbd0c41c6e0aecbbe"
@@ -8852,11 +7137,6 @@ is-boolean-object@^1.1.0:
call-bind "^1.0.2"
has-tostringtag "^1.0.0"
-is-buffer@^1.1.5:
- version "1.1.6"
- resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be"
- integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==
-
is-buffer@^2.0.5:
version "2.0.5"
resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-2.0.5.tgz#ebc252e400d22ff8d77fa09888821a24a658c191"
@@ -8867,13 +7147,6 @@ is-callable@^1.1.3, is-callable@^1.1.4, is-callable@^1.2.7:
resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.7.tgz#3bc2a85ea742d9e36205dcacdd72ca1fdc51b055"
integrity sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==
-is-ci@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-2.0.0.tgz#6bc6334181810e04b5c22b3d589fdca55026404c"
- integrity sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==
- dependencies:
- ci-info "^2.0.0"
-
is-core-module@^2.11.0, is-core-module@^2.13.0, is-core-module@^2.13.1:
version "2.13.1"
resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.13.1.tgz#ad0d7532c6fea9da1ebdc82742d74525c6273384"
@@ -8881,80 +7154,33 @@ is-core-module@^2.11.0, is-core-module@^2.13.0, is-core-module@^2.13.1:
dependencies:
hasown "^2.0.0"
-is-data-descriptor@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-1.0.1.tgz#2109164426166d32ea38c405c1e0945d9e6a4eeb"
- integrity sha512-bc4NlCDiCr28U4aEsQ3Qs2491gVq4V8G7MQyws968ImqjKuYtTJXrl7Vq7jsN7Ly/C3xj5KWFrY7sHNeDkAzXw==
- dependencies:
- hasown "^2.0.0"
-
-is-date-object@^1.0.1, is-date-object@^1.0.5:
+is-date-object@^1.0.1:
version "1.0.5"
resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.5.tgz#0841d5536e724c25597bf6ea62e1bd38298df31f"
integrity sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==
dependencies:
has-tostringtag "^1.0.0"
-is-descriptor@^0.1.0:
- version "0.1.7"
- resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-0.1.7.tgz#2727eb61fd789dcd5bdf0ed4569f551d2fe3be33"
- integrity sha512-C3grZTvObeN1xud4cRWl366OMXZTj0+HGyk4hvfpx4ZHt1Pb60ANSXqCK7pdOTeUQpRzECBSTphqvD7U+l22Eg==
- dependencies:
- is-accessor-descriptor "^1.0.1"
- is-data-descriptor "^1.0.1"
-
-is-descriptor@^1.0.0, is-descriptor@^1.0.2:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-1.0.3.tgz#92d27cb3cd311c4977a4db47df457234a13cb306"
- integrity sha512-JCNNGbwWZEVaSPtS45mdtrneRWJFp07LLmykxeFV5F6oBvNF8vHSfJuJgoT472pSfk+Mf8VnlrspaFBHWM8JAw==
- dependencies:
- is-accessor-descriptor "^1.0.1"
- is-data-descriptor "^1.0.1"
-
is-docker@^2.0.0:
version "2.2.1"
resolved "https://registry.yarnpkg.com/is-docker/-/is-docker-2.2.1.tgz#33eeabe23cfe86f14bde4408a02c0cfb853acdaa"
integrity sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==
is-docker@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/is-docker/-/is-docker-3.0.0.tgz#90093aa3106277d8a77a5910dbae71747e15a200"
- integrity sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==
-
-is-extendable@^0.1.0, is-extendable@^0.1.1:
- version "0.1.1"
- resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89"
- integrity sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==
-
-is-extendable@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-1.0.1.tgz#a7470f9e426733d81bd81e1155264e3a3507cab4"
- integrity sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==
- dependencies:
- is-plain-object "^2.0.4"
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/is-docker/-/is-docker-3.0.0.tgz#90093aa3106277d8a77a5910dbae71747e15a200"
+ integrity sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==
is-extglob@^2.1.1:
version "2.1.1"
resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2"
integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==
-is-finite@^1.0.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/is-finite/-/is-finite-1.1.0.tgz#904135c77fb42c0641d6aa1bcdbc4daa8da082f3"
- integrity sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w==
-
is-fn@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/is-fn/-/is-fn-1.0.0.tgz#9543d5de7bcf5b08a22ec8a20bae6e286d510d8c"
integrity sha512-XoFPJQmsAShb3jEQRfzf2rqXavq7fIqF/jOekp308JlThqrODnMpweVSGilKTCXELfLhltGP2AGgbQGVP8F1dg==
-is-fullwidth-code-point@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb"
- integrity sha512-1pqUqRjkhPJ9miNq9SwMfdvi6lBJcd6eFxvfaivQhaH3SgisfiuudvFntdKOmxuee/77l+FPjKrQjWvmPjWrRw==
- dependencies:
- number-is-nan "^1.0.0"
-
is-fullwidth-code-point@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f"
@@ -8965,11 +7191,6 @@ is-fullwidth-code-point@^3.0.0:
resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d"
integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==
-is-function@^1.0.1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/is-function/-/is-function-1.0.2.tgz#4f097f30abf6efadac9833b17ca5dc03f8144e08"
- integrity sha512-lw7DUp0aWXYg+CBCN+JKkcE0Q2RayZnSvnZBlwgxHBQhqt5pZNVy4Ri7H9GmmXkdu7LUthszM+Tor1u/2iBcpQ==
-
is-generator-fn@^2.0.0:
version "2.1.0"
resolved "https://registry.yarnpkg.com/is-generator-fn/-/is-generator-fn-2.1.0.tgz#7d140adc389aaf3011a8f2a2a4cfa6faadffb118"
@@ -9006,13 +7227,6 @@ is-number-object@^1.0.4:
dependencies:
has-tostringtag "^1.0.0"
-is-number@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195"
- integrity sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==
- dependencies:
- kind-of "^3.0.2"
-
is-number@^7.0.0:
version "7.0.0"
resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b"
@@ -9033,14 +7247,7 @@ is-plain-obj@^2.1.0:
resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-2.1.0.tgz#45e42e37fccf1f40da8e5f76ee21515840c09287"
integrity sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==
-is-plain-object@^2.0.3, is-plain-object@^2.0.4:
- version "2.0.4"
- resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677"
- integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==
- dependencies:
- isobject "^3.0.1"
-
-is-regex@^1.1.4, is-regex@~1.1.4:
+is-regex@^1.1.4:
version "1.1.4"
resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.1.4.tgz#eef5663cd59fa4c0ae339505323df6854bb15958"
integrity sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==
@@ -9055,11 +7262,6 @@ is-shared-array-buffer@^1.0.2:
dependencies:
call-bind "^1.0.2"
-is-stream@^1.0.1:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44"
- integrity sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==
-
is-stream@^2.0.0:
version "2.0.1"
resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.1.tgz#fac1e3d53b97ad5a9d0ae9cef2389f5810a5c077"
@@ -9106,11 +7308,6 @@ is-url@^1.2.4:
resolved "https://registry.yarnpkg.com/is-url/-/is-url-1.2.4.tgz#04a4df46d28c4cff3d73d01ff06abeb318a1aa52"
integrity sha512-ITvGim8FhRiYe4IQ5uHSkj7pVaPDrCTkNd3yq3cV7iZAcJdHTUMPMEHcqSOy9xZ9qFenQCvi+2wjH9a1nXqHww==
-is-utf8@^0.2.0:
- version "0.2.1"
- resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72"
- integrity sha512-rMYPYvCzsXywIsldgLaSoPlw5PfoB/ssr7hY4pLfcodrA5M/eArza1a9VmTiNIBNMjOGr1Ow9mTyU2o69U6U9Q==
-
is-weakref@^1.0.2:
version "1.0.2"
resolved "https://registry.yarnpkg.com/is-weakref/-/is-weakref-1.0.2.tgz#9529f383a9338205e89765e0392efc2f100f06f2"
@@ -9118,12 +7315,7 @@ is-weakref@^1.0.2:
dependencies:
call-bind "^1.0.2"
-is-windows@^1.0.2:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d"
- integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==
-
-is-wsl@^2.1.1, is-wsl@^2.2.0:
+is-wsl@^2.2.0:
version "2.2.0"
resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-2.2.0.tgz#74a4c76e77ca9fd3f932f290c17ea326cd157271"
integrity sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==
@@ -9135,33 +7327,21 @@ isarray@0.0.1:
resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf"
integrity sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==
-isarray@1.0.0, isarray@~1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11"
- integrity sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==
-
isarray@^2.0.5:
version "2.0.5"
resolved "https://registry.yarnpkg.com/isarray/-/isarray-2.0.5.tgz#8af1e4c1221244cc62459faf38940d4e644a5723"
integrity sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==
+isarray@~1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11"
+ integrity sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==
+
isexe@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10"
integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==
-isobject@^2.0.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89"
- integrity sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA==
- dependencies:
- isarray "1.0.0"
-
-isobject@^3.0.0, isobject@^3.0.1:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df"
- integrity sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==
-
isstream@~0.1.2:
version "0.1.2"
resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a"
@@ -9220,6 +7400,15 @@ istanbul-reports@^3.1.3:
html-escaper "^2.0.0"
istanbul-lib-report "^3.0.0"
+jackspeak@^2.3.5:
+ version "2.3.6"
+ resolved "https://registry.yarnpkg.com/jackspeak/-/jackspeak-2.3.6.tgz#647ecc472238aee4b06ac0e461acc21a8c505ca8"
+ integrity sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==
+ dependencies:
+ "@isaacs/cliui" "^8.0.2"
+ optionalDependencies:
+ "@pkgjs/parseargs" "^0.11.0"
+
jest-changed-files@^29.7.0:
version "29.7.0"
resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-29.7.0.tgz#1c06d07e77c78e1585d020424dedc10d6e17ac3a"
@@ -9593,21 +7782,11 @@ js-sha3@0.8.0, js-sha3@^0.8.0:
resolved "https://registry.yarnpkg.com/js-sha3/-/js-sha3-0.8.0.tgz#b9b7a5da73afad7dedd0f8c463954cbde6818840"
integrity sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==
-js-sha3@^0.5.7:
- version "0.5.7"
- resolved "https://registry.yarnpkg.com/js-sha3/-/js-sha3-0.5.7.tgz#0d4ffd8002d5333aabaf4a23eed2f6374c9f28e7"
- integrity sha512-GII20kjaPX0zJ8wzkTbNDYMY7msuZcTWk8S5UOh6806Jq/wz1J8/bnr8uGU0DAUmYDjj2Mr4X1cW8v/GLYnR+g==
-
-"js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0:
+js-tokens@^4.0.0:
version "4.0.0"
resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499"
integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==
-js-tokens@^3.0.2:
- version "3.0.2"
- resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b"
- integrity sha512-RjTcuD4xjtthQkaWH7dFlH85L+QaVtSoOyGdZ3g6HFhS9dFNDfLyqgm2NFe2X6cQpeFmt0452FJjFG5UameExg==
-
js-yaml@3.x, js-yaml@^3.13.1:
version "3.14.1"
resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.1.tgz#dae812fdb3825fa306609a8717383c50c36a0537"
@@ -9636,25 +7815,17 @@ jsbn@~0.1.0:
resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513"
integrity sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==
-jsesc@^1.3.0:
- version "1.3.0"
- resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-1.3.0.tgz#46c3fec8c1892b12b0833db9bc7622176dbab34b"
- integrity sha512-Mke0DA0QjUWuJlhsE0ZPPhYiJkRap642SmI/4ztCFaUs6V2AiH1sfecc+57NgaryfAA2VR3v6O+CSjC1jZJKOA==
-
jsesc@^2.5.1:
version "2.5.2"
resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4"
integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==
-jsesc@~0.5.0:
- version "0.5.0"
- resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d"
- integrity sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==
-
-json-buffer@3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.0.tgz#5b1f397afc75d677bde8bcfc0e47e1f9a3d9a898"
- integrity sha512-CuUqjv0FUZIdXkHPI8MezCnFCdaTAacej1TZYulLoAg1h/PhwkdXFN4V/gzY4g+fMBCOV2xF+rp7t2XD2ns/NQ==
+json-bigint@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/json-bigint/-/json-bigint-1.0.0.tgz#ae547823ac0cad8398667f8cd9ef4730f5b01ff1"
+ integrity sha512-SiPv/8VpZuWbvLSMtTDU8hEfrZWg/mH/nV/b4o0CYbSxu1UIQPLdwKOCIyLQX+VIPO5vrLX3i8qtqFyhdPSUSQ==
+ dependencies:
+ bignumber.js "^9.0.0"
json-buffer@3.0.1:
version "3.0.1"
@@ -9671,30 +7842,6 @@ json-parse-even-better-errors@^2.3.0:
resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d"
integrity sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==
-json-rpc-engine@^3.4.0, json-rpc-engine@^3.6.0:
- version "3.8.0"
- resolved "https://registry.yarnpkg.com/json-rpc-engine/-/json-rpc-engine-3.8.0.tgz#9d4ff447241792e1d0a232f6ef927302bb0c62a9"
- integrity sha512-6QNcvm2gFuuK4TKU1uwfH0Qd/cOSb9c1lls0gbnIhciktIUQJwz6NQNAW4B1KiGPenv7IKu97V222Yo1bNhGuA==
- dependencies:
- async "^2.0.1"
- babel-preset-env "^1.7.0"
- babelify "^7.3.0"
- json-rpc-error "^2.0.0"
- promise-to-callback "^1.0.0"
- safe-event-emitter "^1.0.1"
-
-json-rpc-error@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/json-rpc-error/-/json-rpc-error-2.0.0.tgz#a7af9c202838b5e905c7250e547f1aff77258a02"
- integrity sha512-EwUeWP+KgAZ/xqFpaP6YDAXMtCJi+o/QQpCQFIYyxr01AdADi2y413eM8hSqJcoQym9WMePAJWoaODEJufC4Ug==
- dependencies:
- inherits "^2.0.1"
-
-json-rpc-random-id@^1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/json-rpc-random-id/-/json-rpc-random-id-1.0.1.tgz#ba49d96aded1444dbb8da3d203748acbbcdec8c8"
- integrity sha512-RJ9YYNCkhVDBuP4zN5BBtYAzEl03yq/jIIsyif0JY9qyJuQQZNeDK7anAPKKlyEtLSj2s8h6hNh2F8zO5q7ScA==
-
json-schema-traverse@^0.4.1:
version "0.4.1"
resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660"
@@ -9715,26 +7862,11 @@ json-stable-stringify-without-jsonify@^1.0.1:
resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651"
integrity sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==
-json-stable-stringify@^1.0.1:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/json-stable-stringify/-/json-stable-stringify-1.1.0.tgz#43d39c7c8da34bfaf785a61a56808b0def9f747d"
- integrity sha512-zfA+5SuwYN2VWqN1/5HZaDzQKLJHaBVMZIIM+wuYjdptkaQsqzDdqjqf+lZZJUuJq1aanHiY8LhH8LmH+qBYJA==
- dependencies:
- call-bind "^1.0.5"
- isarray "^2.0.5"
- jsonify "^0.0.1"
- object-keys "^1.1.1"
-
json-stringify-safe@~5.0.1:
version "5.0.1"
resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb"
integrity sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==
-json5@^0.5.1:
- version "0.5.1"
- resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.1.tgz#1eade7acc012034ad84e2396767ead9fa5495821"
- integrity sha512-4xrs1aW+6N5DalkqSVA8fxh458CXvR99WU8WLKmq4v8eWAL86Xo3BVqyd3SkA9wEVjCMqyvvRRkshAdOnBp5rw==
-
json5@^1.0.2:
version "1.0.2"
resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.2.tgz#63d98d60f21b313b77c4d6da18bfa69d80e1d593"
@@ -9780,11 +7912,6 @@ jsonfile@^6.0.1:
optionalDependencies:
graceful-fs "^4.1.6"
-jsonify@^0.0.1:
- version "0.0.1"
- resolved "https://registry.yarnpkg.com/jsonify/-/jsonify-0.0.1.tgz#2aa3111dae3d34a0f151c63f3a45d995d9420978"
- integrity sha512-2/Ki0GcmuqSrgFyelQq9M05y7PS0mEwuIzrf3f1fPqkVDVRvZrPZtVSMHxdgo8Aq0sxAOb/cr2aqqA3LeWHVPg==
-
jsonparse@^1.2.0:
version "1.3.1"
resolved "https://registry.yarnpkg.com/jsonparse/-/jsonparse-1.3.1.tgz#3f4dae4a91fac315f71062f8521cc239f1366280"
@@ -9846,6 +7973,15 @@ keccak@3.0.1:
node-addon-api "^2.0.0"
node-gyp-build "^4.2.0"
+keccak@3.0.2:
+ version "3.0.2"
+ resolved "https://registry.yarnpkg.com/keccak/-/keccak-3.0.2.tgz#4c2c6e8c54e04f2670ee49fa734eb9da152206e0"
+ integrity sha512-PyKKjkH53wDMLGrvmRGSNWgmSxZOUqbnXwKL9tmgbFYA1iAYqW21kfR7mZXV0MlESiefxQQE9X9fTa3X+2MPDQ==
+ dependencies:
+ node-addon-api "^2.0.0"
+ node-gyp-build "^4.2.0"
+ readable-stream "^3.6.0"
+
keccak@^3.0.0, keccak@^3.0.2:
version "3.0.4"
resolved "https://registry.yarnpkg.com/keccak/-/keccak-3.0.4.tgz#edc09b89e633c0549da444432ecf062ffadee86d"
@@ -9855,46 +7991,18 @@ keccak@^3.0.0, keccak@^3.0.2:
node-gyp-build "^4.2.0"
readable-stream "^3.6.0"
-keyv@^3.0.0:
- version "3.1.0"
- resolved "https://registry.yarnpkg.com/keyv/-/keyv-3.1.0.tgz#ecc228486f69991e49e9476485a5be1e8fc5c4d9"
- integrity sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==
- dependencies:
- json-buffer "3.0.0"
-
-keyv@^4.0.0, keyv@^4.5.3:
+keyv@^4.5.3, keyv@^4.5.4:
version "4.5.4"
resolved "https://registry.yarnpkg.com/keyv/-/keyv-4.5.4.tgz#a879a99e29452f942439f2a405e3af8b31d4de93"
integrity sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==
dependencies:
json-buffer "3.0.1"
-kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0:
- version "3.2.2"
- resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64"
- integrity sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==
- dependencies:
- is-buffer "^1.1.5"
-
-kind-of@^4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-4.0.0.tgz#20813df3d712928b207378691a45066fae72dd57"
- integrity sha512-24XsCxmEbRwEDbz/qz3stgin8TTzZ1ESR56OMCN0ujYg+vRutNSiOj9bHH9u85DKgXguraugV5sFuvbD4FW/hw==
- dependencies:
- is-buffer "^1.1.5"
-
kind-of@^6.0.2:
version "6.0.3"
resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd"
integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==
-klaw-sync@^6.0.0:
- version "6.0.0"
- resolved "https://registry.yarnpkg.com/klaw-sync/-/klaw-sync-6.0.0.tgz#1fd2cfd56ebb6250181114f0a581167099c2b28c"
- integrity sha512-nIeuVSzdCCs6TDPTqI8w1Yre34sSq7AkZ4B3sfOBbI2CgVSB4Du4aLQijFU2+lhAFCwt9+42Hel6lQNIv6AntQ==
- dependencies:
- graceful-fs "^4.1.11"
-
klaw@^1.0.0:
version "1.3.1"
resolved "https://registry.yarnpkg.com/klaw/-/klaw-1.3.1.tgz#4088433b46b3b1ba259d78785d8e96f73ba02439"
@@ -9919,13 +8027,6 @@ kleur@^3.0.3:
dependencies:
dotenv "^16.0.3"
-lcid@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/lcid/-/lcid-1.0.0.tgz#308accafa0bc483a3867b4b6f2b9506251d1b835"
- integrity sha512-YiGkH6EnGrDGqLMITnGjXtGmNtjoXw9SVUzcaos8RBi7Ps0VBylkq+vOcY9QE5poLasPCR849ucFUkl0UzUyOw==
- dependencies:
- invert-kv "^1.0.0"
-
level-codec@^9.0.0:
version "9.0.2"
resolved "https://registry.yarnpkg.com/level-codec/-/level-codec-9.0.2.tgz#fd60df8c64786a80d44e63423096ffead63d8cbc"
@@ -9933,17 +8034,17 @@ level-codec@^9.0.0:
dependencies:
buffer "^5.6.0"
-level-codec@~7.0.0:
- version "7.0.1"
- resolved "https://registry.yarnpkg.com/level-codec/-/level-codec-7.0.1.tgz#341f22f907ce0f16763f24bddd681e395a0fb8a7"
- integrity sha512-Ua/R9B9r3RasXdRmOtd+t9TCOEIIlts+TN/7XTT2unhDaL6sJn83S3rUyljbr6lVtw49N3/yA0HHjpV6Kzb2aQ==
-
-level-errors@^1.0.3:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/level-errors/-/level-errors-1.1.2.tgz#4399c2f3d3ab87d0625f7e3676e2d807deff404d"
- integrity sha512-Sw/IJwWbPKF5Ai4Wz60B52yj0zYeqzObLh8k1Tk88jVmD51cJSKWSYpRyhVIvFzZdvsPqlH5wfhp/yxdsaQH4w==
+level-concat-iterator@^3.0.0:
+ version "3.1.0"
+ resolved "https://registry.yarnpkg.com/level-concat-iterator/-/level-concat-iterator-3.1.0.tgz#5235b1f744bc34847ed65a50548aa88d22e881cf"
+ integrity sha512-BWRCMHBxbIqPxJ8vHOvKUsaO0v1sLYZtjN3K2iZJsRBYtp+ONsY6Jfi6hy9K3+zolgQRryhIn2NRZjZnWJ9NmQ==
dependencies:
- errno "~0.1.1"
+ catering "^2.1.0"
+
+level-concat-iterator@~2.0.0:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/level-concat-iterator/-/level-concat-iterator-2.0.1.tgz#1d1009cf108340252cb38c51f9727311193e6263"
+ integrity sha512-OTKKOqeav2QWcERMJR7IS9CUo1sHnke2C0gkSmcR7QuEtFNLLzHQAvnMw8ykvEcv0Qtkg0p7FOwP1v9e5Smdcw==
level-errors@^2.0.0, level-errors@~2.0.0:
version "2.0.1"
@@ -9952,85 +8053,48 @@ level-errors@^2.0.0, level-errors@~2.0.0:
dependencies:
errno "~0.1.1"
-level-errors@~1.0.3:
- version "1.0.5"
- resolved "https://registry.yarnpkg.com/level-errors/-/level-errors-1.0.5.tgz#83dbfb12f0b8a2516bdc9a31c4876038e227b859"
- integrity sha512-/cLUpQduF6bNrWuAC4pwtUKA5t669pCsCi2XbmojG2tFeOr9j6ShtdDCtFFQO1DRt+EVZhx9gPzP9G2bUaG4ig==
- dependencies:
- errno "~0.1.1"
-
-level-iterator-stream@^2.0.3:
- version "2.0.3"
- resolved "https://registry.yarnpkg.com/level-iterator-stream/-/level-iterator-stream-2.0.3.tgz#ccfff7c046dcf47955ae9a86f46dfa06a31688b4"
- integrity sha512-I6Heg70nfF+e5Y3/qfthJFexhRw/Gi3bIymCoXAlijZdAcLaPuWSJs3KXyTYf23ID6g0o2QF62Yh+grOXY3Rig==
- dependencies:
- inherits "^2.0.1"
- readable-stream "^2.0.5"
- xtend "^4.0.0"
-
-level-iterator-stream@~1.3.0:
- version "1.3.1"
- resolved "https://registry.yarnpkg.com/level-iterator-stream/-/level-iterator-stream-1.3.1.tgz#e43b78b1a8143e6fa97a4f485eb8ea530352f2ed"
- integrity sha512-1qua0RHNtr4nrZBgYlpV0qHHeHpcRRWTxEZJ8xsemoHAXNL5tbooh4tPEEqIqsbWCAJBmUmkwYK/sW5OrFjWWw==
- dependencies:
- inherits "^2.0.1"
- level-errors "^1.0.3"
- readable-stream "^1.0.33"
- xtend "^4.0.0"
-
-level-iterator-stream@~3.0.0:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/level-iterator-stream/-/level-iterator-stream-3.0.1.tgz#2c98a4f8820d87cdacab3132506815419077c730"
- integrity sha512-nEIQvxEED9yRThxvOrq8Aqziy4EGzrxSZK+QzEFAVuJvQ8glfyZ96GB6BoI4sBbLfjMXm2w4vu3Tkcm9obcY0g==
- dependencies:
- inherits "^2.0.1"
- readable-stream "^2.3.6"
- xtend "^4.0.0"
-
-level-mem@^3.0.1:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/level-mem/-/level-mem-3.0.1.tgz#7ce8cf256eac40f716eb6489654726247f5a89e5"
- integrity sha512-LbtfK9+3Ug1UmvvhR2DqLqXiPW1OJ5jEh0a3m9ZgAipiwpSxGj/qaVVy54RG5vAQN1nCuXqjvprCuKSCxcJHBg==
+level-iterator-stream@~4.0.0:
+ version "4.0.2"
+ resolved "https://registry.yarnpkg.com/level-iterator-stream/-/level-iterator-stream-4.0.2.tgz#7ceba69b713b0d7e22fcc0d1f128ccdc8a24f79c"
+ integrity sha512-ZSthfEqzGSOMWoUGhTXdX9jv26d32XJuHz/5YnuHZzH6wldfWMOVwI9TBtKcya4BKTyTt3XVA0A3cF3q5CY30Q==
dependencies:
- level-packager "~4.0.0"
- memdown "~3.0.0"
+ inherits "^2.0.4"
+ readable-stream "^3.4.0"
+ xtend "^4.0.2"
-level-packager@~4.0.0:
- version "4.0.1"
- resolved "https://registry.yarnpkg.com/level-packager/-/level-packager-4.0.1.tgz#7e7d3016af005be0869bc5fa8de93d2a7f56ffe6"
- integrity sha512-svCRKfYLn9/4CoFfi+d8krOtrp6RoX8+xm0Na5cgXMqSyRru0AnDYdLl+YI8u1FyS6gGZ94ILLZDE5dh2but3Q==
+level-mem@^5.0.1:
+ version "5.0.1"
+ resolved "https://registry.yarnpkg.com/level-mem/-/level-mem-5.0.1.tgz#c345126b74f5b8aa376dc77d36813a177ef8251d"
+ integrity sha512-qd+qUJHXsGSFoHTziptAKXoLX87QjR7v2KMbqncDXPxQuCdsQlzmyX+gwrEHhlzn08vkf8TyipYyMmiC6Gobzg==
dependencies:
- encoding-down "~5.0.0"
- levelup "^3.0.0"
+ level-packager "^5.0.3"
+ memdown "^5.0.0"
-level-post@^1.0.7:
- version "1.0.7"
- resolved "https://registry.yarnpkg.com/level-post/-/level-post-1.0.7.tgz#19ccca9441a7cc527879a0635000f06d5e8f27d0"
- integrity sha512-PWYqG4Q00asOrLhX7BejSajByB4EmG2GaKHfj3h5UmmZ2duciXLPGYWIjBzLECFWUGOZWlm5B20h/n3Gs3HKew==
+level-packager@^5.0.3:
+ version "5.1.1"
+ resolved "https://registry.yarnpkg.com/level-packager/-/level-packager-5.1.1.tgz#323ec842d6babe7336f70299c14df2e329c18939"
+ integrity sha512-HMwMaQPlTC1IlcwT3+swhqf/NUO+ZhXVz6TY1zZIIZlIR0YSn8GtAAWmIvKjNY16ZkEg/JcpAuQskxsXqC0yOQ==
dependencies:
- ltgt "^2.1.2"
+ encoding-down "^6.3.0"
+ levelup "^4.3.2"
-level-sublevel@6.6.4:
- version "6.6.4"
- resolved "https://registry.yarnpkg.com/level-sublevel/-/level-sublevel-6.6.4.tgz#f7844ae893919cd9d69ae19d7159499afd5352ba"
- integrity sha512-pcCrTUOiO48+Kp6F1+UAzF/OtWqLcQVTVF39HLdZ3RO8XBoXt+XVPKZO1vVr1aUoxHZA9OtD2e1v7G+3S5KFDA==
- dependencies:
- bytewise "~1.1.0"
- level-codec "^9.0.0"
- level-errors "^2.0.0"
- level-iterator-stream "^2.0.3"
- ltgt "~2.1.1"
- pull-defer "^0.2.2"
- pull-level "^2.0.3"
- pull-stream "^3.6.8"
- typewiselite "~1.0.0"
- xtend "~4.0.0"
+level-supports@^2.0.1:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/level-supports/-/level-supports-2.1.0.tgz#9af908d853597ecd592293b2fad124375be79c5f"
+ integrity sha512-E486g1NCjW5cF78KGPrMDRBYzPuueMZ6VBXHT6gC7A8UYWGiM14fGgp+s/L1oFfDWSPV/+SFkYCmZ0SiESkRKA==
level-supports@^4.0.0:
version "4.0.1"
resolved "https://registry.yarnpkg.com/level-supports/-/level-supports-4.0.1.tgz#431546f9d81f10ff0fea0e74533a0e875c08c66a"
integrity sha512-PbXpve8rKeNcZ9C1mUicC9auIYFyGpkV9/i6g76tLgANwWhtG2v7I4xNBUlkn3lE2/dZF3Pi0ygYGtLc4RXXdA==
+level-supports@~1.0.0:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/level-supports/-/level-supports-1.0.1.tgz#2f530a596834c7301622521988e2c36bb77d122d"
+ integrity sha512-rXM7GYnW8gsl1vedTJIbzOrRv85c/2uCMpiiCzO2fndd06U/kUXEEU9evYn4zFggBOg36IsBW8LzqIpETwwQzg==
+ dependencies:
+ xtend "^4.0.2"
+
level-transcoder@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/level-transcoder/-/level-transcoder-1.0.1.tgz#f8cef5990c4f1283d4c86d949e73631b0bc8ba9c"
@@ -10039,21 +8103,13 @@ level-transcoder@^1.0.1:
buffer "^6.0.3"
module-error "^1.0.1"
-level-ws@0.0.0:
- version "0.0.0"
- resolved "https://registry.yarnpkg.com/level-ws/-/level-ws-0.0.0.tgz#372e512177924a00424b0b43aef2bb42496d228b"
- integrity sha512-XUTaO/+Db51Uiyp/t7fCMGVFOTdtLS/NIACxE/GHsij15mKzxksZifKVjlXDF41JMUP/oM1Oc4YNGdKnc3dVLw==
- dependencies:
- readable-stream "~1.0.15"
- xtend "~2.1.1"
-
-level-ws@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/level-ws/-/level-ws-1.0.0.tgz#19a22d2d4ac57b18cc7c6ecc4bd23d899d8f603b"
- integrity sha512-RXEfCmkd6WWFlArh3X8ONvQPm8jNpfA0s/36M4QzLqrLEIt1iJE9WBHLZ5vZJK6haMjJPJGJCQWfjMNnRcq/9Q==
+level-ws@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/level-ws/-/level-ws-2.0.0.tgz#207a07bcd0164a0ec5d62c304b4615c54436d339"
+ integrity sha512-1iv7VXx0G9ec1isqQZ7y5LmoZo/ewAsyDHNA8EFDW5hqH2Kqovm33nSFkSdnLLAK+I5FlT+lo5Cw9itGe+CpQA==
dependencies:
inherits "^2.0.3"
- readable-stream "^2.2.8"
+ readable-stream "^3.1.0"
xtend "^4.0.1"
level@^8.0.0:
@@ -10064,27 +8120,24 @@ level@^8.0.0:
browser-level "^1.0.1"
classic-level "^1.2.0"
-levelup@3.1.1, levelup@^3.0.0:
- version "3.1.1"
- resolved "https://registry.yarnpkg.com/levelup/-/levelup-3.1.1.tgz#c2c0b3be2b4dc316647c53b42e2f559e232d2189"
- integrity sha512-9N10xRkUU4dShSRRFTBdNaBxofz+PGaIZO962ckboJZiNmLuhVT6FZ6ZKAsICKfUBO76ySaYU6fJWX/jnj3Lcg==
+leveldown@6.1.0:
+ version "6.1.0"
+ resolved "https://registry.yarnpkg.com/leveldown/-/leveldown-6.1.0.tgz#7ab1297706f70c657d1a72b31b40323aa612b9ee"
+ integrity sha512-8C7oJDT44JXxh04aSSsfcMI8YiaGRhOFI9/pMEL7nWJLVsWajDPTRxsSHTM2WcTVY5nXM+SuRHzPPi0GbnDX+w==
dependencies:
- deferred-leveldown "~4.0.0"
- level-errors "~2.0.0"
- level-iterator-stream "~3.0.0"
- xtend "~4.0.0"
+ abstract-leveldown "^7.2.0"
+ napi-macros "~2.0.0"
+ node-gyp-build "^4.3.0"
-levelup@^1.2.1:
- version "1.3.9"
- resolved "https://registry.yarnpkg.com/levelup/-/levelup-1.3.9.tgz#2dbcae845b2bb2b6bea84df334c475533bbd82ab"
- integrity sha512-VVGHfKIlmw8w1XqpGOAGwq6sZm2WwWLmlDcULkKWQXEA5EopA8OBNJ2Ck2v6bdk8HeEZSbCSEgzXadyQFm76sQ==
+levelup@^4.3.2:
+ version "4.4.0"
+ resolved "https://registry.yarnpkg.com/levelup/-/levelup-4.4.0.tgz#f89da3a228c38deb49c48f88a70fb71f01cafed6"
+ integrity sha512-94++VFO3qN95cM/d6eBXvd894oJE0w3cInq9USsyQzzoJxmiYzPAocNcuGCPGGjoXqDVJcr3C1jzt1TSjyaiLQ==
dependencies:
- deferred-leveldown "~1.2.1"
- level-codec "~7.0.0"
- level-errors "~1.0.3"
- level-iterator-stream "~1.3.0"
- prr "~1.0.1"
- semver "~5.4.1"
+ deferred-leveldown "~5.3.0"
+ level-errors "~2.0.0"
+ level-iterator-stream "~4.0.0"
+ level-supports "~1.0.0"
xtend "~4.0.0"
leven@^3.1.0:
@@ -10127,17 +8180,6 @@ linkify-it@^4.0.1:
dependencies:
uc.micro "^1.0.1"
-load-json-file@^1.0.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-1.1.0.tgz#956905708d58b4bab4c2261b04f59f31c99374c0"
- integrity sha512-cy7ZdNRXdablkXYNI049pthVeXFurRyb9+hA/dZzerZ0pGTx42z+y+ssxBaVV2l70t1muq5IdKhn4UtcoGUY9A==
- dependencies:
- graceful-fs "^4.1.2"
- parse-json "^2.2.0"
- pify "^2.0.0"
- pinkie-promise "^2.0.0"
- strip-bom "^2.0.0"
-
load-json-file@^4.0.0:
version "4.0.0"
resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-4.0.0.tgz#2f5f45ab91e33216234fd53adab668eb4ec0993b"
@@ -10170,10 +8212,10 @@ locate-path@^6.0.0:
dependencies:
p-locate "^5.0.0"
-lodash.assign@^4.0.3, lodash.assign@^4.0.6:
- version "4.2.0"
- resolved "https://registry.yarnpkg.com/lodash.assign/-/lodash.assign-4.2.0.tgz#0d99f3ccd7a6d261d19bdaeb9245005d285808e7"
- integrity sha512-hFuH8TY+Yji7Eja3mGiuAxBqLagejScbG8GbG0j6o9vzn0YL14My+ktnqtZgFTosKymC9/44wP6s7xyuLfnClw==
+lodash.camelcase@^4.3.0:
+ version "4.3.0"
+ resolved "https://registry.yarnpkg.com/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz#b28aa6288a2b9fc651035c7711f65ab6190331a6"
+ integrity sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==
lodash.clonedeep@^4.5.0:
version "4.5.0"
@@ -10245,12 +8287,7 @@ lodash.truncate@^4.4.2:
resolved "https://registry.yarnpkg.com/lodash.truncate/-/lodash.truncate-4.4.2.tgz#5a350da0b1113b837ecfffd5812cbe58d6eae193"
integrity sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw==
-lodash@4.17.20:
- version "4.17.20"
- resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.20.tgz#b44a9b6297bcb698f1c51a3545a2b3b368d59c52"
- integrity sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA==
-
-lodash@^4.17.11, lodash@^4.17.12, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.21, lodash@^4.17.4:
+lodash@^4.17.11, lodash@^4.17.12, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.21:
version "4.17.21"
resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c"
integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==
@@ -10268,23 +8305,6 @@ long@^5.0.0:
resolved "https://registry.yarnpkg.com/long/-/long-5.2.3.tgz#a3ba97f3877cf1d778eccbcb048525ebb77499e1"
integrity sha512-lcHwpNoggQTObv5apGNCTdJrO69eHOZMi4BNC+rTLER8iHAqGrUVeLh/irVIM7zTw2bOXA8T6uNPeujwOLg/2Q==
-looper@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/looper/-/looper-2.0.0.tgz#66cd0c774af3d4fedac53794f742db56da8f09ec"
- integrity sha512-6DzMHJcjbQX/UPHc1rRCBfKlLwDkvuGZ715cIR36wSdYqWXFT35uLXq5P/2orl3tz+t+VOVPxw4yPinQlUDGDQ==
-
-looper@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/looper/-/looper-3.0.0.tgz#2efa54c3b1cbaba9b94aee2e5914b0be57fbb749"
- integrity sha512-LJ9wplN/uSn72oJRsXTx+snxPet5c8XiZmOKCm906NVYu+ag6SB6vUcnJcWxgnl2NfbIyeobAn7Bwv6xRj2XJg==
-
-loose-envify@^1.0.0:
- version "1.4.0"
- resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf"
- integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==
- dependencies:
- js-tokens "^3.0.0 || ^4.0.0"
-
loupe@^2.3.6:
version "2.3.7"
resolved "https://registry.yarnpkg.com/loupe/-/loupe-2.3.7.tgz#6e69b7d4db7d3ab436328013d37d1c8c3540c697"
@@ -10292,30 +8312,13 @@ loupe@^2.3.6:
dependencies:
get-func-name "^2.0.1"
-lowercase-keys@^1.0.0, lowercase-keys@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-1.0.1.tgz#6f9e30b47084d971a7c820ff15a6c5167b74c26f"
- integrity sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==
-
-lowercase-keys@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-2.0.0.tgz#2603e78b7b4b0006cbca2fbcc8a3202558ac9479"
- integrity sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==
-
-lru-cache@5.1.1, lru-cache@^5.1.1:
+lru-cache@^5.1.1:
version "5.1.1"
resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920"
integrity sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==
dependencies:
yallist "^3.0.2"
-lru-cache@^3.2.0:
- version "3.2.0"
- resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-3.2.0.tgz#71789b3b7f5399bec8565dda38aa30d2a097efee"
- integrity sha512-91gyOKTc2k66UG6kHiH4h3S2eltcPwE1STVfMYC/NG+nZwf8IIuiamfmpGZjpbbxzSyEJaLC0tNSmhjlQUTJow==
- dependencies:
- pseudomap "^1.0.1"
-
lru-cache@^6.0.0:
version "6.0.0"
resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94"
@@ -10323,21 +8326,21 @@ lru-cache@^6.0.0:
dependencies:
yallist "^4.0.0"
+"lru-cache@^9.1.1 || ^10.0.0":
+ version "10.1.0"
+ resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-10.1.0.tgz#2098d41c2dc56500e6c88584aa656c84de7d0484"
+ integrity sha512-/1clY/ui8CzjKFyjdvwPWJUYKiFVXG2I2cY0ssG7h4+hwk+XOIX7ZSG9Q7TW8TW3Kp3BUSqgFWBLgL4PJ+Blag==
+
lru_map@^0.3.3:
version "0.3.3"
resolved "https://registry.yarnpkg.com/lru_map/-/lru_map-0.3.3.tgz#b5c8351b9464cbd750335a79650a0ec0e56118dd"
integrity sha512-Pn9cox5CsMYngeDbmChANltQl+5pi6XmTrraMSzhPmMBbmgcxmqWry0U3PGapCU1yB4/LqCcom7qhHZiF/jGfQ==
-ltgt@^2.1.2, ltgt@~2.2.0:
+ltgt@~2.2.0:
version "2.2.1"
resolved "https://registry.yarnpkg.com/ltgt/-/ltgt-2.2.1.tgz#f35ca91c493f7b73da0e07495304f17b31f87ee5"
integrity sha512-AI2r85+4MquTw9ZYqabu4nMwy9Oftlfa/e/52t9IjtfG+mGBbTNdAoZ3RQKLHR6r0wQnwZnPIEh/Ya6XTWAKNA==
-ltgt@~2.1.1:
- version "2.1.3"
- resolved "https://registry.yarnpkg.com/ltgt/-/ltgt-2.1.3.tgz#10851a06d9964b971178441c23c9e52698eece34"
- integrity sha512-5VjHC5GsENtIi5rbJd+feEpDKhfr7j0odoUR2Uh978g+2p93nd5o34cTjQWohXsPsCZeqoDnIqEf88mPCe0Pfw==
-
make-dir@^4.0.0:
version "4.0.0"
resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-4.0.0.tgz#c3c2307a771277cd9638305f915c29ae741b614e"
@@ -10357,18 +8360,6 @@ makeerror@1.0.12:
dependencies:
tmpl "1.0.5"
-map-cache@^0.2.2:
- version "0.2.2"
- resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf"
- integrity sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg==
-
-map-visit@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/map-visit/-/map-visit-1.0.0.tgz#ecdca8f13144e660f1b5bd41f12f3479d98dfb8f"
- integrity sha512-4y7uGv8bd2WdM9vpQsiQNo41Ln1NvhvDRuVt0k2JZQ+ezN2uaQes7lZeZ+QQUHOLQAtDaBJ+7wCbi+ab/KFs+w==
- dependencies:
- object-visit "^1.0.0"
-
markdown-it@11.0.0:
version "11.0.0"
resolved "https://registry.yarnpkg.com/markdown-it/-/markdown-it-11.0.0.tgz#dbfc30363e43d756ebc52c38586b91b90046b876"
@@ -10469,34 +8460,17 @@ mdurl@^1.0.1:
resolved "https://registry.yarnpkg.com/mdurl/-/mdurl-1.0.1.tgz#fe85b2ec75a59037f2adfec100fd6c601761152e"
integrity sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g==
-media-typer@0.3.0:
- version "0.3.0"
- resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748"
- integrity sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==
-
-memdown@^1.0.0:
- version "1.4.1"
- resolved "https://registry.yarnpkg.com/memdown/-/memdown-1.4.1.tgz#b4e4e192174664ffbae41361aa500f3119efe215"
- integrity sha512-iVrGHZB8i4OQfM155xx8akvG9FIj+ht14DX5CQkCTG4EHzZ3d3sgckIf/Lm9ivZalEsFuEVnWv2B2WZvbrro2w==
- dependencies:
- abstract-leveldown "~2.7.1"
- functional-red-black-tree "^1.0.1"
- immediate "^3.2.3"
- inherits "~2.0.1"
- ltgt "~2.2.0"
- safe-buffer "~5.1.1"
-
-memdown@~3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/memdown/-/memdown-3.0.0.tgz#93aca055d743b20efc37492e9e399784f2958309"
- integrity sha512-tbV02LfZMWLcHcq4tw++NuqMO+FZX8tNJEiD2aNRm48ZZusVg5N8NART+dmBkepJVye986oixErf7jfXboMGMA==
+memdown@^5.0.0:
+ version "5.1.0"
+ resolved "https://registry.yarnpkg.com/memdown/-/memdown-5.1.0.tgz#608e91a9f10f37f5b5fe767667a8674129a833cb"
+ integrity sha512-B3J+UizMRAlEArDjWHTMmadet+UKwHd3UjMgGBkZcKAxAYVPS9o0Yeiha4qvz7iGiL2Sb3igUft6p7nbFWctpw==
dependencies:
- abstract-leveldown "~5.0.0"
+ abstract-leveldown "~6.2.1"
functional-red-black-tree "~1.0.1"
immediate "~3.2.3"
inherits "~2.0.1"
ltgt "~2.2.0"
- safe-buffer "~5.1.1"
+ safe-buffer "~5.2.0"
memory-level@^1.0.0:
version "1.0.0"
@@ -10512,11 +8486,6 @@ memorystream@^0.3.1:
resolved "https://registry.yarnpkg.com/memorystream/-/memorystream-0.3.1.tgz#86d7090b30ce455d63fbae12dda51a47ddcaf9b2"
integrity sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==
-merge-descriptors@1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61"
- integrity sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==
-
merge-stream@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60"
@@ -10527,74 +8496,35 @@ merge2@^1.2.3, merge2@^1.3.0, merge2@^1.4.1:
resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae"
integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==
-merkle-patricia-tree@3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/merkle-patricia-tree/-/merkle-patricia-tree-3.0.0.tgz#448d85415565df72febc33ca362b8b614f5a58f8"
- integrity sha512-soRaMuNf/ILmw3KWbybaCjhx86EYeBbD8ph0edQCTed0JN/rxDt1EBN52Ajre3VyGo+91f8+/rfPIRQnnGMqmQ==
- dependencies:
- async "^2.6.1"
- ethereumjs-util "^5.2.0"
- level-mem "^3.0.1"
- level-ws "^1.0.0"
- readable-stream "^3.0.6"
- rlp "^2.0.0"
- semaphore ">=1.0.1"
-
-merkle-patricia-tree@^2.1.2, merkle-patricia-tree@^2.3.2:
- version "2.3.2"
- resolved "https://registry.yarnpkg.com/merkle-patricia-tree/-/merkle-patricia-tree-2.3.2.tgz#982ca1b5a0fde00eed2f6aeed1f9152860b8208a"
- integrity sha512-81PW5m8oz/pz3GvsAwbauj7Y00rqm81Tzad77tHBwU7pIAtN+TJnMSOJhxBKflSVYhptMMb9RskhqHqrSm1V+g==
- dependencies:
- async "^1.4.2"
- ethereumjs-util "^5.0.0"
- level-ws "0.0.0"
- levelup "^1.2.1"
- memdown "^1.0.0"
- readable-stream "^2.0.0"
- rlp "^2.0.0"
- semaphore ">=1.0.1"
-
-merkletreejs@^0.2.32:
- version "0.2.32"
- resolved "https://registry.yarnpkg.com/merkletreejs/-/merkletreejs-0.2.32.tgz#cf1c0760e2904e4a1cc269108d6009459fd06223"
- integrity sha512-TostQBiwYRIwSE5++jGmacu3ODcKAgqb0Y/pnIohXS7sWxh1gCkSptbmF1a43faehRDpcHf7J/kv0Ml2D/zblQ==
+merkle-patricia-tree@^4.2.2, merkle-patricia-tree@^4.2.4:
+ version "4.2.4"
+ resolved "https://registry.yarnpkg.com/merkle-patricia-tree/-/merkle-patricia-tree-4.2.4.tgz#ff988d045e2bf3dfa2239f7fabe2d59618d57413"
+ integrity sha512-eHbf/BG6eGNsqqfbLED9rIqbsF4+sykEaBn6OLNs71tjclbMcMOk1tEPmJKcNcNCLkvbpY/lwyOlizWsqPNo8w==
+ dependencies:
+ "@types/levelup" "^4.3.0"
+ ethereumjs-util "^7.1.4"
+ level-mem "^5.0.1"
+ level-ws "^2.0.0"
+ readable-stream "^3.6.0"
+ semaphore-async-await "^1.5.1"
+
+merkletreejs@^0.3.11:
+ version "0.3.11"
+ resolved "https://registry.yarnpkg.com/merkletreejs/-/merkletreejs-0.3.11.tgz#e0de05c3ca1fd368de05a12cb8efb954ef6fc04f"
+ integrity sha512-LJKTl4iVNTndhL+3Uz/tfkjD0klIWsHlUzgtuNnNrsf7bAlXR30m+xYB7lHr5Z/l6e/yAIsr26Dabx6Buo4VGQ==
dependencies:
bignumber.js "^9.0.1"
buffer-reverse "^1.0.1"
- crypto-js "^3.1.9-1"
+ crypto-js "^4.2.0"
treeify "^1.1.0"
web3-utils "^1.3.4"
-methods@~1.1.2:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee"
- integrity sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==
-
micro-ftch@^0.3.1:
version "0.3.1"
resolved "https://registry.yarnpkg.com/micro-ftch/-/micro-ftch-0.3.1.tgz#6cb83388de4c1f279a034fb0cf96dfc050853c5f"
integrity sha512-/0LLxhzP0tfiR5hcQebtudP56gUurs2CLkGarnCiB/OqEyUFQ6U3paQi/tgLv0hBJYt2rnr9MNpxz4fiiugstg==
-micromatch@^3.1.4:
- version "3.1.10"
- resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23"
- integrity sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==
- dependencies:
- arr-diff "^4.0.0"
- array-unique "^0.3.2"
- braces "^2.3.1"
- define-property "^2.0.2"
- extend-shallow "^3.0.2"
- extglob "^2.0.4"
- fragment-cache "^0.2.1"
- kind-of "^6.0.2"
- nanomatch "^1.2.9"
- object.pick "^1.3.0"
- regex-not "^1.0.0"
- snapdragon "^0.8.1"
- to-regex "^3.0.2"
-
-micromatch@^4.0.2, micromatch@^4.0.4, micromatch@^4.0.5:
+micromatch@^4.0.4, micromatch@^4.0.5:
version "4.0.5"
resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.5.tgz#bc8999a7cbbf77cdc89f132f6e467051b49090c6"
integrity sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==
@@ -10615,18 +8545,13 @@ mime-db@1.52.0:
resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70"
integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==
-mime-types@^2.1.12, mime-types@^2.1.16, mime-types@~2.1.19, mime-types@~2.1.24, mime-types@~2.1.34:
+mime-types@^2.1.12, mime-types@~2.1.19:
version "2.1.35"
resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a"
integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==
dependencies:
mime-db "1.52.0"
-mime@1.6.0:
- version "1.6.0"
- resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1"
- integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==
-
mimic-fn@^1.0.0:
version "1.2.0"
resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.2.0.tgz#820c86a39334640e99516928bd03fca88057d022"
@@ -10642,23 +8567,6 @@ mimic-fn@^4.0.0:
resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-4.0.0.tgz#60a90550d5cb0b239cca65d893b1a53b29871ecc"
integrity sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==
-mimic-response@^1.0.0, mimic-response@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-1.0.1.tgz#4923538878eef42063cb8a3e3b0798781487ab1b"
- integrity sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==
-
-mimic-response@^3.1.0:
- version "3.1.0"
- resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-3.1.0.tgz#2d1d59af9c1b129815accc2c46a022a5ce1fa3c9"
- integrity sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==
-
-min-document@^2.19.0:
- version "2.19.0"
- resolved "https://registry.yarnpkg.com/min-document/-/min-document-2.19.0.tgz#7bd282e3f5842ed295bb748cdd9f1ffa2c824685"
- integrity sha512-9Wy1B3m3f66bPPmU5hdA4DR4PB2OfDU/+GS3yAB7IQozE3tqXaVv2zOjgla7MEGSRv95+ILmOuvhLkOK6wJtCQ==
- dependencies:
- dom-walk "^0.1.0"
-
minimalistic-assert@^1.0.0, minimalistic-assert@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7"
@@ -10704,6 +8612,13 @@ minimatch@^7.4.3:
dependencies:
brace-expansion "^2.0.1"
+minimatch@^9.0.1:
+ version "9.0.3"
+ resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.3.tgz#a6e00c3de44c3a542bfaae70abfc22420a6da825"
+ integrity sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==
+ dependencies:
+ brace-expansion "^2.0.1"
+
minimatch@~3.0.4:
version "3.0.8"
resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.8.tgz#5e6a59bd11e2ab0de1cfb843eb2d82e546c321c1"
@@ -10711,52 +8626,22 @@ minimatch@~3.0.4:
dependencies:
brace-expansion "^1.1.7"
-minimist@^1.2.0, minimist@^1.2.5, minimist@^1.2.6, minimist@^1.2.8, minimist@~1.2.5, minimist@~1.2.8:
+minimist@^1.2.0, minimist@^1.2.5, minimist@^1.2.6, minimist@^1.2.8, minimist@~1.2.5:
version "1.2.8"
resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c"
integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==
-minipass@^2.6.0, minipass@^2.9.0:
- version "2.9.0"
- resolved "https://registry.yarnpkg.com/minipass/-/minipass-2.9.0.tgz#e713762e7d3e32fed803115cf93e04bca9fcc9a6"
- integrity sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg==
- dependencies:
- safe-buffer "^5.1.2"
- yallist "^3.0.0"
-
-minizlib@^1.3.3:
- version "1.3.3"
- resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-1.3.3.tgz#2290de96818a34c29551c8a8d301216bd65a861d"
- integrity sha512-6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q==
- dependencies:
- minipass "^2.9.0"
-
-mixin-deep@^1.2.0:
- version "1.3.2"
- resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.2.tgz#1120b43dc359a785dce65b55b82e257ccf479566"
- integrity sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==
- dependencies:
- for-in "^1.0.2"
- is-extendable "^1.0.1"
+"minipass@^5.0.0 || ^6.0.2 || ^7.0.0":
+ version "7.0.4"
+ resolved "https://registry.yarnpkg.com/minipass/-/minipass-7.0.4.tgz#dbce03740f50a4786ba994c1fb908844d27b038c"
+ integrity sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==
mkdirp-classic@^0.5.2:
version "0.5.3"
resolved "https://registry.yarnpkg.com/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz#fa10c9115cc6d8865be221ba47ee9bed78601113"
integrity sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==
-mkdirp-promise@^5.0.1:
- version "5.0.1"
- resolved "https://registry.yarnpkg.com/mkdirp-promise/-/mkdirp-promise-5.0.1.tgz#e9b8f68e552c68a9c1713b84883f7a1dd039b8a1"
- integrity sha512-Hepn5kb1lJPtVW84RFT40YG1OddBNTOVUZR2bzQUHc+Z03en8/3uX0+060JDhcEzyO08HmipsN9DcnFMxhIL9w==
- dependencies:
- mkdirp "*"
-
-mkdirp@*:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-3.0.1.tgz#e44e4c5607fb279c168241713cc6e0fea9adcb50"
- integrity sha512-+NsyUUAZDmo6YVHzL/stxSu3t9YS1iljliy3BSDrXJ/dkn1KYdmtZODGGjLcc9XLgVVpH4KshHB8XmZgMhaBXg==
-
-mkdirp@0.5.x, mkdirp@^0.5.1, mkdirp@^0.5.5:
+mkdirp@0.5.x, mkdirp@^0.5.1:
version "0.5.6"
resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.6.tgz#7def03d2432dcae4ba1d611445c48396062255f6"
integrity sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==
@@ -10842,23 +8727,6 @@ mocha@^9.0.2:
yargs-parser "20.2.4"
yargs-unparser "2.0.0"
-mock-fs@^4.1.0:
- version "4.14.0"
- resolved "https://registry.yarnpkg.com/mock-fs/-/mock-fs-4.14.0.tgz#ce5124d2c601421255985e6e94da80a7357b1b18"
- integrity sha512-qYvlv/exQ4+svI3UOvPUpLDF0OMX5euvUH0Ny4N5QyRyhNdgAgUrVH3iUINSzEPLvx0kbo/Bp28GJKIqvE7URw==
-
-mock-property@~1.0.0:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/mock-property/-/mock-property-1.0.3.tgz#3e37c50a56609d548cabd56559fde3dd8767b10c"
- integrity sha512-2emPTb1reeLLYwHxyVx993iYyCHEiRRO+y8NFXFPL5kl5q14sgTK76cXyEKkeKCHeRw35SfdkUJ10Q1KfHuiIQ==
- dependencies:
- define-data-property "^1.1.1"
- functions-have-names "^1.2.3"
- gopd "^1.0.1"
- has-property-descriptors "^1.0.0"
- hasown "^2.0.0"
- isarray "^2.0.5"
-
module-error@^1.0.1, module-error@^1.0.2:
version "1.0.2"
resolved "https://registry.yarnpkg.com/module-error/-/module-error-1.0.2.tgz#8d1a48897ca883f47a45816d4fb3e3c6ba404d86"
@@ -10884,46 +8752,6 @@ ms@2.1.3, ms@^2.1.1:
resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2"
integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==
-multibase@^0.7.0:
- version "0.7.0"
- resolved "https://registry.yarnpkg.com/multibase/-/multibase-0.7.0.tgz#1adfc1c50abe05eefeb5091ac0c2728d6b84581b"
- integrity sha512-TW8q03O0f6PNFTQDvh3xxH03c8CjGaaYrjkl9UQPG6rz53TQzzxJVCIWVjzcbN/Q5Y53Zd0IBQBMVktVgNx4Fg==
- dependencies:
- base-x "^3.0.8"
- buffer "^5.5.0"
-
-multibase@~0.6.0:
- version "0.6.1"
- resolved "https://registry.yarnpkg.com/multibase/-/multibase-0.6.1.tgz#b76df6298536cc17b9f6a6db53ec88f85f8cc12b"
- integrity sha512-pFfAwyTjbbQgNc3G7D48JkJxWtoJoBMaR4xQUOuB8RnCgRqaYmWNFeJTTvrJ2w51bjLq2zTby6Rqj9TQ9elSUw==
- dependencies:
- base-x "^3.0.8"
- buffer "^5.5.0"
-
-multicodec@^0.5.5:
- version "0.5.7"
- resolved "https://registry.yarnpkg.com/multicodec/-/multicodec-0.5.7.tgz#1fb3f9dd866a10a55d226e194abba2dcc1ee9ffd"
- integrity sha512-PscoRxm3f+88fAtELwUnZxGDkduE2HD9Q6GHUOywQLjOGT/HAdhjLDYNZ1e7VR0s0TP0EwZ16LNUTFpoBGivOA==
- dependencies:
- varint "^5.0.0"
-
-multicodec@^1.0.0:
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/multicodec/-/multicodec-1.0.4.tgz#46ac064657c40380c28367c90304d8ed175a714f"
- integrity sha512-NDd7FeS3QamVtbgfvu5h7fd1IlbaC4EQ0/pgU4zqE2vdHCmBGsUa0TiM8/TdSeG6BMPC92OOCf8F1ocE/Wkrrg==
- dependencies:
- buffer "^5.6.0"
- varint "^5.0.0"
-
-multihashes@^0.4.15, multihashes@~0.4.15:
- version "0.4.21"
- resolved "https://registry.yarnpkg.com/multihashes/-/multihashes-0.4.21.tgz#dc02d525579f334a7909ade8a122dabb58ccfcb5"
- integrity sha512-uVSvmeCWf36pU2nB4/1kzYZjsXD9vofZKpgudqkceYY5g2aZZXJ5r9lxuzoRLl1OAp28XljXsEJ/X/85ZsKmKw==
- dependencies:
- buffer "^5.5.0"
- multibase "^0.7.0"
- varint "^5.0.0"
-
mute-stream@0.0.7:
version "0.0.7"
resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab"
@@ -10943,11 +8771,6 @@ nan@^2.17.0:
resolved "https://registry.yarnpkg.com/nan/-/nan-2.18.0.tgz#26a6faae7ffbeb293a39660e88a76b82e30b7554"
integrity sha512-W7tfG7vMOGtD30sHoZSSc/JVYiyDPEyQVso/Zz+/uQd0B0L46gtC+pHha5FFMRpil6fm/AoEcRWyOVi4+E/f8w==
-nano-json-stream-parser@^0.1.2:
- version "0.1.2"
- resolved "https://registry.yarnpkg.com/nano-json-stream-parser/-/nano-json-stream-parser-0.1.2.tgz#0cc8f6d0e2b622b479c40d499c46d64b755c6f5f"
- integrity sha512-9MqxMH/BSJC7dnLsEMPyfN5Dvoo49IsPFYMcHw3Bcfc2kN0lpHRBSzlMSVx4HGyJ7s9B31CyBTVehWJoQ8Ctew==
-
nanoid@3.3.1:
version "3.3.1"
resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.1.tgz#6347a18cac88af88f58af0b3594b723d5e99bb35"
@@ -10958,28 +8781,16 @@ nanoid@3.3.3:
resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.3.tgz#fd8e8b7aa761fe807dba2d1b98fb7241bb724a25"
integrity sha512-p1sjXuopFs0xg+fPASzQ28agW1oHD7xDsd9Xkf3T15H3c/cifrFHVwrh74PdoklAPi+i7MdRsE47vm2r6JoB+w==
-nanomatch@^1.2.9:
- version "1.2.13"
- resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.13.tgz#b87a8aa4fc0de8fe6be88895b38983ff265bd119"
- integrity sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==
- dependencies:
- arr-diff "^4.0.0"
- array-unique "^0.3.2"
- define-property "^2.0.2"
- extend-shallow "^3.0.2"
- fragment-cache "^0.2.1"
- is-windows "^1.0.2"
- kind-of "^6.0.2"
- object.pick "^1.3.0"
- regex-not "^1.0.0"
- snapdragon "^0.8.1"
- to-regex "^3.0.1"
-
napi-macros@^2.2.2:
version "2.2.2"
resolved "https://registry.yarnpkg.com/napi-macros/-/napi-macros-2.2.2.tgz#817fef20c3e0e40a963fbf7b37d1600bd0201044"
integrity sha512-hmEVtAGYzVQpCKdbQea4skABsdXW4RUh5t5mJ2zzqowJS2OyXZTU1KhDVFhx+NlWZ4ap9mqR9TcDO3LTTttd+g==
+napi-macros@~2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/napi-macros/-/napi-macros-2.0.0.tgz#2b6bae421e7b96eb687aa6c77a7858640670001b"
+ integrity sha512-A0xLykHtARfueITVDernsAWdtIMbOJgKgcluwENp3AlsKN/PloyO10HtmoqnFAQAcxPkgZN7wdfPfEd0zNGxbg==
+
natural-compare@^1.4.0:
version "1.4.0"
resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7"
@@ -10995,21 +8806,11 @@ nearley@^2.20.1:
railroad-diagrams "^1.0.0"
randexp "0.4.6"
-negotiator@0.6.3:
- version "0.6.3"
- resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.3.tgz#58e323a72fedc0d6f9cd4d31fe49f51479590ccd"
- integrity sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==
-
neo-async@^2.6.2:
version "2.6.2"
resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f"
integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==
-next-tick@^1.1.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/next-tick/-/next-tick-1.1.0.tgz#1836ee30ad56d67ef281b22bd199f709449b35eb"
- integrity sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==
-
nice-try@^1.0.4:
version "1.0.5"
resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366"
@@ -11034,13 +8835,15 @@ node-fetch@^2.6.0, node-fetch@^2.6.1, node-fetch@^2.6.7:
dependencies:
whatwg-url "^5.0.0"
-node-fetch@~1.7.1:
- version "1.7.3"
- resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-1.7.3.tgz#980f6f72d85211a5347c6b2bc18c5b84c3eb47ef"
- integrity sha512-NhZ4CsKx7cYm2vSrBAr2PvFOe6sWDf0UYLRqA6svUYg7+/TSfVAu49jYC4BvQ4Sms9SZgdqGBgroqfDhJdTyKQ==
- dependencies:
- encoding "^0.1.11"
- is-stream "^1.0.1"
+node-gyp-build@4.3.0:
+ version "4.3.0"
+ resolved "https://registry.yarnpkg.com/node-gyp-build/-/node-gyp-build-4.3.0.tgz#9f256b03e5826150be39c764bf51e993946d71a3"
+ integrity sha512-iWjXZvmboq0ja1pUGULQBexmxq8CV4xBhX7VDOTbL7ZR4FOowwY/VOtRxBN/yKxmdGoIp4j5ysNT4u3S2pDQ3Q==
+
+node-gyp-build@4.4.0:
+ version "4.4.0"
+ resolved "https://registry.yarnpkg.com/node-gyp-build/-/node-gyp-build-4.4.0.tgz#42e99687ce87ddeaf3a10b99dc06abc11021f3f4"
+ integrity sha512-amJnQCcgtRVw9SvoebO3BKGESClrfXGCUTX9hSn1OuGQTQBOZmVd0Z0OlecpuRksKvbsUqALE8jls/ErClAPuQ==
node-gyp-build@^4.2.0, node-gyp-build@^4.3.0:
version "4.6.1"
@@ -11084,16 +8887,6 @@ normalize-path@^3.0.0, normalize-path@~3.0.0:
resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65"
integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==
-normalize-url@^4.1.0:
- version "4.5.1"
- resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-4.5.1.tgz#0dd90cf1288ee1d1313b87081c9a5932ee48518a"
- integrity sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==
-
-normalize-url@^6.0.1:
- version "6.1.0"
- resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-6.1.0.tgz#40d0885b535deffe3f3147bec877d05fe4c5668a"
- integrity sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==
-
npm-run-all@^4.1.5:
version "4.1.5"
resolved "https://registry.yarnpkg.com/npm-run-all/-/npm-run-all-4.1.5.tgz#04476202a15ee0e2e214080861bff12a51d98fba"
@@ -11123,11 +8916,6 @@ npm-run-path@^5.1.0:
dependencies:
path-key "^4.0.0"
-number-is-nan@^1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d"
- integrity sha512-4jbtZXNAsfZbAHiiqjLPBiCl16dES1zI4Hpzzxw61Tk+loF+sBDBKx1ICKKKwIqQ7M0mFn1TmkN7euSncWgHiQ==
-
number-to-bn@1.7.0:
version "1.7.0"
resolved "https://registry.yarnpkg.com/number-to-bn/-/number-to-bn-1.7.0.tgz#bb3623592f7e5f9e0030b1977bd41a0c53fe1ea0"
@@ -11141,55 +8929,21 @@ oauth-sign@~0.9.0:
resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.9.0.tgz#47a7b016baa68b5fa0ecf3dee08a85c679ac6455"
integrity sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==
-object-assign@^4, object-assign@^4.0.0, object-assign@^4.0.1, object-assign@^4.1.0, object-assign@^4.1.1:
+object-assign@^4.0.1, object-assign@^4.1.0:
version "4.1.1"
resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863"
integrity sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==
-object-copy@^0.1.0:
- version "0.1.0"
- resolved "https://registry.yarnpkg.com/object-copy/-/object-copy-0.1.0.tgz#7e7d858b781bd7c991a41ba975ed3812754e998c"
- integrity sha512-79LYn6VAb63zgtmAteVOWo9Vdj71ZVBy3Pbse+VqxDpEP83XuujMrGqHIwAXJ5I/aM0zU7dIyIAhifVTPrNItQ==
- dependencies:
- copy-descriptor "^0.1.0"
- define-property "^0.2.5"
- kind-of "^3.0.3"
-
object-inspect@^1.13.1, object-inspect@^1.9.0:
version "1.13.1"
resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.13.1.tgz#b96c6109324ccfef6b12216a956ca4dc2ff94bc2"
integrity sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==
-object-inspect@~1.12.3:
- version "1.12.3"
- resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.12.3.tgz#ba62dffd67ee256c8c086dfae69e016cd1f198b9"
- integrity sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==
-
-object-is@^1.1.5:
- version "1.1.5"
- resolved "https://registry.yarnpkg.com/object-is/-/object-is-1.1.5.tgz#b9deeaa5fc7f1846a0faecdceec138e5778f53ac"
- integrity sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==
- dependencies:
- call-bind "^1.0.2"
- define-properties "^1.1.3"
-
object-keys@^1.1.1:
version "1.1.1"
resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e"
integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==
-object-keys@~0.4.0:
- version "0.4.0"
- resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-0.4.0.tgz#28a6aae7428dd2c3a92f3d95f21335dd204e0336"
- integrity sha512-ncrLw+X55z7bkl5PnUvHwFK9FcGuFYo9gtjws2XtSzL+aZ8tm830P60WJ0dSmFVaSalWieW5MD7kEdnXda9yJw==
-
-object-visit@^1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/object-visit/-/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb"
- integrity sha512-GBaMwwAVK9qbQN3Scdo0OyvgPW7l3lnaVMj84uTOZlswkX0KpF6fyDBJhtTthf7pymztoN36/KEr1DyhF96zEA==
- dependencies:
- isobject "^3.0.0"
-
object.assign@^4.1.4:
version "4.1.4"
resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.4.tgz#9673c7c7c351ab8c4d0b516f4343ebf4dfb7799f"
@@ -11209,17 +8963,6 @@ object.fromentries@^2.0.7:
define-properties "^1.2.0"
es-abstract "^1.22.1"
-object.getownpropertydescriptors@^2.1.6:
- version "2.1.7"
- resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.7.tgz#7a466a356cd7da4ba8b9e94ff6d35c3eeab5d56a"
- integrity sha512-PrJz0C2xJ58FNn11XV2lr4Jt5Gzl94qpy9Lu0JlfEj14z88sqbSBJCBEzdlNUCzY2gburhbrwOZ5BHCmuNUy0g==
- dependencies:
- array.prototype.reduce "^1.0.6"
- call-bind "^1.0.2"
- define-properties "^1.2.0"
- es-abstract "^1.22.1"
- safe-array-concat "^1.0.0"
-
object.groupby@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/object.groupby/-/object.groupby-1.0.1.tgz#d41d9f3c8d6c778d9cbac86b4ee9f5af103152ee"
@@ -11230,13 +8973,6 @@ object.groupby@^1.0.1:
es-abstract "^1.22.1"
get-intrinsic "^1.2.1"
-object.pick@^1.3.0:
- version "1.3.0"
- resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747"
- integrity sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ==
- dependencies:
- isobject "^3.0.1"
-
object.values@^1.1.7:
version "1.1.7"
resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.1.7.tgz#617ed13272e7e1071b43973aa1655d9291b8442a"
@@ -11251,25 +8987,11 @@ obliterator@^2.0.0:
resolved "https://registry.yarnpkg.com/obliterator/-/obliterator-2.0.4.tgz#fa650e019b2d075d745e44f1effeb13a2adbe816"
integrity sha512-lgHwxlxV1qIg1Eap7LgIeoBWIMFibOjbrYPIPJZcI1mmGAI2m3lNYpK12Y+GBdPQ0U1hRwSord7GIaawz962qQ==
-oboe@2.1.4:
- version "2.1.4"
- resolved "https://registry.yarnpkg.com/oboe/-/oboe-2.1.4.tgz#20c88cdb0c15371bb04119257d4fdd34b0aa49f6"
- integrity sha512-ymBJ4xSC6GBXLT9Y7lirj+xbqBLa+jADGJldGEYG7u8sZbS9GyG+u1Xk9c5cbriKwSpCg41qUhPjvU5xOpvIyQ==
- dependencies:
- http-https "^1.0.0"
-
obuf@~1.1.2:
version "1.1.2"
resolved "https://registry.yarnpkg.com/obuf/-/obuf-1.1.2.tgz#09bea3343d41859ebd446292d11c9d4db619084e"
integrity sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==
-on-finished@2.4.1:
- version "2.4.1"
- resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.4.1.tgz#58c8c44116e54845ad57f14ab10b03533184ac3f"
- integrity sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==
- dependencies:
- ee-first "1.1.1"
-
once@1.x, once@^1.3.0, once@^1.3.1, once@^1.4.0:
version "1.4.0"
resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1"
@@ -11298,14 +9020,6 @@ onetime@^6.0.0:
dependencies:
mimic-fn "^4.0.0"
-open@^7.4.2:
- version "7.4.2"
- resolved "https://registry.yarnpkg.com/open/-/open-7.4.2.tgz#b8147e26dcf3e426316c730089fd71edd29c2321"
- integrity sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q==
- dependencies:
- is-docker "^2.0.0"
- is-wsl "^2.1.1"
-
open@^9.1.0:
version "9.1.0"
resolved "https://registry.yarnpkg.com/open/-/open-9.1.0.tgz#684934359c90ad25742f5a26151970ff8c6c80b6"
@@ -11345,33 +9059,11 @@ ordinal@^1.0.3:
resolved "https://registry.yarnpkg.com/ordinal/-/ordinal-1.0.3.tgz#1a3c7726a61728112f50944ad7c35c06ae3a0d4d"
integrity sha512-cMddMgb2QElm8G7vdaa02jhUNbTSrhsgAGUz1OokD83uJTwSUn+nKoNoKVVaRa08yF6sgfO7Maou1+bgLd9rdQ==
-os-homedir@^1.0.0:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3"
- integrity sha512-B5JU3cabzk8c67mRRd3ECmROafjYMXbuzlwtqdM8IbS8ktlTix8aFGb2bAGKrSRIlnfKwovGUUr72JUPyOb6kQ==
-
-os-locale@^1.4.0:
- version "1.4.0"
- resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-1.4.0.tgz#20f9f17ae29ed345e8bde583b13d2009803c14d9"
- integrity sha512-PRT7ZORmwu2MEFt4/fv3Q+mEfN4zetKxufQrkShY2oGvUms9r8otu5HfdyIFHkYXjO7laNsoVGmM2MANfuTA8g==
- dependencies:
- lcid "^1.0.0"
-
-os-tmpdir@^1.0.1, os-tmpdir@~1.0.2:
+os-tmpdir@~1.0.2:
version "1.0.2"
resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274"
integrity sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==
-p-cancelable@^1.0.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/p-cancelable/-/p-cancelable-1.1.0.tgz#d078d15a3af409220c886f1d9a0ca2e441ab26cc"
- integrity sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==
-
-p-cancelable@^2.0.0:
- version "2.1.1"
- resolved "https://registry.yarnpkg.com/p-cancelable/-/p-cancelable-2.1.1.tgz#aab7fbd416582fa32a3db49859c122487c5ed2cf"
- integrity sha512-BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg==
-
p-limit@^1.1.0:
version "1.3.0"
resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.3.0.tgz#b86bd5f0c25690911c7590fcbfc2010d54b3ccb8"
@@ -11457,34 +9149,11 @@ parent-module@^2.0.0:
dependencies:
callsites "^3.1.0"
-parse-asn1@^5.0.0, parse-asn1@^5.1.6:
- version "5.1.6"
- resolved "https://registry.yarnpkg.com/parse-asn1/-/parse-asn1-5.1.6.tgz#385080a3ec13cb62a62d39409cb3e88844cdaed4"
- integrity sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==
- dependencies:
- asn1.js "^5.2.0"
- browserify-aes "^1.0.0"
- evp_bytestokey "^1.0.0"
- pbkdf2 "^3.0.3"
- safe-buffer "^5.1.1"
-
parse-cache-control@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/parse-cache-control/-/parse-cache-control-1.0.1.tgz#8eeab3e54fa56920fe16ba38f77fa21aacc2d74e"
integrity sha512-60zvsJReQPX5/QP0Kzfd/VrpjScIQ7SHBW6bFCYfEP+fp0Eppr1SHhIO5nd1PjZtvclzSzES9D/p5nFJurwfWg==
-parse-headers@^2.0.0:
- version "2.0.5"
- resolved "https://registry.yarnpkg.com/parse-headers/-/parse-headers-2.0.5.tgz#069793f9356a54008571eb7f9761153e6c770da9"
- integrity sha512-ft3iAoLOB/MlwbNXgzy43SWGP6sQki2jQvAyBg/zDFAgr9bfNWZIUj42Kw2eJIl8kEi4PbgE6U1Zau/HwI75HA==
-
-parse-json@^2.2.0:
- version "2.2.0"
- resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9"
- integrity sha512-QR/GGaKCkhwk1ePQNYDRKYZ3mwU9ypsKhB0XyFnLQdomyEqk3e8wpW3V5Jp88zbxK4n5ST1nqo+g9juTpownhQ==
- dependencies:
- error-ex "^1.2.0"
-
parse-json@^4.0.0:
version "4.0.0"
resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-4.0.0.tgz#be35f5425be1f7f6c747184f98a788cb99477ee0"
@@ -11503,66 +9172,11 @@ parse-json@^5.2.0:
json-parse-even-better-errors "^2.3.0"
lines-and-columns "^1.1.6"
-parseurl@~1.3.3:
- version "1.3.3"
- resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4"
- integrity sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==
-
-pascalcase@^0.1.1:
- version "0.1.1"
- resolved "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14"
- integrity sha512-XHXfu/yOQRy9vYOtUDVMN60OEJjW013GoObG1o+xwQTpB9eYJX/BjXMsdW13ZDPruFhYYn0AG22w0xgQMwl3Nw==
-
-patch-package@6.2.2:
- version "6.2.2"
- resolved "https://registry.yarnpkg.com/patch-package/-/patch-package-6.2.2.tgz#71d170d650c65c26556f0d0fbbb48d92b6cc5f39"
- integrity sha512-YqScVYkVcClUY0v8fF0kWOjDYopzIM8e3bj/RU1DPeEF14+dCGm6UeOYm4jvCyxqIEQ5/eJzmbWfDWnUleFNMg==
- dependencies:
- "@yarnpkg/lockfile" "^1.1.0"
- chalk "^2.4.2"
- cross-spawn "^6.0.5"
- find-yarn-workspace-root "^1.2.1"
- fs-extra "^7.0.1"
- is-ci "^2.0.0"
- klaw-sync "^6.0.0"
- minimist "^1.2.0"
- rimraf "^2.6.3"
- semver "^5.6.0"
- slash "^2.0.0"
- tmp "^0.0.33"
-
-patch-package@^6.2.2:
- version "6.5.1"
- resolved "https://registry.yarnpkg.com/patch-package/-/patch-package-6.5.1.tgz#3e5d00c16997e6160291fee06a521c42ac99b621"
- integrity sha512-I/4Zsalfhc6bphmJTlrLoOcAF87jcxko4q0qsv4bGcurbr8IskEOtdnt9iCmsQVGL1B+iUhSQqweyTLJfCF9rA==
- dependencies:
- "@yarnpkg/lockfile" "^1.1.0"
- chalk "^4.1.2"
- cross-spawn "^6.0.5"
- find-yarn-workspace-root "^2.0.0"
- fs-extra "^9.0.0"
- is-ci "^2.0.0"
- klaw-sync "^6.0.0"
- minimist "^1.2.6"
- open "^7.4.2"
- rimraf "^2.6.3"
- semver "^5.6.0"
- slash "^2.0.0"
- tmp "^0.0.33"
- yaml "^1.10.2"
-
path-browserify@^1.0.0, path-browserify@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/path-browserify/-/path-browserify-1.0.1.tgz#d98454a9c3753d5790860f16f68867b9e46be1fd"
integrity sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==
-path-exists@^2.0.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b"
- integrity sha512-yTltuKuhtNeFJKa1PiRzfLAU5182q1y4Eb4XCJ3PBqyzEDkAZRzBrKKBct682ls9reBVHf9udYLN5Nd+K1B9BQ==
- dependencies:
- pinkie-promise "^2.0.0"
-
path-exists@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515"
@@ -11573,7 +9187,7 @@ path-exists@^4.0.0:
resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3"
integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==
-path-is-absolute@^1.0.0, path-is-absolute@^1.0.1:
+path-is-absolute@^1.0.0:
version "1.0.1"
resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f"
integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==
@@ -11598,19 +9212,13 @@ path-parse@^1.0.6, path-parse@^1.0.7:
resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735"
integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==
-path-to-regexp@0.1.7:
- version "0.1.7"
- resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c"
- integrity sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==
-
-path-type@^1.0.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/path-type/-/path-type-1.1.0.tgz#59c44f7ee491da704da415da5a4070ba4f8fe441"
- integrity sha512-S4eENJz1pkiQn9Znv33Q+deTOKmbl+jj1Fl+qiP/vYezj+S8x+J3Uo0ISrx/QoEvIlOaDWJhPaRd1flJ9HXZqg==
+path-scurry@^1.10.1:
+ version "1.10.1"
+ resolved "https://registry.yarnpkg.com/path-scurry/-/path-scurry-1.10.1.tgz#9ba6bf5aa8500fe9fd67df4f0d9483b2b0bfc698"
+ integrity sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==
dependencies:
- graceful-fs "^4.1.2"
- pify "^2.0.0"
- pinkie-promise "^2.0.0"
+ lru-cache "^9.1.1 || ^10.0.0"
+ minipass "^5.0.0 || ^6.0.2 || ^7.0.0"
path-type@^3.0.0:
version "3.0.0"
@@ -11642,7 +9250,7 @@ pathval@^1.1.1:
resolved "https://registry.yarnpkg.com/pathval/-/pathval-1.1.1.tgz#8534e77a77ce7ac5a2512ea21e0fdb8fcf6c3d8d"
integrity sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==
-pbkdf2@^3.0.17, pbkdf2@^3.0.3, pbkdf2@^3.0.9:
+pbkdf2@^3.0.17, pbkdf2@^3.0.9:
version "3.1.2"
resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.1.2.tgz#dd822aa0887580e52f1a039dc3eda108efae3075"
integrity sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==
@@ -11749,11 +9357,6 @@ pidtree@^0.3.0:
resolved "https://registry.yarnpkg.com/pidtree/-/pidtree-0.3.1.tgz#ef09ac2cc0533df1f3250ccf2c4d366b0d12114a"
integrity sha512-qQbW94hLHEqCg7nhby4yRC7G2+jYHY4Rguc2bjw7Uug4GIJuu1tvf2uHaZv5Q8zdt+WKJ6qK1FOI6amaWUo5FA==
-pify@^2.0.0, pify@^2.3.0:
- version "2.3.0"
- resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c"
- integrity sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==
-
pify@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176"
@@ -11764,18 +9367,6 @@ pify@^4.0.1:
resolved "https://registry.yarnpkg.com/pify/-/pify-4.0.1.tgz#4b2cd25c50d598735c50292224fd8c6df41e3231"
integrity sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==
-pinkie-promise@^2.0.0:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa"
- integrity sha512-0Gni6D4UcLTbv9c57DfxDGdr41XfgUjqWZu492f0cIGr16zDU06BWP/RAEvOuo7CQ0CNjHaLlM59YJJFm3NWlw==
- dependencies:
- pinkie "^2.0.0"
-
-pinkie@^2.0.0:
- version "2.0.4"
- resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870"
- integrity sha512-MnUuEycAemtSaeFSjXKW/aroV7akBbY+Sv+RkyqFjgAe73F+MR0TBWKBRDkmfWq/HiFmdavfZ1G7h4SPZXaCSg==
-
pirates@^4.0.4:
version "4.0.6"
resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.6.tgz#3018ae32ecfcff6c29ba2267cbf21166ac1f36b9"
@@ -11793,11 +9384,6 @@ pluralize@^8.0.0:
resolved "https://registry.yarnpkg.com/pluralize/-/pluralize-8.0.0.tgz#1a6fa16a38d12a1901e0320fa017051c539ce3b1"
integrity sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==
-posix-character-classes@^0.1.0:
- version "0.1.1"
- resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab"
- integrity sha512-xTgYBc3fuo7Yt7JbiuFxSYGToMoz8fLoE6TC9Wx1P/u+LfeThMOAqmuyECnlBaaJb+u1m9hHiXUEtwW4OzfUJg==
-
postgres-array@~2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/postgres-array/-/postgres-array-2.0.0.tgz#48f8fce054fbc69671999329b8834b772652d82e"
@@ -11847,16 +9433,6 @@ postgres-range@^1.1.1:
resolved "https://registry.yarnpkg.com/postgres-range/-/postgres-range-1.1.3.tgz#9ccd7b01ca2789eb3c2e0888b3184225fa859f76"
integrity sha512-VdlZoocy5lCP0c/t66xAfclglEapXPCIVhqqJRncYpvbCgImF0w67aPKfbqUMr72tO2k5q0TdTZwCLjPTI6C9g==
-postinstall-postinstall@^2.1.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/postinstall-postinstall/-/postinstall-postinstall-2.1.0.tgz#4f7f77441ef539d1512c40bd04c71b06a4704ca3"
- integrity sha512-7hQX6ZlZXIoRiWNrbMQaLzUUfH+sSx39u8EJ9HYuDc1kLo9IXKWjM5RSquZN1ad5GnH8CGFM78fsAAQi3OKEEQ==
-
-precond@0.2:
- version "0.2.3"
- resolved "https://registry.yarnpkg.com/precond/-/precond-0.2.3.tgz#aa9591bcaa24923f1e0f4849d240f47efc1075ac"
- integrity sha512-QCYG84SgGyGzqJ/vlMsxeXd/pgL/I94ixdNFyh1PusWmTCyVfPJjZ1K1jvHtsbfnXQs2TSkEP2fR7QiMZAnKFQ==
-
prelude-ls@^1.2.1:
version "1.2.1"
resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396"
@@ -11867,11 +9443,6 @@ prelude-ls@~1.1.2:
resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54"
integrity sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==
-prepend-http@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-2.0.0.tgz#e92434bfa5ea8c19f41cdfd401d741a3c819d897"
- integrity sha512-ravE6m9Atw9Z/jjttRUZ+clIXogdghyZAuWJ3qEzjT+jI/dL1ifAqhZeC5VHzQp1MSt1+jxKkFNemj/iO7tVUA==
-
preprocess@^3.2.0:
version "3.2.0"
resolved "https://registry.yarnpkg.com/preprocess/-/preprocess-3.2.0.tgz#36b3e2c52331fbc6fabb26d4fd5709304b7e3675"
@@ -11907,7 +9478,7 @@ prettier-plugin-solidity@^1.1.3:
semver "^7.5.4"
solidity-comments-extractor "^0.0.7"
-prettier@^2.1.2, prettier@^2.3.2, prettier@^2.8.3:
+prettier@^2.1.2, prettier@^2.3.1, prettier@^2.3.2, prettier@^2.8.3:
version "2.8.8"
resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.8.8.tgz#e8c5d7e98a4305ffe3de2e1fc4aca1a71c28b1da"
integrity sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==
@@ -11926,17 +9497,12 @@ pretty-format@^29.0.0, pretty-format@^29.7.0:
ansi-styles "^5.0.0"
react-is "^18.0.0"
-private@^0.1.6, private@^0.1.8:
- version "0.1.8"
- resolved "https://registry.yarnpkg.com/private/-/private-0.1.8.tgz#2381edb3689f7a53d653190060fcf822d2f368ff"
- integrity sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==
-
process-nextick-args@~2.0.0:
version "2.0.1"
resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2"
integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==
-process@^0.11.1, process@^0.11.10:
+process@^0.11.1:
version "0.11.10"
resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182"
integrity sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==
@@ -11996,14 +9562,6 @@ protobufjs@^7.2.5:
"@types/node" ">=13.7.0"
long "^5.0.0"
-proxy-addr@~2.0.7:
- version "2.0.7"
- resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.7.tgz#f19fe69ceab311eeb94b42e70e8c2070f9ba1025"
- integrity sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==
- dependencies:
- forwarded "0.2.0"
- ipaddr.js "1.9.1"
-
proxy-from-env@^1.1.0:
version "1.1.0"
resolved "https://registry.yarnpkg.com/proxy-from-env/-/proxy-from-env-1.1.0.tgz#e102f16ca355424865755d2c9e8ea4f24d58c3e2"
@@ -12014,76 +9572,11 @@ prr@~1.0.1:
resolved "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476"
integrity sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==
-pseudomap@^1.0.1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3"
- integrity sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==
-
psl@^1.1.28:
version "1.9.0"
resolved "https://registry.yarnpkg.com/psl/-/psl-1.9.0.tgz#d0df2a137f00794565fcaf3b2c00cd09f8d5a5a7"
integrity sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==
-public-encrypt@^4.0.0:
- version "4.0.3"
- resolved "https://registry.yarnpkg.com/public-encrypt/-/public-encrypt-4.0.3.tgz#4fcc9d77a07e48ba7527e7cbe0de33d0701331e0"
- integrity sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==
- dependencies:
- bn.js "^4.1.0"
- browserify-rsa "^4.0.0"
- create-hash "^1.1.0"
- parse-asn1 "^5.0.0"
- randombytes "^2.0.1"
- safe-buffer "^5.1.2"
-
-pull-cat@^1.1.9:
- version "1.1.11"
- resolved "https://registry.yarnpkg.com/pull-cat/-/pull-cat-1.1.11.tgz#b642dd1255da376a706b6db4fa962f5fdb74c31b"
- integrity sha512-i3w+xZ3DCtTVz8S62hBOuNLRHqVDsHMNZmgrZsjPnsxXUgbWtXEee84lo1XswE7W2a3WHyqsNuDJTjVLAQR8xg==
-
-pull-defer@^0.2.2:
- version "0.2.3"
- resolved "https://registry.yarnpkg.com/pull-defer/-/pull-defer-0.2.3.tgz#4ee09c6d9e227bede9938db80391c3dac489d113"
- integrity sha512-/An3KE7mVjZCqNhZsr22k1Tx8MACnUnHZZNPSJ0S62td8JtYr/AiRG42Vz7Syu31SoTLUzVIe61jtT/pNdjVYA==
-
-pull-level@^2.0.3:
- version "2.0.4"
- resolved "https://registry.yarnpkg.com/pull-level/-/pull-level-2.0.4.tgz#4822e61757c10bdcc7cf4a03af04c92734c9afac"
- integrity sha512-fW6pljDeUThpq5KXwKbRG3X7Ogk3vc75d5OQU/TvXXui65ykm+Bn+fiktg+MOx2jJ85cd+sheufPL+rw9QSVZg==
- dependencies:
- level-post "^1.0.7"
- pull-cat "^1.1.9"
- pull-live "^1.0.1"
- pull-pushable "^2.0.0"
- pull-stream "^3.4.0"
- pull-window "^2.1.4"
- stream-to-pull-stream "^1.7.1"
-
-pull-live@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/pull-live/-/pull-live-1.0.1.tgz#a4ecee01e330155e9124bbbcf4761f21b38f51f5"
- integrity sha512-tkNz1QT5gId8aPhV5+dmwoIiA1nmfDOzJDlOOUpU5DNusj6neNd3EePybJ5+sITr2FwyCs/FVpx74YMCfc8YeA==
- dependencies:
- pull-cat "^1.1.9"
- pull-stream "^3.4.0"
-
-pull-pushable@^2.0.0:
- version "2.2.0"
- resolved "https://registry.yarnpkg.com/pull-pushable/-/pull-pushable-2.2.0.tgz#5f2f3aed47ad86919f01b12a2e99d6f1bd776581"
- integrity sha512-M7dp95enQ2kaHvfCt2+DJfyzgCSpWVR2h2kWYnVsW6ZpxQBx5wOu0QWOvQPVoPnBLUZYitYP2y7HyHkLQNeGXg==
-
-pull-stream@^3.2.3, pull-stream@^3.4.0, pull-stream@^3.6.8:
- version "3.7.0"
- resolved "https://registry.yarnpkg.com/pull-stream/-/pull-stream-3.7.0.tgz#85de0e44ff38a4d2ad08cc43fc458e1922f9bf0b"
- integrity sha512-Eco+/R004UaCK2qEDE8vGklcTG2OeZSVm1kTUQNrykEjDwcFXDZhygFDsW49DbXyJMEhHeRL3z5cRVqPAhXlIw==
-
-pull-window@^2.1.4:
- version "2.1.4"
- resolved "https://registry.yarnpkg.com/pull-window/-/pull-window-2.1.4.tgz#fc3b86feebd1920c7ae297691e23f705f88552f0"
- integrity sha512-cbDzN76BMlcGG46OImrgpkMf/VkCnupj8JhsrpBw3aWBM9ye345aYnqitmZCgauBkc0HbbRRn9hCnsa3k2FNUg==
- dependencies:
- looper "^2.0.0"
-
pump@^1.0.0:
version "1.0.3"
resolved "https://registry.yarnpkg.com/pump/-/pump-1.0.3.tgz#5dfe8311c33bbf6fc18261f9f34702c47c08a954"
@@ -12100,11 +9593,6 @@ pump@^3.0.0:
end-of-stream "^1.1.0"
once "^1.3.1"
-punycode@2.1.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.0.tgz#5f863edc89b96db09074bad7947bf09056ca4e7d"
- integrity sha512-Yxz2kRwT90aPiWEMHVYnEf4+rhwF1tBmmZ4KepCP+Wkium9JxtWnUm1nqGwpiAHr/tnTSeHqr3wb++jgSkXjhA==
-
punycode@^1.4.1:
version "1.4.1"
resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e"
@@ -12125,13 +9613,6 @@ pure-rand@^6.0.0:
resolved "https://registry.yarnpkg.com/pure-rand/-/pure-rand-6.0.4.tgz#50b737f6a925468679bff00ad20eade53f37d5c7"
integrity sha512-LA0Y9kxMYv47GIPJy6MI84fqTd2HmYZI83W/kM/SkKfDlajnZYfmXFTxkbY+xSBPkLJxltMa9hIkmdc29eguMA==
-qs@6.11.0:
- version "6.11.0"
- resolved "https://registry.yarnpkg.com/qs/-/qs-6.11.0.tgz#fd0d963446f7a65e1367e01abd85429453f0c37a"
- integrity sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==
- dependencies:
- side-channel "^1.0.4"
-
qs@^6.11.2, qs@^6.4.0:
version "6.11.2"
resolved "https://registry.yarnpkg.com/qs/-/qs-6.11.2.tgz#64bea51f12c1f5da1bc01496f48ffcff7c69d7d9"
@@ -12144,15 +9625,6 @@ qs@~6.5.2:
resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.3.tgz#3aeeffc91967ef6e35c0e488ef46fb296ab76aad"
integrity sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==
-query-string@^5.0.1:
- version "5.1.1"
- resolved "https://registry.yarnpkg.com/query-string/-/query-string-5.1.1.tgz#a78c012b71c17e05f2e3fa2319dd330682efb3cb"
- integrity sha512-gjWOsm2SoGlgLEdAGt7a6slVOk9mGiXmPFMqrEhLQ68rhQuBnpfs3+EmlvqKyxnCo9/PPlF+9MtY02S1aFg+Jw==
- dependencies:
- decode-uri-component "^0.2.0"
- object-assign "^4.1.0"
- strict-uri-encode "^1.0.0"
-
querystring@^0.2.0:
version "0.2.1"
resolved "https://registry.yarnpkg.com/querystring/-/querystring-0.2.1.tgz#40d77615bb09d16902a85c3e38aa8b5ed761c2dd"
@@ -12163,11 +9635,6 @@ queue-microtask@^1.2.2, queue-microtask@^1.2.3:
resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243"
integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==
-quick-lru@^5.1.1:
- version "5.1.1"
- resolved "https://registry.yarnpkg.com/quick-lru/-/quick-lru-5.1.1.tgz#366493e6b3e42a3a6885e2e99d18f80fb7a8c932"
- integrity sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==
-
railroad-diagrams@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/railroad-diagrams/-/railroad-diagrams-1.0.0.tgz#eb7e6267548ddedfb899c1b90e57374559cddb7e"
@@ -12181,37 +9648,14 @@ randexp@0.4.6:
discontinuous-range "1.0.0"
ret "~0.1.10"
-randombytes@^2.0.0, randombytes@^2.0.1, randombytes@^2.0.5, randombytes@^2.0.6, randombytes@^2.1.0:
+randombytes@^2.0.1, randombytes@^2.1.0:
version "2.1.0"
resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a"
integrity sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==
dependencies:
safe-buffer "^5.1.0"
-randomfill@^1.0.3:
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/randomfill/-/randomfill-1.0.4.tgz#c92196fc86ab42be983f1bf31778224931d61458"
- integrity sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==
- dependencies:
- randombytes "^2.0.5"
- safe-buffer "^5.1.0"
-
-range-parser@~1.2.1:
- version "1.2.1"
- resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031"
- integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==
-
-raw-body@2.5.1:
- version "2.5.1"
- resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.5.1.tgz#fe1b1628b181b700215e5fd42389f98b71392857"
- integrity sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==
- dependencies:
- bytes "3.1.2"
- http-errors "2.0.0"
- iconv-lite "0.4.24"
- unpipe "1.0.0"
-
-raw-body@2.5.2, raw-body@^2.4.1:
+raw-body@^2.4.1:
version "2.5.2"
resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.5.2.tgz#99febd83b90e08975087e8f1f9419a149366b68a"
integrity sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==
@@ -12236,23 +9680,6 @@ react-is@^18.0.0:
resolved "https://registry.yarnpkg.com/react-is/-/react-is-18.2.0.tgz#199431eeaaa2e09f86427efbb4f1473edb47609b"
integrity sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==
-read-pkg-up@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-1.0.1.tgz#9d63c13276c065918d57f002a57f40a1b643fb02"
- integrity sha512-WD9MTlNtI55IwYUS27iHh9tK3YoIVhxis8yKhLpTqWtml739uXc9NWTpxoHkfZf3+DkCCsXox94/VWZniuZm6A==
- dependencies:
- find-up "^1.0.0"
- read-pkg "^1.0.0"
-
-read-pkg@^1.0.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-1.1.0.tgz#f5ffaa5ecd29cb31c0474bca7d756b6bb29e3f28"
- integrity sha512-7BGwRHqt4s/uVbuyoeejRn4YmFnYZiFl4AuaeXHlgZf3sONF0SOGlxs2Pw8g6hCKupo08RafIO5YXFNOKTfwsQ==
- dependencies:
- load-json-file "^1.0.0"
- normalize-package-data "^2.3.2"
- path-type "^1.0.0"
-
read-pkg@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-3.0.0.tgz#9cbc686978fee65d16c00e2b19c237fcf6e38389"
@@ -12262,17 +9689,7 @@ read-pkg@^3.0.0:
normalize-package-data "^2.3.2"
path-type "^3.0.0"
-readable-stream@^1.0.33:
- version "1.1.14"
- resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.1.14.tgz#7cf4c54ef648e3813084c636dd2079e166c081d9"
- integrity sha512-+MeVjFf4L44XUkhM1eYbD8fyEsxcV81pqMSR5gblfcLCHfZvbrqy4/qYHE+/R5HoBUT11WV5O08Cr1n3YXkWVQ==
- dependencies:
- core-util-is "~1.0.0"
- inherits "~2.0.1"
- isarray "0.0.1"
- string_decoder "~0.10.x"
-
-readable-stream@^2.0.0, readable-stream@^2.0.5, readable-stream@^2.2.2, readable-stream@^2.2.8, readable-stream@^2.2.9, readable-stream@^2.3.0, readable-stream@^2.3.5, readable-stream@^2.3.6, readable-stream@~2.3.6:
+readable-stream@^2.2.2, readable-stream@^2.3.0, readable-stream@^2.3.5:
version "2.3.8"
resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.8.tgz#91125e8042bba1b9887f49345f6277027ce8be9b"
integrity sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==
@@ -12285,7 +9702,7 @@ readable-stream@^2.0.0, readable-stream@^2.0.5, readable-stream@^2.2.2, readable
string_decoder "~1.1.1"
util-deprecate "~1.0.1"
-readable-stream@^3.0.6, readable-stream@^3.1.1, readable-stream@^3.4.0, readable-stream@^3.5.0, readable-stream@^3.6.0, readable-stream@^3.6.2:
+readable-stream@^3.1.0, readable-stream@^3.1.1, readable-stream@^3.4.0, readable-stream@^3.5.0, readable-stream@^3.6.0:
version "3.6.2"
resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.2.tgz#56a9b36ea965c00c5a93ef31eb111a0f11056967"
integrity sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==
@@ -12294,7 +9711,7 @@ readable-stream@^3.0.6, readable-stream@^3.1.1, readable-stream@^3.4.0, readable
string_decoder "^1.1.1"
util-deprecate "^1.0.1"
-readable-stream@~1.0.15, readable-stream@~1.0.26-4:
+readable-stream@~1.0.26-4:
version "1.0.34"
resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.0.34.tgz#125820e34bc842d2f2aaafafe4c2916ee32c157c"
integrity sha512-ok1qVCJuRkNmvebYikljxJA/UEsKwLl2nI1OmaqAu4/UE+h0wKCHok4XkL/gvi39OacXvw59RJUOFUkDib2rHg==
@@ -12325,33 +9742,16 @@ recursive-readdir@^2.2.2:
dependencies:
minimatch "^3.0.5"
-regenerate@^1.2.1:
- version "1.4.2"
- resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.4.2.tgz#b9346d8827e8f5a32f7ba29637d398b69014848a"
- integrity sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==
+reduce-flatten@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/reduce-flatten/-/reduce-flatten-2.0.0.tgz#734fd84e65f375d7ca4465c69798c25c9d10ae27"
+ integrity sha512-EJ4UNY/U1t2P/2k6oqotuX2Cc3T6nxJwsM0N0asT7dhrtH1ltUxDn4NalSYmPE2rCkVpcf/X6R0wDwcFpzhd4w==
regenerator-runtime@^0.11.0:
version "0.11.1"
resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz#be05ad7f9bf7d22e056f9726cee5017fbf19e2e9"
integrity sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==
-regenerator-transform@^0.10.0:
- version "0.10.1"
- resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.10.1.tgz#1e4996837231da8b7f3cf4114d71b5691a0680dd"
- integrity sha512-PJepbvDbuK1xgIgnau7Y90cwaAmO/LCLMI2mPvaXq2heGMR3aWW5/BQvYrhJ8jgmQjXewXvBjzfqKcVOmhjZ6Q==
- dependencies:
- babel-runtime "^6.18.0"
- babel-types "^6.19.0"
- private "^0.1.6"
-
-regex-not@^1.0.0, regex-not@^1.0.2:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/regex-not/-/regex-not-1.0.2.tgz#1f4ece27e00b0b65e0247a6810e6a85d83a5752c"
- integrity sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==
- dependencies:
- extend-shallow "^3.0.2"
- safe-regex "^1.1.0"
-
regexp.prototype.flags@^1.5.1:
version "1.5.1"
resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.5.1.tgz#90ce989138db209f81492edd734183ce99f9677e"
@@ -12366,44 +9766,11 @@ regexpp@^3.1.0:
resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-3.2.0.tgz#0425a2768d8f23bad70ca4b90461fa2f1213e1b2"
integrity sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==
-regexpu-core@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-2.0.0.tgz#49d038837b8dcf8bfa5b9a42139938e6ea2ae240"
- integrity sha512-tJ9+S4oKjxY8IZ9jmjnp/mtytu1u3iyIQAfmI51IKWH6bFf7XR1ybtaO6j7INhZKXOTYADk7V5qxaqLkmNxiZQ==
- dependencies:
- regenerate "^1.2.1"
- regjsgen "^0.2.0"
- regjsparser "^0.1.4"
-
-regjsgen@^0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.2.0.tgz#6c016adeac554f75823fe37ac05b92d5a4edb1f7"
- integrity sha512-x+Y3yA24uF68m5GA+tBjbGYo64xXVJpbToBaWCoSNSc1hdk6dfctaRWrNFTVJZIIhL5GxW8zwjoixbnifnK59g==
-
-regjsparser@^0.1.4:
- version "0.1.5"
- resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.1.5.tgz#7ee8f84dc6fa792d3fd0ae228d24bd949ead205c"
- integrity sha512-jlQ9gYLfk2p3V5Ag5fYhA7fv7OHzd1KUH0PRP46xc3TgwjwgROIW572AfYg/X9kaNq/LJnu6oJcFRXlIrGoTRw==
- dependencies:
- jsesc "~0.5.0"
-
-repeat-element@^1.1.2:
- version "1.1.4"
- resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.4.tgz#be681520847ab58c7568ac75fbfad28ed42d39e9"
- integrity sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ==
-
repeat-string@^1.6.1:
version "1.6.1"
resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637"
integrity sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==
-repeating@^2.0.0:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/repeating/-/repeating-2.0.1.tgz#5214c53a926d3552707527fbab415dbc08d06dda"
- integrity sha512-ZqtSMuVybkISo2OWvqvm7iHSWngvdaW3IpsT9/uP8v4gMi591LY6h35wdOfvQdWCKFWZWm2Y1Opp4kV7vQKT6A==
- dependencies:
- is-finite "^1.0.0"
-
req-cwd@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/req-cwd/-/req-cwd-2.0.0.tgz#d4082b4d44598036640fb73ddea01ed53db49ebc"
@@ -12418,7 +9785,7 @@ req-from@^2.0.0:
dependencies:
resolve-from "^3.0.0"
-request@^2.79.0, request@^2.85.0:
+request@^2.85.0:
version "2.88.2"
resolved "https://registry.yarnpkg.com/request/-/request-2.88.2.tgz#d73c918731cb5a87da047e207234146f664d12b3"
integrity sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==
@@ -12449,26 +9816,11 @@ require-directory@^2.1.1:
resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42"
integrity sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==
-require-from-string@^1.1.0:
- version "1.2.1"
- resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-1.2.1.tgz#529c9ccef27380adfec9a2f965b649bbee636418"
- integrity sha512-H7AkJWMobeskkttHyhTVtS0fxpFLjxhbfMa6Bk3wimP7sdPRGL3EyCg3sAQenFfAe+xQ+oAc85Nmtvq0ROM83Q==
-
require-from-string@^2.0.0, require-from-string@^2.0.2:
version "2.0.2"
resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909"
integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==
-require-main-filename@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-1.0.1.tgz#97f717b69d48784f5f526a6c5aa8ffdda055a4d1"
- integrity sha512-IqSUtOVP4ksd1C/ej5zeEh/BIP2ajqpn8c5x+q99gvcIG/Qf0cud5raVnE/Dwd0ua9TXYDoDc0RE5hBSdz22Ug==
-
-resolve-alpn@^1.0.0:
- version "1.2.1"
- resolved "https://registry.yarnpkg.com/resolve-alpn/-/resolve-alpn-1.2.1.tgz#b7adbdac3546aaaec20b45e7d8265927072726f9"
- integrity sha512-0a1F4l73/ZFZOakJnQ3FvkJ2+gSTQWz/r2KE5OdDY0TxPm5h4GkqkWWfM47T7HsbnOtcJVEF4epCVy6u7Q3K+g==
-
resolve-cwd@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-3.0.0.tgz#0f0075f1bb2544766cf73ba6a6e2adfebcb13f2d"
@@ -12496,11 +9848,6 @@ resolve-pkg-maps@^1.0.0:
resolved "https://registry.yarnpkg.com/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz#616b3dc2c57056b5588c31cdf4b3d64db133720f"
integrity sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==
-resolve-url@^0.2.1:
- version "0.2.1"
- resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a"
- integrity sha512-ZuF55hVUQaaczgOIwqWzkEcEidmlD/xl44x1UZnhOXcYuFN2S6+rcxpG+C1N3So0wvNI3DmJICUFfu2SxhBmvg==
-
resolve.exports@^2.0.0:
version "2.0.2"
resolved "https://registry.yarnpkg.com/resolve.exports/-/resolve.exports-2.0.2.tgz#f8c934b8e6a13f539e38b7098e2e36134f01e800"
@@ -12518,7 +9865,7 @@ resolve@1.17.0:
dependencies:
path-parse "^1.0.6"
-resolve@^1.1.6, resolve@^1.10.0, resolve@^1.12.0, resolve@^1.20.0, resolve@^1.22.4, resolve@^1.8.1, resolve@~1.22.6:
+resolve@^1.1.6, resolve@^1.10.0, resolve@^1.12.0, resolve@^1.20.0, resolve@^1.22.4, resolve@^1.8.1:
version "1.22.8"
resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.8.tgz#b6c87a9f2aa06dfab52e3d70ac8cde321fa5a48d"
integrity sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==
@@ -12527,20 +9874,6 @@ resolve@^1.1.6, resolve@^1.10.0, resolve@^1.12.0, resolve@^1.20.0, resolve@^1.22
path-parse "^1.0.7"
supports-preserve-symlinks-flag "^1.0.0"
-responselike@^1.0.2:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/responselike/-/responselike-1.0.2.tgz#918720ef3b631c5642be068f15ade5a46f4ba1e7"
- integrity sha512-/Fpe5guzJk1gPqdJLJR5u7eG/gNY4nImjbRDaVWVMRhne55TCmj2i9Q+54PBRfatRC8v/rIiv9BN0pMd9OV5EQ==
- dependencies:
- lowercase-keys "^1.0.0"
-
-responselike@^2.0.0:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/responselike/-/responselike-2.0.1.tgz#9a0bc8fdc252f3fb1cca68b016591059ba1422bc"
- integrity sha512-4gl03wn3hj1HP3yzgdI7d3lCkF95F21Pz4BPGvKHinyQzALR5CapwC8yIi0Rh58DEMQ/SguC03wFj2k0M/mHhw==
- dependencies:
- lowercase-keys "^2.0.0"
-
restore-cursor@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-2.0.0.tgz#9f7ee287f82fd326d4fd162923d62129eee0dfaf"
@@ -12564,7 +9897,7 @@ reusify@^1.0.4:
resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76"
integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==
-rimraf@^2.2.8, rimraf@^2.6.3:
+rimraf@^2.2.8:
version "2.7.1"
resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec"
integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==
@@ -12578,6 +9911,13 @@ rimraf@^3.0.2:
dependencies:
glob "^7.1.3"
+rimraf@^5.0.5:
+ version "5.0.5"
+ resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-5.0.5.tgz#9be65d2d6e683447d2e9013da2bf451139a61ccf"
+ integrity sha512-CqDakW+hMe/Bz202FPEymy68P+G50RfMQK+Qo5YUqc9SPipvbGjCGKd0RSKEelbsfQuw3g5NZDSrlZZAJurH1A==
+ dependencies:
+ glob "^10.3.7"
+
ripemd160@^2.0.0, ripemd160@^2.0.1:
version "2.0.2"
resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.2.tgz#a1c1a6f624751577ba5d07914cbc92850585890c"
@@ -12586,7 +9926,14 @@ ripemd160@^2.0.0, ripemd160@^2.0.1:
hash-base "^3.0.0"
inherits "^2.0.1"
-rlp@^2.0.0, rlp@^2.2.1, rlp@^2.2.2, rlp@^2.2.3, rlp@^2.2.4:
+rlp@2.2.6:
+ version "2.2.6"
+ resolved "https://registry.yarnpkg.com/rlp/-/rlp-2.2.6.tgz#c80ba6266ac7a483ef1e69e8e2f056656de2fb2c"
+ integrity sha512-HAfAmL6SDYNWPUOJNrM500x4Thn4PZsEy5pijPh40U9WfNk0z15hUYzO9xVIMAdIHdFtD8CBDHd75Td1g36Mjg==
+ dependencies:
+ bn.js "^4.11.1"
+
+rlp@^2.2.3, rlp@^2.2.4:
version "2.2.7"
resolved "https://registry.yarnpkg.com/rlp/-/rlp-2.2.7.tgz#33f31c4afac81124ac4b283e2bd4d9720b30beaf"
integrity sha512-d5gdPmgQ0Z+AklL2NVXr/IoSjNZFfTVvQWzL/AM2AOcSzYP2xjlb0AC8YyCLc41MSNf6P6QVtjgPdmVtzb+4lQ==
@@ -12641,7 +9988,7 @@ rxjs@^6.4.0:
dependencies:
tslib "^1.9.0"
-safe-array-concat@^1.0.0, safe-array-concat@^1.0.1:
+safe-array-concat@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/safe-array-concat/-/safe-array-concat-1.0.1.tgz#91686a63ce3adbea14d61b14c99572a8ff84754c"
integrity sha512-6XbUAseYE2KtOuGueyeobCySj9L4+66Tn6KQMOPQJrAJEowYKW/YR/MGJZl7FdydUdaFu4LYyDZjxf4/Nmo23Q==
@@ -12651,7 +9998,7 @@ safe-array-concat@^1.0.0, safe-array-concat@^1.0.1:
has-symbols "^1.0.3"
isarray "^2.0.5"
-safe-buffer@5.2.1, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@^5.2.0, safe-buffer@^5.2.1, safe-buffer@~5.2.0:
+safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@^5.2.0, safe-buffer@~5.2.0:
version "5.2.1"
resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6"
integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==
@@ -12661,13 +10008,6 @@ safe-buffer@~5.1.0, safe-buffer@~5.1.1:
resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d"
integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==
-safe-event-emitter@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/safe-event-emitter/-/safe-event-emitter-1.0.1.tgz#5b692ef22329ed8f69fdce607e50ca734f6f20af"
- integrity sha512-e1wFe99A91XYYxoQbcq2ZJUWurxEyP8vfz7A7vuUe1s95q8r5ebraVaA1BukYJcpM6V16ugWoD9vngi8Ccu5fg==
- dependencies:
- events "^3.0.0"
-
safe-regex-test@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/safe-regex-test/-/safe-regex-test-1.0.0.tgz#793b874d524eb3640d1873aad03596db2d4f2295"
@@ -12677,14 +10017,7 @@ safe-regex-test@^1.0.0:
get-intrinsic "^1.1.3"
is-regex "^1.1.4"
-safe-regex@^1.1.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e"
- integrity sha512-aJXcif4xnaNUzvUuC5gcb46oTS7zvg4jpMTnuqtrEPlR3vFr4pxtdTwaF1Qs3Enjn9HK+ZlwQui+a7z0SywIzg==
- dependencies:
- ret "~0.1.10"
-
-"safer-buffer@>= 2.1.2 < 3", "safer-buffer@>= 2.1.2 < 3.0.0", safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0:
+"safer-buffer@>= 2.1.2 < 3", safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0:
version "2.1.2"
resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a"
integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==
@@ -12709,19 +10042,12 @@ sc-istanbul@^0.4.5:
which "^1.1.1"
wordwrap "^1.0.0"
-scrypt-js@3.0.1, scrypt-js@^3.0.0, scrypt-js@^3.0.1:
+scrypt-js@3.0.1, scrypt-js@^3.0.0:
version "3.0.1"
resolved "https://registry.yarnpkg.com/scrypt-js/-/scrypt-js-3.0.1.tgz#d314a57c2aef69d1ad98a138a21fe9eafa9ee312"
integrity sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA==
-scryptsy@^1.2.1:
- version "1.2.1"
- resolved "https://registry.yarnpkg.com/scryptsy/-/scryptsy-1.2.1.tgz#a3225fa4b2524f802700761e2855bdf3b2d92163"
- integrity sha512-aldIRgMozSJ/Gl6K6qmJZysRP82lz83Wb42vl4PWN8SaLFHIaOzLPc9nUUW2jQN88CuGm5q5HefJ9jZ3nWSmTw==
- dependencies:
- pbkdf2 "^3.0.3"
-
-secp256k1@^4.0.1:
+secp256k1@4.0.3, secp256k1@^4.0.1:
version "4.0.3"
resolved "https://registry.yarnpkg.com/secp256k1/-/secp256k1-4.0.3.tgz#c4559ecd1b8d3c1827ed2d1b94190d69ce267303"
integrity sha512-NLZVf+ROMxwtEj3Xa562qgv2BK5e2WNmXPiOdVIPLgs6lyTzMvBq0aWTYMI5XCP9jZMVKOcqZLw/Wc4vDkuxhA==
@@ -12730,17 +10056,17 @@ secp256k1@^4.0.1:
node-addon-api "^2.0.0"
node-gyp-build "^4.2.0"
-seedrandom@3.0.1:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/seedrandom/-/seedrandom-3.0.1.tgz#eb3dde015bcf55df05a233514e5df44ef9dce083"
- integrity sha512-1/02Y/rUeU1CJBAGLebiC5Lbo5FnB22gQbIFFYTLkwvp1xdABZJH1sn4ZT1MzXmPpzv+Rf/Lu2NcsLJiK4rcDg==
+seedrandom@3.0.5:
+ version "3.0.5"
+ resolved "https://registry.yarnpkg.com/seedrandom/-/seedrandom-3.0.5.tgz#54edc85c95222525b0c7a6f6b3543d8e0b3aa0a7"
+ integrity sha512-8OwmbklUNzwezjGInmZ+2clQmExQPvomqjL7LFqOYqtmuxRgQYqOD3mHaU+MvZn5FLUeVxVfQjwLZW/n/JFuqg==
-semaphore@>=1.0.1, semaphore@^1.0.3, semaphore@^1.1.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/semaphore/-/semaphore-1.1.0.tgz#aaad8b86b20fe8e9b32b16dc2ee682a8cd26a8aa"
- integrity sha512-O4OZEaNtkMd/K0i6js9SL+gqy0ZCBMgUvlSqHKi4IBdjhe7wB8pwztUk1BbZ1fmrvpwFrPbHzqd2w5pTcJH6LA==
+semaphore-async-await@^1.5.1:
+ version "1.5.1"
+ resolved "https://registry.yarnpkg.com/semaphore-async-await/-/semaphore-async-await-1.5.1.tgz#857bef5e3644601ca4b9570b87e9df5ca12974fa"
+ integrity sha512-b/ptP11hETwYWpeilHXXQiV5UJNJl7ZWWooKRE5eBIYWoom6dZ0SluCIdCtKycsMtZgKWE01/qAw6jblw1YVhg==
-"semver@2 || 3 || 4 || 5", semver@^5.3.0, semver@^5.5.0, semver@^5.6.0:
+"semver@2 || 3 || 4 || 5", semver@^5.5.0, semver@^5.6.0:
version "5.7.2"
resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.2.tgz#48d55db737c3287cd4835e17fa13feace1c41ef8"
integrity sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==
@@ -12757,30 +10083,6 @@ semver@^7.2.1, semver@^7.3.4, semver@^7.3.5, semver@^7.3.7, semver@^7.5.1, semve
dependencies:
lru-cache "^6.0.0"
-semver@~5.4.1:
- version "5.4.1"
- resolved "https://registry.yarnpkg.com/semver/-/semver-5.4.1.tgz#e059c09d8571f0540823733433505d3a2f00b18e"
- integrity sha512-WfG/X9+oATh81XtllIo/I8gOiY9EXRdv1cQdyykeXK17YcUW3EXUAi2To4pcH6nZtJPr7ZOpM5OMyWJZm+8Rsg==
-
-send@0.18.0:
- version "0.18.0"
- resolved "https://registry.yarnpkg.com/send/-/send-0.18.0.tgz#670167cc654b05f5aa4a767f9113bb371bc706be"
- integrity sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==
- dependencies:
- debug "2.6.9"
- depd "2.0.0"
- destroy "1.2.0"
- encodeurl "~1.0.2"
- escape-html "~1.0.3"
- etag "~1.8.1"
- fresh "0.5.2"
- http-errors "2.0.0"
- mime "1.6.0"
- ms "2.1.3"
- on-finished "2.4.1"
- range-parser "~1.2.1"
- statuses "2.0.1"
-
serialize-javascript@6.0.0:
version "6.0.0"
resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-6.0.0.tgz#efae5d88f45d7924141da8b5c3a7a7e663fefeb8"
@@ -12788,32 +10090,6 @@ serialize-javascript@6.0.0:
dependencies:
randombytes "^2.1.0"
-serve-static@1.15.0:
- version "1.15.0"
- resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.15.0.tgz#faaef08cffe0a1a62f60cad0c4e513cff0ac9540"
- integrity sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==
- dependencies:
- encodeurl "~1.0.2"
- escape-html "~1.0.3"
- parseurl "~1.3.3"
- send "0.18.0"
-
-servify@^0.1.12:
- version "0.1.12"
- resolved "https://registry.yarnpkg.com/servify/-/servify-0.1.12.tgz#142ab7bee1f1d033b66d0707086085b17c06db95"
- integrity sha512-/xE6GvsKKqyo1BAY+KxOWXcLpPsUUyji7Qg3bVD7hh1eRze5bR1uYiuDA/k3Gof1s9BTzQZEJK8sNcNGFIzeWw==
- dependencies:
- body-parser "^1.16.0"
- cors "^2.8.1"
- express "^4.14.0"
- request "^2.79.0"
- xhr "^2.3.3"
-
-set-blocking@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7"
- integrity sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==
-
set-function-length@^1.1.1:
version "1.1.1"
resolved "https://registry.yarnpkg.com/set-function-length/-/set-function-length-1.1.1.tgz#4bc39fafb0307224a33e106a7d35ca1218d659ed"
@@ -12838,16 +10114,6 @@ set-immediate-shim@^1.0.1:
resolved "https://registry.yarnpkg.com/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz#4b2b1b27eb808a9f8dcc481a58e5e56f599f3f61"
integrity sha512-Li5AOqrZWCVA2n5kryzEmqai6bKSIvpz5oUJHPVj6+dsbD3X1ixtsY5tEnsaNpH3pFAHmG8eIHUrtEtohrg+UQ==
-set-value@^2.0.0, set-value@^2.0.1:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/set-value/-/set-value-2.0.1.tgz#a18d40530e6f07de4228c7defe4227af8cad005b"
- integrity sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==
- dependencies:
- extend-shallow "^2.0.1"
- is-extendable "^0.1.1"
- is-plain-object "^2.0.3"
- split-string "^3.0.1"
-
setimmediate@^1.0.5:
version "1.0.5"
resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285"
@@ -12926,35 +10192,16 @@ signal-exit@^3.0.2, signal-exit@^3.0.3, signal-exit@^3.0.7:
resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9"
integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==
-simple-concat@^1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/simple-concat/-/simple-concat-1.0.1.tgz#f46976082ba35c2263f1c8ab5edfe26c41c9552f"
- integrity sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==
-
-simple-get@^2.7.0:
- version "2.8.2"
- resolved "https://registry.yarnpkg.com/simple-get/-/simple-get-2.8.2.tgz#5708fb0919d440657326cd5fe7d2599d07705019"
- integrity sha512-Ijd/rV5o+mSBBs4F/x9oDPtTx9Zb6X9brmnXvMW4J7IR15ngi9q5xxqWBKU744jTZiaXtxaPL7uHG6vtN8kUkw==
- dependencies:
- decompress-response "^3.3.0"
- once "^1.3.1"
- simple-concat "^1.0.0"
+signal-exit@^4.0.1:
+ version "4.1.0"
+ resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-4.1.0.tgz#952188c1cbd546070e2dd20d0f41c0ae0530cb04"
+ integrity sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==
sisteransi@^1.0.5:
version "1.0.5"
resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.5.tgz#134d681297756437cc05ca01370d3a7a571075ed"
integrity sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==
-slash@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/slash/-/slash-1.0.0.tgz#c41f2f6c39fc16d1cd17ad4b5d896114ae470d55"
- integrity sha512-3TYDR7xWt4dIqV2JauJr+EJeW356RXijHeUlO+8djJ+uBXPn8/2dpzBc8yQhh583sVvc9CvFAeQVgijsH+PNNg==
-
-slash@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/slash/-/slash-2.0.0.tgz#de552851a1759df3a8f206535442f5ec4ddeab44"
- integrity sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==
-
slash@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634"
@@ -12969,36 +10216,6 @@ slice-ansi@^4.0.0:
astral-regex "^2.0.0"
is-fullwidth-code-point "^3.0.0"
-snapdragon-node@^2.0.1:
- version "2.1.1"
- resolved "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b"
- integrity sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==
- dependencies:
- define-property "^1.0.0"
- isobject "^3.0.0"
- snapdragon-util "^3.0.1"
-
-snapdragon-util@^3.0.1:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/snapdragon-util/-/snapdragon-util-3.0.1.tgz#f956479486f2acd79700693f6f7b805e45ab56e2"
- integrity sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==
- dependencies:
- kind-of "^3.2.0"
-
-snapdragon@^0.8.1:
- version "0.8.2"
- resolved "https://registry.yarnpkg.com/snapdragon/-/snapdragon-0.8.2.tgz#64922e7c565b0e14204ba1aa7d6964278d25182d"
- integrity sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==
- dependencies:
- base "^0.11.1"
- debug "^2.2.0"
- define-property "^0.2.5"
- extend-shallow "^2.0.1"
- map-cache "^0.2.2"
- source-map "^0.5.6"
- source-map-resolve "^0.5.0"
- use "^3.1.0"
-
solc@0.7.3:
version "0.7.3"
resolved "https://registry.yarnpkg.com/solc/-/solc-0.7.3.tgz#04646961bd867a744f63d2b4e3c0701ffdc7d78a"
@@ -13013,11 +10230,11 @@ solc@0.7.3:
require-from-string "^2.0.0"
semver "^5.5.0"
tmp "0.0.33"
-
-solc@0.8.17:
- version "0.8.17"
- resolved "https://registry.yarnpkg.com/solc/-/solc-0.8.17.tgz#c748fec6a64bf029ec406aa9b37e75938d1115ae"
- integrity sha512-Dtidk2XtTTmkB3IKdyeg6wLYopJnBVxdoykN8oP8VY3PQjN16BScYoUJTXFm2OP7P0hXNAqWiJNmmfuELtLf8g==
+
+solc@0.8.15:
+ version "0.8.15"
+ resolved "https://registry.yarnpkg.com/solc/-/solc-0.8.15.tgz#d274dca4d5a8b7d3c9295d4cbdc9291ee1c52152"
+ integrity sha512-Riv0GNHNk/SddN/JyEuFKwbcWcEeho15iyupTSHw5Np6WuXA5D8kEHbyzDHi6sqmvLzu2l+8b1YmL8Ytple+8w==
dependencies:
command-exists "^1.2.8"
commander "^8.1.0"
@@ -13027,28 +10244,16 @@ solc@0.8.17:
semver "^5.5.0"
tmp "0.0.33"
-solc@^0.4.20:
- version "0.4.26"
- resolved "https://registry.yarnpkg.com/solc/-/solc-0.4.26.tgz#5390a62a99f40806b86258c737c1cf653cc35cb5"
- integrity sha512-o+c6FpkiHd+HPjmjEVpQgH7fqZ14tJpXhho+/bQXlXbliLIS/xjXb42Vxh+qQY1WCSTMQ0+a5vR9vi0MfhU6mA==
- dependencies:
- fs-extra "^0.30.0"
- memorystream "^0.3.1"
- require-from-string "^1.1.0"
- semver "^5.3.0"
- yargs "^4.7.1"
-
-solc@^0.6.3:
- version "0.6.12"
- resolved "https://registry.yarnpkg.com/solc/-/solc-0.6.12.tgz#48ac854e0c729361b22a7483645077f58cba080e"
- integrity sha512-Lm0Ql2G9Qc7yPP2Ba+WNmzw2jwsrd3u4PobHYlSOxaut3TtUbj9+5ZrT6f4DUpNPEoBaFUOEg9Op9C0mk7ge9g==
+solc@0.8.17:
+ version "0.8.17"
+ resolved "https://registry.yarnpkg.com/solc/-/solc-0.8.17.tgz#c748fec6a64bf029ec406aa9b37e75938d1115ae"
+ integrity sha512-Dtidk2XtTTmkB3IKdyeg6wLYopJnBVxdoykN8oP8VY3PQjN16BScYoUJTXFm2OP7P0hXNAqWiJNmmfuELtLf8g==
dependencies:
command-exists "^1.2.8"
- commander "3.0.2"
- fs-extra "^0.30.0"
+ commander "^8.1.0"
+ follow-redirects "^1.12.1"
js-sha3 "0.8.0"
memorystream "^0.3.1"
- require-from-string "^2.0.0"
semver "^5.5.0"
tmp "0.0.33"
@@ -13082,7 +10287,7 @@ solidity-comments-extractor@^0.0.7:
resolved "https://registry.yarnpkg.com/solidity-comments-extractor/-/solidity-comments-extractor-0.0.7.tgz#99d8f1361438f84019795d928b931f4e5c39ca19"
integrity sha512-wciNMLg/Irp8OKGrh3S2tfvZiZ0NEyILfcRCXCD4mp7SgK/i9gzLfhY2hY7VMCQJ3kH9UB9BzNdibIVMchzyYw==
-solidity-coverage@^0.8.2:
+solidity-coverage@^0.8.5:
version "0.8.5"
resolved "https://registry.yarnpkg.com/solidity-coverage/-/solidity-coverage-0.8.5.tgz#64071c3a0c06a0cecf9a7776c35f49edc961e875"
integrity sha512-6C6N6OV2O8FQA0FWA95FdzVH+L16HU94iFgg5wAFZ29UpLFkgNI/DRR2HotG1bC0F4gAc/OMs2BJI44Q/DYlKQ==
@@ -13123,25 +10328,6 @@ solpp@^0.11.5:
resolve "^1.10.0"
semver "^5.6.0"
-source-map-resolve@^0.5.0:
- version "0.5.3"
- resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.3.tgz#190866bece7553e1f8f267a2ee82c606b5509a1a"
- integrity sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==
- dependencies:
- atob "^2.1.2"
- decode-uri-component "^0.2.0"
- resolve-url "^0.2.1"
- source-map-url "^0.4.0"
- urix "^0.1.0"
-
-source-map-support@0.5.12:
- version "0.5.12"
- resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.12.tgz#b4f3b10d51857a5af0138d3ce8003b201613d599"
- integrity sha512-4h2Pbvyy15EE02G+JOZpUCmqWJuqrs+sEkzewTm++BPi7Hvn/HwcqLAcNxYAyI0x13CpPPn+kMjl+hplXMHITQ==
- dependencies:
- buffer-from "^1.0.0"
- source-map "^0.6.0"
-
source-map-support@0.5.13:
version "0.5.13"
resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.13.tgz#31b24a9c2e73c2de85066c0feb7d44767ed52932"
@@ -13150,13 +10336,6 @@ source-map-support@0.5.13:
buffer-from "^1.0.0"
source-map "^0.6.0"
-source-map-support@^0.4.15:
- version "0.4.18"
- resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.18.tgz#0286a6de8be42641338594e97ccea75f0a2c585f"
- integrity sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==
- dependencies:
- source-map "^0.5.6"
-
source-map-support@^0.5.13:
version "0.5.21"
resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.21.tgz#04fe7c7f9e1ed2d662233c28cb2b35b9f63f6e4f"
@@ -13165,16 +10344,6 @@ source-map-support@^0.5.13:
buffer-from "^1.0.0"
source-map "^0.6.0"
-source-map-url@^0.4.0:
- version "0.4.1"
- resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.1.tgz#0af66605a745a5a2f91cf1bbf8a7afbc283dec56"
- integrity sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw==
-
-source-map@^0.5.6, source-map@^0.5.7:
- version "0.5.7"
- resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc"
- integrity sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==
-
source-map@^0.6.0, source-map@^0.6.1:
version "0.6.1"
resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263"
@@ -13218,13 +10387,6 @@ split-ca@^1.0.0, split-ca@^1.0.1:
resolved "https://registry.yarnpkg.com/split-ca/-/split-ca-1.0.1.tgz#6c83aff3692fa61256e0cd197e05e9de157691a6"
integrity sha512-Q5thBSxp5t8WPTTJQS59LrGqOZqOsrhDGDVm8azCqIBjSBd7nd9o2PM+mDulQQkh8h//4U6hFZnc/mul8t5pWQ==
-split-string@^3.0.1, split-string@^3.0.2:
- version "3.1.0"
- resolved "https://registry.yarnpkg.com/split-string/-/split-string-3.1.0.tgz#7cb09dda3a86585705c64b39a6466038682e8fe2"
- integrity sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==
- dependencies:
- extend-shallow "^3.0.0"
-
split2@^4.1.0:
version "4.2.0"
resolved "https://registry.yarnpkg.com/split2/-/split2-4.2.0.tgz#c9c5920904d148bab0b9f67145f245a86aadbfa4"
@@ -13284,31 +10446,15 @@ stacktrace-parser@^0.1.10:
dependencies:
type-fest "^0.7.1"
-static-extend@^0.1.1:
- version "0.1.2"
- resolved "https://registry.yarnpkg.com/static-extend/-/static-extend-0.1.2.tgz#60809c39cbff55337226fd5e0b520f341f1fb5c6"
- integrity sha512-72E9+uLc27Mt718pMHt9VMNiAL4LMsmDbBva8mxWUCkT07fSzEGMYUCk0XWY6lp0j6RBAG4cJ3mWuZv2OE3s0g==
- dependencies:
- define-property "^0.2.5"
- object-copy "^0.1.0"
-
statuses@2.0.1:
version "2.0.1"
resolved "https://registry.yarnpkg.com/statuses/-/statuses-2.0.1.tgz#55cb000ccf1d48728bd23c685a063998cf1a1b63"
integrity sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==
-stream-to-pull-stream@^1.7.1:
- version "1.7.3"
- resolved "https://registry.yarnpkg.com/stream-to-pull-stream/-/stream-to-pull-stream-1.7.3.tgz#4161aa2d2eb9964de60bfa1af7feaf917e874ece"
- integrity sha512-6sNyqJpr5dIOQdgNy/xcDWwDuzAsAwVzhzrWlAPAQ7Lkjx/rv0wgvxEyKwTq6FmNd5rjTrELt/CLmaSw7crMGg==
- dependencies:
- looper "^3.0.0"
- pull-stream "^3.2.3"
-
-strict-uri-encode@^1.0.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz#279b225df1d582b1f54e65addd4352e18faa0713"
- integrity sha512-R3f198pcvnB+5IpnBlRkphuE9n46WyVl8I39W/ZUTZLz4nqSP/oLYUrcnJrw462Ds8he4YKMov2efsTIw1BDGQ==
+string-format@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/string-format/-/string-format-2.0.0.tgz#f2df2e7097440d3b65de31b6d40d54c96eaffb9b"
+ integrity sha512-bbEs3scLeYNXLecRRuk6uJxdXUSj6le/8rNPHChIJTn2V79aXVTR1EH2OH5zLKKoz0V02fOUKZZcw01pLUShZA==
string-length@^4.0.1:
version "4.0.2"
@@ -13318,14 +10464,14 @@ string-length@^4.0.1:
char-regex "^1.0.2"
strip-ansi "^6.0.0"
-string-width@^1.0.1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3"
- integrity sha512-0XsVpQLnVCXHJfyEs8tC0zpTVIr5PKKsQtkT29IwupnPTjtPmQ3xT/4yCREF9hYkV/3M3kzcUTSAZT6a6h81tw==
+"string-width-cjs@npm:string-width@^4.2.0", string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3:
+ version "4.2.3"
+ resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010"
+ integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==
dependencies:
- code-point-at "^1.0.0"
- is-fullwidth-code-point "^1.0.0"
- strip-ansi "^3.0.0"
+ emoji-regex "^8.0.0"
+ is-fullwidth-code-point "^3.0.0"
+ strip-ansi "^6.0.1"
string-width@^2.1.0, string-width@^2.1.1:
version "2.1.1"
@@ -13335,14 +10481,14 @@ string-width@^2.1.0, string-width@^2.1.1:
is-fullwidth-code-point "^2.0.0"
strip-ansi "^4.0.0"
-string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3:
- version "4.2.3"
- resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010"
- integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==
+string-width@^5.0.1, string-width@^5.1.2:
+ version "5.1.2"
+ resolved "https://registry.yarnpkg.com/string-width/-/string-width-5.1.2.tgz#14f8daec6d81e7221d2a357e668cab73bdbca794"
+ integrity sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==
dependencies:
- emoji-regex "^8.0.0"
- is-fullwidth-code-point "^3.0.0"
- strip-ansi "^6.0.1"
+ eastasianwidth "^0.2.0"
+ emoji-regex "^9.2.2"
+ strip-ansi "^7.0.1"
string.prototype.padend@^3.0.0:
version "3.1.5"
@@ -13353,7 +10499,7 @@ string.prototype.padend@^3.0.0:
define-properties "^1.2.0"
es-abstract "^1.22.1"
-string.prototype.trim@^1.2.8, string.prototype.trim@~1.2.8:
+string.prototype.trim@^1.2.8:
version "1.2.8"
resolved "https://registry.yarnpkg.com/string.prototype.trim/-/string.prototype.trim-1.2.8.tgz#f9ac6f8af4bd55ddfa8895e6aea92a96395393bd"
integrity sha512-lfjY4HcixfQXOfaqCvcBuOIapyaroTXhbkfJN3gcB1OtyupngWK4sEET9Knd0cXd28kTUqu/kHoV4HKSJdnjiQ==
@@ -13399,12 +10545,12 @@ string_decoder@~1.1.1:
dependencies:
safe-buffer "~5.1.0"
-strip-ansi@^3.0.0, strip-ansi@^3.0.1:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf"
- integrity sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==
+"strip-ansi-cjs@npm:strip-ansi@^6.0.1", strip-ansi@^6.0.0, strip-ansi@^6.0.1:
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9"
+ integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==
dependencies:
- ansi-regex "^2.0.0"
+ ansi-regex "^5.0.1"
strip-ansi@^4.0.0:
version "4.0.0"
@@ -13420,27 +10566,13 @@ strip-ansi@^5.1.0:
dependencies:
ansi-regex "^4.1.0"
-strip-ansi@^6.0.0, strip-ansi@^6.0.1:
- version "6.0.1"
- resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9"
- integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==
- dependencies:
- ansi-regex "^5.0.1"
-
-strip-ansi@^7.1.0:
+strip-ansi@^7.0.1, strip-ansi@^7.1.0:
version "7.1.0"
resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-7.1.0.tgz#d5b6568ca689d8561370b0707685d22434faff45"
integrity sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==
dependencies:
ansi-regex "^6.0.1"
-strip-bom@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-2.0.0.tgz#6219a85616520491f35788bdbf1447a99c7e6b0e"
- integrity sha512-kwrX1y7czp1E69n2ajbG65mIo9dqvJ+8aBQXOGVxqwvNbsXdFM6Lq37dLAY3mknUwru8CfcCbfOLL/gMo+fi3g==
- dependencies:
- is-utf8 "^0.2.0"
-
strip-bom@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3"
@@ -13485,11 +10617,6 @@ supports-color@8.1.1, supports-color@^8.0.0:
dependencies:
has-flag "^4.0.0"
-supports-color@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7"
- integrity sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==
-
supports-color@^3.1.0:
version "3.2.3"
resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-3.2.3.tgz#65ac0504b3954171d8a64946b2ae3cbb8a5f54f6"
@@ -13516,23 +10643,6 @@ supports-preserve-symlinks-flag@^1.0.0:
resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09"
integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==
-swarm-js@^0.1.40:
- version "0.1.42"
- resolved "https://registry.yarnpkg.com/swarm-js/-/swarm-js-0.1.42.tgz#497995c62df6696f6e22372f457120e43e727979"
- integrity sha512-BV7c/dVlA3R6ya1lMlSSNPLYrntt0LUq4YMgy3iwpCIc6rZnS5W2wUoctarZ5pXlpKtxDDf9hNziEkcfrxdhqQ==
- dependencies:
- bluebird "^3.5.0"
- buffer "^5.0.5"
- eth-lib "^0.1.26"
- fs-extra "^4.0.2"
- got "^11.8.5"
- mime-types "^2.1.16"
- mkdirp-promise "^5.0.1"
- mock-fs "^4.1.0"
- setimmediate "^1.0.5"
- tar "^4.0.2"
- xhr-request "^1.0.1"
-
sync-request@^6.0.0:
version "6.1.0"
resolved "https://registry.yarnpkg.com/sync-request/-/sync-request-6.1.0.tgz#e96217565b5e50bbffe179868ba75532fb597e68"
@@ -13569,6 +10679,16 @@ synckit@^0.8.5:
preprocess "^3.2.0"
zksync-web3 "^0.14.3"
+table-layout@^1.0.2:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/table-layout/-/table-layout-1.0.2.tgz#c4038a1853b0136d63365a734b6931cf4fad4a04"
+ integrity sha512-qd/R7n5rQTRFi+Zf2sk5XVVd9UQl6ZkduPFC3S7WEGJAmetDTjY3qPN50eSKzwuzEyQKy5TN2TiZdkIjos2L6A==
+ dependencies:
+ array-back "^4.0.1"
+ deep-extend "~0.6.0"
+ typical "^5.2.0"
+ wordwrapjs "^4.0.0"
+
table@^6.0.9, table@^6.8.0, table@^6.8.1:
version "6.8.1"
resolved "https://registry.yarnpkg.com/table/-/table-6.8.1.tgz#ea2b71359fe03b017a5fbc296204471158080bdf"
@@ -13597,28 +10717,6 @@ tapable@^2.2.0:
resolved "https://registry.yarnpkg.com/tapable/-/tapable-2.2.1.tgz#1967a73ef4060a82f12ab96af86d52fdb76eeca0"
integrity sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==
-tape@^4.6.3:
- version "4.17.0"
- resolved "https://registry.yarnpkg.com/tape/-/tape-4.17.0.tgz#de89f3671ddc5dad178d04c28dc6b0183f42268e"
- integrity sha512-KCuXjYxCZ3ru40dmND+oCLsXyuA8hoseu2SS404Px5ouyS0A99v8X/mdiLqsR5MTAyamMBN7PRwt2Dv3+xGIxw==
- dependencies:
- "@ljharb/resumer" "~0.0.1"
- "@ljharb/through" "~2.3.9"
- call-bind "~1.0.2"
- deep-equal "~1.1.1"
- defined "~1.0.1"
- dotignore "~0.1.2"
- for-each "~0.3.3"
- glob "~7.2.3"
- has "~1.0.3"
- inherits "~2.0.4"
- is-regex "~1.1.4"
- minimist "~1.2.8"
- mock-property "~1.0.0"
- object-inspect "~1.12.3"
- resolve "~1.22.6"
- string.prototype.trim "~1.2.8"
-
tar-fs@~1.16.3:
version "1.16.3"
resolved "https://registry.yarnpkg.com/tar-fs/-/tar-fs-1.16.3.tgz#966a628841da2c4010406a82167cbd5e0c72d509"
@@ -13663,19 +10761,6 @@ tar-stream@^2.0.0:
inherits "^2.0.3"
readable-stream "^3.1.1"
-tar@^4.0.2:
- version "4.4.19"
- resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.19.tgz#2e4d7263df26f2b914dee10c825ab132123742f3"
- integrity sha512-a20gEsvHnWe0ygBY8JbxoM4w3SJdhc7ZAuxkLqh+nvNQN2IOt0B5lLgM490X5Hl8FF0dl0tOf2ewFYAlIFgzVA==
- dependencies:
- chownr "^1.1.4"
- fs-minipass "^1.2.7"
- minipass "^2.9.0"
- minizlib "^1.3.3"
- mkdirp "^0.5.5"
- safe-buffer "^5.2.1"
- yallist "^3.1.1"
-
template-file@^6.0.1:
version "6.0.1"
resolved "https://registry.yarnpkg.com/template-file/-/template-file-6.0.1.tgz#ce4d1f48e56d637cc94bb97ec205e6e035bbb2a5"
@@ -13703,11 +10788,6 @@ test-value@^2.1.0:
array-back "^1.0.3"
typical "^2.6.0"
-testrpc@0.0.1:
- version "0.0.1"
- resolved "https://registry.yarnpkg.com/testrpc/-/testrpc-0.0.1.tgz#83e2195b1f5873aec7be1af8cbe6dcf39edb7aed"
- integrity sha512-afH1hO+SQ/VPlmaLUFj2636QMeDvPCeQMc/9RBMW0IfjNe9gFD9Ra3ShqYkB7py0do1ZcCna/9acHyzTJ+GcNA==
-
text-table@^0.2.0:
version "0.2.0"
resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4"
@@ -13744,24 +10824,11 @@ thenify-all@^1.0.0:
dependencies:
any-promise "^1.0.0"
-through2@^2.0.3:
- version "2.0.5"
- resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.5.tgz#01c1e39eb31d07cb7d03a96a70823260b23132cd"
- integrity sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==
- dependencies:
- readable-stream "~2.3.6"
- xtend "~4.0.1"
-
"through@>=2.2.7 <3", through@^2.3.6:
version "2.3.8"
resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5"
integrity sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==
-timed-out@^4.0.1:
- version "4.0.1"
- resolved "https://registry.yarnpkg.com/timed-out/-/timed-out-4.0.1.tgz#f32eacac5a175bea25d7fab565ab3ed8741ef56f"
- integrity sha512-G7r3AhovYtr5YKOWQkta8RKAPb+J9IsO4uVmzjl8AZwfhs8UcUwTiD6gcJYSgOtzyjvQKrKYn41syHbUWMkafA==
-
titleize@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/titleize/-/titleize-3.0.0.tgz#71c12eb7fdd2558aa8a44b0be83b8a76694acd53"
@@ -13774,13 +10841,6 @@ tmp@0.0.33, tmp@^0.0.33:
dependencies:
os-tmpdir "~1.0.2"
-tmp@0.1.0:
- version "0.1.0"
- resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.1.0.tgz#ee434a4e22543082e294ba6201dcc6eafefa2877"
- integrity sha512-J7Z2K08jbGcdA1kkQpJSqLF6T0tdQqpR2pnSUXsIchbPdTI9v3e85cLW0d6WDhwuAleOV71j2xWs8qMPfK7nKw==
- dependencies:
- rimraf "^2.6.3"
-
tmpl@1.0.5:
version "1.0.5"
resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.5.tgz#8683e0b902bb9c20c4f726e3c0b69f36518c07cc"
@@ -13791,36 +10851,11 @@ to-buffer@^1.1.1:
resolved "https://registry.yarnpkg.com/to-buffer/-/to-buffer-1.1.1.tgz#493bd48f62d7c43fcded313a03dcadb2e1213a80"
integrity sha512-lx9B5iv7msuFYE3dytT+KE5tap+rNYw+K4jVkb9R/asAb+pbBSM17jtunHplhBe6RRJdZx3Pn2Jph24O32mOVg==
-to-fast-properties@^1.0.3:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.3.tgz#b83571fa4d8c25b82e231b06e3a3055de4ca1a47"
- integrity sha512-lxrWP8ejsq+7E3nNjwYmUBMAgjMTZoTI+sdBOpvNyijeDLa29LUn9QaoXAHv4+Z578hbmHHJKZknzxVtvo77og==
-
to-fast-properties@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e"
integrity sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==
-to-object-path@^0.3.0:
- version "0.3.0"
- resolved "https://registry.yarnpkg.com/to-object-path/-/to-object-path-0.3.0.tgz#297588b7b0e7e0ac08e04e672f85c1f4999e17af"
- integrity sha512-9mWHdnGRuh3onocaHzukyvCZhzvr6tiflAy/JRFXcJX0TjgfWA9pk9t8CMbzmBE4Jfw58pXbkngtBtqYxzNEyg==
- dependencies:
- kind-of "^3.0.2"
-
-to-readable-stream@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/to-readable-stream/-/to-readable-stream-1.0.0.tgz#ce0aa0c2f3df6adf852efb404a783e77c0475771"
- integrity sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==
-
-to-regex-range@^2.1.0:
- version "2.1.1"
- resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-2.1.1.tgz#7c80c17b9dfebe599e27367e0d4dd5590141db38"
- integrity sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg==
- dependencies:
- is-number "^3.0.0"
- repeat-string "^1.6.1"
-
to-regex-range@^5.0.1:
version "5.0.1"
resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4"
@@ -13828,16 +10863,6 @@ to-regex-range@^5.0.1:
dependencies:
is-number "^7.0.0"
-to-regex@^3.0.1, to-regex@^3.0.2:
- version "3.0.2"
- resolved "https://registry.yarnpkg.com/to-regex/-/to-regex-3.0.2.tgz#13cfdd9b336552f30b51f33a8ae1b42a7a7599ce"
- integrity sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==
- dependencies:
- define-property "^2.0.2"
- extend-shallow "^3.0.2"
- regex-not "^1.0.2"
- safe-regex "^1.1.0"
-
toidentifier@1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.1.tgz#3be34321a88a820ed1bd80dfaa33e479fbb8dd35"
@@ -13861,26 +10886,26 @@ treeify@^1.1.0:
resolved "https://registry.yarnpkg.com/treeify/-/treeify-1.1.0.tgz#4e31c6a463accd0943879f30667c4fdaff411bb8"
integrity sha512-1m4RA7xVAJrSGrrXGs0L3YTwyvBs2S8PbRHaLZAkFw7JR8oIFwYtysxlBZhYIa7xSyiYJKZ3iGrrk55cGA3i9A==
-trim-right@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003"
- integrity sha512-WZGXGstmCWgeevgTL54hrCuw1dyMQIzWy7ZfqRJfSmJZBwklI15egmQytFP6bPidmw3M8d5yEowl1niq4vmqZw==
-
ts-api-utils@^1.0.1:
version "1.0.3"
resolved "https://registry.yarnpkg.com/ts-api-utils/-/ts-api-utils-1.0.3.tgz#f12c1c781d04427313dbac808f453f050e54a331"
integrity sha512-wNMeqtMz5NtwpT/UZGY5alT+VoKdSsOOP/kqHFcUW1P/VRhH2wJ48+DN2WwUliNbQ976ETwDL0Ifd2VVvgonvg==
+ts-command-line-args@^2.2.0:
+ version "2.5.1"
+ resolved "https://registry.yarnpkg.com/ts-command-line-args/-/ts-command-line-args-2.5.1.tgz#e64456b580d1d4f6d948824c274cf6fa5f45f7f0"
+ integrity sha512-H69ZwTw3rFHb5WYpQya40YAX2/w7Ut75uUECbgBIsLmM+BNuYnxsltfyyLMxy6sEeKxgijLTnQtLd0nKd6+IYw==
+ dependencies:
+ chalk "^4.1.0"
+ command-line-args "^5.1.1"
+ command-line-usage "^6.1.0"
+ string-format "^2.0.0"
+
ts-essentials@^1.0.0:
version "1.0.4"
resolved "https://registry.yarnpkg.com/ts-essentials/-/ts-essentials-1.0.4.tgz#ce3b5dade5f5d97cf69889c11bf7d2da8555b15a"
integrity sha512-q3N1xS4vZpRouhYHDPwO0bDW3EZ6SK9CrrDHxi/D6BPReSjpVgWIOpLS2o0gSBZm+7q/wyKp6RVM1AeeW7uyfQ==
-ts-essentials@^6.0.3:
- version "6.0.7"
- resolved "https://registry.yarnpkg.com/ts-essentials/-/ts-essentials-6.0.7.tgz#5f4880911b7581a873783740ce8b94da163d18a6"
- integrity sha512-2E4HIIj4tQJlIHuATRHayv0EfMGK3ris/GRk1E3CFnsZzeNV+hUmelbaTZHLtXaZppM5oLhHRtO04gINC4Jusw==
-
ts-essentials@^7.0.1:
version "7.0.3"
resolved "https://registry.yarnpkg.com/ts-essentials/-/ts-essentials-7.0.3.tgz#686fd155a02133eedcc5362dc8b5056cde3e5a38"
@@ -13981,7 +11006,7 @@ tunnel-agent@^0.6.0:
dependencies:
safe-buffer "^5.0.1"
-tweetnacl-util@^0.15.0, tweetnacl-util@^0.15.1:
+tweetnacl-util@^0.15.1:
version "0.15.1"
resolved "https://registry.yarnpkg.com/tweetnacl-util/-/tweetnacl-util-0.15.1.tgz#b80fcdb5c97bcc508be18c44a4be50f022eea00b"
integrity sha512-RKJBIj8lySrShN4w6i/BonWp2Z/uxwC3h4y7xsRrpP59ZboCd0GpEVsOnMDYLMmKBpYhb5TgHzZXy7wTfYFBRw==
@@ -13991,7 +11016,7 @@ tweetnacl@^0.14.3, tweetnacl@~0.14.0:
resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64"
integrity sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==
-tweetnacl@^1.0.0, tweetnacl@^1.0.3:
+tweetnacl@^1.0.3:
version "1.0.3"
resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-1.0.3.tgz#ac0af71680458d8a6378d0d0d050ab1407d35596"
integrity sha512-6rt+RN7aOi1nGMyC4Xa5DdYiukl2UWCbcJft7YhxReBGQD7OAM8Pbxw6YMo4r2diNEA8FEmu32YOn9rhaiE5yw==
@@ -14035,49 +11060,34 @@ type-fest@^1.0.1:
resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-1.4.0.tgz#e9fb813fe3bf1744ec359d55d1affefa76f14be1"
integrity sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==
-type-is@~1.6.18:
- version "1.6.18"
- resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.18.tgz#4e552cd05df09467dcbc4ef739de89f2cf37c131"
- integrity sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==
- dependencies:
- media-typer "0.3.0"
- mime-types "~2.1.24"
-
-type@^1.0.1:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/type/-/type-1.2.0.tgz#848dd7698dafa3e54a6c479e759c4bc3f18847a0"
- integrity sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg==
-
-type@^2.7.2:
- version "2.7.2"
- resolved "https://registry.yarnpkg.com/type/-/type-2.7.2.tgz#2376a15a3a28b1efa0f5350dcf72d24df6ef98d0"
- integrity sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw==
-
-typechain@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/typechain/-/typechain-3.0.0.tgz#d5a47700831f238e43f7429b987b4bb54849b92e"
- integrity sha512-ft4KVmiN3zH4JUFu2WJBrwfHeDf772Tt2d8bssDTo/YcckKW2D+OwFrHXRC6hJvO3mHjFQTihoMV6fJOi0Hngg==
+typechain@^4.0.0:
+ version "4.0.3"
+ resolved "https://registry.yarnpkg.com/typechain/-/typechain-4.0.3.tgz#e8fcd6c984676858c64eeeb155ea783a10b73779"
+ integrity sha512-tmoHQeXZWHxIdeLK+i6dU0CU0vOd9Cndr3jFTZIMzak5/YpFZ8XoiYpTZcngygGBqZo+Z1EUmttLbW9KkFZLgQ==
dependencies:
command-line-args "^4.0.7"
debug "^4.1.1"
fs-extra "^7.0.0"
js-sha3 "^0.8.0"
lodash "^4.17.15"
- ts-essentials "^6.0.3"
+ ts-essentials "^7.0.1"
ts-generator "^0.1.1"
-typechain@^4.0.0:
- version "4.0.3"
- resolved "https://registry.yarnpkg.com/typechain/-/typechain-4.0.3.tgz#e8fcd6c984676858c64eeeb155ea783a10b73779"
- integrity sha512-tmoHQeXZWHxIdeLK+i6dU0CU0vOd9Cndr3jFTZIMzak5/YpFZ8XoiYpTZcngygGBqZo+Z1EUmttLbW9KkFZLgQ==
+typechain@^8.0.0:
+ version "8.3.2"
+ resolved "https://registry.yarnpkg.com/typechain/-/typechain-8.3.2.tgz#1090dd8d9c57b6ef2aed3640a516bdbf01b00d73"
+ integrity sha512-x/sQYr5w9K7yv3es7jo4KTX05CLxOf7TRWwoHlrjRh8H82G64g+k7VuWPJlgMo6qrjfCulOdfBjiaDtmhFYD/Q==
dependencies:
- command-line-args "^4.0.7"
- debug "^4.1.1"
+ "@types/prettier" "^2.1.1"
+ debug "^4.3.1"
fs-extra "^7.0.0"
+ glob "7.1.7"
js-sha3 "^0.8.0"
lodash "^4.17.15"
+ mkdirp "^1.0.4"
+ prettier "^2.3.1"
+ ts-command-line-args "^2.2.0"
ts-essentials "^7.0.1"
- ts-generator "^0.1.1"
typed-array-buffer@^1.0.0:
version "1.0.0"
@@ -14140,28 +11150,21 @@ typescript@^5.2.2:
resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.3.3.tgz#b3ce6ba258e72e6305ba66f5c9b452aaee3ffe37"
integrity sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw==
-typewise-core@^1.2, typewise-core@^1.2.0:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/typewise-core/-/typewise-core-1.2.0.tgz#97eb91805c7f55d2f941748fa50d315d991ef195"
- integrity sha512-2SCC/WLzj2SbUwzFOzqMCkz5amXLlxtJqDKTICqg30x+2DZxcfZN2MvQZmGfXWKNWaKK9pBPsvkcwv8bF/gxKg==
-
-typewise@^1.0.3:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/typewise/-/typewise-1.0.3.tgz#1067936540af97937cc5dcf9922486e9fa284651"
- integrity sha512-aXofE06xGhaQSPzt8hlTY+/YWQhm9P0jYUp1f2XtmW/3Bk0qzXcyFWAtPoo2uTGQj1ZwbDuSyuxicq+aDo8lCQ==
- dependencies:
- typewise-core "^1.2.0"
-
-typewiselite@~1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/typewiselite/-/typewiselite-1.0.0.tgz#c8882fa1bb1092c06005a97f34ef5c8508e3664e"
- integrity sha512-J9alhjVHupW3Wfz6qFRGgQw0N3gr8hOkw6zm7FZ6UR1Cse/oD9/JVok7DNE9TT9IbciDHX2Ex9+ksE6cRmtymw==
-
typical@^2.6.0, typical@^2.6.1:
version "2.6.1"
resolved "https://registry.yarnpkg.com/typical/-/typical-2.6.1.tgz#5c080e5d661cbbe38259d2e70a3c7253e873881d"
integrity sha512-ofhi8kjIje6npGozTip9Fr8iecmYfEbS06i0JnIg+rh51KakryWF4+jX8lLKZVhy6N+ID45WYSFCxPOdTWCzNg==
+typical@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/typical/-/typical-4.0.0.tgz#cbeaff3b9d7ae1e2bbfaf5a4e6f11eccfde94fc4"
+ integrity sha512-VAH4IvQ7BDFYglMd7BPRDfLgxZZX4O4TFcRDA6EN5X7erNJJq+McIEp8np9aVtxrCJ6qx4GTYVfOWNjcqwZgRw==
+
+typical@^5.2.0:
+ version "5.2.0"
+ resolved "https://registry.yarnpkg.com/typical/-/typical-5.2.0.tgz#4daaac4f2b5315460804f0acf6cb69c52bb93066"
+ integrity sha512-dvdQgNDNJo+8B2uBQoqdb11eUCE1JQXhvjC/CZtgvZseVd5TYMXnq0+vuUemXbd/Se29cTaUuPX3YIc2xgbvIg==
+
uc.micro@^1.0.1, uc.micro@^1.0.5:
version "1.0.6"
resolved "https://registry.yarnpkg.com/uc.micro/-/uc.micro-1.0.6.tgz#9c411a802a409a91fc6cf74081baba34b24499ac"
@@ -14172,11 +11175,6 @@ uglify-js@^3.1.4:
resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.17.4.tgz#61678cf5fa3f5b7eb789bb345df29afb8257c22c"
integrity sha512-T9q82TJI9e/C1TAxYvfb16xO120tMVFZrGA3f9/P4424DNu6ypK103y0GPFVa17yotwSyZW5iYXgjYHkGrJW/g==
-ultron@~1.1.0:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/ultron/-/ultron-1.1.1.tgz#9fe1536a10a664a65266a1e3ccf85fd36302bc9c"
- integrity sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og==
-
unbox-primitive@^1.0.2:
version "1.0.2"
resolved "https://registry.yarnpkg.com/unbox-primitive/-/unbox-primitive-1.0.2.tgz#29032021057d5e6cdbd08c5129c226dff8ed6f9e"
@@ -14187,11 +11185,6 @@ unbox-primitive@^1.0.2:
has-symbols "^1.0.3"
which-boxed-primitive "^1.0.2"
-underscore@1.9.1:
- version "1.9.1"
- resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.9.1.tgz#06dce34a0e68a7babc29b365b8e74b8925203961"
- integrity sha512-5/4etnCkd9c8gwgowi5/om/mYO5ajCaOgdzj/oW+0eQV9WxKBDZw5+ycmKmeaTXjInS/W0BzpGLo2xR2aBwZdg==
-
undici-types@~5.26.4:
version "5.26.5"
resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-5.26.5.tgz#bcd539893d00b56e964fd2657a4866b221a65617"
@@ -14204,16 +11197,6 @@ undici@^5.14.0:
dependencies:
"@fastify/busboy" "^2.0.0"
-union-value@^1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.1.tgz#0b6fe7b835aecda61c6ea4d4f02c14221e109847"
- integrity sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==
- dependencies:
- arr-union "^3.1.0"
- get-value "^2.0.6"
- is-extendable "^0.1.1"
- set-value "^2.0.1"
-
unique-string@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/unique-string/-/unique-string-3.0.0.tgz#84a1c377aff5fd7a8bc6b55d8244b2bd90d75b9a"
@@ -14231,24 +11214,11 @@ universalify@^2.0.0:
resolved "https://registry.yarnpkg.com/universalify/-/universalify-2.0.1.tgz#168efc2180964e6386d061e094df61afe239b18d"
integrity sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==
-unorm@^1.3.3:
- version "1.6.0"
- resolved "https://registry.yarnpkg.com/unorm/-/unorm-1.6.0.tgz#029b289661fba714f1a9af439eb51d9b16c205af"
- integrity sha512-b2/KCUlYZUeA7JFUuRJZPUtr4gZvBh7tavtv4fvk4+KV9pfGiR6CQAQAWl49ZpR3ts2dk4FYkP7EIgDJoiOLDA==
-
-unpipe@1.0.0, unpipe@~1.0.0:
+unpipe@1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec"
integrity sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==
-unset-value@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/unset-value/-/unset-value-1.0.0.tgz#8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559"
- integrity sha512-PcA2tsuGSF9cnySLHTLSh2qrQiJ70mn+r+Glzxv2TWZblxsxCC52BDlZoPCsz7STd9pN7EZetkWZBAvk4cgZdQ==
- dependencies:
- has-value "^0.3.1"
- isobject "^3.0.0"
-
untildify@^3.0.3:
version "3.0.3"
resolved "https://registry.yarnpkg.com/untildify/-/untildify-3.0.3.tgz#1e7b42b140bcfd922b22e70ca1265bfe3634c7c9"
@@ -14274,23 +11244,6 @@ uri-js@^4.2.2:
dependencies:
punycode "^2.1.0"
-urix@^0.1.0:
- version "0.1.0"
- resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72"
- integrity sha512-Am1ousAhSLBeB9cG/7k7r2R0zj50uDRlZHPGbazid5s9rlF1F/QKYObEKSIunSjIOkJZqwRRLpvewjEkM7pSqg==
-
-url-parse-lax@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/url-parse-lax/-/url-parse-lax-3.0.0.tgz#16b5cafc07dbe3676c1b1999177823d6503acb0c"
- integrity sha512-NjFKA0DidqPa5ciFcSrXnAltTtzz84ogy+NebPvfEgAck0+TNg4UJ4IN+fB7zRZfbgUf0syOo9MDxFkDSMuFaQ==
- dependencies:
- prepend-http "^2.0.0"
-
-url-set-query@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/url-set-query/-/url-set-query-1.0.0.tgz#016e8cfd7c20ee05cafe7795e892bd0702faa339"
- integrity sha512-3AChu4NiXquPfeckE5R5cGdiHCMWJx1dwCWOmWIL4KHAziJNOFIYJlpGFeKDvwLPHovZRCxK3cYlwzqI9Vp+Gg==
-
url@^0.11.0:
version "0.11.3"
resolved "https://registry.yarnpkg.com/url/-/url-0.11.3.tgz#6f495f4b935de40ce4a0a52faee8954244f3d3ad"
@@ -14299,19 +11252,14 @@ url@^0.11.0:
punycode "^1.4.1"
qs "^6.11.2"
-use@^3.1.0:
- version "3.1.1"
- resolved "https://registry.yarnpkg.com/use/-/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f"
- integrity sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==
-
-utf-8-validate@^5.0.2:
- version "5.0.10"
- resolved "https://registry.yarnpkg.com/utf-8-validate/-/utf-8-validate-5.0.10.tgz#d7d10ea39318171ca982718b6b96a8d2442571a2"
- integrity sha512-Z6czzLq4u8fPOyx7TU6X3dvUZVvoJmxSQ+IcrlmagKhilxlhZgxPK6C5Jqbkw1IDUmFTM+cz9QDnnLTwDz/2gQ==
+utf-8-validate@5.0.7:
+ version "5.0.7"
+ resolved "https://registry.yarnpkg.com/utf-8-validate/-/utf-8-validate-5.0.7.tgz#c15a19a6af1f7ad9ec7ddc425747ca28c3644922"
+ integrity sha512-vLt1O5Pp+flcArHGIyKEQq883nBt8nN8tVBcoL0qUXj2XT1n7p70yGIq2VK98I5FdZ1YHc0wk/koOnHjnXWk1Q==
dependencies:
node-gyp-build "^4.3.0"
-utf8@3.0.0, utf8@^3.0.0:
+utf8@3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/utf8/-/utf8-3.0.0.tgz#f052eed1364d696e769ef058b183df88c87f69d1"
integrity sha512-E8VjFIQ/TyQgp+TZfS6l8yp/xWppSAHzidGiRrqe4bK4XP9pTRyKFgGJpO3SN7zdX4DeomTrwaseCHovfpFcqQ==
@@ -14321,19 +11269,6 @@ util-deprecate@^1.0.1, util-deprecate@~1.0.1:
resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==
-util.promisify@^1.0.0:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/util.promisify/-/util.promisify-1.1.2.tgz#02b3dbadbb80071eee4c43aed58747afdfc516db"
- integrity sha512-PBdZ03m1kBnQ5cjjO0ZvJMJS+QsbyIcFwi4hY4U76OQsCO9JrOYjbCFgIF76ccFg9xnJo7ZHPkqyj1GqmdS7MA==
- dependencies:
- call-bind "^1.0.2"
- define-properties "^1.2.0"
- for-each "^0.3.3"
- has-proto "^1.0.1"
- has-symbols "^1.0.3"
- object.getownpropertydescriptors "^2.1.6"
- safe-array-concat "^1.0.0"
-
util@^0.10.3:
version "0.10.4"
resolved "https://registry.yarnpkg.com/util/-/util-0.10.4.tgz#3aa0125bfe668a4672de58857d3ace27ecb76901"
@@ -14341,16 +11276,6 @@ util@^0.10.3:
dependencies:
inherits "2.0.3"
-utils-merge@1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713"
- integrity sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==
-
-uuid@3.3.2:
- version "3.3.2"
- resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.3.2.tgz#1b4af4955eb3077c501c23872fc6513811587131"
- integrity sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==
-
uuid@^3.3.2:
version "3.4.0"
resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee"
@@ -14388,16 +11313,6 @@ validate-npm-package-license@^3.0.1:
spdx-correct "^3.0.0"
spdx-expression-parse "^3.0.0"
-varint@^5.0.0:
- version "5.0.2"
- resolved "https://registry.yarnpkg.com/varint/-/varint-5.0.2.tgz#5b47f8a947eb668b848e034dcfa87d0ff8a7f7a4"
- integrity sha512-lKxKYG6H03yCZUpAGOPOsMcGxd1RHCu1iKvEHYDPmTyq2HueGhD73ssNBqqQWfvYs04G9iUFRvmAVLW20Jw6ow==
-
-vary@^1, vary@~1.1.2:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc"
- integrity sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==
-
verror@1.10.0:
version "1.10.0"
resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400"
@@ -14429,259 +11344,7 @@ weak-map@~1.0.x:
resolved "https://registry.yarnpkg.com/weak-map/-/weak-map-1.0.8.tgz#394c18a9e8262e790544ed8b55c6a4ddad1cb1a3"
integrity sha512-lNR9aAefbGPpHO7AEnY0hCFjz1eTkWCXYvkTRrTHs9qv8zJp+SkVYpzfLIFXQQiG3tVvbNFQgVg2bQS8YGgxyw==
-web3-bzz@1.2.11:
- version "1.2.11"
- resolved "https://registry.yarnpkg.com/web3-bzz/-/web3-bzz-1.2.11.tgz#41bc19a77444bd5365744596d778b811880f707f"
- integrity sha512-XGpWUEElGypBjeFyUhTkiPXFbDVD6Nr/S5jznE3t8cWUA0FxRf1n3n/NuIZeb0H9RkN2Ctd/jNma/k8XGa3YKg==
- dependencies:
- "@types/node" "^12.12.6"
- got "9.6.0"
- swarm-js "^0.1.40"
- underscore "1.9.1"
-
-web3-core-helpers@1.2.11:
- version "1.2.11"
- resolved "https://registry.yarnpkg.com/web3-core-helpers/-/web3-core-helpers-1.2.11.tgz#84c681ed0b942c0203f3b324a245a127e8c67a99"
- integrity sha512-PEPoAoZd5ME7UfbnCZBdzIerpe74GEvlwT4AjOmHeCVZoIFk7EqvOZDejJHt+feJA6kMVTdd0xzRNN295UhC1A==
- dependencies:
- underscore "1.9.1"
- web3-eth-iban "1.2.11"
- web3-utils "1.2.11"
-
-web3-core-method@1.2.11:
- version "1.2.11"
- resolved "https://registry.yarnpkg.com/web3-core-method/-/web3-core-method-1.2.11.tgz#f880137d1507a0124912bf052534f168b8d8fbb6"
- integrity sha512-ff0q76Cde94HAxLDZ6DbdmKniYCQVtvuaYh+rtOUMB6kssa5FX0q3vPmixi7NPooFnbKmmZCM6NvXg4IreTPIw==
- dependencies:
- "@ethersproject/transactions" "^5.0.0-beta.135"
- underscore "1.9.1"
- web3-core-helpers "1.2.11"
- web3-core-promievent "1.2.11"
- web3-core-subscriptions "1.2.11"
- web3-utils "1.2.11"
-
-web3-core-promievent@1.2.11:
- version "1.2.11"
- resolved "https://registry.yarnpkg.com/web3-core-promievent/-/web3-core-promievent-1.2.11.tgz#51fe97ca0ddec2f99bf8c3306a7a8e4b094ea3cf"
- integrity sha512-il4McoDa/Ox9Agh4kyfQ8Ak/9ABYpnF8poBLL33R/EnxLsJOGQG2nZhkJa3I067hocrPSjEdlPt/0bHXsln4qA==
- dependencies:
- eventemitter3 "4.0.4"
-
-web3-core-requestmanager@1.2.11:
- version "1.2.11"
- resolved "https://registry.yarnpkg.com/web3-core-requestmanager/-/web3-core-requestmanager-1.2.11.tgz#fe6eb603fbaee18530293a91f8cf26d8ae28c45a"
- integrity sha512-oFhBtLfOiIbmfl6T6gYjjj9igOvtyxJ+fjS+byRxiwFJyJ5BQOz4/9/17gWR1Cq74paTlI7vDGxYfuvfE/mKvA==
- dependencies:
- underscore "1.9.1"
- web3-core-helpers "1.2.11"
- web3-providers-http "1.2.11"
- web3-providers-ipc "1.2.11"
- web3-providers-ws "1.2.11"
-
-web3-core-subscriptions@1.2.11:
- version "1.2.11"
- resolved "https://registry.yarnpkg.com/web3-core-subscriptions/-/web3-core-subscriptions-1.2.11.tgz#beca908fbfcb050c16f45f3f0f4c205e8505accd"
- integrity sha512-qEF/OVqkCvQ7MPs1JylIZCZkin0aKK9lDxpAtQ1F8niEDGFqn7DT8E/vzbIa0GsOjL2fZjDhWJsaW+BSoAW1gg==
- dependencies:
- eventemitter3 "4.0.4"
- underscore "1.9.1"
- web3-core-helpers "1.2.11"
-
-web3-core@1.2.11:
- version "1.2.11"
- resolved "https://registry.yarnpkg.com/web3-core/-/web3-core-1.2.11.tgz#1043cacc1becb80638453cc5b2a14be9050288a7"
- integrity sha512-CN7MEYOY5ryo5iVleIWRE3a3cZqVaLlIbIzDPsvQRUfzYnvzZQRZBm9Mq+ttDi2STOOzc1MKylspz/o3yq/LjQ==
- dependencies:
- "@types/bn.js" "^4.11.5"
- "@types/node" "^12.12.6"
- bignumber.js "^9.0.0"
- web3-core-helpers "1.2.11"
- web3-core-method "1.2.11"
- web3-core-requestmanager "1.2.11"
- web3-utils "1.2.11"
-
-web3-eth-abi@1.2.11:
- version "1.2.11"
- resolved "https://registry.yarnpkg.com/web3-eth-abi/-/web3-eth-abi-1.2.11.tgz#a887494e5d447c2926d557a3834edd66e17af9b0"
- integrity sha512-PkRYc0+MjuLSgg03QVWqWlQivJqRwKItKtEpRUaxUAeLE7i/uU39gmzm2keHGcQXo3POXAbOnMqkDvOep89Crg==
- dependencies:
- "@ethersproject/abi" "5.0.0-beta.153"
- underscore "1.9.1"
- web3-utils "1.2.11"
-
-web3-eth-accounts@1.2.11:
- version "1.2.11"
- resolved "https://registry.yarnpkg.com/web3-eth-accounts/-/web3-eth-accounts-1.2.11.tgz#a9e3044da442d31903a7ce035a86d8fa33f90520"
- integrity sha512-6FwPqEpCfKIh3nSSGeo3uBm2iFSnFJDfwL3oS9pyegRBXNsGRVpgiW63yhNzL0796StsvjHWwQnQHsZNxWAkGw==
- dependencies:
- crypto-browserify "3.12.0"
- eth-lib "0.2.8"
- ethereumjs-common "^1.3.2"
- ethereumjs-tx "^2.1.1"
- scrypt-js "^3.0.1"
- underscore "1.9.1"
- uuid "3.3.2"
- web3-core "1.2.11"
- web3-core-helpers "1.2.11"
- web3-core-method "1.2.11"
- web3-utils "1.2.11"
-
-web3-eth-contract@1.2.11:
- version "1.2.11"
- resolved "https://registry.yarnpkg.com/web3-eth-contract/-/web3-eth-contract-1.2.11.tgz#917065902bc27ce89da9a1da26e62ef663663b90"
- integrity sha512-MzYuI/Rq2o6gn7vCGcnQgco63isPNK5lMAan2E51AJLknjSLnOxwNY3gM8BcKoy4Z+v5Dv00a03Xuk78JowFow==
- dependencies:
- "@types/bn.js" "^4.11.5"
- underscore "1.9.1"
- web3-core "1.2.11"
- web3-core-helpers "1.2.11"
- web3-core-method "1.2.11"
- web3-core-promievent "1.2.11"
- web3-core-subscriptions "1.2.11"
- web3-eth-abi "1.2.11"
- web3-utils "1.2.11"
-
-web3-eth-ens@1.2.11:
- version "1.2.11"
- resolved "https://registry.yarnpkg.com/web3-eth-ens/-/web3-eth-ens-1.2.11.tgz#26d4d7f16d6cbcfff918e39832b939edc3162532"
- integrity sha512-dbW7dXP6HqT1EAPvnniZVnmw6TmQEKF6/1KgAxbo8iBBYrVTMDGFQUUnZ+C4VETGrwwaqtX4L9d/FrQhZ6SUiA==
- dependencies:
- content-hash "^2.5.2"
- eth-ens-namehash "2.0.8"
- underscore "1.9.1"
- web3-core "1.2.11"
- web3-core-helpers "1.2.11"
- web3-core-promievent "1.2.11"
- web3-eth-abi "1.2.11"
- web3-eth-contract "1.2.11"
- web3-utils "1.2.11"
-
-web3-eth-iban@1.2.11:
- version "1.2.11"
- resolved "https://registry.yarnpkg.com/web3-eth-iban/-/web3-eth-iban-1.2.11.tgz#f5f73298305bc7392e2f188bf38a7362b42144ef"
- integrity sha512-ozuVlZ5jwFC2hJY4+fH9pIcuH1xP0HEFhtWsR69u9uDIANHLPQQtWYmdj7xQ3p2YT4bQLq/axKhZi7EZVetmxQ==
- dependencies:
- bn.js "^4.11.9"
- web3-utils "1.2.11"
-
-web3-eth-personal@1.2.11:
- version "1.2.11"
- resolved "https://registry.yarnpkg.com/web3-eth-personal/-/web3-eth-personal-1.2.11.tgz#a38b3942a1d87a62070ce0622a941553c3d5aa70"
- integrity sha512-42IzUtKq9iHZ8K9VN0vAI50iSU9tOA1V7XU2BhF/tb7We2iKBVdkley2fg26TxlOcKNEHm7o6HRtiiFsVK4Ifw==
- dependencies:
- "@types/node" "^12.12.6"
- web3-core "1.2.11"
- web3-core-helpers "1.2.11"
- web3-core-method "1.2.11"
- web3-net "1.2.11"
- web3-utils "1.2.11"
-
-web3-eth@1.2.11:
- version "1.2.11"
- resolved "https://registry.yarnpkg.com/web3-eth/-/web3-eth-1.2.11.tgz#4c81fcb6285b8caf544058fba3ae802968fdc793"
- integrity sha512-REvxW1wJ58AgHPcXPJOL49d1K/dPmuw4LjPLBPStOVkQjzDTVmJEIsiLwn2YeuNDd4pfakBwT8L3bz1G1/wVsQ==
- dependencies:
- underscore "1.9.1"
- web3-core "1.2.11"
- web3-core-helpers "1.2.11"
- web3-core-method "1.2.11"
- web3-core-subscriptions "1.2.11"
- web3-eth-abi "1.2.11"
- web3-eth-accounts "1.2.11"
- web3-eth-contract "1.2.11"
- web3-eth-ens "1.2.11"
- web3-eth-iban "1.2.11"
- web3-eth-personal "1.2.11"
- web3-net "1.2.11"
- web3-utils "1.2.11"
-
-web3-net@1.2.11:
- version "1.2.11"
- resolved "https://registry.yarnpkg.com/web3-net/-/web3-net-1.2.11.tgz#eda68ef25e5cdb64c96c39085cdb74669aabbe1b"
- integrity sha512-sjrSDj0pTfZouR5BSTItCuZ5K/oZPVdVciPQ6981PPPIwJJkCMeVjD7I4zO3qDPCnBjBSbWvVnLdwqUBPtHxyg==
- dependencies:
- web3-core "1.2.11"
- web3-core-method "1.2.11"
- web3-utils "1.2.11"
-
-web3-provider-engine@14.2.1:
- version "14.2.1"
- resolved "https://registry.yarnpkg.com/web3-provider-engine/-/web3-provider-engine-14.2.1.tgz#ef351578797bf170e08d529cb5b02f8751329b95"
- integrity sha512-iSv31h2qXkr9vrL6UZDm4leZMc32SjWJFGOp/D92JXfcEboCqraZyuExDkpxKw8ziTufXieNM7LSXNHzszYdJw==
- dependencies:
- async "^2.5.0"
- backoff "^2.5.0"
- clone "^2.0.0"
- cross-fetch "^2.1.0"
- eth-block-tracker "^3.0.0"
- eth-json-rpc-infura "^3.1.0"
- eth-sig-util "^1.4.2"
- ethereumjs-block "^1.2.2"
- ethereumjs-tx "^1.2.0"
- ethereumjs-util "^5.1.5"
- ethereumjs-vm "^2.3.4"
- json-rpc-error "^2.0.0"
- json-stable-stringify "^1.0.1"
- promise-to-callback "^1.0.0"
- readable-stream "^2.2.9"
- request "^2.85.0"
- semaphore "^1.0.3"
- ws "^5.1.1"
- xhr "^2.2.0"
- xtend "^4.0.1"
-
-web3-providers-http@1.2.11:
- version "1.2.11"
- resolved "https://registry.yarnpkg.com/web3-providers-http/-/web3-providers-http-1.2.11.tgz#1cd03442c61670572d40e4dcdf1faff8bd91e7c6"
- integrity sha512-psh4hYGb1+ijWywfwpB2cvvOIMISlR44F/rJtYkRmQ5jMvG4FOCPlQJPiHQZo+2cc3HbktvvSJzIhkWQJdmvrA==
- dependencies:
- web3-core-helpers "1.2.11"
- xhr2-cookies "1.1.0"
-
-web3-providers-ipc@1.2.11:
- version "1.2.11"
- resolved "https://registry.yarnpkg.com/web3-providers-ipc/-/web3-providers-ipc-1.2.11.tgz#d16d6c9be1be6e0b4f4536c4acc16b0f4f27ef21"
- integrity sha512-yhc7Y/k8hBV/KlELxynWjJDzmgDEDjIjBzXK+e0rHBsYEhdCNdIH5Psa456c+l0qTEU2YzycF8VAjYpWfPnBpQ==
- dependencies:
- oboe "2.1.4"
- underscore "1.9.1"
- web3-core-helpers "1.2.11"
-
-web3-providers-ws@1.2.11:
- version "1.2.11"
- resolved "https://registry.yarnpkg.com/web3-providers-ws/-/web3-providers-ws-1.2.11.tgz#a1dfd6d9778d840561d9ec13dd453046451a96bb"
- integrity sha512-ZxnjIY1Er8Ty+cE4migzr43zA/+72AF1myzsLaU5eVgdsfV7Jqx7Dix1hbevNZDKFlSoEyq/3j/jYalh3So1Zg==
- dependencies:
- eventemitter3 "4.0.4"
- underscore "1.9.1"
- web3-core-helpers "1.2.11"
- websocket "^1.0.31"
-
-web3-shh@1.2.11:
- version "1.2.11"
- resolved "https://registry.yarnpkg.com/web3-shh/-/web3-shh-1.2.11.tgz#f5d086f9621c9a47e98d438010385b5f059fd88f"
- integrity sha512-B3OrO3oG1L+bv3E1sTwCx66injW1A8hhwpknDUbV+sw3fehFazA06z9SGXUefuFI1kVs4q2vRi0n4oCcI4dZDg==
- dependencies:
- web3-core "1.2.11"
- web3-core-method "1.2.11"
- web3-core-subscriptions "1.2.11"
- web3-net "1.2.11"
-
-web3-utils@1.2.11:
- version "1.2.11"
- resolved "https://registry.yarnpkg.com/web3-utils/-/web3-utils-1.2.11.tgz#af1942aead3fb166ae851a985bed8ef2c2d95a82"
- integrity sha512-3Tq09izhD+ThqHEaWYX4VOT7dNPdZiO+c/1QMA0s5X2lDFKK/xHJb7cyTRRVzN2LvlHbR7baS1tmQhSua51TcQ==
- dependencies:
- bn.js "^4.11.9"
- eth-lib "0.2.8"
- ethereum-bloom-filters "^1.0.6"
- ethjs-unit "0.1.6"
- number-to-bn "1.7.0"
- randombytes "^2.1.0"
- underscore "1.9.1"
- utf8 "3.0.0"
-
-web3-utils@^1.0.0-beta.31, web3-utils@^1.3.4, web3-utils@^1.3.6:
+web3-utils@^1.3.4, web3-utils@^1.3.6:
version "1.10.3"
resolved "https://registry.yarnpkg.com/web3-utils/-/web3-utils-1.10.3.tgz#f1db99c82549c7d9f8348f04ffe4e0188b449714"
integrity sha512-OqcUrEE16fDBbGoQtZXWdavsPzbGIDc5v3VrRTZ0XrIpefC/viZ1ZU9bGEemazyS0catk/3rkOOxpzTfY+XsyQ==
@@ -14695,53 +11358,11 @@ web3-utils@^1.0.0-beta.31, web3-utils@^1.3.4, web3-utils@^1.3.6:
randombytes "^2.1.0"
utf8 "3.0.0"
-web3@1.2.11:
- version "1.2.11"
- resolved "https://registry.yarnpkg.com/web3/-/web3-1.2.11.tgz#50f458b2e8b11aa37302071c170ed61cff332975"
- integrity sha512-mjQ8HeU41G6hgOYm1pmeH0mRAeNKJGnJEUzDMoerkpw7QUQT4exVREgF1MYPvL/z6vAshOXei25LE/t/Bxl8yQ==
- dependencies:
- web3-bzz "1.2.11"
- web3-core "1.2.11"
- web3-eth "1.2.11"
- web3-eth-personal "1.2.11"
- web3-net "1.2.11"
- web3-shh "1.2.11"
- web3-utils "1.2.11"
-
webidl-conversions@^3.0.0:
version "3.0.1"
resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871"
integrity sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==
-websocket@1.0.32:
- version "1.0.32"
- resolved "https://registry.yarnpkg.com/websocket/-/websocket-1.0.32.tgz#1f16ddab3a21a2d929dec1687ab21cfdc6d3dbb1"
- integrity sha512-i4yhcllSP4wrpoPMU2N0TQ/q0O94LRG/eUQjEAamRltjQ1oT1PFFKOG4i877OlJgCG8rw6LrrowJp+TYCEWF7Q==
- dependencies:
- bufferutil "^4.0.1"
- debug "^2.2.0"
- es5-ext "^0.10.50"
- typedarray-to-buffer "^3.1.5"
- utf-8-validate "^5.0.2"
- yaeti "^0.0.6"
-
-websocket@^1.0.31:
- version "1.0.34"
- resolved "https://registry.yarnpkg.com/websocket/-/websocket-1.0.34.tgz#2bdc2602c08bf2c82253b730655c0ef7dcab3111"
- integrity sha512-PRDso2sGwF6kM75QykIesBijKSVceR6jL2G8NGYyq2XrItNC2P5/qL5XeR056GhA+Ly7JMFvJb9I312mJfmqnQ==
- dependencies:
- bufferutil "^4.0.1"
- debug "^2.2.0"
- es5-ext "^0.10.50"
- typedarray-to-buffer "^3.1.5"
- utf-8-validate "^5.0.2"
- yaeti "^0.0.6"
-
-whatwg-fetch@^2.0.4:
- version "2.0.4"
- resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-2.0.4.tgz#dde6a5df315f9d39991aa17621853d720b85566f"
- integrity sha512-dcQ1GWpOD/eEQ97k66aiEVpNnapVj90/+R+SXTPYGHpYBBypfKJEQjLrvMZ7YXbKm21gXd4NcuxUTjiv1YtLng==
-
whatwg-url@^5.0.0:
version "5.0.0"
resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-5.0.0.tgz#966454e8765462e37644d3626f6742ce8b70965d"
@@ -14761,11 +11382,6 @@ which-boxed-primitive@^1.0.2:
is-string "^1.0.5"
is-symbol "^1.0.3"
-which-module@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/which-module/-/which-module-1.0.0.tgz#bba63ca861948994ff307736089e3b96026c2a4f"
- integrity sha512-F6+WgncZi/mJDrammbTuHe1q0R5hOXv/mBaiNA2TCNT/LTHusX0V+CJnj9XT8ki5ln2UZyyddDgHfCzyrOH7MQ==
-
which-typed-array@^1.1.11, which-typed-array@^1.1.13:
version "1.1.13"
resolved "https://registry.yarnpkg.com/which-typed-array/-/which-typed-array-1.1.13.tgz#870cd5be06ddb616f504e7b039c4c24898184d36"
@@ -14791,11 +11407,6 @@ which@^1.1.1, which@^1.2.9, which@^1.3.1:
dependencies:
isexe "^2.0.0"
-window-size@^0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.2.0.tgz#b4315bb4214a3d7058ebeee892e13fa24d98b075"
- integrity sha512-UD7d8HFA2+PZsbKyaOCEy8gMh1oDtHgJh1LfgjQ4zVXmYjAT/kvz3PueITKuqDiIXQe7yzpPnxX3lNc+AhQMyw==
-
word-wrap@~1.2.3:
version "1.2.5"
resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.5.tgz#d2c45c6dd4fbce621a66f136cbe328afd0410b34"
@@ -14806,6 +11417,14 @@ wordwrap@^1.0.0:
resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb"
integrity sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==
+wordwrapjs@^4.0.0:
+ version "4.0.1"
+ resolved "https://registry.yarnpkg.com/wordwrapjs/-/wordwrapjs-4.0.1.tgz#d9790bccfb110a0fc7836b5ebce0937b37a8b98f"
+ integrity sha512-kKlNACbvHrkpIw6oPeYDSmdCTu2hdMHoyXLTcUKala++lx5Y+wjJ/e474Jqv5abnVmwxw08DiTuHmw69lJGksA==
+ dependencies:
+ reduce-flatten "^2.0.0"
+ typical "^5.2.0"
+
workerpool@6.2.0:
version "6.2.0"
resolved "https://registry.yarnpkg.com/workerpool/-/workerpool-6.2.0.tgz#827d93c9ba23ee2019c3ffaff5c27fccea289e8b"
@@ -14816,15 +11435,7 @@ workerpool@6.2.1:
resolved "https://registry.yarnpkg.com/workerpool/-/workerpool-6.2.1.tgz#46fc150c17d826b86a008e5a4508656777e9c343"
integrity sha512-ILEIE97kDZvF9Wb9f6h5aXK4swSlKGUcOEGiIYb2OOu/IrDU9iwj0fD//SsA6E5ibwJxpEvhullJY4Sl4GcpAw==
-wrap-ansi@^2.0.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-2.1.0.tgz#d8fc3d284dd05794fe84973caecdd1cf824fdd85"
- integrity sha512-vAaEaDM946gbNpH5pLVNR+vX2ht6n0Bt3GXwVB1AuAqZosOvHNF3P7wDnh8KLkSqgUh0uh77le7Owgoz+Z9XBw==
- dependencies:
- string-width "^1.0.1"
- strip-ansi "^3.0.1"
-
-wrap-ansi@^7.0.0:
+"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0", wrap-ansi@^7.0.0:
version "7.0.0"
resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43"
integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==
@@ -14833,6 +11444,15 @@ wrap-ansi@^7.0.0:
string-width "^4.1.0"
strip-ansi "^6.0.0"
+wrap-ansi@^8.1.0:
+ version "8.1.0"
+ resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-8.1.0.tgz#56dc22368ee570face1b49819975d9b9a5ead214"
+ integrity sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==
+ dependencies:
+ ansi-styles "^6.1.0"
+ string-width "^5.0.1"
+ strip-ansi "^7.0.1"
+
wrappy@1:
version "1.0.2"
resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
@@ -14861,22 +11481,6 @@ ws@7.4.6:
resolved "https://registry.yarnpkg.com/ws/-/ws-7.4.6.tgz#5654ca8ecdeee47c33a9a4bf6d28e2be2980377c"
integrity sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A==
-ws@^3.0.0:
- version "3.3.3"
- resolved "https://registry.yarnpkg.com/ws/-/ws-3.3.3.tgz#f1cf84fe2d5e901ebce94efaece785f187a228f2"
- integrity sha512-nnWLa/NwZSt4KQJu51MYlCcSQ5g7INpOrOMt4XV8j4dqTXdmlUmSHQ8/oLC069ckre0fRsgfvsKwbTdtKLCDkA==
- dependencies:
- async-limiter "~1.0.0"
- safe-buffer "~5.1.0"
- ultron "~1.1.0"
-
-ws@^5.1.1:
- version "5.2.3"
- resolved "https://registry.yarnpkg.com/ws/-/ws-5.2.3.tgz#05541053414921bc29c63bee14b8b0dd50b07b3d"
- integrity sha512-jZArVERrMsKUatIdnLzqvcfydI85dvd/Fp1u/VOpfdDWQ4c9qWXe+VIeAbQ5FrDwciAkr+lzofXLz3Kuf26AOA==
- dependencies:
- async-limiter "~1.0.0"
-
ws@^7.4.6:
version "7.5.9"
resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.9.tgz#54fa7db29f4c7cec68b1ddd3a89de099942bb591"
@@ -14887,81 +11491,27 @@ xdg-basedir@^5.0.1:
resolved "https://registry.yarnpkg.com/xdg-basedir/-/xdg-basedir-5.1.0.tgz#1efba19425e73be1bc6f2a6ceb52a3d2c884c0c9"
integrity sha512-GCPAHLvrIH13+c0SuacwvRYj2SxJXQ4kaVTT5xgL3kPrz56XxkF21IGhjSE1+W0aw7gpBWRGXLCPnPby6lSpmQ==
-xhr-request-promise@^0.1.2:
- version "0.1.3"
- resolved "https://registry.yarnpkg.com/xhr-request-promise/-/xhr-request-promise-0.1.3.tgz#2d5f4b16d8c6c893be97f1a62b0ed4cf3ca5f96c"
- integrity sha512-YUBytBsuwgitWtdRzXDDkWAXzhdGB8bYm0sSzMPZT7Z2MBjMSTHFsyCT1yCRATY+XC69DUrQraRAEgcoCRaIPg==
- dependencies:
- xhr-request "^1.1.0"
-
-xhr-request@^1.0.1, xhr-request@^1.1.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/xhr-request/-/xhr-request-1.1.0.tgz#f4a7c1868b9f198723444d82dcae317643f2e2ed"
- integrity sha512-Y7qzEaR3FDtL3fP30k9wO/e+FBnBByZeybKOhASsGP30NIkRAAkKD/sCnLvgEfAIEC1rcmK7YG8f4oEnIrrWzA==
- dependencies:
- buffer-to-arraybuffer "^0.0.5"
- object-assign "^4.1.1"
- query-string "^5.0.1"
- simple-get "^2.7.0"
- timed-out "^4.0.1"
- url-set-query "^1.0.0"
- xhr "^2.0.4"
-
-xhr2-cookies@1.1.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/xhr2-cookies/-/xhr2-cookies-1.1.0.tgz#7d77449d0999197f155cb73b23df72505ed89d48"
- integrity sha512-hjXUA6q+jl/bd8ADHcVfFsSPIf+tyLIjuO9TwJC9WI6JP2zKcS7C+p56I9kCLLsaCiNT035iYvEUUzdEFj/8+g==
- dependencies:
- cookiejar "^2.1.1"
-
xhr2@0.1.3:
version "0.1.3"
resolved "https://registry.yarnpkg.com/xhr2/-/xhr2-0.1.3.tgz#cbfc4759a69b4a888e78cf4f20b051038757bd11"
integrity sha512-6RmGK22QwC7yXB1CRwyLWuS2opPcKOlAu0ViAnyZjDlzrEmCKL4kLHkfvB8oMRWeztMsNoDGAjsMZY15w/4tTw==
-xhr@^2.0.4, xhr@^2.2.0, xhr@^2.3.3:
- version "2.6.0"
- resolved "https://registry.yarnpkg.com/xhr/-/xhr-2.6.0.tgz#b69d4395e792b4173d6b7df077f0fc5e4e2b249d"
- integrity sha512-/eCGLb5rxjx5e3mF1A7s+pLlR6CGyqWN91fv1JgER5mVWg1MZmlhBvy9kjcsOdRk8RrIujotWyJamfyrp+WIcA==
- dependencies:
- global "~4.4.0"
- is-function "^1.0.1"
- parse-headers "^2.0.0"
- xtend "^4.0.0"
-
xregexp@3.1.0:
version "3.1.0"
resolved "https://registry.yarnpkg.com/xregexp/-/xregexp-3.1.0.tgz#14d8461e0bdd38224bfee5039a0898fc42fcd336"
integrity sha512-4Y1x6DyB8xRoxosooa6PlGWqmmSKatbzhrftZ7Purmm4B8R4qIEJG1A2hZsdz5DhmIqS0msC0I7KEq93GphEVg==
-xtend@^4.0.0, xtend@^4.0.1, xtend@~4.0.0, xtend@~4.0.1:
+xtend@^4.0.0, xtend@^4.0.1, xtend@^4.0.2, xtend@~4.0.0:
version "4.0.2"
resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54"
integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==
-xtend@~2.1.1:
- version "2.1.2"
- resolved "https://registry.yarnpkg.com/xtend/-/xtend-2.1.2.tgz#6efecc2a4dad8e6962c4901b337ce7ba87b5d28b"
- integrity sha512-vMNKzr2rHP9Dp/e1NQFnLQlwlhp9L/LfvnsVdHxN1f+uggyVI3i08uD14GPvCToPkdsRfyPqIyYGmIk58V98ZQ==
- dependencies:
- object-keys "~0.4.0"
-
-y18n@^3.2.1:
- version "3.2.2"
- resolved "https://registry.yarnpkg.com/y18n/-/y18n-3.2.2.tgz#85c901bd6470ce71fc4bb723ad209b70f7f28696"
- integrity sha512-uGZHXkHnhF0XeeAPgnKfPv1bgKAYyVvmNL1xlKsPYZPaIHxGti2hHqvOCQv71XMsLxu1QjergkqogUnms5D3YQ==
-
y18n@^5.0.5:
version "5.0.8"
resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55"
integrity sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==
-yaeti@^0.0.6:
- version "0.0.6"
- resolved "https://registry.yarnpkg.com/yaeti/-/yaeti-0.0.6.tgz#f26f484d72684cf42bedfb76970aa1608fbf9577"
- integrity sha512-MvQa//+KcZCUkBTIC9blM+CU9J2GzuTytsOUwf2lidtvkx/6gnEp1QvJv34t9vdjhFmha/mUiNDbN0D0mJWdug==
-
-yallist@^3.0.0, yallist@^3.0.2, yallist@^3.1.1:
+yallist@^3.0.2:
version "3.1.1"
resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd"
integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==
@@ -14971,11 +11521,6 @@ yallist@^4.0.0:
resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72"
integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==
-yaml@^1.10.2:
- version "1.10.2"
- resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b"
- integrity sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==
-
yaml@^2.3.4:
version "2.3.4"
resolved "https://registry.yarnpkg.com/yaml/-/yaml-2.3.4.tgz#53fc1d514be80aabf386dc6001eb29bf3b7523b2"
@@ -14986,14 +11531,6 @@ yargs-parser@20.2.4:
resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.4.tgz#b42890f14566796f85ae8e3a25290d205f154a54"
integrity sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA==
-yargs-parser@^2.4.1:
- version "2.4.1"
- resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-2.4.1.tgz#85568de3cf150ff49fa51825f03a8c880ddcc5c4"
- integrity sha512-9pIKIJhnI5tonzG6OnCFlz/yln8xHYcGl+pn3xR0Vzff0vzN1PbNRaelgfgRUwZ3s4i3jvxT9WhmUGL4whnasA==
- dependencies:
- camelcase "^3.0.0"
- lodash.assign "^4.0.6"
-
yargs-parser@^20.2.2:
version "20.2.9"
resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee"
@@ -15040,26 +11577,6 @@ yargs@^17.3.1:
y18n "^5.0.5"
yargs-parser "^21.1.1"
-yargs@^4.7.1:
- version "4.8.1"
- resolved "https://registry.yarnpkg.com/yargs/-/yargs-4.8.1.tgz#c0c42924ca4aaa6b0e6da1739dfb216439f9ddc0"
- integrity sha512-LqodLrnIDM3IFT+Hf/5sxBnEGECrfdC1uIbgZeJmESCSo4HoCAaKEus8MylXHAkdacGc0ye+Qa+dpkuom8uVYA==
- dependencies:
- cliui "^3.2.0"
- decamelize "^1.1.1"
- get-caller-file "^1.0.1"
- lodash.assign "^4.0.3"
- os-locale "^1.4.0"
- read-pkg-up "^1.0.1"
- require-directory "^2.1.1"
- require-main-filename "^1.0.1"
- set-blocking "^2.0.0"
- string-width "^1.0.1"
- which-module "^1.0.0"
- window-size "^0.2.0"
- y18n "^3.2.1"
- yargs-parser "^2.4.1"
-
yn@3.1.1:
version "3.1.1"
resolved "https://registry.yarnpkg.com/yn/-/yn-3.1.1.tgz#1e87401a09d767c1d5eab26a6e4c185182d2eb50"