diff --git a/.config/nextest.toml b/.config/nextest.toml index e24c532..3b9a9aa 100644 --- a/.config/nextest.toml +++ b/.config/nextest.toml @@ -1,3 +1,3 @@ [profile.default] -slow-timeout = { period = "180s", terminate-after = 5, grace-period = "30s" } +slow-timeout = { period = "5h", terminate-after = 5, grace-period = "30s" } diff --git a/.gitignore b/.gitignore index b4b7767..f9daf1c 100644 --- a/.gitignore +++ b/.gitignore @@ -4,3 +4,4 @@ Cargo.lock .vscode *.log tmp_copy* +.idea/ \ No newline at end of file diff --git a/Cargo.toml b/Cargo.toml index 198125f..2667a6c 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -28,8 +28,13 @@ zkevm_test_harness = { version = "=0.150.17", path = "crates/zkevm_test_harness" zkevm-assembly = { version = "=0.150.17", path = "crates/zkEVM-assembly" } # `zksync-crypto` repository -snark_wrapper = "=0.30.10" +#snark_wrapper = "=0.30.10" bellman = { package = "zksync_bellman", version = "=0.30.10" } -boojum = "=0.30.10" +#boojum = "=0.30.10" cs_derive = { package = "zksync_cs_derive", version = "=0.30.10" } +snark_wrapper = { git = "https://github.com/distributed-lab/zksync-crypto.git", branch = "dl-precompiles", package = "snark_wrapper" } +boojum = { git = "https://github.com/distributed-lab/zksync-crypto.git", branch = "dl-precompiles", package = "boojum" } + +#snark_wrapper = { path = "./../zksync-crypto/crates/snark-wrapper" } +#boojum = { path = "./../zksync-crypto/crates/boojum" } diff --git a/crates/circuit_definitions/src/circuit_definitions/base_layer/ecadd.rs b/crates/circuit_definitions/src/circuit_definitions/base_layer/ecadd.rs new file mode 100644 index 0000000..6b8765d --- /dev/null +++ b/crates/circuit_definitions/src/circuit_definitions/base_layer/ecadd.rs @@ -0,0 +1,136 @@ +use crate::zkevm_circuits::bn254::ec_add::input::EcAddCircuitInstanceWitness; +use circuit_encodings::zkevm_circuits::bn254::ec_add::ecadd_function_entry_point; +use derivative::*; + +use super::*; +use crate::boojum::cs::traits::circuit::CircuitBuilder; + +type F = GoldilocksField; +type R = Poseidon2Goldilocks; + +#[derive(Derivative, serde::Serialize, serde::Deserialize)] +#[derivative(Clone, Copy, Debug, Default(bound = ""))] +pub struct ECAddFunctionInstanceSynthesisFunction { + _marker: std::marker::PhantomData<(F, R)>, +} + +impl CircuitBuilder for ECAddFunctionInstanceSynthesisFunction +where + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN]:, + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN]:, + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN]:, + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN]:, + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN + 1]:, +{ + fn geometry() -> CSGeometry { + CSGeometry { + num_columns_under_copy_permutation: 200, + num_witness_columns: 0, + num_constant_columns: 8, + max_allowed_constraint_degree: 4, + } + } + + fn lookup_parameters() -> LookupParameters { + LookupParameters::UseSpecializedColumnsWithTableIdAsConstant { + width: 3, + num_repetitions: 8, + share_table_id: true, + } + } + + fn configure_builder< + T: CsBuilderImpl, + GC: GateConfigurationHolder, + TB: StaticToolboxHolder, + >( + builder: CsBuilder, + ) -> CsBuilder, impl StaticToolboxHolder> { + let builder = builder.allow_lookup(>::lookup_parameters()); + + let builder = ConstantsAllocatorGate::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = FmaGateInBaseFieldWithoutConstant::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = ReductionGate::::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = BooleanConstraintGate::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = UIntXAddGate::<32>::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = UIntXAddGate::<16>::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = UIntXAddGate::<8>::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = SelectionGate::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = ZeroCheckGate::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + false, + ); + let builder = DotProductGate::<4>::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = PublicInputGate::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = + NopGate::configure_builder(builder, GatePlacementStrategy::UseGeneralPurposeColumns); + + builder + } +} + +impl ZkSyncUniformSynthesisFunction for ECAddFunctionInstanceSynthesisFunction +where + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN]:, + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN]:, + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN]:, + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN]:, + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN + 1]:, +{ + type Witness = EcAddCircuitInstanceWitness; + type Config = usize; + type RoundFunction = R; + + fn description() -> String { + "Elliptic Curve Addition".to_string() + } + + fn size_hint() -> (Option, Option) { + (Some(TARGET_CIRCUIT_TRACE_LENGTH), Some(1 << 26)) + } + + fn add_tables>(cs: &mut CS) { + let table = create_xor8_table(); + cs.add_lookup_table::(table); + } + + fn synthesize_into_cs_inner>( + cs: &mut CS, + witness: Self::Witness, + round_function: &Self::RoundFunction, + config: Self::Config, + ) -> [Num; INPUT_OUTPUT_COMMITMENT_LENGTH] { + ecadd_function_entry_point(cs, witness, round_function, config) + } +} diff --git a/crates/circuit_definitions/src/circuit_definitions/base_layer/ecmul.rs b/crates/circuit_definitions/src/circuit_definitions/base_layer/ecmul.rs new file mode 100644 index 0000000..4b8ff38 --- /dev/null +++ b/crates/circuit_definitions/src/circuit_definitions/base_layer/ecmul.rs @@ -0,0 +1,144 @@ +use circuit_encodings::zkevm_circuits::bn254::ec_mul::{ + ecmul_function_entry_point, input::EcMulCircuitInstanceWitness, +}; +use derivative::*; + +use super::*; +use crate::boojum::cs::traits::circuit::CircuitBuilder; + +type F = GoldilocksField; +type R = Poseidon2Goldilocks; + +#[derive(Derivative, serde::Serialize, serde::Deserialize)] +#[derivative(Clone, Copy, Debug, Default(bound = ""))] +pub struct ECMulFunctionInstanceSynthesisFunction { + _marker: std::marker::PhantomData<(F, R)>, +} + +impl CircuitBuilder for ECMulFunctionInstanceSynthesisFunction +where + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN]:, + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN]:, + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN]:, + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN]:, + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN + 1]:, +{ + fn geometry() -> CSGeometry { + CSGeometry { + num_columns_under_copy_permutation: 200, + num_witness_columns: 0, + num_constant_columns: 8, + max_allowed_constraint_degree: 4, + } + } + + fn lookup_parameters() -> LookupParameters { + LookupParameters::UseSpecializedColumnsWithTableIdAsConstant { + width: 3, + num_repetitions: 8, + share_table_id: true, + } + } + + fn configure_builder< + T: CsBuilderImpl, + GC: GateConfigurationHolder, + TB: StaticToolboxHolder, + >( + builder: CsBuilder, + ) -> CsBuilder, impl StaticToolboxHolder> { + let builder = builder.allow_lookup(>::lookup_parameters()); + + let builder = U8x4FMAGate::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = ConstantsAllocatorGate::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = FmaGateInBaseFieldWithoutConstant::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = ReductionGate::::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = BooleanConstraintGate::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = UIntXAddGate::<32>::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = UIntXAddGate::<16>::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = UIntXAddGate::<8>::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = SelectionGate::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = ZeroCheckGate::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + false, + ); + let builder = DotProductGate::<4>::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = PublicInputGate::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = + NopGate::configure_builder(builder, GatePlacementStrategy::UseGeneralPurposeColumns); + + builder + } +} + +impl ZkSyncUniformSynthesisFunction for ECMulFunctionInstanceSynthesisFunction +where + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN]:, + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN]:, + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN]:, + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN]:, + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN + 1]:, +{ + type Witness = EcMulCircuitInstanceWitness; + type Config = usize; + type RoundFunction = R; + + fn description() -> String { + "Elliptic Curve Multiplication".to_string() + } + + fn size_hint() -> (Option, Option) { + (Some(TARGET_CIRCUIT_TRACE_LENGTH), Some(1 << 26)) + } + + fn add_tables>(cs: &mut CS) { + let table = create_xor8_table(); + cs.add_lookup_table::(table); + + let table = create_byte_split_table::(); + cs.add_lookup_table::, 3>(table); + } + + fn synthesize_into_cs_inner>( + cs: &mut CS, + witness: Self::Witness, + round_function: &Self::RoundFunction, + config: Self::Config, + ) -> [Num; INPUT_OUTPUT_COMMITMENT_LENGTH] { + ecmul_function_entry_point(cs, witness, round_function, config) + } +} diff --git a/crates/circuit_definitions/src/circuit_definitions/base_layer/ecpairing.rs b/crates/circuit_definitions/src/circuit_definitions/base_layer/ecpairing.rs new file mode 100644 index 0000000..492609f --- /dev/null +++ b/crates/circuit_definitions/src/circuit_definitions/base_layer/ecpairing.rs @@ -0,0 +1,140 @@ +use circuit_encodings::zkevm_circuits::bn254::ec_pairing::{ + ecpairing_function_entry_point, input::EcPairingCircuitInstanceWitness, +}; +use derivative::*; + +use super::*; +use crate::boojum::cs::traits::circuit::CircuitBuilder; + +type F = GoldilocksField; +type R = Poseidon2Goldilocks; + +#[derive(Derivative, serde::Serialize, serde::Deserialize)] +#[derivative(Clone, Copy, Debug, Default(bound = ""))] +pub struct ECPairingFunctionInstanceSynthesisFunction { + _marker: std::marker::PhantomData<(F, R)>, +} + +impl CircuitBuilder for ECPairingFunctionInstanceSynthesisFunction +where + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN]:, + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN]:, + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN]:, + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN]:, + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN + 1]:, +{ + fn geometry() -> CSGeometry { + CSGeometry { + num_columns_under_copy_permutation: 100, + num_witness_columns: 0, + num_constant_columns: 8, + max_allowed_constraint_degree: 4, + } + } + + fn lookup_parameters() -> LookupParameters { + LookupParameters::UseSpecializedColumnsWithTableIdAsConstant { + width: 3, + num_repetitions: 8, + share_table_id: true, + } + } + + fn configure_builder< + T: CsBuilderImpl, + GC: GateConfigurationHolder, + TB: StaticToolboxHolder, + >( + builder: CsBuilder, + ) -> CsBuilder, impl StaticToolboxHolder> { + let builder = builder.allow_lookup(>::lookup_parameters()); + + let builder = ConstantsAllocatorGate::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = FmaGateInBaseFieldWithoutConstant::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = ReductionGate::::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = BooleanConstraintGate::configure_builder( + builder, + GatePlacementStrategy::UseSpecializedColumns { + num_repetitions: 1, + share_constants: false, + }, + ); + let builder = UIntXAddGate::<32>::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = UIntXAddGate::<16>::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = UIntXAddGate::<8>::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = SelectionGate::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = ZeroCheckGate::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + false, + ); + let builder = DotProductGate::<4>::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = PublicInputGate::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = + NopGate::configure_builder(builder, GatePlacementStrategy::UseGeneralPurposeColumns); + + builder + } +} + +impl ZkSyncUniformSynthesisFunction for ECPairingFunctionInstanceSynthesisFunction +where + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN]:, + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN]:, + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN]:, + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN]:, + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN + 1]:, +{ + type Witness = EcPairingCircuitInstanceWitness; + type Config = usize; + type RoundFunction = R; + + fn description() -> String { + "Elliptic Curve Pairing".to_string() + } + + fn size_hint() -> (Option, Option) { + (Some(TARGET_CIRCUIT_TRACE_LENGTH), Some(1 << 26)) + } + + fn add_tables>(cs: &mut CS) { + let table = create_xor8_table(); + cs.add_lookup_table::(table); + } + + fn synthesize_into_cs_inner>( + cs: &mut CS, + witness: Self::Witness, + round_function: &Self::RoundFunction, + config: Self::Config, + ) -> [Num; INPUT_OUTPUT_COMMITMENT_LENGTH] { + ecpairing_function_entry_point(cs, witness, round_function, config) + } +} diff --git a/crates/circuit_definitions/src/circuit_definitions/base_layer/mod.rs b/crates/circuit_definitions/src/circuit_definitions/base_layer/mod.rs index ec6e732..b6d0922 100644 --- a/crates/circuit_definitions/src/circuit_definitions/base_layer/mod.rs +++ b/crates/circuit_definitions/src/circuit_definitions/base_layer/mod.rs @@ -30,16 +30,24 @@ pub mod storage_sort_dedup; pub mod transient_storage_sort; pub mod vm_main; // pub mod l1_messages_sort_dedup; // equal to one above +pub mod ecadd; +pub mod ecmul; +pub mod ecpairing; pub mod eip4844; pub mod linear_hasher; +pub mod modexp; pub use self::code_decommitter::CodeDecommitterInstanceSynthesisFunction; +pub use self::ecadd::ECAddFunctionInstanceSynthesisFunction; +pub use self::ecmul::ECMulFunctionInstanceSynthesisFunction; +pub use self::ecpairing::ECPairingFunctionInstanceSynthesisFunction; pub use self::ecrecover::ECRecoverFunctionInstanceSynthesisFunction; pub use self::eip4844::EIP4844InstanceSynthesisFunction; pub use self::events_sort_dedup::EventsAndL1MessagesSortAndDedupInstanceSynthesisFunction; pub use self::keccak256_round_function::Keccak256RoundFunctionInstanceSynthesisFunction; pub use self::linear_hasher::LinearHasherInstanceSynthesisFunction; pub use self::log_demux::LogDemuxInstanceSynthesisFunction; +pub use self::modexp::ModexpFunctionInstanceSynthesisFunction; pub use self::ram_permutation::RAMPermutationInstanceSynthesisFunction; pub use self::secp256r1_verify::Secp256r1VerifyFunctionInstanceSynthesisFunction; pub use self::sha256_round_function::Sha256RoundFunctionInstanceSynthesisFunction; @@ -66,6 +74,14 @@ pub type Sha256RoundFunctionCircuit = ZkSyncUniformCircuitInstance; pub type ECRecoverFunctionCircuit = ZkSyncUniformCircuitInstance; +pub type ModexpCircuit = + ZkSyncUniformCircuitInstance; +pub type ECAddCircuit = + ZkSyncUniformCircuitInstance; +pub type ECMulCircuit = + ZkSyncUniformCircuitInstance; +pub type ECPairingCircuit = + ZkSyncUniformCircuitInstance; pub type RAMPermutationCircuit = ZkSyncUniformCircuitInstance; pub type StorageSorterCircuit = @@ -113,6 +129,10 @@ pub enum ZkSyncBaseLayerStorage< TransientStorageSorter(T), Secp256r1Verify(T), EIP4844Repack(T), + Modexp(T), + ECAdd(T), + ECMul(T), + ECPairing(T), } impl @@ -136,6 +156,10 @@ impl "Transient storage sorter", ZkSyncBaseLayerStorage::Secp256r1Verify(..) => "Secp256r1 signature verifier", ZkSyncBaseLayerStorage::EIP4844Repack(..) => "EIP4844 repacker", + ZkSyncBaseLayerStorage::Modexp(..) => "Modexp", + ZkSyncBaseLayerStorage::ECAdd(..) => "ECAdd", + ZkSyncBaseLayerStorage::ECMul(..) => "ECMul", + ZkSyncBaseLayerStorage::ECPairing(..) => "ECPairing", } } @@ -179,6 +203,12 @@ impl BaseLayerCircuitType::EIP4844Repack as u8, + ZkSyncBaseLayerStorage::Modexp(..) => BaseLayerCircuitType::ModexpPrecompile as u8, + ZkSyncBaseLayerStorage::ECAdd(..) => BaseLayerCircuitType::ECAddPrecompile as u8, + ZkSyncBaseLayerStorage::ECMul(..) => BaseLayerCircuitType::ECMulPrecompile as u8, + ZkSyncBaseLayerStorage::ECPairing(..) => { + BaseLayerCircuitType::ECPairingPrecompile as u8 + } } } @@ -200,6 +230,10 @@ impl inner, ZkSyncBaseLayerStorage::Secp256r1Verify(inner) => inner, ZkSyncBaseLayerStorage::EIP4844Repack(inner) => inner, + ZkSyncBaseLayerStorage::Modexp(inner) => inner, + ZkSyncBaseLayerStorage::ECAdd(inner) => inner, + ZkSyncBaseLayerStorage::ECMul(inner) => inner, + ZkSyncBaseLayerStorage::ECPairing(inner) => inner, } } @@ -235,6 +269,10 @@ impl Self::Secp256r1Verify(inner), a if a == BaseLayerCircuitType::EIP4844Repack as u8 => Self::EIP4844Repack(inner), + a if a == BaseLayerCircuitType::ModexpPrecompile as u8 => Self::Modexp(inner), + a if a == BaseLayerCircuitType::ECAddPrecompile as u8 => Self::ECAdd(inner), + a if a == BaseLayerCircuitType::ECMulPrecompile as u8 => Self::ECMul(inner), + a if a == BaseLayerCircuitType::ECPairingPrecompile as u8 => Self::ECPairing(inner), a @ _ => panic!("unknown numeric type {}", a), } } @@ -271,6 +309,10 @@ where TransientStorageSorter(TransientStorageSorterCircuit), Secp256r1Verify(Secp256r1VerifyCircuit), EIP4844Repack(EIP4844Circuit), + Modexp(ModexpCircuit), + ECAdd(ECAddCircuit), + ECMul(ECMulCircuit), + ECPairing(ECPairingCircuit), } impl ZkSyncBaseLayerCircuit @@ -301,6 +343,10 @@ where ZkSyncBaseLayerCircuit::TransientStorageSorter(..) => "Transient storage sorter", ZkSyncBaseLayerCircuit::Secp256r1Verify(..) => "Secp256r1 verify", ZkSyncBaseLayerCircuit::EIP4844Repack(..) => "EIP4844 repacker", + ZkSyncBaseLayerCircuit::Modexp(..) => "Modexp", + ZkSyncBaseLayerCircuit::ECAdd(..) => "ECAdd", + ZkSyncBaseLayerCircuit::ECMul(..) => "ECMul", + ZkSyncBaseLayerCircuit::ECPairing(..) => "ECPairing", } } @@ -322,6 +368,10 @@ where ZkSyncBaseLayerCircuit::TransientStorageSorter(inner) => inner.size_hint(), ZkSyncBaseLayerCircuit::Secp256r1Verify(inner) => inner.size_hint(), ZkSyncBaseLayerCircuit::EIP4844Repack(inner) => inner.size_hint(), + ZkSyncBaseLayerCircuit::Modexp(inner) => inner.size_hint(), + ZkSyncBaseLayerCircuit::ECAdd(inner) => inner.size_hint(), + ZkSyncBaseLayerCircuit::ECMul(inner) => inner.size_hint(), + ZkSyncBaseLayerCircuit::ECPairing(inner) => inner.size_hint(), } } @@ -419,6 +469,10 @@ where ZkSyncBaseLayerCircuit::EIP4844Repack(inner) => { Self::synthesis_inner::<_, CR>(inner, hint) } + ZkSyncBaseLayerCircuit::Modexp(inner) => Self::synthesis_inner::<_, CR>(inner, hint), + ZkSyncBaseLayerCircuit::ECAdd(inner) => Self::synthesis_inner::<_, CR>(inner, hint), + ZkSyncBaseLayerCircuit::ECMul(inner) => Self::synthesis_inner::<_, CR>(inner, hint), + ZkSyncBaseLayerCircuit::ECPairing(inner) => Self::synthesis_inner::<_, CR>(inner, hint), } } @@ -440,6 +494,10 @@ where ZkSyncBaseLayerCircuit::TransientStorageSorter(inner) => inner.geometry_proxy(), ZkSyncBaseLayerCircuit::Secp256r1Verify(inner) => inner.geometry_proxy(), ZkSyncBaseLayerCircuit::EIP4844Repack(inner) => inner.geometry_proxy(), + ZkSyncBaseLayerCircuit::Modexp(inner) => inner.geometry_proxy(), + ZkSyncBaseLayerCircuit::ECAdd(inner) => inner.geometry_proxy(), + ZkSyncBaseLayerCircuit::ECMul(inner) => inner.geometry_proxy(), + ZkSyncBaseLayerCircuit::ECPairing(inner) => inner.geometry_proxy(), } } @@ -493,6 +551,18 @@ where ZkSyncBaseLayerCircuit::EIP4844Repack(inner) => { inner.debug_witness(); } + ZkSyncBaseLayerCircuit::Modexp(inner) => { + inner.debug_witness(); + } + ZkSyncBaseLayerCircuit::ECAdd(inner) => { + inner.debug_witness(); + } + ZkSyncBaseLayerCircuit::ECMul(inner) => { + inner.debug_witness(); + } + ZkSyncBaseLayerCircuit::ECPairing(inner) => { + inner.debug_witness(); + } }; () @@ -538,6 +608,12 @@ where BaseLayerCircuitType::Secp256r1Verify as u8 } ZkSyncBaseLayerCircuit::EIP4844Repack(..) => BaseLayerCircuitType::EIP4844Repack as u8, + ZkSyncBaseLayerCircuit::Modexp(..) => BaseLayerCircuitType::ModexpPrecompile as u8, + ZkSyncBaseLayerCircuit::ECAdd(..) => BaseLayerCircuitType::ECAddPrecompile as u8, + ZkSyncBaseLayerCircuit::ECMul(..) => BaseLayerCircuitType::ECMulPrecompile as u8, + ZkSyncBaseLayerCircuit::ECPairing(..) => { + BaseLayerCircuitType::ECPairingPrecompile as u8 + } } } } @@ -565,7 +641,6 @@ pub type ZkSyncBaseLayerFinalizationHint = ZkSyncBaseLayerStorage; pub type ZkSyncBaseLayerVerificationKey = ZkSyncBaseLayerStorage; diff --git a/crates/circuit_definitions/src/circuit_definitions/base_layer/modexp.rs b/crates/circuit_definitions/src/circuit_definitions/base_layer/modexp.rs new file mode 100644 index 0000000..2551e94 --- /dev/null +++ b/crates/circuit_definitions/src/circuit_definitions/base_layer/modexp.rs @@ -0,0 +1,136 @@ +use derivative::*; + +use super::*; +use crate::boojum::cs::traits::circuit::CircuitBuilder; +use crate::zkevm_circuits::modexp::input::ModexpCircuitInstanceWitness; +use crate::zkevm_circuits::modexp::modexp_function_entry_point; + +type F = GoldilocksField; +type R = Poseidon2Goldilocks; + +#[derive(Derivative, serde::Serialize, serde::Deserialize)] +#[derivative(Clone, Copy, Debug, Default(bound = ""))] +pub struct ModexpFunctionInstanceSynthesisFunction { + _marker: std::marker::PhantomData<(F, R)>, +} + +impl CircuitBuilder for ModexpFunctionInstanceSynthesisFunction +where + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN]:, + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN]:, + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN]:, + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN]:, + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN + 1]:, +{ + fn geometry() -> CSGeometry { + CSGeometry { + num_columns_under_copy_permutation: 200, + num_witness_columns: 0, + num_constant_columns: 8, + max_allowed_constraint_degree: 4, + } + } + + fn lookup_parameters() -> LookupParameters { + LookupParameters::UseSpecializedColumnsWithTableIdAsConstant { + width: 3, + num_repetitions: 8, + share_table_id: true, + } + } + + fn configure_builder< + T: CsBuilderImpl, + GC: GateConfigurationHolder, + TB: StaticToolboxHolder, + >( + builder: CsBuilder, + ) -> CsBuilder, impl StaticToolboxHolder> { + let builder = builder.allow_lookup(>::lookup_parameters()); + + let builder = U8x4FMAGate::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = ConstantsAllocatorGate::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = FmaGateInBaseFieldWithoutConstant::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = ReductionGate::::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = BooleanConstraintGate::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = UIntXAddGate::<32>::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = UIntXAddGate::<16>::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = UIntXAddGate::<8>::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = SelectionGate::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = ZeroCheckGate::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + false, + ); + let builder = PublicInputGate::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = + NopGate::configure_builder(builder, GatePlacementStrategy::UseGeneralPurposeColumns); + + builder + } +} + +impl ZkSyncUniformSynthesisFunction for ModexpFunctionInstanceSynthesisFunction +where + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN]:, + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN]:, + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN]:, + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN]:, + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN + 1]:, +{ + type Witness = ModexpCircuitInstanceWitness; + type Config = usize; + type RoundFunction = R; + + fn description() -> String { + "Elliptic Curve Addition".to_string() + } + + fn size_hint() -> (Option, Option) { + (Some(TARGET_CIRCUIT_TRACE_LENGTH), Some(1 << 26)) + } + + fn add_tables>(cs: &mut CS) { + let table = create_xor8_table(); + cs.add_lookup_table::(table); + } + + fn synthesize_into_cs_inner>( + cs: &mut CS, + witness: Self::Witness, + round_function: &Self::RoundFunction, + config: Self::Config, + ) -> [Num; INPUT_OUTPUT_COMMITMENT_LENGTH] { + modexp_function_entry_point(cs, witness, round_function, config) + } +} diff --git a/crates/circuit_definitions/src/circuit_definitions/recursion_layer/mod.rs b/crates/circuit_definitions/src/circuit_definitions/recursion_layer/mod.rs index 996e330..ba2849e 100644 --- a/crates/circuit_definitions/src/circuit_definitions/recursion_layer/mod.rs +++ b/crates/circuit_definitions/src/circuit_definitions/recursion_layer/mod.rs @@ -61,6 +61,10 @@ pub enum ZkSyncRecursiveLayerCircuit { LeafLayerCircuitForTransientStorageSorter(ZkSyncLeafLayerRecursiveCircuit), LeafLayerCircuitForSecp256r1Verify(ZkSyncLeafLayerRecursiveCircuit), LeafLayerCircuitForEIP4844Repack(ZkSyncLeafLayerRecursiveCircuit), + LeafLayerCircuitForModexp(ZkSyncLeafLayerRecursiveCircuit), + LeafLayerCircuitForECAdd(ZkSyncLeafLayerRecursiveCircuit), + LeafLayerCircuitForECMul(ZkSyncLeafLayerRecursiveCircuit), + LeafLayerCircuitForECPairing(ZkSyncLeafLayerRecursiveCircuit), RecursionTipCircuit(ZkSyncRecursionTipCircuit), } @@ -87,6 +91,10 @@ pub enum ZkSyncRecursionLayerStorageType { LeafLayerCircuitForTransientStorageSorter = 16, LeafLayerCircuitForSecp256r1Verify = 17, LeafLayerCircuitForEIP4844Repack = 18, + LeafLayerCircuitForModexp = 19, + LeafLayerCircuitForECAdd = 20, + LeafLayerCircuitForECMul = 21, + LeafLayerCircuitForECPairing = 22, RecursionTipCircuit = 255, } @@ -153,6 +161,18 @@ impl ZkSyncRecursionLayerStorageType { a if a == Self::LeafLayerCircuitForEIP4844Repack as u8 => { BaseLayerCircuitType::EIP4844Repack as u8 } + a if a == Self::LeafLayerCircuitForModexp as u8 => { + BaseLayerCircuitType::ModexpPrecompile as u8 + } + a if a == Self::LeafLayerCircuitForECAdd as u8 => { + BaseLayerCircuitType::ECAddPrecompile as u8 + } + a if a == Self::LeafLayerCircuitForECMul as u8 => { + BaseLayerCircuitType::ECMulPrecompile as u8 + } + a if a == Self::LeafLayerCircuitForECPairing as u8 => { + BaseLayerCircuitType::ECPairingPrecompile as u8 + } _ => { panic!( "could not map recursive circuit type {} to a basic circuit", @@ -188,6 +208,10 @@ pub enum ZkSyncRecursionLayerStorage< LeafLayerCircuitForTransientStorageSorter(T) = 16, LeafLayerCircuitForSecp256r1Verify(T) = 17, LeafLayerCircuitForEIP4844Repack(T) = 18, + LeafLayerCircuitForModexp(T) = 19, + LeafLayerCircuitForECAdd(T) = 20, + LeafLayerCircuitForECMul(T) = 21, + LeafLayerCircuitForECPairing(T) = 22, RecursionTipCircuit(T) = 255, } @@ -242,6 +266,10 @@ impl { "Leaf for EIP4844 repack" } + ZkSyncRecursionLayerStorage::LeafLayerCircuitForModexp(..) => "Leaf for Modexp", + ZkSyncRecursionLayerStorage::LeafLayerCircuitForECAdd(..) => "Leaf for ECAdd", + ZkSyncRecursionLayerStorage::LeafLayerCircuitForECMul(..) => "Leaf for ECMul", + ZkSyncRecursionLayerStorage::LeafLayerCircuitForECPairing(..) => "Leaf for ECPairing", ZkSyncRecursionLayerStorage::RecursionTipCircuit(..) => "Recursion tip", } } @@ -302,6 +330,18 @@ impl { ZkSyncRecursionLayerStorageType::LeafLayerCircuitForEIP4844Repack as u8 } + ZkSyncRecursionLayerStorage::LeafLayerCircuitForModexp(..) => { + ZkSyncRecursionLayerStorageType::LeafLayerCircuitForModexp as u8 + } + ZkSyncRecursionLayerStorage::LeafLayerCircuitForECAdd(..) => { + ZkSyncRecursionLayerStorageType::LeafLayerCircuitForECAdd as u8 + } + ZkSyncRecursionLayerStorage::LeafLayerCircuitForECMul(..) => { + ZkSyncRecursionLayerStorageType::LeafLayerCircuitForECMul as u8 + } + ZkSyncRecursionLayerStorage::LeafLayerCircuitForECPairing(..) => { + ZkSyncRecursionLayerStorageType::LeafLayerCircuitForECPairing as u8 + } ZkSyncRecursionLayerStorage::RecursionTipCircuit(..) => { ZkSyncRecursionLayerStorageType::RecursionTipCircuit as u8 } @@ -328,6 +368,10 @@ impl inner, Self::LeafLayerCircuitForSecp256r1Verify(inner) => inner, Self::LeafLayerCircuitForEIP4844Repack(inner) => inner, + Self::LeafLayerCircuitForModexp(inner) => inner, + Self::LeafLayerCircuitForECAdd(inner) => inner, + Self::LeafLayerCircuitForECMul(inner) => inner, + Self::LeafLayerCircuitForECPairing(inner) => inner, Self::RecursionTipCircuit(inner) => inner, } } @@ -406,6 +450,18 @@ impl { Self::LeafLayerCircuitForEIP4844Repack(inner) } + a if a == ZkSyncRecursionLayerStorageType::LeafLayerCircuitForModexp as u8 => { + Self::LeafLayerCircuitForModexp(inner) + } + a if a == ZkSyncRecursionLayerStorageType::LeafLayerCircuitForECAdd as u8 => { + Self::LeafLayerCircuitForECAdd(inner) + } + a if a == ZkSyncRecursionLayerStorageType::LeafLayerCircuitForECMul as u8 => { + Self::LeafLayerCircuitForECMul(inner) + } + a if a == ZkSyncRecursionLayerStorageType::LeafLayerCircuitForECPairing as u8 => { + Self::LeafLayerCircuitForECPairing(inner) + } a if a == ZkSyncRecursionLayerStorageType::RecursionTipCircuit as u8 => { Self::RecursionTipCircuit(inner) } @@ -448,6 +504,10 @@ impl { Self::LeafLayerCircuitForSecp256r1Verify(inner) } + BaseLayerCircuitType::ModexpPrecompile => Self::LeafLayerCircuitForModexp(inner), + BaseLayerCircuitType::ECAddPrecompile => Self::LeafLayerCircuitForECAdd(inner), + BaseLayerCircuitType::ECMulPrecompile => Self::LeafLayerCircuitForECMul(inner), + BaseLayerCircuitType::ECPairingPrecompile => Self::LeafLayerCircuitForECPairing(inner), BaseLayerCircuitType::EIP4844Repack => Self::LeafLayerCircuitForEIP4844Repack(inner), circuit_type => { panic!("unknown base circuit type for leaf: {:?}", circuit_type); @@ -512,6 +572,10 @@ impl ZkSyncRecursiveLayerCircuit { } Self::LeafLayerCircuitForSecp256r1Verify(..) => "Leaf for Secp256r1 verify", Self::LeafLayerCircuitForEIP4844Repack(..) => "Leaf for EIP4844 repack", + Self::LeafLayerCircuitForModexp(..) => "Leaf for Modexp", + Self::LeafLayerCircuitForECAdd(..) => "Leaf for ECAdd", + Self::LeafLayerCircuitForECMul(..) => "Leaf for ECMul", + Self::LeafLayerCircuitForECPairing(..) => "Leaf for ECPairing", Self::RecursionTipCircuit(..) => "Recursion tip", } } @@ -568,6 +632,18 @@ impl ZkSyncRecursiveLayerCircuit { Self::LeafLayerCircuitForEIP4844Repack(..) => { ZkSyncRecursionLayerStorageType::LeafLayerCircuitForEIP4844Repack as u8 } + Self::LeafLayerCircuitForModexp(..) => { + ZkSyncRecursionLayerStorageType::LeafLayerCircuitForModexp as u8 + } + Self::LeafLayerCircuitForECAdd(..) => { + ZkSyncRecursionLayerStorageType::LeafLayerCircuitForECAdd as u8 + } + Self::LeafLayerCircuitForECMul(..) => { + ZkSyncRecursionLayerStorageType::LeafLayerCircuitForECMul as u8 + } + Self::LeafLayerCircuitForECPairing(..) => { + ZkSyncRecursionLayerStorageType::LeafLayerCircuitForECPairing as u8 + } Self::RecursionTipCircuit(..) => { ZkSyncRecursionLayerStorageType::RecursionTipCircuit as u8 } @@ -593,7 +669,11 @@ impl ZkSyncRecursiveLayerCircuit { | Self::LeafLayerCircuitForL1MessagesHasher(inner) | Self::LeafLayerCircuitForTransientStorageSorter(inner) | Self::LeafLayerCircuitForSecp256r1Verify(inner) - | Self::LeafLayerCircuitForEIP4844Repack(inner) => inner.size_hint(), + | Self::LeafLayerCircuitForEIP4844Repack(inner) + | Self::LeafLayerCircuitForModexp(inner) + | Self::LeafLayerCircuitForECAdd(inner) + | Self::LeafLayerCircuitForECMul(inner) + | Self::LeafLayerCircuitForECPairing(inner) => inner.size_hint(), Self::RecursionTipCircuit(inner) => inner.size_hint(), } } @@ -617,9 +697,11 @@ impl ZkSyncRecursiveLayerCircuit { | Self::LeafLayerCircuitForL1MessagesHasher(..) | Self::LeafLayerCircuitForTransientStorageSorter(..) | Self::LeafLayerCircuitForSecp256r1Verify(..) - | Self::LeafLayerCircuitForEIP4844Repack(..) => { - ZkSyncLeafLayerRecursiveCircuit::geometry() - } + | Self::LeafLayerCircuitForEIP4844Repack(..) + | Self::LeafLayerCircuitForModexp(..) + | Self::LeafLayerCircuitForECAdd(..) + | Self::LeafLayerCircuitForECMul(..) + | Self::LeafLayerCircuitForECPairing(..) => ZkSyncLeafLayerRecursiveCircuit::geometry(), Self::RecursionTipCircuit(..) => ZkSyncRecursionTipCircuit::geometry(), } } @@ -724,7 +806,11 @@ impl ZkSyncRecursiveLayerCircuit { | Self::LeafLayerCircuitForL1MessagesHasher(inner) | Self::LeafLayerCircuitForTransientStorageSorter(inner) | Self::LeafLayerCircuitForSecp256r1Verify(inner) - | Self::LeafLayerCircuitForEIP4844Repack(inner) => { + | Self::LeafLayerCircuitForEIP4844Repack(inner) + | Self::LeafLayerCircuitForModexp(inner) + | Self::LeafLayerCircuitForECAdd(inner) + | Self::LeafLayerCircuitForECMul(inner) + | Self::LeafLayerCircuitForECPairing(inner) => { Self::synthesis_inner::<_, CR>(inner, hint) } Self::RecursionTipCircuit(inner) => { @@ -771,7 +857,11 @@ impl ZkSyncRecursiveLayerCircuit { | Self::LeafLayerCircuitForL1MessagesHasher(..) | Self::LeafLayerCircuitForTransientStorageSorter(..) | Self::LeafLayerCircuitForSecp256r1Verify(..) - | Self::LeafLayerCircuitForEIP4844Repack(..) => { + | Self::LeafLayerCircuitForEIP4844Repack(..) + | Self::LeafLayerCircuitForModexp(..) + | Self::LeafLayerCircuitForECAdd(..) + | Self::LeafLayerCircuitForECMul(..) + | Self::LeafLayerCircuitForECPairing(..) => { ConcreteNodeLayerCircuitBuilder::dyn_verifier_builder::() } Self::RecursionTipCircuit(..) => { @@ -806,7 +896,11 @@ impl ZkSyncRecursiveLayerCircuit { | Self::LeafLayerCircuitForL1MessagesHasher(..) | Self::LeafLayerCircuitForTransientStorageSorter(..) | Self::LeafLayerCircuitForSecp256r1Verify(..) - | Self::LeafLayerCircuitForEIP4844Repack(..) => { + | Self::LeafLayerCircuitForEIP4844Repack(..) + | Self::LeafLayerCircuitForModexp(..) + | Self::LeafLayerCircuitForECAdd(..) + | Self::LeafLayerCircuitForECMul(..) + | Self::LeafLayerCircuitForECPairing(..) => { ConcreteNodeLayerCircuitBuilder::dyn_recursive_verifier_builder::() } Self::RecursionTipCircuit(..) => { @@ -854,6 +948,11 @@ impl ZkSyncRecursiveLayerCircuit { Self::LeafLayerCircuitForSecp256r1Verify(inner) } BaseLayerCircuitType::EIP4844Repack => Self::LeafLayerCircuitForEIP4844Repack(inner), + BaseLayerCircuitType::ModexpPrecompile => Self::LeafLayerCircuitForModexp(inner), + BaseLayerCircuitType::ECAddPrecompile => Self::LeafLayerCircuitForECAdd(inner), + BaseLayerCircuitType::ECMulPrecompile => Self::LeafLayerCircuitForECMul(inner), + BaseLayerCircuitType::ECPairingPrecompile => Self::LeafLayerCircuitForECPairing(inner), + circuit_type => { panic!("unknown base circuit type for leaf: {:?}", circuit_type); } @@ -914,5 +1013,17 @@ pub fn base_circuit_type_into_recursive_leaf_circuit_type( BaseLayerCircuitType::EIP4844Repack => { ZkSyncRecursionLayerStorageType::LeafLayerCircuitForEIP4844Repack } + BaseLayerCircuitType::ModexpPrecompile => { + ZkSyncRecursionLayerStorageType::LeafLayerCircuitForModexp + } + BaseLayerCircuitType::ECAddPrecompile => { + ZkSyncRecursionLayerStorageType::LeafLayerCircuitForECAdd + } + BaseLayerCircuitType::ECMulPrecompile => { + ZkSyncRecursionLayerStorageType::LeafLayerCircuitForECMul + } + BaseLayerCircuitType::ECPairingPrecompile => { + ZkSyncRecursionLayerStorageType::LeafLayerCircuitForECPairing + } } } diff --git a/crates/circuit_definitions/src/circuit_definitions/verifier_builder.rs b/crates/circuit_definitions/src/circuit_definitions/verifier_builder.rs index 9078ec1..396b63d 100644 --- a/crates/circuit_definitions/src/circuit_definitions/verifier_builder.rs +++ b/crates/circuit_definitions/src/circuit_definitions/verifier_builder.rs @@ -37,6 +37,14 @@ pub type Secp256r1VerifyVerifierBuilder = CircuitBuilderProxy; pub type EIP4844VerifierBuilder = CircuitBuilderProxy; +pub type ModexpBuilder = + CircuitBuilderProxy; +pub type ECAddBuilder = + CircuitBuilderProxy; +pub type ECMulBuilder = + CircuitBuilderProxy; +pub type ECPairingBuilder = + CircuitBuilderProxy; type F = GoldilocksField; type EXT = GoldilocksExt2; @@ -104,6 +112,18 @@ where i if i == BaseLayerCircuitType::EIP4844Repack as u8 => { EIP4844VerifierBuilder::dyn_verifier_builder() } + i if i == BaseLayerCircuitType::ModexpPrecompile as u8 => { + ModexpBuilder::dyn_verifier_builder() + } + i if i == BaseLayerCircuitType::ECAddPrecompile as u8 => { + ECAddBuilder::dyn_verifier_builder() + } + i if i == BaseLayerCircuitType::ECMulPrecompile as u8 => { + ECMulBuilder::dyn_verifier_builder() + } + i if i == BaseLayerCircuitType::ECPairingPrecompile as u8 => { + ECPairingBuilder::dyn_verifier_builder() + } _ => { panic!("unknown circuit type = {}", circuit_type); } @@ -175,6 +195,18 @@ where i if i == BaseLayerCircuitType::EIP4844Repack as u8 => { EIP4844VerifierBuilder::dyn_recursive_verifier_builder() } + i if i == BaseLayerCircuitType::ModexpPrecompile as u8 => { + ModexpBuilder::dyn_recursive_verifier_builder() + } + i if i == BaseLayerCircuitType::ECAddPrecompile as u8 => { + ECAddBuilder::dyn_recursive_verifier_builder() + } + i if i == BaseLayerCircuitType::ECMulPrecompile as u8 => { + ECMulBuilder::dyn_recursive_verifier_builder() + } + i if i == BaseLayerCircuitType::ECPairingPrecompile as u8 => { + ECPairingBuilder::dyn_recursive_verifier_builder() + } _ => { panic!("unknown circuit type = {}", circuit_type); } diff --git a/crates/circuit_sequencer_api/src/geometry_config.rs b/crates/circuit_sequencer_api/src/geometry_config.rs index b2ece7f..618fb3a 100644 --- a/crates/circuit_sequencer_api/src/geometry_config.rs +++ b/crates/circuit_sequencer_api/src/geometry_config.rs @@ -18,6 +18,10 @@ pub struct GeometryConfig { pub cycles_per_ecrecover_circuit: u32, pub cycles_per_secp256r1_verify_circuit: u32, pub cycles_per_transient_storage_sorter: u32, + pub cycles_per_modexp_circuit: u32, + pub cycles_per_ecadd_circuit: u32, + pub cycles_per_ecmul_circuit: u32, + pub cycles_per_ecpairing_circuit: u32, pub limit_for_l1_messages_pudata_hasher: u32, } @@ -63,6 +67,14 @@ const fn get_geometry_config_1_4_0() -> GeometryConfig { cycles_per_transient_storage_sorter: 0, // Not supported in this version cycles_per_secp256r1_verify_circuit: 0, + // Not supported in this version + cycles_per_modexp_circuit: 0, + // Not supported in this version + cycles_per_ecadd_circuit: 0, + // Not supported in this version + cycles_per_ecmul_circuit: 0, + // Not supported in this version + cycles_per_ecpairing_circuit: 0, } } @@ -84,6 +96,14 @@ const fn get_geometry_config_1_4_1() -> GeometryConfig { cycles_per_transient_storage_sorter: 0, // Not supported in this version cycles_per_secp256r1_verify_circuit: 0, + // Not supported in this version + cycles_per_modexp_circuit: 0, + // Not supported in this version + cycles_per_ecadd_circuit: 0, + // Not supported in this version + cycles_per_ecmul_circuit: 0, + // Not supported in this version + cycles_per_ecpairing_circuit: 0, } } @@ -105,6 +125,14 @@ const fn get_geometry_config_1_4_2() -> GeometryConfig { cycles_per_transient_storage_sorter: 0, // Not supported in this version cycles_per_secp256r1_verify_circuit: 0, + // Not supported in this version + cycles_per_modexp_circuit: 0, + // Not supported in this version + cycles_per_ecadd_circuit: 0, + // Not supported in this version + cycles_per_ecmul_circuit: 0, + // Not supported in this version + cycles_per_ecpairing_circuit: 0, } } @@ -112,7 +140,7 @@ const fn get_geometry_config_1_5_0() -> GeometryConfig { GeometryConfig { cycles_per_vm_snapshot: 5390, cycles_code_decommitter_sorter: 117500, - cycles_per_log_demuxer: 58750, + cycles_per_log_demuxer: 58125, cycles_per_storage_sorter: 46921, cycles_per_events_or_l1_messages_sorter: 31287, cycles_per_ram_permutation: 136714, @@ -124,5 +152,9 @@ const fn get_geometry_config_1_5_0() -> GeometryConfig { limit_for_l1_messages_pudata_hasher: 774, cycles_per_transient_storage_sorter: 50875, cycles_per_secp256r1_verify_circuit: 4, + cycles_per_modexp_circuit: 13, + cycles_per_ecadd_circuit: 1424, + cycles_per_ecmul_circuit: 22, + cycles_per_ecpairing_circuit: 1, } } diff --git a/crates/zk_evm/src/testing/tests/precompiles/ecadd.rs b/crates/zk_evm/src/testing/tests/precompiles/ecadd.rs new file mode 100644 index 0000000..dba7bc2 --- /dev/null +++ b/crates/zk_evm/src/testing/tests/precompiles/ecadd.rs @@ -0,0 +1,181 @@ +use super::*; +use zk_evm_abstractions::auxiliary::*; +use zk_evm_abstractions::queries::*; +use zk_evm_abstractions::vm::*; +use zkevm_opcode_defs::system_params::*; +use zkevm_opcode_defs::PrecompileCallABI; + +fn fill_memory( + x1: [u8; 32], + y1: [u8; 32], + x2: [u8; 32], + y2: [u8; 32], + page: u32, + memory: &mut M, +) -> u16 { + let mut location = MemoryLocation { + page: MemoryPage(page), + index: MemoryIndex(0), + memory_type: MemoryType::Heap, + }; + let query = MemoryQuery { + timestamp: Timestamp(0u32), + location, + value: U256::from_big_endian(&x1), + rw_flag: true, + value_is_pointer: false, + }; + let _ = memory.execute_partial_query(0, query); + + location.index.0 += 1; + let query = MemoryQuery { + timestamp: Timestamp(0u32), + location, + value: U256::from_big_endian(&y1), + rw_flag: true, + value_is_pointer: false, + }; + let _ = memory.execute_partial_query(1, query); + + location.index.0 += 1; + let query = MemoryQuery { + timestamp: Timestamp(0u32), + location, + value: U256::from_big_endian(&x2), + rw_flag: true, + value_is_pointer: false, + }; + let _ = memory.execute_partial_query(2, query); + + location.index.0 += 1; + let query = MemoryQuery { + timestamp: Timestamp(0u32), + location, + value: U256::from_big_endian(&y2), + rw_flag: true, + value_is_pointer: false, + }; + let _ = memory.execute_partial_query(3, query); + + 4 as u16 +} + +fn ecadd_test_inner( + x1: [u8; 32], + y1: [u8; 32], + x2: [u8; 32], + y2: [u8; 32], + expect_ok: bool, + expected_x: [u8; 32], + expected_y: [u8; 32], +) -> (Vec<[u8; 32]>, std::ops::Range) { + let mut memory = SimpleMemory::new(); + let mut precompiles_processor = DefaultPrecompilesProcessor::; + let page_number = 4u32; + // create heap page + memory.populate_page(vec![ + (page_number, vec![U256::zero(); 1 << 10]), + (page_number + 1, vec![]), + ]); + + // fill the memory + let num_words_used = fill_memory(x1, y1, x2, y2, page_number, &mut memory); + + let precompile_call_params = PrecompileCallABI { + input_memory_offset: 0, + input_memory_length: num_words_used as u32, + output_memory_offset: num_words_used as u32, + output_memory_length: 3, + memory_page_to_read: page_number, + memory_page_to_write: page_number, + precompile_interpreted_data: 0, + }; + let precompile_call_params_encoded = precompile_call_params.to_u256(); + + let address = Address::from_low_u64_be(ECADD_PRECOMPILE_ADDRESS as u64); + + let precompile_query = LogQuery { + timestamp: Timestamp(1u32), + tx_number_in_block: 0, + shard_id: 0, + aux_byte: PRECOMPILE_AUX_BYTE, + address, + key: precompile_call_params_encoded, + read_value: U256::zero(), + written_value: U256::zero(), + rw_flag: false, + rollback: false, + is_service: false, + }; + + let _ = precompiles_processor.execute_precompile(4, precompile_query, &mut memory); + + let range = 0u32..(num_words_used as u32 + 3); + let content = memory.dump_page_content(page_number, range.clone()); + let content_len = content.len(); + let ok_or_error_marker = content[content_len - 3]; + let output_x = content[content_len - 2]; + let output_y = content[content_len - 1]; + + if expect_ok { + let mut buffer = [0u8; 32]; + U256::one().to_big_endian(&mut buffer); + assert_eq!(ok_or_error_marker, buffer); + assert_eq!(&output_x, &expected_x); + assert_eq!(&output_y, &expected_y); + } else { + let mut buffer = [0u8; 32]; + U256::zero().to_big_endian(&mut buffer); + assert_eq!(ok_or_error_marker, buffer); + assert_eq!(&output_x[..], &[0u8; 32]); + assert_eq!(&output_y[..], &[0u8; 32]); + } + + (content, range) +} + +fn ecadd_test_inner_from_raw( + raw_input: &str, + raw_x: &str, + raw_y: &str, + expect_ok: bool, +) -> (Vec<[u8; 32]>, std::ops::Range) { + let input_bytes = hex::decode(raw_input).unwrap(); + let x1: [u8; 32] = input_bytes[0..32].try_into().unwrap(); + let y1: [u8; 32] = input_bytes[32..64].try_into().unwrap(); + let x2: [u8; 32] = input_bytes[64..96].try_into().unwrap(); + let y2: [u8; 32] = input_bytes[96..128].try_into().unwrap(); + + let x: [u8; 32] = hex::decode(raw_x).unwrap().try_into().unwrap(); + let y: [u8; 32] = hex::decode(raw_y).unwrap().try_into().unwrap(); + + ecadd_test_inner(x1, y1, x2, y2, expect_ok, x, y) +} + +#[cfg(test)] +pub mod test { + /// Tests whether the operation `P+Q=R` holds correctly for the given `P`,`Q`,`R`. + #[test] + fn test_valid() { + use super::*; + + let raw_input = "099c07c9dd1107b9c9b0836da7ecfb7202d10bea1b8d1e88bc51ca476f23d91d28351e12f9219537fc8d6cac7c6444bd7980390d0d3e203fe0d8c1b0d811995021e177a985c3db8ef1d670629972c007ae90c78fb16e3011de1d08f5a44cb6550bd68a7caa07f6adbecbf06fb1f09d32b7bed1369a2a58058d1521bebd8272ac"; + let raw_x = "25beba7ab903d641d77e5801ca4d69a7a581359959c5d2621301dddafb145044"; + let raw_y = "19ee7a5ce8338bbcf4f74c3d3ec79d3635e837cb723ee6a0fa99269e3c6d7e23"; + let (content, range) = ecadd_test_inner_from_raw(raw_input, raw_x, raw_y, true); + pretty_print_memory_dump(&content, range); + } + + /// Tests whether the operation `P+Q=R` fails if either of P or Q is incorrect. + #[test] + fn test_invalid() { + use super::*; + + // We "twist" one of the points from `test_valid` by a couple of bytes + let raw_input = "099c08c9dd1107b9c9b0836da7ecfb7202d10bea1b8d1e88cc51ca476f23d91d28351e12f9219537fc8d6cac7c6444bd7980390d0d3e203fe0d8c1b0d811995021e177a985c3db8ef1d670629972c007ae90c78fb16e3011de1d08f5a44cb6550bd68a7caa07f6adbecbf06fb1f09d32b7bed1369a2a58058d1521bebd8272ac"; + let raw_x = "0000000000000000000000000000000000000000000000000000000000000000"; + let raw_y = "0000000000000000000000000000000000000000000000000000000000000000"; + let (content, range) = ecadd_test_inner_from_raw(raw_input, raw_x, raw_y, false); + pretty_print_memory_dump(&content, range); + } +} diff --git a/crates/zk_evm/src/testing/tests/precompiles/ecmul.rs b/crates/zk_evm/src/testing/tests/precompiles/ecmul.rs new file mode 100644 index 0000000..f5ac39f --- /dev/null +++ b/crates/zk_evm/src/testing/tests/precompiles/ecmul.rs @@ -0,0 +1,169 @@ +use super::*; +use zk_evm_abstractions::auxiliary::*; +use zk_evm_abstractions::queries::*; +use zk_evm_abstractions::vm::*; +use zkevm_opcode_defs::system_params::*; +use zkevm_opcode_defs::PrecompileCallABI; + +fn fill_memory( + x1: [u8; 32], + y1: [u8; 32], + s: [u8; 32], + page: u32, + memory: &mut M, +) -> u16 { + let mut location = MemoryLocation { + page: MemoryPage(page), + index: MemoryIndex(0), + memory_type: MemoryType::Heap, + }; + let query = MemoryQuery { + timestamp: Timestamp(0u32), + location, + value: U256::from_big_endian(&x1), + rw_flag: true, + value_is_pointer: false, + }; + let _ = memory.execute_partial_query(0, query); + + location.index.0 += 1; + let query = MemoryQuery { + timestamp: Timestamp(0u32), + location, + value: U256::from_big_endian(&y1), + rw_flag: true, + value_is_pointer: false, + }; + let _ = memory.execute_partial_query(1, query); + + location.index.0 += 1; + let query = MemoryQuery { + timestamp: Timestamp(0u32), + location, + value: U256::from_big_endian(&s), + rw_flag: true, + value_is_pointer: false, + }; + let _ = memory.execute_partial_query(2, query); + + 3 as u16 +} + +fn ecmul_test_inner( + x1: [u8; 32], + y1: [u8; 32], + s: [u8; 32], + expect_ok: bool, + expected_x: [u8; 32], + expected_y: [u8; 32], +) -> (Vec<[u8; 32]>, std::ops::Range) { + let mut memory = SimpleMemory::new(); + let mut precompiles_processor = DefaultPrecompilesProcessor::; + let page_number = 4u32; + // create heap page + memory.populate_page(vec![ + (page_number, vec![U256::zero(); 1 << 10]), + (page_number + 1, vec![]), + ]); + + // fill the memory + let num_words_used = fill_memory(x1, y1, s, page_number, &mut memory); + + let precompile_call_params = PrecompileCallABI { + input_memory_offset: 0, + input_memory_length: num_words_used as u32, + output_memory_offset: num_words_used as u32, + output_memory_length: 3, + memory_page_to_read: page_number, + memory_page_to_write: page_number, + precompile_interpreted_data: 0, + }; + let precompile_call_params_encoded = precompile_call_params.to_u256(); + + let address = Address::from_low_u64_be(ECMUL_PRECOMPILE_ADDRESS as u64); + + let precompile_query = LogQuery { + timestamp: Timestamp(1u32), + tx_number_in_block: 0, + shard_id: 0, + aux_byte: PRECOMPILE_AUX_BYTE, + address, + key: precompile_call_params_encoded, + read_value: U256::zero(), + written_value: U256::zero(), + rw_flag: false, + rollback: false, + is_service: false, + }; + + let _ = precompiles_processor.execute_precompile(4, precompile_query, &mut memory); + + let range = 0u32..(num_words_used as u32 + 3); + let content = memory.dump_page_content(page_number, range.clone()); + let content_len = content.len(); + let ok_or_error_marker = content[content_len - 3]; + let output_x = content[content_len - 2]; + let output_y = content[content_len - 1]; + + if expect_ok { + let mut buffer = [0u8; 32]; + U256::one().to_big_endian(&mut buffer); + assert_eq!(ok_or_error_marker, buffer); + assert_eq!(&output_x, &expected_x); + assert_eq!(&output_y, &expected_y); + } else { + let mut buffer = [0u8; 32]; + U256::zero().to_big_endian(&mut buffer); + assert_eq!(ok_or_error_marker, buffer); + assert_eq!(&output_x[..], &[0u8; 32]); + assert_eq!(&output_y[..], &[0u8; 32]); + } + + (content, range) +} + +fn ecmul_test_inner_from_raw( + raw_input: &str, + raw_x: &str, + raw_y: &str, + expect_ok: bool, +) -> (Vec<[u8; 32]>, std::ops::Range) { + let input_bytes = hex::decode(raw_input).unwrap(); + let x1: [u8; 32] = input_bytes[0..32].try_into().unwrap(); + let y1: [u8; 32] = input_bytes[32..64].try_into().unwrap(); + let s: [u8; 32] = input_bytes[64..96].try_into().unwrap(); + + let x: [u8; 32] = hex::decode(raw_x).unwrap().try_into().unwrap(); + let y: [u8; 32] = hex::decode(raw_y).unwrap().try_into().unwrap(); + + ecmul_test_inner(x1, y1, s, expect_ok, x, y) +} + +#[cfg(test)] +pub mod test { + /// Test for the ecmul precompile correctness. + /// Given a valid scalar `k` and point `P`, verifies that `[k]P` is calculated correctly. + #[test] + fn test_valid() { + use super::*; + + let raw_input = "1148f79e53544582d22e5071480ae679d0b9df89d69e881f611e8381384ed1ad0bac10178d2cd8aa9b4af903461b9f1666c219cdfeb2bb5e0cd7cd6486a32a6d15f0e77d431a6c4d21df6a71cdcb0b2eeba21fc1192bd9801b8cd8b7c763e115"; + let raw_x = "15fac9de17d074fc56d9d679d5c011e90688d953b04edd1f82c469fc07a07648"; + let raw_y = "13de0f379fa2120d2caed4e79c43d67104e091783118c4a04d0250a317183c26"; + let (content, range) = ecmul_test_inner_from_raw(raw_input, raw_x, raw_y, true); + pretty_print_memory_dump(&content, range); + } + + /// Test that when provided with the wrong point `P`, the precompile returns an error. + #[test] + fn test_invalid() { + use super::*; + + // We "twist" the point from `test_valid` by a couple of bytes to make it outside the curve. + let raw_input = "1148f79e5364458dd22f5071480ae679d0b9df89d69e881f611e8381384ed1ad0bac10178d2cd8aa9b4af903461b9f1666c219cdfeb2bb5e0cd7cd6486a32a6d15f0e77d431a6c4d21df6a71cdcb0b2eeba21fc1192bd9801b8cd8b7c763e115"; + let raw_x = "0000000000000000000000000000000000000000000000000000000000000000"; + let raw_y = "0000000000000000000000000000000000000000000000000000000000000000"; + let (content, range) = ecmul_test_inner_from_raw(raw_input, raw_x, raw_y, false); + pretty_print_memory_dump(&content, range); + } +} diff --git a/crates/zk_evm/src/testing/tests/precompiles/ecpairing.rs b/crates/zk_evm/src/testing/tests/precompiles/ecpairing.rs new file mode 100644 index 0000000..6e8e861 --- /dev/null +++ b/crates/zk_evm/src/testing/tests/precompiles/ecpairing.rs @@ -0,0 +1,169 @@ +use super::*; +use zk_evm_abstractions::auxiliary::*; +use zk_evm_abstractions::queries::*; +use zk_evm_abstractions::vm::*; +use zkevm_opcode_defs::system_params::*; +use zkevm_opcode_defs::PrecompileCallABI; + +fn fill_memory(tuples: Vec<[[u8; 32]; 6]>, page: u32, memory: &mut M) -> u16 { + let mut location = MemoryLocation { + page: MemoryPage(page), + index: MemoryIndex(0), + memory_type: MemoryType::Heap, + }; + + for i in 0..tuples.len() { + for j in 0..6 { + let query = MemoryQuery { + timestamp: Timestamp(0u32), + location, + value: U256::from_big_endian(&tuples[i][j]), + rw_flag: true, + value_is_pointer: false, + }; + let _ = memory.execute_partial_query((6 * i + j) as u32, query); + location.index.0 += 1; + } + } + + 6 * tuples.len() as u16 +} + +fn ecpairing_test_inner( + tuples: Vec<[[u8; 32]; 6]>, + expect_ok: bool, + expected_result: [u8; 32], +) -> (Vec<[u8; 32]>, std::ops::Range) { + let mut memory = SimpleMemory::new(); + let mut precompiles_processor = DefaultPrecompilesProcessor::; + let page_number = 4u32; + // create heap page + memory.populate_page(vec![ + (page_number, vec![U256::zero(); 1 << 10]), + (page_number + 1, vec![]), + ]); + + // fill the memory + let num_words_used = fill_memory(tuples, page_number, &mut memory); + + let precompile_call_params = PrecompileCallABI { + input_memory_offset: 0, + input_memory_length: num_words_used as u32, + output_memory_offset: num_words_used as u32, + output_memory_length: 1, + memory_page_to_read: page_number, + memory_page_to_write: page_number, + precompile_interpreted_data: 0, + }; + let precompile_call_params_encoded = precompile_call_params.to_u256(); + + let address = Address::from_low_u64_be(ECPAIRING_PRECOMPILE_ADDRESS as u64); + + let precompile_query = LogQuery { + timestamp: Timestamp(1u32), + tx_number_in_block: 0, + shard_id: 0, + aux_byte: PRECOMPILE_AUX_BYTE, + address, + key: precompile_call_params_encoded, + read_value: U256::zero(), + written_value: U256::zero(), + rw_flag: false, + rollback: false, + is_service: false, + }; + + let _ = precompiles_processor.execute_precompile(4, precompile_query, &mut memory); + + let range = 0u32..(num_words_used as u32 + 2); + let content = memory.dump_page_content(page_number, range.clone()); + let content_len = content.len(); + let ok_or_error_marker = content[content_len - 2]; + let output = content[content_len - 1]; + + if expect_ok { + let mut buffer = [0u8; 32]; + U256::one().to_big_endian(&mut buffer); + assert_eq!(ok_or_error_marker, buffer); + assert_eq!(&output, &expected_result); + } else { + let mut buffer = [0u8; 32]; + U256::zero().to_big_endian(&mut buffer); + assert_eq!(ok_or_error_marker, buffer); + assert_eq!(&expected_result[..], &[0u8; 32]); + } + + (content, range) +} + +fn ecpairing_test_inner_from_raw( + raw_input: &str, + raw_output: &str, + expect_ok: bool, +) -> (Vec<[u8; 32]>, std::ops::Range) { + let input_bytes = hex::decode(raw_input).unwrap(); + + assert!( + input_bytes.len() % 192 == 0, + "number of input bytes must be divisible by 192" + ); + + let tuples_number = input_bytes.len() / 192; + let mut tuples = vec![[[0u8; 32]; 6]; tuples_number]; + + for i in 0..tuples_number { + let x1: [u8; 32] = input_bytes[192 * i..192 * i + 32].try_into().unwrap(); + let y1: [u8; 32] = input_bytes[192 * i + 32..192 * i + 64].try_into().unwrap(); + let x2: [u8; 32] = input_bytes[192 * i + 64..192 * i + 96].try_into().unwrap(); + let y2: [u8; 32] = input_bytes[192 * i + 96..192 * i + 128].try_into().unwrap(); + let x3: [u8; 32] = input_bytes[192 * i + 128..192 * i + 160] + .try_into() + .unwrap(); + let y3: [u8; 32] = input_bytes[192 * i + 160..192 * i + 192] + .try_into() + .unwrap(); + + tuples[i] = [x1, y1, x2, y2, x3, y3]; + } + + let expected_result: [u8; 32] = hex::decode(raw_output).unwrap().try_into().unwrap(); + + ecpairing_test_inner(tuples, expect_ok, expected_result) +} + +#[cfg(test)] +pub mod test { + /// Tests whether `e(P1,Q1)e(P2,Q2)=1` holds for valid points `P1`, `Q1`, `P2`, `Q2`. + #[test] + fn test_valid_true() { + use super::*; + + let raw_input = "2cf44499d5d27bb186308b7af7af02ac5bc9eeb6a3d147c186b21fb1b76e18da2c0f001f52110ccfe69108924926e45f0b0c868df0e7bde1fe16d3242dc715f61fb19bb476f6b9e44e2a32234da8212f61cd63919354bc06aef31e3cfaff3ebc22606845ff186793914e03e21df544c34ffe2f2f3504de8a79d9159eca2d98d92bd368e28381e8eccb5fa81fc26cf3f048eea9abfdd85d7ed3ab3698d63e4f902fe02e47887507adf0ff1743cbac6ba291e66f59be6bd763950bb16041a0a85e000000000000000000000000000000000000000000000000000000000000000130644e72e131a029b85045b68181585d97816a916871ca8d3c208c16d87cfd451971ff0471b09fa93caaf13cbf443c1aede09cc4328f5a62aad45f40ec133eb4091058a3141822985733cbdddfed0fd8d6c104e9e9eff40bf5abfef9ab163bc72a23af9a5ce2ba2796c1f4e453a370eb0af8c212d9dc9acd8fc02c2e907baea223a8eb0b0996252cb548a4487da97b02422ebc0e834613f954de6c7e0afdc1fc"; + let raw_output = "0000000000000000000000000000000000000000000000000000000000000001"; + let (content, range) = ecpairing_test_inner_from_raw(raw_input, &raw_output, true); + pretty_print_memory_dump(&content, range); + } + + /// Tests whether `e(P1,Q1)!=1` holds for valid points `P1`, `Q1`, `P2`, `Q2`. + #[test] + fn test_valid_false() { + use super::*; + + let raw_input = "0412aa5b0805215b55a5e2dbf0662031aad0f5ef13f28b25df20b8670d1c59a616fb4b64ccff216fa5272e1e987c0616d60d8883d5834229c685949047e9411d2d81dbc969f72bc0454ff8b04735b717b725fee98a2fcbcdcf6c5b51b1dff33f075239888fc8448ab781e2a8bb85eb556469474cd707d4b913bee28679920eb61ef1c268b7c4c78959f099a043ecd5e537fe3069ac9197235f16162372848cba209cfadc22f7e80d399d1886f1c53898521a34c62918ed802305f32b4070a3c4"; + let raw_output = "0000000000000000000000000000000000000000000000000000000000000000"; + let (content, range) = ecpairing_test_inner_from_raw(raw_input, &raw_output, true); + pretty_print_memory_dump(&content, range); + } + + /// Tests whether the execution of `e(P1,Q1)` fails when given invalid points `P1`, `Q1` + #[test] + fn test_fails() { + use super::*; + + // Same points as in the `test_valid_false` testcase, but some bits are distorted. + let raw_input = "0413aa5b0805215b55a5e2dda0662031aad0f5ef13f28b25df20b8670d1c59a616fb4b64ccff216fa5272e1e987c0616d60d8883d5834229c685949047e9411d2d81dbc969f72bc0454ff8b04735b717b725fee98a2fcbcdcf6c5b51b1dff33f075239888fc8448ab781e2a8bb85eb556469474cd707d4b913bee28679920eb61ef1c268b7c4c78959f099a043ecd5e537fe3069ac9197235f16162372848cba209cfadc22f7e80d399d1886f1c53898521a34c62918ed802305f32b4070a3c4"; + let raw_output = "0000000000000000000000000000000000000000000000000000000000000000"; + let (content, range) = ecpairing_test_inner_from_raw(raw_input, &raw_output, false); + pretty_print_memory_dump(&content, range); + } +} diff --git a/crates/zk_evm/src/testing/tests/precompiles/mod.rs b/crates/zk_evm/src/testing/tests/precompiles/mod.rs index 0a84e23..d0bf32b 100644 --- a/crates/zk_evm/src/testing/tests/precompiles/mod.rs +++ b/crates/zk_evm/src/testing/tests/precompiles/mod.rs @@ -2,7 +2,11 @@ use super::*; mod keccak256; // mod sha256; +mod ecadd; +mod ecmul; +mod ecpairing; mod ecrecover; +mod modexp; fn pretty_print_memory_dump(content: &Vec<[u8; 32]>, range: std::ops::Range) { println!("Memory dump:"); diff --git a/crates/zk_evm/src/testing/tests/precompiles/modexp.rs b/crates/zk_evm/src/testing/tests/precompiles/modexp.rs new file mode 100644 index 0000000..0fa0d78 --- /dev/null +++ b/crates/zk_evm/src/testing/tests/precompiles/modexp.rs @@ -0,0 +1,187 @@ +use super::*; +use zk_evm_abstractions::auxiliary::*; +use zk_evm_abstractions::queries::*; +use zk_evm_abstractions::vm::*; +use zkevm_opcode_defs::system_params::*; +use zkevm_opcode_defs::PrecompileCallABI; + +fn fill_memory( + b_size: [u8; 32], + e_size: [u8; 32], + m_size: [u8; 32], + b: [u8; 32], + e: [u8; 32], + m: [u8; 32], + page: u32, + memory: &mut M, +) -> u16 { + let mut location = MemoryLocation { + page: MemoryPage(page), + index: MemoryIndex(0), + memory_type: MemoryType::Heap, + }; + let query = MemoryQuery { + timestamp: Timestamp(0u32), + location, + value: U256::from_big_endian(&b_size), + rw_flag: true, + value_is_pointer: false, + }; + let _ = memory.execute_partial_query(0, query); + + location.index.0 += 1; + let query = MemoryQuery { + timestamp: Timestamp(0u32), + location, + value: U256::from_big_endian(&e_size), + rw_flag: true, + value_is_pointer: false, + }; + let _ = memory.execute_partial_query(1, query); + + location.index.0 += 1; + let query = MemoryQuery { + timestamp: Timestamp(0u32), + location, + value: U256::from_big_endian(&m_size), + rw_flag: true, + value_is_pointer: false, + }; + let _ = memory.execute_partial_query(2, query); + + location.index.0 += 1; + let query = MemoryQuery { + timestamp: Timestamp(0u32), + location, + value: U256::from_big_endian(&b), + rw_flag: true, + value_is_pointer: false, + }; + let _ = memory.execute_partial_query(3, query); + + location.index.0 += 1; + let query = MemoryQuery { + timestamp: Timestamp(0u32), + location, + value: U256::from_big_endian(&e), + rw_flag: true, + value_is_pointer: false, + }; + let _ = memory.execute_partial_query(4, query); + + location.index.0 += 1; + let query = MemoryQuery { + timestamp: Timestamp(0u32), + location, + value: U256::from_big_endian(&m), + rw_flag: true, + value_is_pointer: false, + }; + let _ = memory.execute_partial_query(5, query); + + 6 as u16 +} + +fn modexp_test_inner( + b_size: [u8; 32], + e_size: [u8; 32], + m_size: [u8; 32], + b: [u8; 32], + e: [u8; 32], + m: [u8; 32], + expect_ok: bool, + expected_result: [u8; 32], +) -> (Vec<[u8; 32]>, std::ops::Range) { + let mut memory = SimpleMemory::new(); + let mut precompiles_processor = DefaultPrecompilesProcessor::; + let page_number = 4u32; + // create heap page + memory.populate_page(vec![ + (page_number, vec![U256::zero(); 1 << 10]), + (page_number + 1, vec![]), + ]); + + // fill the memory + let num_words_used = fill_memory(b_size, e_size, m_size, b, e, m, page_number, &mut memory); + + let precompile_call_params = PrecompileCallABI { + input_memory_offset: 0, + input_memory_length: num_words_used as u32, + output_memory_offset: num_words_used as u32, + output_memory_length: 1, + memory_page_to_read: page_number, + memory_page_to_write: page_number, + precompile_interpreted_data: 0, + }; + let precompile_call_params_encoded = precompile_call_params.to_u256(); + + let address = Address::from_low_u64_be(MODEXP_PRECOMPILE_ADDRESS as u64); + + let precompile_query = LogQuery { + timestamp: Timestamp(1u32), + tx_number_in_block: 0, + shard_id: 0, + aux_byte: PRECOMPILE_AUX_BYTE, + address, + key: precompile_call_params_encoded, + read_value: U256::zero(), + written_value: U256::zero(), + rw_flag: false, + rollback: false, + is_service: false, + }; + + let _ = precompiles_processor.execute_precompile(4, precompile_query, &mut memory); + + let range = 0u32..(num_words_used as u32 + 2); + let content = memory.dump_page_content(page_number, range.clone()); + let content_len = content.len(); + let ok_or_error_marker = content[content_len - 2]; + let output = content[content_len - 1]; + + if expect_ok { + let mut buffer = [0u8; 32]; + U256::one().to_big_endian(&mut buffer); + assert_eq!(ok_or_error_marker, buffer); + assert_eq!(&output, &expected_result); + } else { + let mut buffer = [0u8; 32]; + U256::zero().to_big_endian(&mut buffer); + assert_eq!(ok_or_error_marker, buffer); + assert_eq!(&output[..], &[0u8; 32]); + } + + (content, range) +} + +fn modexp_test_inner_from_raw( + raw_input: &str, + raw_output: &str, + expect_ok: bool, +) -> (Vec<[u8; 32]>, std::ops::Range) { + let input_bytes = hex::decode(raw_input).unwrap(); + let b_size: [u8; 32] = input_bytes[0..32].try_into().unwrap(); + let e_size: [u8; 32] = input_bytes[32..64].try_into().unwrap(); + let m_size: [u8; 32] = input_bytes[64..96].try_into().unwrap(); + let b: [u8; 32] = input_bytes[96..128].try_into().unwrap(); + let e: [u8; 32] = input_bytes[128..160].try_into().unwrap(); + let m: [u8; 32] = input_bytes[160..192].try_into().unwrap(); + + let expected_result: [u8; 32] = hex::decode(raw_output).unwrap().try_into().unwrap(); + + modexp_test_inner(b_size, e_size, m_size, b, e, m, expect_ok, expected_result) +} + +#[cfg(test)] +pub mod test { + /// Tests the modexp correctness based on the valid input. + #[test] + fn test_valid() { + use super::*; + + let raw_input = "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007f333213268023a7d3d40ea760d0e1c00d5fe99710e379193fc5973e7ad09370039d71831130091794534336679323390f4408be38cb89963ec41f4a90d6bf63ec6f05ec20e4c25420f9d6bc6800f9544ecabf5dbea80d11e0fb12c7f0517f5b"; + let raw_output = "2779a7e4d2b26461c6557a12eb86285eeeb9cf5a40155305177854b15b4ed3df"; + let (content, range) = modexp_test_inner_from_raw(raw_input, raw_output, true); + pretty_print_memory_dump(&content, range); + } +} diff --git a/crates/zk_evm_abstractions/src/lib.rs b/crates/zk_evm_abstractions/src/lib.rs index 973d60d..a00bd0e 100644 --- a/crates/zk_evm_abstractions/src/lib.rs +++ b/crates/zk_evm_abstractions/src/lib.rs @@ -2,6 +2,6 @@ pub mod auxiliary; pub use auxiliary as aux; pub mod precompiles; pub mod queries; +pub mod utils; pub mod vm; - pub use zkevm_opcode_defs; diff --git a/crates/zk_evm_abstractions/src/precompiles/ecadd.rs b/crates/zk_evm_abstractions/src/precompiles/ecadd.rs new file mode 100644 index 0000000..45a55df --- /dev/null +++ b/crates/zk_evm_abstractions/src/precompiles/ecadd.rs @@ -0,0 +1,479 @@ +use anyhow::{Error, Result}; +use zkevm_opcode_defs::bn254::bn256::{Fq, G1Affine}; +use zkevm_opcode_defs::bn254::ff::PrimeField; +use zkevm_opcode_defs::bn254::{CurveAffine, CurveProjective}; +use zkevm_opcode_defs::ethereum_types::U256; +pub use zkevm_opcode_defs::sha2::Digest; + +use crate::utils::bn254::{point_to_u256_tuple, ECPointCoordinates}; + +use super::*; + +// NOTE: We need x1, y1, x2, y2: four coordinates of two points +pub const MEMORY_READS_PER_CYCLE: usize = 4; +// NOTE: We need to specify the result of the addition and the status of the operation +pub const MEMORY_WRITES_PER_CYCLE: usize = 3; + +#[derive(Clone, Debug, PartialEq, Eq, Hash)] +pub struct ECAddRoundWitness { + pub new_request: LogQuery, + pub reads: [MemoryQuery; MEMORY_READS_PER_CYCLE], + pub writes: [MemoryQuery; MEMORY_WRITES_PER_CYCLE], +} + +#[derive(Clone, Debug, PartialEq, Eq, Hash)] +pub struct ECAddPrecompile; + +impl Precompile for ECAddPrecompile { + type CycleWitness = ECAddRoundWitness; + + fn execute_precompile( + &mut self, + monotonic_cycle_counter: u32, + query: LogQuery, + memory: &mut M, + ) -> ( + usize, + Option<(Vec, Vec, Vec)>, + ) { + const NUM_ROUNDS: usize = 1; + + // read the parameters + let precompile_call_params = query; + let params = precompile_abi_in_log(precompile_call_params); + let timestamp_to_read = precompile_call_params.timestamp; + let timestamp_to_write = Timestamp(timestamp_to_read.0 + 1); // our default timestamping agreement + + let mut current_read_location = MemoryLocation { + memory_type: MemoryType::Heap, // we default for some value, here it's not that important + page: MemoryPage(params.memory_page_to_read), + index: MemoryIndex(params.input_memory_offset), + }; + + // we assume that we have + // - x1 as U256 as a first coordinate of the first point (32 bytes) + // - y1 as U256 as a second coordinate of the first point (32 bytes) + // - x2 as U256 as a first coordinate of the second point (32 bytes) + // - y2 as U256 as a second coordinate of the second point (32 bytes) + + // we do 7 queries per precompile + let mut read_history = if B { + Vec::with_capacity(MEMORY_READS_PER_CYCLE) + } else { + vec![] + }; + let mut write_history = if B { + Vec::with_capacity(MEMORY_WRITES_PER_CYCLE) + } else { + vec![] + }; + + let mut round_witness = ECAddRoundWitness { + new_request: precompile_call_params, + reads: [MemoryQuery::empty(); MEMORY_READS_PER_CYCLE], + writes: [MemoryQuery::empty(); MEMORY_WRITES_PER_CYCLE], + }; + + let mut read_idx = 0; + + let x1_query = MemoryQuery { + timestamp: timestamp_to_read, + location: current_read_location, + value: U256::zero(), + value_is_pointer: false, + rw_flag: false, + }; + let x1_query = memory.execute_partial_query(monotonic_cycle_counter, x1_query); + let x1_value = x1_query.value; + if B { + round_witness.reads[read_idx] = x1_query; + read_idx += 1; + read_history.push(x1_query); + } + + current_read_location.index.0 += 1; + let y1_query = MemoryQuery { + timestamp: timestamp_to_read, + location: current_read_location, + value: U256::zero(), + value_is_pointer: false, + rw_flag: false, + }; + let y1_query = memory.execute_partial_query(monotonic_cycle_counter, y1_query); + let y1_value = y1_query.value; + if B { + round_witness.reads[read_idx] = y1_query; + read_idx += 1; + read_history.push(y1_query); + } + + current_read_location.index.0 += 1; + let x2_query = MemoryQuery { + timestamp: timestamp_to_read, + location: current_read_location, + value: U256::zero(), + value_is_pointer: false, + rw_flag: false, + }; + let x2_query = memory.execute_partial_query(monotonic_cycle_counter, x2_query); + let x2_value = x2_query.value; + if B { + round_witness.reads[read_idx] = x2_query; + read_idx += 1; + read_history.push(x2_query); + } + + current_read_location.index.0 += 1; + let y2_query = MemoryQuery { + timestamp: timestamp_to_read, + location: current_read_location, + value: U256::zero(), + value_is_pointer: false, + rw_flag: false, + }; + let y2_query = memory.execute_partial_query(monotonic_cycle_counter, y2_query); + let y2_value = y2_query.value; + if B { + round_witness.reads[read_idx] = y2_query; + read_history.push(y2_query); + } + + // Performing addition + let points_sum = ecadd_inner((x1_value, y1_value), (x2_value, y2_value)); + + if let Ok((x, y)) = points_sum { + let mut write_location = MemoryLocation { + memory_type: MemoryType::Heap, // we default for some value, here it's not that important + page: MemoryPage(params.memory_page_to_write), + index: MemoryIndex(params.output_memory_offset), + }; + + // Marking that the operation was successful + let ok_marker = U256::one(); + let ok_or_err_query = MemoryQuery { + timestamp: timestamp_to_write, + location: write_location, + value: ok_marker, + value_is_pointer: false, + rw_flag: true, + }; + let ok_or_err_query = + memory.execute_partial_query(monotonic_cycle_counter, ok_or_err_query); + + // Writing resultant x coordinate + write_location.index.0 += 1; + + let x_result_query = MemoryQuery { + timestamp: timestamp_to_write, + location: write_location, + value: x, + value_is_pointer: false, + rw_flag: true, + }; + let x_result_query = + memory.execute_partial_query(monotonic_cycle_counter, x_result_query); + + // Writing resultant y coordinate + write_location.index.0 += 1; + + let y_result_query = MemoryQuery { + timestamp: timestamp_to_write, + location: write_location, + value: y, + value_is_pointer: false, + rw_flag: true, + }; + let y_result_query = + memory.execute_partial_query(monotonic_cycle_counter, y_result_query); + + if B { + round_witness.writes[0] = ok_or_err_query; + round_witness.writes[1] = x_result_query; + round_witness.writes[2] = y_result_query; + write_history.push(ok_or_err_query); + write_history.push(x_result_query); + write_history.push(y_result_query); + } + } else { + let mut write_location = MemoryLocation { + memory_type: MemoryType::Heap, // we default for some value, here it's not that important + page: MemoryPage(params.memory_page_to_write), + index: MemoryIndex(params.output_memory_offset), + }; + + let err_marker = U256::zero(); + let ok_or_err_query = MemoryQuery { + timestamp: timestamp_to_write, + location: write_location, + value: err_marker, + value_is_pointer: false, + rw_flag: true, + }; + let ok_or_err_query = + memory.execute_partial_query(monotonic_cycle_counter, ok_or_err_query); + + write_location.index.0 += 1; + let empty_result = U256::zero(); + let x_result_query = MemoryQuery { + timestamp: timestamp_to_write, + location: write_location, + value: empty_result, + value_is_pointer: false, + rw_flag: true, + }; + let x_result_query = + memory.execute_partial_query(monotonic_cycle_counter, x_result_query); + + let y_result_query = MemoryQuery { + timestamp: timestamp_to_write, + location: write_location, + value: empty_result, + value_is_pointer: false, + rw_flag: true, + }; + let y_result_query = + memory.execute_partial_query(monotonic_cycle_counter, y_result_query); + + if B { + round_witness.writes[0] = ok_or_err_query; + round_witness.writes[1] = x_result_query; + round_witness.writes[2] = y_result_query; + write_history.push(ok_or_err_query); + write_history.push(x_result_query); + write_history.push(y_result_query); + } + } + + let witness = if B { + Some((read_history, write_history, vec![round_witness])) + } else { + None + }; + + (NUM_ROUNDS, witness) + } +} + +/// This function adds two points (x1,y1) and (x2,y2) on the BN254 curve. +/// It returns the result as a G1Affine point. +/// +/// If the points are not on the curve or coordinates are not valid field elements, +/// the function will return an error. +pub fn ecadd_inner( + (x1, y1): ECPointCoordinates, + (x2, y2): ECPointCoordinates, +) -> Result { + // Converting coordinates to the finite field format + // and validating that the conversion is successful + let x1_field = Fq::from_str(x1.to_string().as_str()).ok_or(Error::msg("invalid x1"))?; + let y1_field = Fq::from_str(y1.to_string().as_str()).ok_or(Error::msg("invalid y1"))?; + let x2_field = Fq::from_str(x2.to_string().as_str()).ok_or(Error::msg("invalid x2"))?; + let y2_field = Fq::from_str(y2.to_string().as_str()).ok_or(Error::msg("invalid y2"))?; + + // If one of the points is zero, then both coordinates are zero, + // which aligns with the from_xy_checked method implementation. + // However, if some point does not lie on the curve, the method will return an error. + let point_1 = G1Affine::from_xy_checked(x1_field, y1_field)?; + let point_2 = G1Affine::from_xy_checked(x2_field, y2_field)?; + + let mut point_1_projective = point_1.into_projective(); + point_1_projective.add_assign_mixed(&point_2); + + let point_1 = point_1_projective.into_affine(); + let coordinates = point_to_u256_tuple(point_1); + Ok(coordinates) +} + +pub fn ecadd_function( + monotonic_cycle_counter: u32, + precompile_call_params: LogQuery, + memory: &mut M, +) -> ( + usize, + Option<(Vec, Vec, Vec)>, +) { + let mut processor = ECAddPrecompile::; + processor.execute_precompile(monotonic_cycle_counter, precompile_call_params, memory) +} + +#[cfg(test)] +pub mod tests { + /// Tests the correctness of the `ecadd_inner` function for a specified point + /// inside the test. + #[test] + fn test_ecadd_inner_correctness() { + use super::*; + + // Got: + let x1 = U256::from_str_radix( + "0x1148f79e53544582d22e5071480ae679d0b9df89d69e881f611e8381384ed1ad", + 16, + ) + .unwrap(); + let y1 = U256::from_str_radix( + "0xbac10178d2cd8aa9b4af903461b9f1666c219cdfeb2bb5e0cd7cd6486a32a6d", + 16, + ) + .unwrap(); + let x2 = U256::from_str_radix( + "0x251edb9081aba0cb29a45e4565ab2a2136750be5c893000e35e031ee123889e8", + 16, + ) + .unwrap(); + let y2 = U256::from_str_radix( + "0x24a972b009ad5986a7e14781d4e0c2d11aff281004712470811ec9b4fcb7c569", + 16, + ) + .unwrap(); + let (x, y) = ecadd_inner((x1, y1), (x2, y2)).unwrap(); + + // Expected: + let expected_x = U256::from_str_radix( + "16722044054529980026630802318818607593549086552476606668453035265973506741708", + 10, + ) + .unwrap(); + let expected_y = U256::from_str_radix( + "5777135421494458653665242593020841953920930780504228016288089286576416057645", + 10, + ) + .unwrap(); + + // Validation: + assert_eq!(x, expected_x, "x coordinates are not equal"); + assert_eq!(y, expected_y, "y coordinates are not equal"); + } + + /// Tests the correctness of the `ecadd_inner` function when given + /// two opposite points. + #[test] + fn test_ecadd_inner_point_at_infinity_1() { + use super::*; + + // Got: + let x1 = U256::from_str_radix( + "0x1148f79e53544582d22e5071480ae679d0b9df89d69e881f611e8381384ed1ad", + 16, + ) + .unwrap(); + let y1 = U256::from_str_radix( + "0xbac10178d2cd8aa9b4af903461b9f1666c219cdfeb2bb5e0cd7cd6486a32a6d", + 16, + ) + .unwrap(); + let x2 = x1.clone(); + // y2 = -y1 in Fr + let y2 = U256::from_str_radix( + "0x24b83e5b5404c77f1d054cb33b65b94730bf50c369bf0f2f2f48beb251d9d2da", + 16, + ) + .unwrap(); + let (x, y) = ecadd_inner((x1, y1), (x2, y2)).unwrap(); + + // Expected: + let expected_x = U256::zero(); + let expected_y = U256::zero(); + + // Validation: + assert_eq!(x, expected_x, "x coordinates are not equal"); + assert_eq!(y, expected_y, "y coordinates are not equal"); + } + + /// Tests the correctness of the `ecadd_inner` function when given + /// two points at infinity + #[test] + fn test_ecadd_inner_point_at_infinity_2() { + use super::*; + + // Got: + let zero = U256::zero(); + let (x, y) = ecadd_inner((zero, zero), (zero, zero)).unwrap(); + + // Expected: + let expected_x = U256::zero(); + let expected_y = U256::zero(); + + // Validation: + assert_eq!(x, expected_x, "x coordinates are not equal"); + assert_eq!(y, expected_y, "y coordinates are not equal"); + } + + /// Tests the correctness of the `ecadd_inner` function for a specified point + /// taken from https://www.evm.codes/precompiled#0x06 + #[test] + fn test_ecadd_inner_correctness_evm_codes() { + use super::*; + + // Got: + let x1 = U256::from_str_radix("1", 10).unwrap(); + let y1 = U256::from_str_radix("2", 10).unwrap(); + let x2 = U256::from_str_radix("1", 10).unwrap(); + let y2 = U256::from_str_radix("2", 10).unwrap(); + let (x, y) = ecadd_inner((x1, y1), (x2, y2)).unwrap(); + + // Expected: + let expected_x = U256::from_str_radix( + "1368015179489954701390400359078579693043519447331113978918064868415326638035", + 10, + ) + .unwrap(); + let expected_y = U256::from_str_radix( + "9918110051302171585080402603319702774565515993150576347155970296011118125764", + 10, + ) + .unwrap(); + + // Validation: + assert_eq!(x, expected_x, "x coordinates are not equal"); + assert_eq!(y, expected_y, "y coordinates are not equal"); + } + + /// Tests that the function does not allow point (x1, y1) that does not lie on the curve. + #[test] + #[should_panic] + fn test_ecadd_inner_invalid_x1y1() { + use super::*; + + // (x1, y1) does not lie on the curve + let x1 = U256::from_str_radix("1", 10).unwrap(); + let y1 = U256::from_str_radix("3", 10).unwrap(); + let x2 = U256::from_str_radix( + "0x251edb9081aba0cb29a45e4565ab2a2136750be5c893000e35e031ee123889e8", + 16, + ) + .unwrap(); + let y2 = U256::from_str_radix( + "0x24a972b009ad5986a7e14781d4e0c2d11aff281004712470811ec9b4fcb7c569", + 16, + ) + .unwrap(); + + // This should panic: + let _ = ecadd_inner((x1, y1), (x2, y2)).unwrap(); + } + + /// Tests that the function does not allow point (x2, y2) that does not lie on the curve. + #[test] + #[should_panic] + fn test_ecadd_inner_invalid_x2y2() { + use super::*; + + let x1 = U256::from_str_radix( + "0x1148f79e53544582d22e5071480ae679d0b9df89d69e881f611e8381384ed1ad", + 10, + ) + .unwrap(); + let y1 = U256::from_str_radix( + "0xbac10178d2cd8aa9b4af903461b9f1666c219cdfeb2bb5e0cd7cd6486a32a6d", + 10, + ) + .unwrap(); + + // (x2, y2) does not lie on the curve + let x2 = U256::from_str_radix("1", 16).unwrap(); + let y2 = U256::from_str_radix("10", 16).unwrap(); + + // This should panic: + let _ = ecadd_inner((x1, y1), (x2, y2)).unwrap(); + } +} diff --git a/crates/zk_evm_abstractions/src/precompiles/ecmul.rs b/crates/zk_evm_abstractions/src/precompiles/ecmul.rs new file mode 100644 index 0000000..7ee2aa7 --- /dev/null +++ b/crates/zk_evm_abstractions/src/precompiles/ecmul.rs @@ -0,0 +1,467 @@ +use std::str::FromStr; + +use anyhow::{Error, Result}; +use zkevm_opcode_defs::bn254::bn256::{Fq, Fr, G1Affine}; +use zkevm_opcode_defs::bn254::ff::PrimeField; +use zkevm_opcode_defs::bn254::{CurveAffine, CurveProjective}; +use zkevm_opcode_defs::ethereum_types::U256; +pub use zkevm_opcode_defs::sha2::Digest; + +use crate::utils::bn254::{point_to_u256_tuple, ECPointCoordinates}; + +use super::*; + +// NOTE: We need x1, y1, and s: two coordinates of the point and the scalar +pub const MEMORY_READS_PER_CYCLE: usize = 3; +// NOTE: We need to specify the result of the multiplication and the status of the operation +pub const MEMORY_WRITES_PER_CYCLE: usize = 3; + +/// The order of the group of points on the BN254 curve. +pub const EC_GROUP_ORDER: &str = + "0x30644e72e131a029b85045b68181585d2833e84879b9709143e1f593f0000001"; + +#[derive(Clone, Debug, PartialEq, Eq, Hash)] +pub struct ECMulRoundWitness { + pub new_request: LogQuery, + pub reads: [MemoryQuery; MEMORY_READS_PER_CYCLE], + pub writes: [MemoryQuery; MEMORY_WRITES_PER_CYCLE], +} + +#[derive(Clone, Debug, PartialEq, Eq, Hash)] +pub struct ECMulPrecompile; + +impl Precompile for ECMulPrecompile { + type CycleWitness = ECMulRoundWitness; + + fn execute_precompile( + &mut self, + monotonic_cycle_counter: u32, + query: LogQuery, + memory: &mut M, + ) -> ( + usize, + Option<(Vec, Vec, Vec)>, + ) { + const NUM_ROUNDS: usize = 1; + + // read the parameters + let precompile_call_params = query; + let params = precompile_abi_in_log(precompile_call_params); + let timestamp_to_read = precompile_call_params.timestamp; + let timestamp_to_write = Timestamp(timestamp_to_read.0 + 1); // our default timestamping agreement + + let mut current_read_location = MemoryLocation { + memory_type: MemoryType::Heap, // we default for some value, here it's not that important + page: MemoryPage(params.memory_page_to_read), + index: MemoryIndex(params.input_memory_offset), + }; + + // we assume that we have + // - x1 as U256 as a first coordinate of the point (32 bytes) + // - y1 as U256 as a second coordinate of the point (32 bytes) + // - s as U256 as a scalar to multiply with (32 bytes) + + // we do 6 queries per precompile + let mut read_history = if B { + Vec::with_capacity(MEMORY_READS_PER_CYCLE) + } else { + vec![] + }; + let mut write_history = if B { + Vec::with_capacity(MEMORY_WRITES_PER_CYCLE) + } else { + vec![] + }; + + let mut round_witness = ECMulRoundWitness { + new_request: precompile_call_params, + reads: [MemoryQuery::empty(); MEMORY_READS_PER_CYCLE], + writes: [MemoryQuery::empty(); MEMORY_WRITES_PER_CYCLE], + }; + + let mut read_idx = 0; + + let x1_query = MemoryQuery { + timestamp: timestamp_to_read, + location: current_read_location, + value: U256::zero(), + value_is_pointer: false, + rw_flag: false, + }; + let x1_query = memory.execute_partial_query(monotonic_cycle_counter, x1_query); + let x1_value = x1_query.value; + if B { + round_witness.reads[read_idx] = x1_query; + read_idx += 1; + read_history.push(x1_query); + } + + current_read_location.index.0 += 1; + let y1_query = MemoryQuery { + timestamp: timestamp_to_read, + location: current_read_location, + value: U256::zero(), + value_is_pointer: false, + rw_flag: false, + }; + let y1_query = memory.execute_partial_query(monotonic_cycle_counter, y1_query); + let y1_value = y1_query.value; + if B { + round_witness.reads[read_idx] = y1_query; + read_idx += 1; + read_history.push(y1_query); + } + + current_read_location.index.0 += 1; + let s_query = MemoryQuery { + timestamp: timestamp_to_read, + location: current_read_location, + value: U256::zero(), + value_is_pointer: false, + rw_flag: false, + }; + let s_query = memory.execute_partial_query(monotonic_cycle_counter, s_query); + let s_value = s_query.value; + if B { + round_witness.reads[read_idx] = s_query; + read_history.push(s_query); + } + + // Performing multiplication + let point_multiplied = ecmul_inner((x1_value, y1_value), s_value); + + if let Ok((x, y)) = point_multiplied { + let mut write_location = MemoryLocation { + memory_type: MemoryType::Heap, // we default for some value, here it's not that important + page: MemoryPage(params.memory_page_to_write), + index: MemoryIndex(params.output_memory_offset), + }; + + // Marking that the operation was successful + let ok_marker = U256::one(); + let ok_or_err_query = MemoryQuery { + timestamp: timestamp_to_write, + location: write_location, + value: ok_marker, + value_is_pointer: false, + rw_flag: true, + }; + let ok_or_err_query = + memory.execute_partial_query(monotonic_cycle_counter, ok_or_err_query); + + // Writing resultant x coordinate + write_location.index.0 += 1; + + let x_result_query = MemoryQuery { + timestamp: timestamp_to_write, + location: write_location, + value: x, + value_is_pointer: false, + rw_flag: true, + }; + let x_result_query = + memory.execute_partial_query(monotonic_cycle_counter, x_result_query); + + // Writing resultant y coordinate + write_location.index.0 += 1; + + let y_result_query = MemoryQuery { + timestamp: timestamp_to_write, + location: write_location, + value: y, + value_is_pointer: false, + rw_flag: true, + }; + let y_result_query = + memory.execute_partial_query(monotonic_cycle_counter, y_result_query); + + if B { + round_witness.writes[0] = ok_or_err_query; + round_witness.writes[1] = x_result_query; + round_witness.writes[2] = y_result_query; + write_history.push(ok_or_err_query); + write_history.push(x_result_query); + write_history.push(y_result_query); + } + } else { + let mut write_location = MemoryLocation { + memory_type: MemoryType::Heap, // we default for some value, here it's not that important + page: MemoryPage(params.memory_page_to_write), + index: MemoryIndex(params.output_memory_offset), + }; + + let err_marker = U256::zero(); + let ok_or_err_query = MemoryQuery { + timestamp: timestamp_to_write, + location: write_location, + value: err_marker, + value_is_pointer: false, + rw_flag: true, + }; + let ok_or_err_query = + memory.execute_partial_query(monotonic_cycle_counter, ok_or_err_query); + + write_location.index.0 += 1; + let empty_result = U256::zero(); + let x_result_query = MemoryQuery { + timestamp: timestamp_to_write, + location: write_location, + value: empty_result, + value_is_pointer: false, + rw_flag: true, + }; + let x_result_query = + memory.execute_partial_query(monotonic_cycle_counter, x_result_query); + + write_location.index.0 += 1; + let empty_result = U256::zero(); + let y_result_query = MemoryQuery { + timestamp: timestamp_to_write, + location: write_location, + value: empty_result, + value_is_pointer: false, + rw_flag: true, + }; + let y_result_query = + memory.execute_partial_query(monotonic_cycle_counter, y_result_query); + + if B { + round_witness.writes[0] = ok_or_err_query; + round_witness.writes[1] = x_result_query; + round_witness.writes[2] = y_result_query; + write_history.push(ok_or_err_query); + write_history.push(x_result_query); + write_history.push(y_result_query); + } + } + + let witness = if B { + Some((read_history, write_history, vec![round_witness])) + } else { + None + }; + + (NUM_ROUNDS, witness) + } +} + +/// This function multiplies the point (x1,y1) by the scalar s on the BN254 curve. +/// It returns the result as a G1Affine point, represented by two U256. +/// +/// If the points are not on the curve, the function will return an error. +pub fn ecmul_inner((x1, y1): ECPointCoordinates, s: U256) -> Result { + // Converting coordinates to the finite field format + // and validating that the conversion is successful + let x1_field = Fq::from_str(x1.to_string().as_str()).ok_or(Error::msg("invalid x1"))?; + let y1_field = Fq::from_str(y1.to_string().as_str()).ok_or(Error::msg("invalid y1"))?; + + let u256_to_field = |u: U256| -> Fr { + // If the given uint256 is less than the order of the group r, we do not touch it. + // In rare cases where this scalar is indeed less than r, we subtract + // the order of the group from the scalar until it is less than r. + let group_order = U256::from_str(EC_GROUP_ORDER).unwrap(); + let mut u = u.clone(); + + // NOTE: Since 2**256 / r is approximately 5.29, we need max 6 subtractions. + // This still better than a division operation. + while u >= group_order { + u -= group_order; + } + + Fr::from_str(u.to_string().as_str()).unwrap() + }; + + let s_field = u256_to_field(s); + + // If one of the points is zero, then both coordinates are zero, + // which aligns with the from_xy_checked method implementation. + // However, if some point does not lie on the curve, the method will return an error. + let point_1 = G1Affine::from_xy_checked(x1_field, y1_field)?; + + let multiplied = point_1.mul(s_field).into_affine(); + let u256_tuple = point_to_u256_tuple(multiplied); + Ok(u256_tuple) +} + +pub fn ecmul_function( + monotonic_cycle_counter: u32, + precompile_call_params: LogQuery, + memory: &mut M, +) -> ( + usize, + Option<(Vec, Vec, Vec)>, +) { + let mut processor = ECMulPrecompile::; + processor.execute_precompile(monotonic_cycle_counter, precompile_call_params, memory) +} + +#[cfg(test)] +pub mod tests { + /// Tests the correctness of the `ecmul_inner` function for a specified point + /// and a scalar inside the test. + #[test] + fn test_ecmul_inner_correctness() { + use super::*; + + // Got: + let x1 = U256::from_str_radix( + "0x1148f79e53544582d22e5071480ae679d0b9df89d69e881f611e8381384ed1ad", + 16, + ) + .unwrap(); + let y1 = U256::from_str_radix( + "0xbac10178d2cd8aa9b4af903461b9f1666c219cdfeb2bb5e0cd7cd6486a32a6d", + 16, + ) + .unwrap(); + let s = U256::from_str_radix( + "0x15f0e77d431a6c4d21df6a71cdcb0b2eeba21fc1192bd9801b8cd8b7c763e115", + 16, + ) + .unwrap(); + let (x, y) = ecmul_inner((x1, y1), s).unwrap(); + + // Expected: + let expected_x = U256::from_str_radix( + "9941674825074992183128808489717167636392653540258056893654639521381088261704", + 10, + ) + .unwrap(); + let expected_y = U256::from_str_radix( + "8986289197266457569457494475222656986225227492679168701241837087965910154278", + 10, + ) + .unwrap(); + + // Validation: + assert_eq!(x, expected_x, "x coordinate is incorrect"); + assert_eq!(y, expected_y, "y coordinate is incorrect"); + } + + /// Tests the correctness of the `ecmul_inner` function for a specified point + /// taken from https://www.evm.codes/precompiled#0x07 + #[test] + fn test_ecmul_inner_correctness_evm_codes() { + use super::*; + + // Got: + let x1 = U256::from_str_radix("1", 10).unwrap(); + let y1 = U256::from_str_radix("2", 10).unwrap(); + let s = U256::from_str_radix("2", 10).unwrap(); + let (x, y) = ecmul_inner((x1, y1), s).unwrap(); + + // Expected: + let expected_x = U256::from_str_radix( + "1368015179489954701390400359078579693043519447331113978918064868415326638035", + 10, + ) + .unwrap(); + let expected_y = U256::from_str_radix( + "9918110051302171585080402603319702774565515993150576347155970296011118125764", + 10, + ) + .unwrap(); + + // Validation: + assert_eq!(x, expected_x, "x coordinate is incorrect"); + assert_eq!(y, expected_y, "y coordinate is incorrect"); + } + + /// Tests the correctness of the `ecmul_inner` function for a specified point + /// taken from https://www.evm.codes/precompiled#0x07 when the scalar + /// provided equals the group order. We expect to get the point at infinity. + #[test] + fn test_ecmul_inner_correctness_order_overflow_1() { + use super::*; + + // Got: + // Generator point, scalar is a group order + let x1 = U256::from_str_radix("1", 10).unwrap(); + let y1 = U256::from_str_radix("2", 10).unwrap(); + let s = U256::from_str_radix(EC_GROUP_ORDER, 16).unwrap(); + let (x, y) = ecmul_inner((x1, y1), s).unwrap(); + + // Expected: + // NOTE: Scalar is the group order, thus the result should be the point at infinity + let expected_x = U256::from_str_radix("0", 10).unwrap(); + let expected_y = U256::from_str_radix("0", 10).unwrap(); + + assert_eq!(x, expected_x, "x coordinate is incorrect"); + assert_eq!(y, expected_y, "y coordinate is incorrect"); + } + + /// Tests the correctness of the `ecmul_inner` function for a specified point + /// taken from https://www.evm.codes/precompiled#0x07 when the scalar + /// provided equals the 3*(group order). We expect to get the point at infinity. + /// Since 3*(group order) does not overflow u256, this is a valid test. + #[test] + fn test_ecmul_inner_correctness_order_overflow_2() { + use super::*; + + // Got: + // Generator point, scalar is 3*(group order) + let x1 = U256::from_str_radix("1", 10).unwrap(); + let y1 = U256::from_str_radix("2", 10).unwrap(); + let s = U256::from_str_radix( + "0x912ceb58a394e07d28f0d12384840917789bb8d96d2c51b3cba5e0bbd0000003", + 16, + ) + .unwrap(); + let (x, y) = ecmul_inner((x1, y1), s).unwrap(); + + // Expected: + // NOTE: Scalar is 3*(group order), thus the result should be the point at infinity + let expected_x = U256::from_str_radix("0", 10).unwrap(); + let expected_y = U256::from_str_radix("0", 10).unwrap(); + + assert_eq!(x, expected_x, "x coordinate is incorrect"); + assert_eq!(y, expected_y, "y coordinate is incorrect"); + } + + /// Tests the correctness of the `ecmul_inner` function for a specified point + /// taken from https://www.evm.codes/precompiled#0x07 when the scalar + /// provided equals the 5*(group order)+1. We expect to get the inputted point. + /// Since 5*(group order)+1 does not overflow u256, this is a valid test. + #[test] + fn test_ecmul_inner_correctness_order_overflow_3() { + use super::*; + + // Got: + // Generator point, scalar is 5*(group order)+1 + let x1 = U256::from_str_radix("1", 10).unwrap(); + let y1 = U256::from_str_radix("2", 10).unwrap(); + let s = U256::from_str_radix( + "0xf1f5883e65f820d099915c908786b9d1c903896a609f32d65369cbe3b0000006", + 16, + ) + .unwrap(); + let (x, y) = ecmul_inner((x1, y1), s).unwrap(); + + // Expected: + // NOTE: Scalar is 5*(group order)+1, thus the result should be (x1, y1) + let expected_x = x1.clone(); + let expected_y = y1.clone(); + + assert_eq!(x, expected_x, "x coordinate is incorrect"); + assert_eq!(y, expected_y, "y coordinate is incorrect"); + } + + /// Tests that the function does not allow to multiply by an invalid point. + #[test] + #[should_panic] + fn test_ecmul_invalid_point() { + use super::*; + + // (x1, y1) does not lie on the curve + let x1 = U256::from_str_radix("1", 10).unwrap(); + let y1 = U256::from_str_radix("10", 10).unwrap(); + let s = U256::from_str_radix( + "0x15f0e77d431a6c4d21df6a71cdcb0b2eeba21fc1192bd9801b8cd8b7c763e115", + 16, + ) + .unwrap(); + + // This should panic + let _ = ecmul_inner((x1, y1), s).unwrap(); + } +} diff --git a/crates/zk_evm_abstractions/src/precompiles/ecpairing.rs b/crates/zk_evm_abstractions/src/precompiles/ecpairing.rs new file mode 100644 index 0000000..a4386e7 --- /dev/null +++ b/crates/zk_evm_abstractions/src/precompiles/ecpairing.rs @@ -0,0 +1,632 @@ +use anyhow::{Error, Result}; +use zkevm_opcode_defs::bn254::bn256::{Fq, Fq12, Fq2, G1Affine, G2Affine}; +use zkevm_opcode_defs::bn254::ff::{Field, PrimeField}; +use zkevm_opcode_defs::bn254::CurveAffine; +use zkevm_opcode_defs::ethereum_types::U256; +pub use zkevm_opcode_defs::sha2::Digest; + +use super::*; + +// NOTE: We need x1, y1, x2, y2, x3, y3: +pub const MEMORY_READS_PER_CYCLE: usize = 6; +// NOTE: We need to specify the result of the pairing and the status of the operation +pub const MEMORY_WRITES_PER_CYCLE: usize = 2; + +// x1, y1, x2, y2, x3, y3 +type EcPairingInputTuple = [U256; 6]; + +#[derive(Clone, Debug, PartialEq, Eq, Hash)] +pub struct ECPairingRoundWitness { + pub new_request: Option, + pub reads: [MemoryQuery; MEMORY_READS_PER_CYCLE], + pub writes: Option<[MemoryQuery; MEMORY_WRITES_PER_CYCLE]>, +} + +#[derive(Clone, Debug, PartialEq, Eq, Hash)] +pub struct ECPairingPrecompile; + +impl Precompile for ECPairingPrecompile { + type CycleWitness = ECPairingRoundWitness; + + fn execute_precompile( + &mut self, + monotonic_cycle_counter: u32, + query: LogQuery, + memory: &mut M, + ) -> ( + usize, + Option<(Vec, Vec, Vec)>, + ) { + // read the parameters + let precompile_call_params = query; + let params = precompile_abi_in_log(precompile_call_params); + let num_rounds = params.precompile_interpreted_data as usize; + let timestamp_to_read = precompile_call_params.timestamp; + let timestamp_to_write = Timestamp(timestamp_to_read.0 + 1); // our default timestamping agreement + + let mut current_read_location = MemoryLocation { + memory_type: MemoryType::Heap, // we default for some value, here it's not that important + page: MemoryPage(params.memory_page_to_read), + index: MemoryIndex(params.input_memory_offset), + }; + + let mut read_history = if B { + Vec::with_capacity(num_rounds * MEMORY_READS_PER_CYCLE) + } else { + vec![] + }; + let mut write_history = if B { + Vec::with_capacity(MEMORY_WRITES_PER_CYCLE) + } else { + vec![] + }; + + let mut check_tuples = Vec::::with_capacity(num_rounds); + let mut witnesses = Vec::::with_capacity(num_rounds); + + let mut round_witness = ECPairingRoundWitness { + new_request: None, + reads: [MemoryQuery::empty(); MEMORY_READS_PER_CYCLE], + writes: None, + }; + + // Doing NUM_ROUNDS + for i in 0..num_rounds { + if i == 0 { + round_witness.new_request = Some(precompile_call_params); + } + // we assume that we have + // - x1 as U256 as a first coordinate of the first point (32 bytes) + // - y1 as U256 as a second coordinate of the first point (32 bytes) + // - x2 as U256 as a c0 component of first coordinate of the second point (32 bytes) + // - y2 as U256 as a c1 component of first coordinate of the second point (32 bytes) + // - x3 as U256 as a c0 component of second coordinate of the second point (32 bytes) + // - y3 as U256 as a c1 component of second coordinate of the second point (32 bytes) + + let x1_query = MemoryQuery { + timestamp: timestamp_to_read, + location: current_read_location, + value: U256::zero(), + value_is_pointer: false, + rw_flag: false, + }; + let x1_query = memory.execute_partial_query(monotonic_cycle_counter, x1_query); + let x1_value = x1_query.value; + if B { + round_witness.reads[0] = x1_query; + read_history.push(x1_query); + } + + current_read_location.index.0 += 1; + let y1_query = MemoryQuery { + timestamp: timestamp_to_read, + location: current_read_location, + value: U256::zero(), + value_is_pointer: false, + rw_flag: false, + }; + let y1_query = memory.execute_partial_query(monotonic_cycle_counter, y1_query); + let y1_value = y1_query.value; + if B { + round_witness.reads[1] = y1_query; + read_history.push(y1_query); + } + + current_read_location.index.0 += 1; + let x2_query = MemoryQuery { + timestamp: timestamp_to_read, + location: current_read_location, + value: U256::zero(), + value_is_pointer: false, + rw_flag: false, + }; + let x2_query = memory.execute_partial_query(monotonic_cycle_counter, x2_query); + let x2_value = x2_query.value; + if B { + round_witness.reads[2] = x2_query; + read_history.push(x2_query); + } + + current_read_location.index.0 += 1; + let y2_query = MemoryQuery { + timestamp: timestamp_to_read, + location: current_read_location, + value: U256::zero(), + value_is_pointer: false, + rw_flag: false, + }; + let y2_query = memory.execute_partial_query(monotonic_cycle_counter, y2_query); + let y2_value = y2_query.value; + if B { + round_witness.reads[3] = y2_query; + read_history.push(y2_query); + } + + current_read_location.index.0 += 1; + let x3_query = MemoryQuery { + timestamp: timestamp_to_read, + location: current_read_location, + value: U256::zero(), + value_is_pointer: false, + rw_flag: false, + }; + let x3_query = memory.execute_partial_query(monotonic_cycle_counter, x3_query); + let x3_value = x3_query.value; + if B { + round_witness.reads[4] = x3_query; + read_history.push(x3_query); + } + + current_read_location.index.0 += 1; + let y3_query = MemoryQuery { + timestamp: timestamp_to_read, + location: current_read_location, + value: U256::zero(), + value_is_pointer: false, + rw_flag: false, + }; + let y3_query = memory.execute_partial_query(monotonic_cycle_counter, y3_query); + let y3_value = y3_query.value; + if B { + round_witness.reads[5] = y3_query; + read_history.push(y3_query); + } + current_read_location.index.0 += 1; + + let last_round = i == num_rounds - 1; + // We'll add write queries into last round witness separately + if !last_round { + witnesses.push(round_witness.clone()); + } + // Setting check tuples + check_tuples.push([x1_value, y1_value, x2_value, y2_value, x3_value, y3_value]); + } + + #[allow(unused_assignments)] + let mut ok_or_err_query = MemoryQuery::empty(); + #[allow(unused_assignments)] + let mut result_query = MemoryQuery::empty(); + + // Performing ecpairing check + let pairing_check = ecpairing_inner(check_tuples.to_vec()); + + if let Ok(result) = pairing_check { + let mut write_location = MemoryLocation { + memory_type: MemoryType::Heap, // we default for some value, here it's not that important + page: MemoryPage(params.memory_page_to_write), + index: MemoryIndex(params.output_memory_offset), + }; + + // Marking that the operation was successful + let ok_marker = U256::one(); + ok_or_err_query = MemoryQuery { + timestamp: timestamp_to_write, + location: write_location, + value: ok_marker, + value_is_pointer: false, + rw_flag: true, + }; + ok_or_err_query = + memory.execute_partial_query(monotonic_cycle_counter, ok_or_err_query); + + // Converting result to one if true and zero otherwise + let mut output_value = U256::zero(); + if result { + output_value = U256::one(); + } + + write_location.index.0 += 1; + result_query = MemoryQuery { + timestamp: timestamp_to_write, + location: write_location, + value: output_value, + value_is_pointer: false, + rw_flag: true, + }; + result_query = memory.execute_partial_query(monotonic_cycle_counter, result_query); + + if B { + write_history.push(ok_or_err_query); + write_history.push(result_query); + } + } else { + let mut write_location = MemoryLocation { + memory_type: MemoryType::Heap, // we default for some value, here it's not that important + page: MemoryPage(params.memory_page_to_write), + index: MemoryIndex(params.output_memory_offset), + }; + + let err_marker = U256::zero(); + ok_or_err_query = MemoryQuery { + timestamp: timestamp_to_write, + location: write_location, + value: err_marker, + value_is_pointer: false, + rw_flag: true, + }; + ok_or_err_query = + memory.execute_partial_query(monotonic_cycle_counter, ok_or_err_query); + + write_location.index.0 += 1; + let empty_result = U256::zero(); + result_query = MemoryQuery { + timestamp: timestamp_to_write, + location: write_location, + value: empty_result, + value_is_pointer: false, + rw_flag: true, + }; + result_query = memory.execute_partial_query(monotonic_cycle_counter, result_query); + + if B { + write_history.push(ok_or_err_query); + write_history.push(result_query); + } + } + + let witness = if B { + round_witness.writes = Some([ok_or_err_query, result_query]); + witnesses.push(round_witness); + Some((read_history, write_history, witnesses)) + } else { + None + }; + + (num_rounds, witness) + } +} + +/// This function checks whether the pairing of two points on the elliptic curve +/// produces one. +/// +/// If the points are not on the curve or coordinates are not valid field elements, +/// the function will return an error. +pub fn ecpairing_inner(inputs: Vec) -> Result { + // If input is empty, return true according to EIP-197 + if inputs.len() == 0 { + return Ok(true); + } + + let mut total_pairing = Fq12::one(); + for input in inputs { + let pairing = pair(&input)?; + total_pairing.mul_assign(&pairing); + } + + Ok(total_pairing.eq(&Fq12::one())) +} + +pub fn pair(input: &EcPairingInputTuple) -> Result { + // Setting variables for the coordinates of the points + let (x1, y1, x2, y2, x3, y3) = (input[0], input[1], input[2], input[3], input[4], input[5]); + + // Converting coordinates to the finite field format + // and validating that the conversion is successful + let x1_field = Fq::from_str(x1.to_string().as_str()).ok_or(Error::msg("invalid x1"))?; + let y1_field = Fq::from_str(y1.to_string().as_str()).ok_or(Error::msg("invalid y1"))?; + let x2_field = Fq::from_str(x2.to_string().as_str()).ok_or(Error::msg("invalid x2"))?; + let y2_field = Fq::from_str(y2.to_string().as_str()).ok_or(Error::msg("invalid y2"))?; + let x3_field = Fq::from_str(x3.to_string().as_str()).ok_or(Error::msg("invalid x3"))?; + let y3_field = Fq::from_str(y3.to_string().as_str()).ok_or(Error::msg("invalid y3"))?; + + // Setting both points. + // NOTE: If one of the points is zero, then both coordinates are zero, + // which aligns with the from_xy_checked method implementation. + let point_1 = G1Affine::from_xy_checked(x1_field, y1_field)?; + + // NOTE: In EIP-192 spec, 3rd and 5th positions correspond to imaginary part, while 4th and 6th to real ones. + // Thus, it might be confusing why we switch the order below. + let point_2_x = Fq2 { + c0: y2_field, + c1: x2_field, + }; + let point_2_y = Fq2 { + c0: y3_field, + c1: x3_field, + }; + let point_2 = G2Affine::from_xy_checked(point_2_x, point_2_y)?; + + // Calculating the pairing operation and returning + let pairing = point_1.pairing_with(&point_2); + Ok(pairing) +} + +pub fn ecpairing_function( + monotonic_cycle_counter: u32, + precompile_call_params: LogQuery, + memory: &mut M, +) -> ( + usize, + Option<( + Vec, + Vec, + Vec, + )>, +) { + let mut processor = ECPairingPrecompile::; + processor.execute_precompile(monotonic_cycle_counter, precompile_call_params, memory) +} + +#[cfg(test)] +pub mod tests { + /// Tests the correctness of the `ecpairing_inner` by providing two valid points on the curve + /// that do not produce one as an output. + #[test] + fn test_ecpairing_inner_correctness_false() { + use super::*; + + let x1 = U256::from_str_radix( + "0x412aa5b0805215b55a5e2dbf0662031aad0f5ef13f28b25df20b8670d1c59a6", + 16, + ) + .unwrap(); + let y1 = U256::from_str_radix( + "0x16fb4b64ccff216fa5272e1e987c0616d60d8883d5834229c685949047e9411d", + 16, + ) + .unwrap(); + + let x2 = U256::from_str_radix( + "0x2d81dbc969f72bc0454ff8b04735b717b725fee98a2fcbcdcf6c5b51b1dff33f", + 16, + ) + .unwrap(); + let y2 = U256::from_str_radix( + "0x75239888fc8448ab781e2a8bb85eb556469474cd707d4b913bee28679920eb6", + 16, + ) + .unwrap(); + + let x3 = U256::from_str_radix( + "0x1ef1c268b7c4c78959f099a043ecd5e537fe3069ac9197235f16162372848cba", + 16, + ) + .unwrap(); + let y3 = U256::from_str_radix( + "0x209cfadc22f7e80d399d1886f1c53898521a34c62918ed802305f32b4070a3c4", + 16, + ) + .unwrap(); + + let result = ecpairing_inner(vec![[x1, y1, x2, y2, x3, y3]]).unwrap(); + assert_eq!(result, false); + } + + /// Tests the correctness of the `ecpairing_inner` by providing four valid points on the curve + /// that do not produce one as an output. Example is taken from https://www.evm.codes/precompiled#0x08 + #[test] + fn test_ecpairing_inner_correctness_true() { + use super::*; + + let x1_1 = U256::from_str_radix( + "0x2cf44499d5d27bb186308b7af7af02ac5bc9eeb6a3d147c186b21fb1b76e18da", + 16, + ) + .unwrap(); + let y1_1 = U256::from_str_radix( + "0x2c0f001f52110ccfe69108924926e45f0b0c868df0e7bde1fe16d3242dc715f6", + 16, + ) + .unwrap(); + + let x2_1 = U256::from_str_radix( + "0x1fb19bb476f6b9e44e2a32234da8212f61cd63919354bc06aef31e3cfaff3ebc", + 16, + ) + .unwrap(); + let y2_1 = U256::from_str_radix( + "0x22606845ff186793914e03e21df544c34ffe2f2f3504de8a79d9159eca2d98d9", + 16, + ) + .unwrap(); + + let x3_1 = U256::from_str_radix( + "0x2bd368e28381e8eccb5fa81fc26cf3f048eea9abfdd85d7ed3ab3698d63e4f90", + 16, + ) + .unwrap(); + let y3_1 = U256::from_str_radix( + "0x2fe02e47887507adf0ff1743cbac6ba291e66f59be6bd763950bb16041a0a85e", + 16, + ) + .unwrap(); + + let x1_2 = U256::from_str_radix( + "0x0000000000000000000000000000000000000000000000000000000000000001", + 16, + ) + .unwrap(); + let y1_2 = U256::from_str_radix( + "0x30644e72e131a029b85045b68181585d97816a916871ca8d3c208c16d87cfd45", + 16, + ) + .unwrap(); + + let x2_2 = U256::from_str_radix( + "0x1971ff0471b09fa93caaf13cbf443c1aede09cc4328f5a62aad45f40ec133eb4", + 16, + ) + .unwrap(); + let y2_2 = U256::from_str_radix( + "0x091058a3141822985733cbdddfed0fd8d6c104e9e9eff40bf5abfef9ab163bc7", + 16, + ) + .unwrap(); + + let x3_2 = U256::from_str_radix( + "0x2a23af9a5ce2ba2796c1f4e453a370eb0af8c212d9dc9acd8fc02c2e907baea2", + 16, + ) + .unwrap(); + let y3_2 = U256::from_str_radix( + "0x23a8eb0b0996252cb548a4487da97b02422ebc0e834613f954de6c7e0afdc1fc", + 16, + ) + .unwrap(); + + let result = ecpairing_inner(vec![ + [x1_1, y1_1, x2_1, y2_1, x3_1, y3_1], + [x1_2, y1_2, x2_2, y2_2, x3_2, y3_2], + ]) + .unwrap(); + + println!( + "{:?}", + vec![ + [x1_1, y1_1, x2_1, y2_1, x3_1, y3_1], + [x1_2, y1_2, x2_2, y2_2, x3_2, y3_2], + ] + ); + + assert_eq!(result, true); + } + + /// Tests the correctness of the `ecpairing_inner` by providing four valid points on the curve + /// and the rest are empty points. Example is taken from https://www.evm.codes/precompiled#0x08. + #[test] + fn test_ecpairing_inner_correctness_zero_inputs() { + use super::*; + + let x1_1 = U256::from_str_radix( + "0x2cf44499d5d27bb186308b7af7af02ac5bc9eeb6a3d147c186b21fb1b76e18da", + 16, + ) + .unwrap(); + let y1_1 = U256::from_str_radix( + "0x2c0f001f52110ccfe69108924926e45f0b0c868df0e7bde1fe16d3242dc715f6", + 16, + ) + .unwrap(); + + let x2_1 = U256::from_str_radix( + "0x1fb19bb476f6b9e44e2a32234da8212f61cd63919354bc06aef31e3cfaff3ebc", + 16, + ) + .unwrap(); + let y2_1 = U256::from_str_radix( + "0x22606845ff186793914e03e21df544c34ffe2f2f3504de8a79d9159eca2d98d9", + 16, + ) + .unwrap(); + + let x3_1 = U256::from_str_radix( + "0x2bd368e28381e8eccb5fa81fc26cf3f048eea9abfdd85d7ed3ab3698d63e4f90", + 16, + ) + .unwrap(); + let y3_1 = U256::from_str_radix( + "0x2fe02e47887507adf0ff1743cbac6ba291e66f59be6bd763950bb16041a0a85e", + 16, + ) + .unwrap(); + + let x1_2 = U256::from_str_radix( + "0x0000000000000000000000000000000000000000000000000000000000000001", + 16, + ) + .unwrap(); + let y1_2 = U256::from_str_radix( + "0x30644e72e131a029b85045b68181585d97816a916871ca8d3c208c16d87cfd45", + 16, + ) + .unwrap(); + + let x2_2 = U256::from_str_radix( + "0x1971ff0471b09fa93caaf13cbf443c1aede09cc4328f5a62aad45f40ec133eb4", + 16, + ) + .unwrap(); + let y2_2 = U256::from_str_radix( + "0x091058a3141822985733cbdddfed0fd8d6c104e9e9eff40bf5abfef9ab163bc7", + 16, + ) + .unwrap(); + + let x3_2 = U256::from_str_radix( + "0x2a23af9a5ce2ba2796c1f4e453a370eb0af8c212d9dc9acd8fc02c2e907baea2", + 16, + ) + .unwrap(); + let y3_2 = U256::from_str_radix( + "0x23a8eb0b0996252cb548a4487da97b02422ebc0e834613f954de6c7e0afdc1fc", + 16, + ) + .unwrap(); + + let empty_input = [U256::zero(); 6]; + + let result = ecpairing_inner(vec![ + [x1_1, y1_1, x2_1, y2_1, x3_1, y3_1], + [x1_2, y1_2, x2_2, y2_2, x3_2, y3_2], + empty_input, + empty_input, + empty_input, + empty_input, + ]) + .unwrap(); + + assert_eq!(result, true); + } + + /// Tests that the function does not allow to input a wrong first point. + #[test] + #[should_panic] + fn test_ecpairing_invalid_point_1() { + use super::*; + + // (x1, y1) does not lie on the curve + let x1 = U256::from_str_radix("5", 10).unwrap(); + let y1 = U256::from_str_radix("10", 10).unwrap(); + + let x2 = U256::from_str_radix( + "0x16342ef5343ae56e96dafd3fc43aaf6a715642f376327cf2bdb813cf41a0b55b", + 16, + ) + .unwrap(); + let y2 = U256::from_str_radix( + "0x237e8c97323c9032ce9e05af4b1597881131d137b5313182c9ef1b2576c9f3f1", + 16, + ) + .unwrap(); + + let x3 = U256::from_str_radix( + "0x9c316c01492b5d4e2521d897b66de1e47438adf83a320054f8fc763935dc754", + 16, + ) + .unwrap(); + let y3 = U256::from_str_radix( + "0xe1bf45145e9ee5372a81f2ad50b81830e3bb26400a5a72999fac2f73d768089", + 16, + ) + .unwrap(); + + let _ = ecpairing_inner(vec![[x1, y1, x2, y2, x3, y3]]).unwrap(); + } + + /// Tests that the function does not allow to input a wrong second point. + #[test] + #[should_panic] + fn test_ecpairing_invalid_point_2() { + use super::*; + + let x1 = U256::from_str_radix( + "0x412aa5b0805215b55a5e2dbf0662031aad0f5ef13f28b25df20b8670d1c59a6", + 16, + ) + .unwrap(); + let y1 = U256::from_str_radix( + "0x16fb4b64ccff216fa5272e1e987c0616d60d8883d5834229c685949047e9411d", + 16, + ) + .unwrap(); + + // ((x2,y2), (x3,y3)) does not lie on the curve + let x2 = U256::from_str_radix("0", 10).unwrap(); + let y2 = U256::from_str_radix("1", 10).unwrap(); + + let x3 = U256::from_str_radix("2", 10).unwrap(); + let y3 = U256::from_str_radix("3", 10).unwrap(); + + let _ = ecpairing_inner(vec![[x1, y1, x2, y2, x3, y3]]).unwrap(); + } +} diff --git a/crates/zk_evm_abstractions/src/precompiles/mod.rs b/crates/zk_evm_abstractions/src/precompiles/mod.rs index 54078cf..57b0817 100644 --- a/crates/zk_evm_abstractions/src/precompiles/mod.rs +++ b/crates/zk_evm_abstractions/src/precompiles/mod.rs @@ -2,8 +2,12 @@ use crate::aux::*; use crate::queries::*; use crate::vm::*; +pub mod ecadd; +pub mod ecmul; +pub mod ecpairing; pub mod ecrecover; pub mod keccak256; +pub mod modexp; pub mod secp256r1_verify; pub mod sha256; @@ -14,7 +18,10 @@ use zkevm_opcode_defs::system_params::{ SECP256R1_VERIFY_PRECOMPILE_ADDRESS, SHA256_ROUND_FUNCTION_PRECOMPILE_ADDRESS, }; -use zkevm_opcode_defs::PrecompileCallABI; +use zkevm_opcode_defs::{ + PrecompileCallABI, ECADD_PRECOMPILE_ADDRESS, ECMUL_PRECOMPILE_ADDRESS, + ECPAIRING_PRECOMPILE_ADDRESS, MODEXP_PRECOMPILE_ADDRESS, +}; #[repr(u16)] #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, TryFromPrimitive)] @@ -23,6 +30,10 @@ pub enum PrecompileAddress { SHA256 = SHA256_ROUND_FUNCTION_PRECOMPILE_ADDRESS, Keccak256 = KECCAK256_ROUND_FUNCTION_PRECOMPILE_ADDRESS, Secp256r1Verify = SECP256R1_VERIFY_PRECOMPILE_ADDRESS, + Modexp = MODEXP_PRECOMPILE_ADDRESS, + ECAdd = ECADD_PRECOMPILE_ADDRESS, + ECMul = ECMUL_PRECOMPILE_ADDRESS, + ECPairing = ECPAIRING_PRECOMPILE_ADDRESS, } pub const fn precompile_abi_in_log(query: LogQuery) -> PrecompileCallABI { @@ -152,6 +163,81 @@ impl PrecompilesProcessor for DefaultPrecompilesProcessor { memory, ); + None + } + } + PrecompileAddress::Modexp => { + // pure function call, non-revertable + if B { + let (reads, writes, round_witness) = + modexp::modexp_function::(monotonic_cycle_counter, query, memory) + .1 + .expect("must generate intermediate witness"); + + Some(( + reads, + writes, + PrecompileCyclesWitness::Modexp(round_witness), + )) + } else { + let _ = modexp::modexp_function::(monotonic_cycle_counter, query, memory); + + None + } + } + PrecompileAddress::ECAdd => { + // pure function call, non-revertable + if B { + let (reads, writes, round_witness) = + ecadd::ecadd_function::(monotonic_cycle_counter, query, memory) + .1 + .expect("must generate intermediate witness"); + + Some((reads, writes, PrecompileCyclesWitness::ECAdd(round_witness))) + } else { + let _ = ecadd::ecadd_function::(monotonic_cycle_counter, query, memory); + + None + } + } + PrecompileAddress::ECMul => { + // pure function call, non-revertable + if B { + let (reads, writes, round_witness) = + ecmul::ecmul_function::(monotonic_cycle_counter, query, memory) + .1 + .expect("must generate intermediate witness"); + + Some((reads, writes, PrecompileCyclesWitness::ECMul(round_witness))) + } else { + let _ = ecmul::ecmul_function::(monotonic_cycle_counter, query, memory); + + None + } + } + PrecompileAddress::ECPairing => { + // pure function call, non-revertable + if B { + let (reads, writes, round_witness) = ecpairing::ecpairing_function::( + monotonic_cycle_counter, + query, + memory, + ) + .1 + .expect("must generate intermediate witness"); + + Some(( + reads, + writes, + PrecompileCyclesWitness::ECPairing(round_witness), + )) + } else { + let _ = ecpairing::ecpairing_function::( + monotonic_cycle_counter, + query, + memory, + ); + None } } diff --git a/crates/zk_evm_abstractions/src/precompiles/modexp.rs b/crates/zk_evm_abstractions/src/precompiles/modexp.rs new file mode 100644 index 0000000..90bec4b --- /dev/null +++ b/crates/zk_evm_abstractions/src/precompiles/modexp.rs @@ -0,0 +1,217 @@ +use zkevm_opcode_defs::ethereum_types::U256; +pub use zkevm_opcode_defs::sha2::Digest; + +use super::*; + +// Base, exponent and modulus +pub const MEMORY_READS_PER_CYCLE: usize = 3; + +#[derive(Clone, Debug, PartialEq, Eq, Hash)] +pub struct ModexpRoundWitness { + pub new_request: LogQuery, + pub reads: [MemoryQuery; MEMORY_READS_PER_CYCLE], + pub write: MemoryQuery, +} + +#[derive(Clone, Debug, PartialEq, Eq, Hash)] +pub struct ModexpPrecompile; + +impl Precompile for ModexpPrecompile { + type CycleWitness = ModexpRoundWitness; + + fn execute_precompile( + &mut self, + monotonic_cycle_counter: u32, + query: LogQuery, + memory: &mut M, + ) -> ( + usize, + Option<(Vec, Vec, Vec)>, + ) { + const NUM_ROUNDS: usize = 1; + + // read the parameters + let precompile_call_params = query; + let params = precompile_abi_in_log(precompile_call_params); + let timestamp_to_read = precompile_call_params.timestamp; + let timestamp_to_write = Timestamp(timestamp_to_read.0 + 1); // our default timestamping agreement + + let mut current_read_location = MemoryLocation { + memory_type: MemoryType::Heap, // we default for some value, here it's not that important + page: MemoryPage(params.memory_page_to_read), + index: MemoryIndex(params.input_memory_offset), + }; + + let mut read_history = if B { + Vec::with_capacity(MEMORY_READS_PER_CYCLE) + } else { + vec![] + }; + + let mut round_witness = ModexpRoundWitness { + new_request: precompile_call_params, + reads: [MemoryQuery::empty(); MEMORY_READS_PER_CYCLE], + write: MemoryQuery::empty(), + }; + + let b_query = MemoryQuery { + timestamp: timestamp_to_read, + location: current_read_location, + value: U256::zero(), + value_is_pointer: false, + rw_flag: false, + }; + let b_query = memory.execute_partial_query(monotonic_cycle_counter, b_query); + let base = b_query.value; + if B { + round_witness.reads[0] = b_query; + read_history.push(b_query); + } + + current_read_location.index.0 += 1; + let e_query = MemoryQuery { + timestamp: timestamp_to_read, + location: current_read_location, + value: U256::zero(), + value_is_pointer: false, + rw_flag: false, + }; + let e_query = memory.execute_partial_query(monotonic_cycle_counter, e_query); + let exponent = e_query.value; + if B { + round_witness.reads[1] = e_query; + read_history.push(e_query); + } + + current_read_location.index.0 += 1; + let m_query = MemoryQuery { + timestamp: timestamp_to_read, + location: current_read_location, + value: U256::zero(), + value_is_pointer: false, + rw_flag: false, + }; + let m_query = memory.execute_partial_query(monotonic_cycle_counter, m_query); + let modulus = m_query.value; + if B { + round_witness.reads[2] = m_query; + read_history.push(m_query); + } + + let result = modexp_inner(base, exponent, modulus); + + let write_location = MemoryLocation { + memory_type: MemoryType::Heap, // we default for some value, here it's not that important + page: MemoryPage(params.memory_page_to_write), + index: MemoryIndex(params.output_memory_offset), + }; + + let result_query = MemoryQuery { + timestamp: timestamp_to_write, + location: write_location, + value: result, + value_is_pointer: false, + rw_flag: true, + }; + let result_query = memory.execute_partial_query(monotonic_cycle_counter, result_query); + + if B { + round_witness.write = result_query; + } + + let witness = if B { + Some((read_history, vec![result_query], vec![round_witness])) + } else { + None + }; + + (NUM_ROUNDS, witness) + } +} + +/// This function evaluates the `modexp(b,e,m)`. +/// It uses the simplest square-and-multiply method that can be found here: +/// https://cse.buffalo.edu/srds2009/escs2009_submission_Gopal.pdf. +pub fn modexp_inner(b: U256, e: U256, m: U256) -> U256 { + // See EIP-198 for specification + if b.is_zero() || e.is_zero() || m.is_zero() { + return U256::zero(); + } + + let mut a = U256::one(); + + let modmul = |a: U256, b: U256, m: U256| { + let product: zkevm_opcode_defs::ethereum_types::U512 = a.full_mul(b); + let (_, rem) = product.div_mod(m.into()); + + let result: U256 = rem.try_into().unwrap(); + result + }; + + for i in (0..e.bits()).rev() { + let bit = e.bit(i); + + a = modmul(a, a, m); + if bit { + a = modmul(a, b, m); + } + } + + a +} + +pub fn modexp_function( + monotonic_cycle_counter: u32, + precompile_call_params: LogQuery, + memory: &mut M, +) -> ( + usize, + Option<(Vec, Vec, Vec)>, +) { + let mut processor = ModexpPrecompile::; + processor.execute_precompile(monotonic_cycle_counter, precompile_call_params, memory) +} + +#[cfg(test)] +pub mod tests { + use std::str::FromStr; + + /// Tests the correctness of the `modexp_inner` function for a specified + /// set of inputs from https://www.evm.codes/precompiled#0x05. + #[test] + fn test_modexp_inner_correctness_evm_codes() { + use super::*; + + let b = U256::from_str("0x8").unwrap(); + let e = U256::from_str("0x9").unwrap(); + let m = U256::from_str("0xa").unwrap(); + + let result = modexp_inner(b, e, m); + + assert_eq!(result, U256::from_str("0x8").unwrap()); + } + + /// Tests the correctness of the `modexp_inner` function for randomly + /// generated U256 integers. + #[test] + fn test_modexp_inner_correctness_big_ints() { + use super::*; + + let b = + U256::from_str("0x7f333213268023a7d3d40ea760d0e1c00d5fe99710e379193fc5973e7ad09370") + .unwrap(); + let e = U256::from_str("0x39d71831130091794534336679323390f4408be38cb89963ec41f4a90d6bf63") + .unwrap(); + let m = + U256::from_str("0xec6f05ec20e4c25420f9d6bc6800f9544ecabf5dbea80d11e0fb12c7f0517f5b") + .unwrap(); + + let result = modexp_inner(b, e, m); + + assert_eq!( + result, + U256::from_str("0x2779a7e4d2b26461c6557a12eb86285eeeb9cf5a40155305177854b15b4ed3df") + .unwrap() + ); + } +} diff --git a/crates/zk_evm_abstractions/src/utils/bn254.rs b/crates/zk_evm_abstractions/src/utils/bn254.rs new file mode 100644 index 0000000..c4a2557 --- /dev/null +++ b/crates/zk_evm_abstractions/src/utils/bn254.rs @@ -0,0 +1,49 @@ +//! Helper functions and types for working with elliptic curves. + +use std::str::FromStr; + +use zkevm_opcode_defs::{ + bn254::{bn256::G1Affine, ff::PrimeField, CurveAffine}, + ethereum_types::U256, +}; + +pub type ECPointCoordinates = (U256, U256); + +/// This function converts a [`G1Affine`] point into a tuple of two [`U256`]. +/// +/// If the point is zero, the function will return `(0,0)` compared to the +/// `from_xy_checked` method implementation which returns `(0,1)`. +pub fn point_to_u256_tuple(point: G1Affine) -> ECPointCoordinates { + if point.is_zero() { + return (U256::zero(), U256::zero()); + } + + let (x, y) = point.into_xy_unchecked(); + let x = U256::from_str(format!("{}", x.into_repr()).as_str()).unwrap(); + let y = U256::from_str(format!("{}", y.into_repr()).as_str()).unwrap(); + (x, y) +} + +#[cfg(test)] +pub mod test { + /// Verifies that the `point_to_u256_tuple` function returns the correct + /// values for a point at infinity, that is (0, 0) according to + /// evm codes spec. + #[test] + fn point_at_infinity_to_u256_tuple() { + use super::*; + let point = G1Affine::zero(); + let (x, y) = point_to_u256_tuple(point); + assert_eq!(x, U256::zero()); + assert_eq!(y, U256::zero()); + } + + #[test] + fn regular_point_to_u256_tuple() { + use super::*; + let point = G1Affine::one(); + let (x, y) = point_to_u256_tuple(point); + assert_eq!(x, U256::from_str("1").unwrap()); + assert_eq!(y, U256::from_str("2").unwrap()); + } +} diff --git a/crates/zk_evm_abstractions/src/utils/mod.rs b/crates/zk_evm_abstractions/src/utils/mod.rs new file mode 100644 index 0000000..ee26b6d --- /dev/null +++ b/crates/zk_evm_abstractions/src/utils/mod.rs @@ -0,0 +1 @@ +pub mod bn254; diff --git a/crates/zk_evm_abstractions/src/vm.rs b/crates/zk_evm_abstractions/src/vm.rs index d2153c8..1e0c96b 100644 --- a/crates/zk_evm_abstractions/src/vm.rs +++ b/crates/zk_evm_abstractions/src/vm.rs @@ -3,6 +3,10 @@ use zkevm_opcode_defs::{ FatPointer, }; +use crate::precompiles::ecadd::ECAddPrecompile; +use crate::precompiles::ecmul::ECMulPrecompile; +use crate::precompiles::ecpairing::ECPairingPrecompile; +use crate::precompiles::modexp::ModexpPrecompile; use crate::{ aux::{MemoryPage, PubdataCost, Timestamp}, precompiles::{ @@ -59,6 +63,10 @@ pub enum PrecompileCyclesWitness { Keccak256(Vec< as Precompile>::CycleWitness>), ECRecover(Vec< as Precompile>::CycleWitness>), Secp256r1Verify(Vec< as Precompile>::CycleWitness>), + Modexp(Vec< as Precompile>::CycleWitness>), + ECAdd(Vec< as Precompile>::CycleWitness>), + ECMul(Vec< as Precompile>::CycleWitness>), + ECPairing(Vec< as Precompile>::CycleWitness>), } // ALL traits here are for execution and NOT for witness generation. They can depend on one another, but should diff --git a/crates/zkevm_circuits/Cargo.toml b/crates/zkevm_circuits/Cargo.toml index def85c7..68ec44d 100644 --- a/crates/zkevm_circuits/Cargo.toml +++ b/crates/zkevm_circuits/Cargo.toml @@ -30,6 +30,8 @@ itertools = "0.10" rand_new = { package = "rand", version = "0.8" } hex = "0.4" seq-macro = "0.3" +lazy_static = "1.5.0" +serde_json = "1.0.127" [features] default = [] diff --git a/crates/zkevm_circuits/src/bn254/README.md b/crates/zkevm_circuits/src/bn254/README.md new file mode 100644 index 0000000..fd35c3d --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/README.md @@ -0,0 +1,43 @@ +# BN254 Elliptic Curve Circuits + +This folder contains circuits for elliptic curve operations over the BN254 curve. Namely, +we implement the following three precompiles: + +- `ecmul` - Elliptic curve point multiplication. +- `ecadd` - Elliptic curve point addition. +- `ecpairing` - Elliptic curve pairing. + +## :file_folder: Structure + +The package is structured as follows: + +| Path | Description | +| --- | --- | +| [`ec_add`](ec_add) | Circuit for elliptic curve point addition. | +| [`ec_mul`](ec_mul) | Circuit for elliptic curve point multiplication. | +| [`ec_pairing`](ec_pairing) | Circuit for elliptic curve pairing. | +| [`sage`](sage) | Sage code for debugging and experimenting. | +| [`tests`](tests) | Tests for the circuits which checks their validity. | + +## :zap: Performance + +The circuits are optimized for performance. Below, we list +the number of constraints for each circuit. + +| Circuit | General Purpose Rows | +| --- | --- | +| `ec_add` | 260 | +| `ec_mul` | 40,055 | +| `miller_loop` | 195,961 | +| `final_exp_no_torus` | 414,158 | +| `final_exp_divigili` | 421,586 | +| `ec_pairing_naive` | 610,004 | + +## :spiral_notepad: Precompile Final Performance + +| Circuit | General Purpose Rows | +| --- | --- | +| `ec_add` | 260 | +| `ec_mul` | 40,055 | +| `ec_pairing` | 610,004 | +| `modexp` (_32-4-32_ version) | 160,827 | diff --git a/crates/zkevm_circuits/src/bn254/ec_add/implementation.rs b/crates/zkevm_circuits/src/bn254/ec_add/implementation.rs new file mode 100644 index 0000000..87c10ba --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/ec_add/implementation.rs @@ -0,0 +1,14 @@ +use super::*; + +/// Adds two points in the plain SW projective coordinates. +pub fn projective_add( + cs: &mut CS, + point_1: &mut BN256SWProjectivePoint, + mut point_2: (BN256BaseNNField, BN256BaseNNField), +) -> BN256SWProjectivePoint +where + F: SmallField, + CS: ConstraintSystem, +{ + point_1.add_mixed(cs, &mut point_2) +} diff --git a/crates/zkevm_circuits/src/bn254/ec_add/input.rs b/crates/zkevm_circuits/src/bn254/ec_add/input.rs new file mode 100644 index 0000000..fab2bb4 --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/ec_add/input.rs @@ -0,0 +1,67 @@ +use std::collections::VecDeque; + +use super::*; +use crate::base_structures::precompile_input_outputs::*; +use crate::base_structures::vm_state::*; +use boojum::cs::Variable; +use boojum::field::SmallField; +use boojum::gadgets::queue::*; +use boojum::gadgets::traits::allocatable::CSAllocatable; +use boojum::gadgets::traits::allocatable::CSPlaceholder; +use boojum::gadgets::traits::auxiliary::PrettyComparison; +use boojum::gadgets::traits::encodable::CircuitVarLengthEncodable; +use boojum::gadgets::traits::encodable::WitnessVarLengthEncodable; +use derivative::Derivative; +use serde::{Deserialize, Serialize}; + +#[derive( + Derivative, + CSAllocatable, + CSSelectable, + CSVarLengthEncodable, + WitnessHookable, + WitVarLengthEncodable, +)] +#[derivative(Clone, Copy, Debug)] +#[DerivePrettyComparison("true")] +pub struct EcAddCircuitFSMInputOutput { + pub log_queue_state: QueueState, + pub memory_queue_state: QueueState, +} + +impl CSPlaceholder for EcAddCircuitFSMInputOutput +where + F: SmallField, +{ + fn placeholder(cs: &mut CS) -> Self + where + CS: ConstraintSystem, + { + Self { + log_queue_state: QueueState::::placeholder(cs), + memory_queue_state: QueueState::::placeholder(cs), + } + } +} + +pub type EcAddCircuitInputOutput = ClosedFormInput< + F, + EcAddCircuitFSMInputOutput, + PrecompileFunctionInputData, + PrecompileFunctionOutputData, +>; +pub type EcAddCircuitInputOutputWitness = ClosedFormInputWitness< + F, + EcAddCircuitFSMInputOutput, + PrecompileFunctionInputData, + PrecompileFunctionOutputData, +>; + +#[derive(Derivative, Serialize, Deserialize)] +#[derivative(Clone, Debug, Default)] +#[serde(bound = "")] +pub struct EcAddCircuitInstanceWitness { + pub closed_form_input: EcAddCircuitInputOutputWitness, + pub requests_queue_witness: CircuitQueueRawWitness, 4, LOG_QUERY_PACKED_WIDTH>, + pub memory_reads_witness: VecDeque<[U256; MEMORY_QUERIES_PER_CALL]>, +} diff --git a/crates/zkevm_circuits/src/bn254/ec_add/mod.rs b/crates/zkevm_circuits/src/bn254/ec_add/mod.rs new file mode 100644 index 0000000..dbc59db --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/ec_add/mod.rs @@ -0,0 +1,362 @@ +use arrayvec::ArrayVec; +use std::collections::VecDeque; +use std::sync::{Arc, RwLock}; + +use boojum::algebraic_props::round_function::AlgebraicRoundFunction; + +use boojum::cs::gates::PublicInputGate; +use boojum::cs::traits::cs::ConstraintSystem; +use boojum::field::SmallField; +use boojum::gadgets::boolean::Boolean; + +use boojum::gadgets::num::Num; +use boojum::gadgets::queue::CircuitQueueWitness; +use boojum::gadgets::queue::QueueState; +use boojum::gadgets::traits::allocatable::{CSAllocatableExt, CSPlaceholder}; +use boojum::gadgets::traits::round_function::CircuitRoundFunction; +use boojum::gadgets::traits::selectable::Selectable; +use boojum::gadgets::traits::witnessable::WitnessHookable; +use boojum::gadgets::u160::UInt160; +use boojum::gadgets::u256::UInt256; +use boojum::gadgets::u32::UInt32; +use boojum::gadgets::u8::UInt8; +use boojum::pairing::CurveAffine; +use cs_derive::*; +use derivative::Derivative; +use zkevm_opcode_defs::system_params::PRECOMPILE_AUX_BYTE; + +use crate::base_structures::log_query::*; +use crate::base_structures::memory_query::*; +use crate::base_structures::precompile_input_outputs::PrecompileFunctionOutputData; +use crate::bn254::ec_add::implementation::projective_add; +use crate::bn254::ec_add::input::EcAddCircuitInputOutput; +use crate::bn254::validation::{is_affine_infinity, is_on_curve, validate_in_field}; +use crate::demux_log_queue::StorageLogQueue; +use crate::ethereum_types::U256; +use crate::fsm_input_output::circuit_inputs::INPUT_OUTPUT_COMMITMENT_LENGTH; +use crate::fsm_input_output::*; +use crate::storage_application::ConditionalWitnessAllocator; + +use super::*; + +use self::ec_mul::implementation::{ + convert_field_element_to_uint256, convert_uint256_to_field_element, +}; +use self::input::EcAddCircuitInstanceWitness; + +pub mod implementation; +pub mod input; + +pub const MEMORY_QUERIES_PER_CALL: usize = 4; +pub const NUM_MEMORY_READS_PER_CYCLE: usize = 4; +const EXCEPTION_FLAGS_ARR_LEN: usize = 6; + +#[derive(Derivative, CSSelectable)] +#[derivative(Clone, Debug)] +pub struct EcAddPrecompileCallParams { + pub input_page: UInt32, + pub input_offset: UInt32, + pub output_page: UInt32, + pub output_offset: UInt32, +} + +impl EcAddPrecompileCallParams { + pub fn from_encoding>(_cs: &mut CS, encoding: UInt256) -> Self { + let input_offset = encoding.inner[0]; + let output_offset = encoding.inner[2]; + let input_page = encoding.inner[4]; + let output_page = encoding.inner[5]; + + let new = Self { + input_page, + input_offset, + output_page, + output_offset, + }; + + new + } +} + +fn ecadd_precompile_inner>( + cs: &mut CS, + x1: &UInt256, + y1: &UInt256, + x2: &UInt256, + y2: &UInt256, +) -> (Boolean, (UInt256, UInt256)) { + let base_field_params = &Arc::new(bn254_base_field_params()); + + // We need to check for infinity prior to potential masking coordinates. + let point1_is_infinity = is_affine_infinity(cs, (x1, y1)); + let point2_is_infinity = is_affine_infinity(cs, (x2, y2)); + + // Coordinates are masked with zero in-place if they are not in field. + let mut coordinates = ArrayVec::from([*x1, *y1, *x2, *y2]); + let coordinates_are_in_field = validate_in_field(cs, &mut coordinates, base_field_params); + let [x1, y1, x2, y2] = coordinates.into_inner().unwrap(); + + let x1 = convert_uint256_to_field_element(cs, &x1, base_field_params); + let y1 = convert_uint256_to_field_element(cs, &y1, base_field_params); + + let point1_on_curve = is_on_curve(cs, (&x1, &y1), base_field_params); + let point1_is_valid = point1_on_curve.or(cs, point1_is_infinity); + + // Mask the point with zero in case it is not on curve. + let zero = BN256SWProjectivePoint::zero(cs, base_field_params); + let unchecked_point = BN256SWProjectivePoint::from_xy_unchecked(cs, x1, y1); + let mut point1 = + BN256SWProjectivePoint::conditionally_select(cs, point1_on_curve, &unchecked_point, &zero); + + let x2 = convert_uint256_to_field_element(cs, &x2, base_field_params); + let y2 = convert_uint256_to_field_element(cs, &y2, base_field_params); + + let point2_on_curve = is_on_curve(cs, (&x2, &y2), base_field_params); + let point2_is_valid = point2_on_curve.or(cs, point2_is_infinity); + + let mut result = point1.add_mixed_inf_pass(cs, &mut (x2, y2), point2_is_infinity); + let ((mut x, mut y), _) = result.convert_to_affine_or_default(cs, BN256Affine::zero()); + + x.normalize(cs); + let x = convert_field_element_to_uint256(cs, x); + y.normalize(cs); + let y = convert_field_element_to_uint256(cs, y); + + let mut are_valid_inputs = ArrayVec::<_, EXCEPTION_FLAGS_ARR_LEN>::new(); + are_valid_inputs.extend(coordinates_are_in_field); + are_valid_inputs.push(point1_is_valid); + are_valid_inputs.push(point2_is_valid); + + let success = Boolean::multi_and(cs, &are_valid_inputs[..]); + let x = x.mask(cs, success); + let y = y.mask(cs, success); + + (success, (x, y)) +} + +pub fn ecadd_function_entry_point< + F: SmallField, + CS: ConstraintSystem, + R: CircuitRoundFunction + AlgebraicRoundFunction, +>( + cs: &mut CS, + witness: EcAddCircuitInstanceWitness, + round_function: &R, + limit: usize, +) -> [Num; INPUT_OUTPUT_COMMITMENT_LENGTH] +where + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN]:, + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN]:, + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN]:, + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN + 1]:, +{ + let EcAddCircuitInstanceWitness { + closed_form_input, + requests_queue_witness, + memory_reads_witness, + } = witness; + let memory_reads_witness: VecDeque<_> = memory_reads_witness.into_iter().flatten().collect(); + + let mut structured_input = + EcAddCircuitInputOutput::alloc_ignoring_outputs(cs, closed_form_input.clone()); + let start_flag = structured_input.start_flag; + + let requests_queue_state_from_input = structured_input.observable_input.initial_log_queue_state; + requests_queue_state_from_input.enforce_trivial_head(cs); + + let requests_queue_state_from_fsm = structured_input.hidden_fsm_input.log_queue_state; + + let requests_queue_state = QueueState::conditionally_select( + cs, + start_flag, + &requests_queue_state_from_input, + &requests_queue_state_from_fsm, + ); + + let mut requests_queue = StorageLogQueue::::from_state(cs, requests_queue_state); + let queue_witness = CircuitQueueWitness::from_inner_witness(requests_queue_witness); + requests_queue.witness = Arc::new(queue_witness); + + let memory_queue_state_from_input = + structured_input.observable_input.initial_memory_queue_state; + memory_queue_state_from_input.enforce_trivial_head(cs); + + let memory_queue_state_from_fsm = structured_input.hidden_fsm_input.memory_queue_state; + + let memory_queue_state = QueueState::conditionally_select( + cs, + start_flag, + &memory_queue_state_from_input, + &memory_queue_state_from_fsm, + ); + + let mut memory_queue = MemoryQueue::::from_state(cs, memory_queue_state); + let read_queries_allocator = ConditionalWitnessAllocator::> { + witness_source: Arc::new(RwLock::new(memory_reads_witness)), + }; + + let precompile_address = UInt160::allocated_constant( + cs, + *zkevm_opcode_defs::system_params::ECADD_PRECOMPILE_FORMAL_ADDRESS, + ); + + let one_u32 = UInt32::allocated_constant(cs, 1u32); + let zero_u256 = UInt256::zero(cs); + let boolean_false = Boolean::allocated_constant(cs, false); + let boolean_true = Boolean::allocated_constant(cs, true); + let aux_byte_for_precompile = UInt8::allocated_constant(cs, PRECOMPILE_AUX_BYTE); + + for _cycle in 0..limit { + let is_empty = requests_queue.is_empty(cs); + let should_process = is_empty.negated(cs); + let (request, _) = requests_queue.pop_front(cs, should_process); + + let mut precompile_call_params = EcAddPrecompileCallParams::from_encoding(cs, request.key); + + let timestamp_to_use_for_read = request.timestamp; + let timestamp_to_use_for_write = timestamp_to_use_for_read.add_no_overflow(cs, one_u32); + + Num::conditionally_enforce_equal( + cs, + should_process, + &Num::from_variable(request.aux_byte.get_variable()), + &Num::from_variable(aux_byte_for_precompile.get_variable()), + ); + for (a, b) in request + .address + .inner + .iter() + .zip(precompile_address.inner.iter()) + { + Num::conditionally_enforce_equal( + cs, + should_process, + &Num::from_variable(a.get_variable()), + &Num::from_variable(b.get_variable()), + ); + } + + let mut read_values = [zero_u256; NUM_MEMORY_READS_PER_CYCLE]; + let mut bias_variable = should_process.get_variable(); + for dst in read_values.iter_mut() { + let read_query_value = read_queries_allocator.conditionally_allocate_biased( + cs, + should_process, + bias_variable, + ); + bias_variable = read_query_value.inner[0].get_variable(); + + *dst = read_query_value; + + let read_query = MemoryQuery { + timestamp: timestamp_to_use_for_read, + memory_page: precompile_call_params.input_page, + index: precompile_call_params.input_offset, + rw_flag: boolean_false, + is_ptr: boolean_false, + value: read_query_value, + }; + + let _ = memory_queue.push(cs, read_query, should_process); + + precompile_call_params.input_offset = precompile_call_params + .input_offset + .add_no_overflow(cs, one_u32); + } + + let [x1, y1, x2, y2] = read_values; + + if crate::config::CIRCUIT_VERSOBE { + if should_process.witness_hook(cs)().unwrap() == true { + dbg!(x1.witness_hook(cs)()); + dbg!(y1.witness_hook(cs)()); + dbg!(x2.witness_hook(cs)()); + dbg!(y2.witness_hook(cs)()); + } + } + + let (success, (x, y)) = ecadd_precompile_inner(cs, &x1, &y1, &x2, &y2); + + let success_as_u32 = unsafe { UInt32::from_variable_unchecked(success.get_variable()) }; + let mut success = zero_u256; + success.inner[0] = success_as_u32; + + if crate::config::CIRCUIT_VERSOBE { + if should_process.witness_hook(cs)().unwrap() == true { + dbg!(success.witness_hook(cs)()); + dbg!(x.witness_hook(cs)()); + dbg!(y.witness_hook(cs)()); + } + } + + let success_query = MemoryQuery { + timestamp: timestamp_to_use_for_write, + memory_page: precompile_call_params.output_page, + index: precompile_call_params.output_offset, + rw_flag: boolean_true, + is_ptr: boolean_false, + value: success, + }; + + let _ = memory_queue.push(cs, success_query, should_process); + precompile_call_params.output_offset = precompile_call_params + .output_offset + .add_no_overflow(cs, one_u32); + + let x_query = MemoryQuery { + timestamp: timestamp_to_use_for_write, + memory_page: precompile_call_params.output_page, + index: precompile_call_params.output_offset, + rw_flag: boolean_true, + is_ptr: boolean_false, + value: x, + }; + + let _ = memory_queue.push(cs, x_query, should_process); + precompile_call_params.output_offset = precompile_call_params + .output_offset + .add_no_overflow(cs, one_u32); + + let y_query = MemoryQuery { + timestamp: timestamp_to_use_for_write, + memory_page: precompile_call_params.output_page, + index: precompile_call_params.output_offset, + rw_flag: boolean_true, + is_ptr: boolean_false, + value: y, + }; + + let _ = memory_queue.push(cs, y_query, should_process); + } + + requests_queue.enforce_consistency(cs); + + let done = requests_queue.is_empty(cs); + structured_input.completion_flag = done; + structured_input.observable_output = PrecompileFunctionOutputData::placeholder(cs); + + let final_memory_state = memory_queue.into_state(); + let final_requests_state = requests_queue.into_state(); + + structured_input.observable_output.final_memory_state = QueueState::conditionally_select( + cs, + structured_input.completion_flag, + &final_memory_state, + &structured_input.observable_output.final_memory_state, + ); + + structured_input.hidden_fsm_output.log_queue_state = final_requests_state; + structured_input.hidden_fsm_output.memory_queue_state = final_memory_state; + + structured_input.hook_compare_witness(cs, &closed_form_input); + + let compact_form = + ClosedFormInputCompactForm::from_full_form(cs, &structured_input, round_function); + let input_commitment = commit_variable_length_encodable_item(cs, &compact_form, round_function); + for el in input_commitment.iter() { + let gate = PublicInputGate::new(el.get_variable()); + gate.add_to_cs(cs); + } + + input_commitment +} diff --git a/crates/zkevm_circuits/src/bn254/ec_mul/implementation.rs b/crates/zkevm_circuits/src/bn254/ec_mul/implementation.rs new file mode 100644 index 0000000..ff4a560 --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/ec_mul/implementation.rs @@ -0,0 +1,429 @@ +use std::sync::Arc; + +use boojum::{ + crypto_bigint::U1024, + gadgets::{ + non_native_field::{ + implementations::{OverflowTracker, RepresentationForm}, + traits::NonNativeField, + }, + tables::ByteSplitTable, + u16::UInt16, + u512::UInt512, + }, + pairing::ff::PrimeField, +}; + +use super::*; + +// -- GLV constants -- + +// Width 4 windowed multiplication parameters +const WINDOW_WIDTH: usize = 4; +const NUM_MULTIPLICATION_STEPS_FOR_WIDTH_4: usize = 33; +const PRECOMPUTATION_TABLE_SIZE: usize = (1 << WINDOW_WIDTH) - 1; + +/// BETA parameter such that phi(x, y) = (beta*x, y) +/// is a valid endomorphism for the curve. Note +/// that it is possible to use one since 3 divides prime order - 1. +/// Detailed explanation can be found in file `endomorphism.sage` in `sage` folder. +const BETA: &str = "2203960485148121921418603742825762020974279258880205651966"; + +// Decomposition constants for vectors (a1, b1) and (a2, b2), +// derived through algorithm 3.74 http://tomlr.free.fr/Math%E9matiques/Math%20Complete/Cryptography/Guide%20to%20Elliptic%20Curve%20Cryptography%20-%20D.%20Hankerson,%20A.%20Menezes,%20S.%20Vanstone.pdf +// Also see `balanced_representation.sage` file for details + +/// `a1` component of a short vector `v1=(a1, b1)`. +const A1: &str = "0x89d3256894d213e3"; +/// `-b1` component of a short vector `v1=(a1, b1)`. +/// Since `b1` is negative, we use `-b1` instead of `b1`. +const B1: &str = "0x6f4d8248eeb859fc8211bbeb7d4f1128"; +/// `a2` component of a short vector `v2=(a2, b2)`. +const A2: &str = "0x6f4d8248eeb859fd0be4e1541221250b"; +/// `b2` component of a short vector `v2=(a2, b2)`. +const B2: &str = "0x89d3256894d213e3"; +// Note: `a1` and `a2` are not currently used in 4 bit window-based multiplication method. + +/// Precomputed value of `-b1/n << 256` +const G1: &str = "0x24ccef014a773d2cf7a7bd9d4391eb18d"; +/// Precomputed value of `b2/n << 256` +const G2: &str = "0x2d91d232ec7e0b3d7"; + +/// Lambda parameter +const LAMBDA: &str = "0xb3c4d79d41a917585bfc41088d8daaa78b17ea66b99c90dd"; + +// -- WNAF parameters -- + +/// The scalar multiplication window size. +const GLV_WINDOW_SIZE: usize = 2; +/// The GLV table length. +const L: usize = 1 << (GLV_WINDOW_SIZE - 1); + +/// Converts the `UInt256` element to a non-native field element over `u16`. +pub fn convert_uint256_to_field_element( + cs: &mut CS, + value: &UInt256, + params: &Arc>, +) -> NonNativeFieldOverU16 +where + F: SmallField, + CS: ConstraintSystem, + P: PrimeField, +{ + // We still have to decompose it into u16 words + let zero_var = Num::allocated_constant(cs, F::ZERO).get_variable(); + let mut limbs = [zero_var; N]; + assert!(N >= 16); + + for (dst, src) in limbs.array_chunks_mut::<2>().zip(value.inner.iter()) { + let [b0, b1, b2, b3] = src.to_le_bytes(cs); + let low = UInt16::from_le_bytes(cs, [b0, b1]); + let high = UInt16::from_le_bytes(cs, [b2, b3]); + + *dst = [low.get_variable(), high.get_variable()]; + } + + let mut max_value = U1024::from_word(1u64); + max_value = max_value.shl_vartime(256); + max_value = max_value.saturating_sub(&U1024::from_word(1u64)); + + let (overflows, rem) = max_value.div_rem(¶ms.modulus_u1024); + let mut max_moduluses = overflows.as_words()[0] as u32; + if rem.is_zero().unwrap_u8() != 1 { + max_moduluses += 1; + } + + let element = NonNativeFieldOverU16 { + limbs, + non_zero_limbs: 16, + tracker: OverflowTracker { max_moduluses }, + form: RepresentationForm::Normalized, + params: params.clone(), + _marker: std::marker::PhantomData, + }; + + element +} + +/// Converts the non-native field eelement over `u16` to a `UInt256`. +/// Note that caller must ensure that the field element is normalized, +/// otherwise this will fail. +pub fn convert_field_element_to_uint256( + cs: &mut CS, + mut value: NonNativeFieldOverU16, +) -> UInt256 +where + F: SmallField, + CS: ConstraintSystem, + P: PrimeField, +{ + assert_eq!(value.form, RepresentationForm::Normalized); + assert_eq!(value.tracker.max_moduluses, 1); + + let mut limbs = [UInt32::::zero(cs); 8]; + let two_pow_16 = Num::allocated_constant(cs, F::from_u64_unchecked(2u32.pow(16) as u64)); + for (dst, src) in limbs.iter_mut().zip(value.limbs.array_chunks_mut::<2>()) { + let low = Num::from_variable(src[0]); + let high = Num::from_variable(src[1]); + *dst = unsafe { + UInt32::from_variable_unchecked( + Num::fma(cs, &high, &two_pow_16, &F::ONE, &low, &F::ONE).get_variable(), + ) + }; + } + + UInt256 { inner: limbs } +} + +#[derive(Debug, Clone)] +pub struct ScalarDecomposition { + pub k1: BN256ScalarNNField, + pub k2: BN256ScalarNNField, + pub k1_was_negated: Boolean, + pub k2_was_negated: Boolean, +} + +impl ScalarDecomposition +where + F: SmallField, +{ + fn u256_from_hex_str(cs: &mut CS, s: &str) -> UInt256 + where + CS: ConstraintSystem, + { + let v = U256::from_str_radix(s, 16).unwrap(); + UInt256::allocated_constant(cs, v) + } + + fn bigint_from_hex_str(cs: &mut CS, s: &str) -> UInt512 + where + CS: ConstraintSystem, + { + let v = U256::from_str_radix(s, 16).unwrap(); + UInt512::allocated_constant(cs, (v, U256::zero())) + } + + pub fn from( + cs: &mut CS, + scalar: &mut BN256ScalarNNField, + scalar_field_params: &Arc, + ) -> Self + where + F: SmallField, + CS: ConstraintSystem, + { + // Defining constants under the constraint system + let pow_2_128 = UInt512::allocated_constant(cs, (U256([0, 0, 1, 0]), U256::zero())); + let lambda = Self::u256_from_hex_str(cs, LAMBDA); + let b1 = Self::u256_from_hex_str(cs, B1); + let b2 = Self::u256_from_hex_str(cs, B2); + let g1 = Self::u256_from_hex_str(cs, G1); + let g2 = Self::u256_from_hex_str(cs, G2); + + let k = convert_field_element_to_uint256(cs, scalar.clone()); + + // We take 8 non-zero limbs for the scalar (since it could be of any size), and 4 for G2 + // (since it fits in 128 bits). + let g2_times_k = k.widening_mul(cs, &g2, 8, 4); + let c1 = g2_times_k.to_high(); + + // We take 8 non-zero limbs for the scalar (since it could be of any size), and 5 for G2 + // (since it fits in 130 bits). + let g1_times_k = k.widening_mul(cs, &g1, 8, 5); + let c2 = g1_times_k.to_high(); + + // Converting all constants to field elements + let mut b1 = convert_uint256_to_field_element(cs, &b1, scalar_field_params); + let mut b2 = convert_uint256_to_field_element(cs, &b2, scalar_field_params); + let mut c1 = convert_uint256_to_field_element(cs, &c1, scalar_field_params); + let mut c2 = convert_uint256_to_field_element(cs, &c2, scalar_field_params); + let mut lambda = convert_uint256_to_field_element(cs, &lambda, scalar_field_params); + + // q1 <- c1 * b1 + // q2 <- c2 * b2 + let mut q1 = c1.mul(cs, &mut b1); + let mut q1 = q1.negated(cs); + let mut q2 = c2.mul(cs, &mut b2); + let mut q2 = q2.negated(cs); + + // k2 <- q2 - q1 + let mut k2 = q2.sub(cs, &mut q1); + k2.normalize(cs); + + // k2_lambda <- k2 * lambda, k1 <- k - k2_lambda + let mut k2_times_lambda = k2.mul(cs, &mut lambda); + let mut k1 = scalar.sub(cs, &mut k2_times_lambda); + k1.normalize(cs); + + let k1_u256 = convert_field_element_to_uint256(cs, k1.clone()); + let k2_u256 = convert_field_element_to_uint256(cs, k2.clone()); + + let low_pow_2_128 = pow_2_128.to_low(); + + // Selecting between k1 and -k1 in Fq + let (_, k1_out_of_range) = low_pow_2_128.overflowing_sub(cs, &k1_u256); + let k1_negated = k1.negated(cs); + let k1 = as NonNativeField>::conditionally_select( + cs, + k1_out_of_range, + &k1_negated, + &k1, + ); + + // Selecting between k2 and -k2 in Fq + let (_, k2_out_of_range) = low_pow_2_128.overflowing_sub(cs, &k2_u256); + let k2_negated = k2.negated(cs); + let k2 = as NonNativeField>::conditionally_select( + cs, + k2_out_of_range, + &k2_negated, + &k2, + ); + + Self { + k1, + k2, + k1_was_negated: k1_out_of_range, + k2_was_negated: k2_out_of_range, + } + } +} + +pub fn width_4_windowed_multiplication( + cs: &mut CS, + mut point: BN256SWProjectivePoint, + mut scalar: BN256ScalarNNField, + base_field_params: &Arc, + scalar_field_params: &Arc, +) -> BN256SWProjectivePoint +where + F: SmallField, + CS: ConstraintSystem, +{ + // Scalar decomposition + scalar.enforce_reduced(cs); + let scalar_decomposition = ScalarDecomposition::from(cs, &mut scalar, scalar_field_params); + + // create precomputed table of size 1<<4 - 1 + // there is no 0 * P in the table, we will handle it below + let mut table = Vec::with_capacity(PRECOMPUTATION_TABLE_SIZE); + let mut tmp = point.clone(); + let (mut p_affine, is_inf) = point.convert_to_affine_or_default(cs, BN256Affine::one()); + table.push(p_affine.clone()); + for _ in 1..PRECOMPUTATION_TABLE_SIZE { + // 2P, 3P, ... + tmp = tmp.add_mixed(cs, &mut p_affine); + let affine = unsafe { tmp.convert_to_affine(cs) }; + table.push(affine); + } + assert_eq!(table.len(), PRECOMPUTATION_TABLE_SIZE); + + let beta = BN256Fq::from_str(BETA).unwrap(); + let mut beta = BN256BaseNNField::allocated_constant(cs, beta, base_field_params); + + let mut endomorphisms_table = table.clone(); + for (x, _) in endomorphisms_table.iter_mut() { + *x = x.mul(cs, &mut beta); + } + + // we also know that we will multiply k1 by points, and k2 by their endomorphisms, and if they were + // negated above to fit into range, we negate bases here + for (_, y) in table.iter_mut() { + let negated = y.negated(cs); + *y = Selectable::conditionally_select( + cs, + scalar_decomposition.k1_was_negated, + &negated, + &*y, + ); + } + + for (_, y) in endomorphisms_table.iter_mut() { + let negated = y.negated(cs); + *y = Selectable::conditionally_select( + cs, + scalar_decomposition.k2_was_negated, + &negated, + &*y, + ); + } + + // now decompose every scalar we are interested in + let k1_msb_decomposition = to_width_4_window_form(cs, scalar_decomposition.k1); + let k2_msb_decomposition = to_width_4_window_form(cs, scalar_decomposition.k2); + + let mut comparison_constants = Vec::with_capacity(PRECOMPUTATION_TABLE_SIZE); + for i in 1..=PRECOMPUTATION_TABLE_SIZE { + let constant = Num::allocated_constant(cs, F::from_u64_unchecked(i as u64)); + comparison_constants.push(constant); + } + + // now we do amortized double and add + let mut acc = SWProjectivePoint::zero(cs, base_field_params); + assert_eq!( + k1_msb_decomposition.len(), + NUM_MULTIPLICATION_STEPS_FOR_WIDTH_4 + ); + assert_eq!( + k2_msb_decomposition.len(), + NUM_MULTIPLICATION_STEPS_FOR_WIDTH_4 + ); + + for (idx, (k1_window_idx, k2_window_idx)) in k1_msb_decomposition + .into_iter() + .zip(k2_msb_decomposition.into_iter()) + .enumerate() + { + let ignore_k1_part = k1_window_idx.is_zero(cs); + let ignore_k2_part = k2_window_idx.is_zero(cs); + + let (mut selected_k1_part_x, mut selected_k1_part_y) = table[0].clone(); + let (mut selected_k2_part_x, mut selected_k2_part_y) = endomorphisms_table[0].clone(); + for i in 1..PRECOMPUTATION_TABLE_SIZE { + let should_select_k1 = Num::equals(cs, &comparison_constants[i], &k1_window_idx); + let should_select_k2 = Num::equals(cs, &comparison_constants[i], &k2_window_idx); + selected_k1_part_x = Selectable::conditionally_select( + cs, + should_select_k1, + &table[i].0, + &selected_k1_part_x, + ); + selected_k1_part_y = Selectable::conditionally_select( + cs, + should_select_k1, + &table[i].1, + &selected_k1_part_y, + ); + selected_k2_part_x = Selectable::conditionally_select( + cs, + should_select_k2, + &endomorphisms_table[i].0, + &selected_k2_part_x, + ); + selected_k2_part_y = Selectable::conditionally_select( + cs, + should_select_k2, + &endomorphisms_table[i].1, + &selected_k2_part_y, + ); + } + + let tmp_acc = acc.add_mixed(cs, &mut (selected_k1_part_x, selected_k1_part_y)); + acc = Selectable::conditionally_select(cs, ignore_k1_part, &acc, &tmp_acc); + let tmp_acc = acc.add_mixed(cs, &mut (selected_k2_part_x, selected_k2_part_y)); + acc = Selectable::conditionally_select(cs, ignore_k2_part, &acc, &tmp_acc); + + if idx != NUM_MULTIPLICATION_STEPS_FOR_WIDTH_4 - 1 { + for _ in 0..WINDOW_WIDTH { + acc = acc.double(cs); + } + } + } + // inf * scalar = inf, therefore unmask the generator if the input was inf. + let inf = BN256SWProjectivePoint::zero(cs, base_field_params); + let acc = BN256SWProjectivePoint::conditionally_select(cs, is_inf, &inf, &acc); + acc +} + +fn to_width_4_window_form>( + cs: &mut CS, + limited_width_scalar: BN256ScalarNNField, +) -> Vec> { + // we know that width is 128 bits, so just do BE decomposition and put into resulting array + let zero_num = Num::zero(cs); + for word in limited_width_scalar.limbs[9..].iter() { + let word = Num::from_variable(*word); + Num::enforce_equal(cs, &word, &zero_num); + } + + let byte_split_id = cs + .get_table_id_for_marker::>() + .expect("table should exist"); + let mut result = Vec::with_capacity(33); + // special case + { + let highest_word = limited_width_scalar.limbs[8]; + let word = unsafe { UInt16::from_variable_unchecked(highest_word) }; + let [high, low] = word.to_be_bytes(cs); + Num::enforce_equal(cs, &high.into_num(), &zero_num); + let [l, h] = cs.perform_lookup::<1, 2>(byte_split_id, &[low.get_variable()]); + Num::enforce_equal(cs, &Num::from_variable(h), &zero_num); + let l = Num::from_variable(l); + result.push(l); + } + + for word in limited_width_scalar.limbs[..8].iter().rev() { + let word = unsafe { UInt16::from_variable_unchecked(*word) }; + let [high, low] = word.to_be_bytes(cs); + for t in [high, low].into_iter() { + let [l, h] = cs.perform_lookup::<1, 2>(byte_split_id, &[t.get_variable()]); + let h = Num::from_variable(h); + let l = Num::from_variable(l); + result.push(h); + result.push(l); + } + } + assert_eq!(result.len(), NUM_MULTIPLICATION_STEPS_FOR_WIDTH_4); + + result +} diff --git a/crates/zkevm_circuits/src/bn254/ec_mul/input.rs b/crates/zkevm_circuits/src/bn254/ec_mul/input.rs new file mode 100644 index 0000000..6edb6aa --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/ec_mul/input.rs @@ -0,0 +1,67 @@ +use std::collections::VecDeque; + +use super::*; +use crate::base_structures::precompile_input_outputs::*; +use crate::base_structures::vm_state::*; +use boojum::cs::Variable; +use boojum::field::SmallField; +use boojum::gadgets::queue::*; +use boojum::gadgets::traits::allocatable::CSAllocatable; +use boojum::gadgets::traits::allocatable::CSPlaceholder; +use boojum::gadgets::traits::auxiliary::PrettyComparison; +use boojum::gadgets::traits::encodable::CircuitVarLengthEncodable; +use boojum::gadgets::traits::encodable::WitnessVarLengthEncodable; +use derivative::Derivative; +use serde::{Deserialize, Serialize}; + +#[derive( + Derivative, + CSAllocatable, + CSSelectable, + CSVarLengthEncodable, + WitnessHookable, + WitVarLengthEncodable, +)] +#[derivative(Clone, Copy, Debug)] +#[DerivePrettyComparison("true")] +pub struct EcMulCircuitFSMInputOutput { + pub log_queue_state: QueueState, + pub memory_queue_state: QueueState, +} + +impl CSPlaceholder for EcMulCircuitFSMInputOutput +where + F: SmallField, +{ + fn placeholder(cs: &mut CS) -> Self + where + CS: ConstraintSystem, + { + Self { + log_queue_state: QueueState::::placeholder(cs), + memory_queue_state: QueueState::::placeholder(cs), + } + } +} + +pub type EcMulCircuitInputOutput = ClosedFormInput< + F, + EcMulCircuitFSMInputOutput, + PrecompileFunctionInputData, + PrecompileFunctionOutputData, +>; +pub type EcMulCircuitInputOutputWitness = ClosedFormInputWitness< + F, + EcMulCircuitFSMInputOutput, + PrecompileFunctionInputData, + PrecompileFunctionOutputData, +>; + +#[derive(Derivative, Serialize, Deserialize)] +#[derivative(Clone, Debug, Default)] +#[serde(bound = "")] +pub struct EcMulCircuitInstanceWitness { + pub closed_form_input: EcMulCircuitInputOutputWitness, + pub requests_queue_witness: CircuitQueueRawWitness, 4, LOG_QUERY_PACKED_WIDTH>, + pub memory_reads_witness: VecDeque<[U256; MEMORY_QUERIES_PER_CALL]>, +} diff --git a/crates/zkevm_circuits/src/bn254/ec_mul/mod.rs b/crates/zkevm_circuits/src/bn254/ec_mul/mod.rs new file mode 100644 index 0000000..7e0c7e5 --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/ec_mul/mod.rs @@ -0,0 +1,362 @@ +use arrayvec::ArrayVec; +use std::collections::VecDeque; +use std::sync::{Arc, RwLock}; + +use boojum::algebraic_props::round_function::AlgebraicRoundFunction; +use boojum::crypto_bigint::Zero; +use boojum::cs::gates::PublicInputGate; +use boojum::cs::traits::cs::ConstraintSystem; +use boojum::field::SmallField; +use boojum::gadgets::boolean::Boolean; +use boojum::gadgets::non_native_field::implementations::*; +use boojum::gadgets::num::Num; +use boojum::gadgets::queue::CircuitQueueWitness; +use boojum::gadgets::queue::QueueState; +use boojum::gadgets::traits::allocatable::{CSAllocatableExt, CSPlaceholder}; +use boojum::gadgets::traits::round_function::CircuitRoundFunction; +use boojum::gadgets::traits::selectable::Selectable; +use boojum::gadgets::traits::witnessable::WitnessHookable; +use boojum::gadgets::u160::UInt160; +use boojum::gadgets::u256::UInt256; +use boojum::gadgets::u32::UInt32; +use boojum::gadgets::u8::UInt8; +use boojum::pairing::CurveAffine; +use cs_derive::*; +use derivative::Derivative; +use zkevm_opcode_defs::system_params::PRECOMPILE_AUX_BYTE; + +use crate::base_structures::log_query::*; +use crate::base_structures::memory_query::*; +use crate::base_structures::precompile_input_outputs::PrecompileFunctionOutputData; +use crate::bn254::ec_mul::input::EcMulCircuitInputOutput; +use crate::bn254::validation::{is_affine_infinity, is_on_curve, validate_in_field}; +use crate::demux_log_queue::StorageLogQueue; +use crate::ethereum_types::U256; +use crate::fsm_input_output::circuit_inputs::INPUT_OUTPUT_COMMITMENT_LENGTH; +use crate::fsm_input_output::*; +use crate::storage_application::ConditionalWitnessAllocator; + +use super::*; + +use self::implementation::{ + convert_field_element_to_uint256, convert_uint256_to_field_element, + width_4_windowed_multiplication, +}; +use self::input::EcMulCircuitInstanceWitness; + +pub mod implementation; +pub mod input; + +pub const MEMORY_QUERIES_PER_CALL: usize = 3; +pub const NUM_MEMORY_READS_PER_CYCLE: usize = 3; +const EXCEPTION_FLAGS_ARR_LEN: usize = 4; + +#[derive(Derivative, CSSelectable)] +#[derivative(Clone, Debug)] +pub struct EcMulPrecompileCallParams { + pub input_page: UInt32, + pub input_offset: UInt32, + pub output_page: UInt32, + pub output_offset: UInt32, +} + +impl EcMulPrecompileCallParams { + pub fn from_encoding>(_cs: &mut CS, encoding: UInt256) -> Self { + let input_offset = encoding.inner[0]; + let output_offset = encoding.inner[2]; + let input_page = encoding.inner[4]; + let output_page = encoding.inner[5]; + + let new = Self { + input_page, + input_offset, + output_page, + output_offset, + }; + + new + } +} + +fn ecmul_precompile_inner>( + cs: &mut CS, + x: &UInt256, + y: &UInt256, + scalar: &UInt256, +) -> (Boolean, (UInt256, UInt256)) { + let base_field_params = &Arc::new(bn254_base_field_params()); + let scalar_field_params = &Arc::new(bn254_scalar_field_params()); + + // We need to check for infinity prior to potential masking coordinates. + let point_is_infinity = is_affine_infinity(cs, (&x, &y)); + + // Coordinates are masked with zero in-place if they are not in field. + let mut coordinates = ArrayVec::from([*x, *y]); + let coordinates_are_in_field = validate_in_field(cs, &mut coordinates, base_field_params); + let [x, y] = coordinates.into_inner().unwrap(); + + let x = convert_uint256_to_field_element(cs, &x, base_field_params); + let y = convert_uint256_to_field_element(cs, &y, base_field_params); + + let point_on_curve = is_on_curve(cs, (&x, &y), base_field_params); + let point_is_valid = point_on_curve.or(cs, point_is_infinity); + + // Mask the point with zero in case it is not on curve. + let zero = BN256SWProjectivePoint::zero(cs, base_field_params); + let unchecked_point = BN256SWProjectivePoint::from_xy_unchecked(cs, x, y); + let point = + BN256SWProjectivePoint::conditionally_select(cs, point_on_curve, &unchecked_point, &zero); + + // Scalar is masked with zero in-place if it is not in field. + let mut scalar = ArrayVec::from([*scalar]); + let scalar_in_field = validate_in_field(cs, &mut scalar, scalar_field_params); + let [scalar] = scalar.into_inner().unwrap(); + let scalar = convert_uint256_to_field_element(cs, &scalar, scalar_field_params); + + let mut result = + width_4_windowed_multiplication(cs, point, scalar, base_field_params, scalar_field_params); + + let ((mut x, mut y), _) = result.convert_to_affine_or_default(cs, BN256Affine::zero()); + + x.normalize(cs); + let x = convert_field_element_to_uint256(cs, x); + y.normalize(cs); + let y = convert_field_element_to_uint256(cs, y); + + let mut are_valid_inputs = ArrayVec::<_, EXCEPTION_FLAGS_ARR_LEN>::new(); + are_valid_inputs.extend(coordinates_are_in_field); + are_valid_inputs.extend(scalar_in_field); + are_valid_inputs.push(point_is_valid); + + let success = Boolean::multi_and(cs, &are_valid_inputs[..]); + let x = x.mask(cs, success); + let y = y.mask(cs, success); + + (success, (x, y)) +} + +pub fn ecmul_function_entry_point< + F: SmallField, + CS: ConstraintSystem, + R: CircuitRoundFunction + AlgebraicRoundFunction, +>( + cs: &mut CS, + witness: EcMulCircuitInstanceWitness, + round_function: &R, + limit: usize, +) -> [Num; INPUT_OUTPUT_COMMITMENT_LENGTH] +where + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN]:, + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN]:, + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN]:, + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN + 1]:, +{ + let EcMulCircuitInstanceWitness { + closed_form_input, + requests_queue_witness, + memory_reads_witness, + } = witness; + let memory_reads_witness: VecDeque<_> = memory_reads_witness.into_iter().flatten().collect(); + + let mut structured_input = + EcMulCircuitInputOutput::alloc_ignoring_outputs(cs, closed_form_input.clone()); + let start_flag = structured_input.start_flag; + + let requests_queue_state_from_input = structured_input.observable_input.initial_log_queue_state; + requests_queue_state_from_input.enforce_trivial_head(cs); + + let requests_queue_state_from_fsm = structured_input.hidden_fsm_input.log_queue_state; + + let requests_queue_state = QueueState::conditionally_select( + cs, + start_flag, + &requests_queue_state_from_input, + &requests_queue_state_from_fsm, + ); + + let mut requests_queue = StorageLogQueue::::from_state(cs, requests_queue_state); + let queue_witness = CircuitQueueWitness::from_inner_witness(requests_queue_witness); + requests_queue.witness = Arc::new(queue_witness); + + let memory_queue_state_from_input = + structured_input.observable_input.initial_memory_queue_state; + memory_queue_state_from_input.enforce_trivial_head(cs); + + let memory_queue_state_from_fsm = structured_input.hidden_fsm_input.memory_queue_state; + + let memory_queue_state = QueueState::conditionally_select( + cs, + start_flag, + &memory_queue_state_from_input, + &memory_queue_state_from_fsm, + ); + + let mut memory_queue = MemoryQueue::::from_state(cs, memory_queue_state); + let read_queries_allocator = ConditionalWitnessAllocator::> { + witness_source: Arc::new(RwLock::new(memory_reads_witness)), + }; + + let precompile_address = UInt160::allocated_constant( + cs, + *zkevm_opcode_defs::system_params::ECMUL_PRECOMPILE_FORMAL_ADDRESS, + ); + + let one_u32 = UInt32::allocated_constant(cs, 1u32); + let zero_u256 = UInt256::zero(cs); + let boolean_false = Boolean::allocated_constant(cs, false); + let boolean_true = Boolean::allocated_constant(cs, true); + let aux_byte_for_precompile = UInt8::allocated_constant(cs, PRECOMPILE_AUX_BYTE); + + for _cycle in 0..limit { + let is_empty = requests_queue.is_empty(cs); + let should_process = is_empty.negated(cs); + let (request, _) = requests_queue.pop_front(cs, should_process); + + let mut precompile_call_params = EcMulPrecompileCallParams::from_encoding(cs, request.key); + + let timestamp_to_use_for_read = request.timestamp; + let timestamp_to_use_for_write = timestamp_to_use_for_read.add_no_overflow(cs, one_u32); + + Num::conditionally_enforce_equal( + cs, + should_process, + &Num::from_variable(request.aux_byte.get_variable()), + &Num::from_variable(aux_byte_for_precompile.get_variable()), + ); + for (a, b) in request + .address + .inner + .iter() + .zip(precompile_address.inner.iter()) + { + Num::conditionally_enforce_equal( + cs, + should_process, + &Num::from_variable(a.get_variable()), + &Num::from_variable(b.get_variable()), + ); + } + + let mut read_values = [zero_u256; NUM_MEMORY_READS_PER_CYCLE]; + let mut bias_variable = should_process.get_variable(); + for dst in read_values.iter_mut() { + let read_query_value = read_queries_allocator.conditionally_allocate_biased( + cs, + should_process, + bias_variable, + ); + bias_variable = read_query_value.inner[0].get_variable(); + + *dst = read_query_value; + + let read_query = MemoryQuery { + timestamp: timestamp_to_use_for_read, + memory_page: precompile_call_params.input_page, + index: precompile_call_params.input_offset, + rw_flag: boolean_false, + is_ptr: boolean_false, + value: read_query_value, + }; + + let _ = memory_queue.push(cs, read_query, should_process); + + precompile_call_params.input_offset = precompile_call_params + .input_offset + .add_no_overflow(cs, one_u32); + } + + let [x, y, scalar] = read_values; + + if crate::config::CIRCUIT_VERSOBE { + if should_process.witness_hook(cs)().unwrap() == true { + dbg!(x.witness_hook(cs)()); + dbg!(y.witness_hook(cs)()); + dbg!(scalar.witness_hook(cs)()); + } + } + + let (success, (x, y)) = ecmul_precompile_inner(cs, &x, &y, &scalar); + + let success_as_u32 = unsafe { UInt32::from_variable_unchecked(success.get_variable()) }; + let mut success = zero_u256; + success.inner[0] = success_as_u32; + + if crate::config::CIRCUIT_VERSOBE { + if should_process.witness_hook(cs)().unwrap() == true { + dbg!(success.witness_hook(cs)()); + dbg!(x.witness_hook(cs)()); + dbg!(y.witness_hook(cs)()); + } + } + + let success_query = MemoryQuery { + timestamp: timestamp_to_use_for_write, + memory_page: precompile_call_params.output_page, + index: precompile_call_params.output_offset, + rw_flag: boolean_true, + is_ptr: boolean_false, + value: success, + }; + + let _ = memory_queue.push(cs, success_query, should_process); + precompile_call_params.output_offset = precompile_call_params + .output_offset + .add_no_overflow(cs, one_u32); + + let x_query = MemoryQuery { + timestamp: timestamp_to_use_for_write, + memory_page: precompile_call_params.output_page, + index: precompile_call_params.output_offset, + rw_flag: boolean_true, + is_ptr: boolean_false, + value: x, + }; + + let _ = memory_queue.push(cs, x_query, should_process); + precompile_call_params.output_offset = precompile_call_params + .output_offset + .add_no_overflow(cs, one_u32); + + let y_query = MemoryQuery { + timestamp: timestamp_to_use_for_write, + memory_page: precompile_call_params.output_page, + index: precompile_call_params.output_offset, + rw_flag: boolean_true, + is_ptr: boolean_false, + value: y, + }; + + let _ = memory_queue.push(cs, y_query, should_process); + } + + requests_queue.enforce_consistency(cs); + + let done = requests_queue.is_empty(cs); + structured_input.completion_flag = done; + structured_input.observable_output = PrecompileFunctionOutputData::placeholder(cs); + + let final_memory_state = memory_queue.into_state(); + let final_requests_state = requests_queue.into_state(); + + structured_input.observable_output.final_memory_state = QueueState::conditionally_select( + cs, + structured_input.completion_flag, + &final_memory_state, + &structured_input.observable_output.final_memory_state, + ); + + structured_input.hidden_fsm_output.log_queue_state = final_requests_state; + structured_input.hidden_fsm_output.memory_queue_state = final_memory_state; + + structured_input.hook_compare_witness(cs, &closed_form_input); + + let compact_form = + ClosedFormInputCompactForm::from_full_form(cs, &structured_input, round_function); + let input_commitment = commit_variable_length_encodable_item(cs, &compact_form, round_function); + for el in input_commitment.iter() { + let gate = PublicInputGate::new(el.get_variable()); + gate.add_to_cs(cs); + } + + input_commitment +} diff --git a/crates/zkevm_circuits/src/bn254/ec_pairing/final_exp.rs b/crates/zkevm_circuits/src/bn254/ec_pairing/final_exp.rs new file mode 100644 index 0000000..7910954 --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/ec_pairing/final_exp.rs @@ -0,0 +1,351 @@ +use boojum::gadgets::{ + non_native_field::traits::NonNativeField, traits::hardexp_compatible::HardexpCompatible, +}; + +use super::*; + +/// Curve parameter for the BN256 curve +const CURVE_U_PARAMETER: u64 = 4965661367192848881; + +/// Curve parameter WNAF decomposition +pub const U_WNAF: [i8; 63] = [ + 1, 0, 0, 0, 1, 0, 1, 0, 0, -1, 0, 1, 0, 0, 1, 1, 0, 0, 1, 0, 0, 1, 0, 1, 0, 1, 1, 0, 1, 0, 0, + 0, 1, 0, 0, 1, 0, 1, 0, 0, 1, 1, 0, 1, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, -1, 0, 0, 0, + 1, +]; + +/// Method for calculating the hard part of the exponentiation +pub enum HardExpMethod { + Naive, + FuentesCastaneda, + Devegili, +} + +/// Compression approach before the hard part of the exponentiation +pub enum CompressionMethod { + None, + AlgebraicTorus, +} + +/// Struct representing results of the final exponentiation evaluation +pub struct FinalExpEvaluation +where + F: SmallField, + CS: ConstraintSystem, +{ + pub(super) resultant_f: BN256Fq12NNField, + _marker: std::marker::PhantomData, +} + +impl FinalExpEvaluation +where + F: SmallField, + CS: ConstraintSystem, +{ + /// Calculates the easy part of the exponentiation, that is + /// `r^((p^(k) - 1) / Phi_k(p))` where + /// `Phi_{12}(p) = p^4 - p^2 + 1` is a 12th cyclotomic polynomial. + fn easy_part(cs: &mut CS, r: &mut BN256Fq12NNField) -> BN256Fq12NNField { + // 1. f1 <- f1^*; 2. f2 <- f^{-1}; 3. f <- f1*f2; 4. f2 <- f + let mut f1 = r.conjugate(cs); + let mut f2 = r.inverse(cs); + let mut r = f1.mul(cs, &mut f2); + let mut f2 = r.clone(); + + // 5. f <- f^q^2; 6. f <- f*f2; + let mut r = r.frobenius_map(cs, 2); + NonNativeField::normalize(&mut r, cs); + let mut r = r.mul(cs, &mut f2); + NonNativeField::normalize(&mut r, cs); + + r + } + + /// This function computes the final exponentiation for the BN256 curve + /// without using the Torus (`T2`) compression technique. + /// + /// The final exponentiation is partially based on _Algorithm 31_ from + /// https://eprint.iacr.org/2010/354.pdf, but mainly based on implementation + /// from pairing repository https://github.com/matter-labs/pairing. + pub fn hard_part_naive(cs: &mut CS, r: &mut T) -> T + where + T: HardexpCompatible, + { + // Preparing a curve parameter + let u = CURVE_U_PARAMETER; + + // 7-9. fpk <- f^p^k, k = 1, 2, 3 + let mut fp = r.frobenius_map(cs, 1); + let mut fp2 = r.frobenius_map(cs, 2); + let mut fp3 = fp2.frobenius_map(cs, 1); + + // 10-12. fuk <- f^u^k, k = 1, 2, 3 + r.normalize(cs); + let mut fu = r.pow_u32(cs, &[u]); + fu.normalize(cs); + let mut fu2 = fu.pow_u32(cs, &[u]); + fu2.normalize(cs); + let mut fu3 = fu2.pow_u32(cs, &[u]); + fu3.normalize(cs); + + // 13. y3 <- fu^p; 14. fu2p <- fu2^p; 15. fu3p <- fu3^p; 16. y2 <- fu2^p + let mut y3 = fu.frobenius_map(cs, 1); + let mut fu2p = fu2.frobenius_map(cs, 1); + let mut fu3p = fu3.frobenius_map(cs, 1); + let mut y2 = fu2.frobenius_map(cs, 2); + y2.normalize(cs); + + // 17. y0 <- fp*fp2*fp3; 18. y1 <- r^*; 19. y5 <- fu2^*; + fp.normalize(cs); + fp2.normalize(cs); + fp3.normalize(cs); + let mut y0 = fp.mul(cs, &mut fp2); + let mut y0 = y0.mul(cs, &mut fp3); + let mut y1 = r.conjugate(cs); + let mut y5 = fu2.conjugate(cs); + + // 20. y3 <- y3^*; 21. y4 <- fu*fu2p; 22. y4 <- y4^*; + let mut y3 = y3.conjugate(cs); + let mut y4 = fu.mul(cs, &mut fu2p); + let mut y4 = y4.conjugate(cs); + y4.normalize(cs); + + // 23. y6 <- fu3*fu3p; 24. y6 <- y6^*; 25. y6 <- y6^2; + let mut y6 = fu3.mul(cs, &mut fu3p); + let mut y6 = y6.conjugate(cs); + y6.normalize(cs); + let mut y6 = y6.square(cs); + + // 26. y6 <- y6*y4; 27. y6 <- y6*y5; 28. t1 <- y3*y5; + let mut y6 = y6.mul(cs, &mut y4); + let mut y6 = y6.mul(cs, &mut y5); + let mut t1 = y3.mul(cs, &mut y5); + t1.normalize(cs); + + // 29. t1 <- t1*y6; 30. y6 <- y6*y2; 31. t1 <- t1^2; 32. t1 <- t1*y6; + let mut t1 = t1.mul(cs, &mut y6); + let mut y6 = y6.mul(cs, &mut y2); + t1.normalize(cs); + let mut t1 = t1.square(cs); + t1.normalize(cs); + let mut t1 = t1.mul(cs, &mut y6); + t1.normalize(cs); + + // 33. t1 <- t1^2; 34. t1 <- t1*y1; 35. t1 <- t1*y0; + let mut t1 = t1.square(cs); + t1.normalize(cs); + let mut t0 = t1.mul(cs, &mut y1); + let mut t1 = t1.mul(cs, &mut y0); + t1.normalize(cs); + + // 36. t0 <- t0^2; 37. t0 <- t0*t1; Return t0 + t0.normalize(cs); + let mut t0 = t0.square(cs); + let mut t0 = t0.mul(cs, &mut t1); + t0.normalize(cs); + + t0 + } + + /// This function computes the final exponentiation for the BN256 curve + /// without using the Torus (`T2`) compression technique using the Fuentes-Castaneda method. + pub fn hard_part_fuentes_castaneda(cs: &mut CS, f: &mut T) -> T + where + T: HardexpCompatible, + { + // Preparing a curve parameter + let u = CURVE_U_PARAMETER; + + // 1-3. a <- f^u, a <- a^2, b <- a^2 + let mut a = f.pow_u32(cs, &[u]); + a.normalize(cs); + let mut a = a.square(cs); + a.normalize(cs); + let mut b = a.square(cs); + b.normalize(cs); + + // 4-5. b <- a*b, t <- b^u + let mut b = b.mul(cs, &mut a); + b.normalize(cs); + let mut t = b.pow_u32(cs, &[u]); + t.normalize(cs); + + // 6. f <- f * frob(conj(f), 3) + let mut tmp = f.conjugate(cs); + let mut tmp = tmp.frobenius_map(cs, 3); + let mut f = f.mul(cs, &mut tmp); + f.normalize(cs); + + // 7-9. f <- f*t, b <- b*t, t <- t^2 + let mut f = f.mul(cs, &mut t); + f.normalize(cs); + let mut b = b.mul(cs, &mut t); + b.normalize(cs); + let mut t = t.square(cs); + t.normalize(cs); + + // 10-12. t <- t^u, b <- b*t, t <- b*conj(a) + let mut t = t.pow_u32(cs, &[u]); + t.normalize(cs); + let mut b = b.mul(cs, &mut t); + b.normalize(cs); + let mut tmp = a.conjugate(cs); + let mut t = b.mul(cs, &mut tmp); + t.normalize(cs); + + // 13-14. f <- f * frob(t, 3), f <- f * frob(t) + let mut tmp = t.frobenius_map(cs, 3); + let mut f = f.mul(cs, &mut tmp); + f.normalize(cs); + let mut tmp = t.frobenius_map(cs, 1); + let mut f = f.mul(cs, &mut tmp); + f.normalize(cs); + + // 15-16. f <- f * b, f <- f * frob(b, 2) + let mut f = f.mul(cs, &mut b); + f.normalize(cs); + let mut tmp = b.frobenius_map(cs, 2); + let mut f = f.mul(cs, &mut tmp); + f.normalize(cs); + + f + } + + /// This function computes the final exponentiation for the BN256 curve + /// without using the Torus (`T2`) compression technique using the Devegili method. + pub fn hard_part_devegili(cs: &mut CS, f: &mut T) -> T + where + T: HardexpCompatible, + { + // Preparing a curve parameter + let u = CURVE_U_PARAMETER; + + // 1-3. a <- f^x, b <- a^2, a <- b * f^2 + let mut a = f.pow_u32(cs, &[u]); + a.normalize(cs); + let mut b = a.square(cs); + b.normalize(cs); + let mut f2 = f.square(cs); + f2.normalize(cs); + let mut a = b.mul(cs, &mut f2); + a.normalize(cs); + + // 4-6. a <- a^2, a <- a*b, a <- a*f + let mut a = a.square(cs); + a.normalize(cs); + let mut a = a.mul(cs, &mut b); + let mut a = a.mul(cs, f); + + // 7-9. a <- conj(a), b <- frob(a), b <- a*b + let mut a = a.conjugate(cs); + a.normalize(cs); + let mut b = a.frobenius_map(cs, 1); + let mut b = a.mul(cs, &mut b); + b.normalize(cs); + + // 10-12. a <- a*b, t0 <- frob(f), t1 <- t0*f + let mut a = a.mul(cs, &mut b); + let mut t0 = f.frobenius_map(cs, 1); + let mut t1 = t0.mul(cs, f); + t1.normalize(cs); + + // 13. t1 <- t1^9 + let mut tmp = t1.square(cs); + tmp.normalize(cs); + let mut tmp = tmp.square(cs); + tmp.normalize(cs); + let mut tmp = tmp.square(cs); + tmp.normalize(cs); + let mut t1 = tmp.mul(cs, &mut t1); + t1.normalize(cs); + + // 14-16. a <- t1*a, t1 <- f^4, a <- a*t1 + let mut a = t1.mul(cs, &mut a); + a.normalize(cs); + let mut t1 = f2.square(cs); + t1.normalize(cs); + let mut a = a.mul(cs, &mut t1); + + // 17-19. t0 <- t0^2, b <- b*t0, t0 = frob(f, 2) + let mut t0 = t0.square(cs); + t0.normalize(cs); + let mut b = b.mul(cs, &mut t0); + b.normalize(cs); + let mut t0 = f.frobenius_map(cs, 2); + + // 20-22. b <- b*t0, t0 <- b^x, t1 <- t0^2 + let mut b = b.mul(cs, &mut t0); + b.normalize(cs); + let mut t0 = b.pow_u32(cs, &[u]); + t0.normalize(cs); + let mut t1 = t0.square(cs); + t1.normalize(cs); + + // 23-25. t0 <- t1^2, t0 <- t0*t1, t0 <- t0^x + let mut t0 = t1.square(cs); + t0.normalize(cs); + let mut t0 = t0.mul(cs, &mut t1); + t0.normalize(cs); + let mut t0 = t0.pow_u32(cs, &[u]); + t0.normalize(cs); + + // 26-27. t0 <- t0*b, a <- t0*a + let mut t0 = t0.mul(cs, &mut b); + t0.normalize(cs); + let mut a = t0.mul(cs, &mut a); + a.normalize(cs); + + // 28-29. t0 <- frob(f, 3), f <- t0*a + let mut t0 = f.frobenius_map(cs, 3); + t0.normalize(cs); + let mut f = t0.mul(cs, &mut a); + f.normalize(cs); + + f + } + + /// This function computes the final exponentiation for the BN256 curve using the specified technique. + /// It firstly computes the easy part as usual, then computes the hard part using one of the specified methods, + /// and finally decompresses the result back to the `Fq12` element. + pub fn evaluate( + cs: &mut CS, + r: &mut BN256Fq12NNField, + hardexp_method: HardExpMethod, + compression_method: CompressionMethod, + ) -> Self { + let result = match compression_method { + CompressionMethod::None => { + let mut scalar = Self::easy_part(cs, r); + match hardexp_method { + HardExpMethod::Naive => Self::hard_part_naive(cs, &mut scalar), + HardExpMethod::FuentesCastaneda => { + Self::hard_part_fuentes_castaneda(cs, &mut scalar) + } + HardExpMethod::Devegili => Self::hard_part_devegili(cs, &mut scalar), + } + } + CompressionMethod::AlgebraicTorus => { + let mut scalar = Self::easy_part(cs, r); + let mut torus = BN256TorusWrapper::compress::<_, true>(cs, &mut scalar); + let hard_part = match hardexp_method { + HardExpMethod::Naive => Self::hard_part_naive(cs, &mut torus), + HardExpMethod::FuentesCastaneda => { + Self::hard_part_fuentes_castaneda(cs, &mut torus) + } + HardExpMethod::Devegili => Self::hard_part_devegili(cs, &mut torus), + }; + hard_part.decompress(cs) + } + }; + + Self { + resultant_f: result, + _marker: std::marker::PhantomData::, + } + } + + /// Returns the accumulated `f` value after the final exponentiation. + pub fn get(&self) -> BN256Fq12NNField { + self.resultant_f.clone() + } +} diff --git a/crates/zkevm_circuits/src/bn254/ec_pairing/implementation.rs b/crates/zkevm_circuits/src/bn254/ec_pairing/implementation.rs new file mode 100644 index 0000000..473cdef --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/ec_pairing/implementation.rs @@ -0,0 +1,407 @@ +use std::sync::Arc; + +use boojum::{ + gadgets::non_native_field::traits::NonNativeField, + pairing::bn256::{Fq2, FROBENIUS_COEFF_FQ6_C1, XI_TO_Q_MINUS_1_OVER_2}, +}; +use final_exp::{CompressionMethod, FinalExpEvaluation, HardExpMethod}; + +use super::*; + +// Curve parameter for the BN256 curve +const SIX_U_PLUS_TWO_WNAF: [i8; 65] = [ + 0, 0, 0, 1, 0, 1, 0, -1, 0, 0, 1, -1, 0, 0, 1, 0, 0, 1, 1, 0, -1, 0, 0, 1, 0, -1, 0, 0, 0, 0, + 1, 1, 1, 0, 0, -1, 0, 0, 1, 0, 0, 0, 0, 0, -1, 0, 0, 1, 1, 0, 0, -1, 0, 0, 0, 1, 1, 0, -1, 0, + 0, 1, 0, 1, 1, +]; + +/// Struct for the line function evaluation for the BN256 curve (addition and doubling). +/// The line function is used in the Miller loop of the pairing function. +pub struct LineFunctionEvaluation +where + F: SmallField, + CS: ConstraintSystem, +{ + c0: BN256Fq2NNField, + c3: BN256Fq2NNField, + c4: BN256Fq2NNField, + point: BN256SWProjectivePointTwisted, + _marker: std::marker::PhantomData, +} + +impl LineFunctionEvaluation +where + F: SmallField, + CS: ConstraintSystem, +{ + /// Creates a zero instance of the line function evaluation for the BN256 curve. + pub fn zero(cs: &mut CS, params: &Arc) -> Self { + Self { + c0: BN256Fq2NNField::zero(cs, params), + c3: BN256Fq2NNField::zero(cs, params), + c4: BN256Fq2NNField::zero(cs, params), + point: BN256SWProjectivePointTwisted::zero(cs, params), + _marker: std::marker::PhantomData::, + } + } + + /// Returns the point of the line function evaluation. + pub fn point(&self) -> BN256SWProjectivePointTwisted { + self.point.clone() + } + + /// Returns the coefficients of the line function evaluation. + pub fn c0c3c4(&self) -> (BN256Fq2NNField, BN256Fq2NNField, BN256Fq2NNField) { + (self.c0.clone(), self.c3.clone(), self.c4.clone()) + } + + /// This function conducts the doubling step in the Miller loop for the BN256 curve. + /// Namely, given `Q` in `E'(Fp2)` and `P` in `E(Fp)`, it computes the line function + /// together with the resultant point `T=2*Q`. The implementation is based + /// on the _Algorithm 26_ from https://eprint.iacr.org/2010/354.pdf. + pub fn doubling_step( + cs: &mut CS, + q: &mut BN256SWProjectivePointTwisted, + p: &mut BN256SWProjectivePoint, + ) -> Self + where + CS: ConstraintSystem, + { + // 1. tmp0 <- X_Q^2; 2. tmp1 <- Y_Q^2; 3. tmp2 <- tmp1^2; + let mut tmp0 = q.x.square(cs); + let mut tmp1 = q.y.square(cs); + let mut tmp2 = tmp1.square(cs); + + // 4. tmp3 <- (tmp1 + X_Q)^2 - tmp0 - tmp2; 5. tmp3 <- 2*tmp3; + let mut tmp3 = tmp1.add(cs, &mut q.x); + let mut tmp3 = tmp3.square(cs); + let mut tmp3 = tmp3.sub(cs, &mut tmp0); + let mut tmp3 = tmp3.sub(cs, &mut tmp2); + let mut tmp3 = tmp3.double(cs); + + // 6. tmp4 <- 3*tmp0; 7. tmp6 <- X_Q + tmp4; + let mut tmp4 = tmp0.double(cs); + let mut tmp4 = tmp4.add(cs, &mut tmp0); + let mut tmp6 = q.x.add(cs, &mut tmp4); + + // 8. tmp5 <- tmp4^2; 9. X_T <- tmp5 - 2*tmp3; + let mut tmp5 = tmp4.square(cs); + let mut tmp3_double = tmp3.double(cs); + let mut x_t = tmp5.sub(cs, &mut tmp3_double); + + // Saving Z_Q^2 for later use + let mut z_q_square = q.z.square(cs); + + // 10. Z_T <- (Y_Q + Z_Q)^2 - tmp1 - Z_Q^2; + let mut z_t = q.y.add(cs, &mut q.z); + let mut z_t = z_t.square(cs); + let mut z_t = z_t.sub(cs, &mut tmp1); + let mut z_t = z_t.sub(cs, &mut z_q_square); + + // 11. Y_T <- (tmp3 - X_T)*tmp4 - 8*tmp2; + let mut y_t = tmp3.sub(cs, &mut x_t); + let mut y_t = y_t.mul(cs, &mut tmp4); + let mut tmp2_8 = tmp2.double(cs); + let mut tmp2_8 = tmp2_8.double(cs); + let mut tmp2_8 = tmp2_8.double(cs); + let y_t = y_t.sub(cs, &mut tmp2_8); + + // 12. tmp3 <- -2*(tmp4 * Z_Q^2); 13. tmp3 <- tmp3 * xP; + let mut tmp3 = tmp4.mul(cs, &mut z_q_square); + let mut tmp3 = tmp3.double(cs); + let mut tmp3 = tmp3.negated(cs); + let mut tmp3 = tmp3.mul_c0(cs, &mut p.x); + tmp3.normalize(cs); + + // 14. tmp6 <- tmp6^2 - tmp0 - tmp5 - 4*tmp1; 15. tmp0 <- 2*Z_T*Z_Q^2 + let mut tmp6 = tmp6.square(cs); + let mut tmp6 = tmp6.sub(cs, &mut tmp0); + let mut tmp6 = tmp6.sub(cs, &mut tmp5); + let mut tmp1_4 = tmp1.double(cs); + let mut tmp1_4 = tmp1_4.double(cs); + let tmp6 = tmp6.sub(cs, &mut tmp1_4); + let mut tmp0 = z_t.mul(cs, &mut z_q_square); + let mut tmp0 = tmp0.double(cs); + + // 16. tmp0 <- tmp0 * y_P + let tmp0 = tmp0.mul_c0(cs, &mut p.y); + + // Result: T = (X_T, Y_T, Z_T); Line function is a0 + a1*w + // where a0 = tmp0; a1 = tmp3 + tmp6*v; + Self { + c0: tmp0, + c3: tmp3, + c4: tmp6, + point: BN256SWProjectivePointTwisted { + x: x_t, + y: y_t, + z: z_t, + _marker: std::marker::PhantomData, + }, + _marker: std::marker::PhantomData, + } + } + + /// This function conducts the addition step in the Miller loop for the BN256 curve. + /// Namely, given `Q` and `R` in `E'(Fp2)` and `P` in `E(Fp)`, it computes the line function + /// together with the resultant point `T=Q+R`. The implementation is based + /// on the _Algorithm 27_ from https://eprint.iacr.org/2010/354.pdf. + pub fn addition_step( + cs: &mut CS, + q: &mut BN256SWProjectivePointTwisted, + r: &mut BN256SWProjectivePointTwisted, + p: &mut BN256SWProjectivePoint, + ) -> Self + where + CS: ConstraintSystem, + { + // Preparing some temporary variables + let mut z_r_square = r.z.square(cs); + let mut y_q_square = q.y.square(cs); + + // 1. t0 <- X_Q*Z_R^2; 2. t1 <- (Y_Q + Z_R)^2 - Y_Q^2 - Z_R^2; + let mut t0 = q.x.mul(cs, &mut z_r_square); + let mut t1 = q.y.add(cs, &mut r.z); + let mut t1 = t1.square(cs); + let mut t1 = t1.sub(cs, &mut y_q_square); + let mut t1 = t1.sub(cs, &mut z_r_square); + + // 3. t1 <- t1 * Z_R^2; 4. t2 <- t0 - X_R; 5. t3 <- t2^2; + let mut t1 = t1.mul(cs, &mut z_r_square); + let mut t2 = t0.sub(cs, &mut r.x); + let mut t3 = t2.square(cs); + + // 6. t4 <- 4*t3; 7. t5 <- t4*t2; 8. t6 <- t1 - 2*Y_R; + let mut t4 = t3.double(cs); + let mut t4 = t4.double(cs); + let mut t5 = t4.mul(cs, &mut t2); + let mut y_r_2 = r.y.double(cs); + let mut t6 = t1.sub(cs, &mut y_r_2); + + // 9. t9 <- t6 * X_Q; 10. t7 <- X_R * t4; 11. X_T <- t6^2 - t5 - 2t7 + let mut t9 = t6.mul(cs, &mut q.x); + let mut t7 = r.x.mul(cs, &mut t4); + let mut x_t = t6.square(cs); + let mut x_t = x_t.sub(cs, &mut t5); + let mut t7_2 = t7.double(cs); + let mut x_t = x_t.sub(cs, &mut t7_2); + + // 12. Z_T <- (Z_R + t2)^2 - Z_R^2 - t3; + let mut z_t = r.z.add(cs, &mut t2); + let mut z_t = z_t.square(cs); + let mut z_t = z_t.sub(cs, &mut z_r_square); + let mut z_t = z_t.sub(cs, &mut t3); + + // 13. t10 <- Y_Q + Z_T; 14. t8 <- (t7 - X_T)*t6; + let mut t10 = q.y.add(cs, &mut z_t); + let mut t8 = t7.sub(cs, &mut x_t); + let mut t8 = t8.mul(cs, &mut t6); + + // 15. t0 <- 2*Y_R*t5; 16. Y_T <- t8 - t0; 17. t10 <- t10^2 - Y_Q^2 - Z_T^2; + let mut t0 = y_r_2.mul(cs, &mut t5); + let y_t = t8.sub(cs, &mut t0); + let mut t10 = t10.square(cs); + let mut t10 = t10.sub(cs, &mut y_q_square); + let mut z_t_square = z_t.square(cs); + let mut t10 = t10.sub(cs, &mut z_t_square); + + // 18. t9 <- 2*t9 - t10; 19. t10 <- 2*Z_T*y_P; + let mut t9 = t9.double(cs); + let t9 = t9.sub(cs, &mut t10); + let mut t10 = z_t.mul_c0(cs, &mut p.y); + let t10 = t10.double(cs); + + // 20. t6 <- -t6; 21. t1 <- 2*t6*x_P; + let mut t6 = t6.negated(cs); + let mut t1 = t6.mul_c0(cs, &mut p.x); + let t1 = t1.double(cs); + + // Result: T = (X_T, Y_T, Z_T); Line function is l0 + l1*w + // where l0 = t10; l1 = t1 + t9*v; + Self { + c0: t10, + c3: t1, + c4: t9, + point: BN256SWProjectivePointTwisted { + x: x_t, + y: y_t, + z: z_t, + _marker: std::marker::PhantomData, + }, + _marker: std::marker::PhantomData, + } + } +} + +/// Struct for the miller loop evaluation for the BN256 curve. +/// Here, the Miller loop returns the accumulated f value after the loop +/// without the final exponentiation. +pub struct MillerLoopEvaluation +where + F: SmallField, + CS: ConstraintSystem, +{ + accumulated_f: BN256Fq12NNField, + _marker: std::marker::PhantomData, +} + +impl MillerLoopEvaluation +where + F: SmallField, + CS: ConstraintSystem, +{ + pub fn get_accumulated_f(&self) -> BN256Fq12NNField { + self.accumulated_f.clone() + } + + /// This function computes the Miller loop for the BN256 curve, using + /// _Algorithm 1_ from https://eprint.iacr.org/2010/354.pdf. Frobenius + /// map is taken from https://hackmd.io/@Wimet/ry7z1Xj-2. + pub fn evaluate( + cs: &mut CS, + p: &mut BN256SWProjectivePoint, + q: &mut BN256SWProjectivePointTwisted, + ) -> Self { + // Verifying that q is normalized + let q_is_normalized = q.is_normalized(cs); + let boolean_true = Boolean::allocated_constant(cs, true); + Boolean::enforce_equal(cs, &q_is_normalized, &boolean_true); + + // Setting evaluation parameters + let mut t = q.clone(); + let params = p.x.params.clone(); + let mut f = BN256Fq12NNField::one(cs, ¶ms); + + // Saving Q negative to avoid doing that in the loop + let mut q_negated = q.negated(cs); + + // Main loop + for i in (1..SIX_U_PLUS_TWO_WNAF.len()).rev() { + // Doubling step: f <- f^2 * L_{R,R}(P), T <- 2*T + // Evaluation of L_{R,R} and 2R is done in the same step + if i != SIX_U_PLUS_TWO_WNAF.len() - 1 { + f = f.square(cs); + } + + let mut doubling = LineFunctionEvaluation::doubling_step(cs, &mut t, p); + f = Self::mul_f12_by_line_fn(cs, &mut f, &mut doubling); + t = doubling.point; + + let x = SIX_U_PLUS_TWO_WNAF[i - 1]; + match x { + 1 => { + // Addition step: f <- f * L_{T,Q}(P), T <- T + Q + let mut addition = LineFunctionEvaluation::addition_step(cs, q, &mut t, p); + f = Self::mul_f12_by_line_fn(cs, &mut f, &mut addition); + t = addition.point; + } + -1 => { + // Addition step: f <- f * L_{T,-Q}(P), T <- T - Q + let mut addition = + LineFunctionEvaluation::addition_step(cs, &mut q_negated, &mut t, p); + f = Self::mul_f12_by_line_fn(cs, &mut f, &mut addition); + t = addition.point; + } + _ => continue, + } + } + + // Some additional steps to finalize the Miller loop... + // Preparing some constants for the Frobenius operator + let mut q1_mul_factor = Self::allocate_fq2_constant(cs, FROBENIUS_COEFF_FQ6_C1[1], ¶ms); + let mut q2_mul_factor = Self::allocate_fq2_constant(cs, FROBENIUS_COEFF_FQ6_C1[2], ¶ms); + let mut xi_to_q_minus_1_over_2 = + Self::allocate_fq2_constant(cs, XI_TO_Q_MINUS_1_OVER_2, ¶ms); + + // Calculating Frobenius operator Q1 = pi_p(Q) + let mut q1 = q.clone(); + q1.x = q1.x.conjugate(cs); + q1.x = q1.x.mul(cs, &mut q1_mul_factor); + + q1.y = q1.y.conjugate(cs); + q1.y = q1.y.mul(cs, &mut xi_to_q_minus_1_over_2); + + // Calculating Frobenius operator Q2 = -pi_p^2(Q) + let mut q2 = q.clone(); + q2.x = q2.x.mul(cs, &mut q2_mul_factor); + + // Calculating addition step for T, Q1, f <- f * (line function), T <- T + Q1 + let mut addition = LineFunctionEvaluation::addition_step(cs, &mut q1, &mut t, p); + f = Self::mul_f12_by_line_fn(cs, &mut f, &mut addition); + t = addition.point; + + // Calculating addition step for T, -Q2, f <- f * (line function), T <- T - Q2 + let mut addition = LineFunctionEvaluation::addition_step(cs, &mut q2, &mut t, p); + f = Self::mul_f12_by_line_fn(cs, &mut f, &mut addition); + + Self { + accumulated_f: f, + _marker: std::marker::PhantomData::, + } + } + + fn mul_f12_by_line_fn( + cs: &mut CS, + f: &mut BN256Fq12NNField, + line_fn: &mut LineFunctionEvaluation, + ) -> BN256Fq12NNField { + let mut f = f.mul_by_c0c3c4(cs, &mut line_fn.c0, &mut line_fn.c3, &mut line_fn.c4); + NonNativeField::normalize(&mut f, cs); + f + } + + /// Allocates the constant from `Fq2` constant + pub fn allocate_fq2_constant( + cs: &mut CS, + value: Fq2, + params: &Arc, + ) -> BN256Fq2NNField { + let c0 = BN256BaseNNField::allocated_constant(cs, value.c0, params); + let c1 = BN256BaseNNField::allocated_constant(cs, value.c1, params); + + BN256Fq2NNField::new(c0, c1) + } +} + +/// This function computes the pairing function for the BN256 curve using the specified method. +pub fn ec_pairing_inner( + cs: &mut CS, + p: &mut BN256SWProjectivePoint, + q: &mut BN256SWProjectivePointTwisted, + hardexp_method: HardExpMethod, + compression_method: CompressionMethod, +) -> BN256Fq12NNField +where + F: SmallField, + CS: ConstraintSystem, +{ + // Calculating the Miller Loop and then the final exponentiation + let mut miller_loop = MillerLoopEvaluation::evaluate(cs, p, q); + let final_exp = FinalExpEvaluation::evaluate( + cs, + &mut miller_loop.accumulated_f, + hardexp_method, + compression_method, + ); + final_exp.resultant_f +} + +/// This function computes the pairing function for the BN256 curve using the best method available (that is, the +/// method is chosen under the hood, for more details see [`ec_pairing_inner`]) +pub fn ec_pairing( + cs: &mut CS, + p: &mut BN256SWProjectivePoint, + q: &mut BN256SWProjectivePointTwisted, +) -> BN256Fq12NNField +where + F: SmallField, + CS: ConstraintSystem, +{ + ec_pairing_inner( + cs, + p, + q, + HardExpMethod::Naive, + CompressionMethod::AlgebraicTorus, + ) +} diff --git a/crates/zkevm_circuits/src/bn254/ec_pairing/input.rs b/crates/zkevm_circuits/src/bn254/ec_pairing/input.rs new file mode 100644 index 0000000..9011b57 --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/ec_pairing/input.rs @@ -0,0 +1,181 @@ +use std::collections::VecDeque; + +use super::*; + +use crate::base_structures::precompile_input_outputs::*; +use crate::base_structures::vm_state::*; +use boojum::cs::Variable; +use boojum::gadgets::queue::*; +use boojum::gadgets::traits::allocatable::CSAllocatable; +use boojum::gadgets::traits::allocatable::CSPlaceholder; +use boojum::gadgets::traits::encodable::CircuitVarLengthEncodable; +use boojum::gadgets::traits::encodable::WitnessVarLengthEncodable; + +use boojum::cs::traits::cs::ConstraintSystem; +use boojum::field::SmallField; +use boojum::gadgets::boolean::Boolean; +use boojum::gadgets::traits::auxiliary::PrettyComparison; +use boojum::gadgets::traits::selectable::Selectable; +use boojum::gadgets::traits::witnessable::WitnessHookable; +use serde::{Deserialize, Serialize}; + +#[derive(Derivative, CSAllocatable, CSSelectable, WitnessHookable)] +#[derivative(Clone, Debug)] +#[DerivePrettyComparison("true")] +pub struct EcPairingFunctionFSM { + pub read_precompile_call: Boolean, + pub read_words_for_round: Boolean, + pub completed: Boolean, + // Accumulated result of all the previous pairings: + pub pairing_inner_state: BN256Fq12NNField, + + pub timestamp_to_use_for_read: UInt32, + pub timestamp_to_use_for_write: UInt32, + pub precompile_call_params: EcPairingPrecompileCallParams, +} + +impl CircuitVarLengthEncodable for EcPairingFunctionFSM { + #[inline(always)] + fn encoding_length(&self) -> usize { + let mut total_len = 0; + total_len += CircuitVarLengthEncodable::::encoding_length(&self.read_precompile_call); + total_len += CircuitVarLengthEncodable::::encoding_length(&self.read_words_for_round); + total_len += CircuitVarLengthEncodable::::encoding_length(&self.completed); + // total_len += CircuitVarLengthEncodable::::encoding_length(&self.pairing_inner_state); + total_len += + CircuitVarLengthEncodable::::encoding_length(&self.timestamp_to_use_for_read); + total_len += + CircuitVarLengthEncodable::::encoding_length(&self.timestamp_to_use_for_write); + total_len += CircuitVarLengthEncodable::::encoding_length(&self.precompile_call_params); + total_len + } + fn encode_to_buffer>(&self, cs: &mut CS, dst: &mut Vec) { + CircuitVarLengthEncodable::::encode_to_buffer(&self.read_precompile_call, cs, dst); + CircuitVarLengthEncodable::::encode_to_buffer(&self.read_words_for_round, cs, dst); + CircuitVarLengthEncodable::::encode_to_buffer(&self.completed, cs, dst); + // CircuitVarLengthEncodable::::encode_to_buffer(&self.pairing_inner_state, cs, dst); + CircuitVarLengthEncodable::::encode_to_buffer(&self.timestamp_to_use_for_read, cs, dst); + CircuitVarLengthEncodable::::encode_to_buffer(&self.timestamp_to_use_for_write, cs, dst); + CircuitVarLengthEncodable::::encode_to_buffer(&self.precompile_call_params, cs, dst); + } +} + +impl WitnessVarLengthEncodable for EcPairingFunctionFSM { + fn witness_encoding_length(witness: &Self::Witness) -> usize { + let mut total_len = 0; + total_len += as WitnessVarLengthEncodable>::witness_encoding_length( + &witness.read_precompile_call, + ); + total_len += as WitnessVarLengthEncodable>::witness_encoding_length( + &witness.read_words_for_round, + ); + total_len += as WitnessVarLengthEncodable>::witness_encoding_length( + &witness.completed, + ); + // total_len += as WitnessVarLengthEncodable>::witness_encoding_length(&witness. pairing_inner_state); + total_len += as WitnessVarLengthEncodable>::witness_encoding_length( + &witness.timestamp_to_use_for_read, + ); + total_len += as WitnessVarLengthEncodable>::witness_encoding_length( + &witness.timestamp_to_use_for_write, + ); + total_len += as WitnessVarLengthEncodable>::witness_encoding_length(&witness. precompile_call_params); + total_len + } + fn encode_witness_to_buffer(witness: &Self::Witness, dst: &mut Vec) { + as WitnessVarLengthEncodable>::encode_witness_to_buffer( + &witness.read_precompile_call, + dst, + ); + as WitnessVarLengthEncodable>::encode_witness_to_buffer( + &witness.read_words_for_round, + dst, + ); + as WitnessVarLengthEncodable>::encode_witness_to_buffer( + &witness.completed, + dst, + ); + // as WitnessVarLengthEncodable>::encode_witness_to_buffer(&witness. pairing_inner_state, dst); + as WitnessVarLengthEncodable>::encode_witness_to_buffer( + &witness.timestamp_to_use_for_read, + dst, + ); + as WitnessVarLengthEncodable>::encode_witness_to_buffer( + &witness.timestamp_to_use_for_write, + dst, + ); + as WitnessVarLengthEncodable>::encode_witness_to_buffer(&witness. precompile_call_params, dst); + } +} + +impl CSPlaceholder for EcPairingFunctionFSM { + fn placeholder>(cs: &mut CS) -> Self { + let boolean_false = Boolean::allocated_constant(cs, false); + let zero_u32 = UInt32::zero(cs); + let params = &Arc::new(bn254_base_field_params()); + + Self { + read_precompile_call: boolean_false, + read_words_for_round: boolean_false, + completed: boolean_false, + pairing_inner_state: BN256Fq12NNField::one(cs, params), + timestamp_to_use_for_read: zero_u32, + timestamp_to_use_for_write: zero_u32, + precompile_call_params: EcPairingPrecompileCallParams::::placeholder(cs), + } + } +} + +#[derive( + Derivative, + CSAllocatable, + CSSelectable, + CSVarLengthEncodable, + WitnessHookable, + WitVarLengthEncodable, +)] +#[derivative(Clone, Debug)] +#[DerivePrettyComparison("true")] +pub struct EcPairingCircuitFSMInputOutput { + pub internal_fsm: EcPairingFunctionFSM, + pub log_queue_state: QueueState, + pub memory_queue_state: QueueState, +} + +impl CSPlaceholder for EcPairingCircuitFSMInputOutput +where + F: SmallField, +{ + fn placeholder(cs: &mut CS) -> Self + where + CS: ConstraintSystem, + { + Self { + internal_fsm: EcPairingFunctionFSM::placeholder(cs), + log_queue_state: QueueState::::placeholder(cs), + memory_queue_state: QueueState::::placeholder(cs), + } + } +} + +pub type EcPairingCircuitInputOutput = ClosedFormInput< + F, + EcPairingCircuitFSMInputOutput, + PrecompileFunctionInputData, + PrecompileFunctionOutputData, +>; +pub type EcPairingCircuitInputOutputWitness = ClosedFormInputWitness< + F, + EcPairingCircuitFSMInputOutput, + PrecompileFunctionInputData, + PrecompileFunctionOutputData, +>; + +#[derive(Derivative, Serialize, Deserialize)] +#[derivative(Clone, Debug, Default)] +#[serde(bound = "")] +pub struct EcPairingCircuitInstanceWitness { + pub closed_form_input: EcPairingCircuitInputOutputWitness, + pub requests_queue_witness: CircuitQueueRawWitness, 4, LOG_QUERY_PACKED_WIDTH>, + pub memory_reads_witness: VecDeque, +} diff --git a/crates/zkevm_circuits/src/bn254/ec_pairing/mod.rs b/crates/zkevm_circuits/src/bn254/ec_pairing/mod.rs new file mode 100644 index 0000000..94bd205 --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/ec_pairing/mod.rs @@ -0,0 +1,551 @@ +use arrayvec::ArrayVec; + +use std::sync::{Arc, RwLock}; + +use boojum::algebraic_props::round_function::AlgebraicRoundFunction; +use boojum::cs::gates::PublicInputGate; +use boojum::cs::traits::cs::ConstraintSystem; +use boojum::field::SmallField; +use boojum::gadgets::boolean::Boolean; + +use boojum::gadgets::num::Num; +use boojum::gadgets::queue::CircuitQueueWitness; +use boojum::gadgets::queue::QueueState; +use boojum::gadgets::traits::allocatable::{CSAllocatableExt, CSPlaceholder}; +use boojum::gadgets::traits::round_function::CircuitRoundFunction; +use boojum::gadgets::traits::selectable::Selectable; +use boojum::gadgets::traits::witnessable::WitnessHookable; +use boojum::gadgets::u160::UInt160; +use boojum::gadgets::u256::UInt256; +use boojum::gadgets::u32::UInt32; +use boojum::gadgets::u8::UInt8; +use boojum::pairing::bn256; +use cs_derive::*; +use derivative::Derivative; +use zkevm_opcode_defs::system_params::PRECOMPILE_AUX_BYTE; + +use super::*; +use crate::base_structures::log_query::*; +use crate::base_structures::memory_query::*; +use crate::base_structures::precompile_input_outputs::PrecompileFunctionOutputData; +use crate::bn254::ec_pairing::input::{EcPairingCircuitInputOutput, EcPairingFunctionFSM}; +use crate::bn254::validation::{ + is_affine_infinity, is_on_curve, is_on_twist_curve, is_twist_affine_infinity, validate_in_field, +}; +use crate::demux_log_queue::StorageLogQueue; +use crate::ethereum_types::U256; +use crate::fsm_input_output::circuit_inputs::INPUT_OUTPUT_COMMITMENT_LENGTH; +use crate::fsm_input_output::*; +use crate::storage_application::ConditionalWitnessAllocator; +use boojum::cs::Variable; +use boojum::gadgets::non_native_field::traits::NonNativeField; +use boojum::gadgets::tower_extension::fq12::Fq12; +use boojum::gadgets::traits::allocatable::CSAllocatable; +use boojum::gadgets::traits::encodable::CircuitVarLengthEncodable; +use boojum::gadgets::traits::encodable::WitnessVarLengthEncodable; + +use self::ec_mul::implementation::convert_uint256_to_field_element; +use self::implementation::ec_pairing; +use self::input::EcPairingCircuitInstanceWitness; + +pub mod final_exp; +pub mod implementation; +pub mod input; + +pub const NUM_MEMORY_READS_PER_CYCLE: usize = 6; +pub const EXCEPTION_FLAGS_ARR_LEN: usize = 8; + +#[derive( + Derivative, + CSAllocatable, + CSSelectable, + CSVarLengthEncodable, + WitnessHookable, + WitVarLengthEncodable, +)] +#[derivative(Clone, Copy, Debug)] +pub struct EcPairingPrecompileCallParams { + pub input_page: UInt32, + pub input_offset: UInt32, + pub output_page: UInt32, + pub output_offset: UInt32, + pub num_pairs: UInt32, +} + +impl CSPlaceholder for EcPairingPrecompileCallParams { + fn placeholder>(cs: &mut CS) -> Self { + let zero_u32 = UInt32::zero(cs); + Self { + input_page: zero_u32, + input_offset: zero_u32, + output_page: zero_u32, + output_offset: zero_u32, + num_pairs: zero_u32, + } + } +} + +impl EcPairingPrecompileCallParams { + pub fn from_encoding>(_cs: &mut CS, encoding: UInt256) -> Self { + let input_offset = encoding.inner[0]; + let output_offset = encoding.inner[2]; + let input_page = encoding.inner[4]; + let output_page = encoding.inner[5]; + let num_pairs = encoding.inner[6]; + + let new = Self { + input_page, + input_offset, + output_page, + output_offset, + num_pairs, + }; + + new + } +} + +fn pair>( + cs: &mut CS, + p_x: &UInt256, + p_y: &UInt256, + q_x_c0: &UInt256, + q_x_c1: &UInt256, + q_y_c0: &UInt256, + q_y_c1: &UInt256, +) -> (Boolean, BN256Fq12NNField) { + let base_field_params = &Arc::new(bn254_base_field_params()); + + // We need to check for infinity prior to potential masking coordinates. + let p_is_infinity = is_affine_infinity(cs, (&p_x, &p_y)); + let q_is_infinity = is_twist_affine_infinity(cs, (&q_x_c0, &q_x_c1, &q_y_c0, &q_y_c1)); + + let mut coordinates = ArrayVec::from([*p_x, *p_y, *q_x_c0, *q_x_c1, *q_y_c0, *q_y_c1]); + let coordinates_are_in_field = validate_in_field(cs, &mut coordinates, base_field_params); + let [p_x, p_y, q_x_c0, q_x_c1, q_y_c0, q_y_c1] = coordinates.into_inner().unwrap(); + + let p_x = convert_uint256_to_field_element(cs, &p_x, base_field_params); + let p_y = convert_uint256_to_field_element(cs, &p_y, base_field_params); + + let p_on_curve = is_on_curve(cs, (&p_x, &p_y), base_field_params); + let p_is_valid = p_on_curve.or(cs, p_is_infinity); + + // Mask the point with zero in case it is not on curve. + let zero = BN256SWProjectivePoint::zero(cs, base_field_params); + let unchecked_point = BN256SWProjectivePoint::from_xy_unchecked(cs, p_x, p_y); + let mut p = + BN256SWProjectivePoint::conditionally_select(cs, p_on_curve, &unchecked_point, &zero); + + let q_x_c0 = convert_uint256_to_field_element(cs, &q_x_c0, base_field_params); + let q_x_c1 = convert_uint256_to_field_element(cs, &q_x_c1, base_field_params); + let q_y_c0 = convert_uint256_to_field_element(cs, &q_y_c0, base_field_params); + let q_y_c1 = convert_uint256_to_field_element(cs, &q_y_c1, base_field_params); + + let q_x = BN256Fq2NNField::new(q_x_c0, q_x_c1); + let q_y = BN256Fq2NNField::new(q_y_c0, q_y_c1); + + let q_on_curve = is_on_twist_curve(cs, (&q_x, &q_y), base_field_params); + let q_is_valid = q_on_curve.or(cs, q_is_infinity); + + // Mask the point with zero in case it is not on curve. + let zero = BN256SWProjectivePointTwisted::zero(cs, base_field_params); + let unchecked_point = BN256SWProjectivePointTwisted::from_xy_unchecked(cs, q_x, q_y); + let mut q = BN256SWProjectivePointTwisted::conditionally_select( + cs, + q_on_curve, + &unchecked_point, + &zero, + ); + + let result = ec_pairing(cs, &mut p, &mut q); + + let mut are_valid_inputs = ArrayVec::<_, EXCEPTION_FLAGS_ARR_LEN>::new(); + are_valid_inputs.extend(coordinates_are_in_field); + are_valid_inputs.push(p_is_valid); + are_valid_inputs.push(q_is_valid); + + let success = Boolean::multi_and(cs, &are_valid_inputs[..]); + let result = result.mask(cs, success); + + (success, result) +} + +pub fn ecpairing_precompile_inner< + F: SmallField, + CS: ConstraintSystem, + R: CircuitRoundFunction + AlgebraicRoundFunction, +>( + cs: &mut CS, + memory_queue: &mut MemoryQueue, + precompile_calls_queue: &mut StorageLogQueue, + memory_read_witness: ConditionalWitnessAllocator>, + mut state: EcPairingFunctionFSM, + _round_function: &R, + limit: usize, +) -> EcPairingFunctionFSM +where + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN]:, + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN]:, + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN]:, + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN + 1]:, +{ + assert!(limit <= u32::MAX as usize); + + let precompile_address = UInt160::allocated_constant( + cs, + *zkevm_opcode_defs::system_params::ECPAIRING_PRECOMPILE_FORMAL_ADDRESS, + ); + let aux_byte_for_precompile = UInt8::allocated_constant(cs, PRECOMPILE_AUX_BYTE); + + let boolean_false = Boolean::allocated_constant(cs, false); + let boolean_true = Boolean::allocated_constant(cs, true); + let zero_u256 = UInt256::zero(cs); + let one_fq12 = BN256Fq12NNField::one(cs, &Arc::new(bn254_base_field_params())); + + // we can have a degenerate case when queue is empty, but it's a first circuit in the queue, + // so we taken default FSM state that has state.read_precompile_call = true; + let input_queue_is_empty = precompile_calls_queue.is_empty(cs); + // we can only skip the full circuit if we are not in any form of progress + let can_finish_immediatelly = + Boolean::multi_and(cs, &[state.read_precompile_call, input_queue_is_empty]); + + if crate::config::CIRCUIT_VERSOBE { + dbg!(can_finish_immediatelly.witness_hook(cs)()); + dbg!(state.witness_hook(cs)()); + } + + state.read_precompile_call = state + .read_precompile_call + .mask_negated(cs, can_finish_immediatelly); + state.read_words_for_round = state + .read_words_for_round + .mask_negated(cs, can_finish_immediatelly); + state.completed = Boolean::multi_or(cs, &[state.completed, can_finish_immediatelly]); + + if crate::config::CIRCUIT_VERSOBE { + dbg!(state.witness_hook(cs)()); + dbg!(precompile_calls_queue.into_state().witness_hook(cs)()); + memory_read_witness.print_debug_info(); + } + + // main work cycle + for _cycle in 0..limit { + if crate::config::CIRCUIT_VERSOBE { + dbg!(_cycle); + dbg!(state.witness_hook(cs)()); + dbg!(precompile_calls_queue.into_state().witness_hook(cs)()); + } + // if we are in a proper state then get the ABI from the queue + let (precompile_call, _) = precompile_calls_queue.pop_front(cs, state.read_precompile_call); + + Num::conditionally_enforce_equal( + cs, + state.read_precompile_call, + &Num::from_variable(precompile_call.aux_byte.get_variable()), + &Num::from_variable(aux_byte_for_precompile.get_variable()), + ); + for (a, b) in precompile_call + .address + .inner + .iter() + .zip(precompile_address.inner.iter()) + { + Num::conditionally_enforce_equal( + cs, + state.read_precompile_call, + &Num::from_variable(a.get_variable()), + &Num::from_variable(b.get_variable()), + ); + } + + // now compute some parameters that describe the call itself + + let params_encoding = precompile_call.key; + let call_params = EcPairingPrecompileCallParams::from_encoding(cs, params_encoding); + + state.precompile_call_params = EcPairingPrecompileCallParams::conditionally_select( + cs, + state.read_precompile_call, + &call_params, + &state.precompile_call_params, + ); + // also set timestamps + state.timestamp_to_use_for_read = UInt32::conditionally_select( + cs, + state.read_precompile_call, + &precompile_call.timestamp, + &state.timestamp_to_use_for_read, + ); + + // timestamps have large space, so this can be expected + let timestamp_to_use_for_write = + unsafe { state.timestamp_to_use_for_read.increment_unchecked(cs) }; + state.timestamp_to_use_for_write = UInt32::conditionally_select( + cs, + state.read_precompile_call, + ×tamp_to_use_for_write, + &state.timestamp_to_use_for_write, + ); + + state.read_words_for_round = Boolean::multi_or( + cs, + &[state.read_precompile_call, state.read_words_for_round], + ); + state.read_precompile_call = boolean_false; + + let zero_pairs_left = state.precompile_call_params.num_pairs.is_zero(cs); + + let mut read_values = [zero_u256; NUM_MEMORY_READS_PER_CYCLE]; + let should_read = zero_pairs_left.negated(cs); + let mut bias_variable = should_read.get_variable(); + for dst in read_values.iter_mut() { + let read_query_value = + memory_read_witness.conditionally_allocate_biased(cs, should_read, bias_variable); + bias_variable = read_query_value.inner[0].get_variable(); + + *dst = read_query_value; + + let read_query = MemoryQuery { + timestamp: state.timestamp_to_use_for_read, + memory_page: state.precompile_call_params.input_page, + index: state.precompile_call_params.input_offset, + rw_flag: boolean_false, + is_ptr: boolean_false, + value: read_query_value, + }; + + let may_be_new_offset = unsafe { + state + .precompile_call_params + .input_offset + .increment_unchecked(cs) + }; + state.precompile_call_params.input_offset = UInt32::conditionally_select( + cs, + state.read_words_for_round, + &may_be_new_offset, + &state.precompile_call_params.input_offset, + ); + + // perform read + memory_queue.push(cs, read_query, should_read); + } + + let may_be_new_num_pairs = unsafe { + state + .precompile_call_params + .num_pairs + .decrement_unchecked(cs) + }; + state.precompile_call_params.num_pairs = UInt32::conditionally_select( + cs, + state.read_words_for_round, + &may_be_new_num_pairs, + &state.precompile_call_params.num_pairs, + ); + + let [p_x, p_y, q_x_c1, q_x_c0, q_y_c1, q_y_c0] = read_values; + + let (success, mut result) = pair(cs, &p_x, &p_y, &q_x_c0, &q_x_c1, &q_y_c0, &q_y_c1); + NonNativeField::normalize(&mut result, cs); + + let mut acc = result.mul(cs, &mut state.pairing_inner_state.clone()); + state.pairing_inner_state = , + BN256Extension12Params, + > as NonNativeField>::conditionally_select( + cs, + state.read_words_for_round, + &acc, + &state.pairing_inner_state, + ); + + let no_pairs_left = state.precompile_call_params.num_pairs.is_zero(cs); + let write_result = Boolean::multi_and(cs, &[state.read_words_for_round, no_pairs_left]); + + let success_as_u32 = unsafe { UInt32::from_variable_unchecked(success.get_variable()) }; + let mut success = zero_u256; + success.inner[0] = success_as_u32; + + let success_query = MemoryQuery { + timestamp: timestamp_to_use_for_write, + memory_page: state.precompile_call_params.output_page, + index: state.precompile_call_params.output_offset, + rw_flag: boolean_true, + is_ptr: boolean_false, + value: success, + }; + + let _ = memory_queue.push(cs, success_query, write_result); + + let maybe_new_offset = unsafe { + state + .precompile_call_params + .output_offset + .increment_unchecked(cs) + }; + + state.precompile_call_params.output_offset = UInt32::conditionally_select( + cs, + write_result, + &maybe_new_offset, + &state.precompile_call_params.output_offset, + ); + + let paired = acc.sub(cs, &mut one_fq12.clone()).is_zero(cs); + let paired_as_u32 = unsafe { UInt32::from_variable_unchecked(paired.get_variable()) }; + let mut paired = zero_u256; + paired.inner[0] = paired_as_u32; + + let write_query = MemoryQuery { + timestamp: state.timestamp_to_use_for_write, + memory_page: state.precompile_call_params.output_page, + index: state.precompile_call_params.output_offset, + rw_flag: boolean_true, + is_ptr: boolean_false, + value: paired, + }; + + memory_queue.push(cs, write_query, write_result); + + let input_is_empty = precompile_calls_queue.is_empty(cs); + let input_is_not_empty = input_is_empty.negated(cs); + let nothing_left = Boolean::multi_and(cs, &[write_result, input_is_empty]); + let process_next = Boolean::multi_and(cs, &[write_result, input_is_not_empty]); + + state.read_precompile_call = process_next; + state.completed = Boolean::multi_or(cs, &[nothing_left, state.completed]); + let t = Boolean::multi_or(cs, &[state.read_precompile_call, state.completed]); + state.read_words_for_round = t.negated(cs); + + if crate::config::CIRCUIT_VERSOBE { + dbg!(state.witness_hook(cs)()); + dbg!(precompile_calls_queue.into_state().witness_hook(cs)()); + } + } + + if crate::config::CIRCUIT_VERSOBE { + dbg!(state.witness_hook(cs)()); + dbg!(precompile_calls_queue.into_state().witness_hook(cs)()); + } + + precompile_calls_queue.enforce_consistency(cs); + + state +} + +pub fn ecpairing_function_entry_point< + F: SmallField, + CS: ConstraintSystem, + R: CircuitRoundFunction + AlgebraicRoundFunction, +>( + cs: &mut CS, + witness: EcPairingCircuitInstanceWitness, + round_function: &R, + limit: usize, +) -> [Num; INPUT_OUTPUT_COMMITMENT_LENGTH] +where + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN]:, + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN]:, + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN]:, + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN + 1]:, +{ + let EcPairingCircuitInstanceWitness { + closed_form_input, + requests_queue_witness, + memory_reads_witness, + } = witness; + + let mut structured_input = + EcPairingCircuitInputOutput::alloc_ignoring_outputs(cs, closed_form_input.clone()); + + let start_flag = structured_input.start_flag; + + let requests_queue_state_from_input = structured_input.observable_input.initial_log_queue_state; + + requests_queue_state_from_input.enforce_trivial_head(cs); + + let requests_queue_state_from_fsm = structured_input.hidden_fsm_input.log_queue_state; + + let requests_queue_state = QueueState::conditionally_select( + cs, + start_flag, + &requests_queue_state_from_input, + &requests_queue_state_from_fsm, + ); + + let mut requests_queue = StorageLogQueue::::from_state(cs, requests_queue_state); + let queue_witness = CircuitQueueWitness::from_inner_witness(requests_queue_witness); + requests_queue.witness = Arc::new(queue_witness); + + let memory_queue_state_from_input = + structured_input.observable_input.initial_memory_queue_state; + + memory_queue_state_from_input.enforce_trivial_head(cs); + + let memory_queue_state_from_fsm = structured_input.hidden_fsm_input.memory_queue_state; + + let memory_queue_state = QueueState::conditionally_select( + cs, + start_flag, + &memory_queue_state_from_input, + &memory_queue_state_from_fsm, + ); + + let mut memory_queue = MemoryQueue::::from_state(cs, memory_queue_state); + let read_queries_allocator = ConditionalWitnessAllocator::> { + witness_source: Arc::new(RwLock::new(memory_reads_witness)), + }; + + let mut starting_fsm_state = EcPairingFunctionFSM::placeholder(cs); + starting_fsm_state.read_precompile_call = Boolean::allocated_constant(cs, true); + + let initial_state = EcPairingFunctionFSM::conditionally_select( + cs, + start_flag, + &starting_fsm_state, + &structured_input.hidden_fsm_input.internal_fsm, + ); + + let final_state = ecpairing_precompile_inner::( + cs, + &mut memory_queue, + &mut requests_queue, + read_queries_allocator, + initial_state, + round_function, + limit, + ); + + let final_memory_state = memory_queue.into_state(); + let final_requests_state = requests_queue.into_state(); + + let done = final_state.completed; + structured_input.completion_flag = done; + structured_input.observable_output = PrecompileFunctionOutputData::placeholder(cs); + + structured_input.observable_output.final_memory_state = QueueState::conditionally_select( + cs, + structured_input.completion_flag, + &final_memory_state, + &structured_input.observable_output.final_memory_state, + ); + + structured_input.hidden_fsm_output.internal_fsm = final_state; + structured_input.hidden_fsm_output.log_queue_state = final_requests_state; + structured_input.hidden_fsm_output.memory_queue_state = final_memory_state; + + structured_input.hook_compare_witness(cs, &closed_form_input); + + let compact_form = + ClosedFormInputCompactForm::from_full_form(cs, &structured_input, round_function); + let input_commitment = commit_variable_length_encodable_item(cs, &compact_form, round_function); + for el in input_commitment.iter() { + let gate = PublicInputGate::new(el.get_variable()); + gate.add_to_cs(cs); + } + + input_commitment +} diff --git a/crates/zkevm_circuits/src/bn254/fixed_base_mul_table.rs b/crates/zkevm_circuits/src/bn254/fixed_base_mul_table.rs new file mode 100644 index 0000000..050cf94 --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/fixed_base_mul_table.rs @@ -0,0 +1,58 @@ +use super::*; +use boojum::cs::implementations::lookup_table::LookupTable; +use boojum::field::SmallField; +use boojum::pairing::ff::{Field, PrimeField}; +use boojum::pairing::{CurveAffine, CurveProjective}; +use derivative::*; + +const TABLE_NAME: &'static str = "FIXEDBASEMUL table"; + +#[derive(Derivative)] +#[derivative(Clone, Copy, Debug, PartialEq, Eq)] +pub struct FixedBaseMulTable; + +// Allows for a radix scalar mul by storing all potential exponentiations +// of the generator with 0..255 +pub fn create_fixed_base_mul_table< + F: SmallField, + const U32_WORD_INDEX: usize, + const BYTE_OFFSET: usize, +>() -> LookupTable { + assert!(U32_WORD_INDEX < 8); + assert!(BYTE_OFFSET < 32); + let mut content = Vec::with_capacity(1 << 8); + // point of infinity is encoded as (0,0), and we handle it via select in the multiplication routine + content.push([F::ZERO, F::ZERO, F::ZERO]); + let mut base_power = BN256Fr::one(); + for _ in 0..(BYTE_OFFSET * 8) { + base_power.double(); + } + let base = BN256Affine::one(); + let base = base.mul(base_power); + let mut current = base; + let base = base.into_affine(); + let repr_word_index = U32_WORD_INDEX / 2; + let take_low = U32_WORD_INDEX % 2 == 0; + for a in 1..=u8::MAX { + let current_affine = current.into_affine(); + let (x, y) = current_affine.as_xy(); + let x_repr_word = x.into_repr().as_ref()[repr_word_index]; + let y_repr_word = y.into_repr().as_ref()[repr_word_index]; + if take_low { + content.push([ + F::from_u64_unchecked(a as u64), + F::from_u64_unchecked((x_repr_word as u32) as u64), + F::from_u64_unchecked((y_repr_word as u32) as u64), + ]); + } else { + content.push([ + F::from_u64_unchecked(a as u64), + F::from_u64_unchecked(x_repr_word >> 32), + F::from_u64_unchecked(y_repr_word >> 32), + ]); + } + current.add_assign_mixed(&base); + } + assert_eq!(content.len(), 256); + LookupTable::new_from_content(content, TABLE_NAME.to_string(), 1) +} diff --git a/crates/zkevm_circuits/src/bn254/mod.rs b/crates/zkevm_circuits/src/bn254/mod.rs new file mode 100644 index 0000000..d7a5e4f --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/mod.rs @@ -0,0 +1,74 @@ +use boojum::gadgets::curves::sw_projective::extended::ExtendedSWProjectivePoint; +use boojum::gadgets::curves::sw_projective::SWProjectivePoint; +use boojum::gadgets::non_native_field::implementations::{ + NonNativeFieldOverU16, NonNativeFieldOverU16Params, +}; +use boojum::gadgets::tower_extension::algebraic_torus::TorusWrapper; +use boojum::gadgets::tower_extension::params::bn256::{ + BN256Extension12Params, BN256Extension2Params, BN256Extension6Params, +}; +use boojum::gadgets::tower_extension::{ + fq12::Fq12 as NonNativeFq12, fq2::Fq2 as NonNativeFq2, fq6::Fq6 as NonNativeFq6, +}; + +// Characteristic of the base field for bn256 curve +pub use boojum::pairing::bn256::fq::Fq as BN256Fq; +// Order of group of points for bn256 curve +pub use boojum::pairing::bn256::fr::Fr as BN256Fr; + +// Affine point for bn256 curve +pub use boojum::pairing::bn256::G1Affine as BN256Affine; +pub use boojum::pairing::bn256::G2Affine as BN256AffineTwisted; + +// Modules for different operations on bn256 curve +pub mod ec_add; +pub mod ec_mul; +pub mod ec_pairing; +pub mod fixed_base_mul_table; +#[cfg(test)] +pub mod tests; +mod validation; + +// --- Base and scalar field params for BN256 curve --- +/// Params of BN256 base field +pub type BN256BaseNNFieldParams = NonNativeFieldOverU16Params; +/// Params of BN256 scalar field +pub type BN256ScalarNNFieldParams = NonNativeFieldOverU16Params; +/// Non-native field over u16 for BN256 base field +pub type BN256BaseNNField = NonNativeFieldOverU16; +/// Non-native field over u16 for BN256 scalar field +pub type BN256ScalarNNField = NonNativeFieldOverU16; + +// P.S. we used 17 bits since 17 bits * 16 bits in u16 = 272 bits > 254 bits +// used in BN254 (so we have some extra space to deal with) + +// --- Field extensions for BN256 curve --- +/// Non-native field extension Fq2 for BN256 curve +pub type BN256Fq2NNField = NonNativeFq2, BN256Extension2Params>; +/// Non-native field extension Fq6 for BN256 curve +pub type BN256Fq6NNField = NonNativeFq6, BN256Extension6Params>; +/// Non-native field extension Fq12 for BN256 curve +pub type BN256Fq12NNField = + NonNativeFq12, BN256Extension12Params>; + +// --- Torus compression types for BN256 curve --- +pub type BN256TorusWrapper = + TorusWrapper, BN256Extension12Params>; + +// --- SW Projective points for BN256 curves: regular and twisted --- +/// SW Projective point for BN256 curve over non-extended base field +pub type BN256SWProjectivePoint = SWProjectivePoint>; +/// SW Projective point for twisted BN256 curve over extended base field `Fp2` +pub type BN256SWProjectivePointTwisted = + ExtendedSWProjectivePoint>; + +// --- Parameters creation functions --- +/// Returns BN254 base field parameters +pub fn bn254_base_field_params() -> BN256BaseNNFieldParams { + NonNativeFieldOverU16Params::create() +} + +/// Returns BN254 scalar field parameters +pub fn bn254_scalar_field_params() -> BN256ScalarNNFieldParams { + NonNativeFieldOverU16Params::create() +} diff --git a/crates/zkevm_circuits/src/bn254/sage/README.md b/crates/zkevm_circuits/src/bn254/sage/README.md new file mode 100644 index 0000000..4f82a7e --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/sage/README.md @@ -0,0 +1,20 @@ +# :part_alternation_mark: SageMath Code for Elliptic Curve Gadgets + +This folder contains SageMath code for validation and parameters generation for the Elliptic Curve Gadgets library for _Boojum_ constraint system. + +## :file_folder: Structure + +Below, we describe the structure of the folder: + +| File/Folder | Description | +|-------------|-------------| +| [`endomorphism.sage`](endomorphism.sage) | SageMath code for getting $\lambda$ and $\beta$ parameters for BN254 curve used in useful endomorphism. | +| [`balanced_representation.sage`](balanced_representation.sage) | SageMath code for getting short vectors $(a_1,b_1)$ and $(a_2,b_2)$ used for further balanced representation of a scalar in wnaf. | +| [`scalar_decomposition.sage`](scalar_decomposition.sage) | SageMath code for testing decomposing a vector $k$ into $k_1,k_2$ such that $k = k_1 + \lambda k_2$. | +| [`params.sage`](pairing.sage) | SageMath code for pairing-related parameters. | + +The majority of material (including wnaf multiplication implementation) is based on the "Guide to Elliptic Curve Cryptography" [1]. + +## :arrow_forward: References + +[1] Darrel Hankerson, Alfred Menezes, Scott Vanstone. "Guide to Elliptic Curve Cryptography". Springer, 2004. diff --git a/crates/zkevm_circuits/src/bn254/sage/balanced_representation.sage b/crates/zkevm_circuits/src/bn254/sage/balanced_representation.sage new file mode 100644 index 0000000..b823bc1 --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/sage/balanced_representation.sage @@ -0,0 +1,133 @@ +def find_short_vectors(q: int, lambd: int, verbose: bool = False) -> tuple[GF, GF, GF, GF]: + """ + Finds the shirt vectors for the elliptic curve. Vectors are in the form + v1 = (a1, b1) and v2 = (a2, b2) + + Params: + q: GF - base field + lambd: GF - lambda parameter (root of X^2-X-1 in Fq) + verbose: bool (optional, defaults to False) - if True, prints the Euclidean algorithm trace + + Returns: + tuple[GF, GF, GF, GF] - short vectors + """ + + trace = _extended_euclidean_alg_trace(q, lambd, verbose=verbose) + + # Finding the greatest l s.t. r_l > sqrt(n) + for i, entry in enumerate(trace): + _, _, r = entry + if r >= sqrt(q): + l = i + + # Defining tuples of (s_l, t_l, r_l) + sl, tl, rl = trace[l] + sl1, tl1, rl1 = trace[l+1] + sl2, tl2, rl2 = trace[l+2] + + a1, b1 = rl1, -tl1 + if rl**2 + tl**2 <= rl2**2 + tl2**2: + a2, b2 = rl, -tl + else: + a2, b2 = rl2, -tl2 + + return (a1, b1, a2, b2) + + +def _extended_euclidean_alg_trace(a: GF, b: GF, verbose: bool = False) -> list[tuple[GF, GF, GF]]: + """ + Extended Euclidean algorithm which outputs the trace of computations in + a form of array (s_i, t_i, r_i) where s_i*a + t_i*b = r_i based + on Algorithm 3.74 of: + http://tomlr.free.fr/Math%E9matiques/Math%20Complete/Cryptography/Guide%20to%20Elliptic%20Curve%20Cryptography%20-%20D.%20Hankerson,%20A.%20Menezes,%20S.%20Vanstone.pdf + + Inputs: + a: GF - first number + b: GF - second number + + Returns: + list[tuple[GF, GF, GF]] - trace of computations + """ + + # Basic parameters for the algorithm + u, v = a, b + x1, y1 = 1, 0 + x2, y2 = 0, 1 + r = a + + # Resultant trace of computations in a form of + # array (s_i, t_i, r_i) + trace = [] + + while u != 0: + if verbose: + print(f's_i*n + t_i*lambd = r: {x1}*{a} + {y1}*{b} = {r}') + + trace.append((x1, y1, r)) + q = v // u + r = v - q*u + x = x2 - q*x1 + y = y2 - q*y1 + v = u + u = r + x2 = x1 + x1 = x + y2 = y1 + y1 = y + + d = v + x = x2 + y = y2 + return trace + +# Firstly, checking an Example 3.75 from +# http://tomlr.free.fr/Math%E9matiques/Math%20Complete/Cryptography/Guide%20to%20Elliptic%20Curve%20Cryptography%20-%20D.%20Hankerson,%20A.%20Menezes,%20S.%20Vanstone.pdf +q = 1461501637330902918203687013445034429194588307251 +lambd = 903860042511079968555273866340564498116022318806 +a1, b1, a2, b2 = find_short_vectors(q, lambd, verbose=False) + +print("Short vectors (a1, b1) and (a2, b2) for the curve from the book are:") +print('a1 =', hex(a1)) +print('b1 =', hex(b1)) +print('a2 =', hex(a2)) +print('b2 =', hex(b2)) + +assert a1 == 788919430192407951782190, 'a1 is incorrect' +assert b1 == -602889891024722752429129, 'b1 is incorrect' +assert a2 == 602889891024722752429129, 'a2 is incorrect' +assert b2 == 1391809321217130704211319, 'b2 is incorrect' + +# Validating the values for secp256k1 +q = Integer("0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEBAAEDCE6AF48A03BBFD25E8CD0364141") +lambd = Integer("0x5363ad4cc05c30e0a5261c028812645a122e22ea20816678df02967c1b23bd72") +a1, b1, a2, b2 = find_short_vectors(q, lambd, verbose=False) +print("\nShort vectors (a1, b1) and (a2, b2) for secp256k1 are:") +print('a1 =', hex(a1)) +print('b1 =', hex(b1)) +print('a2 =', hex(a2)) +print('b2 =', hex(b2)) + +assert a1 == Integer("0x3086d221a7d46bcde86c90e49284eb15") +assert b1 == Integer("-0xe4437ed6010e88286f547fa90abfe4c3") +assert a2 == Integer("0x114ca50f7a8e2f3f657c1108d9d44cfd8") +assert b2 == a1 + +# Now, calculating the value for BN254 curve + +# Defining base field Fq +q = 21888242871839275222246405745257275088548364400416034343698204186575808495617 +Fq = GF(q) +# As if was shown, lambda parameter is the following: +lambd = Integer('0xb3c4d79d41a917585bfc41088d8daaa78b17ea66b99c90dd') + +# Displaying the short vectors. Note that we use Fq to convert the result +# to the finite field +a1, b1, a2, b2 = find_short_vectors(q, lambd, verbose=False) +print('\nShort vectors (a1, b1) and (a2, b2) for BN256 are:') + +print('a1 =', a1.hex()) # 0x89d3256894d213e3 +print('b1 =', b1.hex()) # -0x6f4d8248eeb859fc8211bbeb7d4f1128 +print('a2 =', a2.hex()) # 0x6f4d8248eeb859fd0be4e1541221250b +print('b2 =', b2.hex()) # 0x89d3256894d213e3 + +# These numbers seem to coincide with https://github.com/AztecProtocol/weierstrudel/blob/master/js_snippets/bn128_reference.js diff --git a/crates/zkevm_circuits/src/bn254/sage/balanced_representation.sage.py b/crates/zkevm_circuits/src/bn254/sage/balanced_representation.sage.py new file mode 100644 index 0000000..256f3d7 --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/sage/balanced_representation.sage.py @@ -0,0 +1,140 @@ + + +# This file was *autogenerated* from the file balanced_representation.sage +from sage.all_cmdline import * # import sage library + +_sage_const_1 = Integer(1); _sage_const_2 = Integer(2); _sage_const_0 = Integer(0); _sage_const_1461501637330902918203687013445034429194588307251 = Integer(1461501637330902918203687013445034429194588307251); _sage_const_903860042511079968555273866340564498116022318806 = Integer(903860042511079968555273866340564498116022318806); _sage_const_788919430192407951782190 = Integer(788919430192407951782190); _sage_const_602889891024722752429129 = Integer(602889891024722752429129); _sage_const_1391809321217130704211319 = Integer(1391809321217130704211319); _sage_const_21888242871839275222246405745257275088548364400416034343698204186575808495617 = Integer(21888242871839275222246405745257275088548364400416034343698204186575808495617) +def find_short_vectors(q: int, lambd: int, verbose: bool = False) -> tuple[GF, GF, GF, GF]: + """ + Finds the shirt vectors for the elliptic curve. Vectors are in the form + v1 = (a1, b1) and v2 = (a2, b2) + + Params: + q: GF - base field + lambd: GF - lambda parameter (root of X^2-X-1 in Fq) + verbose: bool (optional, defaults to False) - if True, prints the Euclidean algorithm trace + + Returns: + tuple[GF, GF, GF, GF] - short vectors + """ + + trace = _extended_euclidean_alg_trace(q, lambd, verbose=verbose) + + # Finding the greatest l s.t. r_l > sqrt(n) + for i, entry in enumerate(trace): + _, _, r = entry + if r >= sqrt(q): + l = i + + # Defining tuples of (s_l, t_l, r_l) + sl, tl, rl = trace[l] + sl1, tl1, rl1 = trace[l+_sage_const_1 ] + sl2, tl2, rl2 = trace[l+_sage_const_2 ] + + a1, b1 = rl1, -tl1 + if rl**_sage_const_2 + tl**_sage_const_2 <= rl2**_sage_const_2 + tl2**_sage_const_2 : + a2, b2 = rl, -tl + else: + a2, b2 = rl2, -tl2 + + return (a1, b1, a2, b2) + + +def _extended_euclidean_alg_trace(a: GF, b: GF, verbose: bool = False) -> list[tuple[GF, GF, GF]]: + """ + Extended Euclidean algorithm which outputs the trace of computations in + a form of array (s_i, t_i, r_i) where s_i*a + t_i*b = r_i based + on Algorithm 3.74 of: + http://tomlr.free.fr/Math%E9matiques/Math%20Complete/Cryptography/Guide%20to%20Elliptic%20Curve%20Cryptography%20-%20D.%20Hankerson,%20A.%20Menezes,%20S.%20Vanstone.pdf + + Inputs: + a: GF - first number + b: GF - second number + + Returns: + list[tuple[GF, GF, GF]] - trace of computations + """ + + # Basic parameters for the algorithm + u, v = a, b + x1, y1 = _sage_const_1 , _sage_const_0 + x2, y2 = _sage_const_0 , _sage_const_1 + r = a + + # Resultant trace of computations in a form of + # array (s_i, t_i, r_i) + trace = [] + + while u != _sage_const_0 : + if verbose: + print(f's_i*n + t_i*lambd = r: {x1}*{a} + {y1}*{b} = {r}') + + trace.append((x1, y1, r)) + q = v // u + r = v - q*u + x = x2 - q*x1 + y = y2 - q*y1 + v = u + u = r + x2 = x1 + x1 = x + y2 = y1 + y1 = y + + d = v + x = x2 + y = y2 + return trace + +# Firstly, checking an Example 3.75 from +# http://tomlr.free.fr/Math%E9matiques/Math%20Complete/Cryptography/Guide%20to%20Elliptic%20Curve%20Cryptography%20-%20D.%20Hankerson,%20A.%20Menezes,%20S.%20Vanstone.pdf +q = _sage_const_1461501637330902918203687013445034429194588307251 +lambd = _sage_const_903860042511079968555273866340564498116022318806 +a1, b1, a2, b2 = find_short_vectors(q, lambd, verbose=False) + +print("Short vectors (a1, b1) and (a2, b2) for the curve from the book are:") +print('a1 =', hex(a1)) +print('b1 =', hex(b1)) +print('a2 =', hex(a2)) +print('b2 =', hex(b2)) + +assert a1 == _sage_const_788919430192407951782190 , 'a1 is incorrect' +assert b1 == -_sage_const_602889891024722752429129 , 'b1 is incorrect' +assert a2 == _sage_const_602889891024722752429129 , 'a2 is incorrect' +assert b2 == _sage_const_1391809321217130704211319 , 'b2 is incorrect' + +# Validating the values for secp256k1 +q = Integer("0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEBAAEDCE6AF48A03BBFD25E8CD0364141") +lambd = Integer("0x5363ad4cc05c30e0a5261c028812645a122e22ea20816678df02967c1b23bd72") +a1, b1, a2, b2 = find_short_vectors(q, lambd, verbose=False) +print("\nShort vectors (a1, b1) and (a2, b2) for secp256k1 are:") +print('a1 =', hex(a1)) +print('b1 =', hex(b1)) +print('a2 =', hex(a2)) +print('b2 =', hex(b2)) + +assert a1 == Integer("0x3086d221a7d46bcde86c90e49284eb15") +assert b1 == Integer("-0xe4437ed6010e88286f547fa90abfe4c3") +assert a2 == Integer("0x114ca50f7a8e2f3f657c1108d9d44cfd8") +assert b2 == a1 + +# Now, calculating the value for BN254 curve + +# Defining base field Fq +q = _sage_const_21888242871839275222246405745257275088548364400416034343698204186575808495617 +Fq = GF(q) +# As if was shown, lambda parameter is the following: +lambd = Integer('0xb3c4d79d41a917585bfc41088d8daaa78b17ea66b99c90dd') + +# Displaying the short vectors. Note that we use Fq to convert the result +# to the finite field +a1, b1, a2, b2 = find_short_vectors(q, lambd, verbose=False) +print('\nShort vectors (a1, b1) and (a2, b2) for BN256 are:') + +print('a1 =', a1.hex()) # 0x89d3256894d213e3 +print('b1 =', b1.hex()) # -0x6f4d8248eeb859fc8211bbeb7d4f1128 +print('a2 =', a2.hex()) # 0x6f4d8248eeb859fd0be4e1541221250b +print('b2 =', b2.hex()) # 0x89d3256894d213e3 + +# These numbers seem to coincide with https://github.com/AztecProtocol/weierstrudel/blob/master/js_snippets/bn128_reference.js + diff --git a/crates/zkevm_circuits/src/bn254/sage/endomorphism.sage b/crates/zkevm_circuits/src/bn254/sage/endomorphism.sage new file mode 100644 index 0000000..058b08b --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/sage/endomorphism.sage @@ -0,0 +1,60 @@ +# Defining prime field Fp for scalar field and Fq for base field +p = 21888242871839275222246405745257275088696311157297823662689037894645226208583 +Fp = GF(p) + +q = 21888242871839275222246405745257275088548364400416034343698204186575808495617 +Fq = GF(q) + +# Defining a polynomial ring over Fq +# and finding the roots of the polynomial X^2+X+1: +R. = PolynomialRing(Fq) +f = x^2 + x + 1 +f_roots = f.roots() +lambdas = [root[0] for root in f_roots] +print('Roots of x^2 + x + 1 are', lambdas) +# Output: [21888242871839275217838484774961031246154997185409878258781734729429964517155, 4407920970296243842393367215006156084916469457145843978461] + +# Picking one lambda out of roots +lambd = lambdas[1] # 4407920970296243842393367215006156084916469457145843978461 +print('Picked lambda =', hex(lambd)) + +# Verifying that lambd is the root of the polynomial... +assert lambd**2 + lambd + 1 == 0, 'lambd is incorrect since it is not a root of X^2+X+1' + +# Finding beta parameter +# Beta should satisfy beta*3 = 1 in Fp, thus +# it is one of the roots of the polynomial Y^3 - 1 +Q. = PolynomialRing(Fp) +g = y^3 - 1 +g_roots = g.roots() +betas = [root[0] for root in g_roots] +print('Roots of y^3 - 1 are', betas) +# Output: [21888242871839275220042445260109153167277707414472061641714758635765020556616, 2203960485148121921418603742825762020974279258880205651966, 1] + +# Picking one beta out of roots +beta = betas[1] # 2203960485148121921418603742825762020974279258880205651966 +print('Picked beta =', hex(beta)) + +# Verifying that beta is the root of the polynomial Y^3-1... +assert beta**3 == 1, 'beta is incorrect since beta^3 != 1' + +# Then, we need to verify that (beta, lambda) pair is valid. +# For that, define the BN254 curve. +# Parameters can be found in section 5.4.9 of the paper +# https://zips.z.cash/protocol/protocol.pdf +a = Fp(0) +b = Fp(3) +E = EllipticCurve(Fp, (a, b)) +G = E(1, 2) # Base point +E.set_order(q) + +# Taking some random point on the curve +Q = 11 * G +# Applying endomorphism to the point +R = lambd * Q +# If lambda1 and beta are valid, then R should be equal (beta*x, y) +x_1 = beta * Q[0] +y_1 = Q[1] + +assert x_1 == R[0], 'beta is invalid since (beta*x, y) != lambda*(x, y)' +assert y_1 == R[1], 'beta is invalid since (beta*x, y) != lambda*(x, y)' diff --git a/crates/zkevm_circuits/src/bn254/sage/endomorphism.sage.py b/crates/zkevm_circuits/src/bn254/sage/endomorphism.sage.py new file mode 100644 index 0000000..e4a8a22 --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/sage/endomorphism.sage.py @@ -0,0 +1,66 @@ + + +# This file was *autogenerated* from the file endomorphism.sage +from sage.all_cmdline import * # import sage library + +_sage_const_21888242871839275222246405745257275088696311157297823662689037894645226208583 = Integer(21888242871839275222246405745257275088696311157297823662689037894645226208583); _sage_const_21888242871839275222246405745257275088548364400416034343698204186575808495617 = Integer(21888242871839275222246405745257275088548364400416034343698204186575808495617); _sage_const_2 = Integer(2); _sage_const_1 = Integer(1); _sage_const_0 = Integer(0); _sage_const_3 = Integer(3); _sage_const_11 = Integer(11)# Defining prime field Fp for scalar field and Fq for base field +p = _sage_const_21888242871839275222246405745257275088696311157297823662689037894645226208583 +Fp = GF(p) + +q = _sage_const_21888242871839275222246405745257275088548364400416034343698204186575808495617 +Fq = GF(q) + +# Defining a polynomial ring over Fq +# and finding the roots of the polynomial X^2+X+1: +R = PolynomialRing(Fq, names=('x',)); (x,) = R._first_ngens(1) +f = x**_sage_const_2 + x + _sage_const_1 +f_roots = f.roots() +lambdas = [root[_sage_const_0 ] for root in f_roots] +print('Roots of x^2 + x + 1 are', lambdas) +# Output: [21888242871839275217838484774961031246154997185409878258781734729429964517155, 4407920970296243842393367215006156084916469457145843978461] + +# Picking one lambda out of roots +lambd = lambdas[_sage_const_1 ] # 4407920970296243842393367215006156084916469457145843978461 +print('Picked lambda =', hex(lambd)) + +# Verifying that lambd is the root of the polynomial... +assert lambd**_sage_const_2 + lambd + _sage_const_1 == _sage_const_0 , 'lambd is incorrect since it is not a root of X^2+X+1' + +# Finding beta parameter +# Beta should satisfy beta*3 = 1 in Fp, thus +# it is one of the roots of the polynomial Y^3 - 1 +Q = PolynomialRing(Fp, names=('y',)); (y,) = Q._first_ngens(1) +g = y**_sage_const_3 - _sage_const_1 +g_roots = g.roots() +betas = [root[_sage_const_0 ] for root in g_roots] +print('Roots of y^3 - 1 are', betas) +# Output: [21888242871839275220042445260109153167277707414472061641714758635765020556616, 2203960485148121921418603742825762020974279258880205651966, 1] + +# Picking one beta out of roots +beta = betas[_sage_const_1 ] # 2203960485148121921418603742825762020974279258880205651966 +print('Picked beta =', hex(beta)) + +# Verifying that beta is the root of the polynomial Y^3-1... +assert beta**_sage_const_3 == _sage_const_1 , 'beta is incorrect since beta^3 != 1' + +# Then, we need to verify that (beta, lambda) pair is valid. +# For that, define the BN254 curve. +# Parameters can be found in section 5.4.9 of the paper +# https://zips.z.cash/protocol/protocol.pdf +a = Fp(_sage_const_0 ) +b = Fp(_sage_const_3 ) +E = EllipticCurve(Fp, (a, b)) +G = E(_sage_const_1 , _sage_const_2 ) # Base point +E.set_order(q) + +# Taking some random point on the curve +Q = _sage_const_11 * G +# Applying endomorphism to the point +R = lambd * Q +# If lambda1 and beta are valid, then R should be equal (beta*x, y) +x_1 = beta * Q[_sage_const_0 ] +y_1 = Q[_sage_const_1 ] + +assert x_1 == R[_sage_const_0 ], 'beta is invalid since (beta*x, y) != lambda*(x, y)' +assert y_1 == R[_sage_const_1 ], 'beta is invalid since (beta*x, y) != lambda*(x, y)' + diff --git a/crates/zkevm_circuits/src/bn254/sage/pairing.sage b/crates/zkevm_circuits/src/bn254/sage/pairing.sage new file mode 100644 index 0000000..11f4f7f --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/sage/pairing.sage @@ -0,0 +1,40 @@ +# Curve parameter u and the value of [log2(6x+2)] - 1: +u = 4965661367192848881 +six_u_plus_2 = 6*u+2 + +six_u_plus_2_naf = [ + 0, 0, 0, 1, 0, 1, 0, -1, + 0, 0, 1, -1, 0, 0, 1, 0, + 0, 1, 1, 0, -1, 0, 0, 1, + 0, -1, 0, 0, 0, 0, 1, 1, + 1, 0, 0, -1, 0, 0, 1, 0, + 0, 0, 0, 0, -1, 0, 0, 1, + 1, 0, 0, -1, 0, 0, 0, 1, + 1, 0, -1, 0, 0, 1, 0, 1, + 1] +print('\nCurve in WNAF format: {}', six_u_plus_2_naf) + +# Verifying that the decomposition is indeed correct: +six_u_plus_2_wnaf = sum([k_i * 2**i for i, k_i in enumerate(six_u_plus_2_naf)]) +assert six_u_plus_2_wnaf == six_u_plus_2 + +def to_wnaf(k: Integer) -> list[Integer]: + """ + Converts an integer to its WNAF representation. + """ + + k = Integer(k) + k_wnaf = [] + while k > 0: + if k % 2 == 1: + k_i = 2 - (k % 4) + k -= k_i + else: + k_i = 0 + k //= 2 + k_wnaf.append(k_i) + return k_wnaf + +print('\nWNAF representation of 4: {}', to_wnaf(4)) +print('\nWNAF representation of 13: {}', to_wnaf(13)) +print('\nWNAF representation of u: {}', to_wnaf(u)) diff --git a/crates/zkevm_circuits/src/bn254/sage/pairing.sage.py b/crates/zkevm_circuits/src/bn254/sage/pairing.sage.py new file mode 100644 index 0000000..67ec304 --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/sage/pairing.sage.py @@ -0,0 +1,46 @@ + + +# This file was *autogenerated* from the file pairing.sage +from sage.all_cmdline import * # import sage library + +_sage_const_4965661367192848881 = Integer(4965661367192848881); _sage_const_6 = Integer(6); _sage_const_2 = Integer(2); _sage_const_0 = Integer(0); _sage_const_1 = Integer(1); _sage_const_4 = Integer(4); _sage_const_13 = Integer(13)# Curve parameter u and the value of [log2(6x+2)] - 1: +u = _sage_const_4965661367192848881 +six_u_plus_2 = _sage_const_6 *u+_sage_const_2 + +six_u_plus_2_naf = [ + _sage_const_0 , _sage_const_0 , _sage_const_0 , _sage_const_1 , _sage_const_0 , _sage_const_1 , _sage_const_0 , -_sage_const_1 , + _sage_const_0 , _sage_const_0 , _sage_const_1 , -_sage_const_1 , _sage_const_0 , _sage_const_0 , _sage_const_1 , _sage_const_0 , + _sage_const_0 , _sage_const_1 , _sage_const_1 , _sage_const_0 , -_sage_const_1 , _sage_const_0 , _sage_const_0 , _sage_const_1 , + _sage_const_0 , -_sage_const_1 , _sage_const_0 , _sage_const_0 , _sage_const_0 , _sage_const_0 , _sage_const_1 , _sage_const_1 , + _sage_const_1 , _sage_const_0 , _sage_const_0 , -_sage_const_1 , _sage_const_0 , _sage_const_0 , _sage_const_1 , _sage_const_0 , + _sage_const_0 , _sage_const_0 , _sage_const_0 , _sage_const_0 , -_sage_const_1 , _sage_const_0 , _sage_const_0 , _sage_const_1 , + _sage_const_1 , _sage_const_0 , _sage_const_0 , -_sage_const_1 , _sage_const_0 , _sage_const_0 , _sage_const_0 , _sage_const_1 , + _sage_const_1 , _sage_const_0 , -_sage_const_1 , _sage_const_0 , _sage_const_0 , _sage_const_1 , _sage_const_0 , _sage_const_1 , + _sage_const_1 ] +print('\nCurve in WNAF format: {}', six_u_plus_2_naf) + +# Verifying that the decomposition is indeed correct: +six_u_plus_2_wnaf = sum([k_i * _sage_const_2 **i for i, k_i in enumerate(six_u_plus_2_naf)]) +assert six_u_plus_2_wnaf == six_u_plus_2 + +def to_wnaf(k: Integer) -> list[Integer]: + """ + Converts an integer to its WNAF representation. + """ + + k = Integer(k) + k_wnaf = [] + while k > _sage_const_0 : + if k % _sage_const_2 == _sage_const_1 : + k_i = _sage_const_2 - (k % _sage_const_4 ) + k -= k_i + else: + k_i = _sage_const_0 + k //= _sage_const_2 + k_wnaf.append(k_i) + return k_wnaf + +print('\nWNAF representation of 4: {}', to_wnaf(_sage_const_4 )) +print('\nWNAF representation of 13: {}', to_wnaf(_sage_const_13 )) +print('\nWNAF representation of u: {}', to_wnaf(u)) + diff --git a/crates/zkevm_circuits/src/bn254/sage/scalar_decomposition.sage b/crates/zkevm_circuits/src/bn254/sage/scalar_decomposition.sage new file mode 100644 index 0000000..ad673dd --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/sage/scalar_decomposition.sage @@ -0,0 +1,64 @@ +# Defining vectors (a1,b1) and (a2,b2) +a1 = 0x89d3256894d213e3 +b1 = -0x6f4d8248eeb859fc8211bbeb7d4f1128 +a2 = 0x6f4d8248eeb859fd0be4e1541221250b +b2 = 0x89d3256894d213e3 + +# Precomputed b1/n and b2/n times 2**256 +g1 = 0x24ccef014a773d2cf7a7bd9d4391eb18d +g2 = 0x2d91d232ec7e0b3d7 + +# Defining some curve parameters +n = 21888242871839275222246405745257275088548364400416034343698204186575808495617 +Fq = GF(n) +lambd = Integer(4407920970296243842393367215006156084916469457145843978461) + +# Regular decomposition +def decompose(k: Integer): + c1 = b2 * k // n + c2 = -b1 * k // n + + k1 = k - c1*a1 - c2*a2 + k2 = -c1*b1 - c2*b2 + return k1, k2 + +# Decomposition using precomputed g1 and g2 +def decompose_aztec(k: Integer): + c1 = (g2 * k) >> 256 + print(c1) + c2 = (g1 * k) >> 256 + print(c2) + + q1 = c1 * b1 + print(q1) + q2 = -c2 * b2 + print(q2) + + k2 = q2 - q1 + k2_lambda = k2 * lambd % n + print(k2_lambda) + k1 = k - k2_lambda + + return k1, k2 + +# Decomposing the scalar +print('\n--- Regular decomposition: ---') +k = Integer('0x161a87df4ee5620c75acf8cf7b2f1547183bf7368e2956fcc42ae0e439200c20') +k1, k2 = decompose(k) + +# Printing results for regular decomposition +print(f'k1 = {Fq(k1)}') +print(f'-k1 = {Fq(-k1)}') +print(f'k2 = {Fq(k2)}') +print(f'-k2 = {Fq(-k2)}') + +# Decomposing the scalar using Aztec Protocol's method +# https://github.com/AztecProtocol/weierstrudel/blob/master/js_snippets/endomorphism.js#L47 +print('\n--- Aztec decomposition: ---') +k1, k2 = decompose_aztec(k) + +# Printing results for Aztec decomposition +print(f'k1 = {Fq(k1)}') +print(f'-k1 = {Fq(-k1)}') +print(f'k2 = {Fq(k2)}') +print(f'-k2 = {Fq(-k2)}') diff --git a/crates/zkevm_circuits/src/bn254/sage/scalar_decomposition.sage.py b/crates/zkevm_circuits/src/bn254/sage/scalar_decomposition.sage.py new file mode 100644 index 0000000..0e2dae3 --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/sage/scalar_decomposition.sage.py @@ -0,0 +1,70 @@ + + +# This file was *autogenerated* from the file scalar_decomposition.sage +from sage.all_cmdline import * # import sage library + +_sage_const_0x89d3256894d213e3 = Integer(0x89d3256894d213e3); _sage_const_0x6f4d8248eeb859fc8211bbeb7d4f1128 = Integer(0x6f4d8248eeb859fc8211bbeb7d4f1128); _sage_const_0x6f4d8248eeb859fd0be4e1541221250b = Integer(0x6f4d8248eeb859fd0be4e1541221250b); _sage_const_0x24ccef014a773d2cf7a7bd9d4391eb18d = Integer(0x24ccef014a773d2cf7a7bd9d4391eb18d); _sage_const_0x2d91d232ec7e0b3d7 = Integer(0x2d91d232ec7e0b3d7); _sage_const_21888242871839275222246405745257275088548364400416034343698204186575808495617 = Integer(21888242871839275222246405745257275088548364400416034343698204186575808495617); _sage_const_4407920970296243842393367215006156084916469457145843978461 = Integer(4407920970296243842393367215006156084916469457145843978461); _sage_const_256 = Integer(256)# Defining vectors (a1,b1) and (a2,b2) +a1 = _sage_const_0x89d3256894d213e3 +b1 = -_sage_const_0x6f4d8248eeb859fc8211bbeb7d4f1128 +a2 = _sage_const_0x6f4d8248eeb859fd0be4e1541221250b +b2 = _sage_const_0x89d3256894d213e3 + +# Precomputed b1/n and b2/n times 2**256 +g1 = _sage_const_0x24ccef014a773d2cf7a7bd9d4391eb18d +g2 = _sage_const_0x2d91d232ec7e0b3d7 + +# Defining some curve parameters +n = _sage_const_21888242871839275222246405745257275088548364400416034343698204186575808495617 +Fq = GF(n) +lambd = Integer(_sage_const_4407920970296243842393367215006156084916469457145843978461 ) + +# Regular decomposition +def decompose(k: Integer): + c1 = b2 * k // n + c2 = -b1 * k // n + + k1 = k - c1*a1 - c2*a2 + k2 = -c1*b1 - c2*b2 + return k1, k2 + +# Decomposition using precomputed g1 and g2 +def decompose_aztec(k: Integer): + c1 = (g2 * k) >> _sage_const_256 + print(c1) + c2 = (g1 * k) >> _sage_const_256 + print(c2) + + q1 = c1 * b1 + print(q1) + q2 = -c2 * b2 + print(q2) + + k2 = q2 - q1 + k2_lambda = k2 * lambd % n + print(k2_lambda) + k1 = k - k2_lambda + + return k1, k2 + +# Decomposing the scalar +print('\n--- Regular decomposition: ---') +k = Integer('0x161a87df4ee5620c75acf8cf7b2f1547183bf7368e2956fcc42ae0e439200c20') +k1, k2 = decompose(k) + +# Printing results for regular decomposition +print(f'k1 = {Fq(k1)}') +print(f'-k1 = {Fq(-k1)}') +print(f'k2 = {Fq(k2)}') +print(f'-k2 = {Fq(-k2)}') + +# Decomposing the scalar using Aztec Protocol's method +# https://github.com/AztecProtocol/weierstrudel/blob/master/js_snippets/endomorphism.js#L47 +print('\n--- Aztec decomposition: ---') +k1, k2 = decompose_aztec(k) + +# Printing results for Aztec decomposition +print(f'k1 = {Fq(k1)}') +print(f'-k1 = {Fq(-k1)}') +print(f'k2 = {Fq(k2)}') +print(f'-k2 = {Fq(-k2)}') + diff --git a/crates/zkevm_circuits/src/bn254/sage/torus_params.sage b/crates/zkevm_circuits/src/bn254/sage/torus_params.sage new file mode 100644 index 0000000..248eb5a --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/sage/torus_params.sage @@ -0,0 +1,120 @@ +import json + +# Defining the base prime field +q = Integer(21888242871839275222246405745257275088696311157297823662689037894645226208583) # EC group order +Fq = GF(q) + +# Defining the extensions +# Fq2... +K2. = PolynomialRing(Fq) +Fq2. = Fq.extension(x^2+1) + +# Fq6... +K6. = PolynomialRing(Fq2) +Fq6. = Fq2.extension(y^3 - (u+9)) + +# Defining the Fq12 is a bit more tricky... +p = Fq.characteristic() +Fq12. = GF(p^12) + +i = sqrt(Fq12(-1)) +R12. = PolynomialRing(Fq12) + +j = (Y^3 - (i+9)).roots(multiplicities=False)[0] +w = sqrt(j) + +P = w.minpoly() +Fq12. = GF(p^12, modulus=P) + +# Preparing helper debugging lambda functions +fq2_to_dictionary = lambda f : { + 'c0': str(f[0]), + 'c1': str(f[1]) +} +fq6_to_dictionary = lambda f : { + 'c0': { + 'c0': str(f[0][0]), + 'c1': str(f[0][1]) + }, + 'c1': { + 'c0': str(f[1][0]), + 'c1': str(f[1][1]) + }, + 'c2': { + 'c0': str(f[2][0]), + 'c1': str(f[2][1]) + } +} +fq12_to_dictionary = lambda f: { + 'c0': { # Fq6 + 'c0': { #Fq2 + 'c0': str(f[0]+9*f[6]), + 'c1': str(f[6]), + }, + 'c1': { #Fq2 + 'c0': str(f[2]+9*f[8]), + 'c1': str(f[8]), + }, + 'c2': { #Fq2 + 'c0': str(f[4]+9*f[10]), + 'c1': str(f[10]), + } + }, + 'c1': { # Fq6 + 'c0': { #Fq2 + 'c0': str(f[1]+9*f[7]), + 'c1': str(f[7]), + }, + 'c1': { #Fq2 + 'c0': str(f[3]+9*f[9]), + 'c1': str(f[9]), + }, + 'c2': { #Fq2 + 'c0': str(f[5]+9*f[11]), + 'c1': str(f[11]), + } + } +} + +# Converts the Fq number to 4 64-bit limbs in Montgomery form +def to_montgomery_limbs(number: Fq): + number = Fq(number) * Fq(2^(256)) + number = Integer(number) + + # Building limbs + limb_1 = number % 2**64 + limb_2 = (number // 2**64) % 2**64 + limb_3 = (number // 2**128) % 2**64 + limb_4 = (number // 2**192) % 2**64 + + return [limb_1, limb_2, limb_3, limb_4] + +def print_montgomery_limbs(number: Fq): + limbs = to_montgomery_limbs(number) + print([Integer(limb).hex() for limb in limbs]) + +# Finding inverse of an Fq12 element 0+1*w: +w = 0 + 1*W +w_inv = w.inverse() +assert w*w_inv == 1, 'inverse of w was found incorrectly' + +w_inv_dict = fq12_to_dictionary(w_inv) +print(f'w^(-1) = {w_inv_dict}') + +# Printing individual coefficients as montgomery limbs +# to further use as constants in the code +c2_c3_c0 = w_inv_dict['c1']['c2']['c0'] +c2_c3_c1 = w_inv_dict['c1']['c2']['c1'] +print_montgomery_limbs(c2_c3_c0) +print_montgomery_limbs(c2_c3_c1) + +# Finding the inverse of two: +two = Fq12(2) +two_inv = two.inverse() +assert two*two_inv == 1, 'inverse of 2 was found incorrectly' + +two_inv_dict = fq12_to_dictionary(two_inv) +print(f'2^(-1) = {two_inv_dict}') + +c0 = two_inv_dict['c0']['c0']['c0'] +print_montgomery_limbs(c0) \ No newline at end of file diff --git a/crates/zkevm_circuits/src/bn254/sage/torus_params.sage.py b/crates/zkevm_circuits/src/bn254/sage/torus_params.sage.py new file mode 100644 index 0000000..27907d7 --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/sage/torus_params.sage.py @@ -0,0 +1,127 @@ + + +# This file was *autogenerated* from the file torus_params.sage +from sage.all_cmdline import * # import sage library + +_sage_const_21888242871839275222246405745257275088696311157297823662689037894645226208583 = Integer(21888242871839275222246405745257275088696311157297823662689037894645226208583); _sage_const_2 = Integer(2); _sage_const_1 = Integer(1); _sage_const_3 = Integer(3); _sage_const_9 = Integer(9); _sage_const_12 = Integer(12); _sage_const_0 = Integer(0); _sage_const_6 = Integer(6); _sage_const_8 = Integer(8); _sage_const_4 = Integer(4); _sage_const_10 = Integer(10); _sage_const_7 = Integer(7); _sage_const_5 = Integer(5); _sage_const_11 = Integer(11); _sage_const_256 = Integer(256); _sage_const_64 = Integer(64); _sage_const_128 = Integer(128); _sage_const_192 = Integer(192) +import json + +# Defining the base prime field +q = Integer(_sage_const_21888242871839275222246405745257275088696311157297823662689037894645226208583 ) # EC group order +Fq = GF(q) + +# Defining the extensions +# Fq2... +K2 = PolynomialRing(Fq, names=('x',)); (x,) = K2._first_ngens(1) +Fq2 = Fq.extension(x**_sage_const_2 +_sage_const_1 , names=('u',)); (u,) = Fq2._first_ngens(1) + +# Fq6... +K6 = PolynomialRing(Fq2, names=('y',)); (y,) = K6._first_ngens(1) +Fq6 = Fq2.extension(y**_sage_const_3 - (u+_sage_const_9 ), names=('v',)); (v,) = Fq6._first_ngens(1) + +# Defining the Fq12 is a bit more tricky... +p = Fq.characteristic() +Fq12 = GF(p**_sage_const_12 , names=('G',)); (G,) = Fq12._first_ngens(1) + +i = sqrt(Fq12(-_sage_const_1 )) +R12 = PolynomialRing(Fq12, names=('Y',)); (Y,) = R12._first_ngens(1) + +j = (Y**_sage_const_3 - (i+_sage_const_9 )).roots(multiplicities=False)[_sage_const_0 ] +w = sqrt(j) + +P = w.minpoly() +Fq12 = GF(p**_sage_const_12 , modulus=P, names=('W',)); (W,) = Fq12._first_ngens(1) + +# Preparing helper debugging lambda functions +fq2_to_dictionary = lambda f : { + 'c0': str(f[_sage_const_0 ]), + 'c1': str(f[_sage_const_1 ]) +} +fq6_to_dictionary = lambda f : { + 'c0': { + 'c0': str(f[_sage_const_0 ][_sage_const_0 ]), + 'c1': str(f[_sage_const_0 ][_sage_const_1 ]) + }, + 'c1': { + 'c0': str(f[_sage_const_1 ][_sage_const_0 ]), + 'c1': str(f[_sage_const_1 ][_sage_const_1 ]) + }, + 'c2': { + 'c0': str(f[_sage_const_2 ][_sage_const_0 ]), + 'c1': str(f[_sage_const_2 ][_sage_const_1 ]) + } +} +fq12_to_dictionary = lambda f: { + 'c0': { # Fq6 + 'c0': { #Fq2 + 'c0': str(f[_sage_const_0 ]+_sage_const_9 *f[_sage_const_6 ]), + 'c1': str(f[_sage_const_6 ]), + }, + 'c1': { #Fq2 + 'c0': str(f[_sage_const_2 ]+_sage_const_9 *f[_sage_const_8 ]), + 'c1': str(f[_sage_const_8 ]), + }, + 'c2': { #Fq2 + 'c0': str(f[_sage_const_4 ]+_sage_const_9 *f[_sage_const_10 ]), + 'c1': str(f[_sage_const_10 ]), + } + }, + 'c1': { # Fq6 + 'c0': { #Fq2 + 'c0': str(f[_sage_const_1 ]+_sage_const_9 *f[_sage_const_7 ]), + 'c1': str(f[_sage_const_7 ]), + }, + 'c1': { #Fq2 + 'c0': str(f[_sage_const_3 ]+_sage_const_9 *f[_sage_const_9 ]), + 'c1': str(f[_sage_const_9 ]), + }, + 'c2': { #Fq2 + 'c0': str(f[_sage_const_5 ]+_sage_const_9 *f[_sage_const_11 ]), + 'c1': str(f[_sage_const_11 ]), + } + } +} + +# Converts the Fq number to 4 64-bit limbs in Montgomery form +def to_montgomery_limbs(number: Fq): + number = Fq(number) * Fq(_sage_const_2 **(_sage_const_256 )) + number = Integer(number) + + # Building limbs + limb_1 = number % _sage_const_2 **_sage_const_64 + limb_2 = (number // _sage_const_2 **_sage_const_64 ) % _sage_const_2 **_sage_const_64 + limb_3 = (number // _sage_const_2 **_sage_const_128 ) % _sage_const_2 **_sage_const_64 + limb_4 = (number // _sage_const_2 **_sage_const_192 ) % _sage_const_2 **_sage_const_64 + + return [limb_1, limb_2, limb_3, limb_4] + +def print_montgomery_limbs(number: Fq): + limbs = to_montgomery_limbs(number) + print([Integer(limb).hex() for limb in limbs]) + +# Finding inverse of an Fq12 element 0+1*w: +w = _sage_const_0 + _sage_const_1 *W +w_inv = w.inverse() +assert w*w_inv == _sage_const_1 , 'inverse of w was found incorrectly' + +w_inv_dict = fq12_to_dictionary(w_inv) +print(f'w^(-1) = {w_inv_dict}') + +# Printing individual coefficients as montgomery limbs +# to further use as constants in the code +c2_c3_c0 = w_inv_dict['c1']['c2']['c0'] +c2_c3_c1 = w_inv_dict['c1']['c2']['c1'] +print_montgomery_limbs(c2_c3_c0) +print_montgomery_limbs(c2_c3_c1) + +# Finding the inverse of two: +two = Fq12(_sage_const_2 ) +two_inv = two.inverse() +assert two*two_inv == _sage_const_1 , 'inverse of 2 was found incorrectly' + +two_inv_dict = fq12_to_dictionary(two_inv) +print(f'2^(-1) = {two_inv_dict}') + +c0 = two_inv_dict['c0']['c0']['c0'] +print_montgomery_limbs(c0) + diff --git a/crates/zkevm_circuits/src/bn254/tests/.gitignore b/crates/zkevm_circuits/src/bn254/tests/.gitignore new file mode 100644 index 0000000..111d2ce --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/tests/.gitignore @@ -0,0 +1 @@ +sage/*.py \ No newline at end of file diff --git a/crates/zkevm_circuits/src/bn254/tests/README.md b/crates/zkevm_circuits/src/bn254/tests/README.md new file mode 100644 index 0000000..3f38bdd --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/tests/README.md @@ -0,0 +1,17 @@ +# :test_tube: Elliptic Curve Tests + +This folder contains tests for EC operations: `ecmul`, `ecadd`, and `ecpairing`, +and related entities: + +- Tower extension fields: `fp2`, `fp6`, `fp12`. +- Pairing-friendly curves: `bn254` and `G2` twisted curve. + +## :file_folder: Structure + +The package is structured as follows: + +| Path | Description | +| --- | --- | +| This folder | Tests themselves. | +| [`sage`](./sage) | Sage code for generating tests. | +| [`json`](./json) | JSON files with test values (inputs and expected values). | diff --git a/crates/zkevm_circuits/src/bn254/tests/algebraic_torus.rs b/crates/zkevm_circuits/src/bn254/tests/algebraic_torus.rs new file mode 100644 index 0000000..ea613dd --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/tests/algebraic_torus.rs @@ -0,0 +1,208 @@ +pub mod test { + use crate::bn254::ec_pairing::final_exp::U_WNAF; + use crate::bn254::tests::json::TORUS_TEST_CASES; + use crate::bn254::tests::utils::assert::assert_equal_fq6; + use crate::bn254::tests::utils::cs::create_test_cs; + use crate::bn254::tests::utils::debug_success; + use crate::bn254::BN256TorusWrapper; + use boojum::field::goldilocks::GoldilocksField; + use boojum::gadgets::tower_extension::algebraic_torus::TorusWrapper; + + type F = GoldilocksField; + type P = GoldilocksField; + + /// Test the compression and decompression functions in Algebraic Torus. + /// + /// The tests are run against the test cases defined in [`TORUS_TEST_CASES`], which + /// are generated using the `sage` script in `gen/torus.sage`. + #[test] + fn test_torus_compression() { + // Preparing the constraint system and parameters + let mut owned_cs = create_test_cs(1 << 21); + let cs = &mut owned_cs; + + // Running tests from file: validating correctness of encoded values + const DEBUG_FREQUENCY: usize = 2; + for (i, test) in TORUS_TEST_CASES.tests.iter().enumerate() { + // Reading inputs + let mut scalar_1 = test.scalar_1.to_fq12(cs); + let mut scalar_2 = test.scalar_2.to_fq12(cs); + + // Actual (compressing inputs): + let scalar_1_torus: BN256TorusWrapper = + TorusWrapper::compress::<_, true>(cs, &mut scalar_1); + let scalar_2_torus: BN256TorusWrapper = + TorusWrapper::compress::<_, true>(cs, &mut scalar_2); + + // Expected: + let expected_encoding_1 = test.expected.encoding_1.to_fq6(cs); + let expected_encoding_2 = test.expected.encoding_2.to_fq6(cs); + + // Asserting: + assert_equal_fq6(cs, &scalar_1_torus.encoding, &expected_encoding_1); + assert_equal_fq6(cs, &scalar_2_torus.encoding, &expected_encoding_2); + + debug_success("torus compression", i, DEBUG_FREQUENCY); + } + } + + /// Test basic arithmetic on Algebraic Torus. + /// + /// - multiplication (`.mul`) + /// - inverse (`.inverse`) + /// - conjugate (`.conjugate`) + /// - squaring (`.square`) + /// + /// The tests are run against the test cases defined in [`TORUS_TEST_CASES`], which + /// are generated using the `sage` script in `gen/torus.sage`. + #[test] + fn test_torus_basic_arithmetic() { + // Preparing the constraint system and parameters + let mut owned_cs = create_test_cs(1 << 21); + let cs = &mut owned_cs; + + // Running tests from file: validating sum, diff, prod, and quot + const DEBUG_FREQUENCY: usize = 2; + for (i, test) in TORUS_TEST_CASES.tests.iter().enumerate() { + // Reading inputs + let mut scalar_1 = test.scalar_1.to_fq12(cs); + let mut scalar_2 = test.scalar_2.to_fq12(cs); + + // Compressing inputs + let mut scalar_1_torus: BN256TorusWrapper = + TorusWrapper::compress::<_, true>(cs, &mut scalar_1); + let mut scalar_2_torus: BN256TorusWrapper = + TorusWrapper::compress::<_, true>(cs, &mut scalar_2); + // Expected: + let expected_product = test.expected.product_encoding.to_fq6(cs); + let expected_inverse_1 = test.expected.inverse_1_encoding.to_fq6(cs); + let expected_conjugate_1 = test.expected.conjugate_1_encoding.to_fq6(cs); + let expected_square_1 = test.expected.square_1_encoding.to_fq6(cs); + + // Actual: + let product = scalar_1_torus.mul(cs, &mut scalar_2_torus); + let inverse_1 = scalar_1_torus.inverse(cs); + let conjugate_1 = scalar_1_torus.conjugate(cs); + let square_1 = scalar_1_torus.square(cs); + + // Asserting: + assert_equal_fq6(cs, &product.encoding, &expected_product); + assert_equal_fq6(cs, &inverse_1.encoding, &expected_inverse_1); + assert_equal_fq6(cs, &conjugate_1.encoding, &expected_conjugate_1); + assert_equal_fq6(cs, &square_1.encoding, &expected_square_1); + + debug_success("torus basic arithmetic", i, DEBUG_FREQUENCY); + } + } + + /// Tests the frobenius map `x^p^k` on Algebraic Torus for `k=1,2,3`. + /// + /// The tests are run against the test cases defined in [`TORUS_TEST_CASES`], which + /// are generated using the `sage` script in `gen/torus.sage`. + #[test] + fn test_torus_frobenius_map() { + // Preparing the constraint system and parameters + let mut owned_cs = create_test_cs(1 << 21); + let cs = &mut owned_cs; + + // Running tests from file: validating sum, diff, prod, and quot + const DEBUG_FREQUENCY: usize = 2; + for (i, test) in TORUS_TEST_CASES.tests.iter().enumerate() { + // Reading input (only the first scalar) + let mut scalar_1 = test.scalar_1.to_fq12(cs); + + // Compressing input (only the first scalar) + let mut scalar_1_torus: BN256TorusWrapper = + TorusWrapper::compress::<_, true>(cs, &mut scalar_1); + + // Expected: + let expected_frobenius_1 = test.expected.frobenius_1_encoding.to_fq6(cs); + let expected_frobenius_2 = test.expected.frobenius_2_encoding.to_fq6(cs); + let expected_frobenius_3 = test.expected.frobenius_3_encoding.to_fq6(cs); + + // Actual: + let frobenius_1 = scalar_1_torus.frobenius_map(cs, 1); + let frobenius_2 = scalar_1_torus.frobenius_map(cs, 2); + let frobenius_3 = scalar_1_torus.frobenius_map(cs, 3); + + // Asserting: + assert_equal_fq6(cs, &frobenius_1.encoding, &expected_frobenius_1); + assert_equal_fq6(cs, &frobenius_2.encoding, &expected_frobenius_2); + assert_equal_fq6(cs, &frobenius_3.encoding, &expected_frobenius_3); + + debug_success("torus frobenius map", i, DEBUG_FREQUENCY); + } + } + + /// Tests the u32 power operation over Algebraic Torus. + /// + /// The tests are run against the test cases defined in [`TORUS_TEST_CASES`], which + /// are generated using the `sage` script in `gen/torus.sage`. + #[test] + fn test_torus_power_u32() { + // Preparing the constraint system and parameters + let mut owned_cs = create_test_cs(1 << 21); + let cs = &mut owned_cs; + + // Running tests from file: validating sum, diff, prod, and quot + const DEBUG_FREQUENCY: usize = 2; + for (i, test) in TORUS_TEST_CASES.tests.iter().enumerate() { + // Reading input (only the first scalar) + let mut scalar_1 = test.scalar_1.to_fq12(cs); + + // Compressing input (only the first scalar) + let mut scalar_1_torus: BN256TorusWrapper = + TorusWrapper::compress::<_, true>(cs, &mut scalar_1); + + // Expected: + let expected_power_u = test.expected.power_u_encoding.to_fq6(cs); + let expected_power_13 = test.expected.power_13_encoding.to_fq6(cs); + + let power_u = scalar_1_torus.pow_u32(cs, &[4965661367192848881]); + let power_13 = scalar_1_torus.pow_u32(cs, &[13]); + + // Asserting: + assert_equal_fq6(cs, &power_u.encoding, &expected_power_u); + assert_equal_fq6(cs, &power_13.encoding, &expected_power_13); + + debug_success("torus raising to power", i, DEBUG_FREQUENCY); + } + } + + /// Tests the power operation using naf decomposition over Algebraic Torus. + /// + /// The tests are run against the test cases defined in [`TORUS_TEST_CASES`], which + /// are generated using the `sage` script in `gen/torus.sage`. + #[test] + fn test_torus_naf_power() { + // Preparing the constraint system and parameters + let mut owned_cs = create_test_cs(1 << 21); + let cs = &mut owned_cs; + + // Running tests from file: validating sum, diff, prod, and quot + const DEBUG_FREQUENCY: usize = 2; + for (i, test) in TORUS_TEST_CASES.tests.iter().enumerate() { + // Reading input (only the first scalar) + let u = U_WNAF; + let mut scalar_1 = test.scalar_1.to_fq12(cs); + + // Compressing input (only the first scalar) + let mut scalar_1_torus: BN256TorusWrapper = + TorusWrapper::compress::<_, true>(cs, &mut scalar_1); + + // Expected: + let expected_power_u = test.expected.power_u_encoding.to_fq6(cs); + let expected_power_13 = test.expected.power_13_encoding.to_fq6(cs); + + // Actual: + let power_u = scalar_1_torus.pow_naf_decomposition(cs, u); + let power_13 = scalar_1_torus.pow_naf_decomposition(cs, &[1, 0, -1, 0, 1]); + + // Asserting: + assert_equal_fq6(cs, &power_u.encoding, &expected_power_u); + assert_equal_fq6(cs, &power_13.encoding, &expected_power_13); + + debug_success("torus raising to power", i, DEBUG_FREQUENCY); + } + } +} diff --git a/crates/zkevm_circuits/src/bn254/tests/comparison.rs b/crates/zkevm_circuits/src/bn254/tests/comparison.rs new file mode 100644 index 0000000..b57cffc --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/tests/comparison.rs @@ -0,0 +1,127 @@ +pub mod test { + use crate::bn254::tests::json::TORUS_TEST_CASES; + use crate::bn254::tests::utils::cs::create_test_cs; + use boojum::field::goldilocks::GoldilocksField; + use boojum::gadgets::tower_extension::algebraic_torus::TorusWrapper; + + type F = GoldilocksField; + type P = GoldilocksField; + + /// Debugs the number of constraints for compressing the Torus element. + #[ignore = "For debugging (comparison) purposes only"] + #[test] + fn debug_torus_compression_performance() { + // Preparing the constraint system and parameters + let mut owned_cs = create_test_cs(1 << 21); + let cs = &mut owned_cs; + + let test_case = &TORUS_TEST_CASES.tests[0]; + let mut scalar_1 = test_case.scalar_1.to_fq12(cs); + let _ = TorusWrapper::compress::<_, true>(cs, &mut scalar_1); + + let cs = owned_cs.into_assembly::(); + cs.print_gate_stats(); + } + + /// Debugs the number of constraints for compressing and then squaring the Torus element. + #[ignore = "For debugging (comparison) purposes only"] + #[test] + fn debug_torus_compress_and_square_performance() { + // Preparing the constraint system and parameters + let mut owned_cs = create_test_cs(1 << 21); + let cs = &mut owned_cs; + + let test_case = &TORUS_TEST_CASES.tests[0]; + let mut scalar_1 = test_case.scalar_1.to_fq12(cs); + let mut scalar_1_torus = TorusWrapper::compress::<_, true>(cs, &mut scalar_1); + + scalar_1_torus.square(cs); + let cs = owned_cs.into_assembly::(); + cs.print_gate_stats(); + } + + /// Debugs the number of constraints for squaring the Fq12 element. + #[ignore = "For debugging (comparison) purposes only"] + #[test] + fn debug_fq12_square_performance() { + // Preparing the constraint system and parameters + let mut owned_cs = create_test_cs(1 << 21); + let cs = &mut owned_cs; + + let test_case = &TORUS_TEST_CASES.tests[0]; + let mut scalar_1 = test_case.scalar_1.to_fq12(cs); + let _ = scalar_1.square(cs); + let cs = owned_cs.into_assembly::(); + cs.print_gate_stats(); + } + + /// Debugs the number of constraints for compressing and then multiplying two Torus elements. + #[ignore = "For debugging (comparison) purposes only"] + #[test] + fn debug_torus_compress_and_mul_performance() { + // Preparing the constraint system and parameters + let mut owned_cs = create_test_cs(1 << 19); + let cs = &mut owned_cs; + + let test_case = &TORUS_TEST_CASES.tests[0]; + let mut scalar_1 = test_case.scalar_1.to_fq12(cs); + let mut scalar_1_torus = TorusWrapper::compress::<_, true>(cs, &mut scalar_1); + + let mut scalar_2 = test_case.scalar_2.to_fq12(cs); + let mut scalar_2_torus = TorusWrapper::compress::<_, true>(cs, &mut scalar_2); + + let _ = scalar_1_torus.mul(cs, &mut scalar_2_torus); + let cs = owned_cs.into_assembly::(); + cs.print_gate_stats(); + } + + /// Debugs the number of constraints for squaring the Fq12 element. + #[ignore = "For debugging (comparison) purposes only"] + #[test] + fn debug_fq12_mul_performance() { + // Preparing the constraint system and parameters + let mut owned_cs = create_test_cs(1 << 19); + let cs = &mut owned_cs; + + let test_case = &TORUS_TEST_CASES.tests[0]; + let mut scalar_1 = test_case.scalar_1.to_fq12(cs); + let mut scalar_2 = test_case.scalar_2.to_fq12(cs); + + let _ = scalar_1.mul(cs, &mut scalar_2); + let cs = owned_cs.into_assembly::(); + cs.print_gate_stats(); + } + + /// Debugs the number of constraints for compressing and then multiplying two Torus elements. + #[ignore = "For debugging (comparison) purposes only"] + #[test] + fn debug_torus_compress_and_pow_performance() { + // Preparing the constraint system and parameters + let mut owned_cs = create_test_cs(1 << 21); + let cs = &mut owned_cs; + + let test_case = &TORUS_TEST_CASES.tests[0]; + let mut scalar_1 = test_case.scalar_1.to_fq12(cs); + let mut scalar_1_torus = TorusWrapper::compress::<_, true>(cs, &mut scalar_1); + + let _ = scalar_1_torus.pow_u32(cs, &[4965661367192848881]); + let cs = owned_cs.into_assembly::(); + cs.print_gate_stats(); + } + + /// Debugs the number of constraints for squaring the Fq12 element. + #[ignore = "For debugging (comparison) purposes only"] + #[test] + fn debug_fq12_pow_performance() { + // Preparing the constraint system and parameters + let mut owned_cs = create_test_cs(1 << 21); + let cs = &mut owned_cs; + + let test_case = &TORUS_TEST_CASES.tests[0]; + let mut scalar_1 = test_case.scalar_1.to_fq12(cs); + let _ = scalar_1.pow_u32(cs, &[4965661367192848881]); + + let cs = owned_cs.into_assembly::(); + cs.print_gate_stats(); + } +} diff --git a/crates/zkevm_circuits/src/bn254/tests/ec_add.rs b/crates/zkevm_circuits/src/bn254/tests/ec_add.rs new file mode 100644 index 0000000..5085e06 --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/tests/ec_add.rs @@ -0,0 +1,280 @@ +pub mod test { + use crate::bn254::ec_add::implementation::projective_add; + use crate::bn254::fixed_base_mul_table::{create_fixed_base_mul_table, FixedBaseMulTable}; + use crate::bn254::tests::json::EC_ADD_TEST_CASES; + use crate::bn254::tests::utils::assert::assert_equal_g1_points; + use crate::bn254::tests::utils::debug_success; + use crate::bn254::{ + bn254_base_field_params, BN256BaseNNField, BN256Fq, BN256SWProjectivePoint, + }; + use boojum::config::DevCSConfig; + use boojum::cs::cs_builder::{new_builder, CsBuilder, CsBuilderImpl}; + use boojum::cs::cs_builder_reference::CsReferenceImplementationBuilder; + use boojum::cs::gates::{ + BooleanConstraintGate, ConstantsAllocatorGate, DotProductGate, + FmaGateInBaseFieldWithoutConstant, ReductionGate, SelectionGate, UIntXAddGate, + ZeroCheckGate, + }; + use boojum::cs::implementations::reference_cs::CSReferenceImplementation; + use boojum::cs::traits::cs::ConstraintSystem; + use boojum::cs::traits::gate::GatePlacementStrategy; + use boojum::cs::{CSGeometry, GateConfigurationHolder, LookupParameters, StaticToolboxHolder}; + use boojum::field::goldilocks::GoldilocksField; + use boojum::field::SmallField; + use boojum::gadgets::tables::{ + create_and8_table, create_byte_split_table, create_xor8_table, And8Table, ByteSplitTable, + Xor8Table, + }; + use boojum::pairing::ff::PrimeField; + use std::sync::Arc; + + type F = GoldilocksField; + type P = GoldilocksField; + + /// Creates a test constraint system for testing purposes + pub fn create_ecadd_cs( + max_trace_len: usize, + ) -> CSReferenceImplementation< + F, + P, + DevCSConfig, + impl GateConfigurationHolder, + impl StaticToolboxHolder, + > { + let geometry = CSGeometry { + num_columns_under_copy_permutation: 200, + num_witness_columns: 0, + num_constant_columns: 8, + max_allowed_constraint_degree: 4, + }; + let max_variables = 1 << 26; + + fn configure< + F: SmallField, + T: CsBuilderImpl, + GC: GateConfigurationHolder, + TB: StaticToolboxHolder, + >( + builder: CsBuilder, + ) -> CsBuilder, impl StaticToolboxHolder> { + let builder = builder.allow_lookup( + LookupParameters::UseSpecializedColumnsWithTableIdAsConstant { + width: 3, + num_repetitions: 8, + share_table_id: true, + }, + ); + let builder = ConstantsAllocatorGate::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = FmaGateInBaseFieldWithoutConstant::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = ReductionGate::::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + // let owned_cs = ReductionGate::::configure_for_cs(owned_cs, GatePlacementStrategy::UseSpecializedColumns { num_repetitions: 8, share_constants: true }); + let builder = BooleanConstraintGate::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = UIntXAddGate::<32>::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = UIntXAddGate::<16>::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = UIntXAddGate::<8>::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = SelectionGate::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = DotProductGate::<4>::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = ZeroCheckGate::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + false, + ); + + builder + } + + let builder_impl = + CsReferenceImplementationBuilder::::new(geometry, max_trace_len); + let builder = new_builder::<_, F>(builder_impl); + + let builder = configure(builder); + let mut owned_cs = builder.build(max_variables); + + // add tables + let table = create_xor8_table(); + owned_cs.add_lookup_table::(table); + + let table = create_and8_table(); + owned_cs.add_lookup_table::(table); + + seq_macro::seq!(C in 0..32 { + let table = create_fixed_base_mul_table::(); + owned_cs.add_lookup_table::, 3>(table); + let table = create_fixed_base_mul_table::(); + owned_cs.add_lookup_table::, 3>(table); + let table = create_fixed_base_mul_table::(); + owned_cs.add_lookup_table::, 3>(table); + let table = create_fixed_base_mul_table::(); + owned_cs.add_lookup_table::, 3>(table); + let table = create_fixed_base_mul_table::(); + owned_cs.add_lookup_table::, 3>(table); + let table = create_fixed_base_mul_table::(); + owned_cs.add_lookup_table::, 3>(table); + let table = create_fixed_base_mul_table::(); + owned_cs.add_lookup_table::, 3>(table); + let table = create_fixed_base_mul_table::(); + owned_cs.add_lookup_table::, 3>(table); + }); + + let table = create_byte_split_table::(); + owned_cs.add_lookup_table::, 3>(table); + let table = create_byte_split_table::(); + owned_cs.add_lookup_table::, 3>(table); + let table = create_byte_split_table::(); + owned_cs.add_lookup_table::, 3>(table); + let table = create_byte_split_table::(); + owned_cs.add_lookup_table::, 3>(table); + + owned_cs + } + + #[test] + fn test_addition() { + // Preparing the constraint system and parameters + let mut owned_cs = create_ecadd_cs(1 << 21); + let cs = &mut owned_cs; + + // Runnings tests from file + const DEBUG_FREQUENCY: usize = 10; + for (i, test) in EC_ADD_TEST_CASES.tests.iter().enumerate() { + // Expected: + let mut expected_sum = test.expected.to_projective_point(cs); + + // Actual: + let mut point_1 = test.point_1.to_projective_point(cs); + let (x, y) = test.point_2.to_coordinates(cs); + let mut sum = projective_add(cs, &mut point_1, (x, y)); + + assert_equal_g1_points(cs, &mut sum, &mut expected_sum); + + debug_success("ec_add", i, DEBUG_FREQUENCY); + } + } + + #[test] + fn test_addition_zero_point1() { + // Preparing the constraint system and parameters + let mut owned_cs = create_ecadd_cs(1 << 21); + let cs = &mut owned_cs; + let params = Arc::new(bn254_base_field_params()); + + let mut point_1 = BN256SWProjectivePoint::zero(cs, ¶ms); + + let x = BN256Fq::from_str( + "15324690470956288071822265009489746856525231072327229544771730391650334979669", + ) + .unwrap(); + let y = BN256Fq::from_str( + "5354502408214113957125233684303474179339683916278920565794911529411960533676", + ) + .unwrap(); + + let x = BN256BaseNNField::allocate_checked(cs, x, ¶ms); + let y = BN256BaseNNField::allocate_checked(cs, y, ¶ms); + + let mut expected_sum = BN256SWProjectivePoint::from_xy_unchecked(cs, x.clone(), y.clone()); + + let mut sum = projective_add(cs, &mut point_1, (x, y)); + + assert_equal_g1_points(cs, &mut sum, &mut expected_sum); + } + + #[test] + fn test_addition_zero_point2() { + // Preparing the constraint system and parameters + let mut owned_cs = create_ecadd_cs(1 << 21); + let cs = &mut owned_cs; + let params = Arc::new(bn254_base_field_params()); + + let x = BN256Fq::from_str( + "15324690470956288071822265009489746856525231072327229544771730391650334979669", + ) + .unwrap(); + let y = BN256Fq::from_str( + "5354502408214113957125233684303474179339683916278920565794911529411960533676", + ) + .unwrap(); + + let x = BN256BaseNNField::allocate_checked(cs, x, ¶ms); + let y = BN256BaseNNField::allocate_checked(cs, y, ¶ms); + + let mut point_1 = BN256SWProjectivePoint::from_xy_unchecked(cs, x, y); + let mut expected_sum = point_1.clone(); + + let x = BN256Fq::from_str("0").unwrap(); + let y = BN256Fq::from_str("0").unwrap(); + + let x = BN256BaseNNField::allocate_checked(cs, x, ¶ms); + let y = BN256BaseNNField::allocate_checked(cs, y, ¶ms); + + let mut sum = projective_add(cs, &mut point_1, (x, y)); + + assert_equal_g1_points(cs, &mut sum, &mut expected_sum); + } + + #[test] + fn test_addition_zero_points_both() { + // Preparing the constraint system and parameters + let mut owned_cs = create_ecadd_cs(1 << 21); + let cs = &mut owned_cs; + let params = Arc::new(bn254_base_field_params()); + + let mut point_1 = BN256SWProjectivePoint::zero(cs, ¶ms); + let mut expected_sum = point_1.clone(); + + let x = BN256Fq::from_str("0").unwrap(); + let y = BN256Fq::from_str("0").unwrap(); + + let x = BN256BaseNNField::allocate_checked(cs, x, ¶ms); + let y = BN256BaseNNField::allocate_checked(cs, y, ¶ms); + + let mut sum = projective_add(cs, &mut point_1, (x, y)); + + assert_equal_g1_points(cs, &mut sum, &mut expected_sum); + } + + #[test] + #[ignore = "used for debugging performance"] + fn debug_ecadd_performance() { + // Preparing the constraint system and parameters + let mut owned_cs = create_ecadd_cs(1 << 21); + let cs = &mut owned_cs; + + // Runnings test + let test_case = &EC_ADD_TEST_CASES.tests[0]; + + let mut point_1 = test_case.point_1.to_projective_point(cs); + let (x, y) = test_case.point_2.to_coordinates(cs); + let _ = projective_add(cs, &mut point_1, (x, y)); + + let cs = owned_cs.into_assembly::(); + cs.print_gate_stats(); + } +} diff --git a/crates/zkevm_circuits/src/bn254/tests/ec_mul.rs b/crates/zkevm_circuits/src/bn254/tests/ec_mul.rs new file mode 100644 index 0000000..36c4616 --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/tests/ec_mul.rs @@ -0,0 +1,258 @@ +pub mod test { + use boojum::config::DevCSConfig; + use boojum::cs::cs_builder::{new_builder, CsBuilder, CsBuilderImpl}; + use boojum::cs::cs_builder_reference::CsReferenceImplementationBuilder; + use boojum::cs::gates::{ + BooleanConstraintGate, ConstantsAllocatorGate, DotProductGate, + FmaGateInBaseFieldWithoutConstant, ReductionGate, SelectionGate, U8x4FMAGate, UIntXAddGate, + ZeroCheckGate, + }; + use boojum::cs::implementations::reference_cs::CSReferenceImplementation; + use boojum::cs::traits::cs::ConstraintSystem; + use boojum::cs::traits::gate::GatePlacementStrategy; + use boojum::cs::{CSGeometry, GateConfigurationHolder, LookupParameters, StaticToolboxHolder}; + use boojum::field::goldilocks::GoldilocksField; + use boojum::field::SmallField; + use boojum::gadgets::tables::{ + create_and8_table, create_byte_split_table, create_xor8_table, And8Table, ByteSplitTable, + Xor8Table, + }; + + use crate::bn254::ec_mul::implementation::{ + width_4_windowed_multiplication, ScalarDecomposition, + }; + use crate::bn254::fixed_base_mul_table::{create_fixed_base_mul_table, FixedBaseMulTable}; + use crate::bn254::tests::json::{DECOMPOSITION_TEST_CASES, EC_MUL_TEST_CASES}; + use crate::bn254::tests::utils::assert::assert_equal_g1_points; + use crate::bn254::tests::utils::debug_success; + use crate::bn254::{ + bn254_base_field_params, bn254_scalar_field_params, BN256Fr, BN256ScalarNNField, + }; + use boojum::gadgets::traits::witnessable::WitnessHookable; + use boojum::pairing::ff::PrimeField; + use std::sync::Arc; + + type F = GoldilocksField; + type P = GoldilocksField; + + /// Creates a test constraint system for testing purposes + pub fn create_ecmul_cs( + max_trace_len: usize, + ) -> CSReferenceImplementation< + F, + P, + DevCSConfig, + impl GateConfigurationHolder, + impl StaticToolboxHolder, + > { + let geometry = CSGeometry { + num_columns_under_copy_permutation: 200, + num_witness_columns: 0, + num_constant_columns: 8, + max_allowed_constraint_degree: 4, + }; + let max_variables = 1 << 26; + + fn configure< + F: SmallField, + T: CsBuilderImpl, + GC: GateConfigurationHolder, + TB: StaticToolboxHolder, + >( + builder: CsBuilder, + ) -> CsBuilder, impl StaticToolboxHolder> { + let builder = builder.allow_lookup( + LookupParameters::UseSpecializedColumnsWithTableIdAsConstant { + width: 3, + num_repetitions: 8, + share_table_id: true, + }, + ); + let builder = U8x4FMAGate::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = ConstantsAllocatorGate::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = FmaGateInBaseFieldWithoutConstant::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = ReductionGate::::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + // let owned_cs = ReductionGate::::configure_for_cs(owned_cs, GatePlacementStrategy::UseSpecializedColumns { num_repetitions: 8, share_constants: true }); + let builder = BooleanConstraintGate::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = UIntXAddGate::<32>::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = UIntXAddGate::<16>::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = UIntXAddGate::<8>::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = SelectionGate::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = ZeroCheckGate::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + false, + ); + let builder = DotProductGate::<4>::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + + builder + } + + let builder_impl = + CsReferenceImplementationBuilder::::new(geometry, max_trace_len); + let builder = new_builder::<_, F>(builder_impl); + + let builder = configure(builder); + let mut owned_cs = builder.build(max_variables); + + // add tables + let table = create_xor8_table(); + owned_cs.add_lookup_table::(table); + + let table = create_and8_table(); + owned_cs.add_lookup_table::(table); + + seq_macro::seq!(C in 0..32 { + let table = create_fixed_base_mul_table::(); + owned_cs.add_lookup_table::, 3>(table); + let table = create_fixed_base_mul_table::(); + owned_cs.add_lookup_table::, 3>(table); + let table = create_fixed_base_mul_table::(); + owned_cs.add_lookup_table::, 3>(table); + let table = create_fixed_base_mul_table::(); + owned_cs.add_lookup_table::, 3>(table); + let table = create_fixed_base_mul_table::(); + owned_cs.add_lookup_table::, 3>(table); + let table = create_fixed_base_mul_table::(); + owned_cs.add_lookup_table::, 3>(table); + let table = create_fixed_base_mul_table::(); + owned_cs.add_lookup_table::, 3>(table); + let table = create_fixed_base_mul_table::(); + owned_cs.add_lookup_table::, 3>(table); + }); + + let table = create_byte_split_table::(); + owned_cs.add_lookup_table::, 3>(table); + let table = create_byte_split_table::(); + owned_cs.add_lookup_table::, 3>(table); + let table = create_byte_split_table::(); + owned_cs.add_lookup_table::, 3>(table); + let table = create_byte_split_table::(); + owned_cs.add_lookup_table::, 3>(table); + + owned_cs + } + + #[test] + fn test_scalar_decomposition() { + // Preparing the constraint system and parameters + let mut owned_cs = create_ecmul_cs(1 << 21); + let cs = &mut owned_cs; + let scalar_params = Arc::new(bn254_scalar_field_params()); + + // Running tests from file + const DEBUG_FREQUENCY: usize = 10; + for (i, test) in DECOMPOSITION_TEST_CASES.tests.iter().enumerate() { + // Input: + let k = BN256Fr::from_str(&test.k).unwrap(); + let mut k = BN256ScalarNNField::allocate_checked(cs, k, &scalar_params); + + // Expected: + let expected_k1 = BN256Fr::from_str(&test.k1).unwrap(); + let expected_k2 = BN256Fr::from_str(&test.k2).unwrap(); + + // Actual: + let decomposition = ScalarDecomposition::from(cs, &mut k, &scalar_params); + let k1 = decomposition.k1.witness_hook(cs)().unwrap().get(); + let k1_was_negated = decomposition.k1_was_negated.witness_hook(cs)().unwrap(); + let k2 = decomposition.k2.witness_hook(cs)().unwrap().get(); + let k2_was_negated = decomposition.k2_was_negated.witness_hook(cs)().unwrap(); + + // Asserting: + assert_eq!(k1, expected_k1); + assert_eq!(k1_was_negated, test.k1_negated); + assert_eq!(k2, expected_k2); + assert_eq!(k2_was_negated, test.k2_negated); + + debug_success("decomposition", i, DEBUG_FREQUENCY); + } + } + + #[test] + fn test_width_4_multiplication() { + // Preparing the constraint system and parameters + let mut owned_cs = create_ecmul_cs(1 << 21); + let cs = &mut owned_cs; + let scalar_params = Arc::new(bn254_scalar_field_params()); + let base_params = Arc::new(bn254_base_field_params()); + + // Running tests from file + const DEBUG_FREQUENCY: usize = 2; + for (i, test) in EC_MUL_TEST_CASES.tests.iter().enumerate() { + // Input: + let point_nn = test.point.to_projective_point(cs); + let scalar = BN256Fr::from_str(&test.scalar).unwrap(); + let scalar_nn = BN256ScalarNNField::allocate_checked(cs, scalar, &scalar_params); + + // Expected: + let mut expected = test.expected.to_projective_point(cs); + + // Actual: + let mut actual = width_4_windowed_multiplication( + cs, + point_nn, + scalar_nn, + &base_params, + &scalar_params, + ); + + // Making assertion and debug success if OK + assert_equal_g1_points(cs, &mut actual, &mut expected); + debug_success("ec_mul", i, DEBUG_FREQUENCY); + } + } + + #[test] + #[ignore = "used for debugging performance"] + fn debug_ecmul_performance() { + // Preparing the constraint system and parameters + let mut owned_cs = create_ecmul_cs(1 << 21); + let cs = &mut owned_cs; + + // Preparing params + let scalar_params = Arc::new(bn254_scalar_field_params()); + let base_params = Arc::new(bn254_base_field_params()); + + // Runnings test + let test_case = &EC_MUL_TEST_CASES.tests[0]; + let point_nn = test_case.point.to_projective_point(cs); + let scalar = BN256Fr::from_str(&test_case.scalar).unwrap(); + let scalar_nn = BN256ScalarNNField::allocate_checked(cs, scalar, &scalar_params); + + let _ = + width_4_windowed_multiplication(cs, point_nn, scalar_nn, &base_params, &scalar_params); + + let cs = owned_cs.into_assembly::(); + cs.print_gate_stats(); + } +} diff --git a/crates/zkevm_circuits/src/bn254/tests/ec_pairing.rs b/crates/zkevm_circuits/src/bn254/tests/ec_pairing.rs new file mode 100644 index 0000000..0223bc2 --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/tests/ec_pairing.rs @@ -0,0 +1,481 @@ +pub mod test { + + use std::sync::Arc; + + use crate::bn254::ec_pairing::final_exp::{ + CompressionMethod, FinalExpEvaluation, HardExpMethod, + }; + use crate::bn254::ec_pairing::implementation::{ + ec_pairing, ec_pairing_inner, LineFunctionEvaluation, MillerLoopEvaluation, + }; + use crate::bn254::tests::json::{ + FINAL_EXP_TEST_CASES, G2_CURVE_TEST_CASES, INVALID_SUBGROUP_TEST_CASES, + LINE_FUNCTION_TEST_CASES, PAIRING_TEST_CASES, + }; + use crate::bn254::tests::utils::assert::{ + assert_equal_fq12, assert_equal_fq2, assert_equal_g2_jacobian_points, + assert_equal_g2_points, assert_not_equal_fq12, + }; + use crate::bn254::tests::utils::cs::create_test_cs; + use crate::bn254::tests::utils::debug_success; + use crate::bn254::{ + bn254_base_field_params, BN256SWProjectivePoint, BN256SWProjectivePointTwisted, + }; + use boojum::field::goldilocks::GoldilocksField; + use boojum::gadgets::non_native_field::traits::NonNativeField; + use boojum::pairing::bn256::{G1Affine, G2Affine}; + use boojum::pairing::CurveAffine; + + type F = GoldilocksField; + type P = GoldilocksField; + + /// Tests whether G2 curve operations are correct. Namely, we verify: + /// + /// 1. The sum of two points. + /// 2. The double of a point. + /// + /// The test cases are loaded from the [`G2_CURVE_TEST_CASES`] constant. + #[test] + fn test_g2_curve() { + // Preparing the constraint system and parameters + let mut owned_cs = create_test_cs(1 << 21); + let cs = &mut owned_cs; + + // Running tests from file + const DEBUG_FREQUENCY: usize = 2; + for (i, test) in G2_CURVE_TEST_CASES.tests.iter().enumerate() { + // Input: + let mut point_1 = test.point_1.to_projective_point(cs); + let mut point_2 = test.point_2.to_projective_point(cs); + + let point_2_x = point_2.x.clone(); + let point_2_y = point_2.y.clone(); + + // Expected: + let mut expected_sum = test.expected.sum.to_projective_point(cs); + let mut expected_point_1_double = test.expected.point_1_double.to_projective_point(cs); + let mut expected_point_2_double = test.expected.point_2_double.to_projective_point(cs); + + // Actual: + let mut sum = point_1.add_mixed(cs, &mut (point_2_x, point_2_y)); + let mut point_1_double = point_1.double(cs); + let mut point_2_double = point_2.double(cs); + + // Asserting: + assert_equal_g2_points(cs, &mut sum, &mut expected_sum); + assert_equal_g2_points(cs, &mut point_1_double, &mut expected_point_1_double); + assert_equal_g2_points(cs, &mut point_2_double, &mut expected_point_2_double); + + debug_success("G2", i, DEBUG_FREQUENCY); + } + } + + /// Tests the line function doubling step evaluation used in the pairing computation. + /// + /// The test cases are loaded from the [`LINE_FUNCTION_TEST_CASES`] constant. + #[test] + fn test_doubling_step() { + // Preparing the constraint system and parameters + let mut owned_cs = create_test_cs(1 << 21); + let cs = &mut owned_cs; + + // Running tests from file + for (i, test) in LINE_FUNCTION_TEST_CASES.tests.iter().enumerate() { + // Input: + let mut g2_point_1 = test.g2_point_1.to_projective_point(cs); + let mut g2_point_2 = test.g2_point_2.to_projective_point(cs); + let mut g1_point = test.g1_point.to_projective_point(cs); + + // Expected:3 + let mut expected_point_1 = test.expected.doubling_1.point.to_projective_point(cs); + let mut expected_c0_1 = test.expected.doubling_1.c0.to_fq2(cs); + let mut expected_c3_1 = test.expected.doubling_1.c3.to_fq2(cs); + let mut expected_c4_1 = test.expected.doubling_1.c4.to_fq2(cs); + + let mut expected_point_2 = test.expected.doubling_2.point.to_projective_point(cs); + let mut expected_c0_2 = test.expected.doubling_2.c0.to_fq2(cs); + let mut expected_c3_2 = test.expected.doubling_2.c3.to_fq2(cs); + let mut expected_c4_2 = test.expected.doubling_2.c4.to_fq2(cs); + + // Actual: + let doubling_1 = + LineFunctionEvaluation::doubling_step(cs, &mut g2_point_1, &mut g1_point); + let mut point_1 = doubling_1.point(); + let (mut c0_1, mut c3_1, mut c4_1) = doubling_1.c0c3c4(); + + let doubling_2 = + LineFunctionEvaluation::doubling_step(cs, &mut g2_point_2, &mut g1_point); + let mut point_2 = doubling_2.point(); + let (mut c0_2, mut c3_2, mut c4_2) = doubling_2.c0c3c4(); + + // Asserting: + assert_equal_g2_jacobian_points(cs, &mut point_1, &mut expected_point_1); + assert_equal_fq2(cs, &mut c0_1, &mut expected_c0_1); + assert_equal_fq2(cs, &mut c3_1, &mut expected_c3_1); + assert_equal_fq2(cs, &mut c4_1, &mut expected_c4_1); + + assert_equal_g2_jacobian_points(cs, &mut point_2, &mut expected_point_2); + assert_equal_fq2(cs, &mut c0_2, &mut expected_c0_2); + assert_equal_fq2(cs, &mut c3_2, &mut expected_c3_2); + assert_equal_fq2(cs, &mut c4_2, &mut expected_c4_2); + + println!("Line function test {} has passed!", i); + } + } + + /// Tests the line function addition step evaluation used in the pairing computation. + /// + /// The test cases are loaded from the [`LINE_FUNCTION_TEST_CASES`] constant. + #[test] + fn test_addition_step() { + // Preparing the constraint system and parameters + let mut owned_cs = create_test_cs(1 << 21); + let cs = &mut owned_cs; + + // Running tests from file + for (i, test) in LINE_FUNCTION_TEST_CASES.tests.iter().enumerate() { + // Input: + let mut g2_point_1 = test.g2_point_1.to_projective_point(cs); + let mut g2_point_2 = test.g2_point_2.to_projective_point(cs); + let mut g1_point = test.g1_point.to_projective_point(cs); + + // Expected: + let mut expected_addition_point = test.expected.addition.point.to_projective_point(cs); + let mut expected_c0 = test.expected.addition.c0.to_fq2(cs); + let mut expected_c3 = test.expected.addition.c3.to_fq2(cs); + let mut expected_c4 = test.expected.addition.c4.to_fq2(cs); + + // Actual: + let addition = LineFunctionEvaluation::addition_step( + cs, + &mut g2_point_1, + &mut g2_point_2, + &mut g1_point, + ); + let mut addition_point = addition.point(); + let (mut c0, mut c3, mut c4) = addition.c0c3c4(); + + // Asserting: + assert_equal_g2_jacobian_points(cs, &mut addition_point, &mut expected_addition_point); + assert_equal_fq2(cs, &mut c0, &mut expected_c0); + assert_equal_fq2(cs, &mut c3, &mut expected_c3); + assert_equal_fq2(cs, &mut c4, &mut expected_c4); + + println!("Addition step function test {} has passed!", i); + } + } + + /// Tests the correctness of the following line operation inside the Miller Loop: + /// - Double the first point + /// - Add the second point + /// + /// The test cases are loaded from the [`LINE_FUNCTION_TEST_CASES`] constant. + #[test] + fn test_double_and_addition_step() { + // Preparing the constraint system and parameters + let mut owned_cs = create_test_cs(1 << 21); + let cs = &mut owned_cs; + + // Running tests from file + for (i, test) in LINE_FUNCTION_TEST_CASES.tests.iter().enumerate() { + // Input: + let mut g2_point_1 = test.g2_point_1.to_projective_point(cs); + let mut g2_point_2 = test.g2_point_2.to_projective_point(cs); + let mut g1_point = test.g1_point.to_projective_point(cs); + + // Expected: + let mut expected_point = test + .expected + .doubling_1_and_addition + .point + .to_projective_point(cs); + let mut expected_c0 = test.expected.doubling_1_and_addition.c0.to_fq2(cs); + let mut expected_c3 = test.expected.doubling_1_and_addition.c3.to_fq2(cs); + let mut expected_c4 = test.expected.doubling_1_and_addition.c4.to_fq2(cs); + + // Actual: + let doubling = + LineFunctionEvaluation::doubling_step(cs, &mut g2_point_1, &mut g1_point); + g2_point_1 = doubling.point(); + let addition = LineFunctionEvaluation::addition_step( + cs, + &mut g2_point_2, + &mut g2_point_1, + &mut g1_point, + ); + let mut actual_point = addition.point(); + let (mut c0, mut c3, mut c4) = addition.c0c3c4(); + + // Asserting: + assert_equal_g2_jacobian_points(cs, &mut actual_point, &mut expected_point); + assert_equal_fq2(cs, &mut c0, &mut expected_c0); + assert_equal_fq2(cs, &mut c3, &mut expected_c3); + assert_equal_fq2(cs, &mut c4, &mut expected_c4); + + println!("Double&Addition step function test {} has passed!", i); + } + } + + /// Tests the Miller Loop step used in the pairing computation. + /// + /// The test cases are loaded from the [`PAIRING_TEST_CASES`] constant. + #[test] + fn test_miller_loop() { + const DEBUG_PERFORMANCE: bool = true; + + // Running tests from file + for (i, test) in PAIRING_TEST_CASES.tests.iter().enumerate() { + // Preparing the constraint system and parameters + let mut owned_cs = create_test_cs(1 << 18); + let cs = &mut owned_cs; + + // Input: + let mut g1_point = test.g1_point.to_projective_point(cs); + let mut g2_point = test.g2_point.to_projective_point(cs); + + // Expected: + let mut expected_miller_loop = test.miller_loop.to_fq12(cs); + + // Actual: + let miller_loop = MillerLoopEvaluation::evaluate(cs, &mut g1_point, &mut g2_point); + let mut miller_loop = miller_loop.get_accumulated_f(); + + // Asserting: + assert_equal_fq12(cs, &mut miller_loop, &mut expected_miller_loop); + + // Printing the number of constraints if needed + if DEBUG_PERFORMANCE { + let cs = owned_cs.into_assembly::(); + cs.print_gate_stats(); + } + + println!("Miller loop test {} has passed!", i); + } + } + + /// Tests the final exponentiation step used in the pairing computation. + /// + /// At the beginning of the test, one can specify the hard exponentiation method to use + /// and whether to debug the number of rows in the constraint system. + /// + /// The test cases are loaded from the [`FINAL_EXP_TEST_CASES`] constant. + #[test] + fn test_final_exponentiation() { + const HARD_EXP_METHOD: HardExpMethod = HardExpMethod::Naive; + const COMPRESSION_METHOD: CompressionMethod = CompressionMethod::None; + const DEBUG_PERFORMANCE: bool = true; + + // Running tests from file + for (i, test) in FINAL_EXP_TEST_CASES.tests.iter().enumerate() { + // Preparing the constraint system and parameters + let mut owned_cs = create_test_cs(1 << 19); + let cs = &mut owned_cs; + + // Expected: + let expected_f_final = test.expected.to_fq12(cs); + + // Actual: + let mut f = test.scalar.to_fq12(cs); + let f_final = + FinalExpEvaluation::evaluate(cs, &mut f, HARD_EXP_METHOD, COMPRESSION_METHOD); + let f_final = f_final.get(); + + // Asserting: + assert_equal_fq12(cs, &f_final, &expected_f_final); + + // Printing the number of constraints if needed + if DEBUG_PERFORMANCE { + let cs = owned_cs.into_assembly::(); + cs.print_gate_stats(); + } + + println!("Final exponentiation test {} has passed!", i); + } + } + + /// Tests the EC pairing as a whole by comparing output with the one retrieved from the Sage implementation. + /// + /// At the beginning of the test, one can specify the hard exponentiation method to use + /// and whether to debug the number of rows in the constraint system. + /// + /// The test cases are loaded from the [`PAIRING_TEST_CASES`] constant. + #[test] + fn test_ec_pairing_inner() { + const HARD_EXP_METHOD: HardExpMethod = HardExpMethod::Naive; + const COMPRESSION_METHOD: CompressionMethod = CompressionMethod::AlgebraicTorus; + const DEBUG_PERFORMANCE: bool = true; + + // Running tests from file + for (i, test) in PAIRING_TEST_CASES.tests.iter().enumerate() { + // Preparing the constraint system and parameters + let mut owned_cs = create_test_cs(1 << 20); + let cs = &mut owned_cs; + + // Input: + let mut g1_point = test.g1_point.to_projective_point(cs); + let mut g2_point = test.g2_point.to_projective_point(cs); + + // Expected: + let mut expected_pairing = test.pairing.to_fq12(cs); + + // Actual: + let mut pairing = ec_pairing_inner( + cs, + &mut g1_point, + &mut g2_point, + HARD_EXP_METHOD, + COMPRESSION_METHOD, + ); + + // Asserting: + assert_equal_fq12(cs, &mut pairing, &mut expected_pairing); + + if DEBUG_PERFORMANCE { + let cs = owned_cs.into_assembly::(); + cs.print_gate_stats(); + } + println!("EC pairing test {} has passed!", i); + } + } + + /// Tests the bilinearity of the EC pairing. Namely, we test that + /// + /// `e([a]P,[b]Q) = e([b]P, [a]Q)` + /// + /// Here, we use `a=2,b=1` and `P=Q=one`. + #[test] + #[ignore = "too-large circuit, should be run manually"] + fn test_ec_pairing_bilinearity() { + // Preparing the constraint system and parameters + let mut owned_cs = create_test_cs(1 << 22); + let cs = &mut owned_cs; + let params = bn254_base_field_params(); + + // Input (two points g1 and g2): + let mut g1_point = BN256SWProjectivePoint::one(cs, &Arc::new(params)); + let mut g2_point = BN256SWProjectivePointTwisted::one(cs, &Arc::new(params)); + + // Calculating e(2*g1,g2) and e(g1,2*g2). Asserting they are equal. + let mut g1_point_double = g1_point.double(cs); + let mut g2_point_double = g2_point.double(cs); + + // Since z components of 2*g1 and 2*g2 are not equal to 1, we need to convert them to affine + let ((x, y), _) = g1_point_double.convert_to_affine_or_default(cs, G1Affine::zero()); + let mut g1_point_double = BN256SWProjectivePoint::from_xy_unchecked(cs, x, y); + g1_point_double.x.normalize(cs); + g1_point_double.y.normalize(cs); + + let ((x, y), _) = g2_point_double.convert_to_affine_or_default(cs, G2Affine::zero()); + let mut g2_point_double = BN256SWProjectivePointTwisted::from_xy_unchecked(cs, x, y); + g2_point_double.x.normalize(cs); + g2_point_double.y.normalize(cs); + + g1_point_double.enforce_reduced(cs); + g2_point_double.enforce_reduced(cs); + + let mut pairing_1 = ec_pairing(cs, &mut g1_point_double, &mut g2_point); + let mut pairing_2 = ec_pairing(cs, &mut g1_point, &mut g2_point_double); + + // Asserting: + assert_equal_fq12(cs, &mut pairing_1, &mut pairing_2); + + let cs = owned_cs.into_assembly::(); + cs.print_gate_stats(); + println!("EC pairing bilinearity test has passed!"); + } + + /// Tests the unsatisfiability of the EC pairing when the points are not in the correct subgroup, + /// so in other words when, for example, `P` and `Q` are not in the r-torsion subgroup. + /// + /// The test takes invalid `Q` G2 point from the [`INVALID_SUBGROUP_TEST_CASES`] constant and tries to compute the pairing + /// of `e([2]P,Q)` and `e(P,[2]Q)`. The values should not be equal. + #[test] + #[ignore = "too-large circuit, should be run manually"] + fn test_ec_pairing_non_subgroup_unsatisfiability() { + const HARD_EXP_METHOD: HardExpMethod = HardExpMethod::Naive; + const COMPRESSION_METHOD: CompressionMethod = CompressionMethod::None; + const DEBUG_PERFORMANCE: bool = true; + + // Running tests from file + for (i, test) in INVALID_SUBGROUP_TEST_CASES.tests.iter().enumerate() { + // Preparing the constraint system and parameters + let mut owned_cs = create_test_cs(1 << 22); + let cs = &mut owned_cs; + + // Input: + let mut g1_point = test.g1_point.to_projective_point(cs); + let mut g2_point = test.g2_point.to_projective_point(cs); + let mut g1_point_doubled = test.g1_point_doubled.to_projective_point(cs); + let mut g2_point_doubled = test.g2_point_doubled.to_projective_point(cs); + + // Calculating two pairings: + let mut pairing_ab = ec_pairing_inner( + cs, + &mut g1_point_doubled, + &mut g2_point, + HARD_EXP_METHOD, + COMPRESSION_METHOD, + ); + let mut pairing_ba = ec_pairing_inner( + cs, + &mut g1_point, + &mut g2_point_doubled, + HARD_EXP_METHOD, + COMPRESSION_METHOD, + ); + + // Asserting: + assert_not_equal_fq12(cs, &mut pairing_ab, &mut pairing_ba); + + if DEBUG_PERFORMANCE { + let cs = owned_cs.into_assembly::(); + cs.print_gate_stats(); + } + println!("EC pairing invalid subgroup test {} has passed!", i); + } + } + + /// Tests the validation in EC pairing. That is, when we place two non-normalized points in the pairing function, + /// the function should panic. + /// + /// This test checks what happens if the first point (on the regular curve) is not normalized. + #[test] + #[should_panic] + fn test_ec_pairing_invalid_point_1() { + // Preparing the constraint system and parameters + let mut owned_cs = create_test_cs(1 << 22); + let cs = &mut owned_cs; + let params = bn254_base_field_params(); + + // Calculating two generators and double the first one + let mut g1_point = BN256SWProjectivePoint::one(cs, &Arc::new(params)); + let mut g2_point = BN256SWProjectivePointTwisted::one(cs, &Arc::new(params)); + let mut g1_point_double = g1_point.double(cs); + + // NOTE: Here, z coordinates are not equal to 1, and thus without normalization, + // the EC pairing function should panic + let _ = ec_pairing(cs, &mut g1_point_double, &mut g2_point); + } + + /// Tests the validation in EC pairing. That is, when we place two non-normalized points in the pairing function, + /// the function should panic. + /// + /// This test checks what happens if the second point (on the twisted curve) is not normalized. + #[test] + #[should_panic] + fn test_ec_pairing_invalid_point_2() { + // Preparing the constraint system and parameters + let mut owned_cs = create_test_cs(1 << 22); + let cs = &mut owned_cs; + let params = bn254_base_field_params(); + + // Calculating two generators and double the second one + let mut g1_point = BN256SWProjectivePoint::one(cs, &Arc::new(params)); + let mut g2_point = BN256SWProjectivePointTwisted::one(cs, &Arc::new(params)); + let mut g2_point_double = g2_point.double(cs); + + // NOTE: Here, z coordinates are not equal to 1, and thus without normalization, + // the EC pairing function should panic + let _ = ec_pairing(cs, &mut g1_point, &mut g2_point_double); + } +} diff --git a/crates/zkevm_circuits/src/bn254/tests/field_extensions.rs b/crates/zkevm_circuits/src/bn254/tests/field_extensions.rs new file mode 100644 index 0000000..facd41c --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/tests/field_extensions.rs @@ -0,0 +1,410 @@ +pub mod test { + + use crate::bn254::tests::json::{FQ12_TEST_CASES, FQ2_TEST_CASES, FQ6_TEST_CASES}; + use crate::bn254::tests::utils::assert::{ + assert_equal_fq12, assert_equal_fq2, assert_equal_fq6, + }; + use crate::bn254::tests::utils::cs::create_test_cs; + use crate::bn254::tests::utils::debug_success; + use boojum::field::goldilocks::GoldilocksField; + + type F = GoldilocksField; + type P = GoldilocksField; + + /// Test basic arithmetic of `Fq2` field extension, namely: + /// + /// - sum (`.add`) + /// - difference (`.sub`) + /// - product (`.mul`) + /// - quotient (`.div`) + /// + /// The tests are run against the test cases defined in [`FQ2_TEST_CASES`], which + /// are generated using the `sage` script in `gen/field_extensions.sage`. + #[test] + fn test_fq2_basic_arithmetic() { + // Preparing the constraint system and parameters + let mut owned_cs = create_test_cs(1 << 21); + let cs = &mut owned_cs; + + // Running tests from file: validating sum, diff, prod, and quot + const DEBUG_FREQUENCY: usize = 10; + for (i, test) in FQ2_TEST_CASES.tests.iter().enumerate() { + // Input: + let mut scalar_1 = test.scalar_1.to_fq2(cs); + let mut scalar_2 = test.scalar_2.to_fq2(cs); + + // Expected: + let expected_sum = test.expected.sum.to_fq2(cs); + let expected_difference = test.expected.difference.to_fq2(cs); + let expected_product = test.expected.product.to_fq2(cs); + let expected_quotient = test.expected.quotient.to_fq2(cs); + + // Actual: + let sum = scalar_1.add(cs, &mut scalar_2); + let difference = scalar_1.sub(cs, &mut scalar_2); + let product = scalar_1.mul(cs, &mut scalar_2); + let quotient = scalar_1.div(cs, &mut scalar_2); + + // Asserting: + assert_equal_fq2(cs, &sum, &expected_sum); + assert_equal_fq2(cs, &difference, &expected_difference); + assert_equal_fq2(cs, &product, &expected_product); + assert_equal_fq2(cs, "ient, &expected_quotient); + + debug_success("Fq2 basic arithmetic", i, DEBUG_FREQUENCY); + } + } + + /// Test multiplication by a non-residue of `Fq2` field extension. + /// + /// The tests are run against the test cases defined in [`FQ2_TEST_CASES`], which + /// are generated using the `sage` script in `gen/field_extensions.sage`. + #[test] + fn test_fq2_non_residue() { + // Preparing the constraint system and parameters + let mut owned_cs = create_test_cs(1 << 21); + let cs = &mut owned_cs; + + // Running tests from file: validating sum, diff, prod, and quot + const DEBUG_FREQUENCY: usize = 10; + for (i, test) in FQ2_TEST_CASES.tests.iter().enumerate() { + // Input: + let mut scalar_1 = test.scalar_1.to_fq2(cs); + + // Expected: + let expected_scalar_1_nonresidue = test.expected.scalar_1_non_residue.to_fq2(cs); + + // Actual: + let scalar_1_non_residue = scalar_1.mul_by_nonresidue(cs); + + // Asserting: + assert_equal_fq2(cs, &scalar_1_non_residue, &expected_scalar_1_nonresidue); + + debug_success("Fq2 non-residue", i, DEBUG_FREQUENCY); + } + } + + /// Test frobenius map of `Fq2` field extension. + /// + /// The tests are run against the test cases defined in [`FQ2_TEST_CASES`], which + /// are generated using the `sage` script in `gen/field_extensions.sage`. + #[test] + fn test_fq2_frobenius() { + // Preparing the constraint system and parameters + let mut owned_cs = create_test_cs(1 << 21); + let cs = &mut owned_cs; + + // Running tests from file: validating sum, diff, prod, and quot + const DEBUG_FREQUENCY: usize = 10; + for (i, test) in FQ2_TEST_CASES.tests.iter().enumerate() { + // Input: + let mut scalar_1 = test.scalar_1.to_fq2(cs); + + // Expected: + let expected_frobenius_6 = test.expected.frobenius_6.to_fq2(cs); + + // Actual: + let frobenius_6 = scalar_1.frobenius_map(cs, 6); + + // Asserting: + assert_equal_fq2(cs, &frobenius_6, &expected_frobenius_6); + + debug_success("Fq2 frobenius", i, DEBUG_FREQUENCY); + } + } + + /// Test basic arithmetic of `Fq6` field extension, namely: + /// + /// - sum (`.add`) + /// - difference (`.sub`) + /// - product (`.mul`) + /// - quotient (`.div`) + /// - squaring (`.square`) + /// - inverse (`.inverse`) + /// - multiplication by a non-residue (`.mul_by_nonresidue`) + /// + /// The tests are run against the test cases defined in [`FQ6_TEST_CASES`], which + /// are generated using the `sage` script in `gen/field_extensions.sage`. + #[test] + fn test_fq6_basic_arithmetic() { + // Preparing the constraint system and parameters + let mut owned_cs = create_test_cs(1 << 21); + let cs = &mut owned_cs; + + // Running tests from file: validating sum, diff, prod, and quot + const DEBUG_FREQUENCY: usize = 10; + for (i, test) in FQ6_TEST_CASES.tests.iter().enumerate() { + // Input: + let mut scalar_1 = test.scalar_1.to_fq6(cs); + let mut scalar_2 = test.scalar_2.to_fq6(cs); + + // Expected: + let expected_sum = test.expected.sum.to_fq6(cs); + let expected_difference = test.expected.difference.to_fq6(cs); + let expected_product = test.expected.product.to_fq6(cs); + let expected_quotient = test.expected.quotient.to_fq6(cs); + let expected_scalar_1_inverse = test.expected.scalar_1_inverse.to_fq6(cs); + let expected_scalar_1_square = test.expected.scalar_1_square.to_fq6(cs); + let expected_scalar_1_non_residue = test.expected.scalar_1_non_residue.to_fq6(cs); + + // Actual: + let sum = scalar_1.add(cs, &mut scalar_2); + let difference = scalar_1.sub(cs, &mut scalar_2); + let product = scalar_1.mul(cs, &mut scalar_2); + let quotient = scalar_1.div(cs, &mut scalar_2); + let scalar_1_inverse = scalar_1.inverse(cs); + let scalar_1_square = scalar_1.square(cs); + let scalar_1_non_residue = scalar_1.mul_by_nonresidue(cs); + + // Asserting: + assert_equal_fq6(cs, &sum, &expected_sum); + assert_equal_fq6(cs, &difference, &expected_difference); + assert_equal_fq6(cs, &product, &expected_product); + assert_equal_fq6(cs, "ient, &expected_quotient); + assert_equal_fq6(cs, &scalar_1_inverse, &expected_scalar_1_inverse); + assert_equal_fq6(cs, &scalar_1_square, &expected_scalar_1_square); + assert_equal_fq6(cs, &scalar_1_non_residue, &expected_scalar_1_non_residue); + + debug_success("Fq6 basic arithmetic", i, DEBUG_FREQUENCY); + } + } + + /// Test multiplication by a non-residue of `Fq6` field extension, namely + /// + /// - multiplication by `c1` (`.mul_by_c1`) + /// - multiplication by `c0+c1*v` (`.mul_by_c0c1`) + /// - multiplication by `c2*v^2` (`.mul_by_c2`) + /// + /// The tests are run against the test cases defined in [`FQ6_TEST_CASES`], which + /// are generated using the `sage` script in `gen/field_extensions.sage`. + #[test] + fn test_fq6_sparse_mul() { + // Preparing the constraint system and parameters + let mut owned_cs = create_test_cs(1 << 21); + let cs = &mut owned_cs; + + // Running tests from file: validating sum, diff, prod, and quot + const DEBUG_FREQUENCY: usize = 10; + for (i, test) in FQ6_TEST_CASES.tests.iter().enumerate() { + // Input: + let mut scalar_1 = test.scalar_1.to_fq6(cs); + let mut c0 = test.c0.to_fq2(cs); + let mut c1 = test.c1.to_fq2(cs); + let mut c2 = test.c2.to_fq2(cs); + + // Expected: + let expected_product_c1 = test.expected.product_c1.to_fq6(cs); + let expected_product_c0c1 = test.expected.product_c0c1.to_fq6(cs); + let expected_product_c2 = test.expected.product_c2.to_fq6(cs); + + // Actual: + let product_c1 = scalar_1.mul_by_c1(cs, &mut c1); + let product_c0c1 = scalar_1.mul_by_c0c1(cs, &mut c0, &mut c1); + let product_c2 = scalar_1.mul_by_c2(cs, &mut c2); + + // Asserting: + assert_equal_fq6(cs, &product_c1, &expected_product_c1); + assert_equal_fq6(cs, &product_c0c1, &expected_product_c0c1); + assert_equal_fq6(cs, &product_c2, &expected_product_c2); + + debug_success("Fq6 sparse operations", i, DEBUG_FREQUENCY); + } + } + + /// Test frobenius map of `Fq6` field extension. + /// + /// The tests are run against the test cases defined in [`FQ6_TEST_CASES`], which + /// are generated using the `sage` script in `gen/field_extensions.sage`. + #[test] + fn test_fq6_frobenius() { + // Preparing the constraint system and parameters + let mut owned_cs = create_test_cs(1 << 21); + let cs = &mut owned_cs; + + // Running tests from file: validating sum, diff, prod, and quot + const DEBUG_FREQUENCY: usize = 10; + for (i, test) in FQ6_TEST_CASES.tests.iter().enumerate() { + // Input: + let mut scalar_1 = test.scalar_1.to_fq6(cs); + let mut scalar_2 = test.scalar_2.to_fq6(cs); + + // Expected: + let expected_frobenius_1 = test.expected.scalar_1_frobenius_1.to_fq6(cs); + let expected_frobenius_2 = test.expected.scalar_2_frobenius_2.to_fq6(cs); + let expected_frobenius_3 = test.expected.scalar_1_frobenius_3.to_fq6(cs); + + // Actual: + let frobenius_1 = scalar_1.frobenius_map(cs, 1); + let frobenius_2 = scalar_2.frobenius_map(cs, 2); + let frobenius_3 = scalar_1.frobenius_map(cs, 3); + + // Asserting: + assert_equal_fq6(cs, &frobenius_1, &expected_frobenius_1); + assert_equal_fq6(cs, &frobenius_2, &expected_frobenius_2); + assert_equal_fq6(cs, &frobenius_3, &expected_frobenius_3); + + debug_success("Fq6 frobenius", i, DEBUG_FREQUENCY); + } + } + + /// Test basic arithmetic of `Fq12` field extension, namely: + /// + /// - sum (`.add`) + /// - difference (`.sub`) + /// - product (`.mul`) + /// - quotient (`.div`) + /// - squaring (`.square`) + /// - inverse (`.inverse`) + /// + /// The tests are run against the test cases defined in [`FQ12_TEST_CASES`], which + /// are generated using the `sage` script in `gen/field_extensions.sage`. + #[test] + fn test_fq12_basic_arithmetic() { + // Preparing the constraint system and parameters + let mut owned_cs = create_test_cs(1 << 21); + let cs = &mut owned_cs; + + // Running tests from file: validating sum, diff, prod, and quot + const DEBUG_FREQUENCY: usize = 2; + for (i, test) in FQ12_TEST_CASES.tests.iter().enumerate() { + // Reading inputs + let mut scalar_1 = test.scalar_1.to_fq12(cs); + let mut scalar_2 = test.scalar_2.to_fq12(cs); + + // Expected: + let expected_sum = test.expected.sum.to_fq12(cs); + let expected_difference = test.expected.difference.to_fq12(cs); + let expected_product = test.expected.product.to_fq12(cs); + let expected_quotient = test.expected.quotient.to_fq12(cs); + let expected_scalar_1_inverse = test.expected.scalar_1_inverse.to_fq12(cs); + let expected_scalar_1_square = test.expected.scalar_1_square.to_fq12(cs); + + // Actual: + let sum = scalar_1.add(cs, &mut scalar_2); + let difference = scalar_1.sub(cs, &mut scalar_2); + let product = scalar_1.mul(cs, &mut scalar_2); + let quotient = scalar_1.div(cs, &mut scalar_2); + let scalar_1_inverse = scalar_1.inverse(cs); + let scalar_1_square = scalar_1.square(cs); + + // Asserting: + assert_equal_fq12(cs, &sum, &expected_sum); + assert_equal_fq12(cs, &difference, &expected_difference); + assert_equal_fq12(cs, &product, &expected_product); + assert_equal_fq12(cs, "ient, &expected_quotient); + assert_equal_fq12(cs, &scalar_1_inverse, &expected_scalar_1_inverse); + assert_equal_fq12(cs, &scalar_1_square, &expected_scalar_1_square); + + debug_success("Fq12 basic arithmetic", i, DEBUG_FREQUENCY); + } + } + + /// Test frobenius map of `Fq12` field extension. + /// + /// The tests are run against the test cases defined in [`FQ12_TEST_CASES`], which + /// are generated using the `sage` script in `gen/field_extensions.sage`. + #[test] + fn test_fq12_frobenius() { + // Preparing the constraint system and parameters + let mut owned_cs = create_test_cs(1 << 21); + let cs = &mut owned_cs; + + // Running tests from file: validating sum, diff, prod, and quot + const DEBUG_FREQUENCY: usize = 2; + for (i, test) in FQ12_TEST_CASES.tests.iter().enumerate() { + // Reading inputs + let mut scalar_1 = test.scalar_1.to_fq12(cs); + let mut scalar_2 = test.scalar_2.to_fq12(cs); + + // Expected: + let expected_frobenius_1 = test.expected.scalar_1_frobenius_1.to_fq12(cs); + let expected_frobenius_2 = test.expected.scalar_2_frobenius_2.to_fq12(cs); + let expected_frobenius_3 = test.expected.scalar_1_frobenius_3.to_fq12(cs); + + // Actual: + let frobenius_1 = scalar_1.frobenius_map(cs, 1); + let frobenius_2 = scalar_2.frobenius_map(cs, 2); + let frobenius_3 = scalar_1.frobenius_map(cs, 3); + + // Asserting: + assert_equal_fq12(cs, &frobenius_1, &expected_frobenius_1); + assert_equal_fq12(cs, &frobenius_2, &expected_frobenius_2); + assert_equal_fq12(cs, &frobenius_3, &expected_frobenius_3); + + debug_success("fp12 frobenius", i, DEBUG_FREQUENCY); + } + } + + /// Test sparse multiplication of `Fq12` field extension. Namely: + /// + /// - multiplication by `c0+(c3+c4*v)*w` (`.mul_by_c0c3c4`) + /// - multiplication by `c0+c1*v+c4*v*w` (`.mul_by_c0c1c4`) + /// + /// The tests are run against the test cases defined in [`FQ12_TEST_CASES`], which + /// are generated using the `sage` script in `gen/field_extensions.sage`. + #[test] + fn test_fq12_sparse_mul() { + // Preparing the constraint system and parameters + let mut owned_cs = create_test_cs(1 << 21); + let cs = &mut owned_cs; + + // Running tests from file: validating sum, diff, prod, and quot + const DEBUG_FREQUENCY: usize = 2; + for (i, test) in FQ12_TEST_CASES.tests.iter().enumerate() { + // Reading inputs + let mut scalar_1 = test.scalar_1.to_fq12(cs); + let mut c0 = test.c0.to_fq2(cs); + let mut c1 = test.c1.to_fq2(cs); + let mut c3 = test.c3.to_fq2(cs); + let mut c4 = test.c4.to_fq2(cs); + let mut c5 = test.c5.to_fq2(cs); + + // Expected: + let expected_product_c0c3c4 = test.expected.product_c0c3c4.to_fq12(cs); + let expected_product_c0c1c4 = test.expected.product_c0c1c4.to_fq12(cs); + let expected_product_c5 = test.expected.product_c5.to_fq12(cs); + + // Actual: + let product_c0c3c4 = scalar_1.mul_by_c0c3c4(cs, &mut c0, &mut c3, &mut c4); + let product_c0c1c4 = scalar_1.mul_by_c0c1c4(cs, &mut c0, &mut c1, &mut c4); + let product_c5 = scalar_1.mul_by_c5(cs, &mut c5); + + // Asserting: + assert_equal_fq12(cs, &product_c0c3c4, &expected_product_c0c3c4); + assert_equal_fq12(cs, &product_c0c1c4, &expected_product_c0c1c4); + assert_equal_fq12(cs, &product_c5, &expected_product_c5); + + debug_success("fq12 sparse mul", i, DEBUG_FREQUENCY); + } + } + + /// Test powering of `Fq12` field extension by a fixed u64 scalar. + #[test] + fn test_fq12_pow() { + // Preparing the constraint system and parameters + let mut owned_cs = create_test_cs(1 << 23); + let cs = &mut owned_cs; + + // Running tests from file: validating sum, diff, prod, and quot + const DEBUG_FREQUENCY: usize = 2; + for (i, test) in FQ12_TEST_CASES.tests.iter().enumerate() { + // Reading inputs + let mut scalar_1 = test.scalar_1.to_fq12(cs); + + // Expected: + let expected_pow_33 = test.expected.scalar_1_pow_33.to_fq12(cs); + let expected_pow_u = test.expected.scalar_1_pow_u.to_fq12(cs); + + // Actual: + const U: u64 = 4965661367192848881; + let pow_33 = scalar_1.pow_u32(cs, &[33]); + let pow_u = scalar_1.pow_u32(cs, &[U]); + + // Asserting: + assert_equal_fq12(cs, &pow_33, &expected_pow_33); + assert_equal_fq12(cs, &pow_u, &expected_pow_u); + + debug_success("fq12 power", i, DEBUG_FREQUENCY); + } + } +} diff --git a/crates/zkevm_circuits/src/bn254/tests/json/algebraic_torus/mod.rs b/crates/zkevm_circuits/src/bn254/tests/json/algebraic_torus/mod.rs new file mode 100644 index 0000000..751cbdb --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/tests/json/algebraic_torus/mod.rs @@ -0,0 +1,39 @@ +use super::types::{RawFq12, RawFq6}; +use serde::{Deserialize, Serialize}; + +/// Path to the test cases for Torus operations +const TORUS_TEST_CASES: &str = include_str!("torus_tests.json"); + +// --- Torus tests --- + +#[derive(Clone, Debug, Deserialize, Serialize)] +pub struct TorusTestCase { + pub scalar_1: RawFq12, + pub scalar_2: RawFq12, + pub expected: TorusExpectedValue, +} + +#[derive(Clone, Debug, Deserialize, Serialize)] +pub struct TorusExpectedValue { + pub encoding_1: RawFq6, + pub encoding_2: RawFq6, + pub product_encoding: RawFq6, + pub inverse_1_encoding: RawFq6, + pub conjugate_1_encoding: RawFq6, + pub square_1_encoding: RawFq6, + pub frobenius_1_encoding: RawFq6, + pub frobenius_2_encoding: RawFq6, + pub frobenius_3_encoding: RawFq6, + pub power_u_encoding: RawFq6, + pub power_13_encoding: RawFq6, +} + +#[derive(Clone, Debug, Deserialize, Serialize)] +pub struct TorusTestCases { + pub tests: Vec, +} + +/// Load EC addition test cases from the file +pub(in super::super) fn load_torus_test_cases() -> TorusTestCases { + serde_json::from_str(&TORUS_TEST_CASES).expect("Failed to deserialize") +} diff --git a/crates/zkevm_circuits/src/bn254/tests/json/algebraic_torus/torus_tests.json b/crates/zkevm_circuits/src/bn254/tests/json/algebraic_torus/torus_tests.json new file mode 100644 index 0000000..e99977c --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/tests/json/algebraic_torus/torus_tests.json @@ -0,0 +1,222 @@ +{ + "tests": [ + { + "scalar_1": { + "c0": { + "c0": { + "c0": "19186504280709481836128083972178152348958560290267950775718975161870037634861", + "c1": "3719191512264481638853671199848815293403042533798667827486863478550178882385" + }, + "c1": { + "c0": "21076718270548030648085257290246183748426840255245327848933636296050028694013", + "c1": "11201157300193109942979242672132331096511310598536103236410099138595587336628" + }, + "c2": { + "c0": "6087525128549957138906036108215039886352740896993071464384942024789750510667", + "c1": "11487703982548282871979061234184418881451036509107636413803851587636215868087" + } + }, + "c1": { + "c0": { + "c0": "6561291206978298497188279658149320476715321001884033248599700868229492886651", + "c1": "552819575547702998009206359768335902284015916828045501558855768345053342677" + }, + "c1": { + "c0": "18126862713142160115554303529232640585605465166214934559315418736689098467601", + "c1": "16777885224908923778640978495602481025759012808739151575730747324687046309299" + }, + "c2": { + "c0": "11732509380159746591907595256708065108606947383144460198979955979553572732504", + "c1": "8553602488345797279857621945414496503738525517400801927031343844618486766380" + } + } + }, + "scalar_2": { + "c0": { + "c0": { + "c0": "19610924270825091336027679944657611320013326073368113609821376695829322845004", + "c1": "6139181229748750177449831558110630033521786033742440775324274923843678772206" + }, + "c1": { + "c0": "12261724408619290196382219531337012074869948307790977021400279507400119067970", + "c1": "13584170829215309667143268061781789814876300317301446221604115645077136577980" + }, + "c2": { + "c0": "7710722610743609028795511341483878695820720366364365265518635544855990094997", + "c1": "10204789510751190204374083233215488747498386767322559910654910758732452187989" + } + }, + "c1": { + "c0": { + "c0": "14324158183886617474179018377468220690909524407429115608927579162825375839309", + "c1": "13271851262695526228788119435785404688611950684995335394072877989337554972291" + }, + "c1": { + "c0": "12703946267102167184949434962599123654650578279950546827225428327445220142956", + "c1": "7087642552210228125041661540670946618878261978723235831134317817926405134184" + }, + "c2": { + "c0": "3205511181632119281779514892110600458499787386881068785075714251820006361900", + "c1": "1167208198093452152446461416649170824289814454741398672589663061262683027106" + } + } + }, + "expected": { + "encoding_1": { + "c0": { + "c0": "10542979620265533606019701892470128755036275187022650862134136345504183636026", + "c1": "18654263270655872803490356582280927897307480960587690030604156928185975670013" + }, + "c1": { + "c0": "2254235256221556664400034561470951208408108307532397875133638765092008977557", + "c1": "11916504767237158091705171356736890416360557223291188763599577797387974104110" + }, + "c2": { + "c0": "21160899014929211799037693213213102916789526547786524007070225978490726002554", + "c1": "12128689805563898815298192067068856091698778799800129259154467959257908250106" + } + }, + "encoding_2": { + "c0": { + "c0": "10918238691044090525883948006788680757108530526500674156655944738548241028187", + "c1": "8796504360146180145713143581671353513763002496310695867542817580626078202187" + }, + "c1": { + "c0": "19322395765392916974614179532057196514915415178365164808988160516738002931955", + "c1": "4525849332393902138959259741242052587430870283461133099672133696031991874486" + }, + "c2": { + "c0": "18188203263688282300949407312273208623325580416245104564232483863917205707233", + "c1": "17070994342308005555395418576267493737531941610077619507154725923887882491504" + } + }, + "product_encoding": { + "c0": { + "c0": "5470742384419027342701886722524783794898400563613713304282110208592554989029", + "c1": "18079647142496052131934859208395042018276830894361858709840001621693730111488" + }, + "c1": { + "c0": "3821637561605517503405502934626962426887591997511216449221945624550049761483", + "c1": "20706754654653740575263555395558910850146066389924608442708069439761478040677" + }, + "c2": { + "c0": "2293343642299023025759518530864017773357578254479573687807702728083058338669", + "c1": "1502374996908682880348945224163214661685395219551276667257098961209580212069" + } + }, + "inverse_1_encoding": { + "c0": { + "c0": "11345263251573741616226703852787146333660035970275172800554901549141042572557", + "c1": "3233979601183402418756049162976347191388830196710133632084880966459250538570" + }, + "c1": { + "c0": "19634007615617718557846371183786323880288202849765425787555399129553217231026", + "c1": "9971738104602117130541234388520384672335753934006634899089460097257252104473" + }, + "c2": { + "c0": "727343856910063423208712532044172171906784609511299655618811916154500206029", + "c1": "9759553066275376406948213678188418996997532357497694403534569935387317958477" + } + }, + "conjugate_1_encoding": { + "c0": { + "c0": "11345263251573741616226703852787146333660035970275172800554901549141042572557", + "c1": "3233979601183402418756049162976347191388830196710133632084880966459250538570" + }, + "c1": { + "c0": "19634007615617718557846371183786323880288202849765425787555399129553217231026", + "c1": "9971738104602117130541234388520384672335753934006634899089460097257252104473" + }, + "c2": { + "c0": "727343856910063423208712532044172171906784609511299655618811916154500206029", + "c1": "9759553066275376406948213678188418996997532357497694403534569935387317958477" + } + }, + "square_1_encoding": { + "c0": { + "c0": "9238110626151400358130408340448142650387842930767342190961572143144776123476", + "c1": "9349961417361630010487849724183802390033751322167759406999526850389396689318" + }, + "c1": { + "c0": "20926550298132403129272246340075670733078287849380342365679502776403965482360", + "c1": "21299430360719269902554960228923877068651728015252043639712561965559633064033" + }, + "c2": { + "c0": "9317151432554038461666964123515934591132943959325745851903540316561423833162", + "c1": "14395410447326611317979453437344466239176580657333978171889973754145970873905" + } + }, + "frobenius_1_encoding": { + "c0": { + "c0": "6086567316645177319770104850340966804877705808495508391938201369561277271463", + "c1": "9314517730955513036670016886067112691375001661574066701263170322475090203227" + }, + "c1": { + "c0": "389967180681471510698315695406166124047145411521895224790265561596374381106", + "c1": "7325801978831221314466589881548362270037261376083583925506302264315995961107" + }, + "c2": { + "c0": "20028599342816997687009338232432018898957274703399867275162124906885588079880", + "c1": "1352667241354347047822141934517177765495060492721739806425220447485004338646" + } + }, + "frobenius_2_encoding": { + "c0": { + "c0": "2665685437629269943688535948097792605832320990278959832932372215919572669291", + "c1": "7181783677513322651768327158806056158765163651147276655730544530736591716414" + }, + "c1": { + "c0": "18265774406913674362368655546159162871966193103343209610959027893477182924313", + "c1": "16253035867710398057363621601549420217733662651945775917560023516149954249111" + }, + "c2": { + "c0": "727343856910063423208712532044172171906784609511299655618811916154500206029", + "c1": "9759553066275376406948213678188418996997532357497694403534569935387317958477" + } + }, + "frobenius_3_encoding": { + "c0": { + "c0": "14640342439330888375500517768676304479345565342259965258392440649562900580724", + "c1": "19143502125003617463531638131409114797505244940763878185335624104333567013919" + }, + "c1": { + "c0": "11260596495924285192390221965983767851155916179290632876687614821853240535167", + "c1": "20205274683789266635902903647228715643422306391760261405117843385218270203866" + }, + "c2": { + "c0": "1859643529022277535237067512825256189739036453897956387526912987759638128703", + "c1": "20535575630484928174424263810740097323201250664576083856263817447160221869937" + } + }, + "power_u_encoding": { + "c0": { + "c0": "5702868077375632353539996610367415575570945369936724015510241540258952645777", + "c1": "9072514016224260040689150251053509961868882992439177512606147733571712124304" + }, + "c1": { + "c0": "7636656925484199807382670709574375180763345034386949869488802272582014990827", + "c1": "10067964947726704376743441623583500466684732470221779028452742628592616959968" + }, + "c2": { + "c0": "1534743745682925008633066605628192752136270464777730434255314803654823876033", + "c1": "5517330566959720510507458479395375575649833310532796606296961679636371905071" + } + }, + "power_13_encoding": { + "c0": { + "c0": "15580678151956727860051937611683763285631839252122643801326873758250872377538", + "c1": "20056650783943414203761689036827361936919800394101105151813562827293644666961" + }, + "c1": { + "c0": "20041056156209619135937662204375646819625796320999345027725500406549979918113", + "c1": "12868757570114025414103035687553346236262208523584637471315974043343497491536" + }, + "c2": { + "c0": "10233386130308999464515424576500419592090534536471719715183611237013923583489", + "c1": "14306035922841635966260180633842894999579096351610940573622794198682530430575" + } + } + } + } + ] +} \ No newline at end of file diff --git a/crates/zkevm_circuits/src/bn254/tests/json/ec_add/ecadd_tests.json b/crates/zkevm_circuits/src/bn254/tests/json/ec_add/ecadd_tests.json new file mode 100644 index 0000000..4769689 --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/tests/json/ec_add/ecadd_tests.json @@ -0,0 +1,144 @@ +{ + "tests": [ + { + "point_1": { + "x": "4346497533809555349895319152131058502257472744518255152280535377574885579037", + "y": "18186364401669929453296417792687711299236075110850264755689696436703389129040" + }, + "point_2": { + "x": "15324690470956288071822265009489746856525231072327229544771730391650334979669", + "y": "5354502408214113957125233684303474179339683916278920565794911529411960533676" + }, + "expected": { + "x": "17072563373307098214814378924132276292982273043050006551220309850876997292100", + "y": "11729175333821973407115796918749233145197980549376803429621882096342119841315" + } + }, + { + "point_1": { + "x": "18410790017471195231271762884062598131453349382301972457485020471318844524821", + "y": "1315806583116600089983073331474194787350156051703915565853386493352091575893" + }, + "point_2": { + "x": "8404435514655116488303835157109863765325300646805364387663774225878338288205", + "y": "17651326524136466041611051855517851018219554163804187055780884991448610222442" + }, + "expected": { + "x": "1590229093308525219043086950619577188124062656719315995185490893106373552553", + "y": "4554034907040481788995185484898688644992835069213660839899363666039444253452" + } + }, + { + "point_1": { + "x": "11230989318277882942803566309378699357895536820064706024081219503370702107365", + "y": "16420592730610748984263155458624393879380896136492323732475914986546381812445" + }, + "point_2": { + "x": "9222840813489311321397748495174395779487940489277643229445348385084492561601", + "y": "13345816550049965317372182460025810604189328161933398316113672539301396986553" + }, + "expected": { + "x": "19202606642326794376979972439662401472264796678076154466088662165886507221293", + "y": "6898467965051747646738754675233599619968501909872815041563310958482509031166" + } + }, + { + "point_1": { + "x": "3287554002049903954122589973557069169574663316745797124160380649831167003652", + "y": "502016351976169784477971706763778191078957108852175569589000850542159992804" + }, + "point_2": { + "x": "2906552748540692071709440945370052530834603122628086808608211008270388390899", + "y": "11572583590640801220845616116309954292115647651141954364557953385107425055094" + }, + "expected": { + "x": "14914344922817039949179514530969665844428120052409353825706890852739983021617", + "y": "17657801386045195660076562636422132324241010345811939053142089403422875053031" + } + }, + { + "point_1": { + "x": "16777140675954440604399964769079214463761725069985550099070989527762187907020", + "y": "17058331686914239229451745165968520541437943334549338989325091380105807479959" + }, + "point_2": { + "x": "11920972942687802125923133100716581644968297860346092848581597961307186597494", + "y": "9165007313585724738480713699549983031583149912864624301994853638071460581559" + }, + "expected": { + "x": "16614991191694292274295414267983973749113431614940251968783048983255380365228", + "y": "6001254227282138705897682863352173597146576438851575202308583578931593448446" + } + }, + { + "point_1": { + "x": "19151502497194162612578175364181895106096033273836822011322887338640936216117", + "y": "6372031415360873251992076570952199985941530564456271130416242189693985803479" + }, + "point_2": { + "x": "13286840558530765510924679078146952386708059418786174898124158366484401326648", + "y": "9049865771798773282620815951123312506738174746536474272471526294871694354139" + }, + "expected": { + "x": "13578016309614444154424922722422189942876602298907833003713379341259718959917", + "y": "17401683473726987735451314478298047937055578968641978188465414566534113821356" + } + }, + { + "point_1": { + "x": "7058716528067047119889302884170587911739773704322490570258408607427939166112", + "y": "15527036048505439646055526291355102636739400009303995274080129215979739329196" + }, + "point_2": { + "x": "10543667602500278068427716134723385586723569974497907213948965430850855158603", + "y": "447223434511498075666332425445856228410103430832368670871046940699939248" + }, + "expected": { + "x": "11945485323264620935369836814644436778706227204300489317354816370757173425633", + "y": "2401165154949014559064310479947852101416567689858563582495023587572357349264" + } + }, + { + "point_1": { + "x": "21389737054620562538047253349309895809749247101384393160698187757263323004822", + "y": "2496114184916942015641976153769476484043812196558399205565691858335569945781" + }, + "point_2": { + "x": "11719560013949944819954845177281364184796218214315169298688089931142732785485", + "y": "537523353593036668072938301597355875860085652992418956216357046371021979525" + }, + "expected": { + "x": "1310723963474634577784712744022063056986685727049700298672410213224128172049", + "y": "10010575944335834226348522152535682346373192906318304119914527155651246173063" + } + }, + { + "point_1": { + "x": "20250853891052064848398761872243888010678526130702754745352876956164417834523", + "y": "1679520887482605233494262932111565673290473224418385319180067827820994240148" + }, + "point_2": { + "x": "14158992526465943614499171458925079527621194774609277574963832252453967843835", + "y": "9382032748132179880588179553711086411247386019163791767393809426708032440781" + }, + "expected": { + "x": "1479995200557716327361029967283916197998258818963212781179736174146775140219", + "y": "534756865958277444782261185990311360360639055120772039997542863650621643470" + } + }, + { + "point_1": { + "x": "2429882259217224954614198663668203995384743042244072893006313199426934459564", + "y": "16039667063868697248529036438351190129478928087807504711323686514947826487865" + }, + "point_2": { + "x": "10038462452749815252199426693959699571055040910995684575357226632389276009289", + "y": "506624733927424868136812277039081452176900033365405457647481427611350992750" + }, + "expected": { + "x": "21212083339385710253690692737626320809750345837695326484919796343001302806580", + "y": "6322385060828634558001580565422733280981308196648693159172468432428728888644" + } + } + ] +} \ No newline at end of file diff --git a/crates/zkevm_circuits/src/bn254/tests/json/ec_add/mod.rs b/crates/zkevm_circuits/src/bn254/tests/json/ec_add/mod.rs new file mode 100644 index 0000000..b258ee8 --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/tests/json/ec_add/mod.rs @@ -0,0 +1,25 @@ +use serde::{Deserialize, Serialize}; + +use crate::bn254::tests::json::types::RawG1Point; + +/// Path to the test cases for EC addition +const EC_ADD_TEST_CASES: &str = include_str!("ecadd_tests.json"); + +// --- EC Add tests --- + +#[derive(Clone, Debug, Deserialize, Serialize)] +pub struct ECAddTestCase { + pub point_1: RawG1Point, + pub point_2: RawG1Point, + pub expected: RawG1Point, +} + +#[derive(Clone, Debug, Deserialize, Serialize)] +pub struct ECAddTestCases { + pub tests: Vec, +} + +/// Load EC addition test cases from the file +pub(in super::super) fn load_ec_add_test_cases() -> ECAddTestCases { + serde_json::from_str(&EC_ADD_TEST_CASES).expect("Failed to deserialize") +} diff --git a/crates/zkevm_circuits/src/bn254/tests/json/ec_mul/decomposition_tests.json b/crates/zkevm_circuits/src/bn254/tests/json/ec_mul/decomposition_tests.json new file mode 100644 index 0000000..c84d74a --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/tests/json/ec_mul/decomposition_tests.json @@ -0,0 +1,74 @@ +{ + "tests": [ + { + "k": "15310371241001622231792573671034611146751398180949444714681938262507259021376", + "k1": "31493387514781804819799587401213100432", + "k1_negated": false, + "k2": "151157157702727883088007207684649152593", + "k2_negated": true + }, + { + "k": "5968109632458944725585630137251814127900275934231084115272299218230903918742", + "k1": "148368310044984819298439648426363465247", + "k1_negated": false, + "k2": "70436765875676106276307438959739202343", + "k2_negated": true + }, + { + "k": "1742498084139980620251305439875895103323009640850145693178755079904652572667", + "k1": "79390217055891588613575440186243325333", + "k1_negated": false, + "k2": "43691974796562340303443556971705007273", + "k2_negated": true + }, + { + "k": "12435158121183200268140084484429025814293561617370699983291622298140646353039", + "k1": "52263466019978366513411579391808259690", + "k1_negated": false, + "k2": "147621535299651720294363510087868210346", + "k2_negated": true + }, + { + "k": "17338514797382288172543346539328634339587720299195401471586177872534374281412", + "k1": "69637526295134927809587812840081959570", + "k1_negated": false, + "k2": "116242088082134145330112269101732161198", + "k2_negated": true + }, + { + "k": "4424259225288216396589498511088720282107929032919356608555421459560833194920", + "k1": "91771513616118559935694594721410146722", + "k1_negated": false, + "k2": "57839291307811184798433275825492233393", + "k2_negated": true + }, + { + "k": "12703330644849743193798861201554125235863198764416081532769166352996028110428", + "k1": "70304310444027999311628774683115887163", + "k1_negated": false, + "k2": "18942669441150157207684220257508261454", + "k2_negated": true + }, + { + "k": "8779674889540996071735414813021738730093065101253818851641949545992578872205", + "k1": "49277213207367892196602854559228360108", + "k1_negated": false, + "k2": "146797052628359847097274906309483172946", + "k2_negated": true + }, + { + "k": "10908826393692157466283479854939993281909445730438484613349035400366196560258", + "k1": "144199595830261842889193902907642090635", + "k1_negated": false, + "k2": "152612964910770730162553831008213365471", + "k2_negated": true + }, + { + "k": "18719334488860627500369957823428539212555536533361315655716333592432086088405", + "k1": "78693297012568138413531716443444140114", + "k1_negated": false, + "k2": "84127714618519115178173319957441990163", + "k2_negated": true + } + ] +} \ No newline at end of file diff --git a/crates/zkevm_circuits/src/bn254/tests/json/ec_mul/ecmul_tests.json b/crates/zkevm_circuits/src/bn254/tests/json/ec_mul/ecmul_tests.json new file mode 100644 index 0000000..208b37a --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/tests/json/ec_mul/ecmul_tests.json @@ -0,0 +1,15 @@ +{ + "tests": [ + { + "point": { + "x": "14097009101881959050629049093828651584107527035947797050538346806411625303116", + "y": "6928765890834363798765710535428389975333897900712784906653282110125786142062" + }, + "scalar": "13650076562025738285589406854928154499107354233219361696036823113035450875054", + "expected": { + "x": "11299373567935086735078551232826217925502745784801646334636571278818215743539", + "y": "18836805603793619172102959251973968032345476967462197112983508530862248992053" + } + } + ] +} \ No newline at end of file diff --git a/crates/zkevm_circuits/src/bn254/tests/json/ec_mul/mod.rs b/crates/zkevm_circuits/src/bn254/tests/json/ec_mul/mod.rs new file mode 100644 index 0000000..6a77604 --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/tests/json/ec_mul/mod.rs @@ -0,0 +1,48 @@ +use serde::{Deserialize, Serialize}; + +use crate::bn254::tests::json::types::RawG1Point; + +/// Path to the test cases for scalar decomposition +const DECOMPOSITION_TEST_CASES: &str = include_str!("decomposition_tests.json"); +/// Path to the test cases for scalar multiplication +const EC_MUL_TEST_CASES: &str = include_str!("ecmul_tests.json"); + +// --- Scalar decomposition tests --- + +#[derive(Clone, Debug, Deserialize, Serialize)] +pub struct DecompositionTestCase { + pub k: String, + pub k1: String, + pub k2: String, + pub k1_negated: bool, + pub k2_negated: bool, +} + +#[derive(Clone, Debug, Deserialize, Serialize)] +pub struct DecompositionTestCases { + pub tests: Vec, +} + +/// Load scalar decomposition test cases from the file +pub(in super::super) fn load_decomposition_test_cases() -> DecompositionTestCases { + serde_json::from_str(&DECOMPOSITION_TEST_CASES).expect("Failed to deserialize") +} + +// --- EC multiplication tests --- + +#[derive(Clone, Debug, Deserialize, Serialize)] +pub struct MultiplicationTestCase { + pub point: RawG1Point, + pub scalar: String, + pub expected: RawG1Point, +} + +#[derive(Clone, Debug, Deserialize, Serialize)] +pub struct MultiplicationTestCases { + pub tests: Vec, +} + +/// Load scalar multiplication test cases from the file +pub(in super::super) fn load_multiplication_test_cases() -> MultiplicationTestCases { + serde_json::from_str(&EC_MUL_TEST_CASES).expect("Failed to deserialize") +} diff --git a/crates/zkevm_circuits/src/bn254/tests/json/ec_pairing/final_exp_tests.json b/crates/zkevm_circuits/src/bn254/tests/json/ec_pairing/final_exp_tests.json new file mode 100644 index 0000000..353dd8b --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/tests/json/ec_pairing/final_exp_tests.json @@ -0,0 +1,66 @@ +{ + "tests": [ + { + "scalar": { + "c0": { + "c0": { + "c0": "20312633753038786093269739873062989402602851464548169583409767763829026887850", + "c1": "2485082331943831303497175390294856657098356273726008002787340101113324295266" + }, + "c1": { + "c0": "1387135772991945289220818513112602807125730727513747060062192013116715678989", + "c1": "1646554705698558291421841936749422737691759555247918864011993615087386872491" + }, + "c2": { + "c0": "6995233206933964540653742116938881862995245253754373978939651648018583124862", + "c1": "361866917393880370815793660085981331533426326913490506648463234187595087168" + } + }, + "c1": { + "c0": { + "c0": "17477680652664670498414236641052691942281879363367353169091978339590215614842", + "c1": "13554897148532708374080108419413737917871974207996538329263597373851294041636" + }, + "c1": { + "c0": "11155718265906966587568114874059376458811005404686197196702206367076323557053", + "c1": "10685931376970546541253515500218434742409767781979477811888656051986058492844" + }, + "c2": { + "c0": "8110663953051888669203457266460516408035807101560226786565009728708052125283", + "c1": "8590221890187842399384114278249794597937117787587213323747544798417890434071" + } + } + }, + "expected": { + "c0": { + "c0": { + "c0": "3152542147195674254889114490305211903772383773507354957314514761278028375182", + "c1": "11820086222439179056974577221772220131951093462991090757940758601229281808551" + }, + "c1": { + "c0": "1509040705213404033867854277817947714678790115784579328425591233034737715209", + "c1": "15045716725684246601688124369840862643299171090522344445692242186964916820752" + }, + "c2": { + "c0": "13656341076652649634009866948782154165305842143705827791731411100246491866112", + "c1": "10369954651019328077719208218012463258983467481868470256254556255390354289485" + } + }, + "c1": { + "c0": { + "c0": "11392000270870902361849429136148337374580443586585904628852574771919002036583", + "c1": "4896104549363139839528186443928595917286302690441630811076895246312241475839" + }, + "c1": { + "c0": "20455259723769685168664730759385379005071130229929997817270537576329896740499", + "c1": "11202822030516893990320448160573725645146636878491239760546343634517829530120" + }, + "c2": { + "c0": "7213095925555210990429392791573915496814887565180099743686640369227105468304", + "c1": "4736804165405817534434566658988611875022066702604202465352738309570821902643" + } + } + } + } + ] +} \ No newline at end of file diff --git a/crates/zkevm_circuits/src/bn254/tests/json/ec_pairing/g2_tests.json b/crates/zkevm_circuits/src/bn254/tests/json/ec_pairing/g2_tests.json new file mode 100644 index 0000000..c075f04 --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/tests/json/ec_pairing/g2_tests.json @@ -0,0 +1,112 @@ +{ + "tests": [ + { + "point_1": { + "x": { + "c0": "11016612458842271769461966029885531201383349914240709986414071247196761888059", + "c1": "3870110645167542852192315832385717402758335683482335446667047751078339666638" + }, + "y": { + "c0": "18585127967387741574623763693375269888158986094703230206960790510469636407478", + "c1": "21545054564491436522884729274748021633783633134079818579191356196052015469963" + } + }, + "point_2": { + "x": { + "c0": "12858170832736402504021958435841850272465038090270533724138382533586062221010", + "c1": "4714332947168937166425349500611227046406524258367648902022086700049615304801" + }, + "y": { + "c0": "12615151343293009269008467100356797701472297448561452023367090135273883131323", + "c1": "13771609804900765582639483915716529306746295676332512312929079708159949143598" + } + }, + "expected": { + "sum": { + "x": { + "c0": "11077060761947531556314211935136433060908206937251981908963051530636275929750", + "c1": "19805009531450612785040625591134143501520942186445723458503840624214697579116" + }, + "y": { + "c0": "6425065022407797267075004684208080105691282133347929956346990225999627409497", + "c1": "3592156344666668602803729652581582756083884160408142679313644783928021814819" + } + }, + "point_1_double": { + "x": { + "c0": "20993917944604288329367345051115836219913146652912345806851446602594453975199", + "c1": "874529363081095096408970708328068600962410892720018472793385870816119856862" + }, + "y": { + "c0": "19052948899749306857950908558307583884909169341548487754432507858686539861049", + "c1": "3840025072120815415947978099970966392755404261359752689641192348732700674570" + } + }, + "point_2_double": { + "x": { + "c0": "7112510710721800796634698342659888501297988161725651725200757661373815682889", + "c1": "17946832898202003895438194982681033026632307905644781699621181572902772995590" + }, + "y": { + "c0": "12332930077057269228022322847907065788594288138726840893003527504936548522999", + "c1": "18556929378161062196077578302567592029966650020442460253117141345217639648338" + } + } + } + }, + { + "point_1": { + "x": { + "c0": "5837415305740787266144248631406968875955555967508129130469495726249249118267", + "c1": "902434892986303906565560772933024266664393481470657342492311808106788243364" + }, + "y": { + "c0": "19148921991410789937249428279626798133696757120280939720947129040013070775667", + "c1": "16019012862288597826112107089956322531263295765039929207032042697687219672910" + } + }, + "point_2": { + "x": { + "c0": "20128511433844918629119800502454343221725610393731016148630216770387394019206", + "c1": "11223806784437768540581364546871051258436994071041921113345920652031526593971" + }, + "y": { + "c0": "20798709454647994095017702531475159537101657255721014817436717573075153983601", + "c1": "12369008752545529147628759451171815943039887793220520836686416678178498526408" + } + }, + "expected": { + "sum": { + "x": { + "c0": "1685173230813775083885847326927457127354999207517154027177308076066014903229", + "c1": "3084981068183900704784926317188992904391311609229764654748688290306057089267" + }, + "y": { + "c0": "7216078213625351746842704322948633734996595036455608162743050183881061092680", + "c1": "8860795636365416802528052645470007242496999028201826762449104774708185989637" + } + }, + "point_1_double": { + "x": { + "c0": "20725933316603874717309076092236214985473660092103039313180497269650936979386", + "c1": "13026353358558893506394747491402504206460926245534353189419455960211714268546" + }, + "y": { + "c0": "3052979555421674283400011935195855255685787595024596696346809077922376890217", + "c1": "4562882744600070454780201174998367807393931964058638605727935357942008606665" + } + }, + "point_2_double": { + "x": { + "c0": "2429457933665075672330570948452333734914844358657940571671352777700142494906", + "c1": "17455431236169470106427602771298086366786963698873608327410192298751912766382" + }, + "y": { + "c0": "17946942543837645957562226051827853461905758014240062980525829794554215867599", + "c1": "21497798821923139910149258031533030520971023401636185956328525172906493127999" + } + } + } + } + ] +} \ No newline at end of file diff --git a/crates/zkevm_circuits/src/bn254/tests/json/ec_pairing/line_functions_tests.json b/crates/zkevm_circuits/src/bn254/tests/json/ec_pairing/line_functions_tests.json new file mode 100644 index 0000000..275c41a --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/tests/json/ec_pairing/line_functions_tests.json @@ -0,0 +1,128 @@ +{ + "tests": [ + { + "g2_point_1": { + "x": { + "c0": "13845111258248265841207291232778373584688747774186460353788854457445866301955", + "c1": "14147748271260795198423046058752971770549509307448282234399200615893197965861" + }, + "y": { + "c0": "18244257565685277958549320079433576258081791054706118282432559697862252730239", + "c1": "8039927945326496318156660690192698195621802448281071621298320480277289329630" + } + }, + "g2_point_2": { + "x": { + "c0": "3050116870347814832499366566205533961853542178176771525307367587231955967973", + "c1": "16889244797310768828773915342349819972485698594341621446487433431424749426787" + }, + "y": { + "c0": "15111085398939272470729531761585423359521750435695796044672810168059911148879", + "c1": "2093412655666400787049674149262668929791357264224356673936629888313282463746" + } + }, + "g1_point": { + "x": "4408476794956713424055184174181243352331180705990788996326924191067298600538", + "y": "9450525580871038168684461779069680684830291817244895932162074641714547922966" + }, + "expected": { + "doubling_1": { + "point": { + "x": { + "c0": "17555066961327838262380669534241307604192329057351883531617972281823885045763", + "c1": "19834986168858771156774757684121125461820376183297559378020489339159331395730" + }, + "y": { + "c0": "3768664985482680471560177731242123306884751600027128241348077601817999734287", + "c1": "15690414838136146258485667558523564850236330330579082652953033142767638350771" + } + }, + "c0": { + "c0": "11453372376435061050352507474044505510984872694400874722524320609653522340632", + "c1": "10449678573139881976892103211395535434951600191178922545608082169707138985107" + }, + "c3": { + "c0": "15607356381782481689315448043482519733269263532425860833233465229050705438379", + "c1": "21323118479566875922511455261622006643953795453023209979350180532906360369622" + }, + "c4": { + "c0": "9642176552196699764661625110694682372199043318245565891676217475292259429364", + "c1": "325112000705458005642029393857114703389993763732024433148646282648263602616" + } + }, + "doubling_2": { + "point": { + "x": { + "c0": "12097204851112787796306422048134382651277645098721823808923510440288191180950", + "c1": "11288356852112191569793906708278199045583901399643409892338630471166657219852" + }, + "y": { + "c0": "17031657318925020184957076858088623846695654077733144323578427808044046317049", + "c1": "6638165127276481409698189251441528907282195206299232122059017784790061261599" + } + }, + "c0": { + "c0": "3577589666954543052880360649100536168850503948300580636949176213871143578877", + "c1": "16213967535388911991471237140152751585203083490759177974926860704305385571773" + }, + "c3": { + "c0": "8475814173407864041886504285053484420035037258478722526287591430740575216052", + "c1": "6784338227116610735521087453521838605268059680632927766402667275532559379153" + }, + "c4": { + "c0": "6408260031304224429278465216636689308171781769763932260175974219420946844617", + "c1": "2418069921243942542096593929157988426808275265390755906731730928045921223800" + } + }, + "addition": { + "point": { + "x": { + "c0": "16760684642512855194501464849589635818591074396299840425569902148329140329533", + "c1": "20112300495221409125182770552414043880727938816234140745363738823082434880125" + }, + "y": { + "c0": "5961753729366726792585609439665542433940900035915734458155736472831937892111", + "c1": "7360926419097862110482148193060327763882639861597421808827142937426729847438" + } + }, + "c0": { + "c0": "10588946060910378809512401774197184865735919635925122348584283093542654429843", + "c1": "16892604367356903771834495560898299054764394279647861377474762596823600160125" + }, + "c3": { + "c0": "17751558182429345366332141088842468702748229179833803703501123783814017366098", + "c1": "18648155210642245934001235363813799870653744251671724347834230854231660301281" + }, + "c4": { + "c0": "8664060677689701994111083613465760963377401642569263696649777717390283256389", + "c1": "20706323342185445438048814780307997794136571423061104767927098698884912243046" + } + }, + "doubling_1_and_addition": { + "point": { + "x": { + "c0": "6193435103237132034813596018771760394654791427078630723894702088058996868063", + "c1": "18711480128427606664228142606081305083645147406974256167476377423577926073978" + }, + "y": { + "c0": "13032311226791697246695302717315195055518007169754120470428706658206811236762", + "c1": "3072483897581499647938119055741593487995115762956758125682884470302130049649" + } + }, + "c0": { + "c0": "7713145129811640331018050481933300881428106264956852797950602311193893675852", + "c1": "3974193993110148378507159034087310828868578779645281896242624140620398575786" + }, + "c3": { + "c0": "16322286798827670288938077359933700625355712921044885638032844625055854983835", + "c1": "6874591297680177537910270378755090762857675085382085945667909504865967108788" + }, + "c4": { + "c0": "13197534421781255110240028565203245859441321444368660900114653054178213750598", + "c1": "439967959113139292605278149130590724241404069790607229490594969162024259417" + } + } + } + } + ] +} \ No newline at end of file diff --git a/crates/zkevm_circuits/src/bn254/tests/json/ec_pairing/mod.rs b/crates/zkevm_circuits/src/bn254/tests/json/ec_pairing/mod.rs new file mode 100644 index 0000000..a60393e --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/tests/json/ec_pairing/mod.rs @@ -0,0 +1,131 @@ +use super::types::RawFq2; +use crate::bn254::tests::json::types::{RawFq12, RawG1Point, RawG2Point}; +use serde::{Deserialize, Serialize}; + +/// Test cases for G2 Curve +const G2_CURVE_TEST_CASES: &str = include_str!("g2_tests.json"); +/// Test cases for line/tangent functions evaluation +const LINE_FUNCTION_TEST_CASES: &str = include_str!("line_functions_tests.json"); +/// Test cases for easy exponentiation +const FINAL_EXP_TEST_CASES: &str = include_str!("final_exp_tests.json"); +/// Test cases for pairing evaluation +const PAIRING_TEST_CASES: &str = include_str!("pairing_tests.json"); +/// Ttest cases for invalid subgroup checks +const INVALID_SUBGROUP_CHECKS: &str = include_str!("pairing_invalid_subgroup_tests.json"); + +// --- G2 Tests --- +#[derive(Clone, Debug, Deserialize, Serialize)] +pub struct G2TestCase { + pub point_1: RawG2Point, + pub point_2: RawG2Point, + pub expected: G2ExpectedValue, +} + +#[derive(Clone, Debug, Deserialize, Serialize)] +pub struct G2ExpectedValue { + pub sum: RawG2Point, + pub point_1_double: RawG2Point, + pub point_2_double: RawG2Point, +} + +#[derive(Clone, Debug, Deserialize, Serialize)] +pub struct G2TestCases { + pub tests: Vec, +} + +/// Load [`G2TestCases`] from the local `.json` file +pub(in super::super) fn load_g2_curve_test_cases() -> G2TestCases { + serde_json::from_str(&G2_CURVE_TEST_CASES).expect("Failed to deserialize") +} + +// --- Line function tests --- +#[derive(Clone, Debug, Deserialize, Serialize)] +pub struct LineFunctionTestCase { + pub g2_point_1: RawG2Point, + pub g2_point_2: RawG2Point, + pub g1_point: RawG1Point, + pub expected: LineFunctionExpectedValue, +} + +#[derive(Clone, Debug, Deserialize, Serialize)] +pub struct LineFunctionExpectedValue { + pub doubling_1: LineFunctionEvaluationValue, + pub doubling_2: LineFunctionEvaluationValue, + pub addition: LineFunctionEvaluationValue, + pub doubling_1_and_addition: LineFunctionEvaluationValue, +} + +#[derive(Clone, Debug, Deserialize, Serialize)] +pub struct LineFunctionEvaluationValue { + pub point: RawG2Point, + pub c0: RawFq2, + pub c3: RawFq2, + pub c4: RawFq2, +} + +#[derive(Clone, Debug, Deserialize, Serialize)] +pub struct LineFunctionTestCases { + pub tests: Vec, +} + +/// Load [`LineFunctionTestCases`] from the local `.json` file +pub(in super::super) fn load_line_function_test_cases() -> LineFunctionTestCases { + serde_json::from_str(&LINE_FUNCTION_TEST_CASES).expect("Failed to deserialize") +} + +// --- Final exponentiation tests --- + +#[derive(Clone, Debug, Deserialize, Serialize)] +pub struct FinalExpTestCase { + pub scalar: RawFq12, + pub expected: RawFq12, +} + +#[derive(Clone, Debug, Deserialize, Serialize)] +pub struct FinalExpTestCases { + pub tests: Vec, +} + +/// Load [`FinalExpTestCases`] from the local `.json` file +pub(in super::super) fn load_final_exp_test_cases() -> FinalExpTestCases { + serde_json::from_str(&FINAL_EXP_TEST_CASES).expect("Failed to deserialize") +} + +// --- Pairing tests --- +#[derive(Clone, Debug, Deserialize, Serialize)] +pub struct PairingTestCase { + pub g1_point: RawG1Point, + pub g2_point: RawG2Point, + pub miller_loop: RawFq12, + pub pairing: RawFq12, +} + +#[derive(Clone, Debug, Deserialize, Serialize)] +pub struct PairingTestCases { + pub tests: Vec, +} + +/// Load [`PairingTestCases`] test cases from the local `.json` file +pub(in super::super) fn load_pairing_test_cases() -> PairingTestCases { + serde_json::from_str(&PAIRING_TEST_CASES).expect("Failed to deserialize") +} + +// --- Invalid subgroup tests --- +#[derive(Clone, Debug, Deserialize, Serialize)] +pub struct PairingInvalidSubgroupTestCase { + pub g1_point: RawG1Point, + pub g2_point: RawG2Point, + pub g1_point_doubled: RawG1Point, + pub g2_point_doubled: RawG2Point, +} + +#[derive(Clone, Debug, Deserialize, Serialize)] +pub struct PairingInvalidSubgroupTestCases { + pub tests: Vec, +} + +/// Load [`PairingInvalidSubgroupTestCases`] from the local `.json` file +pub(in super::super) fn load_pairing_invalid_subgroup_test_cases() -> PairingInvalidSubgroupTestCases +{ + serde_json::from_str(&INVALID_SUBGROUP_CHECKS).expect("Failed to deserialize") +} diff --git a/crates/zkevm_circuits/src/bn254/tests/json/ec_pairing/pairing_invalid_subgroup_tests.json b/crates/zkevm_circuits/src/bn254/tests/json/ec_pairing/pairing_invalid_subgroup_tests.json new file mode 100644 index 0000000..118ef34 --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/tests/json/ec_pairing/pairing_invalid_subgroup_tests.json @@ -0,0 +1,34 @@ +{ + "tests": [ + { + "g1_point": { + "x": "1542002030717039801166987493764464577349094798553896441634967319108573987029", + "y": "18204713660533603111936834571447826437964956293806666169049911155129179411420" + }, + "g2_point": { + "x": { + "c0": "20160130957366818890572234908164011481675931167153750888157997304086010902332", + "c1": "15489029737862396930872042203347505151383627844920180028916402944725573464761" + }, + "y": { + "c0": "20041702227880804754221534482715556255903109557987443609119824508377574909785", + "c1": "13529056866977531180243996714120456308626842085142757598449095803993427451715" + } + }, + "g1_point_doubled": { + "x": "16004876224523794237609643763147228106275451041767682120131892591977847286655", + "y": "20609803710779131940304710979224962197530416108201762066689323115477099640799" + }, + "g2_point_doubled": { + "x": { + "c0": "20614705518617520093408708810917120862720951142212945827228563910735580185906", + "c1": "2556701727602970147339424416217942436659797567640119229413745482156313951798" + }, + "y": { + "c0": "8233489299585353496818577941582584834447779498383719733641936661773430315918", + "c1": "20898533883449560406483009955301168715147200069594073514268635969693237351173" + } + } + } + ] +} \ No newline at end of file diff --git a/crates/zkevm_circuits/src/bn254/tests/json/ec_pairing/pairing_tests.json b/crates/zkevm_circuits/src/bn254/tests/json/ec_pairing/pairing_tests.json new file mode 100644 index 0000000..5b49853 --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/tests/json/ec_pairing/pairing_tests.json @@ -0,0 +1,80 @@ +{ + "tests": [ + { + "g1_point": { + "x": "19524768848687397556721735917866761825907193744327128139775046987410815333601", + "y": "19363059270136277796269305953932872992286861584468131157696744198106219775157" + }, + "g2_point": { + "x": { + "c0": "5603933137025622103542049519479095893832087087930711293734463992212068367170", + "c1": "9654833522440068617282721551532335152561875134231536980495857516822008675717" + }, + "y": { + "c0": "7622894847571744546652140599287002136924641168850118989811330210316464102867", + "c1": "19528038356930009805549655720849282534494206293496294102297097499960007451924" + } + }, + "miller_loop": { + "c0": { + "c0": { + "c0": "14575201258352074854624554026467184801433826140610903821501127699542444641398", + "c1": "11292391013746934148884345909116610854784496921796087951841512287445747770399" + }, + "c1": { + "c0": "20859290851202288480477568195917346348360670929620555361047974629514000204973", + "c1": "5371370905491462047515282265490762180983373707862464332092081780253563636031" + }, + "c2": { + "c0": "17329198474141206419582804713524406580823502077201487443753657319245999455009", + "c1": "21754836868315428719542990690611426551114906367252076750815120659710840967781" + } + }, + "c1": { + "c0": { + "c0": "1051885491619678496705772186161062930015757313420268884575883255536493695505", + "c1": "10723082539986659107986103939671866920642421746827381288538610601560980684411" + }, + "c1": { + "c0": "318810360715539860780268581384968154894205466439283274244762389439809291765", + "c1": "11570646990287446032739612243515814312930601490387717318709007751978351501051" + }, + "c2": { + "c0": "8827154716249833080859944113778037287949374918166376661559529040194344460938", + "c1": "6286660486915255615970226697788383329484797494869215562457274305225739614004" + } + } + }, + "pairing": { + "c0": { + "c0": { + "c0": "10855967511769540789539733281837615858145528042069488069777776689797800345328", + "c1": "18194589827644292656523178065779045655345216822799057304286372423350840952205" + }, + "c1": { + "c0": "2007911600267441375115683931107861687724950823432392347484719484601937707222", + "c1": "13297266568744539870455600844595295197205356620463452500238226880420389502227" + }, + "c2": { + "c0": "10725455721279022552345901114901222604976096983374964113862127803047102330855", + "c1": "14210289722683777824344646695081509957903224647905392454481618534547935646339" + } + }, + "c1": { + "c0": { + "c0": "6789082405223921478546505042727263895818458289962291971730370034256066811478", + "c1": "15409826274495236313209402079206163121301903669968399334685176651008859662444" + }, + "c1": { + "c0": "1944697678983681254206958621951456845449778790258465165698384595003154981785", + "c1": "10809083786693849669075611697095706086659307065050156154229145582482349969766" + }, + "c2": { + "c0": "14665926446675975121093395802448801485621511625307468517335734583109116102301", + "c1": "8186117301051404860786865921753991082727486813493952186590319157382177463777" + } + } + } + } + ] +} \ No newline at end of file diff --git a/crates/zkevm_circuits/src/bn254/tests/json/field_extensions/fq12_tests.json b/crates/zkevm_circuits/src/bn254/tests/json/field_extensions/fq12_tests.json new file mode 100644 index 0000000..8212636 --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/tests/json/field_extensions/fq12_tests.json @@ -0,0 +1,598 @@ +{ + "tests": [ + { + "scalar_1": { + "c0": { + "c0": { + "c0": "8692736232277803937692884407715344244952805233240368017854589021011142348895", + "c1": "7281195822357537492154389624942910616814584730148169963775218861475754267004" + }, + "c1": { + "c0": "48417659478392102721461677398288794044430403475560327357698147123034676829", + "c1": "1970627199639990430109815941264543785758624035029616165560341585317634545271" + }, + "c2": { + "c0": "8852068566272329503142105707981980100011957931489010644696879634599831293004", + "c1": "15616782919424138723844442186624050765310792100406960112124285369319006460655" + } + }, + "c1": { + "c0": { + "c0": "16452922533921149620678537547247389967170590057001474819082686054981205713584", + "c1": "14367542817695963788106833399802593447091032812427557023282598740964390633845" + }, + "c1": { + "c0": "595133794543983661500921521118476544588850389033368057423096050532374916848", + "c1": "1280285007380446422601462393074489293044653330739109963647109056391765284831" + }, + "c2": { + "c0": "19239815146871287099177424235824793492197558386124564609203883169395227549260", + "c1": "6157592989890665533188381437748756808035737312757109970386583112108865197393" + } + } + }, + "scalar_2": { + "c0": { + "c0": { + "c0": "4580262381415460637273634880787451864951529796243304512905070571082916074005", + "c1": "18250994842800267783708585702107517305136017771964240742270102159277232432533" + }, + "c1": { + "c0": "20680606046846976439820207663077935440041656693708318329164998881293233313779", + "c1": "5606087157018432840195667643603580793881156028829269862260729838803728737429" + }, + "c2": { + "c0": "7723943751018948772425690826837994355558735094755216087777031519813646003605", + "c1": "12514259484602993922193150213037543320458821646003826259481187088594621376806" + } + }, + "c1": { + "c0": { + "c0": "12958700155568605319628204600245136503558651317801248608104546669327244503868", + "c1": "9170356863915793522117566860670239313933273752849362350181561052641407921930" + }, + "c1": { + "c0": "19611297886922330877326195989667811691168945758724740271573107696099241722432", + "c1": "7476155699358493405116548545003666146363842625341194514773248268765722992299" + }, + "c2": { + "c0": "15617195145577355133839653429234118031067170959818000911698086102363836120030", + "c1": "9074637195678076619310036016415450900537401301064643156181564153867813529758" + } + } + }, + "c0": { + "c0": "4258241499673071007795467490644134052341883551998118536031927534518157046598", + "c1": "1384394532926310420915672358815426630390984435742557372835040348592019237126" + }, + "c1": { + "c0": "2797715348349895305029097722184004302028832746704591145652419797026057993109", + "c1": "12482889615696089662650089867863667292094078129096444795773391079604175378699" + }, + "c3": { + "c0": "2275549420707452443779320130603238229827937513854199168062245080344669315557", + "c1": "20174782418767944323593840821302592656975566434023321395903871708108103804780" + }, + "c4": { + "c0": "21155938722078341638904525888835161002117149753759834698244380239200846703770", + "c1": "5934445134088776419860712465734632314955181370174267317025451455327853264411" + }, + "c5": { + "c0": "17795466901177148180996649820649507239824955353287929754659700490514027510345", + "c1": "13397883560358917296561569651749131624923500727882211948408728529326206517003" + }, + "expected": { + "sum": { + "c0": { + "c0": { + "c0": "13272998613693264574966519288502796109904335029483672530759659592094058422900", + "c1": "3643947793318530053616569581793152833254291344814587043356283126107760490954" + }, + "c1": { + "c0": "20729023706325368542541669340476224234086087097183878656522697028416267990608", + "c1": "7576714356658423270305483584868124579639780063858886027821071424121363282700" + }, + "c2": { + "c0": "16576012317291278275567796534819974455570693026244226732473911154413477296609", + "c1": "6242799532187857423791186654404318997073302589112962708916434563268401628878" + } + }, + "c1": { + "c0": { + "c0": "7523379817650479718060336402235251382032930217504899764498194829663224008869", + "c1": "1649656809772482087977994515215557672327995407979095710775121898960572347192" + }, + "c1": { + "c0": "20206431681466314538827117510786288235757796147758108328996203746631616639280", + "c1": "8756440706738939827718010938078155439408495956080304478420357325157488277130" + }, + "c2": { + "c0": "12968767420609367010770671919801636434568418188644741858212931377113837460707", + "c1": "15232230185568742152498417454164207708573138613821753126568147265976678727151" + } + } + }, + "difference": { + "c0": { + "c0": { + "c0": "4112473850862343300419249526927892380001275436997063504949518449928226274890", + "c1": "10918443851396544930692209668092668400374878115481752884194154596843748043054" + }, + "c1": { + "c0": "1256054484470690885147659759577628442699084867065065660881737160475027571633", + "c1": "18252782914460832812160554042918238080573779163498169965988649641159132016425" + }, + "c2": { + "c0": "1128124815253380730716414881143985744453222836733794556919848114786185289399", + "c1": "3102523434821144801651291973586507444851970454403133852643098280724385083849" + } + }, + "c1": { + "c0": { + "c0": "3494222378352544301050332947002253463611938739200226210978139385653961209716", + "c1": "5197185953780170265989266539132354133157759059578194673101037688322982711915" + }, + "c1": { + "c0": "2872078779460928006421131276707939942116215787606451448539026249078359402999", + "c1": "15692372179861228239731319593328098235377121862695739111562898682271268501115" + }, + "c2": { + "c0": "3622620001293931965337770806590675461130387426306563697505797067031391429230", + "c1": "18971198666051864136124751166590580996194647168990290476894056852886277876218" + } + } + }, + "product": { + "c0": { + "c0": { + "c0": "17948445037169139212905004234647513053948256886466714839439127644108053335586", + "c1": "18068562079851522073575414192497331784305433176870158592370296481776830388103" + }, + "c1": { + "c0": "3746788112409971270620418305754980585094177309232039976454839230088165975566", + "c1": "5144139671725799468206868715214676400394654198211648569739558901767536026545" + }, + "c2": { + "c0": "17177179904141218932023150594799495810345678708398809406874884343432974078113", + "c1": "2070536938361437075008101737016955231460885086188447993777793009446037234266" + } + }, + "c1": { + "c0": { + "c0": "3246977592737200211156819362430652321186426203792245289342042674855982450054", + "c1": "18302739745992292433116631541874711999184981063083301444903720750104526045279" + }, + "c1": { + "c0": "6337547445983288976340859515271178844594000647010192132736120203914055191798", + "c1": "9923706931569787514974626379597498366043886484700122183868842788375483815194" + }, + "c2": { + "c0": "2855447597864677796099210131406871025897798301070997446262129014590406599605", + "c1": "8754336822859801576919674806924962470896500814520385327587253244845787187602" + } + } + }, + "product_c0c3c4": { + "c0": { + "c0": { + "c0": "1655551748466971385534257224302268233451374409634826765112752779957245559101", + "c1": "3396176365025180176542925799360693135902597098826752328888636141858360858998" + }, + "c1": { + "c0": "7803284322170486988349258765539723296849706506612009630239723015383394275003", + "c1": "8264402305041438536059992042888880151920103440176728360188014044354819120675" + }, + "c2": { + "c0": "9428878136623488403786212115605390129215151376339481472039494272854557735380", + "c1": "21721760868537329802752119391872765982889209790664388714684977667324258258820" + } + }, + "c1": { + "c0": { + "c0": "3859965390662131297737450995818914657295308454714006248590972878841735754762", + "c1": "8171753152724645800275426008439458386634446937862205633571233154103631811661" + }, + "c1": { + "c0": "2720831299713190906525691983465366774712236623585277839226621257907882379703", + "c1": "5731095665468625834687030375909560362703711853075317055678966395083700229282" + }, + "c2": { + "c0": "8601675926134387584105827623705774587082195502057445802577117786493503823328", + "c1": "12154958399407002659676991544809486923603661638232675060218966874043162293137" + } + } + }, + "product_c0c1c4": { + "c0": { + "c0": { + "c0": "6233651557553867691028638487589396196411624537303187995564705803345616712359", + "c1": "6723564505053814199437036347657064669480539847908704546675478981861070508666" + }, + "c1": { + "c0": "5924047276589824494301294934676793165812627355631691605110054556122784826994", + "c1": "4737365888515574888596210561798053679298278961291240924361229065926080698974" + }, + "c2": { + "c0": "2890917302124644161772609452443882152598190604931254949205799671984156977842", + "c1": "10944852872096680293862820426796307999696346765375908927459622929222010052404" + } + }, + "c1": { + "c0": { + "c0": "5105640401110530738786588793861737700127922584540384576123886662821434089328", + "c1": "1881468677330676876918978735520160840886413424825915526197561387354893755161" + }, + "c1": { + "c0": "8447534208083911728695391640413386594892235926285118244013863583009012458794", + "c1": "14605598134657667437811111485001711851679736836310679907504304063135893794576" + }, + "c2": { + "c0": "1264119315664555732558183331960309817743072395385672058725545730619690384846", + "c1": "5633146313121086197725670399856556632154710914125287743298973043547407826922" + } + } + }, + "product_c5": { + "c0": { + "c0": { + "c0": "2958166962623158278761700409618506603243746741888202333521485532986958860468", + "c1": "10506645436121412080735260176669566745710703810512725641966262662458957750739" + }, + "c1": { + "c0": "15113355994277442203803228179341455171713389489536039031390640579796223724400", + "c1": "8795742500022899853636216199562793742284361119188258013084490462100913200819" + }, + "c2": { + "c0": "1706081536269641370882232899594748023823686090428068133520246610902855440102", + "c1": "20172785368110543021979042256185762675713307280089239433477485852382334360784" + } + }, + "c1": { + "c0": { + "c0": "20226605668081766685544893011998368954995256885198260500317143878877562588555", + "c1": "11305004046644950355695469251829243373412709307221088229431164413088831980410" + }, + "c1": { + "c0": "9653265105770424991498984690702200391867261800121321484447651194596712183079", + "c1": "17246904460983698441097353035526956676433861688214727467341410169496010390492" + }, + "c2": { + "c0": "961345027354093051951471546127562452307228609542130253766126658840538349798", + "c1": "7496326479792062696271366437386063666540837596042065523274027112712971510549" + } + } + }, + "quotient": { + "c0": { + "c0": { + "c0": "16924389213726414192658899987010632724186261248834010190927466458178546586783", + "c1": "8435963674113831647599510500142629630578132521277439904016354307490140454987" + }, + "c1": { + "c0": "5144143680203118838738017966129927984162325297177782385978648012039147451500", + "c1": "14243610334043300806451025052982407296095105752418711897354156215435363310734" + }, + "c2": { + "c0": "15997285656307826096419090824695208442454706416835334656476030403305840059532", + "c1": "2022160207024136561954207312687395845197224725233990286763507322202281459575" + } + }, + "c1": { + "c0": { + "c0": "21503532381799632784312005473857656611722706399630662539264299516379431455852", + "c1": "17360803185492378659945614366006064782953712269260395675065451151102462445533" + }, + "c1": { + "c0": "8945176242574950103043131808660424169463642484692492225288350156434115447130", + "c1": "7985987618076471623114436005886233358661340790003166007690387185174087792782" + }, + "c2": { + "c0": "7403208137467896548360564711334438047418974073977431763333716652862827596205", + "c1": "494268604561663701215696419973659094148005718282872865275155296313528046407" + } + } + }, + "scalar_1_inverse": { + "c0": { + "c0": { + "c0": "14942510940114732030963187850689886602782735407724145234308246308429891430110", + "c1": "3937118312419337494604682448158441857036593350389691489286399700851569587736" + }, + "c1": { + "c0": "15425926299135365895265952048465306552942913352817293326117870462794543332245", + "c1": "16430823078468523523644395756768537279352311560728904572592873535041007490133" + }, + "c2": { + "c0": "18133386817900361024052436631875810277434930172264954216454354206023630513349", + "c1": "7191512916211526998096742421492667650887725053056908311562778754197934496904" + } + }, + "c1": { + "c0": { + "c0": "1044988586300901899362942373815436040314260530560780510010920834879027013421", + "c1": "7311679036230695360867170731183378657775715657520690652511013666741518605770" + }, + "c1": { + "c0": "9848801089956584412579704003768634566429717016873672353080003215268749509921", + "c1": "11412863786683716854798185992740287511850053520070677984602603383500193980422" + }, + "c2": { + "c0": "14157737273909660978236633988328354863903927071169225184276640941553612674267", + "c1": "20959874889124020141505773697463653903751810685671790063880267387343854967782" + } + } + }, + "scalar_1_square": { + "c0": { + "c0": { + "c0": "21888160906421261103008725016924336694383709696031119571949419322159603898183", + "c1": "12536479127433152387021594040754713315286554856621356519901573022444250293020" + }, + "c1": { + "c0": "5859669429971306444379228868187444243956439007384371761598929183034890287137", + "c1": "17997233285261525215631848822152431695639220794374114181265950083488974195643" + }, + "c2": { + "c0": "16510960731915307157720704030696261756905238664607062816385353533719705097081", + "c1": "19844202195901685021465600560871059765953367355582351072713862202081889951332" + } + }, + "c1": { + "c0": { + "c0": "19234069154459670075959079288004283800962602829337018809952670602664086373690", + "c1": "3205012934077098617460489291513838749346291461451540573991635008091936675384" + }, + "c1": { + "c0": "18418260157281715622414655023937133507898924542422127348384664576292464460675", + "c1": "8958188160692424479539880978946602944287480489395471957870210224444758859824" + }, + "c2": { + "c0": "3954191206967518171382412750559738245114020566223377283684122648905192388472", + "c1": "2192480075625626548034334804742019748467921182440064860115689682375245176434" + } + } + }, + "scalar_1_frobenius_1": { + "c0": { + "c0": { + "c0": "8692736232277803937692884407715344244952805233240368017854589021011142348895", + "c1": "14607047049481737730092016120314364471881726427149653698913819033169471941579" + }, + "c1": { + "c0": "14480780469116613365976259083529534566298342304492441643100914307878420391151", + "c1": "510051819370989872067619861352736130914235634059065260580927820310497560938" + }, + "c2": { + "c0": "6673837733798259617568378817999916067856715072612741328187386537409639002437", + "c1": "11067188246063051631617617725550366692861558575586395041530505495679225279803" + } + }, + "c1": { + "c0": { + "c0": "14378505599863574448538987331508619215323243367455136443695089119926539960036", + "c1": "468355666429486189717761598570381035279153966306147838559363122647277837049" + }, + "c1": { + "c0": "21262598785151141267035267576959995296164645993318108168258102491639353709635", + "c1": "18710861695164482576069298407591183717212461233729799241430265992075524445476" + }, + "c2": { + "c0": "13426837435295853951721497609191088424014035488732925103313925246070221530575", + "c1": "4164016133480337261961322902566914786163649658890336053979444975569047498290" + } + } + }, + "scalar_2_frobenius_2": { + "c0": { + "c0": { + "c0": "4580262381415460637273634880787451864951529796243304512905070571082916074005", + "c1": "18250994842800267783708585702107517305136017771964240742270102159277232432533" + }, + "c1": { + "c0": "18778359386210553827281572420060499675193616412039728115254754983333453002911", + "c1": "8200559503892738592926552904092983464573767050813399052175707633434176914016" + }, + "c2": { + "c0": "14139837590526488153301922699731562494637519496536814148242662592695450927131", + "c1": "294227540260634680948967044120077630484970761544831146991860238478765713425" + } + }, + "c1": { + "c0": { + "c0": "18399859784725660724830348250406432382857186365685070364092507600182881072510", + "c1": "4530101273905963480077230734156906679095013301634392550207243461748352829769" + }, + "c1": { + "c0": "2276944984916944344920209755589463397527365398573083391115930198545984486151", + "c1": "14412087172480781817129857200253608942332468531956629147915789625879503216284" + }, + "c2": { + "c0": "21326402156214244713116859171043988633373962829777856303434905100446781708355", + "c1": "16374951407903603723352579880493116501189294217219144642721138194995700229142" + } + } + }, + "scalar_1_frobenius_3": { + "c0": { + "c0": { + "c0": "8692736232277803937692884407715344244952805233240368017854589021011142348895", + "c1": "14607047049481737730092016120314364471881726427149653698913819033169471941579" + }, + "c1": { + "c0": "9835333856690865800365726686683067221987855948510568894925826523283740840074", + "c1": "4906380478573989331873904244901229915258112307091067013920560867261351086900" + }, + "c2": { + "c0": "7064238448456162935809430522704908056115347985147566427042434841249273694777", + "c1": "8930510657954870173706613622151659249024470269717253455972021495199041821719" + } + }, + "c1": { + "c0": { + "c0": "10047728740208800699809603980149251717877603328259282823061381375361279481954", + "c1": "6725747436556213416788983624227060584770980257468761098269606653455958563280" + }, + "c1": { + "c0": "625644086688133955211138168297279792531665163979715494430935403005872498948", + "c1": "3177381176674792646177107337666091371483849923568024421258771902569701763107" + }, + "c2": { + "c0": "11801752097716306154471765165903423439405522693446910910881691152459081135708", + "c1": "13157541689318110560206865110865286778177860025109477765607471525985042692642" + } + } + }, + "scalar_1_pow_33": { + "c0": { + "c0": { + "c0": "5831844836005445583731748128452424197543585346925951782076864144293423870316", + "c1": "18189462991021361863288880472899085624007964312679617455167541634404128921919" + }, + "c1": { + "c0": "11294993824855284175910348456450754637727359147499660343196773051894273506606", + "c1": "11390858907426142137972697391712660283316646011044815417231452424510296795962" + }, + "c2": { + "c0": "5487802736379581965437582474841686111816854279175471225686090210485278549489", + "c1": "9984404054462760785150226459208675068507134927559481040800930546598948700061" + } + }, + "c1": { + "c0": { + "c0": "19663678676124257626435637891308384928824369257157622410296259079344152657858", + "c1": "11215422602644345603564940545897461220122906976551663634333172713658810035509" + }, + "c1": { + "c0": "17234195424678575675166135502028936338622392632579322752132102674509963064006", + "c1": "6612129522198094631589655618330710895798462272782048236928270922780141637570" + }, + "c2": { + "c0": "8774406211616760060113826981879638482500891649329964816234961142538005682925", + "c1": "13087889671287646296226491021368248775891702991065804131337878183259251791844" + } + } + }, + "scalar_2_pow_67": { + "c0": { + "c0": { + "c0": "13668003863772893544802092661085303622974361357063080866005456147815447684545", + "c1": "15413577366938627960548102391601804339484179874957237934986969801679834883866" + }, + "c1": { + "c0": "2629860136033537440706374405409218686061749845009812129891252526410393941268", + "c1": "7165376901390379838571823403027070586697577593661667494704135984664802807196" + }, + "c2": { + "c0": "7682775142695279616493930500002953023457928958528895557022107020244857512093", + "c1": "21791422184242138497921825690239754640953424956997334675795554899858823551260" + } + }, + "c1": { + "c0": { + "c0": "19535514851084737836853252759906454136068168020080241059261731623328964629663", + "c1": "18767018526708630220556860879528009180461069275537771060964422597301672948553" + }, + "c1": { + "c0": "9064615572748222825880807753244780934142911701966481593044439829868644082152", + "c1": "2758367225516894754249626579610599617905409003821205089974219252961568838104" + }, + "c2": { + "c0": "2904019534149851236530059549382274541225979312632560352200378080006534439627", + "c1": "525699263873348428729095458572575262662122673928360224203548094613512081016" + } + } + }, + "scalar_1_pow_u": { + "c0": { + "c0": { + "c0": "15993687334454340197408639225043588933523674574821680299087296534404706628474", + "c1": "15832285000948181651764163149879106554567936063650912365091337386263997122761" + }, + "c1": { + "c0": "15217407873618446399584381327667364704220489399835849278828837320342603768423", + "c1": "8808166748486316074909769015600111215606787510867979610134253236983538542299" + }, + "c2": { + "c0": "5130566643402688077884851862347002928915013458139425390502829329969425783899", + "c1": "2765322856296844075011192188670552201786676196778520762205296233823807025145" + } + }, + "c1": { + "c0": { + "c0": "5900806187411860390928278429456127519686629587000251292835285958776338170058", + "c1": "1338330919117372193062419124243945485984455600158970245106710962628341548215" + }, + "c1": { + "c0": "18098682657873073381930421169013835823236848510348791738421165258149046475646", + "c1": "10058339444174013398070217160276713703820976773541240040319104499200291436056" + }, + "c2": { + "c0": "17818370565003872465537614834259217855750170042268799365069795343719719715322", + "c1": "5757802582383079120371964616993567808640380091404620389326357014833634639356" + } + } + }, + "scalar_1_pow_u2": { + "c0": { + "c0": { + "c0": "4463882321440599079977272620642866724441842209687157943401243266438049816398", + "c1": "11816121668655103642191179217779878771728104575729380044450829852910046776266" + }, + "c1": { + "c0": "16934512421827051569303803702042497789782645429326050563978959843335083631456", + "c1": "1088339439172926395620040209474779722773244457493560007925941193363995677940" + }, + "c2": { + "c0": "15509997634214604718566189353016763842450099962682784233831998464074551015670", + "c1": "4909616280451441759583800613528253571568714187494288547723624268064290135277" + } + }, + "c1": { + "c0": { + "c0": "19236879275581260155748209619355492963538189091233701803874278648742561609437", + "c1": "12290009738003411674812160836234915694175328058184609170404990908245936050552" + }, + "c1": { + "c0": "19198523955300633404113600303910165955453317333965103921272838454860203631249", + "c1": "1798414728900473196684995362339044827845043791007238606504021621899302589472" + }, + "c2": { + "c0": "1864227315718629199826697560086798049452416454778308732198659659135604033087", + "c1": "2057187941927401662614619500954817269034556277363591909810152725515618240811" + } + } + }, + "scalar_1_pow_u3": { + "c0": { + "c0": { + "c0": "11734393921544801710961303151821601019011553407709942543395363537628459684089", + "c1": "5899024140376431066390660566362237374727164375545567654484284800257562730313" + }, + "c1": { + "c0": "15023999879318412738185132651509805669563038884240667836524258306809257559724", + "c1": "11275221144308401757820380599024805321664658231307289635280269188237476905823" + }, + "c2": { + "c0": "8144589958253911956953745718509996721206460131930587973124454171045437049845", + "c1": "16582764365314250821368611596451802291466138799648298709111566277508457009861" + } + }, + "c1": { + "c0": { + "c0": "2031949422959870421865394289135876857207042815158751987199183485438612147542", + "c1": "2039581068594728383132303043306337576213757108851184562525991860974949725084" + }, + "c1": { + "c0": "1203769357998267956619450261299847123381043866454361189485672017811600584286", + "c1": "17510410960621359184529559106738990164711931474379411341036047455695869247861" + }, + "c2": { + "c0": "7242976492096396345446364301005103286373370442421794091313844926578924760897", + "c1": "2852596857085022733409131942723388817071981253461711164536043547279406041369" + } + } + } + } + } + ] +} \ No newline at end of file diff --git a/crates/zkevm_circuits/src/bn254/tests/json/field_extensions/fq2_tests.json b/crates/zkevm_circuits/src/bn254/tests/json/field_extensions/fq2_tests.json new file mode 100644 index 0000000..d80e6b6 --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/tests/json/field_extensions/fq2_tests.json @@ -0,0 +1,184 @@ +{ + "tests": [ + { + "scalar_1": { + "c0": "987871005737363709356487440813035700220895417662346062301219300040009932184", + "c1": "11758903672698754814230280429270516769807400892076755341060811261690659957087" + }, + "scalar_2": { + "c0": "5099332129511507267239141131558805062136056806810450315718160086531349751169", + "c1": "1232812927227887144216935763912540143494561268338317492256329532935630893791" + }, + "expected": { + "sum": { + "c0": "6087203135248870976595628572371840762356952224472796378019379386571359683353", + "c1": "12991716599926641958447216193183056913301962160415072833317140794626290850878" + }, + "difference": { + "c0": "17776781748065131664363752054511505726781149768149719409272097108153886389598", + "c1": "10526090745470867670013344665357976626312839623738437848804481728755029063296" + }, + "product": { + "c0": "15773000055915093230557556394634749880998247416234367252629427463453029598401", + "c1": "11506343027797105998606545229466188996532190478543710267144043497602936199063" + }, + "quotient": { + "c0": "15187705397056915470926641187804135638265957336197259898109763663378589833444", + "c1": "3881245092916445361426746274568485676454356274314506930045955001201566956641" + }, + "scalar_1_non_residue": { + "c0": "19020178250776793792224512283304079620876969024182182882339200333314655641152", + "c1": "19265032572669056148443388323218586273702258817161849481092369076675044711635" + }, + "frobenius_6": { + "c0": "987871005737363709356487440813035700220895417662346062301219300040009932184", + "c1": "11758903672698754814230280429270516769807400892076755341060811261690659957087" + } + } + }, + { + "scalar_1": { + "c0": "8434578988899806861433860528947024914112609673317269973660309602879841455755", + "c1": "21266751654876047291615282971417813889319666957074949754623138671365667430329" + }, + "scalar_2": { + "c0": "6625712806446901591857465522047265561840888311047275710428198080961390832790", + "c1": "12288786670895125986011558789809188779810513418852372825890898400869873959343" + }, + "expected": { + "sum": { + "c0": "15060291795346708453291326050994290475953497984364545684088507683841232288545", + "c1": "11667295453931898055380436015969727580433869218629498917824999177590315181089" + }, + "difference": { + "c0": "1808866182452905269576395006899759352271721362269994263232111521918450622965", + "c1": "8977964983980921305603724181608625109509153538222576928732240270495793470986" + }, + "product": { + "c0": "21429309785213312187083918687721126150872578495012156974748447187183097378978", + "c1": "884034525508031060705106274955033597561833366209879869632343968398754801479" + }, + "quotient": { + "c0": "16449554434998358126757607382871395299447005821958919957869809513926621936293", + "c1": "11061286557537688506105049612978138031266561787894287675107199912330782381469" + }, + "scalar_1_non_residue": { + "c0": "10867973501543664016796650298590860160301197788184832682941571965262453254300", + "c1": "2841158036230755485753755564391874119722811871311404801067216593363812451469" + }, + "frobenius_6": { + "c0": "8434578988899806861433860528947024914112609673317269973660309602879841455755", + "c1": "21266751654876047291615282971417813889319666957074949754623138671365667430329" + } + } + }, + { + "scalar_1": { + "c0": "9087795789604159848555863543750910909913901708552624319803950457158829085165", + "c1": "2718909169069027988496470337393704339125604392176450482819426523716323416291" + }, + "scalar_2": { + "c0": "11183180154922519647596582674356986920939871541746596758810509196370677605167", + "c1": "1251107138282136270442251461410817743809026632672536838106689443569039230113" + }, + "expected": { + "sum": { + "c0": "20270975944526679496152446218107897830853773250299221078614459653529506690332", + "c1": "3970016307351164258938721798804522082934631024848987320926115967285362646404" + }, + "difference": { + "c0": "19792858506520915423205686614651199077670341324103851223682479155433377688581", + "c1": "1467802030786891718054218875982886595316577759503913644712737080147284186178" + }, + "product": { + "c0": "3110244988264573098799979950773205337001248396380843973079502567684958697037", + "c1": "14645012520049699364513429081043389746215387042630793693697919926212066972920" + }, + "quotient": { + "c0": "12957773495795621157656539550342425296032258250102679362394071270869870306849", + "c1": "12589838072802460329130752528871694121892637621688685381526765168446888398144" + }, + "scalar_1_non_residue": { + "c0": "13406524321850584981767084320592668584010577512903697407349013906777459724445", + "c1": "11669735439386136522777690835036974873348030080842855002489751275960513623201" + }, + "frobenius_6": { + "c0": "9087795789604159848555863543750910909913901708552624319803950457158829085165", + "c1": "2718909169069027988496470337393704339125604392176450482819426523716323416291" + } + } + }, + { + "scalar_1": { + "c0": "4693202516360067804972740076710433303625916387442350369862727669200281965918", + "c1": "12667794720828305311870627683388345145169876265797870704607365051529176654550" + }, + "scalar_2": { + "c0": "21450574944212823176139163168587475074802646111791213223371793096093012637617", + "c1": "6496401542575574599343473449167640100301949608089183335371403602219737273876" + }, + "expected": { + "sum": { + "c0": "4255534588733615758865497500040633289732251341935739930545482870648068394952", + "c1": "19164196263403879911214101132555985245471825873887054039978768653748913928426" + }, + "difference": { + "c0": "5130870443986519851079982653380233317519581432948960809179972467752495536884", + "c1": "6171393178252730712527154234220705044867926657708687369235961449309439380674" + }, + "product": { + "c0": "9368195764326911814267701044947934151212976418725278983326930610111456585614", + "c1": "3343297303588042739577099231819617802489187767431891918731570798987104395300" + }, + "quotient": { + "c0": "16631987647266121910481418435984692792013407843230902553029819964163526157840", + "c1": "16119197535409584735432439886600635193519403480628178120141935758164856432288" + }, + "scalar_1_non_residue": { + "c0": "7682785054573029710637627261748279498767060063885458961468146076628134830129", + "c1": "9262140644618439500576360500919164166673246993134068397883823659736740813953" + }, + "frobenius_6": { + "c0": "4693202516360067804972740076710433303625916387442350369862727669200281965918", + "c1": "12667794720828305311870627683388345145169876265797870704607365051529176654550" + } + } + }, + { + "scalar_1": { + "c0": "2967382055341605566988636961264779227829088957592529447656664605514874786306", + "c1": "9097103154394471521934155838399051878091594963655623706797944989955231632036" + }, + "scalar_2": { + "c0": "10734645437093156653704614785823223136719158000229653169241038345712016871487", + "c1": "9699541445726934419358081385415994694336108646277513997120907687140915762775" + }, + "expected": { + "sum": { + "c0": "13702027492434762220693251747088002364548246957822182616897702951226891657793", + "c1": "18796644600121405941292237223815046572427703609933137703918852677096147394811" + }, + "difference": { + "c0": "14120979490087724135530427920698831179806242114660699941104664154448084123402", + "c1": "21285804580506812324822480198240332272451797474675933372366075197459542077844" + }, + "product": { + "c0": "16643909529749681549130429575059738894797497592083807699029425859807864607885", + "c1": "15895443735448208391064872203271715863538268327756205587407834192574000568672" + }, + "quotient": { + "c0": "14075501724993393485100140024230204355193139571355385468189955577345482628032", + "c1": "11509659303860350515823332997794864412571853643888197170442400024333434884627" + }, + "scalar_1_non_residue": { + "c0": "17609335343679978580963576812983961172370205654677141322112036459678641444718", + "c1": "19176581829374023597656822271084420864564510158599671820771055831176280848881" + }, + "frobenius_6": { + "c0": "2967382055341605566988636961264779227829088957592529447656664605514874786306", + "c1": "9097103154394471521934155838399051878091594963655623706797944989955231632036" + } + } + } + ] +} \ No newline at end of file diff --git a/crates/zkevm_circuits/src/bn254/tests/json/field_extensions/fq6_tests.json b/crates/zkevm_circuits/src/bn254/tests/json/field_extensions/fq6_tests.json new file mode 100644 index 0000000..cd817fa --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/tests/json/field_extensions/fq6_tests.json @@ -0,0 +1,230 @@ +{ + "tests": [ + { + "scalar_1": { + "c0": { + "c0": "16069381093288108441038829376247398020823772856002837443331252532457383194827", + "c1": "1724907268346992253621779613535173759607458486855925258622344996107322456415" + }, + "c1": { + "c0": "21115575989383551843606734037965470493217752321975005713486245968058441004127", + "c1": "11018674796872596737355093928914154366569305818408134262393160692147410361995" + }, + "c2": { + "c0": "5757749717050431474888432455541715294896668688637874596489908494297242427471", + "c1": "4199139255907711865004306925907843700210114004133299763934016205809971756846" + } + }, + "scalar_2": { + "c0": { + "c0": "6689190672710302960589586133515200829100529911814149000352568575424996454993", + "c1": "17549333883375510623622455340503727953399304317028387464280732989812526736599" + }, + "c1": { + "c0": "19437152061675348039867543382292648574835096866343693716498051665251034345261", + "c1": "2774402674064792821791199671134640455652283923530502375403118374046227076453" + }, + "c2": { + "c0": "10007095420619209999369897289690532500281692147466139295894305198124275114573", + "c1": "13064171183710618105457258240029298326379813123866805808483830054136011840506" + } + }, + "c0": { + "c0": "1707646855631418612285567130136937948759472422014031524806966286406439167533", + "c1": "13082178268391844789325801284346895372572813480891000630208152652110646271707" + }, + "c1": { + "c0": "2005002920123542260412436369769406211944779867818058062193791320703397691084", + "c1": "11240754100673360689936342533313412199868965931856474502331415730233256739603" + }, + "c2": { + "c0": "11227748488778558293526730929403832174115078189525345359613511047587021565615", + "c1": "15894461911648840551794561803966702837546452014403153993983978328762400402534" + }, + "expected": { + "sum": { + "c0": { + "c0": "870328894159136179382009764505323761227991610519162780994783213237153441237", + "c1": "19274241151722502877244234954038901713006762803884312722903077985919849193014" + }, + "c1": { + "c0": "18664485179219624661227871675000843979356538031020875767295259738664249140805", + "c1": "13793077470937389559146293600048794822221589741938636637796279066193637438448" + }, + "c2": { + "c0": "15764845137669641474258329745232247795178360836104013892384213692421517542044", + "c1": "17263310439618329970461565165937142026589927128000105572417846259945983597352" + } + }, + "difference": { + "c0": { + "c0": "9380190420577805480449243242732197191723242944188688442978683957032386739834", + "c1": "6063816256810756852245730018288720894904465327125361457030649900940021928399" + }, + "c1": { + "c0": "1678423927708203803739190655672821918382655455631311996988194302807406658866", + "c1": "8244272122807803915563894257779513910917021894877631886990042318101183285542" + }, + "c2": { + "c0": "17638897168270496697764940911108457883311287698469558963284641190818193521481", + "c1": "13023210944036368981793454431135820462526612037564317618139224046319186124923" + } + }, + "product": { + "c0": { + "c0": "16196614761282682465420135225462608542718687832374686622676368583156770810853", + "c1": "11293269326626982275727653179727086810764892254829717383756921596542396138601" + }, + "c1": { + "c0": "12101412284365333215841869989812654303767110371478018224290508982378359679628", + "c1": "16032634364727074075141197479741189058812407121648517864015344281016538383697" + }, + "c2": { + "c0": "7806313237130847073234144119838760900976314206645431678840166202482493045271", + "c1": "4116288752057455686311259529081743390422946050011792058111870519149233061324" + } + }, + "quotient": { + "c0": { + "c0": "1033722181940462618900080660817903496143913742539828918553761531147920288579", + "c1": "7190806578669258097908218276019200497793669363019826798069590445671668233622" + }, + "c1": { + "c0": "12538429660868033674464488249383035049847661677752125493866167689075212882280", + "c1": "19884802717114328916666938958204192398467818043067976865357850595266609933971" + }, + "c2": { + "c0": "9119059900319520295777372118121286058825645881563790330294754628425354616036", + "c1": "21087896487507285107089204642749042239661089916459028711473731638810493753541" + } + }, + "product_c1": { + "c0": { + "c0": "21164617538006608642409410418603517347075934716005846332065805978376785912721", + "c1": "16783984393215898972688063799866773746378840842182020723244354132640911472391" + }, + "c1": { + "c0": "18025862559525387754916009120021653008371042212393053080474967002563487345993", + "c1": "11129142559318936148164396264173243003169884118444738121205011149171401526837" + }, + "c2": { + "c0": "11740309523240086796967941596028991804934258559706571264159133478287858798839", + "c1": "20926694617833425719414816582787668890967212113490249921148663301966651464309" + } + }, + "product_c0c1": { + "c0": { + "c0": "19244645511998101952373702146468109041804831688700367986507266187487117113893", + "c1": "17887729967889074547284288811047946352027027402534915319349026838983902796545" + }, + "c1": { + "c0": "20631219437263164568256570846720866864217147687601672117271594879501509618039", + "c1": "18910762373027266240891432590552356789028870252197058582455016596454753968873" + }, + "c2": { + "c0": "5584816456658614320793712458537141026170716813989325358819882282350114166737", + "c1": "4876000603459243099837954672059723095317319594112288699196495963346107905787" + } + }, + "product_c2": { + "c0": { + "c0": "1122936572376227539828470739726661771781145902575921015056402037746050289981", + "c1": "10450373799712081591068049007830887709802765841665706983566096989368784062158" + }, + "c1": { + "c0": "13502816430181179956900006069414160264052857820426093544935916305316729541312", + "c1": "6710487835676193344257799068806284777958393224418741902761585478831890760303" + }, + "c2": { + "c0": "3843898004253419673922195126605560454813087561911224336667194296014572024728", + "c1": "19685198385113632300922249521829990861926794181728017463801845657747229896769" + } + }, + "scalar_1_inverse": { + "c0": { + "c0": "15827940097001498543755155748945834622606885540912198008233094946612437938429", + "c1": "8648062890501237493318564624933904453715449848380371175448634238427804327053" + }, + "c1": { + "c0": "3345067466500397652601978024161992898020689070059426432628988744124445934382", + "c1": "1201763887724044289388524973567715609141374956725362731602454312524397240107" + }, + "c2": { + "c0": "19008421861502138159004123755329343678181434910851311269759355274495424712769", + "c1": "557034919109944743868217485422933565194975918790001573594761250284902874342" + } + }, + "scalar_1_square": { + "c0": { + "c0": "10383020732921284770165489335450266017729274131207054264865007288039317850114", + "c1": "18953581739444888730719059494389982595733957420263162485451990399386033013331" + }, + "c1": { + "c0": "9452897971276030422856155242933361198403776059728243501521032239516537946247", + "c1": "10438604342547965236045208154015698922038688402373150070340595565936913880238" + }, + "c2": { + "c0": "9471316299527631750580980889327038224965870759940846918224423931993030218253", + "c1": "21155124678395414886755437649688352849000349883215468115259888425615591311495" + } + }, + "scalar_1_non_residue": { + "c0": { + "c0": "3844122453867620964498773683453043776467281879011924279097084453574757673227", + "c1": "21661760148380563037680789043455033508091383568539748809207016451941762030502" + }, + "c1": { + "c0": "16069381093288108441038829376247398020823772856002837443331252532457383194827", + "c1": "1724907268346992253621779613535173759607458486855925258622344996107322456415" + }, + "c2": { + "c0": "21115575989383551843606734037965470493217752321975005713486245968058441004127", + "c1": "11018674796872596737355093928914154366569305818408134262393160692147410361995" + } + }, + "scalar_1_frobenius_1": { + "c0": { + "c0": "16069381093288108441038829376247398020823772856002837443331252532457383194827", + "c1": "20163335603492282968624626131722101329088852670441898404066692898537903752168" + }, + "c1": { + "c0": "20713456990530999523682589156990230558037134310142106636195387126431030881606", + "c1": "5318176576318583389071429778087417599690230810931707568609826626504057969598" + }, + "c2": { + "c0": "11443488851666944122055100305772841816517347474904154086948098757538309842948", + "c1": "19038901882933397032525050189836995994561253301627778801845856743103107912266" + } + }, + "scalar_2_frobenius_2": { + "c0": { + "c0": "6689190672710302960589586133515200829100529911814149000352568575424996454993", + "c1": "17549333883375510623622455340503727953399304317028387464280732989812526736599" + }, + "c1": { + "c0": "8727361713051001886934916322923127911810515953591777233724546834800631410954", + "c1": "16725601943415147587971248598683586482182512241374187477445152548311684309537" + }, + "c2": { + "c0": "21051980576504595947575293314493384022176913348111610156733823437029522381555", + "c1": "5182025982407974939735411415252869415931734955556694221230986828287337027002" + } + }, + "scalar_1_frobenius_3": { + "c0": { + "c0": "16069381093288108441038829376247398020823772856002837443331252532457383194827", + "c1": "20163335603492282968624626131722101329088852670441898404066692898537903752168" + }, + "c1": { + "c0": "3664925572168594544344241892362301569448996940278856089747643129239985635199", + "c1": "17906195186858083154992085804219351993823436452770580836855670866581662357058" + }, + "c2": { + "c0": "20166111079016907619184233352603084849388981630400362795020673859239440675298", + "c1": "4488531522791205968227893584504490099093763619167816115636178621307402085712" + } + } + } + } + ] +} \ No newline at end of file diff --git a/crates/zkevm_circuits/src/bn254/tests/json/field_extensions/mod.rs b/crates/zkevm_circuits/src/bn254/tests/json/field_extensions/mod.rs new file mode 100644 index 0000000..3772a04 --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/tests/json/field_extensions/mod.rs @@ -0,0 +1,123 @@ +use serde::{Deserialize, Serialize}; + +use crate::bn254::tests::json::types::{RawFq12, RawFq2, RawFq6}; + +/// Path to the test cases for Fq2 operations +const FQ2_TEST_CASES: &str = include_str!("fq2_tests.json"); +/// Path to the test cases for Fq6 operations +const FQ6_TEST_CASES: &str = include_str!("fq6_tests.json"); +/// Path to the test cases for Fq6 operations +const FQ12_TEST_CASES: &str = include_str!("fq12_tests.json"); + +// --- Fq2 tests --- + +#[derive(Clone, Debug, Deserialize, Serialize)] +pub struct Fq2TestCase { + pub scalar_1: RawFq2, + pub scalar_2: RawFq2, + pub expected: Fq2ExpectedValue, +} + +#[derive(Clone, Debug, Deserialize, Serialize)] +pub struct Fq2ExpectedValue { + pub sum: RawFq2, + pub difference: RawFq2, + pub product: RawFq2, + pub quotient: RawFq2, + pub scalar_1_non_residue: RawFq2, + pub frobenius_6: RawFq2, +} + +#[derive(Clone, Debug, Deserialize, Serialize)] +pub struct Fq2TestCases { + pub tests: Vec, +} + +/// Load Fq2 test cases from the file +pub(in super::super) fn load_fq2_test_cases() -> Fq2TestCases { + serde_json::from_str(&FQ2_TEST_CASES).expect("Failed to deserialize") +} + +// --- Fq6 Test Cases --- + +#[derive(Clone, Debug, Deserialize, Serialize)] +pub struct Fq6TestCase { + pub scalar_1: RawFq6, + pub scalar_2: RawFq6, + pub c0: RawFq2, + pub c1: RawFq2, + pub c2: RawFq2, + pub expected: Fq6ExpectedValue, +} + +#[derive(Clone, Debug, Deserialize, Serialize)] +pub struct Fq6ExpectedValue { + pub sum: RawFq6, + pub difference: RawFq6, + pub product: RawFq6, + pub quotient: RawFq6, + pub product_c1: RawFq6, + pub product_c0c1: RawFq6, + pub product_c2: RawFq6, + pub scalar_1_inverse: RawFq6, + pub scalar_1_square: RawFq6, + pub scalar_1_non_residue: RawFq6, + pub scalar_1_frobenius_1: RawFq6, + pub scalar_2_frobenius_2: RawFq6, + pub scalar_1_frobenius_3: RawFq6, +} + +#[derive(Clone, Debug, Deserialize, Serialize)] +pub struct Fq6TestCases { + pub tests: Vec, +} + +/// Load `Fq6` test cases from the file +pub(in super::super) fn load_fq6_test_cases() -> Fq6TestCases { + serde_json::from_str(&FQ6_TEST_CASES).expect("Failed to deserialize") +} + +// --- Fq12 Test Cases --- + +#[derive(Clone, Debug, Deserialize, Serialize)] +pub struct Fq12TestCase { + pub scalar_1: RawFq12, + pub scalar_2: RawFq12, + pub c0: RawFq2, + pub c1: RawFq2, + pub c3: RawFq2, + pub c4: RawFq2, + pub c5: RawFq2, + pub expected: Fq12ExpectedValue, +} + +#[derive(Clone, Debug, Deserialize, Serialize)] +pub struct Fq12ExpectedValue { + pub sum: RawFq12, + pub difference: RawFq12, + pub product: RawFq12, + pub quotient: RawFq12, + pub scalar_1_inverse: RawFq12, + pub scalar_1_square: RawFq12, + pub product_c0c3c4: RawFq12, + pub product_c0c1c4: RawFq12, + pub product_c5: RawFq12, + pub scalar_1_frobenius_1: RawFq12, + pub scalar_2_frobenius_2: RawFq12, + pub scalar_1_frobenius_3: RawFq12, + pub scalar_1_pow_33: RawFq12, + pub scalar_2_pow_67: RawFq12, + pub scalar_1_pow_u: RawFq12, + pub scalar_1_pow_u2: RawFq12, + pub scalar_1_pow_u3: RawFq12, +} + +#[derive(Clone, Debug, Deserialize, Serialize)] +pub struct Fq12TestCases { + pub tests: Vec, +} + +/// Load `Fq12` test cases from the file +pub(in super::super) fn load_fq12_test_cases() -> Fq12TestCases { + serde_json::from_str(&FQ12_TEST_CASES).expect("Failed to deserialize") +} diff --git a/crates/zkevm_circuits/src/bn254/tests/json/mod.rs b/crates/zkevm_circuits/src/bn254/tests/json/mod.rs new file mode 100644 index 0000000..580aaf4 --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/tests/json/mod.rs @@ -0,0 +1,45 @@ +use ec_pairing::PairingInvalidSubgroupTestCases; +use lazy_static::lazy_static; + +use self::{ + algebraic_torus::TorusTestCases, + ec_add::ECAddTestCases, + ec_mul::{DecompositionTestCases, MultiplicationTestCases}, + ec_pairing::{FinalExpTestCases, G2TestCases, LineFunctionTestCases, PairingTestCases}, + field_extensions::{Fq12TestCases, Fq2TestCases, Fq6TestCases}, +}; + +pub mod algebraic_torus; +pub mod ec_add; +pub mod ec_mul; +pub mod ec_pairing; +pub mod field_extensions; +pub mod types; + +// All tests gathered in one place +lazy_static! { + /// Test cases for EC addition + pub static ref EC_ADD_TEST_CASES: ECAddTestCases = ec_add::load_ec_add_test_cases(); + /// Test cases for scalar decomposition + pub static ref DECOMPOSITION_TEST_CASES: DecompositionTestCases = ec_mul::load_decomposition_test_cases(); + /// Test cases for scalar multiplication + pub static ref EC_MUL_TEST_CASES: MultiplicationTestCases = ec_mul::load_multiplication_test_cases(); + /// Test cases for `Fq2` operations + pub static ref FQ2_TEST_CASES: Fq2TestCases = field_extensions::load_fq2_test_cases(); + /// Test cases for `Fq6` operations + pub static ref FQ6_TEST_CASES: Fq6TestCases = field_extensions::load_fq6_test_cases(); + /// Test cases for `Fq12` operations + pub static ref FQ12_TEST_CASES: Fq12TestCases = field_extensions::load_fq12_test_cases(); + /// Test cases for `G2` operations + pub static ref G2_CURVE_TEST_CASES: G2TestCases = ec_pairing::load_g2_curve_test_cases(); + /// Test cases for Line function operations + pub static ref LINE_FUNCTION_TEST_CASES: LineFunctionTestCases = ec_pairing::load_line_function_test_cases(); + /// Test cases for easy exponentiation + pub static ref FINAL_EXP_TEST_CASES: FinalExpTestCases = ec_pairing::load_final_exp_test_cases(); + /// Test cases for pairing bilinearity + pub static ref PAIRING_TEST_CASES: PairingTestCases = ec_pairing::load_pairing_test_cases(); + /// Test cases for pairing invalid subgroup checks + pub static ref INVALID_SUBGROUP_TEST_CASES: PairingInvalidSubgroupTestCases = ec_pairing::load_pairing_invalid_subgroup_test_cases(); + /// Test cases for algebraic torus operations + pub static ref TORUS_TEST_CASES: TorusTestCases = algebraic_torus::load_torus_test_cases(); +} diff --git a/crates/zkevm_circuits/src/bn254/tests/json/types.rs b/crates/zkevm_circuits/src/bn254/tests/json/types.rs new file mode 100644 index 0000000..268e6c9 --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/tests/json/types.rs @@ -0,0 +1,163 @@ +// Helper utils for testing + +use std::sync::Arc; + +use boojum::cs::traits::cs::ConstraintSystem; +use boojum::{ + field::goldilocks::GoldilocksField, + pairing::{ + bn256::{Fq12, Fq2, Fq6}, + ff::PrimeField, + }, +}; +use serde::{Deserialize, Serialize}; + +use crate::bn254::{tests::utils::cs::bn254_base_field_params, BN256Fq}; +use crate::bn254::{ + BN256BaseNNField, BN256Fq12NNField, BN256Fq2NNField, BN256Fq6NNField, BN256SWProjectivePoint, + BN256SWProjectivePointTwisted, +}; + +type F = GoldilocksField; +type P = GoldilocksField; + +/// Representation of an elliptic curve point in raw form (as strings) +#[derive(Clone, Debug, Serialize, Deserialize)] +pub struct RawG1Point { + pub x: String, + pub y: String, +} + +impl RawG1Point { + /// Converts a raw point to a projective point + pub fn to_projective_point>( + &self, + cs: &mut CS, + ) -> BN256SWProjectivePoint { + let base_params = Arc::new(bn254_base_field_params()); + + let x = BN256Fq::from_str(self.x.as_str()).unwrap(); + let y = BN256Fq::from_str(self.y.as_str()).unwrap(); + + let x_nn = BN256BaseNNField::allocate_checked(cs, x, &base_params); + let y_nn = BN256BaseNNField::allocate_checked(cs, y, &base_params); + + BN256SWProjectivePoint::::from_xy_unchecked(cs, x_nn, y_nn) + } + + /// Converts a raw point to a the tuple of allocated coordinates `(x, y)` + pub fn to_coordinates>( + &self, + cs: &mut CS, + ) -> (BN256BaseNNField, BN256BaseNNField) { + let base_params = Arc::new(bn254_base_field_params()); + + let x = BN256Fq::from_str(self.x.as_str()).unwrap(); + let y = BN256Fq::from_str(self.y.as_str()).unwrap(); + + let x_nn = BN256BaseNNField::allocate_checked(cs, x, &base_params); + let y_nn = BN256BaseNNField::allocate_checked(cs, y, &base_params); + + (x_nn, y_nn) + } +} + +/// Representation of a G2 elliptic curve point in raw form (as strings) +#[derive(Clone, Debug, Serialize, Deserialize)] +pub struct RawG2Point { + pub x: RawFq2, + pub y: RawFq2, +} + +impl RawG2Point { + /// Converts a raw point to a projective point + pub fn to_projective_point>( + &self, + cs: &mut CS, + ) -> BN256SWProjectivePointTwisted { + let x_nn = self.x.to_fq2(cs); + let y_nn = self.y.to_fq2(cs); + + BN256SWProjectivePointTwisted::::from_xy_unchecked(cs, x_nn, y_nn) + } +} + +/// Representation of an `Fq2` element in a raw form (as strings) +#[derive(Clone, Debug, Serialize, Deserialize)] +pub struct RawFq2 { + pub c0: String, + pub c1: String, +} + +impl RawFq2 { + /// Converts a raw point to a non-native fq2 element + pub fn to_fq2>(&self, cs: &mut CS) -> BN256Fq2NNField { + let base_params = Arc::new(bn254_base_field_params()); + + let c0 = BN256Fq::from_str(self.c0.as_str()).unwrap(); + let c0 = BN256BaseNNField::allocate_checked(cs, c0, &base_params); + + let c1 = BN256Fq::from_str(self.c1.as_str()).unwrap(); + let c1 = BN256BaseNNField::allocate_checked(cs, c1, &base_params); + + BN256Fq2NNField::new(c0, c1) + } + + pub fn to_native_fq2(&self) -> Fq2 { + let c0 = BN256Fq::from_str(self.c0.as_str()).unwrap(); + let c1 = BN256Fq::from_str(self.c1.as_str()).unwrap(); + + Fq2 { c0, c1 } + } +} + +/// Representation of an `Fq6` element in a raw form (as strings) +#[derive(Clone, Debug, Serialize, Deserialize)] +pub struct RawFq6 { + pub c0: RawFq2, + pub c1: RawFq2, + pub c2: RawFq2, +} + +impl RawFq6 { + /// Converts a raw point to a non-native `Fq6` element + pub fn to_fq6>(&self, cs: &mut CS) -> BN256Fq6NNField { + let c0 = self.c0.to_fq2(cs); + let c1 = self.c1.to_fq2(cs); + let c2 = self.c2.to_fq2(cs); + + BN256Fq6NNField::new(c0, c1, c2) + } + + pub fn to_native_fq6(&self) -> Fq6 { + let c0 = self.c0.to_native_fq2(); + let c1 = self.c1.to_native_fq2(); + let c2 = self.c2.to_native_fq2(); + + Fq6 { c0, c1, c2 } + } +} + +/// Representation of an `Fq12` element in a raw form (as strings) +#[derive(Clone, Debug, Serialize, Deserialize)] +pub struct RawFq12 { + pub c0: RawFq6, + pub c1: RawFq6, +} + +impl RawFq12 { + /// Converts a raw point to a non-native `Fq12` element + pub fn to_fq12>(&self, cs: &mut CS) -> BN256Fq12NNField { + let c0 = self.c0.to_fq6(cs); + let c1 = self.c1.to_fq6(cs); + + BN256Fq12NNField::new(c0, c1) + } + + pub fn to_native_fq12(&self) -> Fq12 { + let c0 = self.c0.to_native_fq6(); + let c1 = self.c1.to_native_fq6(); + + Fq12 { c0, c1 } + } +} diff --git a/crates/zkevm_circuits/src/bn254/tests/mod.rs b/crates/zkevm_circuits/src/bn254/tests/mod.rs new file mode 100644 index 0000000..5a9af6f --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/tests/mod.rs @@ -0,0 +1,9 @@ +pub mod algebraic_torus; +pub mod comparison; +pub mod ec_add; +pub mod ec_mul; +pub mod ec_pairing; +pub mod field_extensions; +pub mod json; +pub mod utils; +pub mod validation; diff --git a/crates/zkevm_circuits/src/bn254/tests/sage/ec_add.sage b/crates/zkevm_circuits/src/bn254/tests/sage/ec_add.sage new file mode 100644 index 0000000..cd21301 --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/tests/sage/ec_add.sage @@ -0,0 +1,43 @@ +#! File for generating tests for testing elliptic curve addition +import json + +TESTS_NUMBER = 10 # How many tests to generate + +# Defining the curve +Fp = GF(21888242871839275222246405745257275088696311157297823662689037894645226208583) +E = EllipticCurve(Fp, [0, 3]) +print(f'We use {E}') + +# Generating tests +print('Preparing the tests...') +tests_dict = {'tests': []} +for _ in range(TESTS_NUMBER): + A = E.random_point() + B = E.random_point() + C = A + B + + tests_dict['tests'].append({ + 'point_1': { + 'x': str(A[0]), + 'y': str(A[1]) + }, + 'point_2': { + 'x': str(B[0]), + 'y': str(B[1]) + }, + 'expected': { + 'x': str(C[0]), + 'y': str(C[1]) + } + }) + +print('Tests formed successfully!') + +# Saving the json file +FILE_NAME = '../json/ec_add/ecadd_tests.json' + +print(f'Saving the tests to {FILE_NAME}...') +with open(FILE_NAME, 'w') as f: + json.dump(tests_dict, f, indent=4) + +print('Successfully saved the tests!') \ No newline at end of file diff --git a/crates/zkevm_circuits/src/bn254/tests/sage/ec_mul.sage b/crates/zkevm_circuits/src/bn254/tests/sage/ec_mul.sage new file mode 100644 index 0000000..a54c1ce --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/tests/sage/ec_mul.sage @@ -0,0 +1,125 @@ +#! File for generating tests for testing elliptic curve multiplication +import json + +# --- Decomposition Tests generation --- + +# Defining the curve +p = 21888242871839275222246405745257275088696311157297823662689037894645226208583 # Finite field order +q = 21888242871839275222246405745257275088548364400416034343698204186575808495617 # EC group order +Fp = GF(p) # Finite field +Fq = GF(q) # EC group +E = EllipticCurve(Fp, [0, 3]) +print(f'We use {E}') + +# --- GLV Parameters --- +# Lambda parameter +lambd = 4407920970296243842393367215006156084916469457145843978461 + +# Defining vectors (a1,b1) and (a2,b2) +a1 = 0x89d3256894d213e3 +b1 = -0x6f4d8248eeb859fc8211bbeb7d4f1128 +a2 = 0x6f4d8248eeb859fd0be4e1541221250b +b2 = 0x89d3256894d213e3 + +# Precomputed b1/n and b2/n times 2**256 +g1 = 0x24ccef014a773d2cf7a7bd9d4391eb18d +g2 = 0x2d91d232ec7e0b3d7 + +# Decomposition using precomputed g1 and g2 +def decompose_aztec(k: Integer): + c1 = (g2 * k) >> 256 + c2 = (g1 * k) >> 256 + + q1 = c1 * b1 + q2 = -c2 * b2 + + k2 = q2 - q1 + k2_lambda = k2 * lambd % q + k1 = k - k2_lambda + + return k1, k2 + +# Generating tests... +DECOMPOSITION_TESTS_NUMBER = 10 +print('Preparing the decomposition tests...') +tests_dict = {'tests': []} + +for _ in range(DECOMPOSITION_TESTS_NUMBER): + # Decomposing the scalar + k = Integer(Fp.random_element()) + k1, k2 = decompose_aztec(k) + + # Making sure that k1 and k2 are in the field + k = Fq(k) + k1 = Fq(k1) + k2 = Fq(k2) + + # Validating that tests generated are valid + assert k == k1 + k2 * Fq(lambd) + + # Choosing between ki and -ki + k1_negated, k2_negated = False, False + if k1 > 2**128: + k1 = -k1 + k1_negated = True + + if k2 > 2**128: + k2 = -k2 + k2_negated = True + + assert (-1)**k1_negated*k1 + (-1)**k2_negated*k2*Fq(lambd) == k + + tests_dict['tests'].append({ + 'k': str(k), + 'k1': str(k1), + 'k1_negated': k1_negated, + 'k2': str(k2), + 'k2_negated': k2_negated + }) + +print('Decomposition tests formed successfully!') + +# Saving the json file +FILE_NAME = '../json/ec_mul/decomposition_tests.json' + +print(f'Saving the decomposition tests to {FILE_NAME}...') +with open(FILE_NAME, 'w') as f: + json.dump(tests_dict, f, indent=4) + +print('Successfully saved the decomposition tests!') + +# --- Multiplication Tests generation --- + +# Generating tests... +MULTIPLICATION_TESTS_NUMBER = 1 +print('Preparing the multiplication tests...') +tests_dict = {'tests': []} + +for _ in range(MULTIPLICATION_TESTS_NUMBER): + # Generating random points + P = E.random_point() + k = Fq.random_element() + Q = k * P + + tests_dict['tests'].append({ + 'point': { + 'x': str(P[0]), + 'y': str(P[1]) + }, + 'scalar': str(k), + 'expected': { + 'x': str(Q[0]), + 'y': str(Q[1]) + } + }) + +print('Multiplication tests formed successfully!') + +# Saving the json file +FILE_NAME = '../json/ec_mul/ecmul_tests.json' + +print(f'Saving the multiplication tests to {FILE_NAME}...') +with open(FILE_NAME, 'w') as f: + json.dump(tests_dict, f, indent=4) + +print('Successfully saved the multiplication tests!') \ No newline at end of file diff --git a/crates/zkevm_circuits/src/bn254/tests/sage/ec_pairing.sage b/crates/zkevm_circuits/src/bn254/tests/sage/ec_pairing.sage new file mode 100644 index 0000000..e812f26 --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/tests/sage/ec_pairing.sage @@ -0,0 +1,620 @@ +import json + +# Defining the base prime field +q = Integer(21888242871839275222246405745257275088696311157297823662689037894645226208583) # EC group order +Fq = GF(q) + +# r is taken from https://hackmd.io/@jpw/bn254 +k = Integer(12) # Embedding degree +t = Integer(4965661367192848881) +r = Integer(21888242871839275222246405745257275088548364400416034343698204186575808495617) +e = (q^(12)-1)/r + +# Some magical constant exponent I have no idea about +m = 2*t*(6*t**2 + 3*t + 1) + +# Making sure parameters are correctly defined +# See https://eprint.iacr.org/2010/354.pdf, Equation 1 for details. +assert q == 36*t**4 + 36*t**3 + 24*t**2 + 6*t + 1 +assert r == 36*t**4 + 36*t**3 + 18*t**2 + 6*t + 1 + +# Defining the extensions +# Fq2... +K2. = PolynomialRing(Fq) +Fq2. = Fq.extension(x^2+1) + +# Fq6... +K6. = PolynomialRing(Fq2) +Fq6. = Fq2.extension(y^3 - (u+9)) + +# Defining the Fq12 is a bit more tricky... +p = Fq.characteristic() +Fq12. = GF(p^12) + +i = sqrt(Fq12(-1)) +R12. = PolynomialRing(Fq12) + +j = (Y^3 - (i+9)).roots(multiplicities=False)[0] +w = sqrt(j) + +P = w.minpoly() +Fq12. = GF(p^12, modulus=P) + +# Preparing helper debugging lambda functions +fq2_to_dictionary = lambda f : { + 'c0': str(f[0]), + 'c1': str(f[1]) +} +fq6_to_dictionary = lambda f : { + 'c0': { + 'c0': str(f[0][0]), + 'c1': str(f[0][1]) + }, + 'c1': { + 'c0': str(f[1][0]), + 'c1': str(f[1][1]) + }, + 'c2': { + 'c0': str(f[2][0]), + 'c1': str(f[2][1]) + } +} +fq12_to_dictionary = lambda f: { + 'c0': { # Fq6 + 'c0': { #Fq2 + 'c0': str(f[0]+9*f[6]), + 'c1': str(f[6]), + }, + 'c1': { #Fq2 + 'c0': str(f[2]+9*f[8]), + 'c1': str(f[8]), + }, + 'c2': { #Fq2 + 'c0': str(f[4]+9*f[10]), + 'c1': str(f[10]), + } + }, + 'c1': { # Fq6 + 'c0': { #Fq2 + 'c0': str(f[1]+9*f[7]), + 'c1': str(f[7]), + }, + 'c1': { #Fq2 + 'c0': str(f[3]+9*f[9]), + 'c1': str(f[9]), + }, + 'c2': { #Fq2 + 'c0': str(f[5]+9*f[11]), + 'c1': str(f[11]), + } + } +} + +def c0c3c4_to_fq12(c0: Fq2, c3: Fq2, c4: Fq2) -> Fq12: + return c0[0] + c0[1]*(W^6-9) + (c3[0]+c3[1]*(W^6-9))*W + (c4[0]+c4[1]*(W^6-9))*W^3 + +# Defining the G1 Curve and its generator +G1 = EllipticCurve(Fq, [0, 3]) +G1_GEN = G1(1, 2) + +# Defining the G2 Curve +b = 3 / (u + 9) +G2 = EllipticCurve(Fq2, [0, b]) +G2_GEN = G2(10857046999023057135944570762232829481370756359578518086990519993285655852781+ + 11559732032986387107991004021392285783925812861821192530917403151452391805634*u, + 8495653923123431417604973247489272438418190587263600148770280649306958101930+ + 4082367875863433681332203403145435568316851327593401208105741076214120093531*u) + +# Converts a tuple (X : Y : Z) from Fq2^3 to a point in G2 +# using Jacobian coordinates +def tuple_to_g2(t: tuple[Fq2, Fq2, Fq2]) -> G2: + return G2(t[0]/t[2]^2, t[1]/t[2]^3) + +# Helper debugging functions +g1_point_to_dictionary = lambda point : { + 'x': str(point[0]), + 'y': str(point[1]) +} +g2_point_to_dictionary = lambda point : { + 'x': { + 'c0': str(point[0][0]), + 'c1': str(point[0][1]) + }, + 'y': { + 'c0': str(point[1][0]), + 'c1': str(point[1][1]) + } +} + +# Some coefficients for easier life +SIX_U_PLUS_TWO_WNAF = [ + 0, 0, 0, 1, 0, 1, 0, -1, + 0, 0, 1, -1, 0, 0, 1, 0, + 0, 1, 1, 0, -1, 0, 0, 1, + 0, -1, 0, 0, 0, 0, 1, 1, + 1, 0, 0, -1, 0, 0, 1, 0, + 0, 0, 0, 0, -1, 0, 0, 1, + 1, 0, 0, -1, 0, 0, 0, 1, + 1, 0, -1, 0, 0, 1, 0, 1, 1 +] + +# Converts the Montgomery form represented by 4 64-bit limbs to an integer in Fq +def from_limbs(limbs): + montomery = limbs[0] | (limbs[1] << 64) | (limbs[2] << 128) | (limbs[3] << 192) + return Fq(montomery) * Fq(2^(-256)) + +# Converts the Fq number to 4 64-bit limbs in Montgomery form +def to_montgomery_limbs(number: Fq): + number = number * Fq(2^(256)) + number = Integer(number) + + # Building limbs + limb_1 = number % 2**64 + limb_2 = (number // 2**64) % 2**64 + limb_3 = (number // 2**128) % 2**64 + limb_4 = (number // 2**192) % 2**64 + + return [limb_1, limb_2, limb_3, limb_4] + +# This is for the last step of Miller loop +FROBENIUS_COEFF_FQ6_C1_1 = from_limbs([ + 0xb5773b104563ab30, + 0x347f91c8a9aa6454, + 0x7a007127242e0991, + 0x1956bcd8118214ec, +]) + from_limbs([ + 0x6e849f1ea0aa4757, + 0xaa1c7b6d89f89141, + 0xb6e713cdfae0ca3a, + 0x26694fbb4e82ebc3, +])*u +assert FROBENIUS_COEFF_FQ6_C1_1 == (9+u)**((q-1)/3), 'FROBENIUS_COEFF_FQ6_C1_1 is not correct!' + +# Verifying that to_montgomery_limbs function is indeed correct +assert to_montgomery_limbs(from_limbs([ + 0xb5773b104563ab30, + 0x347f91c8a9aa6454, + 0x7a007127242e0991, + 0x1956bcd8118214ec, +])) == [ + 0xb5773b104563ab30, + 0x347f91c8a9aa6454, + 0x7a007127242e0991, + 0x1956bcd8118214ec, +], "to_montgomery_limbs function is incorrect" + +# (9+u)**((q-1)/2) +XI_TO_Q_MINUS_1_OVER_2 = from_limbs([ + 0xe4bbdd0c2936b629, + 0xbb30f162e133bacb, + 0x31a9d1b6f9645366, + 0x253570bea500f8dd, +]) + from_limbs([ + 0xa1d77ce45ffe77c7, + 0x07affd117826d1db, + 0x6d16bd27bb7edc6b, + 0x2c87200285defecc, +])*u +assert XI_TO_Q_MINUS_1_OVER_2 == (9+u)**((q-1)/2), 'Non-XI_TO_Q_MINUS_1_OVER_2 is not correct!' + +# (9+u)**((q^2-1)/3) +FROBENIUS_COEFF_FQ6_C1_2 = from_limbs([ + 0x3350c88e13e80b9c, + 0x7dce557cdb5e56b9, + 0x6001b4b8b615564a, + 0x2682e617020217e0, +]) + from_limbs([ + 0x0, + 0x0, + 0x0, + 0x0, +])*u +assert FROBENIUS_COEFF_FQ6_C1_2 == (9+u)**((q^2-1)/3), 'FROBENIUS_COEFF_FQ6_C1_2 is not correct!' + +# --- Line functions tested --- +# Original implementation from https://eprint.iacr.org/2010/354.pdf + +def doubling_step(Q: G2, P: G2): + X_Q, Y_Q, Z_Q = copy(Q[0]), copy(Q[1]), copy(Q[2]) + x_P, y_P = copy(P[0]), copy(P[1]) + + tmp0 = X_Q**2 + tmp1 = Y_Q**2 + tmp2 = tmp1^2 + tmp3 = (tmp1 + X_Q)^2 - tmp0 - tmp2 + tmp3 = 2*tmp3 + tmp4 = 3*tmp0 + tmp6 = X_Q + tmp4 + tmp5 = tmp4^2 + X_T = tmp5 - 2*tmp3 + Z_T = (Y_Q + Z_Q)^2 - tmp1 - Z_Q^2 + Y_T = (tmp3 - X_T) * tmp4 - 8*tmp2 + tmp3 = -2*tmp4*Z_Q^2 + tmp3 = tmp3*x_P + tmp6 = tmp6^2 - tmp0 - tmp5 - 4*tmp1 + tmp0 = 2*Z_T*Z_Q^2 + tmp0 = tmp0 * y_P + + return (tmp0, tmp3, tmp6), (X_T, Y_T, Z_T) + +def addition_step(Q: G2, R: G2, P: G1): + X_Q, Y_Q, Z_Q = copy(Q[0]), copy(Q[1]), copy(Q[2]) + X_R, Y_R, Z_R = copy(R[0]), copy(R[1]), copy(R[2]) + x_P, y_P = copy(P[0]), copy(P[1]) + + t0 = X_Q * Z_R^2 + t1 = (Y_Q + Z_R)^2 - Y_Q^2 - Z_R^2 + t1 = t1 * Z_R^2 + t2 = t0 - X_R + t3 = t2^2 + t4 = 4*t3 + t5 = t4 * t2 + t6 = t1 - 2*Y_R + t9 = t6 * X_Q + t7 = X_R*t4 + X_T = t6^2 - t5 - 2*t7 + Z_T = (Z_R + t2)^2 - Z_R^2 - t3 + t10 = Y_Q + Z_T + t8 = (t7 - X_T)*t6 + t0 = 2*Y_R*t5 + Y_T = t8 - t0 + t10 = t10^2 - Y_Q^2 - Z_T^2 + t9 = 2*t9 - t10 + t10 = 2*Z_T*y_P + t6 = -t6 + t1 = 2*t6*x_P + + return (t10, t1, t9), (X_T, Y_T, Z_T) + +LINE_FUNCTIONS_TESTS_NUMBER = 1 + +print('Preparing the line functions tests...') +tests_dict = {'tests': []} + +for _ in range(LINE_FUNCTIONS_TESTS_NUMBER): + # Generating two random points + R = G2.random_point() + Q = G2.random_point() + P = G1.random_point() + + # Testing the line functions + (c0_1, c3_1, c4_1), T1 = doubling_step(R, P) + (c0_2, c3_2, c4_2), T2 = doubling_step(Q, P) + (c0_3, c3_3, c4_3), T3 = addition_step(R, Q, P) + (c0_4, c3_4, c4_4), T4 = addition_step(Q, T1, P) + + # Checking point correctness + assert tuple_to_g2(T1) == 2*R, 'Doubling step 1 point is wrong!' + assert tuple_to_g2(T2) == 2*Q, 'Doubling step 2 point is wrong!' + assert tuple_to_g2(T3) == R+Q, 'Addition step point is wrong!' + assert tuple_to_g2(T4) == 2*R+Q, 'Doubling and addition step point is wrong!' + + # Adding the test to the dictionary + tests_dict['tests'].append({ + 'g2_point_1': g2_point_to_dictionary(R), + 'g2_point_2': g2_point_to_dictionary(Q), + 'g1_point': g1_point_to_dictionary(P), + 'expected': { + 'doubling_1': { + 'point': g2_point_to_dictionary(2*R), + 'c0': fq2_to_dictionary(c0_1), + 'c3': fq2_to_dictionary(c3_1), + 'c4': fq2_to_dictionary(c4_1) + }, + 'doubling_2': { + 'point': g2_point_to_dictionary(2*Q), + 'c0': fq2_to_dictionary(c0_2), + 'c3': fq2_to_dictionary(c3_2), + 'c4': fq2_to_dictionary(c4_2) + }, + 'addition': { + 'point': g2_point_to_dictionary(R+Q), + 'c0': fq2_to_dictionary(c0_3), + 'c3': fq2_to_dictionary(c3_3), + 'c4': fq2_to_dictionary(c4_3) + }, + 'doubling_1_and_addition': { + 'point': g2_point_to_dictionary(2*R+Q), + 'c0': fq2_to_dictionary(c0_4), + 'c3': fq2_to_dictionary(c3_4), + 'c4': fq2_to_dictionary(c4_4) + } + } + }) + +print('Line and tangent functions evaluations completed!') + +# Saving the json file +FILE_NAME = '../json/ec_pairing/line_functions_tests.json' + +print(f'Saving the line function tests to {FILE_NAME}...') + +with open(FILE_NAME, 'w') as f: + json.dump(tests_dict, f, indent=4) + +# --- Final exponentiation tests --- + +# Calculates the easy part of the exponentiation, that is +# `r^((p^(k) - 1) / Phi_k(p))` where +# `Phi_{12}(p) = p^4 - p^2 + 1` is a 12th cyclotomic polynomial. +def easy_part(f: Fq12) -> Fq12: + return f**((q**k - 1) // (q**4-q**2+1)) + +# Reference implementation of the classical final exponentiation +def final_exp(r: Fq12) -> Fq12: + r = easy_part(r) + x = copy(t) + fp = copy(r) + fp = fp**(q) + fp2 = copy(r) + fp2 = fp2**(q**2) + fp3 = copy(fp2) + fp3 = fp3**(q) + fu = copy(r) + fu = fu**x + fu2 = copy(fu) + fu2 = fu2**x + fu3 = copy(fu2) + fu3 = fu3**x + y3 = copy(fu) + y3 = y3**q + fu2p = copy(fu2) + fu2p = fu2p**q + fu3p = copy(fu3) + fu3p = fu3p**q + y2 = copy(fu2) + y2 = y2**(q**2) + y0 = copy(fp) + y0 = y0 * fp2 + y0 = y0 * fp3 + y1 = copy(r) + y1 = y1.conjugate() + y5 = copy(fu2) + y5 = y5.conjugate() + y3 = y3.conjugate() + y4 = copy(fu) + y4 = y4 * fu2p + y4 = y4.conjugate() + y6 = copy(fu3) + y6 = y6*fu3p + y6 = y6.conjugate() + y6 = y6**2 + y6 = y6 * y4 + y6 = y6 * y5 + t1 = copy(y3) + t1 = t1 * y5 + t1 = t1 * y6 + y6 = y6 * y2 + t1 = t1**2 + t1 = t1 * y6 + t1 = t1**2 + t0 = copy(t1) + t0 = t0 * y1 + t1 = t1 * y0 + t0 = t0**2 + t0 = t0 * t1 + return t0 + +def final_exp_devegili(f: Fq12) -> Fq12: + f = easy_part(f) + t = Integer(4965661367192848881) + x = copy(t) + a = f**x + b = a**2 + a = b*(f**2) + a = a**2 + a = a*b + a = a*f + a = a.conjugate() + b = a**q + b = a*b + a = a*b + t0 = f**q + t1 = t0*f + t1 = t1**9 + a = t1*a + t1 = f**4 + a = a*t1 + t0 = t0**2 + b = b*t0 + t0 = f**(q**2) + b = b*t0 + t0 = b**x + t1 = t0**2 + t0 = t1**2 + t0 = t0*t1 + t0 = t0**x + t0 = t0*b + a = t0*a + t0 = f**(q**3) + f = t0*a + return f + +def final_exp_fuentes_castaneda(f: Fq12) -> Fq12: + f = easy_part(f) + t = Integer(4965661367192848881) + x = copy(t) + a = f**x + a = a**2 + b = a**2 + b = a * b + t = b**x + tmp = f.conjugate() + tmp = tmp**(q**3) + f = f*tmp + f = f * t + b = b * t + t = t**2 + t = t**x + b = b * t + tmp = a.conjugate() + t = b * tmp + tmp = t**(q**3) + f = f * tmp + tmp = t**q + f = f * tmp + f = f * b + tmp = b**(q**2) + f = f * tmp + return f + +EXPONENTIATION_TESTS_NUMBER = 1 + +print('Preparing the final exponentiation tests...') + +tests_dict = {'tests': []} + +for _ in range(EXPONENTIATION_TESTS_NUMBER): + # Generating random value + f = Fq12.random_element() + f_exp = f^e + + assert f_exp**r == 1, 'final exponentiation must be in the r-th power unit subfield' + + assert final_exp(f) == f_exp, 'final exponentiation is wrong!' + assert final_exp_devegili(f) == f_exp, 'final exponentiation using Devegili method is wrong!' + + tests_dict['tests'].append({ + 'scalar': fq12_to_dictionary(f), + 'expected': fq12_to_dictionary(f_exp) + }) + +print('Final exponentiation tests formed successfully!') + +# Saving the json file +FILE_NAME = '../json/ec_pairing/final_exp_tests.json' + +print(f'Saving the final exponentiation tests to {FILE_NAME}...') + +with open(FILE_NAME, 'w') as f: + json.dump(tests_dict, f, indent=4) + +# --- Pairing tests --- +PAIRING_TESTS_NUMBER = 1 + +print('Preparing the pairing tests...') + +tests_dict = {'tests': []} + +def miller_loop(P: G1, Q: G2): + # --- Gathering coefficients step --- + T = copy(Q) + Q_negative = -copy(Q) + f = Fq12.one() + for i in reversed(range(1, len(SIX_U_PLUS_TWO_WNAF))): + if i != len(SIX_U_PLUS_TWO_WNAF) - 1: + f = f*f + + (c0, c3, c4), T2 = doubling_step(T, P) + assert tuple_to_g2(T2) == 2*tuple_to_g2(T), 'Doubling step is wrong!' + f = f * c0c3c4_to_fq12(c0, c3, c4) + T = T2 + + x = SIX_U_PLUS_TWO_WNAF[i-1] + if x == 1: + (c0, c3, c4), TQ = addition_step(Q, T, P) + assert tuple_to_g2(TQ) == tuple_to_g2(T) + tuple_to_g2(Q), 'Addition step is wrong!' + f = f * c0c3c4_to_fq12(c0, c3, c4) + T = TQ + elif x == -1: + (c0, c3, c4), TQ = addition_step(Q_negative, T, P) + assert tuple_to_g2(TQ) == tuple_to_g2(T) + Q_negative, 'Addition step is wrong!' + f = f * c0c3c4_to_fq12(c0, c3, c4) + T = TQ + + # Some additional steps to finalize the Miller loop... + # Q1 <- pi_p(Q) + Q1 = [Q[0], Q[1], Q[2]] + Q1[0] = Q1[0].conjugate() * FROBENIUS_COEFF_FQ6_C1_1 + Q1[1] = Q1[1].conjugate() * XI_TO_Q_MINUS_1_OVER_2 + + # Q2 <- -pi_{p^2}(Q) + Q2 = [Q[0], Q[1], Q[2]] + Q2[0] = Q2[0] * FROBENIUS_COEFF_FQ6_C1_2 + + # Line evaluation at Q1 + (c0, c3, c4), TQ1 = addition_step(Q1, T, P) + assert tuple_to_g2(TQ1) == tuple_to_g2(T) + tuple_to_g2(Q1), 'Addition step is wrong!' + f = f * c0c3c4_to_fq12(c0, c3, c4) + T = TQ1 + + # Line evaluation at Q2 + (c0, c3, c4), TQ2 = addition_step(Q2, T, P) + assert tuple_to_g2(TQ2) == tuple_to_g2(T) + tuple_to_g2(Q2), 'Addition step is wrong!' + f = f * c0c3c4_to_fq12(c0, c3, c4) + + return f + +def pairing(P, Q): + f = miller_loop(P, Q) + return f^e + +for _ in range(PAIRING_TESTS_NUMBER): + # Defining random elements + a = Fq.random_element() + A = a * G1_GEN + + b = Fq.random_element() + B = b * G2_GEN + + pair = pairing(A, B) + pair_AB = pairing(A, 2*B) + pair_BA = pairing(2*A, B) + + assert pair_AB**r == pair_BA**r == pair**r == 1, "Pairing result is not in the rth roots of unity subgroup!" + assert pair_BA == pair_AB == pair**2, "Pairing result is not correct!" + + tests_dict['tests'].append({ + 'g1_point': g1_point_to_dictionary(A), + 'g2_point': g2_point_to_dictionary(B), + 'miller_loop': fq12_to_dictionary(miller_loop(A, B)), + 'pairing': fq12_to_dictionary(pairing(A, B)) + }) + +print('Pairing tests formed successfully!') + +# Saving the json file +FILE_NAME = '../json/ec_pairing/pairing_tests.json' + +print(f'Saving the pairing tests to {FILE_NAME}...') + +with open(FILE_NAME, 'w') as f: + json.dump(tests_dict, f, indent=4) + +# --- Invalid subgroup tests --- +INVALID_SUBGROUP_TESTS_NUMBER = 1 + +print('Preparing the invalid subgroup pairing tests...') + +tests_dict = {'tests': []} + +for _ in range(INVALID_SUBGROUP_TESTS_NUMBER): + # Defining random elements + a = Fq.random_element() + A = a * G1_GEN + assert r*A == G1((0, 1, 0)), "This point is not in the valid subgroup!" + + # This point is not in the valid subgroup (most likely!) since only + # a narrow subset of G2 points actually satisfies [r]P = O + B = G2.random_point() + assert r*B != G2((0, 1, 0)), "This point should not be in the valid subgroup!" + + pair_AB = pairing(A, 2*B) + pair_BA = pairing(2*A, B) + + assert pair_AB != pair_BA, "Bilinearity is satisfied for some reason!" + + tests_dict['tests'].append({ + 'g1_point': g1_point_to_dictionary(A), + 'g2_point': g2_point_to_dictionary(B), + 'g1_point_doubled': g1_point_to_dictionary(2*A), + 'g2_point_doubled': g2_point_to_dictionary(2*B), + }) + +# Saving the json file +FILE_NAME = '../json/ec_pairing/pairing_invalid_subgroup_tests.json' + +print(f'Saving the invalid subgroup pairing tests to {FILE_NAME}...') + +with open(FILE_NAME, 'w') as f: + json.dump(tests_dict, f, indent=4) \ No newline at end of file diff --git a/crates/zkevm_circuits/src/bn254/tests/sage/field_extensions.sage b/crates/zkevm_circuits/src/bn254/tests/sage/field_extensions.sage new file mode 100644 index 0000000..58d47db --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/tests/sage/field_extensions.sage @@ -0,0 +1,263 @@ +#! File for validating field extension arithmetic +import json + +# --- Fq2 tests --- + +# Defining the base prime field +q = 21888242871839275222246405745257275088696311157297823662689037894645226208583 # EC group order +Fq = GF(q) + +# Defining the extensions +# Fq2... +K2. = PolynomialRing(Fq) +Fq2. = Fq.extension(x^2+1) + +# Fq6... +K6. = PolynomialRing(Fq2) +Fq6. = Fq2.extension(y^3 - (u+9)) + +# Defining the Fq12 is a bit more tricky... +p = Fq.characteristic() +Fq12. = GF(p^12) + +i = sqrt(Fq12(-1)) +R12. = PolynomialRing(Fq12) + +j = (Y^3 - (i+9)).roots(multiplicities=False)[0] +w = sqrt(j) + +P = w.minpoly() +Fq12. = GF(p^12, modulus=P) + +# Preparing helper debugging lambda functions +fq2_to_dictionary = lambda f : { + 'c0': str(f[0]), + 'c1': str(f[1]) +} +fq6_to_dictionary = lambda f : { + 'c0': { + 'c0': str(f[0][0]), + 'c1': str(f[0][1]) + }, + 'c1': { + 'c0': str(f[1][0]), + 'c1': str(f[1][1]) + }, + 'c2': { + 'c0': str(f[2][0]), + 'c1': str(f[2][1]) + } +} +fq12_to_dictionary = lambda f: { + 'c0': { # Fq6 + 'c0': { #Fq2 + 'c0': str(f[0]+9*f[6]), + 'c1': str(f[6]), + }, + 'c1': { #Fq2 + 'c0': str(f[2]+9*f[8]), + 'c1': str(f[8]), + }, + 'c2': { #Fq2 + 'c0': str(f[4]+9*f[10]), + 'c1': str(f[10]), + } + }, + 'c1': { # Fq6 + 'c0': { #Fq2 + 'c0': str(f[1]+9*f[7]), + 'c1': str(f[7]), + }, + 'c1': { #Fq2 + 'c0': str(f[3]+9*f[9]), + 'c1': str(f[9]), + }, + 'c2': { #Fq2 + 'c0': str(f[5]+9*f[11]), + 'c1': str(f[11]), + } + } +} + +# Generating Fq2 tests +print('Preparing the Fq2 tests...') +tests_dict = {'tests': []} + +FQ2_TESTS_NUMBER = 5 + +for _ in range(FQ2_TESTS_NUMBER): + f = Fq2.random_element() + g = Fq2.random_element() + sum = f + g + diff = f - g + prod = f * g + quot = f / g + f_non_residue = f * (u + 9) + frobenius_6 = f**(q**6) + + tests_dict['tests'].append({ + 'scalar_1': fq2_to_dictionary(f), + 'scalar_2': fq2_to_dictionary(g), + 'expected': { + 'sum': fq2_to_dictionary(sum), + 'difference': fq2_to_dictionary(diff), + 'product': fq2_to_dictionary(prod), + 'quotient': fq2_to_dictionary(quot), + 'scalar_1_non_residue': fq2_to_dictionary(f_non_residue), + 'frobenius_6': fq2_to_dictionary(frobenius_6), + } + }) + +print('Fq2 tests formed successfully!') + +# Saving the json file +FILE_NAME = '../json/field_extensions/fq2_tests.json' + +print(f'Saving the Fq6 tests to {FILE_NAME}...') +with open(FILE_NAME, 'w') as f: + json.dump(tests_dict, f, indent=4) + +print('Successfully saved the Fq6 tests!') + +# Generating Fq6 tests +print('Preparing the Fq6 tests...') +tests_dict = {'tests': []} + +FQ6_TESTS_NUMBER = 1 + +for _ in range(FQ6_TESTS_NUMBER): + # Defining inputs + f = Fq6.random_element() + g = Fq6.random_element() + c0 = Fq2.random_element() + c1 = Fq2.random_element() + c2 = Fq2.random_element() + h_c0c1 = c0 + c1*v + h_c1 = c1*v + h_c2 = c2*v^2 + + # Defining the operations tested + sum = f + g + diff = f - g + prod = f * g + prod_c1 = f * h_c1 + prod_c0c1 = f * h_c0c1 + prod_c2 = f * h_c2 + f_inv = f.inverse() + g_inv = g.inverse() + quot = f / g + f_square = f^2 + f_non_residue = f * v + f_frobenius_1 = f^(q^1) + g_frobenius_2 = g^(q^2) + f_frobenius_3 = f^(q^3) + + tests_dict['tests'].append({ + 'scalar_1': fq6_to_dictionary(f), + 'scalar_2': fq6_to_dictionary(g), + 'c0': fq2_to_dictionary(c0), + 'c1': fq2_to_dictionary(c1), + 'c2': fq2_to_dictionary(c2), + 'expected': { + 'sum': fq6_to_dictionary(sum), + 'difference': fq6_to_dictionary(diff), + 'product': fq6_to_dictionary(prod), + 'quotient': fq6_to_dictionary(quot), + 'product_c1': fq6_to_dictionary(prod_c1), + 'product_c0c1': fq6_to_dictionary(prod_c0c1), + 'product_c2': fq6_to_dictionary(prod_c2), + 'scalar_1_inverse': fq6_to_dictionary(f_inv), + 'scalar_1_square': fq6_to_dictionary(f_square), + 'scalar_1_non_residue': fq6_to_dictionary(f_non_residue), + 'scalar_1_frobenius_1': fq6_to_dictionary(f_frobenius_1), + 'scalar_2_frobenius_2': fq6_to_dictionary(g_frobenius_2), + 'scalar_1_frobenius_3': fq6_to_dictionary(f_frobenius_3), + } + }) + +print('Fq6 tests formed successfully!') + +# Saving the json file +FILE_NAME = '../json/field_extensions/fq6_tests.json' + +print(f'Saving the Fq6 tests to {FILE_NAME}...') +with open(FILE_NAME, 'w') as f: + json.dump(tests_dict, f, indent=4) + +print('Successfully saved the Fq6 tests!') + +# --- Generating Fq12 tests --- +print('Preparing the Fq12 tests...') +tests_dict = {'tests': []} + +FQ12_TESTS_NUMBER = 1 +for _ in range(FQ12_TESTS_NUMBER): + # Defining inputs + f = Fq12.random_element() + g = Fq12.random_element() + + # Defining sparse elements + c0 = Fq2.random_element() + c1 = Fq2.random_element() + c3 = Fq2.random_element() + c4 = Fq2.random_element() + c5 = Fq2.random_element() + c0c1c4 = c0[0] + c0[1]*(W^6-9) + (c1[0]+c1[1]*(W^6-9))*W^2 + (c4[0]+c4[1]*(W^6-9))*W^3 + c0c3c4 = c0[0] + c0[1]*(W^6-9) + (c3[0]+c3[1]*(W^6-9))*W + (c4[0]+c4[1]*(W^6-9))*W^3 + c5v2w = (c5[0] + c5[1]*(W^6-9))*W^5 + + # Defining the operations tested + sum = f + g + diff = f - g + prod = f * g + quot = f / g + f_inv = f.inverse() + f_square = f^2 + prod_c0c3c4 = f * c0c3c4 + prod_c0c1c4 = f * c0c1c4 + prod_c5v2w = f * c5v2w + f_frobenius_1 = f^(q^1) + g_frobenius_2 = g^(q^2) + f_frobenius_3 = f^(q^3) + pow_33 = f^(33) + pow_67 = g^(67) + pow_u = f^(4965661367192848881) + pow_u2 = f^(4965661367192848881**2) + pow_u3 = f^(4965661367192848881**3) + + tests_dict['tests'].append({ + 'scalar_1': fq12_to_dictionary(f), + 'scalar_2': fq12_to_dictionary(g), + 'c0': fq2_to_dictionary(c0), + 'c1': fq2_to_dictionary(c1), + 'c3': fq2_to_dictionary(c3), + 'c4': fq2_to_dictionary(c4), + 'c5': fq2_to_dictionary(c5), + 'expected': { + 'sum': fq12_to_dictionary(sum), + 'difference': fq12_to_dictionary(diff), + 'product': fq12_to_dictionary(prod), + 'product_c0c3c4': fq12_to_dictionary(prod_c0c3c4), + 'product_c0c1c4': fq12_to_dictionary(prod_c0c1c4), + 'product_c5': fq12_to_dictionary(prod_c5v2w), + 'quotient': fq12_to_dictionary(quot), + 'scalar_1_inverse': fq12_to_dictionary(f_inv), + 'scalar_1_square': fq12_to_dictionary(f_square), + 'scalar_1_frobenius_1': fq12_to_dictionary(f_frobenius_1), + 'scalar_2_frobenius_2': fq12_to_dictionary(g_frobenius_2), + 'scalar_1_frobenius_3': fq12_to_dictionary(f_frobenius_3), + 'scalar_1_pow_33': fq12_to_dictionary(pow_33), + 'scalar_2_pow_67': fq12_to_dictionary(pow_67), + 'scalar_1_pow_u': fq12_to_dictionary(pow_u), + 'scalar_1_pow_u2': fq12_to_dictionary(pow_u2), + 'scalar_1_pow_u3': fq12_to_dictionary(pow_u3), + } + }) + +# Saving the fq12 tests +FILE_NAME = '../json/field_extensions/fq12_tests.json' +print(f'Saving the Fq12 tests to {FILE_NAME}...') +with open(FILE_NAME, 'w') as f: + json.dump(tests_dict, f, indent=4) + +print('Successfully saved the Fq12 tests!') \ No newline at end of file diff --git a/crates/zkevm_circuits/src/bn254/tests/sage/g2.sage b/crates/zkevm_circuits/src/bn254/tests/sage/g2.sage new file mode 100644 index 0000000..e979f85 --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/tests/sage/g2.sage @@ -0,0 +1,59 @@ +import json + +# Defining the base prime field +q = 21888242871839275222246405745257275088696311157297823662689037894645226208583 # EC group order +Fq = GF(q) + +# Defining the extensions +K2. = PolynomialRing(Fq) +Fq2. = Fq.extension(x^2+1) + +# Defining the G2 Curve +b = 3 / (u + 9) +E = EllipticCurve(Fq2, [0, b]) + +G2_TESTS_NUMBER = 2 +print('Preparing the G2 Curve tests...') +tests_dict = {'tests': []} + +for _ in range(G2_TESTS_NUMBER): + # Generating two random points + P = E.random_point() + Q = E.random_point() + + # Finding expected values to check + sum = P + Q + P_double = P + P + Q_double = Q + Q + + point_to_dictionary = lambda point : { + 'x': { + 'c0': str(point[0][0]), + 'c1': str(point[0][1]) + }, + 'y': { + 'c0': str(point[1][0]), + 'c1': str(point[1][1]) + } + } + + # Adding the test to the dictionary + tests_dict['tests'].append({ + 'point_1': point_to_dictionary(P), + 'point_2': point_to_dictionary(Q), + 'expected': { + 'sum': point_to_dictionary(sum), + 'point_1_double': point_to_dictionary(P_double), + 'point_2_double': point_to_dictionary(Q_double) + } + }) + +print('G2 Curve tests formed successfully!') + +# Saving the json file +FILE_NAME = '../json/ec_pairing/g2_tests.json' + +print(f'Saving the G2 Curve tests to {FILE_NAME}...') + +with open(FILE_NAME, 'w') as f: + json.dump(tests_dict, f, indent=4) \ No newline at end of file diff --git a/crates/zkevm_circuits/src/bn254/tests/sage/torus.sage b/crates/zkevm_circuits/src/bn254/tests/sage/torus.sage new file mode 100644 index 0000000..8058fbe --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/tests/sage/torus.sage @@ -0,0 +1,351 @@ +from __future__ import annotations +import json + +# Defining the base prime field +q = Integer(21888242871839275222246405745257275088696311157297823662689037894645226208583) # EC group order +Fq = GF(q) + +# r is taken from https://hackmd.io/@jpw/bn254 +k = Integer(12) # Embedding degree +t = Integer(4965661367192848881) +r = Integer(21888242871839275222246405745257275088548364400416034343698204186575808495617) +e = (q^(12)-1)/r + +# Making sure parameters are correctly defined +# See https://eprint.iacr.org/2010/354.pdf, Equation 1 for details. +assert q == 36*t**4 + 36*t**3 + 24*t**2 + 6*t + 1 +assert r == 36*t**4 + 36*t**3 + 18*t**2 + 6*t + 1 + +# Defining the extensions +# Fq2... +K2. = PolynomialRing(Fq) +Fq2. = Fq.extension(x^2+1) + +# Fq6... +K6. = PolynomialRing(Fq2) +Fq6. = Fq2.extension(y^3 - (u+9)) + +# Defining the Fq12 is a bit more tricky... +p = Fq.characteristic() +Fq12. = GF(p^12) + +i = sqrt(Fq12(-1)) +R12. = PolynomialRing(Fq12) + +j = (Y^3 - (i+9)).roots(multiplicities=False)[0] +w = sqrt(j) + +P = w.minpoly() +Fq12. = GF(p^12, modulus=P) + +# Preparing helper debugging lambda functions +fq2_to_dictionary = lambda f : { + 'c0': str(f[0]), + 'c1': str(f[1]) +} +fq6_to_dictionary = lambda f : { + 'c0': { + 'c0': str(f[0][0]), + 'c1': str(f[0][1]) + }, + 'c1': { + 'c0': str(f[1][0]), + 'c1': str(f[1][1]) + }, + 'c2': { + 'c0': str(f[2][0]), + 'c1': str(f[2][1]) + } +} +fq12_to_dictionary = lambda f: { + 'c0': { # Fq6 + 'c0': { #Fq2 + 'c0': str(f[0]+9*f[6]), + 'c1': str(f[6]), + }, + 'c1': { #Fq2 + 'c0': str(f[2]+9*f[8]), + 'c1': str(f[8]), + }, + 'c2': { #Fq2 + 'c0': str(f[4]+9*f[10]), + 'c1': str(f[10]), + } + }, + 'c1': { # Fq6 + 'c0': { #Fq2 + 'c0': str(f[1]+9*f[7]), + 'c1': str(f[7]), + }, + 'c1': { #Fq2 + 'c0': str(f[3]+9*f[9]), + 'c1': str(f[9]), + }, + 'c2': { #Fq2 + 'c0': str(f[5]+9*f[11]), + 'c1': str(f[11]), + } + } +} + +def fq12_to_fq6_tuple(f: Fq12) -> tuple[Fq6, Fq6]: + """ + Converts a Fq12 element to a tuple of Fq6 elements. + """ + + c0_c0 = (f[0] + 9*f[6]) + f[6] * u + c0_c1 = (f[2] + 9*f[8]) + f[8] * u + c0_c2 = (f[4] + 9*f[10]) + f[10] * u + + c1_c0 = (f[1] + 9*f[7]) + f[7] * u + c1_c1 = (f[3] + 9*f[9]) + f[9] * u + c1_c2 = (f[5] + 9*f[11]) + f[11] * u + + return (c0_c0 + c0_c1*v + c0_c2*v**2, c1_c0 + c1_c1*v + c1_c2*v**2) + + +def c0c3c4_to_fq12(c0: Fq2, c3: Fq2, c4: Fq2) -> Fq12: + return c0[0] + c0[1]*(W^6-9) + (c3[0]+c3[1]*(W^6-9))*W + (c4[0]+c4[1]*(W^6-9))*W^3 + +def fq6_to_fq12(f: Fq6) -> Fq12: + c0 = f[0] + c1 = f[1] + c2 = f[2] + + # Here + c0 = c0[0] + c0[1]*(W^6-9) + c1 = c1[0] + c1[1]*(W^6-9) + c2 = c2[0] + c2[1]*(W^6-9) + + # Here v = w^2 since Fq12 = Fq6[w]/(w^2 - v) + return c0 + c1 * W^2 + c2 * W^4 + +class TorusWrapper: + """ + Class for torus compression testing. Based on paper: + https://eprint.iacr.org/2022/1162.pdf + """ + + def __init__(self, encoding: Fq6) -> None: + """ + Encodes the given zeta in Fq12 to the T2 torus. + """ + + self._encoding = encoding + + @staticmethod + def compress(zeta: Fq12) -> TorusWrapper: + """ + Compresses the given zeta in Fq12 to the T2 torus. + """ + + c0, c1 = fq12_to_fq6_tuple(zeta) + + # booleans for exceptional cases + c1_is_zero = c1 == 0 + c0_is_one = c0 == 1 + + # Encoding the element + encoding = (1 + c0 - 2*c0_is_one) / (c1 + c1_is_zero) + return TorusWrapper(encoding) + + def decompress(self) -> Fq12: + """ + Decompresses the element from T2 back to Fq12 using the formula: + decoded = (encoding + w) / (encoding - w) + """ + + g = fq6_to_fq12(self._encoding) + return (g + W) / (g - W) + + def mul(self, other: TorusWrapper) -> TorusWrapper: + """ + Adds the element to itself. + """ + + # Reading encodings + g1 = self._encoding + g2 = other._encoding + + # Finding new encoding + gamma = v + flag = g1 + g2 == 0 + + x = g1 * g2 + gamma + y = g1 + g2 + + encoding = (x - flag*x)/ (y + flag) + return TorusWrapper(encoding) + + def inverse(self) -> TorusWrapper: + """ + Inverts the element. + """ + + # Reading encodings + g = self._encoding + + # Finding new encoding + encoding = -g + return TorusWrapper(encoding) + + def conjugate(self) -> TorusWrapper: + """ + Conjugates the element. + """ + + return self.inverse() + + def square(self) -> TorusWrapper: + """ + Squares the element. + """ + + # Reading encodings + g = self._encoding + + # Finding new encoding + gamma = v + flag = g == 0 + encoding = (g + (gamma*(1-flag))/(g+flag))/2 + return TorusWrapper(encoding) + + def frob_map(self, i: Integer) -> TorusWrapper: + """ + Applies the Frobenius map to the element. + """ + + # Reading encodings + g = self._encoding + + # Finding new encoding + gamma = v + numerator = g**(q**i) + denominator = gamma**((Integer(q)**i-1)//2) + encoding = numerator / denominator + return TorusWrapper(encoding) + + def pow_wnaf(self, decomposition: list[Integer]) -> TorusWrapper: + """ + Applies the power to the element. + """ + + result = TorusWrapper.compress(Fq12.one()) + g = copy(self) + g_inv = g.inverse() + + for bit in decomposition: + result = result.square() + + if bit == 1: + result = result.mul(g) + elif bit == -1: + result = result.mul(g_inv) + + return result + +def random_easy_part_fq12() -> Fq12: + """ + Returns the random fq12 being the result of an easy exponentiation part. + """ + + phi12 = lambda f: f**4 - f**2 + 1 # Cyclotomic polynomial of order 12 + f = Fq12.random_element() + return f**((q**k-1) / phi12(q)) + +# Now, asserting that the class is written properly +VERIFICATION_TESTS_NUMBER = 10 +for _ in range(VERIFICATION_TESTS_NUMBER): + a = random_easy_part_fq12() + b = random_easy_part_fq12() + + # Encoding the elements + torus_a = TorusWrapper.compress(a) + torus_b = TorusWrapper.compress(b) + + # Testing the decompression + assert a == torus_a.decompress(), f'Decompression failed for a. \nExpected: {a}, \ngot: {torus_a.decompress()}' + assert b == torus_b.decompress(), f'Decompression failed for b. \nExpected: {b}, \ngot: {torus_b.decompress()}' + + # Testing the multiplication + assert a*b == torus_a.mul(torus_b).decompress(), f'Multiplication failed. \nExpected: {a*b}, \ngot: {torus_a.mul(torus_b).decompress()}' + + # Testing the inversion + assert a.inverse() == torus_a.inverse().decompress(), f'Inversion failed. \nExpected: {a}, \ngot: {torus_a.inverse().mul(torus_a).decompress()}' + + # Testing the conjugation + assert a.conjugate() == torus_a.conjugate().decompress(), f'Conjugation failed. \nExpected: {a.conjugate()}, \ngot: {torus_a.conjugate().decompress()}' + + # Testing the squaring + assert a*a == torus_a.square().decompress(), f'Squaring failed. \nExpected: {a*a}, \ngot: {torus_a.square().decompress()}' + + # Testing the multiplication by 4 + assert a**4 == torus_a.pow_wnaf([1,0,0]).decompress(), 'Power 4 failed.' + + # Testing the multiplication by u + u_decomposition = [ + 1, 0, 0, 0, 1, 0, 1, 0, 0, -1, 0, 1, 0, 0, 1, 1, 0, 0, 1, 0, 0, 1, 0, 1, 0, 1, 1, 0, 1, 0, 0, 0, + 1, 0, 0, 1, 0, 1, 0, 0, 1, 1, 0, 1, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, -1, 0, 0, 0, 1 + ] + #assert sum([k_i * 2**i for i, k_i in enumerate(u_decomposition)]) == t, 'Decomposition of u is invalid.' + assert a**t == torus_a.pow_wnaf(u_decomposition).decompress(), 'Power u failed.' + + # Testing the Frobenius map + for i in range(5): + assert a**(q**i) == torus_a.frob_map(i).decompress(), f'Frobenius map failed. \nExpected: {a**(q**i)}, \ngot: {torus_a.frob_map(i).decompress()}' + +print('All tests passed! Now we are ready to form the tests!') + +# Generating the tests +print('Preparing the Torus tests...') +tests_dict = {'tests': []} + +TORUS_TESTS_NUMBER = 1 + +for _ in range(TORUS_TESTS_NUMBER): + a = random_easy_part_fq12() + b = random_easy_part_fq12() + + # Encoding the elements + torus_a = TorusWrapper.compress(a) + torus_b = TorusWrapper.compress(b) + + # Finding encodings of all supported operations + prod = torus_a.mul(torus_b)._encoding + inverse = torus_a.inverse()._encoding + conjugate = torus_a.conjugate()._encoding + square = torus_a.square()._encoding + frobenius_1 = torus_a.frob_map(1)._encoding + frobenius_2 = torus_a.frob_map(2)._encoding + frobenius_3 = torus_a.frob_map(3)._encoding + pow_u = torus_a.pow_wnaf(u_decomposition)._encoding + pow_13 = torus_a.pow_wnaf([1, 0, -1, 0, 1])._encoding + + tests_dict['tests'].append({ + 'scalar_1': fq12_to_dictionary(a), + 'scalar_2': fq12_to_dictionary(b), + 'expected': { + 'encoding_1': fq6_to_dictionary(torus_a._encoding), + 'encoding_2': fq6_to_dictionary(torus_b._encoding), + 'product_encoding': fq6_to_dictionary(prod), + 'inverse_1_encoding': fq6_to_dictionary(inverse), + 'conjugate_1_encoding': fq6_to_dictionary(conjugate), + 'square_1_encoding': fq6_to_dictionary(square), + 'frobenius_1_encoding': fq6_to_dictionary(frobenius_1), + 'frobenius_2_encoding': fq6_to_dictionary(frobenius_2), + 'frobenius_3_encoding': fq6_to_dictionary(frobenius_3), + 'power_u_encoding': fq6_to_dictionary(pow_u), + 'power_13_encoding': fq6_to_dictionary(pow_13) + } + }) + +print('Torus tests formed successfully!') + +# Saving the json file +FILE_NAME = '../json/algebraic_torus/torus_tests.json' + +print(f'Saving the torus tests to {FILE_NAME}...') +with open(FILE_NAME, 'w') as f: + json.dump(tests_dict, f, indent=4) + +print('Successfully saved the Torus tests!') \ No newline at end of file diff --git a/crates/zkevm_circuits/src/bn254/tests/utils/assert.rs b/crates/zkevm_circuits/src/bn254/tests/utils/assert.rs new file mode 100644 index 0000000..f3186a6 --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/tests/utils/assert.rs @@ -0,0 +1,173 @@ +use crate::bn254::{ + BN256Affine, BN256Fq12NNField, BN256Fq2NNField, BN256Fq6NNField, BN256SWProjectivePoint, + BN256SWProjectivePointTwisted, +}; +use boojum::cs::traits::cs::ConstraintSystem; +use boojum::field::goldilocks::GoldilocksField; +use boojum::gadgets::boolean::Boolean; +use boojum::gadgets::traits::witnessable::WitnessHookable; +use boojum::pairing::bn256::G2Affine; +use boojum::pairing::CurveAffine; + +type F = GoldilocksField; + +pub(in super::super) fn assert_equal_g1_points( + cs: &mut CS, + point: &mut BN256SWProjectivePoint, + expected: &mut BN256SWProjectivePoint, +) where + CS: ConstraintSystem, +{ + // Converting to affine representation + let default_point = BN256Affine::zero(); + let ((x1, y1), _) = point.convert_to_affine_or_default(cs, default_point); + let ((x2, y2), _) = expected.convert_to_affine_or_default(cs, default_point); + + // Enforcing x coordinates to be equal + let x1 = x1.witness_hook(cs)().unwrap().get(); + let x2 = x2.witness_hook(cs)().unwrap().get(); + assert_eq!(x1, x2, "x coordinates are not equal"); + + // Enforcing y coordinates to be equal + let y1 = y1.witness_hook(cs)().unwrap().get(); + let y2 = y2.witness_hook(cs)().unwrap().get(); + assert_eq!(y1, y2, "y coordinates are not equal"); +} + +pub(in super::super) fn assert_equal_g2_points( + cs: &mut CS, + point: &mut BN256SWProjectivePointTwisted, + expected: &mut BN256SWProjectivePointTwisted, +) where + CS: ConstraintSystem, +{ + // Converting to affine representation + let default_point = G2Affine::one(); + let ((x1, y1), is_infty1) = point.convert_to_affine_or_default(cs, default_point); + let ((x2, y2), is_infty2) = expected.convert_to_affine_or_default(cs, default_point); + + // Enforcing point not to be at infinity + let boolean_false = Boolean::allocated_constant(cs, false); + Boolean::enforce_equal(cs, &is_infty1, &boolean_false); + Boolean::enforce_equal(cs, &is_infty2, &boolean_false); + + // Enforcing x coordinates to be equal + let x1_c0 = x1.witness_hook(cs)().unwrap().0.get(); + let x1_c1 = x1.witness_hook(cs)().unwrap().1.get(); + let x2_c0 = x2.witness_hook(cs)().unwrap().0.get(); + let x2_c1 = x2.witness_hook(cs)().unwrap().1.get(); + assert!( + x1_c0 == x2_c0 && x1_c1 == x2_c1, + "x coordinates are not equal" + ); + + // Enforcing y coordinates to be equal + let y1_c0 = y1.witness_hook(cs)().unwrap().0.get(); + let y1_c1 = y1.witness_hook(cs)().unwrap().1.get(); + let y2_c0 = y2.witness_hook(cs)().unwrap().0.get(); + let y2_c1 = y2.witness_hook(cs)().unwrap().1.get(); + assert!( + y1_c0 == y2_c0 && y1_c1 == y2_c1, + "y coordinates are not equal" + ); +} + +pub(in super::super) fn assert_equal_g2_jacobian_points( + cs: &mut CS, + point: &mut BN256SWProjectivePointTwisted, + expected: &mut BN256SWProjectivePointTwisted, +) where + CS: ConstraintSystem, +{ + // Converting to affine representation via Jacobian coordinates + let default_point = G2Affine::one(); + let ((x1, y1), is_infty1) = point.convert_to_affine_jacobian(cs, default_point); + let ((x2, y2), is_infty2) = expected.convert_to_affine_jacobian(cs, default_point); + + // Enforcing point not to be at infinity + let boolean_false = Boolean::allocated_constant(cs, false); + Boolean::enforce_equal(cs, &is_infty1, &boolean_false); + Boolean::enforce_equal(cs, &is_infty2, &boolean_false); + + // Enforcing x coordinates to be equal + let x1_c0 = x1.witness_hook(cs)().unwrap().0.get(); + let x1_c1 = x1.witness_hook(cs)().unwrap().1.get(); + let x2_c0 = x2.witness_hook(cs)().unwrap().0.get(); + let x2_c1 = x2.witness_hook(cs)().unwrap().1.get(); + assert!( + x1_c0 == x2_c0 && x1_c1 == x2_c1, + "x coordinates are not equal" + ); + + // Enforcing y coordinates to be equal + let y1_c0 = y1.witness_hook(cs)().unwrap().0.get(); + let y1_c1 = y1.witness_hook(cs)().unwrap().1.get(); + let y2_c0 = y2.witness_hook(cs)().unwrap().0.get(); + let y2_c1 = y2.witness_hook(cs)().unwrap().1.get(); + assert!( + y1_c0 == y2_c0 && y1_c1 == y2_c1, + "y coordinates are not equal" + ); +} + +fn equal_fq2>( + cs: &mut CS, + a: &BN256Fq2NNField, + b: &BN256Fq2NNField, +) -> bool { + let a_c0 = a.c0.witness_hook(cs)().unwrap().get(); + let a_c1 = a.c1.witness_hook(cs)().unwrap().get(); + + let b_c0 = b.c0.witness_hook(cs)().unwrap().get(); + let b_c1 = b.c1.witness_hook(cs)().unwrap().get(); + + a_c0.eq(&b_c0) && a_c1.eq(&b_c1) +} + +fn equal_fq6>( + cs: &mut CS, + a: &BN256Fq6NNField, + b: &BN256Fq6NNField, +) -> bool { + equal_fq2(cs, &a.c0, &b.c0) && equal_fq2(cs, &a.c1, &b.c1) && equal_fq2(cs, &a.c2, &b.c2) +} + +fn equal_fq12>( + cs: &mut CS, + a: &BN256Fq12NNField, + b: &BN256Fq12NNField, +) -> bool { + equal_fq6(cs, &a.c0, &b.c0) && equal_fq6(cs, &a.c1, &b.c1) +} + +pub(in super::super) fn assert_equal_fq2>( + cs: &mut CS, + a: &BN256Fq2NNField, + b: &BN256Fq2NNField, +) { + assert!(equal_fq2(cs, a, b)); +} + +pub(in super::super) fn assert_equal_fq6>( + cs: &mut CS, + a: &BN256Fq6NNField, + b: &BN256Fq6NNField, +) { + assert!(equal_fq6(cs, a, b)); +} + +pub(in super::super) fn assert_equal_fq12>( + cs: &mut CS, + a: &BN256Fq12NNField, + b: &BN256Fq12NNField, +) { + assert!(equal_fq12(cs, a, b)); +} + +pub(in super::super) fn assert_not_equal_fq12>( + cs: &mut CS, + a: &BN256Fq12NNField, + b: &BN256Fq12NNField, +) { + assert!(!equal_fq12(cs, a, b)); +} diff --git a/crates/zkevm_circuits/src/bn254/tests/utils/cs.rs b/crates/zkevm_circuits/src/bn254/tests/utils/cs.rs new file mode 100644 index 0000000..bbdc7f0 --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/tests/utils/cs.rs @@ -0,0 +1,173 @@ +use boojum::{ + config::DevCSConfig, + cs::{ + cs_builder::{new_builder, CsBuilder, CsBuilderImpl}, + cs_builder_reference::CsReferenceImplementationBuilder, + gates::{ + BooleanConstraintGate, ConstantsAllocatorGate, DotProductGate, + FmaGateInBaseFieldWithoutConstant, NopGate, ReductionGate, SelectionGate, U8x4FMAGate, + UIntXAddGate, ZeroCheckGate, + }, + implementations::reference_cs::CSReferenceImplementation, + traits::{cs::ConstraintSystem, gate::GatePlacementStrategy}, + CSGeometry, GateConfigurationHolder, LookupParameters, StaticToolboxHolder, + }, + field::{goldilocks::GoldilocksField, SmallField}, + gadgets::{ + non_native_field::implementations::NonNativeFieldOverU16Params, + tables::{ + create_and8_table, create_byte_split_table, create_xor8_table, And8Table, + ByteSplitTable, Xor8Table, + }, + }, +}; + +use crate::bn254::{ + fixed_base_mul_table::{create_fixed_base_mul_table, FixedBaseMulTable}, + BN256BaseNNFieldParams, BN256ScalarNNFieldParams, +}; + +type F = GoldilocksField; +type P = GoldilocksField; + +/// Creates a test constraint system for testing purposes that includes the +/// majority (even possibly unneeded) of the gates and tables. +pub fn create_test_cs( + max_trace_len: usize, +) -> CSReferenceImplementation< + F, + P, + DevCSConfig, + impl GateConfigurationHolder, + impl StaticToolboxHolder, +> { + let geometry = CSGeometry { + num_columns_under_copy_permutation: 200, + num_witness_columns: 0, + num_constant_columns: 8, + max_allowed_constraint_degree: 4, + }; + let max_variables = 1 << 27; + + fn configure< + F: SmallField, + T: CsBuilderImpl, + GC: GateConfigurationHolder, + TB: StaticToolboxHolder, + >( + builder: CsBuilder, + ) -> CsBuilder, impl StaticToolboxHolder> { + let builder = builder.allow_lookup( + LookupParameters::UseSpecializedColumnsWithTableIdAsConstant { + width: 3, + num_repetitions: 20, + share_table_id: true, + }, + ); + let builder = U8x4FMAGate::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = ConstantsAllocatorGate::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = FmaGateInBaseFieldWithoutConstant::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = ReductionGate::::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + // let owned_cs = ReductionGate::::configure_for_cs(owned_cs, GatePlacementStrategy::UseSpecializedColumns { num_repetitions: 8, share_constants: true }); + let builder = BooleanConstraintGate::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = UIntXAddGate::<32>::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = UIntXAddGate::<16>::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = UIntXAddGate::<8>::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = SelectionGate::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = ZeroCheckGate::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + false, + ); + let builder = DotProductGate::<4>::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + // let owned_cs = DotProductGate::<4>::configure_for_cs(owned_cs, GatePlacementStrategy::UseSpecializedColumns { num_repetitions: 1, share_constants: true }); + let builder = + NopGate::configure_builder(builder, GatePlacementStrategy::UseGeneralPurposeColumns); + + builder + } + + let builder_impl = + CsReferenceImplementationBuilder::::new(geometry, max_trace_len); + let builder = new_builder::<_, F>(builder_impl); + + let builder = configure(builder); + let mut owned_cs = builder.build(max_variables); + + // add tables + let table = create_xor8_table(); + owned_cs.add_lookup_table::(table); + + let table = create_and8_table(); + owned_cs.add_lookup_table::(table); + + seq_macro::seq!(C in 0..32 { + let table = create_fixed_base_mul_table::(); + owned_cs.add_lookup_table::, 3>(table); + let table = create_fixed_base_mul_table::(); + owned_cs.add_lookup_table::, 3>(table); + let table = create_fixed_base_mul_table::(); + owned_cs.add_lookup_table::, 3>(table); + let table = create_fixed_base_mul_table::(); + owned_cs.add_lookup_table::, 3>(table); + let table = create_fixed_base_mul_table::(); + owned_cs.add_lookup_table::, 3>(table); + let table = create_fixed_base_mul_table::(); + owned_cs.add_lookup_table::, 3>(table); + let table = create_fixed_base_mul_table::(); + owned_cs.add_lookup_table::, 3>(table); + let table = create_fixed_base_mul_table::(); + owned_cs.add_lookup_table::, 3>(table); + }); + + let table = create_byte_split_table::(); + owned_cs.add_lookup_table::, 3>(table); + let table = create_byte_split_table::(); + owned_cs.add_lookup_table::, 3>(table); + let table = create_byte_split_table::(); + owned_cs.add_lookup_table::, 3>(table); + let table = create_byte_split_table::(); + owned_cs.add_lookup_table::, 3>(table); + + owned_cs +} + +/// Returns BN254 base field parameters +pub fn bn254_base_field_params() -> BN256BaseNNFieldParams { + NonNativeFieldOverU16Params::create() +} + +/// Returns BN254 scalar field parameters +pub fn bn254_scalar_field_params() -> BN256ScalarNNFieldParams { + NonNativeFieldOverU16Params::create() +} diff --git a/crates/zkevm_circuits/src/bn254/tests/utils/mod.rs b/crates/zkevm_circuits/src/bn254/tests/utils/mod.rs new file mode 100644 index 0000000..4aa3ad7 --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/tests/utils/mod.rs @@ -0,0 +1,8 @@ +pub mod assert; +pub mod cs; + +pub(in super::super) fn debug_success(name: &str, i: usize, frequency: usize) { + if i % frequency == frequency - 1 { + println!("{} tests {} to {} have passed", name, i + 1 - frequency, i); + } +} diff --git a/crates/zkevm_circuits/src/bn254/tests/validation.rs b/crates/zkevm_circuits/src/bn254/tests/validation.rs new file mode 100644 index 0000000..e4660fa --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/tests/validation.rs @@ -0,0 +1,133 @@ +pub mod test { + use std::sync::Arc; + + use crate::bn254::tests::utils::cs::create_test_cs; + use crate::bn254::{ + bn254_base_field_params, validation, BN256BaseNNField, BN256Fq2NNField, + BN256SWProjectivePoint, BN256SWProjectivePointTwisted, + }; + use boojum::field::goldilocks::GoldilocksField; + use boojum::gadgets::boolean::Boolean; + use boojum::gadgets::non_native_field::traits::NonNativeField; + use boojum::pairing::bn256::{Fq, G1Affine, G2Affine}; + use boojum::pairing::ff::Field; + use boojum::pairing::CurveAffine; + + type F = GoldilocksField; + type P = GoldilocksField; + + /// Tests whether when inserted a valid point on the regular curve, + /// the validation function returns true. + #[test] + fn test_on_curve_validation_valid() { + // Preparing the constraint system and parameters + let mut owned_cs = create_test_cs(1 << 20); + let cs = &mut owned_cs; + let params = bn254_base_field_params(); + + // Preparing booleans + let boolean_true = Boolean::allocated_constant(cs, true); + let boolean_false = Boolean::allocated_constant(cs, false); + + // Prepating a point on the curve (just take 8*G where G is the generator) + let mut point = BN256SWProjectivePoint::one(cs, &Arc::new(params)); + point = point.double(cs); + point = point.double(cs); + point = point.double(cs); + let (point, at_infty) = point.convert_to_affine_or_default(cs, G1Affine::one()); + + // Asserting we are not at infinity + Boolean::enforce_equal(cs, &at_infty, &boolean_false); + + // Check if the point is on the curve + let is_valid = validation::is_on_curve(cs, (&point.0, &point.1), &Arc::new(params)); + Boolean::enforce_equal(cs, &is_valid, &boolean_true); + } + + /// Tests whether when inserted a valid point on the twisted curve, the + /// validation function returns true. + #[test] + fn test_on_twisted_curve_validation_valid() { + // Preparing the constraint system and parameters + let mut owned_cs = create_test_cs(1 << 20); + let cs = &mut owned_cs; + let params = bn254_base_field_params(); + + // Preparing booleans + let boolean_true = Boolean::allocated_constant(cs, true); + let boolean_false = Boolean::allocated_constant(cs, false); + + // Prepating a point on the curve (just take 16*G where G is the generator) + let mut point = BN256SWProjectivePointTwisted::one(cs, &Arc::new(params)); + point = point.double(cs); + point = point.double(cs); + point = point.double(cs); + point = point.double(cs); + let (point, at_infty) = point.convert_to_affine_or_default(cs, G2Affine::one()); + + // Asserting we are not at infinity + Boolean::enforce_equal(cs, &at_infty, &boolean_false); + + // Check if the point is on the curve + let is_valid = validation::is_on_twist_curve(cs, (&point.0, &point.1), &Arc::new(params)); + Boolean::enforce_equal(cs, &is_valid, &boolean_true); + } + + /// Tests whether when inserted an invalid point on the regular curve, + /// the validation function returns false. + #[test] + fn test_on_curve_validation_invalid() { + // Preparing the constraint system and parameters + let mut owned_cs = create_test_cs(1 << 20); + let cs = &mut owned_cs; + let params = bn254_base_field_params(); + let boolean_false = Boolean::allocated_constant(cs, false); + + // Prepating a point on the curve (just take 8*G where G is the generator) + let mut point = BN256SWProjectivePoint::one(cs, &Arc::new(params)); + point = point.double(cs); + point = point.double(cs); + point = point.double(cs); + let (mut point, at_infty) = point.convert_to_affine_or_default(cs, G1Affine::one()); + + // Now, to make a point invalid, we simply add 1 to the x-coordinate + let mut one = BN256BaseNNField::allocated_constant(cs, Fq::one(), &Arc::new(params)); + point.0 = point.0.add(cs, &mut one); + + // Asserting we are not at infinity + Boolean::enforce_equal(cs, &at_infty, &boolean_false); + + // Check if the point is on the curve + let is_valid = validation::is_on_curve(cs, (&point.0, &point.1), &Arc::new(params)); + Boolean::enforce_equal(cs, &is_valid, &boolean_false); + } + + /// Tests whether when inserted an invalid point on the regular curve, + /// the validation function returns false. + #[test] + fn test_on_twisted_curve_validation_invalid() { + // Preparing the constraint system and parameters + let mut owned_cs = create_test_cs(1 << 20); + let cs = &mut owned_cs; + let params = bn254_base_field_params(); + let boolean_false = Boolean::allocated_constant(cs, false); + + // Prepating a point on the curve (just take 8*G where G is the generator) + let mut point = BN256SWProjectivePointTwisted::one(cs, &Arc::new(params)); + point = point.double(cs); + point = point.double(cs); + point = point.double(cs); + let (mut point, at_infty) = point.convert_to_affine_or_default(cs, G2Affine::one()); + + // Now, to make a point invalid, we simply add 1 to the x-coordinate + let mut one = BN256Fq2NNField::allocated_constant(cs, Fq::one(), &Arc::new(params)); + point.0 = point.0.add(cs, &mut one); + + // Asserting we are not at infinity + Boolean::enforce_equal(cs, &at_infty, &boolean_false); + + // Check if the point is on the curve + let is_valid = validation::is_on_twist_curve(cs, (&point.0, &point.1), &Arc::new(params)); + Boolean::enforce_equal(cs, &is_valid, &boolean_false); + } +} diff --git a/crates/zkevm_circuits/src/bn254/validation.rs b/crates/zkevm_circuits/src/bn254/validation.rs new file mode 100644 index 0000000..cd38726 --- /dev/null +++ b/crates/zkevm_circuits/src/bn254/validation.rs @@ -0,0 +1,142 @@ +use arrayvec::ArrayVec; +use boojum::cs::traits::cs::ConstraintSystem; +use boojum::field::SmallField; +use boojum::gadgets::boolean::Boolean; +use boojum::gadgets::non_native_field::implementations::NonNativeFieldOverU16Params; +use boojum::gadgets::non_native_field::traits::NonNativeField; +use boojum::gadgets::u256::UInt256; +use std::sync::Arc; + +use crate::bn254::{BN256BaseNNField, BN256BaseNNFieldParams, BN256Fq, BN256Fq2NNField}; +use crate::ethereum_types::U256; +use boojum::pairing::ff::PrimeField; + +// The Short Weierstrass equation of the curve is y^2 = x^3 + B. +// B parameter for BN256 curve equation. +const B: &str = "3"; +const B_TWIST_C0: &str = + "19485874751759354771024239261021720505790618469301721065564631296452457478373"; +const B_TWIST_C1: &str = + "266929791119991161246907387137283842545076965332900288569378510910307636690"; + +/// Checks that each passed value is in `BN256` primary field: +/// base or scalar depending on params. +/// Masks value in-place otherwise. +pub(crate) fn validate_in_field< + F: SmallField, + T: PrimeField, + CS: ConstraintSystem, + const N: usize, +>( + cs: &mut CS, + values: &mut ArrayVec, N>, + params: &Arc>, +) -> ArrayVec, N> { + let p_u256 = U256([ + params.modulus_u1024.as_ref().as_words()[0], + params.modulus_u1024.as_ref().as_words()[1], + params.modulus_u1024.as_ref().as_words()[2], + params.modulus_u1024.as_ref().as_words()[3], + ]); + let p_u256 = UInt256::allocated_constant(cs, p_u256); + + let mut values_in_range = ArrayVec::<_, N>::new(); + + for value in values.iter_mut() { + let (_, is_in_range) = value.overflowing_sub(cs, &p_u256); + *value = value.mask(cs, is_in_range); + values_in_range.push(is_in_range); + } + + values_in_range +} + +/// Checks that the passed point is on `BN256` curve. +/// The `Infinity` point is not counted as on curve. +pub(crate) fn is_on_curve>( + cs: &mut CS, + point: (&BN256BaseNNField, &BN256BaseNNField), + params: &Arc, +) -> Boolean { + let (x, y) = point; + + let mut x = x.clone(); + let mut y = y.clone(); + + let b = BN256Fq::from_str(B).unwrap(); + let mut b = BN256BaseNNField::allocated_constant(cs, b, params); + + let mut x_squared = x.square(cs); + let mut x_cubed = x_squared.mul(cs, &mut x); + + let mut x_cubed_plus_b = x_cubed.add(cs, &mut b); + let mut y_squared = y.square(cs); + + BN256BaseNNField::equals(cs, &mut y_squared, &mut x_cubed_plus_b) +} + +/// Checks that the passed point is on G2 `BN256` curve. +/// The `Infinity` point is not counted as on curve. +/// See https://hackmd.io/@jpw/bn254#Twists for further details. +pub(crate) fn is_on_twist_curve>( + cs: &mut CS, + point: (&BN256Fq2NNField, &BN256Fq2NNField), + params: &Arc, +) -> Boolean { + let (x, y) = point; + + let mut x = x.clone(); + let mut y = y.clone(); + + let b_c0 = BN256Fq::from_str(B_TWIST_C0).unwrap(); + let b_c1 = BN256Fq::from_str(B_TWIST_C1).unwrap(); + + let b_c0 = BN256BaseNNField::allocated_constant(cs, b_c0, params); + let b_c1 = BN256BaseNNField::allocated_constant(cs, b_c1, params); + + let mut b = BN256Fq2NNField::new(b_c0, b_c1); + + let mut x_squared = x.square(cs); + let mut x_cubed = x_squared.mul(cs, &mut x); + + let mut x_cubed_plus_b = x_cubed.add(cs, &mut b); + let mut y_squared = y.square(cs); + + y_squared.equals(cs, &mut x_cubed_plus_b) +} + +/// Check whether passed point is classified as `Infinity`. +/// See https://eips.ethereum.org/EIPS/eip-196 for further details. +// We use `UInt256` instead of `BN256BaseNNField` +// because we need to be able to check the unmasked value. +pub(crate) fn is_affine_infinity>( + cs: &mut CS, + point: (&UInt256, &UInt256), +) -> Boolean { + let (x, y) = point; + let x_is_zero = x.is_zero(cs); + let y_is_zero = y.is_zero(cs); + + x_is_zero.and(cs, y_is_zero) +} + +/// Check whether passed point in G2 is classified as `Infinity`. +/// See https://eips.ethereum.org/EIPS/eip-196 for further details. +// We use `UInt256` instead of `BN256BaseNNField` +// because we need to be able to check the unmasked value. +pub(crate) fn is_twist_affine_infinity>( + cs: &mut CS, + point: (&UInt256, &UInt256, &UInt256, &UInt256), +) -> Boolean { + let (x_c0, x_c1, y_c0, y_c1) = point; + + let x_c0_is_zero = x_c0.is_zero(cs); + let x_c1_is_zero = x_c1.is_zero(cs); + let y_c0_is_zero = y_c0.is_zero(cs); + let y_c1_is_zero = y_c1.is_zero(cs); + + Boolean::multi_and( + cs, + &[x_c0_is_zero, x_c1_is_zero, y_c0_is_zero, y_c1_is_zero], + ) +} diff --git a/crates/zkevm_circuits/src/demux_log_queue/input.rs b/crates/zkevm_circuits/src/demux_log_queue/input.rs index 77f378d..2c041b3 100644 --- a/crates/zkevm_circuits/src/demux_log_queue/input.rs +++ b/crates/zkevm_circuits/src/demux_log_queue/input.rs @@ -133,6 +133,22 @@ impl LogDemuxerOutputData { DemuxOutput::TransientStorage, &self.output_queue_states[DemuxOutput::TransientStorage as usize], ), + ( + DemuxOutput::Modexp, + &self.output_queue_states[DemuxOutput::Modexp as usize], + ), + ( + DemuxOutput::ECAdd, + &self.output_queue_states[DemuxOutput::ECAdd as usize], + ), + ( + DemuxOutput::ECMul, + &self.output_queue_states[DemuxOutput::ECMul as usize], + ), + ( + DemuxOutput::ECPairing, + &self.output_queue_states[DemuxOutput::ECPairing as usize], + ), ]; assert_eq!(tuples.len(), NUM_DEMUX_OUTPUTS); diff --git a/crates/zkevm_circuits/src/demux_log_queue/mod.rs b/crates/zkevm_circuits/src/demux_log_queue/mod.rs index 52a0327..34c2c87 100644 --- a/crates/zkevm_circuits/src/demux_log_queue/mod.rs +++ b/crates/zkevm_circuits/src/demux_log_queue/mod.rs @@ -50,9 +50,13 @@ pub enum DemuxOutput { ECRecover, Secp256r1Verify, TransientStorage, + Modexp, + ECAdd, + ECMul, + ECPairing, } -pub const NUM_DEMUX_OUTPUTS: usize = DemuxOutput::TransientStorage as usize + 1; +pub const NUM_DEMUX_OUTPUTS: usize = DemuxOutput::ECPairing as usize + 1; pub const ALL_DEMUX_OUTPUTS: [DemuxOutput; NUM_DEMUX_OUTPUTS] = [ DemuxOutput::RollupStorage, @@ -64,6 +68,10 @@ pub const ALL_DEMUX_OUTPUTS: [DemuxOutput; NUM_DEMUX_OUTPUTS] = [ DemuxOutput::ECRecover, DemuxOutput::Secp256r1Verify, DemuxOutput::TransientStorage, + DemuxOutput::Modexp, + DemuxOutput::ECAdd, + DemuxOutput::ECMul, + DemuxOutput::ECPairing, ]; impl DemuxOutput { @@ -90,6 +98,11 @@ impl DemuxOutput { Self::Sha256 => Some(*zkevm_opcode_defs::system_params::SHA256_ROUND_FUNCTION_PRECOMPILE_FORMAL_ADDRESS), Self::ECRecover => Some(*zkevm_opcode_defs::system_params::ECRECOVER_INNER_FUNCTION_PRECOMPILE_FORMAL_ADDRESS), Self::Secp256r1Verify => Some(*zkevm_opcode_defs::system_params::SECP256R1_VERIFY_INNER_FUNCTION_PRECOMPILE_FORMAL_ADDRESS), + Self::Modexp => Some(*zkevm_opcode_defs::system_params::MODEXP_PRECOMPILE_FORMAL_ADDRESS), + Self::ECAdd => Some(*zkevm_opcode_defs::system_params::ECADD_PRECOMPILE_FORMAL_ADDRESS), + Self::ECMul => Some(*zkevm_opcode_defs::system_params::ECMUL_PRECOMPILE_FORMAL_ADDRESS), + Self::ECPairing => Some(*zkevm_opcode_defs::system_params::ECPAIRING_PRECOMPILE_FORMAL_ADDRESS), + _ => None, } } diff --git a/crates/zkevm_circuits/src/lib.rs b/crates/zkevm_circuits/src/lib.rs index 757211a..149e3de 100644 --- a/crates/zkevm_circuits/src/lib.rs +++ b/crates/zkevm_circuits/src/lib.rs @@ -15,6 +15,7 @@ pub use boojum::ethereum_types; pub mod config; pub mod base_structures; +pub mod bn254; pub mod code_unpacker_sha256; pub mod demux_log_queue; pub mod ecrecover; @@ -24,6 +25,7 @@ pub mod keccak256_round_function; pub mod linear_hasher; pub mod log_sorter; pub mod main_vm; +pub mod modexp; pub mod ram_permutation; pub mod recursion; pub mod scheduler; diff --git a/crates/zkevm_circuits/src/modexp/.gitignore b/crates/zkevm_circuits/src/modexp/.gitignore new file mode 100644 index 0000000..6a65806 --- /dev/null +++ b/crates/zkevm_circuits/src/modexp/.gitignore @@ -0,0 +1,2 @@ +tests_json/*.py +modexp.sage.py \ No newline at end of file diff --git a/crates/zkevm_circuits/src/modexp/README.md b/crates/zkevm_circuits/src/modexp/README.md new file mode 100644 index 0000000..6cbc67c --- /dev/null +++ b/crates/zkevm_circuits/src/modexp/README.md @@ -0,0 +1,35 @@ +# Modexp Precompile Circuits + +This folder contains circuits for the `modexp` precompile. Namely, +we implement the operation $b^e$ mod $m$. Since we are limited +by the size of each integer, we include different versions of the +circuit to handle different sizes $b,e,m$. The circuits are: + +- 32-32-32: $b,e,m$ are 32-byte integers. +- 32-4-32: $b,m$ are 32-byte integers, $e$ is a 4-byte integer. +- 256-256-256: $b,e,m$ are 256-byte integers. +- 256-8-256: $b,m$ are 256-byte integers, $e$ is a 8-byte integer. + +## :file_folder: Structure + +The package is structured as follows: + +| Path | Description | +| --- | --- | +| [`implementation`](implementation) | Main circuits. | +| [`tests_json`](tests_json) | JSON files with tests. | +| [`test.rs`](test.rs) | File with `modexp` tests. | +| [`input.rs`](input.rs) | Entrypoints for further integration. | + +## :zap: Performance + +The circuits are optimized for performance. Below, we list +the number of constraints for each circuit. + +| Circuit | General Purpose Rows | +| --- | --- | +| 32-32 `modmul` | 2,527 | +| 32-4-32 `modexp` | 160,827 | +| 32-32-32 `modexp` | ~1,286,616 | +| 256-256 `modmul` | Untested | +| `modexp`, 256-byte $b,m$ | Untested | diff --git a/crates/zkevm_circuits/src/modexp/implementation/mod.rs b/crates/zkevm_circuits/src/modexp/implementation/mod.rs new file mode 100644 index 0000000..26ce2a4 --- /dev/null +++ b/crates/zkevm_circuits/src/modexp/implementation/mod.rs @@ -0,0 +1,2 @@ +pub mod u2048; +pub mod u256; diff --git a/crates/zkevm_circuits/src/modexp/implementation/u2048.rs b/crates/zkevm_circuits/src/modexp/implementation/u2048.rs new file mode 100644 index 0000000..afab330 --- /dev/null +++ b/crates/zkevm_circuits/src/modexp/implementation/u2048.rs @@ -0,0 +1,107 @@ +//! 256-byte implementation of the modular exponentiation algorithm. + +use boojum::{ + crypto_bigint::U1024, + cs::traits::cs::ConstraintSystem, + field::SmallField, + gadgets::{traits::selectable::Selectable, u2048::UInt2048, u32::UInt32}, +}; + +const U2048_MAX_BITS: usize = 2048; +const U4096_MAX_BITS: usize = 4096; +const U2048_MAX_LIMBS: usize = 64; +const U4096_MAX_LIMBS: usize = 128; + +/// Finds the result of exponentiating `base` to the power of `exponent` modulo `modulus`. +/// Input parameters format is done according to EIP-198: +/// https://eips.ethereum.org/EIPS/eip-198. +/// +/// Implementation is based on _Algorithm 1_ from the paper +/// https://cse.buffalo.edu/srds2009/escs2009_submission_Gopal.pdf. +/// +/// This implementation works with 256-byte `base`, `exponent`, and `modulus`. +pub fn modexp_256_256_256( + cs: &mut CS, + base: &UInt2048, + exponent: &UInt2048, + modulus: &UInt2048, +) -> UInt2048 +where + F: SmallField, + CS: ConstraintSystem, +{ + let mut a = UInt2048::allocated_constant(cs, (U1024::ONE, U1024::ZERO)); + let binary_expansion = exponent + .to_le_bytes(cs) + .into_iter() + .map(|x| x.into_num().spread_into_bits::(cs)) + .flatten() + .collect::>(); + + for e in binary_expansion.into_iter().rev() { + // a <- a^2 mod (modulus) + let a_squared = a.modmul(cs, &a, modulus); + + // a <- a^2 * (base) mod (modulus) + let a_base = a_squared.modmul(cs, base, modulus); + + // If the i-th bit of the exponent is 1, then a <- a^2 * (base) mod (modulus) + // Otherwise, we just set a <- a^2 mod (modulus) + a = UInt2048::conditionally_select(cs, e, &a_base, &a_squared); + } + + a +} + +/// Finds the result of exponentiating `base` to the power of `exponent` modulo `modulus`. +/// Input parameters format is done according to EIP-198: +/// https://eips.ethereum.org/EIPS/eip-198. +/// +/// Implementation is based on _Algorithm 1_ from the paper +/// https://cse.buffalo.edu/srds2009/escs2009_submission_Gopal.pdf. +/// +/// This implementation works with 256-byte `base`, `modulus`, and 8-byte `exponent`. +/// Since `UInt64` is not implemented yet as of now, +/// we use two [`UInt32`]s (low and high, respectively) to represent the exponent. +pub fn modexp_256_8_256( + cs: &mut CS, + base: &UInt2048, + exponent: &(UInt32, UInt32), + modulus: &UInt2048, +) -> UInt2048 +where + F: SmallField, + CS: ConstraintSystem, +{ + // Helper function to convert a UInt32 into a binary expansion + let mut into_binary_expansion = |x: &UInt32| { + x.to_le_bytes(cs) + .into_iter() + .map(|x| x.into_num().spread_into_bits::(cs)) + .flatten() + .collect::>() + }; + + // Convert the exponent into a binary expansion. We do that by concatenating + // the high part binary expansion with the low part binary expansion. + let (low, high) = exponent; + let mut binary_expansion = into_binary_expansion(high); + let mut low_binary_expansion = into_binary_expansion(low); + binary_expansion.append(&mut low_binary_expansion); + + // Start the modular exponentiation + let mut a = UInt2048::allocated_constant(cs, (U1024::ONE, U1024::ZERO)); + for e in binary_expansion.into_iter().rev() { + // a <- a^2 mod (modulus) + let a_squared = a.modmul(cs, &a, modulus); + + // a <- a^2 * (base) mod (modulus) + let a_base = a_squared.modmul(cs, base, modulus); + + // If the i-th bit of the exponent is 1, then a <- a^2 * (base) mod (modulus) + // Otherwise, we just set a <- a^2 mod (modulus) + a = UInt2048::conditionally_select(cs, e, &a_base, &a_squared); + } + + a +} diff --git a/crates/zkevm_circuits/src/modexp/implementation/u256.rs b/crates/zkevm_circuits/src/modexp/implementation/u256.rs new file mode 100644 index 0000000..d67542d --- /dev/null +++ b/crates/zkevm_circuits/src/modexp/implementation/u256.rs @@ -0,0 +1,100 @@ +//! 32-byte implementation of the modular exponentiation algorithm. + +use boojum::{ + cs::traits::cs::ConstraintSystem, + ethereum_types::U256, + field::SmallField, + gadgets::{traits::selectable::Selectable, u256::UInt256, u32::UInt32}, +}; + +const U256_MAX_BITS: usize = 256; +const U512_MAX_BITS: usize = 512; +const U256_MAX_LIMBS: usize = 8; +const U512_MAX_LIMBS: usize = 16; + +const MAX_BINARY_SEARCH_ITERATIONS: usize = 33; + +/// Finds the result of exponentiating `base` to the power of `exponent` modulo `modulus`. +/// Input parameters format is done according to EIP-198: +/// https://eips.ethereum.org/EIPS/eip-198. +/// +/// Implementation is based on _Algorithm 1_ from the paper +/// https://cse.buffalo.edu/srds2009/escs2009_submission_Gopal.pdf. +/// +/// This implementation works with 32-byte `base`, `exponent`, and `modulus`. +pub fn modexp_32_32_32( + cs: &mut CS, + base: &UInt256, + exponent: &UInt256, + modulus: &UInt256, +) -> UInt256 +where + F: SmallField, + CS: ConstraintSystem, +{ + let mut a = UInt256::allocated_constant(cs, U256::one()); + let binary_expansion = exponent + .to_le_bytes(cs) + .into_iter() + .map(|x| x.into_num().spread_into_bits::(cs)) + .flatten() + .collect::>(); + + for e in binary_expansion.into_iter().rev() { + // a <- a^2 mod (modulus) + let a_squared = a.modmul(cs, &a, modulus); + + // a <- a^2 * (base) mod (modulus) + let a_base = a_squared.modmul(cs, base, modulus); + + // If the i-th bit of the exponent is 1, then a <- a^2 * (base) mod (modulus) + // Otherwise, we just set a <- a^2 mod (modulus) + a = UInt256::conditionally_select(cs, e, &a_base, &a_squared); + } + + // See EIP-198; if exponent is zero, we shall return zero. + let e_is_zero = exponent.is_zero(cs); + let a = a.mask_negated(cs, e_is_zero); + a +} + +/// Finds the result of exponentiating `base` to the power of `exponent` modulo `modulus`. +/// Input parameters format is done according to EIP-198: +/// https://eips.ethereum.org/EIPS/eip-198. +/// +/// Implementation is based on _Algorithm 1_ from the paper +/// https://cse.buffalo.edu/srds2009/escs2009_submission_Gopal.pdf. +/// +/// This implementation works with 32-byte `base` and `modulus` and 4-byte `exponent`. +pub fn modexp_32_4_32( + cs: &mut CS, + base: &UInt256, + exponent: &UInt32, + modulus: &UInt256, +) -> UInt256 +where + F: SmallField, + CS: ConstraintSystem, +{ + let mut a = UInt256::allocated_constant(cs, U256::one()); + let binary_expansion = exponent + .to_le_bytes(cs) + .into_iter() + .map(|x| x.into_num().spread_into_bits::(cs)) + .flatten() + .collect::>(); + + for e in binary_expansion.into_iter().rev() { + // a <- a^2 mod (modulus) + let a_squared = a.modmul(cs, &a, modulus); + + // a <- a^2 * (base) mod (modulus) + let a_base = a_squared.modmul(cs, base, modulus); + + // If the i-th bit of the exponent is 1, then a <- a^2 * (base) mod (modulus) + // Otherwise, we just set a <- a^2 mod (modulus) + a = UInt256::conditionally_select(cs, e, &a_base, &a_squared); + } + + a +} diff --git a/crates/zkevm_circuits/src/modexp/input.rs b/crates/zkevm_circuits/src/modexp/input.rs new file mode 100644 index 0000000..7d38f54 --- /dev/null +++ b/crates/zkevm_circuits/src/modexp/input.rs @@ -0,0 +1,71 @@ +use boojum::cs::traits::cs::ConstraintSystem; +use std::collections::VecDeque; + +use super::*; +use crate::base_structures::log_query::LogQuery; +use crate::base_structures::precompile_input_outputs::*; +use crate::base_structures::vm_state::*; +use crate::fsm_input_output::{ClosedFormInput, ClosedFormInputWitness}; +use boojum::cs::Variable; +use boojum::field::SmallField; +use boojum::gadgets::queue::*; +use boojum::gadgets::traits::allocatable::CSAllocatable; +use boojum::gadgets::traits::allocatable::CSPlaceholder; +use boojum::gadgets::traits::auxiliary::PrettyComparison; +use boojum::gadgets::traits::encodable::CircuitVarLengthEncodable; +use boojum::gadgets::traits::encodable::WitnessVarLengthEncodable; +use cs_derive::{CSAllocatable, CSSelectable, CSVarLengthEncodable, WitnessHookable}; +use derivative::Derivative; +use serde::{Deserialize, Serialize}; + +#[derive( + Derivative, + CSAllocatable, + CSSelectable, + CSVarLengthEncodable, + WitnessHookable, + WitVarLengthEncodable, +)] +#[derivative(Clone, Copy, Debug)] +#[DerivePrettyComparison("true")] +pub struct ModexpCircuitFSMInputOutput { + pub log_queue_state: QueueState, + pub memory_queue_state: QueueState, +} + +impl CSPlaceholder for ModexpCircuitFSMInputOutput +where + F: SmallField, +{ + fn placeholder(cs: &mut CS) -> Self + where + CS: ConstraintSystem, + { + Self { + log_queue_state: QueueState::::placeholder(cs), + memory_queue_state: QueueState::::placeholder(cs), + } + } +} + +pub type ModexpCircuitInputOutput = ClosedFormInput< + F, + ModexpCircuitFSMInputOutput, + PrecompileFunctionInputData, + PrecompileFunctionOutputData, +>; +pub type ModexpCircuitInputOutputWitness = ClosedFormInputWitness< + F, + ModexpCircuitFSMInputOutput, + PrecompileFunctionInputData, + PrecompileFunctionOutputData, +>; + +#[derive(Derivative, Serialize, Deserialize)] +#[derivative(Clone, Debug, Default)] +#[serde(bound = "")] +pub struct ModexpCircuitInstanceWitness { + pub closed_form_input: ModexpCircuitInputOutputWitness, + pub requests_queue_witness: CircuitQueueRawWitness, 4, LOG_QUERY_PACKED_WIDTH>, + pub memory_reads_witness: VecDeque<[U256; NUM_MEMORY_READS_PER_CYCLE]>, +} diff --git a/crates/zkevm_circuits/src/modexp/mod.rs b/crates/zkevm_circuits/src/modexp/mod.rs new file mode 100644 index 0000000..58ea19f --- /dev/null +++ b/crates/zkevm_circuits/src/modexp/mod.rs @@ -0,0 +1,264 @@ +pub mod implementation; + +// Testing packages +pub mod input; +#[cfg(test)] +pub mod test; +pub mod tests_json; + +use std::collections::VecDeque; +use std::sync::{Arc, RwLock}; + +use boojum::algebraic_props::round_function::AlgebraicRoundFunction; + +use boojum::cs::gates::PublicInputGate; +use boojum::cs::traits::cs::ConstraintSystem; +use boojum::field::SmallField; +use boojum::gadgets::boolean::Boolean; + +use boojum::gadgets::num::Num; +use boojum::gadgets::queue::CircuitQueueWitness; +use boojum::gadgets::queue::QueueState; +use boojum::gadgets::traits::allocatable::{CSAllocatableExt, CSPlaceholder}; +use boojum::gadgets::traits::round_function::CircuitRoundFunction; +use boojum::gadgets::traits::selectable::Selectable; +use boojum::gadgets::traits::witnessable::WitnessHookable; +use boojum::gadgets::u160::UInt160; +use boojum::gadgets::u256::UInt256; +use boojum::gadgets::u32::UInt32; +use boojum::gadgets::u8::UInt8; +use cs_derive::*; +use derivative::Derivative; +use zkevm_opcode_defs::system_params::PRECOMPILE_AUX_BYTE; + +use crate::base_structures::log_query::*; +use crate::base_structures::memory_query::*; +use crate::base_structures::precompile_input_outputs::PrecompileFunctionOutputData; +use crate::demux_log_queue::StorageLogQueue; +use crate::ethereum_types::U256; +use crate::fsm_input_output::circuit_inputs::INPUT_OUTPUT_COMMITMENT_LENGTH; +use crate::fsm_input_output::*; +use crate::modexp::implementation::u256::modexp_32_32_32; +use crate::modexp::input::{ModexpCircuitInputOutput, ModexpCircuitInstanceWitness}; +use crate::storage_application::ConditionalWitnessAllocator; + +use super::*; + +pub const NUM_MEMORY_READS_PER_CYCLE: usize = 3; + +#[derive(Derivative, CSSelectable)] +#[derivative(Clone, Debug)] +pub struct ModexpPrecompileCallParams { + pub input_page: UInt32, + pub input_offset: UInt32, + pub output_page: UInt32, + pub output_offset: UInt32, +} + +impl ModexpPrecompileCallParams { + pub fn from_encoding>(_cs: &mut CS, encoding: UInt256) -> Self { + let input_offset = encoding.inner[0]; + let output_offset = encoding.inner[2]; + let input_page = encoding.inner[4]; + let output_page = encoding.inner[5]; + + let new = Self { + input_page, + input_offset, + output_page, + output_offset, + }; + + new + } +} + +pub fn modexp_function_entry_point< + F: SmallField, + CS: ConstraintSystem, + R: CircuitRoundFunction + AlgebraicRoundFunction, +>( + cs: &mut CS, + witness: ModexpCircuitInstanceWitness, + round_function: &R, + limit: usize, +) -> [Num; INPUT_OUTPUT_COMMITMENT_LENGTH] +where + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN]:, + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN]:, + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN]:, + [(); as CSAllocatableExt>::INTERNAL_STRUCT_LEN + 1]:, +{ + let ModexpCircuitInstanceWitness { + closed_form_input, + requests_queue_witness, + memory_reads_witness, + } = witness; + let memory_reads_witness: VecDeque<_> = memory_reads_witness.into_iter().flatten().collect(); + + let mut structured_input = + ModexpCircuitInputOutput::alloc_ignoring_outputs(cs, closed_form_input.clone()); + let start_flag = structured_input.start_flag; + + let requests_queue_state_from_input = structured_input.observable_input.initial_log_queue_state; + requests_queue_state_from_input.enforce_trivial_head(cs); + + let requests_queue_state_from_fsm = structured_input.hidden_fsm_input.log_queue_state; + + let requests_queue_state = QueueState::conditionally_select( + cs, + start_flag, + &requests_queue_state_from_input, + &requests_queue_state_from_fsm, + ); + + let mut requests_queue = StorageLogQueue::::from_state(cs, requests_queue_state); + let queue_witness = CircuitQueueWitness::from_inner_witness(requests_queue_witness); + requests_queue.witness = Arc::new(queue_witness); + + let memory_queue_state_from_input = + structured_input.observable_input.initial_memory_queue_state; + memory_queue_state_from_input.enforce_trivial_head(cs); + + let memory_queue_state_from_fsm = structured_input.hidden_fsm_input.memory_queue_state; + + let memory_queue_state = QueueState::conditionally_select( + cs, + start_flag, + &memory_queue_state_from_input, + &memory_queue_state_from_fsm, + ); + + let mut memory_queue = MemoryQueue::::from_state(cs, memory_queue_state); + let read_queries_allocator = ConditionalWitnessAllocator::> { + witness_source: Arc::new(RwLock::new(memory_reads_witness)), + }; + + let precompile_address = UInt160::allocated_constant( + cs, + *zkevm_opcode_defs::system_params::MODEXP_PRECOMPILE_FORMAL_ADDRESS, + ); + + let one_u32 = UInt32::allocated_constant(cs, 1u32); + let zero_u256 = UInt256::zero(cs); + let boolean_false = Boolean::allocated_constant(cs, false); + let boolean_true = Boolean::allocated_constant(cs, true); + let aux_byte_for_precompile = UInt8::allocated_constant(cs, PRECOMPILE_AUX_BYTE); + + for _cycle in 0..limit { + let is_empty = requests_queue.is_empty(cs); + let should_process = is_empty.negated(cs); + let (request, _) = requests_queue.pop_front(cs, should_process); + + let mut precompile_call_params = ModexpPrecompileCallParams::from_encoding(cs, request.key); + + let timestamp_to_use_for_read = request.timestamp; + let timestamp_to_use_for_write = timestamp_to_use_for_read.add_no_overflow(cs, one_u32); + + Num::conditionally_enforce_equal( + cs, + should_process, + &Num::from_variable(request.aux_byte.get_variable()), + &Num::from_variable(aux_byte_for_precompile.get_variable()), + ); + for (a, b) in request + .address + .inner + .iter() + .zip(precompile_address.inner.iter()) + { + Num::conditionally_enforce_equal( + cs, + should_process, + &Num::from_variable(a.get_variable()), + &Num::from_variable(b.get_variable()), + ); + } + + let mut read_values = [zero_u256; NUM_MEMORY_READS_PER_CYCLE]; + let mut bias_variable = should_process.get_variable(); + for dst in read_values.iter_mut() { + let read_query_value = read_queries_allocator.conditionally_allocate_biased( + cs, + should_process, + bias_variable, + ); + bias_variable = read_query_value.inner[0].get_variable(); + + *dst = read_query_value; + + let read_query = MemoryQuery { + timestamp: timestamp_to_use_for_read, + memory_page: precompile_call_params.input_page, + index: precompile_call_params.input_offset, + rw_flag: boolean_false, + is_ptr: boolean_false, + value: read_query_value, + }; + + let _ = memory_queue.push(cs, read_query, should_process); + + precompile_call_params.input_offset = precompile_call_params + .input_offset + .add_no_overflow(cs, one_u32); + } + + if crate::config::CIRCUIT_VERSOBE { + if should_process.witness_hook(cs)().unwrap() == true { + for each in read_values.iter() { + dbg!(each.witness_hook(cs)()); + } + } + } + let [base, exponent, modulus] = read_values; + let result = modexp_32_32_32(cs, &base, &exponent, &modulus); + + if crate::config::CIRCUIT_VERSOBE { + if should_process.witness_hook(cs)().unwrap() == true { + dbg!(result.witness_hook(cs)()); + } + } + + let result_query = MemoryQuery { + timestamp: timestamp_to_use_for_write, + memory_page: precompile_call_params.output_page, + index: precompile_call_params.output_offset, + rw_flag: boolean_true, + is_ptr: boolean_false, + value: result, + }; + + let _ = memory_queue.push(cs, result_query, should_process); + } + + requests_queue.enforce_consistency(cs); + + let done = requests_queue.is_empty(cs); + structured_input.completion_flag = done; + structured_input.observable_output = PrecompileFunctionOutputData::placeholder(cs); + + let final_memory_state = memory_queue.into_state(); + let final_requests_state = requests_queue.into_state(); + + structured_input.observable_output.final_memory_state = QueueState::conditionally_select( + cs, + structured_input.completion_flag, + &final_memory_state, + &structured_input.observable_output.final_memory_state, + ); + + structured_input.hidden_fsm_output.log_queue_state = final_requests_state; + structured_input.hidden_fsm_output.memory_queue_state = final_memory_state; + + structured_input.hook_compare_witness(cs, &closed_form_input); + + let compact_form = + ClosedFormInputCompactForm::from_full_form(cs, &structured_input, round_function); + let input_commitment = commit_variable_length_encodable_item(cs, &compact_form, round_function); + for el in input_commitment.iter() { + let gate = PublicInputGate::new(el.get_variable()); + gate.add_to_cs(cs); + } + + input_commitment +} diff --git a/crates/zkevm_circuits/src/modexp/modexp.sage b/crates/zkevm_circuits/src/modexp/modexp.sage new file mode 100644 index 0000000..fb2317b --- /dev/null +++ b/crates/zkevm_circuits/src/modexp/modexp.sage @@ -0,0 +1,165 @@ +# Modexp helper file. +# Note that we use w = 64 so that n = 4. + +UINT4096_LIMBS_NUMBER = 128 +UINT2048_LIMBS_NUMBER = 64 +UINT512_LIMBS_NUMBER = 16 +UINT256_LIMBS_NUMBER = 8 +BASE = 2^(32) # UINT32 base + +def gen_random_uint(limbs_number: int) -> list[Integer]: + """ + Generated a random uint512 number represented by 64 uint8 limbs. + """ + + return [randint(0, BASE-1) for _ in range(limbs_number)] + +def convert_from_limbs(limbs: list[Integer]) -> Integer: + """ + Converts a list of uint8 limbs to an Integer. + """ + + return sum([limbs[i] * BASE^i for i in range(len(limbs))]) + +def long_division_u256(n: list[Integer], m: list[Integer]) -> (Integer, Integer): + """ + Performs long division on two numbers in u256 represented by their limbs. + """ + + k = UINT512_LIMBS_NUMBER + l = UINT256_LIMBS_NUMBER + m = convert_from_limbs(m) + + # q <- 0, r <- first l-1 digits of n + q = 0 + #r = convert_from_limbs([n[k-l+1+i] if i < l-1 else Integer(0) for i in range(k)]) + r = n[8:] + r[0] = 0 + r[0:7] = r[1:8] + r[7] = 0 + + r = convert_from_limbs(r) + + # Initialize current d - intermediate dividend + for i in range(k-l+1): + # d_i <- b*r_{i-1} + \alpha_{i+l-1} + d = r * BASE + n[k-l-i] + + # beta_i <- next digit of quotient + # Using binary search to find beta_i + left, right = 0, BASE + for _ in range(33): + beta = (right + left) // 2 + (right + left) % 2 + r = d - m * beta + if r < 0: + right = beta - 1 + if r >= m: + left = beta + 1 + + assert 0 <= r < m, 'r was not in the range [0, m)' + + # q_i <- b*q_{i-1} + beta_i + q = q * BASE + beta + + return (q, r) + +def long_division_u2048(n: list[Integer], m: list[Integer]) -> (Integer, Integer): + """ + Performs long division on two numbers represented by their limbs. + """ + + k = UINT512_LIMBS_NUMBER + l = UINT256_LIMBS_NUMBER + m = convert_from_limbs(m) + + # q <- 0, r <- first l-1 digits of n + q = 0 + #r = convert_from_limbs([n[k-l+1+i] if i < l-1 else Integer(0) for i in range(k)]) + r = n[8:] + r[0] = 0 + r[0:7] = r[1:8] + r[7] = 0 + + r = convert_from_limbs(r) + + # Initialize current d - intermediate dividend + for i in range(k-l+1): + # d_i <- b*r_{i-1} + \alpha_{i+l-1} + d = r * BASE + n[k-l-i] + + # beta_i <- next digit of quotient + # Using binary search to find beta_i + left, right = 0, BASE + for _ in range(33): + beta = (right + left) // 2 + (right + left) % 2 + r = d - m * beta + if r < 0: + right = beta - 1 + if r >= m: + left = beta + 1 + + assert 0 <= r < m, 'r was not in the range [0, m)' + + # q_i <- b*q_{i-1} + beta_i + q = q * BASE + beta + + return (q, r) + +def modexp(base: Integer, exponent: Integer, modulus: Integer) -> Integer: + """ + Computes base^exponent mod modulus. + """ + + a = 1 + binary_exponent = exponent.binary() + for i in range(len(binary_exponent)): + a = a*a % modulus + if Integer(binary_exponent[i]) % 2 == 1: + a = a*base % modulus + + return a + +# Verification tests +print('Starting verification tests for u512/u256 division...') +VERIFICATION_TESTS_NUMBER = 10 +for i in range(VERIFICATION_TESTS_NUMBER): + n = gen_random_uint(UINT512_LIMBS_NUMBER) + m = gen_random_uint(UINT256_LIMBS_NUMBER) + q, r = long_division_u256(n, m) + + n = convert_from_limbs(n) + m = convert_from_limbs(m) + + assert q == n // m + assert r == n % m + + b = 0xbbe4922f210aa886cc084106178a3e2e9048d0223acb60f55b0a0ad1458dda6a + e = 0x590298d43998ff77a6b85f70835748739f57bed0e0ef16aec7ba2628da373cc7 + m = 0x4715ccf06b9b5602917948ec337e272e7515c3002b56f3a6324546e4c0c2410 + + assert b.powermod(e, m) == modexp(b, e, m) + +print('Verification tests for u512/u256 division have passed!...') + + +# Debugging +def modexp(base: Integer, exponent: Integer, modulus: Integer) -> Integer: + """ + Computes base^exponent mod modulus. + """ + + a = 1 + binary_exponent = exponent.binary() + print(binary_exponent) + for i in range(len(binary_exponent)): + a = a*a % modulus + if Integer(binary_exponent[i]) % 2 == 1: + a = a*base % modulus + print('a=',a) + return a + +assert modexp(0xf3bc340d206ac21e61e505d2755dea8495430f7b76223cc2a2a8c8ddd276a475, + 0x516470d4, + 0xea0b9bc7558ba1b3c3b0dc4ba64adc399e31204f2649bc276bb0f4b056636d18) == 0xafe13a3215873fc72e28b2d45b6d986a1ec272ecabb86a9f8345e720a868ec61 + + diff --git a/crates/zkevm_circuits/src/modexp/test.rs b/crates/zkevm_circuits/src/modexp/test.rs new file mode 100644 index 0000000..06336aa --- /dev/null +++ b/crates/zkevm_circuits/src/modexp/test.rs @@ -0,0 +1,334 @@ +pub mod test { + use boojum::config::DevCSConfig; + use boojum::cs::cs_builder::{new_builder, CsBuilder, CsBuilderImpl}; + use boojum::cs::cs_builder_reference::CsReferenceImplementationBuilder; + use boojum::cs::gates::{ + BooleanConstraintGate, ConstantsAllocatorGate, DotProductGate, + FmaGateInBaseFieldWithoutConstant, NopGate, ReductionGate, SelectionGate, U8x4FMAGate, + UIntXAddGate, ZeroCheckGate, + }; + use boojum::cs::implementations::reference_cs::CSReferenceImplementation; + use boojum::cs::traits::cs::ConstraintSystem; + use boojum::cs::traits::gate::GatePlacementStrategy; + use boojum::cs::{CSGeometry, GateConfigurationHolder, LookupParameters, StaticToolboxHolder}; + use boojum::field::goldilocks::GoldilocksField; + use boojum::field::SmallField; + use boojum::gadgets::boolean::Boolean; + use boojum::gadgets::tables::{ + create_and8_table, create_byte_split_table, create_xor8_table, And8Table, ByteSplitTable, + Xor8Table, + }; + use boojum::gadgets::u2048::UInt2048; + use boojum::gadgets::u256::UInt256; + + use crate::modexp::implementation::u256::{modexp_32_32_32, modexp_32_4_32}; + use crate::modexp::tests_json::u2048::Modmul256BytesTestCase; + use crate::modexp::tests_json::u256::{ + Modexp32BytesLargeExpTestCase, Modexp32BytesSmallExpTestCase, Modmul32BytesTestCase, + }; + use crate::modexp::tests_json::{ + MODEXP_32_32_32_TEST_CASES, MODEXP_32_4_32_TEST_CASES, MODMUL_256_256_TEST_CASES, + MODMUL_32_32_TEST_CASES, + }; + + type F = GoldilocksField; + type P = GoldilocksField; + + /// Creates a test constraint system for testing purposes + pub fn create_test_cs( + max_trace_len: usize, + ) -> CSReferenceImplementation< + F, + P, + DevCSConfig, + impl GateConfigurationHolder, + impl StaticToolboxHolder, + > { + let geometry = CSGeometry { + num_columns_under_copy_permutation: 200, + num_witness_columns: 0, + num_constant_columns: 8, + max_allowed_constraint_degree: 4, + }; + let max_variables = 1 << 26; + + fn configure< + F: SmallField, + T: CsBuilderImpl, + GC: GateConfigurationHolder, + TB: StaticToolboxHolder, + >( + builder: CsBuilder, + ) -> CsBuilder, impl StaticToolboxHolder> { + let builder = builder.allow_lookup( + LookupParameters::UseSpecializedColumnsWithTableIdAsConstant { + width: 3, + num_repetitions: 8, + share_table_id: true, + }, + ); + let builder = U8x4FMAGate::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = ConstantsAllocatorGate::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = FmaGateInBaseFieldWithoutConstant::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = ReductionGate::::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + // let owned_cs = ReductionGate::::configure_for_cs(owned_cs, GatePlacementStrategy::UseSpecializedColumns { num_repetitions: 8, share_constants: true }); + let builder = BooleanConstraintGate::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = UIntXAddGate::<32>::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = UIntXAddGate::<16>::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = UIntXAddGate::<8>::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = SelectionGate::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + let builder = ZeroCheckGate::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + false, + ); + let builder = DotProductGate::<4>::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + // let owned_cs = DotProductGate::<4>::configure_for_cs(owned_cs, GatePlacementStrategy::UseSpecializedColumns { num_repetitions: 1, share_constants: true }); + let builder = NopGate::configure_builder( + builder, + GatePlacementStrategy::UseGeneralPurposeColumns, + ); + + builder + } + + let builder_impl = + CsReferenceImplementationBuilder::::new(geometry, max_trace_len); + let builder = new_builder::<_, F>(builder_impl); + + let builder = configure(builder); + let mut owned_cs = builder.build(max_variables); + + // add tables + let table = create_xor8_table(); + owned_cs.add_lookup_table::(table); + + let table = create_and8_table(); + owned_cs.add_lookup_table::(table); + + let table = create_byte_split_table::(); + owned_cs.add_lookup_table::, 3>(table); + let table = create_byte_split_table::(); + owned_cs.add_lookup_table::, 3>(table); + let table = create_byte_split_table::(); + owned_cs.add_lookup_table::, 3>(table); + let table = create_byte_split_table::(); + owned_cs.add_lookup_table::, 3>(table); + let table = create_byte_split_table::(); + owned_cs.add_lookup_table::, 3>(table); + + owned_cs + } + + fn assert_equal_uint256(cs: &mut CS, a: &UInt256, b: &UInt256) + where + CS: ConstraintSystem, + { + let equals = UInt256::equals(cs, a, b); + let boolean_true = Boolean::allocated_constant(cs, true); + Boolean::enforce_equal(cs, &equals, &boolean_true); + } + + fn assert_equal_uint2048(cs: &mut CS, a: &UInt2048, b: &UInt2048) + where + CS: ConstraintSystem, + { + let equals = UInt2048::equals(cs, a, b); + let boolean_true = Boolean::allocated_constant(cs, true); + Boolean::enforce_equal(cs, &equals, &boolean_true); + } + + /// This function tests the modular exponentiation, that is + /// an operation `b^e mod m`, where b is the base, e is the exponent, + /// and m is the modulus when (b,e,m) are 32-bytes long. + /// + /// The function reads the test cases from [`MODEXP_32_32_32_TEST_CASES`] and runs them. + #[test] + #[ignore = "too-large circuit, should be run manually"] + fn test_modexp_32_32_32() { + // Preparing the constraint system and parameters + let mut owned_cs = create_test_cs(1 << 20); + let cs = &mut owned_cs; + + // Running tests from file + for (_, raw) in MODEXP_32_32_32_TEST_CASES.tests.iter().enumerate() { + // Input: + let test = Modexp32BytesLargeExpTestCase::from_raw(cs, &raw); + + // Expected: + let actual_modexp = modexp_32_32_32(cs, &test.base, &test.exponent, &test.modulus); + + // Actual: + let expected_modexp = test.expected.clone(); + + // Asserting + assert_equal_uint256(cs, &actual_modexp, &expected_modexp); + } + } + + /// This function tests the modular exponentiation, that is + /// an operation `b^e mod m`, where b is the base, e is the exponent, + /// and m is the modulus when (b,m) are 32-bytes long, and e is a 4-byte integer. + /// + /// The function reads the test cases from [`MODEXP_32_4_32_TEST_CASES`] and runs them. + #[test] + #[ignore = "too-large circuit, should be run manually"] + fn test_modexp_32_4_32() { + // Preparing the constraint system and parameters + let mut owned_cs = create_test_cs(1 << 20); + let cs = &mut owned_cs; + + // Running tests from file + for (_, raw) in MODEXP_32_4_32_TEST_CASES.tests.iter().enumerate() { + // Input: + let test = Modexp32BytesSmallExpTestCase::from_raw(cs, &raw); + + // Expected: + let actual_modexp = modexp_32_4_32(cs, &test.base, &test.exponent, &test.modulus); + + // Actual: + let expected_modexp = test.expected.clone(); + + // Asserting + assert_equal_uint256(cs, &actual_modexp, &expected_modexp); + } + + // Printing the number of constraints + let cs = owned_cs.into_assembly::(); + cs.print_gate_stats(); + } + + /// This function tests the modular multiplication, that is + /// an operation `a*b mod m`, where a and b are two integers, + /// e is the exponent, and m is the modulus. + /// + /// The function reads the test cases from [`MODMUL_32_32_TEST_CASES`] and runs them. + #[test] + fn test_modmul_32_32() { + // Preparing the constraint system and parameters + let mut owned_cs = create_test_cs(1 << 20); + let cs = &mut owned_cs; + + // Running tests from file + for (_, raw) in MODMUL_32_32_TEST_CASES.tests.iter().enumerate() { + // Input: + let test = Modmul32BytesTestCase::from_raw(cs, &raw); + + // Actual: + let actual_modmul = test.a.modmul(cs, &test.b, &test.modulus); + + // Expected: + let expected_modmul = test.expected.clone(); + + // Asserting + assert_equal_uint256(cs, &actual_modmul, &expected_modmul); + } + } + + /// This function runs an operation `a*b mod m`, where a and b are two integers, + /// e is the exponent, m is the modulus, and checks the number of constraints. + #[test] + #[ignore = "debugs the performance, should be run manually"] + fn debug_modmul_32_32_performance() { + // Preparing the constraint system and parameters + let mut owned_cs = create_test_cs(1 << 20); + let cs = &mut owned_cs; + + // Running tests from file + let raw = &MODMUL_32_32_TEST_CASES.tests[0]; + // Input: + let test_case = Modmul32BytesTestCase::from_raw(cs, &raw); + + // Actual: + let _ = test_case.a.modmul(cs, &test_case.b, &test_case.modulus); + + // Printing the number of constraints + let cs = owned_cs.into_assembly::(); + cs.print_gate_stats(); + } + + /// This function tests the modular multiplication, that is + /// an operation `a*b mod m`, where a and b are two integers, + /// e is the exponent, and m is the modulus. + /// + /// The function reads the test cases from [`MODMUL_256_256_TEST_CASES`] and runs them. + #[test] + #[ignore = "too-large circuit, should be run manually"] + fn test_modmul_256_bytes() { + // Preparing the constraint system and parameters + let mut owned_cs = create_test_cs(1 << 24); + let cs = &mut owned_cs; + + // Running tests from file + for (_, raw) in MODMUL_256_256_TEST_CASES.tests.iter().enumerate() { + // Input: + let test = Modmul256BytesTestCase::from_raw(cs, &raw); + + // Expected: + let actual_modmul = test.a.modmul(cs, &test.b, &test.modulus); + + // Actual: + let expected_modmul = test.expected.clone(); + + // Asserting + assert_equal_uint2048(cs, &actual_modmul, &expected_modmul); + } + + // Printing the number of constraints + let cs = owned_cs.into_assembly::(); + cs.print_gate_stats(); + } + + /// This function runs an operation `a*b mod m`, where a and b are two integers, + /// e is the exponent, m is the modulus, and checks the number of constraints. + /// + /// The function reads the test cases from [`MODMUL_256_256_TEST_CASES`] and runs them. + #[test] + #[ignore = "too-large circuit, should be run manually"] + fn debug_modmul_256_bytes() { + // Preparing the constraint system and parameters + let mut owned_cs = create_test_cs(1 << 26); + let cs = &mut owned_cs; + + // Input: + let raw = &MODMUL_256_256_TEST_CASES.tests[0]; + let test_case = Modmul256BytesTestCase::from_raw(cs, &raw); + + // Performing the actual computation: + let _ = test_case.a.modmul(cs, &test_case.b, &test_case.modulus); + + // Printing the number of constraints + let cs = owned_cs.into_assembly::(); + cs.print_gate_stats(); + } +} diff --git a/crates/zkevm_circuits/src/modexp/tests_json/gen.sage b/crates/zkevm_circuits/src/modexp/tests_json/gen.sage new file mode 100644 index 0000000..fd69780 --- /dev/null +++ b/crates/zkevm_circuits/src/modexp/tests_json/gen.sage @@ -0,0 +1,163 @@ +import json + +Q = Integers(2**32) +R = Integers(2**256) +T = Integers(2**2048) + +# File names for tests acoording to name (b,e,m): base, exponent, modulo in bytes + +# --- 32-32-32 modular exponentiation tests --- +MODEXP_TESTS_NUMBER = 1 # How many tests to generate + +tests_dict = {'tests': []} + +for _ in range(MODEXP_TESTS_NUMBER): + # Picking random base, exponent and modulus + base = Integer(R.random_element()) + exponent = Integer(R.random_element()) + modulus = Integer(R.random_element()) + + # Calculating the expected result + expected = base.powermod(exponent, modulus) + + tests_dict['tests'].append({ + 'base': f'0x{base.hex()}', + 'exponent': f'0x{exponent.hex()}', + 'modulus': f'0x{modulus.hex()}', + 'expected': f'0x{expected.hex()}' + }) + +print('Tests with 32-32-32 modexp formed successfully!') + +# Saving the json file +MODEXP_FILE_NAME = './modexp_32-32-32_tests.json' +print(f'Saving the modexp tests to {MODEXP_FILE_NAME}...') + +with open(MODEXP_FILE_NAME, 'w') as f: + json.dump(tests_dict, f, indent=4) + +print('Successfully saved the 32-32-32 modexp tests!') + +# --- 32-4-32 modular exponentiation tests --- +MODEXP_TESTS_NUMBER = 1 # How many tests to generate + +tests_dict = {'tests': []} + +for _ in range(MODEXP_TESTS_NUMBER): + # Picking random base, exponent and modulus + base = Integer(R.random_element()) + exponent = Integer(Q.random_element()) + modulus = Integer(R.random_element()) + + # Calculating the expected result + expected = base.powermod(exponent, modulus) + + tests_dict['tests'].append({ + 'base': f'0x{base.hex()}', + 'exponent': f'{exponent.hex()}', + 'modulus': f'0x{modulus.hex()}', + 'expected': f'0x{expected.hex()}' + }) + +print('Tests with 32-4-32 modexp formed successfully!') + +# Saving the json file +MODEXP_FILE_NAME = './modexp_32-4-32_tests.json' +print(f'Saving the modexp tests to {MODEXP_FILE_NAME}...') + +with open(MODEXP_FILE_NAME, 'w') as f: + json.dump(tests_dict, f, indent=4) + +print('Successfully saved the 32-4-32 modexp tests!') + +# --- 32-bit modular multiplication tests --- + +MODMUL_TESTS_NUMBER = 10 # How many tests to generate + +tests_dict = {'tests': []} + +for _ in range(MODMUL_TESTS_NUMBER): + # Picking random a, b, and modulus + a = Integer(R.random_element()) + b = Integer(R.random_element()) + modulus = Integer(R.random_element()) + + # Calculating the expected result + expected = (a * b) % modulus + tests_dict['tests'].append({ + 'a': f'0x{a.hex()}', + 'b': f'0x{b.hex()}', + 'modulus': f'0x{modulus.hex()}', + 'expected': f'0x{expected.hex()}' + }) + +print('Tests with 32-32 modmul formed successfully!') + +# Saving the json file +MODMUL_FILE_NAME = './modmul_32-32_tests.json' +print(f'Saving the modmul tests to {MODMUL_FILE_NAME}...') +with open(MODMUL_FILE_NAME, 'w') as f: + json.dump(tests_dict, f, indent=4) + +print('Successfully saved the 32-32 modmul tests!') + +# --- 256-byte modular multiplication tests --- +MODMUL256_TESTS_NUMBER = 1 # How many tests to generate + +tests_dict = {'tests': []} + +for _ in range(MODMUL256_TESTS_NUMBER): + # Picking random a, b, and modulus + a = Integer(T.random_element()) + b = Integer(T.random_element()) + modulus = Integer(T.random_element()) + + # Decompose a into two 128-bit numbers + a_low = a % (2**1024) + a_high = a >> 1024 + assert a == a_low + a_high*2**1024, 'a was not decomposed correctly' + + # Decompose b into two 128-bit numbers + b_low = b % (2**1024) + b_high = b >> 1024 + assert b == b_low + b_high*2**1024, 'b was not decomposed correctly' + + def u2048_to_dict(x: Integer) -> dict: + low, high = x % (2**1024), x >> 1024 + # Ok, now this is weird. + # Since we need the hex of fixed length (1024 bits), we need to add leading zeros + # to the hex representation of the number. + + # Converting... + low = low.hex() + high = high.hex() + + # Adding leading zeros... + low = '0'*(256 - len(low)) + low + high = '0'*(256 - len(high)) + high + + return { + 'low': low, + 'high': high + } + + # Calculating the expected result + expected = (a * b) % modulus + tests_dict['tests'].append({ + 'a': u2048_to_dict(a), + 'b': u2048_to_dict(b), + 'modulus': u2048_to_dict(modulus), + 'expected': u2048_to_dict(expected) + }) + +print('Tests formed successfully!') + +# Saving the json file +MODMUL256_FILE_NAME = './modmul_256-256_tests.json' + +print(f'Saving the modmul 256-256 tests to {MODMUL256_FILE_NAME}...') + +with open(MODMUL256_FILE_NAME, 'w') as f: + json.dump(tests_dict, f, indent=4) + +print('Successfully saved the modmul 256-256 tests!') diff --git a/crates/zkevm_circuits/src/modexp/tests_json/mod.rs b/crates/zkevm_circuits/src/modexp/tests_json/mod.rs new file mode 100644 index 0000000..3fbd8a2 --- /dev/null +++ b/crates/zkevm_circuits/src/modexp/tests_json/mod.rs @@ -0,0 +1,16 @@ +use lazy_static::lazy_static; + +pub mod u2048; +pub mod u256; + +// All tests gathered in one place +lazy_static! { + /// Test cases for 32-32-32 modexp + pub static ref MODEXP_32_32_32_TEST_CASES: u256::Modexp32BytesTestCases = u256::load_modexp_32_32_32_test_cases(); + /// Test cases for 32-4-32 modexp + pub static ref MODEXP_32_4_32_TEST_CASES: u256::Modexp32BytesTestCases = u256::load_modexp_32_4_32_test_cases(); + /// Test cases for modmul + pub static ref MODMUL_32_32_TEST_CASES: u256::Modmul32BytesTestCases = u256::load_modmul_32_32_test_cases(); + /// Test cases for modmul + pub static ref MODMUL_256_256_TEST_CASES: u2048::Modmul256BytesTestCases = u2048::load_modmul_256_256_test_cases(); +} diff --git a/crates/zkevm_circuits/src/modexp/tests_json/modexp_32-32-32_tests.json b/crates/zkevm_circuits/src/modexp/tests_json/modexp_32-32-32_tests.json new file mode 100644 index 0000000..7d94365 --- /dev/null +++ b/crates/zkevm_circuits/src/modexp/tests_json/modexp_32-32-32_tests.json @@ -0,0 +1,10 @@ +{ + "tests": [ + { + "base": "0x8f3b7d5c187f8abbe0581dab5a37644febd35ea6d4fe3213288f9d63ab82a6b1", + "exponent": "0xafa9888e351dfdefd862945b0da33c9ea1de907ae830292438df1fa184447777", + "modulus": "0xc7e38934b1501e64e5c0bd0ab35b3354520b6e88b81a1f063c37007c65b7efd5", + "expected": "0x45682b037d21d235bd0ed6103ce2674e5c8e983a88bfd09c847a6324e77c1ad6" + } + ] +} \ No newline at end of file diff --git a/crates/zkevm_circuits/src/modexp/tests_json/modexp_32-4-32_tests.json b/crates/zkevm_circuits/src/modexp/tests_json/modexp_32-4-32_tests.json new file mode 100644 index 0000000..0cdde20 --- /dev/null +++ b/crates/zkevm_circuits/src/modexp/tests_json/modexp_32-4-32_tests.json @@ -0,0 +1,10 @@ +{ + "tests": [ + { + "base": "0xf3bc340d206ac21e61e505d2755dea8495430f7b76223cc2a2a8c8ddd276a475", + "exponent": "516470d4", + "modulus": "0xea0b9bc7558ba1b3c3b0dc4ba64adc399e31204f2649bc276bb0f4b056636d18", + "expected": "0xafe13a3215873fc72e28b2d45b6d986a1ec272ecabb86a9f8345e720a868ec61" + } + ] +} \ No newline at end of file diff --git a/crates/zkevm_circuits/src/modexp/tests_json/modmul_256-256_tests.json b/crates/zkevm_circuits/src/modexp/tests_json/modmul_256-256_tests.json new file mode 100644 index 0000000..871f045 --- /dev/null +++ b/crates/zkevm_circuits/src/modexp/tests_json/modmul_256-256_tests.json @@ -0,0 +1,22 @@ +{ + "tests": [ + { + "a": { + "low": "9ebf8c6b6739876df2d5a65c5c103890acb684d595587c3675424188eb9804d597d48f9e5d21491da860da6a72604a0d0bca920247419def5ccd1ebf4f599941929d0222fa64e8e2d9650671df895d55e6a3f321e9b08810b0ea96b588df340240231331f34b55ac4b6bc35c35ba6a567e73ca45bb2ed4ade337d789d42fd792", + "high": "56e474534214b16dc699b39a623078501f2c80ce261c681d6c2731c01517d1281621b7a4ad914dcccae26be6082a46a6cdf51a734ffbab7341c4ba4fd5c6321385104f5a2a1d10372961717748765b329fb87bd51973fd26ebdc254246f0015878eb54849e3dd47d7d020a95529867ecb37c338b422e2595e9e6cf67a01ab0f6" + }, + "b": { + "low": "33b70d0a831845b2f4a6b7c8a8998a1cb76b925c28c5b7c4cd10232921a981ce3cf915dff23cc0393e64b02186a70b9d6075fd49169a81bd907a0fffc0d923890cb1af66541be206435123a761b9ae86416ba73f98246ae3ff8f4e25ca7dd4d193529bfa1c5e383cec56c4a8aa8806e9f2dfd1a40e0fc3dda14091d1da4b1208", + "high": "df8a4fa51c48256fa8dc335466a5b30b982b1ebb7f48bda5e843dbb9cd21882845d15cbd46c16b57d56328ca0665e38c4129d8f6537bd27f601679a5ab88b08cd433e3c9ed7c7b51e3621149138c8b6050174a34290cd828e02080b68877edb09a86111ff7417eb67be7caa97fa6e4dc9d80bf6fb4343ddc9d9135567eeb5026" + }, + "modulus": { + "low": "1b5b4de2e15e53963c2943c8255c26b3b450344663add1bace5f424e6d6d560c1dd9ac6689119ae76bff9688d6dfef2f056da9a9c821e2464ca23c05ea93e8f4a70fa685fe5291bb883bdcfe78c8d05e600590e5e4f60600eccc654f37ff91ee5089b883b951d1a224fe947ac17aa810c1d445e1a407f755173ae82ff02e4b50", + "high": "0f926e1051f507c62e3946cbb0a59645ee9bc9bebf2bb29f831a81742ba864cf096263ef98ff9b2b022f1b1fcd99859e5941331117b34ee3c00d5d4ca426e9e92c86d74e3c202cb4fa5485f9c64e464a66fc85ae5e8aed33cdd02e0d508996110a9748ee3cd19108901de153c463ce6b932822f036d4cfbd28393a1e225ad9e3" + }, + "expected": { + "low": "a69fc71c3551143aabbae1c954915cc0cca233b8ed3d518d9b2d6a60c77fc21cd4a4c376bfc0f633ccc1c6664551200cc34346ced44d242cdd204181f3a3a2986f290b81930c62e39feb45a17e225cb1d45a3e3143ab7e44c82b73fff4d4b73b6cca2c4c98ad3683724f6b654c78e418672191879ac110f9722be347eec27550", + "high": "0d2c348ea6a9035f3804233d6ac7d48e3ba8a69f94141e92742a640c22a92e5652ab381359f775f272652c880d3da25f6f81d0e4c3cc464e5d6bf1e938273bac8a669129e01a60a05b3ff1b74a271789ff2101c3e082c6a91d3d81807f45715481e7682b5f2cb5e7a79490d604d5f1244fcc88d9d4754e28b5fc1b66fce2a38b" + } + } + ] +} \ No newline at end of file diff --git a/crates/zkevm_circuits/src/modexp/tests_json/modmul_32-32_tests.json b/crates/zkevm_circuits/src/modexp/tests_json/modmul_32-32_tests.json new file mode 100644 index 0000000..9b19bc3 --- /dev/null +++ b/crates/zkevm_circuits/src/modexp/tests_json/modmul_32-32_tests.json @@ -0,0 +1,64 @@ +{ + "tests": [ + { + "a": "0x3d68615cf40efd6a987b0d236dc62c2685d778b1be00bd6d0a63c4401eee93ab", + "b": "0xf43364c5765e5db8642cb3d7297f72968ffd7f715eda6e43f83fa71138df5589", + "modulus": "0x853a6bf891327a92f1d769c87157fccc8a1ee85a1863aff27343fb2512eb1f33", + "expected": "0x439167845562f0c9949adc85ad156289b92f5b18cc9e46da664e71e29c91a6bf" + }, + { + "a": "0x9e779f756ee34960ce9c75b7284d9a3a573ead06a2e34842a3fd6790d19e3eba", + "b": "0x55e9f19edce3dbb78ccab3681c47b2db601de9086609bf31146a916fd78206d0", + "modulus": "0xbf6d449646b95d25a79f96540af05463037ef796f77f9e4d81e971ee0bc517b3", + "expected": "0x1614c9a29b698a6ebd2920490c92d51e1ee050600b11c18872e747d323bfeeea" + }, + { + "a": "0xa0726a2b26372ac67b39b88e9478cfd2641a83b661870166181055bf72428257", + "b": "0x89a5a3c6271c50b6df7c73a1d271833ce8bdeaee920b559832cf6c141155bb5b", + "modulus": "0xd1f1d6c45e71ca85c82543db47d05cbe2064c7e55423f36dbc9e3ac565a0be0d", + "expected": "0x41ade78c0fd5c64142085d96a0a95f47fdc3b8c690f4241abc1d5454a7f74b51" + }, + { + "a": "0x10371cc5a93ac4cecfc37e0e86fedad6f07ad1e4b2da19b66638291497d50eaf", + "b": "0xad0db6d38b12b46bb0c864af6d07999b8a40557a8869a35a7b109afa8795346e", + "modulus": "0x5a782e14e2dcccc5861623d5aa1b52413852ea7a3d4adabba584c4af4849bb98", + "expected": "0x36a027d8d96662a1596a02722c519fb7549f4ab49340c9b67cdfb5716970a33a" + }, + { + "a": "0x2bda6a253e7102414367b325b3471fa3aa4cc9d506ee1f880233849803659585", + "b": "0x635d92ddec78612408497f56ad8008999622cbe082aa8527e48fbc4ea8f644b2", + "modulus": "0x46d95e7a8b4cc59f0145aa4404a4c330b9160332e0affc2e65c669822c06e882", + "expected": "0x3599445221bf182597dbb289e4801b04b10ea09a1a7ccee413475d1c63b9f18" + }, + { + "a": "0xd298c930ab549c2d541a7512187e79913c45297d9e8d715e3527dce9f88fd6b8", + "b": "0x2aab595cff143452faee3632896d1b7b1bdcec9eea9aae2d7a0e06e70a79b13d", + "modulus": "0xacfa0b11a98c100cbd9975ff5db1909c0ef8d98f92d801e78dd36720fd264d4d", + "expected": "0x44906460f0054a3c163974f316395fc4a1233c9113e0933a69b060b4f930bc62" + }, + { + "a": "0x804ef0ed681a4362a41afdde38c41ea0bae261613a2d3a258b73425c638b72d4", + "b": "0xf71634823a01d9ae1eff3aedc88be12f598dc1ead30381be8c8f10fbc998ab34", + "modulus": "0xd8b1db3c15f62a6d8c51ec71ffc62ce4ea6508c3d5a8c3fcdc64439ba171d99d", + "expected": "0x18b124382e8fff1ddc36610670e705aaf4a3e441765b2348e889f9e68be6142" + }, + { + "a": "0x3e477d18dcf5a37fbcf63b7f13518977c978bfa87d28e7bc24a4857426eeb49e", + "b": "0x7a29dc5c00c867ecfdd1d15cc788bc1ccfd1e4ed03b7cc12a6d20f91b9c6cd77", + "modulus": "0x915149d855310c1e641334cf9ecbd4dd8e9738f728bf78fddf19ba6673be1cb1", + "expected": "0x92430fd1e03d719929225ea8a509cf41846c80e19c141af403c0c35f9ca0f25" + }, + { + "a": "0xd78927dc75d73368da91bcb988f48e1564568ebe7aac87e7771c0762ce63871", + "b": "0x65b33768e4b4c53bb1d35e931c4e7330e272dc7a0afd458d6817432bb088d203", + "modulus": "0xd472176bc515a309fc1898673b474cccfe6048d6f2c84f4a413f33b654472e7d", + "expected": "0x4bfa7b44878919f5a7761630107fd974e3b838a66f64d6c2245157d301e6b62d" + }, + { + "a": "0x44aa2450344a03c556431deed01da483f43347fe088030b435274365b45a657", + "b": "0x97090f59021d5618d6f24c475864da6473a7157463cb4693fd644e63abd93de2", + "modulus": "0xfa22ba345f53b7c0c5dddb917dcd1476da788b8480fc6242208f62d556d19a5f", + "expected": "0xc06680b5337eafbb063f740c2df0236169a1e42d36a31d4be60afa6e28c5db04" + } + ] +} \ No newline at end of file diff --git a/crates/zkevm_circuits/src/modexp/tests_json/u2048.rs b/crates/zkevm_circuits/src/modexp/tests_json/u2048.rs new file mode 100644 index 0000000..98a0d7f --- /dev/null +++ b/crates/zkevm_circuits/src/modexp/tests_json/u2048.rs @@ -0,0 +1,66 @@ +use boojum::{ + crypto_bigint::U1024, cs::traits::cs::ConstraintSystem, field::goldilocks::GoldilocksField, + gadgets::u2048::UInt2048, +}; +use serde::{Deserialize, Serialize}; + +type F = GoldilocksField; + +/// Path to the test cases +const MODMUL_256_256_TEST_CASES_STR: &str = include_str!("modmul_256-256_tests.json"); + +// --- Modmul Tests --- +#[derive(Clone, Debug, Deserialize, Serialize)] +pub struct RawU2048 { + pub low: String, + pub high: String, +} + +impl RawU2048 { + pub fn to_u2048>(&self, cs: &mut CS) -> UInt2048 { + let low = U1024::from_le_hex(&self.low); + let high = U1024::from_le_hex(&self.high); + + UInt2048::allocated_constant(cs, (low, high)) + } +} + +#[derive(Clone, Debug, Deserialize, Serialize)] +pub struct RawModmul256BytesTestCase { + pub a: RawU2048, + pub b: RawU2048, + pub modulus: RawU2048, + pub expected: RawU2048, +} + +#[derive(Clone, Debug, Deserialize, Serialize)] +pub struct Modmul256BytesTestCases { + pub tests: Vec, +} + +#[derive(Clone, Debug)] +pub struct Modmul256BytesTestCase { + pub a: UInt2048, + pub b: UInt2048, + pub modulus: UInt2048, + pub expected: UInt2048, +} + +impl Modmul256BytesTestCase { + pub fn from_raw(cs: &mut CS, raw: &RawModmul256BytesTestCase) -> Self + where + CS: ConstraintSystem, + { + Modmul256BytesTestCase { + a: raw.a.to_u2048(cs), + b: raw.b.to_u2048(cs), + modulus: raw.modulus.to_u2048(cs), + expected: raw.expected.to_u2048(cs), + } + } +} + +/// Load 32-byte modexp test cases from the file +pub(in super::super) fn load_modmul_256_256_test_cases() -> Modmul256BytesTestCases { + serde_json::from_str(MODMUL_256_256_TEST_CASES_STR).expect("Failed to deserialize") +} diff --git a/crates/zkevm_circuits/src/modexp/tests_json/u256.rs b/crates/zkevm_circuits/src/modexp/tests_json/u256.rs new file mode 100644 index 0000000..83f9b2f --- /dev/null +++ b/crates/zkevm_circuits/src/modexp/tests_json/u256.rs @@ -0,0 +1,139 @@ +use boojum::{ + cs::traits::cs::ConstraintSystem, + ethereum_types::U256, + field::goldilocks::GoldilocksField, + gadgets::{u256::UInt256, u32::UInt32}, +}; +use serde::{Deserialize, Serialize}; + +type F = GoldilocksField; + +/// Path to the test cases +const MODEXP_32_32_32_TEST_CASES_STR: &str = include_str!("modexp_32-32-32_tests.json"); +const MODEXP_32_4_32_TEST_CASES_STR: &str = include_str!("modexp_32-4-32_tests.json"); +const MODMUL_32_32_TEST_CASES_STR: &str = include_str!("modmul_32-32_tests.json"); + +// --- Modexp Tests --- +#[derive(Clone, Debug, Deserialize, Serialize)] +pub struct RawModexp32BytesTestCase { + pub base: String, + pub exponent: String, + pub modulus: String, + pub expected: String, +} + +#[derive(Clone, Debug)] +pub struct Modexp32BytesLargeExpTestCase { + pub base: UInt256, + pub exponent: UInt256, + pub modulus: UInt256, + pub expected: UInt256, +} + +impl Modexp32BytesLargeExpTestCase { + pub fn from_raw(cs: &mut CS, raw: &RawModexp32BytesTestCase) -> Self + where + CS: ConstraintSystem, + { + let base = U256::from_str_radix(raw.base.as_str(), 16).unwrap(); + let exponent = U256::from_str_radix(raw.exponent.as_str(), 16).unwrap(); + let modulus = U256::from_str_radix(raw.modulus.as_str(), 16).unwrap(); + let expected = U256::from_str_radix(raw.expected.as_str(), 16).unwrap(); + + Self { + base: UInt256::allocated_constant(cs, base), + exponent: UInt256::allocated_constant(cs, exponent), + modulus: UInt256::allocated_constant(cs, modulus), + expected: UInt256::allocated_constant(cs, expected), + } + } +} + +#[derive(Clone, Debug)] +pub struct Modexp32BytesSmallExpTestCase { + pub base: UInt256, + pub exponent: UInt32, + pub modulus: UInt256, + pub expected: UInt256, +} + +impl Modexp32BytesSmallExpTestCase { + pub fn from_raw(cs: &mut CS, raw: &RawModexp32BytesTestCase) -> Self + where + CS: ConstraintSystem, + { + let base = U256::from_str_radix(raw.base.as_str(), 16).unwrap(); + let exponent = u32::from_str_radix(raw.exponent.as_str(), 16).unwrap(); + let modulus = U256::from_str_radix(raw.modulus.as_str(), 16).unwrap(); + let expected = U256::from_str_radix(raw.expected.as_str(), 16).unwrap(); + + Self { + base: UInt256::allocated_constant(cs, base), + exponent: UInt32::allocated_constant(cs, exponent), + modulus: UInt256::allocated_constant(cs, modulus), + expected: UInt256::allocated_constant(cs, expected), + } + } +} + +#[derive(Clone, Debug, Deserialize, Serialize)] +pub struct Modexp32BytesTestCases { + pub tests: Vec, +} + +/// Load 32-32-32 modexp test cases from the file +pub(in super::super) fn load_modexp_32_32_32_test_cases() -> Modexp32BytesTestCases { + serde_json::from_str(MODEXP_32_32_32_TEST_CASES_STR).expect("Failed to deserialize") +} + +/// Load 32-4-32 modexp test cases from the file +pub(in super::super) fn load_modexp_32_4_32_test_cases() -> Modexp32BytesTestCases { + serde_json::from_str(MODEXP_32_4_32_TEST_CASES_STR).expect("Failed to deserialize") +} + +// --- Modmul Tests --- + +#[derive(Clone, Debug, Deserialize, Serialize)] +pub struct RawModmul32BytesTestCase { + pub a: String, + pub b: String, + pub modulus: String, + pub expected: String, +} + +#[derive(Clone, Debug, Deserialize, Serialize)] +pub struct Modmul32BytesTestCases { + pub tests: Vec, +} + +#[derive(Clone, Debug)] +pub struct Modmul32BytesTestCase { + pub a: UInt256, + pub b: UInt256, + pub modulus: UInt256, + pub expected: UInt256, +} + +impl Modmul32BytesTestCase { + pub fn from_raw(cs: &mut CS, raw: &RawModmul32BytesTestCase) -> Self + where + CS: ConstraintSystem, + { + let a = U256::from_str_radix(raw.a.as_str(), 16).unwrap(); + let b = U256::from_str_radix(raw.b.as_str(), 16).unwrap(); + let modulus = U256::from_str_radix(raw.modulus.as_str(), 16).unwrap(); + let expected = U256::from_str_radix(raw.expected.as_str(), 16).unwrap(); + + Modmul32BytesTestCase { + a: UInt256::allocated_constant(cs, a), + b: UInt256::allocated_constant(cs, b), + modulus: UInt256::allocated_constant(cs, modulus), + expected: UInt256::allocated_constant(cs, expected), + } + } +} + +/// Load 32-byte modexp test cases from the file +pub(in super::super) fn load_modmul_32_32_test_cases() -> Modmul32BytesTestCases { + serde_json::from_str(MODMUL_32_32_TEST_CASES_STR).expect("Failed to deserialize") +} diff --git a/crates/zkevm_circuits/src/recursion/mod.rs b/crates/zkevm_circuits/src/recursion/mod.rs index e8566e9..f28186e 100644 --- a/crates/zkevm_circuits/src/recursion/mod.rs +++ b/crates/zkevm_circuits/src/recursion/mod.rs @@ -7,4 +7,4 @@ pub mod node_layer; pub mod recursion_tip; pub const VK_COMMITMENT_LENGTH: usize = 4; -pub const NUM_BASE_LAYER_CIRCUITS: usize = 16; +pub const NUM_BASE_LAYER_CIRCUITS: usize = 20; diff --git a/crates/zkevm_circuits/src/scheduler/auxiliary.rs b/crates/zkevm_circuits/src/scheduler/auxiliary.rs index 9b9e1a1..7d49999 100644 --- a/crates/zkevm_circuits/src/scheduler/auxiliary.rs +++ b/crates/zkevm_circuits/src/scheduler/auxiliary.rs @@ -45,6 +45,10 @@ pub enum BaseLayerCircuitType { L1MessagesHasher = 13, TransientStorageChecker = 14, Secp256r1Verify = 15, + ModexpPrecompile = 16, + ECAddPrecompile = 17, + ECMulPrecompile = 18, + ECPairingPrecompile = 19, EIP4844Repack = 255, } @@ -66,6 +70,10 @@ impl BaseLayerCircuitType { a if a == Self::L1MessagesHasher as u8 => Self::L1MessagesHasher, a if a == Self::TransientStorageChecker as u8 => Self::TransientStorageChecker, a if a == Self::Secp256r1Verify as u8 => Self::Secp256r1Verify, + a if a == Self::ModexpPrecompile as u8 => Self::ModexpPrecompile, + a if a == Self::ECAddPrecompile as u8 => Self::ECAddPrecompile, + a if a == Self::ECMulPrecompile as u8 => Self::ECMulPrecompile, + a if a == Self::ECPairingPrecompile as u8 => Self::ECPairingPrecompile, a if a == Self::EIP4844Repack as u8 => Self::EIP4844Repack, _ => { panic!("unknown circuit type {}", value); diff --git a/crates/zkevm_circuits/src/scheduler/input.rs b/crates/zkevm_circuits/src/scheduler/input.rs index e9d4b9a..5c8efda 100644 --- a/crates/zkevm_circuits/src/scheduler/input.rs +++ b/crates/zkevm_circuits/src/scheduler/input.rs @@ -49,6 +49,11 @@ pub struct SchedulerCircuitInstanceWitness< pub sha256_observable_output: PrecompileFunctionOutputDataWitness, pub ecrecover_observable_output: PrecompileFunctionOutputDataWitness, pub secp256r1_verify_observable_output: PrecompileFunctionOutputDataWitness, + pub modexp_observable_output: PrecompileFunctionOutputDataWitness, + pub ecadd_observable_output: PrecompileFunctionOutputDataWitness, + pub ecmul_observable_output: PrecompileFunctionOutputDataWitness, + pub ecpairing_observable_output: PrecompileFunctionOutputDataWitness, + // RAM permutation doesn't produce anything pub storage_sorter_observable_output: StorageDeduplicatorOutputDataWitness, pub storage_application_observable_output: StorageApplicationOutputDataWitness, @@ -102,6 +107,10 @@ impl>, EXT: FieldExtension<2, Ba sha256_observable_output: PrecompileFunctionOutputData::placeholder_witness(), ecrecover_observable_output: PrecompileFunctionOutputData::placeholder_witness(), secp256r1_verify_observable_output: PrecompileFunctionOutputData::placeholder_witness(), + modexp_observable_output: PrecompileFunctionOutputData::placeholder_witness(), + ecadd_observable_output: PrecompileFunctionOutputData::placeholder_witness(), + ecmul_observable_output: PrecompileFunctionOutputData::placeholder_witness(), + ecpairing_observable_output: PrecompileFunctionOutputData::placeholder_witness(), storage_sorter_observable_output: StorageDeduplicatorOutputData::placeholder_witness(), storage_application_observable_output: diff --git a/crates/zkevm_circuits/src/scheduler/mod.rs b/crates/zkevm_circuits/src/scheduler/mod.rs index 5a866a0..b3ea3a8 100644 --- a/crates/zkevm_circuits/src/scheduler/mod.rs +++ b/crates/zkevm_circuits/src/scheduler/mod.rs @@ -95,6 +95,10 @@ pub const SEQUENCE_OF_CIRCUIT_TYPES: [BaseLayerCircuitType; NUM_CIRCUITS_FOR_VAR BaseLayerCircuitType::L1MessagesHasher, BaseLayerCircuitType::TransientStorageChecker, BaseLayerCircuitType::Secp256r1Verify, + BaseLayerCircuitType::ModexpPrecompile, + BaseLayerCircuitType::ECAddPrecompile, + BaseLayerCircuitType::ECMulPrecompile, + BaseLayerCircuitType::ECPairingPrecompile, ]; #[derive(Derivative, serde::Serialize, serde::Deserialize)] @@ -212,6 +216,18 @@ pub fn scheduler_function< witness.secp256r1_verify_observable_output.clone(), ); + let modexp_observable_output = + PrecompileFunctionOutputData::allocate(cs, witness.modexp_observable_output.clone()); + + let ecadd_observable_output = + PrecompileFunctionOutputData::allocate(cs, witness.ecadd_observable_output.clone()); + + let ecmul_observable_output = + PrecompileFunctionOutputData::allocate(cs, witness.ecmul_observable_output.clone()); + + let ecpairing_observable_output = + PrecompileFunctionOutputData::allocate(cs, witness.ecpairing_observable_output.clone()); + let storage_sorter_observable_output = StorageDeduplicatorOutputData::allocate( cs, witness.storage_sorter_observable_output.clone(), @@ -334,8 +350,16 @@ pub fn scheduler_function< log_demuxer_observable_output.output_queue_states[DemuxOutput::ECRecover as usize]; let secp256r1_verify_access_queue_state = log_demuxer_observable_output.output_queue_states[DemuxOutput::Secp256r1Verify as usize]; - - // precompiles: keccak, sha256 and ecrecover + let modexp_access_queue_state = + log_demuxer_observable_output.output_queue_states[DemuxOutput::Modexp as usize]; + let ecadd_access_queue_state = + log_demuxer_observable_output.output_queue_states[DemuxOutput::ECAdd as usize]; + let ecmul_access_queue_state = + log_demuxer_observable_output.output_queue_states[DemuxOutput::ECMul as usize]; + let ecpairing_access_queue_state = + log_demuxer_observable_output.output_queue_states[DemuxOutput::ECPairing as usize]; + + // precompiles: keccak, sha256, ecrecover, modexp, ecadd, ecmul and ecpairing let (keccak_circuit_observable_input_commitment, keccak_circuit_observable_output_commitment) = compute_precompile_commitment( cs, @@ -372,6 +396,40 @@ pub fn scheduler_function< &secp256r1_verify_observable_output.final_memory_state, round_function, ); + let (modexp_circuit_observable_input_commitment, modexp_circuit_observable_output_commitment) = + compute_precompile_commitment( + cs, + &modexp_access_queue_state, + &modexp_observable_output.final_memory_state, + &modexp_observable_output.final_memory_state, + round_function, + ); + let (ecadd_circuit_observable_input_commitment, ecadd_circuit_observable_output_commitment) = + compute_precompile_commitment( + cs, + &ecadd_access_queue_state, + &ecadd_observable_output.final_memory_state, + &ecadd_observable_output.final_memory_state, + round_function, + ); + let (ecmul_circuit_observable_input_commitment, ecmul_circuit_observable_output_commitment) = + compute_precompile_commitment( + cs, + &ecmul_access_queue_state, + &ecmul_observable_output.final_memory_state, + &ecmul_observable_output.final_memory_state, + round_function, + ); + let ( + ecpairing_circuit_observable_input_commitment, + ecpairing_circuit_observable_output_commitment, + ) = compute_precompile_commitment( + cs, + &ecpairing_access_queue_state, + &ecpairing_observable_output.final_memory_state, + &ecpairing_observable_output.final_memory_state, + round_function, + ); // ram permutation and validation // NBL this circuit is terminal - it has no actual output @@ -545,6 +603,22 @@ pub fn scheduler_function< BaseLayerCircuitType::EcrecoverPrecompile, ecrecover_circuit_observable_input_commitment, ), + ( + BaseLayerCircuitType::ModexpPrecompile, + modexp_circuit_observable_input_commitment, + ), + ( + BaseLayerCircuitType::ECAddPrecompile, + ecadd_circuit_observable_input_commitment, + ), + ( + BaseLayerCircuitType::ECMulPrecompile, + ecmul_circuit_observable_input_commitment, + ), + ( + BaseLayerCircuitType::ECPairingPrecompile, + ecpairing_circuit_observable_input_commitment, + ), ( BaseLayerCircuitType::RamValidation, ram_validation_circuit_input_commitment, @@ -609,6 +683,22 @@ pub fn scheduler_function< BaseLayerCircuitType::EcrecoverPrecompile, ecrecover_circuit_observable_output_commitment, ), + ( + BaseLayerCircuitType::ModexpPrecompile, + modexp_circuit_observable_output_commitment, + ), + ( + BaseLayerCircuitType::ECAddPrecompile, + ecadd_circuit_observable_output_commitment, + ), + ( + BaseLayerCircuitType::ECMulPrecompile, + ecmul_circuit_observable_output_commitment, + ), + ( + BaseLayerCircuitType::ECPairingPrecompile, + ecpairing_circuit_observable_output_commitment, + ), ( BaseLayerCircuitType::RamValidation, [zero_num; CLOSED_FORM_COMMITTMENT_LENGTH], // formally set here @@ -719,7 +809,7 @@ pub fn scheduler_function< skip_flags[(BaseLayerCircuitType::LogDemultiplexer as u8 as usize) - 1] = Some(should_skip); } - // keccak, sha256 and ecrecover must not modify memory + // keccak, sha256, ecrecover, modexp, ecadd, ecmul and ecpairing must not modify memory { let should_skip = keccak256_access_queue_state.tail.length.is_zero(cs); @@ -765,6 +855,51 @@ pub fn scheduler_function< skip_flags[(BaseLayerCircuitType::Secp256r1Verify as u8 as usize) - 1] = Some(should_skip); } + { + let should_skip = modexp_access_queue_state.tail.length.is_zero(cs); + + let input_state = modexp_observable_output.final_memory_state; + let output_state = modexp_observable_output.final_memory_state; + + let same_state = is_equal_queue_state(cs, &input_state, &output_state); + same_state.conditionally_enforce_true(cs, should_skip); + + skip_flags[(BaseLayerCircuitType::ModexpPrecompile as u8 as usize) - 1] = Some(should_skip); + } + { + let should_skip = ecadd_access_queue_state.tail.length.is_zero(cs); + + let input_state = ecadd_observable_output.final_memory_state; + let output_state = ecadd_observable_output.final_memory_state; + + let same_state = is_equal_queue_state(cs, &input_state, &output_state); + same_state.conditionally_enforce_true(cs, should_skip); + + skip_flags[(BaseLayerCircuitType::ECAddPrecompile as u8 as usize) - 1] = Some(should_skip); + } + { + let should_skip = ecmul_access_queue_state.tail.length.is_zero(cs); + + let input_state = ecmul_observable_output.final_memory_state; + let output_state = ecmul_observable_output.final_memory_state; + + let same_state = is_equal_queue_state(cs, &input_state, &output_state); + same_state.conditionally_enforce_true(cs, should_skip); + + skip_flags[(BaseLayerCircuitType::ECMulPrecompile as u8 as usize) - 1] = Some(should_skip); + } + { + let should_skip = ecpairing_access_queue_state.tail.length.is_zero(cs); + + let input_state = ecpairing_observable_output.final_memory_state; + let output_state = ecpairing_observable_output.final_memory_state; + + let same_state = is_equal_queue_state(cs, &input_state, &output_state); + same_state.conditionally_enforce_true(cs, should_skip); + + skip_flags[(BaseLayerCircuitType::ECPairingPrecompile as u8 as usize) - 1] = + Some(should_skip); + } // well, in the very unlikely case of no RAM requests (that is unreachable because VM always starts) we just skip it as is skip_flags[(BaseLayerCircuitType::RamValidation as u8 as usize) - 1] = Some( diff --git a/crates/zkevm_opcode_defs/Cargo.toml b/crates/zkevm_opcode_defs/Cargo.toml index a27adda..c100bd9 100644 --- a/crates/zkevm_opcode_defs/Cargo.toml +++ b/crates/zkevm_opcode_defs/Cargo.toml @@ -25,3 +25,5 @@ blake2 = "0.10.*" k256 = { version = "0.13.*", features = ["arithmetic", "ecdsa"] } p256 = { version = "0.13.*", features = ["arithmetic", "ecdsa"] } serde = { version = "1", features = ["derive"] } +zksync_pairing = { git = "https://github.com/distributed-lab/zksync-crypto.git", branch = "dl-precompiles", package = "zksync_pairing" } +# zksync_pairing = { path = "./../../../zksync-crypto/crates/pairing"} \ No newline at end of file diff --git a/crates/zkevm_opcode_defs/src/lib.rs b/crates/zkevm_opcode_defs/src/lib.rs index a9bee78..c04376f 100644 --- a/crates/zkevm_opcode_defs/src/lib.rs +++ b/crates/zkevm_opcode_defs/src/lib.rs @@ -23,6 +23,7 @@ pub use k256; pub use p256; pub use sha2; pub use sha3; +pub use zksync_pairing as bn254; pub use self::definitions::*; pub use self::imm_mem_modifiers::*; diff --git a/crates/zkevm_opcode_defs/src/system_params.rs b/crates/zkevm_opcode_defs/src/system_params.rs index 6319b93..bae8546 100644 --- a/crates/zkevm_opcode_defs/src/system_params.rs +++ b/crates/zkevm_opcode_defs/src/system_params.rs @@ -28,6 +28,10 @@ pub const KECCAK256_ROUND_FUNCTION_PRECOMPILE_ADDRESS: u16 = SYSTEM_CONTRACTS_OF pub const SHA256_ROUND_FUNCTION_PRECOMPILE_ADDRESS: u16 = 0x02; // as in Ethereum pub const ECRECOVER_INNER_FUNCTION_PRECOMPILE_ADDRESS: u16 = 0x01; // as in Ethereum pub const SECP256R1_VERIFY_PRECOMPILE_ADDRESS: u16 = 0x100; // As in RIP7212: https://github.com/ethereum/RIPs/blob/master/RIPS/rip-7212.md +pub const MODEXP_PRECOMPILE_ADDRESS: u16 = 0x05; // as in Ethereum +pub const ECADD_PRECOMPILE_ADDRESS: u16 = 0x06; // as in Ethereum +pub const ECMUL_PRECOMPILE_ADDRESS: u16 = 0x07; // as in Ethereum +pub const ECPAIRING_PRECOMPILE_ADDRESS: u16 = 0x08; // as in Ethereum pub const MAX_PUBDATA_COST_PER_QUERY: i32 = 65; pub const INITIAL_STORAGE_WRITE_PUBDATA_BYTES: usize = 64; @@ -151,4 +155,12 @@ lazy_static! { Address::from_low_u64_be(ECRECOVER_INNER_FUNCTION_PRECOMPILE_ADDRESS as u64); pub static ref SECP256R1_VERIFY_INNER_FUNCTION_PRECOMPILE_FORMAL_ADDRESS: Address = Address::from_low_u64_be(SECP256R1_VERIFY_PRECOMPILE_ADDRESS as u64); + pub static ref MODEXP_PRECOMPILE_FORMAL_ADDRESS: Address = + Address::from_low_u64_be(MODEXP_PRECOMPILE_ADDRESS as u64); + pub static ref ECADD_PRECOMPILE_FORMAL_ADDRESS: Address = + Address::from_low_u64_be(ECADD_PRECOMPILE_ADDRESS as u64); + pub static ref ECMUL_PRECOMPILE_FORMAL_ADDRESS: Address = + Address::from_low_u64_be(ECMUL_PRECOMPILE_ADDRESS as u64); + pub static ref ECPAIRING_PRECOMPILE_FORMAL_ADDRESS: Address = + Address::from_low_u64_be(ECPAIRING_PRECOMPILE_ADDRESS as u64); } diff --git a/crates/zkevm_test_harness/setup/aux_layer/wrapper_vk_1.key b/crates/zkevm_test_harness/setup/aux_layer/wrapper_vk_1.key deleted file mode 100644 index 096f3d5..0000000 Binary files a/crates/zkevm_test_harness/setup/aux_layer/wrapper_vk_1.key and /dev/null differ diff --git a/crates/zkevm_test_harness/setup/base_layer/finalization_hint_1.json b/crates/zkevm_test_harness/setup/base_layer/finalization_hint_1.json deleted file mode 100644 index c6b155d..0000000 --- a/crates/zkevm_test_harness/setup/base_layer/finalization_hint_1.json +++ /dev/null @@ -1,188 +0,0 @@ -{ - "MainVM": { - "row_finalization_hints": [ - [ - 17, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ] - ], - "column_finalization_hints": [ - [ - 11, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 1, - 0, - 0, - 0, - 5, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 2, - 0, - 0, - 0, - 2, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 3, - 0, - 0, - 0, - 2, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 4, - 0, - 0, - 0, - 2, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 5, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 6, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 7, - 0, - 0, - 0, - 2, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 8, - 0, - 0, - 0, - 2, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 4, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 10, - 0, - 0, - 0, - 2, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 11, - 0, - 0, - 0, - 2, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 104, - 197, - 37, - 0, - 0, - 0, - 0, - 0 - ] - ], - "nop_gates_to_add": 1618, - "final_trace_len": 1048576, - "public_inputs": [ - [ - 0, - 1046957 - ], - [ - 1, - 1046957 - ], - [ - 2, - 1046957 - ], - [ - 3, - 1046957 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/base_layer/finalization_hint_10.json b/crates/zkevm_test_harness/setup/base_layer/finalization_hint_10.json deleted file mode 100644 index a9b62ac..0000000 --- a/crates/zkevm_test_harness/setup/base_layer/finalization_hint_10.json +++ /dev/null @@ -1,140 +0,0 @@ -{ - "StorageApplication": { - "row_finalization_hints": [ - [ - 10, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ] - ], - "column_finalization_hints": [ - [ - 7, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 1, - 0, - 0, - 0, - 19, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 2, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 3, - 0, - 0, - 0, - 8, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 4, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 5, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 6, - 0, - 0, - 0, - 16, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 7, - 0, - 0, - 0, - 8, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 130, - 133, - 30, - 0, - 0, - 0, - 0, - 0 - ] - ], - "nop_gates_to_add": 21217, - "final_trace_len": 1048576, - "public_inputs": [ - [ - 0, - 1027358 - ], - [ - 1, - 1027358 - ], - [ - 2, - 1027358 - ], - [ - 3, - 1027358 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/base_layer/finalization_hint_11.json b/crates/zkevm_test_harness/setup/base_layer/finalization_hint_11.json deleted file mode 100644 index ffc689c..0000000 --- a/crates/zkevm_test_harness/setup/base_layer/finalization_hint_11.json +++ /dev/null @@ -1,68 +0,0 @@ -{ - "EventsSorter": { - "row_finalization_hints": [ - [ - 41, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ] - ], - "column_finalization_hints": [ - [ - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 1, - 0, - 0, - 0, - 6, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 152, - 13, - 0, - 0, - 0, - 0, - 0, - 0 - ] - ], - "nop_gates_to_add": 457759, - "final_trace_len": 1048576, - "public_inputs": [ - [ - 0, - 590816 - ], - [ - 1, - 590816 - ], - [ - 2, - 590816 - ], - [ - 3, - 590816 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/base_layer/finalization_hint_12.json b/crates/zkevm_test_harness/setup/base_layer/finalization_hint_12.json deleted file mode 100644 index 26b3ae7..0000000 --- a/crates/zkevm_test_harness/setup/base_layer/finalization_hint_12.json +++ /dev/null @@ -1,68 +0,0 @@ -{ - "L1MessagesSorter": { - "row_finalization_hints": [ - [ - 41, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ] - ], - "column_finalization_hints": [ - [ - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 1, - 0, - 0, - 0, - 6, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 152, - 13, - 0, - 0, - 0, - 0, - 0, - 0 - ] - ], - "nop_gates_to_add": 457759, - "final_trace_len": 1048576, - "public_inputs": [ - [ - 0, - 590816 - ], - [ - 1, - 590816 - ], - [ - 2, - 590816 - ], - [ - 3, - 590816 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/base_layer/finalization_hint_13.json b/crates/zkevm_test_harness/setup/base_layer/finalization_hint_13.json deleted file mode 100644 index 2a437d6..0000000 --- a/crates/zkevm_test_harness/setup/base_layer/finalization_hint_13.json +++ /dev/null @@ -1,128 +0,0 @@ -{ - "L1MessagesHasher": { - "row_finalization_hints": [ - [ - 13, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ] - ], - "column_finalization_hints": [ - [ - 6, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 1, - 0, - 0, - 0, - 4, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 2, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 3, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 4, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 5, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 6, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 126, - 104, - 10, - 0, - 0, - 0, - 0, - 0 - ] - ], - "nop_gates_to_add": 10426, - "final_trace_len": 1048576, - "public_inputs": [ - [ - 0, - 1038149 - ], - [ - 1, - 1038149 - ], - [ - 2, - 1038149 - ], - [ - 3, - 1038149 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/base_layer/finalization_hint_14.json b/crates/zkevm_test_harness/setup/base_layer/finalization_hint_14.json deleted file mode 100644 index 48ad32f..0000000 --- a/crates/zkevm_test_harness/setup/base_layer/finalization_hint_14.json +++ /dev/null @@ -1,68 +0,0 @@ -{ - "TransientStorageSorter": { - "row_finalization_hints": [ - [ - 13, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ] - ], - "column_finalization_hints": [ - [ - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 240, - 95, - 1, - 0, - 0, - 0, - 0, - 0 - ] - ], - "nop_gates_to_add": 155823, - "final_trace_len": 1048576, - "public_inputs": [ - [ - 0, - 892752 - ], - [ - 1, - 892752 - ], - [ - 2, - 892752 - ], - [ - 3, - 892752 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/base_layer/finalization_hint_15.json b/crates/zkevm_test_harness/setup/base_layer/finalization_hint_15.json deleted file mode 100644 index d018906..0000000 --- a/crates/zkevm_test_harness/setup/base_layer/finalization_hint_15.json +++ /dev/null @@ -1,3152 +0,0 @@ -{ - "Secp256r1Verify": { - "row_finalization_hints": [ - [ - 24, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ] - ], - "column_finalization_hints": [ - [ - 2, - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 1, - 0, - 0, - 0, - 5, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 2, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 3, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 4, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 5, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 6, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 7, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 8, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 10, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 11, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 13, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 14, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 15, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 16, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 17, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 18, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 19, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 20, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 21, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 22, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 23, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 24, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 25, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 26, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 27, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 28, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 29, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 30, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 31, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 32, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 33, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 34, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 35, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 36, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 37, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 38, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 39, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 40, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 41, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 42, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 43, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 44, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 45, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 46, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 47, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 48, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 49, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 50, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 51, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 52, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 53, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 54, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 55, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 56, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 57, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 58, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 59, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 60, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 61, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 62, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 63, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 64, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 65, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 66, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 67, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 68, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 69, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 70, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 71, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 72, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 73, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 74, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 75, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 76, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 77, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 78, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 79, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 80, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 81, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 82, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 83, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 84, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 85, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 86, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 87, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 88, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 89, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 90, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 91, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 92, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 93, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 94, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 95, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 96, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 97, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 98, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 99, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 100, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 101, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 102, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 103, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 104, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 105, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 106, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 107, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 108, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 109, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 110, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 111, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 112, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 113, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 114, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 115, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 116, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 117, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 118, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 119, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 120, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 121, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 122, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 123, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 124, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 125, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 126, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 127, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 128, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 129, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 130, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 131, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 132, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 133, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 134, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 135, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 136, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 137, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 138, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 139, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 140, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 141, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 142, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 143, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 144, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 145, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 146, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 147, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 148, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 149, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 150, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 151, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 152, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 153, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 154, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 155, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 156, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 157, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 158, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 159, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 160, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 161, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 162, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 163, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 164, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 165, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 166, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 167, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 168, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 169, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 170, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 171, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 172, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 173, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 174, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 175, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 176, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 177, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 178, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 179, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 180, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 181, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 182, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 183, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 184, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 185, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 186, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 187, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 188, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 189, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 190, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 191, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 192, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 193, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 194, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 195, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 196, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 197, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 198, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 199, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 200, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 201, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 202, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 203, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 204, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 205, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 206, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 207, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 208, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 209, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 210, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 211, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 212, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 213, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 214, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 215, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 216, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 217, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 218, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 219, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 220, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 221, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 222, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 223, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 224, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 225, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 226, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 227, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 228, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 229, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 230, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 231, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 232, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 233, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 234, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 235, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 236, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 237, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 238, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 239, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 240, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 241, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 242, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 243, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 244, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 245, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 246, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 247, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 248, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 249, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 250, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 251, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 252, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 253, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 254, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 255, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 1, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 1, - 1, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 2, - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 80, - 135, - 206, - 0, - 0, - 0, - 0, - 0 - ] - ], - "nop_gates_to_add": 180302, - "final_trace_len": 1048576, - "public_inputs": [ - [ - 0, - 868273 - ], - [ - 1, - 868273 - ], - [ - 2, - 868273 - ], - [ - 3, - 868273 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/base_layer/finalization_hint_2.json b/crates/zkevm_test_harness/setup/base_layer/finalization_hint_2.json deleted file mode 100644 index e844bd0..0000000 --- a/crates/zkevm_test_harness/setup/base_layer/finalization_hint_2.json +++ /dev/null @@ -1,68 +0,0 @@ -{ - "CodeDecommittmentsSorter": { - "row_finalization_hints": [ - [ - 13, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ] - ], - "column_finalization_hints": [ - [ - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 1, - 0, - 0, - 0, - 2, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 158, - 85, - 51, - 0, - 0, - 0, - 0, - 0 - ] - ], - "nop_gates_to_add": 26721, - "final_trace_len": 1048576, - "public_inputs": [ - [ - 0, - 1021854 - ], - [ - 1, - 1021854 - ], - [ - 2, - 1021854 - ], - [ - 3, - 1021854 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/base_layer/finalization_hint_255.json b/crates/zkevm_test_harness/setup/base_layer/finalization_hint_255.json deleted file mode 100644 index 67a84d9..0000000 --- a/crates/zkevm_test_harness/setup/base_layer/finalization_hint_255.json +++ /dev/null @@ -1,117 +0,0 @@ -{ - "EIP4844Repack": { - "row_finalization_hints": [], - "column_finalization_hints": [ - [ - 6, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 2, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 3, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 4, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 5, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 6, - 0, - 0, - 0, - 8, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 192, - 101, - 12, - 0, - 0, - 0, - 0, - 0 - ] - ], - "nop_gates_to_add": 176687, - "final_trace_len": 1048576, - "public_inputs": [ - [ - 0, - 871888 - ], - [ - 1, - 871888 - ], - [ - 2, - 871888 - ], - [ - 3, - 871888 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/base_layer/finalization_hint_3.json b/crates/zkevm_test_harness/setup/base_layer/finalization_hint_3.json deleted file mode 100644 index a3a7168..0000000 --- a/crates/zkevm_test_harness/setup/base_layer/finalization_hint_3.json +++ /dev/null @@ -1,116 +0,0 @@ -{ - "CodeDecommitter": { - "row_finalization_hints": [ - [ - 6, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ] - ], - "column_finalization_hints": [ - [ - 5, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 1, - 0, - 0, - 0, - 5, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 2, - 0, - 0, - 0, - 2, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 3, - 0, - 0, - 0, - 2, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 4, - 0, - 0, - 0, - 2, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 5, - 0, - 0, - 0, - 5, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 57, - 145, - 4, - 0, - 0, - 0, - 0, - 0 - ] - ], - "nop_gates_to_add": 3395, - "final_trace_len": 1048576, - "public_inputs": [ - [ - 0, - 1045180 - ], - [ - 1, - 1045180 - ], - [ - 2, - 1045180 - ], - [ - 3, - 1045180 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/base_layer/finalization_hint_4.json b/crates/zkevm_test_harness/setup/base_layer/finalization_hint_4.json deleted file mode 100644 index 423ac0d..0000000 --- a/crates/zkevm_test_harness/setup/base_layer/finalization_hint_4.json +++ /dev/null @@ -1,68 +0,0 @@ -{ - "LogDemuxer": { - "row_finalization_hints": [ - [ - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ] - ], - "column_finalization_hints": [ - [ - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 1, - 0, - 0, - 0, - 6, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 218, - 223, - 103, - 0, - 0, - 0, - 0, - 0 - ] - ], - "nop_gates_to_add": 173272, - "final_trace_len": 1048576, - "public_inputs": [ - [ - 0, - 875303 - ], - [ - 1, - 875303 - ], - [ - 2, - 875303 - ], - [ - 3, - 875303 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/base_layer/finalization_hint_5.json b/crates/zkevm_test_harness/setup/base_layer/finalization_hint_5.json deleted file mode 100644 index 6e4066a..0000000 --- a/crates/zkevm_test_harness/setup/base_layer/finalization_hint_5.json +++ /dev/null @@ -1,128 +0,0 @@ -{ - "KeccakRoundFunction": { - "row_finalization_hints": [ - [ - 13, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ] - ], - "column_finalization_hints": [ - [ - 6, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 1, - 0, - 0, - 0, - 4, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 2, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 3, - 0, - 0, - 0, - 10, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 4, - 0, - 0, - 0, - 8, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 5, - 0, - 0, - 0, - 8, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 6, - 0, - 0, - 0, - 10, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 40, - 181, - 129, - 0, - 0, - 0, - 0, - 0 - ] - ], - "nop_gates_to_add": 90920, - "final_trace_len": 1048576, - "public_inputs": [ - [ - 0, - 957655 - ], - [ - 1, - 957655 - ], - [ - 2, - 957655 - ], - [ - 3, - 957655 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/base_layer/finalization_hint_6.json b/crates/zkevm_test_harness/setup/base_layer/finalization_hint_6.json deleted file mode 100644 index e3c9a45..0000000 --- a/crates/zkevm_test_harness/setup/base_layer/finalization_hint_6.json +++ /dev/null @@ -1,116 +0,0 @@ -{ - "Sha256RoundFunction": { - "row_finalization_hints": [ - [ - 13, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ] - ], - "column_finalization_hints": [ - [ - 5, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 1, - 0, - 0, - 0, - 8, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 2, - 0, - 0, - 0, - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 3, - 0, - 0, - 0, - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 4, - 0, - 0, - 0, - 6, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 5, - 0, - 0, - 0, - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 225, - 197, - 7, - 0, - 0, - 0, - 0, - 0 - ] - ], - "nop_gates_to_add": 8782, - "final_trace_len": 1048576, - "public_inputs": [ - [ - 0, - 1039793 - ], - [ - 1, - 1039793 - ], - [ - 2, - 1039793 - ], - [ - 3, - 1039793 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/base_layer/finalization_hint_7.json b/crates/zkevm_test_harness/setup/base_layer/finalization_hint_7.json deleted file mode 100644 index f4ef8bf..0000000 --- a/crates/zkevm_test_harness/setup/base_layer/finalization_hint_7.json +++ /dev/null @@ -1,3200 +0,0 @@ -{ - "ECRecover": { - "row_finalization_hints": [ - [ - 23, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ] - ], - "column_finalization_hints": [ - [ - 6, - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 1, - 0, - 0, - 0, - 10, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 2, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 3, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 4, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 5, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 6, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 7, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 8, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 10, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 11, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 12, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 13, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 14, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 15, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 16, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 17, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 18, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 19, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 20, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 21, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 22, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 23, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 24, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 25, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 26, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 27, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 28, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 29, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 30, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 31, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 32, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 33, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 34, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 35, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 36, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 37, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 38, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 39, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 40, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 41, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 42, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 43, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 44, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 45, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 46, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 47, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 48, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 49, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 50, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 51, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 52, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 53, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 54, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 55, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 56, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 57, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 58, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 59, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 60, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 61, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 62, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 63, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 64, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 65, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 66, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 67, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 68, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 69, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 70, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 71, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 72, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 73, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 74, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 75, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 76, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 77, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 78, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 79, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 80, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 81, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 82, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 83, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 84, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 85, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 86, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 87, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 88, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 89, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 90, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 91, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 92, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 93, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 94, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 95, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 96, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 97, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 98, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 99, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 100, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 101, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 102, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 103, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 104, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 105, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 106, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 107, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 108, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 109, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 110, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 111, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 112, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 113, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 114, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 115, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 116, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 117, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 118, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 119, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 120, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 121, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 122, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 123, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 124, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 125, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 126, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 127, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 128, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 129, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 130, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 131, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 132, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 133, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 134, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 135, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 136, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 137, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 138, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 139, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 140, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 141, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 142, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 143, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 144, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 145, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 146, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 147, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 148, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 149, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 150, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 151, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 152, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 153, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 154, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 155, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 156, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 157, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 158, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 159, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 160, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 161, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 162, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 163, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 164, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 165, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 166, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 167, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 168, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 169, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 170, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 171, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 172, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 173, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 174, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 175, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 176, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 177, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 178, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 179, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 180, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 181, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 182, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 183, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 184, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 185, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 186, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 187, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 188, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 189, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 190, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 191, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 192, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 193, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 194, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 195, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 196, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 197, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 198, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 199, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 200, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 201, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 202, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 203, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 204, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 205, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 206, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 207, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 208, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 209, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 210, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 211, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 212, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 213, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 214, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 215, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 216, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 217, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 218, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 219, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 220, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 221, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 222, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 223, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 224, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 225, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 226, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 227, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 228, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 229, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 230, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 231, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 232, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 233, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 234, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 235, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 236, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 237, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 238, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 239, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 240, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 241, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 242, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 243, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 244, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 245, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 246, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 247, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 248, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 249, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 250, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 251, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 252, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 253, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 254, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 255, - 0, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 1, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 1, - 1, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 2, - 1, - 0, - 0, - 9, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 3, - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 4, - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 5, - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 6, - 1, - 0, - 0, - 2, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 224, - 27, - 205, - 0, - 0, - 0, - 0, - 0 - ] - ], - "nop_gates_to_add": 109326, - "final_trace_len": 1048576, - "public_inputs": [ - [ - 0, - 939249 - ], - [ - 1, - 939249 - ], - [ - 2, - 939249 - ], - [ - 3, - 939249 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/base_layer/finalization_hint_8.json b/crates/zkevm_test_harness/setup/base_layer/finalization_hint_8.json deleted file mode 100644 index 0570834..0000000 --- a/crates/zkevm_test_harness/setup/base_layer/finalization_hint_8.json +++ /dev/null @@ -1,68 +0,0 @@ -{ - "RAMPermutation": { - "row_finalization_hints": [ - [ - 17, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ] - ], - "column_finalization_hints": [ - [ - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 1, - 0, - 0, - 0, - 2, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 122, - 179, - 14, - 0, - 0, - 0, - 0, - 0 - ] - ], - "nop_gates_to_add": 4480, - "final_trace_len": 1048576, - "public_inputs": [ - [ - 0, - 1044095 - ], - [ - 1, - 1044095 - ], - [ - 2, - 1044095 - ], - [ - 3, - 1044095 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/base_layer/finalization_hint_9.json b/crates/zkevm_test_harness/setup/base_layer/finalization_hint_9.json deleted file mode 100644 index 986e8b3..0000000 --- a/crates/zkevm_test_harness/setup/base_layer/finalization_hint_9.json +++ /dev/null @@ -1,68 +0,0 @@ -{ - "StorageSorter": { - "row_finalization_hints": [ - [ - 3, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ] - ], - "column_finalization_hints": [ - [ - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 1, - 0, - 0, - 0, - 15, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 192, - 6, - 24, - 0, - 0, - 0, - 0, - 0 - ] - ], - "nop_gates_to_add": 2258, - "final_trace_len": 1048576, - "public_inputs": [ - [ - 0, - 1046317 - ], - [ - 1, - 1046317 - ], - [ - 2, - 1046317 - ], - [ - 3, - 1046317 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/base_layer/vk_1.json b/crates/zkevm_test_harness/setup/base_layer/vk_1.json deleted file mode 100644 index 8459e87..0000000 --- a/crates/zkevm_test_harness/setup/base_layer/vk_1.json +++ /dev/null @@ -1,283 +0,0 @@ -{ - "MainVM": { - "fixed_parameters": { - "parameters": { - "num_columns_under_copy_permutation": 130, - "num_witness_columns": 0, - "num_constant_columns": 4, - "max_allowed_constraint_degree": 8 - }, - "lookup_parameters": { - "UseSpecializedColumnsWithTableIdAsConstant": { - "width": 3, - "num_repetitions": 8, - "share_table_id": true - } - }, - "domain_size": 1048576, - "total_tables_len": 136471, - "public_inputs_locations": [ - [ - 0, - 1046957 - ], - [ - 1, - 1046957 - ], - [ - 2, - 1046957 - ], - [ - 3, - 1046957 - ] - ], - "extra_constant_polys_for_selectors": 3, - "table_ids_column_idxes": [ - 7 - ], - "quotient_degree": 8, - "selectors_placement": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 2, - "num_constants": 0, - "degree": 7, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "Fork": { - "left": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 5, - "num_constants": 2, - "degree": 3, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 3, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 4, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - }, - "right": { - "Fork": { - "left": { - "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": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 7, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 9, - "num_constants": 0, - "degree": 0, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - } - } - }, - "right": { - "GateOnly": { - "gate_idx": 6, - "num_constants": 1, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 10, - "num_constants": 4, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 0, - "num_constants": 4, - "degree": 1, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - } - } - }, - "fri_lde_factor": 2, - "cap_size": 16 - }, - "setup_merkle_tree_cap": [ - [ - 9473487953399898748, - 16270419805909860203, - 7335367583540379607, - 18438161812709418982 - ], - [ - 12967681057814187922, - 15701035168973396898, - 11259967584839810575, - 10571912581839654023 - ], - [ - 5264981558950918922, - 7322263530084687711, - 17011319323793220700, - 14479065901870485923 - ], - [ - 15574099641370951434, - 17000829784989701584, - 15964436826107516267, - 11346203353481465805 - ], - [ - 5474255527556252767, - 16570571942564149566, - 11428025503403431038, - 6617585440243326997 - ], - [ - 308081994977850819, - 8729962239283422104, - 14597407866734738386, - 14829347258931409833 - ], - [ - 9980505926358439430, - 4909215529832368544, - 8351461288536129828, - 1249767629546599012 - ], - [ - 1807216890691480940, - 8617426931824195446, - 11002408656746191939, - 2928848780068318198 - ], - [ - 11541179157141990516, - 12173830690959139035, - 2440341332114286947, - 12109090346106141232 - ], - [ - 11418690736500468651, - 16634379025633469741, - 15202881082421411217, - 1933046213639751324 - ], - [ - 7447003196248321129, - 18332700323878037759, - 9559830827790696535, - 15476899088175820878 - ], - [ - 9516228739964317619, - 3715247844046085602, - 3402341140845153636, - 6208479534561471430 - ], - [ - 13129761831635161708, - 1199200173405945178, - 2225893329254814674, - 11792586660360798317 - ], - [ - 11807698182439073980, - 7978262413534788419, - 11140621065717310105, - 1380069160672719340 - ], - [ - 347840206922472862, - 10448076973761280929, - 6823062094681347787, - 15218544951788424466 - ], - [ - 13614576575170767970, - 7218359081103672230, - 15716723129949529907, - 15097061601049280170 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/base_layer/vk_10.json b/crates/zkevm_test_harness/setup/base_layer/vk_10.json deleted file mode 100644 index 8b980dd..0000000 --- a/crates/zkevm_test_harness/setup/base_layer/vk_10.json +++ /dev/null @@ -1,257 +0,0 @@ -{ - "StorageApplication": { - "fixed_parameters": { - "parameters": { - "num_columns_under_copy_permutation": 60, - "num_witness_columns": 0, - "num_constant_columns": 4, - "max_allowed_constraint_degree": 8 - }, - "lookup_parameters": { - "UseSpecializedColumnsWithTableIdAsConstant": { - "width": 3, - "num_repetitions": 26, - "share_table_id": true - } - }, - "domain_size": 1048576, - "total_tables_len": 132352, - "public_inputs_locations": [ - [ - 0, - 1027358 - ], - [ - 1, - 1027358 - ], - [ - 2, - 1027358 - ], - [ - 3, - 1027358 - ] - ], - "extra_constant_polys_for_selectors": 2, - "table_ids_column_idxes": [ - 6 - ], - "quotient_degree": 8, - "selectors_placement": { - "Fork": { - "left": { - "Fork": { - "left": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 2, - "num_constants": 2, - "degree": 3, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 4, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 6, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 5, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 7, - "num_constants": 0, - "degree": 0, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - } - } - }, - "right": { - "GateOnly": { - "gate_idx": 1, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - }, - "right": { - "GateOnly": { - "gate_idx": 3, - "num_constants": 1, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 8, - "num_constants": 4, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 0, - "num_constants": 4, - "degree": 1, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - }, - "fri_lde_factor": 2, - "cap_size": 16 - }, - "setup_merkle_tree_cap": [ - [ - 14828808970297586390, - 10812916566872682190, - 4814232139347019203, - 9176100102005882856 - ], - [ - 3967670424646093724, - 15187149346332822036, - 12510674113975494748, - 4510474866283045065 - ], - [ - 3090046568261325916, - 2517005306301042120, - 15367389528664824672, - 4112249640174889690 - ], - [ - 18105273888459951541, - 5232822348364097609, - 16713617721022374900, - 190722882016699057 - ], - [ - 3680596367242563456, - 8277283738818682164, - 770687293026604966, - 964680746586707996 - ], - [ - 14252438150460413337, - 10138568641496080571, - 10299531489109681582, - 1029545029340913858 - ], - [ - 15064118887360123896, - 5094380307043679103, - 14910118547805564561, - 10715877189078928458 - ], - [ - 15803708295742972434, - 11361281300374199895, - 17281542834964672336, - 4609037794875108477 - ], - [ - 17069406781160283989, - 1486103635977441667, - 5599688364977636665, - 2606216552412168601 - ], - [ - 11440625988157319556, - 14165489000241104461, - 12815938030387403166, - 18358353209834817866 - ], - [ - 17484081080457701823, - 8488503007959107424, - 15436257938093142847, - 4434713360392963026 - ], - [ - 11228941610173378380, - 15586341149405816978, - 6641174723323244420, - 6502235669428985157 - ], - [ - 1780813236656786088, - 13705357356856822817, - 13823081051755218384, - 2628439960173921306 - ], - [ - 5781733601274220376, - 4396700195519547383, - 4802209023715066280, - 7053779784999063193 - ], - [ - 11266624277386388719, - 8947017045799184361, - 15630186476936326904, - 4970655490195943663 - ], - [ - 13604491581251560181, - 754251763827647964, - 85019175871498033, - 16264768579713941582 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/base_layer/vk_11.json b/crates/zkevm_test_harness/setup/base_layer/vk_11.json deleted file mode 100644 index 77bc59e..0000000 --- a/crates/zkevm_test_harness/setup/base_layer/vk_11.json +++ /dev/null @@ -1,257 +0,0 @@ -{ - "EventsSorter": { - "fixed_parameters": { - "parameters": { - "num_columns_under_copy_permutation": 130, - "num_witness_columns": 0, - "num_constant_columns": 4, - "max_allowed_constraint_degree": 18 - }, - "lookup_parameters": { - "UseSpecializedColumnsWithTableIdAsConstant": { - "width": 1, - "num_repetitions": 8, - "share_table_id": true - } - }, - "domain_size": 1048576, - "total_tables_len": 256, - "public_inputs_locations": [ - [ - 0, - 590816 - ], - [ - 1, - 590816 - ], - [ - 2, - 590816 - ], - [ - 3, - 590816 - ] - ], - "extra_constant_polys_for_selectors": 3, - "table_ids_column_idxes": [ - 7 - ], - "quotient_degree": 8, - "selectors_placement": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 1, - "num_constants": 0, - "degree": 7, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "Fork": { - "left": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 3, - "num_constants": 2, - "degree": 3, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 5, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 6, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 2, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 7, - "num_constants": 0, - "degree": 0, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - }, - "right": { - "GateOnly": { - "gate_idx": 4, - "num_constants": 1, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 8, - "num_constants": 4, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 0, - "num_constants": 4, - "degree": 1, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - } - } - }, - "fri_lde_factor": 2, - "cap_size": 16 - }, - "setup_merkle_tree_cap": [ - [ - 17255097312801917418, - 6752062397462185164, - 6945169344153100762, - 1027145090739443516 - ], - [ - 2706981353446505354, - 4400783282139197989, - 4746761039479195354, - 6917423648192975374 - ], - [ - 14359699678306853857, - 3874019407181236903, - 1702525096073880094, - 15447128604206124811 - ], - [ - 14919692895081414701, - 16198199658418046089, - 5300842507730285411, - 1354964360576854088 - ], - [ - 7893091991029104133, - 461623798339808974, - 8344344575050000699, - 6429248499764299709 - ], - [ - 3051345475339328025, - 7246741189903305632, - 8770646108314135249, - 11397594937127919638 - ], - [ - 17140261756755118484, - 14571132600312115844, - 16474851341660251601, - 3870486573224486069 - ], - [ - 14064921522483694638, - 5552772407678827457, - 8197485703462734816, - 4076425874266669579 - ], - [ - 2452070238664358269, - 13711378536375553237, - 11830939878396649638, - 7512481030146411108 - ], - [ - 7597612981457926316, - 11783666373503914223, - 11713451243725552313, - 5342379134170329134 - ], - [ - 12489669233178248038, - 17028844225279324645, - 8131691717219450889, - 14082797405972696667 - ], - [ - 11988879801285229237, - 17288180304460903679, - 13044117107479477053, - 12638813886386860955 - ], - [ - 3380229109281454972, - 4458248379364253884, - 7869182453045325845, - 9693126437712749358 - ], - [ - 2682064331957080503, - 17101005929710435580, - 11432367781015495002, - 13680190157837569463 - ], - [ - 14655856026922822596, - 174798469470174167, - 1234552219530881028, - 14985953291656457572 - ], - [ - 4854808831884097811, - 9345617176959383563, - 3777549132507294766, - 5359660921592437143 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/base_layer/vk_12.json b/crates/zkevm_test_harness/setup/base_layer/vk_12.json deleted file mode 100644 index fbc39e7..0000000 --- a/crates/zkevm_test_harness/setup/base_layer/vk_12.json +++ /dev/null @@ -1,257 +0,0 @@ -{ - "L1MessagesSorter": { - "fixed_parameters": { - "parameters": { - "num_columns_under_copy_permutation": 130, - "num_witness_columns": 0, - "num_constant_columns": 4, - "max_allowed_constraint_degree": 18 - }, - "lookup_parameters": { - "UseSpecializedColumnsWithTableIdAsConstant": { - "width": 1, - "num_repetitions": 8, - "share_table_id": true - } - }, - "domain_size": 1048576, - "total_tables_len": 256, - "public_inputs_locations": [ - [ - 0, - 590816 - ], - [ - 1, - 590816 - ], - [ - 2, - 590816 - ], - [ - 3, - 590816 - ] - ], - "extra_constant_polys_for_selectors": 3, - "table_ids_column_idxes": [ - 7 - ], - "quotient_degree": 8, - "selectors_placement": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 1, - "num_constants": 0, - "degree": 7, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "Fork": { - "left": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 3, - "num_constants": 2, - "degree": 3, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 5, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 6, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 2, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 7, - "num_constants": 0, - "degree": 0, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - }, - "right": { - "GateOnly": { - "gate_idx": 4, - "num_constants": 1, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 8, - "num_constants": 4, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 0, - "num_constants": 4, - "degree": 1, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - } - } - }, - "fri_lde_factor": 2, - "cap_size": 16 - }, - "setup_merkle_tree_cap": [ - [ - 17255097312801917418, - 6752062397462185164, - 6945169344153100762, - 1027145090739443516 - ], - [ - 2706981353446505354, - 4400783282139197989, - 4746761039479195354, - 6917423648192975374 - ], - [ - 14359699678306853857, - 3874019407181236903, - 1702525096073880094, - 15447128604206124811 - ], - [ - 14919692895081414701, - 16198199658418046089, - 5300842507730285411, - 1354964360576854088 - ], - [ - 7893091991029104133, - 461623798339808974, - 8344344575050000699, - 6429248499764299709 - ], - [ - 3051345475339328025, - 7246741189903305632, - 8770646108314135249, - 11397594937127919638 - ], - [ - 17140261756755118484, - 14571132600312115844, - 16474851341660251601, - 3870486573224486069 - ], - [ - 14064921522483694638, - 5552772407678827457, - 8197485703462734816, - 4076425874266669579 - ], - [ - 2452070238664358269, - 13711378536375553237, - 11830939878396649638, - 7512481030146411108 - ], - [ - 7597612981457926316, - 11783666373503914223, - 11713451243725552313, - 5342379134170329134 - ], - [ - 12489669233178248038, - 17028844225279324645, - 8131691717219450889, - 14082797405972696667 - ], - [ - 11988879801285229237, - 17288180304460903679, - 13044117107479477053, - 12638813886386860955 - ], - [ - 3380229109281454972, - 4458248379364253884, - 7869182453045325845, - 9693126437712749358 - ], - [ - 2682064331957080503, - 17101005929710435580, - 11432367781015495002, - 13680190157837569463 - ], - [ - 14655856026922822596, - 174798469470174167, - 1234552219530881028, - 14985953291656457572 - ], - [ - 4854808831884097811, - 9345617176959383563, - 3777549132507294766, - 5359660921592437143 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/base_layer/vk_13.json b/crates/zkevm_test_harness/setup/base_layer/vk_13.json deleted file mode 100644 index fe32152..0000000 --- a/crates/zkevm_test_harness/setup/base_layer/vk_13.json +++ /dev/null @@ -1,244 +0,0 @@ -{ - "L1MessagesHasher": { - "fixed_parameters": { - "parameters": { - "num_columns_under_copy_permutation": 66, - "num_witness_columns": 0, - "num_constant_columns": 4, - "max_allowed_constraint_degree": 8 - }, - "lookup_parameters": { - "UseSpecializedColumnsWithTableIdAsConstant": { - "width": 3, - "num_repetitions": 26, - "share_table_id": true - } - }, - "domain_size": 1048576, - "total_tables_len": 132096, - "public_inputs_locations": [ - [ - 0, - 1038149 - ], - [ - 1, - 1038149 - ], - [ - 2, - 1038149 - ], - [ - 3, - 1038149 - ] - ], - "extra_constant_polys_for_selectors": 2, - "table_ids_column_idxes": [ - 6 - ], - "quotient_degree": 8, - "selectors_placement": { - "Fork": { - "left": { - "Fork": { - "left": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 2, - "num_constants": 2, - "degree": 3, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 4, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 6, - "num_constants": 0, - "degree": 0, - "needs_selector": true, - "is_lookup": false - } - } - } - }, - "right": { - "GateOnly": { - "gate_idx": 5, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - }, - "right": { - "GateOnly": { - "gate_idx": 1, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - }, - "right": { - "GateOnly": { - "gate_idx": 3, - "num_constants": 1, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 7, - "num_constants": 4, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 0, - "num_constants": 4, - "degree": 1, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - }, - "fri_lde_factor": 2, - "cap_size": 16 - }, - "setup_merkle_tree_cap": [ - [ - 14777139935278588112, - 4852642306346514505, - 528870644537653013, - 12766220607019407671 - ], - [ - 4257836937173457180, - 18105850810127810627, - 12045855835945477909, - 1337145016913030516 - ], - [ - 13540294178921617935, - 5675450379425866696, - 8080330723590348862, - 12416515377803888920 - ], - [ - 3171578350856517770, - 6539655571602714350, - 17682924767985674977, - 8074611540701237863 - ], - [ - 14866967567212658098, - 14985810164396930899, - 14103564390721978582, - 2713291878303732148 - ], - [ - 7209698436584637628, - 72403128177350562, - 13748975409439240331, - 17101408191037730854 - ], - [ - 7094792714865445950, - 14145350607330203478, - 3322372571606796615, - 7791275147072878055 - ], - [ - 10260092656566629894, - 6872708783997532427, - 5457407604248314227, - 366003053747525096 - ], - [ - 6163187172733089710, - 15116272236856095840, - 8980783297696807334, - 4318634308458673791 - ], - [ - 22911656643808543, - 4389862417760095893, - 8180530007173246228, - 15363392102238906744 - ], - [ - 16724058906600359122, - 9749245991791698283, - 3733079220084897482, - 35144727903715636 - ], - [ - 1733024683910700810, - 16815568708094698990, - 9597261785243145371, - 14191876845225710581 - ], - [ - 3368783094877746336, - 10313180424218970297, - 7411576603144233838, - 18155104604678927944 - ], - [ - 15539244454544408034, - 14071575935246766022, - 3167686754143854069, - 2580957889210849319 - ], - [ - 11188593692389277627, - 3317111011441128346, - 18315606312625447776, - 14080235054242793975 - ], - [ - 11188480902959932408, - 16241470651544083095, - 17491552077640160913, - 1747401256351375709 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/base_layer/vk_14.json b/crates/zkevm_test_harness/setup/base_layer/vk_14.json deleted file mode 100644 index 549fa47..0000000 --- a/crates/zkevm_test_harness/setup/base_layer/vk_14.json +++ /dev/null @@ -1,257 +0,0 @@ -{ - "TransientStorageSorter": { - "fixed_parameters": { - "parameters": { - "num_columns_under_copy_permutation": 132, - "num_witness_columns": 0, - "num_constant_columns": 4, - "max_allowed_constraint_degree": 8 - }, - "lookup_parameters": { - "UseSpecializedColumnsWithTableIdAsConstant": { - "width": 1, - "num_repetitions": 16, - "share_table_id": true - } - }, - "domain_size": 1048576, - "total_tables_len": 256, - "public_inputs_locations": [ - [ - 0, - 892752 - ], - [ - 1, - 892752 - ], - [ - 2, - 892752 - ], - [ - 3, - 892752 - ] - ], - "extra_constant_polys_for_selectors": 3, - "table_ids_column_idxes": [ - 7 - ], - "quotient_degree": 8, - "selectors_placement": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 1, - "num_constants": 0, - "degree": 7, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "Fork": { - "left": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 3, - "num_constants": 2, - "degree": 3, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 5, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 6, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 2, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 7, - "num_constants": 0, - "degree": 0, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - }, - "right": { - "GateOnly": { - "gate_idx": 4, - "num_constants": 1, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 8, - "num_constants": 4, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 0, - "num_constants": 4, - "degree": 1, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - } - } - }, - "fri_lde_factor": 2, - "cap_size": 16 - }, - "setup_merkle_tree_cap": [ - [ - 17788951723277840063, - 8462364645881643860, - 7722126391128214984, - 10027490498152431970 - ], - [ - 5557741201956462631, - 12278152306750702270, - 3064748757539972725, - 3305341570184486398 - ], - [ - 18038110180785501196, - 8540020337607140998, - 13430077268448569211, - 5460432199718975876 - ], - [ - 5150728186804323068, - 11650634996397166111, - 10411058078858361834, - 7566080682304014184 - ], - [ - 6842343530579635901, - 5742438729749503946, - 4370107609250820970, - 9033192449351881683 - ], - [ - 5906731736663548310, - 13675913441720609624, - 18398373237810524219, - 7282071795552698776 - ], - [ - 10494956426821114485, - 12323826799301213073, - 13533959569834321444, - 2204821615350877346 - ], - [ - 12657084079419616094, - 13372062623949231409, - 16120278156857861702, - 6645043886923282985 - ], - [ - 14834939944362821822, - 5426310621367493085, - 5247227356190569069, - 5176807233062373498 - ], - [ - 7963611982682662924, - 10822180719852717965, - 2301285612192533472, - 10713573184473529045 - ], - [ - 3874867792653166418, - 13462088906711935156, - 18285123592376059138, - 12888997268556778001 - ], - [ - 6169019655072792740, - 14729303858499720630, - 11106975914081618904, - 6563103114302811895 - ], - [ - 15561144725028139759, - 2570514443353295127, - 16895581777423189789, - 6940546418248739987 - ], - [ - 13006077621902118920, - 5745877212673629929, - 2930326986908231353, - 10209964993178840012 - ], - [ - 12775655163968120982, - 9715939119042575238, - 1277970459759910566, - 18298109557871127258 - ], - [ - 192934088424286521, - 17318040220787098404, - 18445927399465859070, - 1831729332727033222 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/base_layer/vk_15.json b/crates/zkevm_test_harness/setup/base_layer/vk_15.json deleted file mode 100644 index 7920b0d..0000000 --- a/crates/zkevm_test_harness/setup/base_layer/vk_15.json +++ /dev/null @@ -1,257 +0,0 @@ -{ - "Secp256r1Verify": { - "fixed_parameters": { - "parameters": { - "num_columns_under_copy_permutation": 80, - "num_witness_columns": 0, - "num_constant_columns": 4, - "max_allowed_constraint_degree": 8 - }, - "lookup_parameters": { - "UseSpecializedColumnsWithTableIdAsConstant": { - "width": 3, - "num_repetitions": 16, - "share_table_id": true - } - }, - "domain_size": 1048576, - "total_tables_len": 131328, - "public_inputs_locations": [ - [ - 0, - 868273 - ], - [ - 1, - 868273 - ], - [ - 2, - 868273 - ], - [ - 3, - 868273 - ] - ], - "extra_constant_polys_for_selectors": 2, - "table_ids_column_idxes": [ - 6 - ], - "quotient_degree": 8, - "selectors_placement": { - "Fork": { - "left": { - "Fork": { - "left": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 2, - "num_constants": 2, - "degree": 3, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 4, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 6, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 5, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 7, - "num_constants": 0, - "degree": 0, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - } - } - }, - "right": { - "GateOnly": { - "gate_idx": 1, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - }, - "right": { - "GateOnly": { - "gate_idx": 3, - "num_constants": 1, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 8, - "num_constants": 4, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 0, - "num_constants": 4, - "degree": 1, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - }, - "fri_lde_factor": 2, - "cap_size": 16 - }, - "setup_merkle_tree_cap": [ - [ - 12131454647540557584, - 1763750737523645480, - 8619279027709704683, - 4651129643255643424 - ], - [ - 16307968989517169885, - 17467934168268107766, - 8313078664956672476, - 1013399375141696369 - ], - [ - 8944236766798374007, - 10066018249405625869, - 14165843539199161728, - 882878473336481011 - ], - [ - 3133873888864389617, - 7636705694672786629, - 16140966061741766162, - 10524848355388488626 - ], - [ - 3190232214103600540, - 4566598433720462645, - 2267385971927317225, - 6544156111850600155 - ], - [ - 14751702510379235541, - 17870225485925176526, - 16954369181064457355, - 13595138022783859743 - ], - [ - 6235718898067132358, - 11536252980701971838, - 17233899240583202926, - 2001764251367060358 - ], - [ - 11113629339593231904, - 16747899680199869918, - 6540281081004465731, - 15245583075979497595 - ], - [ - 6661113452873995516, - 10245709895276231144, - 12850934660624398588, - 5893869251886669115 - ], - [ - 15646321967776226253, - 3077306527336121962, - 15949956529273448794, - 903291961462407404 - ], - [ - 812918410205212075, - 16294058606134872617, - 7910370548271398421, - 13661366817000814468 - ], - [ - 3751148668091036620, - 10580360587417603443, - 10533022329085033371, - 1737312608815182546 - ], - [ - 7852731866891325870, - 14049338150560921775, - 470307356640943230, - 4408122752003603777 - ], - [ - 6351275704147321088, - 11748490069198989960, - 16891545090105386715, - 2882242558445263643 - ], - [ - 1694896341038757211, - 1873662532699666062, - 5808183019188884058, - 5824761302153845044 - ], - [ - 1664526565762579235, - 9453267085003918554, - 6647424349443780978, - 12240976780609809691 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/base_layer/vk_2.json b/crates/zkevm_test_harness/setup/base_layer/vk_2.json deleted file mode 100644 index afbdd17..0000000 --- a/crates/zkevm_test_harness/setup/base_layer/vk_2.json +++ /dev/null @@ -1,257 +0,0 @@ -{ - "CodeDecommittmentsSorter": { - "fixed_parameters": { - "parameters": { - "num_columns_under_copy_permutation": 130, - "num_witness_columns": 0, - "num_constant_columns": 4, - "max_allowed_constraint_degree": 8 - }, - "lookup_parameters": { - "UseSpecializedColumnsWithTableIdAsConstant": { - "width": 1, - "num_repetitions": 18, - "share_table_id": true - } - }, - "domain_size": 1048576, - "total_tables_len": 256, - "public_inputs_locations": [ - [ - 0, - 1021854 - ], - [ - 1, - 1021854 - ], - [ - 2, - 1021854 - ], - [ - 3, - 1021854 - ] - ], - "extra_constant_polys_for_selectors": 3, - "table_ids_column_idxes": [ - 7 - ], - "quotient_degree": 8, - "selectors_placement": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 1, - "num_constants": 0, - "degree": 7, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "Fork": { - "left": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 3, - "num_constants": 2, - "degree": 3, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 5, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 6, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 2, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 7, - "num_constants": 0, - "degree": 0, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - }, - "right": { - "GateOnly": { - "gate_idx": 4, - "num_constants": 1, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 8, - "num_constants": 4, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 0, - "num_constants": 4, - "degree": 1, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - } - } - }, - "fri_lde_factor": 2, - "cap_size": 16 - }, - "setup_merkle_tree_cap": [ - [ - 2638073007663622156, - 8095790926675075575, - 16070536450025430297, - 11107879245782883310 - ], - [ - 14146741033954484667, - 6190536674348638720, - 16225788979445059477, - 14054620090462985529 - ], - [ - 11640224008014629596, - 641539748496027160, - 13808722951176221096, - 16170765986761751839 - ], - [ - 3935980412801468150, - 1369763633048581729, - 15164038222707237449, - 13549026317001505493 - ], - [ - 7347140194150198874, - 3761583621533582182, - 1201042008705759557, - 4518814071203771589 - ], - [ - 800427219378311884, - 9408589372717347086, - 4254572946942417329, - 5142794058426597251 - ], - [ - 9025763675471789857, - 9658241200006349915, - 10843576536878471228, - 4504613934156851017 - ], - [ - 924391528635837029, - 17275471398483292983, - 7119295641875104852, - 3574531397848859770 - ], - [ - 9377840526717456169, - 10735342053764638034, - 2342156236435128394, - 14166002014472046096 - ], - [ - 2892383637971079443, - 13418647945623595756, - 10019182992393923816, - 9844763621346094605 - ], - [ - 10882982703274329811, - 1514425380968646350, - 13439208364741860903, - 13990068349260696136 - ], - [ - 15895812818511549818, - 15738749976988188006, - 13440084002922282596, - 14578356625798184093 - ], - [ - 3859406845557969736, - 17314298659359090415, - 16770924942850282883, - 486597592063200525 - ], - [ - 11378407834848513159, - 4967859104549187166, - 13937264085276400573, - 7478354099484226349 - ], - [ - 1449906124962973794, - 5408228139111124399, - 1658036384062801904, - 7066463570538863033 - ], - [ - 15186027246389802614, - 9949859568958827686, - 11971923963356626879, - 15735564656222075589 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/base_layer/vk_255.json b/crates/zkevm_test_harness/setup/base_layer/vk_255.json deleted file mode 100644 index 3eb2720..0000000 --- a/crates/zkevm_test_harness/setup/base_layer/vk_255.json +++ /dev/null @@ -1,244 +0,0 @@ -{ - "EIP4844Repack": { - "fixed_parameters": { - "parameters": { - "num_columns_under_copy_permutation": 60, - "num_witness_columns": 0, - "num_constant_columns": 8, - "max_allowed_constraint_degree": 4 - }, - "lookup_parameters": { - "UseSpecializedColumnsWithTableIdAsConstant": { - "width": 3, - "num_repetitions": 20, - "share_table_id": true - } - }, - "domain_size": 1048576, - "total_tables_len": 132096, - "public_inputs_locations": [ - [ - 0, - 871888 - ], - [ - 1, - 871888 - ], - [ - 2, - 871888 - ], - [ - 3, - 871888 - ] - ], - "extra_constant_polys_for_selectors": 2, - "table_ids_column_idxes": [ - 10 - ], - "quotient_degree": 8, - "selectors_placement": { - "Fork": { - "left": { - "Fork": { - "left": { - "Fork": { - "left": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 2, - "num_constants": 2, - "degree": 3, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 7, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 1, - "num_constants": 0, - "degree": 0, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - }, - "right": { - "GateOnly": { - "gate_idx": 6, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - }, - "right": { - "GateOnly": { - "gate_idx": 4, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - }, - "right": { - "GateOnly": { - "gate_idx": 5, - "num_constants": 1, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 3, - "num_constants": 4, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 0, - "num_constants": 8, - "degree": 1, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - }, - "fri_lde_factor": 2, - "cap_size": 16 - }, - "setup_merkle_tree_cap": [ - [ - 8857790635103886692, - 9145046645559694257, - 17488660027278347565, - 8817593146467634140 - ], - [ - 6711380226322844679, - 2123691284570803246, - 12295372472350367508, - 10978908704734762415 - ], - [ - 17702865806325920862, - 13534025282266264601, - 7410273300865042165, - 8054760400577450615 - ], - [ - 9202207939202796110, - 2177214810083011487, - 6113408869326365985, - 17984113598119758259 - ], - [ - 1695969464719091691, - 6199495987824462379, - 6875295066005664441, - 15176095354086185496 - ], - [ - 18357274720982358569, - 4591163690754851982, - 8491969713714491709, - 17259596157240481921 - ], - [ - 13747301604569236018, - 7581740277730966131, - 7668820505848233054, - 6376304179919484526 - ], - [ - 16416699194907967793, - 10828523064805608775, - 10482972231581420652, - 16433448078649821239 - ], - [ - 12889485127349873713, - 6055107727276837861, - 3458792373749295786, - 13912304236201179952 - ], - [ - 4578570785341847215, - 630951964936145694, - 3314305164770743947, - 8953636177352834696 - ], - [ - 3011983132875605995, - 12558536765575463731, - 13098524976349461556, - 14104604062201193585 - ], - [ - 2586176628970879914, - 483646159457502401, - 11148037034435903593, - 17433364003936273491 - ], - [ - 17595876498224096285, - 10455036020592270214, - 14639509438019006067, - 3316951720167888226 - ], - [ - 227921375683086619, - 12187299875370419950, - 5790238846019007252, - 7107207270556280816 - ], - [ - 9891600808155004269, - 11195150736788437685, - 6607765638665107963, - 13972561121993199289 - ], - [ - 948665332428927020, - 13188775975817948026, - 5291794027730683901, - 245193425574427372 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/base_layer/vk_3.json b/crates/zkevm_test_harness/setup/base_layer/vk_3.json deleted file mode 100644 index a085b79..0000000 --- a/crates/zkevm_test_harness/setup/base_layer/vk_3.json +++ /dev/null @@ -1,244 +0,0 @@ -{ - "CodeDecommitter": { - "fixed_parameters": { - "parameters": { - "num_columns_under_copy_permutation": 108, - "num_witness_columns": 0, - "num_constant_columns": 4, - "max_allowed_constraint_degree": 8 - }, - "lookup_parameters": { - "UseSpecializedColumnsWithTableIdAsConstant": { - "width": 4, - "num_repetitions": 11, - "share_table_id": true - } - }, - "domain_size": 1048576, - "total_tables_len": 12320, - "public_inputs_locations": [ - [ - 0, - 1045180 - ], - [ - 1, - 1045180 - ], - [ - 2, - 1045180 - ], - [ - 3, - 1045180 - ] - ], - "extra_constant_polys_for_selectors": 2, - "table_ids_column_idxes": [ - 6 - ], - "quotient_degree": 8, - "selectors_placement": { - "Fork": { - "left": { - "Fork": { - "left": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 1, - "num_constants": 2, - "degree": 3, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 4, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 5, - "num_constants": 0, - "degree": 0, - "needs_selector": true, - "is_lookup": false - } - } - } - }, - "right": { - "GateOnly": { - "gate_idx": 7, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - }, - "right": { - "GateOnly": { - "gate_idx": 3, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - }, - "right": { - "GateOnly": { - "gate_idx": 6, - "num_constants": 1, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 2, - "num_constants": 4, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 0, - "num_constants": 4, - "degree": 1, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - }, - "fri_lde_factor": 2, - "cap_size": 16 - }, - "setup_merkle_tree_cap": [ - [ - 10947270532655187700, - 2824991572523762771, - 13615596050473868767, - 13185513811434901410 - ], - [ - 1403066024412470424, - 7403628415265471880, - 5231148927787163551, - 4862317795078250133 - ], - [ - 9444723235457698286, - 6666195607730168525, - 9540139468463085431, - 16045569500261234177 - ], - [ - 17041683534415813271, - 9868391694892582185, - 11009172258600308159, - 1682379016388301111 - ], - [ - 673575929868179342, - 1280479814517716172, - 3255842674330080843, - 15576113586441062041 - ], - [ - 6501405739731783857, - 6941183609866253948, - 8323637924965974661, - 8926663342378816425 - ], - [ - 1740635555764945925, - 12831061716095734959, - 13099489837942585615, - 6785891322765618792 - ], - [ - 278979376052899040, - 6862458721425122862, - 5974109936879260639, - 1618917119771730901 - ], - [ - 3790997975893425636, - 9565261943161534072, - 11910106713159151135, - 2348333029997593953 - ], - [ - 14422195181597270161, - 1942766908056717849, - 3544828563171648231, - 3526535664690062134 - ], - [ - 17474569017414120910, - 1427009951604714810, - 839794372935607339, - 7456670461652412084 - ], - [ - 2832143323012590843, - 2783557137307254012, - 11305596607970500418, - 8903832011396430067 - ], - [ - 1229141482639469060, - 13036708860601763713, - 16189038352859413896, - 2972971714624929388 - ], - [ - 6424394102717311719, - 13901366742338775541, - 11499799837818945935, - 11960613886917250055 - ], - [ - 16202577049012830106, - 9211014225973109582, - 8846369759594335945, - 9803309954098852271 - ], - [ - 8948966653817264713, - 14787205102056055830, - 12272040121420405091, - 14183953866768246512 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/base_layer/vk_4.json b/crates/zkevm_test_harness/setup/base_layer/vk_4.json deleted file mode 100644 index 2c4c63d..0000000 --- a/crates/zkevm_test_harness/setup/base_layer/vk_4.json +++ /dev/null @@ -1,257 +0,0 @@ -{ - "LogDemuxer": { - "fixed_parameters": { - "parameters": { - "num_columns_under_copy_permutation": 136, - "num_witness_columns": 0, - "num_constant_columns": 4, - "max_allowed_constraint_degree": 8 - }, - "lookup_parameters": { - "UseSpecializedColumnsWithTableIdAsConstant": { - "width": 1, - "num_repetitions": 14, - "share_table_id": true - } - }, - "domain_size": 1048576, - "total_tables_len": 256, - "public_inputs_locations": [ - [ - 0, - 875303 - ], - [ - 1, - 875303 - ], - [ - 2, - 875303 - ], - [ - 3, - 875303 - ] - ], - "extra_constant_polys_for_selectors": 3, - "table_ids_column_idxes": [ - 7 - ], - "quotient_degree": 8, - "selectors_placement": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 1, - "num_constants": 0, - "degree": 7, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "Fork": { - "left": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 3, - "num_constants": 2, - "degree": 3, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 5, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 6, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 2, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 7, - "num_constants": 0, - "degree": 0, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - }, - "right": { - "GateOnly": { - "gate_idx": 4, - "num_constants": 1, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 8, - "num_constants": 4, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 0, - "num_constants": 4, - "degree": 1, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - } - } - }, - "fri_lde_factor": 2, - "cap_size": 16 - }, - "setup_merkle_tree_cap": [ - [ - 13090834657209321461, - 15637288656360582343, - 5933128411934754375, - 12712267963368264173 - ], - [ - 1868232780469433800, - 3323029776497426696, - 10040341229060862978, - 11528244129133136569 - ], - [ - 8855972651168247885, - 12875084511519113864, - 4577777617335428991, - 18254146508326314171 - ], - [ - 1540259283267646318, - 17507318910673678600, - 13378589454493565468, - 17779662681248555186 - ], - [ - 15899465461254716599, - 10436468311592164755, - 17677647385019481543, - 5093033490507477417 - ], - [ - 12051339015387083643, - 1773616361434088530, - 4736655490730414536, - 3496315228259689549 - ], - [ - 6427592967887961604, - 8117372483675129172, - 11094125038652268784, - 1019304003687775949 - ], - [ - 14040743716466999448, - 15035401172613021255, - 9874184548332880038, - 9269380971480739685 - ], - [ - 8277916665309645988, - 4036992061384608429, - 5562473489034847770, - 10421374161348172690 - ], - [ - 11979809812278246273, - 5910701310380413646, - 11573135090005890881, - 3536635952323535894 - ], - [ - 13067764901586735754, - 8466377778949032607, - 4893789977849924361, - 4276171720850919403 - ], - [ - 17704856739482922919, - 8685760304531128727, - 8478068425199859596, - 10774306664342486664 - ], - [ - 11589829424209984582, - 4348121254876425126, - 14289500157955353607, - 9889367804559833784 - ], - [ - 13562215424424466519, - 16214616552981284615, - 7868165280186836254, - 16607817192904576815 - ], - [ - 9842714910106916385, - 7218045966477727926, - 5401620273430066310, - 18403347684678816709 - ], - [ - 1291384877728096523, - 15686146917797707089, - 13659806960031102550, - 16258925771260797621 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/base_layer/vk_5.json b/crates/zkevm_test_harness/setup/base_layer/vk_5.json deleted file mode 100644 index 5cf9373..0000000 --- a/crates/zkevm_test_harness/setup/base_layer/vk_5.json +++ /dev/null @@ -1,244 +0,0 @@ -{ - "KeccakRoundFunction": { - "fixed_parameters": { - "parameters": { - "num_columns_under_copy_permutation": 86, - "num_witness_columns": 0, - "num_constant_columns": 4, - "max_allowed_constraint_degree": 8 - }, - "lookup_parameters": { - "UseSpecializedColumnsWithTableIdAsConstant": { - "width": 3, - "num_repetitions": 14, - "share_table_id": true - } - }, - "domain_size": 1048576, - "total_tables_len": 132096, - "public_inputs_locations": [ - [ - 0, - 957655 - ], - [ - 1, - 957655 - ], - [ - 2, - 957655 - ], - [ - 3, - 957655 - ] - ], - "extra_constant_polys_for_selectors": 2, - "table_ids_column_idxes": [ - 6 - ], - "quotient_degree": 8, - "selectors_placement": { - "Fork": { - "left": { - "Fork": { - "left": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 2, - "num_constants": 2, - "degree": 3, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 4, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 6, - "num_constants": 0, - "degree": 0, - "needs_selector": true, - "is_lookup": false - } - } - } - }, - "right": { - "GateOnly": { - "gate_idx": 5, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - }, - "right": { - "GateOnly": { - "gate_idx": 1, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - }, - "right": { - "GateOnly": { - "gate_idx": 3, - "num_constants": 1, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 7, - "num_constants": 4, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 0, - "num_constants": 4, - "degree": 1, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - }, - "fri_lde_factor": 2, - "cap_size": 16 - }, - "setup_merkle_tree_cap": [ - [ - 5863338309468690805, - 6612807556868623855, - 14384447122223208889, - 4869624617941633977 - ], - [ - 7203568093424325982, - 11467433213790803023, - 3331132209617185572, - 12059630931627430867 - ], - [ - 17754341693454587497, - 7044019905110787629, - 13344874745221604862, - 689445111894783375 - ], - [ - 12146861234544017277, - 10376115062914418911, - 8960119128938611413, - 8559956938223261930 - ], - [ - 16520223933708511688, - 3172930642611959373, - 17561897383101277942, - 8480394309945227558 - ], - [ - 1996517481667965644, - 7377981481713124790, - 4085759919146714953, - 14547160858649434950 - ], - [ - 6783829941378618951, - 4164473016846576356, - 6466125109246198457, - 5555424632322755268 - ], - [ - 15545095573096466305, - 6069931892954605821, - 9897118900133603670, - 623299142232746660 - ], - [ - 2729973951622970375, - 2475966630698408655, - 6354477244264616033, - 16467651095039013404 - ], - [ - 3475789501107470785, - 6545047721624920952, - 13708118956887446396, - 8327911440041257243 - ], - [ - 12619459378778019696, - 4556930387203524575, - 15096694625117428691, - 968312946067281062 - ], - [ - 15417126618137433078, - 919913711636678455, - 601385876894393616, - 10002950656997366990 - ], - [ - 13539183528986038681, - 18114796302738189862, - 17405354768003119916, - 15572242745340962324 - ], - [ - 9674870974878238491, - 12069223024267066514, - 7771360710281282208, - 14926388438391014942 - ], - [ - 18104374714769140792, - 16885383007413710616, - 14207969031693102569, - 13387272531183358013 - ], - [ - 4720607235344128981, - 8734926750581912691, - 8602628498785008248, - 9428253327807062948 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/base_layer/vk_6.json b/crates/zkevm_test_harness/setup/base_layer/vk_6.json deleted file mode 100644 index 0ce3b7e..0000000 --- a/crates/zkevm_test_harness/setup/base_layer/vk_6.json +++ /dev/null @@ -1,244 +0,0 @@ -{ - "Sha256RoundFunction": { - "fixed_parameters": { - "parameters": { - "num_columns_under_copy_permutation": 116, - "num_witness_columns": 0, - "num_constant_columns": 4, - "max_allowed_constraint_degree": 8 - }, - "lookup_parameters": { - "UseSpecializedColumnsWithTableIdAsConstant": { - "width": 4, - "num_repetitions": 9, - "share_table_id": true - } - }, - "domain_size": 1048576, - "total_tables_len": 12320, - "public_inputs_locations": [ - [ - 0, - 1039793 - ], - [ - 1, - 1039793 - ], - [ - 2, - 1039793 - ], - [ - 3, - 1039793 - ] - ], - "extra_constant_polys_for_selectors": 2, - "table_ids_column_idxes": [ - 6 - ], - "quotient_degree": 8, - "selectors_placement": { - "Fork": { - "left": { - "Fork": { - "left": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 1, - "num_constants": 2, - "degree": 3, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 4, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 5, - "num_constants": 0, - "degree": 0, - "needs_selector": true, - "is_lookup": false - } - } - } - }, - "right": { - "GateOnly": { - "gate_idx": 7, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - }, - "right": { - "GateOnly": { - "gate_idx": 3, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - }, - "right": { - "GateOnly": { - "gate_idx": 6, - "num_constants": 1, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 2, - "num_constants": 4, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 0, - "num_constants": 4, - "degree": 1, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - }, - "fri_lde_factor": 2, - "cap_size": 16 - }, - "setup_merkle_tree_cap": [ - [ - 8551824724963469994, - 3805878161473036328, - 12287624679112288479, - 17391807293808565280 - ], - [ - 14641308797322970882, - 14461841141984705270, - 7069951916111725461, - 6344046415820809198 - ], - [ - 3959655336627577830, - 14160576559610883307, - 1654615872780870838, - 9859258492918189521 - ], - [ - 13695996637388369049, - 17084784733479748546, - 3283082335329513810, - 3512812257118968944 - ], - [ - 672761378629374990, - 9044860720646768841, - 16391996110350906506, - 10603266852693349340 - ], - [ - 9064418935551444184, - 4675957283674078319, - 7068701468079564076, - 2595868425825164314 - ], - [ - 3422287541611330393, - 74447537744169495, - 2212858865985693947, - 8454892233786824279 - ], - [ - 12648222444378420441, - 9651432601825335503, - 5216401195457263092, - 2794187433145411670 - ], - [ - 6758738672410384355, - 10481950526885856767, - 17239134438512471237, - 15725744325343831085 - ], - [ - 11622168208324357850, - 3412092698576120542, - 12104553732480469617, - 8895237469767592503 - ], - [ - 6794091710445203510, - 5294088036429630617, - 11676383471860723257, - 242243803797994924 - ], - [ - 15204662695233838380, - 12860319709234294275, - 11772590879404282998, - 1921851587616916093 - ], - [ - 11037692172579264419, - 15978184731486034645, - 3006427844872258551, - 2931858903926766395 - ], - [ - 6299103500630214151, - 7558794188571788628, - 3663895791634305168, - 10052501694191557791 - ], - [ - 4757366744518669470, - 7444042233140628233, - 13416740467355068815, - 8711015473246012573 - ], - [ - 1847698388432414514, - 7490556930780792926, - 2695937794693785244, - 3200087500710114960 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/base_layer/vk_7.json b/crates/zkevm_test_harness/setup/base_layer/vk_7.json deleted file mode 100644 index 081a899..0000000 --- a/crates/zkevm_test_harness/setup/base_layer/vk_7.json +++ /dev/null @@ -1,270 +0,0 @@ -{ - "ECRecover": { - "fixed_parameters": { - "parameters": { - "num_columns_under_copy_permutation": 80, - "num_witness_columns": 0, - "num_constant_columns": 4, - "max_allowed_constraint_degree": 8 - }, - "lookup_parameters": { - "UseSpecializedColumnsWithTableIdAsConstant": { - "width": 3, - "num_repetitions": 16, - "share_table_id": true - } - }, - "domain_size": 1048576, - "total_tables_len": 197632, - "public_inputs_locations": [ - [ - 0, - 939249 - ], - [ - 1, - 939249 - ], - [ - 2, - 939249 - ], - [ - 3, - 939249 - ] - ], - "extra_constant_polys_for_selectors": 2, - "table_ids_column_idxes": [ - 6 - ], - "quotient_degree": 8, - "selectors_placement": { - "Fork": { - "left": { - "Fork": { - "left": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 3, - "num_constants": 2, - "degree": 3, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 2, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 6, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 5, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 7, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - } - } - }, - "right": { - "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": 4, - "num_constants": 1, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 9, - "num_constants": 4, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 0, - "num_constants": 4, - "degree": 1, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - }, - "fri_lde_factor": 2, - "cap_size": 16 - }, - "setup_merkle_tree_cap": [ - [ - 7267915123201510183, - 17059329545535025481, - 17337853211566055605, - 13218263283263475992 - ], - [ - 10979188830478659558, - 7253725853111389990, - 11439639735298128413, - 15990072029154969007 - ], - [ - 17390633752974581692, - 1557570248716508287, - 16844406342770462426, - 9310311701895014986 - ], - [ - 8071137353047597016, - 3873092131985622330, - 858376238956768319, - 3002736117797912959 - ], - [ - 2818638546467207618, - 6047705092104353588, - 18148332351823173177, - 14670076557055954632 - ], - [ - 11764882414220232595, - 17895139345436765219, - 14818800229488062239, - 18260813270901687889 - ], - [ - 6634629463960479676, - 6899670518669064791, - 10318707631326421432, - 11146115387266549699 - ], - [ - 12711421276406698345, - 12441867224931731541, - 10413490066730179784, - 13355553093427653983 - ], - [ - 5642273456131960466, - 2898532968608079966, - 10254731924623863071, - 10824864377008516913 - ], - [ - 3279325445925348476, - 6062895207046558871, - 1798372802980260018, - 1301322591361329633 - ], - [ - 2424667246179335604, - 13919911246470260305, - 5924780720641924851, - 13020541882246459567 - ], - [ - 15262138884450915513, - 924769402589864764, - 13673818176697083057, - 17326355825874614941 - ], - [ - 7648241578740419093, - 98246770600157973, - 7056802328793016524, - 4130793645682889784 - ], - [ - 16944638643467187900, - 1768182035749762901, - 18072179906947607138, - 8278656774500673707 - ], - [ - 9955911887751864247, - 15418416812706397082, - 2550835683550676353, - 15657407581163007617 - ], - [ - 4249923012858880322, - 7464334917340203125, - 16556019616240936067, - 2270268518814674287 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/base_layer/vk_8.json b/crates/zkevm_test_harness/setup/base_layer/vk_8.json deleted file mode 100644 index 01b957e..0000000 --- a/crates/zkevm_test_harness/setup/base_layer/vk_8.json +++ /dev/null @@ -1,257 +0,0 @@ -{ - "RAMPermutation": { - "fixed_parameters": { - "parameters": { - "num_columns_under_copy_permutation": 133, - "num_witness_columns": 0, - "num_constant_columns": 4, - "max_allowed_constraint_degree": 8 - }, - "lookup_parameters": { - "UseSpecializedColumnsWithTableIdAsConstant": { - "width": 1, - "num_repetitions": 15, - "share_table_id": true - } - }, - "domain_size": 1048576, - "total_tables_len": 256, - "public_inputs_locations": [ - [ - 0, - 1044095 - ], - [ - 1, - 1044095 - ], - [ - 2, - 1044095 - ], - [ - 3, - 1044095 - ] - ], - "extra_constant_polys_for_selectors": 3, - "table_ids_column_idxes": [ - 7 - ], - "quotient_degree": 8, - "selectors_placement": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 1, - "num_constants": 0, - "degree": 7, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "Fork": { - "left": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 3, - "num_constants": 2, - "degree": 3, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 5, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 6, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 2, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 7, - "num_constants": 0, - "degree": 0, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - }, - "right": { - "GateOnly": { - "gate_idx": 4, - "num_constants": 1, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 8, - "num_constants": 4, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 0, - "num_constants": 4, - "degree": 1, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - } - } - }, - "fri_lde_factor": 2, - "cap_size": 16 - }, - "setup_merkle_tree_cap": [ - [ - 7748855058771730961, - 18077946489631649497, - 1126488644057748066, - 14688059039599644438 - ], - [ - 4480629341804348299, - 10505662440791981234, - 4568412032951786787, - 12296506456394181969 - ], - [ - 16177866372671364827, - 6970256790084749443, - 10619139891136255069, - 1607793233799494191 - ], - [ - 16984252104671889635, - 13549428959009290270, - 18134611582044419523, - 13805480879905126881 - ], - [ - 17770436976754840017, - 7234588192906938750, - 1676460085700470353, - 17733573771328390126 - ], - [ - 1322939182961086562, - 5294941824911180446, - 10983825026212251207, - 4904636572110590284 - ], - [ - 12784739321844360991, - 12439305138735676805, - 14983461304040938818, - 17269069332772868104 - ], - [ - 14780190734158735021, - 13940544738219743565, - 6645149114623433718, - 13466406487834863255 - ], - [ - 13329778603033226548, - 10757456562158453823, - 16599667503315631352, - 7621238797658185159 - ], - [ - 14547407989101566794, - 13324264894451648565, - 16566710504362716031, - 4779331080355111127 - ], - [ - 6132579229855214454, - 17610416320024829323, - 12304246579944377351, - 9688211256511656964 - ], - [ - 8981542755583161308, - 5091565442848149167, - 13934425064181076259, - 9294930870454289441 - ], - [ - 7427098481125065729, - 13578369070049130481, - 11513105383705002933, - 9750527547580548099 - ], - [ - 5745702296484372803, - 17242736621178757499, - 11421559995636138498, - 12684122852092168791 - ], - [ - 1002992144601037215, - 16187923653560782188, - 5293022176068028122, - 9959247706453715838 - ], - [ - 4182061746333368731, - 5244109339200264013, - 10015150430260308263, - 11549298210681275420 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/base_layer/vk_9.json b/crates/zkevm_test_harness/setup/base_layer/vk_9.json deleted file mode 100644 index 2a80fcf..0000000 --- a/crates/zkevm_test_harness/setup/base_layer/vk_9.json +++ /dev/null @@ -1,257 +0,0 @@ -{ - "StorageSorter": { - "fixed_parameters": { - "parameters": { - "num_columns_under_copy_permutation": 132, - "num_witness_columns": 0, - "num_constant_columns": 4, - "max_allowed_constraint_degree": 8 - }, - "lookup_parameters": { - "UseSpecializedColumnsWithTableIdAsConstant": { - "width": 1, - "num_repetitions": 16, - "share_table_id": true - } - }, - "domain_size": 1048576, - "total_tables_len": 256, - "public_inputs_locations": [ - [ - 0, - 1046317 - ], - [ - 1, - 1046317 - ], - [ - 2, - 1046317 - ], - [ - 3, - 1046317 - ] - ], - "extra_constant_polys_for_selectors": 3, - "table_ids_column_idxes": [ - 7 - ], - "quotient_degree": 8, - "selectors_placement": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 1, - "num_constants": 0, - "degree": 7, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "Fork": { - "left": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 3, - "num_constants": 2, - "degree": 3, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 5, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 6, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 2, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 7, - "num_constants": 0, - "degree": 0, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - }, - "right": { - "GateOnly": { - "gate_idx": 4, - "num_constants": 1, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 8, - "num_constants": 4, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 0, - "num_constants": 4, - "degree": 1, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - } - } - }, - "fri_lde_factor": 2, - "cap_size": 16 - }, - "setup_merkle_tree_cap": [ - [ - 4720381805984417431, - 13078422028573677966, - 12719610199416872768, - 814461378397191674 - ], - [ - 7528162393526520082, - 16021794900358493536, - 10778196681779195944, - 16999373544006604274 - ], - [ - 6747601332592429411, - 10839430478686810097, - 13645038614460463708, - 13820943711197201062 - ], - [ - 3296980954753787898, - 16847154708500530922, - 4760207114567346237, - 933989207013374596 - ], - [ - 435751225506322730, - 11838854342511914922, - 8141668552314414324, - 2080639242020278276 - ], - [ - 12577933521680800715, - 7013157337092792023, - 8948304311622302542, - 13444594627920045180 - ], - [ - 10039030243356480714, - 16189912181289242789, - 10233207085455746896, - 9133045755698092179 - ], - [ - 4258951657397630338, - 7089329735582865970, - 7454083395219072742, - 6942440874612228572 - ], - [ - 4205365380387206769, - 4810070288054886759, - 12185381545408489993, - 9168852501594036569 - ], - [ - 10516394727687757858, - 13834473449189539894, - 14081317825129873045, - 6351648171885016957 - ], - [ - 18078042118328183988, - 6073950769044690696, - 16412846409205043478, - 2130555455391847686 - ], - [ - 11243654607886467582, - 16949864848604250653, - 9402265113410343268, - 5314745691722462235 - ], - [ - 15979853768668375314, - 12543007664588017291, - 12965088303373453422, - 2147288991358425708 - ], - [ - 244366469137530999, - 6419427921450944899, - 11667939960797081159, - 12423571797082389411 - ], - [ - 1119341028349378585, - 6534556044367196007, - 17980160443578730518, - 15264250936810044760 - ], - [ - 13689391307335641715, - 17074269686100848413, - 17922241310959477038, - 13088974302469761152 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/recursion_layer/finalization_hint_1.json b/crates/zkevm_test_harness/setup/recursion_layer/finalization_hint_1.json deleted file mode 100644 index b7885ec..0000000 --- a/crates/zkevm_test_harness/setup/recursion_layer/finalization_hint_1.json +++ /dev/null @@ -1,128 +0,0 @@ -{ - "SchedulerCircuit": { - "row_finalization_hints": [ - [ - 39, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ] - ], - "column_finalization_hints": [ - [ - 6, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 1, - 0, - 0, - 0, - 2, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 2, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 3, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 4, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 5, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 6, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 212, - 43, - 58, - 0, - 0, - 0, - 0, - 0 - ] - ], - "nop_gates_to_add": 4724, - "final_trace_len": 1048576, - "public_inputs": [ - [ - 0, - 1043851 - ], - [ - 1, - 1043851 - ], - [ - 2, - 1043851 - ], - [ - 3, - 1043851 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/recursion_layer/finalization_hint_10.json b/crates/zkevm_test_harness/setup/recursion_layer/finalization_hint_10.json deleted file mode 100644 index dafc484..0000000 --- a/crates/zkevm_test_harness/setup/recursion_layer/finalization_hint_10.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "LeafLayerCircuitForRAMPermutation": { - "row_finalization_hints": [ - [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ] - ], - "column_finalization_hints": [], - "nop_gates_to_add": 151127, - "final_trace_len": 1048576, - "public_inputs": [ - [ - 0, - 0 - ], - [ - 1, - 0 - ], - [ - 2, - 0 - ], - [ - 3, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/recursion_layer/finalization_hint_11.json b/crates/zkevm_test_harness/setup/recursion_layer/finalization_hint_11.json deleted file mode 100644 index 0100e6f..0000000 --- a/crates/zkevm_test_harness/setup/recursion_layer/finalization_hint_11.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "LeafLayerCircuitForStorageSorter": { - "row_finalization_hints": [ - [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ] - ], - "column_finalization_hints": [], - "nop_gates_to_add": 150369, - "final_trace_len": 1048576, - "public_inputs": [ - [ - 0, - 0 - ], - [ - 1, - 0 - ], - [ - 2, - 0 - ], - [ - 3, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/recursion_layer/finalization_hint_12.json b/crates/zkevm_test_harness/setup/recursion_layer/finalization_hint_12.json deleted file mode 100644 index 62c0c55..0000000 --- a/crates/zkevm_test_harness/setup/recursion_layer/finalization_hint_12.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "LeafLayerCircuitForStorageApplication": { - "row_finalization_hints": [ - [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ] - ], - "column_finalization_hints": [], - "nop_gates_to_add": 158636, - "final_trace_len": 1048576, - "public_inputs": [ - [ - 0, - 0 - ], - [ - 1, - 0 - ], - [ - 2, - 0 - ], - [ - 3, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/recursion_layer/finalization_hint_13.json b/crates/zkevm_test_harness/setup/recursion_layer/finalization_hint_13.json deleted file mode 100644 index 699c0a8..0000000 --- a/crates/zkevm_test_harness/setup/recursion_layer/finalization_hint_13.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "LeafLayerCircuitForEventsSorter": { - "row_finalization_hints": [ - [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ] - ], - "column_finalization_hints": [], - "nop_gates_to_add": 177571, - "final_trace_len": 1048576, - "public_inputs": [ - [ - 0, - 0 - ], - [ - 1, - 0 - ], - [ - 2, - 0 - ], - [ - 3, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/recursion_layer/finalization_hint_14.json b/crates/zkevm_test_harness/setup/recursion_layer/finalization_hint_14.json deleted file mode 100644 index 6c51bab..0000000 --- a/crates/zkevm_test_harness/setup/recursion_layer/finalization_hint_14.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "LeafLayerCircuitForL1MessagesSorter": { - "row_finalization_hints": [ - [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ] - ], - "column_finalization_hints": [], - "nop_gates_to_add": 177571, - "final_trace_len": 1048576, - "public_inputs": [ - [ - 0, - 0 - ], - [ - 1, - 0 - ], - [ - 2, - 0 - ], - [ - 3, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/recursion_layer/finalization_hint_15.json b/crates/zkevm_test_harness/setup/recursion_layer/finalization_hint_15.json deleted file mode 100644 index 5330a59..0000000 --- a/crates/zkevm_test_harness/setup/recursion_layer/finalization_hint_15.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "LeafLayerCircuitForL1MessagesHasher": { - "row_finalization_hints": [ - [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ] - ], - "column_finalization_hints": [], - "nop_gates_to_add": 147164, - "final_trace_len": 1048576, - "public_inputs": [ - [ - 0, - 0 - ], - [ - 1, - 0 - ], - [ - 2, - 0 - ], - [ - 3, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/recursion_layer/finalization_hint_16.json b/crates/zkevm_test_harness/setup/recursion_layer/finalization_hint_16.json deleted file mode 100644 index 1af9df7..0000000 --- a/crates/zkevm_test_harness/setup/recursion_layer/finalization_hint_16.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "LeafLayerCircuitForTransientStorageSorter": { - "row_finalization_hints": [ - [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ] - ], - "column_finalization_hints": [], - "nop_gates_to_add": 150369, - "final_trace_len": 1048576, - "public_inputs": [ - [ - 0, - 0 - ], - [ - 1, - 0 - ], - [ - 2, - 0 - ], - [ - 3, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/recursion_layer/finalization_hint_17.json b/crates/zkevm_test_harness/setup/recursion_layer/finalization_hint_17.json deleted file mode 100644 index 0ac5dcb..0000000 --- a/crates/zkevm_test_harness/setup/recursion_layer/finalization_hint_17.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "LeafLayerCircuitForSecp256r1Verify": { - "row_finalization_hints": [ - [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ] - ], - "column_finalization_hints": [], - "nop_gates_to_add": 190200, - "final_trace_len": 1048576, - "public_inputs": [ - [ - 0, - 0 - ], - [ - 1, - 0 - ], - [ - 2, - 0 - ], - [ - 3, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/recursion_layer/finalization_hint_18.json b/crates/zkevm_test_harness/setup/recursion_layer/finalization_hint_18.json deleted file mode 100644 index e38a73f..0000000 --- a/crates/zkevm_test_harness/setup/recursion_layer/finalization_hint_18.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "LeafLayerCircuitForEIP4844Repack": { - "row_finalization_hints": [ - [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ] - ], - "column_finalization_hints": [], - "nop_gates_to_add": 200175, - "final_trace_len": 1048576, - "public_inputs": [ - [ - 0, - 0 - ], - [ - 1, - 0 - ], - [ - 2, - 0 - ], - [ - 3, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/recursion_layer/finalization_hint_3.json b/crates/zkevm_test_harness/setup/recursion_layer/finalization_hint_3.json deleted file mode 100644 index d5f9e49..0000000 --- a/crates/zkevm_test_harness/setup/recursion_layer/finalization_hint_3.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "LeafLayerCircuitForMainVM": { - "row_finalization_hints": [ - [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ] - ], - "column_finalization_hints": [], - "nop_gates_to_add": 146919, - "final_trace_len": 1048576, - "public_inputs": [ - [ - 0, - 0 - ], - [ - 1, - 0 - ], - [ - 2, - 0 - ], - [ - 3, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/recursion_layer/finalization_hint_4.json b/crates/zkevm_test_harness/setup/recursion_layer/finalization_hint_4.json deleted file mode 100644 index 49efabc..0000000 --- a/crates/zkevm_test_harness/setup/recursion_layer/finalization_hint_4.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "LeafLayerCircuitForCodeDecommittmentsSorter": { - "row_finalization_hints": [ - [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ] - ], - "column_finalization_hints": [], - "nop_gates_to_add": 145654, - "final_trace_len": 1048576, - "public_inputs": [ - [ - 0, - 0 - ], - [ - 1, - 0 - ], - [ - 2, - 0 - ], - [ - 3, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/recursion_layer/finalization_hint_5.json b/crates/zkevm_test_harness/setup/recursion_layer/finalization_hint_5.json deleted file mode 100644 index 4c3209c..0000000 --- a/crates/zkevm_test_harness/setup/recursion_layer/finalization_hint_5.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "LeafLayerCircuitForCodeDecommitter": { - "row_finalization_hints": [ - [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ] - ], - "column_finalization_hints": [], - "nop_gates_to_add": 157388, - "final_trace_len": 1048576, - "public_inputs": [ - [ - 0, - 0 - ], - [ - 1, - 0 - ], - [ - 2, - 0 - ], - [ - 3, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/recursion_layer/finalization_hint_6.json b/crates/zkevm_test_harness/setup/recursion_layer/finalization_hint_6.json deleted file mode 100644 index af49553..0000000 --- a/crates/zkevm_test_harness/setup/recursion_layer/finalization_hint_6.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "LeafLayerCircuitForLogDemuxer": { - "row_finalization_hints": [ - [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ] - ], - "column_finalization_hints": [], - "nop_gates_to_add": 147092, - "final_trace_len": 1048576, - "public_inputs": [ - [ - 0, - 0 - ], - [ - 1, - 0 - ], - [ - 2, - 0 - ], - [ - 3, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/recursion_layer/finalization_hint_7.json b/crates/zkevm_test_harness/setup/recursion_layer/finalization_hint_7.json deleted file mode 100644 index bfa813e..0000000 --- a/crates/zkevm_test_harness/setup/recursion_layer/finalization_hint_7.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "LeafLayerCircuitForKeccakRoundFunction": { - "row_finalization_hints": [ - [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ] - ], - "column_finalization_hints": [], - "nop_gates_to_add": 194990, - "final_trace_len": 1048576, - "public_inputs": [ - [ - 0, - 0 - ], - [ - 1, - 0 - ], - [ - 2, - 0 - ], - [ - 3, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/recursion_layer/finalization_hint_8.json b/crates/zkevm_test_harness/setup/recursion_layer/finalization_hint_8.json deleted file mode 100644 index 2d02def..0000000 --- a/crates/zkevm_test_harness/setup/recursion_layer/finalization_hint_8.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "LeafLayerCircuitForSha256RoundFunction": { - "row_finalization_hints": [ - [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ] - ], - "column_finalization_hints": [], - "nop_gates_to_add": 158812, - "final_trace_len": 1048576, - "public_inputs": [ - [ - 0, - 0 - ], - [ - 1, - 0 - ], - [ - 2, - 0 - ], - [ - 3, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/recursion_layer/finalization_hint_9.json b/crates/zkevm_test_harness/setup/recursion_layer/finalization_hint_9.json deleted file mode 100644 index 2f87fd7..0000000 --- a/crates/zkevm_test_harness/setup/recursion_layer/finalization_hint_9.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "LeafLayerCircuitForECRecover": { - "row_finalization_hints": [ - [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ] - ], - "column_finalization_hints": [], - "nop_gates_to_add": 189941, - "final_trace_len": 1048576, - "public_inputs": [ - [ - 0, - 0 - ], - [ - 1, - 0 - ], - [ - 2, - 0 - ], - [ - 3, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/recursion_layer/finalization_hint_node.json b/crates/zkevm_test_harness/setup/recursion_layer/finalization_hint_node.json deleted file mode 100644 index 1a5a76b..0000000 --- a/crates/zkevm_test_harness/setup/recursion_layer/finalization_hint_node.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "NodeLayerCircuit": { - "row_finalization_hints": [ - [ - 2, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ] - ], - "column_finalization_hints": [], - "nop_gates_to_add": 189276, - "final_trace_len": 1048576, - "public_inputs": [ - [ - 0, - 0 - ], - [ - 1, - 0 - ], - [ - 2, - 0 - ], - [ - 3, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/recursion_layer/finalization_hint_recursion_tip.json b/crates/zkevm_test_harness/setup/recursion_layer/finalization_hint_recursion_tip.json deleted file mode 100644 index dd0cbdf..0000000 --- a/crates/zkevm_test_harness/setup/recursion_layer/finalization_hint_recursion_tip.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "RecursionTipCircuit": { - "row_finalization_hints": [ - [ - 32, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ] - ], - "column_finalization_hints": [], - "nop_gates_to_add": 189399, - "final_trace_len": 1048576, - "public_inputs": [ - [ - 0, - 0 - ], - [ - 1, - 0 - ], - [ - 2, - 0 - ], - [ - 3, - 0 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/recursion_layer/vk_1.json b/crates/zkevm_test_harness/setup/recursion_layer/vk_1.json deleted file mode 100644 index 28ce8f6..0000000 --- a/crates/zkevm_test_harness/setup/recursion_layer/vk_1.json +++ /dev/null @@ -1,270 +0,0 @@ -{ - "SchedulerCircuit": { - "fixed_parameters": { - "parameters": { - "num_columns_under_copy_permutation": 130, - "num_witness_columns": 0, - "num_constant_columns": 4, - "max_allowed_constraint_degree": 8 - }, - "lookup_parameters": { - "UseSpecializedColumnsWithTableIdAsConstant": { - "width": 3, - "num_repetitions": 4, - "share_table_id": true - } - }, - "domain_size": 1048576, - "total_tables_len": 132096, - "public_inputs_locations": [ - [ - 0, - 1043851 - ], - [ - 1, - 1043851 - ], - [ - 2, - 1043851 - ], - [ - 3, - 1043851 - ] - ], - "extra_constant_polys_for_selectors": 4, - "table_ids_column_idxes": [ - 8 - ], - "quotient_degree": 8, - "selectors_placement": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 1, - "num_constants": 0, - "degree": 7, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 4, - "num_constants": 4, - "degree": 3, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 5, - "num_constants": 1, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 6, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 2, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 7, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 9, - "num_constants": 4, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 0, - "num_constants": 4, - "degree": 1, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 3, - "num_constants": 2, - "degree": 3, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 8, - "num_constants": 0, - "degree": 0, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - } - } - }, - "fri_lde_factor": 2, - "cap_size": 16 - }, - "setup_merkle_tree_cap": [ - [ - 12875477816853145005, - 8023928807077893410, - 17980463247437633124, - 13464732642787756973 - ], - [ - 10243831358328953733, - 7651882789687884190, - 2527558999655488390, - 15122225922031637600 - ], - [ - 13288871378547459035, - 7849530391336580487, - 13129821733525688910, - 5406963459853529628 - ], - [ - 4389188621255171958, - 16178519717855282255, - 10127610703826743129, - 2992679854792093262 - ], - [ - 13748092935897169411, - 9428487233111704906, - 732922993015502110, - 15859221144084321993 - ], - [ - 14067269764317659228, - 6499881169696659044, - 1303608696628186801, - 9133962782466987563 - ], - [ - 16500064913186236271, - 1501871875110217182, - 4337075793882264833, - 4107057645987438362 - ], - [ - 6455062085677146422, - 14499140400806067053, - 11306008216339097061, - 4615960011422970663 - ], - [ - 17077290527559301789, - 17135182176364097235, - 1770977905063118644, - 18391270212983615300 - ], - [ - 5247817316471296574, - 13483298774563619904, - 15948257981939337427, - 15640301119842671026 - ], - [ - 764786225619960557, - 1205053507440952289, - 16561055815768579720, - 6438767328758203496 - ], - [ - 16874565200072441274, - 11653399354006492124, - 16935425934753619965, - 10361376708208022413 - ], - [ - 16721681110945519243, - 13871558127448937025, - 17012592139098558827, - 10832825661752714789 - ], - [ - 10187273067553146532, - 1789360949756744454, - 9131486644481551404, - 2281949121453509630 - ], - [ - 4503796017372256811, - 210208829372918270, - 10193561362014067396, - 16696837820545355330 - ], - [ - 6982837166263818580, - 1695263289664681778, - 7915914017758714635, - 9825859513935599040 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/recursion_layer/vk_10.json b/crates/zkevm_test_harness/setup/recursion_layer/vk_10.json deleted file mode 100644 index 82e2d2f..0000000 --- a/crates/zkevm_test_harness/setup/recursion_layer/vk_10.json +++ /dev/null @@ -1,262 +0,0 @@ -{ - "LeafLayerCircuitForRAMPermutation": { - "fixed_parameters": { - "parameters": { - "num_columns_under_copy_permutation": 140, - "num_witness_columns": 0, - "num_constant_columns": 4, - "max_allowed_constraint_degree": 8 - }, - "lookup_parameters": "NoLookup", - "domain_size": 1048576, - "total_tables_len": 0, - "public_inputs_locations": [ - [ - 0, - 0 - ], - [ - 1, - 0 - ], - [ - 2, - 0 - ], - [ - 3, - 0 - ] - ], - "extra_constant_polys_for_selectors": 4, - "table_ids_column_idxes": [], - "quotient_degree": 8, - "selectors_placement": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 1, - "num_constants": 0, - "degree": 7, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 4, - "num_constants": 4, - "degree": 3, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 5, - "num_constants": 1, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 6, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 2, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 7, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 9, - "num_constants": 4, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 0, - "num_constants": 4, - "degree": 1, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 3, - "num_constants": 2, - "degree": 3, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 8, - "num_constants": 0, - "degree": 0, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - } - } - }, - "fri_lde_factor": 2, - "cap_size": 16 - }, - "setup_merkle_tree_cap": [ - [ - 1125289536020813216, - 13893991227523403350, - 18221032481002623145, - 6999555513372134161 - ], - [ - 14558032258404044879, - 15896302942503207712, - 4320679543001532335, - 16312301655514654219 - ], - [ - 7101986692613628904, - 7577883870349313041, - 7352728228661094923, - 18332380179278822986 - ], - [ - 4857477437658850102, - 2600358150758031758, - 11245333823831173537, - 8338725066623873242 - ], - [ - 7533080307752291488, - 7286216489335488511, - 18156637335160778785, - 7462498443331890731 - ], - [ - 606568432443359176, - 8912183283992686330, - 17421481837200753913, - 17592999343458504164 - ], - [ - 13072668834394870334, - 11175441683787645540, - 3718467031089360132, - 6303569707785751909 - ], - [ - 15139014418351999292, - 13433960894156419831, - 1081036147938149073, - 5537900067858640688 - ], - [ - 16144198516884069513, - 11760722486204114604, - 9080477633162807038, - 14878319203527003921 - ], - [ - 9887232148319546846, - 11280977977331453386, - 1634486104168251049, - 1013174085024142997 - ], - [ - 8774759106642276381, - 17014116512461272516, - 5017632137039687644, - 2879573590247199312 - ], - [ - 8532316813139433929, - 10192336124962558528, - 10208988044571331050, - 7412443809890180963 - ], - [ - 1940771445624788955, - 15990599983917575017, - 12383682653785412359, - 7243892390926482974 - ], - [ - 15783323653576062669, - 7433660384180142428, - 11341821314666985051, - 13908042579613943595 - ], - [ - 6784650697753378650, - 2429262522610065724, - 3770879433095160288, - 6633370836632857456 - ], - [ - 18435367235881428398, - 13152985860267484403, - 17561012172979073263, - 15335033836397886699 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/recursion_layer/vk_11.json b/crates/zkevm_test_harness/setup/recursion_layer/vk_11.json deleted file mode 100644 index 0f7da00..0000000 --- a/crates/zkevm_test_harness/setup/recursion_layer/vk_11.json +++ /dev/null @@ -1,262 +0,0 @@ -{ - "LeafLayerCircuitForStorageSorter": { - "fixed_parameters": { - "parameters": { - "num_columns_under_copy_permutation": 140, - "num_witness_columns": 0, - "num_constant_columns": 4, - "max_allowed_constraint_degree": 8 - }, - "lookup_parameters": "NoLookup", - "domain_size": 1048576, - "total_tables_len": 0, - "public_inputs_locations": [ - [ - 0, - 0 - ], - [ - 1, - 0 - ], - [ - 2, - 0 - ], - [ - 3, - 0 - ] - ], - "extra_constant_polys_for_selectors": 4, - "table_ids_column_idxes": [], - "quotient_degree": 8, - "selectors_placement": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 1, - "num_constants": 0, - "degree": 7, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 4, - "num_constants": 4, - "degree": 3, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 5, - "num_constants": 1, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 6, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 2, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 7, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 9, - "num_constants": 4, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 0, - "num_constants": 4, - "degree": 1, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 3, - "num_constants": 2, - "degree": 3, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 8, - "num_constants": 0, - "degree": 0, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - } - } - }, - "fri_lde_factor": 2, - "cap_size": 16 - }, - "setup_merkle_tree_cap": [ - [ - 14636954476072242156, - 15460533889773250215, - 13571771735426812697, - 3674433289206621188 - ], - [ - 5146657904050067466, - 15179636906764028042, - 4458240644364816776, - 3854478545464054871 - ], - [ - 18114356051495337465, - 2460031033979438751, - 10614442720939881367, - 12631596809486251401 - ], - [ - 12670456753792795234, - 5734715418800406760, - 14379925078406668950, - 13920558905608078541 - ], - [ - 8585409707256083198, - 9661903002207573663, - 18296368903415427367, - 5395728364165581552 - ], - [ - 16716746225817039110, - 17900402509718418940, - 14561636355524215448, - 17647085418392185729 - ], - [ - 6544176620831004186, - 1066867491020495104, - 15237469647708744345, - 5582507734089272188 - ], - [ - 10826197699344780191, - 16774694807383071627, - 6970009266231747102, - 5073765786605743273 - ], - [ - 7011598656305780589, - 3714641885720327142, - 1328844421504013402, - 5342418218023892912 - ], - [ - 16743826806479391431, - 2498441403006225365, - 3763460945063406337, - 10824849335763040339 - ], - [ - 4691094985878282097, - 12092365143928963864, - 11354288308150295023, - 7801550279003844226 - ], - [ - 3867527931432736886, - 4825207401996912760, - 1871792074982855854, - 4805413397744414116 - ], - [ - 1007283153254064086, - 4346738087015083191, - 18211975659016457728, - 8347640387139701541 - ], - [ - 17626869608107101194, - 7556477258963524520, - 16574783144364785925, - 14102989348947592441 - ], - [ - 4403861598770742076, - 15824184507597663960, - 8269588027067215509, - 4543643506155864177 - ], - [ - 15137518221717445610, - 7847704480884984294, - 13161324518981152688, - 2456338812539820012 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/recursion_layer/vk_12.json b/crates/zkevm_test_harness/setup/recursion_layer/vk_12.json deleted file mode 100644 index 047a794..0000000 --- a/crates/zkevm_test_harness/setup/recursion_layer/vk_12.json +++ /dev/null @@ -1,262 +0,0 @@ -{ - "LeafLayerCircuitForStorageApplication": { - "fixed_parameters": { - "parameters": { - "num_columns_under_copy_permutation": 140, - "num_witness_columns": 0, - "num_constant_columns": 4, - "max_allowed_constraint_degree": 8 - }, - "lookup_parameters": "NoLookup", - "domain_size": 1048576, - "total_tables_len": 0, - "public_inputs_locations": [ - [ - 0, - 0 - ], - [ - 1, - 0 - ], - [ - 2, - 0 - ], - [ - 3, - 0 - ] - ], - "extra_constant_polys_for_selectors": 4, - "table_ids_column_idxes": [], - "quotient_degree": 8, - "selectors_placement": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 1, - "num_constants": 0, - "degree": 7, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 4, - "num_constants": 4, - "degree": 3, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 5, - "num_constants": 1, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 6, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 2, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 7, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 9, - "num_constants": 4, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 0, - "num_constants": 4, - "degree": 1, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 3, - "num_constants": 2, - "degree": 3, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 8, - "num_constants": 0, - "degree": 0, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - } - } - }, - "fri_lde_factor": 2, - "cap_size": 16 - }, - "setup_merkle_tree_cap": [ - [ - 17762498852322133081, - 12402705633936516386, - 2303979245623416237, - 15492962941180331409 - ], - [ - 1368919680062481249, - 8419725427681044227, - 12407005054982229959, - 9729546646519366060 - ], - [ - 3694696222464991628, - 10691747603876514511, - 5648287760852638838, - 15128008410193030270 - ], - [ - 5647849659158863308, - 16391316755630265342, - 17483459471194878342, - 2382689231083026500 - ], - [ - 414523452897415096, - 14712743039552404085, - 14274376366377496980, - 1540457029378813951 - ], - [ - 6437956396547385520, - 10457280544359552653, - 210288303177892964, - 7009065088863365256 - ], - [ - 6189643588169700860, - 2874522095144611328, - 3459596951253545261, - 14912093041250189548 - ], - [ - 2954035721997683722, - 2628438295425873126, - 9361498414301919378, - 7780135632218518403 - ], - [ - 13376229283479650476, - 13646160168852625209, - 12342809006526169374, - 16140909717103038788 - ], - [ - 14544916717622160085, - 2335857756498039096, - 12834512355397127233, - 8257858357688008275 - ], - [ - 13637749549385428585, - 1568326361689976373, - 14573670474737748882, - 8002611813857126901 - ], - [ - 4981475697544147574, - 7477162419770815721, - 13420952345288491036, - 6849943909220872064 - ], - [ - 5645683284474222575, - 10480504810673180938, - 7038844793157124351, - 10701205261596194736 - ], - [ - 2992787956816905753, - 10666728141278334493, - 4748213040479579674, - 13258093297981567423 - ], - [ - 11477426903799919629, - 24925561182649344, - 11412223773538266154, - 2852175545463505023 - ], - [ - 1060175052523024730, - 6610510112497451814, - 15229121744185849414, - 12773820515972201248 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/recursion_layer/vk_13.json b/crates/zkevm_test_harness/setup/recursion_layer/vk_13.json deleted file mode 100644 index eaee3b0..0000000 --- a/crates/zkevm_test_harness/setup/recursion_layer/vk_13.json +++ /dev/null @@ -1,262 +0,0 @@ -{ - "LeafLayerCircuitForEventsSorter": { - "fixed_parameters": { - "parameters": { - "num_columns_under_copy_permutation": 140, - "num_witness_columns": 0, - "num_constant_columns": 4, - "max_allowed_constraint_degree": 8 - }, - "lookup_parameters": "NoLookup", - "domain_size": 1048576, - "total_tables_len": 0, - "public_inputs_locations": [ - [ - 0, - 0 - ], - [ - 1, - 0 - ], - [ - 2, - 0 - ], - [ - 3, - 0 - ] - ], - "extra_constant_polys_for_selectors": 4, - "table_ids_column_idxes": [], - "quotient_degree": 8, - "selectors_placement": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 1, - "num_constants": 0, - "degree": 7, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 4, - "num_constants": 4, - "degree": 3, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 5, - "num_constants": 1, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 6, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 2, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 7, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 9, - "num_constants": 4, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 0, - "num_constants": 4, - "degree": 1, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 3, - "num_constants": 2, - "degree": 3, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 8, - "num_constants": 0, - "degree": 0, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - } - } - }, - "fri_lde_factor": 2, - "cap_size": 16 - }, - "setup_merkle_tree_cap": [ - [ - 3978274454745058913, - 12908903924760647770, - 4270910004058851361, - 3677815340141128634 - ], - [ - 477248863584349992, - 4199713090442134162, - 10476927932679514044, - 6550650493365233590 - ], - [ - 9252199448552910886, - 8459898009630606014, - 3864999066073825396, - 14944179834367026039 - ], - [ - 10977758783465502348, - 7713219177097206913, - 12228558398275686886, - 10480119154088503428 - ], - [ - 9273439961549716452, - 10246234432612176135, - 4982997462593621821, - 4516717012198331462 - ], - [ - 18144937711490860988, - 14694112509055216400, - 16134043219639460323, - 2425972111094980455 - ], - [ - 5425965118251882310, - 17669067386319751032, - 10126167892858795705, - 10466052347434300102 - ], - [ - 14534053806590264308, - 3518770965759630571, - 4726036007868394446, - 16696028505915341621 - ], - [ - 8264335106986134121, - 15825870775679767543, - 3076864970052824913, - 8200621565610677226 - ], - [ - 2063078364663159403, - 4914041114586640143, - 14867805712490344367, - 2481297710374136148 - ], - [ - 10101036960572935469, - 2183820874228495561, - 10220241349428188678, - 11742399579040933416 - ], - [ - 3100922027489470396, - 8629350517378084661, - 18119328569493442750, - 16092741553212295334 - ], - [ - 10291418159809942864, - 7393684283716500797, - 3895249320626531353, - 12887669899740613131 - ], - [ - 14557681338140954299, - 1420823298821743618, - 12037920502313470759, - 4285830277342439084 - ], - [ - 6214381477864785389, - 2373190810253981709, - 2350860011226500287, - 11625359538041748063 - ], - [ - 3552366579682625316, - 12087481157075128812, - 11051082475232859265, - 3877695090349884007 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/recursion_layer/vk_14.json b/crates/zkevm_test_harness/setup/recursion_layer/vk_14.json deleted file mode 100644 index c454742..0000000 --- a/crates/zkevm_test_harness/setup/recursion_layer/vk_14.json +++ /dev/null @@ -1,262 +0,0 @@ -{ - "LeafLayerCircuitForL1MessagesSorter": { - "fixed_parameters": { - "parameters": { - "num_columns_under_copy_permutation": 140, - "num_witness_columns": 0, - "num_constant_columns": 4, - "max_allowed_constraint_degree": 8 - }, - "lookup_parameters": "NoLookup", - "domain_size": 1048576, - "total_tables_len": 0, - "public_inputs_locations": [ - [ - 0, - 0 - ], - [ - 1, - 0 - ], - [ - 2, - 0 - ], - [ - 3, - 0 - ] - ], - "extra_constant_polys_for_selectors": 4, - "table_ids_column_idxes": [], - "quotient_degree": 8, - "selectors_placement": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 1, - "num_constants": 0, - "degree": 7, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 4, - "num_constants": 4, - "degree": 3, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 5, - "num_constants": 1, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 6, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 2, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 7, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 9, - "num_constants": 4, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 0, - "num_constants": 4, - "degree": 1, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 3, - "num_constants": 2, - "degree": 3, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 8, - "num_constants": 0, - "degree": 0, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - } - } - }, - "fri_lde_factor": 2, - "cap_size": 16 - }, - "setup_merkle_tree_cap": [ - [ - 3978274454745058913, - 12908903924760647770, - 4270910004058851361, - 3677815340141128634 - ], - [ - 477248863584349992, - 4199713090442134162, - 10476927932679514044, - 6550650493365233590 - ], - [ - 9252199448552910886, - 8459898009630606014, - 3864999066073825396, - 14944179834367026039 - ], - [ - 10977758783465502348, - 7713219177097206913, - 12228558398275686886, - 10480119154088503428 - ], - [ - 9273439961549716452, - 10246234432612176135, - 4982997462593621821, - 4516717012198331462 - ], - [ - 18144937711490860988, - 14694112509055216400, - 16134043219639460323, - 2425972111094980455 - ], - [ - 5425965118251882310, - 17669067386319751032, - 10126167892858795705, - 10466052347434300102 - ], - [ - 14534053806590264308, - 3518770965759630571, - 4726036007868394446, - 16696028505915341621 - ], - [ - 8264335106986134121, - 15825870775679767543, - 3076864970052824913, - 8200621565610677226 - ], - [ - 2063078364663159403, - 4914041114586640143, - 14867805712490344367, - 2481297710374136148 - ], - [ - 10101036960572935469, - 2183820874228495561, - 10220241349428188678, - 11742399579040933416 - ], - [ - 3100922027489470396, - 8629350517378084661, - 18119328569493442750, - 16092741553212295334 - ], - [ - 10291418159809942864, - 7393684283716500797, - 3895249320626531353, - 12887669899740613131 - ], - [ - 14557681338140954299, - 1420823298821743618, - 12037920502313470759, - 4285830277342439084 - ], - [ - 6214381477864785389, - 2373190810253981709, - 2350860011226500287, - 11625359538041748063 - ], - [ - 3552366579682625316, - 12087481157075128812, - 11051082475232859265, - 3877695090349884007 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/recursion_layer/vk_15.json b/crates/zkevm_test_harness/setup/recursion_layer/vk_15.json deleted file mode 100644 index 9457eb0..0000000 --- a/crates/zkevm_test_harness/setup/recursion_layer/vk_15.json +++ /dev/null @@ -1,262 +0,0 @@ -{ - "LeafLayerCircuitForL1MessagesHasher": { - "fixed_parameters": { - "parameters": { - "num_columns_under_copy_permutation": 140, - "num_witness_columns": 0, - "num_constant_columns": 4, - "max_allowed_constraint_degree": 8 - }, - "lookup_parameters": "NoLookup", - "domain_size": 1048576, - "total_tables_len": 0, - "public_inputs_locations": [ - [ - 0, - 0 - ], - [ - 1, - 0 - ], - [ - 2, - 0 - ], - [ - 3, - 0 - ] - ], - "extra_constant_polys_for_selectors": 4, - "table_ids_column_idxes": [], - "quotient_degree": 8, - "selectors_placement": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 1, - "num_constants": 0, - "degree": 7, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 4, - "num_constants": 4, - "degree": 3, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 5, - "num_constants": 1, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 6, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 2, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 7, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 9, - "num_constants": 4, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 0, - "num_constants": 4, - "degree": 1, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 3, - "num_constants": 2, - "degree": 3, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 8, - "num_constants": 0, - "degree": 0, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - } - } - }, - "fri_lde_factor": 2, - "cap_size": 16 - }, - "setup_merkle_tree_cap": [ - [ - 18238935086181014750, - 12673103801320172126, - 1807450351340584945, - 4080587540382410469 - ], - [ - 3576906271507691924, - 15842010882262104289, - 1545568012269070598, - 15019610257262428212 - ], - [ - 16552529329663272195, - 70143638148036568, - 9441616425189858949, - 12576239326961652577 - ], - [ - 13378751877668829423, - 8821335076667849619, - 8787507195664458069, - 8033428383364368883 - ], - [ - 14859204728026468678, - 67528639960702832, - 12174200483518178527, - 14324674266854914755 - ], - [ - 9830165552717527013, - 2321461270838214863, - 9268724714979319202, - 9904762657753448069 - ], - [ - 14141058045407997705, - 17031147612244105327, - 12751542125666982456, - 17817764425153554681 - ], - [ - 14795807291665277125, - 12320949525745092193, - 5617160704961099, - 16219204181913320518 - ], - [ - 7773282231989156729, - 13990108174498859083, - 6307778800331536092, - 5637115465294994933 - ], - [ - 3720582507396745477, - 12235229471532413465, - 2832424082557414313, - 1295093033129086530 - ], - [ - 5238251184464937674, - 2468597264523797445, - 7200015202778095391, - 6285172799678453354 - ], - [ - 14592230848145258634, - 14635944054407782259, - 16328656124118469880, - 5673837317773168465 - ], - [ - 10220932976054066577, - 587071736468910470, - 18317195354162201630, - 4442910666147223606 - ], - [ - 6686416988414600368, - 14769819815353713716, - 7130058524252605584, - 9117426323287817862 - ], - [ - 9696785136959918927, - 10735699192129851744, - 4483660550392452518, - 16920055661791281465 - ], - [ - 6465118959707729559, - 15053655525644243783, - 11077790678846863387, - 377514359817848250 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/recursion_layer/vk_16.json b/crates/zkevm_test_harness/setup/recursion_layer/vk_16.json deleted file mode 100644 index d4d8da0..0000000 --- a/crates/zkevm_test_harness/setup/recursion_layer/vk_16.json +++ /dev/null @@ -1,262 +0,0 @@ -{ - "LeafLayerCircuitForTransientStorageSorter": { - "fixed_parameters": { - "parameters": { - "num_columns_under_copy_permutation": 140, - "num_witness_columns": 0, - "num_constant_columns": 4, - "max_allowed_constraint_degree": 8 - }, - "lookup_parameters": "NoLookup", - "domain_size": 1048576, - "total_tables_len": 0, - "public_inputs_locations": [ - [ - 0, - 0 - ], - [ - 1, - 0 - ], - [ - 2, - 0 - ], - [ - 3, - 0 - ] - ], - "extra_constant_polys_for_selectors": 4, - "table_ids_column_idxes": [], - "quotient_degree": 8, - "selectors_placement": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 1, - "num_constants": 0, - "degree": 7, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 4, - "num_constants": 4, - "degree": 3, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 5, - "num_constants": 1, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 6, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 2, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 7, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 9, - "num_constants": 4, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 0, - "num_constants": 4, - "degree": 1, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 3, - "num_constants": 2, - "degree": 3, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 8, - "num_constants": 0, - "degree": 0, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - } - } - }, - "fri_lde_factor": 2, - "cap_size": 16 - }, - "setup_merkle_tree_cap": [ - [ - 2260606771779524600, - 4270910544854912593, - 5774344017911453584, - 7799710054328952611 - ], - [ - 5971110301313203203, - 187478912492900614, - 14748090124907590844, - 13716409015764575783 - ], - [ - 16464510359253683114, - 15766233675769787948, - 1215321704703197811, - 113768207625801612 - ], - [ - 16365709399494539934, - 9241464557286519803, - 505301116318341892, - 15795834092488278713 - ], - [ - 11064609770114349368, - 15728120404989966794, - 15854858119281184996, - 786257069807380562 - ], - [ - 597952771262083427, - 12313442436441357639, - 16868738269970029451, - 1658827273363455860 - ], - [ - 7074806328481475040, - 6707692902386407273, - 7368643464610963993, - 8012606122323196246 - ], - [ - 11610267122853899663, - 17628152202124071465, - 8846563251092671057, - 12560789220705686508 - ], - [ - 1399361497756815630, - 4200159473917362204, - 6880584442851231591, - 2558920509373294360 - ], - [ - 7691316653312002193, - 1102152548596664164, - 16908215835853777161, - 16261812033707080304 - ], - [ - 6688805731483038091, - 591316451793720417, - 4400272619853559570, - 4035933566597717487 - ], - [ - 10462141496673624470, - 12825124405432952968, - 9105179110693823876, - 1009889591221054755 - ], - [ - 15053053257066758925, - 12420466349903303874, - 6087544558409286932, - 6874711866843360996 - ], - [ - 5227576870676697670, - 2700982808605071523, - 5858908941564165050, - 6602860473108655700 - ], - [ - 13527319166975880813, - 3224974269365842452, - 5857665240319144062, - 2561024114715899885 - ], - [ - 10295634092409898596, - 6441156088177414641, - 5861611612659048682, - 7964316583306706891 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/recursion_layer/vk_17.json b/crates/zkevm_test_harness/setup/recursion_layer/vk_17.json deleted file mode 100644 index 3458448..0000000 --- a/crates/zkevm_test_harness/setup/recursion_layer/vk_17.json +++ /dev/null @@ -1,262 +0,0 @@ -{ - "LeafLayerCircuitForSecp256r1Verify": { - "fixed_parameters": { - "parameters": { - "num_columns_under_copy_permutation": 140, - "num_witness_columns": 0, - "num_constant_columns": 4, - "max_allowed_constraint_degree": 8 - }, - "lookup_parameters": "NoLookup", - "domain_size": 1048576, - "total_tables_len": 0, - "public_inputs_locations": [ - [ - 0, - 0 - ], - [ - 1, - 0 - ], - [ - 2, - 0 - ], - [ - 3, - 0 - ] - ], - "extra_constant_polys_for_selectors": 4, - "table_ids_column_idxes": [], - "quotient_degree": 8, - "selectors_placement": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 1, - "num_constants": 0, - "degree": 7, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 4, - "num_constants": 4, - "degree": 3, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 5, - "num_constants": 1, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 6, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 2, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 7, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 9, - "num_constants": 4, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 0, - "num_constants": 4, - "degree": 1, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 3, - "num_constants": 2, - "degree": 3, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 8, - "num_constants": 0, - "degree": 0, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - } - } - }, - "fri_lde_factor": 2, - "cap_size": 16 - }, - "setup_merkle_tree_cap": [ - [ - 7347379645370182559, - 2404322153535680927, - 14296966705989579054, - 13890460563533554983 - ], - [ - 10831899173770740225, - 2063129839648580297, - 285868704397015772, - 2135007838879022738 - ], - [ - 1558892556562173493, - 1732977649028173027, - 11484269535645902015, - 3730661074079526311 - ], - [ - 15669819007594902615, - 7877513770858983636, - 13940283104294723217, - 12316669964961425873 - ], - [ - 15257554170837622697, - 11845045006478118685, - 14047030079530965913, - 14089075624550605708 - ], - [ - 7584333656666580075, - 6613103356344646417, - 17471198493913952475, - 3144043368919310503 - ], - [ - 7080239518943380551, - 2007624313050964383, - 8347373208769685089, - 16543286392755311949 - ], - [ - 6118143569320767681, - 3151078193094962207, - 8115768605928968841, - 8295127175534686737 - ], - [ - 14843414917040136065, - 13924516906151463448, - 5079271072909377203, - 414160670505568729 - ], - [ - 1720997182248470773, - 13053351506523985291, - 43780037818003749, - 4640359117779049653 - ], - [ - 15120033444297037803, - 18046441911907280811, - 13223936788694663256, - 2373689832691368010 - ], - [ - 17416308485945834163, - 12669258952209108335, - 7774787274863832524, - 17911425673396458659 - ], - [ - 299972677968366704, - 7777328854891630754, - 6971000029702469207, - 3889387929681441937 - ], - [ - 11039681743068460396, - 17323351050058914766, - 1218302981044048804, - 3641507025574833468 - ], - [ - 10240140781329878824, - 11902579258397841434, - 13239719225199562203, - 1198584250260404541 - ], - [ - 13543378468536309775, - 4632177674138351419, - 4432252523248821359, - 6598523735789509746 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/recursion_layer/vk_18.json b/crates/zkevm_test_harness/setup/recursion_layer/vk_18.json deleted file mode 100644 index 77abca5..0000000 --- a/crates/zkevm_test_harness/setup/recursion_layer/vk_18.json +++ /dev/null @@ -1,262 +0,0 @@ -{ - "LeafLayerCircuitForEIP4844Repack": { - "fixed_parameters": { - "parameters": { - "num_columns_under_copy_permutation": 140, - "num_witness_columns": 0, - "num_constant_columns": 4, - "max_allowed_constraint_degree": 8 - }, - "lookup_parameters": "NoLookup", - "domain_size": 1048576, - "total_tables_len": 0, - "public_inputs_locations": [ - [ - 0, - 0 - ], - [ - 1, - 0 - ], - [ - 2, - 0 - ], - [ - 3, - 0 - ] - ], - "extra_constant_polys_for_selectors": 4, - "table_ids_column_idxes": [], - "quotient_degree": 8, - "selectors_placement": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 1, - "num_constants": 0, - "degree": 7, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 4, - "num_constants": 4, - "degree": 3, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 5, - "num_constants": 1, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 6, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 2, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 7, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 9, - "num_constants": 4, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 0, - "num_constants": 4, - "degree": 1, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 3, - "num_constants": 2, - "degree": 3, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 8, - "num_constants": 0, - "degree": 0, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - } - } - }, - "fri_lde_factor": 2, - "cap_size": 16 - }, - "setup_merkle_tree_cap": [ - [ - 2484957940123744532, - 10119788489589635359, - 9107311941174938203, - 13302314511204042435 - ], - [ - 15806523626679630195, - 17620716274656888624, - 1031951953726000369, - 11693054425860236776 - ], - [ - 4475727687093742157, - 18311138603501625958, - 580815004003825225, - 12857870010557040857 - ], - [ - 7935635256996386362, - 537135240616198121, - 3347849316305448974, - 442717556223356002 - ], - [ - 14808385484174064058, - 3053208296164358229, - 8966153679322727587, - 7540790961397115537 - ], - [ - 7875850123822698534, - 15968903998715305836, - 3815674960710121992, - 8354777386673377425 - ], - [ - 3066003773678424746, - 10133883411443745888, - 6642582098999391207, - 12137714209492924499 - ], - [ - 14693585991830478215, - 11701109647023102046, - 726990147201370731, - 6480854683031233697 - ], - [ - 2569672339874693519, - 15726878266081788287, - 18287135803902560189, - 13616394040956221157 - ], - [ - 14787357389763567583, - 5248207012553007077, - 14013120123505407598, - 13849734917708822394 - ], - [ - 15659967791166863291, - 9891461262603001781, - 10519023493696974493, - 18149486895196711076 - ], - [ - 9625415766484203006, - 3183485494243630168, - 6635287321972863260, - 234491377630078673 - ], - [ - 18000785126260551583, - 3378130412638608121, - 5799816377203884717, - 86390668281454327 - ], - [ - 13406834940323255087, - 741282187758318318, - 16075375694779568528, - 8544172415739197605 - ], - [ - 13851450070721651638, - 12071067147156741269, - 17303151743132841660, - 16058343144246930727 - ], - [ - 11877115243892138440, - 5081749259544040532, - 10634575841856551115, - 6982791822407720031 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/recursion_layer/vk_3.json b/crates/zkevm_test_harness/setup/recursion_layer/vk_3.json deleted file mode 100644 index a0b5f4d..0000000 --- a/crates/zkevm_test_harness/setup/recursion_layer/vk_3.json +++ /dev/null @@ -1,262 +0,0 @@ -{ - "LeafLayerCircuitForMainVM": { - "fixed_parameters": { - "parameters": { - "num_columns_under_copy_permutation": 140, - "num_witness_columns": 0, - "num_constant_columns": 4, - "max_allowed_constraint_degree": 8 - }, - "lookup_parameters": "NoLookup", - "domain_size": 1048576, - "total_tables_len": 0, - "public_inputs_locations": [ - [ - 0, - 0 - ], - [ - 1, - 0 - ], - [ - 2, - 0 - ], - [ - 3, - 0 - ] - ], - "extra_constant_polys_for_selectors": 4, - "table_ids_column_idxes": [], - "quotient_degree": 8, - "selectors_placement": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 1, - "num_constants": 0, - "degree": 7, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 4, - "num_constants": 4, - "degree": 3, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 5, - "num_constants": 1, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 6, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 2, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 7, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 9, - "num_constants": 4, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 0, - "num_constants": 4, - "degree": 1, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 3, - "num_constants": 2, - "degree": 3, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 8, - "num_constants": 0, - "degree": 0, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - } - } - }, - "fri_lde_factor": 2, - "cap_size": 16 - }, - "setup_merkle_tree_cap": [ - [ - 16637122201700666904, - 16096177961445051893, - 29921369246502916, - 7081663818518879260 - ], - [ - 11594231648532461965, - 6877842133915984296, - 12101569804873186328, - 10378900279152824246 - ], - [ - 14934233224062014457, - 16228390430180690767, - 11310878226276231404, - 6294507946458813544 - ], - [ - 6892308590843217156, - 801417349371938391, - 11699036284028708357, - 1748927113622089261 - ], - [ - 18338355950809952732, - 11710422318728548532, - 1196688901957572524, - 14201102832826626476 - ], - [ - 14521967934740400643, - 16322746494120556445, - 1423446241659444210, - 5533258729489882086 - ], - [ - 2104668635455499141, - 9760579668021575508, - 10792033802860084746, - 11552335620516497152 - ], - [ - 6637367361614444475, - 6222657394665651854, - 18443242564046402338, - 43632887580443219 - ], - [ - 14812768600843029336, - 16369693338567302782, - 8482627523265135843, - 15253760541908921600 - ], - [ - 2168516069077541920, - 8974645013487455356, - 5195649777527498783, - 17203080238375957203 - ], - [ - 16899871574049500447, - 12714019117601868121, - 17644682819012321875, - 10168589949807903833 - ], - [ - 2193645619642803173, - 5911915843989289398, - 6702344234375465381, - 18091726574029827295 - ], - [ - 17250593342478506173, - 3435317197353311732, - 5779050243213898470, - 7047517810078155546 - ], - [ - 14334215910425020696, - 9148519970897776727, - 8757795765764985987, - 2760081304892134608 - ], - [ - 6201482500923461511, - 496724679826639745, - 4796426599258811343, - 1829750598185445210 - ], - [ - 1247929356222703254, - 4129145210611160084, - 14505500221527580660, - 16833361607460651248 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/recursion_layer/vk_4.json b/crates/zkevm_test_harness/setup/recursion_layer/vk_4.json deleted file mode 100644 index e8b25fd..0000000 --- a/crates/zkevm_test_harness/setup/recursion_layer/vk_4.json +++ /dev/null @@ -1,262 +0,0 @@ -{ - "LeafLayerCircuitForCodeDecommittmentsSorter": { - "fixed_parameters": { - "parameters": { - "num_columns_under_copy_permutation": 140, - "num_witness_columns": 0, - "num_constant_columns": 4, - "max_allowed_constraint_degree": 8 - }, - "lookup_parameters": "NoLookup", - "domain_size": 1048576, - "total_tables_len": 0, - "public_inputs_locations": [ - [ - 0, - 0 - ], - [ - 1, - 0 - ], - [ - 2, - 0 - ], - [ - 3, - 0 - ] - ], - "extra_constant_polys_for_selectors": 4, - "table_ids_column_idxes": [], - "quotient_degree": 8, - "selectors_placement": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 1, - "num_constants": 0, - "degree": 7, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 4, - "num_constants": 4, - "degree": 3, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 5, - "num_constants": 1, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 6, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 2, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 7, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 9, - "num_constants": 4, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 0, - "num_constants": 4, - "degree": 1, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 3, - "num_constants": 2, - "degree": 3, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 8, - "num_constants": 0, - "degree": 0, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - } - } - }, - "fri_lde_factor": 2, - "cap_size": 16 - }, - "setup_merkle_tree_cap": [ - [ - 1866437491015022712, - 11793636374252065717, - 2771461065434523690, - 14888818750197177871 - ], - [ - 13530099303626962147, - 15053516955824087922, - 12339234049539021204, - 9708862473063699060 - ], - [ - 11432132052297230557, - 6677170992284491097, - 6366885341898621463, - 8111143143511568092 - ], - [ - 9907106152447520228, - 6682147062594018467, - 10264912494418416112, - 15503628246857005809 - ], - [ - 17195185271365515391, - 13597952072744597251, - 17744684609835730837, - 2231158103010709548 - ], - [ - 14293262369681823328, - 13130511952565359928, - 10899311746723421149, - 13247944667340766269 - ], - [ - 13892335977334728116, - 8911034200951442707, - 9940381085909975496, - 2442123831058139778 - ], - [ - 6225220793196790211, - 4712637343981148404, - 17195066106455293379, - 8613492331172308471 - ], - [ - 6909799331954538355, - 10338179227896084459, - 12127192147500716446, - 17400998769923799388 - ], - [ - 16539422822493187900, - 14101588151214983695, - 13891327598256492007, - 6120137922715167439 - ], - [ - 14993757510795074537, - 2243361897978774751, - 3014175478852553185, - 1107614745766341650 - ], - [ - 13868198230244075748, - 14568344587632252919, - 18167720887640456957, - 892660889500481924 - ], - [ - 17208474456800792292, - 12638116024924785718, - 17972572249167165358, - 14432332670537563027 - ], - [ - 16794312278798106244, - 18025850455584262724, - 9034611355178459632, - 4812066730993316535 - ], - [ - 9019282623207016172, - 8465996543066345624, - 11891692540217379621, - 1309821012694343566 - ], - [ - 1009066940610956673, - 6090643896458703235, - 16512441752812232072, - 14910610346758346291 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/recursion_layer/vk_5.json b/crates/zkevm_test_harness/setup/recursion_layer/vk_5.json deleted file mode 100644 index 4d8a21a..0000000 --- a/crates/zkevm_test_harness/setup/recursion_layer/vk_5.json +++ /dev/null @@ -1,262 +0,0 @@ -{ - "LeafLayerCircuitForCodeDecommitter": { - "fixed_parameters": { - "parameters": { - "num_columns_under_copy_permutation": 140, - "num_witness_columns": 0, - "num_constant_columns": 4, - "max_allowed_constraint_degree": 8 - }, - "lookup_parameters": "NoLookup", - "domain_size": 1048576, - "total_tables_len": 0, - "public_inputs_locations": [ - [ - 0, - 0 - ], - [ - 1, - 0 - ], - [ - 2, - 0 - ], - [ - 3, - 0 - ] - ], - "extra_constant_polys_for_selectors": 4, - "table_ids_column_idxes": [], - "quotient_degree": 8, - "selectors_placement": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 1, - "num_constants": 0, - "degree": 7, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 4, - "num_constants": 4, - "degree": 3, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 5, - "num_constants": 1, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 6, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 2, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 7, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 9, - "num_constants": 4, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 0, - "num_constants": 4, - "degree": 1, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 3, - "num_constants": 2, - "degree": 3, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 8, - "num_constants": 0, - "degree": 0, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - } - } - }, - "fri_lde_factor": 2, - "cap_size": 16 - }, - "setup_merkle_tree_cap": [ - [ - 15613017923403393562, - 4689512531664761805, - 9625346544361521990, - 8192852801461870041 - ], - [ - 7032653424080401058, - 2562424967332533888, - 3387855581569341421, - 18358281957942764261 - ], - [ - 1205351481666606011, - 8924124971788975451, - 6734488516030259072, - 81144597908218031 - ], - [ - 9403021011208026161, - 12344084730403428968, - 7391577888631735376, - 15522313677615679453 - ], - [ - 10473993284100432032, - 6623238897668747562, - 18371640290954948695, - 5100798101407992558 - ], - [ - 9276618890835069761, - 6159380172497252036, - 8194747478281533733, - 5974685393190816951 - ], - [ - 16934846475265508282, - 10444567691227399733, - 11768808443864759864, - 16316315416016347972 - ], - [ - 18106445190454260472, - 11788532709929479531, - 11517549419468313430, - 2660156731912974566 - ], - [ - 12311176610449981513, - 13516275731431500544, - 16709980681599311224, - 5885550104272849530 - ], - [ - 15298865456426723747, - 1344736324125863512, - 755045711164751632, - 7522684412830110887 - ], - [ - 6415125840862710216, - 5466527545541880256, - 6571753896024468837, - 13548864203106878196 - ], - [ - 16959828697782329744, - 4556425337582282577, - 12579051917658210142, - 14816119751554806738 - ], - [ - 414071043485780891, - 2607156458898250639, - 15584524673690396900, - 3773521531421963897 - ], - [ - 7158115083350012297, - 7190856605881823749, - 13587471073671697794, - 4854044285492742360 - ], - [ - 8619681709076714431, - 17138206193043799295, - 13021657872719692519, - 2895994403009616630 - ], - [ - 1953408373125265047, - 5215599012561918697, - 13639259364107157236, - 7901329983720183273 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/recursion_layer/vk_6.json b/crates/zkevm_test_harness/setup/recursion_layer/vk_6.json deleted file mode 100644 index 7128ddd..0000000 --- a/crates/zkevm_test_harness/setup/recursion_layer/vk_6.json +++ /dev/null @@ -1,262 +0,0 @@ -{ - "LeafLayerCircuitForLogDemuxer": { - "fixed_parameters": { - "parameters": { - "num_columns_under_copy_permutation": 140, - "num_witness_columns": 0, - "num_constant_columns": 4, - "max_allowed_constraint_degree": 8 - }, - "lookup_parameters": "NoLookup", - "domain_size": 1048576, - "total_tables_len": 0, - "public_inputs_locations": [ - [ - 0, - 0 - ], - [ - 1, - 0 - ], - [ - 2, - 0 - ], - [ - 3, - 0 - ] - ], - "extra_constant_polys_for_selectors": 4, - "table_ids_column_idxes": [], - "quotient_degree": 8, - "selectors_placement": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 1, - "num_constants": 0, - "degree": 7, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 4, - "num_constants": 4, - "degree": 3, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 5, - "num_constants": 1, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 6, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 2, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 7, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 9, - "num_constants": 4, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 0, - "num_constants": 4, - "degree": 1, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 3, - "num_constants": 2, - "degree": 3, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 8, - "num_constants": 0, - "degree": 0, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - } - } - }, - "fri_lde_factor": 2, - "cap_size": 16 - }, - "setup_merkle_tree_cap": [ - [ - 1397170189040943652, - 3871641847919336321, - 18183817844232075151, - 15121256009642315908 - ], - [ - 5935432016372139472, - 9259003574866798638, - 10381489910001317874, - 8473434814151643953 - ], - [ - 1549897770553824251, - 12970859048974018908, - 14035958215407619112, - 15950447759055693137 - ], - [ - 4303231236362897513, - 9329800535274402304, - 7991813290200008092, - 3827739569290079245 - ], - [ - 8739413470546003107, - 6150645176286660126, - 13476824413154670271, - 15852474697371130195 - ], - [ - 926491824477907319, - 18215748695015374818, - 13866789974420189823, - 10699245111237323348 - ], - [ - 15841992135198763379, - 14720834587097519286, - 13368409501161066813, - 2573656577138466328 - ], - [ - 13514424698935886425, - 7239950741329575843, - 9039316437528260882, - 12691858985034973883 - ], - [ - 14420378982653279431, - 13179210209682410341, - 7560675832667429441, - 3748131970876970838 - ], - [ - 2072838155729545743, - 727002567616932480, - 11920546620262616812, - 3888981363442179451 - ], - [ - 9207515469869187982, - 9667325837723460858, - 17095977184269845868, - 13439525768108846478 - ], - [ - 962748884986913124, - 8230159667231131476, - 5027139959960394958, - 6277516502913365895 - ], - [ - 14609518692990230627, - 5969240353411542865, - 13488246570462408084, - 14661390183333293234 - ], - [ - 2953324731087072706, - 12659138364653694398, - 11676616147466481654, - 16794811097714373493 - ], - [ - 15558701148995678004, - 13977134442379252539, - 12859991085637499302, - 1215971116344730469 - ], - [ - 17154790910942822839, - 14635719095394619745, - 3146651494716456461, - 15620585421498084447 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/recursion_layer/vk_7.json b/crates/zkevm_test_harness/setup/recursion_layer/vk_7.json deleted file mode 100644 index 1250098..0000000 --- a/crates/zkevm_test_harness/setup/recursion_layer/vk_7.json +++ /dev/null @@ -1,262 +0,0 @@ -{ - "LeafLayerCircuitForKeccakRoundFunction": { - "fixed_parameters": { - "parameters": { - "num_columns_under_copy_permutation": 140, - "num_witness_columns": 0, - "num_constant_columns": 4, - "max_allowed_constraint_degree": 8 - }, - "lookup_parameters": "NoLookup", - "domain_size": 1048576, - "total_tables_len": 0, - "public_inputs_locations": [ - [ - 0, - 0 - ], - [ - 1, - 0 - ], - [ - 2, - 0 - ], - [ - 3, - 0 - ] - ], - "extra_constant_polys_for_selectors": 4, - "table_ids_column_idxes": [], - "quotient_degree": 8, - "selectors_placement": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 1, - "num_constants": 0, - "degree": 7, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 4, - "num_constants": 4, - "degree": 3, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 5, - "num_constants": 1, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 6, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 2, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 7, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 9, - "num_constants": 4, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 0, - "num_constants": 4, - "degree": 1, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 3, - "num_constants": 2, - "degree": 3, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 8, - "num_constants": 0, - "degree": 0, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - } - } - }, - "fri_lde_factor": 2, - "cap_size": 16 - }, - "setup_merkle_tree_cap": [ - [ - 2754337122404035131, - 13536623891656361365, - 1007616849063951008, - 15105252681621581082 - ], - [ - 8308444090318189338, - 7446058959525096525, - 13329207951509548855, - 7561889402802668448 - ], - [ - 15626189183123654473, - 9389275788860639449, - 7727979895208578309, - 8967557569387905568 - ], - [ - 1271041653742580722, - 1508771155767829929, - 3539674211903238731, - 6674336842512236791 - ], - [ - 14993085933639327428, - 12859616637151917255, - 17451807438447563279, - 18361547219004635882 - ], - [ - 2596569918238049986, - 9535951245061094004, - 3612719904693838716, - 15669710216801791634 - ], - [ - 2923247806064529346, - 476025466236692654, - 219470078253531684, - 3253637150697045053 - ], - [ - 11455918723444914411, - 12760698121370134283, - 1348665151397345538, - 1503330250917801638 - ], - [ - 3882061487409180567, - 4539967518573931769, - 16041271276470561136, - 13198977187430751226 - ], - [ - 9175887734272823437, - 11834689895461412171, - 15661083739716912511, - 11679573170871122987 - ], - [ - 16807522636555833221, - 8478021735953695140, - 6319467368854890639, - 9055828631796683676 - ], - [ - 17441028216195758717, - 16733042275859432057, - 16209233366181649846, - 16396552402939532160 - ], - [ - 6210356141414087397, - 4943182941258025608, - 7273397807824898264, - 11582999888436731797 - ], - [ - 14142343453086872024, - 17506279899770493168, - 9608284523774702738, - 609745290150469595 - ], - [ - 8310851111766432853, - 13548474419145163485, - 15450231847428594055, - 12223625109163810065 - ], - [ - 18255684948340198040, - 10371054994206808107, - 3264758647817486750, - 6747927017612155762 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/recursion_layer/vk_8.json b/crates/zkevm_test_harness/setup/recursion_layer/vk_8.json deleted file mode 100644 index 53184d3..0000000 --- a/crates/zkevm_test_harness/setup/recursion_layer/vk_8.json +++ /dev/null @@ -1,262 +0,0 @@ -{ - "LeafLayerCircuitForSha256RoundFunction": { - "fixed_parameters": { - "parameters": { - "num_columns_under_copy_permutation": 140, - "num_witness_columns": 0, - "num_constant_columns": 4, - "max_allowed_constraint_degree": 8 - }, - "lookup_parameters": "NoLookup", - "domain_size": 1048576, - "total_tables_len": 0, - "public_inputs_locations": [ - [ - 0, - 0 - ], - [ - 1, - 0 - ], - [ - 2, - 0 - ], - [ - 3, - 0 - ] - ], - "extra_constant_polys_for_selectors": 4, - "table_ids_column_idxes": [], - "quotient_degree": 8, - "selectors_placement": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 1, - "num_constants": 0, - "degree": 7, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 4, - "num_constants": 4, - "degree": 3, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 5, - "num_constants": 1, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 6, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 2, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 7, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 9, - "num_constants": 4, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 0, - "num_constants": 4, - "degree": 1, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 3, - "num_constants": 2, - "degree": 3, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 8, - "num_constants": 0, - "degree": 0, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - } - } - }, - "fri_lde_factor": 2, - "cap_size": 16 - }, - "setup_merkle_tree_cap": [ - [ - 6606882135817124908, - 870347107746733688, - 12589677233751162485, - 589161009871845644 - ], - [ - 2653237880188520795, - 5593713591941028430, - 14924807074602279493, - 7403178895756596709 - ], - [ - 4770385125899202728, - 16848765286027915692, - 7130735721393145418, - 13542558858028383026 - ], - [ - 10198382868561538358, - 11182212222601267089, - 2158487448188796066, - 7515784380092212678 - ], - [ - 18043800703311929788, - 12605295159363639520, - 16963777812872271598, - 13934310487890398001 - ], - [ - 17306728193061605292, - 6162556196186301425, - 15123250614620584121, - 7156136428077702076 - ], - [ - 3239169487219227705, - 4415189033224694015, - 10092040104298268727, - 3953865385297495928 - ], - [ - 13842490303827572248, - 8581552410557417158, - 6306820342544224802, - 1525290694317383658 - ], - [ - 16571790197298227277, - 273370441868121439, - 7446891486292543124, - 5407600836394474442 - ], - [ - 11518012136298307119, - 15035338047379067034, - 11014561672957925556, - 9225054298465248935 - ], - [ - 11950255612043468638, - 10166628395020495040, - 5673010277307553197, - 3641423295115612757 - ], - [ - 1072894636907573868, - 10523520096472094653, - 4897453347544558657, - 3772162500249343132 - ], - [ - 17527297802619704973, - 16260964196666506939, - 7653109999731571152, - 15253570761269944834 - ], - [ - 16258769312952303884, - 7720171109291562352, - 11124452352545828178, - 16830247676911180779 - ], - [ - 5288712429506529884, - 13145012711898589816, - 11490757447230521395, - 5486824582454772190 - ], - [ - 16641639521175638360, - 5677946044429642761, - 12635856058275795326, - 12340020456497165526 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/recursion_layer/vk_9.json b/crates/zkevm_test_harness/setup/recursion_layer/vk_9.json deleted file mode 100644 index fd93138..0000000 --- a/crates/zkevm_test_harness/setup/recursion_layer/vk_9.json +++ /dev/null @@ -1,262 +0,0 @@ -{ - "LeafLayerCircuitForECRecover": { - "fixed_parameters": { - "parameters": { - "num_columns_under_copy_permutation": 140, - "num_witness_columns": 0, - "num_constant_columns": 4, - "max_allowed_constraint_degree": 8 - }, - "lookup_parameters": "NoLookup", - "domain_size": 1048576, - "total_tables_len": 0, - "public_inputs_locations": [ - [ - 0, - 0 - ], - [ - 1, - 0 - ], - [ - 2, - 0 - ], - [ - 3, - 0 - ] - ], - "extra_constant_polys_for_selectors": 4, - "table_ids_column_idxes": [], - "quotient_degree": 8, - "selectors_placement": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 1, - "num_constants": 0, - "degree": 7, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 4, - "num_constants": 4, - "degree": 3, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 5, - "num_constants": 1, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 6, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 2, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 7, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 9, - "num_constants": 4, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 0, - "num_constants": 4, - "degree": 1, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 3, - "num_constants": 2, - "degree": 3, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 8, - "num_constants": 0, - "degree": 0, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - } - } - }, - "fri_lde_factor": 2, - "cap_size": 16 - }, - "setup_merkle_tree_cap": [ - [ - 16583816757147109915, - 6963829355452839433, - 11940875000538070832, - 15894104441345840138 - ], - [ - 36227003148665809, - 11028618890970020002, - 4343211958419724904, - 791432294920631097 - ], - [ - 1053628646241409214, - 18295641591451972995, - 17087930529612400859, - 8054485153340807462 - ], - [ - 14078465126456631488, - 6660888756534169943, - 10445815936717321282, - 1204183364700475604 - ], - [ - 6565923030448912932, - 5689363890930263713, - 14579079361142289832, - 18250363258973654620 - ], - [ - 5594466378210282708, - 7530960626189854360, - 6174473928451523699, - 5251983159342391844 - ], - [ - 12279535169825304864, - 12589526594964576240, - 16268277907707868237, - 14569547963854539437 - ], - [ - 3024568747005853466, - 10670998927232133838, - 8741315526062272650, - 13116267472708986857 - ], - [ - 18287818521493359158, - 12465285810046539330, - 7830453584786353570, - 3200929840547521682 - ], - [ - 396280962221418434, - 155940982165501318, - 4918366470671389686, - 12666391258333287269 - ], - [ - 994696028372903455, - 13290608975082327662, - 17565372830407551524, - 10040288751795389395 - ], - [ - 14688024383340733889, - 228602459293192147, - 16250012042539496963, - 7917027594444510464 - ], - [ - 2381008739908534147, - 10649790805788811284, - 16654113750922895739, - 13449734934694570430 - ], - [ - 5847391011868161134, - 4370124740305550330, - 7814597813724139309, - 11475458091021302836 - ], - [ - 992234481709240875, - 7878726214998735002, - 4713430274481334392, - 9520301816189015224 - ], - [ - 2031452289140915452, - 18340348994636358424, - 18405863910261483011, - 4858400875802611213 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/recursion_layer/vk_node.json b/crates/zkevm_test_harness/setup/recursion_layer/vk_node.json deleted file mode 100644 index be07a34..0000000 --- a/crates/zkevm_test_harness/setup/recursion_layer/vk_node.json +++ /dev/null @@ -1,262 +0,0 @@ -{ - "NodeLayerCircuit": { - "fixed_parameters": { - "parameters": { - "num_columns_under_copy_permutation": 140, - "num_witness_columns": 0, - "num_constant_columns": 4, - "max_allowed_constraint_degree": 8 - }, - "lookup_parameters": "NoLookup", - "domain_size": 1048576, - "total_tables_len": 0, - "public_inputs_locations": [ - [ - 0, - 0 - ], - [ - 1, - 0 - ], - [ - 2, - 0 - ], - [ - 3, - 0 - ] - ], - "extra_constant_polys_for_selectors": 4, - "table_ids_column_idxes": [], - "quotient_degree": 8, - "selectors_placement": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 1, - "num_constants": 0, - "degree": 7, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 4, - "num_constants": 4, - "degree": 3, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 5, - "num_constants": 1, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 6, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 2, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 7, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 9, - "num_constants": 4, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 0, - "num_constants": 4, - "degree": 1, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 3, - "num_constants": 2, - "degree": 3, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 8, - "num_constants": 0, - "degree": 0, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - } - } - }, - "fri_lde_factor": 2, - "cap_size": 16 - }, - "setup_merkle_tree_cap": [ - [ - 8752297716333772678, - 5946982653429507558, - 15667682312862354915, - 6561848162334062346 - ], - [ - 4072910862681873968, - 3604325707143385873, - 1892267558319800895, - 2062460768177660810 - ], - [ - 3640094921664092294, - 16367091185715359043, - 16428822133010323862, - 14861513003179915327 - ], - [ - 16570902159722305344, - 1795635366981260369, - 1406768685148821645, - 17471170685173873623 - ], - [ - 6561909722630928872, - 15845674819712071235, - 2662330907325201668, - 14286471747247138668 - ], - [ - 6794454427546430841, - 1215021783681280804, - 3259755526588313172, - 8437744923387532861 - ], - [ - 2030976859327045731, - 16459260148127551451, - 14245828890468790037, - 361023273196036723 - ], - [ - 14334351587608170877, - 11182758059847585000, - 9558762045668889076, - 15702176629939108641 - ], - [ - 8685187025070791110, - 16484126383564331494, - 6136275184997604707, - 9497831041498158513 - ], - [ - 15846436940612701987, - 8564306758551694597, - 12842140844801213638, - 9287861926155867669 - ], - [ - 5690002222261986952, - 5188051748616708378, - 10989432377483892552, - 14547067763703254403 - ], - [ - 9010398466296220762, - 6802468617830098091, - 3163092028613402958, - 17536791022963182485 - ], - [ - 12630874582753375298, - 6351212790387368185, - 7677933241772288105, - 220332782568116190 - ], - [ - 10223633522668402481, - 18382173728479069323, - 7838385890638718371, - 16907103047962407162 - ], - [ - 3004508144933641593, - 8602270664966841422, - 3100895862270439281, - 9505839379193602116 - ], - [ - 5982060036453673097, - 9487089944586730926, - 11944489796360965459, - 4917521433420744915 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/setup/recursion_layer/vk_recursion_tip.json b/crates/zkevm_test_harness/setup/recursion_layer/vk_recursion_tip.json deleted file mode 100644 index 5752f84..0000000 --- a/crates/zkevm_test_harness/setup/recursion_layer/vk_recursion_tip.json +++ /dev/null @@ -1,249 +0,0 @@ -{ - "RecursionTipCircuit": { - "fixed_parameters": { - "parameters": { - "num_columns_under_copy_permutation": 140, - "num_witness_columns": 0, - "num_constant_columns": 4, - "max_allowed_constraint_degree": 8 - }, - "lookup_parameters": "NoLookup", - "domain_size": 1048576, - "total_tables_len": 0, - "public_inputs_locations": [ - [ - 0, - 0 - ], - [ - 1, - 0 - ], - [ - 2, - 0 - ], - [ - 3, - 0 - ] - ], - "extra_constant_polys_for_selectors": 4, - "table_ids_column_idxes": [], - "quotient_degree": 8, - "selectors_placement": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 1, - "num_constants": 0, - "degree": 7, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 4, - "num_constants": 4, - "degree": 3, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "Fork": { - "left": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 2, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 6, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 5, - "num_constants": 0, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 7, - "num_constants": 0, - "degree": 0, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - } - } - }, - "right": { - "Fork": { - "left": { - "GateOnly": { - "gate_idx": 8, - "num_constants": 4, - "degree": 2, - "needs_selector": true, - "is_lookup": false - } - }, - "right": { - "GateOnly": { - "gate_idx": 0, - "num_constants": 4, - "degree": 1, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - }, - "right": { - "GateOnly": { - "gate_idx": 3, - "num_constants": 2, - "degree": 3, - "needs_selector": true, - "is_lookup": false - } - } - } - } - } - }, - "fri_lde_factor": 2, - "cap_size": 16 - }, - "setup_merkle_tree_cap": [ - [ - 2401743433083964769, - 15762883926673891691, - 6472220447111540741, - 7000834201205811171 - ], - [ - 12474204950291268306, - 9343150943047510151, - 15328734976112652547, - 16759119723816206694 - ], - [ - 16124020549255359460, - 7355620449230325191, - 10003413388608347322, - 2620598905098543682 - ], - [ - 7281528816073740235, - 6578930121510058874, - 17693451189009929068, - 15171982492540575678 - ], - [ - 15114522181245969283, - 4561302334362155284, - 13835642578614504939, - 15011156387896001043 - ], - [ - 8138308531289199030, - 10400241999772685138, - 10242415088482619661, - 3701287723127341671 - ], - [ - 2811434615009443836, - 13752020483027044369, - 11301673831254483273, - 3580313905930905318 - ], - [ - 11391749424947933942, - 15969776557769756645, - 15981508421282494159, - 13306678159239893700 - ], - [ - 7525077276688590372, - 11864833873951650826, - 6103576946776813287, - 5887304113992645139 - ], - [ - 6281944816669729971, - 5429818473436661224, - 1661592539022225140, - 8583119773334390683 - ], - [ - 7560526388110449457, - 5385059203058068227, - 9099975297024433241, - 14632572032270759981 - ], - [ - 8625035892527826324, - 2721256678355092712, - 6182187168511779948, - 5882873677185657348 - ], - [ - 15543730778216186803, - 15062097111128752648, - 2129977695486559197, - 2488539949606618595 - ], - [ - 10043089758614618210, - 5593930444886757027, - 3997879469589733701, - 7974976964833991563 - ], - [ - 12760974637637251313, - 8221632486018593769, - 11786359041095215601, - 16349378050784994011 - ], - [ - 10451893088686450547, - 18368130150469564732, - 1051863168298493066, - 17253411112705438671 - ] - ] - } -} \ No newline at end of file diff --git a/crates/zkevm_test_harness/src/capacity_estimator.rs b/crates/zkevm_test_harness/src/capacity_estimator.rs index 85a940a..687a37b 100644 --- a/crates/zkevm_test_harness/src/capacity_estimator.rs +++ b/crates/zkevm_test_harness/src/capacity_estimator.rs @@ -40,7 +40,7 @@ where std::any::type_name::() ); - if size == next_size { + if (size == next_size) & !(size == 1) { break; } @@ -218,6 +218,30 @@ pub fn secp256r1_verify_capacity() -> usize { compute_size_inner::(SF::geometry(), 20, Some(2), |x: usize| x) } +pub fn modexp_capacity() -> usize { + type SF = ModexpFunctionInstanceSynthesisFunction; + + compute_size_inner::(SF::geometry(), 20, Some(2), |x: usize| x) +} + +pub fn ecadd_capacity() -> usize { + type SF = ECAddFunctionInstanceSynthesisFunction; + + compute_size_inner::(SF::geometry(), 20, Some(2), |x: usize| x) +} + +pub fn ecmul_capacity() -> usize { + type SF = ECMulFunctionInstanceSynthesisFunction; + + compute_size_inner::(SF::geometry(), 20, Some(2), |x: usize| x) +} + +pub fn ecpairing_capacity() -> usize { + type SF = ECPairingFunctionInstanceSynthesisFunction; + + compute_size_inner::(SF::geometry(), 20, Some(1), |x: usize| x) +} + #[cfg(test)] mod test { use super::*; @@ -263,5 +287,9 @@ mod test { "Size of secp256r1_verify_capacity: {}", secp256r1_verify_capacity() ); + println!("Size of modexp_capacity: {}", modexp_capacity()); + println!("Size of ecadd_capacity: {}", ecadd_capacity()); + println!("Size of ecmul_capacity: {}", ecmul_capacity()); + println!("Size of ecpairing_capacity: {}", ecpairing_capacity()); } } diff --git a/crates/zkevm_test_harness/src/circuit_limit_estimator/mod.rs b/crates/zkevm_test_harness/src/circuit_limit_estimator/mod.rs index 0fbdc0b..303bb6f 100644 --- a/crates/zkevm_test_harness/src/circuit_limit_estimator/mod.rs +++ b/crates/zkevm_test_harness/src/circuit_limit_estimator/mod.rs @@ -195,6 +195,30 @@ pub fn get_circuit_capacity(circuit_type: u8) -> usize { // https://github.com/matter-labs/sync_vm/blob/b538a6105bbc0586ad437484f7f76b2c3e329c46/src/glue/merkleize_l1_messages/merkleize.rs#L298-L301 Some(|cycles: usize| { 2usize.pow((cycles as f64).log2().floor() as u32) }), ), + 19 => compute_inner::( + |x: usize| { + x + }, + None, + ), + 20 => compute_inner::( + |x: usize| { + x + }, + None, + ), + 21 => compute_inner::( + |x: usize| { + x + }, + None, + ), + 22 => compute_inner::( + |x: usize| { + x + }, + None, + ), _ => panic!("Unknown circuit type for which the limit can be computed {}", circuit_type) } } diff --git a/crates/zkevm_test_harness/src/circuit_synthesis_performance_test/main.rs b/crates/zkevm_test_harness/src/circuit_synthesis_performance_test/main.rs index 8ea951f..71c28b2 100644 --- a/crates/zkevm_test_harness/src/circuit_synthesis_performance_test/main.rs +++ b/crates/zkevm_test_harness/src/circuit_synthesis_performance_test/main.rs @@ -35,6 +35,10 @@ fn get_circuit_to_synthesis_upper_bound_in_seconds(circuit_type: u8) -> u64 { (15, 5 * 60), // 5 min (16, 5 * 60), // 5 min (17, 5 * 60), // 5 min + (17, 5 * 60), // 5 min + (17, 5 * 60), // 5 min + (17, 5 * 60), // 5 min + (17, 5 * 60), // 5 min ].iter().cloned().collect(); map[&circuit_type] } diff --git a/crates/zkevm_test_harness/src/compute_setups/full.rs b/crates/zkevm_test_harness/src/compute_setups/full.rs index ba034df..8e78ec0 100644 --- a/crates/zkevm_test_harness/src/compute_setups/full.rs +++ b/crates/zkevm_test_harness/src/compute_setups/full.rs @@ -400,7 +400,7 @@ pub fn compute_leaf_params( let mut leaf_vk_commits = vec![]; for circuit_type in ((BaseLayerCircuitType::VM as u8) - ..=(BaseLayerCircuitType::Secp256r1Verify as u8)) + ..=(BaseLayerCircuitType::ECPairingPrecompile as u8)) .chain(std::iter::once(BaseLayerCircuitType::EIP4844Repack as u8)) { let recursive_circuit_type = base_circuit_type_into_recursive_leaf_circuit_type( diff --git a/crates/zkevm_test_harness/src/geometry_config_generator/main.rs b/crates/zkevm_test_harness/src/geometry_config_generator/main.rs index 6ce0e5e..37b41e1 100644 --- a/crates/zkevm_test_harness/src/geometry_config_generator/main.rs +++ b/crates/zkevm_test_harness/src/geometry_config_generator/main.rs @@ -5,11 +5,11 @@ use codegen::Scope; use rayon::prelude::*; use zkevm_test_harness::capacity_estimator::{ - code_decommitter_capacity, code_decommittments_sorter_capacity, ecrecover_capacity, - event_sorter_capacity, keccak256_rf_capacity, l1_messages_hasher_capacity, - log_demuxer_capacity, main_vm_capacity, ram_permutation_capacity, secp256r1_verify_capacity, - sha256_rf_capacity, storage_application_capacity, storage_sorter_capacity, - transient_storage_sorter_capacity, + code_decommitter_capacity, code_decommittments_sorter_capacity, ecadd_capacity, ecmul_capacity, + ecpairing_capacity, ecrecover_capacity, event_sorter_capacity, keccak256_rf_capacity, + l1_messages_hasher_capacity, log_demuxer_capacity, main_vm_capacity, modexp_capacity, + ram_permutation_capacity, secp256r1_verify_capacity, sha256_rf_capacity, + storage_application_capacity, storage_sorter_capacity, transient_storage_sorter_capacity, }; use zkevm_test_harness::toolset::GeometryConfig; @@ -37,6 +37,10 @@ fn all_runners() -> Vec usize + Send>> { Box::new(l1_messages_hasher_capacity), Box::new(transient_storage_sorter_capacity), Box::new(secp256r1_verify_capacity), + Box::new(modexp_capacity), + Box::new(ecadd_capacity), + Box::new(ecmul_capacity), + Box::new(ecpairing_capacity), ] } @@ -64,6 +68,10 @@ pub fn compute_config() -> GeometryConfig { let limit_for_l1_messages_pudata_hasher = sizes.pop().unwrap(); let cycles_per_transient_storage_sorter = sizes.pop().unwrap(); let cycles_per_secp256r1_verify_circuit = sizes.pop().unwrap(); + let cycles_per_modexp_circuit = sizes.pop().unwrap(); + let cycles_per_ecadd_circuit = sizes.pop().unwrap(); + let cycles_per_ecmul_circuit = sizes.pop().unwrap(); + let cycles_per_ecpairing_circuit = sizes.pop().unwrap(); assert!(sizes.is_empty()); @@ -81,6 +89,10 @@ pub fn compute_config() -> GeometryConfig { cycles_per_ecrecover_circuit, cycles_per_secp256r1_verify_circuit, cycles_per_transient_storage_sorter, + cycles_per_modexp_circuit, + cycles_per_ecadd_circuit, + cycles_per_ecmul_circuit, + cycles_per_ecpairing_circuit, limit_for_l1_messages_pudata_hasher, }; config @@ -150,7 +162,26 @@ fn main() { " cycles_per_secp256r1_verify_circuit: {},", computed_config.cycles_per_secp256r1_verify_circuit )); + function.line(format!( + " cycles_per_modexp_circuit: {},", + computed_config.cycles_per_modexp_circuit + )); + function.line(format!( + " cycles_per_ecadd_circuit: {},", + computed_config.cycles_per_ecadd_circuit + )); + function.line(format!( + " cycles_per_ecmul_circuit: {},", + computed_config.cycles_per_ecmul_circuit + )); + function.line(format!( + " cycles_per_ecpairing_circuit: {},", + computed_config.cycles_per_ecpairing_circuit + )); function.line("}"); println!("Generated config:\n {}", scope.to_string()); - save_geometry_config_file(scope.to_string(), "src/geometry_config/mod.rs"); + save_geometry_config_file( + scope.to_string(), + "crates/circuit_sequencer_api/src/geometry_config.rs", + ); } diff --git a/crates/zkevm_test_harness/src/lib.rs b/crates/zkevm_test_harness/src/lib.rs index c3bd543..c706d52 100644 --- a/crates/zkevm_test_harness/src/lib.rs +++ b/crates/zkevm_test_harness/src/lib.rs @@ -1,4 +1,4 @@ -#![recursion_limit = "32"] +#![recursion_limit = "64"] #![feature(allocator_api)] #![feature(array_chunks)] #![feature(stmt_expr_attributes)] diff --git a/crates/zkevm_test_harness/src/prover_utils/full.rs b/crates/zkevm_test_harness/src/prover_utils/full.rs index 8da55d6..871ee08 100644 --- a/crates/zkevm_test_harness/src/prover_utils/full.rs +++ b/crates/zkevm_test_harness/src/prover_utils/full.rs @@ -223,6 +223,38 @@ pub fn prove_base_layer_circuit( cs.pad_and_shrink_using_hint(finalization_hint); cs.into_assembly::() } + ZkSyncBaseLayerCircuit::Modexp(inner) => { + let builder = inner.configure_builder_proxy(builder); + let mut cs = builder.build(num_vars.unwrap()); + inner.add_tables_proxy(&mut cs); + inner.synthesize_proxy(&mut cs); + cs.pad_and_shrink_using_hint(finalization_hint); + cs.into_assembly::() + } + ZkSyncBaseLayerCircuit::ECAdd(inner) => { + let builder = inner.configure_builder_proxy(builder); + let mut cs = builder.build(num_vars.unwrap()); + inner.add_tables_proxy(&mut cs); + inner.synthesize_proxy(&mut cs); + cs.pad_and_shrink_using_hint(finalization_hint); + cs.into_assembly::() + } + ZkSyncBaseLayerCircuit::ECMul(inner) => { + let builder = inner.configure_builder_proxy(builder); + let mut cs = builder.build(num_vars.unwrap()); + inner.add_tables_proxy(&mut cs); + inner.synthesize_proxy(&mut cs); + cs.pad_and_shrink_using_hint(finalization_hint); + cs.into_assembly::() + } + ZkSyncBaseLayerCircuit::ECPairing(inner) => { + let builder = inner.configure_builder_proxy(builder); + let mut cs = builder.build(num_vars.unwrap()); + inner.add_tables_proxy(&mut cs); + inner.synthesize_proxy(&mut cs); + cs.pad_and_shrink_using_hint(finalization_hint); + cs.into_assembly::() + } }; cs.prove_from_precomputations::( @@ -352,7 +384,11 @@ pub fn prove_recursion_layer_circuit( | ZkSyncRecursiveLayerCircuit::LeafLayerCircuitForL1MessagesHasher(inner) | ZkSyncRecursiveLayerCircuit::LeafLayerCircuitForTransientStorageSorter(inner) | ZkSyncRecursiveLayerCircuit::LeafLayerCircuitForSecp256r1Verify(inner) - | ZkSyncRecursiveLayerCircuit::LeafLayerCircuitForEIP4844Repack(inner) => { + | ZkSyncRecursiveLayerCircuit::LeafLayerCircuitForEIP4844Repack(inner) + | ZkSyncRecursiveLayerCircuit::LeafLayerCircuitForModexp(inner) + | ZkSyncRecursiveLayerCircuit::LeafLayerCircuitForECAdd(inner) + | ZkSyncRecursiveLayerCircuit::LeafLayerCircuitForECMul(inner) + | ZkSyncRecursiveLayerCircuit::LeafLayerCircuitForECPairing(inner) => { let builder = inner.configure_builder_proxy(builder); let mut cs = builder.build(num_vars.unwrap()); inner.add_tables(&mut cs); diff --git a/crates/zkevm_test_harness/src/prover_utils/mod.rs b/crates/zkevm_test_harness/src/prover_utils/mod.rs index bbd6ca9..d407d59 100644 --- a/crates/zkevm_test_harness/src/prover_utils/mod.rs +++ b/crates/zkevm_test_harness/src/prover_utils/mod.rs @@ -168,6 +168,38 @@ fn get_cs_finalization_hint_for_base_layer( let (_, finalization_hint) = cs.pad_and_shrink(); (cs.into_assembly::(), finalization_hint) } + ZkSyncBaseLayerCircuit::Modexp(inner) => { + let builder = inner.configure_builder_proxy(builder); + let mut cs = builder.build(num_vars.unwrap()); + inner.add_tables_proxy(&mut cs); + inner.synthesize_proxy(&mut cs); + let (_, finalization_hint) = cs.pad_and_shrink(); + (cs.into_assembly::(), finalization_hint) + } + ZkSyncBaseLayerCircuit::ECAdd(inner) => { + let builder = inner.configure_builder_proxy(builder); + let mut cs = builder.build(num_vars.unwrap()); + inner.add_tables_proxy(&mut cs); + inner.synthesize_proxy(&mut cs); + let (_, finalization_hint) = cs.pad_and_shrink(); + (cs.into_assembly::(), finalization_hint) + } + ZkSyncBaseLayerCircuit::ECMul(inner) => { + let builder = inner.configure_builder_proxy(builder); + let mut cs = builder.build(num_vars.unwrap()); + inner.add_tables_proxy(&mut cs); + inner.synthesize_proxy(&mut cs); + let (_, finalization_hint) = cs.pad_and_shrink(); + (cs.into_assembly::(), finalization_hint) + } + ZkSyncBaseLayerCircuit::ECPairing(inner) => { + let builder = inner.configure_builder_proxy(builder); + let mut cs = builder.build(num_vars.unwrap()); + inner.add_tables_proxy(&mut cs); + inner.synthesize_proxy(&mut cs); + let (_, finalization_hint) = cs.pad_and_shrink(); + (cs.into_assembly::(), finalization_hint) + } } } @@ -223,7 +255,11 @@ fn get_cs_finalization_hint_for_recursive_layer( | ZkSyncRecursiveLayerCircuit::LeafLayerCircuitForL1MessagesHasher(inner) | ZkSyncRecursiveLayerCircuit::LeafLayerCircuitForTransientStorageSorter(inner) | ZkSyncRecursiveLayerCircuit::LeafLayerCircuitForSecp256r1Verify(inner) - | ZkSyncRecursiveLayerCircuit::LeafLayerCircuitForEIP4844Repack(inner) => { + | ZkSyncRecursiveLayerCircuit::LeafLayerCircuitForEIP4844Repack(inner) + | ZkSyncRecursiveLayerCircuit::LeafLayerCircuitForModexp(inner) + | ZkSyncRecursiveLayerCircuit::LeafLayerCircuitForECAdd(inner) + | ZkSyncRecursiveLayerCircuit::LeafLayerCircuitForECMul(inner) + | ZkSyncRecursiveLayerCircuit::LeafLayerCircuitForECPairing(inner) => { let builder = inner.configure_builder_proxy(builder); let mut cs = builder.build(num_vars.unwrap()); inner.add_tables(&mut cs); diff --git a/crates/zkevm_test_harness/src/run_vms.rs b/crates/zkevm_test_harness/src/run_vms.rs index c55f609..4832dfb 100644 --- a/crates/zkevm_test_harness/src/run_vms.rs +++ b/crates/zkevm_test_harness/src/run_vms.rs @@ -420,6 +420,26 @@ pub fn run_vms( .last .as_ref() .map(|wit| wit.observable_output.clone()), + basic_circuits + .modexp_precompile_circuits + .last + .as_ref() + .map(|wit| wit.observable_output.clone()), + basic_circuits + .ecadd_precompile_circuits + .last + .as_ref() + .map(|wit| wit.observable_output.clone()), + basic_circuits + .ecmul_precompile_circuits + .last + .as_ref() + .map(|wit| wit.observable_output.clone()), + basic_circuits + .ecpairing_precompile_circuits + .last + .as_ref() + .map(|wit| wit.observable_output.clone()), ]; for (dst, src) in outputs.iter_mut().zip(testsing_locations.into_iter()) { @@ -433,7 +453,7 @@ pub fn run_vms( previous_memory_state = dst.final_memory_state.clone(); } - let [keccak256_observable_output, sha256_observable_output, ecrecover_observable_output, secp256r1_verify_observable_output] = + let [keccak256_observable_output, sha256_observable_output, ecrecover_observable_output, secp256r1_verify_observable_output, modexp_observable_output, ecadd_observable_output, ecmul_observable_output, ecpairing_observable_output] = outputs; // storage sorter must produce empty output @@ -597,6 +617,10 @@ pub fn run_vms( sha256_observable_output, ecrecover_observable_output, secp256r1_verify_observable_output, + modexp_observable_output, + ecadd_observable_output, + ecmul_observable_output, + ecpairing_observable_output, storage_sorter_observable_output, storage_application_observable_output, events_sorter_observable_output, diff --git a/crates/zkevm_test_harness/src/tests/complex_tests/mod.rs b/crates/zkevm_test_harness/src/tests/complex_tests/mod.rs index 92fd719..3cbcd59 100644 --- a/crates/zkevm_test_harness/src/tests/complex_tests/mod.rs +++ b/crates/zkevm_test_harness/src/tests/complex_tests/mod.rs @@ -153,6 +153,10 @@ fn get_testing_geometry_config() -> GeometryConfig { cycles_per_events_or_l1_messages_sorter: 4, cycles_per_secp256r1_verify_circuit: 2, cycles_per_transient_storage_sorter: 16, + cycles_per_modexp_circuit: 10, + cycles_per_ecadd_circuit: 10, + cycles_per_ecmul_circuit: 10, + cycles_per_ecpairing_circuit: 10, limit_for_l1_messages_pudata_hasher: 32, } @@ -558,7 +562,7 @@ fn run_and_try_create_witness_inner( println!("Computing leaf vks"); for base_circuit_type in ((BaseLayerCircuitType::VM as u8) - ..=(BaseLayerCircuitType::Secp256r1Verify as u8)) + ..=(BaseLayerCircuitType::ECPairingPrecompile as u8)) .chain(std::iter::once(BaseLayerCircuitType::EIP4844Repack as u8)) { let recursive_circuit_type = base_circuit_type_into_recursive_leaf_circuit_type( @@ -1079,16 +1083,16 @@ fn run_and_try_create_witness_inner( } // do everything for recursion tip - if source.get_recursion_tip_vk().is_err() { - use crate::zkevm_circuits::recursion::recursion_tip::input::*; - // replicate compute_setups::* - todo!(); - } + // if source.get_recursion_tip_vk().is_err() { + // use crate::zkevm_circuits::recursion::recursion_tip::input::*; + // // replicate compute_setups::* + // todo!(); + // } // collect for recursion tip. We know that is this test depth is 0 let mut recursion_tip_proofs = vec![]; for recursive_circuit_type in (ZkSyncRecursionLayerStorageType::LeafLayerCircuitForMainVM as u8) - ..=(ZkSyncRecursionLayerStorageType::LeafLayerCircuitForEIP4844Repack as u8) + ..=(ZkSyncRecursionLayerStorageType::LeafLayerCircuitForECPairing as u8) { match source.get_node_layer_proof(recursive_circuit_type, 0, 0) { Ok(proof) => recursion_tip_proofs.push(proof.into_inner()), @@ -1108,7 +1112,7 @@ fn run_and_try_create_witness_inner( let node_vk = source.get_recursion_layer_node_vk().unwrap(); // leaf params use crate::zkevm_circuits::recursion::leaf_layer::input::RecursionLeafParametersWitness; - let leaf_layer_params: [RecursionLeafParametersWitness; 16] = leaf_vk_commits + let leaf_layer_params: [RecursionLeafParametersWitness; 20] = leaf_vk_commits .iter() .map(|el| el.1.clone()) .collect::>() @@ -1186,7 +1190,10 @@ fn run_and_try_create_witness_inner( RECURSION_LAYER_CAP_SIZE, ); - assert_eq!(source.get_recursion_tip_vk().unwrap().into_inner(), vk); + // assert_eq!(source.get_recursion_tip_vk().unwrap().into_inner(), vk); + source + .set_recursion_tip_vk(ZkSyncRecursionLayerStorage::RecursionTipCircuit(vk.clone())) + .unwrap(); println!("Proving recursion tip"); diff --git a/crates/zkevm_test_harness/src/tests/complex_tests/test_artifacts/basic_test.json b/crates/zkevm_test_harness/src/tests/complex_tests/test_artifacts/basic_test.json index 02d9144..d6d7cf3 100644 --- a/crates/zkevm_test_harness/src/tests/complex_tests/test_artifacts/basic_test.json +++ b/crates/zkevm_test_harness/src/tests/complex_tests/test_artifacts/basic_test.json @@ -1 +1 @@ -{"predeployed_contracts":{"0x0000000000000000000000000000000000000000":[[0,0,0,1,1,32,1,144,0,0,0,4,0,0,193,61,0,0,0,0,1,0,0,25,0,0,0,17,0,1,4,46],[0,0,0,128,1,0,0,57,0,0,0,64,0,16,4,63,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75],[0,0,0,14,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,5,1,0,0,65,0,0,0,17,0,1,4,46,0,0,0,0,1,0,0,25,0,0,0,18,0,1,4,48],[0,0,0,16,0,0,4,50,0,0,0,17,0,1,4,46,0,0,0,18,0,1,4,48,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],[175,66,242,103,141,4,1,110,33,198,129,151,108,128,65,227,125,97,137,230,206,140,232,80,64,84,68,121,2,83,255,78]],"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,27,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],[179,68,59,65,142,145,24,29,2,67,103,34,93,183,33,202,28,183,196,203,84,235,179,0,253,132,216,164,97,35,28,11]],"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],[228,246,96,45,71,192,105,208,154,38,228,162,159,15,59,143,57,108,106,187,164,190,80,74,187,89,113,131,24,79,249,176]],"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,132,1,0,0,65],[0,0,1,228,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,122,1,0,0,65,0,0,1,228,0,1,4,46,0,0,0,0,7,5,0,75,0,0,0,82,0,0,97,61],[0,0,0,0,7,6,0,75,0,0,0,82,0,0,193,61,0,0,0,123,1,48,0,156,0,0,0,30,0,0,33,61],[0,0,0,123,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,124,65,48,0,209,0,0,0,1,4,64,192,57,0,0,0,125,81,48,0,209],[0,0,0,126,81,16,0,209,0,0,0,0,1,84,0,25,0,0,0,123,4,16,0,156,0,0,0,127,1,16,32,65],[0,0,0,0,84,17,0,170,0,0,0,1,5,80,192,57,0,0,0,128,100,64,0,209,0,0,0,126,100,64,0,209],[0,0,0,0,4,101,0,25,0,0,0,123,5,64,0,156,0,0,0,127,4,64,32,65,0,0,0,0,65,20,0,170],[0,0,0,1,4,64,192,57,0,0,0,0,5,2,0,75,0,0,0,124,101,32,0,209,0,0,0,1,6,96,192,57],[0,0,0,125,117,32,0,209,0,0,0,126,117,80,0,209,0,0,0,0,5,118,0,25,0,0,0,123,6,80,0,156],[0,0,0,127,5,80,32,65,0,0,0,0,101,85,0,170,0,0,0,1,6,96,192,57,0,0,0,128,113,16,0,209],[0,0,0,128,117,80,0,209,0,0,0,126,113,16,0,209,0,0,0,0,1,116,0,25,0,0,0,126,84,80,0,209],[0,0,0,0,4,86,0,25,0,0,0,123,5,16,0,156,0,0,0,127,1,16,32,65,0,0,0,123,5,64,0,156],[0,0,0,127,4,64,32,65,0,0,0,129,5,0,0,65,0,0,0,130,6,0,0,65,0,0,0,131,7,16,0,156],[0,0,0,0,6,5,160,25,0,0,0,0,1,22,0,25,0,0,0,0,1,20,0,75,0,0,0,78,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,132,1,0,0,65,0,0,1,228,0,1,4,46,0,0,0,123,7,16,0,156,0,0,0,0,7,0,0,25],[0,0,0,1,7,0,32,57,0,0,0,123,8,64,0,156,0,0,0,1,7,112,33,191,0,0,0,0,6,6,0,75],[0,0,0,143,0,0,97,61,0,0,0,0,5,5,0,75,0,0,0,143,0,0,193,61,0,0,0,1,2,112,1,144],[0,0,0,95,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,124,50,64,0,209,0,0,0,1,3,48,192,57,0,0,0,125,82,64,0,209,0,0,0,126,82,32,0,209],[0,0,0,0,2,83,0,25,0,0,0,123,3,32,0,156,0,0,0,127,2,32,32,65,0,0,0,0,83,34,0,170],[0,0,0,1,5,80,192,57,0,0,0,128,99,48,0,209,0,0,0,126,99,48,0,209,0,0,0,0,3,101,0,25],[0,0,0,123,5,48,0,156,0,0,0,127,3,48,32,65,0,0,0,0,50,35,0,170,0,0,0,1,3,48,192,57],[0,0,0,0,5,1,0,75,0,0,0,124,101,16,0,209,0,0,0,1,6,96,192,57,0,0,0,125,117,16,0,209],[0,0,0,126,117,80,0,209,0,0,0,0,5,118,0,25,0,0,0,123,6,80,0,156,0,0,0,127,5,80,32,65],[0,0,0,0,101,85,0,170,0,0,0,1,6,96,192,57,0,0,0,128,114,32,0,209,0,0,0,128,117,80,0,209],[0,0,0,126,114,32,0,209,0,0,0,0,2,115,0,25,0,0,0,126,83,80,0,209,0,0,0,0,3,86,0,25],[0,0,0,123,5,32,0,156,0,0,0,127,2,32,32,65,0,0,0,123,5,48,0,156,0,0,0,127,3,48,32,65],[0,0,0,129,5,0,0,65,0,0,0,130,6,0,0,65,0,0,0,131,7,32,0,156,0,0,0,0,6,5,160,25],[0,0,0,0,2,38,0,25,0,0,0,0,2,35,0,75,0,0,0,141,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,162,0,0,1,61,0,0,0,1,5,112,1,144],[0,0,0,147,0,0,97,61,0,0,0,0,5,0,4,20,0,0,0,0,5,80,4,32,0,0,0,123,5,48,0,156],[0,0,0,151,0,0,33,61,0,0,0,126,5,32,0,156,0,0,0,153,0,0,65,61,0,0,0,0,5,0,4,20],[0,0,0,0,5,80,4,32,0,0,0,126,6,16,0,153,0,0,0,126,103,96,1,42,0,0,0,0,7,52,0,75],[0,0,0,223,0,0,193,61,0,0,0,0,6,38,0,75,0,0,0,223,0,0,193,61,0,0,0,0,3,4,0,75],[0,0,0,124,83,64,0,209,0,0,0,1,5,80,192,57,0,0,0,125,67,64,0,209,0,0,0,126,67,48,0,209],[0,0,0,0,3,69,0,25,0,0,0,123,4,48,0,156,0,0,0,127,3,48,32,65,0,0,0,0,84,51,0,170],[0,0,0,1,5,80,192,57,0,0,0,128,100,64,0,209,0,0,0,126,100,64,0,209,0,0,0,0,4,101,0,25],[0,0,0,123,5,64,0,156,0,0,0,127,4,64,32,65,0,0,0,0,52,52,0,170,0,0,0,1,3,48,192,57],[0,0,0,0,5,2,0,75,0,0,0,124,101,32,0,209,0,0,0,1,6,96,192,57,0,0,0,125,82,32,0,209],[0,0,0,126,82,32,0,209,0,0,0,0,2,86,0,25,0,0,0,123,5,32,0,156,0,0,0,127,2,32,32,65],[0,0,0,0,82,34,0,170,0,0,0,1,5,80,192,57,0,0,0,0,6,1,0,75,0,0,0,124,118,16,0,209],[0,0,0,1,7,112,192,57,0,0,0,125,97,16,0,209,0,0,0,126,97,16,0,209,0,0,0,0,1,103,0,25],[0,0,0,123,6,16,0,156,0,0,0,127,1,16,32,65,0,0,0,0,118,17,0,170,0,0,0,1,7,112,192,57],[0,0,0,128,20,64,0,209,0,0,0,128,33,32,0,209,0,0,0,126,33,16,0,209,0,0,0,0,1,37,0,25],[0,0,0,128,82,96,0,209,0,0,0,126,84,64,0,209,0,0,0,0,3,83,0,25,0,0,0,123,4,48,0,156],[0,0,0,127,3,48,32,65,0,0,0,123,4,16,0,156,0,0,0,127,1,16,32,65,0,0,0,126,66,32,0,209],[0,0,0,0,4,71,0,25,0,0,0,123,2,64,0,156,0,0,0,127,4,64,32,65,0,0,0,129,2,0,0,65],[0,0,0,130,5,0,0,65,0,0,0,131,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,220,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,126,5,32,0,153],[0,0,0,126,86,80,1,42,0,0,0,0,6,52,0,75,0,0,0,233,0,0,193,61,0,0,0,0,5,81,0,75],[0,0,0,233,0,0,97,61,0,0,0,0,5,33,0,75,0,0,0,233,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,124,101,64,0,209,0,0,0,1,6,96,192,57],[0,0,0,125,117,64,0,209,0,0,0,126,117,80,0,209,0,0,0,0,12,118,0,25,0,0,0,123,5,192,0,156],[0,0,0,127,12,192,32,65,0,0,0,0,101,204,0,170,0,0,0,1,6,96,192,57,0,0,0,128,117,80,0,209],[0,0,0,126,117,80,0,209,0,0,0,0,5,118,0,25,0,0,0,123,6,80,0,156,0,0,0,127,5,80,32,65],[0,0,0,0,101,197,0,170,0,0,0,1,6,96,192,57,0,0,0,0,7,1,0,75,0,0,0,124,135,16,0,209],[0,0,0,1,8,128,192,57,0,0,0,125,151,16,0,209,0,0,0,126,151,112,0,209,0,0,0,0,13,152,0,25],[0,0,0,123,7,208,0,156,0,0,0,127,13,208,32,65,0,0,0,0,135,221,0,170,0,0,0,1,8,128,192,57],[0,0,0,128,149,80,0,209,0,0,0,128,151,112,0,209,0,0,0,126,149,80,0,209,0,0,0,0,9,150,0,25],[0,0,0,126,101,112,0,209,0,0,0,0,5,104,0,25,0,0,0,123,6,144,0,156,0,0,0,127,9,144,32,65],[0,0,0,123,6,80,0,156,0,0,0,127,5,80,32,65,0,0,0,129,7,0,0,65,0,0,0,130,6,0,0,65],[0,0,0,131,8,144,0,156,0,0,0,0,8,7,0,25,0,0,0,0,8,6,32,25,0,0,0,0,8,152,0,25],[0,0,0,0,4,52,0,75,0,4,0,0,0,12,0,29,0,0,1,72,0,0,193,61,0,0,0,0,1,33,0,75],[0,0,1,72,0,0,193,61,0,3,0,0,0,13,0,29,0,0,0,0,1,133,0,75,0,0,1,30,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],[1,227,1,172,0,0,4,15,0,0,0,126,33,16,1,42,0,0,0,1,1,32,2,16,0,0,0,126,49,16,1,42],[0,0,0,0,1,35,0,25,0,0,0,126,18,16,1,42,0,0,0,3,2,0,0,41,0,0,0,126,50,32,1,42],[0,0,0,1,2,48,2,16,0,0,0,126,35,32,1,42,1,227,1,180,0,0,4,15,0,2,0,0,0,1,0,29],[0,0,0,0,2,1,0,25,1,227,1,172,0,0,4,15,0,0,0,4,2,0,0,41,0,0,0,126,50,32,1,42],[0,0,0,1,2,48,2,16,0,0,0,126,66,32,1,42,0,0,0,126,2,64,0,153,0,0,0,126,66,32,1,42],[0,0,0,126,33,16,1,42,0,0,0,0,1,66,0,25,0,0,0,126,33,16,1,42,0,4,0,0,0,2,0,29],[0,0,0,126,1,32,0,153,0,0,0,126,33,16,1,42,0,0,0,0,1,50,0,25,0,0,0,126,33,16,1,42],[0,0,0,2,1,0,0,41,1,227,1,172,0,0,4,15,0,2,0,0,0,1,0,29,0,0,0,4,1,0,0,41],[1,227,1,165,0,0,4,15,0,0,0,126,3,0,0,65,0,0,0,3,2,48,0,106,0,0,0,126,50,32,1,42],[0,0,0,2,2,0,0,41,0,0,0,126,66,32,1,42,0,0,0,0,2,52,0,25,0,0,1,156,0,0,1,61],[0,0,0,0,1,3,0,75,0,0,0,124,65,48,0,209,0,0,0,1,4,64,192,57,0,0,0,125,49,48,0,209],[0,0,0,126,49,16,0,209,0,0,0,0,3,52,0,25,0,0,0,123,1,48,0,156,0,0,0,127,3,48,32,65],[0,0,0,0,65,51,0,170,0,0,0,1,4,64,192,57,0,0,0,128,145,16,0,209,0,0,0,126,145,16,0,209],[0,0,0,0,1,148,0,25,0,0,0,123,4,16,0,156,0,0,0,127,1,16,32,65,0,0,0,0,148,49,0,170],[0,0,0,1,9,144,192,57,0,0,0,0,1,2,0,75,0,0,0,124,161,32,0,209,0,0,0,1,10,160,192,57],[0,0,0,125,33,32,0,209,0,0,0,126,33,16,0,209,0,0,0,0,1,42,0,25,0,0,0,123,2,16,0,156],[0,0,0,127,1,16,32,65,0,0,0,0,162,17,0,170,0,0,0,1,10,160,192,57,0,0,0,128,180,64,0,209],[0,0,0,128,43,32,0,209,0,0,0,126,66,64,0,209,0,0,0,0,2,73,0,25,0,0,0,126,148,176,0,209],[0,0,0,0,4,154,0,25,0,0,0,123,9,32,0,156,0,0,0,127,2,32,32,65,0,0,0,123,9,64,0,156],[0,0,0,127,4,64,32,65,0,0,0,131,9,32,0,156,0,0,0,0,6,7,160,25,0,0,0,0,5,133,0,75],[0,0,1,116,0,0,193,61,0,0,0,0,2,38,0,25,0,0,0,0,2,36,0,75,0,0,1,118,0,0,97,61],[0,0,0,0,2,0,4,20,0,0,0,0,2,32,4,32,0,0,0,126,2,208,0,153,0,0,0,126,66,32,1,42],[0,3,0,0,0,4,0,29,0,0,0,126,33,16,1,42,0,0,0,0,1,66,0,25,0,0,0,126,18,16,1,42],[0,0,0,126,2,192,0,153,0,0,0,126,66,32,1,42,0,0,0,126,50,48,1,42,0,1,0,0,0,3,0,29],[0,0,0,0,2,67,0,25,0,0,0,126,35,32,1,42,1,227,1,180,0,0,4,15,0,2,0,0,0,1,0,29],[0,0,0,0,2,1,0,25,1,227,1,172,0,0,4,15,0,0,0,4,2,0,0,41,0,0,0,126,50,32,1,42],[0,0,0,1,2,48,0,41,0,0,0,126,66,32,1,42,0,0,0,126,2,64,0,153,0,0,0,126,66,32,1,42],[0,0,0,126,33,16,1,42,0,0,0,0,1,66,0,25,0,0,0,126,33,16,1,42,0,4,0,0,0,2,0,29],[0,0,0,126,1,32,0,153,0,0,0,126,33,16,1,42,0,0,0,0,1,50,0,25,0,0,0,126,33,16,1,42],[0,0,0,2,1,0,0,41,1,227,1,172,0,0,4,15,0,2,0,0,0,1,0,29,0,0,0,4,1,0,0,41],[1,227,1,165,0,0,4,15,0,0,0,2,2,0,0,41,0,0,0,126,50,32,1,42,0,0,0,3,2,48,0,41],[0,0,0,126,35,32,1,42,0,4,0,0,0,1,0,29,0,0,0,0,1,2,0,25,1,227,1,165,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,132,1,0,0,65],[0,0,1,228,0,1,4,46,0,0,0,0,2,1,0,75,0,0,0,128,33,16,0,209,0,0,0,126,18,16,0,209],[0,0,0,1,1,16,192,57,0,0,0,123,2,16,0,156,0,0,0,127,1,16,32,65,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,128,49,16,0,209,0,0,0,126,49,16,0,209],[0,0,0,0,1,50,0,25,0,0,0,123,2,16,0,156,0,0,0,127,1,16,32,65,0,0,0,0,0,1,4,45],[0,0,0,124,3,0,0,65,0,0,0,1,4,32,0,140,0,0,1,219,0,0,97,61,0,0,0,126,5,0,0,65],[0,0,0,124,3,0,0,65,0,0,0,0,4,0,0,25,0,0,0,1,6,32,1,144,0,0,1,194,0,0,193,61],[0,0,0,1,6,48,1,144,0,0,0,126,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,188,0,0,97,61,0,0,0,1,6,80,1,144,0,0,1,202,0,0,193,61],[0,0,0,1,6,64,1,144,0,0,0,126,4,64,192,65,0,0,0,2,6,80,1,144,0,0,0,1,5,80,2,112],[0,0,0,1,4,64,2,112,0,0,1,196,0,0,97,61,0,0,0,0,6,37,0,75,0,0,1,209,0,0,161,61],[0,0,0,0,6,52,0,75,0,0,0,126,4,64,64,65,0,0,0,0,4,52,0,73,0,0,0,0,5,37,0,73],[0,0,1,213,0,0,1,61,0,0,0,0,6,67,0,75,0,0,0,126,3,48,64,65,0,0,0,0,3,67,0,73],[0,0,0,0,2,82,0,73,0,0,0,1,6,32,0,140,0,0,1,217,0,0,97,61,0,0,0,1,6,80,0,140],[0,0,1,186,0,0,193,61,0,0,0,1,2,32,0,140,0,0,0,0,3,4,192,25,0,0,0,0,33,19,0,170],[0,0,0,1,2,32,192,57,0,0,0,128,49,16,0,209,0,0,0,126,49,16,0,209,0,0,0,0,1,50,0,25],[0,0,0,123,2,16,0,156,0,0,0,127,1,16,32,65,0,0,0,0,0,1,4,45,0,0,1,227,0,0,4,50],[0,0,1,228,0,1,4,46,0,0,1,229,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],[0,0,0,0,0,0,0,0,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,3,123,40,239,21,61,241,7,226,49,20,4,23,166,169,17,183,164,86,35,38,142,101,153,108,207,226,194,198,0,221]],"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,174,2,64,0,156,0,0,0,12,0,0,33,61,0,0,0,175,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,79,0,0,97,61,0,0,0,0,1,4,0,75],[0,0,0,176,33,64,0,209,0,0,0,1,2,32,192,57,0,0,0,177,81,64,0,209,0,0,0,175,81,16,0,209],[0,0,0,0,1,82,0,25,0,0,0,174,2,16,0,156,0,0,0,178,1,16,32,65,0,0,0,0,82,17,0,170],[0,0,0,1,5,80,192,57,0,0,0,179,114,32,0,209,0,0,0,175,114,32,0,209,0,0,0,0,2,117,0,25],[0,0,0,174,5,32,0,156,0,0,0,178,2,32,32,65,0,0,0,0,117,18,0,170,0,0,0,1,7,112,192,57],[0,0,0,0,2,3,0,75,0,0,0,176,130,48,0,209,0,0,0,1,8,128,192,57,0,0,0,177,146,48,0,209],[0,0,0,175,146,32,0,209,0,0,0,0,2,152,0,25,0,0,0,174,8,32,0,156,0,0,0,178,2,32,32,65],[0,0,0,0,152,34,0,170,0,0,0,1,9,144,192,57,0,0,0,179,165,80,0,209,0,0,0,179,168,128,0,209],[0,0,0,175,165,80,0,209,0,0,0,0,5,167,0,25,0,0,0,175,135,128,0,209,0,0,0,0,7,137,0,25],[0,0,0,174,8,80,0,156,0,0,0,178,5,80,32,65,0,0,0,174,8,112,0,156,0,0,0,178,7,112,32,65],[0,0,0,180,8,0,0,65,0,0,0,181,9,0,0,65,0,0,0,182,10,80,0,156,0,0,0,0,9,8,160,25],[0,0,0,0,5,89,0,25,0,0,0,0,5,87,0,75,0,0,0,65,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,97,61,0,0,0,1,5,96,0,140],[0,0,0,81,0,0,97,61,0,0,0,2,3,96,0,140,0,0,0,85,0,0,193,61,0,0,0,183,3,0,0,65],[2,176,2,84,0,0,4,15,0,0,2,7,0,0,1,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,173,1,0,0,65,0,0,2,177,0,1,4,46,0,0,0,184,1,0,0,65],[0,0,2,177,0,1,4,46,0,0,0,0,0,64,4,53,0,0,0,32,0,48,4,63,0,0,0,184,1,0,0,65],[0,0,2,177,0,1,4,46,0,0,0,183,8,0,0,65,0,0,0,0,3,0,0,25,0,0,0,183,4,0,0,65],[0,0,0,0,14,0,0,25,0,0,0,188,0,0,1,61,0,0,0,0,10,0,0,25,0,0,0,0,152,34,0,170],[0,0,0,179,184,128,0,209,0,0,0,175,184,128,0,209,0,0,0,1,11,176,192,57,0,0,0,0,8,155,0,25],[0,0,0,174,9,128,0,156,0,0,0,178,8,128,32,65,0,0,0,1,9,128,2,16,0,0,0,2,11,128,2,16],[0,0,0,174,9,144,0,156,0,0,0,185,11,176,32,65,0,0,0,0,201,119,0,170,0,0,0,179,217,144,0,209],[0,0,0,175,217,144,0,209,0,0,0,1,13,208,192,57,0,0,0,0,12,205,0,25,0,0,0,0,151,39,0,170],[0,0,0,179,215,112,0,209,0,0,0,175,215,112,0,209,0,0,0,1,13,208,192,57,0,0,0,0,7,157,0,25],[0,0,0,1,9,176,2,16,0,0,0,174,11,176,0,156,0,0,0,185,9,144,32,65,0,0,0,174,11,192,0,156],[0,0,0,178,12,192,32,65,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,179,33,16,0,209,0,0,0,175,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,186,161,192,0,209,0,0,0,1,10,160,192,57],[0,0,0,47,177,192,0,201,0,0,0,175,177,16,0,209,0,0,0,0,1,186,0,25,0,0,0,174,10,16,0,156],[0,0,0,178,1,16,32,65,0,0,0,174,10,32,0,156,0,0,0,178,2,32,32,65,0,0,0,1,10,16,2,16],[0,0,0,187,11,16,0,156,0,0,0,178,10,160,32,65,0,0,0,0,10,26,0,25,0,0,0,174,11,160,0,156],[0,0,0,178,10,160,32,65,0,0,0,0,10,168,0,73,0,0,0,178,11,160,0,156,0,0,0,0,10,11,128,25],[0,0,0,0,178,42,0,170,0,0,0,1,11,176,192,57,0,0,0,0,8,129,0,25,0,0,0,174,12,128,0,156],[0,0,0,178,8,128,32,65,0,0,0,0,168,138,0,170,0,0,0,1,10,160,192,57,0,0,0,174,12,144,0,156],[0,0,0,178,9,144,32,65,0,0,0,0,220,25,0,170,0,0,0,1,13,208,192,57,0,0,0,174,1,112,0,156],[0,0,0,178,7,112,32,65,0,0,0,0,151,121,0,170,0,0,0,1,9,144,192,57,0,0,0,179,33,32,0,209],[0,0,0,175,33,16,0,209,0,0,0,0,2,43,0,25,0,0,0,1,1,32,2,16,0,0,0,174,2,32,0,156],[0,0,0,185,1,16,32,65,0,0,0,179,130,128,0,209,0,0,0,179,139,192,0,209,0,0,0,179,135,112,0,209],[0,0,0,175,130,32,0,209,0,0,0,0,2,138,0,25,0,0,0,175,135,112,0,209,0,0,0,0,8,137,0,25],[0,0,0,174,7,128,0,156,0,0,0,178,8,128,32,65,0,0,0,175,151,176,0,209,0,0,0,0,7,157,0,25],[0,0,0,174,9,16,0,156,0,0,0,178,1,16,32,65,0,0,0,174,9,32,0,156,0,0,0,178,2,32,32,65],[0,0,0,174,9,112,0,156,0,0,0,178,7,112,32,65,0,0,0,0,2,114,0,25,0,0,0,174,7,32,0,156],[0,0,0,178,2,32,32,65,0,0,0,1,7,96,0,140,0,0,0,1,6,96,2,112,0,0,2,5,0,0,161,61],[0,0,0,0,7,8,0,25,0,0,0,1,8,96,1,144,0,0,0,90,0,0,97,61,0,0,0,0,8,3,0,75],[0,0,1,69,0,0,97,61,0,0,0,0,152,49,0,170,0,0,0,1,9,144,192,57,0,0,0,0,186,126,0,170],[0,0,0,1,11,176,192,57,0,2,0,0,0,14,0,29,0,0,0,0,237,116,0,170,0,0,0,1,14,224,192,57],[0,0,0,0,95,50,0,170,0,0,0,1,5,80,192,57,0,0,0,179,202,160,0,209,0,0,0,175,202,160,0,209],[0,0,0,0,12,203,0,25,0,0,0,179,168,128,0,209,0,0,0,174,10,192,0,156,0,0,0,178,12,192,32,65],[0,0,0,175,168,128,0,209,0,0,0,0,11,169,0,25,0,0,0,174,8,176,0,156,0,0,0,178,11,176,32,65],[0,0,0,179,152,208,0,209,0,0,0,175,152,128,0,209,0,0,0,0,10,158,0,25,0,0,0,0,9,203,0,73],[0,0,0,178,8,144,0,156,0,0,0,0,9,8,128,25,0,0,0,174,8,160,0,156,0,0,0,178,10,160,32,65],[0,0,0,179,216,240,0,209,0,0,0,175,216,128,0,209,0,0,0,0,8,213,0,25,0,0,0,174,5,128,0,156],[0,0,0,178,8,128,32,65,0,0,0,0,10,168,0,73,0,0,0,178,5,160,0,156,0,0,0,0,10,5,128,25],[0,0,0,0,5,169,1,160,0,0,1,166,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,2,0,0,240,153,0,174,0,0,0,1,15,240,192,57],[0,0,0,179,227,48,0,209,0,0,0,175,227,48,0,209,0,0,0,0,3,228,0,25,0,0,0,174,4,48,0,156],[0,0,0,178,3,48,32,65,0,0,0,179,84,80,0,209,0,0,0,175,84,64,0,209,0,0,0,0,4,93,0,25],[0,0,0,174,5,64,0,156,0,0,0,178,4,64,32,65,0,0,0,0,237,52,0,170,0,0,0,1,14,224,192,57],[0,0,0,0,4,188,0,25,0,0,0,174,5,64,0,156,0,0,0,178,4,64,32,65,0,0,0,2,5,0,0,41],[0,0,0,179,197,80,0,209,0,0,0,175,197,80,0,209,0,0,0,0,5,207,0,25,0,0,0,174,12,80,0,156],[0,0,0,178,5,80,32,65,0,0,0,0,252,69,0,170,0,0,0,1,15,240,192,57,0,2,0,0,0,7,0,29],[0,0,0,0,123,181,0,170,0,0,0,1,7,112,192,57,0,1,0,0,64,149,0,174,0,0,0,1,4,64,192,57],[0,0,0,179,92,192,0,209,0,0,0,175,197,192,0,209,0,0,0,0,5,207,0,25,0,0,0,174,12,80,0,156],[0,0,0,178,5,80,32,65,0,0,0,179,220,208,0,209,0,0,0,175,220,192,0,209,0,0,0,0,12,222,0,25],[0,0,0,174,13,192,0,156,0,0,0,178,12,192,32,65,0,0,0,0,5,92,0,73,0,0,0,179,203,176,0,209],[0,0,0,178,12,80,0,156,0,0,0,0,5,12,128,25,0,0,0,175,203,176,0,209,0,0,0,0,7,199,0,25],[0,0,0,174,11,112,0,156,0,0,0,178,7,112,32,65,0,0,0,0,7,87,0,73,0,0,0,178,11,112,0,156],[0,0,0,0,7,11,128,25,0,0,0,0,167,167,0,170,0,0,0,1,10,160,192,57,0,0,0,0,149,149,0,170],[0,0,0,1,9,144,192,57,0,0,0,1,11,0,0,41,0,0,0,179,203,176,0,209,0,0,0,175,203,176,0,209],[0,0,0,0,4,196,0,25,0,0,0,174,11,64,0,156,0,0,0,178,4,64,32,65,0,0,0,0,184,132,0,170],[0,0,0,1,11,176,192,57,0,0,0,0,67,52,0,170,0,0,0,1,4,64,192,57,0,0,0,179,199,112,0,209],[0,0,0,175,199,112,0,209,0,0,0,0,7,202,0,25,0,0,0,179,165,80,0,209,0,0,0,179,168,128,0,209],[0,0,0,175,168,128,0,209,0,0,0,0,8,171,0,25,0,0,0,174,10,112,0,156,0,0,0,178,7,112,32,65],[0,0,0,175,165,80,0,209,0,0,0,0,14,169,0,25,0,0,0,174,5,128,0,156,0,0,0,178,8,128,32,65],[0,0,0,179,83,48,0,209,0,0,0,175,83,48,0,209,0,0,0,0,3,84,0,25,0,0,0,174,4,48,0,156],[0,0,0,178,3,48,32,65,0,0,0,0,4,135,0,73,0,0,0,2,7,0,0,41,0,0,0,178,5,64,0,156],[0,0,0,0,4,5,128,25,0,0,0,174,5,224,0,156,0,0,0,178,14,224,32,65,0,0,0,0,10,0,0,25],[0,0,0,91,0,0,1,61,0,0,0,0,67,34,0,170,0,0,0,1,4,64,192,57,0,0,0,179,83,48,0,209],[0,0,0,175,83,48,0,209,0,0,0,0,4,84,0,25,0,0,0,174,3,64,0,156,0,0,0,178,4,64,32,65],[0,0,0,1,3,64,2,16,0,0,0,2,9,64,2,16,0,0,0,174,3,48,0,156,0,0,0,185,9,144,32,65],[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,88,39,0,170,0,0,0,1,5,80,192,57,0,0,0,1,3,144,2,16,0,0,0,174,9,144,0,156],[0,0,0,185,3,48,32,65,0,0,0,179,169,160,0,209,0,0,0,175,169,144,0,209,0,0,0,0,9,171,0,25],[0,0,0,174,10,144,0,156,0,0,0,178,9,144,32,65,0,0,0,0,10,9,0,75,0,0,0,186,186,144,0,209],[0,0,0,1,11,176,192,57,0,0,0,179,202,192,0,209,0,0,0,47,201,144,0,201,0,0,0,175,201,144,0,209],[0,0,0,0,9,203,0,25,0,0,0,175,186,160,0,209,0,0,0,0,10,189,0,25,0,0,0,174,11,144,0,156],[0,0,0,178,9,144,32,65,0,0,0,174,11,160,0,156,0,0,0,178,10,160,32,65,0,0,0,1,11,144,2,16],[0,0,0,187,12,144,0,156,0,0,0,178,11,176,32,65,0,0,0,0,11,155,0,25,0,0,0,174,12,176,0,156],[0,0,0,178,11,176,32,65,0,0,0,0,11,180,0,73,0,0,0,178,12,176,0,156,0,0,0,0,11,12,128,25],[0,0,0,0,202,171,0,170,0,0,0,1,12,192,192,57,0,0,0,0,4,73,0,25,0,0,0,174,13,64,0,156],[0,0,0,178,4,64,32,65,0,0,0,0,180,75,0,170,0,0,0,1,11,176,192,57,0,0,0,174,13,48,0,156],[0,0,0,178,3,48,32,65,0,0,0,0,217,57,0,170,0,0,0,1,13,208,192,57,0,0,0,179,232,128,0,209],[0,0,0,175,232,128,0,209,0,0,0,0,5,229,0,25,0,0,0,174,8,80,0,156,0,0,0,178,5,80,32,65],[0,0,0,0,83,83,0,170,0,0,0,1,5,80,192,57,0,0,0,179,168,160,0,209,0,0,0,175,168,128,0,209],[0,0,0,0,8,172,0,25,0,0,0,1,10,128,2,16,0,0,0,174,8,128,0,156,0,0,0,185,10,160,32,65],[0,0,0,179,132,64,0,209,0,0,0,179,137,144,0,209,0,0,0,179,131,48,0,209,0,0,0,175,132,64,0,209],[0,0,0,0,4,139,0,25,0,0,0,175,131,48,0,209,0,0,0,0,8,133,0,25,0,0,0,174,3,128,0,156],[0,0,0,178,8,128,32,65,0,0,0,175,83,144,0,209,0,0,0,0,3,93,0,25,0,0,0,174,5,160,0,156],[0,0,0,178,10,160,32,65,0,0,0,174,5,64,0,156,0,0,0,178,4,64,32,65,0,0,0,174,5,48,0,156],[0,0,0,178,3,48,32,65,0,0,0,0,3,52,0,25,0,0,0,174,4,48,0,156,0,0,0,178,3,48,32,65],[0,0,0,0,14,1,0,25,0,0,0,0,1,10,0,25,0,0,0,0,4,2,0,25,0,0,0,0,2,3,0,25],[0,0,0,0,3,7,0,25,0,0,0,185,0,0,1,61,0,0,0,0,33,68,0,170,0,0,0,1,2,32,192,57],[0,0,0,179,81,16,0,209,0,0,0,175,81,16,0,209,0,0,0,0,2,82,0,25,0,0,0,174,1,32,0,156],[0,0,0,178,2,32,32,65,0,0,0,1,1,32,2,16,0,0,0,2,5,32,2,16,0,0,0,174,1,16,0,156],[0,0,0,185,5,80,32,65,0,0,0,0,135,51,0,170,0,0,0,1,8,128,192,57,0,0,0,2,169,64,0,186],[0,0,0,1,10,160,192,57,0,0,0,0,52,52,0,170,0,0,0,1,3,48,192,57,0,0,0,1,1,80,2,16],[0,0,0,174,5,80,0,156,0,0,0,185,1,16,32,65,0,0,0,179,117,112,0,209,0,0,0,175,117,80,0,209],[0,0,0,0,5,120,0,25,0,0,0,174,7,80,0,156,0,0,0,178,5,80,32,65,0,0,0,0,7,5,0,75],[0,0,0,186,135,80,0,209,0,0,0,1,8,128,192,57,0,0,0,179,151,144,0,209,0,0,0,47,149,80,0,201],[0,0,0,175,149,80,0,209,0,0,0,0,5,152,0,25,0,0,0,175,135,112,0,209,0,0,0,0,7,138,0,25],[0,0,0,174,8,80,0,156,0,0,0,178,5,80,32,65,0,0,0,174,8,112,0,156,0,0,0,178,7,112,32,65],[0,0,0,1,8,80,2,16,0,0,0,187,9,80,0,156,0,0,0,178,8,128,32,65,0,0,0,0,8,88,0,25],[0,0,0,174,9,128,0,156,0,0,0,178,8,128,32,65,0,0,0,0,8,130,0,73,0,0,0,178,9,128,0,156],[0,0,0,0,8,9,128,25,0,0,0,0,151,120,0,170,0,0,0,1,9,144,192,57,0,0,0,0,2,37,0,25],[0,0,0,174,10,32,0,156,0,0,0,178,2,32,32,65,0,0,0,0,130,40,0,170,0,0,0,1,8,128,192,57],[0,0,0,174,10,16,0,156,0,0,0,178,1,16,32,65,0,0,0,0,165,81,0,170,0,0,0,1,10,160,192,57],[0,0,0,179,180,64,0,209,0,0,0,175,180,64,0,209,0,0,0,0,3,179,0,25,0,0,0,174,4,48,0,156],[0,0,0,178,3,48,32,65,0,0,0,0,49,49,0,170,0,0,0,1,3,48,192,57,0,0,0,179,116,112,0,209],[0,0,0,175,116,64,0,209,0,0,0,0,4,121,0,25,0,0,0,1,14,64,2,16,0,0,0,174,4,64,0,156],[0,0,0,185,14,224,32,65,0,0,0,179,66,32,0,209,0,0,0,179,84,80,0,209,0,0,0,179,81,16,0,209],[0,0,0,175,82,32,0,209,0,0,0,0,2,88,0,25,0,0,0,175,81,16,0,209,0,0,0,0,8,83,0,25],[0,0,0,174,1,128,0,156,0,0,0,178,8,128,32,65,0,0,0,175,49,64,0,209,0,0,0,0,1,58,0,25],[0,0,0,174,3,224,0,156,0,0,0,178,14,224,32,65,0,0,0,174,3,32,0,156,0,0,0,178,2,32,32,65],[0,0,0,174,3,16,0,156,0,0,0,178,1,16,32,65,0,0,0,0,4,18,0,25,0,0,0,174,1,64,0,156],[0,0,0,178,4,64,32,65,0,0,0,0,1,14,0,25,0,0,0,0,2,4,0,25,0,0,0,0,3,8,0,25],[0,0,0,185,0,0,1,61,0,0,0,0,1,14,0,25,0,0,0,0,2,4,0,25,2,176,2,25,0,0,4,15],[0,2,0,0,0,2,0,29,2,176,2,18,0,0,4,15,0,1,0,0,0,1,0,29,0,0,0,2,1,0,0,41],[2,176,2,18,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,184,1,0,0,65,0,0,2,177,0,1,4,46,0,0,0,0,2,1,0,75,0,0,0,179,33,16,0,209],[0,0,0,175,18,16,0,209,0,0,0,1,1,16,192,57,0,0,0,174,2,16,0,156,0,0,0,178,1,16,32,65],[0,0,0,0,0,1,4,45,0,0,0,0,4,3,0,75,0,0,0,0,4,3,0,25,0,0,2,81,0,0,97,61],[0,0,0,176,4,0,0,65,0,0,0,1,5,48,0,140,0,0,2,67,0,0,97,61,0,0,0,175,6,0,0,65],[0,0,0,176,4,0,0,65,0,0,0,0,5,0,0,25,0,0,0,1,7,48,1,144,0,0,2,42,0,0,193,61],[0,0,0,1,7,64,1,144,0,0,0,175,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,36,0,0,97,61,0,0,0,1,7,96,1,144,0,0,2,50,0,0,193,61],[0,0,0,1,7,80,1,144,0,0,0,175,5,80,192,65,0,0,0,2,7,96,1,144,0,0,0,1,6,96,2,112],[0,0,0,1,5,80,2,112,0,0,2,44,0,0,97,61,0,0,0,0,7,54,0,75,0,0,2,57,0,0,161,61],[0,0,0,0,7,69,0,75,0,0,0,175,5,80,64,65,0,0,0,0,5,69,0,73,0,0,0,0,6,54,0,73],[0,0,2,61,0,0,1,61,0,0,0,0,7,84,0,75,0,0,0,175,4,64,64,65,0,0,0,0,4,84,0,73],[0,0,0,0,3,99,0,73,0,0,0,1,7,48,0,140,0,0,2,65,0,0,97,61,0,0,0,1,7,96,0,140],[0,0,2,34,0,0,193,61,0,0,0,1,3,48,0,140,0,0,0,0,4,5,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,179,82,32,0,209],[0,0,0,175,82,32,0,209,0,0,0,0,4,84,0,25,0,0,0,174,2,64,0,156,0,0,0,178,4,64,32,65],[0,0,0,179,33,16,0,209,0,0,0,175,33,16,0,209,0,0,0,0,3,35,0,25,0,0,0,174,1,48,0,156],[0,0,0,178,3,48,32,65,0,0,0,0,1,3,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,179,100,64,0,209,0,0,0,175,100,64,0,209],[0,0,0,0,4,101,0,25,0,0,0,174,5,64,0,156,0,0,0,178,4,64,32,65,0,0,0,1,5,64,2,16],[0,0,0,2,6,64,2,16,0,0,0,174,5,80,0,156,0,0,0,185,6,96,32,65,0,0,0,0,117,51,0,170],[0,0,0,1,7,112,192,57,0,0,0,0,152,18,0,170,0,0,0,1,9,144,192,57,0,0,0,0,35,35,0,170],[0,0,0,1,2,32,192,57,0,0,0,1,1,96,2,16,0,0,0,174,6,96,0,156,0,0,0,185,1,16,32,65],[0,0,0,179,101,80,0,209,0,0,0,175,101,80,0,209,0,0,0,0,5,103,0,25,0,0,0,174,6,80,0,156],[0,0,0,178,5,80,32,65,0,0,0,0,6,5,0,75,0,0,0,186,118,80,0,209,0,0,0,1,7,112,192,57],[0,0,0,179,134,128,0,209,0,0,0,47,133,80,0,201,0,0,0,175,133,80,0,209,0,0,0,0,5,135,0,25],[0,0,0,175,118,96,0,209,0,0,0,0,6,121,0,25,0,0,0,174,7,80,0,156,0,0,0,178,5,80,32,65],[0,0,0,174,7,96,0,156,0,0,0,178,6,96,32,65,0,0,0,1,7,80,2,16,0,0,0,187,8,80,0,156],[0,0,0,178,7,112,32,65,0,0,0,0,7,87,0,25,0,0,0,174,8,112,0,156,0,0,0,178,7,112,32,65],[0,0,0,0,7,116,0,73,0,0,0,178,8,112,0,156,0,0,0,0,7,8,128,25,0,0,0,0,134,103,0,170],[0,0,0,1,8,128,192,57,0,0,0,0,4,69,0,25,0,0,0,174,9,64,0,156,0,0,0,178,4,64,32,65],[0,0,0,0,116,71,0,170,0,0,0,1,7,112,192,57,0,0,0,174,9,16,0,156,0,0,0,178,1,16,32,65],[0,0,0,0,149,21,0,170,0,0,0,1,9,144,192,57,0,0,0,179,163,48,0,209,0,0,0,175,163,48,0,209],[0,0,0,0,2,162,0,25,0,0,0,174,3,32,0,156,0,0,0,178,2,32,32,65,0,0,0,0,50,33,0,170],[0,0,0,1,3,48,192,57,0,0,0,179,97,96,0,209,0,0,0,175,97,16,0,209,0,0,0,0,6,104,0,25],[0,0,0,1,1,96,2,16,0,0,0,174,6,96,0,156,0,0,0,185,1,16,32,65,0,0,0,179,100,64,0,209],[0,0,0,179,101,80,0,209,0,0,0,179,98,32,0,209,0,0,0,175,100,64,0,209,0,0,0,0,4,103,0,25],[0,0,0,175,98,32,0,209,0,0,0,0,3,99,0,25,0,0,0,174,2,48,0,156,0,0,0,178,3,48,32,65],[0,0,0,175,82,80,0,209,0,0,0,0,2,89,0,25,0,0,0,174,5,16,0,156,0,0,0,178,1,16,32,65],[0,0,0,174,5,64,0,156,0,0,0,178,4,64,32,65,0,0,0,174,5,32,0,156,0,0,0,178,2,32,32,65],[0,0,0,0,2,36,0,25,0,0,0,174,4,32,0,156,0,0,0,178,2,32,32,65,0,0,0,0,0,1,4,45],[0,0,2,176,0,0,4,50,0,0,2,177,0,1,4,46,0,0,2,178,0,1,4,48,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],[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],[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],[23,60,161,90,105,175,158,70,46,186,112,111,230,169,254,53,96,109,166,223,91,52,118,50,129,165,209,164,255,39,6,111]],"0x0000000000000000000000000000000000008001":[[0,0,0,1,1,32,1,144,0,0,0,4,0,0,193,61,0,0,0,0,1,0,0,25,0,0,0,17,0,1,4,46],[0,0,0,128,1,0,0,57,0,0,0,64,0,16,4,63,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75],[0,0,0,14,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,5,1,0,0,65,0,0,0,17,0,1,4,46,0,0,0,0,1,0,0,25,0,0,0,18,0,1,4,48],[0,0,0,16,0,0,4,50,0,0,0,17,0,1,4,46,0,0,0,18,0,1,4,48,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],[175,66,242,103,141,4,1,110,33,198,129,151,108,128,65,227,125,97,137,230,206,140,232,80,64,84,68,121,2,83,255,78]],"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],[82,196,187,126,10,190,153,114,73,167,8,60,46,101,7,88,142,193,49,235,112,99,230,237,86,241,15,160,122,8,120,133]],"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],[238,152,20,73,192,75,47,189,183,87,11,76,164,100,204,154,164,103,88,254,46,21,212,154,172,49,16,103,0,70,176,79]],"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],[223,62,89,255,156,144,170,174,13,205,165,30,150,164,78,216,159,84,11,25,213,242,218,240,40,96,109,57,50,104,146,64]],"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],[81,102,191,199,126,113,54,183,221,66,149,62,165,26,231,44,138,209,202,232,57,191,9,202,204,131,225,161,39,117,207,250]],"0x0000000000000000000000000000000000008006":[[0,18,0,0,0,0,0,2,0,11,0,0,0,0,0,2,0,0,0,0,3,2,0,25,0,0,0,0,2,1,0,25],[0,0,0,96,4,32,2,112,0,0,4,194,2,64,1,151,0,1,0,0,0,33,3,85,0,2,0,0,0,33,3,85],[0,3,0,0,0,33,3,85,0,4,0,0,0,33,3,85,0,5,0,0,0,33,3,85,0,6,0,0,0,33,3,85],[0,7,0,0,0,33,3,85,0,8,0,0,0,33,3,85,0,9,0,0,0,33,3,85,0,10,0,0,0,33,3,85],[0,11,0,0,0,33,3,85,0,12,0,0,0,33,3,85,0,13,0,0,0,33,3,85,0,14,0,0,0,33,3,85],[0,15,0,0,0,33,3,85,0,16,0,0,0,33,3,85,0,17,0,0,0,1,3,85,0,0,4,194,0,64,1,157],[0,0,0,128,4,0,0,57,0,0,0,64,0,64,4,63,0,0,0,1,4,48,1,144,0,0,0,99,0,0,193,61],[0,0,0,4,4,32,0,140,0,0,3,41,0,0,65,61,0,0,0,0,4,1,4,59,0,0,0,224,4,64,2,112],[0,0,4,196,5,64,0,156,0,0,0,107,0,0,33,61,0,0,4,204,5,64,0,156,0,0,0,159,0,0,33,61],[0,0,4,208,5,64,0,156,0,0,1,52,0,0,97,61,0,0,4,209,5,64,0,156,0,0,2,72,0,0,97,61],[0,0,4,210,4,64,0,156,0,0,3,41,0,0,193,61,0,0,0,0,4,0,4,22,0,0,0,0,4,4,0,75],[0,0,3,41,0,0,193,61,0,0,0,4,2,32,0,138,0,0,0,32,2,32,0,140,0,0,3,41,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,3,41,0,0,33,61,0,0,0,0,2,0,4,17,0,0,0,2,1,48,1,144,0,0,0,58,0,0,193,61],[0,0,255,255,1,32,0,140,0,0,2,60,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,194,3,0,0,65,0,0,0,0,1,0,4,20,0,0,4,194,2,16,0,156],[0,0,0,0,1,3,128,25,0,0,0,192,1,16,2,16,0,0,4,219,1,16,1,199,0,0,128,16,2,0,0,57],[19,2,18,242,0,0,4,15,0,0,0,1,2,32,1,144,0,0,3,41,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,194,3,32,0,156,0,0,4,194,4,0,0,65,0,0,0,0,2,4,128,25],[0,0,4,194,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,4,253,1,16,1,199,0,0,128,13,2,0,0,57,0,0,0,2,3,0,0,57],[0,0,5,14,4,0,0,65,0,0,0,10,5,0,0,41,19,2,18,237,0,0,4,15,0,0,0,1,1,32,1,144],[0,0,3,41,0,0,97,61,0,0,0,0,1,0,0,25,0,0,19,3,0,1,4,46,0,0,0,0,1,0,4,22],[0,0,0,0,1,1,0,75,0,0,3,41,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,195,1,0,0,65,0,0,19,3,0,1,4,46,0,0,4,197,5,64,0,156],[0,0,0,195,0,0,33,61,0,0,4,201,5,64,0,156,0,0,1,75,0,0,97,61,0,0,4,202,3,64,0,156],[0,0,2,185,0,0,97,61,0,0,4,203,3,64,0,156,0,0,3,41,0,0,193,61,0,0,0,4,3,32,0,138],[0,0,0,32,3,48,0,140,0,0,3,41,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,4,211,3,48,0,156,0,0,3,41,0,0,33,61,0,0,0,5,3,0,0,41],[0,0,0,35,3,48,0,57,0,0,4,212,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,4,212,3,48,1,151,0,0,0,0,6,3,0,75,0,0,0,0,4,0,128,25],[0,0,4,212,3,48,0,156,0,0,0,0,4,5,192,25,0,0,0,0,3,4,0,75,0,0,3,41,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,4,211,3,208,0,156,0,0,3,41,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,3,41,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,3,183,0,0,193,61,0,0,0,0,4,13,0,75,0,0,3,242,0,0,193,61,0,0,0,0,1,0,4,22],[0,0,0,0,1,1,0,75,0,0,0,97,0,0,97,61,0,0,5,38,0,0,1,61,0,0,4,205,5,64,0,156],[0,0,1,182,0,0,97,61,0,0,4,206,3,64,0,156,0,0,2,237,0,0,97,61,0,0,4,207,3,64,0,156],[0,0,3,41,0,0,193,61,0,0,0,0,3,0,4,22,0,0,0,0,3,3,0,75,0,0,3,41,0,0,193,61],[0,0,0,4,3,32,0,138,0,0,0,128,3,48,0,140,0,0,3,41,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,4,213,3,48,0,156,0,0,3,41,0,0,33,61],[0,0,0,100,1,16,3,112,0,0,0,0,1,1,4,59,0,0,4,211,3,16,0,156,0,0,3,41,0,0,33,61],[0,0,0,4,1,16,0,57,19,2,9,95,0,0,4,15,0,0,0,17,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,2,9,121,0,0,4,15,0,0,1,66,0,0,1,61,0,0,4,198,5,64,0,156],[0,0,2,44,0,0,97,61,0,0,4,199,5,64,0,156,0,0,3,38,0,0,97,61,0,0,4,200,3,64,0,156],[0,0,3,41,0,0,193,61,0,0,0,4,3,32,0,138,0,0,0,64,3,48,0,140,0,0,3,41,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,4,211,3,48,0,156],[0,0,3,41,0,0,33,61,0,0,0,11,4,32,0,106,0,0,4,212,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,10,0,0,0,4,0,29,0,0,4,212,4,64,1,151],[0,0,0,0,5,4,0,75,0,0,0,0,2,0,160,25,0,0,4,212,4,64,0,156,0,0,0,0,2,3,192,25],[0,0,0,0,2,2,0,75,0,0,3,41,0,0,193,61,0,0,0,36,2,16,3,112,0,0,0,0,2,2,4,59],[0,9,0,0,0,2,0,29,0,0,4,213,2,32,0,156,0,0,3,41,0,0,33,61,0,0,0,0,3,0,4,16],[0,0,0,0,2,0,4,17,0,0,0,0,2,50,0,75,0,0,3,173,0,0,193,61,0,6,0,0,0,3,0,29],[0,0,0,11,2,0,0,41,0,8,0,4,0,32,0,61,0,0,0,8,1,16,3,96,0,0,0,0,2,1,4,59],[0,0,4,217,1,0,0,65,0,0,0,128,0,16,4,63,0,7,0,0,0,2,0,29,0,0,0,132,0,32,4,63],[0,0,4,194,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,192,1,32,2,16,0,0,4,218,1,16,1,199,0,0,128,4,2,0,0,57,19,2,18,242,0,0,4,15],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,4,194,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,3,213,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,3,41,0,0,65,61,0,0,0,128,2,0,4,61,0,0,0,0,2,2,0,75],[0,0,5,177,0,0,193,61,0,0,4,214,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,4,245,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,4,224,1,16,1,199,0,0,19,4,0,1,4,48],[0,0,0,0,3,0,4,22,0,0,0,0,3,3,0,75,0,0,3,41,0,0,193,61,0,0,0,4,2,32,0,138],[0,0,0,64,2,32,0,140,0,0,3,41,0,0,65,61,0,0,0,4,2,16,3,112,0,0,0,0,3,2,4,59],[0,0,4,213,2,48,0,156,0,0,3,41,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,2,10,68,0,0,4,15,0,0,4,213,1,16,1,151,0,0,0,64,2,0,4,61],[0,0,0,0,0,18,4,53,0,0,4,194,1,0,0,65,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,64,1,32,2,16,0,0,4,248,1,16,1,199,0,0,19,3,0,1,4,46,0,0,0,4,4,32,0,138],[0,0,0,96,4,64,0,140,0,0,3,41,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,4,211,5,64,0,156],[0,0,3,41,0,0,33,61,0,0,0,35,5,64,0,57,0,0,4,212,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,4,212,5,80,1,151,0,0,0,0,8,5,0,75],[0,0,0,0,6,0,128,25,0,0,4,212,5,80,0,156,0,0,0,0,6,7,192,25,0,0,0,0,5,6,0,75],[0,0,3,41,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,4,211,1,16,0,156,0,0,3,41,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,3,41,0,0,33,61],[0,0,0,2,1,48,1,144,0,0,0,1,1,16,2,112,0,0,1,115,0,0,193,61,0,0,0,0,1,0,4,17],[0,0,4,246,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,2,60,0,0,97,61,0,0,4,247,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,194,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,4,218,1,16,1,199],[0,0,128,3,2,0,0,57,19,2,18,237,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,0,4,194,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,148,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,140,0,0,65,61],[0,0,0,0,7,5,0,75,0,0,1,163,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,4,236,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,3,41,0,0,65,61,0,0,0,128,2,0,4,61],[0,0,0,8,1,0,0,41,19,2,10,68,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,2,10,112,0,0,4,15],[0,0,0,8,1,0,0,41,0,0,1,66,0,0,1,61,0,0,0,4,4,32,0,138,0,0,0,128,4,64,0,140],[0,0,3,41,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,4,211,5,64,0,156,0,0,3,41,0,0,33,61,0,0,0,35,5,64,0,57],[0,0,4,212,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,4,212,5,80,1,151,0,0,0,0,8,5,0,75,0,0,0,0,6,0,128,25,0,0,4,212,5,80,0,156],[0,0,0,0,6,7,192,25,0,0,0,0,5,6,0,75,0,0,3,41,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,4,211,5,80,0,156],[0,0,3,41,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,3,41,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,3,41,0,0,33,61,0,0,0,2,1,48,1,144],[0,0,0,1,1,16,2,112,0,0,1,230,0,0,193,61,0,0,0,0,1,0,4,17,0,0,4,246,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,2,60,0,0,97,61],[0,0,4,247,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,194,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,4,218,1,16,1,199,0,0,128,3,2,0,0,57],[19,2,18,237,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,4,194,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,7,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,255,0,0,65,61,0,0,0,0,7,5,0,75],[0,0,2,22,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,113,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,3,41,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,2,9,121,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,2,14,171,0,0,4,15,0,0,2,183,0,0,1,61],[0,0,0,0,4,0,4,22,0,0,0,0,4,4,0,75,0,0,3,41,0,0,193,61,0,0,0,4,2,32,0,138],[0,0,0,32,2,32,0,140,0,0,3,41,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,3,41,0,0,33,61,0,0,0,0,2,0,4,17],[0,0,0,2,1,48,1,144,0,0,3,153,0,0,193,61,0,0,255,255,1,32,0,140,0,0,3,153,0,0,161,61],[0,0,4,214,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,15,1,0,0,65,0,0,0,196,0,16,4,63],[0,0,5,16,1,0,0,65,0,0,0,228,0,16,4,63,0,0,5,17,1,0,0,65,0,0,19,4,0,1,4,48],[0,0,0,4,4,32,0,138,0,0,0,96,4,64,0,140,0,0,3,41,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,4,211,5,64,0,156],[0,0,3,41,0,0,33,61,0,0,0,35,5,64,0,57,0,0,4,212,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,4,212,5,80,1,151,0,0,0,0,8,5,0,75],[0,0,0,0,6,0,128,25,0,0,4,212,5,80,0,156,0,0,0,0,6,7,192,25,0,0,0,0,5,6,0,75],[0,0,3,41,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,4,211,1,16,0,156,0,0,3,41,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,3,41,0,0,33,61],[0,0,0,2,1,48,1,144,0,0,0,1,1,16,2,112,0,0,2,115,0,0,193,61,0,0,0,0,1,0,4,17],[0,0,4,246,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,2,60,0,0,97,61,0,0,4,247,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,194,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,4,218,1,16,1,199],[0,0,128,3,2,0,0,57,19,2,18,237,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,0,4,194,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,148,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,140,0,0,65,61],[0,0,0,0,7,5,0,75,0,0,2,163,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,9,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,3,41,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,2,9,121,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,2,10,112,0,0,4,15,0,0,0,10,1,0,0,41],[0,0,1,66,0,0,1,61,0,0,0,0,3,0,4,22,0,0,0,0,3,3,0,75,0,0,3,41,0,0,193,61],[0,0,0,4,2,32,0,138,0,0,0,32,2,32,0,140,0,0,3,41,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,4,213,1,16,0,156,0,0,3,41,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,194,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,4,219,1,16,1,199,0,0,128,16,2,0,0,57,19,2,18,242,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,3,41,0,0,97,61,0,0,0,64,2,0,4,61,0,0,4,236,3,32,0,156,0,0,3,169,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,3,207,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,3,207,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,3,207,0,0,33,61],[0,0,0,1,1,0,0,57,0,0,0,0,2,2,0,75,0,0,1,67,0,0,193,61,0,0,0,11,1,0,0,41],[0,0,5,10,1,16,1,152,0,0,0,0,1,0,0,25,0,0,6,108,0,0,193,61,0,0,0,1,1,16,1,143],[0,0,1,67,0,0,1,61,0,0,0,0,3,0,4,22,0,0,0,0,3,3,0,75,0,0,3,41,0,0,193,61],[0,0,0,4,2,32,0,138,0,0,0,32,2,32,0,140,0,0,3,41,0,0,65,61,0,0,0,4,1,16,3,112],[0,0,0,0,1,1,4,59,0,0,4,213,2,16,0,156,0,0,3,41,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,194,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,4,219,1,16,1,199,0,0,128,16,2,0,0,57],[19,2,18,242,0,0,4,15,0,0,0,1,2,32,1,144,0,0,3,41,0,0,97,61,0,0,0,64,2,0,4,61],[0,0,5,12,3,32,0,156,0,0,3,169,0,0,129,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,3,1,4,26,0,0,0,255,1,48,1,143,0,0,0,2,4,16,0,140],[0,0,3,207,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,3,207,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,3,207,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,3,207,0,0,33,61,0,0,0,0,0,19,4,53],[0,0,4,194,1,0,0,65,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,64,1,32,2,16],[0,0,5,13,1,16,1,199,0,0,19,3,0,1,4,46,0,0,0,4,4,32,0,138,0,0,0,128,4,64,0,140],[0,0,3,43,0,0,129,61,0,0,0,0,1,0,0,25,0,0,19,4,0,1,4,48,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,4,211,5,64,0,156,0,0,3,41,0,0,33,61,0,0,0,35,5,64,0,57,0,0,4,212,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,4,212,5,80,1,151],[0,0,0,0,8,5,0,75,0,0,0,0,6,0,128,25,0,0,4,212,5,80,0,156,0,0,0,0,6,7,192,25],[0,0,0,0,5,6,0,75,0,0,3,41,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,4,211,5,80,0,156,0,0,3,41,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,3,41,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,3,41,0,0,33,61,0,0,0,2,1,48,1,144,0,0,0,1,1,16,2,112],[0,0,3,85,0,0,193,61,0,0,0,0,1,0,4,17,0,0,4,246,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,2,60,0,0,97,61,0,0,4,247,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,194,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,192,1,32,2,16,0,0,4,218,1,16,1,199,0,0,128,3,2,0,0,57,19,2,18,237,0,0,4,15],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,4,194,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,118,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,110,0,0,65,61,0,0,0,0,7,5,0,75,0,0,3,133,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,142,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,3,41,0,0,65,61,0,0,0,128,2,0,4,61,0,0,0,7,1,0,0,41,19,2,10,68,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,2,14,171,0,0,4,15,0,0,0,7,1,0,0,41],[0,0,1,66,0,0,1,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,194,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,192,1,32,2,16,0,0,4,219,1,16,1,199,0,0,128,16,2,0,0,57,19,2,18,242,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,3,41,0,0,97,61,0,0,0,64,4,0,4,61,0,0,4,236,2,64,0,156],[0,0,3,195,0,0,161,61,0,0,5,6,1,0,0,65,0,0,0,0,0,16,4,53,0,0,0,65,1,0,0,57],[0,0,3,210,0,0,1,61,0,0,4,214,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,4,215,1,0,0,65],[0,0,0,196,0,16,4,63,0,0,4,216,1,0,0,65,0,0,19,4,0,1,4,48,0,0,4,214,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,4,255,1,0,0,65,0,0,0,196,0,16,4,63,0,0,5,0,1,0,0,65],[0,0,0,228,0,16,4,63,0,0,5,1,1,0,0,65,0,0,5,49,0,0,1,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,3,207,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,5,52,0,0,161,61,0,0,5,6,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,4,235,1,0,0,65],[0,0,19,4,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,226,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,218,0,0,65,61,0,0,0,0,6,4,0,75,0,0,3,241,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,170,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,4,212,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,4,212,10,64,1,151,0,0,4,212,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,4,212,10,160,0,156,0,0,0,0,12,9,192,25],[0,0,0,0,9,12,0,75,0,0,3,41,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,7,58,0,0,193,61,0,0,0,1,7,112,0,57],[0,0,0,0,8,215,0,75,0,0,3,249,0,0,65,61,0,0,0,0,1,0,4,22,0,0,0,0,1,81,0,75],[0,0,5,38,0,0,193,61,0,4,4,213,0,48,1,155,0,0,4,212,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,17,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,4,212,3,48,1,151,0,0,4,212,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,4,212,3,48,0,156],[0,0,0,0,6,4,192,25,0,0,0,0,3,6,0,75,0,0,3,41,0,0,193,61,0,11,0,0,0,9,0,29],[0,0,0,0,2,226,0,25,0,10,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,4,221,1,0,0,65,0,0,0,0,0,16,4,57],[0,0,0,0,1,0,4,16,0,9,0,0,0,1,0,29,0,0,0,4,0,16,4,67,0,0,0,0,1,0,4,20],[0,0,4,194,2,16,0,156,0,0,4,194,1,0,128,65,0,0,0,192,1,16,2,16,0,0,4,222,1,16,1,199],[0,0,128,2,2,0,0,57,19,2,18,242,0,0,4,15,0,0,0,1,2,32,1,144,0,0,9,3,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,4,212,8,0,0,65,0,0,0,11,9,0,0,41,0,0,0,10,11,0,0,41,0,0,3,41,0,0,97,61],[0,0,0,64,10,0,4,61,0,0,5,3,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,17,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,4,213,4,48,0,156,0,0,3,41,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,3,41,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,4,212,4,64,1,151,0,0,4,212,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,4,212,4,64,0,156,0,0,0,0,7,5,192,25,0,0,0,0,4,7,0,75,0,0,3,41,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,4,211,5,32,0,156],[0,0,3,41,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,4,212,3,48,1,151,0,0,4,212,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,4,212,3,48,0,156,0,0,0,0,7,5,192,25,0,0,0,0,3,7,0,75,0,0,3,41,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,4,170,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,4,162,0,0,65,61,0,0,0,31,5,32,1,144,0,0,4,185,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,9,4,0,0,41],[0,0,0,4,3,64,0,140,0,0,4,229,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,4,3,32,0,156,0,0,5,4,2,0,128,65,0,0,4,194,3,160,0,156],[0,0,4,194,5,0,0,65,0,10,0,0,0,10,0,29,0,0,0,0,3,5,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,194,3,16,0,156],[0,0,0,0,1,5,128,25,0,0,0,192,1,16,2,16,0,0,0,0,1,18,1,159,0,0,5,5,1,16,0,65],[0,0,0,6,3,0,0,41,0,0,0,0,2,3,0,75,0,0,4,220,0,0,97,61,0,0,4,243,1,16,1,199],[0,0,128,9,2,0,0,57,0,0,0,0,5,0,0,25,19,2,18,237,0,0,4,15,0,0,4,222,0,0,1,61],[0,0,0,0,2,4,0,25,19,2,18,237,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,4,212,8,0,0,65,0,0,0,11,9,0,0,41,0,0,0,10,10,0,0,41],[0,0,6,211,0,0,97,61,0,0,4,211,1,160,0,156,0,0,3,169,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,30,0,0,65,61,0,0,0,97,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,249,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,241,0,0,65,61,0,0,0,0,6,4,0,75,0,0,5,8,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,170,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,22,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,14,0,0,65,61,0,0,0,0,6,4,0,75,0,0,5,170,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,170,0,0,1,61,0,0,4,214,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,7,1,0,0,65,0,0,0,196,0,16,4,63,0,0,5,8,1,0,0,65,0,0,0,228,0,16,4,63],[0,0,5,9,1,0,0,65,0,0,1,4,0,16,4,63,0,0,5,2,1,0,0,65,0,0,19,4,0,1,4,48],[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,84,0,0,193,61,0,0,0,0,1,1,0,75,0,0,6,84,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,4,213,1,16,1,151,0,0,0,0,0,16,4,53,0,0,0,32,0,0,4,63,0,0,4,194,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,4,219,1,16,1,199,0,0,128,16,2,0,0,57,19,2,18,242,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,3,41,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,3,207,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,3,207,0,0,33,61,0,0,4,220,2,32,1,151],[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,194,2,0,0,65],[0,0,0,0,3,0,4,20,0,0,4,194,4,48,0,156,0,0,0,0,3,2,128,25,0,0,4,194,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,4,253,1,16,1,199,0,0,128,13,2,0,0,57,0,0,0,2,3,0,0,57,0,0,4,254,4,0,0,65],[0,0,0,93,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,126,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,118,0,0,65,61,0,0,0,0,6,4,0,75,0,0,5,141,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,170,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,155,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,147,0,0,65,61,0,0,0,0,6,4,0,75],[0,0,5,170,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,194,1,0,0,65,0,0,4,194,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,4,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,8,1,0,0,41,0,0,0,32,1,16,0,57,0,3,0,0,0,1,0,29,0,0,0,17,1,16,3,103],[0,0,0,0,1,1,4,59,0,8,0,0,0,1,0,29,0,0,4,213,1,16,0,156,0,0,3,41,0,0,33,61],[0,0,0,8,1,0,0,41,0,0,0,0,0,16,4,53,0,0,0,32,0,0,4,63,0,0,4,194,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,4,219,1,16,1,199,0,0,128,16,2,0,0,57,19,2,18,242,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,3,41,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,3,207,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,3,207,0,0,33,61,0,0,4,220,2,32,1,151],[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,17,1,0,3,103,0,0,0,0,3,33,3,79],[0,0,0,0,3,3,4,59,0,0,0,10,4,0,0,41,0,0,0,35,4,64,0,138,0,0,4,212,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,4,212,4,64,1,151],[0,0,4,212,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,4,212,4,64,0,156,0,0,0,0,5,6,192,25,0,0,0,0,4,5,0,75,0,0,3,41,0,0,193,61],[0,0,0,11,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,11,0,0,0,4,0,29,0,0,4,211,4,64,0,156,0,0,3,41,0,0,33,61,0,0,0,11,4,0,0,41],[0,0,0,0,4,64,0,121,0,0,0,36,6,48,0,57,0,0,4,212,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,4,212,4,64,1,151,0,10,0,0,0,6,0,29],[0,0,4,212,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,4,212,4,64,0,156,0,0,0,0,3,5,192,25,0,0,0,0,3,3,0,75,0,0,3,41,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,3,41,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,6,243,0,0,193,61],[0,0,0,5,1,0,0,107,0,0,7,62,0,0,193,61,0,0,4,221,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,194,1,0,0,65,0,0,0,0,3,0,4,20],[0,0,4,194,4,48,0,156,0,0,0,0,3,1,128,25,0,0,0,192,1,48,2,16,0,0,4,222,1,16,1,199],[19,2,18,242,0,0,4,15,0,0,0,1,2,32,1,144,0,0,9,3,0,0,97,61,0,0,0,0,1,1,4,59],[0,0,0,0,1,1,0,75,0,0,3,41,0,0,97,61,0,0,0,64,4,0,4,61,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,4,242,1,0,0,65,0,0,0,0,0,20,4,53],[0,0,0,4,1,64,0,57,0,0,0,8,2,0,0,41,0,0,0,0,0,33,4,53,0,0,4,194,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25,0,0,4,194,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,4,228,1,16,1,199,0,0,128,2,2,0,0,57,19,2,18,237,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,7,166,0,0,97,61,0,0,0,11,1,0,0,41,0,0,4,211,1,16,0,156],[0,0,3,169,0,0,33,61,0,0,0,11,1,0,0,41,0,0,0,64,0,16,4,63,0,0,4,194,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,4,243,1,16,1,199,0,0,128,13,2,0,0,57,0,0,0,4,3,0,0,57,0,0,4,244,4,0,0,65],[0,0,0,9,5,0,0,41,0,0,0,7,6,0,0,41,0,0,0,8,7,0,0,41,0,0,0,94,0,0,1,61],[0,0,0,64,1,0,4,61,0,0,0,132,2,16,0,57,0,0,4,249,3,0,0,65,0,0,0,0,0,50,4,53],[0,0,0,100,2,16,0,57,0,0,4,250,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,68,2,16,0,57],[0,0,4,251,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,4,214,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,194,2,0,0,65,0,0,4,194,3,16,0,156],[0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16,0,0,4,252,1,16,1,199,0,0,19,4,0,1,4,48],[0,0,0,64,4,0,4,61,0,10,0,0,0,4,0,29,0,0,5,11,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,194,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25,0,0,4,194,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,4,235,1,16,1,199,0,0,128,2,2,0,0,57,19,2,18,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,4,194,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,6,146,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,6,138,0,0,65,61,0,0,0,0,9,10,0,25,0,0,0,0,7,5,0,75],[0,0,6,162,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,6,182,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,4,211,4,16,0,156,0,0,3,169,0,0,33,61],[0,0,0,1,2,32,1,144,0,0,3,169,0,0,193,61,0,0,0,64,0,16,4,63,0,0,0,32,1,48,0,140],[0,0,3,41,0,0,65,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,235,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,195,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,187,0,0,65,61,0,0,0,0,6,4,0,75],[0,0,6,210,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,170,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,194,3,48,1,151],[0,0,0,5,5,48,2,114,0,0,6,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,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,219,0,0,65,61,0,0,0,0,6,4,0,75],[0,0,6,242,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,170,0,0,1,61,0,0,0,5,1,0,0,107],[0,0,7,83,0,0,193,61,0,0,4,221,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,194,1,0,0,65,0,0,0,0,3,0,4,20,0,0,4,194,4,48,0,156],[0,0,0,0,3,1,128,25,0,0,0,192,1,48,2,16,0,0,4,222,1,16,1,199,19,2,18,242,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,9,3,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75],[0,0,3,41,0,0,97,61,0,0,0,64,4,0,4,61,0,0,4,225,1,0,0,65,0,0,0,0,0,20,4,53],[0,0,0,4,2,64,0,57,0,0,0,8,1,0,0,41,0,4,0,0,0,2,0,29,0,0,0,0,0,18,4,53],[0,0,0,7,1,0,0,41,0,0,4,226,1,16,1,151,0,0,4,227,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,194,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25,0,0,4,194,3,64,0,156,0,6,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,4,228,1,16,1,199,0,0,128,2,2,0,0,57,0,1,0,0,0,2,0,29,19,2,18,237,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,7,134,0,0,97,61,0,0,0,6,1,0,0,41,0,0,4,211,1,16,0,156],[0,0,3,169,0,0,33,61,0,0,0,6,1,0,0,41,0,0,0,64,0,16,4,63,0,0,0,5,1,0,0,107],[0,0,7,44,0,0,97,61,0,0,0,5,1,0,0,41,0,0,4,229,1,16,1,151,0,0,0,0,0,1,4,23],[0,0,0,10,4,0,0,41,0,0,4,194,2,64,1,151,0,0,0,0,1,0,4,20,0,0,0,17,3,0,3,103],[0,1,0,0,0,35,3,85,0,0,0,11,4,64,0,41,0,0,0,11,5,64,0,108,0,0,0,0,5,0,0,25],[0,0,0,1,5,0,64,57,0,0,0,1,5,80,1,144,0,0,7,58,0,0,193,61,0,0,0,0,5,0,0,49],[0,0,0,0,6,69,0,75,0,0,7,230,0,0,129,61,0,0,5,6,1,0,0,65,0,0,0,0,0,16,4,53],[0,0,0,17,1,0,0,57,0,0,3,210,0,0,1,61,0,0,0,64,1,0,4,61,0,0,0,100,2,16,0,57],[0,0,4,239,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,68,2,16,0,57,0,0,4,240,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,4,214,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,194,2,0,0,65,0,0,4,194,3,16,0,156,0,0,0,0,1,2,128,25],[0,0,0,64,1,16,2,16,0,0,4,241,1,16,1,199,0,0,19,4,0,1,4,48,0,0,4,221,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,194,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,4,222,1,16,1,199,0,0,128,2,2,0,0,57,19,2,18,242,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,9,3,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75,0,0,3,41,0,0,97,61],[0,0,0,64,4,0,4,61,0,0,0,68,1,64,0,57,0,0,0,5,2,0,0,41,0,0,0,0,0,33,4,53],[0,0,0,36,1,64,0,57,0,0,0,8,2,0,0,41,0,0,0,0,0,33,4,53,0,0,4,223,1,0,0,65],[0,0,0,0,0,20,4,53,0,0,0,6,1,0,0,41,0,0,4,213,1,16,1,151,0,0,0,4,2,64,0,57],[0,0,0,0,0,18,4,53,0,0,4,194,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,4,194,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,4,224,1,16,1,199],[0,0,128,10,2,0,0,57,19,2,18,237,0,0,4,15,0,0,0,1,2,32,1,144,0,0,7,198,0,0,97,61],[0,0,0,6,1,0,0,41,0,0,4,211,1,16,0,156,0,0,3,169,0,0,33,61,0,0,0,6,1,0,0,41],[0,0,0,64,0,16,4,63,0,0,6,245,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,194,3,48,1,151,0,0,0,5,5,48,2,114],[0,0,7,150,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,142,0,0,65,61,0,0,0,0,6,4,0,75,0,0,7,165,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,170,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,194,3,48,1,151,0,0,0,5,5,48,2,114],[0,0,7,182,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,174,0,0,65,61,0,0,0,0,6,4,0,75,0,0,7,197,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,170,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,194,3,48,1,151,0,0,0,5,5,48,2,114],[0,0,7,214,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,206,0,0,65,61,0,0,0,0,6,4,0,75,0,0,7,229,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,170,0,0,1,61,0,0,0,0,2,35,3,79,0,0,0,0,3,69,0,73],[0,0,4,194,3,48,1,151,0,1,0,0,0,50,3,229,0,0,4,230,4,16,0,156,0,0,7,251,0,0,65,61],[0,0,4,214,1,0,0,65,0,0,0,6,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,4,238,2,0,0,65,0,0,0,0,0,33,4,53],[0,0,0,2,1,0,0,41,0,0,4,224,1,16,1,199,0,0,19,4,0,1,4,48,0,0,0,0,2,50,3,223],[0,0,0,192,1,16,2,16,0,0,4,231,1,16,1,151,0,0,4,232,1,16,1,199,0,1,0,0,0,18,3,181],[0,0,0,0,1,18,3,175,0,0,0,8,2,0,0,41,0,0,0,9,13,0,0,41,19,2,18,252,0,0,4,15],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,4,194,3,48,1,151,0,0,0,1,2,32,1,144],[0,0,9,4,0,0,97,61,0,0,0,63,2,48,0,57,0,0,4,233,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,4,211,5,32,0,156,0,0,3,169,0,0,33,61,0,0,0,1,4,64,1,144],[0,0,3,169,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,38,0,0,97,61,0,0,0,0,4,0,0,49],[0,0,0,17,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,30,0,0,65,61,0,6,0,0,0,8,0,29,0,0,0,0,2,0,0,75],[0,0,8,41,0,0,97,61,0,0,0,31,2,48,1,143,0,0,0,5,3,48,2,114,0,0,0,6,7,0,0,41],[0,0,8,54,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,46,0,0,65,61,0,0,0,0,4,2,0,75,0,0,8,69,0,0,97,61],[0,0,0,5,3,48,2,16,0,0,0,0,1,49,3,79,0,0,0,6,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,4,221,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,194,1,0,0,65,0,0,0,0,4,0,4,20,0,0,4,194,3,64,0,156],[0,0,0,0,4,1,128,25,0,0,0,192,1,64,2,16,0,0,4,222,1,16,1,199,19,2,18,242,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,9,3,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75],[0,0,3,41,0,0,97,61,0,0,0,64,4,0,4,61,0,0,4,234,1,0,0,65,0,0,0,0,0,20,4,53],[0,0,0,4,1,64,0,57,0,0,0,8,2,0,0,41,0,0,0,0,0,33,4,53,0,0,4,194,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25,0,0,4,194,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,4,235,1,16,1,199,0,0,128,2,2,0,0,57,19,2,18,237,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,9,31,0,0,97,61,0,0,0,10,1,0,0,41,0,0,4,211,1,16,0,156],[0,0,3,169,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,4,212,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,4,212,4,16,1,151,0,0,0,0,5,4,0,75,0,0,0,0,2,0,160,25],[0,0,4,212,4,64,0,156,0,0,0,0,2,3,192,25,0,0,0,0,2,2,0,75,0,0,3,41,0,0,193,61],[0,0,0,6,2,0,0,41,0,0,0,0,2,2,4,51,0,0,4,211,3,32,0,156,0,0,3,41,0,0,33,61],[0,0,0,6,1,16,0,41,0,0,0,6,2,32,0,41,0,0,0,31,3,32,0,57,0,0,4,212,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,4,212,3,48,1,151],[0,0,4,212,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,4,212,3,48,0,156,0,0,0,0,4,5,192,25,0,0,0,0,3,4,0,75,0,0,3,41,0,0,193,61],[0,0,0,0,35,2,4,52,0,0,4,211,4,48,0,156,0,0,3,169,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,4,211,5,64,0,156,0,0,3,169,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,3,41,0,0,33,61,0,0,0,0,4,50,0,75,0,0,8,191,0,0,129,61,0,0,4,212,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,4,212,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,4,212,6,96,0,156,0,0,0,0,8,7,192,25,0,0,0,0,6,8,0,75],[0,0,3,41,0,0,193,61,0,0,0,64,6,0,4,61,0,0,4,236,7,96,0,156,0,0,3,169,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,8,165,0,0,65,61,0,0,4,221,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,194,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,4,222,1,16,1,199,0,0,128,2,2,0,0,57,19,2,18,242,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,9,3,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75,0,0,3,41,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,4,237,1,0,0,65,0,0,0,0,0,19,4,53,0,0,0,4,1,48,0,57,0,0,0,8,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,8,238,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,8,226,0,0,65,61,0,0,0,11,4,0,0,41,0,0,0,0,1,66,0,73],[0,0,4,194,2,0,0,65,0,0,4,194,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,194,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,194,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,2,18,237,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,9,63,0,0,97,61,0,0,6,66,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,15,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,8,0,0,65,61,0,0,0,0,5,4,0,75],[0,0,9,29,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,4,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,194,3,48,1,151],[0,0,0,5,5,48,2,114,0,0,9,47,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,39,0,0,65,61,0,0,0,0,6,4,0,75],[0,0,9,62,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,170,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,194,3,48,1,151],[0,0,0,5,5,48,2,114,0,0,9,79,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,71,0,0,65,61,0,0,0,0,6,4,0,75],[0,0,9,94,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,170,0,0,1,61,0,0,0,31,3,16,0,57],[0,0,4,212,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,4,212,6,32,1,151,0,0,4,212,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,4,212,3,48,0,156,0,0,0,0,4,5,192,25,0,0,0,0,3,4,0,75],[0,0,9,119,0,0,97,61,0,0,0,17,3,16,3,103,0,0,0,0,3,3,4,59,0,0,4,211,4,48,0,156],[0,0,9,119,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,9,119,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,4,0,1,4,48,0,3,0,0,0,0,0,2,0,0,4,194,9,64,1,151,0,0,0,0,8,0,4,20],[0,0,0,17,7,0,3,103,0,1,0,0,0,151,3,85,0,0,0,0,4,69,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,0,1,5,80,1,144,0,0,10,5,0,0,193,61],[0,0,0,0,5,0,0,49,0,0,0,0,6,69,0,75,0,0,10,5,0,0,65,61,0,1,0,0,0,2,0,29],[0,2,0,0,0,1,0,29,0,3,0,0,0,3,0,29,0,0,0,0,2,151,3,79,0,0,0,0,3,69,0,73],[0,0,4,194,3,48,1,151,0,1,0,0,0,50,3,229,0,0,4,230,4,128,0,156,0,0,10,15,0,0,129,61],[0,0,0,0,2,50,3,223,0,0,0,192,1,128,2,16,0,0,4,231,1,16,1,151,0,0,5,18,1,16,1,199],[0,1,0,0,0,18,3,181,0,0,0,0,1,18,3,175,0,0,128,16,2,0,0,57,19,2,18,247,0,0,4,15],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,4,194,3,48,1,151,0,0,0,1,2,32,1,144],[0,0,10,22,0,0,97,61,0,0,0,63,2,48,0,57,0,0,4,233,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,4,211,6,64,0,156,0,0,10,9,0,0,33,61,0,0,0,1,5,80,1,144,0,0,10,9,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,9,184,0,0,97,61,0,0,0,0,6,0,0,49,0,0,0,17,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,9,176,0,0,65,61],[0,0,0,0,5,0,0,75,0,0,9,186,0,0,97,61,0,0,0,31,5,48,1,143,0,0,0,5,3,48,2,114],[0,0,0,1,9,0,0,41,0,0,9,199,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,9,191,0,0,65,61,0,0,0,0,6,5,0,75],[0,0,9,214,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,49,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,146,4,53,0,0,0,96,2,16,0,57,0,0,0,0,0,82,4,53,0,0,4,213,2,96,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,20,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,21,3,16,0,156],[0,0,10,9,0,0,33,61,0,0,0,192,3,16,0,57,0,0,0,64,0,48,4,63,0,0,4,194,3,0,0,65],[0,0,4,194,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,194,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,194,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,4,243,1,16,1,199,0,0,128,16,2,0,0,57,19,2,18,242,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,10,66,0,0,97,61,0,0,0,0,1,1,4,59,0,0,4,213,1,16,1,151],[0,0,0,0,0,1,4,45,0,0,5,6,1,0,0,65,0,0,0,0,0,16,4,53,0,0,0,17,1,0,0,57],[0,0,10,12,0,0,1,61,0,0,5,6,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,4,235,1,0,0,65,0,0,19,4,0,1,4,48,0,0,0,64,1,0,4,61],[0,0,0,68,2,16,0,57,0,0,4,238,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,54,0,0,1,61,0,0,0,31,4,48,1,143,0,0,0,5,2,48,2,114],[0,0,10,33,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,26,0,0,65,61,0,0,0,0,5,4,0,75,0,0,10,47,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,4,0,1,4,48,0,0,0,68,2,16,0,57,0,0,5,19,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,4,214,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,194,2,0,0,65,0,0,4,194,3,16,0,156,0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16],[0,0,4,224,1,16,1,199,0,0,19,4,0,1,4,48,0,0,0,0,1,0,0,25,0,0,19,4,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,4,213,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,22,2,0,0,65,0,0,0,0,0,33,4,53,0,0,5,23,2,48,0,156,0,0,10,104,0,0,129,61],[0,0,0,128,2,48,0,57,0,0,0,64,0,32,4,63,0,0,4,194,2,0,0,65,0,0,4,194,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,194,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,194,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,4,243,1,16,1,199,0,0,128,16,2,0,0,57,19,2,18,242,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,10,110,0,0,97,61,0,0,0,0,1,1,4,59,0,0,4,213,1,16,1,151,0,0,0,0,0,1,4,45],[0,0,5,6,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,4,235,1,0,0,65,0,0,19,4,0,1,4,48,0,0,0,0,1,0,0,25,0,0,19,4,0,1,4,48],[0,10,0,0,0,0,0,2,0,6,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,9,0,0,0,1,0,29,0,0,0,0,1,1,0,75,0,0,13,64,0,0,97,61],[0,4,0,0,0,2,0,29,0,0,4,213,1,32,1,151,0,0,255,255,2,16,0,140,0,0,13,74,0,0,161,61],[0,0,5,24,2,0,0,65,0,0,0,0,0,36,4,53,0,10,0,0,0,1,0,29,0,0,0,0,0,19,4,53],[0,0,4,194,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,4,194,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,4,235,1,16,1,199,0,0,128,2,2,0,0,57,0,7,0,0,0,2,0,29],[0,8,0,0,0,4,0,29,19,2,18,242,0,0,4,15,0,0,0,8,10,0,0,41,0,0,0,0,3,1,0,25],[0,0,0,96,3,48,2,112,0,0,4,194,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,10,161,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,10,153,0,0,65,61,0,0,0,0,7,5,0,75,0,0,10,176,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,13,93,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,4,211,2,64,0,156,0,0,13,49,0,0,33,61,0,0,0,1,1,16,1,144,0,0,13,49,0,0,193,61],[0,0,0,64,0,64,4,63,0,0,0,31,1,48,0,140,0,0,13,47,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,13,122,0,0,193,61,0,0,5,26,2,0,0,65],[0,0,0,0,0,36,4,53,0,0,0,10,2,0,0,41,0,0,0,0,0,33,4,53,0,0,4,194,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25,0,0,4,194,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,4,235,1,16,1,199,0,0,128,3,2,0,0,57,0,8,0,0,0,4,0,29,19,2,18,242,0,0,4,15],[0,0,0,8,10,0,0,41,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,4,194,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,10,231,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,10,223,0,0,65,61,0,0,0,0,7,5,0,75],[0,0,10,246,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,13,132,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,4,211,1,64,0,156],[0,0,13,49,0,0,33,61,0,0,0,64,0,64,4,63,0,0,0,32,1,48,0,140,0,0,13,47,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,13,161,0,0,193,61],[0,0,4,217,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,194,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,4,194,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,4,235,1,16,1,199,0,0,128,4,2,0,0,57,0,8,0,0,0,4,0,29],[19,2,18,242,0,0,4,15,0,0,0,8,10,0,0,41,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,0,4,194,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,40,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,32,0,0,65,61],[0,0,0,0,7,5,0,75,0,0,11,55,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,13,171,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,4,211,1,64,0,156,0,0,13,49,0,0,33,61,0,0,0,64,0,64,4,63,0,0,0,32,1,48,0,140],[0,0,13,47,0,0,65,61,0,0,0,0,1,10,4,51,0,0,0,0,1,1,0,75,0,0,13,200,0,0,97,61],[0,0,4,236,1,64,0,156,0,0,13,49,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,3,0,0,0,1,0,29,0,0,0,0,0,1,4,53,0,0,0,10,1,0,0,41],[0,0,0,0,0,16,4,53,0,0,0,32,0,0,4,63,0,0,4,194,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,4,219,1,16,1,199],[0,0,128,16,2,0,0,57,0,8,0,0,0,4,0,29,19,2,18,242,0,0,4,15,0,0,0,8,3,0,0,41],[0,0,0,1,2,32,1,144,0,0,13,47,0,0,97,61,0,0,0,0,2,3,4,51,0,0,0,2,3,32,0,140],[0,0,13,56,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,3,3,0,0,41],[0,0,0,0,3,3,4,51,0,0,0,1,4,48,0,140,0,0,13,56,0,0,33,61,0,0,4,220,2,32,1,151],[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,4,221,1,0,0,65,0,0,0,0,0,16,4,57,0,0,0,0,1,0,4,22,0,8,0,0,0,1,0,29],[0,0,0,0,1,1,0,75,0,0,11,214,0,0,97,61,0,0,128,10,1,0,0,57,0,0,0,4,0,16,4,67],[0,0,4,194,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,192,1,32,2,16,0,0,4,222,1,16,1,199,0,0,128,2,2,0,0,57,0,3,0,0,0,2,0,29],[19,2,18,242,0,0,4,15,0,0,0,1,2,32,1,144,0,0,13,55,0,0,97,61,0,0,0,0,1,1,4,59],[0,0,0,0,1,1,0,75,0,0,13,47,0,0,97,61,0,0,0,64,4,0,4,61,0,0,0,68,1,64,0,57],[0,0,0,8,2,0,0,41,0,0,0,0,0,33,4,53,0,0,0,36,1,64,0,57,0,0,0,10,2,0,0,41],[0,0,0,0,0,33,4,53,0,0,4,223,1,0,0,65,0,0,0,0,0,20,4,53,0,0,0,0,1,0,4,16],[0,0,4,213,1,16,1,151,0,0,0,4,2,64,0,57,0,0,0,0,0,18,4,53,0,0,4,194,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25,0,0,4,194,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,4,224,1,16,1,199,0,0,128,10,2,0,0,57,19,2,18,237,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,14,69,0,0,97,61,0,0,0,2,2,0,0,41,0,0,4,211,1,32,0,156],[0,0,13,49,0,0,33,61,0,0,0,64,0,32,4,63,0,0,4,221,1,0,0,65,0,0,0,0,0,16,4,57],[0,0,0,3,2,0,0,41,0,0,0,4,0,32,4,67,0,0,4,194,1,0,0,65,0,0,0,0,4,0,4,20],[0,0,4,194,3,64,0,156,0,0,0,0,4,1,128,25,0,0,0,192,1,64,2,16,0,0,4,222,1,16,1,199],[19,2,18,242,0,0,4,15,0,0,0,1,2,32,1,144,0,0,13,55,0,0,97,61,0,0,0,0,1,1,4,59],[0,0,0,0,1,1,0,75,0,0,13,47,0,0,97,61,0,0,0,64,4,0,4,61,0,0,4,225,1,0,0,65],[0,0,0,0,0,20,4,53,0,0,0,4,2,64,0,57,0,0,0,10,1,0,0,41,0,2,0,0,0,2,0,29],[0,0,0,0,0,18,4,53,0,0,0,9,1,0,0,41,0,0,4,226,1,16,1,151,0,0,4,227,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,194,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25,0,0,4,194,3,64,0,156],[0,3,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,4,228,1,16,1,199,0,0,128,2,2,0,0,57,19,2,18,237,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,14,101,0,0,97,61,0,0,0,3,8,0,0,41,0,0,4,211,1,128,0,156],[0,0,13,49,0,0,33,61,0,0,0,64,0,128,4,63,0,0,0,8,1,0,0,41,0,0,4,229,1,16,1,151],[0,0,0,0,0,1,4,23,0,0,12,4,0,0,1,61,0,0,0,7,2,0,0,41,0,0,0,4,0,32,4,67],[0,0,4,194,1,0,0,65,0,0,0,0,4,0,4,20,0,0,4,194,3,64,0,156,0,0,0,0,4,1,128,25],[0,0,0,192,1,64,2,16,0,0,4,222,1,16,1,199,19,2,18,242,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,13,55,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75,0,0,13,47,0,0,97,61],[0,0,0,64,4,0,4,61,0,0,4,225,1,0,0,65,0,0,0,0,0,20,4,53,0,0,0,4,2,64,0,57],[0,0,0,10,1,0,0,41,0,2,0,0,0,2,0,29,0,0,0,0,0,18,4,53,0,0,0,9,1,0,0,41],[0,0,4,226,1,16,1,151,0,0,4,227,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,194,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,4,194,3,64,0,156,0,3,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,4,228,1,16,1,199],[0,0,128,2,2,0,0,57,19,2,18,237,0,0,4,15,0,0,0,1,2,32,1,144,0,0,14,133,0,0,97,61],[0,0,0,3,8,0,0,41,0,0,4,211,1,128,0,156,0,0,13,49,0,0,33,61,0,0,0,64,0,128,4,63],[0,0,0,5,4,0,0,41,0,0,4,194,2,64,1,151,0,0,0,0,1,0,4,20,0,0,0,17,3,0,3,103],[0,1,0,0,0,35,3,85,0,0,0,0,7,0,4,17,0,0,0,6,4,64,0,41,0,0,0,6,5,64,0,108],[0,0,0,0,5,0,0,25,0,0,0,1,5,0,64,57,0,0,0,1,5,80,1,144,0,0,13,60,0,0,193,61],[0,0,0,0,5,0,0,49,0,0,0,0,6,69,0,75,0,0,13,60,0,0,65,61,0,0,0,0,2,35,3,79],[0,0,0,0,3,69,0,73,0,0,4,194,3,48,1,151,0,1,0,0,0,50,3,229,0,0,4,230,4,16,0,156],[0,0,13,217,0,0,129,61,0,0,0,0,2,50,3,223,0,0,0,192,1,16,2,16,0,0,4,231,1,16,1,151],[0,0,4,232,1,16,1,199,0,1,0,0,0,18,3,181,0,0,0,0,1,18,3,175,0,5,0,0,0,7,0,29],[0,0,4,213,13,112,1,151,0,0,0,4,2,0,0,41,19,2,18,252,0,0,4,15,0,0,0,0,3,1,0,25],[0,0,0,96,3,48,2,112,0,0,4,194,3,48,1,151,0,0,0,1,2,32,1,144,0,0,13,234,0,0,97,61],[0,0,0,63,2,48,0,57,0,0,4,233,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,4,211,5,32,0,156],[0,0,13,49,0,0,33,61,0,0,0,1,4,64,1,144,0,0,13,49,0,0,193,61,0,0,0,64,0,32,4,63],[0,6,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,12,68,0,0,97,61,0,0,0,0,4,0,0,49,0,0,0,17,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,12,60,0,0,65,61],[0,0,0,0,2,0,0,75,0,0,12,70,0,0,97,61,0,0,0,31,2,48,1,143,0,0,0,5,3,48,2,114],[0,0,12,82,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,12,74,0,0,65,61,0,0,0,0,4,2,0,75,0,0,12,97,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,8,0,0,0,8,0,29,0,0,4,221,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,194,1,0,0,65,0,0,0,0,4,0,4,20],[0,0,4,194,3,64,0,156,0,0,0,0,4,1,128,25,0,0,0,192,1,64,2,16,0,0,4,222,1,16,1,199],[19,2,18,242,0,0,4,15,0,0,0,1,2,32,1,144,0,0,13,55,0,0,97,61,0,0,0,0,1,1,4,59],[0,0,0,0,1,1,0,75,0,0,13,47,0,0,97,61,0,0,0,64,4,0,4,61,0,0,4,234,1,0,0,65],[0,0,0,0,0,20,4,53,0,0,0,4,1,64,0,57,0,0,0,10,2,0,0,41,0,0,0,0,0,33,4,53],[0,0,4,194,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,4,194,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,4,235,1,16,1,199,0,0,128,2,2,0,0,57],[19,2,18,237,0,0,4,15,0,0,0,1,2,32,1,144,0,0,14,5,0,0,97,61,0,0,0,7,9,0,0,41],[0,0,4,211,1,144,0,156,0,0,0,6,1,0,0,41,0,0,13,49,0,0,33,61,0,0,0,64,0,144,4,63],[0,0,0,0,1,1,4,51,0,0,4,212,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,4,212,4,16,1,151,0,0,0,0,5,4,0,75,0,0,0,0,2,0,160,25],[0,0,4,212,4,64,0,156,0,0,0,0,2,3,192,25,0,0,0,0,2,2,0,75,0,0,13,47,0,0,193,61],[0,0,0,8,2,0,0,41,0,0,0,0,2,2,4,51,0,0,4,211,3,32,0,156,0,0,13,47,0,0,33,61],[0,0,0,8,1,16,0,41,0,0,0,8,2,32,0,41,0,0,0,31,3,32,0,57,0,0,4,212,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,4,212,3,48,1,151],[0,0,4,212,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,4,212,3,48,0,156,0,0,0,0,4,5,192,25,0,0,0,0,3,4,0,75,0,0,13,47,0,0,193,61],[0,0,0,0,35,2,4,52,0,0,4,211,4,48,0,156,0,0,13,49,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,4,211,5,64,0,156,0,0,13,49,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,47,0,0,33,61],[0,0,0,0,4,50,0,75,0,0,12,218,0,0,129,61,0,0,4,212,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,4,212,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,4,212,6,96,0,156,0,0,0,0,8,7,192,25,0,0,0,0,6,8,0,75,0,0,13,47,0,0,193,61],[0,0,0,64,6,0,4,61,0,0,4,236,7,96,0,156,0,0,13,49,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,12,192,0,0,65,61,0,0,4,221,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,194,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,4,222,1,16,1,199],[0,0,128,2,2,0,0,57,19,2,18,242,0,0,4,15,0,0,0,1,2,32,1,144,0,0,13,55,0,0,97,61],[0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75,0,0,0,7,6,0,0,41,0,0,13,47,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,4,237,1,0,0,65,0,0,0,0,0,23,4,53,0,0,0,4,1,112,0,57,0,0,0,10,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,6,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,12,252,0,0,65,61,0,0,0,0,1,114,0,73,0,0,4,194,2,0,0,65],[0,0,4,194,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,194,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,194,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,8,0,0,0,7,0,29,19,2,18,237,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,14,37,0,0,97,61,0,0,0,8,2,0,0,41,0,0,4,211,1,32,0,156],[0,0,0,0,1,2,0,25,0,0,13,49,0,0,33,61,0,0,0,64,0,16,4,63,0,0,4,194,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,4,243,1,16,1,199,0,0,128,13,2,0,0,57,0,0,0,4,3,0,0,57,0,0,4,244,4,0,0,65],[0,0,0,5,5,0,0,41,0,0,0,9,6,0,0,41,0,0,0,10,7,0,0,41,19,2,18,237,0,0,4,15],[0,0,0,1,1,32,1,144,0,0,13,47,0,0,97,61,0,0,0,0,0,1,4,45,0,0,0,0,1,0,0,25],[0,0,19,4,0,1,4,48,0,0,5,6,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,4,235,1,0,0,65,0,0,19,4,0,1,4,48,0,0,0,0,0,1,4,47],[0,0,5,6,1,0,0,65,0,0,0,0,0,16,4,53,0,0,0,33,1,0,0,57,0,0,13,52,0,0,1,61],[0,0,5,6,1,0,0,65,0,0,0,0,0,16,4,53,0,0,0,17,1,0,0,57,0,0,13,52,0,0,1,61],[0,0,4,214,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,30,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,13,210,0,0,1,61,0,0,4,214,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,28,2,0,0,65],[0,0,0,0,0,33,4,53,0,0,0,68,1,64,0,57,0,0,5,29,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,194,1,0,0,65],[0,0,4,194,2,64,0,156,0,0,0,0,4,1,128,25,0,0,0,64,1,64,2,16,0,0,4,241,1,16,1,199],[0,0,19,4,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,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,13,98,0,0,65,61,0,0,0,0,6,4,0,75,0,0,14,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,14,164,0,0,1,61,0,0,4,214,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,25,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,13,210,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,145,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,137,0,0,65,61,0,0,0,0,6,4,0,75,0,0,13,160,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,14,164,0,0,1,61,0,0,4,214,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,27,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,13,210,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,184,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,176,0,0,65,61],[0,0,0,0,6,4,0,75,0,0,13,199,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,14,164,0,0,1,61],[0,0,0,68,1,64,0,57,0,0,4,245,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,4,214,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,194,1,0,0,65],[0,0,4,194,2,64,0,156,0,0,0,0,4,1,128,25,0,0,0,64,1,64,2,16,0,0,4,224,1,16,1,199],[0,0,19,4,0,1,4,48,0,0,4,214,1,0,0,65,0,0,0,0,0,24,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,128,0,57,0,0,4,238,2,0,0,65,0,0,0,0,0,33,4,53],[0,0,4,194,1,0,0,65,0,0,4,194,2,128,0,156,0,0,0,0,8,1,128,25,0,0,0,64,1,128,2,16],[0,0,4,224,1,16,1,199,0,0,19,4,0,1,4,48,0,0,0,31,4,48,1,143,0,0,0,5,2,48,2,114],[0,0,13,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,13,238,0,0,65,61,0,0,0,0,5,4,0,75,0,0,14,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,19,4,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,194,3,48,1,151,0,0,0,5,5,48,2,114,0,0,14,21,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,13,0,0,65,61,0,0,0,0,6,4,0,75,0,0,14,36,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,14,164,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,194,3,48,1,151,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,14,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,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,14,164,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,194,3,48,1,151,0,0,0,5,5,48,2,114,0,0,14,85,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,77,0,0,65,61,0,0,0,0,6,4,0,75,0,0,14,100,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,14,164,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,194,3,48,1,151,0,0,0,5,5,48,2,114,0,0,14,117,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,109,0,0,65,61,0,0,0,0,6,4,0,75,0,0,14,132,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,14,164,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,194,3,48,1,151,0,0,0,5,5,48,2,114,0,0,14,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,14,141,0,0,65,61,0,0,0,0,6,4,0,75,0,0,14,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,4,194,1,0,0,65,0,0,4,194,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,4,0,1,4,48,0,10,0,0,0,0,0,2],[0,5,0,0,0,5,0,29,0,4,0,0,0,4,0,29,0,6,0,0,0,3,0,29,0,0,0,64,4,0,4,61],[0,0,0,4,3,64,0,57,0,9,0,0,0,1,0,29,0,0,0,0,1,1,0,75,0,0,17,129,0,0,97,61],[0,3,0,0,0,2,0,29,0,0,4,213,1,32,1,151,0,0,255,255,2,16,0,140,0,0,17,139,0,0,161,61],[0,0,5,24,2,0,0,65,0,0,0,0,0,36,4,53,0,10,0,0,0,1,0,29,0,0,0,0,0,19,4,53],[0,0,4,194,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,4,194,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,4,235,1,16,1,199,0,0,128,2,2,0,0,57,0,7,0,0,0,2,0,29],[0,8,0,0,0,4,0,29,19,2,18,242,0,0,4,15,0,0,0,8,10,0,0,41,0,0,0,0,3,1,0,25],[0,0,0,96,3,48,2,112,0,0,4,194,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,14,221,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,14,213,0,0,65,61,0,0,0,0,7,5,0,75,0,0,14,236,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,17,158,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,4,211,2,64,0,156,0,0,17,114,0,0,33,61,0,0,0,1,1,16,1,144,0,0,17,114,0,0,193,61],[0,0,0,64,0,64,4,63,0,0,0,31,1,48,0,140,0,0,17,112,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,17,187,0,0,193,61,0,0,5,26,2,0,0,65],[0,0,0,0,0,36,4,53,0,0,0,10,2,0,0,41,0,0,0,0,0,33,4,53,0,0,4,194,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25,0,0,4,194,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,4,235,1,16,1,199,0,0,128,3,2,0,0,57,0,8,0,0,0,4,0,29,19,2,18,242,0,0,4,15],[0,0,0,8,10,0,0,41,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,4,194,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,35,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,27,0,0,65,61,0,0,0,0,7,5,0,75],[0,0,15,50,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,17,197,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,4,211,1,64,0,156],[0,0,17,114,0,0,33,61,0,0,0,64,0,64,4,63,0,0,0,32,1,48,0,140,0,0,17,112,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,17,226,0,0,193,61],[0,0,4,217,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,194,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,4,194,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,4,235,1,16,1,199,0,0,128,4,2,0,0,57,0,8,0,0,0,4,0,29],[19,2,18,242,0,0,4,15,0,0,0,8,10,0,0,41,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,0,4,194,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,100,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,92,0,0,65,61],[0,0,0,0,7,5,0,75,0,0,15,115,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,17,236,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,4,211,1,64,0,156,0,0,17,114,0,0,33,61,0,0,0,64,0,64,4,63,0,0,0,32,1,48,0,140],[0,0,17,112,0,0,65,61,0,0,0,0,1,10,4,51,0,0,0,0,1,1,0,75,0,0,18,9,0,0,97,61],[0,0,4,236,1,64,0,156,0,0,17,114,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,6,2,0,0,41,0,0,0,2,1,32,0,140],[0,0,17,121,0,0,129,61,0,0,0,0,0,36,4,53,0,6,0,0,0,3,0,29,0,0,0,0,0,3,4,53],[0,0,0,10,1,0,0,41,0,0,0,0,0,16,4,53,0,0,0,32,0,0,4,63,0,0,4,194,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,4,219,1,16,1,199,0,0,128,16,2,0,0,57,0,8,0,0,0,4,0,29,19,2,18,242,0,0,4,15],[0,0,0,8,3,0,0,41,0,0,0,1,2,32,1,144,0,0,17,112,0,0,97,61,0,0,0,0,2,3,4,51],[0,0,0,1,3,32,0,140,0,0,0,6,5,0,0,41,0,0,17,121,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,17,121,0,0,33,61],[0,0,4,220,2,32,1,151,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,4,221,1,0,0,65,0,0,0,0,0,16,4,57,0,0,0,0,1,0,4,22],[0,8,0,0,0,1,0,29,0,0,0,0,1,1,0,75,0,0,16,23,0,0,97,61,0,0,128,10,1,0,0,57],[0,0,0,4,0,16,4,67,0,0,4,194,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,4,222,1,16,1,199,0,0,128,2,2,0,0,57],[0,6,0,0,0,2,0,29,19,2,18,242,0,0,4,15,0,0,0,1,2,32,1,144,0,0,17,120,0,0,97,61],[0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75,0,0,17,112,0,0,97,61,0,0,0,64,4,0,4,61],[0,0,0,68,1,64,0,57,0,0,0,8,2,0,0,41,0,0,0,0,0,33,4,53,0,0,0,36,1,64,0,57],[0,0,0,10,2,0,0,41,0,0,0,0,0,33,4,53,0,0,4,223,1,0,0,65,0,0,0,0,0,20,4,53],[0,0,0,0,1,0,4,16,0,0,4,213,1,16,1,151,0,0,0,4,2,64,0,57,0,0,0,0,0,18,4,53],[0,0,4,194,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,4,194,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,4,224,1,16,1,199,0,0,128,10,2,0,0,57],[19,2,18,237,0,0,4,15,0,0,0,1,2,32,1,144,0,0,18,134,0,0,97,61,0,0,0,2,2,0,0,41],[0,0,4,211,1,32,0,156,0,0,17,114,0,0,33,61,0,0,0,64,0,32,4,63,0,0,4,221,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,194,1,0,0,65],[0,0,0,0,4,0,4,20,0,0,4,194,3,64,0,156,0,0,0,0,4,1,128,25,0,0,0,192,1,64,2,16],[0,0,4,222,1,16,1,199,19,2,18,242,0,0,4,15,0,0,0,1,2,32,1,144,0,0,17,120,0,0,97,61],[0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75,0,0,17,112,0,0,97,61,0,0,0,64,4,0,4,61],[0,0,4,225,1,0,0,65,0,0,0,0,0,20,4,53,0,0,0,4,2,64,0,57,0,0,0,10,1,0,0,41],[0,2,0,0,0,2,0,29,0,0,0,0,0,18,4,53,0,0,0,9,1,0,0,41,0,0,4,226,1,16,1,151],[0,0,4,227,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,194,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,4,194,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,4,228,1,16,1,199,0,0,128,2,2,0,0,57],[19,2,18,237,0,0,4,15,0,0,0,1,2,32,1,144,0,0,18,166,0,0,97,61,0,0,0,6,8,0,0,41],[0,0,4,211,1,128,0,156,0,0,17,114,0,0,33,61,0,0,0,64,0,128,4,63,0,0,0,8,1,0,0,41],[0,0,4,229,1,16,1,151,0,0,0,0,0,1,4,23,0,0,16,69,0,0,1,61,0,0,0,7,2,0,0,41],[0,0,0,4,0,32,4,67,0,0,4,194,1,0,0,65,0,0,0,0,4,0,4,20,0,0,4,194,3,64,0,156],[0,0,0,0,4,1,128,25,0,0,0,192,1,64,2,16,0,0,4,222,1,16,1,199,19,2,18,242,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,17,120,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75],[0,0,17,112,0,0,97,61,0,0,0,64,4,0,4,61,0,0,4,225,1,0,0,65,0,0,0,0,0,20,4,53],[0,0,0,4,2,64,0,57,0,0,0,10,1,0,0,41,0,2,0,0,0,2,0,29,0,0,0,0,0,18,4,53],[0,0,0,9,1,0,0,41,0,0,4,226,1,16,1,151,0,0,4,227,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,194,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25,0,0,4,194,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,4,228,1,16,1,199,0,0,128,2,2,0,0,57,19,2,18,237,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,18,198,0,0,97,61,0,0,0,6,8,0,0,41,0,0,4,211,1,128,0,156,0,0,17,114,0,0,33,61],[0,0,0,64,0,128,4,63,0,0,0,4,4,0,0,41,0,0,4,194,2,64,1,151,0,0,0,0,1,0,4,20],[0,0,0,17,3,0,3,103,0,1,0,0,0,35,3,85,0,0,0,0,7,0,4,17,0,0,0,5,4,64,0,41],[0,0,0,5,5,64,0,108,0,0,0,0,5,0,0,25,0,0,0,1,5,0,64,57,0,0,0,1,5,80,1,144],[0,0,17,125,0,0,193,61,0,0,0,0,5,0,0,49,0,0,0,0,6,69,0,75,0,0,17,125,0,0,65,61],[0,0,0,0,2,35,3,79,0,0,0,0,3,69,0,73,0,0,4,194,3,48,1,151,0,1,0,0,0,50,3,229],[0,0,4,230,4,16,0,156,0,0,18,26,0,0,129,61,0,0,0,0,2,50,3,223,0,0,0,192,1,16,2,16],[0,0,4,231,1,16,1,151,0,0,4,232,1,16,1,199,0,1,0,0,0,18,3,181,0,0,0,0,1,18,3,175],[0,5,0,0,0,7,0,29,0,0,4,213,13,112,1,151,0,0,0,3,2,0,0,41,19,2,18,252,0,0,4,15],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,4,194,3,48,1,151,0,0,0,1,2,32,1,144],[0,0,18,43,0,0,97,61,0,0,0,63,2,48,0,57,0,0,4,233,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,4,211,5,32,0,156,0,0,17,114,0,0,33,61,0,0,0,1,4,64,1,144,0,0,17,114,0,0,193,61],[0,0,0,64,0,32,4,63,0,6,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,16,133,0,0,97,61,0,0,0,0,4,0,0,49,0,0,0,17,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,16,125,0,0,65,61,0,0,0,0,2,0,0,75,0,0,16,135,0,0,97,61,0,0,0,31,2,48,1,143],[0,0,0,5,3,48,2,114,0,0,16,147,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,16,139,0,0,65,61,0,0,0,0,4,2,0,75],[0,0,16,162,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,8,0,0,0,8,0,29,0,0,4,221,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,194,1,0,0,65],[0,0,0,0,4,0,4,20,0,0,4,194,3,64,0,156,0,0,0,0,4,1,128,25,0,0,0,192,1,64,2,16],[0,0,4,222,1,16,1,199,19,2,18,242,0,0,4,15,0,0,0,1,2,32,1,144,0,0,17,120,0,0,97,61],[0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75,0,0,17,112,0,0,97,61,0,0,0,64,4,0,4,61],[0,0,4,234,1,0,0,65,0,0,0,0,0,20,4,53,0,0,0,4,1,64,0,57,0,0,0,10,2,0,0,41],[0,0,0,0,0,33,4,53,0,0,4,194,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,4,194,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,4,235,1,16,1,199],[0,0,128,2,2,0,0,57,19,2,18,237,0,0,4,15,0,0,0,1,2,32,1,144,0,0,18,70,0,0,97,61],[0,0,0,7,9,0,0,41,0,0,4,211,1,144,0,156,0,0,0,6,1,0,0,41,0,0,17,114,0,0,33,61],[0,0,0,64,0,144,4,63,0,0,0,0,1,1,4,51,0,0,4,212,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,4,212,4,16,1,151,0,0,0,0,5,4,0,75],[0,0,0,0,2,0,160,25,0,0,4,212,4,64,0,156,0,0,0,0,2,3,192,25,0,0,0,0,2,2,0,75],[0,0,17,112,0,0,193,61,0,0,0,8,2,0,0,41,0,0,0,0,2,2,4,51,0,0,4,211,3,32,0,156],[0,0,17,112,0,0,33,61,0,0,0,8,1,16,0,41,0,0,0,8,2,32,0,41,0,0,0,31,3,32,0,57],[0,0,4,212,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,4,212,3,48,1,151,0,0,4,212,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,4,212,3,48,0,156,0,0,0,0,4,5,192,25,0,0,0,0,3,4,0,75],[0,0,17,112,0,0,193,61,0,0,0,0,35,2,4,52,0,0,4,211,4,48,0,156,0,0,17,114,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,4,211,5,64,0,156,0,0,17,114,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,17,112,0,0,33,61,0,0,0,0,4,50,0,75,0,0,17,27,0,0,129,61,0,0,4,212,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,4,212,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,4,212,6,96,0,156,0,0,0,0,8,7,192,25,0,0,0,0,6,8,0,75],[0,0,17,112,0,0,193,61,0,0,0,64,6,0,4,61,0,0,4,236,7,96,0,156,0,0,17,114,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,1,0,0,65,61,0,0,4,221,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,194,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,4,222,1,16,1,199,0,0,128,2,2,0,0,57,19,2,18,242,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,17,120,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75,0,0,0,7,6,0,0,41],[0,0,17,112,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,4,237,1,0,0,65,0,0,0,0,0,23,4,53,0,0,0,4,1,112,0,57],[0,0,0,10,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,17,71,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,17,61,0,0,65,61,0,0,0,0,1,114,0,73],[0,0,4,194,2,0,0,65,0,0,4,194,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,194,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,194,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,8,0,0,0,7,0,29],[19,2,18,237,0,0,4,15,0,0,0,1,2,32,1,144,0,0,18,102,0,0,97,61,0,0,0,8,2,0,0,41],[0,0,4,211,1,32,0,156,0,0,0,0,1,2,0,25,0,0,17,114,0,0,33,61,0,0,0,64,0,16,4,63],[0,0,4,194,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,192,1,32,2,16,0,0,4,243,1,16,1,199,0,0,128,13,2,0,0,57,0,0,0,4,3,0,0,57],[0,0,4,244,4,0,0,65,0,0,0,5,5,0,0,41,0,0,0,9,6,0,0,41,0,0,0,10,7,0,0,41],[19,2,18,237,0,0,4,15,0,0,0,1,1,32,1,144,0,0,17,112,0,0,97,61,0,0,0,0,0,1,4,45],[0,0,0,0,1,0,0,25,0,0,19,4,0,1,4,48,0,0,5,6,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,4,235,1,0,0,65,0,0,19,4,0,1,4,48],[0,0,0,0,0,1,4,47,0,0,5,6,1,0,0,65,0,0,0,0,0,16,4,53,0,0,0,33,1,0,0,57],[0,0,17,117,0,0,1,61,0,0,5,6,1,0,0,65,0,0,0,0,0,16,4,53,0,0,0,17,1,0,0,57],[0,0,17,117,0,0,1,61,0,0,4,214,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,30,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,19,0,0,1,61,0,0,4,214,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,28,2,0,0,65,0,0,0,0,0,33,4,53,0,0,0,68,1,64,0,57,0,0,5,29,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,194,1,0,0,65,0,0,4,194,2,64,0,156,0,0,0,0,4,1,128,25,0,0,0,64,1,64,2,16],[0,0,4,241,1,16,1,199,0,0,19,4,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,17,171,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,17,163,0,0,65,61,0,0,0,0,6,4,0,75],[0,0,18,229,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,18,229,0,0,1,61,0,0,4,214,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,25,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,19,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,17,210,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,17,202,0,0,65,61,0,0,0,0,6,4,0,75,0,0,17,225,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,18,229,0,0,1,61,0,0,4,214,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,27,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,19,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,17,249,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,17,241,0,0,65,61,0,0,0,0,6,4,0,75,0,0,18,8,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,18,229,0,0,1,61,0,0,0,68,1,64,0,57,0,0,4,245,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,4,214,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,194,1,0,0,65,0,0,4,194,2,64,0,156,0,0,0,0,4,1,128,25,0,0,0,64,1,64,2,16],[0,0,4,224,1,16,1,199,0,0,19,4,0,1,4,48,0,0,4,214,1,0,0,65,0,0,0,0,0,24,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,128,0,57,0,0,4,238,2,0,0,65],[0,0,0,0,0,33,4,53,0,0,4,194,1,0,0,65,0,0,4,194,2,128,0,156,0,0,0,0,8,1,128,25],[0,0,0,64,1,128,2,16,0,0,4,224,1,16,1,199,0,0,19,4,0,1,4,48,0,0,0,31,4,48,1,143],[0,0,0,5,2,48,2,114,0,0,18,54,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,47,0,0,65,61,0,0,0,0,5,4,0,75,0,0,18,68,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,4,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,194,3,48,1,151,0,0,0,5,5,48,2,114],[0,0,18,86,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,78,0,0,65,61,0,0,0,0,6,4,0,75,0,0,18,101,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,18,229,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,194,3,48,1,151,0,0,0,5,5,48,2,114],[0,0,18,118,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,110,0,0,65,61,0,0,0,0,6,4,0,75,0,0,18,133,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,18,229,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,194,3,48,1,151,0,0,0,5,5,48,2,114],[0,0,18,150,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,142,0,0,65,61,0,0,0,0,6,4,0,75,0,0,18,165,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,18,229,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,194,3,48,1,151,0,0,0,5,5,48,2,114],[0,0,18,182,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,174,0,0,65,61,0,0,0,0,6,4,0,75,0,0,18,197,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,18,229,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,194,3,48,1,151,0,0,0,5,5,48,2,114],[0,0,18,214,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,206,0,0,65,61,0,0,0,0,6,4,0,75,0,0,18,229,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,194,1,0,0,65,0,0,4,194,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,4,0,1,4,48],[0,0,0,0,0,1,4,47,0,0,18,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,18,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,18,250,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,0,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,2,0,0,4,50,0,0,19,3,0,1,4,46],[0,0,19,4,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,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,236,128,103,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,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,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,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,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,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],[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],[0,0,0,0,0,0,0,0,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,160,219,144,188,18,229,126,186,185,180,16,164,164,78,192,138,235,127,123,45,162,126,219,57,164,176,218,172,217,136,253]],"0x0000000000000000000000000000000000008008":[[0,18,0,0,0,0,0,2,0,14,0,0,0,0,0,2,0,0,0,0,3,1,0,25,0,0,0,96,5,48,2,112],[0,0,2,104,3,80,1,151,0,1,0,0,0,49,3,85,0,2,0,0,0,49,3,85,0,3,0,0,0,49,3,85],[0,4,0,0,0,49,3,85,0,5,0,0,0,49,3,85,0,6,0,0,0,49,3,85,0,7,0,0,0,49,3,85],[0,8,0,0,0,49,3,85,0,9,0,0,0,49,3,85,0,10,0,0,0,49,3,85,0,11,0,0,0,49,3,85],[0,12,0,0,0,49,3,85,0,13,0,0,0,49,3,85,0,14,0,0,0,49,3,85,0,15,0,0,0,49,3,85],[0,16,0,0,0,49,3,85,0,17,0,0,0,1,3,85,0,0,2,104,0,80,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,65,0,0,193,61,0,0,0,4,2,48,0,140],[0,0,4,38,0,0,65,61,0,0,0,0,2,1,4,59,0,0,0,224,2,32,2,112,0,0,2,106,6,32,0,156],[0,0,0,73,0,0,33,61,0,0,2,109,4,32,0,156,0,0,0,134,0,0,97,61,0,0,2,110,2,32,0,156],[0,0,4,38,0,0,193,61,0,0,0,0,2,0,4,22,0,0,0,0,2,2,0,75,0,0,4,38,0,0,193,61],[0,0,0,4,2,48,0,138,0,0,0,96,2,32,0,140,0,0,4,38,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,4,38,0,0,193,61,0,0,0,0,2,0,4,17,0,0,2,175,1,32,0,156],[0,0,1,3,0,0,65,61,0,0,2,132,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,177,1,0,0,65],[0,0,0,196,0,16,4,63,0,0,2,178,1,0,0,65,0,0,0,228,0,16,4,63,0,0,2,179,1,0,0,65],[0,0,9,158,0,1,4,48,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,4,38,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,105,1,0,0,65],[0,0,9,157,0,1,4,46,0,0,2,107,6,32,0,156,0,0,0,197,0,0,97,61,0,0,2,108,2,32,0,156],[0,0,4,38,0,0,193,61,0,0,0,0,2,0,4,22,0,0,0,0,2,2,0,75,0,0,4,38,0,0,193,61],[0,0,0,4,2,48,0,138,0,0,0,32,2,32,0,140,0,0,4,38,0,0,65,61,0,0,0,4,2,16,3,112],[0,0,0,0,2,2,4,59,0,0,2,111,6,32,0,156,0,0,4,38,0,0,33,61,0,0,0,35,6,32,0,57],[0,0,2,112,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,112,6,96,1,151,0,0,0,0,9,6,0,75,0,0,0,0,7,0,128,25,0,0,2,112,6,96,0,156],[0,0,0,0,7,8,192,25,0,0,0,0,6,7,0,75,0,0,4,38,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,111,6,112,0,156,0,0,4,38,0,0,33,61],[0,0,0,36,6,32,0,57,0,0,0,0,2,103,0,25,0,0,0,0,3,35,0,75,0,0,4,38,0,0,65,61],[0,0,2,104,3,96,1,151,0,0,0,0,1,49,3,79,0,0,0,0,2,37,0,73,0,0,2,104,2,32,1,151],[0,0,0,0,8,0,4,20,0,0,0,0,3,0,4,20,0,1,0,0,0,33,3,229,0,0,2,113,5,48,0,156],[0,0,2,18,0,0,65,61,0,0,0,68,1,64,0,57,0,0,2,134,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,132,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,104,1,0,0,65,0,0,2,104,2,64,0,156,0,0,0,0,4,1,128,25,0,0,0,64,1,64,2,16],[0,0,2,133,1,16,1,199,0,0,9,158,0,1,4,48,0,0,0,0,2,0,4,22,0,0,0,0,2,2,0,75],[0,0,4,38,0,0,193,61,0,0,0,4,2,48,0,138,0,0,0,32,2,32,0,140,0,0,4,38,0,0,65,61],[0,0,0,0,2,0,4,17,0,0,128,4,2,32,0,140,0,0,0,249,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,104,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,2,104,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,2,181,1,16,1,199,0,0,128,16,2,0,0,57,9,156,9,146,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,4,38,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,14,6,0,0,41,0,0,0,224,1,96,2,112,0,0,255,255,2,16,1,143,0,0,0,1,1,32,2,112],[0,0,0,1,3,16,0,57,0,0,0,7,65,48,0,201,0,0,0,7,84,16,1,26,0,0,0,0,3,67,0,75],[0,0,2,98,0,0,193,61,0,0,0,5,2,32,2,16,0,0,0,4,2,32,1,191,0,0,0,80,67,32,0,201],[0,0,0,80,84,48,1,26,0,0,0,0,4,66,0,75,0,0,2,98,0,0,193,61,0,0,0,0,1,49,0,25],[0,0,0,32,2,32,2,16,0,0,0,0,1,33,1,159,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,112,0,0,193,61,0,0,0,68,2,16,0,57],[0,0,2,131,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,7,41,0,0,1,61,0,0,0,0,2,0,4,22,0,0,0,0,2,2,0,75,0,0,4,38,0,0,193,61],[0,0,0,4,2,48,0,138,0,0,0,32,2,32,0,140,0,0,4,38,0,0,65,61,0,0,0,4,2,16,3,112],[0,0,0,0,2,2,4,59,0,0,2,111,4,32,0,156,0,0,4,38,0,0,33,61,0,0,0,35,4,32,0,57],[0,0,2,112,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,112,4,64,1,151,0,0,0,0,7,4,0,75,0,0,0,0,5,0,128,25,0,0,2,112,4,64,0,156],[0,0,0,0,5,6,192,25,0,0,0,0,4,5,0,75,0,0,4,38,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,111,5,80,0,156],[0,0,4,38,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,4,38,0,0,33,61,0,0,0,0,2,0,4,17,0,0,128,1,2,32,0,140],[0,0,2,104,0,0,193,61,0,0,0,11,2,0,0,41,0,0,0,4,2,32,0,140,0,0,4,38,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,137,2,64,0,156],[0,0,2,158,0,0,65,61,0,0,2,132,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,174,1,0,0,65],[0,0,1,0,0,0,1,61,0,0,2,132,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,180,1,0,0,65],[0,0,0,196,0,16,4,63,0,0,2,136,1,0,0,65,0,0,9,158,0,1,4,48,0,14,0,0,0,3,0,29],[0,13,0,0,0,2,0,29,0,0,2,119,1,0,0,65,0,0,0,128,0,16,4,63,0,0,2,104,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,2,104,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,2,176,1,16,1,199,0,0,128,11,2,0,0,57,9,156,9,146,0,0,4,15,0,0,0,0,3,1,0,25],[0,0,0,96,3,48,2,112,0,0,2,104,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,33,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,25,0,0,65,61,0,0,0,0,7,5,0,75,0,0,1,48,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,239,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,4,38,0,0,65,61,0,0,0,128,1,0,4,61,0,0,255,255,3,16,0,140,0,0,4,38,0,0,33,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,123,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,17,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,124,1,32,0,156,0,0,3,195,0,0,33,61],[0,0,0,128,1,32,0,57,0,0,0,64,0,16,4,63,0,0,2,104,1,0,0,65,0,0,2,104,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,104,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,104,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,118,1,16,1,199,0,0,128,16,2,0,0,57,0,13,0,0,0,8,0,29,9,156,9,146,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,4,38,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,117,3,16,0,156],[0,0,3,195,0,0,33,61,0,0,0,96,3,16,0,57,0,0,0,64,0,48,4,63,0,0,2,104,3,0,0,65],[0,0,2,104,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,104,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,104,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,118,1,16,1,199,0,0,128,16,2,0,0,57,9,156,9,146,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,4,38,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,2,98,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,122,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,104,5,0,0,65,0,0,2,104,1,32,0,156],[0,0,0,0,2,5,128,25,0,0,0,0,1,0,4,20,0,0,2,104,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,125,1,16,1,199],[0,0,128,13,2,0,0,57,0,0,2,126,4,0,0,65,9,156,9,141,0,0,4,15,0,0,0,1,1,32,1,144],[0,0,4,38,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,104,2,16,0,156,0,0,2,104,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,4,96,0,0,193,61,0,0,0,68,3,16,0,57,0,0,2,131,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,132,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,133,1,32,1,199,0,0,9,158,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,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,1,244,0,0,65,61],[0,0,0,0,6,4,0,75,0,0,2,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,2,104,1,0,0,65],[0,0,2,104,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,9,158,0,1,4,48,0,14,0,0,0,8,0,29,0,12,0,0,0,6,0,29],[0,13,0,0,0,7,0,29,0,0,0,0,1,33,3,223,0,0,0,192,2,48,2,16,0,0,2,114,2,32,1,151],[0,0,2,115,2,32,1,199,0,1,0,0,0,33,3,181,0,0,0,0,1,33,3,175,0,0,128,16,2,0,0,57],[9,156,9,151,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,2,104,3,48,1,151],[0,0,0,1,2,32,1,144,0,0,2,131,0,0,97,61,0,0,0,63,2,48,0,57,0,0,2,116,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,111,6,64,0,156,0,0,3,195,0,0,33,61,0,0,0,1,5,80,1,144],[0,0,3,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,2,61,0,0,97,61,0,0,0,0,6,0,0,49,0,0,0,17,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,53,0,0,65,61,0,0,0,0,5,0,0,75,0,0,2,63,0,0,97,61,0,0,0,31,5,48,1,143],[0,0,0,5,3,48,2,114,0,0,2,75,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,67,0,0,65,61,0,0,0,0,6,5,0,75],[0,0,2,90,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,0,14,1,0,0,41,0,0,7,35,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,33,0,75,0,0,3,180,0,0,129,61,0,0,2,172,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,173,1,0,0,65,0,0,9,158,0,1,4,48],[0,0,2,132,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,135,1,0,0,65,0,0,1,0,0,0,1,61],[0,0,0,0,0,97,4,53,0,0,2,104,2,0,0,65,0,0,0,0,3,0,4,20,0,0,2,104,4,48,0,156],[0,0,0,0,3,2,128,25,0,0,2,104,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,182,1,16,1,199,0,0,128,13,2,0,0,57],[0,0,0,1,3,0,0,57,0,0,2,183,4,0,0,65,9,156,9,141,0,0,4,15,0,0,0,1,1,32,1,144],[0,0,4,38,0,0,97,61,0,0,0,0,1,0,0,25,0,0,9,157,0,1,4,46,0,0,0,31,4,48,1,143],[0,0,0,5,2,48,2,114,0,0,2,142,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,135,0,0,65,61,0,0,0,0,5,4,0,75,0,0,2,156,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,9,158,0,1,4,48,0,0,0,0,1,49,3,79,0,6,0,0,0,4,0,29],[0,0,0,224,7,64,2,112,0,0,2,138,2,0,0,65,0,0,0,64,0,32,4,63,0,0,64,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,64,0,4,48,0,140,0,0,2,168,0,0,65,61,0,0,0,4,2,0,0,57],[0,0,0,6,1,0,0,41,0,0,2,115,1,16,0,156,0,0,0,0,9,0,0,25,0,0,3,13,0,0,129,61],[0,0,0,0,1,0,4,26,0,0,0,0,1,25,0,75,0,0,3,159,0,0,193,61,0,13,0,0,0,2,0,29],[0,0,0,6,1,0,0,41,0,0,2,142,1,16,0,156,0,0,2,197,0,0,33,61,0,0,2,143,1,0,0,65],[0,0,0,128,2,0,4,61,0,0,0,0,2,114,0,75,0,0,3,9,0,0,161,61,0,0,0,5,2,112,2,16],[0,0,0,160,2,32,0,57,0,0,0,0,0,18,4,53,0,0,63,255,2,112,0,140,0,0,0,1,7,112,0,57],[0,0,2,188,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,9,0,0,161,61,0,0,0,1,1,16,1,191],[0,0,0,0,2,18,0,75,0,0,3,9,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,117,3,16,0,156,0,0,3,195,0,0,33,61,0,0,0,96,3,16,0,57],[0,0,0,64,0,48,4,63,0,0,2,104,3,32,0,156,0,0,2,104,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,104,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,104,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,118,1,16,1,199],[0,0,0,8,2,0,0,41,9,156,9,146,0,0,4,15,0,0,0,1,2,32,1,144,0,0,4,38,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,9,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,203,0,0,65,61,0,0,0,6,1,0,0,41],[0,0,0,3,1,16,0,140,0,0,2,199,0,0,33,61,0,0,0,128,1,0,4,61,0,0,0,0,1,1,0,75],[0,0,5,23,0,0,193,61,0,0,2,172,1,0,0,65,0,0,0,0,0,16,4,53,0,0,0,50,1,0,0,57],[0,0,2,101,0,0,1,61,0,0,0,4,1,0,0,57,0,9,0,89,0,0,0,146,0,0,0,0,8,0,0,25],[0,0,0,0,9,0,0,25,0,8,0,0,0,7,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,4,38,0,0,33,61,0,0,0,10,4,16,0,41,0,0,2,104,2,64,1,151],[0,0,0,0,1,0,4,20,0,0,0,17,3,0,3,103,0,1,0,0,0,35,3,85,0,0,0,9,5,64,0,108],[0,0,2,98,0,0,33,61,0,0,0,88,4,64,0,57,0,0,0,0,5,0,0,49,0,0,0,0,6,69,0,75],[0,0,2,98,0,0,65,61,0,12,0,0,0,9,0,29,0,14,0,0,0,8,0,29,0,0,0,0,2,35,3,79],[0,0,0,0,3,69,0,73,0,0,2,104,3,48,1,151,0,1,0,0,0,50,3,229,0,0,2,113,4,16,0,156],[0,0,8,14,0,0,129,61,0,0,0,0,2,50,3,223,0,0,0,192,1,16,2,16,0,0,2,114,1,16,1,151],[0,0,2,115,1,16,1,199,0,1,0,0,0,18,3,181,0,0,0,0,1,18,3,175,0,0,128,16,2,0,0,57],[9,156,9,151,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,2,104,3,48,1,151],[0,0,0,1,2,32,1,144,0,0,4,40,0,0,97,61,0,0,0,63,2,48,0,57,0,0,2,116,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,111,6,64,0,156,0,0,3,195,0,0,33,61,0,0,0,1,5,80,1,144],[0,0,3,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,3,81,0,0,97,61,0,0,0,0,6,0,0,49,0,0,0,17,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,73,0,0,65,61,0,0,0,0,5,0,0,75,0,0,3,83,0,0,97,61,0,0,0,5,5,48,2,114],[0,0,0,12,9,0,0,41,0,0,3,95,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,87,0,0,65,61,0,0,0,31,3,48,1,144],[0,0,3,110,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,7,35,0,0,193,61,0,0,0,128,1,0,4,61,0,0,0,0,1,49,0,75],[0,0,3,9,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,146,4,53,0,0,2,117,3,16,0,156],[0,0,3,195,0,0,33,61,0,0,0,96,3,16,0,57,0,0,0,64,0,48,4,63,0,0,2,104,3,32,0,156],[0,0,2,104,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,104,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,104,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,118,1,16,1,199,0,0,128,16,2,0,0,57,9,156,9,146,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,0,8,7,0,0,41,0,0,0,14,8,0,0,41,0,0,4,38,0,0,97,61],[0,0,0,0,9,1,4,59,0,0,0,1,8,128,0,57,0,0,0,0,1,120,0,75,0,0,0,13,2,0,0,41],[0,0,0,0,1,2,0,25,0,0,3,18,0,0,65,61,0,0,2,180,0,0,1,61,0,0,0,64,1,0,4,61],[0,0,0,100,2,16,0,57,0,0,2,139,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,68,2,16,0,57],[0,0,2,140,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,132,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,104,2,0,0,65,0,0,2,104,3,16,0,156],[0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16,0,0,2,141,1,16,1,199,0,0,9,158,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,117,3,16,0,156,0,0,3,199,0,0,161,61,0,0,2,172,1,0,0,65],[0,0,0,0,0,16,4,53,0,0,0,65,1,0,0,57,0,0,2,101,0,0,1,61,0,0,0,96,3,16,0,57],[0,0,0,64,0,48,4,63,0,0,2,104,4,0,0,65,0,0,2,104,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,104,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,104,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,118,1,16,1,199],[0,0,128,16,2,0,0,57,9,156,9,146,0,0,4,15,0,0,0,1,2,32,1,144,0,0,4,38,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,119,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,104,2,16,0,156,0,0,2,104,3,0,0,65,0,0,0,0,1,3,128,25,0,0,2,104,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,120,1,16,1,199,0,0,128,11,2,0,0,57,9,156,9,146,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,104,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,2,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,250,0,0,65,61,0,0,0,0,9,10,0,25,0,0,0,0,7,5,0,75],[0,0,4,18,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,67,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,111,2,32,0,156],[0,0,3,195,0,0,33,61,0,0,0,1,1,16,1,144,0,0,3,195,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,4,38,0,0,65,61,0,0,0,0,1,9,4,51],[0,0,255,255,2,16,0,140,0,0,4,100,0,0,161,61,0,0,0,0,1,0,0,25,0,0,9,158,0,1,4,48],[0,0,0,31,4,48,1,143,0,0,0,5,2,48,2,114,0,0,4,51,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,44,0,0,65,61,0,0,0,0,5,4,0,75],[0,0,4,65,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,9,158,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,80,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,72,0,0,65,61],[0,0,0,0,6,4,0,75,0,0,4,95,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,11,0,0,1,61],[0,0,0,8,3,0,0,41,0,0,0,0,0,49,4,53,0,0,2,130,1,32,1,199,0,0,9,157,0,1,4,46],[0,0,0,7,2,0,0,41,0,0,2,121,2,32,0,156,0,0,3,195,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,122,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,123,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,124,1,32,0,156],[0,0,3,195,0,0,33,61,0,0,0,128,1,32,0,57,0,0,0,64,0,16,4,63,0,0,2,104,1,0,0,65],[0,0,2,104,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,104,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,104,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,118,1,16,1,199,0,0,128,16,2,0,0,57,9,156,9,146,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,4,38,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,117,3,16,0,156],[0,0,3,195,0,0,33,61,0,0,0,96,3,16,0,57,0,0,0,64,0,48,4,63,0,0,2,104,3,0,0,65],[0,0,2,104,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,104,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,104,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,118,1,16,1,199,0,0,128,16,2,0,0,57,9,156,9,146,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,4,38,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,2,98,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,122,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,104,1,0,0,65,0,0,2,104,4,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,0,5,0,4,20,0,0,2,104,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,125,1,16,1,199,0,0,128,13,2,0,0,57],[0,0,2,126,4,0,0,65,9,156,9,141,0,0,4,15,0,0,0,1,1,32,1,144,0,0,4,38,0,0,97,61],[0,0,0,8,2,0,0,41,0,0,0,14,2,32,0,105,0,0,0,161,1,0,0,138,0,0,0,0,1,18,0,75],[0,0,2,98,0,0,33,61,0,0,0,13,1,0,0,41,0,0,0,92,1,16,0,57,0,0,0,80,67,16,0,201],[0,0,2,127,4,48,1,151,0,0,0,80,84,64,1,26,0,0,0,0,4,65,0,75,0,0,2,98,0,0,193,61],[0,0,0,160,4,32,0,57,0,0,0,0,2,52,0,25,0,0,0,0,3,66,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,2,98,0,0,193,61,0,0,2,113,3,32,0,156],[0,0,8,34,0,0,65,61,0,0,0,64,4,0,4,61,0,0,0,117,0,0,1,61,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,2,98,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,4,38,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,17,1,16,3,103],[0,0,0,0,1,1,4,59,0,0,2,115,2,16,0,156,0,0,0,0,9,0,0,25,0,0,6,138,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,7,53,0,0,193,61,0,0,0,0,2,3,0,25,0,0,0,8,1,32,0,108,0,0,2,98,0,0,33,61],[0,0,0,4,3,32,0,57,0,0,0,11,1,48,0,108,0,0,4,38,0,0,33,61,0,0,0,10,1,32,0,41],[0,0,0,17,1,16,3,103,0,0,0,0,1,1,4,59,0,0,2,115,2,16,0,156,0,0,0,0,9,0,0,25],[0,0,7,104,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,8,21,0,0,193,61,0,0,0,11,1,80,0,108],[0,0,3,9,0,0,129,61,0,0,0,10,1,80,0,41,0,0,0,17,2,0,3,103,0,0,0,0,3,18,3,79],[0,0,0,0,3,3,4,59,0,0,2,161,3,48,1,151,0,0,2,123,3,48,0,156,0,0,8,112,0,0,193,61],[0,0,0,0,4,5,0,25,0,0,0,8,3,64,0,108,0,0,2,98,0,0,33,61,0,0,0,4,3,64,0,57],[0,0,0,11,4,48,0,108,0,0,4,38,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,9,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,29],[0,0,0,12,5,16,0,107,0,0,0,0,6,0,0,25,0,0,0,1,6,0,64,57,0,0,0,0,5,4,4,59],[0,0,0,1,4,96,1,144,0,0,2,98,0,0,193,61,0,0,0,12,6,0,0,41,0,0,0,11,4,96,0,108],[0,0,4,38,0,0,33,61,0,0,0,12,6,0,0,41,0,0,0,8,4,96,0,108,0,0,2,98,0,0,33,61],[0,0,0,12,4,0,0,41,0,0,0,4,7,64,0,57,0,0,0,11,4,112,0,108,0,0,4,38,0,0,33,61],[0,0,0,12,6,0,0,41,0,0,0,10,4,96,0,41,0,0,0,0,4,66,3,79,0,0,0,0,8,4,4,59],[0,0,0,224,6,128,2,112,0,0,1,16,148,96,0,201,0,0,2,115,9,128,0,156,0,0,5,115,0,0,65,61],[0,0,0,0,169,100,0,217,0,0,1,16,9,144,0,140,0,0,2,98,0,0,193,61,0,9,0,0,0,116,0,29],[0,0,0,9,9,64,0,107,0,0,0,0,9,0,0,25,0,0,0,1,9,0,64,57,0,0,0,1,9,144,1,144],[0,0,2,98,0,0,193,61,0,0,0,9,10,0,0,41,0,0,0,11,9,160,0,108,0,0,4,38,0,0,33,61],[0,0,2,115,8,128,0,156,0,0,5,129,0,0,65,61,0,0,0,0,152,100,0,217,0,0,1,16,8,128,0,140],[0,0,2,98,0,0,193,61,0,0,0,248,5,80,2,112,0,0,0,10,7,112,0,41,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,164,5,0,0,65,0,0,0,0,0,90,4,53,0,0,0,0,7,114,3,79],[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,101,4,53],[0,0,0,31,8,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,5,158,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,183,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,5,150,0,0,65,61,0,0,0,10,3,48,0,41,0,0,0,0,10,8,0,75],[0,0,5,174,0,0,97,61,0,0,0,5,9,144,2,16,0,0,0,0,7,151,3,79,0,0,0,0,9,150,0,25],[0,0,0,3,8,128,2,16,0,0,0,0,10,9,4,51,0,0,0,0,10,138,1,207,0,0,0,0,10,138,2,47],[0,0,0,0,7,7,4,59,0,0,1,0,8,128,0,137,0,0,0,0,7,135,2,47,0,0,0,0,7,135,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,165,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,5,197,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,5,189,0,0,65,61,0,0,0,0,6,3,0,75,0,0,5,212,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,166,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,104,2,0,0,65],[0,0,2,104,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,104,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,104,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,9,156,9,141,0,0,4,15,0,0,0,0,3,1,0,25],[0,0,0,96,3,48,2,112,0,0,2,104,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,5,253,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,5,245,0,0,65,61,0,0,0,0,7,5,0,75,0,0,6,12,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,170,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,111,4,16,0,156,0,0,3,195,0,0,33,61,0,0,0,1,2,32,1,144,0,0,3,195,0,0,193,61],[0,0,0,64,0,16,4,63,0,0,0,32,2,48,0,140,0,0,4,38,0,0,65,61,0,0,0,9,3,0,0,41],[0,0,0,11,2,48,0,108,0,0,8,199,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,2,169,1,0,0,65,0,0,0,0,0,16,4,57,0,0,128,17,1,0,0,57],[0,0,0,4,0,16,4,67,0,0,2,104,1,0,0,65,0,0,0,0,2,0,4,20,0,0,2,104,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,2,170,1,16,1,199,0,0,128,2,2,0,0,57],[9,156,9,146,0,0,4,15,0,0,0,1,2,32,1,144,0,0,8,208,0,0,97,61,0,0,0,0,1,1,4,59],[0,0,0,0,1,1,0,75,0,0,4,38,0,0,97,61,0,0,0,64,3,0,4,61,0,0,2,171,1,0,0,65],[0,0,0,0,0,19,4,53,0,0,0,4,1,48,0,57,0,0,0,32,2,0,0,57,0,0,0,0,0,33,4,53],[0,0,0,36,1,48,0,57,0,0,0,12,4,0,0,41,0,0,0,0,0,65,4,53,0,0,0,31,2,64,1,143],[0,11,0,0,0,3,0,29,0,0,0,68,1,48,0,57,0,0,0,10,3,0,0,41,0,0,0,17,3,48,3,103],[0,0,0,5,4,64,2,114,0,0,6,75,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,6,67,0,0,65,61,0,0,0,0,5,2,0,75],[0,0,6,90,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,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,3,3,4,59,0,0,1,0,2,32,0,137,0,0,0,0,3,35,2,47,0,0,0,0,2,35,1,207],[0,0,0,0,2,82,1,159,0,0,0,0,0,36,4,53,0,0,0,12,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,2,104,2,0,0,65,0,0,0,11,4,0,0,41,0,0,2,104,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,2,104,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,2,104,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,17,2,0,0,57,9,156,9,141,0,0,4,15,0,0,0,1,2,32,1,144,0,0,8,209,0,0,97,61],[0,0,0,11,1,0,0,41,0,0,2,111,1,16,0,156,0,0,3,195,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,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,9,156,8,241,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,9,157,0,1,4,46,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,2,98,0,0,33,61,0,0,0,4,2,48,0,57],[0,0,0,11,1,32,0,108,0,0,4,38,0,0,33,61,0,0,0,10,3,48,0,41,0,0,0,17,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,25],[0,0,0,0,4,55,0,75,0,0,0,0,4,0,0,25,0,0,0,1,4,0,64,57,0,0,0,1,4,64,1,144],[0,0,2,98,0,0,193,61,0,0,0,11,4,112,0,108,0,0,4,38,0,0,33,61,0,0,0,10,5,32,0,41],[0,0,2,104,4,80,1,151,0,0,0,0,2,0,4,20,0,1,0,0,0,65,3,85,0,0,0,0,5,83,0,25],[0,0,0,0,3,53,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,2,98,0,0,193,61,0,0,0,0,3,0,0,49,0,0,0,0,6,83,0,75,0,0,2,98,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,0,0,1,65,3,79],[0,0,0,0,3,83,0,73,0,0,2,104,3,48,1,151,0,1,0,0,0,49,3,229,0,0,2,104,4,32,0,156],[0,0,8,14,0,0,33,61,0,0,0,0,1,49,3,223,0,0,0,192,2,32,2,16,0,0,2,114,2,32,1,151],[0,0,2,115,2,32,1,199,0,1,0,0,0,33,3,181,0,0,0,0,1,33,3,175,0,0,128,16,2,0,0,57],[9,156,9,151,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,2,104,3,48,1,151],[0,0,0,1,2,32,1,144,0,0,7,77,0,0,97,61,0,0,0,63,2,48,0,57,0,0,2,116,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,111,6,64,0,156,0,0,3,195,0,0,33,61,0,0,0,1,5,80,1,144],[0,0,3,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,6,221,0,0,97,61,0,0,0,0,6,0,0,49,0,0,0,17,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,213,0,0,65,61,0,0,0,0,5,0,0,75,0,0,6,223,0,0,97,61,0,0,0,5,5,48,2,114],[0,0,0,14,9,0,0,41,0,0,6,235,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,227,0,0,65,61,0,0,0,31,3,48,1,144],[0,0,6,250,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,7,35,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,117,3,16,0,156,0,0,3,195,0,0,33,61,0,0,0,96,3,16,0,57],[0,0,0,64,0,48,4,63,0,0,2,104,3,32,0,156,0,0,2,104,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,104,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,104,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,118,1,16,1,199],[0,0,128,16,2,0,0,57,9,156,9,146,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,4,38,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,6,141,0,0,65,61,0,0,5,40,0,0,1,61,0,0,0,64,1,0,4,61],[0,0,0,68,2,16,0,57,0,0,2,144,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,132,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,104,2,0,0,65],[0,0,2,104,3,16,0,156,0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16,0,0,2,133,1,16,1,199],[0,0,9,158,0,1,4,48,0,0,0,64,1,0,4,61,0,0,0,132,2,16,0,57,0,0,2,145,3,0,0,65],[0,0,0,0,0,50,4,53,0,0,0,100,2,16,0,57,0,0,2,146,3,0,0,65,0,0,0,0,0,50,4,53],[0,0,0,68,2,16,0,57,0,0,2,147,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,132,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,104,2,0,0,65],[0,0,2,104,3,16,0,156,0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16,0,0,2,148,1,16,1,199],[0,0,9,158,0,1,4,48,0,0,0,31,4,48,1,143,0,0,0,5,2,48,2,114,0,0,7,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,7,81,0,0,65,61],[0,0,0,0,5,4,0,75,0,0,7,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,9,158,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,2,98,0,0,33,61,0,0,0,4,2,48,0,57,0,0,0,11,1,32,0,108,0,0,4,38,0,0,33,61],[0,0,0,10,3,48,0,41,0,0,0,17,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,25,0,0,0,0,4,167,0,75,0,0,0,0,4,0,0,25],[0,0,0,1,4,0,64,57,0,0,0,1,4,64,1,144,0,0,2,98,0,0,193,61,0,0,0,11,4,112,0,108],[0,0,4,38,0,0,33,61,0,0,2,149,4,48,1,152,0,0,8,122,0,0,193,61,0,0,2,151,4,48,0,156],[0,0,8,126,0,0,129,61,0,0,2,152,3,48,1,152,0,0,8,130,0,0,97,61,0,0,0,10,4,32,0,41],[0,0,2,104,3,64,1,151,0,0,0,0,2,0,4,20,0,1,0,0,0,49,3,85,0,0,0,0,4,74,0,25],[0,0,0,0,5,164,0,75,0,0,0,0,5,0,0,25,0,0,0,1,5,0,64,57,0,0,0,1,5,80,1,144],[0,0,2,98,0,0,193,61,0,0,0,0,5,0,0,49,0,0,0,0,6,69,0,75,0,0,2,98,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,0,0,1,49,3,79,0,0,0,0,3,69,0,73,0,0,2,104,3,48,1,151,0,1,0,0,0,49,3,229],[0,0,2,104,4,32,0,156,0,0,8,14,0,0,33,61,0,0,0,0,1,49,3,223,0,0,0,192,2,32,2,16],[0,0,2,114,2,32,1,151,0,0,2,115,2,32,1,199,0,1,0,0,0,33,3,181,0,0,0,0,1,33,3,175],[0,0,0,2,2,0,0,57,9,156,9,151,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,0,2,104,3,48,1,151,0,0,0,1,2,32,1,144,0,0,8,137,0,0,97,61,0,0,0,63,2,48,0,57],[0,0,2,116,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,111,6,64,0,156,0,0,3,195,0,0,33,61],[0,0,0,1,5,80,1,144,0,0,3,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,0,13,10,0,0,41,0,0,7,195,0,0,97,61],[0,0,0,0,6,0,0,49,0,0,0,17,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,7,187,0,0,65,61,0,0,0,0,5,0,0,75],[0,0,7,197,0,0,97,61,0,0,0,5,5,48,2,114,0,0,0,14,9,0,0,41,0,0,7,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,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,201,0,0,65,61,0,0,0,31,3,48,1,144,0,0,7,224,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,8,164,0,0,193,61],[0,0,0,0,2,4,4,51,0,0,2,154,2,32,1,151,0,0,0,219,3,160,2,16,0,0,2,155,3,48,1,151],[0,0,0,0,2,35,1,159,0,0,2,123,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,117,3,16,0,156,0,0,3,195,0,0,33,61,0,0,0,96,3,16,0,57,0,0,0,64,0,48,4,63],[0,0,2,104,3,32,0,156,0,0,2,104,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,104,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,104,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,118,1,16,1,199,0,0,128,16,2,0,0,57],[9,156,9,146,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,4,38,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,7,107,0,0,65,61,0,0,5,57,0,0,1,61,0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57],[0,0,2,134,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,7,41,0,0,1,61,0,0,0,64,1,0,4,61,0,0,0,132,2,16,0,57,0,0,2,158,3,0,0,65],[0,0,0,0,0,50,4,53,0,0,0,100,2,16,0,57,0,0,2,159,3,0,0,65,0,0,0,0,0,50,4,53],[0,0,0,68,2,16,0,57,0,0,2,160,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,7,65,0,0,1,61,0,0,0,32,1,16,2,16,0,0,2,128,1,16,1,151],[0,0,0,0,1,18,1,159,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,8,42,0,0,193,61,0,0,0,191,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,17,4,64,3,103,0,0,0,5,5,80,2,114,0,0,8,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,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,8,53,0,0,65,61,0,0,0,0,6,3,0,75,0,0,8,76,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,104,4,0,0,65,0,0,2,104,3,16,0,156],[0,0,0,0,1,4,128,25,0,0,0,64,1,16,2,16,0,0,2,104,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,104,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,118,1,16,1,199],[0,0,128,13,2,0,0,57,0,0,0,3,3,0,0,57,0,0,2,129,4,0,0,65,0,0,0,1,5,0,0,41],[0,0,0,10,6,0,0,41,9,156,9,141,0,0,4,15,0,0,0,1,1,32,1,144,0,0,4,38,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,104,2,16,0,156],[0,0,2,104,1,0,128,65,0,0,0,64,1,16,2,16,0,0,2,130,1,16,1,199,0,0,9,157,0,1,4,46],[0,0,0,64,1,0,4,61,0,0,0,100,2,16,0,57,0,0,2,162,3,0,0,65,0,0,0,0,0,50,4,53],[0,0,0,68,2,16,0,57,0,0,2,163,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,168,0,0,1,61,0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57],[0,0,2,150,3,0,0,65,0,0,8,133,0,0,1,61,0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57],[0,0,2,157,3,0,0,65,0,0,8,133,0,0,1,61,0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57],[0,0,2,156,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,7,41,0,0,1,61,0,0,0,31,4,48,1,143,0,0,0,5,2,48,2,114,0,0,8,148,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,141,0,0,65,61],[0,0,0,0,5,4,0,75,0,0,8,162,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,9,158,0,1,4,48],[0,0,0,68,2,16,0,57,0,0,2,153,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,7,41,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,8,183,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,175,0,0,65,61,0,0,0,0,6,4,0,75],[0,0,8,198,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,11,0,0,1,61,0,0,0,100,2,16,0,57],[0,0,2,167,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,68,2,16,0,57,0,0,2,168,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,168,0,0,1,61],[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,2,104,3,48,1,151,0,0,0,5,5,48,2,114,0,0,8,225,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,217,0,0,65,61,0,0,0,0,6,4,0,75,0,0,8,240,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,11,0,0,1,61,0,0,2,104,4,16,1,151,0,0,0,0,3,0,4,20,0,0,0,17,5,0,3,103],[0,1,0,0,0,69,3,85,0,0,0,0,1,18,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,1,2,32,1,144,0,0,9,78,0,0,193,61,0,0,0,0,6,0,0,49],[0,0,0,0,2,22,0,75,0,0,9,78,0,0,65,61,0,0,0,0,2,69,3,79,0,0,0,0,1,22,0,73],[0,0,2,104,1,16,1,151,0,1,0,0,0,18,3,229,0,0,2,113,4,48,0,156,0,0,9,82,0,0,129,61],[0,0,0,0,1,18,3,223,0,0,0,192,2,48,2,16,0,0,2,114,2,32,1,151,0,0,2,115,2,32,1,199],[0,1,0,0,0,33,3,181,0,0,0,0,1,33,3,175,0,0,128,16,2,0,0,57,9,156,9,151,0,0,4,15],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,2,104,3,48,1,151,0,0,0,1,2,32,1,144],[0,0,9,89,0,0,97,61,0,0,0,63,2,48,0,57,0,0,2,116,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,111,6,64,0,156,0,0,9,116,0,0,33,61,0,0,0,1,5,80,1,144,0,0,9,116,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,9,44,0,0,97,61,0,0,0,0,6,0,0,49,0,0,0,17,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,9,36,0,0,65,61],[0,0,0,0,5,0,0,75,0,0,9,46,0,0,97,61,0,0,0,31,5,48,1,143,0,0,0,5,3,48,2,114],[0,0,9,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,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,9,50,0,0,65,61,0,0,0,0,6,5,0,75,0,0,9,73,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,9,122,0,0,193,61],[0,0,0,0,1,4,4,51,0,0,0,0,0,1,4,45,0,0,2,172,1,0,0,65,0,0,0,0,0,16,4,53],[0,0,0,17,1,0,0,57,0,0,9,119,0,0,1,61,0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57],[0,0,2,134,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,9,128,0,0,1,61,0,0,0,31,4,48,1,143,0,0,0,5,2,48,2,114,0,0,9,100,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,93,0,0,65,61],[0,0,0,0,5,4,0,75,0,0,9,114,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,9,158,0,1,4,48],[0,0,2,172,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,173,1,0,0,65,0,0,9,158,0,1,4,48,0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57],[0,0,2,144,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,132,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,104,2,0,0,65,0,0,2,104,3,16,0,156],[0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16,0,0,2,133,1,16,1,199,0,0,9,158,0,1,4,48],[0,0,0,0,0,1,4,47,0,0,9,144,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,9,149,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,9,154,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,9,156,0,0,4,50,0,0,9,157,0,1,4,46,0,0,9,158,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,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,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,0,0,0,0],[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,64,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,8,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,63,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],[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],[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],[37,85,210,193,0,0,0,0,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],[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],[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],[67,48,27,71,80,219,106,244,192,73,13,165,34,158,240,54,250,134,179,144,112,97,207,15,207,177,199,38,59,63,228,240]],"0x0000000000000000000000000000000000008009":[[0,18,0,0,0,0,0,2,0,7,0,0,0,0,0,2,0,0,0,0,6,1,0,25,0,0,0,96,7,96,2,112],[0,0,0,82,8,112,1,151,0,1,0,0,0,129,3,85,0,2,0,0,0,129,3,85,0,3,0,0,0,129,3,85],[0,4,0,0,0,129,3,85,0,5,0,0,0,129,3,85,0,6,0,0,0,129,3,85,0,7,0,0,0,129,3,85],[0,8,0,0,0,129,3,85,0,9,0,0,0,129,3,85,0,10,0,0,0,129,3,85,0,11,0,0,0,129,3,85],[0,12,0,0,0,129,3,85,0,13,0,0,0,129,3,85,0,14,0,0,0,129,3,85,0,15,0,0,0,129,3,85],[0,16,0,0,0,129,3,85,0,17,0,0,0,1,3,85,0,0,0,82,0,112,1,157,0,0,0,128,6,0,0,57],[0,0,0,64,0,96,4,63,0,0,0,0,9,0,4,22,0,0,0,1,6,32,1,144,0,0,0,47,0,0,193,61],[0,0,0,0,6,9,0,75,0,0,1,9,0,0,193,61,0,0,0,2,2,32,1,144,0,0,0,54,0,0,193,61],[0,0,0,0,2,0,4,17,0,0,0,84,2,32,0,156,0,0,0,54,0,0,65,61,0,0,0,97,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,101,1,0,0,65,0,0,0,196,0,16,4,63,0,0,0,102,1,0,0,65],[0,0,0,228,0,16,4,63,0,0,0,103,1,0,0,65,0,0,1,68,0,1,4,48,0,0,0,0,1,9,0,75],[0,0,1,9,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,83,1,0,0,65,0,0,1,67,0,1,4,46,0,0,0,0,2,0,4,20,0,0,105,120,9,32,0,138],[0,0,105,121,2,32,0,140,0,0,0,0,9,0,64,25,0,0,0,85,6,64,1,151,0,0,0,0,2,0,4,16],[0,0,0,0,2,38,0,75,0,0,0,72,0,0,193,61,0,0,0,97,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,99,1,0,0,65,0,0,0,196,0,16,4,63,0,0,0,100,1,0,0,65,0,0,1,68,0,1,4,48],[0,0,0,0,2,3,0,75,0,0,0,166,0,0,193,61,0,0,0,0,10,0,4,17,0,0,0,0,0,0,4,23],[0,0,0,0,2,8,0,25,0,0,0,0,2,114,0,73,0,0,0,82,2,32,1,151,0,1,0,0,0,33,3,229],[0,0,0,82,3,144,0,156,0,0,0,247,0,0,33,61,0,0,0,1,3,80,1,144,0,0,0,0,1,33,3,223],[0,0,0,93,2,0,0,65,0,0,0,94,3,0,0,65,0,0,0,0,3,2,192,25,0,0,0,192,2,144,2,16],[0,0,0,95,2,32,1,151,0,0,0,0,2,50,1,159,0,1,0,0,0,33,3,181,0,0,0,0,1,33,3,175],[0,0,0,85,13,160,1,151,0,0,0,0,2,6,0,25,1,66,1,60,0,0,4,15,0,0,0,0,3,1,0,25],[0,0,0,96,3,48,2,112,0,0,0,82,3,48,1,151,0,0,0,1,2,32,1,144,0,0,1,17,0,0,97,61],[0,0,0,63,2,48,0,57,0,0,0,88,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,89,6,64,0,156],[0,0,1,11,0,0,33,61,0,0,0,1,5,80,1,144,0,0,1,11,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,127,0,0,97,61],[0,0,0,0,6,0,0,49,0,0,0,17,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,119,0,0,65,61,0,0,0,0,5,0,0,75],[0,0,0,129,0,0,97,61,0,0,0,31,5,48,1,143,0,0,0,5,3,48,2,114,0,0,0,141,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,133,0,0,65,61,0,0,0,0,6,5,0,75,0,0,0,156,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,82,2,0,0,65,0,0,0,82,3,16,0,156,0,0,0,0,1,2,128,25],[0,0,0,82,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,67,0,1,4,46,0,3,0,0,0,9,0,29,0,5,0,0,0,8,0,29],[0,6,0,0,0,7,0,29,0,7,0,0,0,5,0,29,0,0,0,86,1,0,0,65,0,0,0,160,0,16,4,63],[0,0,0,0,1,0,4,17,0,1,0,0,0,1,0,29,0,0,0,85,1,16,1,151,0,0,0,164,0,16,4,63],[0,2,0,0,0,6,0,29,0,0,0,196,0,96,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,82,1,0,0,65,0,0,0,0,2,0,4,20,0,0,0,82,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,192,1,32,2,16,0,0,0,87,1,16,1,199,0,0,128,10,2,0,0,57,1,66,1,55,0,0,4,15],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,0,82,5,48,1,152,0,0,0,236,0,0,97,61],[0,0,0,63,3,80,0,57,0,0,0,88,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,89,7,48,0,156],[0,0,1,11,0,0,33,61,0,0,0,1,6,96,1,144,0,0,1,11,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,221,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,213,0,0,65,61,0,0,0,0,6,3,0,75,0,0,0,236,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,0,7,5,0,0,41,0,0,0,6,7,0,0,41,0,0,0,5,3,0,0,41],[0,0,0,4,4,0,0,41,0,0,0,3,9,0,0,41,0,0,1,9,0,0,97,61,0,0,0,90,1,64,0,156],[0,0,0,2,6,0,0,41,0,0,0,1,10,0,0,41,0,0,1,44,0,0,65,61,0,0,0,64,1,0,4,61],[0,0,0,68,2,16,0,57,0,0,0,96,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,97,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,82,2,0,0,65],[0,0,0,82,3,16,0,156,0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16,0,0,0,98,1,16,1,199],[0,0,1,68,0,1,4,48,0,0,0,0,1,0,0,25,0,0,1,68,0,1,4,48,0,0,0,91,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,92,1,0,0,65],[0,0,1,68,0,1,4,48,0,0,0,31,4,48,1,143,0,0,0,5,2,48,2,114,0,0,1,28,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,21,0,0,65,61],[0,0,0,0,5,4,0,75,0,0,1,42,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,68,0,1,4,48],[0,0,0,0,2,0,0,49,0,0,0,17,1,0,3,103,0,0,0,0,0,4,4,23,0,1,0,0,0,1,3,85],[0,0,8,252,9,144,0,57,0,0,0,0,3,50,0,75,0,0,0,77,0,0,129,61,0,0,0,91,1,0,0,65],[0,0,0,0,0,16,4,53,0,0,0,17,1,0,0,57,0,0,1,14,0,0,1,61,0,0,1,58,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,64,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,66,0,0,4,50,0,0,1,67,0,1,4,46],[0,0,1,68,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,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,1,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],[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],[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],[34,10,122,216,106,86,85,195,94,88,55,242,140,26,244,22,221,183,6,50,184,65,139,51,50,146,77,156,176,109,14,138]],"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,216,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,11,0,0,65,61,0,0,0,0,2,1,4,59,0,0,0,224,2,32,2,112],[0,0,0,218,4,32,0,156,0,0,0,44,0,0,161,61,0,0,0,219,4,32,0,156,0,0,0,56,0,0,161,61],[0,0,0,220,4,32,0,156,0,0,0,178,0,0,97,61,0,0,0,221,4,32,0,156,0,0,2,4,0,0,97,61],[0,0,0,222,2,32,0,156,0,0,3,11,0,0,193,61,0,0,0,0,2,0,4,22,0,0,0,0,2,2,0,75],[0,0,3,11,0,0,193,61,0,0,0,4,2,48,0,138,0,0,0,32,2,32,0,140,0,0,3,11,0,0,65,61],[0,0,0,4,1,16,3,112,0,0,0,0,1,1,4,59,0,0,0,230,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,89,3,61,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,11,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,217,1,0,0,65,0,0,3,90,0,1,4,46],[0,0,0,225,4,32,0,156,0,0,0,122,0,0,33,61,0,0,0,228,1,32,0,156,0,0,1,194,0,0,97,61],[0,0,0,229,1,32,0,156,0,0,3,11,0,0,193,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75],[0,0,3,11,0,0,193,61,0,0,0,1,1,0,0,57,0,0,0,0,1,1,4,26,0,0,2,1,0,0,1,61],[0,0,0,223,4,32,0,156,0,0,1,203,0,0,97,61,0,0,0,224,2,32,0,156,0,0,3,11,0,0,193,61],[0,0,0,0,2,0,4,22,0,0,0,0,2,2,0,75,0,0,3,11,0,0,193,61,0,0,0,4,2,48,0,138],[0,0,0,96,2,32,0,140,0,0,3,11,0,0,65,61,0,0,0,4,2,16,3,112,0,0,0,0,4,2,4,59],[0,0,0,230,2,64,0,156,0,0,3,11,0,0,33,61,0,0,0,36,2,16,3,112,0,0,0,0,2,2,4,59],[0,0,0,230,5,32,1,151,0,0,0,230,2,32,0,156,0,0,3,11,0,0,33,61,0,0,0,68,1,16,3,112],[0,0,0,0,1,1,4,59,0,4,0,0,0,1,0,29,0,0,0,0,1,0,4,17,0,0,128,1,2,16,0,140],[0,0,0,85,0,0,97,61,0,0,128,6,2,16,0,140,0,0,0,85,0,0,97,61,0,0,128,9,1,16,0,140],[0,0,2,148,0,0,193,61,0,0,0,0,0,64,4,53,0,0,0,32,0,0,4,63,0,0,0,216,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,0,216,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,0,236,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,89,3,84,0,0,4,15,0,0,0,5,3,0,0,41,0,0,0,1,2,32,1,144,0,0,3,11,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,195,0,0,129,61],[0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57,0,0,0,243,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,244,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,216,2,0,0,65,0,0,0,216,3,16,0,156,0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16],[0,0,0,245,1,16,1,199,0,0,3,91,0,1,4,48,0,0,0,226,4,32,0,156,0,0,1,253,0,0,97,61],[0,0,0,227,2,32,0,156,0,0,3,11,0,0,193,61,0,0,0,0,2,0,4,22,0,0,0,0,2,2,0,75],[0,0,3,11,0,0,193,61,0,0,0,4,2,48,0,138,0,0,0,64,2,32,0,140,0,0,3,11,0,0,65,61],[0,0,0,4,2,16,3,112,0,0,0,0,4,2,4,59,0,0,0,230,2,64,0,156,0,0,3,11,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,2,25,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,174,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,216,1,0,0,65,0,0,0,0,2,0,4,20,0,0,0,216,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,0,236,1,16,1,199,0,0,128,16,2,0,0,57],[0,5,0,0,0,4,0,29,3,89,3,84,0,0,4,15,0,0,0,5,5,0,0,41,0,0,0,1,2,32,1,144],[0,0,3,11,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,0,3,1,4,26,0,0,0,4,4,0,0,41],[0,0,0,0,2,67,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,2,246,0,0,97,61,0,0,0,251,1,0,0,65,0,0,0,0,0,16,4,53],[0,0,0,17,1,0,0,57,0,0,1,250,0,0,1,61,0,0,0,4,2,48,0,138,0,0,0,64,2,32,0,140],[0,0,3,11,0,0,65,61,0,0,0,4,2,16,3,112,0,0,0,0,8,2,4,59,0,0,0,230,2,128,0,156],[0,0,3,11,0,0,33,61,0,0,0,36,2,16,3,112,0,0,0,0,4,2,4,59,0,0,0,234,2,64,0,156],[0,0,3,11,0,0,33,61,0,0,0,35,2,64,0,57,0,0,0,235,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,235,2,32,1,151,0,0,0,0,7,2,0,75],[0,0,0,0,5,0,128,25,0,0,0,235,2,32,0,156,0,0,0,0,5,6,192,25,0,0,0,0,2,5,0,75],[0,0,3,11,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,234,6,32,0,156,0,0,1,247,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,234,7,96,0,156,0,0,1,247,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,11,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,231,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,223,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,248,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,16,0,0,0,0,0,16,4,53],[0,0,0,32,0,0,4,63,0,0,0,216,1,0,0,65,0,0,0,0,2,0,4,20,0,0,0,216,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,0,236,1,16,1,199,0,0,128,16,2,0,0,57],[3,89,3,84,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,11,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,0,2,1,4,26,0,0,0,0,9,0,4,22],[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,237,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,43,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,36,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,234,3,160,0,156,0,0,1,247,0,0,33,61,0,0,0,1,2,32,1,144],[0,0,1,247,0,0,193,61,0,1,0,0,0,9,0,29,0,2,0,0,0,8,0,29,0,0,0,64,0,160,4,63],[0,0,0,238,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,79,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,72,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,216,2,0,0,65],[0,0,0,216,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,216,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,216,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,10,0,29],[3,89,3,79,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,216,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,120,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,112,0,0,65,61],[0,0,0,0,7,5,0,75,0,0,1,135,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,13,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,234,4,16,0,156],[0,0,0,5,4,0,0,41,0,0,1,247,0,0,33,61,0,0,0,1,2,32,1,144,0,0,1,247,0,0,193,61],[0,0,0,64,0,16,4,63,0,0,0,32,2,48,0,140,0,0,3,11,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,1,2,0,0,41,0,0,0,0,0,33,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,230,6,64,1,151,0,0,0,0,4,2,0,75,0,0,1,171,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,164,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,216,3,0,0,65],[0,0,0,216,4,16,0,156,0,0,0,0,1,3,128,25,0,0,0,64,1,16,2,16,0,0,0,216,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,216,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,239,1,16,1,199,0,0,128,13,2,0,0,57,0,0,0,3,3,0,0,57,0,0,0,240,4,0,0,65],[0,0,0,2,5,0,0,41,0,0,3,6,0,0,1,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75],[0,0,3,11,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,1,0,1,0,0,65,0,0,2,12,0,0,1,61,0,0,0,4,2,48,0,138],[0,0,0,32,2,32,0,140,0,0,3,11,0,0,65,61,0,0,0,4,1,16,3,112,0,0,0,0,4,1,4,59],[0,0,0,230,1,64,0,156,0,0,3,11,0,0,33,61,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,216,1,0,0,65,0,0,0,0,2,0,4,20,0,0,0,216,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,0,236,1,16,1,199,0,0,128,16,2,0,0,57],[0,5,0,0,0,4,0,29,3,89,3,84,0,0,4,15,0,0,0,5,4,0,0,41,0,0,0,1,2,32,1,144],[0,0,3,11,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,0,2,1,4,26,0,0,0,0,5,0,4,22],[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,237,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,0,0,57,0,0,0,0,0,33,4,53,0,0,0,56,2,16,0,57],[0,0,0,0,0,82,4,53,0,0,0,249,2,16,0,156,0,0,2,35,0,0,65,61,0,0,0,251,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,252,1,0,0,65],[0,0,3,91,0,1,4,48,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,3,11,0,0,193,61],[0,0,0,18,1,0,0,57,0,0,0,128,0,16,4,63,0,0,0,231,1,0,0,65,0,0,3,90,0,1,4,46],[0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,3,11,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,232,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,89,3,42,0,0,4,15,0,0,0,192,1,16,0,138,0,0,0,216,2,0,0,65],[0,0,0,216,3,16,0,156,0,0,0,0,1,2,128,25,0,0,0,96,1,16,2,16,0,0,0,233,1,16,1,199],[0,0,3,90,0,1,4,46,0,0,0,244,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,253,1,0,0,65],[0,0,0,196,0,16,4,63,0,0,0,254,1,0,0,65,0,0,3,91,0,1,4,48,0,3,0,0,0,5,0,29],[0,0,0,96,7,16,0,57,0,0,0,64,0,112,4,63,0,0,0,238,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,57,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,50,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,216,2,0,0,65,0,0,0,216,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,216,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,216,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,4,0,0,0,7,0,29,3,89,3,79,0,0,4,15],[0,0,0,4,10,0,0,41,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,0,216,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,99,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,91,0,0,65,61,0,0,0,0,7,5,0,75],[0,0,2,114,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,160,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,234,4,16,0,156,0,0,0,5,5,0,0,41],[0,0,0,3,4,0,0,41,0,0,1,247,0,0,33,61,0,0,0,1,2,32,1,144,0,0,1,247,0,0,193,61],[0,0,0,64,0,16,4,63,0,0,0,32,2,48,0,140,0,0,3,11,0,0,65,61,0,0,0,0,0,65,4,53],[0,0,0,216,2,0,0,65,0,0,0,0,3,0,4,20,0,0,0,216,4,48,0,156,0,0,0,0,3,2,128,25],[0,0,0,216,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,241,1,16,1,199,0,0,0,230,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,250,4,0,0,65,0,0,3,6,0,0,1,61],[0,0,0,244,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,246,1,0,0,65,0,0,0,196,0,16,4,63],[0,0,0,247,1,0,0,65,0,0,0,228,0,16,4,63,0,0,0,248,1,0,0,65,0,0,3,91,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,2,173,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,165,0,0,65,61,0,0,0,0,6,4,0,75,0,0,2,188,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,216,1,0,0,65,0,0,0,216,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,91,0,1,4,48,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,216,3,0,0,65,0,0,0,0,1,0,4,20],[0,0,0,216,2,16,0,156,0,0,0,0,1,3,128,25,0,0,0,192,1,16,2,16,0,0,0,236,1,16,1,199],[0,0,128,16,2,0,0,57,3,89,3,84,0,0,4,15,0,0,0,3,3,0,0,41,0,0,0,1,2,32,1,144],[0,0,3,11,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,216,2,16,0,156],[0,0,0,216,1,0,128,65,0,0,0,192,1,16,2,16,0,0,0,236,1,16,1,199,0,0,128,16,2,0,0,57],[3,89,3,84,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,11,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,216,2,0,0,65,0,0,0,0,3,0,4,20,0,0,0,216,4,48,0,156,0,0,0,0,3,2,128,25],[0,0,0,216,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,241,1,16,1,199,0,0,128,13,2,0,0,57,0,0,0,3,3,0,0,57],[0,0,0,242,4,0,0,65,0,0,3,6,0,0,1,61,0,0,0,0,0,33,4,27,0,0,0,64,1,0,4,61],[0,0,0,0,0,65,4,53,0,0,0,216,2,0,0,65,0,0,0,0,3,0,4,20,0,0,0,216,4,48,0,156],[0,0,0,0,3,2,128,25,0,0,0,216,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,241,1,16,1,199,0,0,128,13,2,0,0,57],[0,0,0,2,3,0,0,57,0,0,0,255,4,0,0,65,3,89,3,79,0,0,4,15,0,0,0,1,1,32,1,144],[0,0,3,11,0,0,97,61,0,0,0,0,1,0,0,25,0,0,3,90,0,1,4,46,0,0,0,0,1,0,0,25],[0,0,3,91,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,26,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,18,0,0,65,61,0,0,0,0,6,4,0,75,0,0,3,41,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,188,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,54,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,47,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,216,2,0,0,65,0,0,0,216,3,16,0,156,0,0,0,0,1,2,128,25],[0,0,0,0,3,0,4,20,0,0,0,216,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,236,1,16,1,199,0,0,128,16,2,0,0,57],[3,89,3,84,0,0,4,15,0,0,0,1,2,32,1,144,0,0,3,77,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,91,0,1,4,48,0,0,3,82,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,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,3,89,0,0,4,50,0,0,3,90,0,1,4,46,0,0,3,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],[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],[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],[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,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],[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],[0,0,0,0,0,0,0,0,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,133,150,243,102,125,100,44,247,228,170,104,216,74,35,175,46,168,47,32,204,114,133,255,17,151,6,212,83,54,59,33]],"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,60,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,252,0,0,65,61],[0,0,0,0,2,1,4,59,0,0,0,224,2,32,2,112,0,0,1,64,5,32,0,156,0,0,0,52,0,0,161,61],[0,0,1,65,4,32,0,156,0,0,0,104,0,0,33,61,0,0,1,77,4,32,0,156,0,0,0,163,0,0,33,61],[0,0,1,83,4,32,0,156,0,0,1,12,0,0,33,61,0,0,1,86,4,32,0,156,0,0,0,223,0,0,97,61],[0,0,1,87,1,32,0,156,0,0,3,252,0,0,193,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75],[0,0,3,252,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,2,112,0,0,1,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,3,252,0,0,193,61],[0,0,1,60,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,61,2,32,1,151,0,0,128,1,2,32,1,191,0,0,0,0,0,33,4,27],[0,0,1,62,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,63,1,0,0,65,0,0,4,235,0,1,4,46],[0,0,1,88,5,32,0,156,0,0,0,128,0,0,161,61,0,0,1,89,4,32,0,156,0,0,0,177,0,0,33,61],[0,0,1,95,1,32,0,156,0,0,1,21,0,0,33,61,0,0,1,98,1,32,0,156,0,0,1,123,0,0,97,61],[0,0,1,99,1,32,0,156,0,0,3,252,0,0,193,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75],[0,0,3,252,0,0,193,61,0,0,1,15,1,0,0,57,0,0,0,0,1,1,4,26,0,0,1,64,2,0,0,57],[0,0,0,64,0,32,4,63,0,0,0,0,2,0,4,19,0,0,1,60,3,32,1,151,0,0,0,128,0,48,4,63],[0,0,0,64,4,32,2,112,0,0,1,60,4,64,1,151,0,0,0,160,0,64,4,63,0,0,0,96,4,32,2,112],[0,0,1,60,4,64,1,151,0,0,0,192,0,64,4,63,0,0,0,224,4,32,2,112,0,0,0,255,4,64,1,143],[0,0,0,224,0,64,4,63,0,0,0,232,4,32,2,112,0,0,0,255,4,64,1,143,0,0,1,0,0,64,4,63],[0,0,0,240,2,32,2,112,0,0,0,255,2,32,1,143,0,0,1,32,0,32,4,63,0,0,1,16,2,0,0,57],[0,0,0,0,2,2,4,26,0,0,0,0,2,35,0,73,0,0,0,0,3,50,0,75,0,0,0,0,3,0,0,25],[0,0,0,1,3,0,32,57,0,0,0,0,3,3,0,75,0,0,0,0,2,0,192,25,0,0,0,0,67,18,0,169],[0,0,0,0,4,1,0,75,0,0,0,101,0,0,97,61,0,0,0,0,65,19,0,217,0,0,0,0,1,18,0,75],[0,0,2,79,0,0,193,61,0,0,1,64,0,48,4,63,0,0,1,121,1,0,0,65,0,0,4,235,0,1,4,46],[0,0,1,66,4,32,0,156,0,0,0,217,0,0,33,61,0,0,1,72,4,32,0,156,0,0,1,30,0,0,33,61],[0,0,1,75,4,32,0,156,0,0,1,130,0,0,97,61,0,0,1,76,1,32,0,156,0,0,3,252,0,0,193,61],[0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,3,252,0,0,193,61,0,0,0,4,1,48,0,138],[0,0,0,32,1,16,0,140,0,0,3,252,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,234,4,94,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,2,104,0,0,1,61],[0,0,1,100,5,32,0,156,0,0,0,238,0,0,161,61,0,0,1,101,1,32,0,156,0,0,1,39,0,0,33,61],[0,0,1,104,1,32,0,156,0,0,1,151,0,0,97,61,0,0,1,105,1,32,0,156,0,0,3,252,0,0,193,61],[0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,3,252,0,0,193,61,0,0,0,4,1,48,0,138],[0,0,0,96,1,16,0,140,0,0,3,252,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,234,4,94,0,0,4,15,0,0,0,64,1,0,4,61],[4,234,4,158,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,110,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,2,104,0,0,1,61,0,0,1,78,1,32,0,156],[0,0,1,55,0,0,33,61,0,0,1,81,1,32,0,156,0,0,1,156,0,0,97,61,0,0,1,82,1,32,0,156],[0,0,3,252,0,0,193,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,3,252,0,0,193,61],[4,234,4,169,0,0,4,15,0,0,1,110,2,32,1,151,0,0,0,128,1,16,2,16,0,0,0,0,1,33,1,159],[0,0,2,60,0,0,1,61,0,0,1,90,4,32,0,156,0,0,1,66,0,0,33,61,0,0,1,93,1,32,0,156],[0,0,1,161,0,0,97,61,0,0,1,94,1,32,0,156,0,0,3,252,0,0,193,61,0,0,0,0,1,0,4,22],[0,0,0,0,1,1,0,75,0,0,3,252,0,0,193,61,0,0,0,0,1,0,4,17,0,0,128,1,1,16,0,140],[0,0,2,129,0,0,193,61,0,0,0,7,1,0,0,57,0,0,0,0,3,1,4,26,0,0,1,110,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,110,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,110,3,48,0,156],[0,0,2,139,0,0,33,61,0,0,1,117,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,118,1,0,0,65],[0,0,1,68,0,16,4,63,0,0,1,119,1,0,0,65,0,0,1,100,0,16,4,63,0,0,1,120,1,0,0,65],[0,0,4,236,0,1,4,48,0,0,1,67,4,32,0,156,0,0,1,114,0,0,33,61,0,0,1,70,4,32,0,156],[0,0,1,34,0,0,97,61,0,0,1,71,2,32,0,156,0,0,3,252,0,0,193,61,0,0,0,0,2,0,4,22],[0,0,0,0,2,2,0,75,0,0,3,252,0,0,193,61,0,0,0,4,2,48,0,138,0,0,0,32,2,32,0,140],[0,0,3,252,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,234,4,207,0,0,4,15,0,0,2,111,0,0,1,61,0,0,1,106,5,32,0,156,0,0,1,168,0,0,97,61],[0,0,1,107,5,32,0,156,0,0,1,234,0,0,97,61,0,0,1,108,2,32,0,156,0,0,3,252,0,0,193,61],[0,0,0,0,2,0,4,22,0,0,0,0,2,2,0,75,0,0,3,252,0,0,193,61,0,0,0,4,2,48,0,138],[0,0,0,32,2,32,0,140,0,0,3,252,0,0,65,61,0,0,0,0,2,0,4,17,0,0,128,1,2,32,0,140],[0,0,2,129,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,234,4,207,0,0,4,15,0,0,0,6,2,0,0,41,0,0,2,104,0,0,1,61],[0,0,1,84,1,32,0,156,0,0,2,35,0,0,97,61,0,0,1,85,1,32,0,156,0,0,3,252,0,0,193,61],[0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,3,252,0,0,193,61,0,0,0,1,1,0,0,57],[0,0,1,63,0,0,1,61,0,0,1,96,1,32,0,156,0,0,2,51,0,0,97,61,0,0,1,97,1,32,0,156],[0,0,3,252,0,0,193,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,3,252,0,0,193,61],[0,0,0,3,1,0,0,57,0,0,2,111,0,0,1,61,0,0,1,73,1,32,0,156,0,0,2,56,0,0,97,61],[0,0,1,74,1,32,0,156,0,0,3,252,0,0,193,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75],[0,0,3,252,0,0,193,61,4,234,4,169,0,0,4,15,0,0,2,39,0,0,1,61,0,0,1,102,1,32,0,156],[0,0,2,68,0,0,97,61,0,0,1,103,1,32,0,156,0,0,3,252,0,0,193,61,0,0,0,0,1,0,4,22],[0,0,0,0,1,1,0,75,0,0,3,252,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,234,4,94,0,0,4,15,0,0,1,14,1,0,0,57],[0,0,0,0,2,1,4,26,0,0,1,122,2,32,1,151,0,0,2,156,0,0,1,61,0,0,1,79,1,32,0,156],[0,0,2,85,0,0,97,61,0,0,1,80,1,32,0,156,0,0,3,252,0,0,193,61,0,0,0,0,1,0,4,22],[0,0,0,0,1,1,0,75,0,0,3,252,0,0,193,61,0,0,0,4,1,0,0,57,0,0,0,0,1,1,4,26],[0,0,1,113,1,16,1,151,0,0,2,112,0,0,1,61,0,0,1,91,4,32,0,156,0,0,2,107,0,0,97,61],[0,0,1,92,2,32,0,156,0,0,3,252,0,0,193,61,0,0,0,0,2,0,4,22,0,0,0,0,2,2,0,75],[0,0,3,252,0,0,193,61,0,0,0,4,2,48,0,138,0,0,0,32,2,32,0,140,0,0,3,252,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,110,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,175,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,175,0,0,129,61],[0,0,0,0,4,81,0,75,0,0,2,145,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,60,1,0,0,65,0,0,0,0,2,0,4,20,0,0,1,60,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,1,116,1,16,1,199,0,0,128,16,2,0,0,57],[4,234,4,229,0,0,4,15,0,0,0,1,2,32,1,144,0,0,3,252,0,0,97,61,0,0,0,0,1,1,4,59],[0,0,0,0,4,1,4,26,0,0,2,175,0,0,1,61,0,0,1,68,4,32,0,156,0,0,2,115,0,0,97,61],[0,0,1,69,1,32,0,156,0,0,3,252,0,0,193,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75],[0,0,3,252,0,0,193,61,0,0,0,2,1,0,0,57,0,0,2,111,0,0,1,61,0,0,0,0,1,0,4,22],[0,0,0,0,1,1,0,75,0,0,3,252,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,2,112,0,0,1,61,0,0,0,0,2,0,4,22,0,0,0,0,2,2,0,75],[0,0,3,252,0,0,193,61,0,0,0,4,2,48,0,138,0,0,0,32,2,32,0,140,0,0,3,252,0,0,65,61],[0,0,0,4,1,16,3,112,0,0,0,0,1,1,4,59,0,6,0,0,0,1,0,29,0,0,1,113,1,16,0,156],[0,0,3,252,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,4,234,4,94,0,0,4,15,0,0,0,1,1,0,0,57,0,0,0,0,2,1,4,26],[0,0,1,61,2,32,1,151,0,0,0,6,2,32,1,175,0,0,2,156,0,0,1,61,0,0,0,0,1,0,4,22],[0,0,0,0,1,1,0,75,0,0,3,252,0,0,193,61,0,0,0,5,1,0,0,57,0,0,2,111,0,0,1,61],[0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,3,252,0,0,193,61,0,0,0,0,1,0,4,26],[0,0,2,112,0,0,1,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,3,252,0,0,193,61],[0,0,1,12,1,0,0,57,0,0,0,0,1,1,4,26,0,0,1,110,1,16,1,151,0,0,2,112,0,0,1,61],[0,0,0,0,2,0,4,22,0,0,0,0,2,2,0,75,0,0,3,252,0,0,193,61,0,0,0,4,2,48,0,138],[0,0,0,128,2,32,0,140,0,0,3,252,0,0,65,61,0,0,0,4,2,16,3,112,0,0,0,0,2,2,4,59],[0,5,0,0,0,2,0,29,0,0,0,36,2,16,3,112,0,0,0,0,2,2,4,59,0,6,0,0,0,2,0,29],[0,0,1,110,2,32,0,156,0,0,3,252,0,0,33,61,0,0,0,68,1,16,3,112,0,0,0,0,1,1,4,59],[0,4,0,0,0,1,0,29,0,0,1,110,1,16,0,156,0,0,3,252,0,0,33,61,0,0,0,0,1,0,4,17],[0,0,128,1,1,16,0,140,0,0,2,129,0,0,193,61,0,0,0,192,1,0,0,57,0,0,0,64,0,16,4,63],[0,0,0,7,4,0,0,57,0,0,0,0,1,4,4,26,0,0,1,110,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,6,2,32,0,107,0,0,2,183,0,0,161,61],[0,0,1,110,2,16,0,156,0,0,2,79,0,0,97,61,0,0,0,1,2,16,0,57,0,0,0,4,2,32,0,108],[0,0,2,192,0,0,193,61,0,3,0,0,0,4,0,29,0,0,0,9,2,0,0,57,0,0,0,0,2,2,4,26],[0,0,1,110,2,32,1,151,0,0,0,6,2,32,0,107,0,0,2,204,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,60,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,1,60,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,1,116,1,16,1,199],[0,0,128,16,2,0,0,57,4,234,4,229,0,0,4,15,0,0,0,1,2,32,1,144,0,0,3,252,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,1,141,2,16,0,156,0,0,3,120,0,0,161,61,0,0,1,170,1,0,0,65,0,0,0,0,0,16,4,53],[0,0,0,65,1,0,0,57,0,0,2,82,0,0,1,61,0,0,0,0,2,0,4,22,0,0,0,0,2,2,0,75],[0,0,3,252,0,0,193,61,0,0,0,4,2,48,0,138,0,0,0,160,2,32,0,140,0,0,3,252,0,0,65,61],[0,0,0,4,2,16,3,112,0,0,0,0,2,2,4,59,0,6,0,0,0,2,0,29,0,0,1,110,2,32,0,156],[0,0,3,252,0,0,33,61,0,0,0,36,2,16,3,112,0,0,0,0,2,2,4,59,0,5,0,0,0,2,0,29],[0,0,1,110,2,32,0,156,0,0,3,252,0,0,33,61,0,0,0,68,2,16,3,112,0,0,0,0,2,2,4,59],[0,4,0,0,0,2,0,29,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,252,0,0,193,61],[0,0,0,132,1,16,3,112,0,0,0,0,1,1,4,59,0,3,0,0,0,1,0,29,0,0,1,110,1,16,0,156],[0,0,3,252,0,0,33,61,0,0,0,0,1,0,4,17,0,0,128,1,1,16,0,140,0,0,2,129,0,0,193,61],[0,0,0,0,1,2,0,75,0,0,2,232,0,0,97,61,0,0,0,7,1,0,0,57,0,0,0,0,1,1,4,26],[0,0,1,110,1,16,1,151,0,0,0,5,1,16,0,107,0,0,2,218,0,0,129,61,0,0,1,117,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,126,1,0,0,65,0,0,0,196,0,16,4,63,0,0,1,127,1,0,0,65],[0,0,0,228,0,16,4,63,0,0,1,128,1,0,0,65,0,0,1,4,0,16,4,63,0,0,1,129,1,0,0,65],[0,0,1,36,0,16,4,63,0,0,1,130,1,0,0,65,0,0,4,236,0,1,4,48,0,0,0,0,1,0,4,22],[0,0,0,0,1,1,0,75,0,0,3,252,0,0,193,61,4,234,4,188,0,0,4,15,0,0,1,110,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,110,1,16,1,151],[0,0,0,0,0,19,4,53,0,0,1,60,1,0,0,65,0,0,1,60,2,48,0,156,0,0,0,0,3,1,128,25],[0,0,0,64,1,48,2,16,0,0,1,111,1,16,1,199,0,0,4,235,0,1,4,46,0,0,0,0,1,0,4,22],[0,0,0,0,1,1,0,75,0,0,3,252,0,0,193,61,0,0,0,6,1,0,0,57,0,0,2,111,0,0,1,61],[0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,3,252,0,0,193,61,4,234,4,115,0,0,4,15],[0,0,0,64,2,0,4,61,0,0,0,0,0,18,4,53,0,0,1,60,1,0,0,65,0,0,1,60,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,0,64,1,32,2,16,0,0,1,112,1,16,1,199,0,0,4,235,0,1,4,46],[0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,3,252,0,0,193,61,0,0,0,0,1,0,4,17],[0,0,128,1,1,16,0,140,0,0,2,129,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,153,0,0,193,61,0,0,1,170,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,171,1,0,0,65],[0,0,4,236,0,1,4,48,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,3,252,0,0,193,61],[0,0,0,4,1,48,0,138,0,0,0,64,1,16,0,140,0,0,3,252,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,234,4,94,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,1,16,3,0,0,57],[0,0,0,0,0,35,4,27,0,0,0,4,1,16,3,112,0,0,0,0,1,1,4,59,0,0,1,15,2,0,0,57],[0,0,0,0,0,18,4,27,0,0,0,0,1,0,0,25,0,0,4,235,0,1,4,46,0,0,0,0,1,0,4,22],[0,0,0,0,1,1,0,75,0,0,3,252,0,0,193,61,0,0,1,15,1,0,0,57,0,0,0,0,1,1,4,26],[0,0,0,128,0,16,4,63,0,0,1,109,1,0,0,65,0,0,4,235,0,1,4,46,0,0,0,0,2,0,4,22],[0,0,0,0,2,2,0,75,0,0,3,252,0,0,193,61,0,0,0,4,2,48,0,138,0,0,0,32,2,32,0,140],[0,0,3,252,0,0,65,61,0,0,0,0,2,0,4,17,0,0,128,7,2,32,0,140,0,0,3,252,0,0,193,61],[0,0,0,4,1,16,3,112,0,0,0,0,1,1,4,59,0,0,0,0,0,16,4,27,0,0,0,0,1,0,0,25],[0,0,4,235,0,1,4,46,0,0,1,117,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,161,1,0,0,65],[0,0,0,196,0,16,4,63,0,0,1,162,1,0,0,65,0,0,4,236,0,1,4,48,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,235,0,1,4,46,0,0,1,114,3,48,0,156,0,0,2,159,0,0,65,61,0,0,0,0,2,33,0,75],[0,0,2,159,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,175,0,0,1,61,0,0,1,122,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,235,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,60,1,0,0,65,0,0,0,0,2,0,4,20,0,0,1,60,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,192,1,32,2,16,0,0,1,115,1,16,1,199,0,0,128,16,2,0,0,57,4,234,4,229,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,3,252,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,60,2,0,0,65,0,0,1,60,3,16,0,156,0,0,0,0,1,2,128,25],[0,0,0,64,1,16,2,16,0,0,1,112,1,16,1,199,0,0,4,235,0,1,4,46,0,0,1,117,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,163,1,0,0,65,0,0,1,4,0,16,4,63,0,0,1,132,1,0,0,65,0,0,4,236,0,1,4,48],[0,0,1,117,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,164,1,0,0,65,0,0,1,4,0,16,4,63],[0,0,1,165,1,0,0,65,0,0,1,36,0,16,4,63,0,0,1,144,1,0,0,65,0,0,4,236,0,1,4,48],[0,0,1,117,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,166,1,0,0,65,0,0,1,4,0,16,4,63],[0,0,1,167,1,0,0,65,0,0,1,36,0,16,4,63,0,0,1,168,1,0,0,65,0,0,1,68,0,16,4,63],[0,0,1,169,1,0,0,65,0,0,4,236,0,1,4,48,0,0,0,3,1,0,0,107,0,0,2,232,0,0,193,61],[0,0,1,117,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,123,1,0,0,65,0,0,0,196,0,16,4,63],[0,0,1,124,1,0,0,65,0,0,0,228,0,16,4,63,0,0,1,125,1,0,0,65,0,0,4,236,0,1,4,48],[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,110,1,48,1,151,0,2,0,0,0,1,0,29,0,0,0,128,0,16,4,63],[0,0,0,128,1,48,2,112,0,0,0,160,0,16,4,63,0,0,1,110,3,48,0,156,0,0,3,2,0,0,33,61],[0,0,0,2,3,0,0,107,0,0,3,7,0,0,193,61,0,0,0,0,1,2,0,75,0,0,3,100,0,0,193,61],[0,0,1,117,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,159,1,0,0,65,0,0,1,4,0,16,4,63],[0,0,1,160,1,0,0,65,0,0,2,201,0,0,1,61,0,0,0,6,3,16,0,108,0,0,3,9,0,0,97,61],[0,0,1,110,2,16,0,156,0,0,2,79,0,0,97,61,0,0,3,36,0,0,1,61,0,0,0,6,3,16,0,108],[0,0,3,36,0,0,193,61,0,0,0,0,1,2,0,75,0,0,3,90,0,0,193,61,0,0,0,2,2,0,0,41],[0,0,0,5,1,32,0,108,0,0,3,142,0,0,193,61,0,0,0,6,1,0,0,41,0,0,0,1,1,16,0,138],[0,0,1,110,2,16,0,156,0,0,2,79,0,0,33,61,0,0,1,110,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,254,0,0,193,61],[0,0,0,3,1,0,0,107,0,0,3,202,0,0,97,61,0,0,1,117,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,149,1,0,0,65,0,0,1,4,0,16,4,63,0,0,1,150,1,0,0,65,0,0,2,201,0,0,1,61],[0,0,0,1,2,16,0,57,0,0,0,6,2,32,0,108,0,0,3,112,0,0,193,61,0,0,0,1,2,16,0,138],[0,0,1,110,3,32,0,156,0,0,2,79,0,0,33,61,0,0,0,10,3,0,0,57,0,0,0,0,3,3,4,26],[0,0,1,110,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,2,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,60,1,0,0,65,0,0,0,0,2,0,4,20,0,0,1,60,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,192,1,32,2,16,0,0,1,133,1,16,1,199,0,0,128,16,2,0,0,57,4,234,4,229,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,3,252,0,0,97,61,0,0,0,64,2,0,4,61,0,0,0,0,1,1,4,59],[0,0,0,4,1,16,0,107,0,0,4,8,0,0,193,61,0,0,0,2,3,0,0,41,0,0,0,5,1,48,0,107],[0,0,4,43,0,0,161,61,0,0,1,141,1,32,0,156,0,0,1,230,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,6,4,0,0,41,0,0,0,0,0,65,4,53],[0,0,0,5,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,110,2,16,0,156],[0,0,2,79,0,0,33,61,0,0,3,195,0,0,1,61,0,0,1,117,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,142,1,0,0,65,0,0,1,4,0,16,4,63,0,0,1,143,1,0,0,65,0,0,2,201,0,0,1,61],[0,0,0,6,1,0,0,107,0,0,3,152,0,0,193,61,0,0,1,117,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,157,1,0,0,65,0,0,1,4,0,16,4,63,0,0,1,158,1,0,0,65,0,0,2,201,0,0,1,61],[0,0,1,117,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,131,1,0,0,65,0,0,2,189,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,6,2,0,0,41,0,0,0,0,0,33,4,53,0,0,0,128,1,48,2,16],[0,0,1,110,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,5,2,0,0,41,0,0,0,0,0,33,4,28],[0,0,0,0,1,0,0,25,0,0,4,235,0,1,4,46,0,0,1,117,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,145,1,0,0,65,0,0,1,4,0,16,4,63,0,0,1,146,1,0,0,65,0,0,2,201,0,0,1,61],[0,0,0,6,1,0,0,41,0,0,1,110,1,16,0,65,0,2,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,60,1,0,0,65,0,0,0,0,2,0,4,20,0,0,1,60,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,1,151,1,16,1,199,0,0,128,16,2,0,0,57],[4,234,4,229,0,0,4,15,0,0,0,1,2,32,1,144,0,0,3,252,0,0,97,61,0,0,0,64,2,0,4,61],[0,0,0,0,1,1,4,59,0,0,0,4,1,16,0,108,0,0,4,17,0,0,193,61,0,0,0,2,1,0,0,41],[0,0,1,110,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,141,1,32,0,156,0,0,1,230,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,6,4,0,0,41,0,0,0,0,0,65,4,53],[0,0,0,5,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,110,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,114,3,32,0,156,0,0,4,37,0,0,129,61,0,0,0,64,3,0,4,61,0,0,1,141,4,48,0,156],[0,0,1,230,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,110,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,110,6,96,0,156,0,0,4,66,0,0,33,61,0,0,0,0,6,3,4,51],[0,0,1,110,6,96,1,152,0,0,4,66,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,154,2,32,1,151,0,0,0,0,2,37,1,159],[0,0,0,0,0,33,4,27,0,0,0,3,6,0,0,107,0,0,4,69,0,0,193,61,0,0,0,64,1,0,4,61],[0,0,0,100,2,16,0,57,0,0,1,155,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,68,2,16,0,57],[0,0,1,156,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,117,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,60,2,0,0,65,0,0,1,60,3,16,0,156],[0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16,0,0,1,136,1,16,1,199,0,0,4,236,0,1,4,48],[0,0,0,0,1,0,0,25,0,0,4,236,0,1,4,48,0,0,1,117,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,147,1,0,0,65,0,0,1,4,0,16,4,63,0,0,1,148,1,0,0,65,0,0,2,201,0,0,1,61],[0,0,0,100,1,32,0,57,0,0,1,134,3,0,0,65,0,0,0,0,0,49,4,53,0,0,0,68,1,32,0,57],[0,0,1,135,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,4,25,0,0,1,61,0,0,0,100,1,32,0,57,0,0,1,152,3,0,0,65,0,0,0,0,0,49,4,53],[0,0,0,68,1,32,0,57,0,0,1,153,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,117,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,60,1,0,0,65],[0,0,1,60,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,64,1,32,2,16,0,0,1,136,1,16,1,199],[0,0,4,236,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,235,0,1,4,46,0,0,0,132,1,32,0,57],[0,0,1,137,3,0,0,65,0,0,0,0,0,49,4,53,0,0,0,100,1,32,0,57,0,0,1,138,3,0,0,65],[0,0,0,0,0,49,4,53,0,0,0,68,1,32,0,57,0,0,1,139,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,117,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,60,1,0,0,65,0,0,1,60,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,64,1,32,2,16],[0,0,1,140,1,16,1,199,0,0,4,236,0,1,4,48,0,0,0,3,6,0,0,107,0,0,4,71,0,0,193,61],[0,0,4,41,0,0,1,61,0,0,0,3,6,0,0,41,0,3,0,1,0,96,0,146,0,0,0,3,5,80,0,41],[0,0,1,110,6,80,0,156,0,0,2,79,0,0,33,61,0,0,0,0,0,84,4,53,0,0,0,5,5,0,0,41],[0,0,0,0,0,83,4,53,0,0,0,0,5,4,4,51,0,0,1,110,6,80,1,151,0,0,0,6,6,96,0,108],[0,0,4,83,0,0,129,61,0,0,0,128,5,80,2,16,0,0,4,90,0,0,1,61,0,0,0,6,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,5,0,0,0,1,0,29,0,0,0,5,1,0,0,41,0,0,1,110,1,16,1,151],[0,0,0,0,1,81,1,159,0,0,4,39,0,0,1,61,0,0,0,0,1,1,0,75,0,0,4,97,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,161,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,117,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,60,2,0,0,65,0,0,1,60,3,16,0,156,0,0,0,0,1,2,128,25],[0,0,0,64,1,16,2,16,0,0,1,172,1,16,1,199,0,0,4,236,0,1,4,48,0,0,0,64,1,0,4,61],[0,0,1,173,2,16,0,156,0,0,4,152,0,0,129,61,0,0,0,192,2,16,0,57,0,0,0,64,0,32,4,63],[0,0,0,0,2,0,4,19,0,0,0,240,3,32,2,112,0,0,0,255,3,48,1,143,0,0,0,160,4,16,0,57],[0,0,0,0,0,52,4,53,0,0,0,232,3,32,2,112,0,0,0,255,3,48,1,143,0,0,0,128,4,16,0,57],[0,0,0,0,0,52,4,53,0,0,0,224,3,32,2,112,0,0,0,255,3,48,1,143,0,0,0,96,4,16,0,57],[0,0,0,0,0,52,4,53,0,0,0,96,3,32,2,112,0,0,1,60,3,48,1,151,0,0,0,64,4,16,0,57],[0,0,0,0,0,52,4,53,0,0,0,64,3,32,2,112,0,0,1,60,3,48,1,151,0,0,0,32,4,16,0,57],[0,0,0,0,0,52,4,53,0,0,1,60,2,32,1,151,0,0,0,0,0,33,4,53,0,0,1,16,1,0,0,57],[0,0,0,0,1,1,4,26,0,0,0,0,1,18,0,73,0,0,0,0,2,33,0,75,0,0,0,0,2,0,0,25],[0,0,0,1,2,0,32,57,0,0,0,0,2,2,0,75,0,0,0,0,1,0,192,25,0,0,0,0,0,1,4,45],[0,0,1,170,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,171,1,0,0,65,0,0,4,236,0,1,4,48,0,0,1,174,2,16,0,156,0,0,4,163,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,170,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,171,1,0,0,65],[0,0,4,236,0,1,4,48,0,0,0,64,3,0,4,61,0,0,1,174,1,48,0,156,0,0,4,182,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,110,2,32,1,151],[0,0,0,0,0,35,4,53,0,0,0,0,0,1,4,45,0,0,1,170,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,171,1,0,0,65,0,0,4,236,0,1,4,48],[0,0,0,64,3,0,4,61,0,0,1,174,1,48,0,156,0,0,4,201,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,110,2,32,1,151,0,0,0,0,0,35,4,53],[0,0,0,0,0,1,4,45,0,0,1,170,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,171,1,0,0,65,0,0,4,236,0,1,4,48,0,0,1,60,3,0,0,65],[0,0,1,60,4,16,0,156,0,0,0,0,1,3,128,25,0,0,0,64,1,16,2,16,0,0,1,60,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,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,1,175,1,16,1,199,0,0,128,16,2,0,0,57,4,234,4,229,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,4,227,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,236,0,1,4,48,0,0,4,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,4,234,0,0,4,50,0,0,4,235,0,1,4,46],[0,0,4,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],[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,168,81,174,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,212,164,202,12],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,239,14,47,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,239,14,47,244],[0,0,0,0,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,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,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,192,213,185,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,192,213,185,73],[0,0,0,0,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,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,154,138,5,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,162,37,239,202],[0,0,0,0,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,37,239,203],[0,0,0,0,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,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,142,138,207,134],[0,0,0,0,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,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,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,66,203,177,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,121,107,137,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,124,185,53,125],[0,0,0,0,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,185,53,126],[0,0,0,0,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,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,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,110,242,92,57],[0,0,0,0,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,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,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,75,233,158,29],[0,0,0,0,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,48,229,204,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,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,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,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,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,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,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,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],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,0,0,1,64,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,97,116,99,104,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,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,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],[8,46,192,117,217,203,84,36,60,38,104,21,28,13,84,56,81,134,80,14,26,183,203,50,90,1,112,186,248,175,212,147]],"0x000000000000000000000000000000000000800c":[[0,18,0,0,0,0,0,2,0,17,0,0,0,0,0,2,0,0,0,0,3,1,0,25,0,0,0,96,5,48,2,112],[0,0,7,164,3,80,1,151,0,1,0,0,0,49,3,85,0,2,0,0,0,49,3,85,0,3,0,0,0,49,3,85],[0,4,0,0,0,49,3,85,0,5,0,0,0,49,3,85,0,6,0,0,0,49,3,85,0,7,0,0,0,49,3,85],[0,8,0,0,0,49,3,85,0,9,0,0,0,49,3,85,0,10,0,0,0,49,3,85,0,11,0,0,0,49,3,85],[0,12,0,0,0,49,3,85,0,13,0,0,0,49,3,85,0,14,0,0,0,49,3,85,0,15,0,0,0,49,3,85],[0,16,0,0,0,49,3,85,0,17,0,0,0,1,3,85,0,0,7,164,0,80,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,154,0,0,193,61,0,0,0,4,2,48,0,140],[0,0,0,204,0,0,65,61,0,0,0,0,2,1,4,59,0,0,7,166,2,32,1,151,0,0,7,167,2,32,0,156],[0,0,0,204,0,0,193,61,0,0,0,0,2,0,4,22,0,0,0,0,2,2,0,75,0,0,0,204,0,0,193,61],[0,0,0,4,2,48,0,138,0,0,0,32,6,32,0,140,0,0,0,204,0,0,65,61,0,0,0,4,6,16,3,112],[0,0,0,0,13,6,4,59,0,0,7,168,6,208,0,156,0,0,0,204,0,0,33,61,0,0,0,0,2,210,0,73],[0,0,7,169,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,169,2,32,1,151,0,0,0,0,8,2,0,75,0,0,0,0,6,0,160,25,0,0,7,169,2,32,0,156],[0,0,0,0,6,7,192,25,0,0,0,0,2,6,0,75,0,0,0,204,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,1,6,32,0,140,0,0,0,162,0,0,33,61],[0,0,0,0,4,2,0,75,0,0,0,216,0,0,97,61,0,0,0,1,1,32,0,140,0,0,0,206,0,0,193,61],[0,12,0,0,0,13,0,29,0,11,0,0,0,12,0,29,0,0,7,170,1,0,0,65,0,0,0,0,0,16,4,57],[0,0,7,164,1,0,0,65,0,0,0,0,2,0,4,20,0,0,7,164,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,192,1,32,2,16,0,0,7,171,1,16,1,199,0,0,128,11,2,0,0,57,30,139,30,129,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,25,2,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,41,0,0,65,61,0,0,0,128,1,64,2,112,0,0,7,174,2,64,0,156],[0,0,0,0,1,4,160,25,0,0,7,174,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,168,6,16,0,156,0,0,0,0,5,2,160,25,0,0,0,64,2,16,2,112],[0,0,7,168,6,16,0,156,0,0,0,0,2,1,160,25,0,0,0,4,1,80,1,191,0,0,7,164,6,32,0,156],[0,0,0,0,1,5,160,25,0,0,0,32,6,32,2,112,0,0,7,164,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,168,6,16,0,156,0,0,4,10,0,0,33,61],[0,0,0,1,2,32,1,144,0,0,4,10,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,17,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,0,136,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,0,128,0,0,65,61],[0,0,0,0,7,0,0,75,0,0,0,138,0,0,97,61,0,0,0,0,7,3,4,51,0,0,0,0,7,7,0,75],[0,0,4,250,0,0,97,61,0,0,0,0,7,6,4,51,0,0,7,173,7,112,1,151,0,0,0,248,8,80,2,16],[0,0,0,0,7,120,1,159,0,0,7,175,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,59,0,0,1,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75],[0,0,0,204,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,165,1,0,0,65,0,0,30,140,0,1,4,46,0,0,0,2,6,32,0,140,0,0,1,27,0,0,97,61],[0,0,0,113,2,32,0,140,0,0,0,206,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,169,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,169,6,96,1,151],[0,0,7,169,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,169,6,96,0,156,0,0,0,0,7,8,192,25,0,0,0,0,6,7,0,75,0,0,0,204,0,0,193,61],[0,0,0,0,6,194,0,25,0,0,0,0,2,97,3,79,0,0,0,0,2,2,4,59,0,0,7,168,7,32,0,156],[0,0,0,204,0,0,33,61,0,0,0,0,8,35,0,73,0,0,0,32,7,96,0,57,0,0,7,169,6,0,0,65],[0,0,0,0,9,135,0,75,0,0,0,0,9,0,0,25,0,0,0,0,9,6,32,25,0,0,7,169,8,128,1,151],[0,0,7,169,10,112,1,151,0,0,0,0,11,138,0,75,0,0,0,0,6,0,128,25,0,0,0,0,8,138,1,63],[0,0,7,169,8,128,0,156,0,0,0,0,6,9,192,25,0,0,0,0,6,6,0,75,0,0,2,233,0,0,97,61],[0,0,0,0,1,0,0,25,0,0,30,141,0,1,4,48,0,0,7,188,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,206,1,0,0,65,0,0,0,196,0,16,4,63,0,0,7,207,1,0,0,65,0,0,30,141,0,1,4,48],[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,1,117,0,0,65,61,0,0,0,128,6,64,2,112,0,0,7,174,7,64,0,156],[0,0,0,0,6,4,160,25,0,0,7,174,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,168,9,96,0,156,0,0,0,0,8,7,160,25,0,0,0,64,7,96,2,112],[0,0,7,168,9,96,0,156,0,0,0,0,7,6,160,25,0,0,0,4,9,128,1,191,0,0,7,164,6,112,0,156],[0,0,0,0,9,8,160,25,0,0,0,32,8,112,2,112,0,0,7,164,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,1,9,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,1,1,0,0,65,61,0,0,0,0,7,0,0,75,0,0,1,11,0,0,97,61,0,0,0,128,7,0,4,61],[0,0,0,0,7,7,0,75,0,0,4,250,0,0,97,61,0,0,0,160,7,0,4,61,0,0,7,173,7,112,1,151],[0,0,0,248,8,96,2,16,0,0,0,0,7,120,1,159,0,0,7,175,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,1,129,0,0,1,61,0,12,0,0,0,13,0,29],[0,11,0,0,0,12,0,29,0,0,7,170,1,0,0,65,0,0,0,0,0,16,4,57,0,0,7,164,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,7,164,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,7,171,1,16,1,199,0,0,128,11,2,0,0,57,30,139,30,129,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,25,2,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,137,0,0,65,61,0,0,0,128,1,64,2,112,0,0,7,174,2,64,0,156,0,0,0,0,1,4,160,25],[0,0,7,174,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,168,6,16,0,156,0,0,0,0,5,2,160,25,0,0,0,64,2,16,2,112,0,0,7,168,6,16,0,156],[0,0,0,0,2,1,160,25,0,0,0,4,1,80,1,191,0,0,7,164,6,32,0,156,0,0,0,0,1,5,160,25],[0,0,0,32,6,32,2,112,0,0,7,164,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,168,6,16,0,156,0,0,4,10,0,0,33,61,0,0,0,1,2,32,1,144],[0,0,4,10,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,17,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,99,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,91,0,0,65,61,0,0,0,0,7,0,0,75],[0,0,1,101,0,0,97,61,0,0,0,0,7,3,4,51,0,0,0,0,7,7,0,75,0,0,4,250,0,0,97,61],[0,0,0,0,7,6,4,51,0,0,7,173,7,112,1,151,0,0,0,248,8,80,2,16,0,0,0,0,7,120,1,159],[0,0,7,175,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,155,0,0,1,61,0,0,0,248,6,64,2,16,0,0,7,169,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,2,4,59,0,0,7,173,4,64,1,151,0,0,0,0,4,116,1,159],[0,0,0,160,0,64,4,63,0,12,0,0,0,13,0,29,0,11,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,206,0,0,65,61,0,0,0,128,7,96,2,112,0,0,7,174,8,96,0,156,0,0,0,0,7,6,160,25],[0,0,7,174,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,168,10,112,0,156,0,0,0,0,9,8,160,25,0,0,0,64,8,112,2,112,0,0,7,168,10,112,0,156],[0,0,0,0,8,7,160,25,0,0,0,4,10,144,1,191,0,0,7,164,7,128,0,156,0,0,0,0,10,9,160,25],[0,0,0,32,9,128,2,112,0,0,7,164,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,168,10,128,0,156,0,0,4,10,0,0,33,61,0,0,0,1,9,144,1,144],[0,0,4,10,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,1,188,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,1,180,0,0,65,61],[0,0,0,0,9,0,0,75,0,0,1,190,0,0,97,61,0,0,0,0,9,4,4,51,0,0,0,0,9,9,0,75],[0,0,4,250,0,0,97,61,0,0,0,0,9,8,4,51,0,0,7,173,9,144,1,151,0,0,0,248,10,112,2,16],[0,0,0,0,9,154,1,159,0,0,7,175,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,221,0,0,1,61,0,0,7,172,7,64,0,156,0,0,4,10,0,0,33,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,2,4,59,0,0,0,0,0,135,4,53,0,0,4,250,0,0,97,61,0,0,0,248,9,96,2,16],[0,0,7,169,10,0,0,65,0,0,0,0,6,6,0,75,0,0,0,0,10,9,192,25,0,0,7,173,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,3,13,0,0,65,61],[0,0,0,128,7,96,2,112,0,0,7,174,8,96,0,156,0,0,0,0,7,6,160,25,0,0,7,174,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,168,10,112,0,156],[0,0,0,0,9,8,160,25,0,0,0,64,8,112,2,112,0,0,7,168,10,112,0,156,0,0,0,0,8,7,160,25],[0,0,0,4,10,144,1,191,0,0,7,164,7,128,0,156,0,0,0,0,10,9,160,25,0,0,0,32,9,128,2,112],[0,0,7,164,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,168,10,128,0,156,0,0,4,10,0,0,33,61,0,0,0,1,9,144,1,144,0,0,4,10,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,23,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,15,0,0,65,61,0,0,0,0,9,0,0,75],[0,0,2,25,0,0,97,61,0,0,0,0,9,5,4,51,0,0,0,0,9,9,0,75,0,0,4,250,0,0,97,61],[0,0,0,0,9,8,4,51,0,0,7,173,9,144,1,151,0,0,0,248,10,112,2,16,0,0,0,0,9,154,1,159],[0,0,7,175,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,3,28,0,0,1,61,0,0,7,172,1,48,0,156,0,0,4,10,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,17,1,0,3,103,0,0,0,0,6,33,3,79,0,0,0,0,6,6,4,59,0,0,0,0,0,101,4,53],[0,0,4,250,0,0,97,61,0,0,0,248,7,64,2,16,0,0,7,169,8,0,0,65,0,0,0,0,4,4,0,75],[0,0,0,0,8,7,192,25,0,0,7,173,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,12,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,171,0,0,65,61,0,0,0,128,7,80,2,112],[0,0,7,174,8,80,0,156,0,0,0,0,7,5,160,25,0,0,7,174,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,168,10,112,0,156,0,0,0,0,9,8,160,25],[0,0,0,64,8,112,2,112,0,0,7,168,10,112,0,156,0,0,0,0,8,7,160,25,0,0,0,4,10,144,1,191],[0,0,7,164,7,128,0,156,0,0,0,0,10,9,160,25,0,0,0,32,9,128,2,112,0,0,7,164,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,168,10,128,0,156],[0,0,4,10,0,0,33,61,0,0,0,1,9,144,1,144,0,0,4,10,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,2,119,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,2,111,0,0,65,61,0,0,0,0,9,0,0,75],[0,0,2,121,0,0,97,61,0,0,0,0,9,4,4,51,0,0,0,0,9,9,0,75,0,0,4,250,0,0,97,61],[0,0,0,0,9,8,4,51,0,0,7,173,9,144,1,151,0,0,0,248,10,112,2,16,0,0,0,0,9,154,1,159],[0,0,7,175,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,187,0,0,1,61,0,0,7,172,1,48,0,156,0,0,4,10,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,17,1,0,3,103,0,0,0,0,6,33,3,79,0,0,0,0,6,6,4,59,0,0,0,0,0,101,4,53],[0,0,4,250,0,0,97,61,0,0,0,248,7,64,2,16,0,0,7,169,8,0,0,65,0,0,0,0,4,4,0,75],[0,0,0,0,8,7,192,25,0,0,7,173,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,12,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,8,0,0,65,61,0,0,0,128,7,80,2,112],[0,0,7,174,8,80,0,156,0,0,0,0,7,5,160,25,0,0,7,174,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,168,10,112,0,156,0,0,0,0,9,8,160,25],[0,0,0,64,8,112,2,112,0,0,7,168,10,112,0,156,0,0,0,0,8,7,160,25,0,0,0,4,10,144,1,191],[0,0,7,164,7,128,0,156,0,0,0,0,10,9,160,25,0,0,0,32,9,128,2,112,0,0,7,164,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,168,10,128,0,156],[0,0,4,10,0,0,33,61,0,0,0,1,9,144,1,144,0,0,4,10,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,2,215,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,2,207,0,0,65,61,0,0,0,0,9,0,0,75],[0,0,2,217,0,0,97,61,0,0,0,0,9,4,4,51,0,0,0,0,9,9,0,75,0,0,4,250,0,0,97,61],[0,0,0,0,9,8,4,51,0,0,7,173,9,144,1,151,0,0,0,248,10,112,2,16,0,0,0,0,9,154,1,159],[0,0,7,175,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,5,126,0,0,1,61,0,0,7,164,8,112,1,151,0,0,0,0,6,0,4,20,0,1,0,0,0,129,3,85],[0,0,0,0,7,114,0,25,0,0,0,0,2,39,0,75,0,0,0,0,2,0,0,25,0,0,0,1,2,0,64,57],[0,0,0,1,2,32,1,144,0,0,24,254,0,0,193,61,0,0,0,0,2,115,0,75,0,0,24,254,0,0,65,61],[0,12,0,0,0,13,0,29,0,11,0,0,0,12,0,29,0,0,0,0,1,129,3,79,0,0,0,0,2,117,0,73],[0,0,7,164,2,32,1,151,0,1,0,0,0,33,3,229,0,0,7,182,3,96,0,156,0,0,4,14,0,0,65,61],[0,0,0,68,1,64,0,57,0,0,7,198,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,188,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,164,1,0,0,65],[0,0,7,164,2,64,0,156,0,0,0,0,4,1,128,25,0,0,0,64,1,64,2,16,0,0,7,189,1,16,1,199],[0,0,30,141,0,1,4,48,0,0,7,172,7,80,0,156,0,0,4,10,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,2,4,59],[0,0,0,0,0,135,4,53,0,0,4,250,0,0,97,61,0,0,0,248,9,96,2,16,0,0,7,169,10,0,0,65],[0,0,0,0,6,6,0,75,0,0,0,0,10,9,192,25,0,0,7,173,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,10,0,0,0,6,0,29,0,0,0,32,6,96,0,57],[0,0,0,0,7,4,4,51,0,0,0,0,8,7,0,75,0,0,3,43,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,3,36,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,3,56,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,3,49,0,0,65,61],[0,0,0,0,4,70,0,25,0,0,0,0,0,4,4,53,0,0,0,10,6,0,0,41,0,0,0,0,4,100,0,73],[0,0,0,32,5,64,0,138,0,0,0,0,0,86,4,53,0,0,0,31,4,64,0,57,0,8,0,32,0,0,0,146],[0,0,0,8,4,64,1,127,0,0,0,0,5,100,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,9,0,0,0,5,0,29,0,0,7,168,5,80,0,156,0,0,4,10,0,0,33,61],[0,0,0,1,4,64,1,144,0,0,4,10,0,0,193,61,0,0,0,9,4,0,0,41,0,0,0,64,0,64,4,63],[0,0,7,172,4,64,0,156,0,0,4,10,0,0,33,61,0,0,0,12,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,9,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,176,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,7,0,0,0,6,0,29,0,0,0,0,5,5,4,59,0,0,0,128,6,80,0,140,0,0,6,40,0,0,65,61],[0,0,0,128,6,80,2,112,0,0,7,174,7,80,0,156,0,0,0,0,6,5,160,25,0,0,7,174,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,168,9,96,0,156],[0,0,0,0,8,7,160,25,0,0,0,64,7,96,2,112,0,0,7,168,9,96,0,156,0,0,0,0,7,6,160,25],[0,0,0,4,9,128,1,191,0,0,7,164,6,112,0,156,0,0,0,0,9,8,160,25,0,0,0,32,8,112,2,112],[0,0,7,164,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,8,7,112,1,127,0,0,0,7,7,112,0,41],[0,0,0,7,8,112,0,108,0,0,0,0,8,0,0,25,0,0,0,1,8,0,64,57,0,0,7,168,9,112,0,156],[0,0,4,10,0,0,33,61,0,0,0,1,8,128,1,144,0,0,4,10,0,0,193,61,0,0,0,64,0,112,4,63],[0,0,0,2,7,96,0,57,0,0,0,7,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,3,151,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,3,143,0,0,65,61,0,0,0,0,8,0,0,75],[0,0,3,153,0,0,97,61,0,0,0,7,8,0,0,41,0,0,0,0,8,8,4,51,0,0,0,0,8,8,0,75],[0,0,4,250,0,0,97,61,0,0,0,0,8,7,4,51,0,0,7,173,8,128,1,151,0,0,0,248,9,96,2,16],[0,0,0,0,8,137,1,159,0,0,7,175,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,7,6,0,0,41,0,0,0,33,6,96,0,57,0,0,6,57,0,0,1,61,0,0,7,172,7,64,0,156],[0,0,4,10,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,8,4,59,0,0,0,0,0,135,4,53],[0,0,4,250,0,0,97,61,0,0,0,248,9,80,2,16,0,0,7,169,10,0,0,65,0,0,0,0,5,5,0,75],[0,0,0,0,10,9,192,25,0,0,7,173,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,5,0,0,0,65,61,0,0,0,128,8,112,2,112,0,0,7,174,9,112,0,156],[0,0,0,0,8,7,160,25,0,0,7,174,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,168,11,128,0,156,0,0,0,0,10,9,160,25,0,0,0,64,9,128,2,112],[0,0,7,168,11,128,0,156,0,0,0,0,9,8,160,25,0,0,0,4,11,160,1,191,0,0,7,164,8,144,0,156],[0,0,0,0,11,10,160,25,0,0,0,32,10,144,2,112,0,0,7,164,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,168,11,144,0,156,0,0,4,10,0,0,33,61],[0,0,0,1,10,160,1,144,0,0,4,10,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,246,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,238,0,0,65,61,0,0,0,0,10,0,0,75,0,0,3,248,0,0,97,61],[0,0,0,0,10,5,4,51,0,0,0,0,10,10,0,75,0,0,4,250,0,0,97,61,0,0,0,0,10,9,4,51],[0,0,7,173,10,160,1,151,0,0,0,248,11,128,2,16,0,0,0,0,10,171,1,159,0,0,7,175,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,5,16,0,0,1,61],[0,0,7,172,7,64,0,156,0,0,4,242,0,0,161,61,0,0,7,201,1,0,0,65,0,0,0,0,0,16,4,53],[0,0,0,65,1,0,0,57,0,0,4,253,0,0,1,61,0,0,0,0,1,33,3,223,0,0,0,192,2,96,2,16],[0,0,7,183,2,32,1,151,0,0,7,184,2,32,1,199,0,1,0,0,0,33,3,181,0,0,0,0,1,33,3,175],[0,0,128,16,2,0,0,57,30,139,30,134,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,0,7,164,5,48,1,151,0,0,0,1,2,32,1,144,0,0,5,93,0,0,97,61,0,0,0,63,2,80,0,57],[0,0,7,185,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,168,4,32,0,156,0,0,4,10,0,0,33,61],[0,0,0,1,3,48,1,144,0,0,4,10,0,0,193,61,0,0,0,64,0,32,4,63,0,0,0,0,4,86,4,54],[0,0,0,17,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,55,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,47,0,0,65,61,0,0,0,0,7,0,0,75],[0,0,4,57,0,0,97,61,0,0,0,31,7,80,1,143,0,0,0,5,5,80,2,114,0,0,4,69,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,61,0,0,65,61,0,0,0,0,8,7,0,75,0,0,4,84,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,153,0,0,193,61,0,0,0,12,6,0,0,41],[0,0,0,0,1,99,0,73,0,0,0,35,5,16,0,138,0,10,2,4,0,96,0,61,0,0,0,10,1,32,3,96],[0,0,0,0,1,1,4,59,0,0,7,169,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,169,5,80,1,151,0,0,7,169,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,169,5,80,0,156,0,0,0,0,6,7,192,25],[0,0,0,0,5,6,0,75,0,0,0,11,5,0,0,41,0,0,0,204,0,0,193,61,0,0,0,0,4,4,4,51],[0,9,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,168,4,80,0,156,0,0,0,204,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,169,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,169,3,48,1,151,0,0,7,169,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,169,3,48,0,156,0,0,0,0,1,7,192,25],[0,0,0,0,1,1,0,75,0,0,0,204,0,0,193,61,0,0,0,64,1,0,4,61,0,0,0,32,3,16,0,57],[0,0,7,186,5,80,1,152,0,0,4,144,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,136,0,0,65,61],[0,0,0,0,2,0,0,75,0,0,4,146,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,168,5,32,0,156,0,0,4,10,0,0,33,61],[0,0,0,1,4,64,1,144,0,0,4,10,0,0,193,61,0,0,0,64,0,32,4,63,0,0,7,164,2,0,0,65],[0,0,7,164,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,164,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,164,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,181,1,16,1,199,0,0,128,16,2,0,0,57,30,139,30,129,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,0,11,10,0,0,41,0,0,0,12,3,0,0,41,0,0,0,204,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,10,3,0,0,41],[0,0,0,32,4,48,0,57,0,0,0,17,3,0,3,103,0,0,0,0,4,67,3,79,0,0,0,0,4,4,4,59],[0,0,7,169,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,169,5,80,1,151,0,0,7,169,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,169,5,80,0,156,0,0,0,0,6,7,192,25,0,0,0,0,1,1,4,59],[0,10,0,0,0,1,0,29,0,0,0,0,1,6,0,75,0,0,0,204,0,0,193,61,0,0,0,0,4,164,0,25],[0,0,0,0,1,67,3,79,0,0,0,0,1,1,4,59,0,0,7,168,5,16,0,156,0,0,0,204,0,0,33,61],[0,0,0,0,6,18,0,73,0,0,0,32,5,64,0,57,0,0,7,169,4,0,0,65,0,0,0,0,7,101,0,75],[0,0,0,0,7,0,0,25,0,0,0,0,7,4,32,25,0,0,7,169,6,96,1,151,0,0,7,169,8,80,1,151],[0,0,0,0,9,104,0,75,0,0,0,0,4,0,128,25,0,0,0,0,6,104,1,63,0,0,7,169,6,96,0,156],[0,0,0,0,4,7,192,25,0,0,0,0,4,4,0,75,0,0,0,204,0,0,193,61,0,0,7,164,6,80,1,151],[0,0,0,0,4,0,4,20,0,1,0,0,0,99,3,85,0,0,0,0,5,81,0,25,0,0,0,0,1,21,0,75],[0,0,0,0,1,0,0,25,0,0,0,1,1,0,64,57,0,0,0,1,1,16,1,144,0,0,24,254,0,0,193,61],[0,0,0,0,1,82,0,75,0,0,24,254,0,0,65,61,0,0,0,0,1,99,3,79,0,0,0,0,2,82,0,73],[0,0,7,164,2,32,1,151,0,1,0,0,0,33,3,229,0,0,7,182,3,64,0,156,0,0,11,164,0,0,65,61],[0,0,0,64,4,0,4,61,0,0,2,252,0,0,1,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,8,4,59],[0,0,0,0,0,135,4,53,0,0,5,120,0,0,193,61,0,0,7,201,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,202,1,0,0,65,0,0,30,141,0,1,4,48],[0,0,7,172,8,80,0,156,0,0,4,10,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,9,4,59],[0,0,0,0,0,152,4,53,0,0,4,250,0,0,97,61,0,0,0,248,10,112,2,16,0,0,7,169,11,0,0,65],[0,0,0,0,7,7,0,75,0,0,0,0,11,10,192,25,0,0,7,173,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,128,0,0,65,61,0,0,0,128,9,128,2,112],[0,0,7,174,10,128,0,156,0,0,0,0,9,8,160,25,0,0,7,174,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,168,12,144,0,156,0,0,0,0,11,10,160,25],[0,0,0,64,10,144,2,112,0,0,7,168,12,144,0,156,0,0,0,0,10,9,160,25,0,0,0,4,12,176,1,191],[0,0,7,164,9,160,0,156,0,0,0,0,12,11,160,25,0,0,0,32,11,160,2,112,0,0,7,164,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,168,12,160,0,156],[0,0,4,10,0,0,33,61,0,0,0,1,11,176,1,144,0,0,4,10,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,5,75,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,67,0,0,65,61,0,0,0,0,11,0,0,75],[0,0,5,77,0,0,97,61,0,0,0,0,11,7,4,51,0,0,0,0,11,11,0,75,0,0,4,250,0,0,97,61],[0,0,0,0,11,10,4,51,0,0,7,173,11,176,1,151,0,0,0,248,12,144,2,16,0,0,0,0,11,188,1,159],[0,0,7,175,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,144,0,0,1,61,0,0,0,31,3,80,1,143,0,0,0,5,2,80,2,114,0,0,5,104,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,97,0,0,65,61],[0,0,0,0,4,3,0,75,0,0,5,118,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,141,0,1,4,48],[0,0,0,248,9,80,2,16,0,0,7,169,10,0,0,65,0,0,0,0,5,5,0,75,0,0,0,0,10,9,192,25],[0,0,7,173,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,203,0,0,65,61,0,0,0,128,8,96,2,112,0,0,7,174,9,96,0,156,0,0,0,0,8,6,160,25],[0,0,7,174,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,168,11,128,0,156,0,0,0,0,10,9,160,25,0,0,0,64,9,128,2,112,0,0,7,168,11,128,0,156],[0,0,0,0,9,8,160,25,0,0,0,4,11,160,1,191,0,0,7,164,8,144,0,156,0,0,0,0,11,10,160,25],[0,0,0,32,10,144,2,112,0,0,7,164,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,168,11,144,0,156,0,0,4,10,0,0,33,61,0,0,0,1,10,160,1,144],[0,0,4,10,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,185,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,177,0,0,65,61,0,0,0,0,10,0,0,75,0,0,5,187,0,0,97,61,0,0,0,0,10,5,4,51],[0,0,0,0,10,10,0,75,0,0,4,250,0,0,97,61,0,0,0,0,10,9,4,51,0,0,7,173,10,160,1,151],[0,0,0,248,11,128,2,16,0,0,0,0,10,171,1,159,0,0,7,175,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,219,0,0,1,61,0,0,7,172,8,80,0,156],[0,0,4,10,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,9,4,59,0,0,0,0,0,152,4,53],[0,0,4,250,0,0,97,61,0,0,0,248,10,96,2,16,0,0,7,169,11,0,0,65,0,0,0,0,6,6,0,75],[0,0,0,0,11,10,192,25,0,0,7,173,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,240,0,0,65,61,0,0,0,128,9,128,2,112,0,0,7,174,10,128,0,156],[0,0,0,0,9,8,160,25,0,0,7,174,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,168,12,144,0,156,0,0,0,0,11,10,160,25,0,0,0,64,10,144,2,112],[0,0,7,168,12,144,0,156,0,0,0,0,10,9,160,25,0,0,0,4,12,176,1,191,0,0,7,164,9,160,0,156],[0,0,0,0,12,11,160,25,0,0,0,32,11,160,2,112,0,0,7,164,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,168,12,160,0,156,0,0,4,10,0,0,33,61],[0,0,0,1,11,176,1,144,0,0,4,10,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,6,22,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,14,0,0,65,61,0,0,0,0,11,0,0,75,0,0,6,24,0,0,97,61],[0,0,0,0,11,6,4,51,0,0,0,0,11,11,0,75,0,0,4,250,0,0,97,61,0,0,0,0,11,10,4,51],[0,0,7,173,11,176,1,151,0,0,0,248,12,144,2,16,0,0,0,0,11,188,1,159,0,0,7,175,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,7,0,0,0,1,61],[0,0,0,7,6,0,0,41,0,0,7,172,6,96,0,156,0,0,4,10,0,0,33,61,0,0,0,7,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,2,4,59,0,0,0,0,0,118,4,53,0,0,4,250,0,0,97,61,0,0,0,248,8,80,2,16],[0,0,7,169,9,0,0,65,0,0,0,0,5,5,0,75,0,0,0,0,9,8,192,25,0,0,7,173,5,112,1,151],[0,0,0,0,5,149,1,159,0,0,0,0,0,86,4,53,0,0,0,11,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,169,7,80,1,151,0,0,7,169,8,64,1,151,0,0,7,169,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,169,7,112,0,156,0,0,0,0,10,9,192,25,0,0,0,0,7,10,0,75],[0,0,0,204,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,168,9,112,0,156,0,0,0,204,0,0,33,61,0,0,0,0,9,115,0,73,0,0,0,32,8,128,0,57],[0,0,7,169,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,169,9,144,1,151,0,0,7,169,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,169,9,144,0,156,0,0,0,0,10,11,192,25,0,0,0,0,9,10,0,75],[0,0,0,204,0,0,193,61,0,0,0,1,9,112,0,140,0,0,8,120,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,169,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,169,2,32,1,151,0,0,7,169,9,32,0,156],[0,0,0,0,8,0,128,25,0,0,7,169,2,32,1,103,0,0,7,169,2,32,0,156,0,0,0,0,8,7,192,25],[0,6,0,96,0,0,0,61,0,0,0,0,2,8,0,75,0,0,9,117,0,0,193,61,0,0,0,64,2,0,4,61],[0,6,0,0,0,2,0,29,0,0,7,172,2,32,0,156,0,0,4,10,0,0,33,61,0,0,0,6,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,175,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,9,117,0,0,1,61],[0,0,7,172,9,112,0,156,0,0,4,10,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,10,4,59],[0,0,0,0,0,169,4,53,0,0,4,250,0,0,97,61,0,0,0,248,11,128,2,16,0,0,7,169,12,0,0,65],[0,0,0,0,8,8,0,75,0,0,0,0,12,11,192,25,0,0,7,173,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,172,8,144,0,156,0,0,4,10,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,176,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,10,0,0,0,6,0,29,0,0,0,128,10,96,0,140,0,0,7,194,0,0,65,61],[0,0,0,10,6,0,0,41,0,0,0,128,10,96,2,112,0,0,7,174,11,96,0,156,0,0,0,0,10,6,160,25],[0,0,7,174,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,168,13,160,0,156,0,0,0,0,12,11,160,25,0,0,0,64,11,160,2,112,0,0,7,168,13,160,0,156],[0,0,0,0,11,10,160,25,0,0,0,4,13,192,1,191,0,0,7,164,10,176,0,156,0,0,0,0,13,12,160,25],[0,0,0,32,12,176,2,112,0,0,7,164,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,168,13,176,0,156,0,0,4,10,0,0,33,61,0,0,0,1,12,192,1,144],[0,0,4,10,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,221,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,6,213,0,0,65,61,0,0,0,0,6,0,0,75,0,0,6,223,0,0,97,61,0,0,0,0,6,8,4,51],[0,0,0,0,6,6,0,75,0,0,4,250,0,0,97,61,0,0,0,0,6,11,4,51,0,0,7,173,6,96,1,151],[0,0,0,248,12,160,2,16,0,0,0,0,6,108,1,159,0,0,7,175,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,10,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,7,212,0,0,1,61],[0,0,7,172,9,96,0,156,0,0,4,10,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,10,4,59],[0,0,0,0,0,169,4,53,0,0,4,250,0,0,97,61,0,0,0,248,11,128,2,16,0,0,7,169,12,0,0,65],[0,0,0,0,8,8,0,75,0,0,0,0,12,11,192,25,0,0,7,173,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,10,0,64,0,112,0,146,0,0,0,10,9,16,3,96],[0,0,0,0,9,9,4,59,0,0,0,128,10,144,0,140,0,0,7,78,0,0,65,61,0,0,0,128,10,144,2,112],[0,0,7,174,11,144,0,156,0,0,0,0,10,9,160,25,0,0,7,174,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,168,13,160,0,156,0,0,0,0,12,11,160,25],[0,0,0,64,11,160,2,112,0,0,7,168,13,160,0,156,0,0,0,0,11,10,160,25,0,0,0,4,13,192,1,191],[0,0,7,164,10,176,0,156,0,0,0,0,13,12,160,25,0,0,0,32,12,176,2,112,0,0,7,164,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,168,13,176,0,156],[0,0,4,10,0,0,33,61,0,0,0,1,12,192,1,144,0,0,4,10,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,59,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,7,51,0,0,65,61,0,0,0,0,7,0,0,75],[0,0,7,61,0,0,97,61,0,0,0,0,7,8,4,51,0,0,0,0,7,7,0,75,0,0,4,250,0,0,97,61],[0,0,0,0,7,11,4,51,0,0,7,173,7,112,1,151,0,0,0,248,12,160,2,16,0,0,0,0,7,124,1,159],[0,0,7,175,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,95,0,0,1,61,0,0,7,172,7,128,0,156,0,0,4,10,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,11,7,4,59,0,0,0,0,0,186,4,53,0,0,4,250,0,0,97,61],[0,0,0,248,7,144,2,16,0,0,7,169,12,0,0,65,0,0,0,0,9,9,0,75,0,0,0,0,12,7,192,25],[0,0,7,173,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,172,7,160,0,156,0,0,4,10,0,0,33,61,0,0,0,10,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,176,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,10,0,0,0,7,0,29,0,0,0,128,11,112,0,140,0,0,8,162,0,0,65,61,0,0,0,10,7,0,0,41],[0,0,0,128,11,112,2,112,0,0,7,174,12,112,0,156,0,0,0,0,11,7,160,25,0,0,7,174,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,168,14,176,0,156],[0,0,0,0,13,12,160,25,0,0,0,64,12,176,2,112,0,0,7,168,14,176,0,156,0,0,0,0,12,11,160,25],[0,0,0,4,14,208,1,191,0,0,7,164,11,192,0,156,0,0,0,0,14,13,160,25,0,0,0,32,13,192,2,112],[0,0,7,164,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,9,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,168,14,192,0,156,0,0,4,10,0,0,33,61,0,0,0,1,13,208,1,144],[0,0,4,10,0,0,193,61,0,0,0,64,0,192,4,63,0,0,0,9,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,174,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,166,0,0,65,61,0,0,0,0,7,0,0,75,0,0,7,176,0,0,97,61],[0,0,0,0,7,9,4,51,0,0,0,0,7,7,0,75,0,0,4,250,0,0,97,61,0,0,0,0,7,12,4,51],[0,0,7,173,7,112,1,151,0,0,0,9,13,0,0,41,0,0,0,248,11,208,2,16,0,0,0,0,7,123,1,159],[0,0,7,175,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,10,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,8,180,0,0,1,61,0,0,7,172,6,128,0,156,0,0,4,10,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,11,6,4,59,0,0,0,0,0,186,4,53,0,0,4,250,0,0,97,61],[0,0,0,10,13,0,0,41,0,0,0,248,6,208,2,16,0,0,7,169,12,0,0,65,0,0,0,0,13,13,0,75],[0,0,0,0,12,6,192,25,0,0,7,173,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,7,225,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,7,218,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,7,238,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,7,231,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,7,251,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,7,244,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,8,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,1,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,21,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,14,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,8,34,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,27,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,168,5,112,0,156,0,0,4,10,0,0,33,61],[0,0,0,1,4,64,1,144,0,0,4,10,0,0,193,61,0,0,0,64,0,112,4,63,0,0,0,12,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,169,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,169,5,80,1,151,0,0,7,169,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,169,5,80,0,156,0,0,0,0,8,9,192,25],[0,0,0,0,5,8,0,75,0,0,0,11,5,0,0,41,0,0,0,204,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,168,8,64,0,156,0,0,0,204,0,0,33,61],[0,0,0,0,8,66,0,73,0,0,0,32,5,80,0,57,0,0,7,169,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,169,8,128,1,151,0,0,7,169,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,169,8,128,0,156],[0,0,0,0,9,10,192,25,0,0,0,0,8,9,0,75,0,0,0,204,0,0,193,61,0,0,0,1,8,64,0,140],[0,0,10,100,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,169,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,169,8,128,1,151,0,0,7,169,11,128,0,156,0,0,0,0,10,0,128,25,0,0,7,169,8,128,1,103],[0,0,7,169,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,187,0,0,193,61,0,0,7,172,8,112,0,156,0,0,4,10,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,175,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,187,0,0,1,61],[0,0,0,64,8,0,4,61,0,6,0,0,0,8,0,29,0,0,0,56,8,112,0,140,0,0,9,101,0,0,65,61],[0,0,0,32,9,112,2,112,0,0,7,164,8,112,0,156,0,0,0,0,9,7,160,25,0,0,7,164,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,6,10,0,0,41,0,0,7,172,10,160,0,156],[0,0,4,10,0,0,33,61,0,0,0,0,8,152,1,159,0,0,0,6,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,2,4,59],[0,0,0,0,0,41,4,53,0,0,4,250,0,0,97,61,0,0,7,173,2,32,1,151,0,0,0,248,10,128,2,16],[0,0,0,0,2,42,1,159,0,0,7,177,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,6,7,0,0,41,0,0,0,33,7,112,0,57],[0,0,0,0,0,39,4,53,0,0,9,117,0,0,1,61,0,0,7,172,7,144,0,156,0,0,4,10,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,12,7,4,59,0,0,0,0,0,203,4,53,0,0,4,250,0,0,97,61],[0,0,0,10,14,0,0,41,0,0,0,248,7,224,2,16,0,0,7,169,13,0,0,65,0,0,0,0,14,14,0,75],[0,0,0,0,13,7,192,25,0,0,7,173,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,8,193,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,8,186,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,8,206,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,8,199,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,8,219,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,8,212,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,8,232,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,8,225,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,8,245,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,8,238,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,2,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,8,251,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,15,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,8,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,168,5,96,0,156],[0,0,4,10,0,0,33,61,0,0,0,1,4,64,1,144,0,0,4,10,0,0,193,61,0,0,0,64,0,96,4,63],[0,0,0,12,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,169,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,169,5,80,1,151,0,0,7,169,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,169,5,80,0,156],[0,0,0,0,8,9,192,25,0,0,0,0,5,8,0,75,0,0,0,11,5,0,0,41,0,0,0,204,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,168,8,64,0,156],[0,0,0,204,0,0,33,61,0,0,0,0,8,66,0,73,0,0,0,32,5,80,0,57,0,0,7,169,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,169,8,128,1,151],[0,0,7,169,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,169,8,128,0,156,0,0,0,0,9,10,192,25,0,0,0,0,8,9,0,75,0,0,0,204,0,0,193,61],[0,0,0,1,8,64,0,140,0,0,12,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,7,169,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,169,8,128,1,151,0,0,7,169,11,128,0,156,0,0,0,0,10,0,128,25],[0,0,7,169,8,128,1,103,0,0,7,169,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,196,0,0,193,61,0,0,7,172,8,96,0,156,0,0,4,10,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,175,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,196,0,0,1,61,0,0,0,6,8,0,0,41,0,0,7,172,8,128,0,156,0,0,4,10,0,0,33,61],[0,0,0,6,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,2,4,59,0,0,0,0,0,40,4,53,0,0,4,250,0,0,97,61],[0,0,0,248,7,112,2,16,0,0,7,173,2,32,1,151,0,0,0,0,2,114,1,159,0,0,7,169,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,9,213,0,0,193,61,0,0,7,169,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,169,5,80,1,151],[0,0,7,169,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,169,5,80,0,156,0,0,0,0,6,7,192,25,0,0,0,0,5,6,0,75,0,0,0,11,5,0,0,41],[0,0,0,204,0,0,193,61,0,0,0,10,6,0,0,41,0,0,0,0,6,6,4,51,0,0,0,128,7,0,4,61],[0,0,0,9,8,0,0,41,0,0,0,0,8,8,4,51,0,0,0,7,9,0,0,41,0,0,0,0,9,9,4,51],[0,0,0,6,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,168,11,64,0,156,0,0,0,204,0,0,33,61,0,0,0,0,11,67,0,73],[0,0,0,32,5,80,0,57,0,0,7,169,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,169,11,176,1,151,0,0,7,169,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,169,11,176,0,156,0,0,0,0,12,13,192,25],[0,0,0,0,11,12,0,75,0,0,0,204,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,168,6,96,1,151,0,0,0,56,8,96,0,140],[0,0,10,139,0,0,65,61,0,0,0,32,9,96,2,112,0,0,7,164,8,96,0,156,0,0,0,0,9,6,160,25],[0,0,7,164,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,172,10,112,0,156],[0,0,4,10,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,9,4,59],[0,0,0,0,0,147,4,53,0,0,4,250,0,0,97,61,0,0,7,173,9,144,1,151,0,0,0,248,10,128,2,16],[0,0,0,0,9,154,1,159,0,0,7,179,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,154,0,0,1,61,0,0,7,170,1,0,0,65,0,0,0,0,0,16,4,57,0,0,7,164,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,7,164,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,7,171,1,16,1,199,0,0,128,11,2,0,0,57,30,139,30,129,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,25,2,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,44,0,0,65,61,0,0,0,128,1,32,2,112,0,0,7,174,3,32,0,156,0,0,0,0,1,2,160,25],[0,0,7,174,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,168,6,16,0,156,0,0,0,0,5,3,160,25,0,0,0,64,3,16,2,112,0,0,7,168,6,16,0,156],[0,0,0,0,3,1,160,25,0,0,0,4,1,80,1,191,0,0,7,164,6,48,0,156,0,0,0,0,1,5,160,25],[0,0,0,32,6,48,2,112,0,0,7,164,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,8,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,168,6,16,0,156,0,0,4,10,0,0,33,61,0,0,0,1,3,48,1,144,0,0,4,10,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,17,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,10,26,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,10,18,0,0,65,61,0,0,0,0,7,0,0,75,0,0,10,28,0,0,97,61],[0,0,0,0,7,4,4,51,0,0,0,0,7,7,0,75,0,0,4,250,0,0,97,61,0,0,0,0,7,6,4,51],[0,0,7,173,7,112,1,151,0,0,0,248,8,80,2,16,0,0,0,0,7,120,1,159,0,0,7,175,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,62,0,0,1,61],[0,0,7,172,1,64,0,156,0,0,4,10,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,17,1,0,3,103],[0,0,0,0,6,49,3,79,0,0,0,0,6,6,4,59,0,0,0,0,0,101,4,53,0,0,4,250,0,0,97,61],[0,0,0,248,7,32,2,16,0,0,7,169,8,0,0,65,0,0,0,0,2,2,0,75,0,0,0,0,8,7,192,25],[0,0,7,173,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,76,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,69,0,0,65,61],[0,0,0,0,4,86,0,25,0,0,7,199,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,8,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,168,6,64,0,156,0,0,4,10,0,0,33,61,0,0,0,1,5,80,1,144,0,0,4,10,0,0,193,61],[0,0,0,12,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,9,123,0,0,1,61],[0,0,0,56,8,64,0,140,0,0,12,171,0,0,65,61,0,0,0,32,9,64,2,112,0,0,7,164,8,64,0,156],[0,0,0,0,9,4,160,25,0,0,7,164,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,172,10,112,0,156,0,0,4,10,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,10,4,59,0,0,0,0,0,169,4,53,0,0,4,250,0,0,97,61,0,0,7,173,10,160,1,151],[0,0,0,248,11,128,2,16,0,0,0,0,10,171,1,159,0,0,7,177,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,187,0,0,1,61,0,0,7,172,8,112,0,156],[0,0,4,10,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,8,4,59,0,0,0,0,0,131,4,53],[0,0,4,250,0,0,97,61,0,0,7,173,8,128,1,151,0,0,0,248,6,96,2,16,0,0,0,0,6,134,1,159],[0,0,7,178,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,167,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,160,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,180,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,173,0,0,65,61],[0,0,0,0,7,120,0,25,0,0,0,0,0,7,4,53,0,0,0,10,12,0,0,41,0,0,0,0,8,12,4,51],[0,0,0,0,9,8,0,75,0,0,10,194,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,187,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,208,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,201,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,222,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,215,0,0,65,61,0,0,0,0,7,120,0,25,0,0,0,0,0,7,4,53],[0,0,0,6,12,0,0,41,0,0,0,0,8,12,4,51,0,0,0,0,9,8,0,75,0,0,10,236,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,229,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,251,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,243,0,0,65,61,0,0,0,0,9,7,0,75],[0,0,11,10,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,11,23,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,11,16,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,8,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,168,4,16,0,156,0,0,4,10,0,0,33,61],[0,0,0,1,2,32,1,144,0,0,4,10,0,0,193,61,0,0,0,64,0,16,4,63,0,0,7,164,1,0,0,65],[0,0,7,164,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,164,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,164,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,181,1,16,1,199,0,0,128,16,2,0,0,57,30,139,30,129,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,0,11,3,0,0,41,0,0,0,12,2,0,0,41,0,0,0,204,0,0,97,61],[0,12,0,0,0,2,0,29,0,0,0,17,2,0,3,103,0,11,0,0,0,3,0,29,0,0,0,0,3,50,3,79],[0,0,0,0,1,1,4,59,0,10,0,0,0,1,0,29,0,17,0,0,0,1,0,29,0,0,0,0,1,3,4,59],[0,0,0,1,3,16,0,140,0,0,13,254,0,0,33,61,0,0,0,0,3,1,0,75,0,0,14,210,0,0,97,61],[0,0,0,1,1,16,0,140,0,0,15,126,0,0,193,61,0,0,0,0,1,0,4,21,0,10,0,0,0,1,0,29],[0,0,7,170,1,0,0,65,0,0,0,0,0,16,4,57,0,0,7,164,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,7,164,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,7,171,1,16,1,199],[0,0,128,11,2,0,0,57,30,139,30,129,0,0,4,15,0,0,0,1,2,32,1,144,0,0,25,2,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,229,0,0,65,61],[0,0,0,128,1,64,2,112,0,0,7,174,2,64,0,156,0,0,0,0,1,4,160,25,0,0,7,174,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,168,6,16,0,156],[0,0,0,0,5,2,160,25,0,0,0,64,2,16,2,112,0,0,7,168,6,16,0,156,0,0,0,0,2,1,160,25],[0,0,0,4,1,80,1,191,0,0,7,164,6,32,0,156,0,0,0,0,1,5,160,25,0,0,0,32,6,32,2,112],[0,0,7,164,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,168,6,16,0,156,0,0,4,10,0,0,33,61,0,0,0,1,2,32,1,144,0,0,4,10,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,17,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,11,146,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,11,138,0,0,65,61,0,0,0,0,7,0,0,75,0,0,11,148,0,0,97,61],[0,0,0,0,7,3,4,51,0,0,0,0,7,7,0,75,0,0,4,250,0,0,97,61,0,0,0,0,7,6,4,51],[0,0,7,173,7,112,1,151,0,0,0,248,8,80,2,16,0,0,0,0,7,120,1,159,0,0,7,175,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,247,0,0,1,61],[0,0,0,0,1,33,3,223,0,0,0,192,2,64,2,16,0,0,7,183,2,32,1,151,0,0,7,184,2,32,1,199],[0,1,0,0,0,33,3,181,0,0,0,0,1,33,3,175,0,0,128,16,2,0,0,57,30,139,30,134,0,0,4,15],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,7,164,4,48,1,151,0,0,0,1,2,32,1,144],[0,0,13,28,0,0,97,61,0,0,0,63,2,64,0,57,0,0,7,185,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,168,6,32,0,156,0,0,4,10,0,0,33,61,0,0,0,1,3,48,1,144,0,0,4,10,0,0,193,61],[0,0,0,64,0,32,4,63,0,0,0,0,2,69,4,54,0,0,0,17,3,0,3,103,0,0,0,31,6,64,0,57],[0,0,0,5,6,96,2,114,0,0,11,204,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,196,0,0,65,61],[0,0,0,0,6,0,0,75,0,0,11,206,0,0,97,61,0,0,0,31,6,64,1,143,0,0,0,5,4,64,2,114],[0,0,11,218,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,210,0,0,65,61,0,0,0,0,7,6,0,75,0,0,11,233,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,153,0,0,193,61],[0,0,0,12,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,11,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,10,13,0,0,41],[0,0,0,0,0,210,4,53,0,0,1,128,2,16,0,57,0,0,0,9,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,190,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,191,3,16,0,156,0,0,4,10,0,0,33,61,0,0,1,224,3,16,0,57],[0,0,0,64,0,48,4,63,0,0,7,164,4,0,0,65,0,0,7,164,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,164,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,164,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,181,1,16,1,199],[0,0,128,16,2,0,0,57,30,139,30,129,0,0,4,15,0,0,0,1,2,32,1,144,0,0,0,204,0,0,97,61],[0,0,0,0,1,1,4,59,0,9,0,0,0,1,0,29,0,0,0,64,1,0,4,61,0,10,0,0,0,1,0,29],[0,0,7,170,1,0,0,65,0,0,0,0,0,16,4,57,0,0,0,0,1,0,4,20,0,0,7,164,2,16,0,156],[0,0,7,164,1,0,128,65,0,0,0,192,1,16,2,16,0,0,7,171,1,16,1,199,0,0,128,11,2,0,0,57],[30,139,30,129,0,0,4,15,0,0,0,1,2,32,1,144,0,0,25,2,0,0,97,61,0,0,0,10,4,0,0,41],[0,0,0,32,2,64,0,57,0,0,0,0,1,1,4,59,0,0,7,192,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,193,3,0,0,65],[0,0,0,0,0,49,4,53,0,0,0,64,1,64,0,57,0,0,7,194,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,195,1,64,0,156,0,0,4,10,0,0,33,61],[0,0,0,10,4,0,0,41,0,0,0,160,1,64,0,57,0,0,0,64,0,16,4,63,0,0,7,164,1,0,0,65],[0,0,7,164,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,164,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,164,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,181,1,16,1,199,0,0,128,16,2,0,0,57,30,139,30,129,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,0,204,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,9,4,0,0,41,0,0,0,0,0,66,4,53,0,0,0,32,2,16,0,57],[0,0,7,196,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,197,3,16,0,156,0,0,4,10,0,0,33,61],[0,0,0,128,3,16,0,57,0,0,0,64,0,48,4,63,0,0,7,164,3,0,0,65,0,0,7,164,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,164,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,164,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,11,53,0,0,1,61,0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57,0,0,7,187,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,188,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,164,2,0,0,65,0,0,7,164,3,16,0,156,0,0,0,0,1,2,128,25],[0,0,0,64,1,16,2,16,0,0,7,189,1,16,1,199,0,0,30,141,0,1,4,48,0,0,7,172,8,112,0,156],[0,0,4,10,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,9,4,59,0,0,0,0,0,152,4,53],[0,0,4,250,0,0,97,61,0,0,0,248,10,64,2,16,0,0,7,173,9,144,1,151,0,0,0,0,9,169,1,159],[0,0,7,169,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,172,9,112,0,156,0,0,4,10,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,11,2,4,59],[0,0,0,0,0,185,4,53,0,0,4,250,0,0,97,61,0,0,7,173,2,176,1,151,0,0,7,178,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,168,9,144,1,151,0,0,0,56,13,144,0,140,0,0,13,55,0,0,65,61,0,0,0,32,13,144,2,112],[0,0,7,164,12,144,0,156,0,0,0,0,13,9,160,25,0,0,7,164,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,172,14,160,0,156,0,0,4,10,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,4,250,0,0,97,61,0,0,0,248,11,192,2,16],[0,0,0,0,2,43,1,159,0,0,7,179,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,13,68,0,0,1,61,0,0,0,56,8,64,0,140,0,0,13,180,0,0,65,61,0,0,0,32,9,64,2,112],[0,0,7,164,8,64,0,156,0,0,0,0,9,4,160,25,0,0,7,164,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,172,10,96,0,156,0,0,4,10,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,10,4,59,0,0,0,0,0,169,4,53,0,0,4,250,0,0,97,61],[0,0,7,173,10,160,1,151,0,0,0,248,11,128,2,16,0,0,0,0,10,171,1,159,0,0,7,177,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,196,0,0,1,61],[0,0,0,31,3,64,1,143,0,0,0,5,2,64,2,114,0,0,13,39,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,13,32,0,0,65,61,0,0,0,0,5,3,0,75],[0,0,13,53,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,141,0,1,4,48,0,0,7,172,13,160,0,156],[0,0,4,10,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,4,250,0,0,97,61],[0,0,0,248,9,144,2,16,0,0,0,0,2,41,1,159,0,0,7,178,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,180,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,13,84,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,13,77,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,13,97,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,13,90,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,13,110,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,13,103,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,13,125,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,13,117,0,0,65,61,0,0,0,0,10,6,0,75,0,0,13,140,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,13,153,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,13,146,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,168,4,16,0,156,0,0,4,10,0,0,33,61,0,0,0,1,3,48,1,144,0,0,4,10,0,0,193,61],[0,0,0,64,0,16,4,63,0,0,7,164,1,0,0,65,0,0,7,164,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,164,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,11,49,0,0,1,61],[0,0,7,172,8,96,0,156,0,0,4,10,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,9,4,59],[0,0,0,0,0,152,4,53,0,0,4,250,0,0,97,61,0,0,0,248,10,64,2,16,0,0,7,173,9,144,1,151],[0,0,0,0,9,169,1,159,0,0,7,169,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,172,9,96,0,156,0,0,4,10,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,11,2,4,59,0,0,0,0,0,185,4,53,0,0,4,250,0,0,97,61,0,0,7,173,2,176,1,151],[0,0,7,178,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,168,9,144,1,151,0,0,0,56,13,144,0,140,0,0,14,85,0,0,65,61],[0,0,0,32,13,144,2,112,0,0,7,164,12,144,0,156,0,0,0,0,13,9,160,25,0,0,7,164,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,172,14,160,0,156,0,0,4,10,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,4,250,0,0,97,61],[0,0,0,248,11,192,2,16,0,0,0,0,2,43,1,159,0,0,7,179,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,98,0,0,1,61,0,0,0,2,3,16,0,140,0,0,15,36,0,0,97,61],[0,0,0,113,1,16,0,140,0,0,15,126,0,0,193,61,0,0,0,11,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,12,4,16,0,106,0,0,0,35,4,64,0,138],[0,0,0,0,3,3,4,59,0,0,7,169,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,169,4,64,1,151,0,0,7,169,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,169,4,64,0,156,0,0,0,0,5,6,192,25],[0,0,0,0,4,5,0,75,0,0,0,204,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,168,4,32,0,156,0,0,0,204,0,0,33,61,0,0,0,0,4,33,0,73],[0,0,0,32,1,48,0,57,0,0,7,169,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,169,4,64,1,151,0,0,7,169,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,169,4,64,0,156,0,0,0,0,3,5,192,25],[0,0,0,0,3,3,0,75,0,0,0,204,0,0,193,61,30,139,29,229,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,10,3,0,0,41,0,0,0,0,0,49,4,53,0,0,7,203,3,32,0,156,0,0,4,10,0,0,33,61],[0,0,0,96,3,32,0,57,0,0,0,64,0,48,4,63,0,0,7,164,3,0,0,65,0,0,7,164,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,164,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,164,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,181,1,16,1,199,0,0,128,16,2,0,0,57,30,139,30,129,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,0,204,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,17,4,0,0,41,0,0,0,0,0,67,4,53,0,0,0,0,0,18,4,53,0,0,7,164,1,0,0,65],[0,0,7,164,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,64,1,32,2,16,0,0,7,204,1,16,1,199],[0,0,30,140,0,1,4,46,0,0,7,172,13,160,0,156,0,0,4,10,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,4,250,0,0,97,61,0,0,0,248,9,144,2,16,0,0,0,0,2,41,1,159],[0,0,7,178,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,181,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,114,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,107,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,14,127,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,14,120,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,14,140,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,14,133,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,14,155,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,147,0,0,65,61,0,0,0,0,10,7,0,75],[0,0,14,170,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,14,183,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,14,176,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,168,4,16,0,156,0,0,4,10,0,0,33,61],[0,0,0,1,3,48,1,144,0,0,4,10,0,0,193,61,0,0,0,64,0,16,4,63,0,0,7,164,1,0,0,65],[0,0,7,164,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,164,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,11,49,0,0,1,61,0,0,0,64,1,0,4,61,0,10,0,0,0,1,0,29],[0,0,0,11,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,15,133,0,0,65,61,0,0,0,128,1,48,2,112,0,0,7,174,5,48,0,156],[0,0,0,0,1,3,160,25,0,0,7,174,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,168,7,16,0,156,0,0,0,0,6,5,160,25,0,0,0,64,5,16,2,112],[0,0,7,168,7,16,0,156,0,0,0,0,5,1,160,25,0,0,0,4,1,96,1,191,0,0,7,164,7,80,0,156],[0,0,0,0,1,6,160,25,0,0,0,32,6,80,2,112,0,0,7,164,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,168,7,16,0,156,0,0,4,10,0,0,33,61],[0,0,0,1,6,96,1,144,0,0,4,10,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,15,16,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,15,8,0,0,65,61],[0,0,0,0,7,0,0,75,0,0,15,18,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,4,250,0,0,97,61,0,0,0,0,7,6,4,51,0,0,7,173,7,112,1,151],[0,0,0,248,8,80,2,16,0,0,0,0,7,120,1,159,0,0,7,175,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,15,152,0,0,1,61],[0,0,0,0,1,0,4,21,0,10,0,0,0,1,0,29,0,0,7,170,1,0,0,65,0,0,0,0,0,16,4,57],[0,0,7,164,1,0,0,65,0,0,0,0,2,0,4,20,0,0,7,164,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,192,1,32,2,16,0,0,7,171,1,16,1,199,0,0,128,11,2,0,0,57,30,139,30,129,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,25,2,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,69,0,0,65,61,0,0,0,128,1,64,2,112,0,0,7,174,2,64,0,156],[0,0,0,0,1,4,160,25,0,0,7,174,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,168,6,16,0,156,0,0,0,0,5,2,160,25,0,0,0,64,2,16,2,112],[0,0,7,168,6,16,0,156,0,0,0,0,2,1,160,25,0,0,0,4,1,80,1,191,0,0,7,164,6,32,0,156],[0,0,0,0,1,5,160,25,0,0,0,32,6,32,2,112,0,0,7,164,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,168,6,16,0,156,0,0,4,10,0,0,33,61],[0,0,0,1,2,32,1,144,0,0,4,10,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,17,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,108,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,100,0,0,65,61],[0,0,0,0,7,0,0,75,0,0,15,110,0,0,97,61,0,0,0,0,7,3,4,51,0,0,0,0,7,7,0,75],[0,0,4,250,0,0,97,61,0,0,0,0,7,6,4,51,0,0,7,173,7,112,1,151,0,0,0,248,8,80,2,16],[0,0,0,0,7,120,1,159,0,0,7,175,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,87,0,0,1,61,0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57],[0,0,7,205,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,159,0,0,1,61,0,0,0,10,1,0,0,41,0,0,7,172,1,16,0,156,0,0,4,10,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,6,4,59],[0,0,0,0,0,101,4,53,0,0,4,250,0,0,97,61,0,0,0,248,7,48,2,16,0,0,7,169,8,0,0,65],[0,0,0,0,3,3,0,75,0,0,0,0,8,7,192,25,0,0,7,173,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,165,0,0,65,61,0,0,0,128,6,80,2,112],[0,0,7,174,7,80,0,156,0,0,0,0,6,5,160,25,0,0,7,174,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,168,9,96,0,156,0,0,0,0,8,7,160,25],[0,0,0,64,7,96,2,112,0,0,7,168,9,96,0,156,0,0,0,0,7,6,160,25,0,0,0,4,9,128,1,191],[0,0,7,164,6,112,0,156,0,0,0,0,9,8,160,25,0,0,0,32,8,112,2,112,0,0,7,164,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,168,9,112,0,156],[0,0,4,10,0,0,33,61,0,0,0,1,8,128,1,144,0,0,4,10,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,15,211,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,15,203,0,0,65,61,0,0,0,0,8,0,0,75],[0,0,15,213,0,0,97,61,0,0,0,0,8,3,4,51,0,0,0,0,8,8,0,75,0,0,4,250,0,0,97,61],[0,0,0,0,8,7,4,51,0,0,7,173,8,128,1,151,0,0,0,248,9,96,2,16,0,0,0,0,8,137,1,159],[0,0,7,175,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,181,0,0,1,61,0,0,7,172,1,48,0,156,0,0,4,10,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,17,1,0,3,103,0,0,0,0,6,33,3,79,0,0,0,0,6,6,4,59,0,0,0,0,0,101,4,53],[0,0,4,250,0,0,97,61,0,0,0,248,7,64,2,16,0,0,7,169,8,0,0,65,0,0,0,0,4,4,0,75],[0,0,0,0,8,7,192,25,0,0,7,173,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,12,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,2,0,0,65,61,0,0,0,128,7,96,2,112],[0,0,7,174,8,96,0,156,0,0,0,0,7,6,160,25,0,0,7,174,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,168,10,112,0,156,0,0,0,0,9,8,160,25],[0,0,0,64,8,112,2,112,0,0,7,168,10,112,0,156,0,0,0,0,8,7,160,25,0,0,0,4,10,144,1,191],[0,0,7,164,7,128,0,156,0,0,0,0,10,9,160,25,0,0,0,32,9,128,2,112,0,0,7,164,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,168,10,128,0,156],[0,0,4,10,0,0,33,61,0,0,0,1,9,144,1,144,0,0,4,10,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,51,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,43,0,0,65,61,0,0,0,0,9,0,0,75],[0,0,16,53,0,0,97,61,0,0,0,0,9,5,4,51,0,0,0,0,9,9,0,75,0,0,4,250,0,0,97,61],[0,0,0,0,9,8,4,51,0,0,7,173,9,144,1,151,0,0,0,248,10,112,2,16,0,0,0,0,9,154,1,159],[0,0,7,175,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,18,0,0,1,61,0,0,7,172,1,48,0,156,0,0,4,10,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,17,1,0,3,103,0,0,0,0,6,33,3,79,0,0,0,0,6,6,4,59,0,0,0,0,0,101,4,53],[0,0,4,250,0,0,97,61,0,0,0,248,7,64,2,16,0,0,7,169,8,0,0,65,0,0,0,0,4,4,0,75],[0,0,0,0,8,7,192,25,0,0,7,173,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,12,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,95,0,0,65,61,0,0,0,128,7,96,2,112],[0,0,7,174,8,96,0,156,0,0,0,0,7,6,160,25,0,0,7,174,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,168,10,112,0,156,0,0,0,0,9,8,160,25],[0,0,0,64,8,112,2,112,0,0,7,168,10,112,0,156,0,0,0,0,8,7,160,25,0,0,0,4,10,144,1,191],[0,0,7,164,7,128,0,156,0,0,0,0,10,9,160,25,0,0,0,32,9,128,2,112,0,0,7,164,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,168,10,128,0,156],[0,0,4,10,0,0,33,61,0,0,0,1,9,144,1,144,0,0,4,10,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,147,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,139,0,0,65,61,0,0,0,0,9,0,0,75],[0,0,16,149,0,0,97,61,0,0,0,0,9,5,4,51,0,0,0,0,9,9,0,75,0,0,4,250,0,0,97,61],[0,0,0,0,9,8,4,51,0,0,7,173,9,144,1,151,0,0,0,248,10,112,2,16,0,0,0,0,9,154,1,159],[0,0,7,175,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,111,0,0,1,61,0,0,7,172,6,48,0,156,0,0,4,10,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,7,4,59,0,0,0,0,0,118,4,53,0,0,4,250,0,0,97,61,0,0,0,248,8,80,2,16],[0,0,7,169,9,0,0,65,0,0,0,0,5,5,0,75,0,0,0,0,9,8,192,25,0,0,7,173,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,188,0,0,65,61],[0,0,0,128,6,80,2,112,0,0,7,174,7,80,0,156,0,0,0,0,6,5,160,25,0,0,7,174,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,168,9,96,0,156],[0,0,0,0,8,7,160,25,0,0,0,64,7,96,2,112,0,0,7,168,9,96,0,156,0,0,0,0,7,6,160,25],[0,0,0,4,9,128,1,191,0,0,7,164,6,112,0,156,0,0,0,0,9,8,160,25,0,0,0,32,8,112,2,112],[0,0,7,164,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,168,9,112,0,156,0,0,4,10,0,0,33,61,0,0,0,1,8,128,1,144,0,0,4,10,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,240,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,232,0,0,65,61],[0,0,0,0,8,0,0,75,0,0,16,242,0,0,97,61,0,0,0,0,8,4,4,51,0,0,0,0,8,8,0,75],[0,0,4,250,0,0,97,61,0,0,0,0,8,7,4,51,0,0,7,173,8,128,1,151,0,0,0,248,9,96,2,16],[0,0,0,0,8,137,1,159,0,0,7,175,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,204,0,0,1,61,0,0,7,172,7,80,0,156,0,0,4,10,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,8,4,59,0,0,0,0,0,135,4,53,0,0,4,250,0,0,97,61],[0,0,0,248,9,96,2,16,0,0,7,169,10,0,0,65,0,0,0,0,6,6,0,75,0,0,0,0,10,9,192,25],[0,0,7,173,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,92,0,0,65,61,0,0,0,128,8,112,2,112,0,0,7,174,9,112,0,156,0,0,0,0,8,7,160,25],[0,0,7,174,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,168,11,128,0,156,0,0,0,0,10,9,160,25,0,0,0,64,9,128,2,112,0,0,7,168,11,128,0,156],[0,0,0,0,9,8,160,25,0,0,0,4,11,160,1,191,0,0,7,164,8,144,0,156,0,0,0,0,11,10,160,25],[0,0,0,32,10,144,2,112,0,0,7,164,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,168,11,144,0,156,0,0,4,10,0,0,33,61,0,0,0,1,10,160,1,144],[0,0,4,10,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,77,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,69,0,0,65,61,0,0,0,0,10,0,0,75,0,0,17,79,0,0,97,61,0,0,0,0,10,6,4,51],[0,0,0,0,10,10,0,75,0,0,4,250,0,0,97,61,0,0,0,0,10,9,4,51,0,0,7,173,10,160,1,151],[0,0,0,248,11,128,2,16,0,0,0,0,10,171,1,159,0,0,7,175,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,108,0,0,1,61,0,0,7,172,7,80,0,156],[0,0,4,10,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,8,4,59,0,0,0,0,0,135,4,53],[0,0,4,250,0,0,97,61,0,0,0,248,9,96,2,16,0,0,7,169,10,0,0,65,0,0,0,0,6,6,0,75],[0,0,0,0,10,9,192,25,0,0,7,173,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,185,0,0,65,61,0,0,0,128,8,112,2,112,0,0,7,174,9,112,0,156],[0,0,0,0,8,7,160,25,0,0,7,174,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,168,11,128,0,156,0,0,0,0,10,9,160,25,0,0,0,64,9,128,2,112],[0,0,7,168,11,128,0,156,0,0,0,0,9,8,160,25,0,0,0,4,11,160,1,191,0,0,7,164,8,144,0,156],[0,0,0,0,11,10,160,25,0,0,0,32,10,144,2,112,0,0,7,164,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,168,11,144,0,156,0,0,4,10,0,0,33,61],[0,0,0,1,10,160,1,144,0,0,4,10,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,170,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,162,0,0,65,61,0,0,0,0,10,0,0,75,0,0,17,172,0,0,97,61],[0,0,0,0,10,6,4,51,0,0,0,0,10,10,0,75,0,0,4,250,0,0,97,61,0,0,0,0,10,9,4,51],[0,0,7,173,10,160,1,151,0,0,0,248,11,128,2,16,0,0,0,0,10,171,1,159,0,0,7,175,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,201,0,0,1,61],[0,0,7,172,6,64,0,156,0,0,4,10,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,7,4,59],[0,0,0,0,0,118,4,53,0,0,4,250,0,0,97,61,0,0,0,248,8,80,2,16,0,0,7,169,9,0,0,65],[0,0,0,0,5,5,0,75,0,0,0,0,9,8,192,25,0,0,7,173,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,219,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,212,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,232,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,225,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,168,4,64,0,156,0,0,4,10,0,0,33,61],[0,0,0,1,3,48,1,144,0,0,4,10,0,0,193,61,0,0,0,8,3,0,0,41,0,0,0,64,0,48,4,63],[0,0,7,172,3,48,0,156,0,0,4,10,0,0,33,61,0,0,0,12,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,176,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,228,0,0,65,61],[0,0,0,128,5,64,2,112,0,0,7,174,6,64,0,156,0,0,0,0,5,4,160,25,0,0,7,174,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,168,8,80,0,156],[0,0,0,0,7,6,160,25,0,0,0,64,6,80,2,112,0,0,7,168,8,80,0,156,0,0,0,0,6,5,160,25],[0,0,0,4,8,112,1,191,0,0,7,164,5,96,0,156,0,0,0,0,8,7,160,25,0,0,0,32,7,96,2,112],[0,0,7,164,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,168,8,96,0,156],[0,0,4,10,0,0,33,61,0,0,0,1,7,112,1,144,0,0,4,10,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,18,72,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,18,64,0,0,65,61],[0,0,0,0,7,0,0,75,0,0,18,74,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,4,250,0,0,97,61,0,0,0,0,7,6,4,51,0,0,7,173,7,112,1,151],[0,0,0,248,8,80,2,16,0,0,0,0,7,120,1,159,0,0,7,175,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,246,0,0,1,61],[0,0,7,172,8,96,0,156,0,0,4,10,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,9,4,59],[0,0,0,0,0,152,4,53,0,0,4,250,0,0,97,61,0,0,0,248,10,112,2,16,0,0,7,169,11,0,0,65],[0,0,0,0,7,7,0,75,0,0,0,0,11,10,192,25,0,0,7,173,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,22,0,0,65,61,0,0,0,128,9,128,2,112],[0,0,7,174,10,128,0,156,0,0,0,0,9,8,160,25,0,0,7,174,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,168,12,144,0,156,0,0,0,0,11,10,160,25],[0,0,0,64,10,144,2,112,0,0,7,168,12,144,0,156,0,0,0,0,10,9,160,25,0,0,0,4,12,176,1,191],[0,0,7,164,9,160,0,156,0,0,0,0,12,11,160,25,0,0,0,32,11,160,2,112,0,0,7,164,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,168,12,160,0,156],[0,0,4,10,0,0,33,61,0,0,0,1,11,176,1,144,0,0,4,10,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,167,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,159,0,0,65,61,0,0,0,0,11,0,0,75],[0,0,18,169,0,0,97,61,0,0,0,0,11,7,4,51,0,0,0,0,11,11,0,75,0,0,4,250,0,0,97,61],[0,0,0,0,11,10,4,51,0,0,7,173,11,176,1,151,0,0,0,248,12,144,2,16,0,0,0,0,11,188,1,159],[0,0,7,175,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,38,0,0,1,61,0,0,7,172,8,96,0,156,0,0,4,10,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,9,4,59,0,0,0,0,0,152,4,53,0,0,4,250,0,0,97,61,0,0,0,248,10,112,2,16],[0,0,7,169,11,0,0,65,0,0,0,0,7,7,0,75,0,0,0,0,11,10,192,25,0,0,7,173,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,134,0,0,65,61],[0,0,0,128,9,128,2,112,0,0,7,174,10,128,0,156,0,0,0,0,9,8,160,25,0,0,7,174,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,168,12,144,0,156],[0,0,0,0,11,10,160,25,0,0,0,64,10,144,2,112,0,0,7,168,12,144,0,156,0,0,0,0,10,9,160,25],[0,0,0,4,12,176,1,191,0,0,7,164,9,160,0,156,0,0,0,0,12,11,160,25,0,0,0,32,11,160,2,112],[0,0,7,164,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,168,12,160,0,156,0,0,4,10,0,0,33,61,0,0,0,1,11,176,1,144,0,0,4,10,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,19,4,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,252,0,0,65,61],[0,0,0,0,11,0,0,75,0,0,19,6,0,0,97,61,0,0,0,0,11,7,4,51,0,0,0,0,11,11,0,75],[0,0,4,250,0,0,97,61,0,0,0,0,11,10,4,51,0,0,7,173,11,176,1,151,0,0,0,248,12,144,2,16],[0,0,0,0,11,188,1,159,0,0,7,175,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,150,0,0,1,61,0,0,7,172,9,112,0,156,0,0,4,10,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,10,4,59,0,0,0,0,0,169,4,53,0,0,4,250,0,0,97,61],[0,0,0,248,11,128,2,16,0,0,7,169,12,0,0,65,0,0,0,0,8,8,0,75,0,0,0,0,12,11,192,25],[0,0,7,173,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,172,8,144,0,156,0,0,4,10,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,176,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,177,0,0,65,61,0,0,0,9,4,0,0,41,0,0,0,128,10,64,2,112],[0,0,7,174,11,64,0,156,0,0,0,0,10,4,160,25,0,0,7,174,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,168,13,160,0,156,0,0,0,0,12,11,160,25],[0,0,0,64,11,160,2,112,0,0,7,168,13,160,0,156,0,0,0,0,11,10,160,25,0,0,0,4,13,192,1,191],[0,0,7,164,10,176,0,156,0,0,0,0,13,12,160,25,0,0,0,32,12,176,2,112,0,0,7,164,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,168,13,176,0,156],[0,0,4,10,0,0,33,61,0,0,0,1,12,192,1,144,0,0,4,10,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,115,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,107,0,0,65,61,0,0,0,0,4,0,0,75],[0,0,19,117,0,0,97,61,0,0,0,0,4,8,4,51,0,0,0,0,4,4,0,75,0,0,4,250,0,0,97,61],[0,0,0,0,4,11,4,51,0,0,7,173,4,64,1,151,0,0,0,248,12,160,2,16,0,0,0,0,4,76,1,159],[0,0,7,175,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,195,0,0,1,61,0,0,7,172,9,112,0,156,0,0,4,10,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,10,4,59,0,0,0,0,0,169,4,53,0,0,4,250,0,0,97,61],[0,0,0,248,11,128,2,16,0,0,7,169,12,0,0,65,0,0,0,0,8,8,0,75,0,0,0,0,12,11,192,25],[0,0,7,173,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,61,0,0,65,61,0,0,0,128,10,144,2,112,0,0,7,174,11,144,0,156,0,0,0,0,10,9,160,25],[0,0,7,174,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,168,13,160,0,156,0,0,0,0,12,11,160,25,0,0,0,64,11,160,2,112,0,0,7,168,13,160,0,156],[0,0,0,0,11,10,160,25,0,0,0,4,13,192,1,191,0,0,7,164,10,176,0,156,0,0,0,0,13,12,160,25],[0,0,0,32,12,176,2,112,0,0,7,164,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,168,13,176,0,156,0,0,4,10,0,0,33,61,0,0,0,1,12,192,1,144],[0,0,4,10,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,209,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,201,0,0,65,61,0,0,0,0,4,0,0,75,0,0,19,211,0,0,97,61,0,0,0,0,4,8,4,51],[0,0,0,0,4,4,0,75,0,0,4,250,0,0,97,61,0,0,0,0,4,11,4,51,0,0,7,173,4,64,1,151],[0,0,0,248,12,160,2,16,0,0,0,0,4,76,1,159,0,0,7,175,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,78,0,0,1,61],[0,0,0,6,5,0,0,41,0,0,7,172,5,80,0,156,0,0,4,10,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,6,4,59,0,0,0,0,0,101,4,53,0,0,4,250,0,0,97,61],[0,0,0,248,7,64,2,16,0,0,7,169,8,0,0,65,0,0,0,0,4,4,0,75,0,0,0,0,8,7,192,25],[0,0,7,173,4,96,1,151,0,0,0,0,4,132,1,159,0,0,0,0,0,69,4,53,0,0,0,11,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,169,6,48,1,151,0,0,7,169,7,80,1,151,0,0,7,169,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,169,6,96,0,156,0,0,0,0,9,8,192,25],[0,0,0,0,6,9,0,75,0,0,0,204,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,168,7,80,0,156,0,0,0,204,0,0,33,61,0,0,0,0,7,81,0,73],[0,0,0,32,6,96,0,57,0,0,7,169,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,169,7,112,1,151,0,0,7,169,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,169,7,112,0,156,0,0,0,0,8,9,192,25],[0,0,0,0,7,8,0,75,0,0,0,204,0,0,193,61,0,0,0,1,7,80,0,140,0,0,22,44,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,169,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,169,5,80,1,151],[0,0,7,169,8,80,0,156,0,0,0,0,7,0,128,25,0,0,7,169,5,80,1,103,0,0,7,169,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,104,0,0,193,61],[0,0,0,64,5,0,4,61,0,5,0,0,0,5,0,29,0,0,7,172,5,80,0,156,0,0,4,10,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,175,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,104,0,0,1,61,0,0,7,172,4,128,0,156,0,0,4,10,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,11,4,4,59,0,0,0,0,0,186,4,53,0,0,4,250,0,0,97,61,0,0,0,248,4,144,2,16],[0,0,7,169,12,0,0,65,0,0,0,0,9,9,0,75,0,0,0,0,12,4,192,25,0,0,7,173,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,172,4,160,0,156],[0,0,4,10,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,176,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,104,0,0,65,61,0,0,0,9,4,0,0,41,0,0,0,128,11,64,2,112],[0,0,7,174,12,64,0,156,0,0,0,0,11,4,160,25,0,0,7,174,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,168,14,176,0,156,0,0,0,0,13,12,160,25],[0,0,0,64,12,176,2,112,0,0,7,168,14,176,0,156,0,0,0,0,12,11,160,25,0,0,0,4,14,208,1,191],[0,0,7,164,11,192,0,156,0,0,0,0,14,13,160,25,0,0,0,32,13,192,2,112,0,0,7,164,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,168,14,192,0,156,0,0,4,10,0,0,33,61,0,0,0,1,13,208,1,144,0,0,4,10,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,157,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,149,0,0,65,61,0,0,0,0,4,0,0,75,0,0,20,159,0,0,97,61,0,0,0,0,4,9,4,51],[0,0,0,0,4,4,0,75,0,0,4,250,0,0,97,61,0,0,0,0,4,12,4,51,0,0,7,173,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,175,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,122,0,0,1,61,0,0,7,172,4,128,0,156,0,0,4,10,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,11,4,4,59,0,0,0,0,0,186,4,53,0,0,4,250,0,0,97,61,0,0,0,9,13,0,0,41],[0,0,0,248,4,208,2,16,0,0,7,169,12,0,0,65,0,0,0,0,13,13,0,75,0,0,0,0,12,4,192,25],[0,0,7,173,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,208,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,201,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,221,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,214,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,234,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,227,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,247,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,240,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,4,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,253,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,17,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,10,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,168,6,112,0,156,0,0,4,10,0,0,33,61,0,0,0,1,5,80,1,144],[0,0,4,10,0,0,193,61,0,0,0,64,0,112,4,63,0,0,0,11,12,0,0,41,0,0,0,0,6,194,0,73],[0,0,0,12,5,0,0,41,0,0,1,196,13,80,0,57,0,0,0,0,5,209,3,79,0,0,0,0,5,5,4,59],[0,0,0,31,9,96,0,138,0,0,7,169,6,144,1,151,0,0,7,169,8,80,1,151,0,0,7,169,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,169,6,96,0,156,0,0,0,0,11,10,192,25],[0,0,0,0,6,11,0,75,0,0,0,204,0,0,193,61,0,0,0,0,6,197,0,25,0,0,0,0,5,97,3,79],[0,0,0,0,5,5,4,59,0,0,7,168,8,80,0,156,0,0,0,204,0,0,33,61,0,0,0,0,8,82,0,73],[0,0,0,32,6,96,0,57,0,0,7,169,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,169,8,128,1,151,0,12,0,0,0,6,0,29,0,0,7,169,12,96,1,151],[0,0,0,0,14,140,0,75,0,0,0,0,10,0,128,25,0,0,0,0,8,140,1,63,0,0,7,169,8,128,0,156],[0,0,0,0,10,11,192,25,0,0,0,0,8,10,0,75,0,0,0,204,0,0,193,61,0,0,0,1,8,80,0,140],[0,0,22,221,0,0,193,61,0,0,0,12,8,16,3,96,0,0,0,0,8,8,4,59,0,0,0,1,10,0,0,138],[0,0,7,169,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,169,8,128,1,151,0,0,7,169,12,128,0,156,0,0,0,0,11,0,128,25,0,0,7,169,8,128,1,103],[0,0,7,169,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,20,0,0,193,61,0,0,7,172,8,112,0,156,0,0,4,10,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,175,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,20,0,0,1,61],[0,0,7,172,4,144,0,156,0,0,4,10,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,12,4,4,59],[0,0,0,0,0,203,4,53,0,0,4,250,0,0,97,61,0,0,0,9,14,0,0,41,0,0,0,248,4,224,2,16],[0,0,7,169,13,0,0,65,0,0,0,0,14,14,0,75,0,0,0,0,13,4,192,25,0,0,7,173,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,135,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,128,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,148,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,141,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,161,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,154,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,174,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,167,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,187,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,180,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,200,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,193,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,213,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,206,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,168,6,112,0,156,0,0,4,10,0,0,33,61,0,0,0,1,5,80,1,144],[0,0,4,10,0,0,193,61,0,0,0,64,0,112,4,63,0,0,0,11,12,0,0,41,0,0,0,0,6,194,0,73],[0,0,0,12,5,0,0,41,0,0,1,196,13,80,0,57,0,0,0,0,5,209,3,79,0,0,0,0,5,5,4,59],[0,0,0,31,9,96,0,138,0,0,7,169,6,144,1,151,0,0,7,169,8,80,1,151,0,0,7,169,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,169,6,96,0,156,0,0,0,0,11,10,192,25],[0,0,0,0,6,11,0,75,0,0,0,204,0,0,193,61,0,0,0,0,6,197,0,25,0,0,0,0,5,97,3,79],[0,0,0,0,5,5,4,59,0,0,7,168,8,80,0,156,0,0,0,204,0,0,33,61,0,0,0,0,8,82,0,73],[0,0,0,32,6,96,0,57,0,0,7,169,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,169,8,128,1,151,0,12,0,0,0,6,0,29,0,0,7,169,12,96,1,151],[0,0,0,0,14,140,0,75,0,0,0,0,10,0,128,25,0,0,0,0,8,140,1,63,0,0,7,169,8,128,0,156],[0,0,0,0,10,11,192,25,0,0,0,0,8,10,0,75,0,0,0,204,0,0,193,61,0,0,0,1,8,80,0,140],[0,0,24,1,0,0,193,61,0,0,0,12,8,16,3,96,0,0,0,0,8,8,4,59,0,0,0,1,10,0,0,138],[0,0,7,169,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,169,8,128,1,151,0,0,7,169,12,128,0,156,0,0,0,0,11,0,128,25,0,0,7,169,8,128,1,103],[0,0,7,169,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,56,0,0,193,61,0,0,7,172,8,112,0,156,0,0,4,10,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,175,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,56,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,87,0,0,65,61],[0,0,0,32,7,80,2,112,0,0,7,164,6,80,0,156,0,0,0,0,7,5,160,25,0,0,7,164,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,172,8,128,0,156],[0,0,4,10,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,8,4,59,0,0,0,0,0,135,4,53,0,0,4,250,0,0,97,61,0,0,7,173,8,128,1,151],[0,0,0,248,9,96,2,16,0,0,0,0,8,137,1,159,0,0,7,177,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,104,0,0,1,61,0,0,0,5,6,0,0,41],[0,0,7,172,6,96,0,156,0,0,4,10,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,7,4,59,0,0,0,0,0,118,4,53,0,0,4,250,0,0,97,61,0,0,0,248,5,80,2,16],[0,0,7,173,7,112,1,151,0,0,0,0,5,87,1,159,0,0,7,169,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,169,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,169,3,48,1,151],[0,0,7,169,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,169,3,48,0,156,0,0,0,0,5,6,192,25,0,0,0,0,3,5,0,75,0,0,0,11,3,0,0,41],[0,0,0,204,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,168,5,48,0,156,0,0,0,204,0,0,33,61,0,0,0,32,5,48,0,140,0,0,0,204,0,0,65,61],[0,0,0,0,5,49,0,73,0,0,0,32,4,64,0,57,0,0,7,169,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,169,5,80,1,151,0,0,7,169,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,169,5,80,0,156],[0,0,0,0,6,7,192,25,0,0,0,0,5,6,0,75,0,0,0,204,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,23,157,0,0,65,61,0,0,0,128,6,80,2,112,0,0,7,174,7,80,0,156,0,0,0,0,6,5,160,25],[0,0,7,174,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,168,9,96,0,156,0,0,0,0,8,7,160,25,0,0,0,64,7,96,2,112,0,0,7,168,9,96,0,156],[0,0,0,0,7,6,160,25,0,0,0,4,9,128,1,191,0,0,7,164,6,112,0,156,0,0,0,0,9,8,160,25],[0,0,0,32,8,112,2,112,0,0,7,164,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,168,9,112,0,156,0,0,4,10,0,0,33,61,0,0,0,1,8,128,1,144,0,0,4,10,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,201,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,193,0,0,65,61,0,0,0,0,8,0,0,75,0,0,22,203,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,4,250,0,0,97,61,0,0,0,0,8,7,4,51],[0,0,7,173,8,128,1,151,0,0,0,248,9,96,2,16,0,0,0,0,8,137,1,159,0,0,7,175,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,23,175,0,0,1,61,0,0,0,56,8,80,0,140,0,0,23,4,0,0,65,61,0,0,0,32,10,80,2,112],[0,0,7,164,8,80,0,156,0,0,0,0,10,5,160,25,0,0,7,164,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,12,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,172,11,112,0,156,0,0,4,10,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,11,4,59,0,0,0,0,0,186,4,53,0,0,4,250,0,0,97,61],[0,0,7,173,11,176,1,151,0,0,0,248,12,128,2,16,0,0,0,0,11,188,1,159,0,0,7,177,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,20,0,0,1,61],[0,0,7,172,8,112,0,156,0,0,4,10,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,10,4,59],[0,0,0,0,0,168,4,53,0,0,4,250,0,0,97,61,0,0,0,248,11,80,2,16,0,0,7,173,10,160,1,151],[0,0,0,0,10,186,1,159,0,0,7,169,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,172,10,112,0,156,0,0,4,10,0,0,33,61,0,0,0,64,10,112,0,57],[0,0,0,64,0,160,4,63,0,0,0,0,14,33,3,79,0,0,0,1,6,0,0,58,0,8,0,0,0,6,0,29],[0,0,0,0,10,103,4,54,0,0,0,0,6,14,4,59,0,9,0,0,0,6,0,29,0,0,0,0,0,106,4,53],[0,0,4,250,0,0,97,61,0,0,0,9,6,0,0,41,0,0,7,173,6,96,1,151,0,7,0,0,0,6,0,29],[0,0,7,178,15,96,1,199,0,0,0,0,0,250,4,53,0,0,0,32,10,208,0,57,0,0,0,0,10,161,3,79],[0,0,0,0,10,10,4,59,0,0,7,169,13,0,0,65,0,0,0,0,15,154,0,75,0,0,0,0,15,0,0,25],[0,0,0,0,15,13,128,25,0,0,7,169,9,144,1,151,0,0,7,169,12,160,1,151,0,0,0,0,11,156,0,75],[0,0,0,0,13,0,128,25,0,0,0,0,9,156,1,63,0,0,7,169,9,144,0,156,0,0,0,0,13,15,192,25],[0,0,0,0,9,13,0,75,0,0,0,11,6,0,0,41,0,0,0,204,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,11,0,0,0,6,0,29,0,0,7,168,10,96,0,156],[0,0,0,204,0,0,33,61,0,0,0,11,6,0,0,41,0,0,0,32,10,96,0,140,0,0,0,204,0,0,65,61],[0,0,0,11,2,32,0,106,0,0,0,32,13,144,0,57,0,0,7,169,9,0,0,65,0,0,0,0,10,45,0,75],[0,0,0,0,10,0,0,25,0,0,0,0,10,9,32,25,0,0,7,169,2,32,1,151,0,0,7,169,11,208,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,169,2,32,0,156],[0,0,0,0,9,10,192,25,0,0,0,0,2,9,0,75,0,0,0,204,0,0,193,61,0,0,0,0,9,209,3,79],[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,9,96,0,140],[0,0,25,3,0,0,65,61,0,0,0,6,6,0,0,41,0,0,0,128,9,96,2,112,0,0,7,174,10,96,0,156],[0,0,0,0,9,6,160,25,0,0,7,174,10,96,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,168,12,144,0,156,0,0,0,0,11,10,160,25,0,0,0,64,10,144,2,112],[0,0,7,168,12,144,0,156,0,0,0,0,10,9,160,25,0,0,0,4,9,176,1,191,0,0,7,164,12,160,0,156],[0,0,0,0,9,11,160,25,0,0,0,32,11,160,2,112,0,0,7,164,12,160,0,156,0,0,0,0,11,10,160,25],[0,0,0,2,6,144,1,191,0,0,255,255,10,176,0,140,0,0,0,0,6,9,160,25,0,0,0,16,9,176,2,112],[0,0,0,0,9,11,160,25,0,0,0,255,9,144,0,140,0,0,0,1,6,96,32,57,0,5,0,0,0,6,0,29],[0,0,0,65,9,96,0,57,0,0,0,0,9,57,1,111,0,0,0,0,9,146,0,25,0,0,0,0,10,41,0,75],[0,0,0,0,10,0,0,25,0,0,0,1,10,0,64,57,0,0,7,168,11,144,0,156,0,0,4,10,0,0,33,61],[0,0,0,1,10,160,1,144,0,0,4,10,0,0,193,61,0,0,0,64,0,144,4,63,0,0,0,5,6,0,0,41],[0,0,0,2,9,96,0,57,0,0,0,0,10,146,4,54,0,0,0,33,9,96,0,57,0,0,0,5,9,144,2,114],[0,0,23,138,0,0,97,61,0,0,0,0,15,0,0,25,0,0,0,5,11,240,2,16,0,0,0,0,12,186,0,25],[0,0,0,0,11,190,3,79,0,0,0,0,11,11,4,59,0,0,0,0,0,188,4,53,0,0,0,1,15,240,0,57],[0,0,0,0,11,159,0,75,0,0,23,130,0,0,65,61,0,0,0,0,6,0,0,75,0,0,23,140,0,0,97,61],[0,0,0,0,9,2,4,51,0,0,0,0,9,9,0,75,0,0,4,250,0,0,97,61,0,0,0,0,9,10,4,51],[0,0,7,173,9,144,1,151,0,0,0,5,6,0,0,41,0,0,0,248,11,96,2,16,0,0,0,0,9,155,1,159],[0,0,7,175,9,144,0,65,0,0,0,0,0,154,4,53,0,0,0,3,9,96,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,25,20,0,0,1,61,0,0,0,4,6,0,0,41,0,0,7,172,6,96,0,156,0,0,4,10,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,7,4,59,0,0,0,0,0,118,4,53],[0,0,4,250,0,0,97,61,0,0,0,248,8,80,2,16,0,0,7,169,9,0,0,65,0,0,0,0,5,5,0,75],[0,0,0,0,9,8,192,25,0,0,7,173,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,204,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,193,0,0,65,61,0,0,0,128,6,80,2,112,0,0,7,174,7,80,0,156,0,0,0,0,6,5,160,25],[0,0,7,174,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,168,9,96,0,156,0,0,0,0,8,7,160,25,0,0,0,64,7,96,2,112,0,0,7,168,9,96,0,156],[0,0,0,0,7,6,160,25,0,0,0,4,9,128,1,191,0,0,7,164,6,112,0,156,0,0,0,0,9,8,160,25],[0,0,0,32,8,112,2,112,0,0,7,164,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,168,9,112,0,156,0,0,4,10,0,0,33,61,0,0,0,1,8,128,1,144,0,0,4,10,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,237,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,229,0,0,65,61,0,0,0,0,1,0,0,75,0,0,23,239,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,4,250,0,0,97,61,0,0,0,0,1,7,4,51],[0,0,7,173,1,16,1,151,0,0,0,248,8,96,2,16,0,0,0,0,1,24,1,159,0,0,7,175,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,211,0,0,1,61,0,0,0,56,8,80,0,140,0,0,24,40,0,0,65,61,0,0,0,32,10,80,2,112],[0,0,7,164,8,80,0,156,0,0,0,0,10,5,160,25,0,0,7,164,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,12,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,172,11,112,0,156,0,0,4,10,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,11,4,59,0,0,0,0,0,186,4,53,0,0,4,250,0,0,97,61],[0,0,7,173,11,176,1,151,0,0,0,248,12,128,2,16,0,0,0,0,11,188,1,159,0,0,7,177,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,56,0,0,1,61],[0,0,7,172,8,112,0,156,0,0,4,10,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,10,4,59],[0,0,0,0,0,168,4,53,0,0,4,250,0,0,97,61,0,0,0,248,11,80,2,16,0,0,7,173,10,160,1,151],[0,0,0,0,10,186,1,159,0,0,7,169,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,172,10,112,0,156,0,0,4,10,0,0,33,61,0,0,0,64,10,112,0,57],[0,0,0,64,0,160,4,63,0,0,0,0,14,33,3,79,0,0,0,1,6,0,0,58,0,8,0,0,0,6,0,29],[0,0,0,0,10,103,4,54,0,0,0,0,6,14,4,59,0,9,0,0,0,6,0,29,0,0,0,0,0,106,4,53],[0,0,4,250,0,0,97,61,0,0,0,9,6,0,0,41,0,0,7,173,6,96,1,151,0,7,0,0,0,6,0,29],[0,0,7,178,12,96,1,199,0,0,0,0,0,202,4,53,0,0,0,32,10,208,0,57,0,0,0,0,10,161,3,79],[0,0,0,0,10,10,4,59,0,0,7,169,12,0,0,65,0,0,0,0,13,154,0,75,0,0,0,0,13,0,0,25],[0,0,0,0,13,12,128,25,0,0,7,169,9,144,1,151,0,0,7,169,15,160,1,151,0,0,0,0,11,159,0,75],[0,0,0,0,12,0,128,25,0,0,0,0,9,159,1,63,0,0,7,169,9,144,0,156,0,0,0,0,12,13,192,25],[0,0,0,0,9,12,0,75,0,0,0,11,6,0,0,41,0,0,0,204,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,11,0,0,0,6,0,29,0,0,7,168,10,96,0,156],[0,0,0,204,0,0,33,61,0,0,0,11,6,0,0,41,0,0,0,32,10,96,0,140,0,0,0,204,0,0,65,61],[0,0,0,11,2,32,0,106,0,0,0,32,6,144,0,57,0,0,7,169,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,169,2,32,1,151,0,5,0,0,0,6,0,29],[0,0,7,169,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,169,2,32,0,156,0,0,0,0,9,10,192,25,0,0,0,0,2,9,0,75,0,0,0,204,0,0,193,61],[0,0,0,5,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,9,96,0,140,0,0,0,32,13,32,0,57,0,0,25,105,0,0,65,61,0,0,0,6,6,0,0,41],[0,0,0,128,9,96,2,112,0,0,7,174,10,96,0,156,0,0,0,0,9,6,160,25,0,0,7,174,10,96,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,168,12,144,0,156],[0,0,0,0,11,10,160,25,0,0,0,64,10,144,2,112,0,0,7,168,12,144,0,156,0,0,0,0,10,9,160,25],[0,0,0,4,9,176,1,191,0,0,7,164,12,160,0,156,0,0,0,0,9,11,160,25,0,0,0,32,11,160,2,112],[0,0,7,164,12,160,0,156,0,0,0,0,11,10,160,25,0,0,0,2,15,144,1,191,0,0,255,255,10,176,0,140],[0,0,0,0,15,9,160,25,0,0,0,16,9,176,2,112,0,0,0,0,9,11,160,25,0,0,0,255,9,144,0,140],[0,0,0,1,15,240,32,57,0,0,0,65,9,240,0,57,0,0,0,0,9,57,1,111,0,0,0,0,9,146,0,25],[0,0,0,0,10,41,0,75,0,0,0,0,10,0,0,25,0,0,0,1,10,0,64,57,0,0,7,168,11,144,0,156],[0,0,4,10,0,0,33,61,0,0,0,1,10,160,1,144,0,0,4,10,0,0,193,61,0,0,0,64,0,144,4,63],[0,0,0,2,9,240,0,57,0,0,0,0,0,146,4,53,0,0,0,33,9,240,0,57,0,0,0,5,10,144,2,114],[0,0,24,174,0,0,97,61,0,0,0,0,9,0,0,25,0,0,0,5,11,144,2,16,0,0,0,0,12,189,0,25],[0,0,0,0,11,190,3,79,0,0,0,0,11,11,4,59,0,0,0,0,0,188,4,53,0,0,0,1,9,144,0,57],[0,0,0,0,11,169,0,75,0,0,24,166,0,0,65,61,0,0,0,0,6,0,0,75,0,0,24,176,0,0,97,61],[0,0,0,0,9,2,4,51,0,0,0,0,9,9,0,75,0,0,4,250,0,0,97,61,0,0,0,0,9,13,4,51],[0,0,7,173,9,144,1,151,0,0,0,248,10,240,2,16,0,0,0,0,9,154,1,159,0,0,7,175,9,144,0,65],[0,0,0,0,0,157,4,53,0,0,0,3,9,240,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,122,0,0,1,61,0,0,0,3,6,0,0,41,0,0,7,172,6,96,0,156,0,0,4,10,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,6,4,59,0,0,0,0,0,97,4,53],[0,0,4,250,0,0,97,61,0,0,0,248,7,80,2,16,0,0,7,169,8,0,0,65,0,0,0,0,5,5,0,75],[0,0,0,0,8,7,192,25,0,0,7,173,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,4,250,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,27,90,0,0,129,61,0,0,0,12,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,147,0,0,97,61],[0,0,7,170,1,0,0,65,0,0,0,0,0,16,4,57,0,0,7,164,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,7,164,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,7,171,1,16,1,199],[0,0,128,11,2,0,0,57,30,139,30,129,0,0,4,15,0,0,0,1,2,32,1,144,0,0,25,2,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,250,0,0,97,61],[0,0,0,9,3,0,0,138,0,0,0,0,3,49,0,75,0,0,24,254,0,0,33,61,0,0,0,0,50,33,0,217],[0,0,0,2,2,32,0,140,0,0,24,254,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,207,0,0,129,61,0,0,7,201,1,0,0,65,0,0,0,0,0,16,4,53],[0,0,0,17,1,0,0,57,0,0,4,253,0,0,1,61,0,0,0,0,0,1,4,47,0,0,7,172,9,32,0,156],[0,0,4,10,0,0,33,61,0,0,0,64,9,32,0,57,0,0,0,64,0,144,4,63,0,0,0,32,9,32,0,57],[0,0,0,9,6,0,0,41,0,0,0,0,0,105,4,53,0,0,0,8,6,0,0,41,0,0,0,0,0,98,4,53],[0,0,0,0,10,6,0,75,0,0,4,250,0,0,97,61,0,0,0,6,6,0,0,41,0,0,0,248,10,96,2,16],[0,0,7,169,11,0,0,65,0,0,0,0,12,6,0,75,0,0,0,0,11,10,192,25,0,0,0,7,10,176,1,175],[0,0,0,0,0,169,4,53,0,0,0,11,6,0,0,41,0,0,0,64,9,96,0,140,0,0,0,204,0,0,65,61],[0,0,0,64,9,0,4,61,0,4,0,32,0,208,0,61,0,0,0,4,10,16,3,96,0,0,0,0,6,10,4,59],[0,6,0,0,0,6,0,29,0,0,0,128,10,96,0,140,0,0,0,32,15,144,0,57,0,0,26,27,0,0,65,61],[0,0,0,6,6,0,0,41,0,0,0,128,10,96,2,112,0,0,7,174,11,96,0,156,0,0,0,0,10,6,160,25],[0,0,7,174,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,168,13,160,0,156,0,0,0,0,12,11,160,25,0,0,0,64,11,160,2,112,0,0,7,168,13,160,0,156],[0,0,0,0,11,10,160,25,0,0,0,4,10,192,1,191,0,0,7,164,13,176,0,156,0,0,0,0,10,12,160,25],[0,0,0,32,12,176,2,112,0,0,7,164,13,176,0,156,0,0,0,0,12,11,160,25,0,0,0,2,6,160,1,191],[0,0,255,255,11,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,5,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,11,154,0,75,0,0,0,0,13,0,0,25],[0,0,0,1,13,0,64,57,0,0,7,168,11,160,0,156,0,0,4,10,0,0,33,61,0,0,0,1,11,208,1,144],[0,0,4,10,0,0,193,61,0,0,0,64,0,160,4,63,0,0,0,5,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,25,85,0,0,97,61],[0,0,0,0,13,0,0,25,0,0,0,5,11,208,2,16,0,0,0,0,12,191,0,25,0,0,0,0,11,190,3,79],[0,0,0,0,11,11,4,59,0,0,0,0,0,188,4,53,0,0,0,1,13,208,0,57,0,0,0,0,11,173,0,75],[0,0,25,77,0,0,65,61,0,0,0,0,6,0,0,75,0,0,25,87,0,0,97,61,0,0,0,0,10,9,4,51],[0,0,0,0,10,10,0,75,0,0,4,250,0,0,97,61,0,0,0,0,10,15,4,51,0,0,7,173,10,160,1,151],[0,0,0,5,6,0,0,41,0,0,0,248,11,96,2,16,0,0,0,0,10,171,1,159,0,0,7,175,10,160,0,65],[0,0,0,0,0,175,4,53,0,0,0,3,10,96,2,16,0,0,0,248,10,160,0,137,0,0,0,6,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,44,0,0,1,61,0,0,7,172,9,32,0,156,0,0,4,10,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,109,4,53,0,0,0,8,6,0,0,41],[0,0,0,0,0,98,4,53,0,0,0,0,9,6,0,75,0,0,4,250,0,0,97,61,0,0,0,6,6,0,0,41],[0,0,0,248,9,96,2,16,0,0,7,169,10,0,0,65,0,0,0,0,11,6,0,75,0,0,0,0,10,9,192,25],[0,0,0,7,9,160,1,175,0,0,0,0,0,157,4,53,0,0,0,11,6,0,0,41,0,0,0,64,9,96,0,140],[0,0,0,204,0,0,65,61,0,0,0,64,9,0,4,61,0,0,0,5,6,0,0,41,0,4,0,32,0,96,0,61],[0,0,0,4,10,16,3,96,0,0,0,0,6,10,4,59,0,6,0,0,0,6,0,29,0,0,0,128,10,96,0,140],[0,0,0,32,13,144,0,57,0,0,26,87,0,0,65,61,0,0,0,6,6,0,0,41,0,0,0,128,10,96,2,112],[0,0,7,174,11,96,0,156,0,0,0,0,10,6,160,25,0,0,7,174,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,168,15,160,0,156,0,0,0,0,12,11,160,25],[0,0,0,64,11,160,2,112,0,0,7,168,15,160,0,156,0,0,0,0,11,10,160,25,0,0,0,4,15,192,1,191],[0,0,7,164,10,176,0,156,0,0,0,0,15,12,160,25,0,0,0,32,12,176,2,112,0,0,7,164,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,5,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,168,11,192,0,156],[0,0,4,10,0,0,33,61,0,0,0,1,11,240,1,144,0,0,4,10,0,0,193,61,0,0,0,64,0,192,4,63],[0,0,0,5,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,15,176,2,114,0,0,25,187,0,0,97,61,0,0,0,0,12,0,0,25,0,0,0,5,11,192,2,16],[0,0,0,0,10,189,0,25,0,0,0,0,11,190,3,79,0,0,0,0,11,11,4,59,0,0,0,0,0,186,4,53],[0,0,0,1,12,192,0,57,0,0,0,0,10,252,0,75,0,0,25,179,0,0,65,61,0,0,0,0,6,0,0,75],[0,0,25,189,0,0,97,61,0,0,0,0,10,9,4,51,0,0,0,0,10,10,0,75,0,0,4,250,0,0,97,61],[0,0,0,0,10,13,4,51,0,0,7,173,10,160,1,151,0,0,0,5,6,0,0,41,0,0,0,248,11,96,2,16],[0,0,0,0,10,171,1,159,0,0,7,175,10,160,0,65,0,0,0,0,0,173,4,53,0,0,0,3,10,96,2,16],[0,0,0,248,10,160,0,137,0,0,0,6,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,104,0,0,1,61,0,0,0,128,1,48,0,140],[0,2,0,0,0,3,0,29,0,0,26,147,0,0,65,61,0,0,0,128,1,48,2,112,0,0,7,174,2,48,0,156],[0,0,0,0,1,3,160,25,0,0,7,174,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,168,5,16,0,156,0,0,0,0,4,2,160,25,0,0,0,64,2,16,2,112],[0,0,7,168,5,16,0,156,0,0,0,0,2,1,160,25,0,0,0,4,1,64,1,191,0,0,7,164,5,32,0,156],[0,0,0,0,1,4,160,25,0,0,0,32,4,32,2,112,0,0,7,164,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,168,6,32,0,156,0,0,4,10,0,0,33,61],[0,0,0,1,4,64,1,144,0,0,4,10,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,17,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,26,8,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,26,0,0,0,65,61],[0,0,0,0,7,0,0,75,0,0,26,10,0,0,97,61,0,0,0,0,7,1,4,51,0,0,0,0,7,7,0,75],[0,0,4,250,0,0,97,61,0,0,0,0,7,6,4,51,0,0,7,173,7,112,1,151,0,0,0,248,8,80,2,16],[0,0,0,0,7,120,1,159,0,0,7,175,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,172,10,144,0,156],[0,0,4,10,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,111,4,53,0,0,0,8,6,0,0,41,0,0,0,0,0,105,4,53,0,0,0,0,10,6,0,75],[0,0,4,250,0,0,97,61,0,0,0,6,6,0,0,41,0,0,0,248,10,96,2,16,0,0,7,169,11,0,0,65],[0,0,0,0,12,6,0,75,0,0,0,0,11,10,192,25,0,0,0,7,10,176,1,175,0,0,0,0,0,175,4,53],[0,0,0,11,6,0,0,41,0,0,0,65,10,96,0,140,0,0,4,250,0,0,65,61,0,0,0,4,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,16,10,160,0,138],[0,0,0,5,10,160,2,16,0,0,0,0,11,11,4,59,0,0,0,248,13,176,2,112,0,0,0,27,11,208,0,140],[0,0,0,0,14,0,0,25,0,0,27,16,0,0,97,61,0,0,0,28,10,208,0,140,0,0,27,90,0,0,193,61],[0,0,0,0,10,0,4,21,0,0,0,15,10,160,0,138,0,0,0,5,10,160,2,16,0,0,0,27,14,208,0,138],[0,0,0,128,11,224,0,140,0,0,27,16,0,0,65,61,0,0,0,64,13,0,4,61,0,0,7,172,10,208,0,156],[0,0,4,10,0,0,33,61,0,0,0,64,10,208,0,57,0,0,0,64,0,160,4,63,0,0,0,32,10,208,0,57],[0,0,0,9,6,0,0,41,0,0,0,0,0,106,4,53,0,0,0,2,11,0,0,58,0,0,0,0,0,189,4,53],[0,0,4,250,0,0,97,61,0,0,0,7,6,0,0,41,0,0,7,175,11,96,1,199,0,0,0,0,0,186,4,53],[0,0,0,248,10,224,2,16,0,0,0,33,11,208,0,57,0,0,0,0,0,171,4,53,0,0,0,0,10,0,4,21],[0,0,0,15,10,160,0,138,0,0,0,5,10,160,2,16,0,0,27,34,0,0,1,61,0,0,7,172,10,144,0,156],[0,0,4,10,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,109,4,53,0,0,0,8,6,0,0,41,0,0,0,0,0,105,4,53,0,0,0,0,10,6,0,75],[0,0,4,250,0,0,97,61,0,0,0,6,6,0,0,41,0,0,0,248,10,96,2,16,0,0,7,169,11,0,0,65],[0,0,0,0,12,6,0,75,0,0,0,0,11,10,192,25,0,0,0,7,10,176,1,175,0,0,0,0,0,173,4,53],[0,0,0,11,6,0,0,41,0,0,0,65,10,96,0,140,0,0,4,250,0,0,65,61,0,0,0,4,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,14,10,160,0,138],[0,0,0,5,10,160,2,16,0,0,0,0,11,11,4,59,0,0,0,248,13,176,2,112,0,0,0,27,11,208,0,140],[0,0,0,0,14,0,0,25,0,0,27,97,0,0,97,61,0,0,0,28,10,208,0,140,0,0,27,90,0,0,193,61],[0,0,0,0,10,0,4,21,0,0,0,13,10,160,0,138,0,0,0,5,10,160,2,16,0,0,0,27,14,208,0,138],[0,0,0,128,11,224,0,140,0,0,27,97,0,0,65,61,0,0,0,64,13,0,4,61,0,0,7,172,10,208,0,156],[0,0,4,10,0,0,33,61,0,0,0,64,10,208,0,57,0,0,0,64,0,160,4,63,0,0,0,32,10,208,0,57],[0,0,0,9,6,0,0,41,0,0,0,0,0,106,4,53,0,0,0,2,11,0,0,58,0,0,0,0,0,189,4,53],[0,0,4,250,0,0,97,61,0,0,0,7,6,0,0,41,0,0,7,175,11,96,1,199,0,0,0,0,0,186,4,53],[0,0,0,248,10,224,2,16,0,0,0,33,11,208,0,57,0,0,0,0,0,171,4,53,0,0,0,0,10,0,4,21],[0,0,0,13,10,160,0,138,0,0,0,5,10,160,2,16,0,0,27,115,0,0,1,61,0,0,0,64,1,0,4,61],[0,0,7,172,2,16,0,156,0,0,4,10,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,17,2,0,3,103],[0,0,0,0,5,66,3,79,0,0,0,0,5,5,4,59,0,0,0,0,0,83,4,53,0,0,4,250,0,0,97,61],[0,0,0,2,8,0,0,41,0,0,0,248,6,128,2,16,0,0,7,169,7,0,0,65,0,0,0,0,8,8,0,75],[0,0,0,0,7,6,192,25,0,0,7,173,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,12,5,64,0,106],[0,0,0,35,5,80,0,138,0,0,0,0,3,3,4,59,0,0,7,169,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,169,5,80,1,151,0,0,7,169,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,169,5,80,0,156],[0,0,0,0,6,7,192,25,0,0,0,0,5,6,0,75,0,0,0,11,6,0,0,41,0,0,0,204,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,168,11,48,0,156,0,0,0,204,0,0,33,61,0,0,0,0,11,52,0,73],[0,0,0,32,6,96,0,57,0,0,7,169,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,169,11,176,1,151,0,0,7,169,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,169,11,176,0,156,0,0,0,0,12,13,192,25],[0,0,0,0,11,12,0,75,0,0,0,204,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,168,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,27,171,0,0,65,61,0,0,0,32,11,80,2,112,0,0,7,164,10,80,0,156],[0,0,0,0,11,5,160,25,0,0,7,164,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,172,12,112,0,156,0,0,4,10,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,8,4,59,0,0,0,0,0,132,4,53],[0,0,4,250,0,0,97,61,0,0,7,173,8,128,1,151,0,0,0,248,9,160,2,16,0,0,0,0,8,137,1,159],[0,0,7,179,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,27,184,0,0,1,61],[0,0,0,64,13,0,4,61,0,0,7,172,11,208,0,156,0,0,4,10,0,0,33,61,0,0,0,64,11,208,0,57],[0,0,0,64,0,176,4,63,0,0,0,32,15,208,0,57,0,0,0,9,6,0,0,41,0,0,0,0,0,111,4,53],[0,0,0,8,6,0,0,41,0,0,0,0,0,109,4,53,0,0,0,0,11,6,0,75,0,0,4,250,0,0,97,61],[0,0,0,248,11,224,2,16,0,0,7,169,12,0,0,65,0,0,0,0,14,14,0,75,0,0,0,0,12,11,192,25],[0,0,0,7,11,192,1,175,0,0,0,0,0,191,4,53,0,0,0,5,10,160,2,112,0,0,0,0,10,13,0,31],[0,0,0,0,10,4,4,51,0,0,0,0,10,90,0,25,0,0,0,0,11,8,4,51,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,13,4,51,0,0,0,0,10,186,0,25],[0,0,0,64,14,0,4,61,0,0,7,168,10,160,1,151,0,0,0,56,11,160,0,140,0,6,0,64,0,224,0,61],[0,11,0,32,0,224,0,61,0,0,28,119,0,0,65,61,0,0,0,32,11,160,2,112,0,0,7,164,12,160,0,156],[0,0,0,0,11,10,160,25,0,0,7,164,12,160,0,156,0,0,0,0,6,0,0,25,0,0,0,4,6,0,32,57],[0,0,0,2,12,96,1,191,0,0,255,255,15,176,0,140,0,0,0,0,12,6,160,25,0,0,0,16,15,176,2,112],[0,0,0,0,15,11,160,25,0,0,0,255,11,240,0,140,0,0,0,0,6,0,0,25,0,0,0,1,6,0,32,57],[0,0,7,172,11,224,0,156,0,0,4,10,0,0,33,61,0,0,0,0,12,108,1,159,0,0,0,6,6,0,0,41],[0,0,0,64,0,96,4,63,0,0,0,9,6,0,0,41,0,0,0,11,11,0,0,41,0,0,0,0,0,107,4,53],[0,0,0,2,11,192,0,58,0,0,0,0,0,190,4,53,0,0,4,250,0,0,97,61,0,0,0,248,11,192,2,16],[0,0,0,7,11,176,1,175,0,0,7,179,11,176,1,199,0,0,0,11,6,0,0,41,0,0,0,0,0,182,4,53],[0,0,0,3,11,192,2,16,0,0,0,248,11,176,1,95,0,0,0,0,10,186,1,207,0,0,0,33,11,224,0,57],[0,0,0,0,0,171,4,53,0,0,28,135,0,0,1,61,0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57],[0,0,7,200,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,159,0,0,1,61,0,0,0,64,13,0,4,61,0,0,7,172,11,208,0,156,0,0,4,10,0,0,33,61],[0,0,0,64,11,208,0,57,0,0,0,64,0,176,4,63,0,0,0,32,15,208,0,57,0,0,0,9,6,0,0,41],[0,0,0,0,0,111,4,53,0,0,0,8,6,0,0,41,0,0,0,0,0,109,4,53,0,0,0,0,11,6,0,75],[0,0,4,250,0,0,97,61,0,0,0,248,11,224,2,16,0,0,7,169,12,0,0,65,0,0,0,0,14,14,0,75],[0,0,0,0,12,11,192,25,0,0,0,7,11,192,1,175,0,0,0,0,0,191,4,53,0,0,0,5,10,160,2,112],[0,0,0,0,10,13,0,31,0,0,0,0,10,4,4,51,0,0,0,0,10,90,0,25,0,0,0,0,11,8,4,51],[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,13,4,51],[0,0,0,0,10,186,0,25,0,0,0,64,14,0,4,61,0,0,7,168,10,160,1,151,0,0,0,56,11,160,0,140],[0,6,0,64,0,224,0,61,0,11,0,32,0,224,0,61,0,0,29,44,0,0,65,61,0,0,0,32,11,160,2,112],[0,0,7,164,12,160,0,156,0,0,0,0,11,10,160,25,0,0,7,164,12,160,0,156,0,0,0,0,6,0,0,25],[0,0,0,4,6,0,32,57,0,0,0,2,12,96,1,191,0,0,255,255,15,176,0,140,0,0,0,0,12,6,160,25],[0,0,0,16,15,176,2,112,0,0,0,0,15,11,160,25,0,0,0,255,11,240,0,140,0,0,0,0,6,0,0,25],[0,0,0,1,6,0,32,57,0,0,7,172,11,224,0,156,0,0,4,10,0,0,33,61,0,0,0,0,12,108,1,159],[0,0,0,6,6,0,0,41,0,0,0,64,0,96,4,63,0,0,0,9,6,0,0,41,0,0,0,11,11,0,0,41],[0,0,0,0,0,107,4,53,0,0,0,2,11,192,0,58,0,0,0,0,0,190,4,53,0,0,4,250,0,0,97,61],[0,0,0,248,11,192,2,16,0,0,0,7,11,176,1,175,0,0,7,179,11,176,1,199,0,0,0,11,6,0,0,41],[0,0,0,0,0,182,4,53,0,0,0,3,11,192,2,16,0,0,0,248,11,176,1,95,0,0,0,0,10,186,1,207],[0,0,0,33,11,224,0,57,0,0,0,0,0,171,4,53,0,0,29,60,0,0,1,61,0,0,7,172,10,112,0,156],[0,0,4,10,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,8,4,59,0,0,0,0,0,132,4,53,0,0,4,250,0,0,97,61,0,0,7,173,8,128,1,151],[0,0,0,248,5,80,2,16,0,0,0,0,5,133,1,159,0,0,7,178,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,27,197,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,27,190,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,27,211,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,27,204,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,27,225,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,27,218,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,27,239,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,27,232,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,27,253,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,27,246,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,11,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,4,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,26,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,18,0,0,65,61,0,0,0,0,9,7,0,75,0,0,28,41,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,54,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,47,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,68,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,61,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,82,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,75,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,168,3,16,0,156,0,0,4,10,0,0,33,61,0,0,0,1,2,32,1,144],[0,0,4,10,0,0,193,61,0,0,0,64,0,16,4,63,0,0,7,164,1,0,0,65,0,0,7,164,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,164,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,164,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,181,1,16,1,199,0,0,128,16,2,0,0,57,30,139,30,129,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,0,204,0,0,97,61,0,0,0,0,1,1,4,59,0,0,14,74,0,0,1,61,0,0,7,172,11,224,0,156],[0,0,4,10,0,0,33,61,0,0,0,6,6,0,0,41,0,0,0,64,0,96,4,63,0,0,0,9,6,0,0,41],[0,0,0,11,11,0,0,41,0,0,0,0,0,107,4,53,0,0,0,8,6,0,0,41,0,0,0,0,0,110,4,53],[0,0,0,0,11,6,0,75,0,0,4,250,0,0,97,61,0,0,0,248,10,160,2,16,0,0,0,7,10,160,1,175],[0,0,7,178,10,160,0,65,0,0,0,11,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,180,11,0,0,65,0,9,0,0,0,10,0,29,0,0,0,0,0,186,4,53],[0,11,0,0,0,6,0,29,0,0,0,33,12,96,0,57,0,0,0,0,15,14,4,51,0,0,0,0,11,15,0,75],[0,0,28,153,0,0,97,61,0,0,0,0,11,0,0,25,0,0,0,0,10,203,0,25,0,0,0,32,11,176,0,57],[0,0,0,0,6,235,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,28,146,0,0,65,61,0,0,0,0,12,207,0,25,0,0,0,0,0,12,4,53,0,0,0,0,14,4,4,51],[0,0,0,0,6,14,0,75,0,0,28,166,0,0,97,61,0,0,0,0,11,0,0,25,0,0,0,0,6,203,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,28,159,0,0,65,61,0,0,0,0,12,206,0,25,0,0,0,0,0,12,4,53],[0,0,0,0,14,8,4,51,0,0,0,0,4,14,0,75,0,0,28,179,0,0,97,61,0,0,0,0,4,0,0,25],[0,0,0,0,6,196,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,28,172,0,0,65,61,0,0,0,12,4,16,3,96],[0,0,0,0,1,206,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,28,194,0,0,97,61,0,0,0,0,12,0,0,25,0,0,0,5,10,192,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,12,192,0,57],[0,0,0,0,10,140,0,75,0,0,28,186,0,0,65,61,0,0,0,0,10,6,0,75,0,0,28,209,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,28,222,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,28,215,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,13,4,51,0,0,0,0,5,4,0,75,0,0,28,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,7,213,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,28,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,2,4,51,0,0,0,0,5,4,0,75,0,0,28,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,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,28,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,2,9,4,51,0,0,0,0,4,2,0,75],[0,0,29,5,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,254,0,0,65,61,0,0,0,0,1,18,0,25,0,0,0,0,0,1,4,53,0,0,0,11,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,168,3,16,0,156,0,0,4,10,0,0,33,61,0,0,0,1,2,32,1,144],[0,0,4,10,0,0,193,61,0,0,0,64,0,16,4,63,0,0,7,164,1,0,0,65,0,0,0,9,3,0,0,41],[0,0,7,164,2,48,0,156,0,0,0,0,3,1,128,25,0,0,0,64,2,48,2,16,0,0,0,11,3,0,0,41],[0,0,0,0,3,3,4,51,0,0,7,164,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,164,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,181,1,16,1,199,0,0,128,16,2,0,0,57],[30,139,30,129,0,0,4,15,0,0,0,1,2,32,1,144,0,0,0,204,0,0,97,61,0,0,29,224,0,0,1,61],[0,0,7,172,11,224,0,156,0,0,4,10,0,0,33,61,0,0,0,6,6,0,0,41,0,0,0,64,0,96,4,63],[0,0,0,9,6,0,0,41,0,0,0,11,11,0,0,41,0,0,0,0,0,107,4,53,0,0,0,8,6,0,0,41],[0,0,0,0,0,110,4,53,0,0,0,0,11,6,0,75,0,0,4,250,0,0,97,61,0,0,0,248,10,160,2,16],[0,0,0,7,10,160,1,175,0,0,7,178,10,160,0,65,0,0,0,11,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,181,11,0,0,65,0,9,0,0,0,10,0,29],[0,0,0,0,0,186,4,53,0,11,0,0,0,6,0,29,0,0,0,33,12,96,0,57,0,0,0,0,15,14,4,51],[0,0,0,0,11,15,0,75,0,0,29,78,0,0,97,61,0,0,0,0,11,0,0,25,0,0,0,0,10,203,0,25],[0,0,0,32,11,176,0,57,0,0,0,0,6,235,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,71,0,0,65,61,0,0,0,0,12,207,0,25,0,0,0,0,0,12,4,53],[0,0,0,0,14,4,4,51,0,0,0,0,6,14,0,75,0,0,29,91,0,0,97,61,0,0,0,0,11,0,0,25],[0,0,0,0,6,203,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,84,0,0,65,61,0,0,0,0,12,206,0,25],[0,0,0,0,0,12,4,53,0,0,0,0,14,8,4,51,0,0,0,0,4,14,0,75,0,0,29,104,0,0,97,61],[0,0,0,0,4,0,0,25,0,0,0,0,6,196,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,97,0,0,65,61],[0,0,0,12,4,16,3,96,0,0,0,0,1,206,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,119,0,0,97,61,0,0,0,0,12,0,0,25,0,0,0,5,10,192,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,12,192,0,57,0,0,0,0,10,140,0,75,0,0,29,111,0,0,65,61,0,0,0,0,10,6,0,75],[0,0,29,134,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,147,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,140,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,13,4,51,0,0,0,0,5,4,0,75,0,0,29,160,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,213,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,153,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,173,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,166,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,186,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,179,0,0,65,61,0,0,0,0,1,18,0,25,0,0,0,0,0,1,4,53],[0,0,0,11,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,168,3,16,0,156,0,0,4,10,0,0,33,61],[0,0,0,1,2,32,1,144,0,0,4,10,0,0,193,61,0,0,0,64,0,16,4,63,0,0,7,164,1,0,0,65],[0,0,0,9,3,0,0,41,0,0,7,164,2,48,0,156,0,0,0,0,3,1,128,25,0,0,0,64,2,48,2,16],[0,0,0,11,3,0,0,41,0,0,0,0,3,3,4,51,0,0,7,164,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,164,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,181,1,16,1,199],[0,0,128,16,2,0,0,57,30,139,30,129,0,0,4,15,0,0,0,1,2,32,1,144,0,0,0,204,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,14,74,0,0,1,61,0,0,7,164,4,16,1,151,0,0,0,0,3,0,4,20,0,0,0,17,5,0,3,103],[0,1,0,0,0,69,3,85,0,0,0,0,1,18,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,1,2,32,1,144,0,0,30,66,0,0,193,61,0,0,0,0,6,0,0,49],[0,0,0,0,2,22,0,75,0,0,30,66,0,0,65,61,0,0,0,0,2,69,3,79,0,0,0,0,1,22,0,73],[0,0,7,164,1,16,1,151,0,1,0,0,0,18,3,229,0,0,7,182,4,48,0,156,0,0,30,70,0,0,129,61],[0,0,0,0,1,18,3,223,0,0,0,192,2,48,2,16,0,0,7,183,2,32,1,151,0,0,7,184,2,32,1,199],[0,1,0,0,0,33,3,181,0,0,0,0,1,33,3,175,0,0,128,16,2,0,0,57,30,139,30,134,0,0,4,15],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,7,164,3,48,1,151,0,0,0,1,2,32,1,144],[0,0,30,77,0,0,97,61,0,0,0,63,2,48,0,57,0,0,7,185,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,168,6,64,0,156,0,0,30,104,0,0,33,61,0,0,0,1,5,80,1,144,0,0,30,104,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,30,32,0,0,97,61,0,0,0,0,6,0,0,49,0,0,0,17,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,30,24,0,0,65,61],[0,0,0,0,5,0,0,75,0,0,30,34,0,0,97,61,0,0,0,31,5,48,1,143,0,0,0,5,3,48,2,114],[0,0,30,46,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,38,0,0,65,61,0,0,0,0,6,5,0,75,0,0,30,61,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,110,0,0,193,61],[0,0,0,0,1,4,4,51,0,0,0,0,0,1,4,45,0,0,7,201,1,0,0,65,0,0,0,0,0,16,4,53],[0,0,0,17,1,0,0,57,0,0,30,107,0,0,1,61,0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57],[0,0,7,198,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,116,0,0,1,61,0,0,0,31,4,48,1,143,0,0,0,5,2,48,2,114,0,0,30,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,30,81,0,0,65,61],[0,0,0,0,5,4,0,75,0,0,30,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,30,141,0,1,4,48],[0,0,7,201,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,202,1,0,0,65,0,0,30,141,0,1,4,48,0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57],[0,0,7,187,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,188,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,164,2,0,0,65,0,0,7,164,3,16,0,156],[0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16,0,0,7,189,1,16,1,199,0,0,30,141,0,1,4,48],[0,0,0,0,0,1,4,47,0,0,30,132,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,137,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,139,0,0,4,50],[0,0,30,140,0,1,4,46,0,0,30,141,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,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],[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],[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],[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],[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],[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],[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],[174,196,155,218,68,154,152,84,42,179,140,69,242,32,6,193,149,34,94,126,187,249,182,101,208,88,111,31,201,177,65,6]],"0x000000000000000000000000000000000000800d":[[0,0,0,0,8,1,0,25,0,0,0,96,8,128,2,112,0,0,0,17,8,128,1,151,0,0,0,1,9,32,1,144],[0,0,0,56,0,0,193,61,0,0,0,2,2,32,1,144,0,0,0,54,0,0,97,61,0,0,0,5,2,48,0,140],[0,0,0,54,0,0,129,61,0,0,0,32,2,128,2,16,0,0,0,0,2,35,0,25,0,0,0,1,2,32,0,57],[0,0,0,0,9,0,4,17,0,0,0,0,0,146,4,31,0,0,0,1,2,48,0,140,0,0,0,26,0,0,161,61],[0,0,0,2,2,48,0,140,0,0,0,34,0,0,97,61,0,0,0,3,2,48,0,140,0,0,0,37,0,0,97,61],[0,0,0,4,2,48,0,140,0,0,0,54,0,0,193,61,0,0,0,0,0,84,4,30,0,0,0,0,0,118,4,30],[0,0,0,0,3,0,0,25,0,0,0,41,0,0,1,61,0,0,0,0,2,3,0,75,0,0,0,41,0,0,97,61],[0,0,0,1,2,48,0,140,0,0,0,54,0,0,193,61,0,0,0,0,2,1,4,59,0,0,0,0,0,36,4,30],[0,0,0,32,3,0,0,57,0,0,0,41,0,0,1,61,0,0,0,0,0,84,4,30,0,0,0,0,3,0,0,25],[0,0,0,41,0,0,1,61,0,0,0,0,0,84,4,30,0,0,0,0,2,1,4,59,0,0,0,0,0,38,4,30],[0,0,0,32,3,0,0,57,0,0,0,0,2,131,0,75,0,0,0,52,0,0,129,61,0,0,0,32,2,48,0,57],[0,0,0,0,2,33,3,79,0,0,0,0,4,49,3,79,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,131,0,75,0,0,0,43,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,63,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,18,1,0,0,65],[0,0,0,62,0,1,4,46,0,0,0,61,0,0,4,50,0,0,0,62,0,1,4,46,0,0,0,63,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,0,0,0,0],[221,20,130,158,8,71,137,243,160,83,8,122,158,110,111,137,21,66,92,151,31,136,99,209,24,178,150,169,144,41,162,168]],"0x000000000000000000000000000000000000800e":[[0,18,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,4,48,2,112],[0,0,1,56,3,64,1,151,0,1,0,0,0,49,3,85,0,2,0,0,0,49,3,85,0,3,0,0,0,49,3,85],[0,4,0,0,0,49,3,85,0,5,0,0,0,49,3,85,0,6,0,0,0,49,3,85,0,7,0,0,0,49,3,85],[0,8,0,0,0,49,3,85,0,9,0,0,0,49,3,85,0,10,0,0,0,49,3,85,0,11,0,0,0,49,3,85],[0,12,0,0,0,49,3,85,0,13,0,0,0,49,3,85,0,14,0,0,0,49,3,85,0,15,0,0,0,49,3,85],[0,16,0,0,0,49,3,85,0,17,0,0,0,1,3,85,0,2,0,0,0,4,0,29,0,0,1,56,0,64,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,1,244,0,0,193,61],[0,0,0,4,2,48,0,140,0,0,2,80,0,0,65,61,0,0,0,0,2,1,4,59,0,0,0,224,2,32,2,112],[0,0,1,58,4,32,0,156,0,0,1,155,0,0,193,61,0,0,0,4,2,48,0,138,0,0,0,128,2,32,0,140],[0,0,2,80,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,60,2,64,0,156,0,0,2,80,0,0,33,61,0,0,0,7,2,0,0,41,0,0,0,35,2,32,0,57],[0,0,1,61,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,61,2,32,1,151,0,0,0,0,6,2,0,75,0,0,0,0,4,0,128,25,0,0,1,61,2,32,0,156],[0,0,0,0,4,5,192,25,0,0,0,0,2,4,0,75,0,0,2,80,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,60,2,96,0,156],[0,0,2,80,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,80,0,0,65,61,0,0,0,100,2,16,3,112,0,0,0,0,2,2,4,59],[0,10,0,0,0,2,0,29,0,0,1,60,2,32,0,156,0,0,2,80,0,0,33,61,0,0,0,10,2,0,0,41],[0,0,0,35,2,32,0,57,0,0,1,61,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,61,2,32,1,151,0,0,0,0,9,2,0,75,0,0,0,0,4,0,128,25],[0,0,1,61,2,32,0,156,0,0,0,0,4,7,192,25,0,0,0,0,2,4,0,75,0,0,2,80,0,0,193,61],[0,0,0,10,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,12,0,0,0,2,0,29,0,0,1,60,2,32,0,156,0,0,2,80,0,0,33,61,0,0,0,10,2,0,0,41],[0,0,0,36,4,32,0,57,0,11,0,0,0,4,0,29,0,0,0,12,2,64,0,41,0,0,0,0,2,50,0,75],[0,0,2,80,0,0,33,61,0,0,0,0,2,0,4,17,0,0,128,8,2,32,0,140,0,0,1,252,0,0,193,61],[0,0,0,9,2,224,0,140,0,0,2,4,0,0,129,61,0,0,0,2,11,0,0,57,0,0,1,16,41,128,0,201],[0,0,1,17,10,0,0,138,0,9,0,0,0,0,0,29,0,0,0,0,3,0,0,25,0,6,0,0,0,14,0,29],[0,0,0,0,2,8,0,75,0,0,0,117,0,0,97,61,0,0,0,0,66,137,0,217,0,0,1,16,2,32,0,140],[0,0,2,246,0,0,193,61,0,0,0,0,2,147,0,75,0,0,0,227,0,0,129,61,0,0,0,0,2,163,0,75],[0,0,2,246,0,0,33,61,0,0,1,16,4,48,0,57,0,0,0,0,2,100,0,75,0,0,2,80,0,0,33,61],[0,0,0,0,2,83,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,60,3,48,1,152,0,0,0,0,3,4,0,25,0,0,0,112,0,0,193,61,0,0,0,1,13,0,0,138],[0,0,0,9,3,208,0,107,0,0,2,246,0,0,97,61,0,0,0,11,3,176,0,41,0,0,0,0,3,49,3,79],[0,0,0,8,7,32,0,138,0,0,0,0,2,113,3,79,0,0,0,0,3,3,4,59,0,0,0,0,2,2,4,59],[0,0,0,0,2,50,0,75,0,0,2,44,0,0,193,61,0,0,0,33,2,0,0,138,0,0,0,0,2,43,0,75],[0,0,2,246,0,0,33,61,0,0,0,32,2,176,0,57,0,0,0,12,3,32,0,108,0,0,1,113,0,0,129,61],[0,0,0,11,2,32,0,41,0,0,0,0,2,33,3,79,0,0,0,0,15,2,4,59,0,0,1,99,2,240,1,152],[0,0,0,251,3,240,2,112,0,0,0,32,3,0,96,57,0,0,0,33,2,176,0,57,0,0,0,0,11,35,0,25],[0,0,0,0,12,59,0,75,0,0,0,0,12,0,0,25,0,0,0,1,12,0,64,57,0,0,0,1,12,192,1,144],[0,0,2,246,0,0,193,61,0,0,0,12,12,176,0,108,0,0,2,80,0,0,33,61,0,0,0,11,2,32,0,41],[0,0,0,72,12,112,0,57,0,0,0,0,12,193,3,79,0,0,0,40,7,112,0,57,0,0,0,0,14,113,3,79],[0,0,0,0,2,33,3,79,0,0,0,0,7,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,2,12,4,59,0,8,0,0,0,2,0,29,0,0,0,31,2,48,0,140],[0,0,0,3,2,48,2,16,0,0,0,188,0,0,33,61,0,0,1,0,12,32,0,137,0,0,0,0,12,205,1,207],[0,0,0,0,13,32,0,73,0,0,1,0,14,0,0,138,0,0,0,0,13,237,0,75,0,0,0,6,14,0,0,41],[0,0,0,0,12,0,64,25,0,0,0,0,7,199,1,111,0,0,0,0,12,3,0,75,0,0,0,225,0,0,97,61],[0,0,1,0,12,32,0,140,0,0,2,246,0,0,33,61,0,0,0,0,195,50,0,217,0,0,0,8,3,48,0,140],[0,0,2,246,0,0,193,61,0,0,1,0,3,32,0,137,0,0,0,0,3,55,2,47,0,0,0,0,2,2,0,75],[0,0,0,0,3,0,96,25,0,0,0,9,2,0,0,41,0,9,0,1,0,32,0,61,0,0,0,248,2,240,2,112],[0,0,0,7,2,32,1,143,0,0,0,1,7,32,0,140,0,0,0,212,0,0,33,61,0,0,0,0,7,2,0,75],[0,0,0,216,0,0,97,61,0,0,0,1,2,32,0,140,0,0,1,127,0,0,193,61,0,0,0,5,2,48,0,41],[0,0,0,8,2,32,0,108,0,0,0,0,3,4,0,25,0,0,0,112,0,0,97,61,0,0,1,145,0,0,1,61],[0,0,0,2,7,32,0,140,0,0,0,220,0,0,97,61,0,0,0,3,2,32,0,140,0,0,1,127,0,0,193,61],[0,0,0,8,2,48,0,108,0,0,0,0,3,4,0,25,0,0,0,112,0,0,97,61,0,0,1,117,0,0,1,61],[0,0,0,5,2,48,0,105,0,0,0,8,2,32,0,108,0,0,0,0,3,4,0,25,0,0,0,112,0,0,97,61],[0,0,1,135,0,0,1,61,0,0,0,0,3,0,0,25,0,0,0,197,0,0,1,61,0,0,0,10,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,9,2,32,0,107,0,0,2,14,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,10,0,0,0,3,0,29,0,0,1,0,2,48,0,140,0,0,2,24,0,0,33,61],[0,0,0,0,7,0,0,25,0,0,0,253,0,0,1,61,0,0,0,0,2,55,0,75,0,0,0,0,7,4,0,25],[0,0,1,117,0,0,193,61,0,0,0,0,2,8,0,75,0,0,1,2,0,0,97,61,0,0,0,0,50,137,0,217],[0,0,1,16,2,32,0,140,0,0,2,246,0,0,193,61,0,0,0,0,2,151,0,75,0,0,2,82,0,0,129,61],[0,0,0,0,2,167,0,75,0,0,2,246,0,0,33,61,0,0,1,16,4,112,0,57,0,0,0,0,2,100,0,75],[0,0,2,80,0,0,33,61,0,0,0,0,2,87,0,25,0,0,0,60,3,32,0,57,0,0,0,0,2,49,3,79],[0,0,0,0,2,2,4,59,0,0,1,60,15,32,1,152,0,0,0,0,7,4,0,25,0,0,0,253,0,0,97,61],[0,0,0,0,13,235,0,25,0,0,0,0,2,189,0,75,0,0,0,0,2,0,0,25,0,0,0,1,2,0,64,57],[0,0,0,1,2,32,1,144,0,0,2,246,0,0,193,61,0,0,0,12,2,208,0,108,0,0,2,80,0,0,33,61],[0,0,0,11,2,176,0,41,0,0,0,0,2,33,3,79,0,0,0,0,2,2,4,59,0,0,0,31,7,224,0,140],[0,0,1,32,0,0,33,61,0,0,0,5,2,32,1,127,0,0,0,0,7,14,0,75,0,0,2,238,0,0,97,61],[0,0,0,10,183,224,0,249,0,0,0,8,7,112,0,140,0,0,2,246,0,0,193,61,0,0,0,10,7,0,0,107],[0,0,2,238,0,0,97,61,0,0,0,8,2,32,2,80,0,0,0,0,2,47,0,75,0,0,2,238,0,0,193,61],[0,0,0,12,2,208,0,108,0,0,1,113,0,0,129,61,0,0,0,11,2,208,0,41,0,0,0,0,2,33,3,79],[0,0,0,0,15,2,4,59,0,0,1,99,2,240,1,152,0,0,0,251,7,240,2,112,0,0,0,32,7,0,96,57],[0,0,0,1,2,208,0,57,0,0,0,0,11,39,0,25,0,0,0,0,12,219,0,75,0,0,2,246,0,0,161,61],[0,0,0,12,12,176,0,108,0,0,2,80,0,0,33,61,0,0,0,11,2,32,0,41,0,0,0,64,12,48,0,57],[0,0,0,0,12,193,3,79,0,0,0,32,3,48,0,57,0,0,0,0,3,49,3,79,0,0,0,0,2,33,3,79],[0,0,0,0,2,2,4,59,0,0,0,0,3,3,4,59,0,9,0,0,0,3,0,29,0,0,0,0,3,12,4,59],[0,0,0,31,12,112,0,140,0,0,0,3,12,112,2,16,0,0,1,80,0,0,33,61,0,0,1,0,14,192,0,137],[0,0,0,4,14,224,1,239,0,0,0,0,13,192,0,73,0,7,0,0,0,3,0,29,0,0,0,0,3,11,0,25],[0,0,0,3,13,208,0,108,0,0,0,0,11,3,0,25,0,0,0,7,3,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,13,7,0,75,0,0,1,111,0,0,97,61],[0,0,1,0,13,192,0,140,0,0,2,246,0,0,33,61,0,0,0,0,215,124,0,217,0,0,0,8,7,112,0,140],[0,0,2,246,0,0,193,61,0,0,1,0,7,192,0,137,0,0,0,0,7,114,2,47,0,0,0,0,2,12,0,75],[0,0,0,0,7,0,96,25,0,0,0,248,2,240,2,112,0,0,0,7,2,32,1,143,0,0,0,1,12,32,0,140],[0,0,1,102,0,0,33,61,0,0,0,0,12,2,0,75,0,0,0,250,0,0,97,61,0,0,0,1,2,32,0,140],[0,0,1,127,0,0,193,61,0,0,0,9,2,112,0,41,0,0,0,0,2,50,0,75,0,0,0,0,7,4,0,25],[0,0,0,253,0,0,97,61,0,0,1,145,0,0,1,61,0,0,0,3,12,32,0,140,0,0,0,250,0,0,97,61],[0,0,0,2,2,32,0,140,0,0,1,127,0,0,193,61,0,0,0,9,2,112,0,105,0,0,0,0,2,50,0,75],[0,0,0,0,7,4,0,25,0,0,0,253,0,0,97,61,0,0,1,135,0,0,1,61,0,0,0,0,7,0,0,25],[0,0,1,89,0,0,1,61,0,0,1,104,1,0,0,65,0,0,0,0,0,16,4,53,0,0,0,50,1,0,0,57],[0,0,2,249,0,0,1,61,0,0,1,62,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,112,1,0,0,65],[0,0,0,196,0,16,4,63,0,0,1,113,1,0,0,65,0,0,2,112,0,0,1,61,0,0,1,62,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,114,1,0,0,65,0,0,2,100,0,0,1,61,0,0,1,62,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,108,1,0,0,65,0,0,0,196,0,16,4,63,0,0,1,109,1,0,0,65],[0,0,2,112,0,0,1,61,0,0,1,62,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,110,1,0,0,65],[0,0,0,196,0,16,4,63,0,0,1,111,1,0,0,65,0,0,2,112,0,0,1,61,0,0,1,59,2,32,0,156],[0,0,2,80,0,0,193,61,0,0,0,4,2,48,0,138,0,0,0,64,2,32,0,140,0,0,2,80,0,0,65,61],[0,0,0,4,2,16,3,112,0,0,0,0,5,2,4,59,0,0,1,60,2,80,0,156,0,0,2,80,0,0,33,61],[0,0,0,35,2,80,0,57,0,0,1,61,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,61,2,32,1,151,0,0,0,0,7,2,0,75,0,0,0,0,4,0,128,25],[0,0,1,61,2,32,0,156,0,0,0,0,4,6,192,25,0,0,0,0,2,4,0,75,0,0,2,80,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,60,2,32,0,156,0,0,2,80,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,80,0,0,65,61,0,0,0,36,6,16,3,112,0,0,0,0,6,6,4,59],[0,0,1,60,7,96,0,156,0,0,2,80,0,0,33,61,0,0,0,35,7,96,0,57,0,0,1,61,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,61,7,112,1,151],[0,0,0,0,10,7,0,75,0,0,0,0,8,0,128,25,0,0,1,61,7,112,0,156,0,0,0,0,8,9,192,25],[0,0,0,0,7,8,0,75,0,0,2,80,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,60,8,128,0,156,0,0,2,80,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,80,0,0,33,61,0,0,0,0,3,0,4,17,0,0,128,1,3,48,0,140,0,0,2,252,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,65,3,48,1,151,0,0,0,2,8,48,1,191,0,0,0,10,7,128,0,107,0,0,2,80,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,3,4,0,0,193,61],[0,0,0,1,9,112,2,112,0,0,0,3,10,48,2,112,0,0,0,0,9,154,0,75,0,0,3,18,0,0,161,61],[0,0,1,62,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,77,1,0,0,57,0,0,0,164,0,16,4,63,0,0,1,93,1,0,0,65,0,0,0,196,0,16,4,63],[0,0,1,94,1,0,0,65,0,0,0,228,0,16,4,63,0,0,1,95,1,0,0,65,0,0,3,15,0,0,1,61],[0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,2,80,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,57,1,0,0,65,0,0,4,220,0,1,4,46],[0,0,1,62,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,96,1,0,0,65,0,0,2,100,0,0,1,61],[0,0,1,62,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,115,1,0,0,65,0,0,0,196,0,16,4,63],[0,0,1,116,1,0,0,65,0,0,2,112,0,0,1,61,0,0,1,62,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,97,1,0,0,65,0,0,0,196,0,16,4,63,0,0,1,98,1,0,0,65,0,0,2,112,0,0,1,61],[0,0,0,0,2,8,0,75,0,0,2,52,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,82,0,0,129,61],[0,0,0,0,4,163,0,75,0,0,2,246,0,0,33,61,0,0,1,16,4,48,0,57,0,0,0,0,7,100,0,75],[0,0,2,80,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,60,3,48,1,152,0,0,0,0,3,4,0,25,0,0,2,30,0,0,97,61,0,0,2,72,0,0,1,61],[0,0,1,62,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,107,1,0,0,65,0,0,2,100,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,246,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,82,0,0,129,61,0,0,0,0,4,163,0,75,0,0,2,246,0,0,33,61,0,0,1,16,4,48,0,57],[0,0,0,0,7,100,0,75,0,0,2,80,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,60,3,48,1,152,0,0,0,0,3,4,0,25,0,0,2,59,0,0,97,61],[0,0,0,0,1,139,0,25,0,0,0,0,2,177,0,75,0,0,0,0,2,0,0,25,0,0,0,1,2,0,64,57],[0,0,0,1,2,32,1,144,0,0,2,246,0,0,193,61,0,0,0,12,1,16,0,108,0,0,2,236,0,0,161,61],[0,0,0,0,1,0,0,25,0,0,4,221,0,1,4,48,0,0,0,12,2,176,0,108,0,0,2,103,0,0,193,61],[0,0,1,56,2,80,1,151,0,0,0,0,1,33,3,79,0,0,0,1,3,0,0,41,0,0,0,2,2,48,0,105],[0,0,1,56,3,32,1,151,0,0,0,0,2,0,4,20,0,1,0,0,0,49,3,229,0,0,1,102,4,32,0,156],[0,0,2,115,0,0,65,61,0,0,1,62,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,105,1,0,0,65],[0,0,0,196,0,16,4,63,0,0,1,64,1,0,0,65,0,0,4,221,0,1,4,48,0,0,1,62,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,100,1,0,0,65,0,0,0,196,0,16,4,63,0,0,1,101,1,0,0,65],[0,0,0,228,0,16,4,63,0,0,1,72,1,0,0,65,0,0,4,221,0,1,4,48,0,0,0,0,1,49,3,223],[0,0,0,192,2,32,2,16,0,0,1,77,2,32,1,151,0,0,1,78,2,32,1,199,0,1,0,0,0,33,3,181],[0,0,0,0,1,33,3,175,0,0,128,16,2,0,0,57,4,219,4,214,0,0,4,15,0,0,0,0,3,1,0,25],[0,0,0,96,3,48,2,112,0,0,1,56,3,48,1,151,0,0,0,1,2,32,1,144,0,0,2,196,0,0,97,61],[0,0,0,63,2,48,0,57,0,0,1,79,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,60,6,64,0,156],[0,0,4,82,0,0,33,61,0,0,0,1,5,80,1,144,0,0,4,82,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,155,0,0,97,61],[0,0,0,0,6,0,0,49,0,0,0,17,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,147,0,0,65,61,0,0,0,0,5,0,0,75],[0,0,2,157,0,0,97,61,0,0,0,31,5,48,1,143,0,0,0,5,3,48,2,114,0,0,2,169,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,161,0,0,65,61,0,0,0,0,6,5,0,75,0,0,2,184,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,56,3,0,0,65,0,0,0,64,1,0,4,61,0,0,1,56,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,223,0,0,193,61],[0,0,0,0,2,4,4,51,0,0,0,0,0,33,4,53,0,0,1,90,1,48,1,199,0,0,4,220,0,1,4,46],[0,0,0,31,4,48,1,143,0,0,0,5,2,48,2,114,0,0,2,207,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,200,0,0,65,61,0,0,0,0,5,4,0,75],[0,0,2,221,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,221,0,1,4,48,0,0,0,68,2,16,0,57],[0,0,1,103,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,62,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,81,1,48,1,199,0,0,4,221,0,1,4,48],[0,0,0,0,1,8,0,75,0,0,2,246,0,0,193,61,0,0,1,62,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,106,1,0,0,65,0,0,2,100,0,0,1,61,0,0,1,104,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,89,1,0,0,65,0,0,4,221,0,1,4,48],[0,0,1,62,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,63,1,0,0,65,0,0,2,100,0,0,1,61],[0,0,1,62,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,66,1,0,0,65,0,0,0,196,0,16,4,63],[0,0,1,67,1,0,0,65,0,0,0,228,0,16,4,63,0,0,1,68,1,0,0,65,0,0,1,4,0,16,4,63],[0,0,1,69,1,0,0,65,0,0,4,221,0,1,4,48,0,0,0,10,9,128,0,107,0,0,3,45,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,65,10,160,1,151,0,0,0,0,11,58,0,75,0,0,3,67,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,60,10,160,1,152,0,0,3,77,0,0,193,61,0,0,0,2,9,144,0,57,0,0,0,0,10,121,0,75],[0,0,3,25,0,0,65,61,0,0,0,11,3,0,0,41,0,0,0,31,3,48,1,144,0,0,3,59,0,0,193,61],[0,0,0,11,3,0,0,41,0,0,1,76,3,48,0,156,0,0,3,87,0,0,65,61,0,0,1,62,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,92,1,0,0,65,0,0,2,100,0,0,1,61,0,0,1,62,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,75,1,0,0,65,0,0,2,100,0,0,1,61,0,0,1,62,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,70,1,0,0,65,0,0,0,196,0,16,4,63,0,0,1,71,1,0,0,65],[0,0,2,112,0,0,1,61,0,0,1,62,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,73,1,0,0,65],[0,0,0,196,0,16,4,63,0,0,1,74,1,0,0,65,0,0,2,112,0,0,1,61,0,0,0,11,3,0,0,41],[0,0,0,32,3,48,1,144,0,0,3,98,0,0,193,61,0,0,1,62,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,91,1,0,0,65,0,0,2,100,0,0,1,61,0,0,1,56,3,64,1,151,0,0,0,0,1,49,3,79],[0,0,0,2,2,32,0,105,0,0,1,56,3,32,1,151,0,0,0,0,2,0,4,20,0,1,0,0,0,49,3,229],[0,0,1,56,4,32,0,156,0,0,2,93,0,0,33,61,0,0,0,0,1,49,3,223,0,0,0,192,2,32,2,16],[0,0,1,77,2,32,1,151,0,0,1,78,2,32,1,199,0,1,0,0,0,33,3,181,0,0,0,0,1,33,3,175],[0,0,0,2,2,0,0,57,4,219,4,214,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,0,1,56,3,48,1,151,0,0,0,1,2,32,1,144,0,0,4,86,0,0,97,61,0,0,0,63,2,48,0,57],[0,0,1,79,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,60,6,64,0,156,0,0,4,82,0,0,33,61],[0,0,0,1,5,80,1,144,0,0,4,82,0,0,193,61,0,0,0,64,0,64,4,63,0,0,0,0,5,50,4,54],[0,0,0,17,4,0,3,103,0,0,0,31,6,48,0,57,0,0,0,5,6,96,2,114,0,0,3,146,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,138,0,0,65,61,0,0,0,0,6,0,0,75,0,0,3,148,0,0,97,61],[0,0,0,31,6,48,1,143,0,0,0,5,3,48,2,114,0,0,3,160,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,152,0,0,65,61],[0,0,0,0,7,6,0,75,0,0,3,175,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,113,0,0,193,61,0,0,0,0,5,5,4,51],[0,0,1,82,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,83,3,80,1,151,0,0,0,11,4,0,0,41,0,0,0,219,4,64,2,16,0,0,1,84,4,64,1,151],[0,0,0,0,4,52,1,159,0,0,0,31,3,96,1,143,0,11,1,85,0,64,1,203,0,0,0,5,4,96,2,114],[0,0,3,210,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,202,0,0,65,61,0,0,0,0,5,3,0,75,0,0,3,225,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,56,2,0,0,65],[0,0,0,12,4,0,0,41,0,0,1,56,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,56,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,56,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,219,4,204,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,1,56,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,11,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,4,3,0,0,65,61,0,0,0,0,7,5,0,75],[0,0,4,26,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,128,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,60,4,16,0,156,0,0,4,82,0,0,33,61],[0,0,0,1,2,32,1,144,0,0,4,82,0,0,193,61,0,0,0,64,0,16,4,63,0,0,0,32,1,48,0,140],[0,0,2,80,0,0,65,61,0,0,1,86,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,56,1,0,0,65,0,0,0,0,2,0,4,20,0,0,1,56,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,1,87,1,16,1,199,0,0,128,2,2,0,0,57],[4,219,4,209,0,0,4,15,0,0,0,1,2,32,1,144,0,0,4,163,0,0,97,61,0,0,0,0,1,1,4,59],[0,0,0,0,1,1,0,75,0,0,2,80,0,0,97,61,0,0,0,64,4,0,4,61,0,0,1,88,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,56,1,0,0,65,0,0,0,0,2,0,4,20,0,0,1,56,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,1,56,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,89,1,16,1,199,0,0,128,4,2,0,0,57],[4,219,4,204,0,0,4,15,0,0,0,1,2,32,1,144,0,0,4,164,0,0,97,61,0,0,0,12,1,0,0,41],[0,0,1,60,1,16,0,156,0,0,4,196,0,0,161,61,0,0,1,104,1,0,0,65,0,0,0,0,0,16,4,53],[0,0,0,65,1,0,0,57,0,0,2,249,0,0,1,61,0,0,0,31,4,48,1,143,0,0,0,5,2,48,2,114],[0,0,4,97,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,90,0,0,65,61,0,0,0,0,5,4,0,75,0,0,4,111,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,221,0,1,4,48,0,0,1,62,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,80,2,0,0,65,0,0,0,0,0,33,4,53,0,0,1,56,1,0,0,65,0,0,1,56,2,64,0,156],[0,0,0,0,4,1,128,25,0,0,0,64,1,64,2,16,0,0,1,81,1,16,1,199,0,0,4,221,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,141,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,133,0,0,65,61,0,0,0,0,6,4,0,75,0,0,4,156,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,56,1,0,0,65,0,0,1,56,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,221,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,56,3,48,1,151,0,0,0,5,5,48,2,114,0,0,4,180,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,172,0,0,65,61],[0,0,0,0,6,4,0,75,0,0,4,195,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,156,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,90,1,16,1,199,0,0,4,220,0,1,4,46,0,0,0,0,0,1,4,47],[0,0,4,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,4,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,4,217,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,219,0,0,4,50],[0,0,4,220,0,1,4,46,0,0,4,221,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,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],[68,105,99,116,105,111,110,97,114,121,32,115,104,111,117,108,100,32,104,97,118,101,32,97,116,32,109,111,115,116,32,116],[104,101,32,115,97,109,101,32,110,117,109,98,101,114,32,111,102,32,101,110,116,114,105,101,115,32,97,115,32,116,104,101],[32,101,110,99,111,100,101,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],[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],[7,0,0,0,0,0,0,0,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,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],[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],[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],[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],[21,31,210,149,32,255,255,206,159,199,138,190,121,22,125,2,131,202,146,162,133,154,29,16,180,83,90,19,230,186,220,75]],"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],[80,212,93,190,122,101,126,250,163,160,39,229,249,220,119,35,139,87,150,226,104,208,87,146,236,160,207,106,136,19,24,195]],"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],[171,242,174,109,142,229,242,151,29,166,152,164,72,217,11,237,215,175,17,73,255,158,65,52,150,122,253,42,115,72,201,111]],"0x0000000000000000000000000000000000008012":[[0,16,0,0,0,0,0,2,0,1,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,28,3,48,1,151,0,1,0,0,0,49,3,85,0,0,0,0,0,49,3,85,0,2,0,0,0,49,3,85],[0,3,0,0,0,49,3,85,0,4,0,0,0,49,3,85,0,5,0,0,0,49,3,85,0,6,0,0,0,49,3,85],[0,7,0,0,0,49,3,85,0,8,0,0,0,49,3,85,0,9,0,0,0,49,3,85,0,10,0,0,0,49,3,85],[0,11,0,0,0,49,3,85,0,12,0,0,0,49,3,85,0,13,0,0,0,49,3,85,0,14,0,0,0,49,3,85],[0,15,0,0,0,49,3,85,0,0,0,1,2,32,1,144,0,0,0,94,0,0,193,61,0,0,0,0,2,1,4,59],[0,0,0,30,1,0,0,65,0,0,0,0,0,16,4,53,0,1,0,0,0,2,0,29,0,0,0,4,0,32,4,63],[0,0,0,28,1,0,0,65,0,0,0,0,2,0,4,20,0,0,0,28,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,192,1,32,2,16,0,0,0,31,1,16,1,199,0,0,128,4,2,0,0,57,0,106,0,101,0,0,4,15],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,0,28,3,48,1,151,0,0,0,32,4,48,0,140],[0,0,0,32,3,0,128,57,0,0,0,31,4,48,1,143,0,0,0,5,3,48,2,114,0,0,0,52,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,53,0,75,0,0,0,45,0,0,65,61],[0,0,0,0,5,4,0,75,0,0,0,66,0,0,97,61,0,0,0,3,4,64,2,16,0,0,0,5,3,48,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,49,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,19,4,53,0,0,0,1,1,32,1,144,0,0,0,99,0,0,97,61],[0,0,0,1,1,0,0,41,0,0,0,32,1,16,1,151,0,0,0,0,2,0,4,51,0,0,0,0,2,2,0,75],[0,0,0,99,0,0,97,61,0,0,0,33,1,16,0,156,0,0,0,99,0,0,193,61,0,0,0,1,3,0,0,41],[0,0,0,224,1,48,2,112,0,0,255,255,1,16,1,144,0,0,0,2,2,16,2,16,0,0,0,0,2,35,4,69],[0,0,0,0,0,2,3,85,0,0,0,90,0,0,97,61,0,0,0,0,3,0,0,25,0,0,0,5,4,48,2,16],[0,0,0,0,5,66,3,79,0,0,0,0,5,5,4,59,0,0,0,0,0,84,4,53,0,0,0,1,3,48,0,57],[0,0,0,0,4,19,0,75,0,0,0,83,0,0,65,61,0,0,0,0,2,0,0,75,0,0,0,92,0,0,97,61],[0,0,0,101,1,16,2,16,0,0,0,107,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,29,1,0,0,65,0,0,0,107,0,1,4,46,0,0,0,0,1,0,0,25],[0,0,0,108,0,1,4,48,0,0,0,104,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,106,0,0,4,50,0,0,0,107,0,1,4,46],[0,0,0,108,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],[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,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],[220,56,99,58,84,35,238,219,229,209,0,53,91,250,45,9,189,236,187,119,228,37,29,166,230,56,135,76,97,175,68,16]],"0x0000000000000000000000000000000000000100":[[0,0,0,1,2,32,1,144,0,0,0,31,0,0,193,61,0,0,0,0,2,1,0,25,0,0,0,12,2,32,1,151],[0,0,0,13,2,32,0,156,0,0,0,29,0,0,193,61,0,0,0,128,2,16,3,112,0,0,0,0,2,2,4,59],[0,0,0,96,3,16,3,112,0,0,0,0,3,3,4,59,0,0,0,64,4,16,3,112,0,0,0,0,4,4,4,59],[0,0,0,32,5,16,3,112,0,0,0,0,5,5,4,59,0,0,0,0,1,1,4,59,0,0,0,0,0,16,4,53],[0,0,0,32,0,80,4,63,0,0,0,64,0,64,4,63,0,0,0,96,0,48,4,63,0,0,0,128,0,32,4,63],[0,0,46,224,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,29,0,0,97,61,0,0,0,32,1,0,4,61,0,0,0,0,1,1,0,75],[0,0,0,36,0,0,193,61,0,0,0,0,1,0,0,25,0,0,0,39,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,39,0,1,4,46],[0,0,0,15,1,0,0,65,0,0,0,39,0,1,4,46,0,0,0,38,0,0,4,50,0,0,0,39,0,1,4,46],[0,0,0,40,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,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,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,5,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],[99,70,236,230,212,100,45,10,78,238,109,18,132,249,45,147,54,61,78,53,205,95,103,7,180,47,225,23,164,222,237,12]],"0x0000000000000000000000000000000000008011":[[0,3,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,53,3,48,1,151,0,0,0,1,2,32,1,144,0,0,0,60,0,0,193,61],[0,0,0,4,2,48,0,140,0,0,0,195,0,0,65,61,0,0,0,0,2,1,4,59,0,0,0,55,2,32,1,151],[0,0,0,56,2,32,0,156,0,0,0,195,0,0,193,61,0,0,0,0,2,0,4,22,0,0,0,0,2,2,0,75],[0,0,0,195,0,0,193,61,0,0,0,4,2,48,0,138,0,0,0,32,2,32,0,140,0,0,0,195,0,0,65,61],[0,0,0,4,2,16,3,112,0,0,0,0,4,2,4,59,0,0,0,57,2,64,0,156,0,0,0,195,0,0,33,61],[0,0,0,35,2,64,0,57,0,0,0,58,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,58,2,32,1,151,0,0,0,0,7,2,0,75,0,0,0,0,5,0,128,25],[0,0,0,58,2,32,0,156,0,0,0,0,5,6,192,25,0,0,0,0,2,5,0,75,0,0,0,195,0,0,193,61],[0,0,0,4,2,64,0,57,0,0,0,0,5,33,3,79,0,0,0,0,5,5,4,59,0,2,0,0,0,5,0,29],[0,0,0,57,5,80,0,156,0,0,0,195,0,0,33,61,0,0,0,2,4,64,0,41,0,0,0,36,4,64,0,57],[0,0,0,0,4,52,0,75,0,0,0,195,0,0,33,61,0,0,0,0,4,0,4,17,0,0,128,8,4,64,0,140],[0,0,0,68,0,0,193,61,0,0,0,2,4,0,0,41,0,0,0,62,4,64,0,156,0,0,0,78,0,0,65,61],[0,0,0,59,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,29,1,0,0,57,0,0,0,164,0,16,4,63,0,0,0,70,1,0,0,65,0,0,0,75,0,0,1,61],[0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,0,195,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,54,1,0,0,65,0,0,0,208,0,1,4,46],[0,0,0,59,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,0,60,1,0,0,65,0,0,0,196,0,16,4,63],[0,0,0,61,1,0,0,65,0,0,0,209,0,1,4,48,0,0,0,6,4,0,0,57,0,0,0,128,0,64,4,63],[0,0,0,0,3,49,3,79,0,0,0,160,4,0,0,57,0,0,0,0,5,0,0,25,0,0,0,5,6,80,2,16],[0,0,0,0,6,99,3,79,0,0,0,0,6,6,4,59,0,0,0,0,4,100,4,54,0,0,0,1,5,80,0,57],[0,0,0,6,6,80,0,140,0,0,0,83,0,0,65,61,0,0,0,63,4,0,0,65,0,0,0,64,0,64,4,63],[0,0,0,64,4,0,0,65,0,0,1,96,0,64,4,63,0,0,1,128,4,0,0,57,0,0,0,0,5,0,0,25],[0,0,0,5,6,80,2,16,0,0,0,0,6,99,3,79,0,0,0,0,6,6,4,59,0,0,0,0,4,100,4,54],[0,0,0,1,5,80,0,57,0,0,93,0,6,80,0,140,0,0,0,96,0,0,65,61,0,0,0,32,2,32,0,57],[0,0,0,0,1,33,3,79,0,0,0,2,3,0,0,41,0,0,0,31,2,48,1,143,0,0,0,5,3,48,2,114],[0,0,0,118,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,81,3,79],[0,0,0,0,6,6,4,59,0,0,1,128,5,80,0,57,0,0,0,0,0,101,4,53,0,0,0,1,4,64,0,57],[0,0,0,0,5,52,0,75,0,0,0,110,0,0,65,61,0,0,0,0,4,2,0,75,0,0,0,133,0,0,97,61],[0,0,0,5,3,48,2,16,0,0,0,0,1,49,3,79,0,0,0,3,2,32,2,16,0,0,1,128,3,48,0,57],[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,1,128,16,0,0,0,61,0,0,0,0,3,0,0,25,0,0,0,65,33,48,0,209],[0,0,0,2,1,16,0,108,0,0,0,161,0,0,129,61,0,0,0,0,1,0,4,20,0,0,0,53,2,16,0,156],[0,0,0,53,1,0,128,65,0,0,0,192,1,16,2,16,0,3,0,0,0,3,0,29,0,0,0,66,50,48,0,209],[0,0,0,0,1,18,1,159,0,0,0,67,1,16,1,199,0,0,0,1,2,0,0,41,0,207,0,202,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,0,195,0,0,97,61,0,0,0,128,2,0,4,61,0,0,0,3,3,0,0,41],[0,0,0,0,2,50,0,75,0,0,0,189,0,0,161,61,0,0,0,0,1,1,4,59,0,0,0,5,2,48,2,16],[0,0,0,160,2,32,0,57,0,0,0,0,0,18,4,53,0,0,0,5,1,48,0,140,0,0,0,1,3,48,0,57],[0,0,0,135,0,0,65,61,0,0,0,128,1,0,4,61,0,0,0,0,2,1,0,75,0,0,0,189,0,0,97,61],[0,0,0,160,2,0,4,61,0,0,0,7,3,0,0,57,0,0,0,0,0,35,4,29,0,0,0,1,2,16,0,140],[0,0,0,189,0,0,97,61,0,0,0,192,2,0,4,61,0,0,0,8,3,0,0,57,0,0,0,0,0,35,4,29],[0,0,0,3,2,16,0,140,0,0,0,189,0,0,65,61,0,0,0,224,2,0,4,61,0,0,0,9,3,0,0,57],[0,0,0,0,0,35,4,29,0,0,0,3,2,16,0,140,0,0,0,189,0,0,97,61,0,0,1,0,2,0,4,61],[0,0,0,10,3,0,0,57,0,0,0,0,0,35,4,29,0,0,0,5,2,16,0,140,0,0,0,189,0,0,65,61],[0,0,1,32,2,0,4,61,0,0,0,11,3,0,0,57,0,0,0,0,0,35,4,29,0,0,0,5,1,16,0,140],[0,0,0,197,0,0,193,61,0,0,0,68,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,0,69,1,0,0,65,0,0,0,209,0,1,4,48,0,0,0,0,1,0,0,25],[0,0,0,209,0,1,4,48,0,0,1,64,1,0,4,61,0,0,0,12,2,0,0,57,0,0,0,0,0,18,4,29],[0,0,0,0,1,0,0,25,0,0,0,208,0,1,4,46,0,0,0,205,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,207,0,0,4,50],[0,0,0,208,0,1,4,46,0,0,0,209,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,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],[37,85,210,193,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[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],[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,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,11,160,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,11,161,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,11,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,1,240,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,240,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,1,240,0,0,0,1,128,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],[112,117,98,100,97,116,97,32,115,104,111,117,108,100,32,102,105,116,32,105,110,32,54,32,98,108,111,98,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],[235,231,24,156,100,163,130,150,41,177,204,215,93,125,130,10,59,34,25,228,38,125,89,36,215,89,232,130,185,34,33,202]]},"default_account_code":[[0,20,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,8,6,112,1,151,0,19,0,0,0,97,3,85,0,2,0,0,0,97,3,85,0,3,0,0,0,97,3,85],[0,4,0,0,0,97,3,85,0,5,0,0,0,97,3,85,0,6,0,0,0,97,3,85,0,7,0,0,0,97,3,85],[0,8,0,0,0,97,3,85,0,9,0,0,0,97,3,85,0,10,0,0,0,97,3,85,0,11,0,0,0,97,3,85],[0,12,0,0,0,97,3,85,0,13,0,0,0,97,3,85,0,14,0,0,0,97,3,85,0,15,0,0,0,97,3,85],[0,16,0,0,0,97,3,85,0,17,0,0,0,97,3,85,0,18,0,0,0,1,3,85,0,0,5,8,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,60,0,0,193,61],[0,0,0,4,2,96,0,140,0,0,0,68,0,0,65,61,0,0,0,0,2,1,4,59,0,0,0,224,2,32,2,112],[0,0,5,10,3,32,0,156,0,0,0,84,0,0,161,61,0,0,5,11,3,32,0,156,0,0,0,168,0,0,97,61],[0,0,5,12,3,32,0,156,0,0,0,215,0,0,97,61,0,0,5,13,2,32,0,156,0,0,0,70,0,0,193,61],[0,0,0,4,2,96,0,138,0,0,0,32,3,32,0,140,0,0,1,57,0,0,65,61,0,0,0,4,1,16,3,112],[0,0,0,0,1,1,4,59,0,0,5,16,3,16,0,156,0,0,1,57,0,0,33,61,0,0,0,0,1,18,0,73],[0,0,5,17,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,17,1,16,1,151,0,0,0,0,4,1,0,75,0,0,0,0,2,0,160,25,0,0,5,17,1,16,0,156],[0,0,0,0,2,3,192,25,0,0,0,0,1,2,0,75,0,0,4,34,0,0,97,61,0,0,1,57,0,0,1,61],[0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,1,57,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,9,1,0,0,65,0,0,20,29,0,1,4,46],[0,0,0,0,1,6,0,75,0,0,4,34,0,0,97,61,0,0,0,0,1,0,4,18,0,0,5,18,1,16,1,151],[0,0,0,0,2,0,4,16,0,0,0,0,1,33,0,75,0,0,4,34,0,0,193,61,0,0,0,0,1,0,4,17],[0,0,128,1,1,16,0,140,0,0,4,34,0,0,193,61,0,0,5,94,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,95,1,0,0,65,0,0,20,30,0,1,4,48],[0,0,5,14,3,32,0,156,0,0,1,35,0,0,97,61,0,10,0,0,0,4,0,29,0,0,5,15,2,32,0,156],[0,0,0,70,0,0,193,61,0,0,0,4,2,96,0,138,0,0,0,96,2,32,0,140,0,0,1,57,0,0,65,61],[0,0,0,68,2,16,3,112,0,0,0,0,3,2,4,59,0,0,5,16,2,48,0,156,0,0,1,57,0,0,33,61],[0,0,0,4,4,48,0,57,0,0,0,0,5,70,0,73,0,0,5,17,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,17,8,80,1,151,0,0,0,0,9,8,0,75],[0,0,0,0,2,0,160,25,0,0,5,17,8,128,0,156,0,0,0,0,2,7,192,25,0,0,0,0,2,2,0,75],[0,0,1,57,0,0,193,61,0,0,0,0,2,0,4,17,0,0,128,1,2,32,0,140,0,0,4,34,0,0,193,61],[0,0,0,0,2,0,4,18,0,0,5,18,7,32,1,151,0,0,0,0,2,0,4,16,0,0,0,0,7,39,0,75],[0,0,4,34,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,17,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,17,5,80,1,151,0,0,5,17,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,17,5,80,0,156,0,0,0,0,8,9,192,25],[0,0,0,0,5,8,0,75,0,0,1,57,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,16,7,64,0,156,0,0,1,57,0,0,33,61,0,0,0,0,7,70,0,73],[0,0,0,32,5,80,0,57,0,0,5,17,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,17,7,112,1,151,0,0,5,17,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,17,7,112,0,156,0,0,0,0,8,9,192,25],[0,0,0,0,7,8,0,75,0,0,1,57,0,0,193,61,0,0,0,3,7,64,0,140,0,0,2,92,0,0,33,61],[0,0,5,22,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,57,1,0,0,65,0,0,0,196,0,16,4,63],[0,0,5,58,1,0,0,65,0,0,0,228,0,16,4,63,0,0,5,55,1,0,0,65,0,0,20,30,0,1,4,48],[0,0,0,4,2,96,0,138,0,0,0,96,2,32,0,140,0,0,1,57,0,0,65,61,0,0,0,68,2,16,3,112],[0,0,0,0,3,2,4,59,0,0,5,16,2,48,0,156,0,0,1,57,0,0,33,61,0,0,0,4,2,48,0,57],[0,0,0,0,5,38,0,73,0,0,5,17,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,17,9,80,1,151,0,0,0,0,10,9,0,75,0,0,0,0,4,0,160,25],[0,0,5,17,9,144,0,156,0,0,0,0,4,8,192,25,0,0,0,0,4,4,0,75,0,0,1,57,0,0,193,61],[0,0,0,0,4,0,4,17,0,0,128,1,4,64,0,140,0,0,4,34,0,0,193,61,0,0,0,0,4,0,4,18],[0,0,5,18,4,64,1,151,0,0,0,0,8,0,4,16,0,0,0,0,4,132,0,75,0,0,4,34,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,18,4,64,1,151,0,0,0,0,3,3,4,59,0,0,5,24,9,48,0,156],[0,0,2,24,0,0,65,61,0,0,5,22,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,34,1,0,0,65],[0,0,0,196,0,16,4,63,0,0,5,35,1,0,0,65,0,0,20,30,0,1,4,48,0,0,0,4,3,96,0,138],[0,0,0,96,2,48,0,140,0,0,1,57,0,0,65,61,0,0,0,68,2,16,3,112,0,0,0,0,2,2,4,59],[0,0,5,16,4,32,0,156,0,0,1,57,0,0,33,61,0,0,0,0,3,35,0,73,0,0,5,17,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,17,3,48,1,151],[0,0,0,0,6,3,0,75,0,0,0,0,4,0,160,25,0,0,5,17,3,48,0,156,0,0,0,0,4,5,192,25],[0,0,0,0,3,4,0,75,0,0,1,57,0,0,193,61,0,0,0,0,3,0,4,17,0,0,128,1,3,48,0,140],[0,0,4,34,0,0,193,61,0,0,0,0,3,0,4,18,0,0,5,18,3,48,1,151,0,0,0,0,4,0,4,16],[0,0,0,0,3,67,0,75,0,0,4,34,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,2,0,0,0,193,61,0,0,0,0,4,0,4,21,0,0,0,12,4,64,0,138],[0,0,0,5,4,64,2,16,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,8,2,0,0,65,0,0,5,8,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,28,20,8,0,0,4,15,0,0,0,10,3,0,0,41,0,19,0,0,0,1,3,85],[0,0,0,96,1,16,2,112,0,1,5,8,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,4,34,0,0,193,61,0,0,0,64,1,0,4,61,0,0,0,100,2,16,0,57],[0,0,5,20,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,68,2,16,0,57,0,0,5,21,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,22,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,8,2,0,0,65,0,0,5,8,3,16,0,156,0,0,0,0,1,2,128,25],[0,0,0,64,1,16,2,16,0,0,5,23,1,16,1,199,0,0,20,30,0,1,4,48,0,0,0,4,2,96,0,138],[0,0,0,96,2,32,0,140,0,0,1,57,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,16,2,32,0,156,0,0,1,57,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,17,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,17,2,32,1,151,0,0,0,0,5,2,0,75],[0,0,0,0,3,0,160,25,0,0,5,17,2,32,0,156,0,0,0,0,3,4,192,25,0,0,0,0,2,3,0,75],[0,0,1,59,0,0,97,61,0,0,0,0,1,0,0,25,0,0,20,30,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,4,34,0,0,193,61,0,0,0,0,2,0,4,18,0,0,5,18,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,4,34,0,0,193,61,0,0,0,0,2,0,4,20],[0,0,5,59,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,31,1,16,1,151,0,0,5,60,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,28,20,8,0,0,4,15],[0,19,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,8,0,48,1,157],[0,0,5,8,8,48,1,151,0,0,0,63,3,128,0,57,0,0,5,61,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,16,5,48,0,156,0,0,19,58,0,0,33,61,0,0,0,1,4,64,1,144,0,0,19,58,0,0,193,61],[0,0,0,64,0,48,4,63,0,0,0,0,7,134,4,54,0,0,0,18,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,125,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,117,0,0,65,61,0,0,0,0,9,0,0,75,0,0,1,127,0,0,97,61,0,0,0,31,9,128,1,143],[0,0,0,5,8,128,2,114,0,0,1,139,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,131,0,0,65,61,0,0,0,0,10,9,0,75],[0,0,1,154,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,82,0,0,97,61],[0,0,0,8,1,0,0,107,0,0,18,1,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,1,2,16,0,140,0,0,2,111,0,0,33,61],[0,0,0,0,2,1,0,75,0,0,2,196,0,0,97,61,0,0,0,1,1,16,0,140,0,0,2,178,0,0,193,61],[0,0,5,62,1,0,0,65,0,0,0,0,0,16,4,57,0,0,5,8,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,5,8,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,5,63,1,16,1,199],[0,0,128,11,2,0,0,57,20,28,20,13,0,0,4,15,0,0,0,1,2,32,1,144,0,0,18,65,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,63,0,0,65,61],[0,0,0,128,1,64,2,112,0,0,5,66,2,64,0,156,0,0,0,0,1,4,160,25,0,0,5,66,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,16,6,16,0,156],[0,0,0,0,5,2,160,25,0,0,0,64,2,16,2,112,0,0,5,16,6,16,0,156,0,0,0,0,2,1,160,25],[0,0,0,4,1,80,1,191,0,0,5,8,6,32,0,156,0,0,0,0,1,5,160,25,0,0,0,32,6,32,2,112],[0,0,5,8,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,16,6,16,0,156,0,0,19,58,0,0,33,61,0,0,0,1,2,32,1,144,0,0,19,58,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,18,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,238,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,230,0,0,65,61,0,0,0,0,7,0,0,75,0,0,1,240,0,0,97,61],[0,0,0,0,7,3,4,51,0,0,0,0,7,7,0,75,0,0,9,198,0,0,97,61,0,0,0,0,7,6,4,51],[0,0,5,65,7,112,1,151,0,0,0,248,8,80,2,16,0,0,0,0,7,120,1,159,0,0,5,67,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,81,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,18,29,0,0,193,61],[0,0,0,0,4,0,4,21,0,0,0,11,4,64,0,138,0,0,0,5,4,64,2,16,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,255,0,0,97,61,0,0,5,8,2,0,0,65],[0,0,5,8,4,16,0,156,0,0,0,0,1,2,128,25,0,0,0,192,1,16,2,16,0,0,5,19,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,28,20,8,0,0,4,15],[0,0,0,0,3,0,4,21,0,0,0,11,3,48,0,138,0,0,0,5,3,48,2,16,0,0,1,7,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,17,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,17,5,80,1,151,0,0,5,17,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,17,5,80,0,156,0,0,0,0,9,10,192,25,0,0,0,0,5,9,0,75],[0,0,1,57,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,16,5,128,0,156,0,0,1,57,0,0,33,61,0,0,0,0,5,134,0,73,0,0,0,32,9,32,0,57],[0,0,5,17,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,17,5,80,1,151,0,0,5,17,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,17,5,80,0,156,0,0,0,0,2,10,192,25,0,0,0,0,2,2,0,75],[0,0,1,57,0,0,193,61,0,0,0,0,2,0,4,20,0,0,5,8,5,32,0,156,0,0,0,205,0,0,33,61],[0,0,128,6,5,64,0,140,0,0,0,0,5,0,0,25,0,0,3,243,0,0,193,61,0,0,0,4,5,128,0,140],[0,0,0,0,5,0,0,25,0,0,3,243,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,25,10,160,1,151,0,0,5,26,11,160,0,156,0,0,3,239,0,0,33,61],[0,0,5,29,11,160,0,156,0,0,3,243,0,0,97,61,0,0,5,30,10,160,0,156,0,0,3,243,0,0,97,61],[0,0,0,0,5,0,0,25,0,0,3,243,0,0,1,61,0,0,0,0,1,6,4,51,0,0,5,8,2,0,0,65],[0,0,5,8,3,16,0,156,0,0,0,0,1,2,128,25,0,0,5,8,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,30,0,1,4,48],[0,0,0,0,7,81,3,79,0,0,0,0,7,7,4,59,0,0,5,25,7,112,1,151,0,0,5,36,8,112,0,156],[0,0,4,34,0,0,97,61,0,0,5,37,7,112,0,156,0,0,3,106,0,0,193,61,0,0,0,67,4,64,0,140],[0,0,3,208,0,0,33,61,0,0,5,22,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,53,1,0,0,65],[0,0,0,196,0,16,4,63,0,0,5,54,1,0,0,65,0,0,0,165,0,0,1,61,0,0,0,2,2,16,0,140],[0,0,3,18,0,0,97,61,0,0,0,113,1,16,0,140,0,0,2,178,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,17,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,17,2,32,1,151,0,0,5,17,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,17,2,32,0,156,0,0,0,0,5,6,192,25],[0,0,0,0,2,5,0,75,0,0,1,57,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,16,5,16,0,156,0,0,1,57,0,0,33,61,0,0,0,0,6,20,0,73],[0,0,0,32,5,32,0,57,0,0,5,17,2,0,0,65,0,0,0,0,7,101,0,75,0,0,0,0,7,0,0,25],[0,0,0,0,7,2,32,25,0,0,5,17,6,96,1,151,0,0,5,17,8,80,1,151,0,0,0,0,9,104,0,75],[0,0,0,0,2,0,128,25,0,0,0,0,6,104,1,63,0,0,5,17,6,96,0,156,0,0,0,0,2,7,192,25],[0,0,0,0,2,2,0,75,0,0,1,57,0,0,193,61,0,0,5,8,6,80,1,151,0,0,0,0,2,0,4,20],[0,2,0,0,0,99,3,85,0,0,0,0,5,81,0,25,0,0,0,0,1,21,0,75,0,0,0,0,1,0,0,25],[0,0,0,1,1,0,64,57,0,0,0,1,1,16,1,144,0,0,18,29,0,0,193,61,0,0,0,0,1,84,0,75],[0,0,18,29,0,0,65,61,0,0,0,0,1,99,3,79,0,0,0,0,3,84,0,73,0,0,5,8,3,48,1,151],[0,2,0,0,0,49,3,229,0,0,5,73,4,32,0,156,0,0,6,137,0,0,65,61,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,2,184,0,0,1,61,0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57],[0,0,5,96,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,22,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,8,2,0,0,65,0,0,5,8,3,16,0,156],[0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16,0,0,5,52,1,16,1,199,0,0,20,30,0,1,4,48],[0,0,0,6,1,48,3,96,0,0,0,64,2,0,4,61,0,8,0,0,0,2,0,29,0,0,0,0,1,1,4,59],[0,0,0,128,2,16,0,140,0,0,3,114,0,0,65,61,0,0,0,128,2,16,2,112,0,0,5,66,6,16,0,156],[0,0,0,0,2,1,160,25,0,0,5,66,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,16,8,32,0,156,0,0,0,0,7,6,160,25,0,0,0,64,6,32,2,112],[0,0,5,16,8,32,0,156,0,0,0,0,6,2,160,25,0,0,0,4,8,112,1,191,0,0,5,8,2,96,0,156],[0,0,0,0,8,7,160,25,0,0,0,32,7,96,2,112,0,0,5,8,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,8,6,96,0,41,0,0,0,8,7,96,0,108],[0,0,0,0,7,0,0,25,0,0,0,1,7,0,64,57,0,0,5,16,8,96,0,156,0,0,19,58,0,0,33,61],[0,0,0,1,7,112,1,144,0,0,19,58,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,2,254,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,2,246,0,0,65,61,0,0,0,0,7,0,0,75,0,0,3,0,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,9,198,0,0,97,61],[0,0,0,0,7,6,4,51,0,0,5,65,7,112,1,151,0,0,0,248,8,32,2,16,0,0,0,0,7,120,1,159],[0,0,5,67,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,3,131,0,0,1,61,0,0,5,62,1,0,0,65,0,0,0,0,0,16,4,57],[0,0,5,8,1,0,0,65,0,0,0,0,2,0,4,20,0,0,5,8,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,192,1,32,2,16,0,0,5,63,1,16,1,199,0,0,128,11,2,0,0,57,20,28,20,13,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,18,65,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,157,0,0,65,61,0,0,0,128,1,64,2,112,0,0,5,66,2,64,0,156],[0,0,0,0,1,4,160,25,0,0,5,66,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,16,6,16,0,156,0,0,0,0,5,2,160,25,0,0,0,64,2,16,2,112],[0,0,5,16,6,16,0,156,0,0,0,0,2,1,160,25,0,0,0,4,1,80,1,191,0,0,5,8,6,32,0,156],[0,0,0,0,1,5,160,25,0,0,0,32,6,32,2,112,0,0,5,8,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,16,6,16,0,156,0,0,19,58,0,0,33,61],[0,0,0,1,2,32,1,144,0,0,19,58,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,18,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,88,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,80,0,0,65,61],[0,0,0,0,7,0,0,75,0,0,3,90,0,0,97,61,0,0,0,0,7,3,4,51,0,0,0,0,7,7,0,75],[0,0,9,198,0,0,97,61,0,0,0,0,7,6,4,51,0,0,5,65,7,112,1,151,0,0,0,248,8,80,2,16],[0,0,0,0,7,120,1,159,0,0,5,67,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,175,0,0,1,61,0,0,5,22,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,56,1,0,0,65,0,0,0,212,0,0,1,61,0,0,0,8,2,0,0,41,0,0,5,64,2,32,0,156],[0,0,19,58,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,5,4,59,0,0,0,0,0,98,4,53],[0,0,9,198,0,0,97,61,0,0,0,248,7,16,2,16,0,0,5,17,8,0,0,65,0,0,0,0,1,1,0,75],[0,0,0,0,8,7,192,25,0,0,5,65,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,4,251,0,0,65,61,0,0,0,128,7,96,2,112],[0,0,5,66,8,96,0,156,0,0,0,0,7,6,160,25,0,0,5,66,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,16,10,112,0,156,0,0,0,0,9,8,160,25],[0,0,0,64,8,112,2,112,0,0,5,16,10,112,0,156,0,0,0,0,8,7,160,25,0,0,0,4,10,144,1,191],[0,0,5,8,7,128,0,156,0,0,0,0,10,9,160,25,0,0,0,32,9,128,2,112,0,0,5,8,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,16,10,128,0,156],[0,0,19,58,0,0,33,61,0,0,0,1,9,144,1,144,0,0,19,58,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,3,190,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,3,182,0,0,65,61,0,0,0,0,9,0,0,75,0,0,3,192,0,0,97,61],[0,0,0,0,9,1,4,51,0,0,0,0,9,9,0,75,0,0,9,198,0,0,97,61,0,0,0,0,9,8,4,51],[0,0,5,65,9,144,1,151,0,0,0,248,10,112,2,16,0,0,0,0,9,154,1,159,0,0,5,67,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,5,10,0,0,1,61],[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,18,5,80,0,156,0,0,1,57,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,38,4,0,0,65,0,0,0,128,0,64,4,63,0,0,5,18,2,32,1,151],[0,6,0,0,0,2,0,29,0,0,0,132,0,32,4,63,0,0,5,18,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,5,86,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,130,0,0,1,61,0,0,5,27,11,160,0,156],[0,0,3,243,0,0,97,61,0,0,5,28,10,160,0,156,0,0,0,0,5,0,192,25,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,8,8,144,1,151,0,2,0,0,0,129,3,85,0,0,0,0,1,129,3,79],[0,0,0,0,8,3,0,75,0,0,4,14,0,0,193,61,0,0,0,1,3,96,1,144,0,0,18,29,0,0,193,61],[0,0,5,32,3,0,0,65,0,0,5,33,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,31,2,32,1,151,0,0,0,0,2,38,1,159,0,0,0,0,3,167,0,73],[0,0,5,8,3,48,1,151,0,0,0,0,1,49,3,223,0,2,0,0,0,33,3,181,0,0,0,0,1,33,3,175],[0,0,0,0,2,4,0,25,0,0,4,26,0,0,1,61,0,0,0,1,6,96,1,144,0,0,18,29,0,0,193,61],[0,0,0,0,6,167,0,73,0,0,5,8,6,96,1,151,0,0,0,0,1,97,3,223,0,0,0,192,2,32,2,16],[0,0,5,31,2,32,1,151,0,0,5,32,2,32,1,199,0,2,0,0,0,33,3,181,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,28,20,18,0,0,4,15,0,19,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,8,0,48,1,157,0,0,5,8,3,48,1,151],[0,0,0,1,2,32,1,144,0,0,4,36,0,0,97,61,0,0,0,0,1,0,0,25,0,0,20,29,0,1,4,46],[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,20,30,0,1,4,48,0,0,5,64,1,48,0,156],[0,0,19,58,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,18,1,0,3,103,0,0,0,0,6,33,3,79],[0,0,0,0,6,6,4,59,0,0,0,0,0,101,4,53,0,0,9,198,0,0,97,61,0,0,0,248,7,64,2,16],[0,0,5,17,8,0,0,65,0,0,0,0,4,4,0,75,0,0,0,0,8,7,192,25,0,0,5,65,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,5,170,0,0,65,61,0,0,0,128,6,80,2,112],[0,0,5,66,7,80,0,156,0,0,0,0,6,5,160,25,0,0,5,66,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,16,9,96,0,156,0,0,0,0,8,7,160,25],[0,0,0,64,7,96,2,112,0,0,5,16,9,96,0,156,0,0,0,0,7,6,160,25,0,0,0,4,9,128,1,191],[0,0,5,8,6,112,0,156,0,0,0,0,9,8,160,25,0,0,0,32,8,112,2,112,0,0,5,8,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,16,9,112,0,156],[0,0,19,58,0,0,33,61,0,0,0,1,8,128,1,144,0,0,19,58,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,139,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,131,0,0,65,61,0,0,0,0,8,0,0,75],[0,0,4,141,0,0,97,61,0,0,0,0,8,4,4,51,0,0,0,0,8,8,0,75,0,0,9,198,0,0,97,61],[0,0,0,0,8,7,4,51,0,0,5,65,8,128,1,151,0,0,0,248,9,96,2,16,0,0,0,0,8,137,1,159],[0,0,5,67,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,5,186,0,0,1,61,0,0,5,64,1,48,0,156,0,0,19,58,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,18,1,0,3,103,0,0,0,0,6,33,3,79,0,0,0,0,6,6,4,59,0,0,0,0,0,101,4,53],[0,0,9,198,0,0,97,61,0,0,0,248,7,64,2,16,0,0,5,17,8,0,0,65,0,0,0,0,4,4,0,75],[0,0,0,0,8,7,192,25,0,0,5,65,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,6,8,0,0,65,61,0,0,0,128,6,80,2,112,0,0,5,66,7,80,0,156,0,0,0,0,6,5,160,25],[0,0,5,66,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,16,9,96,0,156,0,0,0,0,8,7,160,25,0,0,0,64,7,96,2,112,0,0,5,16,9,96,0,156],[0,0,0,0,7,6,160,25,0,0,0,4,9,128,1,191,0,0,5,8,6,112,0,156,0,0,0,0,9,8,160,25],[0,0,0,32,8,112,2,112,0,0,5,8,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,16,9,112,0,156,0,0,19,58,0,0,33,61,0,0,0,1,8,128,1,144],[0,0,19,58,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,233,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,225,0,0,65,61,0,0,0,0,8,0,0,75,0,0,4,235,0,0,97,61,0,0,0,0,8,4,4,51],[0,0,0,0,8,8,0,75,0,0,9,198,0,0,97,61,0,0,0,0,8,7,4,51,0,0,5,65,8,128,1,151],[0,0,0,248,9,96,2,16,0,0,0,0,8,137,1,159,0,0,5,67,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,6,24,0,0,1,61,0,0,5,64,7,16,0,156],[0,0,19,58,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,5,4,59,0,0,0,0,0,135,4,53,0,0,9,198,0,0,97,61],[0,0,0,248,9,96,2,16,0,0,5,17,10,0,0,65,0,0,0,0,6,6,0,75,0,0,0,0,10,9,192,25],[0,0,5,65,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,8,96,0,0,65,61,0,0,0,128,7,96,2,112,0,0,5,66,8,96,0,156,0,0,0,0,7,6,160,25],[0,0,5,66,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,16,10,112,0,156,0,0,0,0,9,8,160,25,0,0,0,64,8,112,2,112,0,0,5,16,10,112,0,156],[0,0,0,0,8,7,160,25,0,0,0,4,10,144,1,191,0,0,5,8,7,128,0,156,0,0,0,0,10,9,160,25],[0,0,0,32,9,128,2,112,0,0,5,8,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,16,10,128,0,156,0,0,19,58,0,0,33,61,0,0,0,1,9,144,1,144],[0,0,19,58,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,5,68,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,5,60,0,0,65,61],[0,0,0,0,9,0,0,75,0,0,5,70,0,0,97,61,0,0,0,0,9,2,4,51,0,0,0,0,9,9,0,75],[0,0,9,198,0,0,97,61,0,0,0,0,9,8,4,51,0,0,5,65,9,144,1,151,0,0,0,248,10,112,2,16],[0,0,0,0,9,154,1,159,0,0,5,67,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,8,111,0,0,1,61,0,0,5,8,1,0,0,65,0,0,5,8,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,0,9,2,0,0,41],[20,28,20,13,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,5,8,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,5,111,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,5,103,0,0,65,61,0,0,0,0,7,5,0,75],[0,0,5,126,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,19,0,0,0,1,3,85],[0,0,0,1,2,32,1,144,0,0,6,102,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,57,0,0,65,61],[0,0,0,128,4,0,4,61,0,0,0,8,4,64,0,108,0,0,4,34,0,0,129,61,0,0,0,160,4,80,0,57],[0,0,5,40,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,41,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,253,0,0,193,61,0,0,0,1,2,0,0,57,0,0,5,16,4,48,0,156],[0,0,19,58,0,0,33,61,0,0,9,17,0,0,1,61,0,0,5,64,6,64,0,156,0,0,19,58,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,7,4,59,0,0,0,0,0,118,4,53,0,0,9,198,0,0,97,61],[0,0,0,248,8,80,2,16,0,0,5,17,9,0,0,65,0,0,0,0,5,5,0,75,0,0,0,0,9,8,192,25],[0,0,5,65,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,9,95,0,0,65,61,0,0,0,128,8,112,2,112,0,0,5,66,9,112,0,156],[0,0,0,0,8,7,160,25,0,0,5,66,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,16,11,128,0,156,0,0,0,0,10,9,160,25,0,0,0,64,9,128,2,112],[0,0,5,16,11,128,0,156,0,0,0,0,9,8,160,25,0,0,0,4,11,160,1,191,0,0,5,8,8,144,0,156],[0,0,0,0,11,10,160,25,0,0,0,32,10,144,2,112,0,0,5,8,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,16,11,144,0,156,0,0,19,58,0,0,33,61],[0,0,0,1,10,160,1,144,0,0,19,58,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,246,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,238,0,0,65,61,0,0,0,0,10,0,0,75,0,0,5,248,0,0,97,61],[0,0,0,0,10,5,4,51,0,0,0,0,10,10,0,75,0,0,9,198,0,0,97,61,0,0,0,0,10,9,4,51],[0,0,5,65,10,160,1,151,0,0,0,248,11,128,2,16,0,0,0,0,10,171,1,159,0,0,5,67,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,9,111,0,0,1,61],[0,0,5,64,6,64,0,156,0,0,19,58,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,7,4,59],[0,0,0,0,0,118,4,53,0,0,9,198,0,0,97,61,0,0,0,248,8,80,2,16,0,0,5,17,9,0,0,65],[0,0,0,0,5,5,0,75,0,0,0,0,9,8,192,25,0,0,5,65,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,188,0,0,65,61],[0,0,0,128,8,96,2,112,0,0,5,66,9,96,0,156,0,0,0,0,8,6,160,25,0,0,5,66,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,16,11,128,0,156],[0,0,0,0,10,9,160,25,0,0,0,64,9,128,2,112,0,0,5,16,11,128,0,156,0,0,0,0,9,8,160,25],[0,0,0,4,11,160,1,191,0,0,5,8,8,144,0,156,0,0,0,0,11,10,160,25,0,0,0,32,10,144,2,112],[0,0,5,8,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,16,11,144,0,156,0,0,19,58,0,0,33,61,0,0,0,1,10,160,1,144,0,0,19,58,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,6,84,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,6,76,0,0,65,61],[0,0,0,0,10,0,0,75,0,0,6,86,0,0,97,61,0,0,0,0,10,5,4,51,0,0,0,0,10,10,0,75],[0,0,9,198,0,0,97,61,0,0,0,0,10,9,4,51,0,0,5,65,10,160,1,151,0,0,0,248,11,128,2,16],[0,0,0,0,10,171,1,159,0,0,5,67,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,10,129,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,115,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,107,0,0,65,61,0,0,0,0,6,4,0,75],[0,0,6,130,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,8,1,0,0,65,0,0,5,8,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,30,0,1,4,48,0,0,0,0,1,49,3,223,0,0,0,192,2,32,2,16,0,0,5,31,2,32,1,151],[0,0,5,33,2,32,1,199,0,2,0,0,0,33,3,181,0,0,0,0,1,33,3,175,0,0,128,16,2,0,0,57],[20,28,20,23,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,1,5,8,0,48,1,157],[0,0,5,8,5,48,1,151,0,19,0,0,0,1,3,85,0,0,0,1,2,32,1,144,0,0,9,202,0,0,97,61],[0,0,0,63,2,80,0,57,0,0,5,61,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,16,4,32,0,156],[0,0,19,58,0,0,33,61,0,0,0,1,3,48,1,144,0,0,19,58,0,0,193,61,0,0,0,64,0,32,4,63],[0,0,0,0,4,86,4,54,0,0,0,18,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,180,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,172,0,0,65,61],[0,0,0,0,7,0,0,75,0,0,6,182,0,0,97,61,0,0,0,31,7,80,1,143,0,0,0,5,5,80,2,114],[0,0,6,194,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,186,0,0,65,61,0,0,0,0,8,7,0,75,0,0,6,209,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,10,4,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,17,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,17,5,80,1,151,0,0,5,17,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,17,5,80,0,156],[0,0,0,0,6,7,192,25,0,0,0,0,5,6,0,75,0,0,1,57,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,16,4,80,0,156,0,0,1,57,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,17,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,17,3,48,1,151,0,0,5,17,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,17,3,48,0,156,0,0,0,0,1,7,192,25],[0,0,0,0,1,1,0,75,0,0,1,57,0,0,193,61,0,0,0,64,1,0,4,61,0,0,0,32,3,16,0,57],[0,0,5,74,5,80,1,152,0,0,7,12,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,7,4,0,0,65,61],[0,0,0,0,2,0,0,75,0,0,7,14,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,16,5,32,0,156,0,0,19,58,0,0,33,61],[0,0,0,1,4,64,1,144,0,0,19,58,0,0,193,61,0,0,0,64,0,32,4,63,0,0,5,8,2,0,0,65],[0,0,5,8,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,8,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,8,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,19,1,16,1,199,0,0,128,16,2,0,0,57,20,28,20,13,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,1,57,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,18,3,0,3,103],[0,0,0,0,4,67,3,79,0,0,0,0,4,4,4,59,0,0,5,17,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,17,5,80,1,151,0,0,5,17,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,17,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,57,0,0,193,61,0,0,0,9,4,64,0,41,0,0,0,0,1,67,3,79,0,0,0,0,1,1,4,59],[0,0,5,16,5,16,0,156,0,0,1,57,0,0,33,61,0,0,0,0,6,18,0,73,0,0,0,32,5,64,0,57],[0,0,5,17,4,0,0,65,0,0,0,0,7,101,0,75,0,0,0,0,7,0,0,25,0,0,0,0,7,4,32,25],[0,0,5,17,6,96,1,151,0,0,5,17,8,80,1,151,0,0,0,0,9,104,0,75,0,0,0,0,4,0,128,25],[0,0,0,0,6,104,1,63,0,0,5,17,6,96,0,156,0,0,0,0,4,7,192,25,0,0,0,0,4,4,0,75],[0,0,1,57,0,0,193,61,0,0,5,8,6,80,1,151,0,0,0,0,4,0,4,20,0,2,0,0,0,99,3,85],[0,0,0,0,5,81,0,25,0,0,0,0,1,21,0,75,0,0,0,0,1,0,0,25,0,0,0,1,1,0,64,57],[0,0,0,1,1,16,1,144,0,0,18,29,0,0,193,61,0,0,0,0,1,82,0,75,0,0,18,29,0,0,65,61],[0,0,0,0,1,99,3,79,0,0,0,0,2,82,0,73,0,0,5,8,2,32,1,151,0,2,0,0,0,33,3,229],[0,0,5,8,3,64,0,156,0,0,2,171,0,0,33,61,0,0,0,0,1,33,3,223,0,0,0,192,2,64,2,16],[0,0,5,31,2,32,1,151,0,0,5,33,2,32,1,199,0,2,0,0,0,33,3,181,0,0,0,0,1,33,3,175],[0,0,128,16,2,0,0,57,20,28,20,23,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,1,5,8,0,48,1,157,0,0,5,8,3,48,1,151,0,19,0,0,0,1,3,85,0,0,0,1,2,32,1,144],[0,0,17,47,0,0,97,61,0,0,0,63,2,48,0,57,0,0,5,61,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,16,6,32,0,156,0,0,19,58,0,0,33,61,0,0,0,1,4,64,1,144,0,0,19,58,0,0,193,61],[0,0,0,64,0,32,4,63,0,0,0,0,2,53,4,54,0,0,0,18,4,0,3,103,0,0,0,31,6,48,0,57],[0,0,0,5,6,96,2,114,0,0,7,148,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,140,0,0,65,61],[0,0,0,0,6,0,0,75,0,0,7,150,0,0,97,61,0,0,0,31,6,48,1,143,0,0,0,5,3,48,2,114],[0,0,7,162,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,154,0,0,65,61,0,0,0,0,7,6,0,75,0,0,7,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,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,10,4,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,76,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,77,3,16,0,156,0,0,19,58,0,0,33,61,0,0,1,224,3,16,0,57,0,0,0,64,0,48,4,63],[0,0,5,8,4,0,0,65,0,0,5,8,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,8,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,8,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,19,1,16,1,199,0,0,128,16,2,0,0,57],[20,28,20,13,0,0,4,15,0,0,0,1,2,32,1,144,0,0,1,57,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,62,1,0,0,65],[0,0,0,0,0,16,4,57,0,0,0,0,1,0,4,20,0,0,5,8,2,16,0,156,0,0,5,8,1,0,128,65],[0,0,0,192,1,16,2,16,0,0,5,63,1,16,1,199,0,0,128,11,2,0,0,57,20,28,20,13,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,18,65,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,78,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,79,3,0,0,65,0,0,0,0,0,49,4,53],[0,0,0,64,1,64,0,57,0,0,5,80,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,81,1,64,0,156,0,0,19,58,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,8,1,0,0,65,0,0,5,8,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,8,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,8,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,19,1,16,1,199,0,0,128,16,2,0,0,57,20,28,20,13,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,1,57,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,82,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,47,3,16,0,156,0,0,19,58,0,0,33,61,0,0,0,128,3,16,0,57],[0,0,0,64,0,48,4,63,0,0,5,8,3,0,0,65,0,0,5,8,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,8,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,8,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,17,249,0,0,1,61],[0,0,5,64,7,32,0,156,0,0,19,58,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,5,4,59,0,0,0,0,0,135,4,53],[0,0,9,198,0,0,97,61,0,0,0,248,9,96,2,16,0,0,5,17,10,0,0,65,0,0,0,0,6,6,0,75],[0,0,0,0,10,9,192,25,0,0,5,65,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,8,126,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,8,119,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,8,139,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,8,132,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,16,2,32,0,156,0,0,19,58,0,0,33,61,0,0,0,1,1,16,1,144,0,0,19,58,0,0,193,61],[0,0,0,5,1,0,0,41,0,0,0,64,0,16,4,63,0,0,5,64,1,16,0,156,0,0,19,58,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,68,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,11,44,0,0,65,61,0,0,0,128,6,32,2,112,0,0,5,66,7,32,0,156],[0,0,0,0,6,2,160,25,0,0,5,66,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,16,9,96,0,156,0,0,0,0,8,7,160,25,0,0,0,64,7,96,2,112],[0,0,5,16,9,96,0,156,0,0,0,0,7,6,160,25,0,0,0,4,9,128,1,191,0,0,5,8,6,112,0,156],[0,0,0,0,9,8,160,25,0,0,0,32,8,112,2,112,0,0,5,8,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,16,9,112,0,156,0,0,19,58,0,0,33,61,0,0,0,1,8,128,1,144],[0,0,19,58,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,8,233,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,8,225,0,0,65,61,0,0,0,0,8,0,0,75,0,0,8,235,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,9,198,0,0,97,61,0,0,0,0,8,7,4,51],[0,0,5,65,8,128,1,151,0,0,0,248,9,96,2,16,0,0,0,0,8,137,1,159,0,0,5,67,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,11,61,0,0,1,61,0,0,5,8,1,0,0,65,0,0,5,8,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,8,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,28,20,8,0,0,4,15,0,5,0,96,0,0,0,61,0,0,0,1,2,32,1,143,0,19,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,8,0,48,1,157,0,0,5,8,3,48,1,152],[0,0,9,61,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,16,6,64,0,156,0,0,19,58,0,0,33,61],[0,0,0,1,5,80,1,144,0,0,19,58,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,9,45,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,9,37,0,0,65,61,0,10,0,0,0,8,0,29,0,0,0,0,5,4,0,75,0,0,9,61,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,229,0,0,193,61,0,0,0,0,2,1,0,75,0,0,9,87,0,0,193,61,0,0,0,64,4,0,4,61],[0,10,0,0,0,4,0,29,0,0,5,22,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,28,19,250,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,8,2,0,0,65],[0,0,5,8,3,16,0,156,0,0,0,0,1,2,128,25,0,0,0,10,4,0,0,41,0,0,5,8,3,64,0,156],[0,0,0,0,4,2,128,25,0,0,0,64,2,64,2,16,0,0,2,89,0,0,1,61,0,0,5,64,8,80,0,156],[0,0,19,58,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,9,4,59,0,0,0,0,0,152,4,53],[0,0,9,198,0,0,97,61,0,0,0,248,10,112,2,16,0,0,5,17,11,0,0,65,0,0,0,0,7,7,0,75],[0,0,0,0,11,10,192,25,0,0,5,65,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,10,11,0,0,65,61,0,0,0,128,9,128,2,112,0,0,5,66,10,128,0,156],[0,0,0,0,9,8,160,25,0,0,5,66,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,16,12,144,0,156,0,0,0,0,11,10,160,25,0,0,0,64,10,144,2,112],[0,0,5,16,12,144,0,156,0,0,0,0,10,9,160,25,0,0,0,4,12,176,1,191,0,0,5,8,9,160,0,156],[0,0,0,0,12,11,160,25,0,0,0,32,11,160,2,112,0,0,5,8,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,16,12,160,0,156,0,0,19,58,0,0,33,61],[0,0,0,1,11,176,1,144,0,0,19,58,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,9,170,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,162,0,0,65,61,0,0,0,0,11,0,0,75,0,0,9,172,0,0,97,61],[0,0,0,0,11,7,4,51,0,0,0,0,11,11,0,75,0,0,9,198,0,0,97,61,0,0,0,0,11,10,4,51],[0,0,5,65,11,176,1,151,0,0,0,248,12,144,2,16,0,0,0,0,11,188,1,159,0,0,5,67,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,10,27,0,0,1,61],[0,0,5,64,8,80,0,156,0,0,19,58,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,9,4,59],[0,0,0,0,0,152,4,53,0,0,10,123,0,0,193,61,0,0,5,94,1,0,0,65,0,0,0,0,0,16,4,53],[0,0,0,50,1,0,0,57,0,0,0,81,0,0,1,61,0,0,0,31,3,80,1,143,0,0,0,5,2,80,2,114],[0,0,9,213,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,206,0,0,65,61,0,0,0,0,4,3,0,75,0,0,9,227,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,30,0,1,4,48,0,0,0,0,2,1,0,75,0,0,11,135,0,0,193,61,0,0,5,42,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,8,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,5,8,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,5,43,1,16,1,199,0,0,128,2,2,0,0,57,20,28,20,13,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,18,65,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75,0,0,11,131,0,0,193,61],[0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57,0,0,5,51,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,22,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,2,189,0,0,1,61],[0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57,0,0,5,75,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,2,184,0,0,1,61,0,0,5,64,9,112,0,156],[0,0,19,58,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,10,4,59,0,0,0,0,0,169,4,53],[0,0,9,198,0,0,97,61,0,0,0,248,11,128,2,16,0,0,5,17,12,0,0,65,0,0,0,0,8,8,0,75],[0,0,0,0,12,11,192,25,0,0,5,65,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,64,8,144,0,156,0,0,19,58,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,68,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,152,0,0,65,61,0,0,0,8,6,0,0,41],[0,0,0,128,10,96,2,112,0,0,5,66,11,96,0,156,0,0,0,0,10,6,160,25,0,0,5,66,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,16,13,160,0,156],[0,0,0,0,12,11,160,25,0,0,0,64,11,160,2,112,0,0,5,16,13,160,0,156,0,0,0,0,11,10,160,25],[0,0,0,4,13,192,1,191,0,0,5,8,10,176,0,156,0,0,0,0,13,12,160,25,0,0,0,32,12,176,2,112],[0,0,5,8,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,16,13,176,0,156,0,0,19,58,0,0,33,61,0,0,0,1,12,192,1,144,0,0,19,58,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,104,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,10,96,0,0,65,61],[0,0,0,0,6,0,0,75,0,0,10,106,0,0,97,61,0,0,0,0,6,8,4,51,0,0,0,0,6,6,0,75],[0,0,9,198,0,0,97,61,0,0,0,0,6,11,4,51,0,0,5,65,6,96,1,151,0,0,0,248,12,160,2,16],[0,0,0,0,6,108,1,159,0,0,5,67,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,170,0,0,1,61,0,0,0,248,10,96,2,16],[0,0,5,17,11,0,0,65,0,0,0,0,6,6,0,75,0,0,0,0,11,10,192,25,0,0,5,65,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,206,0,0,65,61],[0,0,0,128,9,128,2,112,0,0,5,66,10,128,0,156,0,0,0,0,9,8,160,25,0,0,5,66,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,16,12,144,0,156],[0,0,0,0,11,10,160,25,0,0,0,64,10,144,2,112,0,0,5,16,12,144,0,156,0,0,0,0,10,9,160,25],[0,0,0,4,12,176,1,191,0,0,5,8,9,160,0,156,0,0,0,0,12,11,160,25,0,0,0,32,11,160,2,112],[0,0,5,8,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,16,12,160,0,156,0,0,19,58,0,0,33,61,0,0,0,1,11,176,1,144,0,0,19,58,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,10,188,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,180,0,0,65,61],[0,0,0,0,11,0,0,75,0,0,10,190,0,0,97,61,0,0,0,0,11,6,4,51,0,0,0,0,11,11,0,75],[0,0,9,198,0,0,97,61,0,0,0,0,11,10,4,51,0,0,5,65,11,176,1,151,0,0,0,248,12,144,2,16],[0,0,0,0,11,188,1,159,0,0,5,67,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,222,0,0,1,61,0,0,5,64,9,96,0,156,0,0,19,58,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,10,4,59,0,0,0,0,0,169,4,53,0,0,9,198,0,0,97,61],[0,0,0,248,11,128,2,16,0,0,5,17,12,0,0,65,0,0,0,0,8,8,0,75,0,0,0,0,12,11,192,25],[0,0,5,65,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,11,189,0,0,65,61,0,0,0,128,10,144,2,112,0,0,5,66,11,144,0,156,0,0,0,0,10,9,160,25],[0,0,5,66,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,16,13,160,0,156,0,0,0,0,12,11,160,25,0,0,0,64,11,160,2,112,0,0,5,16,13,160,0,156],[0,0,0,0,11,10,160,25,0,0,0,4,13,192,1,191,0,0,5,8,10,176,0,156,0,0,0,0,13,12,160,25],[0,0,0,32,12,176,2,112,0,0,5,8,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,16,13,176,0,156,0,0,19,58,0,0,33,61,0,0,0,1,12,192,1,144],[0,0,19,58,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,25,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,11,17,0,0,65,61,0,0,0,0,7,0,0,75,0,0,11,27,0,0,97,61,0,0,0,0,7,8,4,51],[0,0,0,0,7,7,0,75,0,0,9,198,0,0,97,61,0,0,0,0,7,11,4,51,0,0,5,65,7,112,1,151],[0,0,0,248,12,160,2,16,0,0,0,0,7,124,1,159,0,0,5,67,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,11,206,0,0,1,61],[0,0,0,4,6,0,0,41,0,0,5,64,6,96,0,156,0,0,19,58,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,5,4,59,0,0,0,0,0,118,4,53,0,0,9,198,0,0,97,61,0,0,0,248,8,32,2,16],[0,0,5,17,9,0,0,65,0,0,0,0,2,2,0,75,0,0,0,0,9,8,192,25,0,0,5,65,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,17,7,96,1,151],[0,0,5,17,8,32,1,151,0,0,5,17,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,17,7,112,0,156,0,0,0,0,10,9,192,25,0,0,0,0,7,10,0,75,0,0,1,57,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,16,9,112,0,156],[0,0,1,57,0,0,33,61,0,0,0,0,9,116,0,73,0,0,0,32,8,128,0,57,0,0,5,17,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,17,9,144,1,151],[0,0,5,17,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,17,9,144,0,156,0,0,0,0,10,11,192,25,0,0,0,0,9,10,0,75,0,0,1,57,0,0,193,61],[0,0,0,1,9,112,0,140,0,0,14,78,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,17,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,17,5,80,1,151,0,0,5,17,9,80,0,156,0,0,0,0,8,0,128,25],[0,0,5,17,5,80,1,103,0,0,5,17,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,14,136,0,0,193,61,0,0,0,64,5,0,4,61,0,3,0,0,0,5,0,29],[0,0,5,64,5,80,0,156,0,0,19,58,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,67,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,14,136,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,170,0,0,97,61,0,0,5,17,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,17,1,16,1,151],[0,0,0,0,4,1,0,75,0,0,0,0,2,0,160,25,0,0,5,17,1,16,0,156,0,0,0,0,2,3,192,25],[0,0,0,0,1,2,0,75,0,0,1,57,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,57,0,0,193,61,0,0,0,0,1,1,0,75,0,0,11,170,0,0,193,61,0,0,0,64,1,0,4,61],[0,0,0,100,2,16,0,57,0,0,5,49,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,68,2,16,0,57],[0,0,5,50,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,22,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,28,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,38,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,12,49,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,12,99,0,0,1,61,0,0,5,64,7,128,0,156,0,0,19,58,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,11,7,4,59,0,0,0,0,0,186,4,53,0,0,9,198,0,0,97,61,0,0,0,248,7,144,2,16],[0,0,5,17,12,0,0,65,0,0,0,0,9,9,0,75,0,0,0,0,12,7,192,25,0,0,5,65,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,64,7,160,0,156],[0,0,19,58,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,68,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,13,116,0,0,65,61,0,0,0,8,7,0,0,41,0,0,0,128,11,112,2,112],[0,0,5,66,12,112,0,156,0,0,0,0,11,7,160,25,0,0,5,66,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,16,14,176,0,156,0,0,0,0,13,12,160,25],[0,0,0,64,12,176,2,112,0,0,5,16,14,176,0,156,0,0,0,0,12,11,160,25,0,0,0,4,14,208,1,191],[0,0,5,8,11,192,0,156,0,0,0,0,14,13,160,25,0,0,0,32,13,192,2,112,0,0,5,8,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,16,14,192,0,156,0,0,19,58,0,0,33,61,0,0,0,1,13,208,1,144,0,0,19,58,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,12,29,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,12,21,0,0,65,61,0,0,0,0,7,0,0,75,0,0,12,31,0,0,97,61,0,0,0,0,7,9,4,51],[0,0,0,0,7,7,0,75,0,0,9,198,0,0,97,61,0,0,0,0,7,12,4,51,0,0,5,65,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,67,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,13,134,0,0,1,61,0,0,5,8,2,0,0,65,0,0,5,8,3,16,0,156,0,0,0,0,1,2,128,25],[0,0,0,10,4,0,0,41,0,0,5,8,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,44,1,16,1,199,0,0,0,9,2,0,0,41],[20,28,20,13,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,8,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,12,80,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,12,72,0,0,65,61],[0,0,0,0,7,5,0,75,0,0,12,95,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,19,0,0,0,1,3,85,0,0,0,1,2,32,1,144,0,0,13,87,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,16,4,16,0,156,0,0,19,58,0,0,33,61,0,0,0,1,2,32,1,144],[0,0,19,58,0,0,193,61,0,0,0,64,0,16,4,63,0,0,0,32,2,48,0,140,0,0,1,57,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,14,66,0,0,193,61,0,0,0,32,2,16,0,57,0,0,5,40,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,47,4,16,0,156],[0,0,19,58,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,48,4,16,0,156,0,0,19,58,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,41,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,63,0,0,193,61],[0,0,0,1,2,0,0,57,0,0,5,16,1,48,0,156,0,0,19,58,0,0,33,61,0,0,15,85,0,0,1,61],[0,0,5,64,6,128,0,156,0,0,19,58,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,11,6,4,59],[0,0,0,0,0,186,4,53,0,0,9,198,0,0,97,61,0,0,0,8,13,0,0,41,0,0,0,248,6,208,2,16],[0,0,5,17,12,0,0,65,0,0,0,0,13,13,0,75,0,0,0,0,12,6,192,25,0,0,5,65,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,183,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,176,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,198,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,191,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,213,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,206,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,228,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,221,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,243,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,236,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,13,2,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,251,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,16,5,112,0,156,0,0,19,58,0,0,33,61],[0,0,0,1,4,64,1,144,0,0,19,58,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,17,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,17,5,80,1,151,0,0,5,17,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,17,5,80,0,156,0,0,0,0,8,9,192,25],[0,0,0,0,5,8,0,75,0,0,1,57,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,16,8,64,0,156,0,0,1,57,0,0,33,61,0,0,0,0,8,66,0,73],[0,0,0,32,5,80,0,57,0,0,5,17,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,17,8,128,1,151,0,0,5,17,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,17,8,128,0,156,0,0,0,0,9,10,192,25],[0,0,0,0,8,9,0,75,0,0,1,57,0,0,193,61,0,0,0,1,8,64,0,140,0,0,15,161,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,17,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,17,8,128,1,151],[0,0,5,17,11,128,0,156,0,0,0,0,10,0,128,25,0,0,5,17,8,128,1,103,0,0,5,17,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,16,59,0,0,193,61],[0,0,5,64,8,112,0,156,0,0,19,58,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,67,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,16,59,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,100,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,92,0,0,65,61],[0,0,0,0,6,4,0,75,0,0,13,115,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,130,0,0,1,61],[0,0,5,64,7,144,0,156,0,0,19,58,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,12,7,4,59],[0,0,0,0,0,203,4,53,0,0,9,198,0,0,97,61,0,0,0,8,14,0,0,41,0,0,0,248,7,224,2,16],[0,0,5,17,13,0,0,65,0,0,0,0,14,14,0,75,0,0,0,0,13,7,192,25,0,0,5,65,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,13,147,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,13,140,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,13,162,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,13,155,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,13,177,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,13,170,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,13,192,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,13,185,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,13,207,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,13,200,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,13,222,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,13,215,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,13,237,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,13,230,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,16,5,96,0,156,0,0,19,58,0,0,33,61,0,0,0,1,4,64,1,144],[0,0,19,58,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,17,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,17,5,80,1,151,0,0,5,17,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,17,5,80,0,156,0,0,0,0,8,9,192,25,0,0,0,0,5,8,0,75],[0,0,1,57,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,16,8,64,0,156,0,0,1,57,0,0,33,61,0,0,0,0,8,66,0,73,0,0,0,32,5,80,0,57],[0,0,5,17,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,17,8,128,1,151,0,0,5,17,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,17,8,128,0,156,0,0,0,0,9,10,192,25,0,0,0,0,8,9,0,75],[0,0,1,57,0,0,193,61,0,0,0,1,8,64,0,140,0,0,17,74,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,17,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,17,8,128,1,151,0,0,5,17,11,128,0,156],[0,0,0,0,10,0,128,25,0,0,5,17,8,128,1,103,0,0,5,17,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,19,55,0,0,193,61,0,0,5,64,8,96,0,156],[0,0,19,58,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,67,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,19,55,0,0,1,61,0,0,5,22,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,45,2,0,0,65,0,0,0,0,0,36,4,53,0,0,0,100,2,16,0,57],[0,0,5,46,3,0,0,65,0,0,1,28,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,14,120,0,0,65,61,0,0,0,32,9,112,2,112,0,0,5,8,8,112,0,156],[0,0,0,0,9,7,160,25,0,0,5,8,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,64,10,160,0,156,0,0,19,58,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,5,4,59,0,0,0,0,0,89,4,53,0,0,9,198,0,0,97,61],[0,0,5,65,5,80,1,151,0,0,0,248,10,128,2,16,0,0,0,0,5,90,1,159,0,0,5,69,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,14,136,0,0,1,61],[0,0,0,3,8,0,0,41,0,0,5,64,8,128,0,156,0,0,19,58,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,5,4,59,0,0,0,0,0,88,4,53,0,0,9,198,0,0,97,61,0,0,0,248,7,112,2,16],[0,0,5,65,5,80,1,151,0,0,0,0,5,117,1,159,0,0,5,17,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,232,0,0,193,61,0,0,5,17,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,17,6,96,1,151,0,0,5,17,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,17,6,96,0,156],[0,0,0,0,5,7,192,25,0,0,0,0,5,5,0,75,0,0,1,57,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,16,11,32,0,156,0,0,1,57,0,0,33,61,0,0,0,0,11,36,0,73,0,0,0,32,5,80,0,57],[0,0,5,17,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,17,11,176,1,151,0,0,5,17,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,17,11,176,0,156,0,0,0,0,12,13,192,25,0,0,0,0,11,12,0,75],[0,0,1,57,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,16,6,96,1,151,0,0,0,56,8,96,0,140,0,0,16,122,0,0,65,61],[0,0,0,32,9,96,2,112,0,0,5,8,8,96,0,156,0,0,0,0,9,6,160,25,0,0,5,8,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,64,10,112,0,156,0,0,19,58,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,9,4,59,0,0,0,0,0,148,4,53],[0,0,9,198,0,0,97,61,0,0,5,65,9,144,1,151,0,0,0,248,10,128,2,16,0,0,0,0,9,154,1,159],[0,0,5,71,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,137,0,0,1,61],[0,0,5,62,1,0,0,65,0,0,0,0,0,16,4,57,0,0,5,8,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,5,8,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,5,63,1,16,1,199],[0,0,128,11,2,0,0,57,20,28,20,13,0,0,4,15,0,0,0,1,2,32,1,144,0,0,18,65,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,200,0,0,65,61],[0,0,0,128,3,16,2,112,0,0,5,66,4,16,0,156,0,0,0,0,3,1,160,25,0,0,5,66,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,16,6,48,0,156],[0,0,0,0,5,4,160,25,0,0,0,64,4,48,2,112,0,0,5,16,6,48,0,156,0,0,0,0,4,3,160,25],[0,0,0,4,3,80,1,191,0,0,5,8,6,64,0,156,0,0,0,0,3,5,160,25,0,0,0,32,6,64,2,112],[0,0,5,8,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,16,6,48,0,156],[0,0,19,58,0,0,33,61,0,0,0,1,4,64,1,144,0,0,19,58,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,18,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,45,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,37,0,0,65,61,0,0,0,0,7,0,0,75,0,0,15,47,0,0,97,61,0,0,0,0,7,2,4,51],[0,0,0,0,7,7,0,75,0,0,9,198,0,0,97,61,0,0,0,0,7,6,4,51,0,0,5,65,7,112,1,151],[0,0,0,248,8,80,2,16,0,0,0,0,7,120,1,159,0,0,5,67,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,218,0,0,1,61,0,0,5,8,3,0,0,65],[0,0,5,8,5,32,0,156,0,0,0,0,2,3,128,25,0,0,0,64,2,32,2,16,0,0,5,8,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,8,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,28,20,8,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,19,0,0,0,1,3,85,0,0,0,96,1,16,2,112,0,1,5,8,0,16,1,157,0,0,5,8,3,16,1,152],[0,0,15,130,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,16,5,16,0,156,0,0,19,58,0,0,33,61],[0,0,0,1,4,64,1,144,0,0,19,58,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,19,4,0,3,103,0,0,0,5,3,48,2,114],[0,0,15,114,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,106,0,0,65,61,0,6,0,0,0,8,0,29,0,0,0,0,5,1,0,75],[0,0,15,130,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,255,0,0,193,61,0,0,0,0,2,1,0,75,0,0,16,117,0,0,193,61],[0,0,0,64,4,0,4,61,0,9,0,0,0,4,0,29,0,0,5,22,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,28,19,250,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,8,2,0,0,65,0,0,5,8,3,16,0,156,0,0,0,0,1,2,128,25,0,0,0,9,4,0,0,41],[0,0,9,91,0,0,1,61,0,0,0,56,8,64,0,140,0,0,16,43,0,0,65,61,0,0,0,32,9,64,2,112],[0,0,5,8,8,64,0,156,0,0,0,0,9,4,160,25,0,0,5,8,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,64,10,112,0,156,0,0,19,58,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,10,4,59,0,0,0,0,0,169,4,53,0,0,9,198,0,0,97,61],[0,0,5,65,10,160,1,151,0,0,0,248,11,128,2,16,0,0,0,0,10,171,1,159,0,0,5,69,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,16,59,0,0,1,61],[0,0,5,64,3,32,0,156,0,0,19,58,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,18,3,0,3,103],[0,0,0,0,6,67,3,79,0,0,0,0,6,6,4,59,0,0,0,0,0,101,4,53,0,0,9,198,0,0,97,61],[0,0,0,248,7,16,2,16,0,0,5,17,8,0,0,65,0,0,0,0,1,1,0,75,0,0,0,0,8,7,192,25],[0,0,5,65,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,232,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,225,0,0,65,61],[0,0,0,0,2,101,0,25,0,0,5,83,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,16,6,32,0,156],[0,0,19,58,0,0,33,61,0,0,0,1,5,80,1,144,0,0,19,58,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,14,142,0,0,1,61,0,0,0,0,2,1,0,75],[0,0,16,22,0,0,193,61,0,0,5,42,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,8,1,0,0,65,0,0,0,0,2,0,4,20,0,0,5,8,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,5,43,1,16,1,199,0,0,128,2,2,0,0,57],[20,28,20,13,0,0,4,15,0,0,0,1,2,32,1,144,0,0,18,65,0,0,97,61,0,0,0,0,1,1,4,59],[0,0,0,0,1,1,0,75,0,0,9,248,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,4,34,0,0,97,61,0,0,5,17,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,17,1,16,1,151,0,0,0,0,4,1,0,75],[0,0,0,0,2,0,160,25,0,0,5,17,1,16,0,156,0,0,0,0,2,3,192,25,0,0,0,0,1,2,0,75],[0,0,1,57,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,57,0,0,193,61],[0,0,0,0,1,1,0,75,0,0,4,34,0,0,193,61,0,0,11,155,0,0,1,61,0,0,5,64,8,112,0,156],[0,0,19,58,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,9,4,59,0,0,0,0,0,152,4,53],[0,0,9,198,0,0,97,61,0,0,0,248,10,64,2,16,0,0,5,65,9,144,1,151,0,0,0,0,9,169,1,159],[0,0,5,17,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,64,9,112,0,156,0,0,19,58,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,11,2,4,59],[0,0,0,0,0,185,4,53,0,0,9,198,0,0,97,61,0,0,5,65,2,176,1,151,0,0,5,70,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,16,9,144,1,151,0,0,0,56,13,144,0,140,0,0,17,113,0,0,65,61,0,0,0,32,13,144,2,112],[0,0,5,8,12,144,0,156,0,0,0,0,13,9,160,25,0,0,5,8,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,64,14,160,0,156,0,0,19,58,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,9,198,0,0,97,61,0,0,0,248,11,192,2,16],[0,0,0,0,2,43,1,159,0,0,5,71,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,17,126,0,0,1,61,0,0,5,8,2,0,0,65,0,0,5,8,3,16,0,156,0,0,0,0,1,2,128,25],[0,0,0,6,4,0,0,41,0,0,9,91,0,0,1,61,0,0,5,64,8,112,0,156,0,0,19,58,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,8,4,59,0,0,0,0,0,132,4,53,0,0,9,198,0,0,97,61],[0,0,5,65,8,128,1,151,0,0,0,248,6,96,2,16,0,0,0,0,6,134,1,159,0,0,5,70,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,150,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,143,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,166,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,159,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,182,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,175,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,198,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,191,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,214,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,207,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,230,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,223,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,247,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,239,0,0,65,61,0,0,0,0,10,7,0,75],[0,0,17,6,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,17,20,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,17,13,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,16,3,16,0,156],[0,0,19,58,0,0,33,61,0,0,0,1,2,32,1,144,0,0,19,58,0,0,193,61,0,0,0,64,0,16,4,63],[0,0,5,8,1,0,0,65,0,0,5,8,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,8,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,17,245,0,0,1,61,0,0,0,31,4,48,1,143],[0,0,0,5,2,48,2,114,0,0,17,58,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,51,0,0,65,61,0,0,0,0,5,4,0,75,0,0,17,72,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,30,0,1,4,48,0,0,0,56,8,64,0,140,0,0,19,39,0,0,65,61],[0,0,0,32,9,64,2,112,0,0,5,8,8,64,0,156,0,0,0,0,9,4,160,25,0,0,5,8,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,64,10,96,0,156,0,0,19,58,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,10,4,59,0,0,0,0,0,169,4,53],[0,0,9,198,0,0,97,61,0,0,5,65,10,160,1,151,0,0,0,248,11,128,2,16,0,0,0,0,10,171,1,159],[0,0,5,69,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,19,55,0,0,1,61,0,0,5,64,13,160,0,156,0,0,19,58,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,9,198,0,0,97,61,0,0,0,248,9,144,2,16,0,0,0,0,2,41,1,159],[0,0,5,70,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,72,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,17,142,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,17,135,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,17,157,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,17,150,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,17,172,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,17,165,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,17,189,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,17,181,0,0,65,61,0,0,0,0,11,6,0,75,0,0,17,204,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,17,218,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,17,211,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,16,4,16,0,156,0,0,19,58,0,0,33,61],[0,0,0,1,3,48,1,144,0,0,19,58,0,0,193,61,0,0,0,64,0,16,4,63,0,0,5,8,1,0,0,65],[0,0,5,8,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,8,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,5,8,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,19,1,16,1,199,0,0,128,16,2,0,0,57,20,28,20,13,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,1,57,0,0,97,61,0,0,0,18,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,18,1,16,1,152,0,5,0,0,0,4,0,29,0,0,18,33,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,18,20,0,0,97,61,0,0,0,0,101,82,0,217,0,0,0,0,4,69,0,75,0,0,18,29,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,29],[0,0,0,6,1,16,0,107,0,0,0,0,1,0,0,25,0,0,0,1,1,0,64,57,0,0,0,1,1,16,1,144],[0,0,18,38,0,0,97,61,0,0,5,94,1,0,0,65,0,0,0,0,0,16,4,53,0,0,0,17,1,0,0,57],[0,0,0,81,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,84,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,8,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,5,8,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,5,43,1,16,1,199],[0,0,128,10,2,0,0,57,20,28,20,13,0,0,4,15,0,0,0,1,2,32,1,144,0,0,18,65,0,0,97,61],[0,0,0,0,1,1,4,59,0,0,0,6,1,16,0,107,0,0,18,66,0,0,161,61,0,0,0,64,1,0,4,61],[0,0,0,100,2,16,0,57,0,0,5,92,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,68,2,16,0,57],[0,0,5,93,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,23,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,18,3,0,3,103],[0,0,0,0,1,19,3,79,0,0,0,0,1,1,4,59,0,0,5,17,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,17,2,32,1,151,0,0,5,17,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,17,2,32,0,156],[0,0,0,0,5,6,192,25,0,0,0,0,2,5,0,75,0,0,1,57,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,16,5,16,0,156,0,0,1,57,0,0,33,61],[0,0,0,0,5,20,0,73,0,0,0,32,6,32,0,57,0,0,5,17,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,17,5,80,1,151,0,0,5,17,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,17,5,80,0,156],[0,0,0,0,2,7,192,25,0,0,0,0,2,2,0,75,0,0,1,57,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,16,8,80,0,156],[0,0,19,58,0,0,33,61,0,0,0,1,7,112,1,144,0,0,19,58,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,57,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,18,137,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,18,129,0,0,65,61,0,0,0,0,7,3,0,75,0,0,18,152,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,18,171,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,18,177,0,0,33,61,0,0,0,68,2,16,0,57,0,0,5,91,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,2,184,0,0,1,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,29,3,0,0,57],[0,0,2,184,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,86,5,32,0,156,0,0,18,188,0,0,65,61,0,0,0,68,2,16,0,57,0,0,5,90,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,2,184,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,8,2,0,0,65,0,0,0,0,3,0,4,20,0,0,5,8,4,48,0,156],[0,0,0,0,3,2,128,25,0,0,5,8,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,87,1,16,1,199,0,0,0,1,2,0,0,57],[20,28,20,13,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,5,8,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,18,226,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,18,219,0,0,65,61,0,0,0,0,6,5,0,75,0,0,18,240,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,19,0,0,0,1,3,85,0,0,0,64,4,0,4,61,0,0,0,1,2,32,1,144],[0,0,19,7,0,0,97,61,0,0,0,0,1,0,4,51,0,0,5,18,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,88,1,0,0,65,0,0,0,0,1,0,192,25],[0,0,0,0,0,20,4,53,0,0,5,8,1,0,0,65,0,0,5,8,2,64,0,156,0,0,0,0,4,1,128,25],[0,0,0,64,1,64,2,16,0,0,5,89,1,16,1,199,0,0,20,29,0,1,4,46,0,0,0,31,2,48,1,143],[0,0,0,5,5,48,2,114,0,0,19,19,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,19,11,0,0,65,61,0,0,0,0,6,2,0,75],[0,0,19,34,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,8,1,0,0,65,0,0,5,8,2,64,0,156],[0,0,0,0,4,1,128,25,0,0,0,64,1,64,2,16,0,0,6,134,0,0,1,61,0,0,5,64,8,96,0,156],[0,0,19,58,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,9,4,59,0,0,0,0,0,152,4,53],[0,0,9,198,0,0,97,61,0,0,0,248,10,64,2,16,0,0,5,65,9,144,1,151,0,0,0,0,9,169,1,159],[0,0,5,17,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,64,9,96,0,156,0,0,19,62,0,0,161,61,0,0,5,94,1,0,0,65,0,0,0,0,0,16,4,53],[0,0,0,65,1,0,0,57,0,0,0,81,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,11,2,4,59],[0,0,0,0,0,185,4,53,0,0,9,198,0,0,97,61,0,0,5,65,2,176,1,151,0,0,5,70,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,16,9,144,1,151,0,0,0,56,13,144,0,140,0,0,19,117,0,0,65,61,0,0,0,32,13,144,2,112],[0,0,5,8,12,144,0,156,0,0,0,0,13,9,160,25,0,0,5,8,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,64,14,160,0,156,0,0,19,58,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,9,198,0,0,97,61,0,0,0,248,11,192,2,16],[0,0,0,0,2,43,1,159,0,0,5,71,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,130,0,0,1,61,0,0,5,64,13,160,0,156,0,0,19,58,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,9,198,0,0,97,61,0,0,0,248,9,144,2,16,0,0,0,0,2,41,1,159],[0,0,5,70,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,19,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,146,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,139,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,161,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,154,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,176,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,169,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,193,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,185,0,0,65,61,0,0,0,0,11,7,0,75,0,0,19,208,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,222,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,215,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,16,4,16,0,156,0,0,19,58,0,0,33,61],[0,0,0,1,3,48,1,144,0,0,19,58,0,0,193,61,0,0,0,64,0,16,4,63,0,0,5,8,1,0,0,65],[0,0,5,8,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,8,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,17,245,0,0,1,61,0,0,0,0,4,3,0,75,0,0,20,4,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,253,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,20,11,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,20,16,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,21,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,20,26,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,28,0,0,4,50,0,0,20,29,0,1,4,46,0,0,20,30,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,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],[156,77,83,90,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],[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],[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],[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],[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],[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],[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],[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],[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],[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],[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,0,0,0,0,0,0,0,0,0,0,0,0,0],[123,9,174,214,17,35,121,18,1,120,40,210,252,224,88,7,87,230,120,117,80,34,1,169,203,222,160,152,112,237,204,243]],"evm_simulator_code":[[0,20,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,8,6,112,1,151,0,19,0,0,0,97,3,85,0,2,0,0,0,97,3,85,0,3,0,0,0,97,3,85],[0,4,0,0,0,97,3,85,0,5,0,0,0,97,3,85,0,6,0,0,0,97,3,85,0,7,0,0,0,97,3,85],[0,8,0,0,0,97,3,85,0,9,0,0,0,97,3,85,0,10,0,0,0,97,3,85,0,11,0,0,0,97,3,85],[0,12,0,0,0,97,3,85,0,13,0,0,0,97,3,85,0,14,0,0,0,97,3,85,0,15,0,0,0,97,3,85],[0,16,0,0,0,97,3,85,0,17,0,0,0,97,3,85,0,18,0,0,0,1,3,85,0,0,5,8,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,60,0,0,193,61],[0,0,0,4,2,96,0,140,0,0,0,68,0,0,65,61,0,0,0,0,2,1,4,59,0,0,0,224,2,32,2,112],[0,0,5,10,3,32,0,156,0,0,0,84,0,0,161,61,0,0,5,11,3,32,0,156,0,0,0,168,0,0,97,61],[0,0,5,12,3,32,0,156,0,0,0,215,0,0,97,61,0,0,5,13,2,32,0,156,0,0,0,70,0,0,193,61],[0,0,0,4,2,96,0,138,0,0,0,32,3,32,0,140,0,0,1,57,0,0,65,61,0,0,0,4,1,16,3,112],[0,0,0,0,1,1,4,59,0,0,5,16,3,16,0,156,0,0,1,57,0,0,33,61,0,0,0,0,1,18,0,73],[0,0,5,17,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,17,1,16,1,151,0,0,0,0,4,1,0,75,0,0,0,0,2,0,160,25,0,0,5,17,1,16,0,156],[0,0,0,0,2,3,192,25,0,0,0,0,1,2,0,75,0,0,4,34,0,0,97,61,0,0,1,57,0,0,1,61],[0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,1,57,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,9,1,0,0,65,0,0,20,29,0,1,4,46],[0,0,0,0,1,6,0,75,0,0,4,34,0,0,97,61,0,0,0,0,1,0,4,18,0,0,5,18,1,16,1,151],[0,0,0,0,2,0,4,16,0,0,0,0,1,33,0,75,0,0,4,34,0,0,193,61,0,0,0,0,1,0,4,17],[0,0,128,1,1,16,0,140,0,0,4,34,0,0,193,61,0,0,5,94,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,95,1,0,0,65,0,0,20,30,0,1,4,48],[0,0,5,14,3,32,0,156,0,0,1,35,0,0,97,61,0,10,0,0,0,4,0,29,0,0,5,15,2,32,0,156],[0,0,0,70,0,0,193,61,0,0,0,4,2,96,0,138,0,0,0,96,2,32,0,140,0,0,1,57,0,0,65,61],[0,0,0,68,2,16,3,112,0,0,0,0,3,2,4,59,0,0,5,16,2,48,0,156,0,0,1,57,0,0,33,61],[0,0,0,4,4,48,0,57,0,0,0,0,5,70,0,73,0,0,5,17,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,17,8,80,1,151,0,0,0,0,9,8,0,75],[0,0,0,0,2,0,160,25,0,0,5,17,8,128,0,156,0,0,0,0,2,7,192,25,0,0,0,0,2,2,0,75],[0,0,1,57,0,0,193,61,0,0,0,0,2,0,4,17,0,0,128,1,2,32,0,140,0,0,4,34,0,0,193,61],[0,0,0,0,2,0,4,18,0,0,5,18,7,32,1,151,0,0,0,0,2,0,4,16,0,0,0,0,7,39,0,75],[0,0,4,34,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,17,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,17,5,80,1,151,0,0,5,17,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,17,5,80,0,156,0,0,0,0,8,9,192,25],[0,0,0,0,5,8,0,75,0,0,1,57,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,16,7,64,0,156,0,0,1,57,0,0,33,61,0,0,0,0,7,70,0,73],[0,0,0,32,5,80,0,57,0,0,5,17,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,17,7,112,1,151,0,0,5,17,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,17,7,112,0,156,0,0,0,0,8,9,192,25],[0,0,0,0,7,8,0,75,0,0,1,57,0,0,193,61,0,0,0,3,7,64,0,140,0,0,2,92,0,0,33,61],[0,0,5,22,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,57,1,0,0,65,0,0,0,196,0,16,4,63],[0,0,5,58,1,0,0,65,0,0,0,228,0,16,4,63,0,0,5,55,1,0,0,65,0,0,20,30,0,1,4,48],[0,0,0,4,2,96,0,138,0,0,0,96,2,32,0,140,0,0,1,57,0,0,65,61,0,0,0,68,2,16,3,112],[0,0,0,0,3,2,4,59,0,0,5,16,2,48,0,156,0,0,1,57,0,0,33,61,0,0,0,4,2,48,0,57],[0,0,0,0,5,38,0,73,0,0,5,17,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,17,9,80,1,151,0,0,0,0,10,9,0,75,0,0,0,0,4,0,160,25],[0,0,5,17,9,144,0,156,0,0,0,0,4,8,192,25,0,0,0,0,4,4,0,75,0,0,1,57,0,0,193,61],[0,0,0,0,4,0,4,17,0,0,128,1,4,64,0,140,0,0,4,34,0,0,193,61,0,0,0,0,4,0,4,18],[0,0,5,18,4,64,1,151,0,0,0,0,8,0,4,16,0,0,0,0,4,132,0,75,0,0,4,34,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,18,4,64,1,151,0,0,0,0,3,3,4,59,0,0,5,24,9,48,0,156],[0,0,2,24,0,0,65,61,0,0,5,22,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,34,1,0,0,65],[0,0,0,196,0,16,4,63,0,0,5,35,1,0,0,65,0,0,20,30,0,1,4,48,0,0,0,4,3,96,0,138],[0,0,0,96,2,48,0,140,0,0,1,57,0,0,65,61,0,0,0,68,2,16,3,112,0,0,0,0,2,2,4,59],[0,0,5,16,4,32,0,156,0,0,1,57,0,0,33,61,0,0,0,0,3,35,0,73,0,0,5,17,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,17,3,48,1,151],[0,0,0,0,6,3,0,75,0,0,0,0,4,0,160,25,0,0,5,17,3,48,0,156,0,0,0,0,4,5,192,25],[0,0,0,0,3,4,0,75,0,0,1,57,0,0,193,61,0,0,0,0,3,0,4,17,0,0,128,1,3,48,0,140],[0,0,4,34,0,0,193,61,0,0,0,0,3,0,4,18,0,0,5,18,3,48,1,151,0,0,0,0,4,0,4,16],[0,0,0,0,3,67,0,75,0,0,4,34,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,2,0,0,0,193,61,0,0,0,0,4,0,4,21,0,0,0,12,4,64,0,138],[0,0,0,5,4,64,2,16,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,8,2,0,0,65,0,0,5,8,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,28,20,8,0,0,4,15,0,0,0,10,3,0,0,41,0,19,0,0,0,1,3,85],[0,0,0,96,1,16,2,112,0,1,5,8,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,4,34,0,0,193,61,0,0,0,64,1,0,4,61,0,0,0,100,2,16,0,57],[0,0,5,20,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,68,2,16,0,57,0,0,5,21,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,22,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,8,2,0,0,65,0,0,5,8,3,16,0,156,0,0,0,0,1,2,128,25],[0,0,0,64,1,16,2,16,0,0,5,23,1,16,1,199,0,0,20,30,0,1,4,48,0,0,0,4,2,96,0,138],[0,0,0,96,2,32,0,140,0,0,1,57,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,16,2,32,0,156,0,0,1,57,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,17,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,17,2,32,1,151,0,0,0,0,5,2,0,75],[0,0,0,0,3,0,160,25,0,0,5,17,2,32,0,156,0,0,0,0,3,4,192,25,0,0,0,0,2,3,0,75],[0,0,1,59,0,0,97,61,0,0,0,0,1,0,0,25,0,0,20,30,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,4,34,0,0,193,61,0,0,0,0,2,0,4,18,0,0,5,18,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,4,34,0,0,193,61,0,0,0,0,2,0,4,20],[0,0,5,59,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,31,1,16,1,151,0,0,5,60,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,28,20,8,0,0,4,15],[0,19,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,8,0,48,1,157],[0,0,5,8,8,48,1,151,0,0,0,63,3,128,0,57,0,0,5,61,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,16,5,48,0,156,0,0,19,58,0,0,33,61,0,0,0,1,4,64,1,144,0,0,19,58,0,0,193,61],[0,0,0,64,0,48,4,63,0,0,0,0,7,134,4,54,0,0,0,18,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,125,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,117,0,0,65,61,0,0,0,0,9,0,0,75,0,0,1,127,0,0,97,61,0,0,0,31,9,128,1,143],[0,0,0,5,8,128,2,114,0,0,1,139,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,131,0,0,65,61,0,0,0,0,10,9,0,75],[0,0,1,154,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,82,0,0,97,61],[0,0,0,8,1,0,0,107,0,0,18,1,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,1,2,16,0,140,0,0,2,111,0,0,33,61],[0,0,0,0,2,1,0,75,0,0,2,196,0,0,97,61,0,0,0,1,1,16,0,140,0,0,2,178,0,0,193,61],[0,0,5,62,1,0,0,65,0,0,0,0,0,16,4,57,0,0,5,8,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,5,8,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,5,63,1,16,1,199],[0,0,128,11,2,0,0,57,20,28,20,13,0,0,4,15,0,0,0,1,2,32,1,144,0,0,18,65,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,63,0,0,65,61],[0,0,0,128,1,64,2,112,0,0,5,66,2,64,0,156,0,0,0,0,1,4,160,25,0,0,5,66,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,16,6,16,0,156],[0,0,0,0,5,2,160,25,0,0,0,64,2,16,2,112,0,0,5,16,6,16,0,156,0,0,0,0,2,1,160,25],[0,0,0,4,1,80,1,191,0,0,5,8,6,32,0,156,0,0,0,0,1,5,160,25,0,0,0,32,6,32,2,112],[0,0,5,8,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,16,6,16,0,156,0,0,19,58,0,0,33,61,0,0,0,1,2,32,1,144,0,0,19,58,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,18,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,238,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,230,0,0,65,61,0,0,0,0,7,0,0,75,0,0,1,240,0,0,97,61],[0,0,0,0,7,3,4,51,0,0,0,0,7,7,0,75,0,0,9,198,0,0,97,61,0,0,0,0,7,6,4,51],[0,0,5,65,7,112,1,151,0,0,0,248,8,80,2,16,0,0,0,0,7,120,1,159,0,0,5,67,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,81,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,18,29,0,0,193,61],[0,0,0,0,4,0,4,21,0,0,0,11,4,64,0,138,0,0,0,5,4,64,2,16,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,255,0,0,97,61,0,0,5,8,2,0,0,65],[0,0,5,8,4,16,0,156,0,0,0,0,1,2,128,25,0,0,0,192,1,16,2,16,0,0,5,19,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,28,20,8,0,0,4,15],[0,0,0,0,3,0,4,21,0,0,0,11,3,48,0,138,0,0,0,5,3,48,2,16,0,0,1,7,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,17,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,17,5,80,1,151,0,0,5,17,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,17,5,80,0,156,0,0,0,0,9,10,192,25,0,0,0,0,5,9,0,75],[0,0,1,57,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,16,5,128,0,156,0,0,1,57,0,0,33,61,0,0,0,0,5,134,0,73,0,0,0,32,9,32,0,57],[0,0,5,17,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,17,5,80,1,151,0,0,5,17,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,17,5,80,0,156,0,0,0,0,2,10,192,25,0,0,0,0,2,2,0,75],[0,0,1,57,0,0,193,61,0,0,0,0,2,0,4,20,0,0,5,8,5,32,0,156,0,0,0,205,0,0,33,61],[0,0,128,6,5,64,0,140,0,0,0,0,5,0,0,25,0,0,3,243,0,0,193,61,0,0,0,4,5,128,0,140],[0,0,0,0,5,0,0,25,0,0,3,243,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,25,10,160,1,151,0,0,5,26,11,160,0,156,0,0,3,239,0,0,33,61],[0,0,5,29,11,160,0,156,0,0,3,243,0,0,97,61,0,0,5,30,10,160,0,156,0,0,3,243,0,0,97,61],[0,0,0,0,5,0,0,25,0,0,3,243,0,0,1,61,0,0,0,0,1,6,4,51,0,0,5,8,2,0,0,65],[0,0,5,8,3,16,0,156,0,0,0,0,1,2,128,25,0,0,5,8,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,30,0,1,4,48],[0,0,0,0,7,81,3,79,0,0,0,0,7,7,4,59,0,0,5,25,7,112,1,151,0,0,5,36,8,112,0,156],[0,0,4,34,0,0,97,61,0,0,5,37,7,112,0,156,0,0,3,106,0,0,193,61,0,0,0,67,4,64,0,140],[0,0,3,208,0,0,33,61,0,0,5,22,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,53,1,0,0,65],[0,0,0,196,0,16,4,63,0,0,5,54,1,0,0,65,0,0,0,165,0,0,1,61,0,0,0,2,2,16,0,140],[0,0,3,18,0,0,97,61,0,0,0,113,1,16,0,140,0,0,2,178,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,17,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,17,2,32,1,151,0,0,5,17,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,17,2,32,0,156,0,0,0,0,5,6,192,25],[0,0,0,0,2,5,0,75,0,0,1,57,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,16,5,16,0,156,0,0,1,57,0,0,33,61,0,0,0,0,6,20,0,73],[0,0,0,32,5,32,0,57,0,0,5,17,2,0,0,65,0,0,0,0,7,101,0,75,0,0,0,0,7,0,0,25],[0,0,0,0,7,2,32,25,0,0,5,17,6,96,1,151,0,0,5,17,8,80,1,151,0,0,0,0,9,104,0,75],[0,0,0,0,2,0,128,25,0,0,0,0,6,104,1,63,0,0,5,17,6,96,0,156,0,0,0,0,2,7,192,25],[0,0,0,0,2,2,0,75,0,0,1,57,0,0,193,61,0,0,5,8,6,80,1,151,0,0,0,0,2,0,4,20],[0,2,0,0,0,99,3,85,0,0,0,0,5,81,0,25,0,0,0,0,1,21,0,75,0,0,0,0,1,0,0,25],[0,0,0,1,1,0,64,57,0,0,0,1,1,16,1,144,0,0,18,29,0,0,193,61,0,0,0,0,1,84,0,75],[0,0,18,29,0,0,65,61,0,0,0,0,1,99,3,79,0,0,0,0,3,84,0,73,0,0,5,8,3,48,1,151],[0,2,0,0,0,49,3,229,0,0,5,73,4,32,0,156,0,0,6,137,0,0,65,61,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,2,184,0,0,1,61,0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57],[0,0,5,96,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,22,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,8,2,0,0,65,0,0,5,8,3,16,0,156],[0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16,0,0,5,52,1,16,1,199,0,0,20,30,0,1,4,48],[0,0,0,6,1,48,3,96,0,0,0,64,2,0,4,61,0,8,0,0,0,2,0,29,0,0,0,0,1,1,4,59],[0,0,0,128,2,16,0,140,0,0,3,114,0,0,65,61,0,0,0,128,2,16,2,112,0,0,5,66,6,16,0,156],[0,0,0,0,2,1,160,25,0,0,5,66,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,16,8,32,0,156,0,0,0,0,7,6,160,25,0,0,0,64,6,32,2,112],[0,0,5,16,8,32,0,156,0,0,0,0,6,2,160,25,0,0,0,4,8,112,1,191,0,0,5,8,2,96,0,156],[0,0,0,0,8,7,160,25,0,0,0,32,7,96,2,112,0,0,5,8,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,8,6,96,0,41,0,0,0,8,7,96,0,108],[0,0,0,0,7,0,0,25,0,0,0,1,7,0,64,57,0,0,5,16,8,96,0,156,0,0,19,58,0,0,33,61],[0,0,0,1,7,112,1,144,0,0,19,58,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,2,254,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,2,246,0,0,65,61,0,0,0,0,7,0,0,75,0,0,3,0,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,9,198,0,0,97,61],[0,0,0,0,7,6,4,51,0,0,5,65,7,112,1,151,0,0,0,248,8,32,2,16,0,0,0,0,7,120,1,159],[0,0,5,67,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,3,131,0,0,1,61,0,0,5,62,1,0,0,65,0,0,0,0,0,16,4,57],[0,0,5,8,1,0,0,65,0,0,0,0,2,0,4,20,0,0,5,8,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,192,1,32,2,16,0,0,5,63,1,16,1,199,0,0,128,11,2,0,0,57,20,28,20,13,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,18,65,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,157,0,0,65,61,0,0,0,128,1,64,2,112,0,0,5,66,2,64,0,156],[0,0,0,0,1,4,160,25,0,0,5,66,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,16,6,16,0,156,0,0,0,0,5,2,160,25,0,0,0,64,2,16,2,112],[0,0,5,16,6,16,0,156,0,0,0,0,2,1,160,25,0,0,0,4,1,80,1,191,0,0,5,8,6,32,0,156],[0,0,0,0,1,5,160,25,0,0,0,32,6,32,2,112,0,0,5,8,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,16,6,16,0,156,0,0,19,58,0,0,33,61],[0,0,0,1,2,32,1,144,0,0,19,58,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,18,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,88,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,80,0,0,65,61],[0,0,0,0,7,0,0,75,0,0,3,90,0,0,97,61,0,0,0,0,7,3,4,51,0,0,0,0,7,7,0,75],[0,0,9,198,0,0,97,61,0,0,0,0,7,6,4,51,0,0,5,65,7,112,1,151,0,0,0,248,8,80,2,16],[0,0,0,0,7,120,1,159,0,0,5,67,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,175,0,0,1,61,0,0,5,22,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,56,1,0,0,65,0,0,0,212,0,0,1,61,0,0,0,8,2,0,0,41,0,0,5,64,2,32,0,156],[0,0,19,58,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,5,4,59,0,0,0,0,0,98,4,53],[0,0,9,198,0,0,97,61,0,0,0,248,7,16,2,16,0,0,5,17,8,0,0,65,0,0,0,0,1,1,0,75],[0,0,0,0,8,7,192,25,0,0,5,65,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,4,251,0,0,65,61,0,0,0,128,7,96,2,112],[0,0,5,66,8,96,0,156,0,0,0,0,7,6,160,25,0,0,5,66,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,16,10,112,0,156,0,0,0,0,9,8,160,25],[0,0,0,64,8,112,2,112,0,0,5,16,10,112,0,156,0,0,0,0,8,7,160,25,0,0,0,4,10,144,1,191],[0,0,5,8,7,128,0,156,0,0,0,0,10,9,160,25,0,0,0,32,9,128,2,112,0,0,5,8,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,16,10,128,0,156],[0,0,19,58,0,0,33,61,0,0,0,1,9,144,1,144,0,0,19,58,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,3,190,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,3,182,0,0,65,61,0,0,0,0,9,0,0,75,0,0,3,192,0,0,97,61],[0,0,0,0,9,1,4,51,0,0,0,0,9,9,0,75,0,0,9,198,0,0,97,61,0,0,0,0,9,8,4,51],[0,0,5,65,9,144,1,151,0,0,0,248,10,112,2,16,0,0,0,0,9,154,1,159,0,0,5,67,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,5,10,0,0,1,61],[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,18,5,80,0,156,0,0,1,57,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,38,4,0,0,65,0,0,0,128,0,64,4,63,0,0,5,18,2,32,1,151],[0,6,0,0,0,2,0,29,0,0,0,132,0,32,4,63,0,0,5,18,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,5,86,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,130,0,0,1,61,0,0,5,27,11,160,0,156],[0,0,3,243,0,0,97,61,0,0,5,28,10,160,0,156,0,0,0,0,5,0,192,25,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,8,8,144,1,151,0,2,0,0,0,129,3,85,0,0,0,0,1,129,3,79],[0,0,0,0,8,3,0,75,0,0,4,14,0,0,193,61,0,0,0,1,3,96,1,144,0,0,18,29,0,0,193,61],[0,0,5,32,3,0,0,65,0,0,5,33,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,31,2,32,1,151,0,0,0,0,2,38,1,159,0,0,0,0,3,167,0,73],[0,0,5,8,3,48,1,151,0,0,0,0,1,49,3,223,0,2,0,0,0,33,3,181,0,0,0,0,1,33,3,175],[0,0,0,0,2,4,0,25,0,0,4,26,0,0,1,61,0,0,0,1,6,96,1,144,0,0,18,29,0,0,193,61],[0,0,0,0,6,167,0,73,0,0,5,8,6,96,1,151,0,0,0,0,1,97,3,223,0,0,0,192,2,32,2,16],[0,0,5,31,2,32,1,151,0,0,5,32,2,32,1,199,0,2,0,0,0,33,3,181,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,28,20,18,0,0,4,15,0,19,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,8,0,48,1,157,0,0,5,8,3,48,1,151],[0,0,0,1,2,32,1,144,0,0,4,36,0,0,97,61,0,0,0,0,1,0,0,25,0,0,20,29,0,1,4,46],[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,20,30,0,1,4,48,0,0,5,64,1,48,0,156],[0,0,19,58,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,18,1,0,3,103,0,0,0,0,6,33,3,79],[0,0,0,0,6,6,4,59,0,0,0,0,0,101,4,53,0,0,9,198,0,0,97,61,0,0,0,248,7,64,2,16],[0,0,5,17,8,0,0,65,0,0,0,0,4,4,0,75,0,0,0,0,8,7,192,25,0,0,5,65,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,5,170,0,0,65,61,0,0,0,128,6,80,2,112],[0,0,5,66,7,80,0,156,0,0,0,0,6,5,160,25,0,0,5,66,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,16,9,96,0,156,0,0,0,0,8,7,160,25],[0,0,0,64,7,96,2,112,0,0,5,16,9,96,0,156,0,0,0,0,7,6,160,25,0,0,0,4,9,128,1,191],[0,0,5,8,6,112,0,156,0,0,0,0,9,8,160,25,0,0,0,32,8,112,2,112,0,0,5,8,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,16,9,112,0,156],[0,0,19,58,0,0,33,61,0,0,0,1,8,128,1,144,0,0,19,58,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,139,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,131,0,0,65,61,0,0,0,0,8,0,0,75],[0,0,4,141,0,0,97,61,0,0,0,0,8,4,4,51,0,0,0,0,8,8,0,75,0,0,9,198,0,0,97,61],[0,0,0,0,8,7,4,51,0,0,5,65,8,128,1,151,0,0,0,248,9,96,2,16,0,0,0,0,8,137,1,159],[0,0,5,67,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,5,186,0,0,1,61,0,0,5,64,1,48,0,156,0,0,19,58,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,18,1,0,3,103,0,0,0,0,6,33,3,79,0,0,0,0,6,6,4,59,0,0,0,0,0,101,4,53],[0,0,9,198,0,0,97,61,0,0,0,248,7,64,2,16,0,0,5,17,8,0,0,65,0,0,0,0,4,4,0,75],[0,0,0,0,8,7,192,25,0,0,5,65,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,6,8,0,0,65,61,0,0,0,128,6,80,2,112,0,0,5,66,7,80,0,156,0,0,0,0,6,5,160,25],[0,0,5,66,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,16,9,96,0,156,0,0,0,0,8,7,160,25,0,0,0,64,7,96,2,112,0,0,5,16,9,96,0,156],[0,0,0,0,7,6,160,25,0,0,0,4,9,128,1,191,0,0,5,8,6,112,0,156,0,0,0,0,9,8,160,25],[0,0,0,32,8,112,2,112,0,0,5,8,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,16,9,112,0,156,0,0,19,58,0,0,33,61,0,0,0,1,8,128,1,144],[0,0,19,58,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,233,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,225,0,0,65,61,0,0,0,0,8,0,0,75,0,0,4,235,0,0,97,61,0,0,0,0,8,4,4,51],[0,0,0,0,8,8,0,75,0,0,9,198,0,0,97,61,0,0,0,0,8,7,4,51,0,0,5,65,8,128,1,151],[0,0,0,248,9,96,2,16,0,0,0,0,8,137,1,159,0,0,5,67,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,6,24,0,0,1,61,0,0,5,64,7,16,0,156],[0,0,19,58,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,5,4,59,0,0,0,0,0,135,4,53,0,0,9,198,0,0,97,61],[0,0,0,248,9,96,2,16,0,0,5,17,10,0,0,65,0,0,0,0,6,6,0,75,0,0,0,0,10,9,192,25],[0,0,5,65,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,8,96,0,0,65,61,0,0,0,128,7,96,2,112,0,0,5,66,8,96,0,156,0,0,0,0,7,6,160,25],[0,0,5,66,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,16,10,112,0,156,0,0,0,0,9,8,160,25,0,0,0,64,8,112,2,112,0,0,5,16,10,112,0,156],[0,0,0,0,8,7,160,25,0,0,0,4,10,144,1,191,0,0,5,8,7,128,0,156,0,0,0,0,10,9,160,25],[0,0,0,32,9,128,2,112,0,0,5,8,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,16,10,128,0,156,0,0,19,58,0,0,33,61,0,0,0,1,9,144,1,144],[0,0,19,58,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,5,68,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,5,60,0,0,65,61],[0,0,0,0,9,0,0,75,0,0,5,70,0,0,97,61,0,0,0,0,9,2,4,51,0,0,0,0,9,9,0,75],[0,0,9,198,0,0,97,61,0,0,0,0,9,8,4,51,0,0,5,65,9,144,1,151,0,0,0,248,10,112,2,16],[0,0,0,0,9,154,1,159,0,0,5,67,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,8,111,0,0,1,61,0,0,5,8,1,0,0,65,0,0,5,8,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,0,9,2,0,0,41],[20,28,20,13,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,5,8,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,5,111,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,5,103,0,0,65,61,0,0,0,0,7,5,0,75],[0,0,5,126,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,19,0,0,0,1,3,85],[0,0,0,1,2,32,1,144,0,0,6,102,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,57,0,0,65,61],[0,0,0,128,4,0,4,61,0,0,0,8,4,64,0,108,0,0,4,34,0,0,129,61,0,0,0,160,4,80,0,57],[0,0,5,40,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,41,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,253,0,0,193,61,0,0,0,1,2,0,0,57,0,0,5,16,4,48,0,156],[0,0,19,58,0,0,33,61,0,0,9,17,0,0,1,61,0,0,5,64,6,64,0,156,0,0,19,58,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,7,4,59,0,0,0,0,0,118,4,53,0,0,9,198,0,0,97,61],[0,0,0,248,8,80,2,16,0,0,5,17,9,0,0,65,0,0,0,0,5,5,0,75,0,0,0,0,9,8,192,25],[0,0,5,65,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,9,95,0,0,65,61,0,0,0,128,8,112,2,112,0,0,5,66,9,112,0,156],[0,0,0,0,8,7,160,25,0,0,5,66,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,16,11,128,0,156,0,0,0,0,10,9,160,25,0,0,0,64,9,128,2,112],[0,0,5,16,11,128,0,156,0,0,0,0,9,8,160,25,0,0,0,4,11,160,1,191,0,0,5,8,8,144,0,156],[0,0,0,0,11,10,160,25,0,0,0,32,10,144,2,112,0,0,5,8,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,16,11,144,0,156,0,0,19,58,0,0,33,61],[0,0,0,1,10,160,1,144,0,0,19,58,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,246,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,238,0,0,65,61,0,0,0,0,10,0,0,75,0,0,5,248,0,0,97,61],[0,0,0,0,10,5,4,51,0,0,0,0,10,10,0,75,0,0,9,198,0,0,97,61,0,0,0,0,10,9,4,51],[0,0,5,65,10,160,1,151,0,0,0,248,11,128,2,16,0,0,0,0,10,171,1,159,0,0,5,67,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,9,111,0,0,1,61],[0,0,5,64,6,64,0,156,0,0,19,58,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,7,4,59],[0,0,0,0,0,118,4,53,0,0,9,198,0,0,97,61,0,0,0,248,8,80,2,16,0,0,5,17,9,0,0,65],[0,0,0,0,5,5,0,75,0,0,0,0,9,8,192,25,0,0,5,65,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,188,0,0,65,61],[0,0,0,128,8,96,2,112,0,0,5,66,9,96,0,156,0,0,0,0,8,6,160,25,0,0,5,66,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,16,11,128,0,156],[0,0,0,0,10,9,160,25,0,0,0,64,9,128,2,112,0,0,5,16,11,128,0,156,0,0,0,0,9,8,160,25],[0,0,0,4,11,160,1,191,0,0,5,8,8,144,0,156,0,0,0,0,11,10,160,25,0,0,0,32,10,144,2,112],[0,0,5,8,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,16,11,144,0,156,0,0,19,58,0,0,33,61,0,0,0,1,10,160,1,144,0,0,19,58,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,6,84,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,6,76,0,0,65,61],[0,0,0,0,10,0,0,75,0,0,6,86,0,0,97,61,0,0,0,0,10,5,4,51,0,0,0,0,10,10,0,75],[0,0,9,198,0,0,97,61,0,0,0,0,10,9,4,51,0,0,5,65,10,160,1,151,0,0,0,248,11,128,2,16],[0,0,0,0,10,171,1,159,0,0,5,67,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,10,129,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,115,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,107,0,0,65,61,0,0,0,0,6,4,0,75],[0,0,6,130,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,8,1,0,0,65,0,0,5,8,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,30,0,1,4,48,0,0,0,0,1,49,3,223,0,0,0,192,2,32,2,16,0,0,5,31,2,32,1,151],[0,0,5,33,2,32,1,199,0,2,0,0,0,33,3,181,0,0,0,0,1,33,3,175,0,0,128,16,2,0,0,57],[20,28,20,23,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,1,5,8,0,48,1,157],[0,0,5,8,5,48,1,151,0,19,0,0,0,1,3,85,0,0,0,1,2,32,1,144,0,0,9,202,0,0,97,61],[0,0,0,63,2,80,0,57,0,0,5,61,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,16,4,32,0,156],[0,0,19,58,0,0,33,61,0,0,0,1,3,48,1,144,0,0,19,58,0,0,193,61,0,0,0,64,0,32,4,63],[0,0,0,0,4,86,4,54,0,0,0,18,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,180,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,172,0,0,65,61],[0,0,0,0,7,0,0,75,0,0,6,182,0,0,97,61,0,0,0,31,7,80,1,143,0,0,0,5,5,80,2,114],[0,0,6,194,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,186,0,0,65,61,0,0,0,0,8,7,0,75,0,0,6,209,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,10,4,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,17,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,17,5,80,1,151,0,0,5,17,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,17,5,80,0,156],[0,0,0,0,6,7,192,25,0,0,0,0,5,6,0,75,0,0,1,57,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,16,4,80,0,156,0,0,1,57,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,17,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,17,3,48,1,151,0,0,5,17,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,17,3,48,0,156,0,0,0,0,1,7,192,25],[0,0,0,0,1,1,0,75,0,0,1,57,0,0,193,61,0,0,0,64,1,0,4,61,0,0,0,32,3,16,0,57],[0,0,5,74,5,80,1,152,0,0,7,12,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,7,4,0,0,65,61],[0,0,0,0,2,0,0,75,0,0,7,14,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,16,5,32,0,156,0,0,19,58,0,0,33,61],[0,0,0,1,4,64,1,144,0,0,19,58,0,0,193,61,0,0,0,64,0,32,4,63,0,0,5,8,2,0,0,65],[0,0,5,8,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,8,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,8,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,19,1,16,1,199,0,0,128,16,2,0,0,57,20,28,20,13,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,1,57,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,18,3,0,3,103],[0,0,0,0,4,67,3,79,0,0,0,0,4,4,4,59,0,0,5,17,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,17,5,80,1,151,0,0,5,17,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,17,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,57,0,0,193,61,0,0,0,9,4,64,0,41,0,0,0,0,1,67,3,79,0,0,0,0,1,1,4,59],[0,0,5,16,5,16,0,156,0,0,1,57,0,0,33,61,0,0,0,0,6,18,0,73,0,0,0,32,5,64,0,57],[0,0,5,17,4,0,0,65,0,0,0,0,7,101,0,75,0,0,0,0,7,0,0,25,0,0,0,0,7,4,32,25],[0,0,5,17,6,96,1,151,0,0,5,17,8,80,1,151,0,0,0,0,9,104,0,75,0,0,0,0,4,0,128,25],[0,0,0,0,6,104,1,63,0,0,5,17,6,96,0,156,0,0,0,0,4,7,192,25,0,0,0,0,4,4,0,75],[0,0,1,57,0,0,193,61,0,0,5,8,6,80,1,151,0,0,0,0,4,0,4,20,0,2,0,0,0,99,3,85],[0,0,0,0,5,81,0,25,0,0,0,0,1,21,0,75,0,0,0,0,1,0,0,25,0,0,0,1,1,0,64,57],[0,0,0,1,1,16,1,144,0,0,18,29,0,0,193,61,0,0,0,0,1,82,0,75,0,0,18,29,0,0,65,61],[0,0,0,0,1,99,3,79,0,0,0,0,2,82,0,73,0,0,5,8,2,32,1,151,0,2,0,0,0,33,3,229],[0,0,5,8,3,64,0,156,0,0,2,171,0,0,33,61,0,0,0,0,1,33,3,223,0,0,0,192,2,64,2,16],[0,0,5,31,2,32,1,151,0,0,5,33,2,32,1,199,0,2,0,0,0,33,3,181,0,0,0,0,1,33,3,175],[0,0,128,16,2,0,0,57,20,28,20,23,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,1,5,8,0,48,1,157,0,0,5,8,3,48,1,151,0,19,0,0,0,1,3,85,0,0,0,1,2,32,1,144],[0,0,17,47,0,0,97,61,0,0,0,63,2,48,0,57,0,0,5,61,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,16,6,32,0,156,0,0,19,58,0,0,33,61,0,0,0,1,4,64,1,144,0,0,19,58,0,0,193,61],[0,0,0,64,0,32,4,63,0,0,0,0,2,53,4,54,0,0,0,18,4,0,3,103,0,0,0,31,6,48,0,57],[0,0,0,5,6,96,2,114,0,0,7,148,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,140,0,0,65,61],[0,0,0,0,6,0,0,75,0,0,7,150,0,0,97,61,0,0,0,31,6,48,1,143,0,0,0,5,3,48,2,114],[0,0,7,162,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,154,0,0,65,61,0,0,0,0,7,6,0,75,0,0,7,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,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,10,4,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,76,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,77,3,16,0,156,0,0,19,58,0,0,33,61,0,0,1,224,3,16,0,57,0,0,0,64,0,48,4,63],[0,0,5,8,4,0,0,65,0,0,5,8,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,8,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,8,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,19,1,16,1,199,0,0,128,16,2,0,0,57],[20,28,20,13,0,0,4,15,0,0,0,1,2,32,1,144,0,0,1,57,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,62,1,0,0,65],[0,0,0,0,0,16,4,57,0,0,0,0,1,0,4,20,0,0,5,8,2,16,0,156,0,0,5,8,1,0,128,65],[0,0,0,192,1,16,2,16,0,0,5,63,1,16,1,199,0,0,128,11,2,0,0,57,20,28,20,13,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,18,65,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,78,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,79,3,0,0,65,0,0,0,0,0,49,4,53],[0,0,0,64,1,64,0,57,0,0,5,80,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,81,1,64,0,156,0,0,19,58,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,8,1,0,0,65,0,0,5,8,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,8,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,8,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,19,1,16,1,199,0,0,128,16,2,0,0,57,20,28,20,13,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,1,57,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,82,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,47,3,16,0,156,0,0,19,58,0,0,33,61,0,0,0,128,3,16,0,57],[0,0,0,64,0,48,4,63,0,0,5,8,3,0,0,65,0,0,5,8,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,8,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,8,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,17,249,0,0,1,61],[0,0,5,64,7,32,0,156,0,0,19,58,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,5,4,59,0,0,0,0,0,135,4,53],[0,0,9,198,0,0,97,61,0,0,0,248,9,96,2,16,0,0,5,17,10,0,0,65,0,0,0,0,6,6,0,75],[0,0,0,0,10,9,192,25,0,0,5,65,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,8,126,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,8,119,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,8,139,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,8,132,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,16,2,32,0,156,0,0,19,58,0,0,33,61,0,0,0,1,1,16,1,144,0,0,19,58,0,0,193,61],[0,0,0,5,1,0,0,41,0,0,0,64,0,16,4,63,0,0,5,64,1,16,0,156,0,0,19,58,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,68,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,11,44,0,0,65,61,0,0,0,128,6,32,2,112,0,0,5,66,7,32,0,156],[0,0,0,0,6,2,160,25,0,0,5,66,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,16,9,96,0,156,0,0,0,0,8,7,160,25,0,0,0,64,7,96,2,112],[0,0,5,16,9,96,0,156,0,0,0,0,7,6,160,25,0,0,0,4,9,128,1,191,0,0,5,8,6,112,0,156],[0,0,0,0,9,8,160,25,0,0,0,32,8,112,2,112,0,0,5,8,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,16,9,112,0,156,0,0,19,58,0,0,33,61,0,0,0,1,8,128,1,144],[0,0,19,58,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,8,233,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,8,225,0,0,65,61,0,0,0,0,8,0,0,75,0,0,8,235,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,9,198,0,0,97,61,0,0,0,0,8,7,4,51],[0,0,5,65,8,128,1,151,0,0,0,248,9,96,2,16,0,0,0,0,8,137,1,159,0,0,5,67,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,11,61,0,0,1,61,0,0,5,8,1,0,0,65,0,0,5,8,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,8,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,28,20,8,0,0,4,15,0,5,0,96,0,0,0,61,0,0,0,1,2,32,1,143,0,19,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,8,0,48,1,157,0,0,5,8,3,48,1,152],[0,0,9,61,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,16,6,64,0,156,0,0,19,58,0,0,33,61],[0,0,0,1,5,80,1,144,0,0,19,58,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,9,45,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,9,37,0,0,65,61,0,10,0,0,0,8,0,29,0,0,0,0,5,4,0,75,0,0,9,61,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,229,0,0,193,61,0,0,0,0,2,1,0,75,0,0,9,87,0,0,193,61,0,0,0,64,4,0,4,61],[0,10,0,0,0,4,0,29,0,0,5,22,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,28,19,250,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,8,2,0,0,65],[0,0,5,8,3,16,0,156,0,0,0,0,1,2,128,25,0,0,0,10,4,0,0,41,0,0,5,8,3,64,0,156],[0,0,0,0,4,2,128,25,0,0,0,64,2,64,2,16,0,0,2,89,0,0,1,61,0,0,5,64,8,80,0,156],[0,0,19,58,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,9,4,59,0,0,0,0,0,152,4,53],[0,0,9,198,0,0,97,61,0,0,0,248,10,112,2,16,0,0,5,17,11,0,0,65,0,0,0,0,7,7,0,75],[0,0,0,0,11,10,192,25,0,0,5,65,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,10,11,0,0,65,61,0,0,0,128,9,128,2,112,0,0,5,66,10,128,0,156],[0,0,0,0,9,8,160,25,0,0,5,66,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,16,12,144,0,156,0,0,0,0,11,10,160,25,0,0,0,64,10,144,2,112],[0,0,5,16,12,144,0,156,0,0,0,0,10,9,160,25,0,0,0,4,12,176,1,191,0,0,5,8,9,160,0,156],[0,0,0,0,12,11,160,25,0,0,0,32,11,160,2,112,0,0,5,8,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,16,12,160,0,156,0,0,19,58,0,0,33,61],[0,0,0,1,11,176,1,144,0,0,19,58,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,9,170,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,162,0,0,65,61,0,0,0,0,11,0,0,75,0,0,9,172,0,0,97,61],[0,0,0,0,11,7,4,51,0,0,0,0,11,11,0,75,0,0,9,198,0,0,97,61,0,0,0,0,11,10,4,51],[0,0,5,65,11,176,1,151,0,0,0,248,12,144,2,16,0,0,0,0,11,188,1,159,0,0,5,67,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,10,27,0,0,1,61],[0,0,5,64,8,80,0,156,0,0,19,58,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,9,4,59],[0,0,0,0,0,152,4,53,0,0,10,123,0,0,193,61,0,0,5,94,1,0,0,65,0,0,0,0,0,16,4,53],[0,0,0,50,1,0,0,57,0,0,0,81,0,0,1,61,0,0,0,31,3,80,1,143,0,0,0,5,2,80,2,114],[0,0,9,213,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,206,0,0,65,61,0,0,0,0,4,3,0,75,0,0,9,227,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,30,0,1,4,48,0,0,0,0,2,1,0,75,0,0,11,135,0,0,193,61,0,0,5,42,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,8,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,5,8,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,5,43,1,16,1,199,0,0,128,2,2,0,0,57,20,28,20,13,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,18,65,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75,0,0,11,131,0,0,193,61],[0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57,0,0,5,51,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,22,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,2,189,0,0,1,61],[0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57,0,0,5,75,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,2,184,0,0,1,61,0,0,5,64,9,112,0,156],[0,0,19,58,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,10,4,59,0,0,0,0,0,169,4,53],[0,0,9,198,0,0,97,61,0,0,0,248,11,128,2,16,0,0,5,17,12,0,0,65,0,0,0,0,8,8,0,75],[0,0,0,0,12,11,192,25,0,0,5,65,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,64,8,144,0,156,0,0,19,58,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,68,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,152,0,0,65,61,0,0,0,8,6,0,0,41],[0,0,0,128,10,96,2,112,0,0,5,66,11,96,0,156,0,0,0,0,10,6,160,25,0,0,5,66,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,16,13,160,0,156],[0,0,0,0,12,11,160,25,0,0,0,64,11,160,2,112,0,0,5,16,13,160,0,156,0,0,0,0,11,10,160,25],[0,0,0,4,13,192,1,191,0,0,5,8,10,176,0,156,0,0,0,0,13,12,160,25,0,0,0,32,12,176,2,112],[0,0,5,8,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,16,13,176,0,156,0,0,19,58,0,0,33,61,0,0,0,1,12,192,1,144,0,0,19,58,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,104,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,10,96,0,0,65,61],[0,0,0,0,6,0,0,75,0,0,10,106,0,0,97,61,0,0,0,0,6,8,4,51,0,0,0,0,6,6,0,75],[0,0,9,198,0,0,97,61,0,0,0,0,6,11,4,51,0,0,5,65,6,96,1,151,0,0,0,248,12,160,2,16],[0,0,0,0,6,108,1,159,0,0,5,67,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,170,0,0,1,61,0,0,0,248,10,96,2,16],[0,0,5,17,11,0,0,65,0,0,0,0,6,6,0,75,0,0,0,0,11,10,192,25,0,0,5,65,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,206,0,0,65,61],[0,0,0,128,9,128,2,112,0,0,5,66,10,128,0,156,0,0,0,0,9,8,160,25,0,0,5,66,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,16,12,144,0,156],[0,0,0,0,11,10,160,25,0,0,0,64,10,144,2,112,0,0,5,16,12,144,0,156,0,0,0,0,10,9,160,25],[0,0,0,4,12,176,1,191,0,0,5,8,9,160,0,156,0,0,0,0,12,11,160,25,0,0,0,32,11,160,2,112],[0,0,5,8,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,16,12,160,0,156,0,0,19,58,0,0,33,61,0,0,0,1,11,176,1,144,0,0,19,58,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,10,188,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,180,0,0,65,61],[0,0,0,0,11,0,0,75,0,0,10,190,0,0,97,61,0,0,0,0,11,6,4,51,0,0,0,0,11,11,0,75],[0,0,9,198,0,0,97,61,0,0,0,0,11,10,4,51,0,0,5,65,11,176,1,151,0,0,0,248,12,144,2,16],[0,0,0,0,11,188,1,159,0,0,5,67,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,222,0,0,1,61,0,0,5,64,9,96,0,156,0,0,19,58,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,10,4,59,0,0,0,0,0,169,4,53,0,0,9,198,0,0,97,61],[0,0,0,248,11,128,2,16,0,0,5,17,12,0,0,65,0,0,0,0,8,8,0,75,0,0,0,0,12,11,192,25],[0,0,5,65,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,11,189,0,0,65,61,0,0,0,128,10,144,2,112,0,0,5,66,11,144,0,156,0,0,0,0,10,9,160,25],[0,0,5,66,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,16,13,160,0,156,0,0,0,0,12,11,160,25,0,0,0,64,11,160,2,112,0,0,5,16,13,160,0,156],[0,0,0,0,11,10,160,25,0,0,0,4,13,192,1,191,0,0,5,8,10,176,0,156,0,0,0,0,13,12,160,25],[0,0,0,32,12,176,2,112,0,0,5,8,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,16,13,176,0,156,0,0,19,58,0,0,33,61,0,0,0,1,12,192,1,144],[0,0,19,58,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,25,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,11,17,0,0,65,61,0,0,0,0,7,0,0,75,0,0,11,27,0,0,97,61,0,0,0,0,7,8,4,51],[0,0,0,0,7,7,0,75,0,0,9,198,0,0,97,61,0,0,0,0,7,11,4,51,0,0,5,65,7,112,1,151],[0,0,0,248,12,160,2,16,0,0,0,0,7,124,1,159,0,0,5,67,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,11,206,0,0,1,61],[0,0,0,4,6,0,0,41,0,0,5,64,6,96,0,156,0,0,19,58,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,5,4,59,0,0,0,0,0,118,4,53,0,0,9,198,0,0,97,61,0,0,0,248,8,32,2,16],[0,0,5,17,9,0,0,65,0,0,0,0,2,2,0,75,0,0,0,0,9,8,192,25,0,0,5,65,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,17,7,96,1,151],[0,0,5,17,8,32,1,151,0,0,5,17,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,17,7,112,0,156,0,0,0,0,10,9,192,25,0,0,0,0,7,10,0,75,0,0,1,57,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,16,9,112,0,156],[0,0,1,57,0,0,33,61,0,0,0,0,9,116,0,73,0,0,0,32,8,128,0,57,0,0,5,17,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,17,9,144,1,151],[0,0,5,17,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,17,9,144,0,156,0,0,0,0,10,11,192,25,0,0,0,0,9,10,0,75,0,0,1,57,0,0,193,61],[0,0,0,1,9,112,0,140,0,0,14,78,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,17,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,17,5,80,1,151,0,0,5,17,9,80,0,156,0,0,0,0,8,0,128,25],[0,0,5,17,5,80,1,103,0,0,5,17,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,14,136,0,0,193,61,0,0,0,64,5,0,4,61,0,3,0,0,0,5,0,29],[0,0,5,64,5,80,0,156,0,0,19,58,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,67,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,14,136,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,170,0,0,97,61,0,0,5,17,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,17,1,16,1,151],[0,0,0,0,4,1,0,75,0,0,0,0,2,0,160,25,0,0,5,17,1,16,0,156,0,0,0,0,2,3,192,25],[0,0,0,0,1,2,0,75,0,0,1,57,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,57,0,0,193,61,0,0,0,0,1,1,0,75,0,0,11,170,0,0,193,61,0,0,0,64,1,0,4,61],[0,0,0,100,2,16,0,57,0,0,5,49,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,68,2,16,0,57],[0,0,5,50,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,22,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,28,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,38,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,12,49,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,12,99,0,0,1,61,0,0,5,64,7,128,0,156,0,0,19,58,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,11,7,4,59,0,0,0,0,0,186,4,53,0,0,9,198,0,0,97,61,0,0,0,248,7,144,2,16],[0,0,5,17,12,0,0,65,0,0,0,0,9,9,0,75,0,0,0,0,12,7,192,25,0,0,5,65,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,64,7,160,0,156],[0,0,19,58,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,68,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,13,116,0,0,65,61,0,0,0,8,7,0,0,41,0,0,0,128,11,112,2,112],[0,0,5,66,12,112,0,156,0,0,0,0,11,7,160,25,0,0,5,66,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,16,14,176,0,156,0,0,0,0,13,12,160,25],[0,0,0,64,12,176,2,112,0,0,5,16,14,176,0,156,0,0,0,0,12,11,160,25,0,0,0,4,14,208,1,191],[0,0,5,8,11,192,0,156,0,0,0,0,14,13,160,25,0,0,0,32,13,192,2,112,0,0,5,8,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,16,14,192,0,156,0,0,19,58,0,0,33,61,0,0,0,1,13,208,1,144,0,0,19,58,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,12,29,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,12,21,0,0,65,61,0,0,0,0,7,0,0,75,0,0,12,31,0,0,97,61,0,0,0,0,7,9,4,51],[0,0,0,0,7,7,0,75,0,0,9,198,0,0,97,61,0,0,0,0,7,12,4,51,0,0,5,65,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,67,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,13,134,0,0,1,61,0,0,5,8,2,0,0,65,0,0,5,8,3,16,0,156,0,0,0,0,1,2,128,25],[0,0,0,10,4,0,0,41,0,0,5,8,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,44,1,16,1,199,0,0,0,9,2,0,0,41],[20,28,20,13,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,8,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,12,80,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,12,72,0,0,65,61],[0,0,0,0,7,5,0,75,0,0,12,95,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,19,0,0,0,1,3,85,0,0,0,1,2,32,1,144,0,0,13,87,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,16,4,16,0,156,0,0,19,58,0,0,33,61,0,0,0,1,2,32,1,144],[0,0,19,58,0,0,193,61,0,0,0,64,0,16,4,63,0,0,0,32,2,48,0,140,0,0,1,57,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,14,66,0,0,193,61,0,0,0,32,2,16,0,57,0,0,5,40,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,47,4,16,0,156],[0,0,19,58,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,48,4,16,0,156,0,0,19,58,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,41,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,63,0,0,193,61],[0,0,0,1,2,0,0,57,0,0,5,16,1,48,0,156,0,0,19,58,0,0,33,61,0,0,15,85,0,0,1,61],[0,0,5,64,6,128,0,156,0,0,19,58,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,11,6,4,59],[0,0,0,0,0,186,4,53,0,0,9,198,0,0,97,61,0,0,0,8,13,0,0,41,0,0,0,248,6,208,2,16],[0,0,5,17,12,0,0,65,0,0,0,0,13,13,0,75,0,0,0,0,12,6,192,25,0,0,5,65,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,183,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,176,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,198,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,191,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,213,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,206,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,228,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,221,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,243,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,236,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,13,2,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,251,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,16,5,112,0,156,0,0,19,58,0,0,33,61],[0,0,0,1,4,64,1,144,0,0,19,58,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,17,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,17,5,80,1,151,0,0,5,17,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,17,5,80,0,156,0,0,0,0,8,9,192,25],[0,0,0,0,5,8,0,75,0,0,1,57,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,16,8,64,0,156,0,0,1,57,0,0,33,61,0,0,0,0,8,66,0,73],[0,0,0,32,5,80,0,57,0,0,5,17,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,17,8,128,1,151,0,0,5,17,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,17,8,128,0,156,0,0,0,0,9,10,192,25],[0,0,0,0,8,9,0,75,0,0,1,57,0,0,193,61,0,0,0,1,8,64,0,140,0,0,15,161,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,17,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,17,8,128,1,151],[0,0,5,17,11,128,0,156,0,0,0,0,10,0,128,25,0,0,5,17,8,128,1,103,0,0,5,17,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,16,59,0,0,193,61],[0,0,5,64,8,112,0,156,0,0,19,58,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,67,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,16,59,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,100,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,92,0,0,65,61],[0,0,0,0,6,4,0,75,0,0,13,115,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,130,0,0,1,61],[0,0,5,64,7,144,0,156,0,0,19,58,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,12,7,4,59],[0,0,0,0,0,203,4,53,0,0,9,198,0,0,97,61,0,0,0,8,14,0,0,41,0,0,0,248,7,224,2,16],[0,0,5,17,13,0,0,65,0,0,0,0,14,14,0,75,0,0,0,0,13,7,192,25,0,0,5,65,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,13,147,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,13,140,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,13,162,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,13,155,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,13,177,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,13,170,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,13,192,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,13,185,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,13,207,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,13,200,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,13,222,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,13,215,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,13,237,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,13,230,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,16,5,96,0,156,0,0,19,58,0,0,33,61,0,0,0,1,4,64,1,144],[0,0,19,58,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,17,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,17,5,80,1,151,0,0,5,17,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,17,5,80,0,156,0,0,0,0,8,9,192,25,0,0,0,0,5,8,0,75],[0,0,1,57,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,16,8,64,0,156,0,0,1,57,0,0,33,61,0,0,0,0,8,66,0,73,0,0,0,32,5,80,0,57],[0,0,5,17,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,17,8,128,1,151,0,0,5,17,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,17,8,128,0,156,0,0,0,0,9,10,192,25,0,0,0,0,8,9,0,75],[0,0,1,57,0,0,193,61,0,0,0,1,8,64,0,140,0,0,17,74,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,17,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,17,8,128,1,151,0,0,5,17,11,128,0,156],[0,0,0,0,10,0,128,25,0,0,5,17,8,128,1,103,0,0,5,17,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,19,55,0,0,193,61,0,0,5,64,8,96,0,156],[0,0,19,58,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,67,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,19,55,0,0,1,61,0,0,5,22,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,45,2,0,0,65,0,0,0,0,0,36,4,53,0,0,0,100,2,16,0,57],[0,0,5,46,3,0,0,65,0,0,1,28,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,14,120,0,0,65,61,0,0,0,32,9,112,2,112,0,0,5,8,8,112,0,156],[0,0,0,0,9,7,160,25,0,0,5,8,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,64,10,160,0,156,0,0,19,58,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,5,4,59,0,0,0,0,0,89,4,53,0,0,9,198,0,0,97,61],[0,0,5,65,5,80,1,151,0,0,0,248,10,128,2,16,0,0,0,0,5,90,1,159,0,0,5,69,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,14,136,0,0,1,61],[0,0,0,3,8,0,0,41,0,0,5,64,8,128,0,156,0,0,19,58,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,5,4,59,0,0,0,0,0,88,4,53,0,0,9,198,0,0,97,61,0,0,0,248,7,112,2,16],[0,0,5,65,5,80,1,151,0,0,0,0,5,117,1,159,0,0,5,17,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,232,0,0,193,61,0,0,5,17,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,17,6,96,1,151,0,0,5,17,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,17,6,96,0,156],[0,0,0,0,5,7,192,25,0,0,0,0,5,5,0,75,0,0,1,57,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,16,11,32,0,156,0,0,1,57,0,0,33,61,0,0,0,0,11,36,0,73,0,0,0,32,5,80,0,57],[0,0,5,17,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,17,11,176,1,151,0,0,5,17,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,17,11,176,0,156,0,0,0,0,12,13,192,25,0,0,0,0,11,12,0,75],[0,0,1,57,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,16,6,96,1,151,0,0,0,56,8,96,0,140,0,0,16,122,0,0,65,61],[0,0,0,32,9,96,2,112,0,0,5,8,8,96,0,156,0,0,0,0,9,6,160,25,0,0,5,8,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,64,10,112,0,156,0,0,19,58,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,9,4,59,0,0,0,0,0,148,4,53],[0,0,9,198,0,0,97,61,0,0,5,65,9,144,1,151,0,0,0,248,10,128,2,16,0,0,0,0,9,154,1,159],[0,0,5,71,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,137,0,0,1,61],[0,0,5,62,1,0,0,65,0,0,0,0,0,16,4,57,0,0,5,8,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,5,8,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,5,63,1,16,1,199],[0,0,128,11,2,0,0,57,20,28,20,13,0,0,4,15,0,0,0,1,2,32,1,144,0,0,18,65,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,200,0,0,65,61],[0,0,0,128,3,16,2,112,0,0,5,66,4,16,0,156,0,0,0,0,3,1,160,25,0,0,5,66,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,16,6,48,0,156],[0,0,0,0,5,4,160,25,0,0,0,64,4,48,2,112,0,0,5,16,6,48,0,156,0,0,0,0,4,3,160,25],[0,0,0,4,3,80,1,191,0,0,5,8,6,64,0,156,0,0,0,0,3,5,160,25,0,0,0,32,6,64,2,112],[0,0,5,8,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,16,6,48,0,156],[0,0,19,58,0,0,33,61,0,0,0,1,4,64,1,144,0,0,19,58,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,18,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,45,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,37,0,0,65,61,0,0,0,0,7,0,0,75,0,0,15,47,0,0,97,61,0,0,0,0,7,2,4,51],[0,0,0,0,7,7,0,75,0,0,9,198,0,0,97,61,0,0,0,0,7,6,4,51,0,0,5,65,7,112,1,151],[0,0,0,248,8,80,2,16,0,0,0,0,7,120,1,159,0,0,5,67,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,218,0,0,1,61,0,0,5,8,3,0,0,65],[0,0,5,8,5,32,0,156,0,0,0,0,2,3,128,25,0,0,0,64,2,32,2,16,0,0,5,8,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,8,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,28,20,8,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,19,0,0,0,1,3,85,0,0,0,96,1,16,2,112,0,1,5,8,0,16,1,157,0,0,5,8,3,16,1,152],[0,0,15,130,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,16,5,16,0,156,0,0,19,58,0,0,33,61],[0,0,0,1,4,64,1,144,0,0,19,58,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,19,4,0,3,103,0,0,0,5,3,48,2,114],[0,0,15,114,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,106,0,0,65,61,0,6,0,0,0,8,0,29,0,0,0,0,5,1,0,75],[0,0,15,130,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,255,0,0,193,61,0,0,0,0,2,1,0,75,0,0,16,117,0,0,193,61],[0,0,0,64,4,0,4,61,0,9,0,0,0,4,0,29,0,0,5,22,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,28,19,250,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,8,2,0,0,65,0,0,5,8,3,16,0,156,0,0,0,0,1,2,128,25,0,0,0,9,4,0,0,41],[0,0,9,91,0,0,1,61,0,0,0,56,8,64,0,140,0,0,16,43,0,0,65,61,0,0,0,32,9,64,2,112],[0,0,5,8,8,64,0,156,0,0,0,0,9,4,160,25,0,0,5,8,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,64,10,112,0,156,0,0,19,58,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,10,4,59,0,0,0,0,0,169,4,53,0,0,9,198,0,0,97,61],[0,0,5,65,10,160,1,151,0,0,0,248,11,128,2,16,0,0,0,0,10,171,1,159,0,0,5,69,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,16,59,0,0,1,61],[0,0,5,64,3,32,0,156,0,0,19,58,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,18,3,0,3,103],[0,0,0,0,6,67,3,79,0,0,0,0,6,6,4,59,0,0,0,0,0,101,4,53,0,0,9,198,0,0,97,61],[0,0,0,248,7,16,2,16,0,0,5,17,8,0,0,65,0,0,0,0,1,1,0,75,0,0,0,0,8,7,192,25],[0,0,5,65,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,232,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,225,0,0,65,61],[0,0,0,0,2,101,0,25,0,0,5,83,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,16,6,32,0,156],[0,0,19,58,0,0,33,61,0,0,0,1,5,80,1,144,0,0,19,58,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,14,142,0,0,1,61,0,0,0,0,2,1,0,75],[0,0,16,22,0,0,193,61,0,0,5,42,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,8,1,0,0,65,0,0,0,0,2,0,4,20,0,0,5,8,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,5,43,1,16,1,199,0,0,128,2,2,0,0,57],[20,28,20,13,0,0,4,15,0,0,0,1,2,32,1,144,0,0,18,65,0,0,97,61,0,0,0,0,1,1,4,59],[0,0,0,0,1,1,0,75,0,0,9,248,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,4,34,0,0,97,61,0,0,5,17,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,17,1,16,1,151,0,0,0,0,4,1,0,75],[0,0,0,0,2,0,160,25,0,0,5,17,1,16,0,156,0,0,0,0,2,3,192,25,0,0,0,0,1,2,0,75],[0,0,1,57,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,57,0,0,193,61],[0,0,0,0,1,1,0,75,0,0,4,34,0,0,193,61,0,0,11,155,0,0,1,61,0,0,5,64,8,112,0,156],[0,0,19,58,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,9,4,59,0,0,0,0,0,152,4,53],[0,0,9,198,0,0,97,61,0,0,0,248,10,64,2,16,0,0,5,65,9,144,1,151,0,0,0,0,9,169,1,159],[0,0,5,17,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,64,9,112,0,156,0,0,19,58,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,11,2,4,59],[0,0,0,0,0,185,4,53,0,0,9,198,0,0,97,61,0,0,5,65,2,176,1,151,0,0,5,70,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,16,9,144,1,151,0,0,0,56,13,144,0,140,0,0,17,113,0,0,65,61,0,0,0,32,13,144,2,112],[0,0,5,8,12,144,0,156,0,0,0,0,13,9,160,25,0,0,5,8,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,64,14,160,0,156,0,0,19,58,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,9,198,0,0,97,61,0,0,0,248,11,192,2,16],[0,0,0,0,2,43,1,159,0,0,5,71,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,17,126,0,0,1,61,0,0,5,8,2,0,0,65,0,0,5,8,3,16,0,156,0,0,0,0,1,2,128,25],[0,0,0,6,4,0,0,41,0,0,9,91,0,0,1,61,0,0,5,64,8,112,0,156,0,0,19,58,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,8,4,59,0,0,0,0,0,132,4,53,0,0,9,198,0,0,97,61],[0,0,5,65,8,128,1,151,0,0,0,248,6,96,2,16,0,0,0,0,6,134,1,159,0,0,5,70,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,150,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,143,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,166,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,159,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,182,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,175,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,198,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,191,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,214,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,207,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,230,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,223,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,247,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,239,0,0,65,61,0,0,0,0,10,7,0,75],[0,0,17,6,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,17,20,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,17,13,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,16,3,16,0,156],[0,0,19,58,0,0,33,61,0,0,0,1,2,32,1,144,0,0,19,58,0,0,193,61,0,0,0,64,0,16,4,63],[0,0,5,8,1,0,0,65,0,0,5,8,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,8,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,17,245,0,0,1,61,0,0,0,31,4,48,1,143],[0,0,0,5,2,48,2,114,0,0,17,58,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,51,0,0,65,61,0,0,0,0,5,4,0,75,0,0,17,72,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,30,0,1,4,48,0,0,0,56,8,64,0,140,0,0,19,39,0,0,65,61],[0,0,0,32,9,64,2,112,0,0,5,8,8,64,0,156,0,0,0,0,9,4,160,25,0,0,5,8,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,64,10,96,0,156,0,0,19,58,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,10,4,59,0,0,0,0,0,169,4,53],[0,0,9,198,0,0,97,61,0,0,5,65,10,160,1,151,0,0,0,248,11,128,2,16,0,0,0,0,10,171,1,159],[0,0,5,69,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,19,55,0,0,1,61,0,0,5,64,13,160,0,156,0,0,19,58,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,9,198,0,0,97,61,0,0,0,248,9,144,2,16,0,0,0,0,2,41,1,159],[0,0,5,70,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,72,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,17,142,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,17,135,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,17,157,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,17,150,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,17,172,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,17,165,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,17,189,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,17,181,0,0,65,61,0,0,0,0,11,6,0,75,0,0,17,204,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,17,218,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,17,211,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,16,4,16,0,156,0,0,19,58,0,0,33,61],[0,0,0,1,3,48,1,144,0,0,19,58,0,0,193,61,0,0,0,64,0,16,4,63,0,0,5,8,1,0,0,65],[0,0,5,8,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,8,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,5,8,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,19,1,16,1,199,0,0,128,16,2,0,0,57,20,28,20,13,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,1,57,0,0,97,61,0,0,0,18,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,18,1,16,1,152,0,5,0,0,0,4,0,29,0,0,18,33,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,18,20,0,0,97,61,0,0,0,0,101,82,0,217,0,0,0,0,4,69,0,75,0,0,18,29,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,29],[0,0,0,6,1,16,0,107,0,0,0,0,1,0,0,25,0,0,0,1,1,0,64,57,0,0,0,1,1,16,1,144],[0,0,18,38,0,0,97,61,0,0,5,94,1,0,0,65,0,0,0,0,0,16,4,53,0,0,0,17,1,0,0,57],[0,0,0,81,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,84,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,8,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,5,8,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,5,43,1,16,1,199],[0,0,128,10,2,0,0,57,20,28,20,13,0,0,4,15,0,0,0,1,2,32,1,144,0,0,18,65,0,0,97,61],[0,0,0,0,1,1,4,59,0,0,0,6,1,16,0,107,0,0,18,66,0,0,161,61,0,0,0,64,1,0,4,61],[0,0,0,100,2,16,0,57,0,0,5,92,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,68,2,16,0,57],[0,0,5,93,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,23,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,18,3,0,3,103],[0,0,0,0,1,19,3,79,0,0,0,0,1,1,4,59,0,0,5,17,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,17,2,32,1,151,0,0,5,17,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,17,2,32,0,156],[0,0,0,0,5,6,192,25,0,0,0,0,2,5,0,75,0,0,1,57,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,16,5,16,0,156,0,0,1,57,0,0,33,61],[0,0,0,0,5,20,0,73,0,0,0,32,6,32,0,57,0,0,5,17,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,17,5,80,1,151,0,0,5,17,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,17,5,80,0,156],[0,0,0,0,2,7,192,25,0,0,0,0,2,2,0,75,0,0,1,57,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,16,8,80,0,156],[0,0,19,58,0,0,33,61,0,0,0,1,7,112,1,144,0,0,19,58,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,57,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,18,137,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,18,129,0,0,65,61,0,0,0,0,7,3,0,75,0,0,18,152,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,18,171,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,18,177,0,0,33,61,0,0,0,68,2,16,0,57,0,0,5,91,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,2,184,0,0,1,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,29,3,0,0,57],[0,0,2,184,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,86,5,32,0,156,0,0,18,188,0,0,65,61,0,0,0,68,2,16,0,57,0,0,5,90,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,2,184,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,8,2,0,0,65,0,0,0,0,3,0,4,20,0,0,5,8,4,48,0,156],[0,0,0,0,3,2,128,25,0,0,5,8,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,87,1,16,1,199,0,0,0,1,2,0,0,57],[20,28,20,13,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,5,8,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,18,226,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,18,219,0,0,65,61,0,0,0,0,6,5,0,75,0,0,18,240,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,19,0,0,0,1,3,85,0,0,0,64,4,0,4,61,0,0,0,1,2,32,1,144],[0,0,19,7,0,0,97,61,0,0,0,0,1,0,4,51,0,0,5,18,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,88,1,0,0,65,0,0,0,0,1,0,192,25],[0,0,0,0,0,20,4,53,0,0,5,8,1,0,0,65,0,0,5,8,2,64,0,156,0,0,0,0,4,1,128,25],[0,0,0,64,1,64,2,16,0,0,5,89,1,16,1,199,0,0,20,29,0,1,4,46,0,0,0,31,2,48,1,143],[0,0,0,5,5,48,2,114,0,0,19,19,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,19,11,0,0,65,61,0,0,0,0,6,2,0,75],[0,0,19,34,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,8,1,0,0,65,0,0,5,8,2,64,0,156],[0,0,0,0,4,1,128,25,0,0,0,64,1,64,2,16,0,0,6,134,0,0,1,61,0,0,5,64,8,96,0,156],[0,0,19,58,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,9,4,59,0,0,0,0,0,152,4,53],[0,0,9,198,0,0,97,61,0,0,0,248,10,64,2,16,0,0,5,65,9,144,1,151,0,0,0,0,9,169,1,159],[0,0,5,17,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,64,9,96,0,156,0,0,19,62,0,0,161,61,0,0,5,94,1,0,0,65,0,0,0,0,0,16,4,53],[0,0,0,65,1,0,0,57,0,0,0,81,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,11,2,4,59],[0,0,0,0,0,185,4,53,0,0,9,198,0,0,97,61,0,0,5,65,2,176,1,151,0,0,5,70,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,16,9,144,1,151,0,0,0,56,13,144,0,140,0,0,19,117,0,0,65,61,0,0,0,32,13,144,2,112],[0,0,5,8,12,144,0,156,0,0,0,0,13,9,160,25,0,0,5,8,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,64,14,160,0,156,0,0,19,58,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,9,198,0,0,97,61,0,0,0,248,11,192,2,16],[0,0,0,0,2,43,1,159,0,0,5,71,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,130,0,0,1,61,0,0,5,64,13,160,0,156,0,0,19,58,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,9,198,0,0,97,61,0,0,0,248,9,144,2,16,0,0,0,0,2,41,1,159],[0,0,5,70,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,19,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,146,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,139,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,161,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,154,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,176,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,169,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,193,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,185,0,0,65,61,0,0,0,0,11,7,0,75,0,0,19,208,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,222,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,215,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,16,4,16,0,156,0,0,19,58,0,0,33,61],[0,0,0,1,3,48,1,144,0,0,19,58,0,0,193,61,0,0,0,64,0,16,4,63,0,0,5,8,1,0,0,65],[0,0,5,8,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,8,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,17,245,0,0,1,61,0,0,0,0,4,3,0,75,0,0,20,4,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,253,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,20,11,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,20,16,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,21,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,20,26,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,28,0,0,4,50,0,0,20,29,0,1,4,46,0,0,20,30,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,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],[156,77,83,90,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],[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],[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],[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],[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],[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],[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],[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],[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],[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],[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,0,0,0,0,0,0,0,0,0,0,0,0,0],[123,9,174,214,17,35,121,18,1,120,40,210,252,224,88,7,87,230,120,117,80,34,1,169,203,222,160,152,112,237,204,243]],"entry_point_address":"0xc54E30ABB6a3eeD1b9DC0494D90c9C22D76FbA7e","entry_point_code":[[0,4,0,0,0,0,0,2,0,11,0,0,0,0,0,2,0,0,0,0,3,1,0,25,0,0,0,96,4,48,2,112],[0,0,6,86,3,64,1,151,0,3,0,0,0,49,3,85,0,2,0,0,0,1,3,85,0,0,6,86,0,64,1,157],[0,0,0,1,2,32,1,144,0,0,0,34,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,85,0,0,65,61,0,0,0,0,2,1,4,59,0,0,0,224,2,32,2,112],[0,0,6,179,4,32,0,156,0,0,0,120,0,0,161,61,0,0,6,180,4,32,0,156,0,0,0,135,0,0,33,61],[0,0,6,190,4,32,0,156,0,0,0,198,0,0,161,61,0,0,6,191,1,32,0,156,0,0,0,240,0,0,33,61],[0,0,6,194,1,32,0,156,0,0,1,95,0,0,97,61,0,0,6,195,1,32,0,156,0,0,5,1,0,0,193,61],[0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,5,1,0,0,193,61,25,83,23,213,0,0,4,15],[0,0,0,0,1,0,0,25,0,0,25,84,0,1,4,46,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75],[0,0,5,1,0,0,193,61,0,0,6,87,1,0,0,65,0,0,0,0,0,16,4,57,0,0,0,0,1,0,4,16],[0,11,0,0,0,1,0,29,0,0,0,4,0,16,4,67,0,0,6,86,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,6,86,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,6,88,1,16,1,199],[0,0,128,2,2,0,0,57,25,83,25,78,0,0,4,15,0,0,0,1,2,32,1,144,0,0,10,8,0,0,97,61],[0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75,0,0,5,1,0,0,193,61,0,0,6,89,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,6,86,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,6,86,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,6,88,1,16,1,199,0,0,128,2,2,0,0,57,25,83,25,78,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,10,8,0,0,97,61,0,0,0,0,1,1,4,59,0,0,6,90,1,16,0,156,0,0,5,1,0,0,193,61],[0,0,6,91,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,11,2,0,0,41],[0,0,0,4,3,32,0,140,0,0,2,6,0,0,193,61,0,0,0,1,2,0,0,57,0,0,0,1,3,0,0,49],[0,0,2,17,0,0,1,61,0,0,0,0,1,3,0,75,0,0,5,1,0,0,193,61,0,0,6,96,1,0,0,65],[0,0,0,0,2,1,4,26,0,0,0,0,2,2,0,75,0,0,5,1,0,0,193,61,0,0,0,1,2,0,0,57],[0,6,0,0,0,2,0,29,0,0,0,0,0,33,4,27,0,0,0,0,1,0,4,18,0,0,6,97,1,16,1,151],[0,0,0,0,2,0,4,16,0,0,0,0,1,33,0,75,0,0,0,166,0,0,193,61,0,3,0,0,0,2,0,29],[0,0,6,101,1,0,0,65,0,0,0,0,0,16,4,57,0,0,6,86,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,6,86,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,6,102,1,16,1,199],[0,0,128,11,2,0,0,57,25,83,25,78,0,0,4,15,0,0,0,1,2,32,1,144,0,0,10,8,0,0,97,61],[0,0,0,0,2,1,4,59,0,0,3,233,1,0,0,138,0,0,0,0,1,18,0,75,0,0,2,30,0,0,161,61],[0,0,6,224,1,0,0,65,0,0,0,0,0,16,4,53,0,0,0,17,1,0,0,57,0,0,3,213,0,0,1,61],[0,0,6,199,1,32,0,156,0,0,0,152,0,0,161,61,0,0,6,200,1,32,0,156,0,0,0,187,0,0,161,61],[0,0,6,201,1,32,0,156,0,0,0,221,0,0,33,61,0,0,6,204,1,32,0,156,0,0,1,87,0,0,97,61],[0,0,6,205,1,32,0,156,0,0,5,1,0,0,193,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75],[0,0,5,1,0,0,193,61,0,0,0,8,1,0,0,57,0,0,2,2,0,0,1,61,0,0,6,181,4,32,0,156],[0,0,0,210,0,0,161,61,0,0,6,182,4,32,0,156,0,0,1,53,0,0,33,61,0,0,6,185,4,32,0,156],[0,0,1,101,0,0,97,61,0,0,6,186,1,32,0,156,0,0,5,1,0,0,193,61,0,0,0,0,1,0,4,22],[0,0,0,0,1,1,0,75,0,0,5,1,0,0,193,61,0,0,0,100,1,0,0,57,0,0,0,0,0,16,4,27],[0,0,0,1,1,0,0,57,0,0,0,0,0,16,4,71,0,0,0,0,1,0,0,25,0,0,25,84,0,1,4,46],[0,0,6,209,1,32,0,156,0,0,0,176,0,0,33,61,0,0,6,213,1,32,0,156,0,0,1,75,0,0,97,61],[0,0,6,214,1,32,0,156,0,0,1,62,0,0,97,61,0,0,6,215,1,32,0,156,0,0,5,1,0,0,193,61],[0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,5,1,0,0,193,61,25,83,14,25,0,0,4,15],[0,0,0,0,1,0,0,25,0,0,25,84,0,1,4,46,0,0,6,98,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,6,99,1,0,0,65,0,0,0,196,0,16,4,63,0,0,6,100,1,0,0,65,0,0,25,85,0,1,4,48],[0,0,6,210,1,32,0,156,0,0,1,82,0,0,97,61,0,0,6,211,1,32,0,156,0,0,1,68,0,0,97,61],[0,0,6,212,1,32,0,156,0,0,5,1,0,0,193,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75],[0,0,5,1,0,0,193,61,0,0,0,7,1,0,0,57,0,0,2,2,0,0,1,61,0,0,6,206,1,32,0,156],[0,0,1,227,0,0,97,61,0,0,6,207,1,32,0,156,0,0,1,136,0,0,97,61,0,0,6,208,1,32,0,156],[0,0,5,1,0,0,193,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,5,1,0,0,193,61],[0,0,0,10,1,0,0,57,0,0,1,79,0,0,1,61,0,0,6,196,4,32,0,156,0,0,1,233,0,0,97,61],[0,0,6,197,1,32,0,156,0,0,1,217,0,0,97,61,0,0,6,198,1,32,0,156,0,0,5,1,0,0,193,61],[0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,5,1,0,0,193,61,25,83,19,33,0,0,4,15],[0,0,0,0,1,0,0,25,0,0,25,84,0,1,4,46,0,0,6,187,1,32,0,156,0,0,1,254,0,0,97,61],[0,0,6,188,1,32,0,156,0,0,1,222,0,0,97,61,0,0,6,189,1,32,0,156,0,0,5,1,0,0,193,61],[0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,5,1,0,0,193,61,0,0,0,6,1,0,0,57],[0,0,2,2,0,0,1,61,0,0,6,202,1,32,0,156,0,0,1,90,0,0,97,61,0,0,6,203,1,32,0,156],[0,0,5,1,0,0,193,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,5,1,0,0,193,61],[0,0,0,13,1,0,0,57,0,0,0,0,5,1,4,26,0,0,0,0,2,5,0,75,0,0,4,5,0,0,193,61],[0,0,6,98,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,6,178,1,0,0,65,0,0,0,173,0,0,1,61],[0,0,6,192,1,32,0,156,0,0,1,125,0,0,97,61,0,0,6,193,1,32,0,156,0,0,5,1,0,0,193,61],[0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,5,1,0,0,193,61,0,0,6,220,1,0,0,65],[0,0,0,128,0,16,4,63,0,0,6,86,1,0,0,65,0,0,0,0,2,0,4,20,0,0,6,86,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,6,221,1,16,1,199,0,0,0,2,2,0,0,57],[25,83,25,78,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,6,86,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,1,18,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,11,0,0,65,61,0,0,0,0,6,5,0,75,0,0,1,32,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,4,82,0,0,97,61,0,0,0,0,1,0,4,51,0,0,6,222,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,6,222,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,11,0,0,0,8,0,29],[25,83,11,78,0,0,4,15,0,0,0,11,1,0,0,41,25,83,24,189,0,0,4,15,0,0,0,0,1,0,0,25],[0,0,25,85,0,1,4,48,0,0,6,183,1,32,0,156,0,0,1,130,0,0,97,61,0,0,6,184,1,32,0,156],[0,0,5,1,0,0,193,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,5,1,0,0,193,61],[0,0,0,5,1,0,0,57,0,0,1,79,0,0,1,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75],[0,0,5,1,0,0,193,61,25,83,11,89,0,0,4,15,0,0,0,0,1,0,0,25,0,0,25,84,0,1,4,46],[0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,5,1,0,0,193,61,0,0,0,3,1,0,0,57],[0,0,0,0,1,1,4,26,0,0,0,224,1,16,2,16,0,0,2,3,0,0,1,61,0,0,0,0,1,0,4,22],[0,0,0,0,1,1,0,75,0,0,5,1,0,0,193,61,0,0,0,1,1,0,0,57,0,0,0,0,1,1,4,26],[0,0,6,97,1,16,1,151,0,0,2,3,0,0,1,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75],[0,0,5,1,0,0,193,61,0,0,0,4,1,0,0,57,0,0,2,2,0,0,1,61,25,83,18,136,0,0,4,15],[0,0,0,0,1,0,0,25,0,0,25,84,0,1,4,46,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75],[0,0,5,1,0,0,193,61,0,0,0,11,1,0,0,57,0,0,2,2,0,0,1,61,0,0,0,0,1,0,4,22],[0,0,0,0,1,1,0,75,0,0,5,1,0,0,193,61,25,83,21,189,0,0,4,15,0,0,0,0,1,0,0,25],[0,0,25,84,0,1,4,46,0,0,0,0,2,0,4,22,0,0,0,0,2,2,0,75,0,0,5,1,0,0,193,61],[0,0,0,4,2,48,0,138,0,0,0,32,2,32,0,140,0,0,5,1,0,0,65,61,0,0,0,255,2,0,0,57],[0,0,0,0,2,2,4,70,0,0,0,4,1,16,3,112,0,0,0,0,1,1,4,59,0,0,0,0,1,18,0,75],[0,0,1,252,0,0,97,61,0,0,6,98,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,55,1,0,0,57,0,0,0,164,0,16,4,63,0,0,6,217,1,0,0,65],[0,0,0,196,0,16,4,63,0,0,6,218,1,0,0,65,0,0,0,228,0,16,4,63,0,0,6,219,1,0,0,65],[0,0,25,85,0,1,4,48,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,5,1,0,0,193,61],[0,0,6,91,1,0,0,65,0,0,2,3,0,0,1,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75],[0,0,5,1,0,0,193,61,25,83,24,126,0,0,4,15,0,0,0,0,1,0,0,25,0,0,25,84,0,1,4,46],[0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,5,1,0,0,193,61,0,0,6,87,1,0,0,65],[0,0,0,0,0,16,4,57,0,0,0,0,1,0,4,16,0,11,0,0,0,1,0,29,0,0,0,4,0,16,4,67],[0,0,6,86,1,0,0,65,0,0,0,0,2,0,4,20,0,0,6,86,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,192,1,32,2,16,0,0,6,88,1,16,1,199,0,0,128,2,2,0,0,57,25,83,25,78,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,10,8,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75],[0,0,5,1,0,0,97,61,0,0,0,64,4,0,4,61,0,0,6,225,1,0,0,65,0,0,0,0,5,20,4,54],[0,0,0,4,1,64,0,57,0,0,3,232,2,0,0,57,0,10,0,0,0,2,0,29,0,0,0,0,0,33,4,53],[0,0,0,36,7,64,0,57,0,0,0,0,0,7,4,53,0,0,0,0,1,0,4,20,0,0,0,11,6,0,0,41],[0,0,0,4,2,96,0,140,0,0,1,195,0,0,97,61,0,0,6,86,2,0,0,65,0,0,6,86,3,16,0,156],[0,0,0,0,1,2,128,25,0,0,6,86,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,6,226,1,16,1,199,0,0,0,0,2,6,0,25],[0,9,0,0,0,5,0,29,0,8,0,0,0,4,0,29,0,7,0,0,0,7,0,29,25,83,25,73,0,0,4,15],[0,0,0,7,7,0,0,41,0,0,0,8,4,0,0,41,0,0,0,9,5,0,0,41,0,0,0,11,6,0,0,41],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,1,6,86,0,48,1,157,0,0,6,86,3,48,1,151],[0,3,0,0,0,1,3,85,0,0,0,1,2,32,1,144,0,0,4,124,0,0,97,61,0,0,6,94,1,64,0,156],[0,0,3,210,0,0,33,61,0,0,0,64,0,64,4,63,0,0,6,225,1,0,0,65,0,0,0,0,0,21,4,53],[0,0,1,244,1,0,0,57,0,0,0,0,0,23,4,53,0,0,0,68,1,64,0,57,0,0,0,1,2,0,0,57],[0,0,0,0,0,33,4,53,0,0,0,68,1,0,0,57,0,0,0,0,0,20,4,53,0,0,6,140,1,64,0,156],[0,0,3,210,0,0,33,61,0,0,0,128,1,64,0,57,0,0,0,64,0,16,4,63,0,0,0,0,3,4,4,51],[0,0,0,0,1,0,4,20,0,0,0,4,4,96,0,140,0,0,4,157,0,0,193,61,0,0,0,1,1,0,0,49],[0,0,4,175,0,0,1,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,5,1,0,0,193,61],[0,0,0,9,1,0,0,57,0,0,2,2,0,0,1,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75],[0,0,5,1,0,0,193,61,0,0,0,12,1,0,0,57,0,0,2,2,0,0,1,61,0,0,0,0,1,0,4,22],[0,0,0,0,1,1,0,75,0,0,5,1,0,0,193,61,25,83,17,104,0,0,4,15,0,0,0,0,1,0,0,25],[0,0,25,84,0,1,4,46,0,0,0,0,2,0,4,22,0,0,0,0,2,2,0,75,0,0,5,1,0,0,193,61],[0,0,0,4,2,48,0,138,0,0,0,64,2,32,0,140,0,0,5,1,0,0,65,61,0,0,0,36,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,5,1,0,0,193,61,0,0,0,4,1,16,3,112,0,0,0,0,1,1,4,59],[0,0,0,255,3,0,0,57,0,0,0,0,0,19,4,71,0,0,0,0,1,2,0,75,0,0,4,116,0,0,193,61],[0,0,0,0,1,0,0,25,0,0,25,84,0,1,4,46,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75],[0,0,5,1,0,0,193,61,0,0,0,2,1,0,0,57,0,0,0,0,1,1,4,26,0,0,0,128,0,16,4,63],[0,0,6,216,1,0,0,65,0,0,25,84,0,1,4,46,0,0,6,86,4,0,0,65,0,0,6,86,3,16,0,156],[0,0,0,0,1,4,128,25,0,0,0,192,1,16,2,16,0,0,6,92,1,16,1,199,25,83,25,73,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,6,86,0,16,1,157],[0,0,6,86,3,16,1,151,0,0,0,96,1,0,0,57,0,0,0,0,4,3,0,75,0,0,3,208,0,0,193,61],[0,0,0,0,2,2,0,75,0,0,5,1,0,0,97,61,0,0,0,0,1,1,4,51,0,0,0,0,1,1,0,75],[0,0,5,1,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,6,95,1,0,0,65,0,0,25,84,0,1,4,46,0,11,0,0,0,2,0,29,0,0,6,103,1,0,0,65],[0,0,0,0,0,16,4,57,0,0,6,86,3,0,0,65,0,0,0,0,1,0,4,20,0,0,6,86,2,16,0,156],[0,0,0,0,1,3,128,25,0,0,0,192,1,16,2,16,0,0,6,102,1,16,1,199,0,0,128,11,2,0,0,57],[25,83,25,78,0,0,4,15,0,0,0,1,2,32,1,144,0,0,10,8,0,0,97,61,0,0,0,0,1,1,4,59],[0,0,0,11,2,0,0,57,0,0,0,0,0,18,4,27,0,0,6,104,1,0,0,65,0,0,0,0,0,16,4,57],[0,0,0,0,1,0,4,20,0,0,6,86,2,16,0,156,0,0,6,86,1,0,128,65,0,0,0,192,1,16,2,16],[0,0,6,102,1,16,1,199,0,0,128,11,2,0,0,57,25,83,25,78,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,10,8,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,10,2,0,0,57,0,0,0,0,3,2,4,26],[0,0,6,105,3,48,1,151,0,0,0,0,1,19,1,159,0,0,0,0,0,18,4,27,0,0,6,106,1,0,0,65],[0,0,0,0,0,16,4,57,0,0,6,86,3,0,0,65,0,0,0,0,1,0,4,20,0,0,6,86,2,16,0,156],[0,0,0,0,1,3,128,25,0,0,0,192,1,16,2,16,0,0,6,102,1,16,1,199,0,0,128,11,2,0,0,57],[25,83,25,78,0,0,4,15,0,0,0,1,2,32,1,144,0,0,10,8,0,0,97,61,0,0,0,0,1,1,4,59],[0,0,0,9,2,0,0,57,0,0,0,0,0,18,4,27,0,0,6,107,1,0,0,65,0,0,0,0,0,16,4,57],[0,0,0,0,1,0,4,20,0,0,6,86,2,16,0,156,0,0,6,86,1,0,128,65,0,0,0,192,1,16,2,16],[0,0,6,102,1,16,1,199,0,0,128,11,2,0,0,57,25,83,25,78,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,10,8,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,6,108,1,0,0,65,0,0,0,0,0,16,4,57,0,0,6,86,3,0,0,65,0,0,0,0,1,0,4,20],[0,0,6,86,2,16,0,156,0,0,0,0,1,3,128,25,0,0,0,192,1,16,2,16,0,0,6,102,1,16,1,199],[0,0,128,11,2,0,0,57,25,83,25,78,0,0,4,15,0,0,0,1,2,32,1,144,0,0,10,8,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,6,109,1,0,0,65],[0,0,0,0,0,16,4,57,0,0,0,0,1,0,4,20,0,0,6,86,2,16,0,156,0,0,6,86,1,0,128,65],[0,0,0,192,1,16,2,16,0,0,6,102,1,16,1,199,0,0,128,11,2,0,0,57,25,83,25,78,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,10,8,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,4,2,0,0,57],[0,0,0,0,0,18,4,27,0,0,6,110,1,0,0,65,0,0,0,0,0,16,4,57,0,0,6,86,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,6,86,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,6,102,1,16,1,199,0,0,128,11,2,0,0,57,25,83,25,78,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,10,8,0,0,97,61,0,0,0,0,1,1,4,59,0,0,6,97,1,16,1,151,0,0,0,5,2,0,0,57],[0,0,0,0,3,2,4,26,0,0,6,105,3,48,1,151,0,0,0,0,1,19,1,159,0,0,0,0,0,18,4,27],[0,0,0,3,1,0,0,57,0,0,0,0,2,1,4,26,0,0,6,111,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,0,6,1,0,0,57,0,0,0,11,2,0,0,41,0,0,0,0,0,33,4,27,0,0,0,0,2,0,4,22],[0,0,0,12,1,0,0,57,0,1,0,0,0,2,0,29,0,0,0,0,0,33,4,27,0,0,0,0,1,0,4,20],[0,2,0,0,0,1,0,29,0,0,0,64,1,0,4,61,0,0,0,0,5,1,0,25,0,0,6,112,1,16,0,156],[0,0,3,210,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,6,113,2,0,0,65,0,0,0,0,0,33,4,53,0,0,0,96,1,80,0,57,0,0,6,114,2,0,0,65],[0,0,0,0,0,33,4,53,0,0,0,64,1,80,0,57,0,0,6,115,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,6,116,1,0,0,65,0,0,0,0,0,26,4,53],[0,5,128,16,0,0,0,61,0,9,0,0,0,0,0,29,0,11,0,0,0,5,0,29,0,0,6,86,1,160,0,156],[0,0,6,86,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,6,86,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,6,86,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,6,117,1,16,1,199,0,0,0,5,2,0,0,41,25,83,25,78,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,5,1,0,0,97,61,0,0,0,64,2,0,4,61,0,0,0,0,1,1,4,59],[0,10,0,0,0,1,0,29,0,0,0,11,6,0,0,41,0,0,0,0,1,6,4,51,0,0,0,0,3,1,0,75],[0,0,2,213,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,2,206,0,0,65,61,0,0,0,0,3,33,0,25,0,0,0,0,0,3,4,53,0,0,6,86,3,32,0,156],[0,0,6,86,4,0,0,65,0,0,0,0,2,4,128,25,0,0,0,64,2,32,2,16,0,0,6,86,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,6,86,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,25,83,25,78,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,0,6,86,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,2,246,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,2,239,0,0,65,61,0,0,0,31,5,80,1,144,0,0,3,4,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,5,71,0,0,97,61,0,0,0,0,2,0,4,51,0,0,0,32,12,176,0,57,0,0,0,11,6,0,0,41],[0,0,0,0,1,6,4,51,0,0,0,0,3,1,0,75,0,0,3,23,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,3,16,0,0,65,61,0,0,0,10,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,6,94,4,208,0,156],[0,0,3,210,0,0,33,61,0,0,0,1,3,48,1,144,0,0,3,210,0,0,193,61,0,0,0,64,0,208,4,63],[0,0,0,13,10,0,0,57,0,0,0,0,3,10,4,26,0,0,6,94,4,48,0,156,0,0,3,210,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,6,118,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,0,116,0,0,97,61],[0,0,0,1,6,48,0,140,0,0,0,6,3,0,0,41,0,0,3,80,0,0,97,61,0,0,0,0,3,10,4,26],[0,0,0,0,4,99,0,75,0,0,6,75,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,6,75,0,0,161,61,0,0,6,118,7,96,0,65,0,0,0,0,9,7,4,26],[0,0,0,0,0,160,4,53,0,0,6,118,6,80,0,65,0,0,0,0,8,6,4,26,0,0,0,0,9,137,0,75],[0,0,3,80,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,6,75,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,3,55,0,0,129,61,0,0,0,0,3,10,4,26,0,0,0,0,2,3,0,75,0,0,0,116,0,0,97,61],[0,0,0,1,2,48,0,138,0,0,0,0,2,35,1,112,0,0,3,92,0,0,193,61,0,0,0,14,2,0,0,57],[0,0,0,0,3,2,4,26,0,0,6,94,4,48,1,151,0,0,6,94,5,64,0,156,0,0,0,116,0,0,97,61],[0,0,6,119,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,8,0,0,0,12,0,29,0,11,0,0,0,10,0,29,0,0,6,120,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,4,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,3,114,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,3,107,0,0,65,61,0,10,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,6,86,2,208,0,156],[0,0,6,86,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,6,86,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,6,86,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,7,0,0,0,13,0,29],[25,83,25,73,0,0,4,15,0,0,0,7,11,0,0,41,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,0,6,86,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,3,155,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,3,147,0,0,65,61,0,0,0,31,6,64,1,144],[0,0,0,11,9,0,0,41,0,0,0,8,10,0,0,41,0,0,3,172,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,10,5,0,0,41],[0,0,5,103,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,6,94,4,16,0,156],[0,0,3,210,0,0,33,61,0,0,0,1,2,32,1,144,0,0,3,210,0,0,193,61,0,0,0,64,0,16,4,63],[0,0,0,32,2,48,0,140,0,0,5,1,0,0,65,61,0,0,0,9,3,0,0,41,0,0,0,2,2,48,0,140],[0,9,0,1,0,48,0,61,0,0,2,178,0,0,161,61,0,0,0,0,2,9,4,26,0,0,0,0,3,2,0,75],[0,0,5,132,0,0,193,61,0,0,0,68,2,16,0,57,0,0,6,178,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,6,98,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,190,0,0,1,61],[0,0,6,93,1,48,0,156,0,0,3,216,0,0,65,61,0,0,6,224,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,6,166,1,0,0,65,0,0,25,85,0,1,4,48],[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,6,94,6,64,0,156,0,0,3,210,0,0,33,61],[0,0,0,1,5,80,1,144,0,0,3,210,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,245,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,237,0,0,65,61,0,0,0,0,7,4,0,75,0,0,2,20,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,2,20,0,0,1,61,0,0,6,118,2,0,0,65,0,0,0,1,3,0,0,57,0,0,6,124,4,0,0,65],[0,0,4,17,0,0,1,61,0,0,0,1,6,0,0,138,0,0,0,0,6,101,0,75,0,0,0,116,0,0,97,61],[0,0,0,1,6,80,0,57,0,0,0,0,6,86,1,112,0,0,4,72,0,0,97,61,0,0,0,0,6,5,0,75],[0,0,5,3,0,0,97,61,0,0,6,121,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,4,12,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,4,39,0,0,129,61],[0,0,6,122,6,144,0,65,0,0,0,0,6,6,4,26,0,0,6,123,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,6,75,0,0,161,61,0,0,6,118,8,96,0,65,0,0,0,0,9,117,0,75,0,0,6,75,0,0,161,61],[0,0,0,0,9,8,4,26,0,0,6,118,10,112,0,65,0,0,0,0,7,10,4,26,0,0,0,0,11,121,0,75],[0,0,4,9,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,6,75,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,6,124,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,6,124,7,112,0,156,0,0,0,0,8,5,192,25,0,0,0,0,5,8,0,75],[0,0,0,116,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,4,28,0,0,65,61,0,0,4,9,0,0,1,61],[0,0,0,14,6,0,0,57,0,0,0,0,7,6,4,26,0,0,6,94,8,112,1,151,0,0,0,1,8,128,0,138],[0,0,6,94,9,128,0,156,0,0,0,116,0,0,33,61,0,0,6,119,7,112,1,151,0,0,0,0,7,120,1,159],[0,0,0,0,0,118,4,27,0,0,4,15,0,0,1,61,0,0,0,31,2,48,1,143,0,0,0,5,4,48,2,114],[0,0,4,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,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,4,86,0,0,65,61,0,0,0,0,5,2,0,75,0,0,4,109,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,6,86,1,0,0,65,0,0,6,86,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,25,85,0,1,4,48],[0,0,6,98,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,6,223,1,0,0,65,0,0,0,173,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,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,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,129,0,0,65,61,0,0,0,0,6,4,0,75,0,0,4,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,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,86,1,0,0,65,0,0,6,86,4,32,0,156,0,0,0,0,2,1,128,25,0,0,0,64,1,32,2,16],[0,0,4,113,0,0,1,61,0,0,6,86,2,0,0,65,0,0,6,86,4,80,0,156,0,0,0,0,5,2,128,25],[0,0,0,64,4,80,2,16,0,0,6,86,5,48,0,156,0,0,0,0,3,2,128,25,0,0,0,96,3,48,2,16],[0,0,0,0,3,67,1,159,0,0,6,86,4,16,0,156,0,0,0,0,1,2,128,25,0,0,0,192,1,16,2,16],[0,0,0,0,1,19,1,159,0,0,0,0,2,6,0,25,25,83,25,73,0,0,4,15,0,3,0,0,0,1,3,85],[0,0,0,96,1,16,2,112,0,1,6,86,0,16,1,157,0,0,6,86,1,16,1,151,0,0,0,0,3,1,0,75],[0,0,4,197,0,0,193,61,0,0,0,1,1,32,1,144,0,0,4,240,0,0,97,61,0,0,0,64,1,0,4,61],[0,0,0,68,2,16,0,57,0,0,6,228,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,0,0,0,50,4,53,0,0,6,98,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,6,86,2,0,0,65],[0,0,6,86,3,16,0,156,0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16,0,0,6,126,1,16,1,199],[0,0,25,85,0,1,4,48,0,0,0,63,3,16,0,57,0,0,0,32,4,0,0,138,0,0,0,0,3,67,1,111],[0,0,0,64,4,0,4,61,0,0,0,0,3,52,0,25,0,0,0,0,5,67,0,75,0,0,0,0,5,0,0,25],[0,0,0,1,5,0,64,57,0,0,6,94,6,48,0,156,0,0,3,210,0,0,33,61,0,0,0,1,5,80,1,144],[0,0,3,210,0,0,193,61,0,0,0,64,0,48,4,63,0,0,0,31,3,16,1,143,0,0,0,0,4,20,4,54],[0,0,0,3,5,0,3,103,0,0,0,5,1,16,2,114,0,0,4,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,116,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,22,0,75,0,0,4,216,0,0,65,61],[0,0,0,0,6,3,0,75,0,0,4,177,0,0,97,61,0,0,0,5,1,16,2,16,0,0,0,0,5,21,3,79],[0,0,0,0,1,20,0,25,0,0,0,3,3,48,2,16,0,0,0,0,4,1,4,51,0,0,0,0,4,52,1,207],[0,0,0,0,4,52,2,47,0,0,0,0,5,5,4,59,0,0,1,0,3,48,0,137,0,0,0,0,5,53,2,47],[0,0,0,0,3,53,1,207,0,0,0,0,3,67,1,159,0,0,0,0,0,49,4,53,0,0,4,177,0,0,1,61],[0,0,6,87,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,6,86,1,0,0,65,0,0,0,0,2,0,4,20,0,0,6,86,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,192,1,32,2,16,0,0,6,88,1,16,1,199,0,0,128,2,2,0,0,57,25,83,25,78,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,10,8,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75],[0,0,5,5,0,0,193,61,0,0,0,0,1,0,0,25,0,0,25,85,0,1,4,48,0,0,0,0,0,16,4,53],[0,0,0,232,0,0,1,61,0,0,0,64,2,0,4,61,0,0,6,227,1,0,0,65,0,0,0,0,0,18,4,53],[0,9,0,0,0,2,0,29,0,0,0,4,1,32,0,57,0,0,0,10,2,0,0,41,0,0,0,0,0,33,4,53],[0,0,0,0,1,0,4,20,0,0,0,11,2,0,0,41,0,0,0,4,2,32,0,140,0,0,5,35,0,0,97,61],[0,0,6,86,2,0,0,65,0,0,6,86,3,16,0,156,0,0,0,0,1,2,128,25,0,0,0,9,4,0,0,41],[0,0,6,86,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,6,166,1,16,1,199,0,0,0,11,2,0,0,41,25,83,25,73,0,0,4,15],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,1,6,86,0,48,1,157,0,0,6,86,3,48,1,151],[0,3,0,0,0,1,3,85,0,0,0,1,2,32,1,144,0,0,5,42,0,0,97,61,0,0,0,9,1,0,0,41],[0,0,6,94,1,16,0,156,0,0,3,210,0,0,33,61,0,0,0,9,1,0,0,41,0,0,0,64,0,16,4,63],[0,0,0,0,1,0,0,25,0,0,25,84,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,5,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,5,47,0,0,65,61,0,0,0,0,6,4,0,75],[0,0,5,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,4,152,0,0,1,61,0,0,0,31,2,48,1,143],[0,0,0,5,4,48,2,114,0,0,5,83,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,5,75,0,0,65,61,0,0,0,0,5,2,0,75],[0,0,5,98,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,6,86,1,0,0,65,0,0,6,86,2,176,0,156],[0,0,0,0,11,1,128,25,0,0,0,64,1,176,2,16,0,0,4,113,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,116,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,108,0,0,65,61],[0,0,0,0,6,4,0,75,0,0,5,131,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,152,0,0,1,61],[0,0,6,121,3,32,0,65,0,0,0,0,4,3,4,26,0,0,6,118,5,0,0,65,0,0,0,0,0,69,4,27],[0,0,0,11,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,5,194,0,0,65,61,0,0,0,1,6,0,0,57],[0,0,6,124,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,5,158,0,0,129,61,0,0,6,122,4,112,0,65],[0,0,0,0,4,4,4,26,0,0,6,123,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,6,75,0,0,161,61],[0,0,6,118,6,64,0,65,0,0,0,0,7,83,0,75,0,0,6,75,0,0,161,61,0,0,0,0,7,6,4,26],[0,0,0,0,0,160,4,53,0,0,6,118,8,80,0,65,0,0,0,0,5,8,4,26,0,0,0,0,9,87,0,75],[0,0,5,191,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,6,75,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,6,124,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,6,124,5,80,0,156,0,0,0,0,6,3,192,25,0,0,0,0,3,6,0,75],[0,0,0,116,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,5,147,0,0,65,61,0,0,0,1,2,0,0,138],[0,0,0,0,2,35,0,75,0,0,0,116,0,0,97,61,0,0,0,1,2,48,0,57,0,0,0,0,2,50,1,112],[0,0,5,206,0,0,193,61,0,0,0,14,2,0,0,57,0,0,0,0,3,2,4,26,0,0,6,94,4,48,1,151],[0,0,0,1,4,64,0,138,0,0,6,94,5,64,0,156,0,0,0,116,0,0,33,61,0,0,6,119,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,9,0,0,0,3,0,29],[0,0,0,2,2,48,0,107,0,0,6,79,0,0,161,61,0,0,0,10,6,0,0,41,0,0,0,0,2,6,4,51],[0,0,0,0,3,2,0,75,0,0,5,222,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,5,215,0,0,65,61,0,0,0,0,3,18,0,25,0,0,0,0,0,3,4,53],[0,0,6,86,4,0,0,65,0,0,6,86,3,16,0,156,0,0,0,0,1,4,128,25,0,0,0,64,1,16,2,16],[0,0,6,86,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,6,86,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,6,117,1,16,1,199,0,0,128,16,2,0,0,57,25,83,25,78,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,5,1,0,0,97,61,0,0,0,9,3,0,0,41,0,0,0,2,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,6,86,3,32,0,156,0,0,6,86,4,0,0,65,0,0,0,0,2,4,128,25,0,0,6,86,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,6,127,1,16,1,199,0,0,128,13,2,0,0,57,0,0,0,2,3,0,0,57,0,0,6,128,4,0,0,65],[25,83,25,73,0,0,4,15,0,0,0,11,5,0,0,41,0,0,0,1,1,32,1,144,0,0,5,1,0,0,97,61],[0,0,0,64,2,0,4,61,0,0,6,129,1,32,0,156,0,0,3,210,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,6,130,3,0,0,65,0,0,0,0,0,49,4,53],[0,0,0,128,3,32,0,57,0,0,6,131,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,6,129,3,32,0,156,0,0,3,210,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,6,132,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,6,129,2,16,0,156,0,0,3,210,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,6,133,3,0,0,65],[0,0,0,0,0,50,4,53,0,0,0,128,2,16,0,57,0,0,6,131,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,10,0,0,0,1,0,29,0,0,0,0,1,1,0,75,0,0,6,85,0,0,193,61],[0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57,0,0,6,177,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,3,202,0,0,1,61,0,0,6,224,1,0,0,65],[0,0,0,0,0,16,4,53,0,0,0,50,1,0,0,57,0,0,3,213,0,0,1,61,0,0,0,68,2,16,0,57],[0,0,6,125,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,3,202,0,0,1,61,0,0,6,87,1,0,0,65,0,0,0,0,0,16,4,57,0,0,0,3,1,0,0,41],[0,0,0,4,0,16,4,67,0,0,6,86,1,0,0,65,0,0,0,0,2,0,4,20,0,0,6,86,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,6,88,1,16,1,199,0,0,128,2,2,0,0,57],[25,83,25,78,0,0,4,15,0,0,0,1,2,32,1,144,0,0,10,8,0,0,97,61,0,0,0,0,1,1,4,59],[0,0,0,0,1,1,0,75,0,0,5,1,0,0,97,61,0,0,0,64,2,0,4,61,0,0,6,134,1,0,0,65],[0,9,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,3,2,0,0,41],[0,0,0,4,2,32,0,140,0,0,6,128,0,0,97,61,0,0,6,86,2,0,0,65,0,0,6,86,3,16,0,156],[0,0,0,0,1,2,128,25,0,0,0,9,4,0,0,41,0,0,6,86,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,6,135,1,16,1,199],[0,0,0,3,2,0,0,41,25,83,25,73,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,1,6,86,0,48,1,157,0,3,0,0,0,1,3,85,0,0,0,1,1,32,1,144,0,0,6,150,0,0,97,61],[0,0,0,9,1,0,0,41,0,0,6,94,1,16,0,156,0,0,3,210,0,0,33,61,0,0,0,9,3,0,0,41],[0,0,0,64,0,48,4,63,0,0,0,68,1,48,0,57,0,0,6,176,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,6,98,1,0,0,65],[0,0,0,0,0,19,4,53,0,0,0,4,1,48,0,57,0,0,0,4,2,0,0,41,0,0,0,0,0,33,4,53],[0,0,6,86,1,0,0,65,0,0,6,86,2,48,0,156,0,0,0,0,3,1,128,25,0,0,0,64,1,48,2,16],[0,0,6,126,1,16,1,199,0,0,25,85,0,1,4,48,0,0,0,11,1,0,0,41,0,0,0,0,1,1,4,26],[0,0,0,10,1,16,0,108,0,0,6,215,0,0,193,61,0,0,6,87,1,0,0,65,0,0,0,0,0,16,4,57],[0,0,0,3,1,0,0,41,0,0,0,4,0,16,4,67,0,0,6,86,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,6,86,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,6,88,1,16,1,199],[0,0,128,2,2,0,0,57,25,83,25,78,0,0,4,15,0,0,0,1,2,32,1,144,0,0,10,8,0,0,97,61],[0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75,0,0,5,1,0,0,97,61,0,0,0,64,4,0,4,61],[0,0,6,137,1,0,0,65,0,0,0,0,0,20,4,53,0,0,6,86,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,6,86,3,32,0,156,0,0,0,0,2,1,128,25,0,0,6,86,3,64,0,156,0,11,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,6,135,1,16,1,199,0,0,0,3,2,0,0,41,25,83,25,73,0,0,4,15,0,0,0,0,3,1,0,25],[0,0,0,96,3,48,2,112,0,1,6,86,0,48,1,157,0,3,0,0,0,1,3,85,0,0,0,1,1,32,1,144],[0,0,6,222,0,0,97,61,0,0,0,11,1,0,0,41,0,0,6,94,1,16,0,156,0,0,3,210,0,0,33,61],[0,0,0,11,3,0,0,41,0,0,0,64,0,48,4,63,0,0,0,100,1,48,0,57,0,0,6,174,2,0,0,65],[0,0,0,0,0,33,4,53,0,0,0,68,1,48,0,57,0,0,6,175,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,6,98,1,0,0,65],[0,0,0,0,0,19,4,53,0,0,0,4,1,48,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,6,171,1,16,1,199,0,0,25,85,0,1,4,48,0,0,0,64,1,0,4,61],[0,0,0,68,2,16,0,57,0,0,6,136,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,3,202,0,0,1,61,0,0,0,64,1,0,4,61,0,0,6,138,2,16,0,156],[0,0,3,210,0,0,33,61,0,0,0,96,2,16,0,57,0,0,0,64,0,32,4,63,0,0,6,139,2,0,0,65],[0,0,0,0,2,33,4,54,0,0,0,64,4,0,4,61,0,0,6,140,3,64,0,156,0,0,3,210,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,6,141,5,0,0,65],[0,0,0,0,0,83,4,53,0,0,0,64,3,64,0,57,0,0,6,142,5,0,0,65,0,0,0,0,0,83,4,53],[0,0,0,32,3,64,0,57,0,0,6,143,5,0,0,65,0,0,0,0,0,83,4,53,0,0,0,65,3,0,0,57],[0,10,0,0,0,3,0,29,0,0,0,0,0,52,4,53,0,0,0,64,3,16,0,57,0,0,6,144,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,11,0,0,0,4,0,29],[0,0,6,138,4,64,0,156,0,0,3,210,0,0,33,61,0,0,0,11,5,0,0,41,0,0,0,96,4,80,0,57],[0,0,0,64,0,64,4,63,0,0,6,145,4,0,0,65,0,0,0,0,4,69,4,54,0,9,0,0,0,4,0,29],[0,0,0,64,4,0,4,61,0,0,6,140,5,64,0,156,0,0,3,210,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,6,141,6,0,0,65,0,0,0,0,0,101,4,53],[0,0,0,64,5,64,0,57,0,0,6,146,6,0,0,65,0,0,0,0,0,101,4,53,0,0,0,32,5,64,0,57],[0,0,6,147,6,0,0,65,0,0,0,0,0,101,4,53,0,0,0,10,5,0,0,41,0,0,0,0,0,84,4,53],[0,0,0,11,5,0,0,41,0,0,0,64,6,80,0,57,0,0,6,148,5,0,0,65,0,8,0,0,0,6,0,29],[0,0,0,0,0,86,4,53,0,0,0,9,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,1,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,1,0,0,33,61,0,0,0,0,3,3,4,51,0,7,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,6,86,1,0,0,65,0,0,0,0,2,0,4,20,0,0,6,86,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,6,86,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,6,149,1,16,1,199,0,0,0,1,2,0,0,57,25,83,25,78,0,0,4,15],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,6,86,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,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,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,74,0,0,65,61,0,0,0,0,6,5,0,75,0,0,7,95,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,10,9,0,0,97,61,0,0,0,0,1,0,4,51],[0,0,0,7,1,16,1,79,0,0,6,97,1,16,1,152,0,0,5,1,0,0,193,61,0,0,0,9,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,1,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,1,0,0,33,61,0,0,0,8,4,0,0,41,0,0,0,0,4,4,4,51],[0,9,0,0,0,4,0,29,0,0,0,11,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,6,86,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,6,86,3,32,0,156,0,0,0,0,2,1,128,25,0,0,6,86,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,6,149,1,16,1,199,0,0,0,1,2,0,0,57,25,83,25,78,0,0,4,15,0,0,0,0,3,1,0,25],[0,0,0,96,3,48,2,112,0,0,6,86,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,160,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,153,0,0,65,61],[0,0,0,0,6,5,0,75,0,0,7,174,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,10,38,0,0,97,61,0,0,0,0,1,0,4,51,0,0,0,9,1,16,1,79],[0,0,6,97,1,16,1,152,0,0,5,1,0,0,193,61,0,0,0,64,1,0,4,61,0,0,6,138,2,16,0,156],[0,0,3,210,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,6,140,3,32,0,156,0,0,3,210,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,6,141,4,0,0,65,0,0,0,0,0,67,4,53],[0,0,0,64,3,32,0,57,0,0,6,150,4,0,0,65,0,0,0,0,0,67,4,53,0,0,0,32,4,32,0,57],[0,0,6,151,6,0,0,65,0,0,0,0,0,100,4,53,0,0,0,10,6,0,0,41,0,0,0,0,0,98,4,53],[0,0,0,64,6,16,0,57,0,0,6,152,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,1,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,1,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,6,86,1,0,0,65,0,0,0,0,2,0,4,20,0,0,6,86,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,6,86,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,6,149,1,16,1,199,0,0,0,1,2,0,0,57],[25,83,25,78,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,6,86,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,8,2,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,251,0,0,65,61,0,0,0,0,6,5,0,75,0,0,8,16,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,10,67,0,0,97,61],[0,0,0,0,1,0,4,51,0,0,6,97,1,16,1,151,0,0,6,152,1,16,0,156,0,0,5,1,0,0,193,61],[0,0,0,64,1,0,4,61,0,0,6,138,2,16,0,156,0,0,3,210,0,0,33,61,0,0,0,96,2,16,0,57],[0,0,0,64,0,32,4,63,0,0,6,153,2,0,0,65,0,0,0,0,5,33,4,54,0,0,0,64,2,0,4,61],[0,0,6,140,3,32,0,156,0,0,3,210,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,6,154,4,0,0,65,0,0,0,0,0,67,4,53,0,0,0,64,3,32,0,57],[0,0,6,155,4,0,0,65,0,0,0,0,0,67,4,53,0,0,0,32,4,32,0,57,0,0,6,156,6,0,0,65],[0,0,0,0,0,100,4,53,0,0,0,10,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,1,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,1,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,6,86,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,6,86,3,32,0,156,0,0,0,0,2,1,128,25,0,0,6,86,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,6,149,1,16,1,199,0,0,0,1,2,0,0,57,25,83,25,78,0,0,4,15,0,0,0,0,3,1,0,25],[0,0,0,96,3,48,2,112,0,0,6,86,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,8,100,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,8,93,0,0,65,61],[0,0,0,0,6,5,0,75,0,0,8,114,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,10,96,0,0,97,61,0,0,0,0,1,0,4,51,0,0,6,97,1,16,1,152],[0,0,5,1,0,0,193,61,0,0,0,64,1,0,4,61,0,0,6,138,2,16,0,156,0,0,3,210,0,0,33,61],[0,0,0,96,2,16,0,57,0,0,0,64,0,32,4,63,0,0,6,157,2,0,0,65,0,0,0,0,5,33,4,54],[0,0,0,64,2,0,4,61,0,0,6,140,3,32,0,156,0,0,3,210,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,6,141,4,0,0,65,0,0,0,0,0,67,4,53],[0,0,0,64,3,32,0,57,0,0,6,158,4,0,0,65,0,0,0,0,0,67,4,53,0,0,0,32,4,32,0,57],[0,0,6,159,6,0,0,65,0,0,0,0,0,100,4,53,0,0,0,10,6,0,0,41,0,0,0,0,0,98,4,53],[0,0,0,64,6,16,0,57,0,0,6,160,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,1,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,1,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,6,86,1,0,0,65,0,0,0,0,2,0,4,20,0,0,6,86,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,6,86,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,6,149,1,16,1,199,0,0,0,1,2,0,0,57],[25,83,25,78,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,6,86,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,8,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,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,8,191,0,0,65,61,0,0,0,0,6,5,0,75,0,0,8,212,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,10,125,0,0,97,61],[0,0,0,0,1,0,4,51,0,0,6,97,1,16,1,151,0,0,6,160,1,16,0,156,0,0,5,1,0,0,193,61],[25,83,11,89,0,0,4,15,0,0,6,87,1,0,0,65,0,0,0,0,0,16,4,57,0,0,0,3,1,0,0,41],[0,0,0,4,0,16,4,67,0,0,6,86,1,0,0,65,0,0,0,0,2,0,4,20,0,0,6,86,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,6,88,1,16,1,199,0,0,128,2,2,0,0,57],[25,83,25,78,0,0,4,15,0,0,0,1,2,32,1,144,0,0,10,8,0,0,97,61,0,0,0,0,1,1,4,59],[0,0,0,0,1,1,0,75,0,0,5,1,0,0,97,61,0,0,0,64,4,0,4,61,0,0,6,161,1,0,0,65],[0,0,0,0,0,20,4,53,0,0,6,86,1,0,0,65,0,0,0,0,2,0,4,20,0,0,6,86,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,6,86,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,6,135,1,16,1,199],[0,0,0,3,2,0,0,41,25,83,25,73,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,1,6,86,0,48,1,157,0,0,6,86,3,48,1,151,0,3,0,0,0,1,3,85,0,0,0,1,2,32,1,144],[0,0,10,154,0,0,97,61,0,0,0,11,1,0,0,41,0,0,6,94,1,16,0,156,0,0,3,210,0,0,33,61],[0,0,0,11,1,0,0,41,0,0,0,64,0,16,4,63,0,0,6,87,1,0,0,65,0,0,0,0,0,16,4,57],[0,0,0,3,1,0,0,41,0,0,0,4,0,16,4,67,0,0,6,86,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,6,86,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,6,88,1,16,1,199],[0,0,128,2,2,0,0,57,25,83,25,78,0,0,4,15,0,0,0,1,2,32,1,144,0,0,10,8,0,0,97,61],[0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75,0,0,5,1,0,0,97,61,0,0,0,64,4,0,4,61],[0,0,6,162,1,0,0,65,0,0,0,0,0,20,4,53,0,0,6,86,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,6,86,3,32,0,156,0,0,0,0,2,1,128,25,0,0,6,86,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,6,135,1,16,1,199,0,0,0,3,2,0,0,41,25,83,25,73,0,0,4,15,0,0,0,0,3,1,0,25],[0,0,0,96,3,48,2,112,0,1,6,86,0,48,1,157,0,0,6,86,3,48,1,151,0,3,0,0,0,1,3,85],[0,0,0,1,2,32,1,144,0,0,10,183,0,0,97,61,0,0,0,11,1,0,0,41,0,0,6,94,1,16,0,156],[0,0,3,210,0,0,33,61,0,0,0,11,1,0,0,41,0,0,0,64,0,16,4,63,25,83,14,25,0,0,4,15],[0,0,0,7,2,0,0,57,0,0,6,163,1,0,0,65,0,11,0,0,0,2,0,29,25,83,25,78,0,0,4,15],[0,3,0,0,0,1,3,85,0,0,0,0,2,1,0,25,0,0,0,96,2,32,2,112,0,1,6,86,0,32,1,157],[0,0,6,86,4,32,1,152,0,0,9,106,0,0,97,61,0,0,0,63,2,64,0,57,0,0,6,164,2,32,1,151],[0,0,0,64,3,0,4,61,0,0,0,0,2,35,0,25,0,0,0,0,5,50,0,75,0,0,0,0,5,0,0,25],[0,0,0,1,5,0,64,57,0,0,6,94,6,32,0,156,0,0,3,210,0,0,33,61,0,0,0,1,5,80,1,144],[0,0,3,210,0,0,193,61,0,0,0,64,0,32,4,63,0,0,0,31,2,64,1,143,0,0,0,0,3,67,4,54],[0,0,0,5,4,64,2,114,0,0,9,91,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,99,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,9,83,0,0,65,61,0,0,0,0,5,2,0,75],[0,0,9,106,0,0,97,61,0,0,0,5,4,64,2,16,0,0,0,0,1,65,3,79,0,0,0,0,3,67,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,0,0,64,4,0,4,61,0,0,6,165,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,6,86,1,0,0,65,0,0,0,0,2,0,4,20,0,0,6,86,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,6,86,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,6,166,1,16,1,199,0,0,128,2,2,0,0,57],[25,83,25,78,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,6,86,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,9,143,0,0,97,61,0,0,0,0,7,0,0,25,0,0,0,5,8,112,2,16],[0,0,0,11,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,9,135,0,0,65,61,0,0,0,0,7,5,0,75],[0,0,9,158,0,0,97,61,0,0,0,5,6,96,2,16,0,0,0,0,7,97,3,79,0,0,0,11,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,10,212,0,0,97,61,0,0,0,31,1,64,0,57,0,0,0,96,2,16,1,143],[0,0,0,11,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,6,94,4,16,0,156,0,0,3,210,0,0,33,61,0,0,0,1,2,32,1,144,0,0,3,210,0,0,193,61],[0,0,0,64,0,16,4,63,0,0,0,32,2,48,0,140,0,0,5,1,0,0,65,61,0,0,0,11,2,0,0,41],[0,0,0,0,3,2,4,51,0,0,0,4,2,0,0,41,0,0,0,0,2,33,4,54,0,9,0,0,0,3,0,29],[0,0,0,0,0,50,4,53,0,0,6,167,3,16,0,156,0,0,3,210,0,0,33,61,0,0,0,64,3,16,0,57],[0,0,0,64,0,48,4,63,0,0,6,86,3,0,0,65,0,0,6,86,4,32,0,156,0,0,0,0,2,3,128,25],[0,0,0,64,2,32,2,16,0,0,0,0,4,0,4,20,0,11,0,0,0,4,0,29,0,0,0,0,1,1,4,51],[0,0,6,86,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,6,86,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,33,1,159,0,0,128,18,2,0,0,57,25,83,25,78,0,0,4,15,0,0,0,0,3,1,0,25],[0,0,0,96,3,48,2,112,0,1,6,86,0,48,1,157,0,3,0,0,0,1,3,85,0,0,0,0,1,0,4,20],[0,10,0,0,0,1,0,29,0,0,0,11,1,16,0,107,0,0,0,116,0,0,65,61,0,0,0,1,1,32,1,144],[0,0,10,241,0,0,97,61,0,0,0,64,1,0,4,61,0,0,0,4,2,0,0,41,0,0,0,0,2,33,4,54],[0,0,0,9,3,0,0,41,0,0,0,0,0,50,4,53,0,0,6,167,3,16,0,156,0,0,3,210,0,0,33,61],[0,0,0,64,3,16,0,57,0,0,0,64,0,48,4,63,0,0,6,86,3,0,0,65,0,0,6,86,4,32,0,156],[0,0,0,0,2,3,128,25,0,0,0,64,2,32,2,16,0,0,0,0,4,0,4,20,0,9,0,0,0,4,0,29],[0,0,0,0,1,1,4,51,0,0,6,86,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,6,86,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,33,1,159,0,0,128,18,2,0,0,57,25,83,25,78,0,0,4,15],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,1,6,86,0,48,1,157,0,3,0,0,0,1,3,85],[0,0,0,0,1,0,4,20,0,0,0,9,4,0,0,41,0,0,0,9,3,16,0,107,0,0,0,116,0,0,65,61],[0,0,0,1,2,32,1,144,0,0,10,241,0,0,97,61,0,0,0,10,3,0,0,41,0,0,0,11,2,48,0,105],[0,0,0,0,1,20,0,73,0,0,0,0,1,18,0,75,0,0,10,248,0,0,193,61,0,0,6,86,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,6,86,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,0,1,2,0,0,107,0,0,11,13,0,0,193,61,0,0,6,172,2,0,0,65,0,0,11,18,0,0,1,61],[0,0,0,0,0,1,4,47,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,22,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,14,0,0,65,61,0,0,0,0,6,4,0,75,0,0,10,37,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,152,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,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,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,43,0,0,65,61,0,0,0,0,6,4,0,75],[0,0,10,66,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,152,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,80,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,72,0,0,65,61],[0,0,0,0,6,4,0,75,0,0,10,95,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,152,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,109,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,101,0,0,65,61,0,0,0,0,6,4,0,75,0,0,10,124,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,152,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,138,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,130,0,0,65,61,0,0,0,0,6,4,0,75,0,0,10,153,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,152,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,167,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,159,0,0,65,61,0,0,0,0,6,4,0,75],[0,0,10,182,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,152,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,196,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,188,0,0,65,61],[0,0,0,0,6,4,0,75,0,0,10,211,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,152,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,225,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,217,0,0,65,61,0,0,0,0,6,4,0,75,0,0,10,240,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,152,0,0,1,61,0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57,0,0,6,168,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,3,202,0,0,1,61],[0,0,0,64,1,0,4,61,0,0,0,100,2,16,0,57,0,0,6,169,3,0,0,65,0,0,0,0,0,50,4,53],[0,0,0,68,2,16,0,57,0,0,6,170,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,36,2,16,0,57],[0,0,0,33,3,0,0,57,0,0,0,0,0,50,4,53,0,0,6,98,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,6,86,2,0,0,65],[0,0,6,86,3,16,0,156,0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16,0,0,6,171,1,16,1,199],[0,0,25,85,0,1,4,48,0,0,6,117,1,16,1,199,0,0,128,9,2,0,0,57,0,0,0,1,3,0,0,41],[0,0,6,172,4,0,0,65,0,0,0,0,5,0,0,25,25,83,25,73,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,6,86,0,48,1,157,0,0,6,86,5,48,1,152],[0,0,11,65,0,0,97,61,0,0,0,63,3,80,0,57,0,0,6,164,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,6,94,7,48,0,156,0,0,3,210,0,0,33,61,0,0,0,1,6,96,1,144,0,0,3,210,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,11,50,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,11,42,0,0,65,61,0,0,0,0,6,3,0,75,0,0,11,65,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,11,71,0,0,97,61,0,0,6,96,1,0,0,65],[0,0,0,0,0,1,4,27,0,0,0,0,1,0,0,25,0,0,25,84,0,1,4,46,0,0,0,64,1,0,4,61],[0,0,0,68,2,16,0,57,0,0,6,173,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,3,202,0,0,1,61,0,0,6,229,2,16,0,156,0,0,11,83,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,6,224,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,6,166,1,0,0,65],[0,0,25,85,0,1,4,48,0,8,0,0,0,0,0,2,0,0,0,64,1,0,4,61,0,8,0,0,0,1,0,29],[0,0,6,230,1,16,0,156,0,0,13,227,0,0,129,61,0,0,0,8,6,0,0,41,0,0,0,192,1,96,0,57],[0,0,0,64,0,16,4,63,0,0,0,5,1,0,0,57,0,0,0,0,3,22,4,54,0,0,0,0,1,0,0,49],[0,0,0,2,1,16,3,103,0,0,0,0,2,0,0,25,0,7,0,0,0,3,0,29,0,0,0,5,4,32,2,16],[0,0,0,0,4,65,3,79,0,0,0,0,4,4,4,59,0,0,0,0,3,67,4,54,0,0,0,1,2,32,0,57],[0,0,0,5,4,32,0,140,0,0,11,103,0,0,65,61,0,0,0,0,1,6,4,51,0,0,0,0,1,1,0,75],[0,0,13,223,0,0,97,61,0,0,6,231,1,0,0,65,0,0,0,7,2,0,0,41,0,0,0,0,0,18,4,53],[0,0,0,0,1,6,4,51,0,0,0,2,1,16,0,140,0,0,13,223,0,0,65,61,0,0,0,64,1,96,0,57],[0,0,6,232,2,0,0,65,0,0,0,0,0,33,4,53,0,0,0,0,1,6,4,51,0,0,0,3,1,16,0,140],[0,0,13,223,0,0,65,61,0,0,0,96,2,96,0,57,0,0,6,233,1,0,0,65,0,1,0,0,0,2,0,29],[0,0,0,0,0,18,4,53,0,0,0,0,1,6,4,51,0,0,0,4,1,16,0,140,0,0,13,223,0,0,65,61],[0,0,0,128,1,96,0,57,0,0,6,234,2,0,0,65,0,0,0,0,0,33,4,53,0,0,0,0,1,6,4,51],[0,0,0,5,1,16,0,140,0,0,13,223,0,0,65,61,0,0,0,160,1,96,0,57,0,0,6,235,2,0,0,65],[0,0,0,0,0,33,4,53,0,0,0,64,1,0,4,61,0,0,0,32,2,16,0,57,0,0,0,0,3,6,4,51],[0,0,0,0,4,3,0,75,0,0,0,0,4,2,0,25,0,0,11,155,0,0,97,61,0,0,0,0,5,0,0,25],[0,0,0,0,4,2,0,25,0,0,0,32,6,96,0,57,0,0,0,0,7,6,4,51,0,0,0,0,4,116,4,54],[0,0,0,1,5,80,0,57,0,0,0,0,7,53,0,75,0,0,11,149,0,0,65,61,0,0,0,0,3,20,0,73],[0,0,0,32,4,48,0,138,0,0,0,0,0,65,4,53,0,0,0,31,3,48,0,57,0,6,0,32,0,0,0,146],[0,0,0,6,4,48,1,127,0,0,0,0,3,20,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,6,94,5,48,0,156,0,0,13,227,0,0,33,61,0,0,0,1,4,64,1,144],[0,0,13,227,0,0,193,61,0,0,0,64,0,48,4,63,0,0,6,86,3,0,0,65,0,0,6,86,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,6,86,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,6,86,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,33,1,159],[0,0,1,0,2,0,0,57,25,83,25,78,0,0,4,15,0,0,0,96,4,0,0,57,0,0,0,128,3,0,0,57],[0,3,0,0,0,1,3,85,0,0,0,0,5,1,0,25,0,0,0,96,5,80,2,112,0,1,6,86,0,80,1,157],[0,0,6,86,6,80,1,152,0,0,11,234,0,0,97,61,0,0,0,63,3,96,0,57,0,0,6,164,3,48,1,151],[0,0,0,64,4,0,4,61,0,0,0,0,3,52,0,25,0,0,0,0,5,67,0,75,0,0,0,0,5,0,0,25],[0,0,0,1,5,0,64,57,0,0,6,94,7,48,0,156,0,0,13,227,0,0,33,61,0,0,0,1,5,80,1,144],[0,0,13,227,0,0,193,61,0,0,0,64,0,48,4,63,0,0,0,31,5,96,1,143,0,0,0,0,3,100,4,54],[0,0,0,5,6,96,2,114,0,0,11,219,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,131,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,211,0,0,65,61,0,0,0,0,7,5,0,75],[0,0,11,234,0,0,97,61,0,0,0,5,6,96,2,16,0,0,0,0,1,97,3,79,0,0,0,0,6,99,0,25],[0,0,0,3,5,80,2,16,0,0,0,0,7,6,4,51,0,0,0,0,7,87,1,207,0,0,0,0,7,87,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,113,1,159,0,0,0,0,0,22,4,53,0,0,0,1,1,32,1,144,0,0,13,233,0,0,97,61],[0,0,0,0,1,4,4,51,0,0,6,124,2,0,0,65,0,0,0,31,4,16,0,140,0,0,0,0,4,0,0,25],[0,0,0,0,4,2,32,25,0,0,6,124,1,16,1,151,0,0,0,0,5,1,0,75,0,0,0,0,2,0,128,25],[0,0,6,124,1,16,0,156,0,0,0,0,2,4,192,25,0,0,0,0,1,2,0,75,0,0,0,8,7,0,0,41],[0,0,14,16,0,0,97,61,0,0,0,0,1,3,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,14,16,0,0,193,61,0,0,0,0,1,1,0,75],[0,0,14,18,0,0,97,61,0,0,0,0,2,0,0,25,0,0,0,0,1,7,4,51,0,0,0,0,1,33,0,75],[0,0,13,223,0,0,161,61,0,5,0,0,0,2,0,29,0,0,0,5,1,32,2,16,0,0,0,7,1,16,0,41],[0,0,0,0,2,1,4,51,0,3,0,0,0,2,0,29,0,4,0,0,0,1,0,29,0,0,0,0,0,1,4,53],[0,0,0,64,1,0,4,61,0,0,0,32,2,16,0,57,0,0,0,0,3,7,4,51,0,0,0,0,4,3,0,75],[0,0,0,0,4,2,0,25,0,0,12,27,0,0,97,61,0,0,0,0,5,0,0,25,0,0,0,0,6,7,0,25],[0,0,0,0,4,2,0,25,0,0,0,32,6,96,0,57,0,0,0,0,7,6,4,51,0,0,0,0,4,116,4,54],[0,0,0,1,5,80,0,57,0,0,0,0,7,53,0,75,0,0,12,21,0,0,65,61,0,0,0,0,3,20,0,73],[0,0,0,32,4,48,0,138,0,0,0,0,0,65,4,53,0,0,0,31,3,48,0,57,0,0,0,6,4,48,1,127],[0,0,0,0,3,20,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,6,94,5,48,0,156,0,0,13,227,0,0,33,61,0,0,0,1,4,64,1,144,0,0,13,227,0,0,193,61],[0,0,0,64,0,48,4,63,0,0,6,86,3,32,0,156,0,0,6,86,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,6,86,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,6,86,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,33,1,159,0,0,1,0,2,0,0,57],[25,83,25,78,0,0,4,15,0,0,0,96,3,0,0,57,0,3,0,0,0,1,3,85,0,0,0,0,4,1,0,25],[0,0,0,96,4,64,2,112,0,1,6,86,0,64,1,157,0,0,6,86,4,64,1,152,0,0,12,103,0,0,97,61],[0,0,0,63,3,64,0,57,0,0,6,164,5,48,1,151,0,0,0,64,3,0,4,61,0,0,0,0,5,83,0,25],[0,0,0,0,6,53,0,75,0,0,0,0,6,0,0,25,0,0,0,1,6,0,64,57,0,0,6,94,7,80,0,156],[0,0,13,227,0,0,33,61,0,0,0,1,6,96,1,144,0,0,13,227,0,0,193,61,0,0,0,64,0,80,4,63],[0,0,0,0,5,67,4,54,0,0,0,5,6,64,2,114,0,0,12,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,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,103,0,75,0,0,12,80,0,0,65,61],[0,0,0,31,4,64,1,144,0,0,12,103,0,0,97,61,0,0,0,5,6,96,2,16,0,0,0,0,1,97,3,79],[0,0,0,0,5,101,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,1,1,32,1,144],[0,0,13,233,0,0,97,61,0,0,0,0,1,3,4,51,0,0,0,0,1,1,0,75,0,0,0,8,7,0,0,41],[0,0,13,251,0,0,193,61,0,0,0,0,1,7,4,51,0,0,0,5,2,0,0,41,0,0,0,0,1,33,0,75],[0,0,13,223,0,0,161,61,0,0,0,4,1,0,0,41,0,0,0,3,3,0,0,41,0,0,0,0,0,49,4,53],[0,0,0,4,1,32,0,140,0,0,0,1,2,32,0,57,0,0,12,2,0,0,65,61,0,0,0,1,2,0,0,57],[0,0,0,0,1,7,4,51,0,0,0,0,1,33,0,75,0,0,13,223,0,0,161,61,0,5,0,0,0,2,0,29],[0,0,0,5,1,32,2,16,0,0,0,7,2,16,0,41,0,0,0,0,1,2,4,51,0,3,0,0,0,1,0,29],[0,0,6,236,1,0,0,65,0,4,0,0,0,2,0,29,0,0,0,0,0,18,4,53,0,0,0,64,1,0,4,61],[0,0,0,32,2,16,0,57,0,0,0,0,3,7,4,51,0,0,0,0,4,3,0,75,0,0,0,0,4,2,0,25],[0,0,12,146,0,0,97,61,0,0,0,0,5,0,0,25,0,0,0,0,6,7,0,25,0,0,0,0,4,2,0,25],[0,0,0,32,6,96,0,57,0,0,0,0,7,6,4,51,0,0,0,0,4,116,4,54,0,0,0,1,5,80,0,57],[0,0,0,0,7,53,0,75,0,0,12,140,0,0,65,61,0,0,0,0,3,20,0,73,0,0,0,32,4,48,0,138],[0,0,0,0,0,65,4,53,0,0,0,31,3,48,0,57,0,0,0,6,4,48,1,127,0,0,0,0,3,20,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,6,94,5,48,0,156],[0,0,13,227,0,0,33,61,0,0,0,1,4,64,1,144,0,0,13,227,0,0,193,61,0,0,0,64,0,48,4,63],[0,0,6,86,3,32,0,156,0,0,6,86,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,6,86,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,6,86,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,33,1,159,0,0,1,0,2,0,0,57,25,83,25,78,0,0,4,15],[0,0,0,96,3,0,0,57,0,3,0,0,0,1,3,85,0,0,0,0,4,1,0,25,0,0,0,96,4,64,2,112],[0,1,6,86,0,64,1,157,0,0,6,86,4,64,1,152,0,0,12,222,0,0,97,61,0,0,0,63,3,64,0,57],[0,0,6,164,5,48,1,151,0,0,0,64,3,0,4,61,0,0,0,0,5,83,0,25,0,0,0,0,6,53,0,75],[0,0,0,0,6,0,0,25,0,0,0,1,6,0,64,57,0,0,6,94,7,80,0,156,0,0,13,227,0,0,33,61],[0,0,0,1,6,96,1,144,0,0,13,227,0,0,193,61,0,0,0,64,0,80,4,63,0,0,0,0,5,67,4,54],[0,0,0,5,6,64,2,114,0,0,12,207,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,103,0,75,0,0,12,199,0,0,65,61,0,0,0,31,4,64,1,144],[0,0,12,222,0,0,97,61,0,0,0,5,6,96,2,16,0,0,0,0,1,97,3,79,0,0,0,0,5,101,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,1,1,32,1,144,0,0,13,233,0,0,97,61],[0,0,0,0,1,3,4,51,0,0,0,0,1,1,0,75,0,0,0,8,7,0,0,41,0,0,13,251,0,0,193,61],[0,0,0,0,1,7,4,51,0,0,0,5,2,0,0,41,0,0,0,0,1,33,0,75,0,0,13,223,0,0,161,61],[0,0,0,4,1,0,0,41,0,0,0,3,3,0,0,41,0,0,0,0,0,49,4,53,0,0,0,2,1,32,0,140],[0,0,0,1,2,32,0,57,0,0,12,120,0,0,65,61,0,0,0,3,2,0,0,57,0,2,0,1,0,0,0,61],[0,0,0,0,1,7,4,51,0,0,0,0,1,33,0,75,0,0,13,223,0,0,161,61,0,5,0,0,0,2,0,29],[0,0,0,5,1,32,2,16,0,0,0,7,2,16,0,41,0,0,0,0,1,2,4,51,0,3,0,0,0,1,0,29],[0,0,0,2,1,0,0,41,0,4,0,0,0,2,0,29,0,0,0,0,0,18,4,53,0,0,0,64,1,0,4,61],[0,0,0,32,2,16,0,57,0,0,0,0,3,7,4,51,0,0,0,0,4,3,0,75,0,0,0,0,4,2,0,25],[0,0,13,10,0,0,97,61,0,0,0,0,5,0,0,25,0,0,0,0,6,7,0,25,0,0,0,0,4,2,0,25],[0,0,0,32,6,96,0,57,0,0,0,0,7,6,4,51,0,0,0,0,4,116,4,54,0,0,0,1,5,80,0,57],[0,0,0,0,7,53,0,75,0,0,13,4,0,0,65,61,0,0,0,0,3,20,0,73,0,0,0,32,4,48,0,138],[0,0,0,0,0,65,4,53,0,0,0,31,3,48,0,57,0,0,0,6,4,48,1,127,0,0,0,0,3,20,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,6,94,5,48,0,156],[0,0,13,227,0,0,33,61,0,0,0,1,4,64,1,144,0,0,13,227,0,0,193,61,0,0,0,64,0,48,4,63],[0,0,6,86,3,32,0,156,0,0,6,86,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,6,86,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,6,86,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,33,1,159,0,0,1,0,2,0,0,57,25,83,25,78,0,0,4,15],[0,0,0,96,3,0,0,57,0,3,0,0,0,1,3,85,0,0,0,0,4,1,0,25,0,0,0,96,4,64,2,112],[0,1,6,86,0,64,1,157,0,0,6,86,4,64,1,152,0,0,13,86,0,0,97,61,0,0,0,63,3,64,0,57],[0,0,6,164,5,48,1,151,0,0,0,64,3,0,4,61,0,0,0,0,5,83,0,25,0,0,0,0,6,53,0,75],[0,0,0,0,6,0,0,25,0,0,0,1,6,0,64,57,0,0,6,94,7,80,0,156,0,0,13,227,0,0,33,61],[0,0,0,1,6,96,1,144,0,0,13,227,0,0,193,61,0,0,0,64,0,80,4,63,0,0,0,0,5,67,4,54],[0,0,0,5,6,64,2,114,0,0,13,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,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,103,0,75,0,0,13,63,0,0,65,61,0,0,0,31,4,64,1,144],[0,0,13,86,0,0,97,61,0,0,0,5,6,96,2,16,0,0,0,0,1,97,3,79,0,0,0,0,5,101,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,1,1,32,1,144,0,0,13,233,0,0,97,61],[0,0,0,0,1,3,4,51,0,0,0,0,1,1,0,75,0,0,0,8,7,0,0,41,0,0,13,251,0,0,193,61],[0,0,0,0,1,7,4,51,0,0,0,5,2,0,0,41,0,0,0,0,1,33,0,75,0,0,13,223,0,0,161,61],[0,0,0,4,1,0,0,41,0,0,0,3,3,0,0,41,0,0,0,0,0,49,4,53,0,0,0,4,1,32,0,140],[0,0,0,1,2,32,0,57,0,0,12,240,0,0,65,61,0,0,0,0,1,7,4,51,0,0,0,3,1,16,0,140],[0,0,13,223,0,0,65,61,0,0,6,239,1,0,0,65,0,0,0,1,2,0,0,41,0,0,0,0,0,18,4,53],[0,0,0,64,1,0,4,61,0,0,0,32,2,16,0,57,0,0,0,0,3,7,4,51,0,0,0,0,4,3,0,75],[0,0,0,0,4,2,0,25,0,0,13,122,0,0,97,61,0,0,0,0,5,0,0,25,0,0,0,0,4,2,0,25],[0,0,0,32,7,112,0,57,0,0,0,0,6,7,4,51,0,0,0,0,4,100,4,54,0,0,0,1,5,80,0,57],[0,0,0,0,6,53,0,75,0,0,13,116,0,0,65,61,0,0,0,0,3,20,0,73,0,0,0,32,4,48,0,138],[0,0,0,0,0,65,4,53,0,0,0,31,3,48,0,57,0,0,0,6,4,48,1,127,0,0,0,0,3,20,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,6,94,5,48,0,156],[0,0,13,227,0,0,33,61,0,0,0,1,4,64,1,144,0,0,13,227,0,0,193,61,0,0,0,64,0,48,4,63],[0,0,6,86,3,0,0,65,0,0,6,86,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,6,86,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,6,86,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,33,1,159,0,0,1,0,2,0,0,57,25,83,25,78,0,0,4,15],[0,0,0,96,4,0,0,57,0,0,0,128,3,0,0,57,0,3,0,0,0,1,3,85,0,0,0,0,5,1,0,25],[0,0,0,96,5,80,2,112,0,1,6,86,0,80,1,157,0,0,6,86,6,80,1,152,0,0,13,200,0,0,97,61],[0,0,0,63,3,96,0,57,0,0,6,164,3,48,1,151,0,0,0,64,4,0,4,61,0,0,0,0,3,52,0,25],[0,0,0,0,5,67,0,75,0,0,0,0,5,0,0,25,0,0,0,1,5,0,64,57,0,0,6,94,7,48,0,156],[0,0,13,227,0,0,33,61,0,0,0,1,5,80,1,144,0,0,13,227,0,0,193,61,0,0,0,64,0,48,4,63],[0,0,0,31,5,96,1,143,0,0,0,0,3,100,4,54,0,0,0,5,6,96,2,114,0,0,13,185,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,131,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,13,177,0,0,65,61,0,0,0,0,7,5,0,75,0,0,13,200,0,0,97,61,0,0,0,5,6,96,2,16],[0,0,0,0,1,97,3,79,0,0,0,0,6,99,0,25,0,0,0,3,5,80,2,16,0,0,0,0,7,6,4,51],[0,0,0,0,7,87,1,207,0,0,0,0,7,87,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,113,1,159,0,0,0,0,0,22,4,53],[0,0,0,1,1,32,1,144,0,0,13,233,0,0,97,61,0,0,0,0,1,4,4,51,0,0,6,124,2,0,0,65],[0,0,0,32,4,16,0,140,0,0,0,0,4,0,0,25,0,0,0,0,4,2,64,25,0,0,6,124,1,16,1,151],[0,0,0,0,5,1,0,75,0,0,0,0,2,0,160,25,0,0,6,124,1,16,0,156,0,0,0,0,2,4,192,25],[0,0,0,0,1,2,0,75,0,0,14,16,0,0,193,61,0,0,0,0,1,3,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,14,16,0,0,193,61],[0,0,0,0,1,1,0,75,0,0,14,18,0,0,97,61,0,0,0,0,0,1,4,45,0,0,6,224,1,0,0,65],[0,0,0,0,0,16,4,53,0,0,0,50,1,0,0,57,0,0,13,230,0,0,1,61,0,0,6,224,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,6,166,1,0,0,65],[0,0,25,85,0,1,4,48,0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57,0,0,6,240,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,0,0,0,50,4,53],[0,0,6,98,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,6,86,2,0,0,65,0,0,6,86,3,16,0,156,0,0,0,0,1,2,128,25],[0,0,0,64,1,16,2,16,0,0,6,126,1,16,1,199,0,0,25,85,0,1,4,48,0,0,0,64,1,0,4,61],[0,0,0,100,2,16,0,57,0,0,6,237,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,68,2,16,0,57],[0,0,6,238,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,6,98,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,6,86,2,0,0,65,0,0,6,86,3,16,0,156],[0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16,0,0,6,171,1,16,1,199,0,0,25,85,0,1,4,48],[0,0,0,0,1,0,0,25,0,0,25,85,0,1,4,48,0,0,0,64,1,0,4,61,0,0,0,100,2,16,0,57],[0,0,6,241,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,68,2,16,0,57,0,0,6,242,3,0,0,65],[0,0,14,1,0,0,1,61,0,7,0,0,0,0,0,2,0,0,0,64,4,0,4,61,0,7,0,0,0,4,0,29],[0,0,6,165,1,0,0,65,0,0,0,0,0,20,4,53,0,0,0,4,1,64,0,57,0,0,0,6,2,0,0,57],[0,0,0,0,0,33,4,53,0,0,6,86,1,0,0,65,0,0,0,0,2,0,4,20,0,0,6,86,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,6,86,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,6,166,1,16,1,199,0,0,128,2,2,0,0,57],[25,83,25,78,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,6,86,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,14,64,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,14,56,0,0,65,61],[0,0,0,0,7,5,0,75,0,0,14,79,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,16,182,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,6,94,4,16,0,156,0,0,16,147,0,0,33,61,0,0,0,1,2,32,1,144],[0,0,16,147,0,0,193,61,0,0,0,64,0,16,4,63,0,0,0,31,2,48,0,140,0,0,16,211,0,0,161,61],[0,0,0,0,2,10,4,51,0,7,0,0,0,2,0,29,0,0,0,32,2,0,0,57,0,6,0,0,0,2,0,29],[0,0,0,0,2,33,4,54,0,0,0,0,0,2,4,53,0,0,6,167,3,16,0,156,0,0,16,147,0,0,33,61],[0,0,0,64,3,16,0,57,0,0,0,64,0,48,4,63,0,0,6,86,3,0,0,65,0,0,6,86,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,6,86,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,6,86,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,33,1,159],[0,0,128,18,2,0,0,57,25,83,25,78,0,0,4,15,0,3,0,0,0,1,3,85,0,0,0,0,2,1,0,25],[0,0,0,96,2,32,2,112,0,1,6,86,0,32,1,157,0,0,6,86,4,32,1,152,0,0,14,168,0,0,97,61],[0,0,0,63,2,64,0,57,0,0,6,164,2,32,1,151,0,0,0,64,3,0,4,61,0,0,0,0,2,35,0,25],[0,0,0,0,5,50,0,75,0,0,0,0,5,0,0,25,0,0,0,1,5,0,64,57,0,0,6,94,6,32,0,156],[0,0,16,147,0,0,33,61,0,0,0,1,5,80,1,144,0,0,16,147,0,0,193,61,0,0,0,64,0,32,4,63],[0,0,0,31,2,64,1,143,0,0,0,0,3,67,4,54,0,0,0,5,4,64,2,114,0,0,14,153,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,99,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,14,145,0,0,65,61,0,0,0,0,5,2,0,75,0,0,14,168,0,0,97,61,0,0,0,5,4,64,2,16],[0,0,0,0,1,65,3,79,0,0,0,0,3,67,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,0,0,0,1,0,4,20,0,5,0,0,0,1,0,29,0,0,0,64,1,0,4,61,0,0,0,6,2,0,0,41],[0,0,0,0,2,33,4,54,0,0,0,7,3,0,0,41,0,0,0,0,0,50,4,53,0,0,6,167,3,16,0,156],[0,0,16,147,0,0,33,61,0,0,0,64,3,16,0,57,0,0,0,64,0,48,4,63,0,0,6,86,3,0,0,65],[0,0,6,86,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,6,86,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,6,86,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,33,1,159,0,0,128,18,2,0,0,57,25,83,25,78,0,0,4,15,0,0,0,96,3,0,0,57],[0,3,0,0,0,1,3,85,0,0,0,0,4,1,0,25,0,0,0,96,4,64,2,112,0,1,6,86,0,64,1,157],[0,0,6,86,6,64,1,152,0,0,14,242,0,0,97,61,0,0,0,63,3,96,0,57,0,0,6,164,4,48,1,151],[0,0,0,64,3,0,4,61,0,0,0,0,4,67,0,25,0,0,0,0,5,52,0,75,0,0,0,0,5,0,0,25],[0,0,0,1,5,0,64,57,0,0,6,94,7,64,0,156,0,0,16,147,0,0,33,61,0,0,0,1,5,80,1,144],[0,0,16,147,0,0,193,61,0,0,0,64,0,64,4,63,0,0,0,31,4,96,1,143,0,0,0,0,5,99,4,54],[0,0,0,5,6,96,2,114,0,0,14,227,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,103,0,75,0,0,14,219,0,0,65,61,0,0,0,0,7,4,0,75],[0,0,14,242,0,0,97,61,0,0,0,5,6,96,2,16,0,0,0,0,1,97,3,79,0,0,0,0,5,101,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,0,4,0,4,20,0,3,0,0,0,4,0,29],[0,0,0,5,1,64,0,107,0,0,16,151,0,0,65,61,0,0,0,1,1,32,1,144,0,0,16,157,0,0,97,61],[0,0,0,0,6,3,4,51,0,0,0,31,1,96,1,144,0,0,16,164,0,0,193,61,0,0,6,243,1,96,0,156],[0,0,16,168,0,0,129,61,0,0,0,64,1,0,4,61,0,0,0,32,2,96,1,144,0,0,16,213,0,0,97,61],[0,0,0,0,2,0,0,25,0,0,0,0,4,18,0,25,0,0,0,32,2,32,0,57,0,0,0,0,5,50,0,25],[0,0,0,0,5,5,4,51,0,0,0,0,0,84,4,53,0,0,0,0,4,98,0,75,0,0,15,1,0,0,65,61],[0,0,0,0,2,97,0,25,0,0,0,0,0,2,4,53,0,0,6,86,2,0,0,65,0,0,6,86,3,96,0,156],[0,4,0,0,0,6,0,29,0,0,0,0,3,2,0,25,0,0,0,0,3,6,64,25,0,0,0,96,3,48,2,16],[0,0,6,86,4,16,0,156,0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16,0,0,0,0,1,49,1,159],[0,0,0,0,3,0,4,20,0,0,6,86,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,0,2,2,0,0,57,0,1,0,0,0,2,0,29,25,83,25,78,0,0,4,15],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,6,86,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,15,45,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,15,38,0,0,65,61,0,0,0,0,6,5,0,75,0,0,15,59,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,16,219,0,0,97,61,0,0,0,0,1,0,4,51],[0,0,6,244,1,16,1,151,0,0,0,4,2,0,0,41,0,0,0,219,2,32,2,16,0,0,6,245,2,32,1,151],[0,0,0,0,1,18,1,159,0,0,6,246,1,16,1,199,0,0,0,7,3,0,0,41,0,0,0,0,1,49,0,75],[0,0,16,172,0,0,193,61,0,0,0,0,1,0,4,20,0,4,0,0,0,1,0,29,0,0,0,64,1,0,4,61],[0,0,0,6,2,0,0,41,0,0,0,0,2,33,4,54,0,0,0,0,0,50,4,53,0,0,6,167,3,16,0,156],[0,0,16,147,0,0,33,61,0,0,0,64,3,16,0,57,0,0,0,64,0,48,4,63,0,0,6,86,3,0,0,65],[0,0,6,86,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,6,86,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,6,86,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,33,1,159,0,0,128,18,2,0,0,57,25,83,25,78,0,0,4,15,0,0,0,96,3,0,0,57],[0,3,0,0,0,1,3,85,0,0,0,0,4,1,0,25,0,0,0,96,4,64,2,112,0,1,6,86,0,64,1,157],[0,0,6,86,6,64,1,152,0,0,15,146,0,0,97,61,0,0,0,63,3,96,0,57,0,0,6,164,4,48,1,151],[0,0,0,64,3,0,4,61,0,0,0,0,4,67,0,25,0,0,0,0,5,52,0,75,0,0,0,0,5,0,0,25],[0,0,0,1,5,0,64,57,0,0,6,94,7,64,0,156,0,0,16,147,0,0,33,61,0,0,0,1,5,80,1,144],[0,0,16,147,0,0,193,61,0,0,0,64,0,64,4,63,0,0,0,31,4,96,1,143,0,0,0,0,5,99,4,54],[0,0,0,5,6,96,2,114,0,0,15,131,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,103,0,75,0,0,15,123,0,0,65,61,0,0,0,0,7,4,0,75],[0,0,15,146,0,0,97,61,0,0,0,5,6,96,2,16,0,0,0,0,1,97,3,79,0,0,0,0,5,101,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,0,4,0,4,20,0,2,0,0,0,4,0,29],[0,0,0,4,1,64,0,107,0,0,16,151,0,0,65,61,0,0,0,1,1,32,1,144,0,0,16,157,0,0,97,61],[0,0,0,0,6,3,4,51,0,0,0,31,1,96,1,144,0,0,16,164,0,0,193,61,0,0,6,247,1,96,0,156],[0,0,16,168,0,0,33,61,0,0,0,64,1,0,4,61,0,0,0,32,2,96,1,144,0,0,17,21,0,0,97,61],[0,0,0,3,4,0,0,41,0,3,0,5,0,64,0,113,0,0,0,0,2,0,0,25,0,0,0,0,4,18,0,25],[0,0,0,32,2,32,0,57,0,0,0,0,5,50,0,25,0,0,0,0,5,5,4,51,0,0,0,0,0,84,4,53],[0,0,0,0,4,98,0,75,0,0,15,163,0,0,65,61,0,0,0,0,2,97,0,25,0,0,0,0,0,2,4,53],[0,0,6,86,2,0,0,65,0,0,6,86,3,96,0,156,0,5,0,0,0,6,0,29,0,0,0,0,3,2,0,25],[0,0,0,0,3,6,64,25,0,0,0,96,3,48,2,16,0,0,6,86,4,16,0,156,0,0,0,0,1,2,128,25],[0,0,0,64,1,16,2,16,0,0,0,0,1,49,1,159,0,0,0,0,3,0,4,20,0,0,6,86,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,0,2,2,0,0,57],[0,1,0,0,0,2,0,29,25,83,25,78,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,0,6,86,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,15,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,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,15,200,0,0,65,61,0,0,0,0,6,5,0,75],[0,0,15,221,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,16,248,0,0,97,61,0,0,0,0,1,0,4,51,0,0,6,244,1,16,1,151,0,0,0,5,2,0,0,41],[0,0,0,219,2,32,2,16,0,0,6,245,2,32,1,151,0,0,0,0,1,18,1,159,0,0,6,246,1,16,1,199],[0,0,0,7,3,0,0,41,0,0,0,0,1,49,0,75,0,0,16,172,0,0,193,61,0,0,0,0,1,0,4,20],[0,5,0,0,0,1,0,29,0,0,0,64,1,0,4,61,0,0,0,6,2,0,0,41,0,0,0,0,2,33,4,54],[0,0,0,0,0,50,4,53,0,0,6,167,3,16,0,156,0,0,16,147,0,0,33,61,0,0,0,64,3,16,0,57],[0,0,0,64,0,48,4,63,0,0,6,86,3,0,0,65,0,0,6,86,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,6,86,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,6,86,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,33,1,159,0,0,128,18,2,0,0,57],[25,83,25,78,0,0,4,15,0,0,0,96,3,0,0,57,0,3,0,0,0,1,3,85,0,0,0,0,4,1,0,25],[0,0,0,96,4,64,2,112,0,1,6,86,0,64,1,157,0,0,6,86,6,64,1,152,0,0,16,52,0,0,97,61],[0,0,0,63,3,96,0,57,0,0,6,164,4,48,1,151,0,0,0,64,3,0,4,61,0,0,0,0,4,67,0,25],[0,0,0,0,5,52,0,75,0,0,0,0,5,0,0,25,0,0,0,1,5,0,64,57,0,0,6,94,7,64,0,156],[0,0,16,147,0,0,33,61,0,0,0,1,5,80,1,144,0,0,16,147,0,0,193,61,0,0,0,64,0,64,4,63],[0,0,0,31,4,96,1,143,0,0,0,0,5,99,4,54,0,0,0,5,6,96,2,114,0,0,16,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,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,103,0,75],[0,0,16,29,0,0,65,61,0,0,0,0,7,4,0,75,0,0,16,52,0,0,97,61,0,0,0,5,6,96,2,16],[0,0,0,0,1,97,3,79,0,0,0,0,5,101,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,0,4,0,4,20,0,0,0,5,1,64,0,107,0,0,16,151,0,0,65,61,0,0,0,1,1,32,1,144],[0,0,16,157,0,0,97,61,0,0,0,0,6,3,4,51,0,0,0,31,1,96,1,144,0,0,16,164,0,0,193,61],[0,0,6,247,1,96,0,156,0,0,16,168,0,0,33,61,0,0,0,64,1,0,4,61,0,0,0,32,2,96,1,144],[0,0,17,21,0,0,97,61,0,1,0,0,0,4,0,29,0,0,0,2,4,0,0,41,0,2,0,4,0,64,0,113],[0,0,0,0,2,0,0,25,0,0,0,0,4,18,0,25,0,0,0,32,2,32,0,57,0,0,0,0,5,50,0,25],[0,0,0,0,5,5,4,51,0,0,0,0,0,84,4,53,0,0,0,0,4,98,0,75,0,0,16,69,0,0,65,61],[0,0,0,0,2,97,0,25,0,0,0,0,0,2,4,53,0,0,6,86,2,0,0,65,0,0,6,86,3,96,0,156],[0,4,0,0,0,6,0,29,0,0,0,0,3,2,0,25,0,0,0,0,3,6,64,25,0,0,0,96,3,48,2,16],[0,0,6,86,4,16,0,156,0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16,0,0,0,0,1,49,1,159],[0,0,0,0,3,0,4,20,0,0,6,86,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,0,2,2,0,0,57,25,83,25,78,0,0,4,15,0,0,0,0,3,1,0,25],[0,0,0,96,3,48,2,112,0,0,6,86,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,16,112,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,16,105,0,0,65,61],[0,0,0,0,6,5,0,75,0,0,16,126,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,17,38,0,0,97,61,0,0,0,0,1,0,4,51,0,0,6,244,1,16,1,151],[0,0,0,4,2,0,0,41,0,0,0,219,2,32,2,16,0,0,6,245,2,32,1,151,0,0,0,0,1,18,1,159],[0,0,6,246,1,16,1,199,0,0,0,7,1,16,0,108,0,0,0,1,2,0,0,41,0,0,16,172,0,0,193,61],[0,0,0,2,3,0,0,41,0,0,0,3,1,48,0,107,0,0,17,73,0,0,161,61,0,0,0,5,1,32,0,105],[0,0,0,0,1,19,0,75,0,0,17,83,0,0,193,61,0,0,0,0,0,1,4,45,0,0,6,224,1,0,0,65],[0,0,0,0,0,16,4,53,0,0,0,65,1,0,0,57,0,0,16,154,0,0,1,61,0,0,6,224,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,6,166,1,0,0,65],[0,0,25,85,0,1,4,48,0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57,0,0,6,168,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,17,26,0,0,1,61],[0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57,0,0,6,248,3,0,0,65,0,0,16,215,0,0,1,61],[0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57,0,0,6,254,3,0,0,65,0,0,16,215,0,0,1,61],[0,0,0,64,1,0,4,61,0,0,0,100,2,16,0,57,0,0,6,249,3,0,0,65,0,0,0,0,0,50,4,53],[0,0,0,68,2,16,0,57,0,0,6,250,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,36,2,16,0,57],[0,0,0,50,3,0,0,57,0,0,17,92,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,16,195,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,16,187,0,0,65,61,0,0,0,0,6,4,0,75],[0,0,17,66,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,17,66,0,0,1,61,0,0,0,0,1,0,0,25],[0,0,25,85,0,1,4,48,0,0,0,68,2,16,0,57,0,0,6,253,3,0,0,65,0,0,0,0,0,50,4,53],[0,0,0,36,2,16,0,57,0,0,0,2,3,0,0,57,0,0,17,26,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,16,232,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,16,224,0,0,65,61],[0,0,0,0,6,4,0,75,0,0,16,247,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,17,66,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,17,5,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,16,253,0,0,65,61,0,0,0,0,6,4,0,75,0,0,17,20,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,17,66,0,0,1,61,0,0,0,68,2,16,0,57,0,0,6,253,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,41,0,0,0,0,0,50,4,53,0,0,6,98,2,0,0,65],[0,0,0,0,0,33,4,53,0,0,0,4,2,16,0,57,0,0,0,6,3,0,0,41,0,0,0,0,0,50,4,53],[0,0,6,86,2,0,0,65,0,0,6,86,3,16,0,156,0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16],[0,0,6,126,1,16,1,199,0,0,25,85,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,17,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,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,17,43,0,0,65,61,0,0,0,0,6,4,0,75],[0,0,17,66,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,86,1,0,0,65,0,0,6,86,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,25,85,0,1,4,48,0,0,0,64,1,0,4,61,0,0,0,100,2,16,0,57,0,0,6,169,3,0,0,65],[0,0,0,0,0,50,4,53,0,0,0,68,2,16,0,57,0,0,6,170,3,0,0,65,0,0,0,0,0,50,4,53],[0,0,0,36,2,16,0,57,0,0,0,33,3,0,0,57,0,0,17,92,0,0,1,61,0,0,0,64,1,0,4,61],[0,0,0,100,2,16,0,57,0,0,6,251,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,68,2,16,0,57],[0,0,6,252,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,36,2,16,0,57,0,0,0,47,3,0,0,57],[0,0,0,0,0,50,4,53,0,0,6,98,2,0,0,65,0,0,0,0,0,33,4,53,0,0,0,4,2,16,0,57],[0,0,0,6,3,0,0,41,0,0,0,0,0,50,4,53,0,0,6,86,2,0,0,65,0,0,6,86,3,16,0,156],[0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16,0,0,6,171,1,16,1,199,0,0,25,85,0,1,4,48],[0,4,0,0,0,0,0,2,0,0,0,7,2,0,0,57,0,0,6,163,1,0,0,65,0,4,0,0,0,2,0,29],[25,83,25,78,0,0,4,15,0,3,0,0,0,1,3,85,0,0,0,0,2,1,0,25,0,0,0,96,2,32,2,112],[0,1,6,86,0,32,1,157,0,0,6,86,4,32,1,152,0,0,17,155,0,0,97,61,0,0,0,63,2,64,0,57],[0,0,6,164,2,32,1,151,0,0,0,64,3,0,4,61,0,0,0,0,2,35,0,25,0,0,0,0,5,50,0,75],[0,0,0,0,5,0,0,25,0,0,0,1,5,0,64,57,0,0,6,94,6,32,0,156,0,0,18,50,0,0,33,61],[0,0,0,1,5,80,1,144,0,0,18,50,0,0,193,61,0,0,0,64,0,32,4,63,0,0,0,31,2,64,1,143],[0,0,0,0,3,67,4,54,0,0,0,5,4,64,2,114,0,0,17,140,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,99,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,17,132,0,0,65,61],[0,0,0,0,5,2,0,75,0,0,17,155,0,0,97,61,0,0,0,5,4,64,2,16,0,0,0,0,1,65,3,79],[0,0,0,0,3,67,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,0,0,64,4,0,4,61],[0,3,0,0,0,4,0,29,0,0,6,165,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,6,86,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,6,86,3,32,0,156,0,0,0,0,2,1,128,25,0,0,6,86,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,6,166,1,16,1,199],[0,0,128,2,2,0,0,57,25,83,25,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,6,86,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,17,193,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,17,185,0,0,65,61,0,0,0,0,7,5,0,75,0,0,17,208,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,18,78,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,6,94,4,16,0,156,0,0,18,50,0,0,33,61],[0,0,0,1,2,32,1,144,0,0,18,50,0,0,193,61,0,0,0,64,0,16,4,63,0,0,0,31,2,48,0,140],[0,0,18,113,0,0,161,61,0,0,0,0,3,10,4,51,0,0,0,32,2,0,0,57,0,3,0,0,0,2,0,29],[0,0,0,0,2,33,4,54,0,2,0,0,0,3,0,29,0,0,0,0,0,50,4,53,0,0,6,167,3,16,0,156],[0,0,18,50,0,0,33,61,0,0,0,64,3,16,0,57,0,0,0,64,0,48,4,63,0,0,6,86,3,0,0,65],[0,0,6,86,4,32,0,156,0,0,0,0,2,3,128,25,0,0,0,64,2,32,2,16,0,0,0,0,4,0,4,20],[0,4,0,0,0,4,0,29,0,0,0,0,1,1,4,51,0,0,6,86,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,6,86,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,33,1,159,0,0,128,18,2,0,0,57],[25,83,25,78,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,1,6,86,0,48,1,157],[0,3,0,0,0,1,3,85,0,0,0,0,1,0,4,20,0,1,0,0,0,1,0,29,0,0,0,4,1,16,0,107],[0,0,18,54,0,0,65,61,0,0,0,1,1,32,1,144,0,0,18,60,0,0,97,61,0,0,0,64,1,0,4,61],[0,0,0,3,2,0,0,41,0,0,0,0,2,33,4,54,0,0,0,2,3,0,0,41,0,0,0,0,0,50,4,53],[0,0,6,167,3,16,0,156,0,0,18,50,0,0,33,61,0,0,0,64,3,16,0,57,0,0,0,64,0,48,4,63],[0,0,6,86,3,0,0,65,0,0,6,86,4,32,0,156,0,0,0,0,2,3,128,25,0,0,0,64,2,32,2,16],[0,0,0,0,4,0,4,20,0,2,0,0,0,4,0,29,0,0,0,0,1,1,4,51,0,0,6,86,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,6,86,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,33,1,159],[0,0,128,18,2,0,0,57,25,83,25,78,0,0,4,15,0,0,0,2,4,0,0,41,0,0,0,0,3,1,0,25],[0,0,0,96,3,48,2,112,0,1,6,86,0,48,1,157,0,3,0,0,0,1,3,85,0,0,0,0,1,0,4,20],[0,0,0,0,3,20,0,75,0,0,18,54,0,0,65,61,0,0,0,1,2,32,1,144,0,0,18,60,0,0,97,61],[0,0,0,1,3,0,0,41,0,0,0,4,2,48,0,105,0,0,0,0,1,20,0,73,0,0,0,0,1,18,0,75],[0,0,18,115,0,0,193,61,0,0,0,0,0,1,4,45,0,0,6,224,1,0,0,65,0,0,0,0,0,16,4,53],[0,0,0,65,1,0,0,57,0,0,18,57,0,0,1,61,0,0,6,224,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,6,166,1,0,0,65,0,0,25,85,0,1,4,48],[0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57,0,0,6,168,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,0,0,0,50,4,53,0,0,6,98,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,6,86,2,0,0,65,0,0,6,86,3,16,0,156,0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16],[0,0,6,126,1,16,1,199,0,0,25,85,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,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,18,83,0,0,65,61,0,0,0,0,6,4,0,75],[0,0,18,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,6,86,1,0,0,65,0,0,6,86,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,25,85,0,1,4,48,0,0,0,0,1,0,0,25,0,0,25,85,0,1,4,48,0,0,0,64,1,0,4,61],[0,0,0,100,2,16,0,57,0,0,6,169,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,68,2,16,0,57],[0,0,6,170,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,36,2,16,0,57,0,0,0,33,3,0,0,57],[0,0,0,0,0,50,4,53,0,0,6,98,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,6,86,2,0,0,65,0,0,6,86,3,16,0,156],[0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16,0,0,6,171,1,16,1,199,0,0,25,85,0,1,4,48],[0,1,0,0,0,0,0,2,0,0,0,0,1,0,0,50,0,0,19,25,0,0,193,61,0,0,6,101,1,0,0,65],[0,0,0,0,0,16,4,57,0,0,6,86,1,0,0,65,0,0,0,0,2,0,4,20,0,0,6,86,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,6,102,1,16,1,199,0,0,128,11,2,0,0,57],[25,83,25,78,0,0,4,15,0,0,0,1,2,32,1,144,0,0,19,24,0,0,97,61,0,0,0,0,2,1,4,59],[0,0,3,233,1,0,0,138,0,1,0,0,0,2,0,29,0,0,0,0,1,18,0,75,0,0,19,27,0,0,33,61],[0,0,6,103,1,0,0,65,0,0,0,0,0,16,4,57,0,0,6,86,3,0,0,65,0,0,0,0,1,0,4,20],[0,0,6,86,2,16,0,156,0,0,0,0,1,3,128,25,0,0,0,192,1,16,2,16,0,0,6,102,1,16,1,199],[0,0,128,11,2,0,0,57,25,83,25,78,0,0,4,15,0,0,0,1,2,32,1,144,0,0,19,24,0,0,97,61],[0,0,0,0,1,1,4,59,0,0,0,11,2,0,0,57,0,0,0,0,0,18,4,27,0,0,6,104,1,0,0,65],[0,0,0,0,0,16,4,57,0,0,0,0,1,0,4,20,0,0,6,86,2,16,0,156,0,0,6,86,1,0,128,65],[0,0,0,192,1,16,2,16,0,0,6,102,1,16,1,199,0,0,128,11,2,0,0,57,25,83,25,78,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,19,24,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,10,2,0,0,57],[0,0,0,0,3,2,4,26,0,0,6,105,3,48,1,151,0,0,0,0,1,19,1,159,0,0,0,0,0,18,4,27],[0,0,6,106,1,0,0,65,0,0,0,0,0,16,4,57,0,0,6,86,3,0,0,65,0,0,0,0,1,0,4,20],[0,0,6,86,2,16,0,156,0,0,0,0,1,3,128,25,0,0,0,192,1,16,2,16,0,0,6,102,1,16,1,199],[0,0,128,11,2,0,0,57,25,83,25,78,0,0,4,15,0,0,0,1,2,32,1,144,0,0,19,24,0,0,97,61],[0,0,0,0,1,1,4,59,0,0,0,9,2,0,0,57,0,0,0,0,0,18,4,27,0,0,6,107,1,0,0,65],[0,0,0,0,0,16,4,57,0,0,0,0,1,0,4,20,0,0,6,86,2,16,0,156,0,0,6,86,1,0,128,65],[0,0,0,192,1,16,2,16,0,0,6,102,1,16,1,199,0,0,128,11,2,0,0,57,25,83,25,78,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,19,24,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,6,108,1,0,0,65,0,0,0,0,0,16,4,57,0,0,6,86,3,0,0,65],[0,0,0,0,1,0,4,20,0,0,6,86,2,16,0,156,0,0,0,0,1,3,128,25,0,0,0,192,1,16,2,16],[0,0,6,102,1,16,1,199,0,0,128,11,2,0,0,57,25,83,25,78,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,19,24,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,6,109,1,0,0,65,0,0,0,0,0,16,4,57,0,0,0,0,1,0,4,20,0,0,6,86,2,16,0,156],[0,0,6,86,1,0,128,65,0,0,0,192,1,16,2,16,0,0,6,102,1,16,1,199,0,0,128,11,2,0,0,57],[25,83,25,78,0,0,4,15,0,0,0,1,2,32,1,144,0,0,19,24,0,0,97,61,0,0,0,0,1,1,4,59],[0,0,0,4,2,0,0,57,0,0,0,0,0,18,4,27,0,0,6,110,1,0,0,65,0,0,0,0,0,16,4,57],[0,0,6,86,1,0,0,65,0,0,0,0,2,0,4,20,0,0,6,86,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,192,1,32,2,16,0,0,6,102,1,16,1,199,0,0,128,11,2,0,0,57,25,83,25,78,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,19,24,0,0,97,61,0,0,0,0,1,1,4,59,0,0,6,97,1,16,1,151],[0,0,0,5,2,0,0,57,0,0,0,0,3,2,4,26,0,0,6,105,3,48,1,151,0,0,0,0,1,19,1,159],[0,0,0,0,0,18,4,27,0,0,0,3,1,0,0,57,0,0,0,0,2,1,4,26,0,0,6,111,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,0,6,1,0,0,57,0,0,0,1,2,0,0,41,0,0,0,0,0,33,4,27],[0,0,0,0,1,0,4,22,0,0,0,12,2,0,0,57,0,0,0,0,0,18,4,27,0,0,0,0,0,1,4,45],[0,0,0,0,0,1,4,47,0,0,0,0,1,0,0,25,0,0,25,85,0,1,4,48,0,0,6,224,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,6,166,1,0,0,65],[0,0,25,85,0,1,4,48,0,5,0,0,0,0,0,2,0,0,0,64,1,0,4,61,0,0,6,229,2,16,0,156],[0,0,21,32,0,0,129,61,0,0,0,96,2,16,0,57,0,0,0,64,0,32,4,63,0,0,6,139,2,0,0,65],[0,0,0,0,2,33,4,54,0,0,0,64,4,0,4,61,0,0,6,140,3,64,0,156,0,0,21,32,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,6,141,5,0,0,65],[0,0,0,0,0,83,4,53,0,0,0,64,3,64,0,57,0,0,6,142,5,0,0,65,0,0,0,0,0,83,4,53],[0,0,0,32,3,64,0,57,0,0,6,143,5,0,0,65,0,0,0,0,0,83,4,53,0,0,0,65,3,0,0,57],[0,5,0,0,0,3,0,29,0,0,0,0,0,52,4,53,0,0,0,64,3,16,0,57,0,0,6,144,5,0,0,65],[0,0,0,0,0,83,4,53,0,0,0,0,0,66,4,53,0,0,0,64,7,0,4,61,0,0,6,138,4,112,0,156],[0,0,21,32,0,0,33,61,0,0,0,96,4,112,0,57,0,0,0,64,0,64,4,63,0,0,6,145,4,0,0,65],[0,0,0,0,8,71,4,54,0,0,0,64,4,0,4,61,0,0,6,140,5,64,0,156,0,0,21,32,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,6,141,6,0,0,65],[0,0,0,0,0,101,4,53,0,0,0,64,5,64,0,57,0,0,6,146,6,0,0,65,0,0,0,0,0,101,4,53],[0,0,0,32,5,64,0,57,0,0,6,147,6,0,0,65,0,0,0,0,0,101,4,53,0,0,0,5,5,0,0,41],[0,0,0,0,0,84,4,53,0,0,0,64,6,112,0,57,0,0,6,148,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,72,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,21,30,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,21,30,0,0,33,61],[0,4,0,0,0,8,0,29,0,3,0,0,0,7,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,6,86,1,0,0,65,0,0,0,0,2,0,4,20,0,0,6,86,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,6,86,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,6,149,1,16,1,199,0,0,0,1,2,0,0,57],[25,83,25,78,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,6,86,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,19,146,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,19,139,0,0,65,61,0,0,0,0,6,5,0,75,0,0,19,160,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,2,0,0,41],[0,0,21,38,0,0,97,61,0,0,0,0,1,0,4,51,0,0,0,2,1,16,1,79,0,0,6,97,1,16,1,152],[0,0,0,3,5,0,0,41,0,0,21,30,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,21,30,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,21,30,0,0,33,61],[0,0,0,1,4,0,0,41,0,0,0,0,4,4,4,51,0,4,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,6,86,1,0,0,65,0,0,0,0,2,0,4,20,0,0,6,86,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,6,86,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,6,149,1,16,1,199,0,0,0,1,2,0,0,57,25,83,25,78,0,0,4,15],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,6,86,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,19,225,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,19,218,0,0,65,61,0,0,0,0,6,5,0,75,0,0,19,239,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,21,67,0,0,97,61,0,0,0,0,1,0,4,51],[0,0,0,4,1,16,1,79,0,0,6,97,1,16,1,152,0,0,21,30,0,0,193,61,0,0,0,64,1,0,4,61],[0,0,6,138,2,16,0,156,0,0,21,32,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,6,140,3,32,0,156,0,0,21,32,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,6,141,4,0,0,65],[0,0,0,0,0,67,4,53,0,0,0,64,3,32,0,57,0,0,6,150,4,0,0,65,0,0,0,0,0,67,4,53],[0,0,0,32,4,32,0,57,0,0,6,151,6,0,0,65,0,0,0,0,0,100,4,53,0,0,0,5,6,0,0,41],[0,0,0,0,0,98,4,53,0,0,0,64,6,16,0,57,0,0,6,152,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,21,30,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,21,30,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,6,86,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,6,86,3,32,0,156,0,0,0,0,2,1,128,25,0,0,6,86,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,6,149,1,16,1,199],[0,0,0,1,2,0,0,57,25,83,25,78,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,0,6,86,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,20,67,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,20,60,0,0,65,61,0,0,0,0,6,5,0,75],[0,0,20,81,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,21,96,0,0,97,61,0,0,0,0,1,0,4,51,0,0,6,97,1,16,1,151,0,0,6,152,1,16,0,156],[0,0,21,30,0,0,193,61,0,0,0,64,1,0,4,61,0,0,6,138,2,16,0,156,0,0,21,32,0,0,33,61],[0,0,0,96,2,16,0,57,0,0,0,64,0,32,4,63,0,0,6,153,2,0,0,65,0,0,0,0,5,33,4,54],[0,0,0,64,2,0,4,61,0,0,6,140,3,32,0,156,0,0,21,32,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,6,154,4,0,0,65,0,0,0,0,0,67,4,53],[0,0,0,64,3,32,0,57,0,0,6,155,4,0,0,65,0,0,0,0,0,67,4,53,0,0,0,32,4,32,0,57],[0,0,6,156,6,0,0,65,0,0,0,0,0,100,4,53,0,0,0,5,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,21,30,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,21,30,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,6,86,1,0,0,65,0,0,0,0,2,0,4,20,0,0,6,86,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,6,86,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,6,149,1,16,1,199,0,0,0,1,2,0,0,57,25,83,25,78,0,0,4,15],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,6,86,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,20,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,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,20,158,0,0,65,61,0,0,0,0,6,5,0,75,0,0,20,179,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,21,125,0,0,97,61,0,0,0,0,1,0,4,51],[0,0,6,97,1,16,1,152,0,0,21,30,0,0,193,61,0,0,0,64,1,0,4,61,0,0,6,138,2,16,0,156],[0,0,21,32,0,0,33,61,0,0,0,96,2,16,0,57,0,0,0,64,0,32,4,63,0,0,6,157,2,0,0,65],[0,0,0,0,5,33,4,54,0,0,0,64,2,0,4,61,0,0,6,140,3,32,0,156,0,0,21,32,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,6,141,4,0,0,65],[0,0,0,0,0,67,4,53,0,0,0,64,3,32,0,57,0,0,6,158,4,0,0,65,0,0,0,0,0,67,4,53],[0,0,0,32,4,32,0,57,0,0,6,159,6,0,0,65,0,0,0,0,0,100,4,53,0,0,0,5,6,0,0,41],[0,0,0,0,0,98,4,53,0,0,0,64,6,16,0,57,0,0,6,160,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,21,30,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,21,30,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,6,86,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,6,86,3,32,0,156,0,0,0,0,2,1,128,25,0,0,6,86,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,6,149,1,16,1,199],[0,0,0,1,2,0,0,57,25,83,25,78,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,0,6,86,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,21,7,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,21,0,0,0,65,61,0,0,0,0,6,5,0,75],[0,0,21,21,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,21,154,0,0,97,61,0,0,0,0,1,0,4,51,0,0,6,97,1,16,1,151,0,0,6,160,1,16,0,156],[0,0,21,30,0,0,193,61,0,0,0,0,0,1,4,45,0,0,0,0,1,0,0,25,0,0,25,85,0,1,4,48],[0,0,6,224,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,6,166,1,0,0,65,0,0,25,85,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,21,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,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,21,43,0,0,65,61,0,0,0,0,6,4,0,75],[0,0,21,182,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,21,182,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,21,80,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,21,72,0,0,65,61],[0,0,0,0,6,4,0,75,0,0,21,95,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,21,182,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,21,109,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,21,101,0,0,65,61,0,0,0,0,6,4,0,75,0,0,21,124,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,21,182,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,21,138,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,21,130,0,0,65,61,0,0,0,0,6,4,0,75,0,0,21,153,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,21,182,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,21,167,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,21,159,0,0,65,61,0,0,0,0,6,4,0,75],[0,0,21,182,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,86,1,0,0,65,0,0,6,86,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,25,85,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,6,255,1,80,0,156,0,0,23,113,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,6,113,2,0,0,65,0,0,0,0,0,33,4,53],[0,0,0,96,1,80,0,57,0,0,6,114,2,0,0,65,0,0,0,0,0,33,4,53,0,0,0,64,1,80,0,57],[0,0,6,115,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,6,116,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,6,86,1,144,0,156,0,0,6,86,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,6,86,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,6,86,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,6,117,1,16,1,199,0,0,0,3,2,0,0,41,25,83,25,78,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,23,121,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,21,248,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,21,241,0,0,65,61],[0,0,0,0,3,33,0,25,0,0,0,0,0,3,4,53,0,0,6,86,3,32,0,156,0,0,6,86,4,0,0,65],[0,0,0,0,2,4,128,25,0,0,0,64,2,32,2,16,0,0,6,86,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,6,86,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],[25,83,25,78,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,6,86,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,22,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,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,22,18,0,0,65,61,0,0,0,31,5,80,1,144,0,0,22,39,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,23,123,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,22,58,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,22,51,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,6,94,4,208,0,156,0,0,23,113,0,0,33,61],[0,0,0,1,3,48,1,144,0,0,23,113,0,0,193,61,0,0,0,64,0,208,4,63,0,0,0,13,11,0,0,57],[0,0,0,0,3,11,4,26,0,0,6,94,4,48,0,156,0,0,23,113,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,6,118,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,23,117,0,0,97,61,0,0,0,1,3,0,0,57],[0,0,0,1,6,64,0,140,0,0,22,115,0,0,97,61,0,0,0,0,3,11,4,26,0,0,0,0,4,99,0,75],[0,0,23,107,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,23,107,0,0,161,61,0,0,6,118,7,96,0,65,0,0,0,0,9,7,4,26,0,0,0,0,0,176,4,53],[0,0,6,118,6,80,0,65,0,0,0,0,8,6,4,26,0,0,0,0,9,137,0,75,0,0,22,115,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,23,107,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,22,90,0,0,129,61],[0,0,0,0,3,11,4,26,0,0,0,0,2,3,0,75,0,0,23,117,0,0,97,61,0,0,0,1,2,48,0,138],[0,0,0,0,2,35,1,112,0,0,22,127,0,0,193,61,0,0,0,14,2,0,0,57,0,0,0,0,3,2,4,26],[0,0,6,94,4,48,1,151,0,0,6,94,5,64,0,156,0,0,23,117,0,0,97,61,0,0,6,119,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,6,120,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,22,149,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,22,142,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,6,86,2,208,0,156,0,0,6,86,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,6,86,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,6,86,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,25,83,25,73,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,6,86,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,22,190,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,22,182,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,22,207,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,23,155,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,6,94,4,16,0,156,0,0,23,113,0,0,33,61],[0,0,0,1,2,32,1,144,0,0,23,113,0,0,193,61,0,0,0,64,0,16,4,63,0,0,0,32,2,48,0,140],[0,0,23,121,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,21,212,0,0,161,61,0,0,0,0,2,11,4,26,0,0,0,0,3,2,0,75],[0,0,23,190,0,0,97,61,0,0,6,121,3,32,0,65,0,0,0,0,4,3,4,26,0,0,6,118,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,23,38,0,0,65,61,0,0,0,1,6,0,0,57],[0,0,6,124,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,23,2,0,0,129,61,0,0,6,122,4,112,0,65],[0,0,0,0,4,4,4,26,0,0,6,123,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,23,107,0,0,161,61],[0,0,6,118,6,64,0,65,0,0,0,0,7,83,0,75,0,0,23,107,0,0,161,61,0,0,0,0,7,6,4,26],[0,0,0,0,0,176,4,53,0,0,6,118,8,80,0,65,0,0,0,0,5,8,4,26,0,0,0,0,9,87,0,75],[0,0,23,35,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,23,107,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,6,124,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,6,124,5,80,0,156,0,0,0,0,6,3,192,25,0,0,0,0,3,6,0,75],[0,0,23,117,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,22,247,0,0,65,61,0,0,0,1,2,0,0,138],[0,0,0,0,2,35,0,75,0,0,23,117,0,0,97,61,0,0,0,1,2,48,0,57,0,0,0,0,2,50,1,112],[0,0,23,50,0,0,193,61,0,0,0,14,2,0,0,57,0,0,0,0,3,2,4,26,0,0,6,94,4,48,1,151],[0,0,0,1,4,64,0,138,0,0,6,94,5,64,0,156,0,0,23,117,0,0,33,61,0,0,6,119,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,23,196,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,23,65,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,23,58,0,0,65,61,0,0,0,0,3,18,0,25,0,0,0,0,0,3,4,53,0,0,6,86,4,0,0,65],[0,0,6,86,3,16,0,156,0,0,0,0,1,4,128,25,0,0,0,64,1,16,2,16,0,0,6,86,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,6,86,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,6,117,1,16,1,199,0,0,128,16,2,0,0,57,25,83,25,78,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,23,121,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,6,86,3,32,0,156],[0,0,6,86,4,0,0,65,0,0,0,0,2,4,128,25,0,0,6,86,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,6,127,1,16,1,199],[0,0,128,13,2,0,0,57,0,0,0,2,3,0,0,57,0,0,6,128,4,0,0,65,25,83,25,73,0,0,4,15],[0,0,0,1,1,32,1,144,0,0,23,121,0,0,97,61,0,0,0,0,0,1,4,45,0,0,6,224,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,6,166,1,0,0,65],[0,0,25,85,0,1,4,48,0,0,6,224,1,0,0,65,0,0,0,0,0,16,4,53,0,0,0,65,1,0,0,57],[0,0,23,110,0,0,1,61,0,0,6,224,1,0,0,65,0,0,0,0,0,16,4,53,0,0,0,17,1,0,0,57],[0,0,23,110,0,0,1,61,0,0,0,0,1,0,0,25,0,0,25,85,0,1,4,48,0,0,0,31,2,48,1,143],[0,0,0,5,4,48,2,114,0,0,23,135,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,23,127,0,0,65,61,0,0,0,0,5,2,0,75],[0,0,23,150,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,6,86,1,0,0,65,0,0,6,86,2,160,0,156],[0,0,0,0,10,1,128,25,0,0,0,64,1,160,2,16,0,0,23,187,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,23,168,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,23,160,0,0,65,61],[0,0,0,0,6,4,0,75,0,0,23,183,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,86,1,0,0,65],[0,0,6,86,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,25,85,0,1,4,48,0,0,0,68,2,16,0,57,0,0,6,178,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,23,201,0,0,1,61],[0,0,0,68,2,16,0,57,0,0,6,125,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,6,98,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,6,86,2,0,0,65],[0,0,6,86,3,16,0,156,0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16,0,0,6,126,1,16,1,199],[0,0,25,85,0,1,4,48,0,2,0,0,0,0,0,2,0,0,6,87,1,0,0,65,0,0,0,0,0,16,4,57],[0,0,0,0,1,0,4,16,0,2,0,0,0,1,0,29,0,0,0,4,0,16,4,67,0,0,6,86,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,6,86,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,6,88,1,16,1,199,0,0,128,2,2,0,0,57,25,83,25,78,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,24,53,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75,0,0,24,54,0,0,97,61],[0,0,0,64,5,0,4,61,0,0,6,161,1,0,0,65,0,0,0,0,0,21,4,53,0,0,0,0,1,0,4,20],[0,0,0,2,4,0,0,41,0,0,0,4,2,64,0,140,0,0,24,4,0,0,97,61,0,0,6,86,2,0,0,65],[0,0,6,86,3,16,0,156,0,0,0,0,1,2,128,25,0,0,6,86,3,80,0,156,0,0,0,0,2,5,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,6,135,1,16,1,199],[0,0,0,0,2,4,0,25,0,1,0,0,0,5,0,29,25,83,25,73,0,0,4,15,0,0,0,1,5,0,0,41],[0,0,0,2,4,0,0,41,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,1,6,86,0,48,1,157],[0,0,6,86,3,48,1,151,0,3,0,0,0,1,3,85,0,0,0,1,2,32,1,144,0,0,24,62,0,0,97,61],[0,0,6,93,1,80,0,156,0,0,24,56,0,0,129,61,0,0,0,64,0,80,4,63,0,0,6,87,1,0,0,65],[0,0,0,0,0,16,4,57,0,0,0,4,0,64,4,67,0,0,6,86,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,6,86,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,6,88,1,16,1,199],[0,0,128,2,2,0,0,57,25,83,25,78,0,0,4,15,0,0,0,1,2,32,1,144,0,0,24,53,0,0,97,61],[0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75,0,0,24,54,0,0,97,61,0,0,0,64,5,0,4,61],[0,0,6,162,1,0,0,65,0,0,0,0,0,21,4,53,0,0,0,0,1,0,4,20,0,0,0,2,2,0,0,41],[0,0,0,4,3,32,0,140,0,0,24,49,0,0,97,61,0,0,6,86,4,0,0,65,0,0,6,86,3,16,0,156],[0,0,0,0,1,4,128,25,0,0,6,86,3,80,0,156,0,0,0,0,4,5,64,25,0,0,0,64,3,64,2,16],[0,0,0,192,1,16,2,16,0,0,0,0,1,49,1,159,0,0,6,135,1,16,1,199,0,2,0,0,0,5,0,29],[25,83,25,73,0,0,4,15,0,0,0,2,5,0,0,41,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,1,6,86,0,48,1,157,0,0,6,86,3,48,1,151,0,3,0,0,0,1,3,85,0,0,0,1,2,32,1,144],[0,0,24,91,0,0,97,61,0,0,6,94,1,80,0,156,0,0,24,56,0,0,33,61,0,0,0,64,0,80,4,63],[0,0,0,0,0,1,4,45,0,0,0,0,0,1,4,47,0,0,0,0,1,0,0,25,0,0,25,85,0,1,4,48],[0,0,6,224,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,6,166,1,0,0,65,0,0,25,85,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,24,75,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,24,67,0,0,65,61,0,0,0,0,6,4,0,75],[0,0,24,119,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,24,119,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,24,104,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,24,96,0,0,65,61],[0,0,0,0,6,4,0,75,0,0,24,119,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,86,1,0,0,65],[0,0,6,86,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,25,85,0,1,4,48,0,0,0,64,2,0,4,61,0,0,6,230,1,32,0,156],[0,0,24,183,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,6,130,3,0,0,65,0,0,0,0,0,49,4,53,0,0,0,128,3,32,0,57,0,0,6,131,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,6,129,3,32,0,156,0,0,24,183,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,6,132,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,6,129,2,16,0,156,0,0,24,183,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,6,133,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,128,2,16,0,57],[0,0,6,131,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,6,224,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,6,166,1,0,0,65],[0,0,25,85,0,1,4,48,0,1,0,0,0,0,0,2,0,0,0,64,7,0,4,61,0,0,6,120,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,24,210,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,24,203,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,6,86,2,0,0,65],[0,0,6,86,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,6,86,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,6,86,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],[25,83,25,73,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,6,86,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,24,252,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,24,244,0,0,65,61],[0,0,0,0,7,5,0,75,0,0,25,11,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,25,29,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,6,94,4,16,0,156,0,0,25,64,0,0,33,61,0,0,0,1,2,32,1,144],[0,0,25,64,0,0,193,61,0,0,0,64,0,16,4,63,0,0,0,31,1,48,0,140,0,0,25,70,0,0,161,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,25,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,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,25,34,0,0,65,61,0,0,0,0,6,4,0,75,0,0,25,57,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,86,1,0,0,65,0,0,6,86,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,25,85,0,1,4,48],[0,0,6,224,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,6,166,1,0,0,65,0,0,25,85,0,1,4,48,0,0,0,0,1,0,0,25,0,0,25,85,0,1,4,48],[0,0,0,0,0,1,4,47,0,0,25,76,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,25,81,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,25,83,0,0,4,50],[0,0,25,84,0,1,4,46,0,0,25,85,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,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],[215,182,153,1,5,113,145,1,218,190,183,113,68,242,163,56,92,128,51,172,211,175,151,233,66,58,105,94,129,173,30,181],[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],[215,182,153,1,5,113,145,1,218,190,183,113,68,242,163,56,92,128,51,172,211,175,151,233,66,58,105,94,129,173,30,180],[215,182,153,1,5,113,145,1,218,190,183,113,68,242,163,56,92,128,51,172,211,175,151,233,66,58,105,94,129,173,30,183],[215,182,153,1,5,113,145,1,218,190,183,113,68,242,163,56,92,128,51,172,211,175,151,233,66,58,105,94,129,173,30,182],[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],[222,36,37,129,75,195,76,70,242,125,90,200,53,42,194,120,152,251,22,36,71,137,39,215,0,176,92,214,240,227,180,58],[197,97,156,222,156,163,223,139,22,168,181,115,26,106,182,110,82,122,176,220,60,175,49,157,70,253,64,248,50,252,227,74],[172,234,161,127,251,123,250,254,21,226,192,38,128,20,0,86,72,84,201,131,154,22,101,182,95,24,178,40,221,85,235,205],[0,0,0,0,0,0,0,0,0,0,0,0,124,173,80,73,162,188,160,49,198,228,85,140,144,41,227,102,58,220,148,142],[211,243,158,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],[66,32,205,118,0,0,0,0,0,0,0,0,0,0,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,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,0,0,0,0,1,255,255,255,224],[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,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],[67,111,100,101,79,114,97,99,108,101,32,99,97,108,108,32,102,97,105,108,101,100,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],[68,101,99,111,109,109,105,116,109,101,110,116,32,99,111,115,116,32,119,97,115,110,116,32,97,109,111,114,116,105,122,101],[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,238,238,238,238,238,238,238,238,238,238,238,238,238,238,238,238,238,238,238,238],[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],[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],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,103,70,249,29],[0,0,0,0,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,208,127,66,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,230,246,42,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,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,208,127,66,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,211,243,158,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,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,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,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,153,58,4,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,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,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,147,174,83,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,103,70,249,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,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,51,208,170,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,87,154,227,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,94,254,75,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,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,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,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,51,208,170,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,66,32,205,118],[0,0,0,0,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,25,216,172,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,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,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,5,77,67,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,6,183,38,49],[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,104,101,32,118,97,108,117,101,32,105,110,32,116,114,97,110,115,105,101,110,116,32,115,116,111,114,97,103,101,32,105],[115,32,110,111,116,32,119,104,97,116,32,119,97,115,32,101,120,112,101,99,116,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,0,0,132,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],[84,104,105,115,32,109,101,116,104,111,100,32,97,108,119,97,121,115,32,114,101,118,101,114,116,115,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],[103,70,249,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],[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],[208,127,66,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],[84,104,101,32,99,97,108,108,32,115,104,111,117,108,100,32,104,97,118,101,32,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,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,64],[246,238,190,171,224,135,139,78,225,22,236,14,189,243,137,181,100,71,233,145,192,87,59,242,118,52,253,55,47,152,163,196],[112,134,164,241,173,132,202,164,176,88,116,111,203,82,28,181,97,129,88,209,207,156,76,91,121,198,230,11,97,218,64,154],[210,162,228,96,106,47,165,99,156,127,151,232,109,33,140,136,82,91,164,227,17,75,162,206,135,176,211,80,117,20,194,101],[28,203,233,28,7,95,199,244,240,51,191,162,72,219,143,204,211,86,93,233,75,191,177,47,60,89,255,70,194,113,191,131],[206,64,20,198,136,17,249,162,26,31,219,44,14,97,19,224,109,183,202,147,183,64,78,120,220,124,205,92,168,154,76,169],[255,255,255,255,0,0,0,0,255,255,255,255,255,255,255,255,188,230,250,173,167,23,158,132,243,185,202,194,252,99,37,81],[98,117,116,32,115,117,99,99,101,101,100,101,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[80,50,53,54,32,86,101,114,105,102,121,32,115,104,111,117,108,100,32,104,97,118,101,32,102,97,105,108,101,100,44,32],[45,93,27,158,149,208,90,157,99,128,104,23,146,222,115,119,106,139,85,202,149,203,251,182,108,8,247,114,135,78,98,236],[80,50,53,54,32,86,101,114,105,102,121,32,104,97,115,32,102,97,105,108,101,100,0,0,0,0,0,0,0,0,0,0],[100,44,32,98,117,116,32,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],[80,50,53,54,32,86,101,114,105,102,121,32,115,104,111,117,108,100,32,104,97,118,101,32,115,117,99,99,101,101,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,32,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],[0,0,0,0,0,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,255],[112,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],[32,116,104,101,32,101,120,112,101,99,116,101,100,32,104,97,115,104,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[82,101,116,117,114,110,101,100,32,98,121,116,101,99,111,100,101,32,100,111,101,115,32,110,111,116,32,109,97,116,99,104],[116,119,101,101,110,32,116,119,111,32,99,97,108,108,115,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[68,101,99,111,109,109,105,116,109,101,110,116,32,99,111,115,116,32,119,97,115,110,116,32,101,113,117,97,108,32,98,101],[112,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],[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],[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],[128,137,191,37,238,147,34,244,143,45,218,177,28,206,250,96,96,242,96,216,66,28,39,113,96,107,205,238,78,237,163,243]]} \ No newline at end of file +{"predeployed_contracts":{"0x0000000000000000000000000000000000000000":[[0,0,0,1,1,32,1,144,0,0,0,4,0,0,193,61,0,0,0,0,1,0,0,25,0,0,0,17,0,1,4,46],[0,0,0,128,1,0,0,57,0,0,0,64,0,16,4,63,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75],[0,0,0,14,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,5,1,0,0,65,0,0,0,17,0,1,4,46,0,0,0,0,1,0,0,25,0,0,0,18,0,1,4,48],[0,0,0,16,0,0,4,50,0,0,0,17,0,1,4,46,0,0,0,18,0,1,4,48,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],[175,66,242,103,141,4,1,110,33,198,129,151,108,128,65,227,125,97,137,230,206,140,232,80,64,84,68,121,2,83,255,78]],"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,27,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],[179,68,59,65,142,145,24,29,2,67,103,34,93,183,33,202,28,183,196,203,84,235,179,0,253,132,216,164,97,35,28,11]],"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],[228,246,96,45,71,192,105,208,154,38,228,162,159,15,59,143,57,108,106,187,164,190,80,74,187,89,113,131,24,79,249,176]],"0x0000000000000000000000000000000000000005":[[0,1,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,116,0,0,193,61],[0,0,0,64,2,16,3,112,0,0,0,0,2,2,4,59,0,0,0,32,3,16,3,112,0,0,0,0,3,3,4,59],[0,0,0,0,4,1,4,59,0,0,0,33,1,64,0,140,0,0,0,13,0,0,65,61,0,0,0,0,1,0,4,20],[0,0,0,0,1,16,4,32,0,0,0,33,1,48,0,140,0,0,0,17,0,0,65,61,0,0,0,0,1,0,4,20],[0,0,0,0,1,16,4,32,0,0,0,33,1,32,0,140,0,0,0,21,0,0,65,61,0,0,0,0,1,0,4,20],[0,0,0,0,1,16,4,32,0,0,0,31,6,64,1,143,0,0,0,0,0,0,4,53,0,0,0,32,0,0,4,63],[0,0,0,64,0,0,4,63,0,0,0,0,1,0,3,103,0,0,0,96,5,16,3,112,0,0,0,5,7,64,2,114],[0,0,0,37,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,149,3,79],[0,0,0,0,10,10,4,59,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,30,0,0,65,61,0,0,0,0,8,6,0,75,0,0,0,51,0,0,97,61,0,0,0,3,6,96,2,16],[0,0,0,5,7,112,2,16,0,0,0,0,8,7,4,51,0,0,0,0,8,104,1,207,0,0,0,0,8,104,2,47],[0,0,0,0,5,117,3,79,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,133,1,159,0,0,0,0,0,87,4,53,0,0,0,31,5,48,1,143],[0,0,0,96,4,64,0,57,0,0,0,0,6,65,3,79,0,0,0,5,7,48,2,114,0,0,0,65,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,3,79,0,0,0,0,10,10,4,59],[0,0,0,32,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,57,0,0,65,61,0,0,0,0,8,5,0,75,0,0,0,80,0,0,97,61,0,0,0,5,7,112,2,16],[0,0,0,0,6,118,3,79,0,0,0,3,5,80,2,16,0,0,0,32,7,112,0,57,0,0,0,0,8,7,4,51],[0,0,0,0,8,88,1,207,0,0,0,0,8,88,2,47,0,0,0,0,6,6,4,59,0,0,1,0,5,80,0,137],[0,0,0,0,6,86,2,47,0,0,0,0,5,86,1,207,0,0,0,0,5,133,1,159,0,0,0,0,0,87,4,53],[0,0,0,0,3,52,0,25,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,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,97,3,79],[0,0,0,0,7,7,4,59,0,0,0,64,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,86,0,0,65,61,0,0,0,0,5,3,0,75,0,0,0,109,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,64,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,52,22,1,0,0,57,0,0,0,34,3,0,0,65,0,0,0,0,1,19,4,32],[0,0,0,0,1,1,0,75,0,0,0,121,0,0,193,61,0,0,0,0,1,0,0,25,0,0,0,128,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,33,1,0,0,65],[0,0,0,127,0,1,4,46,0,0,0,35,1,0,0,65,0,0,0,35,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,96,1,32,2,16,0,0,0,127,0,1,4,46,0,0,0,126,0,0,4,50,0,0,0,127,0,1,4,46],[0,0,0,128,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,1,0,0,0,0,0,0,0,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,0,0,0,0,255,255,255,255],[228,184,129,28,218,183,25,27,197,58,172,201,23,57,6,160,71,110,228,121,104,196,36,100,33,221,99,213,120,73,70,207]],"0x0000000000000000000000000000000000000006":[[0,0,0,1,2,32,1,144,0,0,0,19,0,0,193,61,0,0,0,0,2,0,0,25,0,0,0,0,3,0,0,25],[0,0,0,5,4,32,2,16,0,0,0,0,4,65,3,79,0,0,0,0,4,4,4,59,0,0,0,0,3,67,4,54],[0,0,0,1,2,32,0,57,0,0,0,4,4,32,0,140,0,0,0,4,0,0,65,61,0,0,0,20,1,0,0,57],[0,0,0,9,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,24,0,0,193,61,0,0,0,0,1,0,0,25,0,0,0,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,8,1,0,0,65,0,0,0,27,0,1,4,46],[0,0,0,10,1,0,0,65,0,0,0,27,0,1,4,46,0,0,0,26,0,0,4,50,0,0,0,27,0,1,4,46],[0,0,0,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],[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,64,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,0,0,0,0,0,0,0],[40,50,20,23,28,173,201,226,72,84,112,121,31,79,119,148,109,81,32,144,131,223,61,179,233,206,191,232,53,71,151,98]],"0x0000000000000000000000000000000000000007":[[0,0,0,1,2,32,1,144,0,0,0,19,0,0,193,61,0,0,0,0,2,0,0,25,0,0,0,0,3,0,0,25],[0,0,0,5,4,32,2,16,0,0,0,0,4,65,3,79,0,0,0,0,4,4,4,59,0,0,0,0,3,67,4,54],[0,0,0,1,2,32,0,57,0,0,0,3,4,32,0,140,0,0,0,4,0,0,65,61,0,0,12,5,1,0,0,57],[0,0,0,9,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,24,0,0,193,61,0,0,0,0,1,0,0,25,0,0,0,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,8,1,0,0,65,0,0,0,27,0,1,4,46],[0,0,0,10,1,0,0,65,0,0,0,27,0,1,4,46,0,0,0,26,0,0,4,50,0,0,0,27,0,1,4,46],[0,0,0,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],[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,3,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,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,0,0,0,0,0,0,0],[32,181,238,202,223,243,180,57,201,249,197,253,160,180,113,3,176,216,168,16,143,90,113,116,97,239,102,75,190,34,109,169]],"0x0000000000000000000000000000000000000008":[[0,1,0,0,0,0,0,2,0,0,0,0,0,1,3,85,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,0,0,16,4,48,1,151,0,0,0,1,2,32,1,144,0,0,0,52,0,0,193,61,0,0,0,16,2,48,1,151],[0,0,0,192,82,32,1,26,0,0,0,192,101,32,0,201,0,0,0,0,3,83,0,73,0,0,0,16,3,48,1,152],[0,0,0,16,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,0,3,103],[0,0,0,31,3,64,1,143,0,0,0,16,2,32,1,151,0,0,0,5,4,64,2,114,0,0,0,28,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,69,0,75,0,0,0,21,0,0,65,61],[0,0,0,0,5,3,0,75,0,0,0,42,0,0,97,61,0,0,0,3,3,48,2,16,0,0,0,5,4,64,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,65,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,20,4,53,0,0,0,18,49,32,0,209,0,0,0,19,1,16,0,65],[0,0,0,20,50,32,0,209,0,0,0,21,2,32,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,57,0,0,193,61,0,0,0,0,1,0,0,25,0,0,0,60,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,17,1,0,0,65],[0,0,0,60,0,1,4,46,0,0,0,22,1,0,0,65,0,0,0,60,0,1,4,46,0,0,0,59,0,0,4,50],[0,0,0,60,0,1,4,46,0,0,0,61,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,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,56,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,1,134,160],[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,6,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,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,0,0,0,0,0,0,0],[30,241,33,23,190,215,135,233,221,36,246,12,23,17,1,118,199,26,149,210,42,144,21,215,189,250,36,242,149,52,241,0]],"0x0000000000000000000000000000000000008001":[[0,0,0,1,1,32,1,144,0,0,0,4,0,0,193,61,0,0,0,0,1,0,0,25,0,0,0,17,0,1,4,46],[0,0,0,128,1,0,0,57,0,0,0,64,0,16,4,63,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75],[0,0,0,14,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,5,1,0,0,65,0,0,0,17,0,1,4,46,0,0,0,0,1,0,0,25,0,0,0,18,0,1,4,48],[0,0,0,16,0,0,4,50,0,0,0,17,0,1,4,46,0,0,0,18,0,1,4,48,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],[175,66,242,103,141,4,1,110,33,198,129,151,108,128,65,227,125,97,137,230,206,140,232,80,64,84,68,121,2,83,255,78]],"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],[82,196,187,126,10,190,153,114,73,167,8,60,46,101,7,88,142,193,49,235,112,99,230,237,86,241,15,160,122,8,120,133]],"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],[238,152,20,73,192,75,47,189,183,87,11,76,164,100,204,154,164,103,88,254,46,21,212,154,172,49,16,103,0,70,176,79]],"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],[223,62,89,255,156,144,170,174,13,205,165,30,150,164,78,216,159,84,11,25,213,242,218,240,40,96,109,57,50,104,146,64]],"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],[81,102,191,199,126,113,54,183,221,66,149,62,165,26,231,44,138,209,202,232,57,191,9,202,204,131,225,161,39,117,207,250]],"0x0000000000000000000000000000000000008006":[[0,18,0,0,0,0,0,2,0,11,0,0,0,0,0,2,0,0,0,0,3,2,0,25,0,0,0,0,2,1,0,25],[0,0,0,96,4,32,2,112,0,0,4,194,2,64,1,151,0,1,0,0,0,33,3,85,0,2,0,0,0,33,3,85],[0,3,0,0,0,33,3,85,0,4,0,0,0,33,3,85,0,5,0,0,0,33,3,85,0,6,0,0,0,33,3,85],[0,7,0,0,0,33,3,85,0,8,0,0,0,33,3,85,0,9,0,0,0,33,3,85,0,10,0,0,0,33,3,85],[0,11,0,0,0,33,3,85,0,12,0,0,0,33,3,85,0,13,0,0,0,33,3,85,0,14,0,0,0,33,3,85],[0,15,0,0,0,33,3,85,0,16,0,0,0,33,3,85,0,17,0,0,0,1,3,85,0,0,4,194,0,64,1,157],[0,0,0,128,4,0,0,57,0,0,0,64,0,64,4,63,0,0,0,1,4,48,1,144,0,0,0,99,0,0,193,61],[0,0,0,4,4,32,0,140,0,0,3,41,0,0,65,61,0,0,0,0,4,1,4,59,0,0,0,224,4,64,2,112],[0,0,4,196,5,64,0,156,0,0,0,107,0,0,33,61,0,0,4,204,5,64,0,156,0,0,0,159,0,0,33,61],[0,0,4,208,5,64,0,156,0,0,1,52,0,0,97,61,0,0,4,209,5,64,0,156,0,0,2,72,0,0,97,61],[0,0,4,210,4,64,0,156,0,0,3,41,0,0,193,61,0,0,0,0,4,0,4,22,0,0,0,0,4,4,0,75],[0,0,3,41,0,0,193,61,0,0,0,4,2,32,0,138,0,0,0,32,2,32,0,140,0,0,3,41,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,3,41,0,0,33,61,0,0,0,0,2,0,4,17,0,0,0,2,1,48,1,144,0,0,0,58,0,0,193,61],[0,0,255,255,1,32,0,140,0,0,2,60,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,194,3,0,0,65,0,0,0,0,1,0,4,20,0,0,4,194,2,16,0,156],[0,0,0,0,1,3,128,25,0,0,0,192,1,16,2,16,0,0,4,219,1,16,1,199,0,0,128,16,2,0,0,57],[19,2,18,242,0,0,4,15,0,0,0,1,2,32,1,144,0,0,3,41,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,194,3,32,0,156,0,0,4,194,4,0,0,65,0,0,0,0,2,4,128,25],[0,0,4,194,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,4,253,1,16,1,199,0,0,128,13,2,0,0,57,0,0,0,2,3,0,0,57],[0,0,5,14,4,0,0,65,0,0,0,10,5,0,0,41,19,2,18,237,0,0,4,15,0,0,0,1,1,32,1,144],[0,0,3,41,0,0,97,61,0,0,0,0,1,0,0,25,0,0,19,3,0,1,4,46,0,0,0,0,1,0,4,22],[0,0,0,0,1,1,0,75,0,0,3,41,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,195,1,0,0,65,0,0,19,3,0,1,4,46,0,0,4,197,5,64,0,156],[0,0,0,195,0,0,33,61,0,0,4,201,5,64,0,156,0,0,1,75,0,0,97,61,0,0,4,202,3,64,0,156],[0,0,2,185,0,0,97,61,0,0,4,203,3,64,0,156,0,0,3,41,0,0,193,61,0,0,0,4,3,32,0,138],[0,0,0,32,3,48,0,140,0,0,3,41,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,4,211,3,48,0,156,0,0,3,41,0,0,33,61,0,0,0,5,3,0,0,41],[0,0,0,35,3,48,0,57,0,0,4,212,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,4,212,3,48,1,151,0,0,0,0,6,3,0,75,0,0,0,0,4,0,128,25],[0,0,4,212,3,48,0,156,0,0,0,0,4,5,192,25,0,0,0,0,3,4,0,75,0,0,3,41,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,4,211,3,208,0,156,0,0,3,41,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,3,41,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,3,183,0,0,193,61,0,0,0,0,4,13,0,75,0,0,3,242,0,0,193,61,0,0,0,0,1,0,4,22],[0,0,0,0,1,1,0,75,0,0,0,97,0,0,97,61,0,0,5,38,0,0,1,61,0,0,4,205,5,64,0,156],[0,0,1,182,0,0,97,61,0,0,4,206,3,64,0,156,0,0,2,237,0,0,97,61,0,0,4,207,3,64,0,156],[0,0,3,41,0,0,193,61,0,0,0,0,3,0,4,22,0,0,0,0,3,3,0,75,0,0,3,41,0,0,193,61],[0,0,0,4,3,32,0,138,0,0,0,128,3,48,0,140,0,0,3,41,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,4,213,3,48,0,156,0,0,3,41,0,0,33,61],[0,0,0,100,1,16,3,112,0,0,0,0,1,1,4,59,0,0,4,211,3,16,0,156,0,0,3,41,0,0,33,61],[0,0,0,4,1,16,0,57,19,2,9,95,0,0,4,15,0,0,0,17,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,2,9,121,0,0,4,15,0,0,1,66,0,0,1,61,0,0,4,198,5,64,0,156],[0,0,2,44,0,0,97,61,0,0,4,199,5,64,0,156,0,0,3,38,0,0,97,61,0,0,4,200,3,64,0,156],[0,0,3,41,0,0,193,61,0,0,0,4,3,32,0,138,0,0,0,64,3,48,0,140,0,0,3,41,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,4,211,3,48,0,156],[0,0,3,41,0,0,33,61,0,0,0,11,4,32,0,106,0,0,4,212,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,10,0,0,0,4,0,29,0,0,4,212,4,64,1,151],[0,0,0,0,5,4,0,75,0,0,0,0,2,0,160,25,0,0,4,212,4,64,0,156,0,0,0,0,2,3,192,25],[0,0,0,0,2,2,0,75,0,0,3,41,0,0,193,61,0,0,0,36,2,16,3,112,0,0,0,0,2,2,4,59],[0,9,0,0,0,2,0,29,0,0,4,213,2,32,0,156,0,0,3,41,0,0,33,61,0,0,0,0,3,0,4,16],[0,0,0,0,2,0,4,17,0,0,0,0,2,50,0,75,0,0,3,173,0,0,193,61,0,6,0,0,0,3,0,29],[0,0,0,11,2,0,0,41,0,8,0,4,0,32,0,61,0,0,0,8,1,16,3,96,0,0,0,0,2,1,4,59],[0,0,4,217,1,0,0,65,0,0,0,128,0,16,4,63,0,7,0,0,0,2,0,29,0,0,0,132,0,32,4,63],[0,0,4,194,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,192,1,32,2,16,0,0,4,218,1,16,1,199,0,0,128,4,2,0,0,57,19,2,18,242,0,0,4,15],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,4,194,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,3,213,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,3,41,0,0,65,61,0,0,0,128,2,0,4,61,0,0,0,0,2,2,0,75],[0,0,5,177,0,0,193,61,0,0,4,214,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,4,245,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,4,224,1,16,1,199,0,0,19,4,0,1,4,48],[0,0,0,0,3,0,4,22,0,0,0,0,3,3,0,75,0,0,3,41,0,0,193,61,0,0,0,4,2,32,0,138],[0,0,0,64,2,32,0,140,0,0,3,41,0,0,65,61,0,0,0,4,2,16,3,112,0,0,0,0,3,2,4,59],[0,0,4,213,2,48,0,156,0,0,3,41,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,2,10,68,0,0,4,15,0,0,4,213,1,16,1,151,0,0,0,64,2,0,4,61],[0,0,0,0,0,18,4,53,0,0,4,194,1,0,0,65,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,64,1,32,2,16,0,0,4,248,1,16,1,199,0,0,19,3,0,1,4,46,0,0,0,4,4,32,0,138],[0,0,0,96,4,64,0,140,0,0,3,41,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,4,211,5,64,0,156],[0,0,3,41,0,0,33,61,0,0,0,35,5,64,0,57,0,0,4,212,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,4,212,5,80,1,151,0,0,0,0,8,5,0,75],[0,0,0,0,6,0,128,25,0,0,4,212,5,80,0,156,0,0,0,0,6,7,192,25,0,0,0,0,5,6,0,75],[0,0,3,41,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,4,211,1,16,0,156,0,0,3,41,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,3,41,0,0,33,61],[0,0,0,2,1,48,1,144,0,0,0,1,1,16,2,112,0,0,1,115,0,0,193,61,0,0,0,0,1,0,4,17],[0,0,4,246,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,2,60,0,0,97,61,0,0,4,247,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,194,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,4,218,1,16,1,199],[0,0,128,3,2,0,0,57,19,2,18,237,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,0,4,194,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,148,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,140,0,0,65,61],[0,0,0,0,7,5,0,75,0,0,1,163,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,4,236,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,3,41,0,0,65,61,0,0,0,128,2,0,4,61],[0,0,0,8,1,0,0,41,19,2,10,68,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,2,10,112,0,0,4,15],[0,0,0,8,1,0,0,41,0,0,1,66,0,0,1,61,0,0,0,4,4,32,0,138,0,0,0,128,4,64,0,140],[0,0,3,41,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,4,211,5,64,0,156,0,0,3,41,0,0,33,61,0,0,0,35,5,64,0,57],[0,0,4,212,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,4,212,5,80,1,151,0,0,0,0,8,5,0,75,0,0,0,0,6,0,128,25,0,0,4,212,5,80,0,156],[0,0,0,0,6,7,192,25,0,0,0,0,5,6,0,75,0,0,3,41,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,4,211,5,80,0,156],[0,0,3,41,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,3,41,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,3,41,0,0,33,61,0,0,0,2,1,48,1,144],[0,0,0,1,1,16,2,112,0,0,1,230,0,0,193,61,0,0,0,0,1,0,4,17,0,0,4,246,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,2,60,0,0,97,61],[0,0,4,247,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,194,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,4,218,1,16,1,199,0,0,128,3,2,0,0,57],[19,2,18,237,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,4,194,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,7,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,255,0,0,65,61,0,0,0,0,7,5,0,75],[0,0,2,22,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,113,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,3,41,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,2,9,121,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,2,14,171,0,0,4,15,0,0,2,183,0,0,1,61],[0,0,0,0,4,0,4,22,0,0,0,0,4,4,0,75,0,0,3,41,0,0,193,61,0,0,0,4,2,32,0,138],[0,0,0,32,2,32,0,140,0,0,3,41,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,3,41,0,0,33,61,0,0,0,0,2,0,4,17],[0,0,0,2,1,48,1,144,0,0,3,153,0,0,193,61,0,0,255,255,1,32,0,140,0,0,3,153,0,0,161,61],[0,0,4,214,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,15,1,0,0,65,0,0,0,196,0,16,4,63],[0,0,5,16,1,0,0,65,0,0,0,228,0,16,4,63,0,0,5,17,1,0,0,65,0,0,19,4,0,1,4,48],[0,0,0,4,4,32,0,138,0,0,0,96,4,64,0,140,0,0,3,41,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,4,211,5,64,0,156],[0,0,3,41,0,0,33,61,0,0,0,35,5,64,0,57,0,0,4,212,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,4,212,5,80,1,151,0,0,0,0,8,5,0,75],[0,0,0,0,6,0,128,25,0,0,4,212,5,80,0,156,0,0,0,0,6,7,192,25,0,0,0,0,5,6,0,75],[0,0,3,41,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,4,211,1,16,0,156,0,0,3,41,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,3,41,0,0,33,61],[0,0,0,2,1,48,1,144,0,0,0,1,1,16,2,112,0,0,2,115,0,0,193,61,0,0,0,0,1,0,4,17],[0,0,4,246,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,2,60,0,0,97,61,0,0,4,247,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,194,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,4,218,1,16,1,199],[0,0,128,3,2,0,0,57,19,2,18,237,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,0,4,194,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,148,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,140,0,0,65,61],[0,0,0,0,7,5,0,75,0,0,2,163,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,9,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,3,41,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,2,9,121,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,2,10,112,0,0,4,15,0,0,0,10,1,0,0,41],[0,0,1,66,0,0,1,61,0,0,0,0,3,0,4,22,0,0,0,0,3,3,0,75,0,0,3,41,0,0,193,61],[0,0,0,4,2,32,0,138,0,0,0,32,2,32,0,140,0,0,3,41,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,4,213,1,16,0,156,0,0,3,41,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,194,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,4,219,1,16,1,199,0,0,128,16,2,0,0,57,19,2,18,242,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,3,41,0,0,97,61,0,0,0,64,2,0,4,61,0,0,4,236,3,32,0,156,0,0,3,169,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,3,207,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,3,207,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,3,207,0,0,33,61],[0,0,0,1,1,0,0,57,0,0,0,0,2,2,0,75,0,0,1,67,0,0,193,61,0,0,0,11,1,0,0,41],[0,0,5,10,1,16,1,152,0,0,0,0,1,0,0,25,0,0,6,108,0,0,193,61,0,0,0,1,1,16,1,143],[0,0,1,67,0,0,1,61,0,0,0,0,3,0,4,22,0,0,0,0,3,3,0,75,0,0,3,41,0,0,193,61],[0,0,0,4,2,32,0,138,0,0,0,32,2,32,0,140,0,0,3,41,0,0,65,61,0,0,0,4,1,16,3,112],[0,0,0,0,1,1,4,59,0,0,4,213,2,16,0,156,0,0,3,41,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,194,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,4,219,1,16,1,199,0,0,128,16,2,0,0,57],[19,2,18,242,0,0,4,15,0,0,0,1,2,32,1,144,0,0,3,41,0,0,97,61,0,0,0,64,2,0,4,61],[0,0,5,12,3,32,0,156,0,0,3,169,0,0,129,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,3,1,4,26,0,0,0,255,1,48,1,143,0,0,0,2,4,16,0,140],[0,0,3,207,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,3,207,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,3,207,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,3,207,0,0,33,61,0,0,0,0,0,19,4,53],[0,0,4,194,1,0,0,65,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,64,1,32,2,16],[0,0,5,13,1,16,1,199,0,0,19,3,0,1,4,46,0,0,0,4,4,32,0,138,0,0,0,128,4,64,0,140],[0,0,3,43,0,0,129,61,0,0,0,0,1,0,0,25,0,0,19,4,0,1,4,48,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,4,211,5,64,0,156,0,0,3,41,0,0,33,61,0,0,0,35,5,64,0,57,0,0,4,212,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,4,212,5,80,1,151],[0,0,0,0,8,5,0,75,0,0,0,0,6,0,128,25,0,0,4,212,5,80,0,156,0,0,0,0,6,7,192,25],[0,0,0,0,5,6,0,75,0,0,3,41,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,4,211,5,80,0,156,0,0,3,41,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,3,41,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,3,41,0,0,33,61,0,0,0,2,1,48,1,144,0,0,0,1,1,16,2,112],[0,0,3,85,0,0,193,61,0,0,0,0,1,0,4,17,0,0,4,246,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,2,60,0,0,97,61,0,0,4,247,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,194,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,192,1,32,2,16,0,0,4,218,1,16,1,199,0,0,128,3,2,0,0,57,19,2,18,237,0,0,4,15],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,4,194,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,118,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,110,0,0,65,61,0,0,0,0,7,5,0,75,0,0,3,133,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,142,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,3,41,0,0,65,61,0,0,0,128,2,0,4,61,0,0,0,7,1,0,0,41,19,2,10,68,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,2,14,171,0,0,4,15,0,0,0,7,1,0,0,41],[0,0,1,66,0,0,1,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,194,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,192,1,32,2,16,0,0,4,219,1,16,1,199,0,0,128,16,2,0,0,57,19,2,18,242,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,3,41,0,0,97,61,0,0,0,64,4,0,4,61,0,0,4,236,2,64,0,156],[0,0,3,195,0,0,161,61,0,0,5,6,1,0,0,65,0,0,0,0,0,16,4,53,0,0,0,65,1,0,0,57],[0,0,3,210,0,0,1,61,0,0,4,214,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,4,215,1,0,0,65],[0,0,0,196,0,16,4,63,0,0,4,216,1,0,0,65,0,0,19,4,0,1,4,48,0,0,4,214,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,4,255,1,0,0,65,0,0,0,196,0,16,4,63,0,0,5,0,1,0,0,65],[0,0,0,228,0,16,4,63,0,0,5,1,1,0,0,65,0,0,5,49,0,0,1,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,3,207,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,5,52,0,0,161,61,0,0,5,6,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,4,235,1,0,0,65],[0,0,19,4,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,226,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,218,0,0,65,61,0,0,0,0,6,4,0,75,0,0,3,241,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,170,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,4,212,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,4,212,10,64,1,151,0,0,4,212,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,4,212,10,160,0,156,0,0,0,0,12,9,192,25],[0,0,0,0,9,12,0,75,0,0,3,41,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,7,58,0,0,193,61,0,0,0,1,7,112,0,57],[0,0,0,0,8,215,0,75,0,0,3,249,0,0,65,61,0,0,0,0,1,0,4,22,0,0,0,0,1,81,0,75],[0,0,5,38,0,0,193,61,0,4,4,213,0,48,1,155,0,0,4,212,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,17,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,4,212,3,48,1,151,0,0,4,212,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,4,212,3,48,0,156],[0,0,0,0,6,4,192,25,0,0,0,0,3,6,0,75,0,0,3,41,0,0,193,61,0,11,0,0,0,9,0,29],[0,0,0,0,2,226,0,25,0,10,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,4,221,1,0,0,65,0,0,0,0,0,16,4,57],[0,0,0,0,1,0,4,16,0,9,0,0,0,1,0,29,0,0,0,4,0,16,4,67,0,0,0,0,1,0,4,20],[0,0,4,194,2,16,0,156,0,0,4,194,1,0,128,65,0,0,0,192,1,16,2,16,0,0,4,222,1,16,1,199],[0,0,128,2,2,0,0,57,19,2,18,242,0,0,4,15,0,0,0,1,2,32,1,144,0,0,9,3,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,4,212,8,0,0,65,0,0,0,11,9,0,0,41,0,0,0,10,11,0,0,41,0,0,3,41,0,0,97,61],[0,0,0,64,10,0,4,61,0,0,5,3,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,17,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,4,213,4,48,0,156,0,0,3,41,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,3,41,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,4,212,4,64,1,151,0,0,4,212,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,4,212,4,64,0,156,0,0,0,0,7,5,192,25,0,0,0,0,4,7,0,75,0,0,3,41,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,4,211,5,32,0,156],[0,0,3,41,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,4,212,3,48,1,151,0,0,4,212,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,4,212,3,48,0,156,0,0,0,0,7,5,192,25,0,0,0,0,3,7,0,75,0,0,3,41,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,4,170,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,4,162,0,0,65,61,0,0,0,31,5,32,1,144,0,0,4,185,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,9,4,0,0,41],[0,0,0,4,3,64,0,140,0,0,4,229,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,4,3,32,0,156,0,0,5,4,2,0,128,65,0,0,4,194,3,160,0,156],[0,0,4,194,5,0,0,65,0,10,0,0,0,10,0,29,0,0,0,0,3,5,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,194,3,16,0,156],[0,0,0,0,1,5,128,25,0,0,0,192,1,16,2,16,0,0,0,0,1,18,1,159,0,0,5,5,1,16,0,65],[0,0,0,6,3,0,0,41,0,0,0,0,2,3,0,75,0,0,4,220,0,0,97,61,0,0,4,243,1,16,1,199],[0,0,128,9,2,0,0,57,0,0,0,0,5,0,0,25,19,2,18,237,0,0,4,15,0,0,4,222,0,0,1,61],[0,0,0,0,2,4,0,25,19,2,18,237,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,4,212,8,0,0,65,0,0,0,11,9,0,0,41,0,0,0,10,10,0,0,41],[0,0,6,211,0,0,97,61,0,0,4,211,1,160,0,156,0,0,3,169,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,30,0,0,65,61,0,0,0,97,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,249,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,241,0,0,65,61,0,0,0,0,6,4,0,75,0,0,5,8,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,170,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,22,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,14,0,0,65,61,0,0,0,0,6,4,0,75,0,0,5,170,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,170,0,0,1,61,0,0,4,214,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,7,1,0,0,65,0,0,0,196,0,16,4,63,0,0,5,8,1,0,0,65,0,0,0,228,0,16,4,63],[0,0,5,9,1,0,0,65,0,0,1,4,0,16,4,63,0,0,5,2,1,0,0,65,0,0,19,4,0,1,4,48],[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,84,0,0,193,61,0,0,0,0,1,1,0,75,0,0,6,84,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,4,213,1,16,1,151,0,0,0,0,0,16,4,53,0,0,0,32,0,0,4,63,0,0,4,194,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,4,219,1,16,1,199,0,0,128,16,2,0,0,57,19,2,18,242,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,3,41,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,3,207,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,3,207,0,0,33,61,0,0,4,220,2,32,1,151],[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,194,2,0,0,65],[0,0,0,0,3,0,4,20,0,0,4,194,4,48,0,156,0,0,0,0,3,2,128,25,0,0,4,194,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,4,253,1,16,1,199,0,0,128,13,2,0,0,57,0,0,0,2,3,0,0,57,0,0,4,254,4,0,0,65],[0,0,0,93,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,126,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,118,0,0,65,61,0,0,0,0,6,4,0,75,0,0,5,141,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,170,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,155,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,147,0,0,65,61,0,0,0,0,6,4,0,75],[0,0,5,170,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,194,1,0,0,65,0,0,4,194,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,4,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,8,1,0,0,41,0,0,0,32,1,16,0,57,0,3,0,0,0,1,0,29,0,0,0,17,1,16,3,103],[0,0,0,0,1,1,4,59,0,8,0,0,0,1,0,29,0,0,4,213,1,16,0,156,0,0,3,41,0,0,33,61],[0,0,0,8,1,0,0,41,0,0,0,0,0,16,4,53,0,0,0,32,0,0,4,63,0,0,4,194,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,4,219,1,16,1,199,0,0,128,16,2,0,0,57,19,2,18,242,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,3,41,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,3,207,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,3,207,0,0,33,61,0,0,4,220,2,32,1,151],[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,17,1,0,3,103,0,0,0,0,3,33,3,79],[0,0,0,0,3,3,4,59,0,0,0,10,4,0,0,41,0,0,0,35,4,64,0,138,0,0,4,212,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,4,212,4,64,1,151],[0,0,4,212,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,4,212,4,64,0,156,0,0,0,0,5,6,192,25,0,0,0,0,4,5,0,75,0,0,3,41,0,0,193,61],[0,0,0,11,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,11,0,0,0,4,0,29,0,0,4,211,4,64,0,156,0,0,3,41,0,0,33,61,0,0,0,11,4,0,0,41],[0,0,0,0,4,64,0,121,0,0,0,36,6,48,0,57,0,0,4,212,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,4,212,4,64,1,151,0,10,0,0,0,6,0,29],[0,0,4,212,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,4,212,4,64,0,156,0,0,0,0,3,5,192,25,0,0,0,0,3,3,0,75,0,0,3,41,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,3,41,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,6,243,0,0,193,61],[0,0,0,5,1,0,0,107,0,0,7,62,0,0,193,61,0,0,4,221,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,194,1,0,0,65,0,0,0,0,3,0,4,20],[0,0,4,194,4,48,0,156,0,0,0,0,3,1,128,25,0,0,0,192,1,48,2,16,0,0,4,222,1,16,1,199],[19,2,18,242,0,0,4,15,0,0,0,1,2,32,1,144,0,0,9,3,0,0,97,61,0,0,0,0,1,1,4,59],[0,0,0,0,1,1,0,75,0,0,3,41,0,0,97,61,0,0,0,64,4,0,4,61,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,4,242,1,0,0,65,0,0,0,0,0,20,4,53],[0,0,0,4,1,64,0,57,0,0,0,8,2,0,0,41,0,0,0,0,0,33,4,53,0,0,4,194,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25,0,0,4,194,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,4,228,1,16,1,199,0,0,128,2,2,0,0,57,19,2,18,237,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,7,166,0,0,97,61,0,0,0,11,1,0,0,41,0,0,4,211,1,16,0,156],[0,0,3,169,0,0,33,61,0,0,0,11,1,0,0,41,0,0,0,64,0,16,4,63,0,0,4,194,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,4,243,1,16,1,199,0,0,128,13,2,0,0,57,0,0,0,4,3,0,0,57,0,0,4,244,4,0,0,65],[0,0,0,9,5,0,0,41,0,0,0,7,6,0,0,41,0,0,0,8,7,0,0,41,0,0,0,94,0,0,1,61],[0,0,0,64,1,0,4,61,0,0,0,132,2,16,0,57,0,0,4,249,3,0,0,65,0,0,0,0,0,50,4,53],[0,0,0,100,2,16,0,57,0,0,4,250,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,68,2,16,0,57],[0,0,4,251,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,4,214,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,194,2,0,0,65,0,0,4,194,3,16,0,156],[0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16,0,0,4,252,1,16,1,199,0,0,19,4,0,1,4,48],[0,0,0,64,4,0,4,61,0,10,0,0,0,4,0,29,0,0,5,11,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,194,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25,0,0,4,194,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,4,235,1,16,1,199,0,0,128,2,2,0,0,57,19,2,18,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,4,194,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,6,146,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,6,138,0,0,65,61,0,0,0,0,9,10,0,25,0,0,0,0,7,5,0,75],[0,0,6,162,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,6,182,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,4,211,4,16,0,156,0,0,3,169,0,0,33,61],[0,0,0,1,2,32,1,144,0,0,3,169,0,0,193,61,0,0,0,64,0,16,4,63,0,0,0,32,1,48,0,140],[0,0,3,41,0,0,65,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,235,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,195,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,187,0,0,65,61,0,0,0,0,6,4,0,75],[0,0,6,210,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,170,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,194,3,48,1,151],[0,0,0,5,5,48,2,114,0,0,6,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,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,219,0,0,65,61,0,0,0,0,6,4,0,75],[0,0,6,242,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,170,0,0,1,61,0,0,0,5,1,0,0,107],[0,0,7,83,0,0,193,61,0,0,4,221,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,194,1,0,0,65,0,0,0,0,3,0,4,20,0,0,4,194,4,48,0,156],[0,0,0,0,3,1,128,25,0,0,0,192,1,48,2,16,0,0,4,222,1,16,1,199,19,2,18,242,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,9,3,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75],[0,0,3,41,0,0,97,61,0,0,0,64,4,0,4,61,0,0,4,225,1,0,0,65,0,0,0,0,0,20,4,53],[0,0,0,4,2,64,0,57,0,0,0,8,1,0,0,41,0,4,0,0,0,2,0,29,0,0,0,0,0,18,4,53],[0,0,0,7,1,0,0,41,0,0,4,226,1,16,1,151,0,0,4,227,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,194,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25,0,0,4,194,3,64,0,156,0,6,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,4,228,1,16,1,199,0,0,128,2,2,0,0,57,0,1,0,0,0,2,0,29,19,2,18,237,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,7,134,0,0,97,61,0,0,0,6,1,0,0,41,0,0,4,211,1,16,0,156],[0,0,3,169,0,0,33,61,0,0,0,6,1,0,0,41,0,0,0,64,0,16,4,63,0,0,0,5,1,0,0,107],[0,0,7,44,0,0,97,61,0,0,0,5,1,0,0,41,0,0,4,229,1,16,1,151,0,0,0,0,0,1,4,23],[0,0,0,10,4,0,0,41,0,0,4,194,2,64,1,151,0,0,0,0,1,0,4,20,0,0,0,17,3,0,3,103],[0,1,0,0,0,35,3,85,0,0,0,11,4,64,0,41,0,0,0,11,5,64,0,108,0,0,0,0,5,0,0,25],[0,0,0,1,5,0,64,57,0,0,0,1,5,80,1,144,0,0,7,58,0,0,193,61,0,0,0,0,5,0,0,49],[0,0,0,0,6,69,0,75,0,0,7,230,0,0,129,61,0,0,5,6,1,0,0,65,0,0,0,0,0,16,4,53],[0,0,0,17,1,0,0,57,0,0,3,210,0,0,1,61,0,0,0,64,1,0,4,61,0,0,0,100,2,16,0,57],[0,0,4,239,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,68,2,16,0,57,0,0,4,240,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,4,214,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,194,2,0,0,65,0,0,4,194,3,16,0,156,0,0,0,0,1,2,128,25],[0,0,0,64,1,16,2,16,0,0,4,241,1,16,1,199,0,0,19,4,0,1,4,48,0,0,4,221,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,194,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,4,222,1,16,1,199,0,0,128,2,2,0,0,57,19,2,18,242,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,9,3,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75,0,0,3,41,0,0,97,61],[0,0,0,64,4,0,4,61,0,0,0,68,1,64,0,57,0,0,0,5,2,0,0,41,0,0,0,0,0,33,4,53],[0,0,0,36,1,64,0,57,0,0,0,8,2,0,0,41,0,0,0,0,0,33,4,53,0,0,4,223,1,0,0,65],[0,0,0,0,0,20,4,53,0,0,0,6,1,0,0,41,0,0,4,213,1,16,1,151,0,0,0,4,2,64,0,57],[0,0,0,0,0,18,4,53,0,0,4,194,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,4,194,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,4,224,1,16,1,199],[0,0,128,10,2,0,0,57,19,2,18,237,0,0,4,15,0,0,0,1,2,32,1,144,0,0,7,198,0,0,97,61],[0,0,0,6,1,0,0,41,0,0,4,211,1,16,0,156,0,0,3,169,0,0,33,61,0,0,0,6,1,0,0,41],[0,0,0,64,0,16,4,63,0,0,6,245,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,194,3,48,1,151,0,0,0,5,5,48,2,114],[0,0,7,150,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,142,0,0,65,61,0,0,0,0,6,4,0,75,0,0,7,165,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,170,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,194,3,48,1,151,0,0,0,5,5,48,2,114],[0,0,7,182,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,174,0,0,65,61,0,0,0,0,6,4,0,75,0,0,7,197,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,170,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,194,3,48,1,151,0,0,0,5,5,48,2,114],[0,0,7,214,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,206,0,0,65,61,0,0,0,0,6,4,0,75,0,0,7,229,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,170,0,0,1,61,0,0,0,0,2,35,3,79,0,0,0,0,3,69,0,73],[0,0,4,194,3,48,1,151,0,1,0,0,0,50,3,229,0,0,4,230,4,16,0,156,0,0,7,251,0,0,65,61],[0,0,4,214,1,0,0,65,0,0,0,6,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,4,238,2,0,0,65,0,0,0,0,0,33,4,53],[0,0,0,2,1,0,0,41,0,0,4,224,1,16,1,199,0,0,19,4,0,1,4,48,0,0,0,0,2,50,3,223],[0,0,0,192,1,16,2,16,0,0,4,231,1,16,1,151,0,0,4,232,1,16,1,199,0,1,0,0,0,18,3,181],[0,0,0,0,1,18,3,175,0,0,0,8,2,0,0,41,0,0,0,9,13,0,0,41,19,2,18,252,0,0,4,15],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,4,194,3,48,1,151,0,0,0,1,2,32,1,144],[0,0,9,4,0,0,97,61,0,0,0,63,2,48,0,57,0,0,4,233,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,4,211,5,32,0,156,0,0,3,169,0,0,33,61,0,0,0,1,4,64,1,144],[0,0,3,169,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,38,0,0,97,61,0,0,0,0,4,0,0,49],[0,0,0,17,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,30,0,0,65,61,0,6,0,0,0,8,0,29,0,0,0,0,2,0,0,75],[0,0,8,41,0,0,97,61,0,0,0,31,2,48,1,143,0,0,0,5,3,48,2,114,0,0,0,6,7,0,0,41],[0,0,8,54,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,46,0,0,65,61,0,0,0,0,4,2,0,75,0,0,8,69,0,0,97,61],[0,0,0,5,3,48,2,16,0,0,0,0,1,49,3,79,0,0,0,6,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,4,221,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,194,1,0,0,65,0,0,0,0,4,0,4,20,0,0,4,194,3,64,0,156],[0,0,0,0,4,1,128,25,0,0,0,192,1,64,2,16,0,0,4,222,1,16,1,199,19,2,18,242,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,9,3,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75],[0,0,3,41,0,0,97,61,0,0,0,64,4,0,4,61,0,0,4,234,1,0,0,65,0,0,0,0,0,20,4,53],[0,0,0,4,1,64,0,57,0,0,0,8,2,0,0,41,0,0,0,0,0,33,4,53,0,0,4,194,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25,0,0,4,194,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,4,235,1,16,1,199,0,0,128,2,2,0,0,57,19,2,18,237,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,9,31,0,0,97,61,0,0,0,10,1,0,0,41,0,0,4,211,1,16,0,156],[0,0,3,169,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,4,212,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,4,212,4,16,1,151,0,0,0,0,5,4,0,75,0,0,0,0,2,0,160,25],[0,0,4,212,4,64,0,156,0,0,0,0,2,3,192,25,0,0,0,0,2,2,0,75,0,0,3,41,0,0,193,61],[0,0,0,6,2,0,0,41,0,0,0,0,2,2,4,51,0,0,4,211,3,32,0,156,0,0,3,41,0,0,33,61],[0,0,0,6,1,16,0,41,0,0,0,6,2,32,0,41,0,0,0,31,3,32,0,57,0,0,4,212,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,4,212,3,48,1,151],[0,0,4,212,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,4,212,3,48,0,156,0,0,0,0,4,5,192,25,0,0,0,0,3,4,0,75,0,0,3,41,0,0,193,61],[0,0,0,0,35,2,4,52,0,0,4,211,4,48,0,156,0,0,3,169,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,4,211,5,64,0,156,0,0,3,169,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,3,41,0,0,33,61,0,0,0,0,4,50,0,75,0,0,8,191,0,0,129,61,0,0,4,212,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,4,212,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,4,212,6,96,0,156,0,0,0,0,8,7,192,25,0,0,0,0,6,8,0,75],[0,0,3,41,0,0,193,61,0,0,0,64,6,0,4,61,0,0,4,236,7,96,0,156,0,0,3,169,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,8,165,0,0,65,61,0,0,4,221,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,194,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,4,222,1,16,1,199,0,0,128,2,2,0,0,57,19,2,18,242,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,9,3,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75,0,0,3,41,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,4,237,1,0,0,65,0,0,0,0,0,19,4,53,0,0,0,4,1,48,0,57,0,0,0,8,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,8,238,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,8,226,0,0,65,61,0,0,0,11,4,0,0,41,0,0,0,0,1,66,0,73],[0,0,4,194,2,0,0,65,0,0,4,194,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,194,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,194,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,2,18,237,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,9,63,0,0,97,61,0,0,6,66,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,15,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,8,0,0,65,61,0,0,0,0,5,4,0,75],[0,0,9,29,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,4,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,194,3,48,1,151],[0,0,0,5,5,48,2,114,0,0,9,47,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,39,0,0,65,61,0,0,0,0,6,4,0,75],[0,0,9,62,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,170,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,194,3,48,1,151],[0,0,0,5,5,48,2,114,0,0,9,79,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,71,0,0,65,61,0,0,0,0,6,4,0,75],[0,0,9,94,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,170,0,0,1,61,0,0,0,31,3,16,0,57],[0,0,4,212,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,4,212,6,32,1,151,0,0,4,212,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,4,212,3,48,0,156,0,0,0,0,4,5,192,25,0,0,0,0,3,4,0,75],[0,0,9,119,0,0,97,61,0,0,0,17,3,16,3,103,0,0,0,0,3,3,4,59,0,0,4,211,4,48,0,156],[0,0,9,119,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,9,119,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,4,0,1,4,48,0,3,0,0,0,0,0,2,0,0,4,194,9,64,1,151,0,0,0,0,8,0,4,20],[0,0,0,17,7,0,3,103,0,1,0,0,0,151,3,85,0,0,0,0,4,69,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,0,1,5,80,1,144,0,0,10,5,0,0,193,61],[0,0,0,0,5,0,0,49,0,0,0,0,6,69,0,75,0,0,10,5,0,0,65,61,0,1,0,0,0,2,0,29],[0,2,0,0,0,1,0,29,0,3,0,0,0,3,0,29,0,0,0,0,2,151,3,79,0,0,0,0,3,69,0,73],[0,0,4,194,3,48,1,151,0,1,0,0,0,50,3,229,0,0,4,230,4,128,0,156,0,0,10,15,0,0,129,61],[0,0,0,0,2,50,3,223,0,0,0,192,1,128,2,16,0,0,4,231,1,16,1,151,0,0,5,18,1,16,1,199],[0,1,0,0,0,18,3,181,0,0,0,0,1,18,3,175,0,0,128,16,2,0,0,57,19,2,18,247,0,0,4,15],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,4,194,3,48,1,151,0,0,0,1,2,32,1,144],[0,0,10,22,0,0,97,61,0,0,0,63,2,48,0,57,0,0,4,233,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,4,211,6,64,0,156,0,0,10,9,0,0,33,61,0,0,0,1,5,80,1,144,0,0,10,9,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,9,184,0,0,97,61,0,0,0,0,6,0,0,49,0,0,0,17,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,9,176,0,0,65,61],[0,0,0,0,5,0,0,75,0,0,9,186,0,0,97,61,0,0,0,31,5,48,1,143,0,0,0,5,3,48,2,114],[0,0,0,1,9,0,0,41,0,0,9,199,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,9,191,0,0,65,61,0,0,0,0,6,5,0,75],[0,0,9,214,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,49,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,146,4,53,0,0,0,96,2,16,0,57,0,0,0,0,0,82,4,53,0,0,4,213,2,96,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,20,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,21,3,16,0,156],[0,0,10,9,0,0,33,61,0,0,0,192,3,16,0,57,0,0,0,64,0,48,4,63,0,0,4,194,3,0,0,65],[0,0,4,194,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,194,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,194,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,4,243,1,16,1,199,0,0,128,16,2,0,0,57,19,2,18,242,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,10,66,0,0,97,61,0,0,0,0,1,1,4,59,0,0,4,213,1,16,1,151],[0,0,0,0,0,1,4,45,0,0,5,6,1,0,0,65,0,0,0,0,0,16,4,53,0,0,0,17,1,0,0,57],[0,0,10,12,0,0,1,61,0,0,5,6,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,4,235,1,0,0,65,0,0,19,4,0,1,4,48,0,0,0,64,1,0,4,61],[0,0,0,68,2,16,0,57,0,0,4,238,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,54,0,0,1,61,0,0,0,31,4,48,1,143,0,0,0,5,2,48,2,114],[0,0,10,33,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,26,0,0,65,61,0,0,0,0,5,4,0,75,0,0,10,47,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,4,0,1,4,48,0,0,0,68,2,16,0,57,0,0,5,19,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,4,214,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,194,2,0,0,65,0,0,4,194,3,16,0,156,0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16],[0,0,4,224,1,16,1,199,0,0,19,4,0,1,4,48,0,0,0,0,1,0,0,25,0,0,19,4,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,4,213,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,22,2,0,0,65,0,0,0,0,0,33,4,53,0,0,5,23,2,48,0,156,0,0,10,104,0,0,129,61],[0,0,0,128,2,48,0,57,0,0,0,64,0,32,4,63,0,0,4,194,2,0,0,65,0,0,4,194,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,194,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,194,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,4,243,1,16,1,199,0,0,128,16,2,0,0,57,19,2,18,242,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,10,110,0,0,97,61,0,0,0,0,1,1,4,59,0,0,4,213,1,16,1,151,0,0,0,0,0,1,4,45],[0,0,5,6,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,4,235,1,0,0,65,0,0,19,4,0,1,4,48,0,0,0,0,1,0,0,25,0,0,19,4,0,1,4,48],[0,10,0,0,0,0,0,2,0,6,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,9,0,0,0,1,0,29,0,0,0,0,1,1,0,75,0,0,13,64,0,0,97,61],[0,4,0,0,0,2,0,29,0,0,4,213,1,32,1,151,0,0,255,255,2,16,0,140,0,0,13,74,0,0,161,61],[0,0,5,24,2,0,0,65,0,0,0,0,0,36,4,53,0,10,0,0,0,1,0,29,0,0,0,0,0,19,4,53],[0,0,4,194,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,4,194,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,4,235,1,16,1,199,0,0,128,2,2,0,0,57,0,7,0,0,0,2,0,29],[0,8,0,0,0,4,0,29,19,2,18,242,0,0,4,15,0,0,0,8,10,0,0,41,0,0,0,0,3,1,0,25],[0,0,0,96,3,48,2,112,0,0,4,194,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,10,161,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,10,153,0,0,65,61,0,0,0,0,7,5,0,75,0,0,10,176,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,13,93,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,4,211,2,64,0,156,0,0,13,49,0,0,33,61,0,0,0,1,1,16,1,144,0,0,13,49,0,0,193,61],[0,0,0,64,0,64,4,63,0,0,0,31,1,48,0,140,0,0,13,47,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,13,122,0,0,193,61,0,0,5,26,2,0,0,65],[0,0,0,0,0,36,4,53,0,0,0,10,2,0,0,41,0,0,0,0,0,33,4,53,0,0,4,194,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25,0,0,4,194,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,4,235,1,16,1,199,0,0,128,3,2,0,0,57,0,8,0,0,0,4,0,29,19,2,18,242,0,0,4,15],[0,0,0,8,10,0,0,41,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,4,194,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,10,231,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,10,223,0,0,65,61,0,0,0,0,7,5,0,75],[0,0,10,246,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,13,132,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,4,211,1,64,0,156],[0,0,13,49,0,0,33,61,0,0,0,64,0,64,4,63,0,0,0,32,1,48,0,140,0,0,13,47,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,13,161,0,0,193,61],[0,0,4,217,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,194,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,4,194,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,4,235,1,16,1,199,0,0,128,4,2,0,0,57,0,8,0,0,0,4,0,29],[19,2,18,242,0,0,4,15,0,0,0,8,10,0,0,41,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,0,4,194,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,40,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,32,0,0,65,61],[0,0,0,0,7,5,0,75,0,0,11,55,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,13,171,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,4,211,1,64,0,156,0,0,13,49,0,0,33,61,0,0,0,64,0,64,4,63,0,0,0,32,1,48,0,140],[0,0,13,47,0,0,65,61,0,0,0,0,1,10,4,51,0,0,0,0,1,1,0,75,0,0,13,200,0,0,97,61],[0,0,4,236,1,64,0,156,0,0,13,49,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,3,0,0,0,1,0,29,0,0,0,0,0,1,4,53,0,0,0,10,1,0,0,41],[0,0,0,0,0,16,4,53,0,0,0,32,0,0,4,63,0,0,4,194,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,4,219,1,16,1,199],[0,0,128,16,2,0,0,57,0,8,0,0,0,4,0,29,19,2,18,242,0,0,4,15,0,0,0,8,3,0,0,41],[0,0,0,1,2,32,1,144,0,0,13,47,0,0,97,61,0,0,0,0,2,3,4,51,0,0,0,2,3,32,0,140],[0,0,13,56,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,3,3,0,0,41],[0,0,0,0,3,3,4,51,0,0,0,1,4,48,0,140,0,0,13,56,0,0,33,61,0,0,4,220,2,32,1,151],[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,4,221,1,0,0,65,0,0,0,0,0,16,4,57,0,0,0,0,1,0,4,22,0,8,0,0,0,1,0,29],[0,0,0,0,1,1,0,75,0,0,11,214,0,0,97,61,0,0,128,10,1,0,0,57,0,0,0,4,0,16,4,67],[0,0,4,194,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,192,1,32,2,16,0,0,4,222,1,16,1,199,0,0,128,2,2,0,0,57,0,3,0,0,0,2,0,29],[19,2,18,242,0,0,4,15,0,0,0,1,2,32,1,144,0,0,13,55,0,0,97,61,0,0,0,0,1,1,4,59],[0,0,0,0,1,1,0,75,0,0,13,47,0,0,97,61,0,0,0,64,4,0,4,61,0,0,0,68,1,64,0,57],[0,0,0,8,2,0,0,41,0,0,0,0,0,33,4,53,0,0,0,36,1,64,0,57,0,0,0,10,2,0,0,41],[0,0,0,0,0,33,4,53,0,0,4,223,1,0,0,65,0,0,0,0,0,20,4,53,0,0,0,0,1,0,4,16],[0,0,4,213,1,16,1,151,0,0,0,4,2,64,0,57,0,0,0,0,0,18,4,53,0,0,4,194,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25,0,0,4,194,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,4,224,1,16,1,199,0,0,128,10,2,0,0,57,19,2,18,237,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,14,69,0,0,97,61,0,0,0,2,2,0,0,41,0,0,4,211,1,32,0,156],[0,0,13,49,0,0,33,61,0,0,0,64,0,32,4,63,0,0,4,221,1,0,0,65,0,0,0,0,0,16,4,57],[0,0,0,3,2,0,0,41,0,0,0,4,0,32,4,67,0,0,4,194,1,0,0,65,0,0,0,0,4,0,4,20],[0,0,4,194,3,64,0,156,0,0,0,0,4,1,128,25,0,0,0,192,1,64,2,16,0,0,4,222,1,16,1,199],[19,2,18,242,0,0,4,15,0,0,0,1,2,32,1,144,0,0,13,55,0,0,97,61,0,0,0,0,1,1,4,59],[0,0,0,0,1,1,0,75,0,0,13,47,0,0,97,61,0,0,0,64,4,0,4,61,0,0,4,225,1,0,0,65],[0,0,0,0,0,20,4,53,0,0,0,4,2,64,0,57,0,0,0,10,1,0,0,41,0,2,0,0,0,2,0,29],[0,0,0,0,0,18,4,53,0,0,0,9,1,0,0,41,0,0,4,226,1,16,1,151,0,0,4,227,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,194,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25,0,0,4,194,3,64,0,156],[0,3,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,4,228,1,16,1,199,0,0,128,2,2,0,0,57,19,2,18,237,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,14,101,0,0,97,61,0,0,0,3,8,0,0,41,0,0,4,211,1,128,0,156],[0,0,13,49,0,0,33,61,0,0,0,64,0,128,4,63,0,0,0,8,1,0,0,41,0,0,4,229,1,16,1,151],[0,0,0,0,0,1,4,23,0,0,12,4,0,0,1,61,0,0,0,7,2,0,0,41,0,0,0,4,0,32,4,67],[0,0,4,194,1,0,0,65,0,0,0,0,4,0,4,20,0,0,4,194,3,64,0,156,0,0,0,0,4,1,128,25],[0,0,0,192,1,64,2,16,0,0,4,222,1,16,1,199,19,2,18,242,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,13,55,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75,0,0,13,47,0,0,97,61],[0,0,0,64,4,0,4,61,0,0,4,225,1,0,0,65,0,0,0,0,0,20,4,53,0,0,0,4,2,64,0,57],[0,0,0,10,1,0,0,41,0,2,0,0,0,2,0,29,0,0,0,0,0,18,4,53,0,0,0,9,1,0,0,41],[0,0,4,226,1,16,1,151,0,0,4,227,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,194,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,4,194,3,64,0,156,0,3,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,4,228,1,16,1,199],[0,0,128,2,2,0,0,57,19,2,18,237,0,0,4,15,0,0,0,1,2,32,1,144,0,0,14,133,0,0,97,61],[0,0,0,3,8,0,0,41,0,0,4,211,1,128,0,156,0,0,13,49,0,0,33,61,0,0,0,64,0,128,4,63],[0,0,0,5,4,0,0,41,0,0,4,194,2,64,1,151,0,0,0,0,1,0,4,20,0,0,0,17,3,0,3,103],[0,1,0,0,0,35,3,85,0,0,0,0,7,0,4,17,0,0,0,6,4,64,0,41,0,0,0,6,5,64,0,108],[0,0,0,0,5,0,0,25,0,0,0,1,5,0,64,57,0,0,0,1,5,80,1,144,0,0,13,60,0,0,193,61],[0,0,0,0,5,0,0,49,0,0,0,0,6,69,0,75,0,0,13,60,0,0,65,61,0,0,0,0,2,35,3,79],[0,0,0,0,3,69,0,73,0,0,4,194,3,48,1,151,0,1,0,0,0,50,3,229,0,0,4,230,4,16,0,156],[0,0,13,217,0,0,129,61,0,0,0,0,2,50,3,223,0,0,0,192,1,16,2,16,0,0,4,231,1,16,1,151],[0,0,4,232,1,16,1,199,0,1,0,0,0,18,3,181,0,0,0,0,1,18,3,175,0,5,0,0,0,7,0,29],[0,0,4,213,13,112,1,151,0,0,0,4,2,0,0,41,19,2,18,252,0,0,4,15,0,0,0,0,3,1,0,25],[0,0,0,96,3,48,2,112,0,0,4,194,3,48,1,151,0,0,0,1,2,32,1,144,0,0,13,234,0,0,97,61],[0,0,0,63,2,48,0,57,0,0,4,233,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,4,211,5,32,0,156],[0,0,13,49,0,0,33,61,0,0,0,1,4,64,1,144,0,0,13,49,0,0,193,61,0,0,0,64,0,32,4,63],[0,6,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,12,68,0,0,97,61,0,0,0,0,4,0,0,49,0,0,0,17,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,12,60,0,0,65,61],[0,0,0,0,2,0,0,75,0,0,12,70,0,0,97,61,0,0,0,31,2,48,1,143,0,0,0,5,3,48,2,114],[0,0,12,82,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,12,74,0,0,65,61,0,0,0,0,4,2,0,75,0,0,12,97,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,8,0,0,0,8,0,29,0,0,4,221,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,194,1,0,0,65,0,0,0,0,4,0,4,20],[0,0,4,194,3,64,0,156,0,0,0,0,4,1,128,25,0,0,0,192,1,64,2,16,0,0,4,222,1,16,1,199],[19,2,18,242,0,0,4,15,0,0,0,1,2,32,1,144,0,0,13,55,0,0,97,61,0,0,0,0,1,1,4,59],[0,0,0,0,1,1,0,75,0,0,13,47,0,0,97,61,0,0,0,64,4,0,4,61,0,0,4,234,1,0,0,65],[0,0,0,0,0,20,4,53,0,0,0,4,1,64,0,57,0,0,0,10,2,0,0,41,0,0,0,0,0,33,4,53],[0,0,4,194,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,4,194,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,4,235,1,16,1,199,0,0,128,2,2,0,0,57],[19,2,18,237,0,0,4,15,0,0,0,1,2,32,1,144,0,0,14,5,0,0,97,61,0,0,0,7,9,0,0,41],[0,0,4,211,1,144,0,156,0,0,0,6,1,0,0,41,0,0,13,49,0,0,33,61,0,0,0,64,0,144,4,63],[0,0,0,0,1,1,4,51,0,0,4,212,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,4,212,4,16,1,151,0,0,0,0,5,4,0,75,0,0,0,0,2,0,160,25],[0,0,4,212,4,64,0,156,0,0,0,0,2,3,192,25,0,0,0,0,2,2,0,75,0,0,13,47,0,0,193,61],[0,0,0,8,2,0,0,41,0,0,0,0,2,2,4,51,0,0,4,211,3,32,0,156,0,0,13,47,0,0,33,61],[0,0,0,8,1,16,0,41,0,0,0,8,2,32,0,41,0,0,0,31,3,32,0,57,0,0,4,212,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,4,212,3,48,1,151],[0,0,4,212,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,4,212,3,48,0,156,0,0,0,0,4,5,192,25,0,0,0,0,3,4,0,75,0,0,13,47,0,0,193,61],[0,0,0,0,35,2,4,52,0,0,4,211,4,48,0,156,0,0,13,49,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,4,211,5,64,0,156,0,0,13,49,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,47,0,0,33,61],[0,0,0,0,4,50,0,75,0,0,12,218,0,0,129,61,0,0,4,212,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,4,212,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,4,212,6,96,0,156,0,0,0,0,8,7,192,25,0,0,0,0,6,8,0,75,0,0,13,47,0,0,193,61],[0,0,0,64,6,0,4,61,0,0,4,236,7,96,0,156,0,0,13,49,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,12,192,0,0,65,61,0,0,4,221,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,194,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,4,222,1,16,1,199],[0,0,128,2,2,0,0,57,19,2,18,242,0,0,4,15,0,0,0,1,2,32,1,144,0,0,13,55,0,0,97,61],[0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75,0,0,0,7,6,0,0,41,0,0,13,47,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,4,237,1,0,0,65,0,0,0,0,0,23,4,53,0,0,0,4,1,112,0,57,0,0,0,10,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,6,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,12,252,0,0,65,61,0,0,0,0,1,114,0,73,0,0,4,194,2,0,0,65],[0,0,4,194,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,194,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,194,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,8,0,0,0,7,0,29,19,2,18,237,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,14,37,0,0,97,61,0,0,0,8,2,0,0,41,0,0,4,211,1,32,0,156],[0,0,0,0,1,2,0,25,0,0,13,49,0,0,33,61,0,0,0,64,0,16,4,63,0,0,4,194,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,4,243,1,16,1,199,0,0,128,13,2,0,0,57,0,0,0,4,3,0,0,57,0,0,4,244,4,0,0,65],[0,0,0,5,5,0,0,41,0,0,0,9,6,0,0,41,0,0,0,10,7,0,0,41,19,2,18,237,0,0,4,15],[0,0,0,1,1,32,1,144,0,0,13,47,0,0,97,61,0,0,0,0,0,1,4,45,0,0,0,0,1,0,0,25],[0,0,19,4,0,1,4,48,0,0,5,6,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,4,235,1,0,0,65,0,0,19,4,0,1,4,48,0,0,0,0,0,1,4,47],[0,0,5,6,1,0,0,65,0,0,0,0,0,16,4,53,0,0,0,33,1,0,0,57,0,0,13,52,0,0,1,61],[0,0,5,6,1,0,0,65,0,0,0,0,0,16,4,53,0,0,0,17,1,0,0,57,0,0,13,52,0,0,1,61],[0,0,4,214,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,30,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,13,210,0,0,1,61,0,0,4,214,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,28,2,0,0,65],[0,0,0,0,0,33,4,53,0,0,0,68,1,64,0,57,0,0,5,29,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,194,1,0,0,65],[0,0,4,194,2,64,0,156,0,0,0,0,4,1,128,25,0,0,0,64,1,64,2,16,0,0,4,241,1,16,1,199],[0,0,19,4,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,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,13,98,0,0,65,61,0,0,0,0,6,4,0,75,0,0,14,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,14,164,0,0,1,61,0,0,4,214,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,25,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,13,210,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,145,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,137,0,0,65,61,0,0,0,0,6,4,0,75,0,0,13,160,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,14,164,0,0,1,61,0,0,4,214,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,27,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,13,210,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,184,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,176,0,0,65,61],[0,0,0,0,6,4,0,75,0,0,13,199,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,14,164,0,0,1,61],[0,0,0,68,1,64,0,57,0,0,4,245,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,4,214,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,194,1,0,0,65],[0,0,4,194,2,64,0,156,0,0,0,0,4,1,128,25,0,0,0,64,1,64,2,16,0,0,4,224,1,16,1,199],[0,0,19,4,0,1,4,48,0,0,4,214,1,0,0,65,0,0,0,0,0,24,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,128,0,57,0,0,4,238,2,0,0,65,0,0,0,0,0,33,4,53],[0,0,4,194,1,0,0,65,0,0,4,194,2,128,0,156,0,0,0,0,8,1,128,25,0,0,0,64,1,128,2,16],[0,0,4,224,1,16,1,199,0,0,19,4,0,1,4,48,0,0,0,31,4,48,1,143,0,0,0,5,2,48,2,114],[0,0,13,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,13,238,0,0,65,61,0,0,0,0,5,4,0,75,0,0,14,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,19,4,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,194,3,48,1,151,0,0,0,5,5,48,2,114,0,0,14,21,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,13,0,0,65,61,0,0,0,0,6,4,0,75,0,0,14,36,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,14,164,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,194,3,48,1,151,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,14,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,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,14,164,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,194,3,48,1,151,0,0,0,5,5,48,2,114,0,0,14,85,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,77,0,0,65,61,0,0,0,0,6,4,0,75,0,0,14,100,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,14,164,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,194,3,48,1,151,0,0,0,5,5,48,2,114,0,0,14,117,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,109,0,0,65,61,0,0,0,0,6,4,0,75,0,0,14,132,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,14,164,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,194,3,48,1,151,0,0,0,5,5,48,2,114,0,0,14,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,14,141,0,0,65,61,0,0,0,0,6,4,0,75,0,0,14,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,4,194,1,0,0,65,0,0,4,194,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,4,0,1,4,48,0,10,0,0,0,0,0,2],[0,5,0,0,0,5,0,29,0,4,0,0,0,4,0,29,0,6,0,0,0,3,0,29,0,0,0,64,4,0,4,61],[0,0,0,4,3,64,0,57,0,9,0,0,0,1,0,29,0,0,0,0,1,1,0,75,0,0,17,129,0,0,97,61],[0,3,0,0,0,2,0,29,0,0,4,213,1,32,1,151,0,0,255,255,2,16,0,140,0,0,17,139,0,0,161,61],[0,0,5,24,2,0,0,65,0,0,0,0,0,36,4,53,0,10,0,0,0,1,0,29,0,0,0,0,0,19,4,53],[0,0,4,194,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,4,194,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,4,235,1,16,1,199,0,0,128,2,2,0,0,57,0,7,0,0,0,2,0,29],[0,8,0,0,0,4,0,29,19,2,18,242,0,0,4,15,0,0,0,8,10,0,0,41,0,0,0,0,3,1,0,25],[0,0,0,96,3,48,2,112,0,0,4,194,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,14,221,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,14,213,0,0,65,61,0,0,0,0,7,5,0,75,0,0,14,236,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,17,158,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,4,211,2,64,0,156,0,0,17,114,0,0,33,61,0,0,0,1,1,16,1,144,0,0,17,114,0,0,193,61],[0,0,0,64,0,64,4,63,0,0,0,31,1,48,0,140,0,0,17,112,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,17,187,0,0,193,61,0,0,5,26,2,0,0,65],[0,0,0,0,0,36,4,53,0,0,0,10,2,0,0,41,0,0,0,0,0,33,4,53,0,0,4,194,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25,0,0,4,194,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,4,235,1,16,1,199,0,0,128,3,2,0,0,57,0,8,0,0,0,4,0,29,19,2,18,242,0,0,4,15],[0,0,0,8,10,0,0,41,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,4,194,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,35,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,27,0,0,65,61,0,0,0,0,7,5,0,75],[0,0,15,50,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,17,197,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,4,211,1,64,0,156],[0,0,17,114,0,0,33,61,0,0,0,64,0,64,4,63,0,0,0,32,1,48,0,140,0,0,17,112,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,17,226,0,0,193,61],[0,0,4,217,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,194,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,4,194,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,4,235,1,16,1,199,0,0,128,4,2,0,0,57,0,8,0,0,0,4,0,29],[19,2,18,242,0,0,4,15,0,0,0,8,10,0,0,41,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,0,4,194,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,100,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,92,0,0,65,61],[0,0,0,0,7,5,0,75,0,0,15,115,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,17,236,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,4,211,1,64,0,156,0,0,17,114,0,0,33,61,0,0,0,64,0,64,4,63,0,0,0,32,1,48,0,140],[0,0,17,112,0,0,65,61,0,0,0,0,1,10,4,51,0,0,0,0,1,1,0,75,0,0,18,9,0,0,97,61],[0,0,4,236,1,64,0,156,0,0,17,114,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,6,2,0,0,41,0,0,0,2,1,32,0,140],[0,0,17,121,0,0,129,61,0,0,0,0,0,36,4,53,0,6,0,0,0,3,0,29,0,0,0,0,0,3,4,53],[0,0,0,10,1,0,0,41,0,0,0,0,0,16,4,53,0,0,0,32,0,0,4,63,0,0,4,194,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,4,219,1,16,1,199,0,0,128,16,2,0,0,57,0,8,0,0,0,4,0,29,19,2,18,242,0,0,4,15],[0,0,0,8,3,0,0,41,0,0,0,1,2,32,1,144,0,0,17,112,0,0,97,61,0,0,0,0,2,3,4,51],[0,0,0,1,3,32,0,140,0,0,0,6,5,0,0,41,0,0,17,121,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,17,121,0,0,33,61],[0,0,4,220,2,32,1,151,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,4,221,1,0,0,65,0,0,0,0,0,16,4,57,0,0,0,0,1,0,4,22],[0,8,0,0,0,1,0,29,0,0,0,0,1,1,0,75,0,0,16,23,0,0,97,61,0,0,128,10,1,0,0,57],[0,0,0,4,0,16,4,67,0,0,4,194,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,4,222,1,16,1,199,0,0,128,2,2,0,0,57],[0,6,0,0,0,2,0,29,19,2,18,242,0,0,4,15,0,0,0,1,2,32,1,144,0,0,17,120,0,0,97,61],[0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75,0,0,17,112,0,0,97,61,0,0,0,64,4,0,4,61],[0,0,0,68,1,64,0,57,0,0,0,8,2,0,0,41,0,0,0,0,0,33,4,53,0,0,0,36,1,64,0,57],[0,0,0,10,2,0,0,41,0,0,0,0,0,33,4,53,0,0,4,223,1,0,0,65,0,0,0,0,0,20,4,53],[0,0,0,0,1,0,4,16,0,0,4,213,1,16,1,151,0,0,0,4,2,64,0,57,0,0,0,0,0,18,4,53],[0,0,4,194,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,4,194,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,4,224,1,16,1,199,0,0,128,10,2,0,0,57],[19,2,18,237,0,0,4,15,0,0,0,1,2,32,1,144,0,0,18,134,0,0,97,61,0,0,0,2,2,0,0,41],[0,0,4,211,1,32,0,156,0,0,17,114,0,0,33,61,0,0,0,64,0,32,4,63,0,0,4,221,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,194,1,0,0,65],[0,0,0,0,4,0,4,20,0,0,4,194,3,64,0,156,0,0,0,0,4,1,128,25,0,0,0,192,1,64,2,16],[0,0,4,222,1,16,1,199,19,2,18,242,0,0,4,15,0,0,0,1,2,32,1,144,0,0,17,120,0,0,97,61],[0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75,0,0,17,112,0,0,97,61,0,0,0,64,4,0,4,61],[0,0,4,225,1,0,0,65,0,0,0,0,0,20,4,53,0,0,0,4,2,64,0,57,0,0,0,10,1,0,0,41],[0,2,0,0,0,2,0,29,0,0,0,0,0,18,4,53,0,0,0,9,1,0,0,41,0,0,4,226,1,16,1,151],[0,0,4,227,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,194,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,4,194,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,4,228,1,16,1,199,0,0,128,2,2,0,0,57],[19,2,18,237,0,0,4,15,0,0,0,1,2,32,1,144,0,0,18,166,0,0,97,61,0,0,0,6,8,0,0,41],[0,0,4,211,1,128,0,156,0,0,17,114,0,0,33,61,0,0,0,64,0,128,4,63,0,0,0,8,1,0,0,41],[0,0,4,229,1,16,1,151,0,0,0,0,0,1,4,23,0,0,16,69,0,0,1,61,0,0,0,7,2,0,0,41],[0,0,0,4,0,32,4,67,0,0,4,194,1,0,0,65,0,0,0,0,4,0,4,20,0,0,4,194,3,64,0,156],[0,0,0,0,4,1,128,25,0,0,0,192,1,64,2,16,0,0,4,222,1,16,1,199,19,2,18,242,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,17,120,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75],[0,0,17,112,0,0,97,61,0,0,0,64,4,0,4,61,0,0,4,225,1,0,0,65,0,0,0,0,0,20,4,53],[0,0,0,4,2,64,0,57,0,0,0,10,1,0,0,41,0,2,0,0,0,2,0,29,0,0,0,0,0,18,4,53],[0,0,0,9,1,0,0,41,0,0,4,226,1,16,1,151,0,0,4,227,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,194,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25,0,0,4,194,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,4,228,1,16,1,199,0,0,128,2,2,0,0,57,19,2,18,237,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,18,198,0,0,97,61,0,0,0,6,8,0,0,41,0,0,4,211,1,128,0,156,0,0,17,114,0,0,33,61],[0,0,0,64,0,128,4,63,0,0,0,4,4,0,0,41,0,0,4,194,2,64,1,151,0,0,0,0,1,0,4,20],[0,0,0,17,3,0,3,103,0,1,0,0,0,35,3,85,0,0,0,0,7,0,4,17,0,0,0,5,4,64,0,41],[0,0,0,5,5,64,0,108,0,0,0,0,5,0,0,25,0,0,0,1,5,0,64,57,0,0,0,1,5,80,1,144],[0,0,17,125,0,0,193,61,0,0,0,0,5,0,0,49,0,0,0,0,6,69,0,75,0,0,17,125,0,0,65,61],[0,0,0,0,2,35,3,79,0,0,0,0,3,69,0,73,0,0,4,194,3,48,1,151,0,1,0,0,0,50,3,229],[0,0,4,230,4,16,0,156,0,0,18,26,0,0,129,61,0,0,0,0,2,50,3,223,0,0,0,192,1,16,2,16],[0,0,4,231,1,16,1,151,0,0,4,232,1,16,1,199,0,1,0,0,0,18,3,181,0,0,0,0,1,18,3,175],[0,5,0,0,0,7,0,29,0,0,4,213,13,112,1,151,0,0,0,3,2,0,0,41,19,2,18,252,0,0,4,15],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,4,194,3,48,1,151,0,0,0,1,2,32,1,144],[0,0,18,43,0,0,97,61,0,0,0,63,2,48,0,57,0,0,4,233,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,4,211,5,32,0,156,0,0,17,114,0,0,33,61,0,0,0,1,4,64,1,144,0,0,17,114,0,0,193,61],[0,0,0,64,0,32,4,63,0,6,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,16,133,0,0,97,61,0,0,0,0,4,0,0,49,0,0,0,17,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,16,125,0,0,65,61,0,0,0,0,2,0,0,75,0,0,16,135,0,0,97,61,0,0,0,31,2,48,1,143],[0,0,0,5,3,48,2,114,0,0,16,147,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,16,139,0,0,65,61,0,0,0,0,4,2,0,75],[0,0,16,162,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,8,0,0,0,8,0,29,0,0,4,221,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,194,1,0,0,65],[0,0,0,0,4,0,4,20,0,0,4,194,3,64,0,156,0,0,0,0,4,1,128,25,0,0,0,192,1,64,2,16],[0,0,4,222,1,16,1,199,19,2,18,242,0,0,4,15,0,0,0,1,2,32,1,144,0,0,17,120,0,0,97,61],[0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75,0,0,17,112,0,0,97,61,0,0,0,64,4,0,4,61],[0,0,4,234,1,0,0,65,0,0,0,0,0,20,4,53,0,0,0,4,1,64,0,57,0,0,0,10,2,0,0,41],[0,0,0,0,0,33,4,53,0,0,4,194,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,4,194,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,4,235,1,16,1,199],[0,0,128,2,2,0,0,57,19,2,18,237,0,0,4,15,0,0,0,1,2,32,1,144,0,0,18,70,0,0,97,61],[0,0,0,7,9,0,0,41,0,0,4,211,1,144,0,156,0,0,0,6,1,0,0,41,0,0,17,114,0,0,33,61],[0,0,0,64,0,144,4,63,0,0,0,0,1,1,4,51,0,0,4,212,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,4,212,4,16,1,151,0,0,0,0,5,4,0,75],[0,0,0,0,2,0,160,25,0,0,4,212,4,64,0,156,0,0,0,0,2,3,192,25,0,0,0,0,2,2,0,75],[0,0,17,112,0,0,193,61,0,0,0,8,2,0,0,41,0,0,0,0,2,2,4,51,0,0,4,211,3,32,0,156],[0,0,17,112,0,0,33,61,0,0,0,8,1,16,0,41,0,0,0,8,2,32,0,41,0,0,0,31,3,32,0,57],[0,0,4,212,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,4,212,3,48,1,151,0,0,4,212,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,4,212,3,48,0,156,0,0,0,0,4,5,192,25,0,0,0,0,3,4,0,75],[0,0,17,112,0,0,193,61,0,0,0,0,35,2,4,52,0,0,4,211,4,48,0,156,0,0,17,114,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,4,211,5,64,0,156,0,0,17,114,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,17,112,0,0,33,61,0,0,0,0,4,50,0,75,0,0,17,27,0,0,129,61,0,0,4,212,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,4,212,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,4,212,6,96,0,156,0,0,0,0,8,7,192,25,0,0,0,0,6,8,0,75],[0,0,17,112,0,0,193,61,0,0,0,64,6,0,4,61,0,0,4,236,7,96,0,156,0,0,17,114,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,1,0,0,65,61,0,0,4,221,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,194,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,4,222,1,16,1,199,0,0,128,2,2,0,0,57,19,2,18,242,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,17,120,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75,0,0,0,7,6,0,0,41],[0,0,17,112,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,4,237,1,0,0,65,0,0,0,0,0,23,4,53,0,0,0,4,1,112,0,57],[0,0,0,10,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,17,71,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,17,61,0,0,65,61,0,0,0,0,1,114,0,73],[0,0,4,194,2,0,0,65,0,0,4,194,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,194,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,194,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,8,0,0,0,7,0,29],[19,2,18,237,0,0,4,15,0,0,0,1,2,32,1,144,0,0,18,102,0,0,97,61,0,0,0,8,2,0,0,41],[0,0,4,211,1,32,0,156,0,0,0,0,1,2,0,25,0,0,17,114,0,0,33,61,0,0,0,64,0,16,4,63],[0,0,4,194,1,0,0,65,0,0,0,0,2,0,4,20,0,0,4,194,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,192,1,32,2,16,0,0,4,243,1,16,1,199,0,0,128,13,2,0,0,57,0,0,0,4,3,0,0,57],[0,0,4,244,4,0,0,65,0,0,0,5,5,0,0,41,0,0,0,9,6,0,0,41,0,0,0,10,7,0,0,41],[19,2,18,237,0,0,4,15,0,0,0,1,1,32,1,144,0,0,17,112,0,0,97,61,0,0,0,0,0,1,4,45],[0,0,0,0,1,0,0,25,0,0,19,4,0,1,4,48,0,0,5,6,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,4,235,1,0,0,65,0,0,19,4,0,1,4,48],[0,0,0,0,0,1,4,47,0,0,5,6,1,0,0,65,0,0,0,0,0,16,4,53,0,0,0,33,1,0,0,57],[0,0,17,117,0,0,1,61,0,0,5,6,1,0,0,65,0,0,0,0,0,16,4,53,0,0,0,17,1,0,0,57],[0,0,17,117,0,0,1,61,0,0,4,214,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,30,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,19,0,0,1,61,0,0,4,214,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,28,2,0,0,65,0,0,0,0,0,33,4,53,0,0,0,68,1,64,0,57,0,0,5,29,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,194,1,0,0,65,0,0,4,194,2,64,0,156,0,0,0,0,4,1,128,25,0,0,0,64,1,64,2,16],[0,0,4,241,1,16,1,199,0,0,19,4,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,17,171,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,17,163,0,0,65,61,0,0,0,0,6,4,0,75],[0,0,18,229,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,18,229,0,0,1,61,0,0,4,214,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,25,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,19,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,17,210,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,17,202,0,0,65,61,0,0,0,0,6,4,0,75,0,0,17,225,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,18,229,0,0,1,61,0,0,4,214,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,27,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,19,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,17,249,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,17,241,0,0,65,61,0,0,0,0,6,4,0,75,0,0,18,8,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,18,229,0,0,1,61,0,0,0,68,1,64,0,57,0,0,4,245,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,4,214,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,194,1,0,0,65,0,0,4,194,2,64,0,156,0,0,0,0,4,1,128,25,0,0,0,64,1,64,2,16],[0,0,4,224,1,16,1,199,0,0,19,4,0,1,4,48,0,0,4,214,1,0,0,65,0,0,0,0,0,24,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,128,0,57,0,0,4,238,2,0,0,65],[0,0,0,0,0,33,4,53,0,0,4,194,1,0,0,65,0,0,4,194,2,128,0,156,0,0,0,0,8,1,128,25],[0,0,0,64,1,128,2,16,0,0,4,224,1,16,1,199,0,0,19,4,0,1,4,48,0,0,0,31,4,48,1,143],[0,0,0,5,2,48,2,114,0,0,18,54,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,47,0,0,65,61,0,0,0,0,5,4,0,75,0,0,18,68,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,4,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,194,3,48,1,151,0,0,0,5,5,48,2,114],[0,0,18,86,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,78,0,0,65,61,0,0,0,0,6,4,0,75,0,0,18,101,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,18,229,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,194,3,48,1,151,0,0,0,5,5,48,2,114],[0,0,18,118,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,110,0,0,65,61,0,0,0,0,6,4,0,75,0,0,18,133,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,18,229,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,194,3,48,1,151,0,0,0,5,5,48,2,114],[0,0,18,150,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,142,0,0,65,61,0,0,0,0,6,4,0,75,0,0,18,165,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,18,229,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,194,3,48,1,151,0,0,0,5,5,48,2,114],[0,0,18,182,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,174,0,0,65,61,0,0,0,0,6,4,0,75,0,0,18,197,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,18,229,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,194,3,48,1,151,0,0,0,5,5,48,2,114],[0,0,18,214,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,206,0,0,65,61,0,0,0,0,6,4,0,75,0,0,18,229,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,194,1,0,0,65,0,0,4,194,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,4,0,1,4,48],[0,0,0,0,0,1,4,47,0,0,18,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,18,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,18,250,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,0,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,2,0,0,4,50,0,0,19,3,0,1,4,46],[0,0,19,4,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,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,236,128,103,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,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,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,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,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,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],[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],[0,0,0,0,0,0,0,0,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,160,219,144,188,18,229,126,186,185,180,16,164,164,78,192,138,235,127,123,45,162,126,219,57,164,176,218,172,217,136,253]],"0x0000000000000000000000000000000000008008":[[0,18,0,0,0,0,0,2,0,14,0,0,0,0,0,2,0,0,0,0,3,1,0,25,0,0,0,96,5,48,2,112],[0,0,2,104,3,80,1,151,0,1,0,0,0,49,3,85,0,2,0,0,0,49,3,85,0,3,0,0,0,49,3,85],[0,4,0,0,0,49,3,85,0,5,0,0,0,49,3,85,0,6,0,0,0,49,3,85,0,7,0,0,0,49,3,85],[0,8,0,0,0,49,3,85,0,9,0,0,0,49,3,85,0,10,0,0,0,49,3,85,0,11,0,0,0,49,3,85],[0,12,0,0,0,49,3,85,0,13,0,0,0,49,3,85,0,14,0,0,0,49,3,85,0,15,0,0,0,49,3,85],[0,16,0,0,0,49,3,85,0,17,0,0,0,1,3,85,0,0,2,104,0,80,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,65,0,0,193,61,0,0,0,4,2,48,0,140],[0,0,4,38,0,0,65,61,0,0,0,0,2,1,4,59,0,0,0,224,2,32,2,112,0,0,2,106,6,32,0,156],[0,0,0,73,0,0,33,61,0,0,2,109,4,32,0,156,0,0,0,134,0,0,97,61,0,0,2,110,2,32,0,156],[0,0,4,38,0,0,193,61,0,0,0,0,2,0,4,22,0,0,0,0,2,2,0,75,0,0,4,38,0,0,193,61],[0,0,0,4,2,48,0,138,0,0,0,96,2,32,0,140,0,0,4,38,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,4,38,0,0,193,61,0,0,0,0,2,0,4,17,0,0,2,175,1,32,0,156],[0,0,1,3,0,0,65,61,0,0,2,132,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,177,1,0,0,65],[0,0,0,196,0,16,4,63,0,0,2,178,1,0,0,65,0,0,0,228,0,16,4,63,0,0,2,179,1,0,0,65],[0,0,9,158,0,1,4,48,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,4,38,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,105,1,0,0,65],[0,0,9,157,0,1,4,46,0,0,2,107,6,32,0,156,0,0,0,197,0,0,97,61,0,0,2,108,2,32,0,156],[0,0,4,38,0,0,193,61,0,0,0,0,2,0,4,22,0,0,0,0,2,2,0,75,0,0,4,38,0,0,193,61],[0,0,0,4,2,48,0,138,0,0,0,32,2,32,0,140,0,0,4,38,0,0,65,61,0,0,0,4,2,16,3,112],[0,0,0,0,2,2,4,59,0,0,2,111,6,32,0,156,0,0,4,38,0,0,33,61,0,0,0,35,6,32,0,57],[0,0,2,112,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,112,6,96,1,151,0,0,0,0,9,6,0,75,0,0,0,0,7,0,128,25,0,0,2,112,6,96,0,156],[0,0,0,0,7,8,192,25,0,0,0,0,6,7,0,75,0,0,4,38,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,111,6,112,0,156,0,0,4,38,0,0,33,61],[0,0,0,36,6,32,0,57,0,0,0,0,2,103,0,25,0,0,0,0,3,35,0,75,0,0,4,38,0,0,65,61],[0,0,2,104,3,96,1,151,0,0,0,0,1,49,3,79,0,0,0,0,2,37,0,73,0,0,2,104,2,32,1,151],[0,0,0,0,8,0,4,20,0,0,0,0,3,0,4,20,0,1,0,0,0,33,3,229,0,0,2,113,5,48,0,156],[0,0,2,18,0,0,65,61,0,0,0,68,1,64,0,57,0,0,2,134,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,132,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,104,1,0,0,65,0,0,2,104,2,64,0,156,0,0,0,0,4,1,128,25,0,0,0,64,1,64,2,16],[0,0,2,133,1,16,1,199,0,0,9,158,0,1,4,48,0,0,0,0,2,0,4,22,0,0,0,0,2,2,0,75],[0,0,4,38,0,0,193,61,0,0,0,4,2,48,0,138,0,0,0,32,2,32,0,140,0,0,4,38,0,0,65,61],[0,0,0,0,2,0,4,17,0,0,128,4,2,32,0,140,0,0,0,249,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,104,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,2,104,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,2,181,1,16,1,199,0,0,128,16,2,0,0,57,9,156,9,146,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,4,38,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,14,6,0,0,41,0,0,0,224,1,96,2,112,0,0,255,255,2,16,1,143,0,0,0,1,1,32,2,112],[0,0,0,1,3,16,0,57,0,0,0,7,65,48,0,201,0,0,0,7,84,16,1,26,0,0,0,0,3,67,0,75],[0,0,2,98,0,0,193,61,0,0,0,5,2,32,2,16,0,0,0,4,2,32,1,191,0,0,0,80,67,32,0,201],[0,0,0,80,84,48,1,26,0,0,0,0,4,66,0,75,0,0,2,98,0,0,193,61,0,0,0,0,1,49,0,25],[0,0,0,32,2,32,2,16,0,0,0,0,1,33,1,159,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,112,0,0,193,61,0,0,0,68,2,16,0,57],[0,0,2,131,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,7,41,0,0,1,61,0,0,0,0,2,0,4,22,0,0,0,0,2,2,0,75,0,0,4,38,0,0,193,61],[0,0,0,4,2,48,0,138,0,0,0,32,2,32,0,140,0,0,4,38,0,0,65,61,0,0,0,4,2,16,3,112],[0,0,0,0,2,2,4,59,0,0,2,111,4,32,0,156,0,0,4,38,0,0,33,61,0,0,0,35,4,32,0,57],[0,0,2,112,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,112,4,64,1,151,0,0,0,0,7,4,0,75,0,0,0,0,5,0,128,25,0,0,2,112,4,64,0,156],[0,0,0,0,5,6,192,25,0,0,0,0,4,5,0,75,0,0,4,38,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,111,5,80,0,156],[0,0,4,38,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,4,38,0,0,33,61,0,0,0,0,2,0,4,17,0,0,128,1,2,32,0,140],[0,0,2,104,0,0,193,61,0,0,0,11,2,0,0,41,0,0,0,4,2,32,0,140,0,0,4,38,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,137,2,64,0,156],[0,0,2,158,0,0,65,61,0,0,2,132,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,174,1,0,0,65],[0,0,1,0,0,0,1,61,0,0,2,132,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,180,1,0,0,65],[0,0,0,196,0,16,4,63,0,0,2,136,1,0,0,65,0,0,9,158,0,1,4,48,0,14,0,0,0,3,0,29],[0,13,0,0,0,2,0,29,0,0,2,119,1,0,0,65,0,0,0,128,0,16,4,63,0,0,2,104,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,2,104,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,2,176,1,16,1,199,0,0,128,11,2,0,0,57,9,156,9,146,0,0,4,15,0,0,0,0,3,1,0,25],[0,0,0,96,3,48,2,112,0,0,2,104,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,33,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,25,0,0,65,61,0,0,0,0,7,5,0,75,0,0,1,48,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,239,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,4,38,0,0,65,61,0,0,0,128,1,0,4,61,0,0,255,255,3,16,0,140,0,0,4,38,0,0,33,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,123,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,17,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,124,1,32,0,156,0,0,3,195,0,0,33,61],[0,0,0,128,1,32,0,57,0,0,0,64,0,16,4,63,0,0,2,104,1,0,0,65,0,0,2,104,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,104,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,104,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,118,1,16,1,199,0,0,128,16,2,0,0,57,0,13,0,0,0,8,0,29,9,156,9,146,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,4,38,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,117,3,16,0,156],[0,0,3,195,0,0,33,61,0,0,0,96,3,16,0,57,0,0,0,64,0,48,4,63,0,0,2,104,3,0,0,65],[0,0,2,104,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,104,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,104,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,118,1,16,1,199,0,0,128,16,2,0,0,57,9,156,9,146,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,4,38,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,2,98,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,122,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,104,5,0,0,65,0,0,2,104,1,32,0,156],[0,0,0,0,2,5,128,25,0,0,0,0,1,0,4,20,0,0,2,104,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,125,1,16,1,199],[0,0,128,13,2,0,0,57,0,0,2,126,4,0,0,65,9,156,9,141,0,0,4,15,0,0,0,1,1,32,1,144],[0,0,4,38,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,104,2,16,0,156,0,0,2,104,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,4,96,0,0,193,61,0,0,0,68,3,16,0,57,0,0,2,131,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,132,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,133,1,32,1,199,0,0,9,158,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,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,1,244,0,0,65,61],[0,0,0,0,6,4,0,75,0,0,2,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,2,104,1,0,0,65],[0,0,2,104,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,9,158,0,1,4,48,0,14,0,0,0,8,0,29,0,12,0,0,0,6,0,29],[0,13,0,0,0,7,0,29,0,0,0,0,1,33,3,223,0,0,0,192,2,48,2,16,0,0,2,114,2,32,1,151],[0,0,2,115,2,32,1,199,0,1,0,0,0,33,3,181,0,0,0,0,1,33,3,175,0,0,128,16,2,0,0,57],[9,156,9,151,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,2,104,3,48,1,151],[0,0,0,1,2,32,1,144,0,0,2,131,0,0,97,61,0,0,0,63,2,48,0,57,0,0,2,116,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,111,6,64,0,156,0,0,3,195,0,0,33,61,0,0,0,1,5,80,1,144],[0,0,3,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,2,61,0,0,97,61,0,0,0,0,6,0,0,49,0,0,0,17,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,53,0,0,65,61,0,0,0,0,5,0,0,75,0,0,2,63,0,0,97,61,0,0,0,31,5,48,1,143],[0,0,0,5,3,48,2,114,0,0,2,75,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,67,0,0,65,61,0,0,0,0,6,5,0,75],[0,0,2,90,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,0,14,1,0,0,41,0,0,7,35,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,33,0,75,0,0,3,180,0,0,129,61,0,0,2,172,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,173,1,0,0,65,0,0,9,158,0,1,4,48],[0,0,2,132,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,135,1,0,0,65,0,0,1,0,0,0,1,61],[0,0,0,0,0,97,4,53,0,0,2,104,2,0,0,65,0,0,0,0,3,0,4,20,0,0,2,104,4,48,0,156],[0,0,0,0,3,2,128,25,0,0,2,104,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,182,1,16,1,199,0,0,128,13,2,0,0,57],[0,0,0,1,3,0,0,57,0,0,2,183,4,0,0,65,9,156,9,141,0,0,4,15,0,0,0,1,1,32,1,144],[0,0,4,38,0,0,97,61,0,0,0,0,1,0,0,25,0,0,9,157,0,1,4,46,0,0,0,31,4,48,1,143],[0,0,0,5,2,48,2,114,0,0,2,142,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,135,0,0,65,61,0,0,0,0,5,4,0,75,0,0,2,156,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,9,158,0,1,4,48,0,0,0,0,1,49,3,79,0,6,0,0,0,4,0,29],[0,0,0,224,7,64,2,112,0,0,2,138,2,0,0,65,0,0,0,64,0,32,4,63,0,0,64,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,64,0,4,48,0,140,0,0,2,168,0,0,65,61,0,0,0,4,2,0,0,57],[0,0,0,6,1,0,0,41,0,0,2,115,1,16,0,156,0,0,0,0,9,0,0,25,0,0,3,13,0,0,129,61],[0,0,0,0,1,0,4,26,0,0,0,0,1,25,0,75,0,0,3,159,0,0,193,61,0,13,0,0,0,2,0,29],[0,0,0,6,1,0,0,41,0,0,2,142,1,16,0,156,0,0,2,197,0,0,33,61,0,0,2,143,1,0,0,65],[0,0,0,128,2,0,4,61,0,0,0,0,2,114,0,75,0,0,3,9,0,0,161,61,0,0,0,5,2,112,2,16],[0,0,0,160,2,32,0,57,0,0,0,0,0,18,4,53,0,0,63,255,2,112,0,140,0,0,0,1,7,112,0,57],[0,0,2,188,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,9,0,0,161,61,0,0,0,1,1,16,1,191],[0,0,0,0,2,18,0,75,0,0,3,9,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,117,3,16,0,156,0,0,3,195,0,0,33,61,0,0,0,96,3,16,0,57],[0,0,0,64,0,48,4,63,0,0,2,104,3,32,0,156,0,0,2,104,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,104,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,104,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,118,1,16,1,199],[0,0,0,8,2,0,0,41,9,156,9,146,0,0,4,15,0,0,0,1,2,32,1,144,0,0,4,38,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,9,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,203,0,0,65,61,0,0,0,6,1,0,0,41],[0,0,0,3,1,16,0,140,0,0,2,199,0,0,33,61,0,0,0,128,1,0,4,61,0,0,0,0,1,1,0,75],[0,0,5,23,0,0,193,61,0,0,2,172,1,0,0,65,0,0,0,0,0,16,4,53,0,0,0,50,1,0,0,57],[0,0,2,101,0,0,1,61,0,0,0,4,1,0,0,57,0,9,0,89,0,0,0,146,0,0,0,0,8,0,0,25],[0,0,0,0,9,0,0,25,0,8,0,0,0,7,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,4,38,0,0,33,61,0,0,0,10,4,16,0,41,0,0,2,104,2,64,1,151],[0,0,0,0,1,0,4,20,0,0,0,17,3,0,3,103,0,1,0,0,0,35,3,85,0,0,0,9,5,64,0,108],[0,0,2,98,0,0,33,61,0,0,0,88,4,64,0,57,0,0,0,0,5,0,0,49,0,0,0,0,6,69,0,75],[0,0,2,98,0,0,65,61,0,12,0,0,0,9,0,29,0,14,0,0,0,8,0,29,0,0,0,0,2,35,3,79],[0,0,0,0,3,69,0,73,0,0,2,104,3,48,1,151,0,1,0,0,0,50,3,229,0,0,2,113,4,16,0,156],[0,0,8,14,0,0,129,61,0,0,0,0,2,50,3,223,0,0,0,192,1,16,2,16,0,0,2,114,1,16,1,151],[0,0,2,115,1,16,1,199,0,1,0,0,0,18,3,181,0,0,0,0,1,18,3,175,0,0,128,16,2,0,0,57],[9,156,9,151,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,2,104,3,48,1,151],[0,0,0,1,2,32,1,144,0,0,4,40,0,0,97,61,0,0,0,63,2,48,0,57,0,0,2,116,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,111,6,64,0,156,0,0,3,195,0,0,33,61,0,0,0,1,5,80,1,144],[0,0,3,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,3,81,0,0,97,61,0,0,0,0,6,0,0,49,0,0,0,17,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,73,0,0,65,61,0,0,0,0,5,0,0,75,0,0,3,83,0,0,97,61,0,0,0,5,5,48,2,114],[0,0,0,12,9,0,0,41,0,0,3,95,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,87,0,0,65,61,0,0,0,31,3,48,1,144],[0,0,3,110,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,7,35,0,0,193,61,0,0,0,128,1,0,4,61,0,0,0,0,1,49,0,75],[0,0,3,9,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,146,4,53,0,0,2,117,3,16,0,156],[0,0,3,195,0,0,33,61,0,0,0,96,3,16,0,57,0,0,0,64,0,48,4,63,0,0,2,104,3,32,0,156],[0,0,2,104,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,104,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,104,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,118,1,16,1,199,0,0,128,16,2,0,0,57,9,156,9,146,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,0,8,7,0,0,41,0,0,0,14,8,0,0,41,0,0,4,38,0,0,97,61],[0,0,0,0,9,1,4,59,0,0,0,1,8,128,0,57,0,0,0,0,1,120,0,75,0,0,0,13,2,0,0,41],[0,0,0,0,1,2,0,25,0,0,3,18,0,0,65,61,0,0,2,180,0,0,1,61,0,0,0,64,1,0,4,61],[0,0,0,100,2,16,0,57,0,0,2,139,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,68,2,16,0,57],[0,0,2,140,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,132,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,104,2,0,0,65,0,0,2,104,3,16,0,156],[0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16,0,0,2,141,1,16,1,199,0,0,9,158,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,117,3,16,0,156,0,0,3,199,0,0,161,61,0,0,2,172,1,0,0,65],[0,0,0,0,0,16,4,53,0,0,0,65,1,0,0,57,0,0,2,101,0,0,1,61,0,0,0,96,3,16,0,57],[0,0,0,64,0,48,4,63,0,0,2,104,4,0,0,65,0,0,2,104,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,104,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,104,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,118,1,16,1,199],[0,0,128,16,2,0,0,57,9,156,9,146,0,0,4,15,0,0,0,1,2,32,1,144,0,0,4,38,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,119,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,104,2,16,0,156,0,0,2,104,3,0,0,65,0,0,0,0,1,3,128,25,0,0,2,104,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,120,1,16,1,199,0,0,128,11,2,0,0,57,9,156,9,146,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,104,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,2,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,250,0,0,65,61,0,0,0,0,9,10,0,25,0,0,0,0,7,5,0,75],[0,0,4,18,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,67,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,111,2,32,0,156],[0,0,3,195,0,0,33,61,0,0,0,1,1,16,1,144,0,0,3,195,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,4,38,0,0,65,61,0,0,0,0,1,9,4,51],[0,0,255,255,2,16,0,140,0,0,4,100,0,0,161,61,0,0,0,0,1,0,0,25,0,0,9,158,0,1,4,48],[0,0,0,31,4,48,1,143,0,0,0,5,2,48,2,114,0,0,4,51,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,44,0,0,65,61,0,0,0,0,5,4,0,75],[0,0,4,65,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,9,158,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,80,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,72,0,0,65,61],[0,0,0,0,6,4,0,75,0,0,4,95,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,11,0,0,1,61],[0,0,0,8,3,0,0,41,0,0,0,0,0,49,4,53,0,0,2,130,1,32,1,199,0,0,9,157,0,1,4,46],[0,0,0,7,2,0,0,41,0,0,2,121,2,32,0,156,0,0,3,195,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,122,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,123,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,124,1,32,0,156],[0,0,3,195,0,0,33,61,0,0,0,128,1,32,0,57,0,0,0,64,0,16,4,63,0,0,2,104,1,0,0,65],[0,0,2,104,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,104,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,104,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,118,1,16,1,199,0,0,128,16,2,0,0,57,9,156,9,146,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,4,38,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,117,3,16,0,156],[0,0,3,195,0,0,33,61,0,0,0,96,3,16,0,57,0,0,0,64,0,48,4,63,0,0,2,104,3,0,0,65],[0,0,2,104,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,104,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,104,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,118,1,16,1,199,0,0,128,16,2,0,0,57,9,156,9,146,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,4,38,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,2,98,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,122,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,104,1,0,0,65,0,0,2,104,4,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,0,5,0,4,20,0,0,2,104,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,125,1,16,1,199,0,0,128,13,2,0,0,57],[0,0,2,126,4,0,0,65,9,156,9,141,0,0,4,15,0,0,0,1,1,32,1,144,0,0,4,38,0,0,97,61],[0,0,0,8,2,0,0,41,0,0,0,14,2,32,0,105,0,0,0,161,1,0,0,138,0,0,0,0,1,18,0,75],[0,0,2,98,0,0,33,61,0,0,0,13,1,0,0,41,0,0,0,92,1,16,0,57,0,0,0,80,67,16,0,201],[0,0,2,127,4,48,1,151,0,0,0,80,84,64,1,26,0,0,0,0,4,65,0,75,0,0,2,98,0,0,193,61],[0,0,0,160,4,32,0,57,0,0,0,0,2,52,0,25,0,0,0,0,3,66,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,2,98,0,0,193,61,0,0,2,113,3,32,0,156],[0,0,8,34,0,0,65,61,0,0,0,64,4,0,4,61,0,0,0,117,0,0,1,61,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,2,98,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,4,38,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,17,1,16,3,103],[0,0,0,0,1,1,4,59,0,0,2,115,2,16,0,156,0,0,0,0,9,0,0,25,0,0,6,138,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,7,53,0,0,193,61,0,0,0,0,2,3,0,25,0,0,0,8,1,32,0,108,0,0,2,98,0,0,33,61],[0,0,0,4,3,32,0,57,0,0,0,11,1,48,0,108,0,0,4,38,0,0,33,61,0,0,0,10,1,32,0,41],[0,0,0,17,1,16,3,103,0,0,0,0,1,1,4,59,0,0,2,115,2,16,0,156,0,0,0,0,9,0,0,25],[0,0,7,104,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,8,21,0,0,193,61,0,0,0,11,1,80,0,108],[0,0,3,9,0,0,129,61,0,0,0,10,1,80,0,41,0,0,0,17,2,0,3,103,0,0,0,0,3,18,3,79],[0,0,0,0,3,3,4,59,0,0,2,161,3,48,1,151,0,0,2,123,3,48,0,156,0,0,8,112,0,0,193,61],[0,0,0,0,4,5,0,25,0,0,0,8,3,64,0,108,0,0,2,98,0,0,33,61,0,0,0,4,3,64,0,57],[0,0,0,11,4,48,0,108,0,0,4,38,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,9,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,29],[0,0,0,12,5,16,0,107,0,0,0,0,6,0,0,25,0,0,0,1,6,0,64,57,0,0,0,0,5,4,4,59],[0,0,0,1,4,96,1,144,0,0,2,98,0,0,193,61,0,0,0,12,6,0,0,41,0,0,0,11,4,96,0,108],[0,0,4,38,0,0,33,61,0,0,0,12,6,0,0,41,0,0,0,8,4,96,0,108,0,0,2,98,0,0,33,61],[0,0,0,12,4,0,0,41,0,0,0,4,7,64,0,57,0,0,0,11,4,112,0,108,0,0,4,38,0,0,33,61],[0,0,0,12,6,0,0,41,0,0,0,10,4,96,0,41,0,0,0,0,4,66,3,79,0,0,0,0,8,4,4,59],[0,0,0,224,6,128,2,112,0,0,1,16,148,96,0,201,0,0,2,115,9,128,0,156,0,0,5,115,0,0,65,61],[0,0,0,0,169,100,0,217,0,0,1,16,9,144,0,140,0,0,2,98,0,0,193,61,0,9,0,0,0,116,0,29],[0,0,0,9,9,64,0,107,0,0,0,0,9,0,0,25,0,0,0,1,9,0,64,57,0,0,0,1,9,144,1,144],[0,0,2,98,0,0,193,61,0,0,0,9,10,0,0,41,0,0,0,11,9,160,0,108,0,0,4,38,0,0,33,61],[0,0,2,115,8,128,0,156,0,0,5,129,0,0,65,61,0,0,0,0,152,100,0,217,0,0,1,16,8,128,0,140],[0,0,2,98,0,0,193,61,0,0,0,248,5,80,2,112,0,0,0,10,7,112,0,41,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,164,5,0,0,65,0,0,0,0,0,90,4,53,0,0,0,0,7,114,3,79],[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,101,4,53],[0,0,0,31,8,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,5,158,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,183,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,5,150,0,0,65,61,0,0,0,10,3,48,0,41,0,0,0,0,10,8,0,75],[0,0,5,174,0,0,97,61,0,0,0,5,9,144,2,16,0,0,0,0,7,151,3,79,0,0,0,0,9,150,0,25],[0,0,0,3,8,128,2,16,0,0,0,0,10,9,4,51,0,0,0,0,10,138,1,207,0,0,0,0,10,138,2,47],[0,0,0,0,7,7,4,59,0,0,1,0,8,128,0,137,0,0,0,0,7,135,2,47,0,0,0,0,7,135,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,165,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,5,197,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,5,189,0,0,65,61,0,0,0,0,6,3,0,75,0,0,5,212,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,166,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,104,2,0,0,65],[0,0,2,104,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,104,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,104,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,9,156,9,141,0,0,4,15,0,0,0,0,3,1,0,25],[0,0,0,96,3,48,2,112,0,0,2,104,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,5,253,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,5,245,0,0,65,61,0,0,0,0,7,5,0,75,0,0,6,12,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,170,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,111,4,16,0,156,0,0,3,195,0,0,33,61,0,0,0,1,2,32,1,144,0,0,3,195,0,0,193,61],[0,0,0,64,0,16,4,63,0,0,0,32,2,48,0,140,0,0,4,38,0,0,65,61,0,0,0,9,3,0,0,41],[0,0,0,11,2,48,0,108,0,0,8,199,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,2,169,1,0,0,65,0,0,0,0,0,16,4,57,0,0,128,17,1,0,0,57],[0,0,0,4,0,16,4,67,0,0,2,104,1,0,0,65,0,0,0,0,2,0,4,20,0,0,2,104,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,2,170,1,16,1,199,0,0,128,2,2,0,0,57],[9,156,9,146,0,0,4,15,0,0,0,1,2,32,1,144,0,0,8,208,0,0,97,61,0,0,0,0,1,1,4,59],[0,0,0,0,1,1,0,75,0,0,4,38,0,0,97,61,0,0,0,64,3,0,4,61,0,0,2,171,1,0,0,65],[0,0,0,0,0,19,4,53,0,0,0,4,1,48,0,57,0,0,0,32,2,0,0,57,0,0,0,0,0,33,4,53],[0,0,0,36,1,48,0,57,0,0,0,12,4,0,0,41,0,0,0,0,0,65,4,53,0,0,0,31,2,64,1,143],[0,11,0,0,0,3,0,29,0,0,0,68,1,48,0,57,0,0,0,10,3,0,0,41,0,0,0,17,3,48,3,103],[0,0,0,5,4,64,2,114,0,0,6,75,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,6,67,0,0,65,61,0,0,0,0,5,2,0,75],[0,0,6,90,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,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,3,3,4,59,0,0,1,0,2,32,0,137,0,0,0,0,3,35,2,47,0,0,0,0,2,35,1,207],[0,0,0,0,2,82,1,159,0,0,0,0,0,36,4,53,0,0,0,12,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,2,104,2,0,0,65,0,0,0,11,4,0,0,41,0,0,2,104,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,2,104,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,2,104,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,17,2,0,0,57,9,156,9,141,0,0,4,15,0,0,0,1,2,32,1,144,0,0,8,209,0,0,97,61],[0,0,0,11,1,0,0,41,0,0,2,111,1,16,0,156,0,0,3,195,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,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,9,156,8,241,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,9,157,0,1,4,46,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,2,98,0,0,33,61,0,0,0,4,2,48,0,57],[0,0,0,11,1,32,0,108,0,0,4,38,0,0,33,61,0,0,0,10,3,48,0,41,0,0,0,17,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,25],[0,0,0,0,4,55,0,75,0,0,0,0,4,0,0,25,0,0,0,1,4,0,64,57,0,0,0,1,4,64,1,144],[0,0,2,98,0,0,193,61,0,0,0,11,4,112,0,108,0,0,4,38,0,0,33,61,0,0,0,10,5,32,0,41],[0,0,2,104,4,80,1,151,0,0,0,0,2,0,4,20,0,1,0,0,0,65,3,85,0,0,0,0,5,83,0,25],[0,0,0,0,3,53,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,2,98,0,0,193,61,0,0,0,0,3,0,0,49,0,0,0,0,6,83,0,75,0,0,2,98,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,0,0,1,65,3,79],[0,0,0,0,3,83,0,73,0,0,2,104,3,48,1,151,0,1,0,0,0,49,3,229,0,0,2,104,4,32,0,156],[0,0,8,14,0,0,33,61,0,0,0,0,1,49,3,223,0,0,0,192,2,32,2,16,0,0,2,114,2,32,1,151],[0,0,2,115,2,32,1,199,0,1,0,0,0,33,3,181,0,0,0,0,1,33,3,175,0,0,128,16,2,0,0,57],[9,156,9,151,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,2,104,3,48,1,151],[0,0,0,1,2,32,1,144,0,0,7,77,0,0,97,61,0,0,0,63,2,48,0,57,0,0,2,116,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,111,6,64,0,156,0,0,3,195,0,0,33,61,0,0,0,1,5,80,1,144],[0,0,3,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,6,221,0,0,97,61,0,0,0,0,6,0,0,49,0,0,0,17,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,213,0,0,65,61,0,0,0,0,5,0,0,75,0,0,6,223,0,0,97,61,0,0,0,5,5,48,2,114],[0,0,0,14,9,0,0,41,0,0,6,235,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,227,0,0,65,61,0,0,0,31,3,48,1,144],[0,0,6,250,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,7,35,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,117,3,16,0,156,0,0,3,195,0,0,33,61,0,0,0,96,3,16,0,57],[0,0,0,64,0,48,4,63,0,0,2,104,3,32,0,156,0,0,2,104,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,104,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,104,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,118,1,16,1,199],[0,0,128,16,2,0,0,57,9,156,9,146,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,4,38,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,6,141,0,0,65,61,0,0,5,40,0,0,1,61,0,0,0,64,1,0,4,61],[0,0,0,68,2,16,0,57,0,0,2,144,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,132,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,104,2,0,0,65],[0,0,2,104,3,16,0,156,0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16,0,0,2,133,1,16,1,199],[0,0,9,158,0,1,4,48,0,0,0,64,1,0,4,61,0,0,0,132,2,16,0,57,0,0,2,145,3,0,0,65],[0,0,0,0,0,50,4,53,0,0,0,100,2,16,0,57,0,0,2,146,3,0,0,65,0,0,0,0,0,50,4,53],[0,0,0,68,2,16,0,57,0,0,2,147,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,132,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,104,2,0,0,65],[0,0,2,104,3,16,0,156,0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16,0,0,2,148,1,16,1,199],[0,0,9,158,0,1,4,48,0,0,0,31,4,48,1,143,0,0,0,5,2,48,2,114,0,0,7,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,7,81,0,0,65,61],[0,0,0,0,5,4,0,75,0,0,7,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,9,158,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,2,98,0,0,33,61,0,0,0,4,2,48,0,57,0,0,0,11,1,32,0,108,0,0,4,38,0,0,33,61],[0,0,0,10,3,48,0,41,0,0,0,17,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,25,0,0,0,0,4,167,0,75,0,0,0,0,4,0,0,25],[0,0,0,1,4,0,64,57,0,0,0,1,4,64,1,144,0,0,2,98,0,0,193,61,0,0,0,11,4,112,0,108],[0,0,4,38,0,0,33,61,0,0,2,149,4,48,1,152,0,0,8,122,0,0,193,61,0,0,2,151,4,48,0,156],[0,0,8,126,0,0,129,61,0,0,2,152,3,48,1,152,0,0,8,130,0,0,97,61,0,0,0,10,4,32,0,41],[0,0,2,104,3,64,1,151,0,0,0,0,2,0,4,20,0,1,0,0,0,49,3,85,0,0,0,0,4,74,0,25],[0,0,0,0,5,164,0,75,0,0,0,0,5,0,0,25,0,0,0,1,5,0,64,57,0,0,0,1,5,80,1,144],[0,0,2,98,0,0,193,61,0,0,0,0,5,0,0,49,0,0,0,0,6,69,0,75,0,0,2,98,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,0,0,1,49,3,79,0,0,0,0,3,69,0,73,0,0,2,104,3,48,1,151,0,1,0,0,0,49,3,229],[0,0,2,104,4,32,0,156,0,0,8,14,0,0,33,61,0,0,0,0,1,49,3,223,0,0,0,192,2,32,2,16],[0,0,2,114,2,32,1,151,0,0,2,115,2,32,1,199,0,1,0,0,0,33,3,181,0,0,0,0,1,33,3,175],[0,0,0,2,2,0,0,57,9,156,9,151,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,0,2,104,3,48,1,151,0,0,0,1,2,32,1,144,0,0,8,137,0,0,97,61,0,0,0,63,2,48,0,57],[0,0,2,116,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,111,6,64,0,156,0,0,3,195,0,0,33,61],[0,0,0,1,5,80,1,144,0,0,3,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,0,13,10,0,0,41,0,0,7,195,0,0,97,61],[0,0,0,0,6,0,0,49,0,0,0,17,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,7,187,0,0,65,61,0,0,0,0,5,0,0,75],[0,0,7,197,0,0,97,61,0,0,0,5,5,48,2,114,0,0,0,14,9,0,0,41,0,0,7,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,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,201,0,0,65,61,0,0,0,31,3,48,1,144,0,0,7,224,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,8,164,0,0,193,61],[0,0,0,0,2,4,4,51,0,0,2,154,2,32,1,151,0,0,0,219,3,160,2,16,0,0,2,155,3,48,1,151],[0,0,0,0,2,35,1,159,0,0,2,123,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,117,3,16,0,156,0,0,3,195,0,0,33,61,0,0,0,96,3,16,0,57,0,0,0,64,0,48,4,63],[0,0,2,104,3,32,0,156,0,0,2,104,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,104,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,104,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,118,1,16,1,199,0,0,128,16,2,0,0,57],[9,156,9,146,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,4,38,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,7,107,0,0,65,61,0,0,5,57,0,0,1,61,0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57],[0,0,2,134,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,7,41,0,0,1,61,0,0,0,64,1,0,4,61,0,0,0,132,2,16,0,57,0,0,2,158,3,0,0,65],[0,0,0,0,0,50,4,53,0,0,0,100,2,16,0,57,0,0,2,159,3,0,0,65,0,0,0,0,0,50,4,53],[0,0,0,68,2,16,0,57,0,0,2,160,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,7,65,0,0,1,61,0,0,0,32,1,16,2,16,0,0,2,128,1,16,1,151],[0,0,0,0,1,18,1,159,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,8,42,0,0,193,61,0,0,0,191,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,17,4,64,3,103,0,0,0,5,5,80,2,114,0,0,8,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,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,8,53,0,0,65,61,0,0,0,0,6,3,0,75,0,0,8,76,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,104,4,0,0,65,0,0,2,104,3,16,0,156],[0,0,0,0,1,4,128,25,0,0,0,64,1,16,2,16,0,0,2,104,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,104,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,118,1,16,1,199],[0,0,128,13,2,0,0,57,0,0,0,3,3,0,0,57,0,0,2,129,4,0,0,65,0,0,0,1,5,0,0,41],[0,0,0,10,6,0,0,41,9,156,9,141,0,0,4,15,0,0,0,1,1,32,1,144,0,0,4,38,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,104,2,16,0,156],[0,0,2,104,1,0,128,65,0,0,0,64,1,16,2,16,0,0,2,130,1,16,1,199,0,0,9,157,0,1,4,46],[0,0,0,64,1,0,4,61,0,0,0,100,2,16,0,57,0,0,2,162,3,0,0,65,0,0,0,0,0,50,4,53],[0,0,0,68,2,16,0,57,0,0,2,163,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,168,0,0,1,61,0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57],[0,0,2,150,3,0,0,65,0,0,8,133,0,0,1,61,0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57],[0,0,2,157,3,0,0,65,0,0,8,133,0,0,1,61,0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57],[0,0,2,156,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,7,41,0,0,1,61,0,0,0,31,4,48,1,143,0,0,0,5,2,48,2,114,0,0,8,148,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,141,0,0,65,61],[0,0,0,0,5,4,0,75,0,0,8,162,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,9,158,0,1,4,48],[0,0,0,68,2,16,0,57,0,0,2,153,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,7,41,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,8,183,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,175,0,0,65,61,0,0,0,0,6,4,0,75],[0,0,8,198,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,11,0,0,1,61,0,0,0,100,2,16,0,57],[0,0,2,167,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,68,2,16,0,57,0,0,2,168,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,168,0,0,1,61],[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,2,104,3,48,1,151,0,0,0,5,5,48,2,114,0,0,8,225,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,217,0,0,65,61,0,0,0,0,6,4,0,75,0,0,8,240,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,11,0,0,1,61,0,0,2,104,4,16,1,151,0,0,0,0,3,0,4,20,0,0,0,17,5,0,3,103],[0,1,0,0,0,69,3,85,0,0,0,0,1,18,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,1,2,32,1,144,0,0,9,78,0,0,193,61,0,0,0,0,6,0,0,49],[0,0,0,0,2,22,0,75,0,0,9,78,0,0,65,61,0,0,0,0,2,69,3,79,0,0,0,0,1,22,0,73],[0,0,2,104,1,16,1,151,0,1,0,0,0,18,3,229,0,0,2,113,4,48,0,156,0,0,9,82,0,0,129,61],[0,0,0,0,1,18,3,223,0,0,0,192,2,48,2,16,0,0,2,114,2,32,1,151,0,0,2,115,2,32,1,199],[0,1,0,0,0,33,3,181,0,0,0,0,1,33,3,175,0,0,128,16,2,0,0,57,9,156,9,151,0,0,4,15],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,2,104,3,48,1,151,0,0,0,1,2,32,1,144],[0,0,9,89,0,0,97,61,0,0,0,63,2,48,0,57,0,0,2,116,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,111,6,64,0,156,0,0,9,116,0,0,33,61,0,0,0,1,5,80,1,144,0,0,9,116,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,9,44,0,0,97,61,0,0,0,0,6,0,0,49,0,0,0,17,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,9,36,0,0,65,61],[0,0,0,0,5,0,0,75,0,0,9,46,0,0,97,61,0,0,0,31,5,48,1,143,0,0,0,5,3,48,2,114],[0,0,9,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,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,9,50,0,0,65,61,0,0,0,0,6,5,0,75,0,0,9,73,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,9,122,0,0,193,61],[0,0,0,0,1,4,4,51,0,0,0,0,0,1,4,45,0,0,2,172,1,0,0,65,0,0,0,0,0,16,4,53],[0,0,0,17,1,0,0,57,0,0,9,119,0,0,1,61,0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57],[0,0,2,134,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,9,128,0,0,1,61,0,0,0,31,4,48,1,143,0,0,0,5,2,48,2,114,0,0,9,100,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,93,0,0,65,61],[0,0,0,0,5,4,0,75,0,0,9,114,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,9,158,0,1,4,48],[0,0,2,172,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,173,1,0,0,65,0,0,9,158,0,1,4,48,0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57],[0,0,2,144,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,132,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,104,2,0,0,65,0,0,2,104,3,16,0,156],[0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16,0,0,2,133,1,16,1,199,0,0,9,158,0,1,4,48],[0,0,0,0,0,1,4,47,0,0,9,144,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,9,149,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,9,154,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,9,156,0,0,4,50,0,0,9,157,0,1,4,46,0,0,9,158,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,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,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,0,0,0,0],[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,64,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,8,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,63,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],[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],[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],[37,85,210,193,0,0,0,0,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],[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],[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],[67,48,27,71,80,219,106,244,192,73,13,165,34,158,240,54,250,134,179,144,112,97,207,15,207,177,199,38,59,63,228,240]],"0x0000000000000000000000000000000000008009":[[0,18,0,0,0,0,0,2,0,7,0,0,0,0,0,2,0,0,0,0,6,1,0,25,0,0,0,96,7,96,2,112],[0,0,0,82,8,112,1,151,0,1,0,0,0,129,3,85,0,2,0,0,0,129,3,85,0,3,0,0,0,129,3,85],[0,4,0,0,0,129,3,85,0,5,0,0,0,129,3,85,0,6,0,0,0,129,3,85,0,7,0,0,0,129,3,85],[0,8,0,0,0,129,3,85,0,9,0,0,0,129,3,85,0,10,0,0,0,129,3,85,0,11,0,0,0,129,3,85],[0,12,0,0,0,129,3,85,0,13,0,0,0,129,3,85,0,14,0,0,0,129,3,85,0,15,0,0,0,129,3,85],[0,16,0,0,0,129,3,85,0,17,0,0,0,1,3,85,0,0,0,82,0,112,1,157,0,0,0,128,6,0,0,57],[0,0,0,64,0,96,4,63,0,0,0,0,9,0,4,22,0,0,0,1,6,32,1,144,0,0,0,47,0,0,193,61],[0,0,0,0,6,9,0,75,0,0,1,9,0,0,193,61,0,0,0,2,2,32,1,144,0,0,0,54,0,0,193,61],[0,0,0,0,2,0,4,17,0,0,0,84,2,32,0,156,0,0,0,54,0,0,65,61,0,0,0,97,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,101,1,0,0,65,0,0,0,196,0,16,4,63,0,0,0,102,1,0,0,65],[0,0,0,228,0,16,4,63,0,0,0,103,1,0,0,65,0,0,1,68,0,1,4,48,0,0,0,0,1,9,0,75],[0,0,1,9,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,83,1,0,0,65,0,0,1,67,0,1,4,46,0,0,0,0,2,0,4,20,0,0,105,120,9,32,0,138],[0,0,105,121,2,32,0,140,0,0,0,0,9,0,64,25,0,0,0,85,6,64,1,151,0,0,0,0,2,0,4,16],[0,0,0,0,2,38,0,75,0,0,0,72,0,0,193,61,0,0,0,97,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,99,1,0,0,65,0,0,0,196,0,16,4,63,0,0,0,100,1,0,0,65,0,0,1,68,0,1,4,48],[0,0,0,0,2,3,0,75,0,0,0,166,0,0,193,61,0,0,0,0,10,0,4,17,0,0,0,0,0,0,4,23],[0,0,0,0,2,8,0,25,0,0,0,0,2,114,0,73,0,0,0,82,2,32,1,151,0,1,0,0,0,33,3,229],[0,0,0,82,3,144,0,156,0,0,0,247,0,0,33,61,0,0,0,1,3,80,1,144,0,0,0,0,1,33,3,223],[0,0,0,93,2,0,0,65,0,0,0,94,3,0,0,65,0,0,0,0,3,2,192,25,0,0,0,192,2,144,2,16],[0,0,0,95,2,32,1,151,0,0,0,0,2,50,1,159,0,1,0,0,0,33,3,181,0,0,0,0,1,33,3,175],[0,0,0,85,13,160,1,151,0,0,0,0,2,6,0,25,1,66,1,60,0,0,4,15,0,0,0,0,3,1,0,25],[0,0,0,96,3,48,2,112,0,0,0,82,3,48,1,151,0,0,0,1,2,32,1,144,0,0,1,17,0,0,97,61],[0,0,0,63,2,48,0,57,0,0,0,88,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,89,6,64,0,156],[0,0,1,11,0,0,33,61,0,0,0,1,5,80,1,144,0,0,1,11,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,127,0,0,97,61],[0,0,0,0,6,0,0,49,0,0,0,17,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,119,0,0,65,61,0,0,0,0,5,0,0,75],[0,0,0,129,0,0,97,61,0,0,0,31,5,48,1,143,0,0,0,5,3,48,2,114,0,0,0,141,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,133,0,0,65,61,0,0,0,0,6,5,0,75,0,0,0,156,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,82,2,0,0,65,0,0,0,82,3,16,0,156,0,0,0,0,1,2,128,25],[0,0,0,82,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,67,0,1,4,46,0,3,0,0,0,9,0,29,0,5,0,0,0,8,0,29],[0,6,0,0,0,7,0,29,0,7,0,0,0,5,0,29,0,0,0,86,1,0,0,65,0,0,0,160,0,16,4,63],[0,0,0,0,1,0,4,17,0,1,0,0,0,1,0,29,0,0,0,85,1,16,1,151,0,0,0,164,0,16,4,63],[0,2,0,0,0,6,0,29,0,0,0,196,0,96,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,82,1,0,0,65,0,0,0,0,2,0,4,20,0,0,0,82,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,192,1,32,2,16,0,0,0,87,1,16,1,199,0,0,128,10,2,0,0,57,1,66,1,55,0,0,4,15],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,0,82,5,48,1,152,0,0,0,236,0,0,97,61],[0,0,0,63,3,80,0,57,0,0,0,88,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,89,7,48,0,156],[0,0,1,11,0,0,33,61,0,0,0,1,6,96,1,144,0,0,1,11,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,221,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,213,0,0,65,61,0,0,0,0,6,3,0,75,0,0,0,236,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,0,7,5,0,0,41,0,0,0,6,7,0,0,41,0,0,0,5,3,0,0,41],[0,0,0,4,4,0,0,41,0,0,0,3,9,0,0,41,0,0,1,9,0,0,97,61,0,0,0,90,1,64,0,156],[0,0,0,2,6,0,0,41,0,0,0,1,10,0,0,41,0,0,1,44,0,0,65,61,0,0,0,64,1,0,4,61],[0,0,0,68,2,16,0,57,0,0,0,96,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,97,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,82,2,0,0,65],[0,0,0,82,3,16,0,156,0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16,0,0,0,98,1,16,1,199],[0,0,1,68,0,1,4,48,0,0,0,0,1,0,0,25,0,0,1,68,0,1,4,48,0,0,0,91,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,92,1,0,0,65],[0,0,1,68,0,1,4,48,0,0,0,31,4,48,1,143,0,0,0,5,2,48,2,114,0,0,1,28,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,21,0,0,65,61],[0,0,0,0,5,4,0,75,0,0,1,42,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,68,0,1,4,48],[0,0,0,0,2,0,0,49,0,0,0,17,1,0,3,103,0,0,0,0,0,4,4,23,0,1,0,0,0,1,3,85],[0,0,8,252,9,144,0,57,0,0,0,0,3,50,0,75,0,0,0,77,0,0,129,61,0,0,0,91,1,0,0,65],[0,0,0,0,0,16,4,53,0,0,0,17,1,0,0,57,0,0,1,14,0,0,1,61,0,0,1,58,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,64,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,66,0,0,4,50,0,0,1,67,0,1,4,46],[0,0,1,68,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,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,1,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],[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],[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],[34,10,122,216,106,86,85,195,94,88,55,242,140,26,244,22,221,183,6,50,184,65,139,51,50,146,77,156,176,109,14,138]],"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,216,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,11,0,0,65,61,0,0,0,0,2,1,4,59,0,0,0,224,2,32,2,112],[0,0,0,218,4,32,0,156,0,0,0,44,0,0,161,61,0,0,0,219,4,32,0,156,0,0,0,56,0,0,161,61],[0,0,0,220,4,32,0,156,0,0,0,178,0,0,97,61,0,0,0,221,4,32,0,156,0,0,2,4,0,0,97,61],[0,0,0,222,2,32,0,156,0,0,3,11,0,0,193,61,0,0,0,0,2,0,4,22,0,0,0,0,2,2,0,75],[0,0,3,11,0,0,193,61,0,0,0,4,2,48,0,138,0,0,0,32,2,32,0,140,0,0,3,11,0,0,65,61],[0,0,0,4,1,16,3,112,0,0,0,0,1,1,4,59,0,0,0,230,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,89,3,61,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,11,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,217,1,0,0,65,0,0,3,90,0,1,4,46],[0,0,0,225,4,32,0,156,0,0,0,122,0,0,33,61,0,0,0,228,1,32,0,156,0,0,1,194,0,0,97,61],[0,0,0,229,1,32,0,156,0,0,3,11,0,0,193,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75],[0,0,3,11,0,0,193,61,0,0,0,1,1,0,0,57,0,0,0,0,1,1,4,26,0,0,2,1,0,0,1,61],[0,0,0,223,4,32,0,156,0,0,1,203,0,0,97,61,0,0,0,224,2,32,0,156,0,0,3,11,0,0,193,61],[0,0,0,0,2,0,4,22,0,0,0,0,2,2,0,75,0,0,3,11,0,0,193,61,0,0,0,4,2,48,0,138],[0,0,0,96,2,32,0,140,0,0,3,11,0,0,65,61,0,0,0,4,2,16,3,112,0,0,0,0,4,2,4,59],[0,0,0,230,2,64,0,156,0,0,3,11,0,0,33,61,0,0,0,36,2,16,3,112,0,0,0,0,2,2,4,59],[0,0,0,230,5,32,1,151,0,0,0,230,2,32,0,156,0,0,3,11,0,0,33,61,0,0,0,68,1,16,3,112],[0,0,0,0,1,1,4,59,0,4,0,0,0,1,0,29,0,0,0,0,1,0,4,17,0,0,128,1,2,16,0,140],[0,0,0,85,0,0,97,61,0,0,128,6,2,16,0,140,0,0,0,85,0,0,97,61,0,0,128,9,1,16,0,140],[0,0,2,148,0,0,193,61,0,0,0,0,0,64,4,53,0,0,0,32,0,0,4,63,0,0,0,216,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,0,216,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,0,236,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,89,3,84,0,0,4,15,0,0,0,5,3,0,0,41,0,0,0,1,2,32,1,144,0,0,3,11,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,195,0,0,129,61],[0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57,0,0,0,243,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,244,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,216,2,0,0,65,0,0,0,216,3,16,0,156,0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16],[0,0,0,245,1,16,1,199,0,0,3,91,0,1,4,48,0,0,0,226,4,32,0,156,0,0,1,253,0,0,97,61],[0,0,0,227,2,32,0,156,0,0,3,11,0,0,193,61,0,0,0,0,2,0,4,22,0,0,0,0,2,2,0,75],[0,0,3,11,0,0,193,61,0,0,0,4,2,48,0,138,0,0,0,64,2,32,0,140,0,0,3,11,0,0,65,61],[0,0,0,4,2,16,3,112,0,0,0,0,4,2,4,59,0,0,0,230,2,64,0,156,0,0,3,11,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,2,25,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,174,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,216,1,0,0,65,0,0,0,0,2,0,4,20,0,0,0,216,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,0,236,1,16,1,199,0,0,128,16,2,0,0,57],[0,5,0,0,0,4,0,29,3,89,3,84,0,0,4,15,0,0,0,5,5,0,0,41,0,0,0,1,2,32,1,144],[0,0,3,11,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,0,3,1,4,26,0,0,0,4,4,0,0,41],[0,0,0,0,2,67,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,2,246,0,0,97,61,0,0,0,251,1,0,0,65,0,0,0,0,0,16,4,53],[0,0,0,17,1,0,0,57,0,0,1,250,0,0,1,61,0,0,0,4,2,48,0,138,0,0,0,64,2,32,0,140],[0,0,3,11,0,0,65,61,0,0,0,4,2,16,3,112,0,0,0,0,8,2,4,59,0,0,0,230,2,128,0,156],[0,0,3,11,0,0,33,61,0,0,0,36,2,16,3,112,0,0,0,0,4,2,4,59,0,0,0,234,2,64,0,156],[0,0,3,11,0,0,33,61,0,0,0,35,2,64,0,57,0,0,0,235,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,235,2,32,1,151,0,0,0,0,7,2,0,75],[0,0,0,0,5,0,128,25,0,0,0,235,2,32,0,156,0,0,0,0,5,6,192,25,0,0,0,0,2,5,0,75],[0,0,3,11,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,234,6,32,0,156,0,0,1,247,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,234,7,96,0,156,0,0,1,247,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,11,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,231,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,223,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,248,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,16,0,0,0,0,0,16,4,53],[0,0,0,32,0,0,4,63,0,0,0,216,1,0,0,65,0,0,0,0,2,0,4,20,0,0,0,216,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,0,236,1,16,1,199,0,0,128,16,2,0,0,57],[3,89,3,84,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,11,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,0,2,1,4,26,0,0,0,0,9,0,4,22],[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,237,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,43,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,36,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,234,3,160,0,156,0,0,1,247,0,0,33,61,0,0,0,1,2,32,1,144],[0,0,1,247,0,0,193,61,0,1,0,0,0,9,0,29,0,2,0,0,0,8,0,29,0,0,0,64,0,160,4,63],[0,0,0,238,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,79,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,72,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,216,2,0,0,65],[0,0,0,216,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,216,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,216,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,10,0,29],[3,89,3,79,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,216,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,120,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,112,0,0,65,61],[0,0,0,0,7,5,0,75,0,0,1,135,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,13,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,234,4,16,0,156],[0,0,0,5,4,0,0,41,0,0,1,247,0,0,33,61,0,0,0,1,2,32,1,144,0,0,1,247,0,0,193,61],[0,0,0,64,0,16,4,63,0,0,0,32,2,48,0,140,0,0,3,11,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,1,2,0,0,41,0,0,0,0,0,33,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,230,6,64,1,151,0,0,0,0,4,2,0,75,0,0,1,171,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,164,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,216,3,0,0,65],[0,0,0,216,4,16,0,156,0,0,0,0,1,3,128,25,0,0,0,64,1,16,2,16,0,0,0,216,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,216,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,239,1,16,1,199,0,0,128,13,2,0,0,57,0,0,0,3,3,0,0,57,0,0,0,240,4,0,0,65],[0,0,0,2,5,0,0,41,0,0,3,6,0,0,1,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75],[0,0,3,11,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,1,0,1,0,0,65,0,0,2,12,0,0,1,61,0,0,0,4,2,48,0,138],[0,0,0,32,2,32,0,140,0,0,3,11,0,0,65,61,0,0,0,4,1,16,3,112,0,0,0,0,4,1,4,59],[0,0,0,230,1,64,0,156,0,0,3,11,0,0,33,61,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,216,1,0,0,65,0,0,0,0,2,0,4,20,0,0,0,216,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,0,236,1,16,1,199,0,0,128,16,2,0,0,57],[0,5,0,0,0,4,0,29,3,89,3,84,0,0,4,15,0,0,0,5,4,0,0,41,0,0,0,1,2,32,1,144],[0,0,3,11,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,0,2,1,4,26,0,0,0,0,5,0,4,22],[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,237,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,0,0,57,0,0,0,0,0,33,4,53,0,0,0,56,2,16,0,57],[0,0,0,0,0,82,4,53,0,0,0,249,2,16,0,156,0,0,2,35,0,0,65,61,0,0,0,251,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,252,1,0,0,65],[0,0,3,91,0,1,4,48,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,3,11,0,0,193,61],[0,0,0,18,1,0,0,57,0,0,0,128,0,16,4,63,0,0,0,231,1,0,0,65,0,0,3,90,0,1,4,46],[0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,3,11,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,232,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,89,3,42,0,0,4,15,0,0,0,192,1,16,0,138,0,0,0,216,2,0,0,65],[0,0,0,216,3,16,0,156,0,0,0,0,1,2,128,25,0,0,0,96,1,16,2,16,0,0,0,233,1,16,1,199],[0,0,3,90,0,1,4,46,0,0,0,244,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,253,1,0,0,65],[0,0,0,196,0,16,4,63,0,0,0,254,1,0,0,65,0,0,3,91,0,1,4,48,0,3,0,0,0,5,0,29],[0,0,0,96,7,16,0,57,0,0,0,64,0,112,4,63,0,0,0,238,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,57,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,50,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,216,2,0,0,65,0,0,0,216,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,216,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,216,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,4,0,0,0,7,0,29,3,89,3,79,0,0,4,15],[0,0,0,4,10,0,0,41,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,0,216,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,99,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,91,0,0,65,61,0,0,0,0,7,5,0,75],[0,0,2,114,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,160,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,234,4,16,0,156,0,0,0,5,5,0,0,41],[0,0,0,3,4,0,0,41,0,0,1,247,0,0,33,61,0,0,0,1,2,32,1,144,0,0,1,247,0,0,193,61],[0,0,0,64,0,16,4,63,0,0,0,32,2,48,0,140,0,0,3,11,0,0,65,61,0,0,0,0,0,65,4,53],[0,0,0,216,2,0,0,65,0,0,0,0,3,0,4,20,0,0,0,216,4,48,0,156,0,0,0,0,3,2,128,25],[0,0,0,216,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,241,1,16,1,199,0,0,0,230,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,250,4,0,0,65,0,0,3,6,0,0,1,61],[0,0,0,244,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,246,1,0,0,65,0,0,0,196,0,16,4,63],[0,0,0,247,1,0,0,65,0,0,0,228,0,16,4,63,0,0,0,248,1,0,0,65,0,0,3,91,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,2,173,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,165,0,0,65,61,0,0,0,0,6,4,0,75,0,0,2,188,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,216,1,0,0,65,0,0,0,216,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,91,0,1,4,48,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,216,3,0,0,65,0,0,0,0,1,0,4,20],[0,0,0,216,2,16,0,156,0,0,0,0,1,3,128,25,0,0,0,192,1,16,2,16,0,0,0,236,1,16,1,199],[0,0,128,16,2,0,0,57,3,89,3,84,0,0,4,15,0,0,0,3,3,0,0,41,0,0,0,1,2,32,1,144],[0,0,3,11,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,216,2,16,0,156],[0,0,0,216,1,0,128,65,0,0,0,192,1,16,2,16,0,0,0,236,1,16,1,199,0,0,128,16,2,0,0,57],[3,89,3,84,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,11,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,216,2,0,0,65,0,0,0,0,3,0,4,20,0,0,0,216,4,48,0,156,0,0,0,0,3,2,128,25],[0,0,0,216,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,241,1,16,1,199,0,0,128,13,2,0,0,57,0,0,0,3,3,0,0,57],[0,0,0,242,4,0,0,65,0,0,3,6,0,0,1,61,0,0,0,0,0,33,4,27,0,0,0,64,1,0,4,61],[0,0,0,0,0,65,4,53,0,0,0,216,2,0,0,65,0,0,0,0,3,0,4,20,0,0,0,216,4,48,0,156],[0,0,0,0,3,2,128,25,0,0,0,216,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,241,1,16,1,199,0,0,128,13,2,0,0,57],[0,0,0,2,3,0,0,57,0,0,0,255,4,0,0,65,3,89,3,79,0,0,4,15,0,0,0,1,1,32,1,144],[0,0,3,11,0,0,97,61,0,0,0,0,1,0,0,25,0,0,3,90,0,1,4,46,0,0,0,0,1,0,0,25],[0,0,3,91,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,26,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,18,0,0,65,61,0,0,0,0,6,4,0,75,0,0,3,41,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,188,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,54,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,47,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,216,2,0,0,65,0,0,0,216,3,16,0,156,0,0,0,0,1,2,128,25],[0,0,0,0,3,0,4,20,0,0,0,216,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,236,1,16,1,199,0,0,128,16,2,0,0,57],[3,89,3,84,0,0,4,15,0,0,0,1,2,32,1,144,0,0,3,77,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,91,0,1,4,48,0,0,3,82,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,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,3,89,0,0,4,50,0,0,3,90,0,1,4,46,0,0,3,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],[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],[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],[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,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],[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],[0,0,0,0,0,0,0,0,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,133,150,243,102,125,100,44,247,228,170,104,216,74,35,175,46,168,47,32,204,114,133,255,17,151,6,212,83,54,59,33]],"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,60,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,252,0,0,65,61],[0,0,0,0,2,1,4,59,0,0,0,224,2,32,2,112,0,0,1,64,5,32,0,156,0,0,0,52,0,0,161,61],[0,0,1,65,4,32,0,156,0,0,0,104,0,0,33,61,0,0,1,77,4,32,0,156,0,0,0,163,0,0,33,61],[0,0,1,83,4,32,0,156,0,0,1,12,0,0,33,61,0,0,1,86,4,32,0,156,0,0,0,223,0,0,97,61],[0,0,1,87,1,32,0,156,0,0,3,252,0,0,193,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75],[0,0,3,252,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,2,112,0,0,1,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,3,252,0,0,193,61],[0,0,1,60,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,61,2,32,1,151,0,0,128,1,2,32,1,191,0,0,0,0,0,33,4,27],[0,0,1,62,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,63,1,0,0,65,0,0,4,235,0,1,4,46],[0,0,1,88,5,32,0,156,0,0,0,128,0,0,161,61,0,0,1,89,4,32,0,156,0,0,0,177,0,0,33,61],[0,0,1,95,1,32,0,156,0,0,1,21,0,0,33,61,0,0,1,98,1,32,0,156,0,0,1,123,0,0,97,61],[0,0,1,99,1,32,0,156,0,0,3,252,0,0,193,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75],[0,0,3,252,0,0,193,61,0,0,1,15,1,0,0,57,0,0,0,0,1,1,4,26,0,0,1,64,2,0,0,57],[0,0,0,64,0,32,4,63,0,0,0,0,2,0,4,19,0,0,1,60,3,32,1,151,0,0,0,128,0,48,4,63],[0,0,0,64,4,32,2,112,0,0,1,60,4,64,1,151,0,0,0,160,0,64,4,63,0,0,0,96,4,32,2,112],[0,0,1,60,4,64,1,151,0,0,0,192,0,64,4,63,0,0,0,224,4,32,2,112,0,0,0,255,4,64,1,143],[0,0,0,224,0,64,4,63,0,0,0,232,4,32,2,112,0,0,0,255,4,64,1,143,0,0,1,0,0,64,4,63],[0,0,0,240,2,32,2,112,0,0,0,255,2,32,1,143,0,0,1,32,0,32,4,63,0,0,1,16,2,0,0,57],[0,0,0,0,2,2,4,26,0,0,0,0,2,35,0,73,0,0,0,0,3,50,0,75,0,0,0,0,3,0,0,25],[0,0,0,1,3,0,32,57,0,0,0,0,3,3,0,75,0,0,0,0,2,0,192,25,0,0,0,0,67,18,0,169],[0,0,0,0,4,1,0,75,0,0,0,101,0,0,97,61,0,0,0,0,65,19,0,217,0,0,0,0,1,18,0,75],[0,0,2,79,0,0,193,61,0,0,1,64,0,48,4,63,0,0,1,121,1,0,0,65,0,0,4,235,0,1,4,46],[0,0,1,66,4,32,0,156,0,0,0,217,0,0,33,61,0,0,1,72,4,32,0,156,0,0,1,30,0,0,33,61],[0,0,1,75,4,32,0,156,0,0,1,130,0,0,97,61,0,0,1,76,1,32,0,156,0,0,3,252,0,0,193,61],[0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,3,252,0,0,193,61,0,0,0,4,1,48,0,138],[0,0,0,32,1,16,0,140,0,0,3,252,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,234,4,94,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,2,104,0,0,1,61],[0,0,1,100,5,32,0,156,0,0,0,238,0,0,161,61,0,0,1,101,1,32,0,156,0,0,1,39,0,0,33,61],[0,0,1,104,1,32,0,156,0,0,1,151,0,0,97,61,0,0,1,105,1,32,0,156,0,0,3,252,0,0,193,61],[0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,3,252,0,0,193,61,0,0,0,4,1,48,0,138],[0,0,0,96,1,16,0,140,0,0,3,252,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,234,4,94,0,0,4,15,0,0,0,64,1,0,4,61],[4,234,4,158,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,110,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,2,104,0,0,1,61,0,0,1,78,1,32,0,156],[0,0,1,55,0,0,33,61,0,0,1,81,1,32,0,156,0,0,1,156,0,0,97,61,0,0,1,82,1,32,0,156],[0,0,3,252,0,0,193,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,3,252,0,0,193,61],[4,234,4,169,0,0,4,15,0,0,1,110,2,32,1,151,0,0,0,128,1,16,2,16,0,0,0,0,1,33,1,159],[0,0,2,60,0,0,1,61,0,0,1,90,4,32,0,156,0,0,1,66,0,0,33,61,0,0,1,93,1,32,0,156],[0,0,1,161,0,0,97,61,0,0,1,94,1,32,0,156,0,0,3,252,0,0,193,61,0,0,0,0,1,0,4,22],[0,0,0,0,1,1,0,75,0,0,3,252,0,0,193,61,0,0,0,0,1,0,4,17,0,0,128,1,1,16,0,140],[0,0,2,129,0,0,193,61,0,0,0,7,1,0,0,57,0,0,0,0,3,1,4,26,0,0,1,110,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,110,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,110,3,48,0,156],[0,0,2,139,0,0,33,61,0,0,1,117,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,118,1,0,0,65],[0,0,1,68,0,16,4,63,0,0,1,119,1,0,0,65,0,0,1,100,0,16,4,63,0,0,1,120,1,0,0,65],[0,0,4,236,0,1,4,48,0,0,1,67,4,32,0,156,0,0,1,114,0,0,33,61,0,0,1,70,4,32,0,156],[0,0,1,34,0,0,97,61,0,0,1,71,2,32,0,156,0,0,3,252,0,0,193,61,0,0,0,0,2,0,4,22],[0,0,0,0,2,2,0,75,0,0,3,252,0,0,193,61,0,0,0,4,2,48,0,138,0,0,0,32,2,32,0,140],[0,0,3,252,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,234,4,207,0,0,4,15,0,0,2,111,0,0,1,61,0,0,1,106,5,32,0,156,0,0,1,168,0,0,97,61],[0,0,1,107,5,32,0,156,0,0,1,234,0,0,97,61,0,0,1,108,2,32,0,156,0,0,3,252,0,0,193,61],[0,0,0,0,2,0,4,22,0,0,0,0,2,2,0,75,0,0,3,252,0,0,193,61,0,0,0,4,2,48,0,138],[0,0,0,32,2,32,0,140,0,0,3,252,0,0,65,61,0,0,0,0,2,0,4,17,0,0,128,1,2,32,0,140],[0,0,2,129,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,234,4,207,0,0,4,15,0,0,0,6,2,0,0,41,0,0,2,104,0,0,1,61],[0,0,1,84,1,32,0,156,0,0,2,35,0,0,97,61,0,0,1,85,1,32,0,156,0,0,3,252,0,0,193,61],[0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,3,252,0,0,193,61,0,0,0,1,1,0,0,57],[0,0,1,63,0,0,1,61,0,0,1,96,1,32,0,156,0,0,2,51,0,0,97,61,0,0,1,97,1,32,0,156],[0,0,3,252,0,0,193,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,3,252,0,0,193,61],[0,0,0,3,1,0,0,57,0,0,2,111,0,0,1,61,0,0,1,73,1,32,0,156,0,0,2,56,0,0,97,61],[0,0,1,74,1,32,0,156,0,0,3,252,0,0,193,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75],[0,0,3,252,0,0,193,61,4,234,4,169,0,0,4,15,0,0,2,39,0,0,1,61,0,0,1,102,1,32,0,156],[0,0,2,68,0,0,97,61,0,0,1,103,1,32,0,156,0,0,3,252,0,0,193,61,0,0,0,0,1,0,4,22],[0,0,0,0,1,1,0,75,0,0,3,252,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,234,4,94,0,0,4,15,0,0,1,14,1,0,0,57],[0,0,0,0,2,1,4,26,0,0,1,122,2,32,1,151,0,0,2,156,0,0,1,61,0,0,1,79,1,32,0,156],[0,0,2,85,0,0,97,61,0,0,1,80,1,32,0,156,0,0,3,252,0,0,193,61,0,0,0,0,1,0,4,22],[0,0,0,0,1,1,0,75,0,0,3,252,0,0,193,61,0,0,0,4,1,0,0,57,0,0,0,0,1,1,4,26],[0,0,1,113,1,16,1,151,0,0,2,112,0,0,1,61,0,0,1,91,4,32,0,156,0,0,2,107,0,0,97,61],[0,0,1,92,2,32,0,156,0,0,3,252,0,0,193,61,0,0,0,0,2,0,4,22,0,0,0,0,2,2,0,75],[0,0,3,252,0,0,193,61,0,0,0,4,2,48,0,138,0,0,0,32,2,32,0,140,0,0,3,252,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,110,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,175,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,175,0,0,129,61],[0,0,0,0,4,81,0,75,0,0,2,145,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,60,1,0,0,65,0,0,0,0,2,0,4,20,0,0,1,60,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,1,116,1,16,1,199,0,0,128,16,2,0,0,57],[4,234,4,229,0,0,4,15,0,0,0,1,2,32,1,144,0,0,3,252,0,0,97,61,0,0,0,0,1,1,4,59],[0,0,0,0,4,1,4,26,0,0,2,175,0,0,1,61,0,0,1,68,4,32,0,156,0,0,2,115,0,0,97,61],[0,0,1,69,1,32,0,156,0,0,3,252,0,0,193,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75],[0,0,3,252,0,0,193,61,0,0,0,2,1,0,0,57,0,0,2,111,0,0,1,61,0,0,0,0,1,0,4,22],[0,0,0,0,1,1,0,75,0,0,3,252,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,2,112,0,0,1,61,0,0,0,0,2,0,4,22,0,0,0,0,2,2,0,75],[0,0,3,252,0,0,193,61,0,0,0,4,2,48,0,138,0,0,0,32,2,32,0,140,0,0,3,252,0,0,65,61],[0,0,0,4,1,16,3,112,0,0,0,0,1,1,4,59,0,6,0,0,0,1,0,29,0,0,1,113,1,16,0,156],[0,0,3,252,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,4,234,4,94,0,0,4,15,0,0,0,1,1,0,0,57,0,0,0,0,2,1,4,26],[0,0,1,61,2,32,1,151,0,0,0,6,2,32,1,175,0,0,2,156,0,0,1,61,0,0,0,0,1,0,4,22],[0,0,0,0,1,1,0,75,0,0,3,252,0,0,193,61,0,0,0,5,1,0,0,57,0,0,2,111,0,0,1,61],[0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,3,252,0,0,193,61,0,0,0,0,1,0,4,26],[0,0,2,112,0,0,1,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,3,252,0,0,193,61],[0,0,1,12,1,0,0,57,0,0,0,0,1,1,4,26,0,0,1,110,1,16,1,151,0,0,2,112,0,0,1,61],[0,0,0,0,2,0,4,22,0,0,0,0,2,2,0,75,0,0,3,252,0,0,193,61,0,0,0,4,2,48,0,138],[0,0,0,128,2,32,0,140,0,0,3,252,0,0,65,61,0,0,0,4,2,16,3,112,0,0,0,0,2,2,4,59],[0,5,0,0,0,2,0,29,0,0,0,36,2,16,3,112,0,0,0,0,2,2,4,59,0,6,0,0,0,2,0,29],[0,0,1,110,2,32,0,156,0,0,3,252,0,0,33,61,0,0,0,68,1,16,3,112,0,0,0,0,1,1,4,59],[0,4,0,0,0,1,0,29,0,0,1,110,1,16,0,156,0,0,3,252,0,0,33,61,0,0,0,0,1,0,4,17],[0,0,128,1,1,16,0,140,0,0,2,129,0,0,193,61,0,0,0,192,1,0,0,57,0,0,0,64,0,16,4,63],[0,0,0,7,4,0,0,57,0,0,0,0,1,4,4,26,0,0,1,110,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,6,2,32,0,107,0,0,2,183,0,0,161,61],[0,0,1,110,2,16,0,156,0,0,2,79,0,0,97,61,0,0,0,1,2,16,0,57,0,0,0,4,2,32,0,108],[0,0,2,192,0,0,193,61,0,3,0,0,0,4,0,29,0,0,0,9,2,0,0,57,0,0,0,0,2,2,4,26],[0,0,1,110,2,32,1,151,0,0,0,6,2,32,0,107,0,0,2,204,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,60,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,1,60,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,1,116,1,16,1,199],[0,0,128,16,2,0,0,57,4,234,4,229,0,0,4,15,0,0,0,1,2,32,1,144,0,0,3,252,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,1,141,2,16,0,156,0,0,3,120,0,0,161,61,0,0,1,170,1,0,0,65,0,0,0,0,0,16,4,53],[0,0,0,65,1,0,0,57,0,0,2,82,0,0,1,61,0,0,0,0,2,0,4,22,0,0,0,0,2,2,0,75],[0,0,3,252,0,0,193,61,0,0,0,4,2,48,0,138,0,0,0,160,2,32,0,140,0,0,3,252,0,0,65,61],[0,0,0,4,2,16,3,112,0,0,0,0,2,2,4,59,0,6,0,0,0,2,0,29,0,0,1,110,2,32,0,156],[0,0,3,252,0,0,33,61,0,0,0,36,2,16,3,112,0,0,0,0,2,2,4,59,0,5,0,0,0,2,0,29],[0,0,1,110,2,32,0,156,0,0,3,252,0,0,33,61,0,0,0,68,2,16,3,112,0,0,0,0,2,2,4,59],[0,4,0,0,0,2,0,29,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,252,0,0,193,61],[0,0,0,132,1,16,3,112,0,0,0,0,1,1,4,59,0,3,0,0,0,1,0,29,0,0,1,110,1,16,0,156],[0,0,3,252,0,0,33,61,0,0,0,0,1,0,4,17,0,0,128,1,1,16,0,140,0,0,2,129,0,0,193,61],[0,0,0,0,1,2,0,75,0,0,2,232,0,0,97,61,0,0,0,7,1,0,0,57,0,0,0,0,1,1,4,26],[0,0,1,110,1,16,1,151,0,0,0,5,1,16,0,107,0,0,2,218,0,0,129,61,0,0,1,117,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,126,1,0,0,65,0,0,0,196,0,16,4,63,0,0,1,127,1,0,0,65],[0,0,0,228,0,16,4,63,0,0,1,128,1,0,0,65,0,0,1,4,0,16,4,63,0,0,1,129,1,0,0,65],[0,0,1,36,0,16,4,63,0,0,1,130,1,0,0,65,0,0,4,236,0,1,4,48,0,0,0,0,1,0,4,22],[0,0,0,0,1,1,0,75,0,0,3,252,0,0,193,61,4,234,4,188,0,0,4,15,0,0,1,110,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,110,1,16,1,151],[0,0,0,0,0,19,4,53,0,0,1,60,1,0,0,65,0,0,1,60,2,48,0,156,0,0,0,0,3,1,128,25],[0,0,0,64,1,48,2,16,0,0,1,111,1,16,1,199,0,0,4,235,0,1,4,46,0,0,0,0,1,0,4,22],[0,0,0,0,1,1,0,75,0,0,3,252,0,0,193,61,0,0,0,6,1,0,0,57,0,0,2,111,0,0,1,61],[0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,3,252,0,0,193,61,4,234,4,115,0,0,4,15],[0,0,0,64,2,0,4,61,0,0,0,0,0,18,4,53,0,0,1,60,1,0,0,65,0,0,1,60,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,0,64,1,32,2,16,0,0,1,112,1,16,1,199,0,0,4,235,0,1,4,46],[0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,3,252,0,0,193,61,0,0,0,0,1,0,4,17],[0,0,128,1,1,16,0,140,0,0,2,129,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,153,0,0,193,61,0,0,1,170,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,171,1,0,0,65],[0,0,4,236,0,1,4,48,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,3,252,0,0,193,61],[0,0,0,4,1,48,0,138,0,0,0,64,1,16,0,140,0,0,3,252,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,234,4,94,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,1,16,3,0,0,57],[0,0,0,0,0,35,4,27,0,0,0,4,1,16,3,112,0,0,0,0,1,1,4,59,0,0,1,15,2,0,0,57],[0,0,0,0,0,18,4,27,0,0,0,0,1,0,0,25,0,0,4,235,0,1,4,46,0,0,0,0,1,0,4,22],[0,0,0,0,1,1,0,75,0,0,3,252,0,0,193,61,0,0,1,15,1,0,0,57,0,0,0,0,1,1,4,26],[0,0,0,128,0,16,4,63,0,0,1,109,1,0,0,65,0,0,4,235,0,1,4,46,0,0,0,0,2,0,4,22],[0,0,0,0,2,2,0,75,0,0,3,252,0,0,193,61,0,0,0,4,2,48,0,138,0,0,0,32,2,32,0,140],[0,0,3,252,0,0,65,61,0,0,0,0,2,0,4,17,0,0,128,7,2,32,0,140,0,0,3,252,0,0,193,61],[0,0,0,4,1,16,3,112,0,0,0,0,1,1,4,59,0,0,0,0,0,16,4,27,0,0,0,0,1,0,0,25],[0,0,4,235,0,1,4,46,0,0,1,117,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,161,1,0,0,65],[0,0,0,196,0,16,4,63,0,0,1,162,1,0,0,65,0,0,4,236,0,1,4,48,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,235,0,1,4,46,0,0,1,114,3,48,0,156,0,0,2,159,0,0,65,61,0,0,0,0,2,33,0,75],[0,0,2,159,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,175,0,0,1,61,0,0,1,122,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,235,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,60,1,0,0,65,0,0,0,0,2,0,4,20,0,0,1,60,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,192,1,32,2,16,0,0,1,115,1,16,1,199,0,0,128,16,2,0,0,57,4,234,4,229,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,3,252,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,60,2,0,0,65,0,0,1,60,3,16,0,156,0,0,0,0,1,2,128,25],[0,0,0,64,1,16,2,16,0,0,1,112,1,16,1,199,0,0,4,235,0,1,4,46,0,0,1,117,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,163,1,0,0,65,0,0,1,4,0,16,4,63,0,0,1,132,1,0,0,65,0,0,4,236,0,1,4,48],[0,0,1,117,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,164,1,0,0,65,0,0,1,4,0,16,4,63],[0,0,1,165,1,0,0,65,0,0,1,36,0,16,4,63,0,0,1,144,1,0,0,65,0,0,4,236,0,1,4,48],[0,0,1,117,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,166,1,0,0,65,0,0,1,4,0,16,4,63],[0,0,1,167,1,0,0,65,0,0,1,36,0,16,4,63,0,0,1,168,1,0,0,65,0,0,1,68,0,16,4,63],[0,0,1,169,1,0,0,65,0,0,4,236,0,1,4,48,0,0,0,3,1,0,0,107,0,0,2,232,0,0,193,61],[0,0,1,117,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,123,1,0,0,65,0,0,0,196,0,16,4,63],[0,0,1,124,1,0,0,65,0,0,0,228,0,16,4,63,0,0,1,125,1,0,0,65,0,0,4,236,0,1,4,48],[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,110,1,48,1,151,0,2,0,0,0,1,0,29,0,0,0,128,0,16,4,63],[0,0,0,128,1,48,2,112,0,0,0,160,0,16,4,63,0,0,1,110,3,48,0,156,0,0,3,2,0,0,33,61],[0,0,0,2,3,0,0,107,0,0,3,7,0,0,193,61,0,0,0,0,1,2,0,75,0,0,3,100,0,0,193,61],[0,0,1,117,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,159,1,0,0,65,0,0,1,4,0,16,4,63],[0,0,1,160,1,0,0,65,0,0,2,201,0,0,1,61,0,0,0,6,3,16,0,108,0,0,3,9,0,0,97,61],[0,0,1,110,2,16,0,156,0,0,2,79,0,0,97,61,0,0,3,36,0,0,1,61,0,0,0,6,3,16,0,108],[0,0,3,36,0,0,193,61,0,0,0,0,1,2,0,75,0,0,3,90,0,0,193,61,0,0,0,2,2,0,0,41],[0,0,0,5,1,32,0,108,0,0,3,142,0,0,193,61,0,0,0,6,1,0,0,41,0,0,0,1,1,16,0,138],[0,0,1,110,2,16,0,156,0,0,2,79,0,0,33,61,0,0,1,110,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,254,0,0,193,61],[0,0,0,3,1,0,0,107,0,0,3,202,0,0,97,61,0,0,1,117,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,149,1,0,0,65,0,0,1,4,0,16,4,63,0,0,1,150,1,0,0,65,0,0,2,201,0,0,1,61],[0,0,0,1,2,16,0,57,0,0,0,6,2,32,0,108,0,0,3,112,0,0,193,61,0,0,0,1,2,16,0,138],[0,0,1,110,3,32,0,156,0,0,2,79,0,0,33,61,0,0,0,10,3,0,0,57,0,0,0,0,3,3,4,26],[0,0,1,110,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,2,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,60,1,0,0,65,0,0,0,0,2,0,4,20,0,0,1,60,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,192,1,32,2,16,0,0,1,133,1,16,1,199,0,0,128,16,2,0,0,57,4,234,4,229,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,3,252,0,0,97,61,0,0,0,64,2,0,4,61,0,0,0,0,1,1,4,59],[0,0,0,4,1,16,0,107,0,0,4,8,0,0,193,61,0,0,0,2,3,0,0,41,0,0,0,5,1,48,0,107],[0,0,4,43,0,0,161,61,0,0,1,141,1,32,0,156,0,0,1,230,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,6,4,0,0,41,0,0,0,0,0,65,4,53],[0,0,0,5,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,110,2,16,0,156],[0,0,2,79,0,0,33,61,0,0,3,195,0,0,1,61,0,0,1,117,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,142,1,0,0,65,0,0,1,4,0,16,4,63,0,0,1,143,1,0,0,65,0,0,2,201,0,0,1,61],[0,0,0,6,1,0,0,107,0,0,3,152,0,0,193,61,0,0,1,117,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,157,1,0,0,65,0,0,1,4,0,16,4,63,0,0,1,158,1,0,0,65,0,0,2,201,0,0,1,61],[0,0,1,117,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,131,1,0,0,65,0,0,2,189,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,6,2,0,0,41,0,0,0,0,0,33,4,53,0,0,0,128,1,48,2,16],[0,0,1,110,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,5,2,0,0,41,0,0,0,0,0,33,4,28],[0,0,0,0,1,0,0,25,0,0,4,235,0,1,4,46,0,0,1,117,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,145,1,0,0,65,0,0,1,4,0,16,4,63,0,0,1,146,1,0,0,65,0,0,2,201,0,0,1,61],[0,0,0,6,1,0,0,41,0,0,1,110,1,16,0,65,0,2,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,60,1,0,0,65,0,0,0,0,2,0,4,20,0,0,1,60,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,1,151,1,16,1,199,0,0,128,16,2,0,0,57],[4,234,4,229,0,0,4,15,0,0,0,1,2,32,1,144,0,0,3,252,0,0,97,61,0,0,0,64,2,0,4,61],[0,0,0,0,1,1,4,59,0,0,0,4,1,16,0,108,0,0,4,17,0,0,193,61,0,0,0,2,1,0,0,41],[0,0,1,110,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,141,1,32,0,156,0,0,1,230,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,6,4,0,0,41,0,0,0,0,0,65,4,53],[0,0,0,5,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,110,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,114,3,32,0,156,0,0,4,37,0,0,129,61,0,0,0,64,3,0,4,61,0,0,1,141,4,48,0,156],[0,0,1,230,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,110,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,110,6,96,0,156,0,0,4,66,0,0,33,61,0,0,0,0,6,3,4,51],[0,0,1,110,6,96,1,152,0,0,4,66,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,154,2,32,1,151,0,0,0,0,2,37,1,159],[0,0,0,0,0,33,4,27,0,0,0,3,6,0,0,107,0,0,4,69,0,0,193,61,0,0,0,64,1,0,4,61],[0,0,0,100,2,16,0,57,0,0,1,155,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,68,2,16,0,57],[0,0,1,156,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,117,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,60,2,0,0,65,0,0,1,60,3,16,0,156],[0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16,0,0,1,136,1,16,1,199,0,0,4,236,0,1,4,48],[0,0,0,0,1,0,0,25,0,0,4,236,0,1,4,48,0,0,1,117,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,147,1,0,0,65,0,0,1,4,0,16,4,63,0,0,1,148,1,0,0,65,0,0,2,201,0,0,1,61],[0,0,0,100,1,32,0,57,0,0,1,134,3,0,0,65,0,0,0,0,0,49,4,53,0,0,0,68,1,32,0,57],[0,0,1,135,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,4,25,0,0,1,61,0,0,0,100,1,32,0,57,0,0,1,152,3,0,0,65,0,0,0,0,0,49,4,53],[0,0,0,68,1,32,0,57,0,0,1,153,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,117,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,60,1,0,0,65],[0,0,1,60,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,64,1,32,2,16,0,0,1,136,1,16,1,199],[0,0,4,236,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,235,0,1,4,46,0,0,0,132,1,32,0,57],[0,0,1,137,3,0,0,65,0,0,0,0,0,49,4,53,0,0,0,100,1,32,0,57,0,0,1,138,3,0,0,65],[0,0,0,0,0,49,4,53,0,0,0,68,1,32,0,57,0,0,1,139,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,117,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,60,1,0,0,65,0,0,1,60,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,64,1,32,2,16],[0,0,1,140,1,16,1,199,0,0,4,236,0,1,4,48,0,0,0,3,6,0,0,107,0,0,4,71,0,0,193,61],[0,0,4,41,0,0,1,61,0,0,0,3,6,0,0,41,0,3,0,1,0,96,0,146,0,0,0,3,5,80,0,41],[0,0,1,110,6,80,0,156,0,0,2,79,0,0,33,61,0,0,0,0,0,84,4,53,0,0,0,5,5,0,0,41],[0,0,0,0,0,83,4,53,0,0,0,0,5,4,4,51,0,0,1,110,6,80,1,151,0,0,0,6,6,96,0,108],[0,0,4,83,0,0,129,61,0,0,0,128,5,80,2,16,0,0,4,90,0,0,1,61,0,0,0,6,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,5,0,0,0,1,0,29,0,0,0,5,1,0,0,41,0,0,1,110,1,16,1,151],[0,0,0,0,1,81,1,159,0,0,4,39,0,0,1,61,0,0,0,0,1,1,0,75,0,0,4,97,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,161,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,117,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,60,2,0,0,65,0,0,1,60,3,16,0,156,0,0,0,0,1,2,128,25],[0,0,0,64,1,16,2,16,0,0,1,172,1,16,1,199,0,0,4,236,0,1,4,48,0,0,0,64,1,0,4,61],[0,0,1,173,2,16,0,156,0,0,4,152,0,0,129,61,0,0,0,192,2,16,0,57,0,0,0,64,0,32,4,63],[0,0,0,0,2,0,4,19,0,0,0,240,3,32,2,112,0,0,0,255,3,48,1,143,0,0,0,160,4,16,0,57],[0,0,0,0,0,52,4,53,0,0,0,232,3,32,2,112,0,0,0,255,3,48,1,143,0,0,0,128,4,16,0,57],[0,0,0,0,0,52,4,53,0,0,0,224,3,32,2,112,0,0,0,255,3,48,1,143,0,0,0,96,4,16,0,57],[0,0,0,0,0,52,4,53,0,0,0,96,3,32,2,112,0,0,1,60,3,48,1,151,0,0,0,64,4,16,0,57],[0,0,0,0,0,52,4,53,0,0,0,64,3,32,2,112,0,0,1,60,3,48,1,151,0,0,0,32,4,16,0,57],[0,0,0,0,0,52,4,53,0,0,1,60,2,32,1,151,0,0,0,0,0,33,4,53,0,0,1,16,1,0,0,57],[0,0,0,0,1,1,4,26,0,0,0,0,1,18,0,73,0,0,0,0,2,33,0,75,0,0,0,0,2,0,0,25],[0,0,0,1,2,0,32,57,0,0,0,0,2,2,0,75,0,0,0,0,1,0,192,25,0,0,0,0,0,1,4,45],[0,0,1,170,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,171,1,0,0,65,0,0,4,236,0,1,4,48,0,0,1,174,2,16,0,156,0,0,4,163,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,170,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,171,1,0,0,65],[0,0,4,236,0,1,4,48,0,0,0,64,3,0,4,61,0,0,1,174,1,48,0,156,0,0,4,182,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,110,2,32,1,151],[0,0,0,0,0,35,4,53,0,0,0,0,0,1,4,45,0,0,1,170,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,171,1,0,0,65,0,0,4,236,0,1,4,48],[0,0,0,64,3,0,4,61,0,0,1,174,1,48,0,156,0,0,4,201,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,110,2,32,1,151,0,0,0,0,0,35,4,53],[0,0,0,0,0,1,4,45,0,0,1,170,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,171,1,0,0,65,0,0,4,236,0,1,4,48,0,0,1,60,3,0,0,65],[0,0,1,60,4,16,0,156,0,0,0,0,1,3,128,25,0,0,0,64,1,16,2,16,0,0,1,60,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,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,1,175,1,16,1,199,0,0,128,16,2,0,0,57,4,234,4,229,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,4,227,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,236,0,1,4,48,0,0,4,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,4,234,0,0,4,50,0,0,4,235,0,1,4,46],[0,0,4,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],[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,168,81,174,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,212,164,202,12],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,239,14,47,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,239,14,47,244],[0,0,0,0,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,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,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,192,213,185,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,192,213,185,73],[0,0,0,0,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,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,154,138,5,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,162,37,239,202],[0,0,0,0,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,37,239,203],[0,0,0,0,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,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,142,138,207,134],[0,0,0,0,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,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,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,66,203,177,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,121,107,137,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,124,185,53,125],[0,0,0,0,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,185,53,126],[0,0,0,0,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,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,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,110,242,92,57],[0,0,0,0,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,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,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,75,233,158,29],[0,0,0,0,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,48,229,204,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,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,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,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,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,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,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,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],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,0,0,1,64,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,97,116,99,104,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,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,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],[8,46,192,117,217,203,84,36,60,38,104,21,28,13,84,56,81,134,80,14,26,183,203,50,90,1,112,186,248,175,212,147]],"0x000000000000000000000000000000000000800c":[[0,18,0,0,0,0,0,2,0,17,0,0,0,0,0,2,0,0,0,0,3,1,0,25,0,0,0,96,5,48,2,112],[0,0,7,164,3,80,1,151,0,1,0,0,0,49,3,85,0,2,0,0,0,49,3,85,0,3,0,0,0,49,3,85],[0,4,0,0,0,49,3,85,0,5,0,0,0,49,3,85,0,6,0,0,0,49,3,85,0,7,0,0,0,49,3,85],[0,8,0,0,0,49,3,85,0,9,0,0,0,49,3,85,0,10,0,0,0,49,3,85,0,11,0,0,0,49,3,85],[0,12,0,0,0,49,3,85,0,13,0,0,0,49,3,85,0,14,0,0,0,49,3,85,0,15,0,0,0,49,3,85],[0,16,0,0,0,49,3,85,0,17,0,0,0,1,3,85,0,0,7,164,0,80,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,154,0,0,193,61,0,0,0,4,2,48,0,140],[0,0,0,204,0,0,65,61,0,0,0,0,2,1,4,59,0,0,7,166,2,32,1,151,0,0,7,167,2,32,0,156],[0,0,0,204,0,0,193,61,0,0,0,0,2,0,4,22,0,0,0,0,2,2,0,75,0,0,0,204,0,0,193,61],[0,0,0,4,2,48,0,138,0,0,0,32,6,32,0,140,0,0,0,204,0,0,65,61,0,0,0,4,6,16,3,112],[0,0,0,0,13,6,4,59,0,0,7,168,6,208,0,156,0,0,0,204,0,0,33,61,0,0,0,0,2,210,0,73],[0,0,7,169,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,169,2,32,1,151,0,0,0,0,8,2,0,75,0,0,0,0,6,0,160,25,0,0,7,169,2,32,0,156],[0,0,0,0,6,7,192,25,0,0,0,0,2,6,0,75,0,0,0,204,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,1,6,32,0,140,0,0,0,162,0,0,33,61],[0,0,0,0,4,2,0,75,0,0,0,216,0,0,97,61,0,0,0,1,1,32,0,140,0,0,0,206,0,0,193,61],[0,12,0,0,0,13,0,29,0,11,0,0,0,12,0,29,0,0,7,170,1,0,0,65,0,0,0,0,0,16,4,57],[0,0,7,164,1,0,0,65,0,0,0,0,2,0,4,20,0,0,7,164,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,192,1,32,2,16,0,0,7,171,1,16,1,199,0,0,128,11,2,0,0,57,30,139,30,129,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,25,2,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,41,0,0,65,61,0,0,0,128,1,64,2,112,0,0,7,174,2,64,0,156],[0,0,0,0,1,4,160,25,0,0,7,174,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,168,6,16,0,156,0,0,0,0,5,2,160,25,0,0,0,64,2,16,2,112],[0,0,7,168,6,16,0,156,0,0,0,0,2,1,160,25,0,0,0,4,1,80,1,191,0,0,7,164,6,32,0,156],[0,0,0,0,1,5,160,25,0,0,0,32,6,32,2,112,0,0,7,164,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,168,6,16,0,156,0,0,4,10,0,0,33,61],[0,0,0,1,2,32,1,144,0,0,4,10,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,17,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,0,136,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,0,128,0,0,65,61],[0,0,0,0,7,0,0,75,0,0,0,138,0,0,97,61,0,0,0,0,7,3,4,51,0,0,0,0,7,7,0,75],[0,0,4,250,0,0,97,61,0,0,0,0,7,6,4,51,0,0,7,173,7,112,1,151,0,0,0,248,8,80,2,16],[0,0,0,0,7,120,1,159,0,0,7,175,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,59,0,0,1,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75],[0,0,0,204,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,165,1,0,0,65,0,0,30,140,0,1,4,46,0,0,0,2,6,32,0,140,0,0,1,27,0,0,97,61],[0,0,0,113,2,32,0,140,0,0,0,206,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,169,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,169,6,96,1,151],[0,0,7,169,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,169,6,96,0,156,0,0,0,0,7,8,192,25,0,0,0,0,6,7,0,75,0,0,0,204,0,0,193,61],[0,0,0,0,6,194,0,25,0,0,0,0,2,97,3,79,0,0,0,0,2,2,4,59,0,0,7,168,7,32,0,156],[0,0,0,204,0,0,33,61,0,0,0,0,8,35,0,73,0,0,0,32,7,96,0,57,0,0,7,169,6,0,0,65],[0,0,0,0,9,135,0,75,0,0,0,0,9,0,0,25,0,0,0,0,9,6,32,25,0,0,7,169,8,128,1,151],[0,0,7,169,10,112,1,151,0,0,0,0,11,138,0,75,0,0,0,0,6,0,128,25,0,0,0,0,8,138,1,63],[0,0,7,169,8,128,0,156,0,0,0,0,6,9,192,25,0,0,0,0,6,6,0,75,0,0,2,233,0,0,97,61],[0,0,0,0,1,0,0,25,0,0,30,141,0,1,4,48,0,0,7,188,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,206,1,0,0,65,0,0,0,196,0,16,4,63,0,0,7,207,1,0,0,65,0,0,30,141,0,1,4,48],[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,1,117,0,0,65,61,0,0,0,128,6,64,2,112,0,0,7,174,7,64,0,156],[0,0,0,0,6,4,160,25,0,0,7,174,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,168,9,96,0,156,0,0,0,0,8,7,160,25,0,0,0,64,7,96,2,112],[0,0,7,168,9,96,0,156,0,0,0,0,7,6,160,25,0,0,0,4,9,128,1,191,0,0,7,164,6,112,0,156],[0,0,0,0,9,8,160,25,0,0,0,32,8,112,2,112,0,0,7,164,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,1,9,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,1,1,0,0,65,61,0,0,0,0,7,0,0,75,0,0,1,11,0,0,97,61,0,0,0,128,7,0,4,61],[0,0,0,0,7,7,0,75,0,0,4,250,0,0,97,61,0,0,0,160,7,0,4,61,0,0,7,173,7,112,1,151],[0,0,0,248,8,96,2,16,0,0,0,0,7,120,1,159,0,0,7,175,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,1,129,0,0,1,61,0,12,0,0,0,13,0,29],[0,11,0,0,0,12,0,29,0,0,7,170,1,0,0,65,0,0,0,0,0,16,4,57,0,0,7,164,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,7,164,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,7,171,1,16,1,199,0,0,128,11,2,0,0,57,30,139,30,129,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,25,2,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,137,0,0,65,61,0,0,0,128,1,64,2,112,0,0,7,174,2,64,0,156,0,0,0,0,1,4,160,25],[0,0,7,174,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,168,6,16,0,156,0,0,0,0,5,2,160,25,0,0,0,64,2,16,2,112,0,0,7,168,6,16,0,156],[0,0,0,0,2,1,160,25,0,0,0,4,1,80,1,191,0,0,7,164,6,32,0,156,0,0,0,0,1,5,160,25],[0,0,0,32,6,32,2,112,0,0,7,164,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,168,6,16,0,156,0,0,4,10,0,0,33,61,0,0,0,1,2,32,1,144],[0,0,4,10,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,17,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,99,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,91,0,0,65,61,0,0,0,0,7,0,0,75],[0,0,1,101,0,0,97,61,0,0,0,0,7,3,4,51,0,0,0,0,7,7,0,75,0,0,4,250,0,0,97,61],[0,0,0,0,7,6,4,51,0,0,7,173,7,112,1,151,0,0,0,248,8,80,2,16,0,0,0,0,7,120,1,159],[0,0,7,175,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,155,0,0,1,61,0,0,0,248,6,64,2,16,0,0,7,169,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,2,4,59,0,0,7,173,4,64,1,151,0,0,0,0,4,116,1,159],[0,0,0,160,0,64,4,63,0,12,0,0,0,13,0,29,0,11,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,206,0,0,65,61,0,0,0,128,7,96,2,112,0,0,7,174,8,96,0,156,0,0,0,0,7,6,160,25],[0,0,7,174,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,168,10,112,0,156,0,0,0,0,9,8,160,25,0,0,0,64,8,112,2,112,0,0,7,168,10,112,0,156],[0,0,0,0,8,7,160,25,0,0,0,4,10,144,1,191,0,0,7,164,7,128,0,156,0,0,0,0,10,9,160,25],[0,0,0,32,9,128,2,112,0,0,7,164,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,168,10,128,0,156,0,0,4,10,0,0,33,61,0,0,0,1,9,144,1,144],[0,0,4,10,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,1,188,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,1,180,0,0,65,61],[0,0,0,0,9,0,0,75,0,0,1,190,0,0,97,61,0,0,0,0,9,4,4,51,0,0,0,0,9,9,0,75],[0,0,4,250,0,0,97,61,0,0,0,0,9,8,4,51,0,0,7,173,9,144,1,151,0,0,0,248,10,112,2,16],[0,0,0,0,9,154,1,159,0,0,7,175,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,221,0,0,1,61,0,0,7,172,7,64,0,156,0,0,4,10,0,0,33,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,2,4,59,0,0,0,0,0,135,4,53,0,0,4,250,0,0,97,61,0,0,0,248,9,96,2,16],[0,0,7,169,10,0,0,65,0,0,0,0,6,6,0,75,0,0,0,0,10,9,192,25,0,0,7,173,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,3,13,0,0,65,61],[0,0,0,128,7,96,2,112,0,0,7,174,8,96,0,156,0,0,0,0,7,6,160,25,0,0,7,174,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,168,10,112,0,156],[0,0,0,0,9,8,160,25,0,0,0,64,8,112,2,112,0,0,7,168,10,112,0,156,0,0,0,0,8,7,160,25],[0,0,0,4,10,144,1,191,0,0,7,164,7,128,0,156,0,0,0,0,10,9,160,25,0,0,0,32,9,128,2,112],[0,0,7,164,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,168,10,128,0,156,0,0,4,10,0,0,33,61,0,0,0,1,9,144,1,144,0,0,4,10,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,23,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,15,0,0,65,61,0,0,0,0,9,0,0,75],[0,0,2,25,0,0,97,61,0,0,0,0,9,5,4,51,0,0,0,0,9,9,0,75,0,0,4,250,0,0,97,61],[0,0,0,0,9,8,4,51,0,0,7,173,9,144,1,151,0,0,0,248,10,112,2,16,0,0,0,0,9,154,1,159],[0,0,7,175,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,3,28,0,0,1,61,0,0,7,172,1,48,0,156,0,0,4,10,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,17,1,0,3,103,0,0,0,0,6,33,3,79,0,0,0,0,6,6,4,59,0,0,0,0,0,101,4,53],[0,0,4,250,0,0,97,61,0,0,0,248,7,64,2,16,0,0,7,169,8,0,0,65,0,0,0,0,4,4,0,75],[0,0,0,0,8,7,192,25,0,0,7,173,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,12,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,171,0,0,65,61,0,0,0,128,7,80,2,112],[0,0,7,174,8,80,0,156,0,0,0,0,7,5,160,25,0,0,7,174,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,168,10,112,0,156,0,0,0,0,9,8,160,25],[0,0,0,64,8,112,2,112,0,0,7,168,10,112,0,156,0,0,0,0,8,7,160,25,0,0,0,4,10,144,1,191],[0,0,7,164,7,128,0,156,0,0,0,0,10,9,160,25,0,0,0,32,9,128,2,112,0,0,7,164,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,168,10,128,0,156],[0,0,4,10,0,0,33,61,0,0,0,1,9,144,1,144,0,0,4,10,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,2,119,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,2,111,0,0,65,61,0,0,0,0,9,0,0,75],[0,0,2,121,0,0,97,61,0,0,0,0,9,4,4,51,0,0,0,0,9,9,0,75,0,0,4,250,0,0,97,61],[0,0,0,0,9,8,4,51,0,0,7,173,9,144,1,151,0,0,0,248,10,112,2,16,0,0,0,0,9,154,1,159],[0,0,7,175,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,187,0,0,1,61,0,0,7,172,1,48,0,156,0,0,4,10,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,17,1,0,3,103,0,0,0,0,6,33,3,79,0,0,0,0,6,6,4,59,0,0,0,0,0,101,4,53],[0,0,4,250,0,0,97,61,0,0,0,248,7,64,2,16,0,0,7,169,8,0,0,65,0,0,0,0,4,4,0,75],[0,0,0,0,8,7,192,25,0,0,7,173,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,12,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,8,0,0,65,61,0,0,0,128,7,80,2,112],[0,0,7,174,8,80,0,156,0,0,0,0,7,5,160,25,0,0,7,174,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,168,10,112,0,156,0,0,0,0,9,8,160,25],[0,0,0,64,8,112,2,112,0,0,7,168,10,112,0,156,0,0,0,0,8,7,160,25,0,0,0,4,10,144,1,191],[0,0,7,164,7,128,0,156,0,0,0,0,10,9,160,25,0,0,0,32,9,128,2,112,0,0,7,164,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,168,10,128,0,156],[0,0,4,10,0,0,33,61,0,0,0,1,9,144,1,144,0,0,4,10,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,2,215,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,2,207,0,0,65,61,0,0,0,0,9,0,0,75],[0,0,2,217,0,0,97,61,0,0,0,0,9,4,4,51,0,0,0,0,9,9,0,75,0,0,4,250,0,0,97,61],[0,0,0,0,9,8,4,51,0,0,7,173,9,144,1,151,0,0,0,248,10,112,2,16,0,0,0,0,9,154,1,159],[0,0,7,175,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,5,126,0,0,1,61,0,0,7,164,8,112,1,151,0,0,0,0,6,0,4,20,0,1,0,0,0,129,3,85],[0,0,0,0,7,114,0,25,0,0,0,0,2,39,0,75,0,0,0,0,2,0,0,25,0,0,0,1,2,0,64,57],[0,0,0,1,2,32,1,144,0,0,24,254,0,0,193,61,0,0,0,0,2,115,0,75,0,0,24,254,0,0,65,61],[0,12,0,0,0,13,0,29,0,11,0,0,0,12,0,29,0,0,0,0,1,129,3,79,0,0,0,0,2,117,0,73],[0,0,7,164,2,32,1,151,0,1,0,0,0,33,3,229,0,0,7,182,3,96,0,156,0,0,4,14,0,0,65,61],[0,0,0,68,1,64,0,57,0,0,7,198,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,188,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,164,1,0,0,65],[0,0,7,164,2,64,0,156,0,0,0,0,4,1,128,25,0,0,0,64,1,64,2,16,0,0,7,189,1,16,1,199],[0,0,30,141,0,1,4,48,0,0,7,172,7,80,0,156,0,0,4,10,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,2,4,59],[0,0,0,0,0,135,4,53,0,0,4,250,0,0,97,61,0,0,0,248,9,96,2,16,0,0,7,169,10,0,0,65],[0,0,0,0,6,6,0,75,0,0,0,0,10,9,192,25,0,0,7,173,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,10,0,0,0,6,0,29,0,0,0,32,6,96,0,57],[0,0,0,0,7,4,4,51,0,0,0,0,8,7,0,75,0,0,3,43,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,3,36,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,3,56,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,3,49,0,0,65,61],[0,0,0,0,4,70,0,25,0,0,0,0,0,4,4,53,0,0,0,10,6,0,0,41,0,0,0,0,4,100,0,73],[0,0,0,32,5,64,0,138,0,0,0,0,0,86,4,53,0,0,0,31,4,64,0,57,0,8,0,32,0,0,0,146],[0,0,0,8,4,64,1,127,0,0,0,0,5,100,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,9,0,0,0,5,0,29,0,0,7,168,5,80,0,156,0,0,4,10,0,0,33,61],[0,0,0,1,4,64,1,144,0,0,4,10,0,0,193,61,0,0,0,9,4,0,0,41,0,0,0,64,0,64,4,63],[0,0,7,172,4,64,0,156,0,0,4,10,0,0,33,61,0,0,0,12,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,9,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,176,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,7,0,0,0,6,0,29,0,0,0,0,5,5,4,59,0,0,0,128,6,80,0,140,0,0,6,40,0,0,65,61],[0,0,0,128,6,80,2,112,0,0,7,174,7,80,0,156,0,0,0,0,6,5,160,25,0,0,7,174,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,168,9,96,0,156],[0,0,0,0,8,7,160,25,0,0,0,64,7,96,2,112,0,0,7,168,9,96,0,156,0,0,0,0,7,6,160,25],[0,0,0,4,9,128,1,191,0,0,7,164,6,112,0,156,0,0,0,0,9,8,160,25,0,0,0,32,8,112,2,112],[0,0,7,164,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,8,7,112,1,127,0,0,0,7,7,112,0,41],[0,0,0,7,8,112,0,108,0,0,0,0,8,0,0,25,0,0,0,1,8,0,64,57,0,0,7,168,9,112,0,156],[0,0,4,10,0,0,33,61,0,0,0,1,8,128,1,144,0,0,4,10,0,0,193,61,0,0,0,64,0,112,4,63],[0,0,0,2,7,96,0,57,0,0,0,7,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,3,151,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,3,143,0,0,65,61,0,0,0,0,8,0,0,75],[0,0,3,153,0,0,97,61,0,0,0,7,8,0,0,41,0,0,0,0,8,8,4,51,0,0,0,0,8,8,0,75],[0,0,4,250,0,0,97,61,0,0,0,0,8,7,4,51,0,0,7,173,8,128,1,151,0,0,0,248,9,96,2,16],[0,0,0,0,8,137,1,159,0,0,7,175,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,7,6,0,0,41,0,0,0,33,6,96,0,57,0,0,6,57,0,0,1,61,0,0,7,172,7,64,0,156],[0,0,4,10,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,8,4,59,0,0,0,0,0,135,4,53],[0,0,4,250,0,0,97,61,0,0,0,248,9,80,2,16,0,0,7,169,10,0,0,65,0,0,0,0,5,5,0,75],[0,0,0,0,10,9,192,25,0,0,7,173,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,5,0,0,0,65,61,0,0,0,128,8,112,2,112,0,0,7,174,9,112,0,156],[0,0,0,0,8,7,160,25,0,0,7,174,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,168,11,128,0,156,0,0,0,0,10,9,160,25,0,0,0,64,9,128,2,112],[0,0,7,168,11,128,0,156,0,0,0,0,9,8,160,25,0,0,0,4,11,160,1,191,0,0,7,164,8,144,0,156],[0,0,0,0,11,10,160,25,0,0,0,32,10,144,2,112,0,0,7,164,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,168,11,144,0,156,0,0,4,10,0,0,33,61],[0,0,0,1,10,160,1,144,0,0,4,10,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,246,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,238,0,0,65,61,0,0,0,0,10,0,0,75,0,0,3,248,0,0,97,61],[0,0,0,0,10,5,4,51,0,0,0,0,10,10,0,75,0,0,4,250,0,0,97,61,0,0,0,0,10,9,4,51],[0,0,7,173,10,160,1,151,0,0,0,248,11,128,2,16,0,0,0,0,10,171,1,159,0,0,7,175,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,5,16,0,0,1,61],[0,0,7,172,7,64,0,156,0,0,4,242,0,0,161,61,0,0,7,201,1,0,0,65,0,0,0,0,0,16,4,53],[0,0,0,65,1,0,0,57,0,0,4,253,0,0,1,61,0,0,0,0,1,33,3,223,0,0,0,192,2,96,2,16],[0,0,7,183,2,32,1,151,0,0,7,184,2,32,1,199,0,1,0,0,0,33,3,181,0,0,0,0,1,33,3,175],[0,0,128,16,2,0,0,57,30,139,30,134,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,0,7,164,5,48,1,151,0,0,0,1,2,32,1,144,0,0,5,93,0,0,97,61,0,0,0,63,2,80,0,57],[0,0,7,185,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,168,4,32,0,156,0,0,4,10,0,0,33,61],[0,0,0,1,3,48,1,144,0,0,4,10,0,0,193,61,0,0,0,64,0,32,4,63,0,0,0,0,4,86,4,54],[0,0,0,17,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,55,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,47,0,0,65,61,0,0,0,0,7,0,0,75],[0,0,4,57,0,0,97,61,0,0,0,31,7,80,1,143,0,0,0,5,5,80,2,114,0,0,4,69,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,61,0,0,65,61,0,0,0,0,8,7,0,75,0,0,4,84,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,153,0,0,193,61,0,0,0,12,6,0,0,41],[0,0,0,0,1,99,0,73,0,0,0,35,5,16,0,138,0,10,2,4,0,96,0,61,0,0,0,10,1,32,3,96],[0,0,0,0,1,1,4,59,0,0,7,169,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,169,5,80,1,151,0,0,7,169,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,169,5,80,0,156,0,0,0,0,6,7,192,25],[0,0,0,0,5,6,0,75,0,0,0,11,5,0,0,41,0,0,0,204,0,0,193,61,0,0,0,0,4,4,4,51],[0,9,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,168,4,80,0,156,0,0,0,204,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,169,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,169,3,48,1,151,0,0,7,169,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,169,3,48,0,156,0,0,0,0,1,7,192,25],[0,0,0,0,1,1,0,75,0,0,0,204,0,0,193,61,0,0,0,64,1,0,4,61,0,0,0,32,3,16,0,57],[0,0,7,186,5,80,1,152,0,0,4,144,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,136,0,0,65,61],[0,0,0,0,2,0,0,75,0,0,4,146,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,168,5,32,0,156,0,0,4,10,0,0,33,61],[0,0,0,1,4,64,1,144,0,0,4,10,0,0,193,61,0,0,0,64,0,32,4,63,0,0,7,164,2,0,0,65],[0,0,7,164,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,164,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,164,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,181,1,16,1,199,0,0,128,16,2,0,0,57,30,139,30,129,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,0,11,10,0,0,41,0,0,0,12,3,0,0,41,0,0,0,204,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,10,3,0,0,41],[0,0,0,32,4,48,0,57,0,0,0,17,3,0,3,103,0,0,0,0,4,67,3,79,0,0,0,0,4,4,4,59],[0,0,7,169,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,169,5,80,1,151,0,0,7,169,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,169,5,80,0,156,0,0,0,0,6,7,192,25,0,0,0,0,1,1,4,59],[0,10,0,0,0,1,0,29,0,0,0,0,1,6,0,75,0,0,0,204,0,0,193,61,0,0,0,0,4,164,0,25],[0,0,0,0,1,67,3,79,0,0,0,0,1,1,4,59,0,0,7,168,5,16,0,156,0,0,0,204,0,0,33,61],[0,0,0,0,6,18,0,73,0,0,0,32,5,64,0,57,0,0,7,169,4,0,0,65,0,0,0,0,7,101,0,75],[0,0,0,0,7,0,0,25,0,0,0,0,7,4,32,25,0,0,7,169,6,96,1,151,0,0,7,169,8,80,1,151],[0,0,0,0,9,104,0,75,0,0,0,0,4,0,128,25,0,0,0,0,6,104,1,63,0,0,7,169,6,96,0,156],[0,0,0,0,4,7,192,25,0,0,0,0,4,4,0,75,0,0,0,204,0,0,193,61,0,0,7,164,6,80,1,151],[0,0,0,0,4,0,4,20,0,1,0,0,0,99,3,85,0,0,0,0,5,81,0,25,0,0,0,0,1,21,0,75],[0,0,0,0,1,0,0,25,0,0,0,1,1,0,64,57,0,0,0,1,1,16,1,144,0,0,24,254,0,0,193,61],[0,0,0,0,1,82,0,75,0,0,24,254,0,0,65,61,0,0,0,0,1,99,3,79,0,0,0,0,2,82,0,73],[0,0,7,164,2,32,1,151,0,1,0,0,0,33,3,229,0,0,7,182,3,64,0,156,0,0,11,164,0,0,65,61],[0,0,0,64,4,0,4,61,0,0,2,252,0,0,1,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,8,4,59],[0,0,0,0,0,135,4,53,0,0,5,120,0,0,193,61,0,0,7,201,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,202,1,0,0,65,0,0,30,141,0,1,4,48],[0,0,7,172,8,80,0,156,0,0,4,10,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,9,4,59],[0,0,0,0,0,152,4,53,0,0,4,250,0,0,97,61,0,0,0,248,10,112,2,16,0,0,7,169,11,0,0,65],[0,0,0,0,7,7,0,75,0,0,0,0,11,10,192,25,0,0,7,173,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,128,0,0,65,61,0,0,0,128,9,128,2,112],[0,0,7,174,10,128,0,156,0,0,0,0,9,8,160,25,0,0,7,174,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,168,12,144,0,156,0,0,0,0,11,10,160,25],[0,0,0,64,10,144,2,112,0,0,7,168,12,144,0,156,0,0,0,0,10,9,160,25,0,0,0,4,12,176,1,191],[0,0,7,164,9,160,0,156,0,0,0,0,12,11,160,25,0,0,0,32,11,160,2,112,0,0,7,164,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,168,12,160,0,156],[0,0,4,10,0,0,33,61,0,0,0,1,11,176,1,144,0,0,4,10,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,5,75,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,67,0,0,65,61,0,0,0,0,11,0,0,75],[0,0,5,77,0,0,97,61,0,0,0,0,11,7,4,51,0,0,0,0,11,11,0,75,0,0,4,250,0,0,97,61],[0,0,0,0,11,10,4,51,0,0,7,173,11,176,1,151,0,0,0,248,12,144,2,16,0,0,0,0,11,188,1,159],[0,0,7,175,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,144,0,0,1,61,0,0,0,31,3,80,1,143,0,0,0,5,2,80,2,114,0,0,5,104,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,97,0,0,65,61],[0,0,0,0,4,3,0,75,0,0,5,118,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,141,0,1,4,48],[0,0,0,248,9,80,2,16,0,0,7,169,10,0,0,65,0,0,0,0,5,5,0,75,0,0,0,0,10,9,192,25],[0,0,7,173,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,203,0,0,65,61,0,0,0,128,8,96,2,112,0,0,7,174,9,96,0,156,0,0,0,0,8,6,160,25],[0,0,7,174,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,168,11,128,0,156,0,0,0,0,10,9,160,25,0,0,0,64,9,128,2,112,0,0,7,168,11,128,0,156],[0,0,0,0,9,8,160,25,0,0,0,4,11,160,1,191,0,0,7,164,8,144,0,156,0,0,0,0,11,10,160,25],[0,0,0,32,10,144,2,112,0,0,7,164,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,168,11,144,0,156,0,0,4,10,0,0,33,61,0,0,0,1,10,160,1,144],[0,0,4,10,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,185,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,177,0,0,65,61,0,0,0,0,10,0,0,75,0,0,5,187,0,0,97,61,0,0,0,0,10,5,4,51],[0,0,0,0,10,10,0,75,0,0,4,250,0,0,97,61,0,0,0,0,10,9,4,51,0,0,7,173,10,160,1,151],[0,0,0,248,11,128,2,16,0,0,0,0,10,171,1,159,0,0,7,175,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,219,0,0,1,61,0,0,7,172,8,80,0,156],[0,0,4,10,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,9,4,59,0,0,0,0,0,152,4,53],[0,0,4,250,0,0,97,61,0,0,0,248,10,96,2,16,0,0,7,169,11,0,0,65,0,0,0,0,6,6,0,75],[0,0,0,0,11,10,192,25,0,0,7,173,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,240,0,0,65,61,0,0,0,128,9,128,2,112,0,0,7,174,10,128,0,156],[0,0,0,0,9,8,160,25,0,0,7,174,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,168,12,144,0,156,0,0,0,0,11,10,160,25,0,0,0,64,10,144,2,112],[0,0,7,168,12,144,0,156,0,0,0,0,10,9,160,25,0,0,0,4,12,176,1,191,0,0,7,164,9,160,0,156],[0,0,0,0,12,11,160,25,0,0,0,32,11,160,2,112,0,0,7,164,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,168,12,160,0,156,0,0,4,10,0,0,33,61],[0,0,0,1,11,176,1,144,0,0,4,10,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,6,22,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,14,0,0,65,61,0,0,0,0,11,0,0,75,0,0,6,24,0,0,97,61],[0,0,0,0,11,6,4,51,0,0,0,0,11,11,0,75,0,0,4,250,0,0,97,61,0,0,0,0,11,10,4,51],[0,0,7,173,11,176,1,151,0,0,0,248,12,144,2,16,0,0,0,0,11,188,1,159,0,0,7,175,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,7,0,0,0,1,61],[0,0,0,7,6,0,0,41,0,0,7,172,6,96,0,156,0,0,4,10,0,0,33,61,0,0,0,7,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,2,4,59,0,0,0,0,0,118,4,53,0,0,4,250,0,0,97,61,0,0,0,248,8,80,2,16],[0,0,7,169,9,0,0,65,0,0,0,0,5,5,0,75,0,0,0,0,9,8,192,25,0,0,7,173,5,112,1,151],[0,0,0,0,5,149,1,159,0,0,0,0,0,86,4,53,0,0,0,11,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,169,7,80,1,151,0,0,7,169,8,64,1,151,0,0,7,169,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,169,7,112,0,156,0,0,0,0,10,9,192,25,0,0,0,0,7,10,0,75],[0,0,0,204,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,168,9,112,0,156,0,0,0,204,0,0,33,61,0,0,0,0,9,115,0,73,0,0,0,32,8,128,0,57],[0,0,7,169,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,169,9,144,1,151,0,0,7,169,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,169,9,144,0,156,0,0,0,0,10,11,192,25,0,0,0,0,9,10,0,75],[0,0,0,204,0,0,193,61,0,0,0,1,9,112,0,140,0,0,8,120,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,169,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,169,2,32,1,151,0,0,7,169,9,32,0,156],[0,0,0,0,8,0,128,25,0,0,7,169,2,32,1,103,0,0,7,169,2,32,0,156,0,0,0,0,8,7,192,25],[0,6,0,96,0,0,0,61,0,0,0,0,2,8,0,75,0,0,9,117,0,0,193,61,0,0,0,64,2,0,4,61],[0,6,0,0,0,2,0,29,0,0,7,172,2,32,0,156,0,0,4,10,0,0,33,61,0,0,0,6,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,175,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,9,117,0,0,1,61],[0,0,7,172,9,112,0,156,0,0,4,10,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,10,4,59],[0,0,0,0,0,169,4,53,0,0,4,250,0,0,97,61,0,0,0,248,11,128,2,16,0,0,7,169,12,0,0,65],[0,0,0,0,8,8,0,75,0,0,0,0,12,11,192,25,0,0,7,173,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,172,8,144,0,156,0,0,4,10,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,176,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,10,0,0,0,6,0,29,0,0,0,128,10,96,0,140,0,0,7,194,0,0,65,61],[0,0,0,10,6,0,0,41,0,0,0,128,10,96,2,112,0,0,7,174,11,96,0,156,0,0,0,0,10,6,160,25],[0,0,7,174,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,168,13,160,0,156,0,0,0,0,12,11,160,25,0,0,0,64,11,160,2,112,0,0,7,168,13,160,0,156],[0,0,0,0,11,10,160,25,0,0,0,4,13,192,1,191,0,0,7,164,10,176,0,156,0,0,0,0,13,12,160,25],[0,0,0,32,12,176,2,112,0,0,7,164,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,168,13,176,0,156,0,0,4,10,0,0,33,61,0,0,0,1,12,192,1,144],[0,0,4,10,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,221,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,6,213,0,0,65,61,0,0,0,0,6,0,0,75,0,0,6,223,0,0,97,61,0,0,0,0,6,8,4,51],[0,0,0,0,6,6,0,75,0,0,4,250,0,0,97,61,0,0,0,0,6,11,4,51,0,0,7,173,6,96,1,151],[0,0,0,248,12,160,2,16,0,0,0,0,6,108,1,159,0,0,7,175,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,10,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,7,212,0,0,1,61],[0,0,7,172,9,96,0,156,0,0,4,10,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,10,4,59],[0,0,0,0,0,169,4,53,0,0,4,250,0,0,97,61,0,0,0,248,11,128,2,16,0,0,7,169,12,0,0,65],[0,0,0,0,8,8,0,75,0,0,0,0,12,11,192,25,0,0,7,173,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,10,0,64,0,112,0,146,0,0,0,10,9,16,3,96],[0,0,0,0,9,9,4,59,0,0,0,128,10,144,0,140,0,0,7,78,0,0,65,61,0,0,0,128,10,144,2,112],[0,0,7,174,11,144,0,156,0,0,0,0,10,9,160,25,0,0,7,174,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,168,13,160,0,156,0,0,0,0,12,11,160,25],[0,0,0,64,11,160,2,112,0,0,7,168,13,160,0,156,0,0,0,0,11,10,160,25,0,0,0,4,13,192,1,191],[0,0,7,164,10,176,0,156,0,0,0,0,13,12,160,25,0,0,0,32,12,176,2,112,0,0,7,164,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,168,13,176,0,156],[0,0,4,10,0,0,33,61,0,0,0,1,12,192,1,144,0,0,4,10,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,59,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,7,51,0,0,65,61,0,0,0,0,7,0,0,75],[0,0,7,61,0,0,97,61,0,0,0,0,7,8,4,51,0,0,0,0,7,7,0,75,0,0,4,250,0,0,97,61],[0,0,0,0,7,11,4,51,0,0,7,173,7,112,1,151,0,0,0,248,12,160,2,16,0,0,0,0,7,124,1,159],[0,0,7,175,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,95,0,0,1,61,0,0,7,172,7,128,0,156,0,0,4,10,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,11,7,4,59,0,0,0,0,0,186,4,53,0,0,4,250,0,0,97,61],[0,0,0,248,7,144,2,16,0,0,7,169,12,0,0,65,0,0,0,0,9,9,0,75,0,0,0,0,12,7,192,25],[0,0,7,173,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,172,7,160,0,156,0,0,4,10,0,0,33,61,0,0,0,10,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,176,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,10,0,0,0,7,0,29,0,0,0,128,11,112,0,140,0,0,8,162,0,0,65,61,0,0,0,10,7,0,0,41],[0,0,0,128,11,112,2,112,0,0,7,174,12,112,0,156,0,0,0,0,11,7,160,25,0,0,7,174,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,168,14,176,0,156],[0,0,0,0,13,12,160,25,0,0,0,64,12,176,2,112,0,0,7,168,14,176,0,156,0,0,0,0,12,11,160,25],[0,0,0,4,14,208,1,191,0,0,7,164,11,192,0,156,0,0,0,0,14,13,160,25,0,0,0,32,13,192,2,112],[0,0,7,164,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,9,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,168,14,192,0,156,0,0,4,10,0,0,33,61,0,0,0,1,13,208,1,144],[0,0,4,10,0,0,193,61,0,0,0,64,0,192,4,63,0,0,0,9,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,174,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,166,0,0,65,61,0,0,0,0,7,0,0,75,0,0,7,176,0,0,97,61],[0,0,0,0,7,9,4,51,0,0,0,0,7,7,0,75,0,0,4,250,0,0,97,61,0,0,0,0,7,12,4,51],[0,0,7,173,7,112,1,151,0,0,0,9,13,0,0,41,0,0,0,248,11,208,2,16,0,0,0,0,7,123,1,159],[0,0,7,175,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,10,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,8,180,0,0,1,61,0,0,7,172,6,128,0,156,0,0,4,10,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,11,6,4,59,0,0,0,0,0,186,4,53,0,0,4,250,0,0,97,61],[0,0,0,10,13,0,0,41,0,0,0,248,6,208,2,16,0,0,7,169,12,0,0,65,0,0,0,0,13,13,0,75],[0,0,0,0,12,6,192,25,0,0,7,173,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,7,225,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,7,218,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,7,238,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,7,231,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,7,251,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,7,244,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,8,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,1,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,21,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,14,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,8,34,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,27,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,168,5,112,0,156,0,0,4,10,0,0,33,61],[0,0,0,1,4,64,1,144,0,0,4,10,0,0,193,61,0,0,0,64,0,112,4,63,0,0,0,12,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,169,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,169,5,80,1,151,0,0,7,169,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,169,5,80,0,156,0,0,0,0,8,9,192,25],[0,0,0,0,5,8,0,75,0,0,0,11,5,0,0,41,0,0,0,204,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,168,8,64,0,156,0,0,0,204,0,0,33,61],[0,0,0,0,8,66,0,73,0,0,0,32,5,80,0,57,0,0,7,169,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,169,8,128,1,151,0,0,7,169,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,169,8,128,0,156],[0,0,0,0,9,10,192,25,0,0,0,0,8,9,0,75,0,0,0,204,0,0,193,61,0,0,0,1,8,64,0,140],[0,0,10,100,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,169,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,169,8,128,1,151,0,0,7,169,11,128,0,156,0,0,0,0,10,0,128,25,0,0,7,169,8,128,1,103],[0,0,7,169,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,187,0,0,193,61,0,0,7,172,8,112,0,156,0,0,4,10,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,175,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,187,0,0,1,61],[0,0,0,64,8,0,4,61,0,6,0,0,0,8,0,29,0,0,0,56,8,112,0,140,0,0,9,101,0,0,65,61],[0,0,0,32,9,112,2,112,0,0,7,164,8,112,0,156,0,0,0,0,9,7,160,25,0,0,7,164,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,6,10,0,0,41,0,0,7,172,10,160,0,156],[0,0,4,10,0,0,33,61,0,0,0,0,8,152,1,159,0,0,0,6,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,2,4,59],[0,0,0,0,0,41,4,53,0,0,4,250,0,0,97,61,0,0,7,173,2,32,1,151,0,0,0,248,10,128,2,16],[0,0,0,0,2,42,1,159,0,0,7,177,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,6,7,0,0,41,0,0,0,33,7,112,0,57],[0,0,0,0,0,39,4,53,0,0,9,117,0,0,1,61,0,0,7,172,7,144,0,156,0,0,4,10,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,12,7,4,59,0,0,0,0,0,203,4,53,0,0,4,250,0,0,97,61],[0,0,0,10,14,0,0,41,0,0,0,248,7,224,2,16,0,0,7,169,13,0,0,65,0,0,0,0,14,14,0,75],[0,0,0,0,13,7,192,25,0,0,7,173,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,8,193,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,8,186,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,8,206,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,8,199,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,8,219,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,8,212,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,8,232,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,8,225,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,8,245,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,8,238,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,2,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,8,251,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,15,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,8,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,168,5,96,0,156],[0,0,4,10,0,0,33,61,0,0,0,1,4,64,1,144,0,0,4,10,0,0,193,61,0,0,0,64,0,96,4,63],[0,0,0,12,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,169,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,169,5,80,1,151,0,0,7,169,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,169,5,80,0,156],[0,0,0,0,8,9,192,25,0,0,0,0,5,8,0,75,0,0,0,11,5,0,0,41,0,0,0,204,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,168,8,64,0,156],[0,0,0,204,0,0,33,61,0,0,0,0,8,66,0,73,0,0,0,32,5,80,0,57,0,0,7,169,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,169,8,128,1,151],[0,0,7,169,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,169,8,128,0,156,0,0,0,0,9,10,192,25,0,0,0,0,8,9,0,75,0,0,0,204,0,0,193,61],[0,0,0,1,8,64,0,140,0,0,12,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,7,169,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,169,8,128,1,151,0,0,7,169,11,128,0,156,0,0,0,0,10,0,128,25],[0,0,7,169,8,128,1,103,0,0,7,169,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,196,0,0,193,61,0,0,7,172,8,96,0,156,0,0,4,10,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,175,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,196,0,0,1,61,0,0,0,6,8,0,0,41,0,0,7,172,8,128,0,156,0,0,4,10,0,0,33,61],[0,0,0,6,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,2,4,59,0,0,0,0,0,40,4,53,0,0,4,250,0,0,97,61],[0,0,0,248,7,112,2,16,0,0,7,173,2,32,1,151,0,0,0,0,2,114,1,159,0,0,7,169,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,9,213,0,0,193,61,0,0,7,169,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,169,5,80,1,151],[0,0,7,169,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,169,5,80,0,156,0,0,0,0,6,7,192,25,0,0,0,0,5,6,0,75,0,0,0,11,5,0,0,41],[0,0,0,204,0,0,193,61,0,0,0,10,6,0,0,41,0,0,0,0,6,6,4,51,0,0,0,128,7,0,4,61],[0,0,0,9,8,0,0,41,0,0,0,0,8,8,4,51,0,0,0,7,9,0,0,41,0,0,0,0,9,9,4,51],[0,0,0,6,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,168,11,64,0,156,0,0,0,204,0,0,33,61,0,0,0,0,11,67,0,73],[0,0,0,32,5,80,0,57,0,0,7,169,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,169,11,176,1,151,0,0,7,169,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,169,11,176,0,156,0,0,0,0,12,13,192,25],[0,0,0,0,11,12,0,75,0,0,0,204,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,168,6,96,1,151,0,0,0,56,8,96,0,140],[0,0,10,139,0,0,65,61,0,0,0,32,9,96,2,112,0,0,7,164,8,96,0,156,0,0,0,0,9,6,160,25],[0,0,7,164,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,172,10,112,0,156],[0,0,4,10,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,9,4,59],[0,0,0,0,0,147,4,53,0,0,4,250,0,0,97,61,0,0,7,173,9,144,1,151,0,0,0,248,10,128,2,16],[0,0,0,0,9,154,1,159,0,0,7,179,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,154,0,0,1,61,0,0,7,170,1,0,0,65,0,0,0,0,0,16,4,57,0,0,7,164,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,7,164,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,7,171,1,16,1,199,0,0,128,11,2,0,0,57,30,139,30,129,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,25,2,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,44,0,0,65,61,0,0,0,128,1,32,2,112,0,0,7,174,3,32,0,156,0,0,0,0,1,2,160,25],[0,0,7,174,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,168,6,16,0,156,0,0,0,0,5,3,160,25,0,0,0,64,3,16,2,112,0,0,7,168,6,16,0,156],[0,0,0,0,3,1,160,25,0,0,0,4,1,80,1,191,0,0,7,164,6,48,0,156,0,0,0,0,1,5,160,25],[0,0,0,32,6,48,2,112,0,0,7,164,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,8,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,168,6,16,0,156,0,0,4,10,0,0,33,61,0,0,0,1,3,48,1,144,0,0,4,10,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,17,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,10,26,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,10,18,0,0,65,61,0,0,0,0,7,0,0,75,0,0,10,28,0,0,97,61],[0,0,0,0,7,4,4,51,0,0,0,0,7,7,0,75,0,0,4,250,0,0,97,61,0,0,0,0,7,6,4,51],[0,0,7,173,7,112,1,151,0,0,0,248,8,80,2,16,0,0,0,0,7,120,1,159,0,0,7,175,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,62,0,0,1,61],[0,0,7,172,1,64,0,156,0,0,4,10,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,17,1,0,3,103],[0,0,0,0,6,49,3,79,0,0,0,0,6,6,4,59,0,0,0,0,0,101,4,53,0,0,4,250,0,0,97,61],[0,0,0,248,7,32,2,16,0,0,7,169,8,0,0,65,0,0,0,0,2,2,0,75,0,0,0,0,8,7,192,25],[0,0,7,173,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,76,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,69,0,0,65,61],[0,0,0,0,4,86,0,25,0,0,7,199,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,8,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,168,6,64,0,156,0,0,4,10,0,0,33,61,0,0,0,1,5,80,1,144,0,0,4,10,0,0,193,61],[0,0,0,12,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,9,123,0,0,1,61],[0,0,0,56,8,64,0,140,0,0,12,171,0,0,65,61,0,0,0,32,9,64,2,112,0,0,7,164,8,64,0,156],[0,0,0,0,9,4,160,25,0,0,7,164,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,172,10,112,0,156,0,0,4,10,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,10,4,59,0,0,0,0,0,169,4,53,0,0,4,250,0,0,97,61,0,0,7,173,10,160,1,151],[0,0,0,248,11,128,2,16,0,0,0,0,10,171,1,159,0,0,7,177,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,187,0,0,1,61,0,0,7,172,8,112,0,156],[0,0,4,10,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,8,4,59,0,0,0,0,0,131,4,53],[0,0,4,250,0,0,97,61,0,0,7,173,8,128,1,151,0,0,0,248,6,96,2,16,0,0,0,0,6,134,1,159],[0,0,7,178,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,167,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,160,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,180,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,173,0,0,65,61],[0,0,0,0,7,120,0,25,0,0,0,0,0,7,4,53,0,0,0,10,12,0,0,41,0,0,0,0,8,12,4,51],[0,0,0,0,9,8,0,75,0,0,10,194,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,187,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,208,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,201,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,222,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,215,0,0,65,61,0,0,0,0,7,120,0,25,0,0,0,0,0,7,4,53],[0,0,0,6,12,0,0,41,0,0,0,0,8,12,4,51,0,0,0,0,9,8,0,75,0,0,10,236,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,229,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,251,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,243,0,0,65,61,0,0,0,0,9,7,0,75],[0,0,11,10,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,11,23,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,11,16,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,8,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,168,4,16,0,156,0,0,4,10,0,0,33,61],[0,0,0,1,2,32,1,144,0,0,4,10,0,0,193,61,0,0,0,64,0,16,4,63,0,0,7,164,1,0,0,65],[0,0,7,164,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,164,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,164,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,181,1,16,1,199,0,0,128,16,2,0,0,57,30,139,30,129,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,0,11,3,0,0,41,0,0,0,12,2,0,0,41,0,0,0,204,0,0,97,61],[0,12,0,0,0,2,0,29,0,0,0,17,2,0,3,103,0,11,0,0,0,3,0,29,0,0,0,0,3,50,3,79],[0,0,0,0,1,1,4,59,0,10,0,0,0,1,0,29,0,17,0,0,0,1,0,29,0,0,0,0,1,3,4,59],[0,0,0,1,3,16,0,140,0,0,13,254,0,0,33,61,0,0,0,0,3,1,0,75,0,0,14,210,0,0,97,61],[0,0,0,1,1,16,0,140,0,0,15,126,0,0,193,61,0,0,0,0,1,0,4,21,0,10,0,0,0,1,0,29],[0,0,7,170,1,0,0,65,0,0,0,0,0,16,4,57,0,0,7,164,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,7,164,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,7,171,1,16,1,199],[0,0,128,11,2,0,0,57,30,139,30,129,0,0,4,15,0,0,0,1,2,32,1,144,0,0,25,2,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,229,0,0,65,61],[0,0,0,128,1,64,2,112,0,0,7,174,2,64,0,156,0,0,0,0,1,4,160,25,0,0,7,174,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,168,6,16,0,156],[0,0,0,0,5,2,160,25,0,0,0,64,2,16,2,112,0,0,7,168,6,16,0,156,0,0,0,0,2,1,160,25],[0,0,0,4,1,80,1,191,0,0,7,164,6,32,0,156,0,0,0,0,1,5,160,25,0,0,0,32,6,32,2,112],[0,0,7,164,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,168,6,16,0,156,0,0,4,10,0,0,33,61,0,0,0,1,2,32,1,144,0,0,4,10,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,17,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,11,146,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,11,138,0,0,65,61,0,0,0,0,7,0,0,75,0,0,11,148,0,0,97,61],[0,0,0,0,7,3,4,51,0,0,0,0,7,7,0,75,0,0,4,250,0,0,97,61,0,0,0,0,7,6,4,51],[0,0,7,173,7,112,1,151,0,0,0,248,8,80,2,16,0,0,0,0,7,120,1,159,0,0,7,175,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,247,0,0,1,61],[0,0,0,0,1,33,3,223,0,0,0,192,2,64,2,16,0,0,7,183,2,32,1,151,0,0,7,184,2,32,1,199],[0,1,0,0,0,33,3,181,0,0,0,0,1,33,3,175,0,0,128,16,2,0,0,57,30,139,30,134,0,0,4,15],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,7,164,4,48,1,151,0,0,0,1,2,32,1,144],[0,0,13,28,0,0,97,61,0,0,0,63,2,64,0,57,0,0,7,185,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,168,6,32,0,156,0,0,4,10,0,0,33,61,0,0,0,1,3,48,1,144,0,0,4,10,0,0,193,61],[0,0,0,64,0,32,4,63,0,0,0,0,2,69,4,54,0,0,0,17,3,0,3,103,0,0,0,31,6,64,0,57],[0,0,0,5,6,96,2,114,0,0,11,204,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,196,0,0,65,61],[0,0,0,0,6,0,0,75,0,0,11,206,0,0,97,61,0,0,0,31,6,64,1,143,0,0,0,5,4,64,2,114],[0,0,11,218,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,210,0,0,65,61,0,0,0,0,7,6,0,75,0,0,11,233,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,153,0,0,193,61],[0,0,0,12,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,11,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,10,13,0,0,41],[0,0,0,0,0,210,4,53,0,0,1,128,2,16,0,57,0,0,0,9,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,190,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,191,3,16,0,156,0,0,4,10,0,0,33,61,0,0,1,224,3,16,0,57],[0,0,0,64,0,48,4,63,0,0,7,164,4,0,0,65,0,0,7,164,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,164,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,164,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,181,1,16,1,199],[0,0,128,16,2,0,0,57,30,139,30,129,0,0,4,15,0,0,0,1,2,32,1,144,0,0,0,204,0,0,97,61],[0,0,0,0,1,1,4,59,0,9,0,0,0,1,0,29,0,0,0,64,1,0,4,61,0,10,0,0,0,1,0,29],[0,0,7,170,1,0,0,65,0,0,0,0,0,16,4,57,0,0,0,0,1,0,4,20,0,0,7,164,2,16,0,156],[0,0,7,164,1,0,128,65,0,0,0,192,1,16,2,16,0,0,7,171,1,16,1,199,0,0,128,11,2,0,0,57],[30,139,30,129,0,0,4,15,0,0,0,1,2,32,1,144,0,0,25,2,0,0,97,61,0,0,0,10,4,0,0,41],[0,0,0,32,2,64,0,57,0,0,0,0,1,1,4,59,0,0,7,192,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,193,3,0,0,65],[0,0,0,0,0,49,4,53,0,0,0,64,1,64,0,57,0,0,7,194,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,195,1,64,0,156,0,0,4,10,0,0,33,61],[0,0,0,10,4,0,0,41,0,0,0,160,1,64,0,57,0,0,0,64,0,16,4,63,0,0,7,164,1,0,0,65],[0,0,7,164,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,164,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,164,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,181,1,16,1,199,0,0,128,16,2,0,0,57,30,139,30,129,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,0,204,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,9,4,0,0,41,0,0,0,0,0,66,4,53,0,0,0,32,2,16,0,57],[0,0,7,196,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,197,3,16,0,156,0,0,4,10,0,0,33,61],[0,0,0,128,3,16,0,57,0,0,0,64,0,48,4,63,0,0,7,164,3,0,0,65,0,0,7,164,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,164,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,164,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,11,53,0,0,1,61,0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57,0,0,7,187,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,188,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,164,2,0,0,65,0,0,7,164,3,16,0,156,0,0,0,0,1,2,128,25],[0,0,0,64,1,16,2,16,0,0,7,189,1,16,1,199,0,0,30,141,0,1,4,48,0,0,7,172,8,112,0,156],[0,0,4,10,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,9,4,59,0,0,0,0,0,152,4,53],[0,0,4,250,0,0,97,61,0,0,0,248,10,64,2,16,0,0,7,173,9,144,1,151,0,0,0,0,9,169,1,159],[0,0,7,169,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,172,9,112,0,156,0,0,4,10,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,11,2,4,59],[0,0,0,0,0,185,4,53,0,0,4,250,0,0,97,61,0,0,7,173,2,176,1,151,0,0,7,178,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,168,9,144,1,151,0,0,0,56,13,144,0,140,0,0,13,55,0,0,65,61,0,0,0,32,13,144,2,112],[0,0,7,164,12,144,0,156,0,0,0,0,13,9,160,25,0,0,7,164,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,172,14,160,0,156,0,0,4,10,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,4,250,0,0,97,61,0,0,0,248,11,192,2,16],[0,0,0,0,2,43,1,159,0,0,7,179,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,13,68,0,0,1,61,0,0,0,56,8,64,0,140,0,0,13,180,0,0,65,61,0,0,0,32,9,64,2,112],[0,0,7,164,8,64,0,156,0,0,0,0,9,4,160,25,0,0,7,164,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,172,10,96,0,156,0,0,4,10,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,10,4,59,0,0,0,0,0,169,4,53,0,0,4,250,0,0,97,61],[0,0,7,173,10,160,1,151,0,0,0,248,11,128,2,16,0,0,0,0,10,171,1,159,0,0,7,177,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,196,0,0,1,61],[0,0,0,31,3,64,1,143,0,0,0,5,2,64,2,114,0,0,13,39,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,13,32,0,0,65,61,0,0,0,0,5,3,0,75],[0,0,13,53,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,141,0,1,4,48,0,0,7,172,13,160,0,156],[0,0,4,10,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,4,250,0,0,97,61],[0,0,0,248,9,144,2,16,0,0,0,0,2,41,1,159,0,0,7,178,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,180,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,13,84,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,13,77,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,13,97,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,13,90,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,13,110,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,13,103,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,13,125,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,13,117,0,0,65,61,0,0,0,0,10,6,0,75,0,0,13,140,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,13,153,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,13,146,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,168,4,16,0,156,0,0,4,10,0,0,33,61,0,0,0,1,3,48,1,144,0,0,4,10,0,0,193,61],[0,0,0,64,0,16,4,63,0,0,7,164,1,0,0,65,0,0,7,164,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,164,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,11,49,0,0,1,61],[0,0,7,172,8,96,0,156,0,0,4,10,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,9,4,59],[0,0,0,0,0,152,4,53,0,0,4,250,0,0,97,61,0,0,0,248,10,64,2,16,0,0,7,173,9,144,1,151],[0,0,0,0,9,169,1,159,0,0,7,169,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,172,9,96,0,156,0,0,4,10,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,11,2,4,59,0,0,0,0,0,185,4,53,0,0,4,250,0,0,97,61,0,0,7,173,2,176,1,151],[0,0,7,178,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,168,9,144,1,151,0,0,0,56,13,144,0,140,0,0,14,85,0,0,65,61],[0,0,0,32,13,144,2,112,0,0,7,164,12,144,0,156,0,0,0,0,13,9,160,25,0,0,7,164,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,172,14,160,0,156,0,0,4,10,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,4,250,0,0,97,61],[0,0,0,248,11,192,2,16,0,0,0,0,2,43,1,159,0,0,7,179,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,98,0,0,1,61,0,0,0,2,3,16,0,140,0,0,15,36,0,0,97,61],[0,0,0,113,1,16,0,140,0,0,15,126,0,0,193,61,0,0,0,11,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,12,4,16,0,106,0,0,0,35,4,64,0,138],[0,0,0,0,3,3,4,59,0,0,7,169,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,169,4,64,1,151,0,0,7,169,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,169,4,64,0,156,0,0,0,0,5,6,192,25],[0,0,0,0,4,5,0,75,0,0,0,204,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,168,4,32,0,156,0,0,0,204,0,0,33,61,0,0,0,0,4,33,0,73],[0,0,0,32,1,48,0,57,0,0,7,169,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,169,4,64,1,151,0,0,7,169,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,169,4,64,0,156,0,0,0,0,3,5,192,25],[0,0,0,0,3,3,0,75,0,0,0,204,0,0,193,61,30,139,29,229,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,10,3,0,0,41,0,0,0,0,0,49,4,53,0,0,7,203,3,32,0,156,0,0,4,10,0,0,33,61],[0,0,0,96,3,32,0,57,0,0,0,64,0,48,4,63,0,0,7,164,3,0,0,65,0,0,7,164,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,164,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,164,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,181,1,16,1,199,0,0,128,16,2,0,0,57,30,139,30,129,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,0,204,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,17,4,0,0,41,0,0,0,0,0,67,4,53,0,0,0,0,0,18,4,53,0,0,7,164,1,0,0,65],[0,0,7,164,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,64,1,32,2,16,0,0,7,204,1,16,1,199],[0,0,30,140,0,1,4,46,0,0,7,172,13,160,0,156,0,0,4,10,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,4,250,0,0,97,61,0,0,0,248,9,144,2,16,0,0,0,0,2,41,1,159],[0,0,7,178,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,181,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,114,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,107,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,14,127,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,14,120,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,14,140,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,14,133,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,14,155,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,147,0,0,65,61,0,0,0,0,10,7,0,75],[0,0,14,170,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,14,183,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,14,176,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,168,4,16,0,156,0,0,4,10,0,0,33,61],[0,0,0,1,3,48,1,144,0,0,4,10,0,0,193,61,0,0,0,64,0,16,4,63,0,0,7,164,1,0,0,65],[0,0,7,164,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,164,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,11,49,0,0,1,61,0,0,0,64,1,0,4,61,0,10,0,0,0,1,0,29],[0,0,0,11,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,15,133,0,0,65,61,0,0,0,128,1,48,2,112,0,0,7,174,5,48,0,156],[0,0,0,0,1,3,160,25,0,0,7,174,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,168,7,16,0,156,0,0,0,0,6,5,160,25,0,0,0,64,5,16,2,112],[0,0,7,168,7,16,0,156,0,0,0,0,5,1,160,25,0,0,0,4,1,96,1,191,0,0,7,164,7,80,0,156],[0,0,0,0,1,6,160,25,0,0,0,32,6,80,2,112,0,0,7,164,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,168,7,16,0,156,0,0,4,10,0,0,33,61],[0,0,0,1,6,96,1,144,0,0,4,10,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,15,16,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,15,8,0,0,65,61],[0,0,0,0,7,0,0,75,0,0,15,18,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,4,250,0,0,97,61,0,0,0,0,7,6,4,51,0,0,7,173,7,112,1,151],[0,0,0,248,8,80,2,16,0,0,0,0,7,120,1,159,0,0,7,175,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,15,152,0,0,1,61],[0,0,0,0,1,0,4,21,0,10,0,0,0,1,0,29,0,0,7,170,1,0,0,65,0,0,0,0,0,16,4,57],[0,0,7,164,1,0,0,65,0,0,0,0,2,0,4,20,0,0,7,164,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,192,1,32,2,16,0,0,7,171,1,16,1,199,0,0,128,11,2,0,0,57,30,139,30,129,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,25,2,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,69,0,0,65,61,0,0,0,128,1,64,2,112,0,0,7,174,2,64,0,156],[0,0,0,0,1,4,160,25,0,0,7,174,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,168,6,16,0,156,0,0,0,0,5,2,160,25,0,0,0,64,2,16,2,112],[0,0,7,168,6,16,0,156,0,0,0,0,2,1,160,25,0,0,0,4,1,80,1,191,0,0,7,164,6,32,0,156],[0,0,0,0,1,5,160,25,0,0,0,32,6,32,2,112,0,0,7,164,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,168,6,16,0,156,0,0,4,10,0,0,33,61],[0,0,0,1,2,32,1,144,0,0,4,10,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,17,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,108,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,100,0,0,65,61],[0,0,0,0,7,0,0,75,0,0,15,110,0,0,97,61,0,0,0,0,7,3,4,51,0,0,0,0,7,7,0,75],[0,0,4,250,0,0,97,61,0,0,0,0,7,6,4,51,0,0,7,173,7,112,1,151,0,0,0,248,8,80,2,16],[0,0,0,0,7,120,1,159,0,0,7,175,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,87,0,0,1,61,0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57],[0,0,7,205,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,159,0,0,1,61,0,0,0,10,1,0,0,41,0,0,7,172,1,16,0,156,0,0,4,10,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,6,4,59],[0,0,0,0,0,101,4,53,0,0,4,250,0,0,97,61,0,0,0,248,7,48,2,16,0,0,7,169,8,0,0,65],[0,0,0,0,3,3,0,75,0,0,0,0,8,7,192,25,0,0,7,173,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,165,0,0,65,61,0,0,0,128,6,80,2,112],[0,0,7,174,7,80,0,156,0,0,0,0,6,5,160,25,0,0,7,174,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,168,9,96,0,156,0,0,0,0,8,7,160,25],[0,0,0,64,7,96,2,112,0,0,7,168,9,96,0,156,0,0,0,0,7,6,160,25,0,0,0,4,9,128,1,191],[0,0,7,164,6,112,0,156,0,0,0,0,9,8,160,25,0,0,0,32,8,112,2,112,0,0,7,164,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,168,9,112,0,156],[0,0,4,10,0,0,33,61,0,0,0,1,8,128,1,144,0,0,4,10,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,15,211,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,15,203,0,0,65,61,0,0,0,0,8,0,0,75],[0,0,15,213,0,0,97,61,0,0,0,0,8,3,4,51,0,0,0,0,8,8,0,75,0,0,4,250,0,0,97,61],[0,0,0,0,8,7,4,51,0,0,7,173,8,128,1,151,0,0,0,248,9,96,2,16,0,0,0,0,8,137,1,159],[0,0,7,175,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,181,0,0,1,61,0,0,7,172,1,48,0,156,0,0,4,10,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,17,1,0,3,103,0,0,0,0,6,33,3,79,0,0,0,0,6,6,4,59,0,0,0,0,0,101,4,53],[0,0,4,250,0,0,97,61,0,0,0,248,7,64,2,16,0,0,7,169,8,0,0,65,0,0,0,0,4,4,0,75],[0,0,0,0,8,7,192,25,0,0,7,173,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,12,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,2,0,0,65,61,0,0,0,128,7,96,2,112],[0,0,7,174,8,96,0,156,0,0,0,0,7,6,160,25,0,0,7,174,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,168,10,112,0,156,0,0,0,0,9,8,160,25],[0,0,0,64,8,112,2,112,0,0,7,168,10,112,0,156,0,0,0,0,8,7,160,25,0,0,0,4,10,144,1,191],[0,0,7,164,7,128,0,156,0,0,0,0,10,9,160,25,0,0,0,32,9,128,2,112,0,0,7,164,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,168,10,128,0,156],[0,0,4,10,0,0,33,61,0,0,0,1,9,144,1,144,0,0,4,10,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,51,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,43,0,0,65,61,0,0,0,0,9,0,0,75],[0,0,16,53,0,0,97,61,0,0,0,0,9,5,4,51,0,0,0,0,9,9,0,75,0,0,4,250,0,0,97,61],[0,0,0,0,9,8,4,51,0,0,7,173,9,144,1,151,0,0,0,248,10,112,2,16,0,0,0,0,9,154,1,159],[0,0,7,175,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,18,0,0,1,61,0,0,7,172,1,48,0,156,0,0,4,10,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,17,1,0,3,103,0,0,0,0,6,33,3,79,0,0,0,0,6,6,4,59,0,0,0,0,0,101,4,53],[0,0,4,250,0,0,97,61,0,0,0,248,7,64,2,16,0,0,7,169,8,0,0,65,0,0,0,0,4,4,0,75],[0,0,0,0,8,7,192,25,0,0,7,173,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,12,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,95,0,0,65,61,0,0,0,128,7,96,2,112],[0,0,7,174,8,96,0,156,0,0,0,0,7,6,160,25,0,0,7,174,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,168,10,112,0,156,0,0,0,0,9,8,160,25],[0,0,0,64,8,112,2,112,0,0,7,168,10,112,0,156,0,0,0,0,8,7,160,25,0,0,0,4,10,144,1,191],[0,0,7,164,7,128,0,156,0,0,0,0,10,9,160,25,0,0,0,32,9,128,2,112,0,0,7,164,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,168,10,128,0,156],[0,0,4,10,0,0,33,61,0,0,0,1,9,144,1,144,0,0,4,10,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,147,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,139,0,0,65,61,0,0,0,0,9,0,0,75],[0,0,16,149,0,0,97,61,0,0,0,0,9,5,4,51,0,0,0,0,9,9,0,75,0,0,4,250,0,0,97,61],[0,0,0,0,9,8,4,51,0,0,7,173,9,144,1,151,0,0,0,248,10,112,2,16,0,0,0,0,9,154,1,159],[0,0,7,175,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,111,0,0,1,61,0,0,7,172,6,48,0,156,0,0,4,10,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,7,4,59,0,0,0,0,0,118,4,53,0,0,4,250,0,0,97,61,0,0,0,248,8,80,2,16],[0,0,7,169,9,0,0,65,0,0,0,0,5,5,0,75,0,0,0,0,9,8,192,25,0,0,7,173,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,188,0,0,65,61],[0,0,0,128,6,80,2,112,0,0,7,174,7,80,0,156,0,0,0,0,6,5,160,25,0,0,7,174,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,168,9,96,0,156],[0,0,0,0,8,7,160,25,0,0,0,64,7,96,2,112,0,0,7,168,9,96,0,156,0,0,0,0,7,6,160,25],[0,0,0,4,9,128,1,191,0,0,7,164,6,112,0,156,0,0,0,0,9,8,160,25,0,0,0,32,8,112,2,112],[0,0,7,164,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,168,9,112,0,156,0,0,4,10,0,0,33,61,0,0,0,1,8,128,1,144,0,0,4,10,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,240,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,232,0,0,65,61],[0,0,0,0,8,0,0,75,0,0,16,242,0,0,97,61,0,0,0,0,8,4,4,51,0,0,0,0,8,8,0,75],[0,0,4,250,0,0,97,61,0,0,0,0,8,7,4,51,0,0,7,173,8,128,1,151,0,0,0,248,9,96,2,16],[0,0,0,0,8,137,1,159,0,0,7,175,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,204,0,0,1,61,0,0,7,172,7,80,0,156,0,0,4,10,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,8,4,59,0,0,0,0,0,135,4,53,0,0,4,250,0,0,97,61],[0,0,0,248,9,96,2,16,0,0,7,169,10,0,0,65,0,0,0,0,6,6,0,75,0,0,0,0,10,9,192,25],[0,0,7,173,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,92,0,0,65,61,0,0,0,128,8,112,2,112,0,0,7,174,9,112,0,156,0,0,0,0,8,7,160,25],[0,0,7,174,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,168,11,128,0,156,0,0,0,0,10,9,160,25,0,0,0,64,9,128,2,112,0,0,7,168,11,128,0,156],[0,0,0,0,9,8,160,25,0,0,0,4,11,160,1,191,0,0,7,164,8,144,0,156,0,0,0,0,11,10,160,25],[0,0,0,32,10,144,2,112,0,0,7,164,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,168,11,144,0,156,0,0,4,10,0,0,33,61,0,0,0,1,10,160,1,144],[0,0,4,10,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,77,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,69,0,0,65,61,0,0,0,0,10,0,0,75,0,0,17,79,0,0,97,61,0,0,0,0,10,6,4,51],[0,0,0,0,10,10,0,75,0,0,4,250,0,0,97,61,0,0,0,0,10,9,4,51,0,0,7,173,10,160,1,151],[0,0,0,248,11,128,2,16,0,0,0,0,10,171,1,159,0,0,7,175,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,108,0,0,1,61,0,0,7,172,7,80,0,156],[0,0,4,10,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,8,4,59,0,0,0,0,0,135,4,53],[0,0,4,250,0,0,97,61,0,0,0,248,9,96,2,16,0,0,7,169,10,0,0,65,0,0,0,0,6,6,0,75],[0,0,0,0,10,9,192,25,0,0,7,173,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,185,0,0,65,61,0,0,0,128,8,112,2,112,0,0,7,174,9,112,0,156],[0,0,0,0,8,7,160,25,0,0,7,174,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,168,11,128,0,156,0,0,0,0,10,9,160,25,0,0,0,64,9,128,2,112],[0,0,7,168,11,128,0,156,0,0,0,0,9,8,160,25,0,0,0,4,11,160,1,191,0,0,7,164,8,144,0,156],[0,0,0,0,11,10,160,25,0,0,0,32,10,144,2,112,0,0,7,164,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,168,11,144,0,156,0,0,4,10,0,0,33,61],[0,0,0,1,10,160,1,144,0,0,4,10,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,170,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,162,0,0,65,61,0,0,0,0,10,0,0,75,0,0,17,172,0,0,97,61],[0,0,0,0,10,6,4,51,0,0,0,0,10,10,0,75,0,0,4,250,0,0,97,61,0,0,0,0,10,9,4,51],[0,0,7,173,10,160,1,151,0,0,0,248,11,128,2,16,0,0,0,0,10,171,1,159,0,0,7,175,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,201,0,0,1,61],[0,0,7,172,6,64,0,156,0,0,4,10,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,7,4,59],[0,0,0,0,0,118,4,53,0,0,4,250,0,0,97,61,0,0,0,248,8,80,2,16,0,0,7,169,9,0,0,65],[0,0,0,0,5,5,0,75,0,0,0,0,9,8,192,25,0,0,7,173,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,219,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,212,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,232,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,225,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,168,4,64,0,156,0,0,4,10,0,0,33,61],[0,0,0,1,3,48,1,144,0,0,4,10,0,0,193,61,0,0,0,8,3,0,0,41,0,0,0,64,0,48,4,63],[0,0,7,172,3,48,0,156,0,0,4,10,0,0,33,61,0,0,0,12,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,176,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,228,0,0,65,61],[0,0,0,128,5,64,2,112,0,0,7,174,6,64,0,156,0,0,0,0,5,4,160,25,0,0,7,174,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,168,8,80,0,156],[0,0,0,0,7,6,160,25,0,0,0,64,6,80,2,112,0,0,7,168,8,80,0,156,0,0,0,0,6,5,160,25],[0,0,0,4,8,112,1,191,0,0,7,164,5,96,0,156,0,0,0,0,8,7,160,25,0,0,0,32,7,96,2,112],[0,0,7,164,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,168,8,96,0,156],[0,0,4,10,0,0,33,61,0,0,0,1,7,112,1,144,0,0,4,10,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,18,72,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,18,64,0,0,65,61],[0,0,0,0,7,0,0,75,0,0,18,74,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,4,250,0,0,97,61,0,0,0,0,7,6,4,51,0,0,7,173,7,112,1,151],[0,0,0,248,8,80,2,16,0,0,0,0,7,120,1,159,0,0,7,175,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,246,0,0,1,61],[0,0,7,172,8,96,0,156,0,0,4,10,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,9,4,59],[0,0,0,0,0,152,4,53,0,0,4,250,0,0,97,61,0,0,0,248,10,112,2,16,0,0,7,169,11,0,0,65],[0,0,0,0,7,7,0,75,0,0,0,0,11,10,192,25,0,0,7,173,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,22,0,0,65,61,0,0,0,128,9,128,2,112],[0,0,7,174,10,128,0,156,0,0,0,0,9,8,160,25,0,0,7,174,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,168,12,144,0,156,0,0,0,0,11,10,160,25],[0,0,0,64,10,144,2,112,0,0,7,168,12,144,0,156,0,0,0,0,10,9,160,25,0,0,0,4,12,176,1,191],[0,0,7,164,9,160,0,156,0,0,0,0,12,11,160,25,0,0,0,32,11,160,2,112,0,0,7,164,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,168,12,160,0,156],[0,0,4,10,0,0,33,61,0,0,0,1,11,176,1,144,0,0,4,10,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,167,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,159,0,0,65,61,0,0,0,0,11,0,0,75],[0,0,18,169,0,0,97,61,0,0,0,0,11,7,4,51,0,0,0,0,11,11,0,75,0,0,4,250,0,0,97,61],[0,0,0,0,11,10,4,51,0,0,7,173,11,176,1,151,0,0,0,248,12,144,2,16,0,0,0,0,11,188,1,159],[0,0,7,175,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,38,0,0,1,61,0,0,7,172,8,96,0,156,0,0,4,10,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,9,4,59,0,0,0,0,0,152,4,53,0,0,4,250,0,0,97,61,0,0,0,248,10,112,2,16],[0,0,7,169,11,0,0,65,0,0,0,0,7,7,0,75,0,0,0,0,11,10,192,25,0,0,7,173,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,134,0,0,65,61],[0,0,0,128,9,128,2,112,0,0,7,174,10,128,0,156,0,0,0,0,9,8,160,25,0,0,7,174,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,168,12,144,0,156],[0,0,0,0,11,10,160,25,0,0,0,64,10,144,2,112,0,0,7,168,12,144,0,156,0,0,0,0,10,9,160,25],[0,0,0,4,12,176,1,191,0,0,7,164,9,160,0,156,0,0,0,0,12,11,160,25,0,0,0,32,11,160,2,112],[0,0,7,164,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,168,12,160,0,156,0,0,4,10,0,0,33,61,0,0,0,1,11,176,1,144,0,0,4,10,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,19,4,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,252,0,0,65,61],[0,0,0,0,11,0,0,75,0,0,19,6,0,0,97,61,0,0,0,0,11,7,4,51,0,0,0,0,11,11,0,75],[0,0,4,250,0,0,97,61,0,0,0,0,11,10,4,51,0,0,7,173,11,176,1,151,0,0,0,248,12,144,2,16],[0,0,0,0,11,188,1,159,0,0,7,175,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,150,0,0,1,61,0,0,7,172,9,112,0,156,0,0,4,10,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,10,4,59,0,0,0,0,0,169,4,53,0,0,4,250,0,0,97,61],[0,0,0,248,11,128,2,16,0,0,7,169,12,0,0,65,0,0,0,0,8,8,0,75,0,0,0,0,12,11,192,25],[0,0,7,173,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,172,8,144,0,156,0,0,4,10,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,176,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,177,0,0,65,61,0,0,0,9,4,0,0,41,0,0,0,128,10,64,2,112],[0,0,7,174,11,64,0,156,0,0,0,0,10,4,160,25,0,0,7,174,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,168,13,160,0,156,0,0,0,0,12,11,160,25],[0,0,0,64,11,160,2,112,0,0,7,168,13,160,0,156,0,0,0,0,11,10,160,25,0,0,0,4,13,192,1,191],[0,0,7,164,10,176,0,156,0,0,0,0,13,12,160,25,0,0,0,32,12,176,2,112,0,0,7,164,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,168,13,176,0,156],[0,0,4,10,0,0,33,61,0,0,0,1,12,192,1,144,0,0,4,10,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,115,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,107,0,0,65,61,0,0,0,0,4,0,0,75],[0,0,19,117,0,0,97,61,0,0,0,0,4,8,4,51,0,0,0,0,4,4,0,75,0,0,4,250,0,0,97,61],[0,0,0,0,4,11,4,51,0,0,7,173,4,64,1,151,0,0,0,248,12,160,2,16,0,0,0,0,4,76,1,159],[0,0,7,175,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,195,0,0,1,61,0,0,7,172,9,112,0,156,0,0,4,10,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,10,4,59,0,0,0,0,0,169,4,53,0,0,4,250,0,0,97,61],[0,0,0,248,11,128,2,16,0,0,7,169,12,0,0,65,0,0,0,0,8,8,0,75,0,0,0,0,12,11,192,25],[0,0,7,173,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,61,0,0,65,61,0,0,0,128,10,144,2,112,0,0,7,174,11,144,0,156,0,0,0,0,10,9,160,25],[0,0,7,174,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,168,13,160,0,156,0,0,0,0,12,11,160,25,0,0,0,64,11,160,2,112,0,0,7,168,13,160,0,156],[0,0,0,0,11,10,160,25,0,0,0,4,13,192,1,191,0,0,7,164,10,176,0,156,0,0,0,0,13,12,160,25],[0,0,0,32,12,176,2,112,0,0,7,164,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,168,13,176,0,156,0,0,4,10,0,0,33,61,0,0,0,1,12,192,1,144],[0,0,4,10,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,209,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,201,0,0,65,61,0,0,0,0,4,0,0,75,0,0,19,211,0,0,97,61,0,0,0,0,4,8,4,51],[0,0,0,0,4,4,0,75,0,0,4,250,0,0,97,61,0,0,0,0,4,11,4,51,0,0,7,173,4,64,1,151],[0,0,0,248,12,160,2,16,0,0,0,0,4,76,1,159,0,0,7,175,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,78,0,0,1,61],[0,0,0,6,5,0,0,41,0,0,7,172,5,80,0,156,0,0,4,10,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,6,4,59,0,0,0,0,0,101,4,53,0,0,4,250,0,0,97,61],[0,0,0,248,7,64,2,16,0,0,7,169,8,0,0,65,0,0,0,0,4,4,0,75,0,0,0,0,8,7,192,25],[0,0,7,173,4,96,1,151,0,0,0,0,4,132,1,159,0,0,0,0,0,69,4,53,0,0,0,11,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,169,6,48,1,151,0,0,7,169,7,80,1,151,0,0,7,169,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,169,6,96,0,156,0,0,0,0,9,8,192,25],[0,0,0,0,6,9,0,75,0,0,0,204,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,168,7,80,0,156,0,0,0,204,0,0,33,61,0,0,0,0,7,81,0,73],[0,0,0,32,6,96,0,57,0,0,7,169,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,169,7,112,1,151,0,0,7,169,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,169,7,112,0,156,0,0,0,0,8,9,192,25],[0,0,0,0,7,8,0,75,0,0,0,204,0,0,193,61,0,0,0,1,7,80,0,140,0,0,22,44,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,169,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,169,5,80,1,151],[0,0,7,169,8,80,0,156,0,0,0,0,7,0,128,25,0,0,7,169,5,80,1,103,0,0,7,169,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,104,0,0,193,61],[0,0,0,64,5,0,4,61,0,5,0,0,0,5,0,29,0,0,7,172,5,80,0,156,0,0,4,10,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,175,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,104,0,0,1,61,0,0,7,172,4,128,0,156,0,0,4,10,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,11,4,4,59,0,0,0,0,0,186,4,53,0,0,4,250,0,0,97,61,0,0,0,248,4,144,2,16],[0,0,7,169,12,0,0,65,0,0,0,0,9,9,0,75,0,0,0,0,12,4,192,25,0,0,7,173,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,172,4,160,0,156],[0,0,4,10,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,176,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,104,0,0,65,61,0,0,0,9,4,0,0,41,0,0,0,128,11,64,2,112],[0,0,7,174,12,64,0,156,0,0,0,0,11,4,160,25,0,0,7,174,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,168,14,176,0,156,0,0,0,0,13,12,160,25],[0,0,0,64,12,176,2,112,0,0,7,168,14,176,0,156,0,0,0,0,12,11,160,25,0,0,0,4,14,208,1,191],[0,0,7,164,11,192,0,156,0,0,0,0,14,13,160,25,0,0,0,32,13,192,2,112,0,0,7,164,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,168,14,192,0,156,0,0,4,10,0,0,33,61,0,0,0,1,13,208,1,144,0,0,4,10,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,157,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,149,0,0,65,61,0,0,0,0,4,0,0,75,0,0,20,159,0,0,97,61,0,0,0,0,4,9,4,51],[0,0,0,0,4,4,0,75,0,0,4,250,0,0,97,61,0,0,0,0,4,12,4,51,0,0,7,173,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,175,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,122,0,0,1,61,0,0,7,172,4,128,0,156,0,0,4,10,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,11,4,4,59,0,0,0,0,0,186,4,53,0,0,4,250,0,0,97,61,0,0,0,9,13,0,0,41],[0,0,0,248,4,208,2,16,0,0,7,169,12,0,0,65,0,0,0,0,13,13,0,75,0,0,0,0,12,4,192,25],[0,0,7,173,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,208,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,201,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,221,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,214,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,234,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,227,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,247,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,240,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,4,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,253,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,17,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,10,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,168,6,112,0,156,0,0,4,10,0,0,33,61,0,0,0,1,5,80,1,144],[0,0,4,10,0,0,193,61,0,0,0,64,0,112,4,63,0,0,0,11,12,0,0,41,0,0,0,0,6,194,0,73],[0,0,0,12,5,0,0,41,0,0,1,196,13,80,0,57,0,0,0,0,5,209,3,79,0,0,0,0,5,5,4,59],[0,0,0,31,9,96,0,138,0,0,7,169,6,144,1,151,0,0,7,169,8,80,1,151,0,0,7,169,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,169,6,96,0,156,0,0,0,0,11,10,192,25],[0,0,0,0,6,11,0,75,0,0,0,204,0,0,193,61,0,0,0,0,6,197,0,25,0,0,0,0,5,97,3,79],[0,0,0,0,5,5,4,59,0,0,7,168,8,80,0,156,0,0,0,204,0,0,33,61,0,0,0,0,8,82,0,73],[0,0,0,32,6,96,0,57,0,0,7,169,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,169,8,128,1,151,0,12,0,0,0,6,0,29,0,0,7,169,12,96,1,151],[0,0,0,0,14,140,0,75,0,0,0,0,10,0,128,25,0,0,0,0,8,140,1,63,0,0,7,169,8,128,0,156],[0,0,0,0,10,11,192,25,0,0,0,0,8,10,0,75,0,0,0,204,0,0,193,61,0,0,0,1,8,80,0,140],[0,0,22,221,0,0,193,61,0,0,0,12,8,16,3,96,0,0,0,0,8,8,4,59,0,0,0,1,10,0,0,138],[0,0,7,169,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,169,8,128,1,151,0,0,7,169,12,128,0,156,0,0,0,0,11,0,128,25,0,0,7,169,8,128,1,103],[0,0,7,169,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,20,0,0,193,61,0,0,7,172,8,112,0,156,0,0,4,10,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,175,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,20,0,0,1,61],[0,0,7,172,4,144,0,156,0,0,4,10,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,12,4,4,59],[0,0,0,0,0,203,4,53,0,0,4,250,0,0,97,61,0,0,0,9,14,0,0,41,0,0,0,248,4,224,2,16],[0,0,7,169,13,0,0,65,0,0,0,0,14,14,0,75,0,0,0,0,13,4,192,25,0,0,7,173,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,135,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,128,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,148,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,141,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,161,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,154,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,174,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,167,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,187,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,180,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,200,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,193,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,213,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,206,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,168,6,112,0,156,0,0,4,10,0,0,33,61,0,0,0,1,5,80,1,144],[0,0,4,10,0,0,193,61,0,0,0,64,0,112,4,63,0,0,0,11,12,0,0,41,0,0,0,0,6,194,0,73],[0,0,0,12,5,0,0,41,0,0,1,196,13,80,0,57,0,0,0,0,5,209,3,79,0,0,0,0,5,5,4,59],[0,0,0,31,9,96,0,138,0,0,7,169,6,144,1,151,0,0,7,169,8,80,1,151,0,0,7,169,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,169,6,96,0,156,0,0,0,0,11,10,192,25],[0,0,0,0,6,11,0,75,0,0,0,204,0,0,193,61,0,0,0,0,6,197,0,25,0,0,0,0,5,97,3,79],[0,0,0,0,5,5,4,59,0,0,7,168,8,80,0,156,0,0,0,204,0,0,33,61,0,0,0,0,8,82,0,73],[0,0,0,32,6,96,0,57,0,0,7,169,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,169,8,128,1,151,0,12,0,0,0,6,0,29,0,0,7,169,12,96,1,151],[0,0,0,0,14,140,0,75,0,0,0,0,10,0,128,25,0,0,0,0,8,140,1,63,0,0,7,169,8,128,0,156],[0,0,0,0,10,11,192,25,0,0,0,0,8,10,0,75,0,0,0,204,0,0,193,61,0,0,0,1,8,80,0,140],[0,0,24,1,0,0,193,61,0,0,0,12,8,16,3,96,0,0,0,0,8,8,4,59,0,0,0,1,10,0,0,138],[0,0,7,169,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,169,8,128,1,151,0,0,7,169,12,128,0,156,0,0,0,0,11,0,128,25,0,0,7,169,8,128,1,103],[0,0,7,169,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,56,0,0,193,61,0,0,7,172,8,112,0,156,0,0,4,10,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,175,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,56,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,87,0,0,65,61],[0,0,0,32,7,80,2,112,0,0,7,164,6,80,0,156,0,0,0,0,7,5,160,25,0,0,7,164,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,172,8,128,0,156],[0,0,4,10,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,8,4,59,0,0,0,0,0,135,4,53,0,0,4,250,0,0,97,61,0,0,7,173,8,128,1,151],[0,0,0,248,9,96,2,16,0,0,0,0,8,137,1,159,0,0,7,177,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,104,0,0,1,61,0,0,0,5,6,0,0,41],[0,0,7,172,6,96,0,156,0,0,4,10,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,7,4,59,0,0,0,0,0,118,4,53,0,0,4,250,0,0,97,61,0,0,0,248,5,80,2,16],[0,0,7,173,7,112,1,151,0,0,0,0,5,87,1,159,0,0,7,169,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,169,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,169,3,48,1,151],[0,0,7,169,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,169,3,48,0,156,0,0,0,0,5,6,192,25,0,0,0,0,3,5,0,75,0,0,0,11,3,0,0,41],[0,0,0,204,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,168,5,48,0,156,0,0,0,204,0,0,33,61,0,0,0,32,5,48,0,140,0,0,0,204,0,0,65,61],[0,0,0,0,5,49,0,73,0,0,0,32,4,64,0,57,0,0,7,169,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,169,5,80,1,151,0,0,7,169,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,169,5,80,0,156],[0,0,0,0,6,7,192,25,0,0,0,0,5,6,0,75,0,0,0,204,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,23,157,0,0,65,61,0,0,0,128,6,80,2,112,0,0,7,174,7,80,0,156,0,0,0,0,6,5,160,25],[0,0,7,174,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,168,9,96,0,156,0,0,0,0,8,7,160,25,0,0,0,64,7,96,2,112,0,0,7,168,9,96,0,156],[0,0,0,0,7,6,160,25,0,0,0,4,9,128,1,191,0,0,7,164,6,112,0,156,0,0,0,0,9,8,160,25],[0,0,0,32,8,112,2,112,0,0,7,164,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,168,9,112,0,156,0,0,4,10,0,0,33,61,0,0,0,1,8,128,1,144,0,0,4,10,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,201,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,193,0,0,65,61,0,0,0,0,8,0,0,75,0,0,22,203,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,4,250,0,0,97,61,0,0,0,0,8,7,4,51],[0,0,7,173,8,128,1,151,0,0,0,248,9,96,2,16,0,0,0,0,8,137,1,159,0,0,7,175,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,23,175,0,0,1,61,0,0,0,56,8,80,0,140,0,0,23,4,0,0,65,61,0,0,0,32,10,80,2,112],[0,0,7,164,8,80,0,156,0,0,0,0,10,5,160,25,0,0,7,164,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,12,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,172,11,112,0,156,0,0,4,10,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,11,4,59,0,0,0,0,0,186,4,53,0,0,4,250,0,0,97,61],[0,0,7,173,11,176,1,151,0,0,0,248,12,128,2,16,0,0,0,0,11,188,1,159,0,0,7,177,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,20,0,0,1,61],[0,0,7,172,8,112,0,156,0,0,4,10,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,10,4,59],[0,0,0,0,0,168,4,53,0,0,4,250,0,0,97,61,0,0,0,248,11,80,2,16,0,0,7,173,10,160,1,151],[0,0,0,0,10,186,1,159,0,0,7,169,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,172,10,112,0,156,0,0,4,10,0,0,33,61,0,0,0,64,10,112,0,57],[0,0,0,64,0,160,4,63,0,0,0,0,14,33,3,79,0,0,0,1,6,0,0,58,0,8,0,0,0,6,0,29],[0,0,0,0,10,103,4,54,0,0,0,0,6,14,4,59,0,9,0,0,0,6,0,29,0,0,0,0,0,106,4,53],[0,0,4,250,0,0,97,61,0,0,0,9,6,0,0,41,0,0,7,173,6,96,1,151,0,7,0,0,0,6,0,29],[0,0,7,178,15,96,1,199,0,0,0,0,0,250,4,53,0,0,0,32,10,208,0,57,0,0,0,0,10,161,3,79],[0,0,0,0,10,10,4,59,0,0,7,169,13,0,0,65,0,0,0,0,15,154,0,75,0,0,0,0,15,0,0,25],[0,0,0,0,15,13,128,25,0,0,7,169,9,144,1,151,0,0,7,169,12,160,1,151,0,0,0,0,11,156,0,75],[0,0,0,0,13,0,128,25,0,0,0,0,9,156,1,63,0,0,7,169,9,144,0,156,0,0,0,0,13,15,192,25],[0,0,0,0,9,13,0,75,0,0,0,11,6,0,0,41,0,0,0,204,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,11,0,0,0,6,0,29,0,0,7,168,10,96,0,156],[0,0,0,204,0,0,33,61,0,0,0,11,6,0,0,41,0,0,0,32,10,96,0,140,0,0,0,204,0,0,65,61],[0,0,0,11,2,32,0,106,0,0,0,32,13,144,0,57,0,0,7,169,9,0,0,65,0,0,0,0,10,45,0,75],[0,0,0,0,10,0,0,25,0,0,0,0,10,9,32,25,0,0,7,169,2,32,1,151,0,0,7,169,11,208,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,169,2,32,0,156],[0,0,0,0,9,10,192,25,0,0,0,0,2,9,0,75,0,0,0,204,0,0,193,61,0,0,0,0,9,209,3,79],[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,9,96,0,140],[0,0,25,3,0,0,65,61,0,0,0,6,6,0,0,41,0,0,0,128,9,96,2,112,0,0,7,174,10,96,0,156],[0,0,0,0,9,6,160,25,0,0,7,174,10,96,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,168,12,144,0,156,0,0,0,0,11,10,160,25,0,0,0,64,10,144,2,112],[0,0,7,168,12,144,0,156,0,0,0,0,10,9,160,25,0,0,0,4,9,176,1,191,0,0,7,164,12,160,0,156],[0,0,0,0,9,11,160,25,0,0,0,32,11,160,2,112,0,0,7,164,12,160,0,156,0,0,0,0,11,10,160,25],[0,0,0,2,6,144,1,191,0,0,255,255,10,176,0,140,0,0,0,0,6,9,160,25,0,0,0,16,9,176,2,112],[0,0,0,0,9,11,160,25,0,0,0,255,9,144,0,140,0,0,0,1,6,96,32,57,0,5,0,0,0,6,0,29],[0,0,0,65,9,96,0,57,0,0,0,0,9,57,1,111,0,0,0,0,9,146,0,25,0,0,0,0,10,41,0,75],[0,0,0,0,10,0,0,25,0,0,0,1,10,0,64,57,0,0,7,168,11,144,0,156,0,0,4,10,0,0,33,61],[0,0,0,1,10,160,1,144,0,0,4,10,0,0,193,61,0,0,0,64,0,144,4,63,0,0,0,5,6,0,0,41],[0,0,0,2,9,96,0,57,0,0,0,0,10,146,4,54,0,0,0,33,9,96,0,57,0,0,0,5,9,144,2,114],[0,0,23,138,0,0,97,61,0,0,0,0,15,0,0,25,0,0,0,5,11,240,2,16,0,0,0,0,12,186,0,25],[0,0,0,0,11,190,3,79,0,0,0,0,11,11,4,59,0,0,0,0,0,188,4,53,0,0,0,1,15,240,0,57],[0,0,0,0,11,159,0,75,0,0,23,130,0,0,65,61,0,0,0,0,6,0,0,75,0,0,23,140,0,0,97,61],[0,0,0,0,9,2,4,51,0,0,0,0,9,9,0,75,0,0,4,250,0,0,97,61,0,0,0,0,9,10,4,51],[0,0,7,173,9,144,1,151,0,0,0,5,6,0,0,41,0,0,0,248,11,96,2,16,0,0,0,0,9,155,1,159],[0,0,7,175,9,144,0,65,0,0,0,0,0,154,4,53,0,0,0,3,9,96,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,25,20,0,0,1,61,0,0,0,4,6,0,0,41,0,0,7,172,6,96,0,156,0,0,4,10,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,7,4,59,0,0,0,0,0,118,4,53],[0,0,4,250,0,0,97,61,0,0,0,248,8,80,2,16,0,0,7,169,9,0,0,65,0,0,0,0,5,5,0,75],[0,0,0,0,9,8,192,25,0,0,7,173,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,204,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,193,0,0,65,61,0,0,0,128,6,80,2,112,0,0,7,174,7,80,0,156,0,0,0,0,6,5,160,25],[0,0,7,174,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,168,9,96,0,156,0,0,0,0,8,7,160,25,0,0,0,64,7,96,2,112,0,0,7,168,9,96,0,156],[0,0,0,0,7,6,160,25,0,0,0,4,9,128,1,191,0,0,7,164,6,112,0,156,0,0,0,0,9,8,160,25],[0,0,0,32,8,112,2,112,0,0,7,164,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,168,9,112,0,156,0,0,4,10,0,0,33,61,0,0,0,1,8,128,1,144,0,0,4,10,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,237,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,229,0,0,65,61,0,0,0,0,1,0,0,75,0,0,23,239,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,4,250,0,0,97,61,0,0,0,0,1,7,4,51],[0,0,7,173,1,16,1,151,0,0,0,248,8,96,2,16,0,0,0,0,1,24,1,159,0,0,7,175,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,211,0,0,1,61,0,0,0,56,8,80,0,140,0,0,24,40,0,0,65,61,0,0,0,32,10,80,2,112],[0,0,7,164,8,80,0,156,0,0,0,0,10,5,160,25,0,0,7,164,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,12,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,172,11,112,0,156,0,0,4,10,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,11,4,59,0,0,0,0,0,186,4,53,0,0,4,250,0,0,97,61],[0,0,7,173,11,176,1,151,0,0,0,248,12,128,2,16,0,0,0,0,11,188,1,159,0,0,7,177,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,56,0,0,1,61],[0,0,7,172,8,112,0,156,0,0,4,10,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,10,4,59],[0,0,0,0,0,168,4,53,0,0,4,250,0,0,97,61,0,0,0,248,11,80,2,16,0,0,7,173,10,160,1,151],[0,0,0,0,10,186,1,159,0,0,7,169,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,172,10,112,0,156,0,0,4,10,0,0,33,61,0,0,0,64,10,112,0,57],[0,0,0,64,0,160,4,63,0,0,0,0,14,33,3,79,0,0,0,1,6,0,0,58,0,8,0,0,0,6,0,29],[0,0,0,0,10,103,4,54,0,0,0,0,6,14,4,59,0,9,0,0,0,6,0,29,0,0,0,0,0,106,4,53],[0,0,4,250,0,0,97,61,0,0,0,9,6,0,0,41,0,0,7,173,6,96,1,151,0,7,0,0,0,6,0,29],[0,0,7,178,12,96,1,199,0,0,0,0,0,202,4,53,0,0,0,32,10,208,0,57,0,0,0,0,10,161,3,79],[0,0,0,0,10,10,4,59,0,0,7,169,12,0,0,65,0,0,0,0,13,154,0,75,0,0,0,0,13,0,0,25],[0,0,0,0,13,12,128,25,0,0,7,169,9,144,1,151,0,0,7,169,15,160,1,151,0,0,0,0,11,159,0,75],[0,0,0,0,12,0,128,25,0,0,0,0,9,159,1,63,0,0,7,169,9,144,0,156,0,0,0,0,12,13,192,25],[0,0,0,0,9,12,0,75,0,0,0,11,6,0,0,41,0,0,0,204,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,11,0,0,0,6,0,29,0,0,7,168,10,96,0,156],[0,0,0,204,0,0,33,61,0,0,0,11,6,0,0,41,0,0,0,32,10,96,0,140,0,0,0,204,0,0,65,61],[0,0,0,11,2,32,0,106,0,0,0,32,6,144,0,57,0,0,7,169,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,169,2,32,1,151,0,5,0,0,0,6,0,29],[0,0,7,169,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,169,2,32,0,156,0,0,0,0,9,10,192,25,0,0,0,0,2,9,0,75,0,0,0,204,0,0,193,61],[0,0,0,5,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,9,96,0,140,0,0,0,32,13,32,0,57,0,0,25,105,0,0,65,61,0,0,0,6,6,0,0,41],[0,0,0,128,9,96,2,112,0,0,7,174,10,96,0,156,0,0,0,0,9,6,160,25,0,0,7,174,10,96,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,168,12,144,0,156],[0,0,0,0,11,10,160,25,0,0,0,64,10,144,2,112,0,0,7,168,12,144,0,156,0,0,0,0,10,9,160,25],[0,0,0,4,9,176,1,191,0,0,7,164,12,160,0,156,0,0,0,0,9,11,160,25,0,0,0,32,11,160,2,112],[0,0,7,164,12,160,0,156,0,0,0,0,11,10,160,25,0,0,0,2,15,144,1,191,0,0,255,255,10,176,0,140],[0,0,0,0,15,9,160,25,0,0,0,16,9,176,2,112,0,0,0,0,9,11,160,25,0,0,0,255,9,144,0,140],[0,0,0,1,15,240,32,57,0,0,0,65,9,240,0,57,0,0,0,0,9,57,1,111,0,0,0,0,9,146,0,25],[0,0,0,0,10,41,0,75,0,0,0,0,10,0,0,25,0,0,0,1,10,0,64,57,0,0,7,168,11,144,0,156],[0,0,4,10,0,0,33,61,0,0,0,1,10,160,1,144,0,0,4,10,0,0,193,61,0,0,0,64,0,144,4,63],[0,0,0,2,9,240,0,57,0,0,0,0,0,146,4,53,0,0,0,33,9,240,0,57,0,0,0,5,10,144,2,114],[0,0,24,174,0,0,97,61,0,0,0,0,9,0,0,25,0,0,0,5,11,144,2,16,0,0,0,0,12,189,0,25],[0,0,0,0,11,190,3,79,0,0,0,0,11,11,4,59,0,0,0,0,0,188,4,53,0,0,0,1,9,144,0,57],[0,0,0,0,11,169,0,75,0,0,24,166,0,0,65,61,0,0,0,0,6,0,0,75,0,0,24,176,0,0,97,61],[0,0,0,0,9,2,4,51,0,0,0,0,9,9,0,75,0,0,4,250,0,0,97,61,0,0,0,0,9,13,4,51],[0,0,7,173,9,144,1,151,0,0,0,248,10,240,2,16,0,0,0,0,9,154,1,159,0,0,7,175,9,144,0,65],[0,0,0,0,0,157,4,53,0,0,0,3,9,240,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,122,0,0,1,61,0,0,0,3,6,0,0,41,0,0,7,172,6,96,0,156,0,0,4,10,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,6,4,59,0,0,0,0,0,97,4,53],[0,0,4,250,0,0,97,61,0,0,0,248,7,80,2,16,0,0,7,169,8,0,0,65,0,0,0,0,5,5,0,75],[0,0,0,0,8,7,192,25,0,0,7,173,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,4,250,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,27,90,0,0,129,61,0,0,0,12,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,147,0,0,97,61],[0,0,7,170,1,0,0,65,0,0,0,0,0,16,4,57,0,0,7,164,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,7,164,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,7,171,1,16,1,199],[0,0,128,11,2,0,0,57,30,139,30,129,0,0,4,15,0,0,0,1,2,32,1,144,0,0,25,2,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,250,0,0,97,61],[0,0,0,9,3,0,0,138,0,0,0,0,3,49,0,75,0,0,24,254,0,0,33,61,0,0,0,0,50,33,0,217],[0,0,0,2,2,32,0,140,0,0,24,254,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,207,0,0,129,61,0,0,7,201,1,0,0,65,0,0,0,0,0,16,4,53],[0,0,0,17,1,0,0,57,0,0,4,253,0,0,1,61,0,0,0,0,0,1,4,47,0,0,7,172,9,32,0,156],[0,0,4,10,0,0,33,61,0,0,0,64,9,32,0,57,0,0,0,64,0,144,4,63,0,0,0,32,9,32,0,57],[0,0,0,9,6,0,0,41,0,0,0,0,0,105,4,53,0,0,0,8,6,0,0,41,0,0,0,0,0,98,4,53],[0,0,0,0,10,6,0,75,0,0,4,250,0,0,97,61,0,0,0,6,6,0,0,41,0,0,0,248,10,96,2,16],[0,0,7,169,11,0,0,65,0,0,0,0,12,6,0,75,0,0,0,0,11,10,192,25,0,0,0,7,10,176,1,175],[0,0,0,0,0,169,4,53,0,0,0,11,6,0,0,41,0,0,0,64,9,96,0,140,0,0,0,204,0,0,65,61],[0,0,0,64,9,0,4,61,0,4,0,32,0,208,0,61,0,0,0,4,10,16,3,96,0,0,0,0,6,10,4,59],[0,6,0,0,0,6,0,29,0,0,0,128,10,96,0,140,0,0,0,32,15,144,0,57,0,0,26,27,0,0,65,61],[0,0,0,6,6,0,0,41,0,0,0,128,10,96,2,112,0,0,7,174,11,96,0,156,0,0,0,0,10,6,160,25],[0,0,7,174,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,168,13,160,0,156,0,0,0,0,12,11,160,25,0,0,0,64,11,160,2,112,0,0,7,168,13,160,0,156],[0,0,0,0,11,10,160,25,0,0,0,4,10,192,1,191,0,0,7,164,13,176,0,156,0,0,0,0,10,12,160,25],[0,0,0,32,12,176,2,112,0,0,7,164,13,176,0,156,0,0,0,0,12,11,160,25,0,0,0,2,6,160,1,191],[0,0,255,255,11,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,5,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,11,154,0,75,0,0,0,0,13,0,0,25],[0,0,0,1,13,0,64,57,0,0,7,168,11,160,0,156,0,0,4,10,0,0,33,61,0,0,0,1,11,208,1,144],[0,0,4,10,0,0,193,61,0,0,0,64,0,160,4,63,0,0,0,5,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,25,85,0,0,97,61],[0,0,0,0,13,0,0,25,0,0,0,5,11,208,2,16,0,0,0,0,12,191,0,25,0,0,0,0,11,190,3,79],[0,0,0,0,11,11,4,59,0,0,0,0,0,188,4,53,0,0,0,1,13,208,0,57,0,0,0,0,11,173,0,75],[0,0,25,77,0,0,65,61,0,0,0,0,6,0,0,75,0,0,25,87,0,0,97,61,0,0,0,0,10,9,4,51],[0,0,0,0,10,10,0,75,0,0,4,250,0,0,97,61,0,0,0,0,10,15,4,51,0,0,7,173,10,160,1,151],[0,0,0,5,6,0,0,41,0,0,0,248,11,96,2,16,0,0,0,0,10,171,1,159,0,0,7,175,10,160,0,65],[0,0,0,0,0,175,4,53,0,0,0,3,10,96,2,16,0,0,0,248,10,160,0,137,0,0,0,6,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,44,0,0,1,61,0,0,7,172,9,32,0,156,0,0,4,10,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,109,4,53,0,0,0,8,6,0,0,41],[0,0,0,0,0,98,4,53,0,0,0,0,9,6,0,75,0,0,4,250,0,0,97,61,0,0,0,6,6,0,0,41],[0,0,0,248,9,96,2,16,0,0,7,169,10,0,0,65,0,0,0,0,11,6,0,75,0,0,0,0,10,9,192,25],[0,0,0,7,9,160,1,175,0,0,0,0,0,157,4,53,0,0,0,11,6,0,0,41,0,0,0,64,9,96,0,140],[0,0,0,204,0,0,65,61,0,0,0,64,9,0,4,61,0,0,0,5,6,0,0,41,0,4,0,32,0,96,0,61],[0,0,0,4,10,16,3,96,0,0,0,0,6,10,4,59,0,6,0,0,0,6,0,29,0,0,0,128,10,96,0,140],[0,0,0,32,13,144,0,57,0,0,26,87,0,0,65,61,0,0,0,6,6,0,0,41,0,0,0,128,10,96,2,112],[0,0,7,174,11,96,0,156,0,0,0,0,10,6,160,25,0,0,7,174,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,168,15,160,0,156,0,0,0,0,12,11,160,25],[0,0,0,64,11,160,2,112,0,0,7,168,15,160,0,156,0,0,0,0,11,10,160,25,0,0,0,4,15,192,1,191],[0,0,7,164,10,176,0,156,0,0,0,0,15,12,160,25,0,0,0,32,12,176,2,112,0,0,7,164,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,5,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,168,11,192,0,156],[0,0,4,10,0,0,33,61,0,0,0,1,11,240,1,144,0,0,4,10,0,0,193,61,0,0,0,64,0,192,4,63],[0,0,0,5,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,15,176,2,114,0,0,25,187,0,0,97,61,0,0,0,0,12,0,0,25,0,0,0,5,11,192,2,16],[0,0,0,0,10,189,0,25,0,0,0,0,11,190,3,79,0,0,0,0,11,11,4,59,0,0,0,0,0,186,4,53],[0,0,0,1,12,192,0,57,0,0,0,0,10,252,0,75,0,0,25,179,0,0,65,61,0,0,0,0,6,0,0,75],[0,0,25,189,0,0,97,61,0,0,0,0,10,9,4,51,0,0,0,0,10,10,0,75,0,0,4,250,0,0,97,61],[0,0,0,0,10,13,4,51,0,0,7,173,10,160,1,151,0,0,0,5,6,0,0,41,0,0,0,248,11,96,2,16],[0,0,0,0,10,171,1,159,0,0,7,175,10,160,0,65,0,0,0,0,0,173,4,53,0,0,0,3,10,96,2,16],[0,0,0,248,10,160,0,137,0,0,0,6,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,104,0,0,1,61,0,0,0,128,1,48,0,140],[0,2,0,0,0,3,0,29,0,0,26,147,0,0,65,61,0,0,0,128,1,48,2,112,0,0,7,174,2,48,0,156],[0,0,0,0,1,3,160,25,0,0,7,174,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,168,5,16,0,156,0,0,0,0,4,2,160,25,0,0,0,64,2,16,2,112],[0,0,7,168,5,16,0,156,0,0,0,0,2,1,160,25,0,0,0,4,1,64,1,191,0,0,7,164,5,32,0,156],[0,0,0,0,1,4,160,25,0,0,0,32,4,32,2,112,0,0,7,164,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,168,6,32,0,156,0,0,4,10,0,0,33,61],[0,0,0,1,4,64,1,144,0,0,4,10,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,17,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,26,8,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,26,0,0,0,65,61],[0,0,0,0,7,0,0,75,0,0,26,10,0,0,97,61,0,0,0,0,7,1,4,51,0,0,0,0,7,7,0,75],[0,0,4,250,0,0,97,61,0,0,0,0,7,6,4,51,0,0,7,173,7,112,1,151,0,0,0,248,8,80,2,16],[0,0,0,0,7,120,1,159,0,0,7,175,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,172,10,144,0,156],[0,0,4,10,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,111,4,53,0,0,0,8,6,0,0,41,0,0,0,0,0,105,4,53,0,0,0,0,10,6,0,75],[0,0,4,250,0,0,97,61,0,0,0,6,6,0,0,41,0,0,0,248,10,96,2,16,0,0,7,169,11,0,0,65],[0,0,0,0,12,6,0,75,0,0,0,0,11,10,192,25,0,0,0,7,10,176,1,175,0,0,0,0,0,175,4,53],[0,0,0,11,6,0,0,41,0,0,0,65,10,96,0,140,0,0,4,250,0,0,65,61,0,0,0,4,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,16,10,160,0,138],[0,0,0,5,10,160,2,16,0,0,0,0,11,11,4,59,0,0,0,248,13,176,2,112,0,0,0,27,11,208,0,140],[0,0,0,0,14,0,0,25,0,0,27,16,0,0,97,61,0,0,0,28,10,208,0,140,0,0,27,90,0,0,193,61],[0,0,0,0,10,0,4,21,0,0,0,15,10,160,0,138,0,0,0,5,10,160,2,16,0,0,0,27,14,208,0,138],[0,0,0,128,11,224,0,140,0,0,27,16,0,0,65,61,0,0,0,64,13,0,4,61,0,0,7,172,10,208,0,156],[0,0,4,10,0,0,33,61,0,0,0,64,10,208,0,57,0,0,0,64,0,160,4,63,0,0,0,32,10,208,0,57],[0,0,0,9,6,0,0,41,0,0,0,0,0,106,4,53,0,0,0,2,11,0,0,58,0,0,0,0,0,189,4,53],[0,0,4,250,0,0,97,61,0,0,0,7,6,0,0,41,0,0,7,175,11,96,1,199,0,0,0,0,0,186,4,53],[0,0,0,248,10,224,2,16,0,0,0,33,11,208,0,57,0,0,0,0,0,171,4,53,0,0,0,0,10,0,4,21],[0,0,0,15,10,160,0,138,0,0,0,5,10,160,2,16,0,0,27,34,0,0,1,61,0,0,7,172,10,144,0,156],[0,0,4,10,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,109,4,53,0,0,0,8,6,0,0,41,0,0,0,0,0,105,4,53,0,0,0,0,10,6,0,75],[0,0,4,250,0,0,97,61,0,0,0,6,6,0,0,41,0,0,0,248,10,96,2,16,0,0,7,169,11,0,0,65],[0,0,0,0,12,6,0,75,0,0,0,0,11,10,192,25,0,0,0,7,10,176,1,175,0,0,0,0,0,173,4,53],[0,0,0,11,6,0,0,41,0,0,0,65,10,96,0,140,0,0,4,250,0,0,65,61,0,0,0,4,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,14,10,160,0,138],[0,0,0,5,10,160,2,16,0,0,0,0,11,11,4,59,0,0,0,248,13,176,2,112,0,0,0,27,11,208,0,140],[0,0,0,0,14,0,0,25,0,0,27,97,0,0,97,61,0,0,0,28,10,208,0,140,0,0,27,90,0,0,193,61],[0,0,0,0,10,0,4,21,0,0,0,13,10,160,0,138,0,0,0,5,10,160,2,16,0,0,0,27,14,208,0,138],[0,0,0,128,11,224,0,140,0,0,27,97,0,0,65,61,0,0,0,64,13,0,4,61,0,0,7,172,10,208,0,156],[0,0,4,10,0,0,33,61,0,0,0,64,10,208,0,57,0,0,0,64,0,160,4,63,0,0,0,32,10,208,0,57],[0,0,0,9,6,0,0,41,0,0,0,0,0,106,4,53,0,0,0,2,11,0,0,58,0,0,0,0,0,189,4,53],[0,0,4,250,0,0,97,61,0,0,0,7,6,0,0,41,0,0,7,175,11,96,1,199,0,0,0,0,0,186,4,53],[0,0,0,248,10,224,2,16,0,0,0,33,11,208,0,57,0,0,0,0,0,171,4,53,0,0,0,0,10,0,4,21],[0,0,0,13,10,160,0,138,0,0,0,5,10,160,2,16,0,0,27,115,0,0,1,61,0,0,0,64,1,0,4,61],[0,0,7,172,2,16,0,156,0,0,4,10,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,17,2,0,3,103],[0,0,0,0,5,66,3,79,0,0,0,0,5,5,4,59,0,0,0,0,0,83,4,53,0,0,4,250,0,0,97,61],[0,0,0,2,8,0,0,41,0,0,0,248,6,128,2,16,0,0,7,169,7,0,0,65,0,0,0,0,8,8,0,75],[0,0,0,0,7,6,192,25,0,0,7,173,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,12,5,64,0,106],[0,0,0,35,5,80,0,138,0,0,0,0,3,3,4,59,0,0,7,169,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,169,5,80,1,151,0,0,7,169,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,169,5,80,0,156],[0,0,0,0,6,7,192,25,0,0,0,0,5,6,0,75,0,0,0,11,6,0,0,41,0,0,0,204,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,168,11,48,0,156,0,0,0,204,0,0,33,61,0,0,0,0,11,52,0,73],[0,0,0,32,6,96,0,57,0,0,7,169,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,169,11,176,1,151,0,0,7,169,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,169,11,176,0,156,0,0,0,0,12,13,192,25],[0,0,0,0,11,12,0,75,0,0,0,204,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,168,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,27,171,0,0,65,61,0,0,0,32,11,80,2,112,0,0,7,164,10,80,0,156],[0,0,0,0,11,5,160,25,0,0,7,164,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,172,12,112,0,156,0,0,4,10,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,8,4,59,0,0,0,0,0,132,4,53],[0,0,4,250,0,0,97,61,0,0,7,173,8,128,1,151,0,0,0,248,9,160,2,16,0,0,0,0,8,137,1,159],[0,0,7,179,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,27,184,0,0,1,61],[0,0,0,64,13,0,4,61,0,0,7,172,11,208,0,156,0,0,4,10,0,0,33,61,0,0,0,64,11,208,0,57],[0,0,0,64,0,176,4,63,0,0,0,32,15,208,0,57,0,0,0,9,6,0,0,41,0,0,0,0,0,111,4,53],[0,0,0,8,6,0,0,41,0,0,0,0,0,109,4,53,0,0,0,0,11,6,0,75,0,0,4,250,0,0,97,61],[0,0,0,248,11,224,2,16,0,0,7,169,12,0,0,65,0,0,0,0,14,14,0,75,0,0,0,0,12,11,192,25],[0,0,0,7,11,192,1,175,0,0,0,0,0,191,4,53,0,0,0,5,10,160,2,112,0,0,0,0,10,13,0,31],[0,0,0,0,10,4,4,51,0,0,0,0,10,90,0,25,0,0,0,0,11,8,4,51,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,13,4,51,0,0,0,0,10,186,0,25],[0,0,0,64,14,0,4,61,0,0,7,168,10,160,1,151,0,0,0,56,11,160,0,140,0,6,0,64,0,224,0,61],[0,11,0,32,0,224,0,61,0,0,28,119,0,0,65,61,0,0,0,32,11,160,2,112,0,0,7,164,12,160,0,156],[0,0,0,0,11,10,160,25,0,0,7,164,12,160,0,156,0,0,0,0,6,0,0,25,0,0,0,4,6,0,32,57],[0,0,0,2,12,96,1,191,0,0,255,255,15,176,0,140,0,0,0,0,12,6,160,25,0,0,0,16,15,176,2,112],[0,0,0,0,15,11,160,25,0,0,0,255,11,240,0,140,0,0,0,0,6,0,0,25,0,0,0,1,6,0,32,57],[0,0,7,172,11,224,0,156,0,0,4,10,0,0,33,61,0,0,0,0,12,108,1,159,0,0,0,6,6,0,0,41],[0,0,0,64,0,96,4,63,0,0,0,9,6,0,0,41,0,0,0,11,11,0,0,41,0,0,0,0,0,107,4,53],[0,0,0,2,11,192,0,58,0,0,0,0,0,190,4,53,0,0,4,250,0,0,97,61,0,0,0,248,11,192,2,16],[0,0,0,7,11,176,1,175,0,0,7,179,11,176,1,199,0,0,0,11,6,0,0,41,0,0,0,0,0,182,4,53],[0,0,0,3,11,192,2,16,0,0,0,248,11,176,1,95,0,0,0,0,10,186,1,207,0,0,0,33,11,224,0,57],[0,0,0,0,0,171,4,53,0,0,28,135,0,0,1,61,0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57],[0,0,7,200,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,159,0,0,1,61,0,0,0,64,13,0,4,61,0,0,7,172,11,208,0,156,0,0,4,10,0,0,33,61],[0,0,0,64,11,208,0,57,0,0,0,64,0,176,4,63,0,0,0,32,15,208,0,57,0,0,0,9,6,0,0,41],[0,0,0,0,0,111,4,53,0,0,0,8,6,0,0,41,0,0,0,0,0,109,4,53,0,0,0,0,11,6,0,75],[0,0,4,250,0,0,97,61,0,0,0,248,11,224,2,16,0,0,7,169,12,0,0,65,0,0,0,0,14,14,0,75],[0,0,0,0,12,11,192,25,0,0,0,7,11,192,1,175,0,0,0,0,0,191,4,53,0,0,0,5,10,160,2,112],[0,0,0,0,10,13,0,31,0,0,0,0,10,4,4,51,0,0,0,0,10,90,0,25,0,0,0,0,11,8,4,51],[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,13,4,51],[0,0,0,0,10,186,0,25,0,0,0,64,14,0,4,61,0,0,7,168,10,160,1,151,0,0,0,56,11,160,0,140],[0,6,0,64,0,224,0,61,0,11,0,32,0,224,0,61,0,0,29,44,0,0,65,61,0,0,0,32,11,160,2,112],[0,0,7,164,12,160,0,156,0,0,0,0,11,10,160,25,0,0,7,164,12,160,0,156,0,0,0,0,6,0,0,25],[0,0,0,4,6,0,32,57,0,0,0,2,12,96,1,191,0,0,255,255,15,176,0,140,0,0,0,0,12,6,160,25],[0,0,0,16,15,176,2,112,0,0,0,0,15,11,160,25,0,0,0,255,11,240,0,140,0,0,0,0,6,0,0,25],[0,0,0,1,6,0,32,57,0,0,7,172,11,224,0,156,0,0,4,10,0,0,33,61,0,0,0,0,12,108,1,159],[0,0,0,6,6,0,0,41,0,0,0,64,0,96,4,63,0,0,0,9,6,0,0,41,0,0,0,11,11,0,0,41],[0,0,0,0,0,107,4,53,0,0,0,2,11,192,0,58,0,0,0,0,0,190,4,53,0,0,4,250,0,0,97,61],[0,0,0,248,11,192,2,16,0,0,0,7,11,176,1,175,0,0,7,179,11,176,1,199,0,0,0,11,6,0,0,41],[0,0,0,0,0,182,4,53,0,0,0,3,11,192,2,16,0,0,0,248,11,176,1,95,0,0,0,0,10,186,1,207],[0,0,0,33,11,224,0,57,0,0,0,0,0,171,4,53,0,0,29,60,0,0,1,61,0,0,7,172,10,112,0,156],[0,0,4,10,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,8,4,59,0,0,0,0,0,132,4,53,0,0,4,250,0,0,97,61,0,0,7,173,8,128,1,151],[0,0,0,248,5,80,2,16,0,0,0,0,5,133,1,159,0,0,7,178,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,27,197,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,27,190,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,27,211,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,27,204,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,27,225,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,27,218,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,27,239,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,27,232,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,27,253,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,27,246,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,11,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,4,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,26,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,18,0,0,65,61,0,0,0,0,9,7,0,75,0,0,28,41,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,54,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,47,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,68,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,61,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,82,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,75,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,168,3,16,0,156,0,0,4,10,0,0,33,61,0,0,0,1,2,32,1,144],[0,0,4,10,0,0,193,61,0,0,0,64,0,16,4,63,0,0,7,164,1,0,0,65,0,0,7,164,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,164,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,164,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,181,1,16,1,199,0,0,128,16,2,0,0,57,30,139,30,129,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,0,204,0,0,97,61,0,0,0,0,1,1,4,59,0,0,14,74,0,0,1,61,0,0,7,172,11,224,0,156],[0,0,4,10,0,0,33,61,0,0,0,6,6,0,0,41,0,0,0,64,0,96,4,63,0,0,0,9,6,0,0,41],[0,0,0,11,11,0,0,41,0,0,0,0,0,107,4,53,0,0,0,8,6,0,0,41,0,0,0,0,0,110,4,53],[0,0,0,0,11,6,0,75,0,0,4,250,0,0,97,61,0,0,0,248,10,160,2,16,0,0,0,7,10,160,1,175],[0,0,7,178,10,160,0,65,0,0,0,11,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,180,11,0,0,65,0,9,0,0,0,10,0,29,0,0,0,0,0,186,4,53],[0,11,0,0,0,6,0,29,0,0,0,33,12,96,0,57,0,0,0,0,15,14,4,51,0,0,0,0,11,15,0,75],[0,0,28,153,0,0,97,61,0,0,0,0,11,0,0,25,0,0,0,0,10,203,0,25,0,0,0,32,11,176,0,57],[0,0,0,0,6,235,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,28,146,0,0,65,61,0,0,0,0,12,207,0,25,0,0,0,0,0,12,4,53,0,0,0,0,14,4,4,51],[0,0,0,0,6,14,0,75,0,0,28,166,0,0,97,61,0,0,0,0,11,0,0,25,0,0,0,0,6,203,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,28,159,0,0,65,61,0,0,0,0,12,206,0,25,0,0,0,0,0,12,4,53],[0,0,0,0,14,8,4,51,0,0,0,0,4,14,0,75,0,0,28,179,0,0,97,61,0,0,0,0,4,0,0,25],[0,0,0,0,6,196,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,28,172,0,0,65,61,0,0,0,12,4,16,3,96],[0,0,0,0,1,206,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,28,194,0,0,97,61,0,0,0,0,12,0,0,25,0,0,0,5,10,192,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,12,192,0,57],[0,0,0,0,10,140,0,75,0,0,28,186,0,0,65,61,0,0,0,0,10,6,0,75,0,0,28,209,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,28,222,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,28,215,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,13,4,51,0,0,0,0,5,4,0,75,0,0,28,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,7,213,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,28,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,2,4,51,0,0,0,0,5,4,0,75,0,0,28,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,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,28,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,2,9,4,51,0,0,0,0,4,2,0,75],[0,0,29,5,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,254,0,0,65,61,0,0,0,0,1,18,0,25,0,0,0,0,0,1,4,53,0,0,0,11,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,168,3,16,0,156,0,0,4,10,0,0,33,61,0,0,0,1,2,32,1,144],[0,0,4,10,0,0,193,61,0,0,0,64,0,16,4,63,0,0,7,164,1,0,0,65,0,0,0,9,3,0,0,41],[0,0,7,164,2,48,0,156,0,0,0,0,3,1,128,25,0,0,0,64,2,48,2,16,0,0,0,11,3,0,0,41],[0,0,0,0,3,3,4,51,0,0,7,164,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,164,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,181,1,16,1,199,0,0,128,16,2,0,0,57],[30,139,30,129,0,0,4,15,0,0,0,1,2,32,1,144,0,0,0,204,0,0,97,61,0,0,29,224,0,0,1,61],[0,0,7,172,11,224,0,156,0,0,4,10,0,0,33,61,0,0,0,6,6,0,0,41,0,0,0,64,0,96,4,63],[0,0,0,9,6,0,0,41,0,0,0,11,11,0,0,41,0,0,0,0,0,107,4,53,0,0,0,8,6,0,0,41],[0,0,0,0,0,110,4,53,0,0,0,0,11,6,0,75,0,0,4,250,0,0,97,61,0,0,0,248,10,160,2,16],[0,0,0,7,10,160,1,175,0,0,7,178,10,160,0,65,0,0,0,11,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,181,11,0,0,65,0,9,0,0,0,10,0,29],[0,0,0,0,0,186,4,53,0,11,0,0,0,6,0,29,0,0,0,33,12,96,0,57,0,0,0,0,15,14,4,51],[0,0,0,0,11,15,0,75,0,0,29,78,0,0,97,61,0,0,0,0,11,0,0,25,0,0,0,0,10,203,0,25],[0,0,0,32,11,176,0,57,0,0,0,0,6,235,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,71,0,0,65,61,0,0,0,0,12,207,0,25,0,0,0,0,0,12,4,53],[0,0,0,0,14,4,4,51,0,0,0,0,6,14,0,75,0,0,29,91,0,0,97,61,0,0,0,0,11,0,0,25],[0,0,0,0,6,203,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,84,0,0,65,61,0,0,0,0,12,206,0,25],[0,0,0,0,0,12,4,53,0,0,0,0,14,8,4,51,0,0,0,0,4,14,0,75,0,0,29,104,0,0,97,61],[0,0,0,0,4,0,0,25,0,0,0,0,6,196,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,97,0,0,65,61],[0,0,0,12,4,16,3,96,0,0,0,0,1,206,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,119,0,0,97,61,0,0,0,0,12,0,0,25,0,0,0,5,10,192,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,12,192,0,57,0,0,0,0,10,140,0,75,0,0,29,111,0,0,65,61,0,0,0,0,10,6,0,75],[0,0,29,134,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,147,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,140,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,13,4,51,0,0,0,0,5,4,0,75,0,0,29,160,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,213,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,153,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,173,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,166,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,186,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,179,0,0,65,61,0,0,0,0,1,18,0,25,0,0,0,0,0,1,4,53],[0,0,0,11,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,168,3,16,0,156,0,0,4,10,0,0,33,61],[0,0,0,1,2,32,1,144,0,0,4,10,0,0,193,61,0,0,0,64,0,16,4,63,0,0,7,164,1,0,0,65],[0,0,0,9,3,0,0,41,0,0,7,164,2,48,0,156,0,0,0,0,3,1,128,25,0,0,0,64,2,48,2,16],[0,0,0,11,3,0,0,41,0,0,0,0,3,3,4,51,0,0,7,164,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,164,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,181,1,16,1,199],[0,0,128,16,2,0,0,57,30,139,30,129,0,0,4,15,0,0,0,1,2,32,1,144,0,0,0,204,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,14,74,0,0,1,61,0,0,7,164,4,16,1,151,0,0,0,0,3,0,4,20,0,0,0,17,5,0,3,103],[0,1,0,0,0,69,3,85,0,0,0,0,1,18,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,1,2,32,1,144,0,0,30,66,0,0,193,61,0,0,0,0,6,0,0,49],[0,0,0,0,2,22,0,75,0,0,30,66,0,0,65,61,0,0,0,0,2,69,3,79,0,0,0,0,1,22,0,73],[0,0,7,164,1,16,1,151,0,1,0,0,0,18,3,229,0,0,7,182,4,48,0,156,0,0,30,70,0,0,129,61],[0,0,0,0,1,18,3,223,0,0,0,192,2,48,2,16,0,0,7,183,2,32,1,151,0,0,7,184,2,32,1,199],[0,1,0,0,0,33,3,181,0,0,0,0,1,33,3,175,0,0,128,16,2,0,0,57,30,139,30,134,0,0,4,15],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,7,164,3,48,1,151,0,0,0,1,2,32,1,144],[0,0,30,77,0,0,97,61,0,0,0,63,2,48,0,57,0,0,7,185,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,168,6,64,0,156,0,0,30,104,0,0,33,61,0,0,0,1,5,80,1,144,0,0,30,104,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,30,32,0,0,97,61,0,0,0,0,6,0,0,49,0,0,0,17,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,30,24,0,0,65,61],[0,0,0,0,5,0,0,75,0,0,30,34,0,0,97,61,0,0,0,31,5,48,1,143,0,0,0,5,3,48,2,114],[0,0,30,46,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,38,0,0,65,61,0,0,0,0,6,5,0,75,0,0,30,61,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,110,0,0,193,61],[0,0,0,0,1,4,4,51,0,0,0,0,0,1,4,45,0,0,7,201,1,0,0,65,0,0,0,0,0,16,4,53],[0,0,0,17,1,0,0,57,0,0,30,107,0,0,1,61,0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57],[0,0,7,198,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,116,0,0,1,61,0,0,0,31,4,48,1,143,0,0,0,5,2,48,2,114,0,0,30,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,30,81,0,0,65,61],[0,0,0,0,5,4,0,75,0,0,30,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,30,141,0,1,4,48],[0,0,7,201,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,202,1,0,0,65,0,0,30,141,0,1,4,48,0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57],[0,0,7,187,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,188,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,164,2,0,0,65,0,0,7,164,3,16,0,156],[0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16,0,0,7,189,1,16,1,199,0,0,30,141,0,1,4,48],[0,0,0,0,0,1,4,47,0,0,30,132,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,137,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,139,0,0,4,50],[0,0,30,140,0,1,4,46,0,0,30,141,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,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],[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],[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],[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],[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],[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],[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],[174,196,155,218,68,154,152,84,42,179,140,69,242,32,6,193,149,34,94,126,187,249,182,101,208,88,111,31,201,177,65,6]],"0x000000000000000000000000000000000000800d":[[0,0,0,0,8,1,0,25,0,0,0,96,8,128,2,112,0,0,0,17,8,128,1,151,0,0,0,1,9,32,1,144],[0,0,0,56,0,0,193,61,0,0,0,2,2,32,1,144,0,0,0,54,0,0,97,61,0,0,0,5,2,48,0,140],[0,0,0,54,0,0,129,61,0,0,0,32,2,128,2,16,0,0,0,0,2,35,0,25,0,0,0,1,2,32,0,57],[0,0,0,0,9,0,4,17,0,0,0,0,0,146,4,31,0,0,0,1,2,48,0,140,0,0,0,26,0,0,161,61],[0,0,0,2,2,48,0,140,0,0,0,34,0,0,97,61,0,0,0,3,2,48,0,140,0,0,0,37,0,0,97,61],[0,0,0,4,2,48,0,140,0,0,0,54,0,0,193,61,0,0,0,0,0,84,4,30,0,0,0,0,0,118,4,30],[0,0,0,0,3,0,0,25,0,0,0,41,0,0,1,61,0,0,0,0,2,3,0,75,0,0,0,41,0,0,97,61],[0,0,0,1,2,48,0,140,0,0,0,54,0,0,193,61,0,0,0,0,2,1,4,59,0,0,0,0,0,36,4,30],[0,0,0,32,3,0,0,57,0,0,0,41,0,0,1,61,0,0,0,0,0,84,4,30,0,0,0,0,3,0,0,25],[0,0,0,41,0,0,1,61,0,0,0,0,0,84,4,30,0,0,0,0,2,1,4,59,0,0,0,0,0,38,4,30],[0,0,0,32,3,0,0,57,0,0,0,0,2,131,0,75,0,0,0,52,0,0,129,61,0,0,0,32,2,48,0,57],[0,0,0,0,2,33,3,79,0,0,0,0,4,49,3,79,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,131,0,75,0,0,0,43,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,63,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,18,1,0,0,65],[0,0,0,62,0,1,4,46,0,0,0,61,0,0,4,50,0,0,0,62,0,1,4,46,0,0,0,63,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,0,0,0,0],[221,20,130,158,8,71,137,243,160,83,8,122,158,110,111,137,21,66,92,151,31,136,99,209,24,178,150,169,144,41,162,168]],"0x000000000000000000000000000000000000800e":[[0,18,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,4,48,2,112],[0,0,1,56,3,64,1,151,0,1,0,0,0,49,3,85,0,2,0,0,0,49,3,85,0,3,0,0,0,49,3,85],[0,4,0,0,0,49,3,85,0,5,0,0,0,49,3,85,0,6,0,0,0,49,3,85,0,7,0,0,0,49,3,85],[0,8,0,0,0,49,3,85,0,9,0,0,0,49,3,85,0,10,0,0,0,49,3,85,0,11,0,0,0,49,3,85],[0,12,0,0,0,49,3,85,0,13,0,0,0,49,3,85,0,14,0,0,0,49,3,85,0,15,0,0,0,49,3,85],[0,16,0,0,0,49,3,85,0,17,0,0,0,1,3,85,0,2,0,0,0,4,0,29,0,0,1,56,0,64,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,1,244,0,0,193,61],[0,0,0,4,2,48,0,140,0,0,2,80,0,0,65,61,0,0,0,0,2,1,4,59,0,0,0,224,2,32,2,112],[0,0,1,58,4,32,0,156,0,0,1,155,0,0,193,61,0,0,0,4,2,48,0,138,0,0,0,128,2,32,0,140],[0,0,2,80,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,60,2,64,0,156,0,0,2,80,0,0,33,61,0,0,0,7,2,0,0,41,0,0,0,35,2,32,0,57],[0,0,1,61,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,61,2,32,1,151,0,0,0,0,6,2,0,75,0,0,0,0,4,0,128,25,0,0,1,61,2,32,0,156],[0,0,0,0,4,5,192,25,0,0,0,0,2,4,0,75,0,0,2,80,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,60,2,96,0,156],[0,0,2,80,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,80,0,0,65,61,0,0,0,100,2,16,3,112,0,0,0,0,2,2,4,59],[0,10,0,0,0,2,0,29,0,0,1,60,2,32,0,156,0,0,2,80,0,0,33,61,0,0,0,10,2,0,0,41],[0,0,0,35,2,32,0,57,0,0,1,61,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,61,2,32,1,151,0,0,0,0,9,2,0,75,0,0,0,0,4,0,128,25],[0,0,1,61,2,32,0,156,0,0,0,0,4,7,192,25,0,0,0,0,2,4,0,75,0,0,2,80,0,0,193,61],[0,0,0,10,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,12,0,0,0,2,0,29,0,0,1,60,2,32,0,156,0,0,2,80,0,0,33,61,0,0,0,10,2,0,0,41],[0,0,0,36,4,32,0,57,0,11,0,0,0,4,0,29,0,0,0,12,2,64,0,41,0,0,0,0,2,50,0,75],[0,0,2,80,0,0,33,61,0,0,0,0,2,0,4,17,0,0,128,8,2,32,0,140,0,0,1,252,0,0,193,61],[0,0,0,9,2,224,0,140,0,0,2,4,0,0,129,61,0,0,0,2,11,0,0,57,0,0,1,16,41,128,0,201],[0,0,1,17,10,0,0,138,0,9,0,0,0,0,0,29,0,0,0,0,3,0,0,25,0,6,0,0,0,14,0,29],[0,0,0,0,2,8,0,75,0,0,0,117,0,0,97,61,0,0,0,0,66,137,0,217,0,0,1,16,2,32,0,140],[0,0,2,246,0,0,193,61,0,0,0,0,2,147,0,75,0,0,0,227,0,0,129,61,0,0,0,0,2,163,0,75],[0,0,2,246,0,0,33,61,0,0,1,16,4,48,0,57,0,0,0,0,2,100,0,75,0,0,2,80,0,0,33,61],[0,0,0,0,2,83,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,60,3,48,1,152,0,0,0,0,3,4,0,25,0,0,0,112,0,0,193,61,0,0,0,1,13,0,0,138],[0,0,0,9,3,208,0,107,0,0,2,246,0,0,97,61,0,0,0,11,3,176,0,41,0,0,0,0,3,49,3,79],[0,0,0,8,7,32,0,138,0,0,0,0,2,113,3,79,0,0,0,0,3,3,4,59,0,0,0,0,2,2,4,59],[0,0,0,0,2,50,0,75,0,0,2,44,0,0,193,61,0,0,0,33,2,0,0,138,0,0,0,0,2,43,0,75],[0,0,2,246,0,0,33,61,0,0,0,32,2,176,0,57,0,0,0,12,3,32,0,108,0,0,1,113,0,0,129,61],[0,0,0,11,2,32,0,41,0,0,0,0,2,33,3,79,0,0,0,0,15,2,4,59,0,0,1,99,2,240,1,152],[0,0,0,251,3,240,2,112,0,0,0,32,3,0,96,57,0,0,0,33,2,176,0,57,0,0,0,0,11,35,0,25],[0,0,0,0,12,59,0,75,0,0,0,0,12,0,0,25,0,0,0,1,12,0,64,57,0,0,0,1,12,192,1,144],[0,0,2,246,0,0,193,61,0,0,0,12,12,176,0,108,0,0,2,80,0,0,33,61,0,0,0,11,2,32,0,41],[0,0,0,72,12,112,0,57,0,0,0,0,12,193,3,79,0,0,0,40,7,112,0,57,0,0,0,0,14,113,3,79],[0,0,0,0,2,33,3,79,0,0,0,0,7,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,2,12,4,59,0,8,0,0,0,2,0,29,0,0,0,31,2,48,0,140],[0,0,0,3,2,48,2,16,0,0,0,188,0,0,33,61,0,0,1,0,12,32,0,137,0,0,0,0,12,205,1,207],[0,0,0,0,13,32,0,73,0,0,1,0,14,0,0,138,0,0,0,0,13,237,0,75,0,0,0,6,14,0,0,41],[0,0,0,0,12,0,64,25,0,0,0,0,7,199,1,111,0,0,0,0,12,3,0,75,0,0,0,225,0,0,97,61],[0,0,1,0,12,32,0,140,0,0,2,246,0,0,33,61,0,0,0,0,195,50,0,217,0,0,0,8,3,48,0,140],[0,0,2,246,0,0,193,61,0,0,1,0,3,32,0,137,0,0,0,0,3,55,2,47,0,0,0,0,2,2,0,75],[0,0,0,0,3,0,96,25,0,0,0,9,2,0,0,41,0,9,0,1,0,32,0,61,0,0,0,248,2,240,2,112],[0,0,0,7,2,32,1,143,0,0,0,1,7,32,0,140,0,0,0,212,0,0,33,61,0,0,0,0,7,2,0,75],[0,0,0,216,0,0,97,61,0,0,0,1,2,32,0,140,0,0,1,127,0,0,193,61,0,0,0,5,2,48,0,41],[0,0,0,8,2,32,0,108,0,0,0,0,3,4,0,25,0,0,0,112,0,0,97,61,0,0,1,145,0,0,1,61],[0,0,0,2,7,32,0,140,0,0,0,220,0,0,97,61,0,0,0,3,2,32,0,140,0,0,1,127,0,0,193,61],[0,0,0,8,2,48,0,108,0,0,0,0,3,4,0,25,0,0,0,112,0,0,97,61,0,0,1,117,0,0,1,61],[0,0,0,5,2,48,0,105,0,0,0,8,2,32,0,108,0,0,0,0,3,4,0,25,0,0,0,112,0,0,97,61],[0,0,1,135,0,0,1,61,0,0,0,0,3,0,0,25,0,0,0,197,0,0,1,61,0,0,0,10,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,9,2,32,0,107,0,0,2,14,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,10,0,0,0,3,0,29,0,0,1,0,2,48,0,140,0,0,2,24,0,0,33,61],[0,0,0,0,7,0,0,25,0,0,0,253,0,0,1,61,0,0,0,0,2,55,0,75,0,0,0,0,7,4,0,25],[0,0,1,117,0,0,193,61,0,0,0,0,2,8,0,75,0,0,1,2,0,0,97,61,0,0,0,0,50,137,0,217],[0,0,1,16,2,32,0,140,0,0,2,246,0,0,193,61,0,0,0,0,2,151,0,75,0,0,2,82,0,0,129,61],[0,0,0,0,2,167,0,75,0,0,2,246,0,0,33,61,0,0,1,16,4,112,0,57,0,0,0,0,2,100,0,75],[0,0,2,80,0,0,33,61,0,0,0,0,2,87,0,25,0,0,0,60,3,32,0,57,0,0,0,0,2,49,3,79],[0,0,0,0,2,2,4,59,0,0,1,60,15,32,1,152,0,0,0,0,7,4,0,25,0,0,0,253,0,0,97,61],[0,0,0,0,13,235,0,25,0,0,0,0,2,189,0,75,0,0,0,0,2,0,0,25,0,0,0,1,2,0,64,57],[0,0,0,1,2,32,1,144,0,0,2,246,0,0,193,61,0,0,0,12,2,208,0,108,0,0,2,80,0,0,33,61],[0,0,0,11,2,176,0,41,0,0,0,0,2,33,3,79,0,0,0,0,2,2,4,59,0,0,0,31,7,224,0,140],[0,0,1,32,0,0,33,61,0,0,0,5,2,32,1,127,0,0,0,0,7,14,0,75,0,0,2,238,0,0,97,61],[0,0,0,10,183,224,0,249,0,0,0,8,7,112,0,140,0,0,2,246,0,0,193,61,0,0,0,10,7,0,0,107],[0,0,2,238,0,0,97,61,0,0,0,8,2,32,2,80,0,0,0,0,2,47,0,75,0,0,2,238,0,0,193,61],[0,0,0,12,2,208,0,108,0,0,1,113,0,0,129,61,0,0,0,11,2,208,0,41,0,0,0,0,2,33,3,79],[0,0,0,0,15,2,4,59,0,0,1,99,2,240,1,152,0,0,0,251,7,240,2,112,0,0,0,32,7,0,96,57],[0,0,0,1,2,208,0,57,0,0,0,0,11,39,0,25,0,0,0,0,12,219,0,75,0,0,2,246,0,0,161,61],[0,0,0,12,12,176,0,108,0,0,2,80,0,0,33,61,0,0,0,11,2,32,0,41,0,0,0,64,12,48,0,57],[0,0,0,0,12,193,3,79,0,0,0,32,3,48,0,57,0,0,0,0,3,49,3,79,0,0,0,0,2,33,3,79],[0,0,0,0,2,2,4,59,0,0,0,0,3,3,4,59,0,9,0,0,0,3,0,29,0,0,0,0,3,12,4,59],[0,0,0,31,12,112,0,140,0,0,0,3,12,112,2,16,0,0,1,80,0,0,33,61,0,0,1,0,14,192,0,137],[0,0,0,4,14,224,1,239,0,0,0,0,13,192,0,73,0,7,0,0,0,3,0,29,0,0,0,0,3,11,0,25],[0,0,0,3,13,208,0,108,0,0,0,0,11,3,0,25,0,0,0,7,3,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,13,7,0,75,0,0,1,111,0,0,97,61],[0,0,1,0,13,192,0,140,0,0,2,246,0,0,33,61,0,0,0,0,215,124,0,217,0,0,0,8,7,112,0,140],[0,0,2,246,0,0,193,61,0,0,1,0,7,192,0,137,0,0,0,0,7,114,2,47,0,0,0,0,2,12,0,75],[0,0,0,0,7,0,96,25,0,0,0,248,2,240,2,112,0,0,0,7,2,32,1,143,0,0,0,1,12,32,0,140],[0,0,1,102,0,0,33,61,0,0,0,0,12,2,0,75,0,0,0,250,0,0,97,61,0,0,0,1,2,32,0,140],[0,0,1,127,0,0,193,61,0,0,0,9,2,112,0,41,0,0,0,0,2,50,0,75,0,0,0,0,7,4,0,25],[0,0,0,253,0,0,97,61,0,0,1,145,0,0,1,61,0,0,0,3,12,32,0,140,0,0,0,250,0,0,97,61],[0,0,0,2,2,32,0,140,0,0,1,127,0,0,193,61,0,0,0,9,2,112,0,105,0,0,0,0,2,50,0,75],[0,0,0,0,7,4,0,25,0,0,0,253,0,0,97,61,0,0,1,135,0,0,1,61,0,0,0,0,7,0,0,25],[0,0,1,89,0,0,1,61,0,0,1,104,1,0,0,65,0,0,0,0,0,16,4,53,0,0,0,50,1,0,0,57],[0,0,2,249,0,0,1,61,0,0,1,62,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,112,1,0,0,65],[0,0,0,196,0,16,4,63,0,0,1,113,1,0,0,65,0,0,2,112,0,0,1,61,0,0,1,62,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,114,1,0,0,65,0,0,2,100,0,0,1,61,0,0,1,62,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,108,1,0,0,65,0,0,0,196,0,16,4,63,0,0,1,109,1,0,0,65],[0,0,2,112,0,0,1,61,0,0,1,62,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,110,1,0,0,65],[0,0,0,196,0,16,4,63,0,0,1,111,1,0,0,65,0,0,2,112,0,0,1,61,0,0,1,59,2,32,0,156],[0,0,2,80,0,0,193,61,0,0,0,4,2,48,0,138,0,0,0,64,2,32,0,140,0,0,2,80,0,0,65,61],[0,0,0,4,2,16,3,112,0,0,0,0,5,2,4,59,0,0,1,60,2,80,0,156,0,0,2,80,0,0,33,61],[0,0,0,35,2,80,0,57,0,0,1,61,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,61,2,32,1,151,0,0,0,0,7,2,0,75,0,0,0,0,4,0,128,25],[0,0,1,61,2,32,0,156,0,0,0,0,4,6,192,25,0,0,0,0,2,4,0,75,0,0,2,80,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,60,2,32,0,156,0,0,2,80,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,80,0,0,65,61,0,0,0,36,6,16,3,112,0,0,0,0,6,6,4,59],[0,0,1,60,7,96,0,156,0,0,2,80,0,0,33,61,0,0,0,35,7,96,0,57,0,0,1,61,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,61,7,112,1,151],[0,0,0,0,10,7,0,75,0,0,0,0,8,0,128,25,0,0,1,61,7,112,0,156,0,0,0,0,8,9,192,25],[0,0,0,0,7,8,0,75,0,0,2,80,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,60,8,128,0,156,0,0,2,80,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,80,0,0,33,61,0,0,0,0,3,0,4,17,0,0,128,1,3,48,0,140,0,0,2,252,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,65,3,48,1,151,0,0,0,2,8,48,1,191,0,0,0,10,7,128,0,107,0,0,2,80,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,3,4,0,0,193,61],[0,0,0,1,9,112,2,112,0,0,0,3,10,48,2,112,0,0,0,0,9,154,0,75,0,0,3,18,0,0,161,61],[0,0,1,62,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,77,1,0,0,57,0,0,0,164,0,16,4,63,0,0,1,93,1,0,0,65,0,0,0,196,0,16,4,63],[0,0,1,94,1,0,0,65,0,0,0,228,0,16,4,63,0,0,1,95,1,0,0,65,0,0,3,15,0,0,1,61],[0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,2,80,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,57,1,0,0,65,0,0,4,220,0,1,4,46],[0,0,1,62,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,96,1,0,0,65,0,0,2,100,0,0,1,61],[0,0,1,62,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,115,1,0,0,65,0,0,0,196,0,16,4,63],[0,0,1,116,1,0,0,65,0,0,2,112,0,0,1,61,0,0,1,62,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,97,1,0,0,65,0,0,0,196,0,16,4,63,0,0,1,98,1,0,0,65,0,0,2,112,0,0,1,61],[0,0,0,0,2,8,0,75,0,0,2,52,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,82,0,0,129,61],[0,0,0,0,4,163,0,75,0,0,2,246,0,0,33,61,0,0,1,16,4,48,0,57,0,0,0,0,7,100,0,75],[0,0,2,80,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,60,3,48,1,152,0,0,0,0,3,4,0,25,0,0,2,30,0,0,97,61,0,0,2,72,0,0,1,61],[0,0,1,62,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,107,1,0,0,65,0,0,2,100,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,246,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,82,0,0,129,61,0,0,0,0,4,163,0,75,0,0,2,246,0,0,33,61,0,0,1,16,4,48,0,57],[0,0,0,0,7,100,0,75,0,0,2,80,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,60,3,48,1,152,0,0,0,0,3,4,0,25,0,0,2,59,0,0,97,61],[0,0,0,0,1,139,0,25,0,0,0,0,2,177,0,75,0,0,0,0,2,0,0,25,0,0,0,1,2,0,64,57],[0,0,0,1,2,32,1,144,0,0,2,246,0,0,193,61,0,0,0,12,1,16,0,108,0,0,2,236,0,0,161,61],[0,0,0,0,1,0,0,25,0,0,4,221,0,1,4,48,0,0,0,12,2,176,0,108,0,0,2,103,0,0,193,61],[0,0,1,56,2,80,1,151,0,0,0,0,1,33,3,79,0,0,0,1,3,0,0,41,0,0,0,2,2,48,0,105],[0,0,1,56,3,32,1,151,0,0,0,0,2,0,4,20,0,1,0,0,0,49,3,229,0,0,1,102,4,32,0,156],[0,0,2,115,0,0,65,61,0,0,1,62,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,105,1,0,0,65],[0,0,0,196,0,16,4,63,0,0,1,64,1,0,0,65,0,0,4,221,0,1,4,48,0,0,1,62,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,100,1,0,0,65,0,0,0,196,0,16,4,63,0,0,1,101,1,0,0,65],[0,0,0,228,0,16,4,63,0,0,1,72,1,0,0,65,0,0,4,221,0,1,4,48,0,0,0,0,1,49,3,223],[0,0,0,192,2,32,2,16,0,0,1,77,2,32,1,151,0,0,1,78,2,32,1,199,0,1,0,0,0,33,3,181],[0,0,0,0,1,33,3,175,0,0,128,16,2,0,0,57,4,219,4,214,0,0,4,15,0,0,0,0,3,1,0,25],[0,0,0,96,3,48,2,112,0,0,1,56,3,48,1,151,0,0,0,1,2,32,1,144,0,0,2,196,0,0,97,61],[0,0,0,63,2,48,0,57,0,0,1,79,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,60,6,64,0,156],[0,0,4,82,0,0,33,61,0,0,0,1,5,80,1,144,0,0,4,82,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,155,0,0,97,61],[0,0,0,0,6,0,0,49,0,0,0,17,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,147,0,0,65,61,0,0,0,0,5,0,0,75],[0,0,2,157,0,0,97,61,0,0,0,31,5,48,1,143,0,0,0,5,3,48,2,114,0,0,2,169,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,161,0,0,65,61,0,0,0,0,6,5,0,75,0,0,2,184,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,56,3,0,0,65,0,0,0,64,1,0,4,61,0,0,1,56,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,223,0,0,193,61],[0,0,0,0,2,4,4,51,0,0,0,0,0,33,4,53,0,0,1,90,1,48,1,199,0,0,4,220,0,1,4,46],[0,0,0,31,4,48,1,143,0,0,0,5,2,48,2,114,0,0,2,207,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,200,0,0,65,61,0,0,0,0,5,4,0,75],[0,0,2,221,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,221,0,1,4,48,0,0,0,68,2,16,0,57],[0,0,1,103,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,62,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,81,1,48,1,199,0,0,4,221,0,1,4,48],[0,0,0,0,1,8,0,75,0,0,2,246,0,0,193,61,0,0,1,62,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,106,1,0,0,65,0,0,2,100,0,0,1,61,0,0,1,104,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,89,1,0,0,65,0,0,4,221,0,1,4,48],[0,0,1,62,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,63,1,0,0,65,0,0,2,100,0,0,1,61],[0,0,1,62,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,66,1,0,0,65,0,0,0,196,0,16,4,63],[0,0,1,67,1,0,0,65,0,0,0,228,0,16,4,63,0,0,1,68,1,0,0,65,0,0,1,4,0,16,4,63],[0,0,1,69,1,0,0,65,0,0,4,221,0,1,4,48,0,0,0,10,9,128,0,107,0,0,3,45,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,65,10,160,1,151,0,0,0,0,11,58,0,75,0,0,3,67,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,60,10,160,1,152,0,0,3,77,0,0,193,61,0,0,0,2,9,144,0,57,0,0,0,0,10,121,0,75],[0,0,3,25,0,0,65,61,0,0,0,11,3,0,0,41,0,0,0,31,3,48,1,144,0,0,3,59,0,0,193,61],[0,0,0,11,3,0,0,41,0,0,1,76,3,48,0,156,0,0,3,87,0,0,65,61,0,0,1,62,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,92,1,0,0,65,0,0,2,100,0,0,1,61,0,0,1,62,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,75,1,0,0,65,0,0,2,100,0,0,1,61,0,0,1,62,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,70,1,0,0,65,0,0,0,196,0,16,4,63,0,0,1,71,1,0,0,65],[0,0,2,112,0,0,1,61,0,0,1,62,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,73,1,0,0,65],[0,0,0,196,0,16,4,63,0,0,1,74,1,0,0,65,0,0,2,112,0,0,1,61,0,0,0,11,3,0,0,41],[0,0,0,32,3,48,1,144,0,0,3,98,0,0,193,61,0,0,1,62,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,91,1,0,0,65,0,0,2,100,0,0,1,61,0,0,1,56,3,64,1,151,0,0,0,0,1,49,3,79],[0,0,0,2,2,32,0,105,0,0,1,56,3,32,1,151,0,0,0,0,2,0,4,20,0,1,0,0,0,49,3,229],[0,0,1,56,4,32,0,156,0,0,2,93,0,0,33,61,0,0,0,0,1,49,3,223,0,0,0,192,2,32,2,16],[0,0,1,77,2,32,1,151,0,0,1,78,2,32,1,199,0,1,0,0,0,33,3,181,0,0,0,0,1,33,3,175],[0,0,0,2,2,0,0,57,4,219,4,214,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,0,1,56,3,48,1,151,0,0,0,1,2,32,1,144,0,0,4,86,0,0,97,61,0,0,0,63,2,48,0,57],[0,0,1,79,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,60,6,64,0,156,0,0,4,82,0,0,33,61],[0,0,0,1,5,80,1,144,0,0,4,82,0,0,193,61,0,0,0,64,0,64,4,63,0,0,0,0,5,50,4,54],[0,0,0,17,4,0,3,103,0,0,0,31,6,48,0,57,0,0,0,5,6,96,2,114,0,0,3,146,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,138,0,0,65,61,0,0,0,0,6,0,0,75,0,0,3,148,0,0,97,61],[0,0,0,31,6,48,1,143,0,0,0,5,3,48,2,114,0,0,3,160,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,152,0,0,65,61],[0,0,0,0,7,6,0,75,0,0,3,175,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,113,0,0,193,61,0,0,0,0,5,5,4,51],[0,0,1,82,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,83,3,80,1,151,0,0,0,11,4,0,0,41,0,0,0,219,4,64,2,16,0,0,1,84,4,64,1,151],[0,0,0,0,4,52,1,159,0,0,0,31,3,96,1,143,0,11,1,85,0,64,1,203,0,0,0,5,4,96,2,114],[0,0,3,210,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,202,0,0,65,61,0,0,0,0,5,3,0,75,0,0,3,225,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,56,2,0,0,65],[0,0,0,12,4,0,0,41,0,0,1,56,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,56,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,56,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,219,4,204,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,1,56,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,11,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,4,3,0,0,65,61,0,0,0,0,7,5,0,75],[0,0,4,26,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,128,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,60,4,16,0,156,0,0,4,82,0,0,33,61],[0,0,0,1,2,32,1,144,0,0,4,82,0,0,193,61,0,0,0,64,0,16,4,63,0,0,0,32,1,48,0,140],[0,0,2,80,0,0,65,61,0,0,1,86,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,56,1,0,0,65,0,0,0,0,2,0,4,20,0,0,1,56,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,1,87,1,16,1,199,0,0,128,2,2,0,0,57],[4,219,4,209,0,0,4,15,0,0,0,1,2,32,1,144,0,0,4,163,0,0,97,61,0,0,0,0,1,1,4,59],[0,0,0,0,1,1,0,75,0,0,2,80,0,0,97,61,0,0,0,64,4,0,4,61,0,0,1,88,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,56,1,0,0,65,0,0,0,0,2,0,4,20,0,0,1,56,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,1,56,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,89,1,16,1,199,0,0,128,4,2,0,0,57],[4,219,4,204,0,0,4,15,0,0,0,1,2,32,1,144,0,0,4,164,0,0,97,61,0,0,0,12,1,0,0,41],[0,0,1,60,1,16,0,156,0,0,4,196,0,0,161,61,0,0,1,104,1,0,0,65,0,0,0,0,0,16,4,53],[0,0,0,65,1,0,0,57,0,0,2,249,0,0,1,61,0,0,0,31,4,48,1,143,0,0,0,5,2,48,2,114],[0,0,4,97,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,90,0,0,65,61,0,0,0,0,5,4,0,75,0,0,4,111,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,221,0,1,4,48,0,0,1,62,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,80,2,0,0,65,0,0,0,0,0,33,4,53,0,0,1,56,1,0,0,65,0,0,1,56,2,64,0,156],[0,0,0,0,4,1,128,25,0,0,0,64,1,64,2,16,0,0,1,81,1,16,1,199,0,0,4,221,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,141,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,133,0,0,65,61,0,0,0,0,6,4,0,75,0,0,4,156,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,56,1,0,0,65,0,0,1,56,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,221,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,56,3,48,1,151,0,0,0,5,5,48,2,114,0,0,4,180,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,172,0,0,65,61],[0,0,0,0,6,4,0,75,0,0,4,195,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,156,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,90,1,16,1,199,0,0,4,220,0,1,4,46,0,0,0,0,0,1,4,47],[0,0,4,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,4,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,4,217,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,219,0,0,4,50],[0,0,4,220,0,1,4,46,0,0,4,221,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,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],[68,105,99,116,105,111,110,97,114,121,32,115,104,111,117,108,100,32,104,97,118,101,32,97,116,32,109,111,115,116,32,116],[104,101,32,115,97,109,101,32,110,117,109,98,101,114,32,111,102,32,101,110,116,114,105,101,115,32,97,115,32,116,104,101],[32,101,110,99,111,100,101,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],[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],[7,0,0,0,0,0,0,0,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,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],[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],[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],[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],[21,31,210,149,32,255,255,206,159,199,138,190,121,22,125,2,131,202,146,162,133,154,29,16,180,83,90,19,230,186,220,75]],"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],[80,212,93,190,122,101,126,250,163,160,39,229,249,220,119,35,139,87,150,226,104,208,87,146,236,160,207,106,136,19,24,195]],"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],[171,242,174,109,142,229,242,151,29,166,152,164,72,217,11,237,215,175,17,73,255,158,65,52,150,122,253,42,115,72,201,111]],"0x0000000000000000000000000000000000008012":[[0,16,0,0,0,0,0,2,0,1,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,28,3,48,1,151,0,1,0,0,0,49,3,85,0,0,0,0,0,49,3,85,0,2,0,0,0,49,3,85],[0,3,0,0,0,49,3,85,0,4,0,0,0,49,3,85,0,5,0,0,0,49,3,85,0,6,0,0,0,49,3,85],[0,7,0,0,0,49,3,85,0,8,0,0,0,49,3,85,0,9,0,0,0,49,3,85,0,10,0,0,0,49,3,85],[0,11,0,0,0,49,3,85,0,12,0,0,0,49,3,85,0,13,0,0,0,49,3,85,0,14,0,0,0,49,3,85],[0,15,0,0,0,49,3,85,0,0,0,1,2,32,1,144,0,0,0,94,0,0,193,61,0,0,0,0,2,1,4,59],[0,0,0,30,1,0,0,65,0,0,0,0,0,16,4,53,0,1,0,0,0,2,0,29,0,0,0,4,0,32,4,63],[0,0,0,28,1,0,0,65,0,0,0,0,2,0,4,20,0,0,0,28,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,192,1,32,2,16,0,0,0,31,1,16,1,199,0,0,128,4,2,0,0,57,0,106,0,101,0,0,4,15],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,0,28,3,48,1,151,0,0,0,32,4,48,0,140],[0,0,0,32,3,0,128,57,0,0,0,31,4,48,1,143,0,0,0,5,3,48,2,114,0,0,0,52,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,53,0,75,0,0,0,45,0,0,65,61],[0,0,0,0,5,4,0,75,0,0,0,66,0,0,97,61,0,0,0,3,4,64,2,16,0,0,0,5,3,48,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,49,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,19,4,53,0,0,0,1,1,32,1,144,0,0,0,99,0,0,97,61],[0,0,0,1,1,0,0,41,0,0,0,32,1,16,1,151,0,0,0,0,2,0,4,51,0,0,0,0,2,2,0,75],[0,0,0,99,0,0,97,61,0,0,0,33,1,16,0,156,0,0,0,99,0,0,193,61,0,0,0,1,3,0,0,41],[0,0,0,224,1,48,2,112,0,0,255,255,1,16,1,144,0,0,0,2,2,16,2,16,0,0,0,0,2,35,4,69],[0,0,0,0,0,2,3,85,0,0,0,90,0,0,97,61,0,0,0,0,3,0,0,25,0,0,0,5,4,48,2,16],[0,0,0,0,5,66,3,79,0,0,0,0,5,5,4,59,0,0,0,0,0,84,4,53,0,0,0,1,3,48,0,57],[0,0,0,0,4,19,0,75,0,0,0,83,0,0,65,61,0,0,0,0,2,0,0,75,0,0,0,92,0,0,97,61],[0,0,0,101,1,16,2,16,0,0,0,107,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,29,1,0,0,65,0,0,0,107,0,1,4,46,0,0,0,0,1,0,0,25],[0,0,0,108,0,1,4,48,0,0,0,104,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,106,0,0,4,50,0,0,0,107,0,1,4,46],[0,0,0,108,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],[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,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],[220,56,99,58,84,35,238,219,229,209,0,53,91,250,45,9,189,236,187,119,228,37,29,166,230,56,135,76,97,175,68,16]],"0x0000000000000000000000000000000000000100":[[0,0,0,1,2,32,1,144,0,0,0,31,0,0,193,61,0,0,0,0,2,1,0,25,0,0,0,12,2,32,1,151],[0,0,0,13,2,32,0,156,0,0,0,29,0,0,193,61,0,0,0,128,2,16,3,112,0,0,0,0,2,2,4,59],[0,0,0,96,3,16,3,112,0,0,0,0,3,3,4,59,0,0,0,64,4,16,3,112,0,0,0,0,4,4,4,59],[0,0,0,32,5,16,3,112,0,0,0,0,5,5,4,59,0,0,0,0,1,1,4,59,0,0,0,0,0,16,4,53],[0,0,0,32,0,80,4,63,0,0,0,64,0,64,4,63,0,0,0,96,0,48,4,63,0,0,0,128,0,32,4,63],[0,0,46,224,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,29,0,0,97,61,0,0,0,32,1,0,4,61,0,0,0,0,1,1,0,75],[0,0,0,36,0,0,193,61,0,0,0,0,1,0,0,25,0,0,0,39,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,39,0,1,4,46],[0,0,0,15,1,0,0,65,0,0,0,39,0,1,4,46,0,0,0,38,0,0,4,50,0,0,0,39,0,1,4,46],[0,0,0,40,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,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,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,5,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],[99,70,236,230,212,100,45,10,78,238,109,18,132,249,45,147,54,61,78,53,205,95,103,7,180,47,225,23,164,222,237,12]],"0x0000000000000000000000000000000000008011":[[0,3,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,53,3,48,1,151,0,0,0,1,2,32,1,144,0,0,0,60,0,0,193,61],[0,0,0,4,2,48,0,140,0,0,0,195,0,0,65,61,0,0,0,0,2,1,4,59,0,0,0,55,2,32,1,151],[0,0,0,56,2,32,0,156,0,0,0,195,0,0,193,61,0,0,0,0,2,0,4,22,0,0,0,0,2,2,0,75],[0,0,0,195,0,0,193,61,0,0,0,4,2,48,0,138,0,0,0,32,2,32,0,140,0,0,0,195,0,0,65,61],[0,0,0,4,2,16,3,112,0,0,0,0,4,2,4,59,0,0,0,57,2,64,0,156,0,0,0,195,0,0,33,61],[0,0,0,35,2,64,0,57,0,0,0,58,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,58,2,32,1,151,0,0,0,0,7,2,0,75,0,0,0,0,5,0,128,25],[0,0,0,58,2,32,0,156,0,0,0,0,5,6,192,25,0,0,0,0,2,5,0,75,0,0,0,195,0,0,193,61],[0,0,0,4,2,64,0,57,0,0,0,0,5,33,3,79,0,0,0,0,5,5,4,59,0,2,0,0,0,5,0,29],[0,0,0,57,5,80,0,156,0,0,0,195,0,0,33,61,0,0,0,2,4,64,0,41,0,0,0,36,4,64,0,57],[0,0,0,0,4,52,0,75,0,0,0,195,0,0,33,61,0,0,0,0,4,0,4,17,0,0,128,8,4,64,0,140],[0,0,0,68,0,0,193,61,0,0,0,2,4,0,0,41,0,0,0,62,4,64,0,156,0,0,0,78,0,0,65,61],[0,0,0,59,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,29,1,0,0,57,0,0,0,164,0,16,4,63,0,0,0,70,1,0,0,65,0,0,0,75,0,0,1,61],[0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,0,195,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,54,1,0,0,65,0,0,0,208,0,1,4,46],[0,0,0,59,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,0,60,1,0,0,65,0,0,0,196,0,16,4,63],[0,0,0,61,1,0,0,65,0,0,0,209,0,1,4,48,0,0,0,6,4,0,0,57,0,0,0,128,0,64,4,63],[0,0,0,0,3,49,3,79,0,0,0,160,4,0,0,57,0,0,0,0,5,0,0,25,0,0,0,5,6,80,2,16],[0,0,0,0,6,99,3,79,0,0,0,0,6,6,4,59,0,0,0,0,4,100,4,54,0,0,0,1,5,80,0,57],[0,0,0,6,6,80,0,140,0,0,0,83,0,0,65,61,0,0,0,63,4,0,0,65,0,0,0,64,0,64,4,63],[0,0,0,64,4,0,0,65,0,0,1,96,0,64,4,63,0,0,1,128,4,0,0,57,0,0,0,0,5,0,0,25],[0,0,0,5,6,80,2,16,0,0,0,0,6,99,3,79,0,0,0,0,6,6,4,59,0,0,0,0,4,100,4,54],[0,0,0,1,5,80,0,57,0,0,93,0,6,80,0,140,0,0,0,96,0,0,65,61,0,0,0,32,2,32,0,57],[0,0,0,0,1,33,3,79,0,0,0,2,3,0,0,41,0,0,0,31,2,48,1,143,0,0,0,5,3,48,2,114],[0,0,0,118,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,81,3,79],[0,0,0,0,6,6,4,59,0,0,1,128,5,80,0,57,0,0,0,0,0,101,4,53,0,0,0,1,4,64,0,57],[0,0,0,0,5,52,0,75,0,0,0,110,0,0,65,61,0,0,0,0,4,2,0,75,0,0,0,133,0,0,97,61],[0,0,0,5,3,48,2,16,0,0,0,0,1,49,3,79,0,0,0,3,2,32,2,16,0,0,1,128,3,48,0,57],[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,1,128,16,0,0,0,61,0,0,0,0,3,0,0,25,0,0,0,65,33,48,0,209],[0,0,0,2,1,16,0,108,0,0,0,161,0,0,129,61,0,0,0,0,1,0,4,20,0,0,0,53,2,16,0,156],[0,0,0,53,1,0,128,65,0,0,0,192,1,16,2,16,0,3,0,0,0,3,0,29,0,0,0,66,50,48,0,209],[0,0,0,0,1,18,1,159,0,0,0,67,1,16,1,199,0,0,0,1,2,0,0,41,0,207,0,202,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,0,195,0,0,97,61,0,0,0,128,2,0,4,61,0,0,0,3,3,0,0,41],[0,0,0,0,2,50,0,75,0,0,0,189,0,0,161,61,0,0,0,0,1,1,4,59,0,0,0,5,2,48,2,16],[0,0,0,160,2,32,0,57,0,0,0,0,0,18,4,53,0,0,0,5,1,48,0,140,0,0,0,1,3,48,0,57],[0,0,0,135,0,0,65,61,0,0,0,128,1,0,4,61,0,0,0,0,2,1,0,75,0,0,0,189,0,0,97,61],[0,0,0,160,2,0,4,61,0,0,0,7,3,0,0,57,0,0,0,0,0,35,4,29,0,0,0,1,2,16,0,140],[0,0,0,189,0,0,97,61,0,0,0,192,2,0,4,61,0,0,0,8,3,0,0,57,0,0,0,0,0,35,4,29],[0,0,0,3,2,16,0,140,0,0,0,189,0,0,65,61,0,0,0,224,2,0,4,61,0,0,0,9,3,0,0,57],[0,0,0,0,0,35,4,29,0,0,0,3,2,16,0,140,0,0,0,189,0,0,97,61,0,0,1,0,2,0,4,61],[0,0,0,10,3,0,0,57,0,0,0,0,0,35,4,29,0,0,0,5,2,16,0,140,0,0,0,189,0,0,65,61],[0,0,1,32,2,0,4,61,0,0,0,11,3,0,0,57,0,0,0,0,0,35,4,29,0,0,0,5,1,16,0,140],[0,0,0,197,0,0,193,61,0,0,0,68,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,0,69,1,0,0,65,0,0,0,209,0,1,4,48,0,0,0,0,1,0,0,25],[0,0,0,209,0,1,4,48,0,0,1,64,1,0,4,61,0,0,0,12,2,0,0,57,0,0,0,0,0,18,4,29],[0,0,0,0,1,0,0,25,0,0,0,208,0,1,4,46,0,0,0,205,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,207,0,0,4,50],[0,0,0,208,0,1,4,46,0,0,0,209,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,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],[37,85,210,193,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[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],[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,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,11,160,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,11,161,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,11,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,1,240,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,240,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,1,240,0,0,0,1,128,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],[112,117,98,100,97,116,97,32,115,104,111,117,108,100,32,102,105,116,32,105,110,32,54,32,98,108,111,98,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],[235,231,24,156,100,163,130,150,41,177,204,215,93,125,130,10,59,34,25,228,38,125,89,36,215,89,232,130,185,34,33,202]]},"default_account_code":[[0,20,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,8,6,112,1,151,0,19,0,0,0,97,3,85,0,2,0,0,0,97,3,85,0,3,0,0,0,97,3,85],[0,4,0,0,0,97,3,85,0,5,0,0,0,97,3,85,0,6,0,0,0,97,3,85,0,7,0,0,0,97,3,85],[0,8,0,0,0,97,3,85,0,9,0,0,0,97,3,85,0,10,0,0,0,97,3,85,0,11,0,0,0,97,3,85],[0,12,0,0,0,97,3,85,0,13,0,0,0,97,3,85,0,14,0,0,0,97,3,85,0,15,0,0,0,97,3,85],[0,16,0,0,0,97,3,85,0,17,0,0,0,97,3,85,0,18,0,0,0,1,3,85,0,0,5,8,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,60,0,0,193,61],[0,0,0,4,2,96,0,140,0,0,0,68,0,0,65,61,0,0,0,0,2,1,4,59,0,0,0,224,2,32,2,112],[0,0,5,10,3,32,0,156,0,0,0,84,0,0,161,61,0,0,5,11,3,32,0,156,0,0,0,168,0,0,97,61],[0,0,5,12,3,32,0,156,0,0,0,215,0,0,97,61,0,0,5,13,2,32,0,156,0,0,0,70,0,0,193,61],[0,0,0,4,2,96,0,138,0,0,0,32,3,32,0,140,0,0,1,57,0,0,65,61,0,0,0,4,1,16,3,112],[0,0,0,0,1,1,4,59,0,0,5,16,3,16,0,156,0,0,1,57,0,0,33,61,0,0,0,0,1,18,0,73],[0,0,5,17,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,17,1,16,1,151,0,0,0,0,4,1,0,75,0,0,0,0,2,0,160,25,0,0,5,17,1,16,0,156],[0,0,0,0,2,3,192,25,0,0,0,0,1,2,0,75,0,0,4,34,0,0,97,61,0,0,1,57,0,0,1,61],[0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,1,57,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,9,1,0,0,65,0,0,20,29,0,1,4,46],[0,0,0,0,1,6,0,75,0,0,4,34,0,0,97,61,0,0,0,0,1,0,4,18,0,0,5,18,1,16,1,151],[0,0,0,0,2,0,4,16,0,0,0,0,1,33,0,75,0,0,4,34,0,0,193,61,0,0,0,0,1,0,4,17],[0,0,128,1,1,16,0,140,0,0,4,34,0,0,193,61,0,0,5,94,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,95,1,0,0,65,0,0,20,30,0,1,4,48],[0,0,5,14,3,32,0,156,0,0,1,35,0,0,97,61,0,10,0,0,0,4,0,29,0,0,5,15,2,32,0,156],[0,0,0,70,0,0,193,61,0,0,0,4,2,96,0,138,0,0,0,96,2,32,0,140,0,0,1,57,0,0,65,61],[0,0,0,68,2,16,3,112,0,0,0,0,3,2,4,59,0,0,5,16,2,48,0,156,0,0,1,57,0,0,33,61],[0,0,0,4,4,48,0,57,0,0,0,0,5,70,0,73,0,0,5,17,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,17,8,80,1,151,0,0,0,0,9,8,0,75],[0,0,0,0,2,0,160,25,0,0,5,17,8,128,0,156,0,0,0,0,2,7,192,25,0,0,0,0,2,2,0,75],[0,0,1,57,0,0,193,61,0,0,0,0,2,0,4,17,0,0,128,1,2,32,0,140,0,0,4,34,0,0,193,61],[0,0,0,0,2,0,4,18,0,0,5,18,7,32,1,151,0,0,0,0,2,0,4,16,0,0,0,0,7,39,0,75],[0,0,4,34,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,17,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,17,5,80,1,151,0,0,5,17,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,17,5,80,0,156,0,0,0,0,8,9,192,25],[0,0,0,0,5,8,0,75,0,0,1,57,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,16,7,64,0,156,0,0,1,57,0,0,33,61,0,0,0,0,7,70,0,73],[0,0,0,32,5,80,0,57,0,0,5,17,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,17,7,112,1,151,0,0,5,17,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,17,7,112,0,156,0,0,0,0,8,9,192,25],[0,0,0,0,7,8,0,75,0,0,1,57,0,0,193,61,0,0,0,3,7,64,0,140,0,0,2,92,0,0,33,61],[0,0,5,22,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,57,1,0,0,65,0,0,0,196,0,16,4,63],[0,0,5,58,1,0,0,65,0,0,0,228,0,16,4,63,0,0,5,55,1,0,0,65,0,0,20,30,0,1,4,48],[0,0,0,4,2,96,0,138,0,0,0,96,2,32,0,140,0,0,1,57,0,0,65,61,0,0,0,68,2,16,3,112],[0,0,0,0,3,2,4,59,0,0,5,16,2,48,0,156,0,0,1,57,0,0,33,61,0,0,0,4,2,48,0,57],[0,0,0,0,5,38,0,73,0,0,5,17,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,17,9,80,1,151,0,0,0,0,10,9,0,75,0,0,0,0,4,0,160,25],[0,0,5,17,9,144,0,156,0,0,0,0,4,8,192,25,0,0,0,0,4,4,0,75,0,0,1,57,0,0,193,61],[0,0,0,0,4,0,4,17,0,0,128,1,4,64,0,140,0,0,4,34,0,0,193,61,0,0,0,0,4,0,4,18],[0,0,5,18,4,64,1,151,0,0,0,0,8,0,4,16,0,0,0,0,4,132,0,75,0,0,4,34,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,18,4,64,1,151,0,0,0,0,3,3,4,59,0,0,5,24,9,48,0,156],[0,0,2,24,0,0,65,61,0,0,5,22,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,34,1,0,0,65],[0,0,0,196,0,16,4,63,0,0,5,35,1,0,0,65,0,0,20,30,0,1,4,48,0,0,0,4,3,96,0,138],[0,0,0,96,2,48,0,140,0,0,1,57,0,0,65,61,0,0,0,68,2,16,3,112,0,0,0,0,2,2,4,59],[0,0,5,16,4,32,0,156,0,0,1,57,0,0,33,61,0,0,0,0,3,35,0,73,0,0,5,17,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,17,3,48,1,151],[0,0,0,0,6,3,0,75,0,0,0,0,4,0,160,25,0,0,5,17,3,48,0,156,0,0,0,0,4,5,192,25],[0,0,0,0,3,4,0,75,0,0,1,57,0,0,193,61,0,0,0,0,3,0,4,17,0,0,128,1,3,48,0,140],[0,0,4,34,0,0,193,61,0,0,0,0,3,0,4,18,0,0,5,18,3,48,1,151,0,0,0,0,4,0,4,16],[0,0,0,0,3,67,0,75,0,0,4,34,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,2,0,0,0,193,61,0,0,0,0,4,0,4,21,0,0,0,12,4,64,0,138],[0,0,0,5,4,64,2,16,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,8,2,0,0,65,0,0,5,8,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,28,20,8,0,0,4,15,0,0,0,10,3,0,0,41,0,19,0,0,0,1,3,85],[0,0,0,96,1,16,2,112,0,1,5,8,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,4,34,0,0,193,61,0,0,0,64,1,0,4,61,0,0,0,100,2,16,0,57],[0,0,5,20,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,68,2,16,0,57,0,0,5,21,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,22,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,8,2,0,0,65,0,0,5,8,3,16,0,156,0,0,0,0,1,2,128,25],[0,0,0,64,1,16,2,16,0,0,5,23,1,16,1,199,0,0,20,30,0,1,4,48,0,0,0,4,2,96,0,138],[0,0,0,96,2,32,0,140,0,0,1,57,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,16,2,32,0,156,0,0,1,57,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,17,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,17,2,32,1,151,0,0,0,0,5,2,0,75],[0,0,0,0,3,0,160,25,0,0,5,17,2,32,0,156,0,0,0,0,3,4,192,25,0,0,0,0,2,3,0,75],[0,0,1,59,0,0,97,61,0,0,0,0,1,0,0,25,0,0,20,30,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,4,34,0,0,193,61,0,0,0,0,2,0,4,18,0,0,5,18,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,4,34,0,0,193,61,0,0,0,0,2,0,4,20],[0,0,5,59,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,31,1,16,1,151,0,0,5,60,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,28,20,8,0,0,4,15],[0,19,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,8,0,48,1,157],[0,0,5,8,8,48,1,151,0,0,0,63,3,128,0,57,0,0,5,61,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,16,5,48,0,156,0,0,19,58,0,0,33,61,0,0,0,1,4,64,1,144,0,0,19,58,0,0,193,61],[0,0,0,64,0,48,4,63,0,0,0,0,7,134,4,54,0,0,0,18,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,125,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,117,0,0,65,61,0,0,0,0,9,0,0,75,0,0,1,127,0,0,97,61,0,0,0,31,9,128,1,143],[0,0,0,5,8,128,2,114,0,0,1,139,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,131,0,0,65,61,0,0,0,0,10,9,0,75],[0,0,1,154,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,82,0,0,97,61],[0,0,0,8,1,0,0,107,0,0,18,1,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,1,2,16,0,140,0,0,2,111,0,0,33,61],[0,0,0,0,2,1,0,75,0,0,2,196,0,0,97,61,0,0,0,1,1,16,0,140,0,0,2,178,0,0,193,61],[0,0,5,62,1,0,0,65,0,0,0,0,0,16,4,57,0,0,5,8,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,5,8,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,5,63,1,16,1,199],[0,0,128,11,2,0,0,57,20,28,20,13,0,0,4,15,0,0,0,1,2,32,1,144,0,0,18,65,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,63,0,0,65,61],[0,0,0,128,1,64,2,112,0,0,5,66,2,64,0,156,0,0,0,0,1,4,160,25,0,0,5,66,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,16,6,16,0,156],[0,0,0,0,5,2,160,25,0,0,0,64,2,16,2,112,0,0,5,16,6,16,0,156,0,0,0,0,2,1,160,25],[0,0,0,4,1,80,1,191,0,0,5,8,6,32,0,156,0,0,0,0,1,5,160,25,0,0,0,32,6,32,2,112],[0,0,5,8,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,16,6,16,0,156,0,0,19,58,0,0,33,61,0,0,0,1,2,32,1,144,0,0,19,58,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,18,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,238,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,230,0,0,65,61,0,0,0,0,7,0,0,75,0,0,1,240,0,0,97,61],[0,0,0,0,7,3,4,51,0,0,0,0,7,7,0,75,0,0,9,198,0,0,97,61,0,0,0,0,7,6,4,51],[0,0,5,65,7,112,1,151,0,0,0,248,8,80,2,16,0,0,0,0,7,120,1,159,0,0,5,67,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,81,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,18,29,0,0,193,61],[0,0,0,0,4,0,4,21,0,0,0,11,4,64,0,138,0,0,0,5,4,64,2,16,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,255,0,0,97,61,0,0,5,8,2,0,0,65],[0,0,5,8,4,16,0,156,0,0,0,0,1,2,128,25,0,0,0,192,1,16,2,16,0,0,5,19,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,28,20,8,0,0,4,15],[0,0,0,0,3,0,4,21,0,0,0,11,3,48,0,138,0,0,0,5,3,48,2,16,0,0,1,7,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,17,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,17,5,80,1,151,0,0,5,17,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,17,5,80,0,156,0,0,0,0,9,10,192,25,0,0,0,0,5,9,0,75],[0,0,1,57,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,16,5,128,0,156,0,0,1,57,0,0,33,61,0,0,0,0,5,134,0,73,0,0,0,32,9,32,0,57],[0,0,5,17,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,17,5,80,1,151,0,0,5,17,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,17,5,80,0,156,0,0,0,0,2,10,192,25,0,0,0,0,2,2,0,75],[0,0,1,57,0,0,193,61,0,0,0,0,2,0,4,20,0,0,5,8,5,32,0,156,0,0,0,205,0,0,33,61],[0,0,128,6,5,64,0,140,0,0,0,0,5,0,0,25,0,0,3,243,0,0,193,61,0,0,0,4,5,128,0,140],[0,0,0,0,5,0,0,25,0,0,3,243,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,25,10,160,1,151,0,0,5,26,11,160,0,156,0,0,3,239,0,0,33,61],[0,0,5,29,11,160,0,156,0,0,3,243,0,0,97,61,0,0,5,30,10,160,0,156,0,0,3,243,0,0,97,61],[0,0,0,0,5,0,0,25,0,0,3,243,0,0,1,61,0,0,0,0,1,6,4,51,0,0,5,8,2,0,0,65],[0,0,5,8,3,16,0,156,0,0,0,0,1,2,128,25,0,0,5,8,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,30,0,1,4,48],[0,0,0,0,7,81,3,79,0,0,0,0,7,7,4,59,0,0,5,25,7,112,1,151,0,0,5,36,8,112,0,156],[0,0,4,34,0,0,97,61,0,0,5,37,7,112,0,156,0,0,3,106,0,0,193,61,0,0,0,67,4,64,0,140],[0,0,3,208,0,0,33,61,0,0,5,22,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,53,1,0,0,65],[0,0,0,196,0,16,4,63,0,0,5,54,1,0,0,65,0,0,0,165,0,0,1,61,0,0,0,2,2,16,0,140],[0,0,3,18,0,0,97,61,0,0,0,113,1,16,0,140,0,0,2,178,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,17,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,17,2,32,1,151,0,0,5,17,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,17,2,32,0,156,0,0,0,0,5,6,192,25],[0,0,0,0,2,5,0,75,0,0,1,57,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,16,5,16,0,156,0,0,1,57,0,0,33,61,0,0,0,0,6,20,0,73],[0,0,0,32,5,32,0,57,0,0,5,17,2,0,0,65,0,0,0,0,7,101,0,75,0,0,0,0,7,0,0,25],[0,0,0,0,7,2,32,25,0,0,5,17,6,96,1,151,0,0,5,17,8,80,1,151,0,0,0,0,9,104,0,75],[0,0,0,0,2,0,128,25,0,0,0,0,6,104,1,63,0,0,5,17,6,96,0,156,0,0,0,0,2,7,192,25],[0,0,0,0,2,2,0,75,0,0,1,57,0,0,193,61,0,0,5,8,6,80,1,151,0,0,0,0,2,0,4,20],[0,2,0,0,0,99,3,85,0,0,0,0,5,81,0,25,0,0,0,0,1,21,0,75,0,0,0,0,1,0,0,25],[0,0,0,1,1,0,64,57,0,0,0,1,1,16,1,144,0,0,18,29,0,0,193,61,0,0,0,0,1,84,0,75],[0,0,18,29,0,0,65,61,0,0,0,0,1,99,3,79,0,0,0,0,3,84,0,73,0,0,5,8,3,48,1,151],[0,2,0,0,0,49,3,229,0,0,5,73,4,32,0,156,0,0,6,137,0,0,65,61,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,2,184,0,0,1,61,0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57],[0,0,5,96,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,22,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,8,2,0,0,65,0,0,5,8,3,16,0,156],[0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16,0,0,5,52,1,16,1,199,0,0,20,30,0,1,4,48],[0,0,0,6,1,48,3,96,0,0,0,64,2,0,4,61,0,8,0,0,0,2,0,29,0,0,0,0,1,1,4,59],[0,0,0,128,2,16,0,140,0,0,3,114,0,0,65,61,0,0,0,128,2,16,2,112,0,0,5,66,6,16,0,156],[0,0,0,0,2,1,160,25,0,0,5,66,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,16,8,32,0,156,0,0,0,0,7,6,160,25,0,0,0,64,6,32,2,112],[0,0,5,16,8,32,0,156,0,0,0,0,6,2,160,25,0,0,0,4,8,112,1,191,0,0,5,8,2,96,0,156],[0,0,0,0,8,7,160,25,0,0,0,32,7,96,2,112,0,0,5,8,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,8,6,96,0,41,0,0,0,8,7,96,0,108],[0,0,0,0,7,0,0,25,0,0,0,1,7,0,64,57,0,0,5,16,8,96,0,156,0,0,19,58,0,0,33,61],[0,0,0,1,7,112,1,144,0,0,19,58,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,2,254,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,2,246,0,0,65,61,0,0,0,0,7,0,0,75,0,0,3,0,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,9,198,0,0,97,61],[0,0,0,0,7,6,4,51,0,0,5,65,7,112,1,151,0,0,0,248,8,32,2,16,0,0,0,0,7,120,1,159],[0,0,5,67,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,3,131,0,0,1,61,0,0,5,62,1,0,0,65,0,0,0,0,0,16,4,57],[0,0,5,8,1,0,0,65,0,0,0,0,2,0,4,20,0,0,5,8,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,192,1,32,2,16,0,0,5,63,1,16,1,199,0,0,128,11,2,0,0,57,20,28,20,13,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,18,65,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,157,0,0,65,61,0,0,0,128,1,64,2,112,0,0,5,66,2,64,0,156],[0,0,0,0,1,4,160,25,0,0,5,66,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,16,6,16,0,156,0,0,0,0,5,2,160,25,0,0,0,64,2,16,2,112],[0,0,5,16,6,16,0,156,0,0,0,0,2,1,160,25,0,0,0,4,1,80,1,191,0,0,5,8,6,32,0,156],[0,0,0,0,1,5,160,25,0,0,0,32,6,32,2,112,0,0,5,8,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,16,6,16,0,156,0,0,19,58,0,0,33,61],[0,0,0,1,2,32,1,144,0,0,19,58,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,18,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,88,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,80,0,0,65,61],[0,0,0,0,7,0,0,75,0,0,3,90,0,0,97,61,0,0,0,0,7,3,4,51,0,0,0,0,7,7,0,75],[0,0,9,198,0,0,97,61,0,0,0,0,7,6,4,51,0,0,5,65,7,112,1,151,0,0,0,248,8,80,2,16],[0,0,0,0,7,120,1,159,0,0,5,67,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,175,0,0,1,61,0,0,5,22,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,56,1,0,0,65,0,0,0,212,0,0,1,61,0,0,0,8,2,0,0,41,0,0,5,64,2,32,0,156],[0,0,19,58,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,5,4,59,0,0,0,0,0,98,4,53],[0,0,9,198,0,0,97,61,0,0,0,248,7,16,2,16,0,0,5,17,8,0,0,65,0,0,0,0,1,1,0,75],[0,0,0,0,8,7,192,25,0,0,5,65,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,4,251,0,0,65,61,0,0,0,128,7,96,2,112],[0,0,5,66,8,96,0,156,0,0,0,0,7,6,160,25,0,0,5,66,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,16,10,112,0,156,0,0,0,0,9,8,160,25],[0,0,0,64,8,112,2,112,0,0,5,16,10,112,0,156,0,0,0,0,8,7,160,25,0,0,0,4,10,144,1,191],[0,0,5,8,7,128,0,156,0,0,0,0,10,9,160,25,0,0,0,32,9,128,2,112,0,0,5,8,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,16,10,128,0,156],[0,0,19,58,0,0,33,61,0,0,0,1,9,144,1,144,0,0,19,58,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,3,190,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,3,182,0,0,65,61,0,0,0,0,9,0,0,75,0,0,3,192,0,0,97,61],[0,0,0,0,9,1,4,51,0,0,0,0,9,9,0,75,0,0,9,198,0,0,97,61,0,0,0,0,9,8,4,51],[0,0,5,65,9,144,1,151,0,0,0,248,10,112,2,16,0,0,0,0,9,154,1,159,0,0,5,67,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,5,10,0,0,1,61],[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,18,5,80,0,156,0,0,1,57,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,38,4,0,0,65,0,0,0,128,0,64,4,63,0,0,5,18,2,32,1,151],[0,6,0,0,0,2,0,29,0,0,0,132,0,32,4,63,0,0,5,18,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,5,86,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,130,0,0,1,61,0,0,5,27,11,160,0,156],[0,0,3,243,0,0,97,61,0,0,5,28,10,160,0,156,0,0,0,0,5,0,192,25,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,8,8,144,1,151,0,2,0,0,0,129,3,85,0,0,0,0,1,129,3,79],[0,0,0,0,8,3,0,75,0,0,4,14,0,0,193,61,0,0,0,1,3,96,1,144,0,0,18,29,0,0,193,61],[0,0,5,32,3,0,0,65,0,0,5,33,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,31,2,32,1,151,0,0,0,0,2,38,1,159,0,0,0,0,3,167,0,73],[0,0,5,8,3,48,1,151,0,0,0,0,1,49,3,223,0,2,0,0,0,33,3,181,0,0,0,0,1,33,3,175],[0,0,0,0,2,4,0,25,0,0,4,26,0,0,1,61,0,0,0,1,6,96,1,144,0,0,18,29,0,0,193,61],[0,0,0,0,6,167,0,73,0,0,5,8,6,96,1,151,0,0,0,0,1,97,3,223,0,0,0,192,2,32,2,16],[0,0,5,31,2,32,1,151,0,0,5,32,2,32,1,199,0,2,0,0,0,33,3,181,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,28,20,18,0,0,4,15,0,19,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,8,0,48,1,157,0,0,5,8,3,48,1,151],[0,0,0,1,2,32,1,144,0,0,4,36,0,0,97,61,0,0,0,0,1,0,0,25,0,0,20,29,0,1,4,46],[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,20,30,0,1,4,48,0,0,5,64,1,48,0,156],[0,0,19,58,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,18,1,0,3,103,0,0,0,0,6,33,3,79],[0,0,0,0,6,6,4,59,0,0,0,0,0,101,4,53,0,0,9,198,0,0,97,61,0,0,0,248,7,64,2,16],[0,0,5,17,8,0,0,65,0,0,0,0,4,4,0,75,0,0,0,0,8,7,192,25,0,0,5,65,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,5,170,0,0,65,61,0,0,0,128,6,80,2,112],[0,0,5,66,7,80,0,156,0,0,0,0,6,5,160,25,0,0,5,66,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,16,9,96,0,156,0,0,0,0,8,7,160,25],[0,0,0,64,7,96,2,112,0,0,5,16,9,96,0,156,0,0,0,0,7,6,160,25,0,0,0,4,9,128,1,191],[0,0,5,8,6,112,0,156,0,0,0,0,9,8,160,25,0,0,0,32,8,112,2,112,0,0,5,8,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,16,9,112,0,156],[0,0,19,58,0,0,33,61,0,0,0,1,8,128,1,144,0,0,19,58,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,139,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,131,0,0,65,61,0,0,0,0,8,0,0,75],[0,0,4,141,0,0,97,61,0,0,0,0,8,4,4,51,0,0,0,0,8,8,0,75,0,0,9,198,0,0,97,61],[0,0,0,0,8,7,4,51,0,0,5,65,8,128,1,151,0,0,0,248,9,96,2,16,0,0,0,0,8,137,1,159],[0,0,5,67,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,5,186,0,0,1,61,0,0,5,64,1,48,0,156,0,0,19,58,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,18,1,0,3,103,0,0,0,0,6,33,3,79,0,0,0,0,6,6,4,59,0,0,0,0,0,101,4,53],[0,0,9,198,0,0,97,61,0,0,0,248,7,64,2,16,0,0,5,17,8,0,0,65,0,0,0,0,4,4,0,75],[0,0,0,0,8,7,192,25,0,0,5,65,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,6,8,0,0,65,61,0,0,0,128,6,80,2,112,0,0,5,66,7,80,0,156,0,0,0,0,6,5,160,25],[0,0,5,66,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,16,9,96,0,156,0,0,0,0,8,7,160,25,0,0,0,64,7,96,2,112,0,0,5,16,9,96,0,156],[0,0,0,0,7,6,160,25,0,0,0,4,9,128,1,191,0,0,5,8,6,112,0,156,0,0,0,0,9,8,160,25],[0,0,0,32,8,112,2,112,0,0,5,8,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,16,9,112,0,156,0,0,19,58,0,0,33,61,0,0,0,1,8,128,1,144],[0,0,19,58,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,233,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,225,0,0,65,61,0,0,0,0,8,0,0,75,0,0,4,235,0,0,97,61,0,0,0,0,8,4,4,51],[0,0,0,0,8,8,0,75,0,0,9,198,0,0,97,61,0,0,0,0,8,7,4,51,0,0,5,65,8,128,1,151],[0,0,0,248,9,96,2,16,0,0,0,0,8,137,1,159,0,0,5,67,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,6,24,0,0,1,61,0,0,5,64,7,16,0,156],[0,0,19,58,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,5,4,59,0,0,0,0,0,135,4,53,0,0,9,198,0,0,97,61],[0,0,0,248,9,96,2,16,0,0,5,17,10,0,0,65,0,0,0,0,6,6,0,75,0,0,0,0,10,9,192,25],[0,0,5,65,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,8,96,0,0,65,61,0,0,0,128,7,96,2,112,0,0,5,66,8,96,0,156,0,0,0,0,7,6,160,25],[0,0,5,66,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,16,10,112,0,156,0,0,0,0,9,8,160,25,0,0,0,64,8,112,2,112,0,0,5,16,10,112,0,156],[0,0,0,0,8,7,160,25,0,0,0,4,10,144,1,191,0,0,5,8,7,128,0,156,0,0,0,0,10,9,160,25],[0,0,0,32,9,128,2,112,0,0,5,8,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,16,10,128,0,156,0,0,19,58,0,0,33,61,0,0,0,1,9,144,1,144],[0,0,19,58,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,5,68,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,5,60,0,0,65,61],[0,0,0,0,9,0,0,75,0,0,5,70,0,0,97,61,0,0,0,0,9,2,4,51,0,0,0,0,9,9,0,75],[0,0,9,198,0,0,97,61,0,0,0,0,9,8,4,51,0,0,5,65,9,144,1,151,0,0,0,248,10,112,2,16],[0,0,0,0,9,154,1,159,0,0,5,67,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,8,111,0,0,1,61,0,0,5,8,1,0,0,65,0,0,5,8,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,0,9,2,0,0,41],[20,28,20,13,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,5,8,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,5,111,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,5,103,0,0,65,61,0,0,0,0,7,5,0,75],[0,0,5,126,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,19,0,0,0,1,3,85],[0,0,0,1,2,32,1,144,0,0,6,102,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,57,0,0,65,61],[0,0,0,128,4,0,4,61,0,0,0,8,4,64,0,108,0,0,4,34,0,0,129,61,0,0,0,160,4,80,0,57],[0,0,5,40,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,41,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,253,0,0,193,61,0,0,0,1,2,0,0,57,0,0,5,16,4,48,0,156],[0,0,19,58,0,0,33,61,0,0,9,17,0,0,1,61,0,0,5,64,6,64,0,156,0,0,19,58,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,7,4,59,0,0,0,0,0,118,4,53,0,0,9,198,0,0,97,61],[0,0,0,248,8,80,2,16,0,0,5,17,9,0,0,65,0,0,0,0,5,5,0,75,0,0,0,0,9,8,192,25],[0,0,5,65,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,9,95,0,0,65,61,0,0,0,128,8,112,2,112,0,0,5,66,9,112,0,156],[0,0,0,0,8,7,160,25,0,0,5,66,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,16,11,128,0,156,0,0,0,0,10,9,160,25,0,0,0,64,9,128,2,112],[0,0,5,16,11,128,0,156,0,0,0,0,9,8,160,25,0,0,0,4,11,160,1,191,0,0,5,8,8,144,0,156],[0,0,0,0,11,10,160,25,0,0,0,32,10,144,2,112,0,0,5,8,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,16,11,144,0,156,0,0,19,58,0,0,33,61],[0,0,0,1,10,160,1,144,0,0,19,58,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,246,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,238,0,0,65,61,0,0,0,0,10,0,0,75,0,0,5,248,0,0,97,61],[0,0,0,0,10,5,4,51,0,0,0,0,10,10,0,75,0,0,9,198,0,0,97,61,0,0,0,0,10,9,4,51],[0,0,5,65,10,160,1,151,0,0,0,248,11,128,2,16,0,0,0,0,10,171,1,159,0,0,5,67,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,9,111,0,0,1,61],[0,0,5,64,6,64,0,156,0,0,19,58,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,7,4,59],[0,0,0,0,0,118,4,53,0,0,9,198,0,0,97,61,0,0,0,248,8,80,2,16,0,0,5,17,9,0,0,65],[0,0,0,0,5,5,0,75,0,0,0,0,9,8,192,25,0,0,5,65,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,188,0,0,65,61],[0,0,0,128,8,96,2,112,0,0,5,66,9,96,0,156,0,0,0,0,8,6,160,25,0,0,5,66,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,16,11,128,0,156],[0,0,0,0,10,9,160,25,0,0,0,64,9,128,2,112,0,0,5,16,11,128,0,156,0,0,0,0,9,8,160,25],[0,0,0,4,11,160,1,191,0,0,5,8,8,144,0,156,0,0,0,0,11,10,160,25,0,0,0,32,10,144,2,112],[0,0,5,8,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,16,11,144,0,156,0,0,19,58,0,0,33,61,0,0,0,1,10,160,1,144,0,0,19,58,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,6,84,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,6,76,0,0,65,61],[0,0,0,0,10,0,0,75,0,0,6,86,0,0,97,61,0,0,0,0,10,5,4,51,0,0,0,0,10,10,0,75],[0,0,9,198,0,0,97,61,0,0,0,0,10,9,4,51,0,0,5,65,10,160,1,151,0,0,0,248,11,128,2,16],[0,0,0,0,10,171,1,159,0,0,5,67,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,10,129,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,115,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,107,0,0,65,61,0,0,0,0,6,4,0,75],[0,0,6,130,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,8,1,0,0,65,0,0,5,8,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,30,0,1,4,48,0,0,0,0,1,49,3,223,0,0,0,192,2,32,2,16,0,0,5,31,2,32,1,151],[0,0,5,33,2,32,1,199,0,2,0,0,0,33,3,181,0,0,0,0,1,33,3,175,0,0,128,16,2,0,0,57],[20,28,20,23,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,1,5,8,0,48,1,157],[0,0,5,8,5,48,1,151,0,19,0,0,0,1,3,85,0,0,0,1,2,32,1,144,0,0,9,202,0,0,97,61],[0,0,0,63,2,80,0,57,0,0,5,61,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,16,4,32,0,156],[0,0,19,58,0,0,33,61,0,0,0,1,3,48,1,144,0,0,19,58,0,0,193,61,0,0,0,64,0,32,4,63],[0,0,0,0,4,86,4,54,0,0,0,18,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,180,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,172,0,0,65,61],[0,0,0,0,7,0,0,75,0,0,6,182,0,0,97,61,0,0,0,31,7,80,1,143,0,0,0,5,5,80,2,114],[0,0,6,194,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,186,0,0,65,61,0,0,0,0,8,7,0,75,0,0,6,209,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,10,4,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,17,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,17,5,80,1,151,0,0,5,17,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,17,5,80,0,156],[0,0,0,0,6,7,192,25,0,0,0,0,5,6,0,75,0,0,1,57,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,16,4,80,0,156,0,0,1,57,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,17,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,17,3,48,1,151,0,0,5,17,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,17,3,48,0,156,0,0,0,0,1,7,192,25],[0,0,0,0,1,1,0,75,0,0,1,57,0,0,193,61,0,0,0,64,1,0,4,61,0,0,0,32,3,16,0,57],[0,0,5,74,5,80,1,152,0,0,7,12,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,7,4,0,0,65,61],[0,0,0,0,2,0,0,75,0,0,7,14,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,16,5,32,0,156,0,0,19,58,0,0,33,61],[0,0,0,1,4,64,1,144,0,0,19,58,0,0,193,61,0,0,0,64,0,32,4,63,0,0,5,8,2,0,0,65],[0,0,5,8,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,8,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,8,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,19,1,16,1,199,0,0,128,16,2,0,0,57,20,28,20,13,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,1,57,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,18,3,0,3,103],[0,0,0,0,4,67,3,79,0,0,0,0,4,4,4,59,0,0,5,17,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,17,5,80,1,151,0,0,5,17,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,17,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,57,0,0,193,61,0,0,0,9,4,64,0,41,0,0,0,0,1,67,3,79,0,0,0,0,1,1,4,59],[0,0,5,16,5,16,0,156,0,0,1,57,0,0,33,61,0,0,0,0,6,18,0,73,0,0,0,32,5,64,0,57],[0,0,5,17,4,0,0,65,0,0,0,0,7,101,0,75,0,0,0,0,7,0,0,25,0,0,0,0,7,4,32,25],[0,0,5,17,6,96,1,151,0,0,5,17,8,80,1,151,0,0,0,0,9,104,0,75,0,0,0,0,4,0,128,25],[0,0,0,0,6,104,1,63,0,0,5,17,6,96,0,156,0,0,0,0,4,7,192,25,0,0,0,0,4,4,0,75],[0,0,1,57,0,0,193,61,0,0,5,8,6,80,1,151,0,0,0,0,4,0,4,20,0,2,0,0,0,99,3,85],[0,0,0,0,5,81,0,25,0,0,0,0,1,21,0,75,0,0,0,0,1,0,0,25,0,0,0,1,1,0,64,57],[0,0,0,1,1,16,1,144,0,0,18,29,0,0,193,61,0,0,0,0,1,82,0,75,0,0,18,29,0,0,65,61],[0,0,0,0,1,99,3,79,0,0,0,0,2,82,0,73,0,0,5,8,2,32,1,151,0,2,0,0,0,33,3,229],[0,0,5,8,3,64,0,156,0,0,2,171,0,0,33,61,0,0,0,0,1,33,3,223,0,0,0,192,2,64,2,16],[0,0,5,31,2,32,1,151,0,0,5,33,2,32,1,199,0,2,0,0,0,33,3,181,0,0,0,0,1,33,3,175],[0,0,128,16,2,0,0,57,20,28,20,23,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,1,5,8,0,48,1,157,0,0,5,8,3,48,1,151,0,19,0,0,0,1,3,85,0,0,0,1,2,32,1,144],[0,0,17,47,0,0,97,61,0,0,0,63,2,48,0,57,0,0,5,61,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,16,6,32,0,156,0,0,19,58,0,0,33,61,0,0,0,1,4,64,1,144,0,0,19,58,0,0,193,61],[0,0,0,64,0,32,4,63,0,0,0,0,2,53,4,54,0,0,0,18,4,0,3,103,0,0,0,31,6,48,0,57],[0,0,0,5,6,96,2,114,0,0,7,148,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,140,0,0,65,61],[0,0,0,0,6,0,0,75,0,0,7,150,0,0,97,61,0,0,0,31,6,48,1,143,0,0,0,5,3,48,2,114],[0,0,7,162,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,154,0,0,65,61,0,0,0,0,7,6,0,75,0,0,7,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,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,10,4,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,76,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,77,3,16,0,156,0,0,19,58,0,0,33,61,0,0,1,224,3,16,0,57,0,0,0,64,0,48,4,63],[0,0,5,8,4,0,0,65,0,0,5,8,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,8,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,8,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,19,1,16,1,199,0,0,128,16,2,0,0,57],[20,28,20,13,0,0,4,15,0,0,0,1,2,32,1,144,0,0,1,57,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,62,1,0,0,65],[0,0,0,0,0,16,4,57,0,0,0,0,1,0,4,20,0,0,5,8,2,16,0,156,0,0,5,8,1,0,128,65],[0,0,0,192,1,16,2,16,0,0,5,63,1,16,1,199,0,0,128,11,2,0,0,57,20,28,20,13,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,18,65,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,78,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,79,3,0,0,65,0,0,0,0,0,49,4,53],[0,0,0,64,1,64,0,57,0,0,5,80,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,81,1,64,0,156,0,0,19,58,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,8,1,0,0,65,0,0,5,8,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,8,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,8,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,19,1,16,1,199,0,0,128,16,2,0,0,57,20,28,20,13,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,1,57,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,82,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,47,3,16,0,156,0,0,19,58,0,0,33,61,0,0,0,128,3,16,0,57],[0,0,0,64,0,48,4,63,0,0,5,8,3,0,0,65,0,0,5,8,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,8,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,8,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,17,249,0,0,1,61],[0,0,5,64,7,32,0,156,0,0,19,58,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,5,4,59,0,0,0,0,0,135,4,53],[0,0,9,198,0,0,97,61,0,0,0,248,9,96,2,16,0,0,5,17,10,0,0,65,0,0,0,0,6,6,0,75],[0,0,0,0,10,9,192,25,0,0,5,65,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,8,126,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,8,119,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,8,139,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,8,132,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,16,2,32,0,156,0,0,19,58,0,0,33,61,0,0,0,1,1,16,1,144,0,0,19,58,0,0,193,61],[0,0,0,5,1,0,0,41,0,0,0,64,0,16,4,63,0,0,5,64,1,16,0,156,0,0,19,58,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,68,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,11,44,0,0,65,61,0,0,0,128,6,32,2,112,0,0,5,66,7,32,0,156],[0,0,0,0,6,2,160,25,0,0,5,66,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,16,9,96,0,156,0,0,0,0,8,7,160,25,0,0,0,64,7,96,2,112],[0,0,5,16,9,96,0,156,0,0,0,0,7,6,160,25,0,0,0,4,9,128,1,191,0,0,5,8,6,112,0,156],[0,0,0,0,9,8,160,25,0,0,0,32,8,112,2,112,0,0,5,8,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,16,9,112,0,156,0,0,19,58,0,0,33,61,0,0,0,1,8,128,1,144],[0,0,19,58,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,8,233,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,8,225,0,0,65,61,0,0,0,0,8,0,0,75,0,0,8,235,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,9,198,0,0,97,61,0,0,0,0,8,7,4,51],[0,0,5,65,8,128,1,151,0,0,0,248,9,96,2,16,0,0,0,0,8,137,1,159,0,0,5,67,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,11,61,0,0,1,61,0,0,5,8,1,0,0,65,0,0,5,8,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,8,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,28,20,8,0,0,4,15,0,5,0,96,0,0,0,61,0,0,0,1,2,32,1,143,0,19,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,8,0,48,1,157,0,0,5,8,3,48,1,152],[0,0,9,61,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,16,6,64,0,156,0,0,19,58,0,0,33,61],[0,0,0,1,5,80,1,144,0,0,19,58,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,9,45,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,9,37,0,0,65,61,0,10,0,0,0,8,0,29,0,0,0,0,5,4,0,75,0,0,9,61,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,229,0,0,193,61,0,0,0,0,2,1,0,75,0,0,9,87,0,0,193,61,0,0,0,64,4,0,4,61],[0,10,0,0,0,4,0,29,0,0,5,22,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,28,19,250,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,8,2,0,0,65],[0,0,5,8,3,16,0,156,0,0,0,0,1,2,128,25,0,0,0,10,4,0,0,41,0,0,5,8,3,64,0,156],[0,0,0,0,4,2,128,25,0,0,0,64,2,64,2,16,0,0,2,89,0,0,1,61,0,0,5,64,8,80,0,156],[0,0,19,58,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,9,4,59,0,0,0,0,0,152,4,53],[0,0,9,198,0,0,97,61,0,0,0,248,10,112,2,16,0,0,5,17,11,0,0,65,0,0,0,0,7,7,0,75],[0,0,0,0,11,10,192,25,0,0,5,65,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,10,11,0,0,65,61,0,0,0,128,9,128,2,112,0,0,5,66,10,128,0,156],[0,0,0,0,9,8,160,25,0,0,5,66,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,16,12,144,0,156,0,0,0,0,11,10,160,25,0,0,0,64,10,144,2,112],[0,0,5,16,12,144,0,156,0,0,0,0,10,9,160,25,0,0,0,4,12,176,1,191,0,0,5,8,9,160,0,156],[0,0,0,0,12,11,160,25,0,0,0,32,11,160,2,112,0,0,5,8,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,16,12,160,0,156,0,0,19,58,0,0,33,61],[0,0,0,1,11,176,1,144,0,0,19,58,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,9,170,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,162,0,0,65,61,0,0,0,0,11,0,0,75,0,0,9,172,0,0,97,61],[0,0,0,0,11,7,4,51,0,0,0,0,11,11,0,75,0,0,9,198,0,0,97,61,0,0,0,0,11,10,4,51],[0,0,5,65,11,176,1,151,0,0,0,248,12,144,2,16,0,0,0,0,11,188,1,159,0,0,5,67,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,10,27,0,0,1,61],[0,0,5,64,8,80,0,156,0,0,19,58,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,9,4,59],[0,0,0,0,0,152,4,53,0,0,10,123,0,0,193,61,0,0,5,94,1,0,0,65,0,0,0,0,0,16,4,53],[0,0,0,50,1,0,0,57,0,0,0,81,0,0,1,61,0,0,0,31,3,80,1,143,0,0,0,5,2,80,2,114],[0,0,9,213,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,206,0,0,65,61,0,0,0,0,4,3,0,75,0,0,9,227,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,30,0,1,4,48,0,0,0,0,2,1,0,75,0,0,11,135,0,0,193,61,0,0,5,42,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,8,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,5,8,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,5,43,1,16,1,199,0,0,128,2,2,0,0,57,20,28,20,13,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,18,65,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75,0,0,11,131,0,0,193,61],[0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57,0,0,5,51,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,22,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,2,189,0,0,1,61],[0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57,0,0,5,75,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,2,184,0,0,1,61,0,0,5,64,9,112,0,156],[0,0,19,58,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,10,4,59,0,0,0,0,0,169,4,53],[0,0,9,198,0,0,97,61,0,0,0,248,11,128,2,16,0,0,5,17,12,0,0,65,0,0,0,0,8,8,0,75],[0,0,0,0,12,11,192,25,0,0,5,65,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,64,8,144,0,156,0,0,19,58,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,68,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,152,0,0,65,61,0,0,0,8,6,0,0,41],[0,0,0,128,10,96,2,112,0,0,5,66,11,96,0,156,0,0,0,0,10,6,160,25,0,0,5,66,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,16,13,160,0,156],[0,0,0,0,12,11,160,25,0,0,0,64,11,160,2,112,0,0,5,16,13,160,0,156,0,0,0,0,11,10,160,25],[0,0,0,4,13,192,1,191,0,0,5,8,10,176,0,156,0,0,0,0,13,12,160,25,0,0,0,32,12,176,2,112],[0,0,5,8,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,16,13,176,0,156,0,0,19,58,0,0,33,61,0,0,0,1,12,192,1,144,0,0,19,58,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,104,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,10,96,0,0,65,61],[0,0,0,0,6,0,0,75,0,0,10,106,0,0,97,61,0,0,0,0,6,8,4,51,0,0,0,0,6,6,0,75],[0,0,9,198,0,0,97,61,0,0,0,0,6,11,4,51,0,0,5,65,6,96,1,151,0,0,0,248,12,160,2,16],[0,0,0,0,6,108,1,159,0,0,5,67,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,170,0,0,1,61,0,0,0,248,10,96,2,16],[0,0,5,17,11,0,0,65,0,0,0,0,6,6,0,75,0,0,0,0,11,10,192,25,0,0,5,65,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,206,0,0,65,61],[0,0,0,128,9,128,2,112,0,0,5,66,10,128,0,156,0,0,0,0,9,8,160,25,0,0,5,66,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,16,12,144,0,156],[0,0,0,0,11,10,160,25,0,0,0,64,10,144,2,112,0,0,5,16,12,144,0,156,0,0,0,0,10,9,160,25],[0,0,0,4,12,176,1,191,0,0,5,8,9,160,0,156,0,0,0,0,12,11,160,25,0,0,0,32,11,160,2,112],[0,0,5,8,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,16,12,160,0,156,0,0,19,58,0,0,33,61,0,0,0,1,11,176,1,144,0,0,19,58,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,10,188,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,180,0,0,65,61],[0,0,0,0,11,0,0,75,0,0,10,190,0,0,97,61,0,0,0,0,11,6,4,51,0,0,0,0,11,11,0,75],[0,0,9,198,0,0,97,61,0,0,0,0,11,10,4,51,0,0,5,65,11,176,1,151,0,0,0,248,12,144,2,16],[0,0,0,0,11,188,1,159,0,0,5,67,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,222,0,0,1,61,0,0,5,64,9,96,0,156,0,0,19,58,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,10,4,59,0,0,0,0,0,169,4,53,0,0,9,198,0,0,97,61],[0,0,0,248,11,128,2,16,0,0,5,17,12,0,0,65,0,0,0,0,8,8,0,75,0,0,0,0,12,11,192,25],[0,0,5,65,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,11,189,0,0,65,61,0,0,0,128,10,144,2,112,0,0,5,66,11,144,0,156,0,0,0,0,10,9,160,25],[0,0,5,66,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,16,13,160,0,156,0,0,0,0,12,11,160,25,0,0,0,64,11,160,2,112,0,0,5,16,13,160,0,156],[0,0,0,0,11,10,160,25,0,0,0,4,13,192,1,191,0,0,5,8,10,176,0,156,0,0,0,0,13,12,160,25],[0,0,0,32,12,176,2,112,0,0,5,8,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,16,13,176,0,156,0,0,19,58,0,0,33,61,0,0,0,1,12,192,1,144],[0,0,19,58,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,25,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,11,17,0,0,65,61,0,0,0,0,7,0,0,75,0,0,11,27,0,0,97,61,0,0,0,0,7,8,4,51],[0,0,0,0,7,7,0,75,0,0,9,198,0,0,97,61,0,0,0,0,7,11,4,51,0,0,5,65,7,112,1,151],[0,0,0,248,12,160,2,16,0,0,0,0,7,124,1,159,0,0,5,67,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,11,206,0,0,1,61],[0,0,0,4,6,0,0,41,0,0,5,64,6,96,0,156,0,0,19,58,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,5,4,59,0,0,0,0,0,118,4,53,0,0,9,198,0,0,97,61,0,0,0,248,8,32,2,16],[0,0,5,17,9,0,0,65,0,0,0,0,2,2,0,75,0,0,0,0,9,8,192,25,0,0,5,65,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,17,7,96,1,151],[0,0,5,17,8,32,1,151,0,0,5,17,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,17,7,112,0,156,0,0,0,0,10,9,192,25,0,0,0,0,7,10,0,75,0,0,1,57,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,16,9,112,0,156],[0,0,1,57,0,0,33,61,0,0,0,0,9,116,0,73,0,0,0,32,8,128,0,57,0,0,5,17,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,17,9,144,1,151],[0,0,5,17,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,17,9,144,0,156,0,0,0,0,10,11,192,25,0,0,0,0,9,10,0,75,0,0,1,57,0,0,193,61],[0,0,0,1,9,112,0,140,0,0,14,78,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,17,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,17,5,80,1,151,0,0,5,17,9,80,0,156,0,0,0,0,8,0,128,25],[0,0,5,17,5,80,1,103,0,0,5,17,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,14,136,0,0,193,61,0,0,0,64,5,0,4,61,0,3,0,0,0,5,0,29],[0,0,5,64,5,80,0,156,0,0,19,58,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,67,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,14,136,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,170,0,0,97,61,0,0,5,17,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,17,1,16,1,151],[0,0,0,0,4,1,0,75,0,0,0,0,2,0,160,25,0,0,5,17,1,16,0,156,0,0,0,0,2,3,192,25],[0,0,0,0,1,2,0,75,0,0,1,57,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,57,0,0,193,61,0,0,0,0,1,1,0,75,0,0,11,170,0,0,193,61,0,0,0,64,1,0,4,61],[0,0,0,100,2,16,0,57,0,0,5,49,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,68,2,16,0,57],[0,0,5,50,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,22,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,28,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,38,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,12,49,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,12,99,0,0,1,61,0,0,5,64,7,128,0,156,0,0,19,58,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,11,7,4,59,0,0,0,0,0,186,4,53,0,0,9,198,0,0,97,61,0,0,0,248,7,144,2,16],[0,0,5,17,12,0,0,65,0,0,0,0,9,9,0,75,0,0,0,0,12,7,192,25,0,0,5,65,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,64,7,160,0,156],[0,0,19,58,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,68,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,13,116,0,0,65,61,0,0,0,8,7,0,0,41,0,0,0,128,11,112,2,112],[0,0,5,66,12,112,0,156,0,0,0,0,11,7,160,25,0,0,5,66,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,16,14,176,0,156,0,0,0,0,13,12,160,25],[0,0,0,64,12,176,2,112,0,0,5,16,14,176,0,156,0,0,0,0,12,11,160,25,0,0,0,4,14,208,1,191],[0,0,5,8,11,192,0,156,0,0,0,0,14,13,160,25,0,0,0,32,13,192,2,112,0,0,5,8,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,16,14,192,0,156,0,0,19,58,0,0,33,61,0,0,0,1,13,208,1,144,0,0,19,58,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,12,29,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,12,21,0,0,65,61,0,0,0,0,7,0,0,75,0,0,12,31,0,0,97,61,0,0,0,0,7,9,4,51],[0,0,0,0,7,7,0,75,0,0,9,198,0,0,97,61,0,0,0,0,7,12,4,51,0,0,5,65,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,67,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,13,134,0,0,1,61,0,0,5,8,2,0,0,65,0,0,5,8,3,16,0,156,0,0,0,0,1,2,128,25],[0,0,0,10,4,0,0,41,0,0,5,8,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,44,1,16,1,199,0,0,0,9,2,0,0,41],[20,28,20,13,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,8,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,12,80,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,12,72,0,0,65,61],[0,0,0,0,7,5,0,75,0,0,12,95,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,19,0,0,0,1,3,85,0,0,0,1,2,32,1,144,0,0,13,87,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,16,4,16,0,156,0,0,19,58,0,0,33,61,0,0,0,1,2,32,1,144],[0,0,19,58,0,0,193,61,0,0,0,64,0,16,4,63,0,0,0,32,2,48,0,140,0,0,1,57,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,14,66,0,0,193,61,0,0,0,32,2,16,0,57,0,0,5,40,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,47,4,16,0,156],[0,0,19,58,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,48,4,16,0,156,0,0,19,58,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,41,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,63,0,0,193,61],[0,0,0,1,2,0,0,57,0,0,5,16,1,48,0,156,0,0,19,58,0,0,33,61,0,0,15,85,0,0,1,61],[0,0,5,64,6,128,0,156,0,0,19,58,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,11,6,4,59],[0,0,0,0,0,186,4,53,0,0,9,198,0,0,97,61,0,0,0,8,13,0,0,41,0,0,0,248,6,208,2,16],[0,0,5,17,12,0,0,65,0,0,0,0,13,13,0,75,0,0,0,0,12,6,192,25,0,0,5,65,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,183,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,176,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,198,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,191,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,213,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,206,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,228,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,221,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,243,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,236,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,13,2,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,251,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,16,5,112,0,156,0,0,19,58,0,0,33,61],[0,0,0,1,4,64,1,144,0,0,19,58,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,17,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,17,5,80,1,151,0,0,5,17,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,17,5,80,0,156,0,0,0,0,8,9,192,25],[0,0,0,0,5,8,0,75,0,0,1,57,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,16,8,64,0,156,0,0,1,57,0,0,33,61,0,0,0,0,8,66,0,73],[0,0,0,32,5,80,0,57,0,0,5,17,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,17,8,128,1,151,0,0,5,17,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,17,8,128,0,156,0,0,0,0,9,10,192,25],[0,0,0,0,8,9,0,75,0,0,1,57,0,0,193,61,0,0,0,1,8,64,0,140,0,0,15,161,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,17,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,17,8,128,1,151],[0,0,5,17,11,128,0,156,0,0,0,0,10,0,128,25,0,0,5,17,8,128,1,103,0,0,5,17,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,16,59,0,0,193,61],[0,0,5,64,8,112,0,156,0,0,19,58,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,67,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,16,59,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,100,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,92,0,0,65,61],[0,0,0,0,6,4,0,75,0,0,13,115,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,130,0,0,1,61],[0,0,5,64,7,144,0,156,0,0,19,58,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,12,7,4,59],[0,0,0,0,0,203,4,53,0,0,9,198,0,0,97,61,0,0,0,8,14,0,0,41,0,0,0,248,7,224,2,16],[0,0,5,17,13,0,0,65,0,0,0,0,14,14,0,75,0,0,0,0,13,7,192,25,0,0,5,65,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,13,147,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,13,140,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,13,162,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,13,155,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,13,177,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,13,170,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,13,192,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,13,185,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,13,207,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,13,200,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,13,222,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,13,215,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,13,237,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,13,230,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,16,5,96,0,156,0,0,19,58,0,0,33,61,0,0,0,1,4,64,1,144],[0,0,19,58,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,17,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,17,5,80,1,151,0,0,5,17,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,17,5,80,0,156,0,0,0,0,8,9,192,25,0,0,0,0,5,8,0,75],[0,0,1,57,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,16,8,64,0,156,0,0,1,57,0,0,33,61,0,0,0,0,8,66,0,73,0,0,0,32,5,80,0,57],[0,0,5,17,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,17,8,128,1,151,0,0,5,17,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,17,8,128,0,156,0,0,0,0,9,10,192,25,0,0,0,0,8,9,0,75],[0,0,1,57,0,0,193,61,0,0,0,1,8,64,0,140,0,0,17,74,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,17,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,17,8,128,1,151,0,0,5,17,11,128,0,156],[0,0,0,0,10,0,128,25,0,0,5,17,8,128,1,103,0,0,5,17,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,19,55,0,0,193,61,0,0,5,64,8,96,0,156],[0,0,19,58,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,67,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,19,55,0,0,1,61,0,0,5,22,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,45,2,0,0,65,0,0,0,0,0,36,4,53,0,0,0,100,2,16,0,57],[0,0,5,46,3,0,0,65,0,0,1,28,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,14,120,0,0,65,61,0,0,0,32,9,112,2,112,0,0,5,8,8,112,0,156],[0,0,0,0,9,7,160,25,0,0,5,8,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,64,10,160,0,156,0,0,19,58,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,5,4,59,0,0,0,0,0,89,4,53,0,0,9,198,0,0,97,61],[0,0,5,65,5,80,1,151,0,0,0,248,10,128,2,16,0,0,0,0,5,90,1,159,0,0,5,69,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,14,136,0,0,1,61],[0,0,0,3,8,0,0,41,0,0,5,64,8,128,0,156,0,0,19,58,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,5,4,59,0,0,0,0,0,88,4,53,0,0,9,198,0,0,97,61,0,0,0,248,7,112,2,16],[0,0,5,65,5,80,1,151,0,0,0,0,5,117,1,159,0,0,5,17,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,232,0,0,193,61,0,0,5,17,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,17,6,96,1,151,0,0,5,17,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,17,6,96,0,156],[0,0,0,0,5,7,192,25,0,0,0,0,5,5,0,75,0,0,1,57,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,16,11,32,0,156,0,0,1,57,0,0,33,61,0,0,0,0,11,36,0,73,0,0,0,32,5,80,0,57],[0,0,5,17,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,17,11,176,1,151,0,0,5,17,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,17,11,176,0,156,0,0,0,0,12,13,192,25,0,0,0,0,11,12,0,75],[0,0,1,57,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,16,6,96,1,151,0,0,0,56,8,96,0,140,0,0,16,122,0,0,65,61],[0,0,0,32,9,96,2,112,0,0,5,8,8,96,0,156,0,0,0,0,9,6,160,25,0,0,5,8,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,64,10,112,0,156,0,0,19,58,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,9,4,59,0,0,0,0,0,148,4,53],[0,0,9,198,0,0,97,61,0,0,5,65,9,144,1,151,0,0,0,248,10,128,2,16,0,0,0,0,9,154,1,159],[0,0,5,71,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,137,0,0,1,61],[0,0,5,62,1,0,0,65,0,0,0,0,0,16,4,57,0,0,5,8,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,5,8,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,5,63,1,16,1,199],[0,0,128,11,2,0,0,57,20,28,20,13,0,0,4,15,0,0,0,1,2,32,1,144,0,0,18,65,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,200,0,0,65,61],[0,0,0,128,3,16,2,112,0,0,5,66,4,16,0,156,0,0,0,0,3,1,160,25,0,0,5,66,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,16,6,48,0,156],[0,0,0,0,5,4,160,25,0,0,0,64,4,48,2,112,0,0,5,16,6,48,0,156,0,0,0,0,4,3,160,25],[0,0,0,4,3,80,1,191,0,0,5,8,6,64,0,156,0,0,0,0,3,5,160,25,0,0,0,32,6,64,2,112],[0,0,5,8,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,16,6,48,0,156],[0,0,19,58,0,0,33,61,0,0,0,1,4,64,1,144,0,0,19,58,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,18,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,45,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,37,0,0,65,61,0,0,0,0,7,0,0,75,0,0,15,47,0,0,97,61,0,0,0,0,7,2,4,51],[0,0,0,0,7,7,0,75,0,0,9,198,0,0,97,61,0,0,0,0,7,6,4,51,0,0,5,65,7,112,1,151],[0,0,0,248,8,80,2,16,0,0,0,0,7,120,1,159,0,0,5,67,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,218,0,0,1,61,0,0,5,8,3,0,0,65],[0,0,5,8,5,32,0,156,0,0,0,0,2,3,128,25,0,0,0,64,2,32,2,16,0,0,5,8,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,8,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,28,20,8,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,19,0,0,0,1,3,85,0,0,0,96,1,16,2,112,0,1,5,8,0,16,1,157,0,0,5,8,3,16,1,152],[0,0,15,130,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,16,5,16,0,156,0,0,19,58,0,0,33,61],[0,0,0,1,4,64,1,144,0,0,19,58,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,19,4,0,3,103,0,0,0,5,3,48,2,114],[0,0,15,114,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,106,0,0,65,61,0,6,0,0,0,8,0,29,0,0,0,0,5,1,0,75],[0,0,15,130,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,255,0,0,193,61,0,0,0,0,2,1,0,75,0,0,16,117,0,0,193,61],[0,0,0,64,4,0,4,61,0,9,0,0,0,4,0,29,0,0,5,22,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,28,19,250,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,8,2,0,0,65,0,0,5,8,3,16,0,156,0,0,0,0,1,2,128,25,0,0,0,9,4,0,0,41],[0,0,9,91,0,0,1,61,0,0,0,56,8,64,0,140,0,0,16,43,0,0,65,61,0,0,0,32,9,64,2,112],[0,0,5,8,8,64,0,156,0,0,0,0,9,4,160,25,0,0,5,8,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,64,10,112,0,156,0,0,19,58,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,10,4,59,0,0,0,0,0,169,4,53,0,0,9,198,0,0,97,61],[0,0,5,65,10,160,1,151,0,0,0,248,11,128,2,16,0,0,0,0,10,171,1,159,0,0,5,69,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,16,59,0,0,1,61],[0,0,5,64,3,32,0,156,0,0,19,58,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,18,3,0,3,103],[0,0,0,0,6,67,3,79,0,0,0,0,6,6,4,59,0,0,0,0,0,101,4,53,0,0,9,198,0,0,97,61],[0,0,0,248,7,16,2,16,0,0,5,17,8,0,0,65,0,0,0,0,1,1,0,75,0,0,0,0,8,7,192,25],[0,0,5,65,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,232,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,225,0,0,65,61],[0,0,0,0,2,101,0,25,0,0,5,83,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,16,6,32,0,156],[0,0,19,58,0,0,33,61,0,0,0,1,5,80,1,144,0,0,19,58,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,14,142,0,0,1,61,0,0,0,0,2,1,0,75],[0,0,16,22,0,0,193,61,0,0,5,42,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,8,1,0,0,65,0,0,0,0,2,0,4,20,0,0,5,8,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,5,43,1,16,1,199,0,0,128,2,2,0,0,57],[20,28,20,13,0,0,4,15,0,0,0,1,2,32,1,144,0,0,18,65,0,0,97,61,0,0,0,0,1,1,4,59],[0,0,0,0,1,1,0,75,0,0,9,248,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,4,34,0,0,97,61,0,0,5,17,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,17,1,16,1,151,0,0,0,0,4,1,0,75],[0,0,0,0,2,0,160,25,0,0,5,17,1,16,0,156,0,0,0,0,2,3,192,25,0,0,0,0,1,2,0,75],[0,0,1,57,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,57,0,0,193,61],[0,0,0,0,1,1,0,75,0,0,4,34,0,0,193,61,0,0,11,155,0,0,1,61,0,0,5,64,8,112,0,156],[0,0,19,58,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,9,4,59,0,0,0,0,0,152,4,53],[0,0,9,198,0,0,97,61,0,0,0,248,10,64,2,16,0,0,5,65,9,144,1,151,0,0,0,0,9,169,1,159],[0,0,5,17,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,64,9,112,0,156,0,0,19,58,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,11,2,4,59],[0,0,0,0,0,185,4,53,0,0,9,198,0,0,97,61,0,0,5,65,2,176,1,151,0,0,5,70,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,16,9,144,1,151,0,0,0,56,13,144,0,140,0,0,17,113,0,0,65,61,0,0,0,32,13,144,2,112],[0,0,5,8,12,144,0,156,0,0,0,0,13,9,160,25,0,0,5,8,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,64,14,160,0,156,0,0,19,58,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,9,198,0,0,97,61,0,0,0,248,11,192,2,16],[0,0,0,0,2,43,1,159,0,0,5,71,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,17,126,0,0,1,61,0,0,5,8,2,0,0,65,0,0,5,8,3,16,0,156,0,0,0,0,1,2,128,25],[0,0,0,6,4,0,0,41,0,0,9,91,0,0,1,61,0,0,5,64,8,112,0,156,0,0,19,58,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,8,4,59,0,0,0,0,0,132,4,53,0,0,9,198,0,0,97,61],[0,0,5,65,8,128,1,151,0,0,0,248,6,96,2,16,0,0,0,0,6,134,1,159,0,0,5,70,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,150,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,143,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,166,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,159,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,182,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,175,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,198,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,191,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,214,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,207,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,230,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,223,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,247,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,239,0,0,65,61,0,0,0,0,10,7,0,75],[0,0,17,6,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,17,20,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,17,13,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,16,3,16,0,156],[0,0,19,58,0,0,33,61,0,0,0,1,2,32,1,144,0,0,19,58,0,0,193,61,0,0,0,64,0,16,4,63],[0,0,5,8,1,0,0,65,0,0,5,8,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,8,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,17,245,0,0,1,61,0,0,0,31,4,48,1,143],[0,0,0,5,2,48,2,114,0,0,17,58,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,51,0,0,65,61,0,0,0,0,5,4,0,75,0,0,17,72,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,30,0,1,4,48,0,0,0,56,8,64,0,140,0,0,19,39,0,0,65,61],[0,0,0,32,9,64,2,112,0,0,5,8,8,64,0,156,0,0,0,0,9,4,160,25,0,0,5,8,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,64,10,96,0,156,0,0,19,58,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,10,4,59,0,0,0,0,0,169,4,53],[0,0,9,198,0,0,97,61,0,0,5,65,10,160,1,151,0,0,0,248,11,128,2,16,0,0,0,0,10,171,1,159],[0,0,5,69,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,19,55,0,0,1,61,0,0,5,64,13,160,0,156,0,0,19,58,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,9,198,0,0,97,61,0,0,0,248,9,144,2,16,0,0,0,0,2,41,1,159],[0,0,5,70,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,72,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,17,142,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,17,135,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,17,157,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,17,150,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,17,172,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,17,165,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,17,189,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,17,181,0,0,65,61,0,0,0,0,11,6,0,75,0,0,17,204,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,17,218,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,17,211,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,16,4,16,0,156,0,0,19,58,0,0,33,61],[0,0,0,1,3,48,1,144,0,0,19,58,0,0,193,61,0,0,0,64,0,16,4,63,0,0,5,8,1,0,0,65],[0,0,5,8,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,8,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,5,8,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,19,1,16,1,199,0,0,128,16,2,0,0,57,20,28,20,13,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,1,57,0,0,97,61,0,0,0,18,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,18,1,16,1,152,0,5,0,0,0,4,0,29,0,0,18,33,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,18,20,0,0,97,61,0,0,0,0,101,82,0,217,0,0,0,0,4,69,0,75,0,0,18,29,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,29],[0,0,0,6,1,16,0,107,0,0,0,0,1,0,0,25,0,0,0,1,1,0,64,57,0,0,0,1,1,16,1,144],[0,0,18,38,0,0,97,61,0,0,5,94,1,0,0,65,0,0,0,0,0,16,4,53,0,0,0,17,1,0,0,57],[0,0,0,81,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,84,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,8,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,5,8,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,5,43,1,16,1,199],[0,0,128,10,2,0,0,57,20,28,20,13,0,0,4,15,0,0,0,1,2,32,1,144,0,0,18,65,0,0,97,61],[0,0,0,0,1,1,4,59,0,0,0,6,1,16,0,107,0,0,18,66,0,0,161,61,0,0,0,64,1,0,4,61],[0,0,0,100,2,16,0,57,0,0,5,92,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,68,2,16,0,57],[0,0,5,93,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,23,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,18,3,0,3,103],[0,0,0,0,1,19,3,79,0,0,0,0,1,1,4,59,0,0,5,17,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,17,2,32,1,151,0,0,5,17,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,17,2,32,0,156],[0,0,0,0,5,6,192,25,0,0,0,0,2,5,0,75,0,0,1,57,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,16,5,16,0,156,0,0,1,57,0,0,33,61],[0,0,0,0,5,20,0,73,0,0,0,32,6,32,0,57,0,0,5,17,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,17,5,80,1,151,0,0,5,17,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,17,5,80,0,156],[0,0,0,0,2,7,192,25,0,0,0,0,2,2,0,75,0,0,1,57,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,16,8,80,0,156],[0,0,19,58,0,0,33,61,0,0,0,1,7,112,1,144,0,0,19,58,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,57,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,18,137,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,18,129,0,0,65,61,0,0,0,0,7,3,0,75,0,0,18,152,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,18,171,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,18,177,0,0,33,61,0,0,0,68,2,16,0,57,0,0,5,91,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,2,184,0,0,1,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,29,3,0,0,57],[0,0,2,184,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,86,5,32,0,156,0,0,18,188,0,0,65,61,0,0,0,68,2,16,0,57,0,0,5,90,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,2,184,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,8,2,0,0,65,0,0,0,0,3,0,4,20,0,0,5,8,4,48,0,156],[0,0,0,0,3,2,128,25,0,0,5,8,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,87,1,16,1,199,0,0,0,1,2,0,0,57],[20,28,20,13,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,5,8,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,18,226,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,18,219,0,0,65,61,0,0,0,0,6,5,0,75,0,0,18,240,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,19,0,0,0,1,3,85,0,0,0,64,4,0,4,61,0,0,0,1,2,32,1,144],[0,0,19,7,0,0,97,61,0,0,0,0,1,0,4,51,0,0,5,18,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,88,1,0,0,65,0,0,0,0,1,0,192,25],[0,0,0,0,0,20,4,53,0,0,5,8,1,0,0,65,0,0,5,8,2,64,0,156,0,0,0,0,4,1,128,25],[0,0,0,64,1,64,2,16,0,0,5,89,1,16,1,199,0,0,20,29,0,1,4,46,0,0,0,31,2,48,1,143],[0,0,0,5,5,48,2,114,0,0,19,19,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,19,11,0,0,65,61,0,0,0,0,6,2,0,75],[0,0,19,34,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,8,1,0,0,65,0,0,5,8,2,64,0,156],[0,0,0,0,4,1,128,25,0,0,0,64,1,64,2,16,0,0,6,134,0,0,1,61,0,0,5,64,8,96,0,156],[0,0,19,58,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,9,4,59,0,0,0,0,0,152,4,53],[0,0,9,198,0,0,97,61,0,0,0,248,10,64,2,16,0,0,5,65,9,144,1,151,0,0,0,0,9,169,1,159],[0,0,5,17,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,64,9,96,0,156,0,0,19,62,0,0,161,61,0,0,5,94,1,0,0,65,0,0,0,0,0,16,4,53],[0,0,0,65,1,0,0,57,0,0,0,81,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,11,2,4,59],[0,0,0,0,0,185,4,53,0,0,9,198,0,0,97,61,0,0,5,65,2,176,1,151,0,0,5,70,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,16,9,144,1,151,0,0,0,56,13,144,0,140,0,0,19,117,0,0,65,61,0,0,0,32,13,144,2,112],[0,0,5,8,12,144,0,156,0,0,0,0,13,9,160,25,0,0,5,8,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,64,14,160,0,156,0,0,19,58,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,9,198,0,0,97,61,0,0,0,248,11,192,2,16],[0,0,0,0,2,43,1,159,0,0,5,71,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,130,0,0,1,61,0,0,5,64,13,160,0,156,0,0,19,58,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,9,198,0,0,97,61,0,0,0,248,9,144,2,16,0,0,0,0,2,41,1,159],[0,0,5,70,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,19,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,146,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,139,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,161,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,154,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,176,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,169,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,193,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,185,0,0,65,61,0,0,0,0,11,7,0,75,0,0,19,208,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,222,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,215,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,16,4,16,0,156,0,0,19,58,0,0,33,61],[0,0,0,1,3,48,1,144,0,0,19,58,0,0,193,61,0,0,0,64,0,16,4,63,0,0,5,8,1,0,0,65],[0,0,5,8,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,8,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,17,245,0,0,1,61,0,0,0,0,4,3,0,75,0,0,20,4,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,253,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,20,11,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,20,16,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,21,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,20,26,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,28,0,0,4,50,0,0,20,29,0,1,4,46,0,0,20,30,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,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],[156,77,83,90,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],[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],[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],[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],[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],[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],[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],[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],[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],[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],[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,0,0,0,0,0,0,0,0,0,0,0,0,0],[123,9,174,214,17,35,121,18,1,120,40,210,252,224,88,7,87,230,120,117,80,34,1,169,203,222,160,152,112,237,204,243]],"evm_simulator_code":[[0,20,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,8,6,112,1,151,0,19,0,0,0,97,3,85,0,2,0,0,0,97,3,85,0,3,0,0,0,97,3,85],[0,4,0,0,0,97,3,85,0,5,0,0,0,97,3,85,0,6,0,0,0,97,3,85,0,7,0,0,0,97,3,85],[0,8,0,0,0,97,3,85,0,9,0,0,0,97,3,85,0,10,0,0,0,97,3,85,0,11,0,0,0,97,3,85],[0,12,0,0,0,97,3,85,0,13,0,0,0,97,3,85,0,14,0,0,0,97,3,85,0,15,0,0,0,97,3,85],[0,16,0,0,0,97,3,85,0,17,0,0,0,97,3,85,0,18,0,0,0,1,3,85,0,0,5,8,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,60,0,0,193,61],[0,0,0,4,2,96,0,140,0,0,0,68,0,0,65,61,0,0,0,0,2,1,4,59,0,0,0,224,2,32,2,112],[0,0,5,10,3,32,0,156,0,0,0,84,0,0,161,61,0,0,5,11,3,32,0,156,0,0,0,168,0,0,97,61],[0,0,5,12,3,32,0,156,0,0,0,215,0,0,97,61,0,0,5,13,2,32,0,156,0,0,0,70,0,0,193,61],[0,0,0,4,2,96,0,138,0,0,0,32,3,32,0,140,0,0,1,57,0,0,65,61,0,0,0,4,1,16,3,112],[0,0,0,0,1,1,4,59,0,0,5,16,3,16,0,156,0,0,1,57,0,0,33,61,0,0,0,0,1,18,0,73],[0,0,5,17,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,17,1,16,1,151,0,0,0,0,4,1,0,75,0,0,0,0,2,0,160,25,0,0,5,17,1,16,0,156],[0,0,0,0,2,3,192,25,0,0,0,0,1,2,0,75,0,0,4,34,0,0,97,61,0,0,1,57,0,0,1,61],[0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,1,57,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,9,1,0,0,65,0,0,20,29,0,1,4,46],[0,0,0,0,1,6,0,75,0,0,4,34,0,0,97,61,0,0,0,0,1,0,4,18,0,0,5,18,1,16,1,151],[0,0,0,0,2,0,4,16,0,0,0,0,1,33,0,75,0,0,4,34,0,0,193,61,0,0,0,0,1,0,4,17],[0,0,128,1,1,16,0,140,0,0,4,34,0,0,193,61,0,0,5,94,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,95,1,0,0,65,0,0,20,30,0,1,4,48],[0,0,5,14,3,32,0,156,0,0,1,35,0,0,97,61,0,10,0,0,0,4,0,29,0,0,5,15,2,32,0,156],[0,0,0,70,0,0,193,61,0,0,0,4,2,96,0,138,0,0,0,96,2,32,0,140,0,0,1,57,0,0,65,61],[0,0,0,68,2,16,3,112,0,0,0,0,3,2,4,59,0,0,5,16,2,48,0,156,0,0,1,57,0,0,33,61],[0,0,0,4,4,48,0,57,0,0,0,0,5,70,0,73,0,0,5,17,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,17,8,80,1,151,0,0,0,0,9,8,0,75],[0,0,0,0,2,0,160,25,0,0,5,17,8,128,0,156,0,0,0,0,2,7,192,25,0,0,0,0,2,2,0,75],[0,0,1,57,0,0,193,61,0,0,0,0,2,0,4,17,0,0,128,1,2,32,0,140,0,0,4,34,0,0,193,61],[0,0,0,0,2,0,4,18,0,0,5,18,7,32,1,151,0,0,0,0,2,0,4,16,0,0,0,0,7,39,0,75],[0,0,4,34,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,17,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,17,5,80,1,151,0,0,5,17,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,17,5,80,0,156,0,0,0,0,8,9,192,25],[0,0,0,0,5,8,0,75,0,0,1,57,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,16,7,64,0,156,0,0,1,57,0,0,33,61,0,0,0,0,7,70,0,73],[0,0,0,32,5,80,0,57,0,0,5,17,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,17,7,112,1,151,0,0,5,17,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,17,7,112,0,156,0,0,0,0,8,9,192,25],[0,0,0,0,7,8,0,75,0,0,1,57,0,0,193,61,0,0,0,3,7,64,0,140,0,0,2,92,0,0,33,61],[0,0,5,22,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,57,1,0,0,65,0,0,0,196,0,16,4,63],[0,0,5,58,1,0,0,65,0,0,0,228,0,16,4,63,0,0,5,55,1,0,0,65,0,0,20,30,0,1,4,48],[0,0,0,4,2,96,0,138,0,0,0,96,2,32,0,140,0,0,1,57,0,0,65,61,0,0,0,68,2,16,3,112],[0,0,0,0,3,2,4,59,0,0,5,16,2,48,0,156,0,0,1,57,0,0,33,61,0,0,0,4,2,48,0,57],[0,0,0,0,5,38,0,73,0,0,5,17,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,17,9,80,1,151,0,0,0,0,10,9,0,75,0,0,0,0,4,0,160,25],[0,0,5,17,9,144,0,156,0,0,0,0,4,8,192,25,0,0,0,0,4,4,0,75,0,0,1,57,0,0,193,61],[0,0,0,0,4,0,4,17,0,0,128,1,4,64,0,140,0,0,4,34,0,0,193,61,0,0,0,0,4,0,4,18],[0,0,5,18,4,64,1,151,0,0,0,0,8,0,4,16,0,0,0,0,4,132,0,75,0,0,4,34,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,18,4,64,1,151,0,0,0,0,3,3,4,59,0,0,5,24,9,48,0,156],[0,0,2,24,0,0,65,61,0,0,5,22,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,34,1,0,0,65],[0,0,0,196,0,16,4,63,0,0,5,35,1,0,0,65,0,0,20,30,0,1,4,48,0,0,0,4,3,96,0,138],[0,0,0,96,2,48,0,140,0,0,1,57,0,0,65,61,0,0,0,68,2,16,3,112,0,0,0,0,2,2,4,59],[0,0,5,16,4,32,0,156,0,0,1,57,0,0,33,61,0,0,0,0,3,35,0,73,0,0,5,17,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,17,3,48,1,151],[0,0,0,0,6,3,0,75,0,0,0,0,4,0,160,25,0,0,5,17,3,48,0,156,0,0,0,0,4,5,192,25],[0,0,0,0,3,4,0,75,0,0,1,57,0,0,193,61,0,0,0,0,3,0,4,17,0,0,128,1,3,48,0,140],[0,0,4,34,0,0,193,61,0,0,0,0,3,0,4,18,0,0,5,18,3,48,1,151,0,0,0,0,4,0,4,16],[0,0,0,0,3,67,0,75,0,0,4,34,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,2,0,0,0,193,61,0,0,0,0,4,0,4,21,0,0,0,12,4,64,0,138],[0,0,0,5,4,64,2,16,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,8,2,0,0,65,0,0,5,8,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,28,20,8,0,0,4,15,0,0,0,10,3,0,0,41,0,19,0,0,0,1,3,85],[0,0,0,96,1,16,2,112,0,1,5,8,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,4,34,0,0,193,61,0,0,0,64,1,0,4,61,0,0,0,100,2,16,0,57],[0,0,5,20,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,68,2,16,0,57,0,0,5,21,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,22,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,8,2,0,0,65,0,0,5,8,3,16,0,156,0,0,0,0,1,2,128,25],[0,0,0,64,1,16,2,16,0,0,5,23,1,16,1,199,0,0,20,30,0,1,4,48,0,0,0,4,2,96,0,138],[0,0,0,96,2,32,0,140,0,0,1,57,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,16,2,32,0,156,0,0,1,57,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,17,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,17,2,32,1,151,0,0,0,0,5,2,0,75],[0,0,0,0,3,0,160,25,0,0,5,17,2,32,0,156,0,0,0,0,3,4,192,25,0,0,0,0,2,3,0,75],[0,0,1,59,0,0,97,61,0,0,0,0,1,0,0,25,0,0,20,30,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,4,34,0,0,193,61,0,0,0,0,2,0,4,18,0,0,5,18,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,4,34,0,0,193,61,0,0,0,0,2,0,4,20],[0,0,5,59,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,31,1,16,1,151,0,0,5,60,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,28,20,8,0,0,4,15],[0,19,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,8,0,48,1,157],[0,0,5,8,8,48,1,151,0,0,0,63,3,128,0,57,0,0,5,61,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,16,5,48,0,156,0,0,19,58,0,0,33,61,0,0,0,1,4,64,1,144,0,0,19,58,0,0,193,61],[0,0,0,64,0,48,4,63,0,0,0,0,7,134,4,54,0,0,0,18,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,125,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,117,0,0,65,61,0,0,0,0,9,0,0,75,0,0,1,127,0,0,97,61,0,0,0,31,9,128,1,143],[0,0,0,5,8,128,2,114,0,0,1,139,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,131,0,0,65,61,0,0,0,0,10,9,0,75],[0,0,1,154,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,82,0,0,97,61],[0,0,0,8,1,0,0,107,0,0,18,1,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,1,2,16,0,140,0,0,2,111,0,0,33,61],[0,0,0,0,2,1,0,75,0,0,2,196,0,0,97,61,0,0,0,1,1,16,0,140,0,0,2,178,0,0,193,61],[0,0,5,62,1,0,0,65,0,0,0,0,0,16,4,57,0,0,5,8,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,5,8,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,5,63,1,16,1,199],[0,0,128,11,2,0,0,57,20,28,20,13,0,0,4,15,0,0,0,1,2,32,1,144,0,0,18,65,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,63,0,0,65,61],[0,0,0,128,1,64,2,112,0,0,5,66,2,64,0,156,0,0,0,0,1,4,160,25,0,0,5,66,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,16,6,16,0,156],[0,0,0,0,5,2,160,25,0,0,0,64,2,16,2,112,0,0,5,16,6,16,0,156,0,0,0,0,2,1,160,25],[0,0,0,4,1,80,1,191,0,0,5,8,6,32,0,156,0,0,0,0,1,5,160,25,0,0,0,32,6,32,2,112],[0,0,5,8,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,16,6,16,0,156,0,0,19,58,0,0,33,61,0,0,0,1,2,32,1,144,0,0,19,58,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,18,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,238,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,230,0,0,65,61,0,0,0,0,7,0,0,75,0,0,1,240,0,0,97,61],[0,0,0,0,7,3,4,51,0,0,0,0,7,7,0,75,0,0,9,198,0,0,97,61,0,0,0,0,7,6,4,51],[0,0,5,65,7,112,1,151,0,0,0,248,8,80,2,16,0,0,0,0,7,120,1,159,0,0,5,67,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,81,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,18,29,0,0,193,61],[0,0,0,0,4,0,4,21,0,0,0,11,4,64,0,138,0,0,0,5,4,64,2,16,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,255,0,0,97,61,0,0,5,8,2,0,0,65],[0,0,5,8,4,16,0,156,0,0,0,0,1,2,128,25,0,0,0,192,1,16,2,16,0,0,5,19,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,28,20,8,0,0,4,15],[0,0,0,0,3,0,4,21,0,0,0,11,3,48,0,138,0,0,0,5,3,48,2,16,0,0,1,7,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,17,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,17,5,80,1,151,0,0,5,17,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,17,5,80,0,156,0,0,0,0,9,10,192,25,0,0,0,0,5,9,0,75],[0,0,1,57,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,16,5,128,0,156,0,0,1,57,0,0,33,61,0,0,0,0,5,134,0,73,0,0,0,32,9,32,0,57],[0,0,5,17,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,17,5,80,1,151,0,0,5,17,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,17,5,80,0,156,0,0,0,0,2,10,192,25,0,0,0,0,2,2,0,75],[0,0,1,57,0,0,193,61,0,0,0,0,2,0,4,20,0,0,5,8,5,32,0,156,0,0,0,205,0,0,33,61],[0,0,128,6,5,64,0,140,0,0,0,0,5,0,0,25,0,0,3,243,0,0,193,61,0,0,0,4,5,128,0,140],[0,0,0,0,5,0,0,25,0,0,3,243,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,25,10,160,1,151,0,0,5,26,11,160,0,156,0,0,3,239,0,0,33,61],[0,0,5,29,11,160,0,156,0,0,3,243,0,0,97,61,0,0,5,30,10,160,0,156,0,0,3,243,0,0,97,61],[0,0,0,0,5,0,0,25,0,0,3,243,0,0,1,61,0,0,0,0,1,6,4,51,0,0,5,8,2,0,0,65],[0,0,5,8,3,16,0,156,0,0,0,0,1,2,128,25,0,0,5,8,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,30,0,1,4,48],[0,0,0,0,7,81,3,79,0,0,0,0,7,7,4,59,0,0,5,25,7,112,1,151,0,0,5,36,8,112,0,156],[0,0,4,34,0,0,97,61,0,0,5,37,7,112,0,156,0,0,3,106,0,0,193,61,0,0,0,67,4,64,0,140],[0,0,3,208,0,0,33,61,0,0,5,22,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,53,1,0,0,65],[0,0,0,196,0,16,4,63,0,0,5,54,1,0,0,65,0,0,0,165,0,0,1,61,0,0,0,2,2,16,0,140],[0,0,3,18,0,0,97,61,0,0,0,113,1,16,0,140,0,0,2,178,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,17,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,17,2,32,1,151,0,0,5,17,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,17,2,32,0,156,0,0,0,0,5,6,192,25],[0,0,0,0,2,5,0,75,0,0,1,57,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,16,5,16,0,156,0,0,1,57,0,0,33,61,0,0,0,0,6,20,0,73],[0,0,0,32,5,32,0,57,0,0,5,17,2,0,0,65,0,0,0,0,7,101,0,75,0,0,0,0,7,0,0,25],[0,0,0,0,7,2,32,25,0,0,5,17,6,96,1,151,0,0,5,17,8,80,1,151,0,0,0,0,9,104,0,75],[0,0,0,0,2,0,128,25,0,0,0,0,6,104,1,63,0,0,5,17,6,96,0,156,0,0,0,0,2,7,192,25],[0,0,0,0,2,2,0,75,0,0,1,57,0,0,193,61,0,0,5,8,6,80,1,151,0,0,0,0,2,0,4,20],[0,2,0,0,0,99,3,85,0,0,0,0,5,81,0,25,0,0,0,0,1,21,0,75,0,0,0,0,1,0,0,25],[0,0,0,1,1,0,64,57,0,0,0,1,1,16,1,144,0,0,18,29,0,0,193,61,0,0,0,0,1,84,0,75],[0,0,18,29,0,0,65,61,0,0,0,0,1,99,3,79,0,0,0,0,3,84,0,73,0,0,5,8,3,48,1,151],[0,2,0,0,0,49,3,229,0,0,5,73,4,32,0,156,0,0,6,137,0,0,65,61,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,2,184,0,0,1,61,0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57],[0,0,5,96,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,22,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,8,2,0,0,65,0,0,5,8,3,16,0,156],[0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16,0,0,5,52,1,16,1,199,0,0,20,30,0,1,4,48],[0,0,0,6,1,48,3,96,0,0,0,64,2,0,4,61,0,8,0,0,0,2,0,29,0,0,0,0,1,1,4,59],[0,0,0,128,2,16,0,140,0,0,3,114,0,0,65,61,0,0,0,128,2,16,2,112,0,0,5,66,6,16,0,156],[0,0,0,0,2,1,160,25,0,0,5,66,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,16,8,32,0,156,0,0,0,0,7,6,160,25,0,0,0,64,6,32,2,112],[0,0,5,16,8,32,0,156,0,0,0,0,6,2,160,25,0,0,0,4,8,112,1,191,0,0,5,8,2,96,0,156],[0,0,0,0,8,7,160,25,0,0,0,32,7,96,2,112,0,0,5,8,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,8,6,96,0,41,0,0,0,8,7,96,0,108],[0,0,0,0,7,0,0,25,0,0,0,1,7,0,64,57,0,0,5,16,8,96,0,156,0,0,19,58,0,0,33,61],[0,0,0,1,7,112,1,144,0,0,19,58,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,2,254,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,2,246,0,0,65,61,0,0,0,0,7,0,0,75,0,0,3,0,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,9,198,0,0,97,61],[0,0,0,0,7,6,4,51,0,0,5,65,7,112,1,151,0,0,0,248,8,32,2,16,0,0,0,0,7,120,1,159],[0,0,5,67,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,3,131,0,0,1,61,0,0,5,62,1,0,0,65,0,0,0,0,0,16,4,57],[0,0,5,8,1,0,0,65,0,0,0,0,2,0,4,20,0,0,5,8,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,192,1,32,2,16,0,0,5,63,1,16,1,199,0,0,128,11,2,0,0,57,20,28,20,13,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,18,65,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,157,0,0,65,61,0,0,0,128,1,64,2,112,0,0,5,66,2,64,0,156],[0,0,0,0,1,4,160,25,0,0,5,66,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,16,6,16,0,156,0,0,0,0,5,2,160,25,0,0,0,64,2,16,2,112],[0,0,5,16,6,16,0,156,0,0,0,0,2,1,160,25,0,0,0,4,1,80,1,191,0,0,5,8,6,32,0,156],[0,0,0,0,1,5,160,25,0,0,0,32,6,32,2,112,0,0,5,8,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,16,6,16,0,156,0,0,19,58,0,0,33,61],[0,0,0,1,2,32,1,144,0,0,19,58,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,18,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,88,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,80,0,0,65,61],[0,0,0,0,7,0,0,75,0,0,3,90,0,0,97,61,0,0,0,0,7,3,4,51,0,0,0,0,7,7,0,75],[0,0,9,198,0,0,97,61,0,0,0,0,7,6,4,51,0,0,5,65,7,112,1,151,0,0,0,248,8,80,2,16],[0,0,0,0,7,120,1,159,0,0,5,67,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,175,0,0,1,61,0,0,5,22,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,56,1,0,0,65,0,0,0,212,0,0,1,61,0,0,0,8,2,0,0,41,0,0,5,64,2,32,0,156],[0,0,19,58,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,5,4,59,0,0,0,0,0,98,4,53],[0,0,9,198,0,0,97,61,0,0,0,248,7,16,2,16,0,0,5,17,8,0,0,65,0,0,0,0,1,1,0,75],[0,0,0,0,8,7,192,25,0,0,5,65,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,4,251,0,0,65,61,0,0,0,128,7,96,2,112],[0,0,5,66,8,96,0,156,0,0,0,0,7,6,160,25,0,0,5,66,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,16,10,112,0,156,0,0,0,0,9,8,160,25],[0,0,0,64,8,112,2,112,0,0,5,16,10,112,0,156,0,0,0,0,8,7,160,25,0,0,0,4,10,144,1,191],[0,0,5,8,7,128,0,156,0,0,0,0,10,9,160,25,0,0,0,32,9,128,2,112,0,0,5,8,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,16,10,128,0,156],[0,0,19,58,0,0,33,61,0,0,0,1,9,144,1,144,0,0,19,58,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,3,190,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,3,182,0,0,65,61,0,0,0,0,9,0,0,75,0,0,3,192,0,0,97,61],[0,0,0,0,9,1,4,51,0,0,0,0,9,9,0,75,0,0,9,198,0,0,97,61,0,0,0,0,9,8,4,51],[0,0,5,65,9,144,1,151,0,0,0,248,10,112,2,16,0,0,0,0,9,154,1,159,0,0,5,67,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,5,10,0,0,1,61],[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,18,5,80,0,156,0,0,1,57,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,38,4,0,0,65,0,0,0,128,0,64,4,63,0,0,5,18,2,32,1,151],[0,6,0,0,0,2,0,29,0,0,0,132,0,32,4,63,0,0,5,18,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,5,86,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,130,0,0,1,61,0,0,5,27,11,160,0,156],[0,0,3,243,0,0,97,61,0,0,5,28,10,160,0,156,0,0,0,0,5,0,192,25,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,8,8,144,1,151,0,2,0,0,0,129,3,85,0,0,0,0,1,129,3,79],[0,0,0,0,8,3,0,75,0,0,4,14,0,0,193,61,0,0,0,1,3,96,1,144,0,0,18,29,0,0,193,61],[0,0,5,32,3,0,0,65,0,0,5,33,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,31,2,32,1,151,0,0,0,0,2,38,1,159,0,0,0,0,3,167,0,73],[0,0,5,8,3,48,1,151,0,0,0,0,1,49,3,223,0,2,0,0,0,33,3,181,0,0,0,0,1,33,3,175],[0,0,0,0,2,4,0,25,0,0,4,26,0,0,1,61,0,0,0,1,6,96,1,144,0,0,18,29,0,0,193,61],[0,0,0,0,6,167,0,73,0,0,5,8,6,96,1,151,0,0,0,0,1,97,3,223,0,0,0,192,2,32,2,16],[0,0,5,31,2,32,1,151,0,0,5,32,2,32,1,199,0,2,0,0,0,33,3,181,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,28,20,18,0,0,4,15,0,19,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,8,0,48,1,157,0,0,5,8,3,48,1,151],[0,0,0,1,2,32,1,144,0,0,4,36,0,0,97,61,0,0,0,0,1,0,0,25,0,0,20,29,0,1,4,46],[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,20,30,0,1,4,48,0,0,5,64,1,48,0,156],[0,0,19,58,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,18,1,0,3,103,0,0,0,0,6,33,3,79],[0,0,0,0,6,6,4,59,0,0,0,0,0,101,4,53,0,0,9,198,0,0,97,61,0,0,0,248,7,64,2,16],[0,0,5,17,8,0,0,65,0,0,0,0,4,4,0,75,0,0,0,0,8,7,192,25,0,0,5,65,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,5,170,0,0,65,61,0,0,0,128,6,80,2,112],[0,0,5,66,7,80,0,156,0,0,0,0,6,5,160,25,0,0,5,66,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,16,9,96,0,156,0,0,0,0,8,7,160,25],[0,0,0,64,7,96,2,112,0,0,5,16,9,96,0,156,0,0,0,0,7,6,160,25,0,0,0,4,9,128,1,191],[0,0,5,8,6,112,0,156,0,0,0,0,9,8,160,25,0,0,0,32,8,112,2,112,0,0,5,8,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,16,9,112,0,156],[0,0,19,58,0,0,33,61,0,0,0,1,8,128,1,144,0,0,19,58,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,139,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,131,0,0,65,61,0,0,0,0,8,0,0,75],[0,0,4,141,0,0,97,61,0,0,0,0,8,4,4,51,0,0,0,0,8,8,0,75,0,0,9,198,0,0,97,61],[0,0,0,0,8,7,4,51,0,0,5,65,8,128,1,151,0,0,0,248,9,96,2,16,0,0,0,0,8,137,1,159],[0,0,5,67,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,5,186,0,0,1,61,0,0,5,64,1,48,0,156,0,0,19,58,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,18,1,0,3,103,0,0,0,0,6,33,3,79,0,0,0,0,6,6,4,59,0,0,0,0,0,101,4,53],[0,0,9,198,0,0,97,61,0,0,0,248,7,64,2,16,0,0,5,17,8,0,0,65,0,0,0,0,4,4,0,75],[0,0,0,0,8,7,192,25,0,0,5,65,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,6,8,0,0,65,61,0,0,0,128,6,80,2,112,0,0,5,66,7,80,0,156,0,0,0,0,6,5,160,25],[0,0,5,66,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,16,9,96,0,156,0,0,0,0,8,7,160,25,0,0,0,64,7,96,2,112,0,0,5,16,9,96,0,156],[0,0,0,0,7,6,160,25,0,0,0,4,9,128,1,191,0,0,5,8,6,112,0,156,0,0,0,0,9,8,160,25],[0,0,0,32,8,112,2,112,0,0,5,8,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,16,9,112,0,156,0,0,19,58,0,0,33,61,0,0,0,1,8,128,1,144],[0,0,19,58,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,233,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,225,0,0,65,61,0,0,0,0,8,0,0,75,0,0,4,235,0,0,97,61,0,0,0,0,8,4,4,51],[0,0,0,0,8,8,0,75,0,0,9,198,0,0,97,61,0,0,0,0,8,7,4,51,0,0,5,65,8,128,1,151],[0,0,0,248,9,96,2,16,0,0,0,0,8,137,1,159,0,0,5,67,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,6,24,0,0,1,61,0,0,5,64,7,16,0,156],[0,0,19,58,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,5,4,59,0,0,0,0,0,135,4,53,0,0,9,198,0,0,97,61],[0,0,0,248,9,96,2,16,0,0,5,17,10,0,0,65,0,0,0,0,6,6,0,75,0,0,0,0,10,9,192,25],[0,0,5,65,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,8,96,0,0,65,61,0,0,0,128,7,96,2,112,0,0,5,66,8,96,0,156,0,0,0,0,7,6,160,25],[0,0,5,66,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,16,10,112,0,156,0,0,0,0,9,8,160,25,0,0,0,64,8,112,2,112,0,0,5,16,10,112,0,156],[0,0,0,0,8,7,160,25,0,0,0,4,10,144,1,191,0,0,5,8,7,128,0,156,0,0,0,0,10,9,160,25],[0,0,0,32,9,128,2,112,0,0,5,8,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,16,10,128,0,156,0,0,19,58,0,0,33,61,0,0,0,1,9,144,1,144],[0,0,19,58,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,5,68,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,5,60,0,0,65,61],[0,0,0,0,9,0,0,75,0,0,5,70,0,0,97,61,0,0,0,0,9,2,4,51,0,0,0,0,9,9,0,75],[0,0,9,198,0,0,97,61,0,0,0,0,9,8,4,51,0,0,5,65,9,144,1,151,0,0,0,248,10,112,2,16],[0,0,0,0,9,154,1,159,0,0,5,67,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,8,111,0,0,1,61,0,0,5,8,1,0,0,65,0,0,5,8,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,0,9,2,0,0,41],[20,28,20,13,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,5,8,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,5,111,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,5,103,0,0,65,61,0,0,0,0,7,5,0,75],[0,0,5,126,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,19,0,0,0,1,3,85],[0,0,0,1,2,32,1,144,0,0,6,102,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,57,0,0,65,61],[0,0,0,128,4,0,4,61,0,0,0,8,4,64,0,108,0,0,4,34,0,0,129,61,0,0,0,160,4,80,0,57],[0,0,5,40,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,41,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,253,0,0,193,61,0,0,0,1,2,0,0,57,0,0,5,16,4,48,0,156],[0,0,19,58,0,0,33,61,0,0,9,17,0,0,1,61,0,0,5,64,6,64,0,156,0,0,19,58,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,7,4,59,0,0,0,0,0,118,4,53,0,0,9,198,0,0,97,61],[0,0,0,248,8,80,2,16,0,0,5,17,9,0,0,65,0,0,0,0,5,5,0,75,0,0,0,0,9,8,192,25],[0,0,5,65,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,9,95,0,0,65,61,0,0,0,128,8,112,2,112,0,0,5,66,9,112,0,156],[0,0,0,0,8,7,160,25,0,0,5,66,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,16,11,128,0,156,0,0,0,0,10,9,160,25,0,0,0,64,9,128,2,112],[0,0,5,16,11,128,0,156,0,0,0,0,9,8,160,25,0,0,0,4,11,160,1,191,0,0,5,8,8,144,0,156],[0,0,0,0,11,10,160,25,0,0,0,32,10,144,2,112,0,0,5,8,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,16,11,144,0,156,0,0,19,58,0,0,33,61],[0,0,0,1,10,160,1,144,0,0,19,58,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,246,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,238,0,0,65,61,0,0,0,0,10,0,0,75,0,0,5,248,0,0,97,61],[0,0,0,0,10,5,4,51,0,0,0,0,10,10,0,75,0,0,9,198,0,0,97,61,0,0,0,0,10,9,4,51],[0,0,5,65,10,160,1,151,0,0,0,248,11,128,2,16,0,0,0,0,10,171,1,159,0,0,5,67,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,9,111,0,0,1,61],[0,0,5,64,6,64,0,156,0,0,19,58,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,7,4,59],[0,0,0,0,0,118,4,53,0,0,9,198,0,0,97,61,0,0,0,248,8,80,2,16,0,0,5,17,9,0,0,65],[0,0,0,0,5,5,0,75,0,0,0,0,9,8,192,25,0,0,5,65,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,188,0,0,65,61],[0,0,0,128,8,96,2,112,0,0,5,66,9,96,0,156,0,0,0,0,8,6,160,25,0,0,5,66,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,16,11,128,0,156],[0,0,0,0,10,9,160,25,0,0,0,64,9,128,2,112,0,0,5,16,11,128,0,156,0,0,0,0,9,8,160,25],[0,0,0,4,11,160,1,191,0,0,5,8,8,144,0,156,0,0,0,0,11,10,160,25,0,0,0,32,10,144,2,112],[0,0,5,8,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,16,11,144,0,156,0,0,19,58,0,0,33,61,0,0,0,1,10,160,1,144,0,0,19,58,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,6,84,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,6,76,0,0,65,61],[0,0,0,0,10,0,0,75,0,0,6,86,0,0,97,61,0,0,0,0,10,5,4,51,0,0,0,0,10,10,0,75],[0,0,9,198,0,0,97,61,0,0,0,0,10,9,4,51,0,0,5,65,10,160,1,151,0,0,0,248,11,128,2,16],[0,0,0,0,10,171,1,159,0,0,5,67,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,10,129,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,115,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,107,0,0,65,61,0,0,0,0,6,4,0,75],[0,0,6,130,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,8,1,0,0,65,0,0,5,8,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,30,0,1,4,48,0,0,0,0,1,49,3,223,0,0,0,192,2,32,2,16,0,0,5,31,2,32,1,151],[0,0,5,33,2,32,1,199,0,2,0,0,0,33,3,181,0,0,0,0,1,33,3,175,0,0,128,16,2,0,0,57],[20,28,20,23,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,1,5,8,0,48,1,157],[0,0,5,8,5,48,1,151,0,19,0,0,0,1,3,85,0,0,0,1,2,32,1,144,0,0,9,202,0,0,97,61],[0,0,0,63,2,80,0,57,0,0,5,61,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,16,4,32,0,156],[0,0,19,58,0,0,33,61,0,0,0,1,3,48,1,144,0,0,19,58,0,0,193,61,0,0,0,64,0,32,4,63],[0,0,0,0,4,86,4,54,0,0,0,18,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,180,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,172,0,0,65,61],[0,0,0,0,7,0,0,75,0,0,6,182,0,0,97,61,0,0,0,31,7,80,1,143,0,0,0,5,5,80,2,114],[0,0,6,194,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,186,0,0,65,61,0,0,0,0,8,7,0,75,0,0,6,209,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,10,4,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,17,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,17,5,80,1,151,0,0,5,17,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,17,5,80,0,156],[0,0,0,0,6,7,192,25,0,0,0,0,5,6,0,75,0,0,1,57,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,16,4,80,0,156,0,0,1,57,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,17,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,17,3,48,1,151,0,0,5,17,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,17,3,48,0,156,0,0,0,0,1,7,192,25],[0,0,0,0,1,1,0,75,0,0,1,57,0,0,193,61,0,0,0,64,1,0,4,61,0,0,0,32,3,16,0,57],[0,0,5,74,5,80,1,152,0,0,7,12,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,7,4,0,0,65,61],[0,0,0,0,2,0,0,75,0,0,7,14,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,16,5,32,0,156,0,0,19,58,0,0,33,61],[0,0,0,1,4,64,1,144,0,0,19,58,0,0,193,61,0,0,0,64,0,32,4,63,0,0,5,8,2,0,0,65],[0,0,5,8,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,8,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,8,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,19,1,16,1,199,0,0,128,16,2,0,0,57,20,28,20,13,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,1,57,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,18,3,0,3,103],[0,0,0,0,4,67,3,79,0,0,0,0,4,4,4,59,0,0,5,17,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,17,5,80,1,151,0,0,5,17,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,17,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,57,0,0,193,61,0,0,0,9,4,64,0,41,0,0,0,0,1,67,3,79,0,0,0,0,1,1,4,59],[0,0,5,16,5,16,0,156,0,0,1,57,0,0,33,61,0,0,0,0,6,18,0,73,0,0,0,32,5,64,0,57],[0,0,5,17,4,0,0,65,0,0,0,0,7,101,0,75,0,0,0,0,7,0,0,25,0,0,0,0,7,4,32,25],[0,0,5,17,6,96,1,151,0,0,5,17,8,80,1,151,0,0,0,0,9,104,0,75,0,0,0,0,4,0,128,25],[0,0,0,0,6,104,1,63,0,0,5,17,6,96,0,156,0,0,0,0,4,7,192,25,0,0,0,0,4,4,0,75],[0,0,1,57,0,0,193,61,0,0,5,8,6,80,1,151,0,0,0,0,4,0,4,20,0,2,0,0,0,99,3,85],[0,0,0,0,5,81,0,25,0,0,0,0,1,21,0,75,0,0,0,0,1,0,0,25,0,0,0,1,1,0,64,57],[0,0,0,1,1,16,1,144,0,0,18,29,0,0,193,61,0,0,0,0,1,82,0,75,0,0,18,29,0,0,65,61],[0,0,0,0,1,99,3,79,0,0,0,0,2,82,0,73,0,0,5,8,2,32,1,151,0,2,0,0,0,33,3,229],[0,0,5,8,3,64,0,156,0,0,2,171,0,0,33,61,0,0,0,0,1,33,3,223,0,0,0,192,2,64,2,16],[0,0,5,31,2,32,1,151,0,0,5,33,2,32,1,199,0,2,0,0,0,33,3,181,0,0,0,0,1,33,3,175],[0,0,128,16,2,0,0,57,20,28,20,23,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,1,5,8,0,48,1,157,0,0,5,8,3,48,1,151,0,19,0,0,0,1,3,85,0,0,0,1,2,32,1,144],[0,0,17,47,0,0,97,61,0,0,0,63,2,48,0,57,0,0,5,61,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,16,6,32,0,156,0,0,19,58,0,0,33,61,0,0,0,1,4,64,1,144,0,0,19,58,0,0,193,61],[0,0,0,64,0,32,4,63,0,0,0,0,2,53,4,54,0,0,0,18,4,0,3,103,0,0,0,31,6,48,0,57],[0,0,0,5,6,96,2,114,0,0,7,148,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,140,0,0,65,61],[0,0,0,0,6,0,0,75,0,0,7,150,0,0,97,61,0,0,0,31,6,48,1,143,0,0,0,5,3,48,2,114],[0,0,7,162,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,154,0,0,65,61,0,0,0,0,7,6,0,75,0,0,7,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,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,10,4,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,76,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,77,3,16,0,156,0,0,19,58,0,0,33,61,0,0,1,224,3,16,0,57,0,0,0,64,0,48,4,63],[0,0,5,8,4,0,0,65,0,0,5,8,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,8,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,8,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,19,1,16,1,199,0,0,128,16,2,0,0,57],[20,28,20,13,0,0,4,15,0,0,0,1,2,32,1,144,0,0,1,57,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,62,1,0,0,65],[0,0,0,0,0,16,4,57,0,0,0,0,1,0,4,20,0,0,5,8,2,16,0,156,0,0,5,8,1,0,128,65],[0,0,0,192,1,16,2,16,0,0,5,63,1,16,1,199,0,0,128,11,2,0,0,57,20,28,20,13,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,18,65,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,78,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,79,3,0,0,65,0,0,0,0,0,49,4,53],[0,0,0,64,1,64,0,57,0,0,5,80,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,81,1,64,0,156,0,0,19,58,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,8,1,0,0,65,0,0,5,8,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,8,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,8,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,19,1,16,1,199,0,0,128,16,2,0,0,57,20,28,20,13,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,1,57,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,82,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,47,3,16,0,156,0,0,19,58,0,0,33,61,0,0,0,128,3,16,0,57],[0,0,0,64,0,48,4,63,0,0,5,8,3,0,0,65,0,0,5,8,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,8,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,8,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,17,249,0,0,1,61],[0,0,5,64,7,32,0,156,0,0,19,58,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,5,4,59,0,0,0,0,0,135,4,53],[0,0,9,198,0,0,97,61,0,0,0,248,9,96,2,16,0,0,5,17,10,0,0,65,0,0,0,0,6,6,0,75],[0,0,0,0,10,9,192,25,0,0,5,65,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,8,126,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,8,119,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,8,139,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,8,132,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,16,2,32,0,156,0,0,19,58,0,0,33,61,0,0,0,1,1,16,1,144,0,0,19,58,0,0,193,61],[0,0,0,5,1,0,0,41,0,0,0,64,0,16,4,63,0,0,5,64,1,16,0,156,0,0,19,58,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,68,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,11,44,0,0,65,61,0,0,0,128,6,32,2,112,0,0,5,66,7,32,0,156],[0,0,0,0,6,2,160,25,0,0,5,66,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,16,9,96,0,156,0,0,0,0,8,7,160,25,0,0,0,64,7,96,2,112],[0,0,5,16,9,96,0,156,0,0,0,0,7,6,160,25,0,0,0,4,9,128,1,191,0,0,5,8,6,112,0,156],[0,0,0,0,9,8,160,25,0,0,0,32,8,112,2,112,0,0,5,8,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,16,9,112,0,156,0,0,19,58,0,0,33,61,0,0,0,1,8,128,1,144],[0,0,19,58,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,8,233,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,8,225,0,0,65,61,0,0,0,0,8,0,0,75,0,0,8,235,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,9,198,0,0,97,61,0,0,0,0,8,7,4,51],[0,0,5,65,8,128,1,151,0,0,0,248,9,96,2,16,0,0,0,0,8,137,1,159,0,0,5,67,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,11,61,0,0,1,61,0,0,5,8,1,0,0,65,0,0,5,8,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,8,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,28,20,8,0,0,4,15,0,5,0,96,0,0,0,61,0,0,0,1,2,32,1,143,0,19,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,8,0,48,1,157,0,0,5,8,3,48,1,152],[0,0,9,61,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,16,6,64,0,156,0,0,19,58,0,0,33,61],[0,0,0,1,5,80,1,144,0,0,19,58,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,9,45,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,9,37,0,0,65,61,0,10,0,0,0,8,0,29,0,0,0,0,5,4,0,75,0,0,9,61,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,229,0,0,193,61,0,0,0,0,2,1,0,75,0,0,9,87,0,0,193,61,0,0,0,64,4,0,4,61],[0,10,0,0,0,4,0,29,0,0,5,22,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,28,19,250,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,8,2,0,0,65],[0,0,5,8,3,16,0,156,0,0,0,0,1,2,128,25,0,0,0,10,4,0,0,41,0,0,5,8,3,64,0,156],[0,0,0,0,4,2,128,25,0,0,0,64,2,64,2,16,0,0,2,89,0,0,1,61,0,0,5,64,8,80,0,156],[0,0,19,58,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,9,4,59,0,0,0,0,0,152,4,53],[0,0,9,198,0,0,97,61,0,0,0,248,10,112,2,16,0,0,5,17,11,0,0,65,0,0,0,0,7,7,0,75],[0,0,0,0,11,10,192,25,0,0,5,65,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,10,11,0,0,65,61,0,0,0,128,9,128,2,112,0,0,5,66,10,128,0,156],[0,0,0,0,9,8,160,25,0,0,5,66,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,16,12,144,0,156,0,0,0,0,11,10,160,25,0,0,0,64,10,144,2,112],[0,0,5,16,12,144,0,156,0,0,0,0,10,9,160,25,0,0,0,4,12,176,1,191,0,0,5,8,9,160,0,156],[0,0,0,0,12,11,160,25,0,0,0,32,11,160,2,112,0,0,5,8,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,16,12,160,0,156,0,0,19,58,0,0,33,61],[0,0,0,1,11,176,1,144,0,0,19,58,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,9,170,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,162,0,0,65,61,0,0,0,0,11,0,0,75,0,0,9,172,0,0,97,61],[0,0,0,0,11,7,4,51,0,0,0,0,11,11,0,75,0,0,9,198,0,0,97,61,0,0,0,0,11,10,4,51],[0,0,5,65,11,176,1,151,0,0,0,248,12,144,2,16,0,0,0,0,11,188,1,159,0,0,5,67,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,10,27,0,0,1,61],[0,0,5,64,8,80,0,156,0,0,19,58,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,9,4,59],[0,0,0,0,0,152,4,53,0,0,10,123,0,0,193,61,0,0,5,94,1,0,0,65,0,0,0,0,0,16,4,53],[0,0,0,50,1,0,0,57,0,0,0,81,0,0,1,61,0,0,0,31,3,80,1,143,0,0,0,5,2,80,2,114],[0,0,9,213,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,206,0,0,65,61,0,0,0,0,4,3,0,75,0,0,9,227,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,30,0,1,4,48,0,0,0,0,2,1,0,75,0,0,11,135,0,0,193,61,0,0,5,42,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,8,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,5,8,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,5,43,1,16,1,199,0,0,128,2,2,0,0,57,20,28,20,13,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,18,65,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75,0,0,11,131,0,0,193,61],[0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57,0,0,5,51,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,22,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,2,189,0,0,1,61],[0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57,0,0,5,75,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,2,184,0,0,1,61,0,0,5,64,9,112,0,156],[0,0,19,58,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,10,4,59,0,0,0,0,0,169,4,53],[0,0,9,198,0,0,97,61,0,0,0,248,11,128,2,16,0,0,5,17,12,0,0,65,0,0,0,0,8,8,0,75],[0,0,0,0,12,11,192,25,0,0,5,65,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,64,8,144,0,156,0,0,19,58,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,68,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,152,0,0,65,61,0,0,0,8,6,0,0,41],[0,0,0,128,10,96,2,112,0,0,5,66,11,96,0,156,0,0,0,0,10,6,160,25,0,0,5,66,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,16,13,160,0,156],[0,0,0,0,12,11,160,25,0,0,0,64,11,160,2,112,0,0,5,16,13,160,0,156,0,0,0,0,11,10,160,25],[0,0,0,4,13,192,1,191,0,0,5,8,10,176,0,156,0,0,0,0,13,12,160,25,0,0,0,32,12,176,2,112],[0,0,5,8,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,16,13,176,0,156,0,0,19,58,0,0,33,61,0,0,0,1,12,192,1,144,0,0,19,58,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,104,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,10,96,0,0,65,61],[0,0,0,0,6,0,0,75,0,0,10,106,0,0,97,61,0,0,0,0,6,8,4,51,0,0,0,0,6,6,0,75],[0,0,9,198,0,0,97,61,0,0,0,0,6,11,4,51,0,0,5,65,6,96,1,151,0,0,0,248,12,160,2,16],[0,0,0,0,6,108,1,159,0,0,5,67,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,170,0,0,1,61,0,0,0,248,10,96,2,16],[0,0,5,17,11,0,0,65,0,0,0,0,6,6,0,75,0,0,0,0,11,10,192,25,0,0,5,65,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,206,0,0,65,61],[0,0,0,128,9,128,2,112,0,0,5,66,10,128,0,156,0,0,0,0,9,8,160,25,0,0,5,66,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,16,12,144,0,156],[0,0,0,0,11,10,160,25,0,0,0,64,10,144,2,112,0,0,5,16,12,144,0,156,0,0,0,0,10,9,160,25],[0,0,0,4,12,176,1,191,0,0,5,8,9,160,0,156,0,0,0,0,12,11,160,25,0,0,0,32,11,160,2,112],[0,0,5,8,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,16,12,160,0,156,0,0,19,58,0,0,33,61,0,0,0,1,11,176,1,144,0,0,19,58,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,10,188,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,180,0,0,65,61],[0,0,0,0,11,0,0,75,0,0,10,190,0,0,97,61,0,0,0,0,11,6,4,51,0,0,0,0,11,11,0,75],[0,0,9,198,0,0,97,61,0,0,0,0,11,10,4,51,0,0,5,65,11,176,1,151,0,0,0,248,12,144,2,16],[0,0,0,0,11,188,1,159,0,0,5,67,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,222,0,0,1,61,0,0,5,64,9,96,0,156,0,0,19,58,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,10,4,59,0,0,0,0,0,169,4,53,0,0,9,198,0,0,97,61],[0,0,0,248,11,128,2,16,0,0,5,17,12,0,0,65,0,0,0,0,8,8,0,75,0,0,0,0,12,11,192,25],[0,0,5,65,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,11,189,0,0,65,61,0,0,0,128,10,144,2,112,0,0,5,66,11,144,0,156,0,0,0,0,10,9,160,25],[0,0,5,66,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,16,13,160,0,156,0,0,0,0,12,11,160,25,0,0,0,64,11,160,2,112,0,0,5,16,13,160,0,156],[0,0,0,0,11,10,160,25,0,0,0,4,13,192,1,191,0,0,5,8,10,176,0,156,0,0,0,0,13,12,160,25],[0,0,0,32,12,176,2,112,0,0,5,8,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,16,13,176,0,156,0,0,19,58,0,0,33,61,0,0,0,1,12,192,1,144],[0,0,19,58,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,25,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,11,17,0,0,65,61,0,0,0,0,7,0,0,75,0,0,11,27,0,0,97,61,0,0,0,0,7,8,4,51],[0,0,0,0,7,7,0,75,0,0,9,198,0,0,97,61,0,0,0,0,7,11,4,51,0,0,5,65,7,112,1,151],[0,0,0,248,12,160,2,16,0,0,0,0,7,124,1,159,0,0,5,67,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,11,206,0,0,1,61],[0,0,0,4,6,0,0,41,0,0,5,64,6,96,0,156,0,0,19,58,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,5,4,59,0,0,0,0,0,118,4,53,0,0,9,198,0,0,97,61,0,0,0,248,8,32,2,16],[0,0,5,17,9,0,0,65,0,0,0,0,2,2,0,75,0,0,0,0,9,8,192,25,0,0,5,65,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,17,7,96,1,151],[0,0,5,17,8,32,1,151,0,0,5,17,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,17,7,112,0,156,0,0,0,0,10,9,192,25,0,0,0,0,7,10,0,75,0,0,1,57,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,16,9,112,0,156],[0,0,1,57,0,0,33,61,0,0,0,0,9,116,0,73,0,0,0,32,8,128,0,57,0,0,5,17,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,17,9,144,1,151],[0,0,5,17,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,17,9,144,0,156,0,0,0,0,10,11,192,25,0,0,0,0,9,10,0,75,0,0,1,57,0,0,193,61],[0,0,0,1,9,112,0,140,0,0,14,78,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,17,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,17,5,80,1,151,0,0,5,17,9,80,0,156,0,0,0,0,8,0,128,25],[0,0,5,17,5,80,1,103,0,0,5,17,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,14,136,0,0,193,61,0,0,0,64,5,0,4,61,0,3,0,0,0,5,0,29],[0,0,5,64,5,80,0,156,0,0,19,58,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,67,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,14,136,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,170,0,0,97,61,0,0,5,17,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,17,1,16,1,151],[0,0,0,0,4,1,0,75,0,0,0,0,2,0,160,25,0,0,5,17,1,16,0,156,0,0,0,0,2,3,192,25],[0,0,0,0,1,2,0,75,0,0,1,57,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,57,0,0,193,61,0,0,0,0,1,1,0,75,0,0,11,170,0,0,193,61,0,0,0,64,1,0,4,61],[0,0,0,100,2,16,0,57,0,0,5,49,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,68,2,16,0,57],[0,0,5,50,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,22,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,28,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,38,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,12,49,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,12,99,0,0,1,61,0,0,5,64,7,128,0,156,0,0,19,58,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,11,7,4,59,0,0,0,0,0,186,4,53,0,0,9,198,0,0,97,61,0,0,0,248,7,144,2,16],[0,0,5,17,12,0,0,65,0,0,0,0,9,9,0,75,0,0,0,0,12,7,192,25,0,0,5,65,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,64,7,160,0,156],[0,0,19,58,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,68,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,13,116,0,0,65,61,0,0,0,8,7,0,0,41,0,0,0,128,11,112,2,112],[0,0,5,66,12,112,0,156,0,0,0,0,11,7,160,25,0,0,5,66,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,16,14,176,0,156,0,0,0,0,13,12,160,25],[0,0,0,64,12,176,2,112,0,0,5,16,14,176,0,156,0,0,0,0,12,11,160,25,0,0,0,4,14,208,1,191],[0,0,5,8,11,192,0,156,0,0,0,0,14,13,160,25,0,0,0,32,13,192,2,112,0,0,5,8,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,16,14,192,0,156,0,0,19,58,0,0,33,61,0,0,0,1,13,208,1,144,0,0,19,58,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,12,29,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,12,21,0,0,65,61,0,0,0,0,7,0,0,75,0,0,12,31,0,0,97,61,0,0,0,0,7,9,4,51],[0,0,0,0,7,7,0,75,0,0,9,198,0,0,97,61,0,0,0,0,7,12,4,51,0,0,5,65,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,67,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,13,134,0,0,1,61,0,0,5,8,2,0,0,65,0,0,5,8,3,16,0,156,0,0,0,0,1,2,128,25],[0,0,0,10,4,0,0,41,0,0,5,8,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,44,1,16,1,199,0,0,0,9,2,0,0,41],[20,28,20,13,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,8,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,12,80,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,12,72,0,0,65,61],[0,0,0,0,7,5,0,75,0,0,12,95,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,19,0,0,0,1,3,85,0,0,0,1,2,32,1,144,0,0,13,87,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,16,4,16,0,156,0,0,19,58,0,0,33,61,0,0,0,1,2,32,1,144],[0,0,19,58,0,0,193,61,0,0,0,64,0,16,4,63,0,0,0,32,2,48,0,140,0,0,1,57,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,14,66,0,0,193,61,0,0,0,32,2,16,0,57,0,0,5,40,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,47,4,16,0,156],[0,0,19,58,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,48,4,16,0,156,0,0,19,58,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,41,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,63,0,0,193,61],[0,0,0,1,2,0,0,57,0,0,5,16,1,48,0,156,0,0,19,58,0,0,33,61,0,0,15,85,0,0,1,61],[0,0,5,64,6,128,0,156,0,0,19,58,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,11,6,4,59],[0,0,0,0,0,186,4,53,0,0,9,198,0,0,97,61,0,0,0,8,13,0,0,41,0,0,0,248,6,208,2,16],[0,0,5,17,12,0,0,65,0,0,0,0,13,13,0,75,0,0,0,0,12,6,192,25,0,0,5,65,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,183,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,176,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,198,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,191,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,213,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,206,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,228,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,221,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,243,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,236,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,13,2,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,251,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,16,5,112,0,156,0,0,19,58,0,0,33,61],[0,0,0,1,4,64,1,144,0,0,19,58,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,17,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,17,5,80,1,151,0,0,5,17,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,17,5,80,0,156,0,0,0,0,8,9,192,25],[0,0,0,0,5,8,0,75,0,0,1,57,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,16,8,64,0,156,0,0,1,57,0,0,33,61,0,0,0,0,8,66,0,73],[0,0,0,32,5,80,0,57,0,0,5,17,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,17,8,128,1,151,0,0,5,17,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,17,8,128,0,156,0,0,0,0,9,10,192,25],[0,0,0,0,8,9,0,75,0,0,1,57,0,0,193,61,0,0,0,1,8,64,0,140,0,0,15,161,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,17,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,17,8,128,1,151],[0,0,5,17,11,128,0,156,0,0,0,0,10,0,128,25,0,0,5,17,8,128,1,103,0,0,5,17,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,16,59,0,0,193,61],[0,0,5,64,8,112,0,156,0,0,19,58,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,67,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,16,59,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,100,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,92,0,0,65,61],[0,0,0,0,6,4,0,75,0,0,13,115,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,130,0,0,1,61],[0,0,5,64,7,144,0,156,0,0,19,58,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,12,7,4,59],[0,0,0,0,0,203,4,53,0,0,9,198,0,0,97,61,0,0,0,8,14,0,0,41,0,0,0,248,7,224,2,16],[0,0,5,17,13,0,0,65,0,0,0,0,14,14,0,75,0,0,0,0,13,7,192,25,0,0,5,65,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,13,147,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,13,140,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,13,162,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,13,155,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,13,177,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,13,170,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,13,192,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,13,185,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,13,207,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,13,200,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,13,222,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,13,215,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,13,237,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,13,230,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,16,5,96,0,156,0,0,19,58,0,0,33,61,0,0,0,1,4,64,1,144],[0,0,19,58,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,17,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,17,5,80,1,151,0,0,5,17,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,17,5,80,0,156,0,0,0,0,8,9,192,25,0,0,0,0,5,8,0,75],[0,0,1,57,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,16,8,64,0,156,0,0,1,57,0,0,33,61,0,0,0,0,8,66,0,73,0,0,0,32,5,80,0,57],[0,0,5,17,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,17,8,128,1,151,0,0,5,17,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,17,8,128,0,156,0,0,0,0,9,10,192,25,0,0,0,0,8,9,0,75],[0,0,1,57,0,0,193,61,0,0,0,1,8,64,0,140,0,0,17,74,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,17,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,17,8,128,1,151,0,0,5,17,11,128,0,156],[0,0,0,0,10,0,128,25,0,0,5,17,8,128,1,103,0,0,5,17,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,19,55,0,0,193,61,0,0,5,64,8,96,0,156],[0,0,19,58,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,67,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,19,55,0,0,1,61,0,0,5,22,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,45,2,0,0,65,0,0,0,0,0,36,4,53,0,0,0,100,2,16,0,57],[0,0,5,46,3,0,0,65,0,0,1,28,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,14,120,0,0,65,61,0,0,0,32,9,112,2,112,0,0,5,8,8,112,0,156],[0,0,0,0,9,7,160,25,0,0,5,8,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,64,10,160,0,156,0,0,19,58,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,5,4,59,0,0,0,0,0,89,4,53,0,0,9,198,0,0,97,61],[0,0,5,65,5,80,1,151,0,0,0,248,10,128,2,16,0,0,0,0,5,90,1,159,0,0,5,69,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,14,136,0,0,1,61],[0,0,0,3,8,0,0,41,0,0,5,64,8,128,0,156,0,0,19,58,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,5,4,59,0,0,0,0,0,88,4,53,0,0,9,198,0,0,97,61,0,0,0,248,7,112,2,16],[0,0,5,65,5,80,1,151,0,0,0,0,5,117,1,159,0,0,5,17,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,232,0,0,193,61,0,0,5,17,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,17,6,96,1,151,0,0,5,17,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,17,6,96,0,156],[0,0,0,0,5,7,192,25,0,0,0,0,5,5,0,75,0,0,1,57,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,16,11,32,0,156,0,0,1,57,0,0,33,61,0,0,0,0,11,36,0,73,0,0,0,32,5,80,0,57],[0,0,5,17,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,17,11,176,1,151,0,0,5,17,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,17,11,176,0,156,0,0,0,0,12,13,192,25,0,0,0,0,11,12,0,75],[0,0,1,57,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,16,6,96,1,151,0,0,0,56,8,96,0,140,0,0,16,122,0,0,65,61],[0,0,0,32,9,96,2,112,0,0,5,8,8,96,0,156,0,0,0,0,9,6,160,25,0,0,5,8,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,64,10,112,0,156,0,0,19,58,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,9,4,59,0,0,0,0,0,148,4,53],[0,0,9,198,0,0,97,61,0,0,5,65,9,144,1,151,0,0,0,248,10,128,2,16,0,0,0,0,9,154,1,159],[0,0,5,71,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,137,0,0,1,61],[0,0,5,62,1,0,0,65,0,0,0,0,0,16,4,57,0,0,5,8,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,5,8,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,5,63,1,16,1,199],[0,0,128,11,2,0,0,57,20,28,20,13,0,0,4,15,0,0,0,1,2,32,1,144,0,0,18,65,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,200,0,0,65,61],[0,0,0,128,3,16,2,112,0,0,5,66,4,16,0,156,0,0,0,0,3,1,160,25,0,0,5,66,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,16,6,48,0,156],[0,0,0,0,5,4,160,25,0,0,0,64,4,48,2,112,0,0,5,16,6,48,0,156,0,0,0,0,4,3,160,25],[0,0,0,4,3,80,1,191,0,0,5,8,6,64,0,156,0,0,0,0,3,5,160,25,0,0,0,32,6,64,2,112],[0,0,5,8,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,16,6,48,0,156],[0,0,19,58,0,0,33,61,0,0,0,1,4,64,1,144,0,0,19,58,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,18,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,45,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,37,0,0,65,61,0,0,0,0,7,0,0,75,0,0,15,47,0,0,97,61,0,0,0,0,7,2,4,51],[0,0,0,0,7,7,0,75,0,0,9,198,0,0,97,61,0,0,0,0,7,6,4,51,0,0,5,65,7,112,1,151],[0,0,0,248,8,80,2,16,0,0,0,0,7,120,1,159,0,0,5,67,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,218,0,0,1,61,0,0,5,8,3,0,0,65],[0,0,5,8,5,32,0,156,0,0,0,0,2,3,128,25,0,0,0,64,2,32,2,16,0,0,5,8,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,8,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,28,20,8,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,19,0,0,0,1,3,85,0,0,0,96,1,16,2,112,0,1,5,8,0,16,1,157,0,0,5,8,3,16,1,152],[0,0,15,130,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,16,5,16,0,156,0,0,19,58,0,0,33,61],[0,0,0,1,4,64,1,144,0,0,19,58,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,19,4,0,3,103,0,0,0,5,3,48,2,114],[0,0,15,114,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,106,0,0,65,61,0,6,0,0,0,8,0,29,0,0,0,0,5,1,0,75],[0,0,15,130,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,255,0,0,193,61,0,0,0,0,2,1,0,75,0,0,16,117,0,0,193,61],[0,0,0,64,4,0,4,61,0,9,0,0,0,4,0,29,0,0,5,22,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,28,19,250,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,8,2,0,0,65,0,0,5,8,3,16,0,156,0,0,0,0,1,2,128,25,0,0,0,9,4,0,0,41],[0,0,9,91,0,0,1,61,0,0,0,56,8,64,0,140,0,0,16,43,0,0,65,61,0,0,0,32,9,64,2,112],[0,0,5,8,8,64,0,156,0,0,0,0,9,4,160,25,0,0,5,8,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,64,10,112,0,156,0,0,19,58,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,10,4,59,0,0,0,0,0,169,4,53,0,0,9,198,0,0,97,61],[0,0,5,65,10,160,1,151,0,0,0,248,11,128,2,16,0,0,0,0,10,171,1,159,0,0,5,69,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,16,59,0,0,1,61],[0,0,5,64,3,32,0,156,0,0,19,58,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,18,3,0,3,103],[0,0,0,0,6,67,3,79,0,0,0,0,6,6,4,59,0,0,0,0,0,101,4,53,0,0,9,198,0,0,97,61],[0,0,0,248,7,16,2,16,0,0,5,17,8,0,0,65,0,0,0,0,1,1,0,75,0,0,0,0,8,7,192,25],[0,0,5,65,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,232,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,225,0,0,65,61],[0,0,0,0,2,101,0,25,0,0,5,83,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,16,6,32,0,156],[0,0,19,58,0,0,33,61,0,0,0,1,5,80,1,144,0,0,19,58,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,14,142,0,0,1,61,0,0,0,0,2,1,0,75],[0,0,16,22,0,0,193,61,0,0,5,42,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,8,1,0,0,65,0,0,0,0,2,0,4,20,0,0,5,8,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,5,43,1,16,1,199,0,0,128,2,2,0,0,57],[20,28,20,13,0,0,4,15,0,0,0,1,2,32,1,144,0,0,18,65,0,0,97,61,0,0,0,0,1,1,4,59],[0,0,0,0,1,1,0,75,0,0,9,248,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,4,34,0,0,97,61,0,0,5,17,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,17,1,16,1,151,0,0,0,0,4,1,0,75],[0,0,0,0,2,0,160,25,0,0,5,17,1,16,0,156,0,0,0,0,2,3,192,25,0,0,0,0,1,2,0,75],[0,0,1,57,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,57,0,0,193,61],[0,0,0,0,1,1,0,75,0,0,4,34,0,0,193,61,0,0,11,155,0,0,1,61,0,0,5,64,8,112,0,156],[0,0,19,58,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,9,4,59,0,0,0,0,0,152,4,53],[0,0,9,198,0,0,97,61,0,0,0,248,10,64,2,16,0,0,5,65,9,144,1,151,0,0,0,0,9,169,1,159],[0,0,5,17,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,64,9,112,0,156,0,0,19,58,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,11,2,4,59],[0,0,0,0,0,185,4,53,0,0,9,198,0,0,97,61,0,0,5,65,2,176,1,151,0,0,5,70,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,16,9,144,1,151,0,0,0,56,13,144,0,140,0,0,17,113,0,0,65,61,0,0,0,32,13,144,2,112],[0,0,5,8,12,144,0,156,0,0,0,0,13,9,160,25,0,0,5,8,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,64,14,160,0,156,0,0,19,58,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,9,198,0,0,97,61,0,0,0,248,11,192,2,16],[0,0,0,0,2,43,1,159,0,0,5,71,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,17,126,0,0,1,61,0,0,5,8,2,0,0,65,0,0,5,8,3,16,0,156,0,0,0,0,1,2,128,25],[0,0,0,6,4,0,0,41,0,0,9,91,0,0,1,61,0,0,5,64,8,112,0,156,0,0,19,58,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,8,4,59,0,0,0,0,0,132,4,53,0,0,9,198,0,0,97,61],[0,0,5,65,8,128,1,151,0,0,0,248,6,96,2,16,0,0,0,0,6,134,1,159,0,0,5,70,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,150,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,143,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,166,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,159,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,182,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,175,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,198,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,191,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,214,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,207,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,230,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,223,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,247,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,239,0,0,65,61,0,0,0,0,10,7,0,75],[0,0,17,6,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,17,20,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,17,13,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,16,3,16,0,156],[0,0,19,58,0,0,33,61,0,0,0,1,2,32,1,144,0,0,19,58,0,0,193,61,0,0,0,64,0,16,4,63],[0,0,5,8,1,0,0,65,0,0,5,8,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,8,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,17,245,0,0,1,61,0,0,0,31,4,48,1,143],[0,0,0,5,2,48,2,114,0,0,17,58,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,51,0,0,65,61,0,0,0,0,5,4,0,75,0,0,17,72,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,30,0,1,4,48,0,0,0,56,8,64,0,140,0,0,19,39,0,0,65,61],[0,0,0,32,9,64,2,112,0,0,5,8,8,64,0,156,0,0,0,0,9,4,160,25,0,0,5,8,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,64,10,96,0,156,0,0,19,58,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,10,4,59,0,0,0,0,0,169,4,53],[0,0,9,198,0,0,97,61,0,0,5,65,10,160,1,151,0,0,0,248,11,128,2,16,0,0,0,0,10,171,1,159],[0,0,5,69,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,19,55,0,0,1,61,0,0,5,64,13,160,0,156,0,0,19,58,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,9,198,0,0,97,61,0,0,0,248,9,144,2,16,0,0,0,0,2,41,1,159],[0,0,5,70,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,72,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,17,142,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,17,135,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,17,157,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,17,150,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,17,172,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,17,165,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,17,189,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,17,181,0,0,65,61,0,0,0,0,11,6,0,75,0,0,17,204,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,17,218,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,17,211,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,16,4,16,0,156,0,0,19,58,0,0,33,61],[0,0,0,1,3,48,1,144,0,0,19,58,0,0,193,61,0,0,0,64,0,16,4,63,0,0,5,8,1,0,0,65],[0,0,5,8,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,8,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,5,8,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,19,1,16,1,199,0,0,128,16,2,0,0,57,20,28,20,13,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,1,57,0,0,97,61,0,0,0,18,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,18,1,16,1,152,0,5,0,0,0,4,0,29,0,0,18,33,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,18,20,0,0,97,61,0,0,0,0,101,82,0,217,0,0,0,0,4,69,0,75,0,0,18,29,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,29],[0,0,0,6,1,16,0,107,0,0,0,0,1,0,0,25,0,0,0,1,1,0,64,57,0,0,0,1,1,16,1,144],[0,0,18,38,0,0,97,61,0,0,5,94,1,0,0,65,0,0,0,0,0,16,4,53,0,0,0,17,1,0,0,57],[0,0,0,81,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,84,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,8,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,5,8,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,5,43,1,16,1,199],[0,0,128,10,2,0,0,57,20,28,20,13,0,0,4,15,0,0,0,1,2,32,1,144,0,0,18,65,0,0,97,61],[0,0,0,0,1,1,4,59,0,0,0,6,1,16,0,107,0,0,18,66,0,0,161,61,0,0,0,64,1,0,4,61],[0,0,0,100,2,16,0,57,0,0,5,92,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,68,2,16,0,57],[0,0,5,93,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,23,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,18,3,0,3,103],[0,0,0,0,1,19,3,79,0,0,0,0,1,1,4,59,0,0,5,17,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,17,2,32,1,151,0,0,5,17,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,17,2,32,0,156],[0,0,0,0,5,6,192,25,0,0,0,0,2,5,0,75,0,0,1,57,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,16,5,16,0,156,0,0,1,57,0,0,33,61],[0,0,0,0,5,20,0,73,0,0,0,32,6,32,0,57,0,0,5,17,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,17,5,80,1,151,0,0,5,17,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,17,5,80,0,156],[0,0,0,0,2,7,192,25,0,0,0,0,2,2,0,75,0,0,1,57,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,16,8,80,0,156],[0,0,19,58,0,0,33,61,0,0,0,1,7,112,1,144,0,0,19,58,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,57,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,18,137,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,18,129,0,0,65,61,0,0,0,0,7,3,0,75,0,0,18,152,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,18,171,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,18,177,0,0,33,61,0,0,0,68,2,16,0,57,0,0,5,91,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,2,184,0,0,1,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,29,3,0,0,57],[0,0,2,184,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,86,5,32,0,156,0,0,18,188,0,0,65,61,0,0,0,68,2,16,0,57,0,0,5,90,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,2,184,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,8,2,0,0,65,0,0,0,0,3,0,4,20,0,0,5,8,4,48,0,156],[0,0,0,0,3,2,128,25,0,0,5,8,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,87,1,16,1,199,0,0,0,1,2,0,0,57],[20,28,20,13,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,5,8,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,18,226,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,18,219,0,0,65,61,0,0,0,0,6,5,0,75,0,0,18,240,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,19,0,0,0,1,3,85,0,0,0,64,4,0,4,61,0,0,0,1,2,32,1,144],[0,0,19,7,0,0,97,61,0,0,0,0,1,0,4,51,0,0,5,18,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,88,1,0,0,65,0,0,0,0,1,0,192,25],[0,0,0,0,0,20,4,53,0,0,5,8,1,0,0,65,0,0,5,8,2,64,0,156,0,0,0,0,4,1,128,25],[0,0,0,64,1,64,2,16,0,0,5,89,1,16,1,199,0,0,20,29,0,1,4,46,0,0,0,31,2,48,1,143],[0,0,0,5,5,48,2,114,0,0,19,19,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,19,11,0,0,65,61,0,0,0,0,6,2,0,75],[0,0,19,34,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,8,1,0,0,65,0,0,5,8,2,64,0,156],[0,0,0,0,4,1,128,25,0,0,0,64,1,64,2,16,0,0,6,134,0,0,1,61,0,0,5,64,8,96,0,156],[0,0,19,58,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,9,4,59,0,0,0,0,0,152,4,53],[0,0,9,198,0,0,97,61,0,0,0,248,10,64,2,16,0,0,5,65,9,144,1,151,0,0,0,0,9,169,1,159],[0,0,5,17,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,64,9,96,0,156,0,0,19,62,0,0,161,61,0,0,5,94,1,0,0,65,0,0,0,0,0,16,4,53],[0,0,0,65,1,0,0,57,0,0,0,81,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,11,2,4,59],[0,0,0,0,0,185,4,53,0,0,9,198,0,0,97,61,0,0,5,65,2,176,1,151,0,0,5,70,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,16,9,144,1,151,0,0,0,56,13,144,0,140,0,0,19,117,0,0,65,61,0,0,0,32,13,144,2,112],[0,0,5,8,12,144,0,156,0,0,0,0,13,9,160,25,0,0,5,8,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,64,14,160,0,156,0,0,19,58,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,9,198,0,0,97,61,0,0,0,248,11,192,2,16],[0,0,0,0,2,43,1,159,0,0,5,71,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,130,0,0,1,61,0,0,5,64,13,160,0,156,0,0,19,58,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,9,198,0,0,97,61,0,0,0,248,9,144,2,16,0,0,0,0,2,41,1,159],[0,0,5,70,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,19,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,146,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,139,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,161,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,154,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,176,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,169,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,193,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,185,0,0,65,61,0,0,0,0,11,7,0,75,0,0,19,208,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,222,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,215,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,16,4,16,0,156,0,0,19,58,0,0,33,61],[0,0,0,1,3,48,1,144,0,0,19,58,0,0,193,61,0,0,0,64,0,16,4,63,0,0,5,8,1,0,0,65],[0,0,5,8,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,8,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,17,245,0,0,1,61,0,0,0,0,4,3,0,75,0,0,20,4,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,253,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,20,11,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,20,16,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,21,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,20,26,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,28,0,0,4,50,0,0,20,29,0,1,4,46,0,0,20,30,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,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],[156,77,83,90,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],[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],[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],[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],[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],[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],[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],[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],[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],[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],[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,0,0,0,0,0,0,0,0,0,0,0,0,0],[123,9,174,214,17,35,121,18,1,120,40,210,252,224,88,7,87,230,120,117,80,34,1,169,203,222,160,152,112,237,204,243]],"entry_point_address":"0xc54E30ABB6a3eeD1b9DC0494D90c9C22D76FbA7e","entry_point_code":[[0,4,0,0,0,0,0,2,0,14,0,0,0,0,0,2,0,0,0,0,3,1,0,25,0,0,0,96,4,48,2,112],[0,0,8,213,3,64,1,151,0,3,0,0,0,49,3,85,0,2,0,0,0,1,3,85,0,0,8,213,0,64,1,157],[0,0,0,1,2,32,1,144,0,0,0,34,0,0,193,61,0,0,0,128,4,0,0,57,0,0,0,64,0,64,4,63],[0,0,0,4,2,48,0,140,0,0,0,85,0,0,65,61,0,0,0,0,2,1,4,59,0,0,0,224,2,32,2,112],[0,0,9,89,4,32,0,156,0,0,0,121,0,0,161,61,0,0,9,90,4,32,0,156,0,0,0,136,0,0,33,61],[0,0,9,102,1,32,0,156,0,0,0,183,0,0,33,61,0,0,9,108,1,32,0,156,0,0,1,3,0,0,33,61],[0,0,9,111,1,32,0,156,0,0,1,69,0,0,97,61,0,0,9,112,1,32,0,156,0,0,5,45,0,0,193,61],[0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,5,45,0,0,193,61,35,77,26,136,0,0,4,15],[0,0,0,0,1,0,0,25,0,0,35,78,0,1,4,46,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75],[0,0,5,45,0,0,193,61,0,0,8,214,1,0,0,65,0,0,0,0,0,16,4,57,0,0,0,0,1,0,4,16],[0,14,0,0,0,1,0,29,0,0,0,4,0,16,4,67,0,0,8,213,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,8,213,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,8,215,1,16,1,199],[0,0,128,2,2,0,0,57,35,77,35,72,0,0,4,15,0,0,0,1,2,32,1,144,0,0,14,136,0,0,97,61],[0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75,0,0,5,45,0,0,193,61,0,0,8,216,1,0,0,65],[0,0,0,0,0,16,4,57,0,0,0,14,1,0,0,41,0,0,0,4,0,16,4,67,0,0,8,213,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,8,213,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,8,215,1,16,1,199,0,0,128,2,2,0,0,57,35,77,35,72,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,14,136,0,0,97,61,0,0,0,0,1,1,4,59,0,0,8,217,1,16,0,156,0,0,5,45,0,0,193,61],[0,0,8,218,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,14,2,0,0,41],[0,0,0,4,3,32,0,140,0,0,1,177,0,0,193,61,0,0,0,1,2,0,0,57,0,0,0,1,3,0,0,49],[0,0,1,188,0,0,1,61,0,5,0,0,0,4,0,29,0,0,0,0,1,3,0,75,0,0,5,45,0,0,193,61],[0,0,8,223,1,0,0,65,0,0,0,0,2,1,4,26,0,0,0,0,2,2,0,75,0,0,5,45,0,0,193,61],[0,0,0,1,2,0,0,57,0,9,0,0,0,2,0,29,0,0,0,0,0,33,4,27,0,0,0,0,1,0,4,18],[0,0,8,224,1,16,1,151,0,0,0,0,2,0,4,16,0,0,0,0,1,33,0,75,0,0,0,227,0,0,193,61],[0,4,0,0,0,2,0,29,0,0,8,228,1,0,0,65,0,0,0,0,0,16,4,57,0,0,8,213,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,8,213,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,8,229,1,16,1,199,0,0,128,11,2,0,0,57,35,77,35,72,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,14,136,0,0,97,61,0,0,0,0,2,1,4,59,0,0,3,233,1,0,0,138,0,0,0,0,1,18,0,75],[0,0,1,201,0,0,161,61,0,0,9,142,1,0,0,65,0,0,0,0,0,16,4,53,0,0,0,17,1,0,0,57],[0,0,3,129,0,0,1,61,0,0,9,113,4,32,0,156,0,0,0,168,0,0,161,61,0,0,9,114,4,32,0,156],[0,0,0,206,0,0,33,61,0,0,9,120,1,32,0,156,0,0,1,41,0,0,33,61,0,0,9,123,1,32,0,156],[0,0,3,132,0,0,97,61,0,0,9,124,1,32,0,156,0,0,5,45,0,0,193,61,0,0,0,0,1,0,4,22],[0,0,0,0,1,1,0,75,0,0,5,45,0,0,193,61,0,0,0,10,1,0,0,57,0,0,3,254,0,0,1,61],[0,0,9,91,4,32,0,156,0,0,0,194,0,0,33,61,0,0,9,97,4,32,0,156,0,0,1,12,0,0,33,61],[0,0,9,100,4,32,0,156,0,0,1,75,0,0,97,61,0,0,9,101,2,32,0,156,0,0,5,45,0,0,193,61],[0,0,0,0,2,0,4,22,0,0,0,0,2,2,0,75,0,0,5,45,0,0,193,61,0,0,0,4,2,48,0,138],[0,0,0,32,2,32,0,140,0,0,5,45,0,0,65,61,0,0,0,255,2,0,0,57,0,0,0,0,2,2,4,70],[0,0,0,4,1,16,3,112,0,0,0,0,1,1,4,59,0,0,0,0,1,18,0,75,0,0,3,242,0,0,97,61],[0,0,8,225,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,55,1,0,0,57,0,0,0,164,0,16,4,63,0,0,9,135,1,0,0,65,0,0,0,196,0,16,4,63],[0,0,9,136,1,0,0,65,0,0,0,228,0,16,4,63,0,0,9,137,1,0,0,65,0,0,35,79,0,1,4,48],[0,0,9,125,1,32,0,156,0,0,0,237,0,0,161,61,0,0,9,126,1,32,0,156,0,0,0,249,0,0,33,61],[0,0,9,129,1,32,0,156,0,0,1,59,0,0,97,61,0,0,9,130,1,32,0,156,0,0,5,45,0,0,193,61],[0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,5,45,0,0,193,61,0,0,0,3,1,0,0,57],[0,0,0,0,1,1,4,26,0,0,0,224,1,16,2,16,0,0,4,0,0,0,1,61,0,0,9,103,1,32,0,156],[0,0,1,22,0,0,33,61,0,0,9,106,1,32,0,156,0,0,1,80,0,0,97,61,0,0,9,107,1,32,0,156],[0,0,5,45,0,0,193,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,5,45,0,0,193,61],[0,0,0,2,1,0,0,57,0,0,3,218,0,0,1,61,0,0,9,92,1,32,0,156,0,0,1,31,0,0,33,61],[0,0,9,95,1,32,0,156,0,0,1,145,0,0,97,61,0,0,9,96,1,32,0,156,0,0,5,45,0,0,193,61],[0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,5,45,0,0,193,61,35,77,32,107,0,0,4,15],[0,0,0,0,1,0,0,25,0,0,35,78,0,1,4,46,0,0,9,115,4,32,0,156,0,0,1,50,0,0,33,61],[0,0,9,118,1,32,0,156,0,0,3,214,0,0,97,61,0,0,9,119,1,32,0,156,0,0,5,45,0,0,193,61],[0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,5,45,0,0,193,61,0,0,0,13,1,0,0,57],[0,0,0,0,5,1,4,26,0,0,0,0,2,5,0,75,0,0,4,82,0,0,193,61,0,0,8,225,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,9,88,1,0,0,65,0,0,0,234,0,0,1,61,0,0,8,225,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,8,226,1,0,0,65,0,0,0,196,0,16,4,63,0,0,8,227,1,0,0,65],[0,0,35,79,0,1,4,48,0,0,9,131,1,32,0,156,0,0,3,250,0,0,97,61,0,0,9,132,1,32,0,156],[0,0,3,244,0,0,97,61,0,0,9,133,1,32,0,156,0,0,5,45,0,0,193,61,0,0,0,0,1,0,4,22],[0,0,0,0,1,1,0,75,0,0,5,45,0,0,193,61,35,77,18,228,0,0,4,15,0,0,0,0,1,0,0,25],[0,0,35,78,0,1,4,46,0,0,9,127,1,32,0,156,0,0,1,64,0,0,97,61,0,0,9,128,1,32,0,156],[0,0,5,45,0,0,193,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,5,45,0,0,193,61],[35,77,22,51,0,0,4,15,0,0,0,0,1,0,0,25,0,0,35,78,0,1,4,46,0,0,9,109,1,32,0,156],[0,0,1,151,0,0,97,61,0,0,9,110,1,32,0,156,0,0,5,45,0,0,193,61,0,0,0,0,1,0,4,22],[0,0,0,0,1,1,0,75,0,0,5,45,0,0,193,61,0,0,8,218,1,0,0,65,0,0,4,0,0,0,1,61],[0,0,9,98,1,32,0,156,0,0,1,157,0,0,97,61,0,0,9,99,1,32,0,156,0,0,5,45,0,0,193,61],[0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,5,45,0,0,193,61,35,77,31,58,0,0,4,15],[0,0,0,0,1,0,0,25,0,0,35,78,0,1,4,46,0,0,9,104,1,32,0,156,0,0,1,166,0,0,97,61],[0,0,9,105,1,32,0,156,0,0,5,45,0,0,193,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75],[0,0,5,45,0,0,193,61,0,0,0,12,1,0,0,57,0,0,3,218,0,0,1,61,0,0,9,93,1,32,0,156],[0,0,1,172,0,0,97,61,0,0,9,94,1,32,0,156,0,0,5,45,0,0,193,61,0,0,0,0,1,0,4,22],[0,0,0,0,1,1,0,75,0,0,5,45,0,0,193,61,35,77,33,131,0,0,4,15,0,0,0,0,1,0,0,25],[0,0,35,78,0,1,4,46,0,0,9,121,1,32,0,156,0,0,3,220,0,0,97,61,0,0,9,122,1,32,0,156],[0,0,5,45,0,0,193,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,5,45,0,0,193,61],[0,0,0,8,1,0,0,57,0,0,3,218,0,0,1,61,0,0,9,116,4,32,0,156,0,0,3,223,0,0,97,61],[0,0,9,117,1,32,0,156,0,0,5,45,0,0,193,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75],[0,0,5,45,0,0,193,61,0,0,0,9,1,0,0,57,0,0,3,218,0,0,1,61,0,0,0,0,1,0,4,22],[0,0,0,0,1,1,0,75,0,0,5,45,0,0,193,61,0,0,0,4,1,0,0,57,0,0,3,218,0,0,1,61],[0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,5,45,0,0,193,61,0,0,0,7,1,0,0,57],[0,0,3,218,0,0,1,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,5,45,0,0,193,61],[35,77,23,236,0,0,4,15,0,0,0,0,1,0,0,25,0,0,35,78,0,1,4,46,0,0,0,0,1,0,4,22],[0,0,0,0,1,1,0,75,0,0,5,45,0,0,193,61,0,0,0,6,1,0,0,57,0,0,3,218,0,0,1,61],[0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,5,45,0,0,193,61,0,0,9,138,1,0,0,65],[0,0,0,128,0,16,4,63,0,0,8,213,1,0,0,65,0,0,0,0,2,0,4,20,0,0,8,213,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,9,139,1,16,1,199,0,0,0,2,2,0,0,57],[35,77,35,72,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,8,213,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,1,110,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,103,0,0,65,61,0,0,0,0,6,5,0,75,0,0,1,124,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,4,48,0,0,97,61,0,0,0,0,1,0,4,51,0,0,9,140,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,9,140,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,14,0,0,0,8,0,29],[35,77,16,25,0,0,4,15,0,0,0,14,1,0,0,41,35,77,34,183,0,0,4,15,0,0,0,0,1,0,0,25],[0,0,35,79,0,1,4,48,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,5,45,0,0,193,61],[35,77,32,44,0,0,4,15,0,0,0,0,1,0,0,25,0,0,35,78,0,1,4,46,0,0,0,0,1,0,4,22],[0,0,0,0,1,1,0,75,0,0,5,45,0,0,193,61,35,77,28,160,0,0,4,15,0,0,0,0,1,0,0,25],[0,0,35,78,0,1,4,46,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,5,45,0,0,193,61],[0,0,0,100,1,0,0,57,0,0,0,0,0,16,4,27,0,0,0,1,1,0,0,57,0,0,0,0,0,16,4,71],[0,0,0,0,1,0,0,25,0,0,35,78,0,1,4,46,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75],[0,0,5,45,0,0,193,61,35,77,29,73,0,0,4,15,0,0,0,0,1,0,0,25,0,0,35,78,0,1,4,46],[0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,5,45,0,0,193,61,0,0,0,5,1,0,0,57],[0,0,3,254,0,0,1,61,0,0,8,213,4,0,0,65,0,0,8,213,3,16,0,156,0,0,0,0,1,4,128,25],[0,0,0,192,1,16,2,16,0,0,8,219,1,16,1,199,35,77,35,67,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,8,213,0,16,1,157,0,0,8,213,3,16,1,151],[0,0,0,96,1,0,0,57,0,0,0,0,4,3,0,75,0,0,3,124,0,0,193,61,0,0,0,0,2,2,0,75],[0,0,5,45,0,0,97,61,0,0,0,0,1,1,4,51,0,0,0,0,1,1,0,75,0,0,5,45,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,8,222,1,0,0,65],[0,0,35,78,0,1,4,46,0,14,0,0,0,2,0,29,0,0,8,230,1,0,0,65,0,0,0,0,0,16,4,57],[0,0,8,213,3,0,0,65,0,0,0,0,1,0,4,20,0,0,8,213,2,16,0,156,0,0,0,0,1,3,128,25],[0,0,0,192,1,16,2,16,0,0,8,229,1,16,1,199,0,0,128,11,2,0,0,57,35,77,35,72,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,14,136,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,11,2,0,0,57],[0,0,0,0,0,18,4,27,0,0,8,231,1,0,0,65,0,0,0,0,0,16,4,57,0,0,0,0,1,0,4,20],[0,0,8,213,2,16,0,156,0,0,8,213,1,0,128,65,0,0,0,192,1,16,2,16,0,0,8,229,1,16,1,199],[0,0,128,11,2,0,0,57,35,77,35,72,0,0,4,15,0,0,0,1,2,32,1,144,0,0,14,136,0,0,97,61],[0,0,0,0,1,1,4,59,0,0,0,10,2,0,0,57,0,0,0,0,3,2,4,26,0,0,8,232,3,48,1,151],[0,0,0,0,1,19,1,159,0,0,0,0,0,18,4,27,0,0,8,233,1,0,0,65,0,0,0,0,0,16,4,57],[0,0,8,213,3,0,0,65,0,0,0,0,1,0,4,20,0,0,8,213,2,16,0,156,0,0,0,0,1,3,128,25],[0,0,0,192,1,16,2,16,0,0,8,229,1,16,1,199,0,0,128,11,2,0,0,57,35,77,35,72,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,14,136,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,9,2,0,0,57],[0,0,0,0,0,18,4,27,0,0,8,234,1,0,0,65,0,0,0,0,0,16,4,57,0,0,0,0,1,0,4,20],[0,0,8,213,2,16,0,156,0,0,8,213,1,0,128,65,0,0,0,192,1,16,2,16,0,0,8,229,1,16,1,199],[0,0,128,11,2,0,0,57,35,77,35,72,0,0,4,15,0,0,0,1,2,32,1,144,0,0,14,136,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,8,235,1,0,0,65],[0,0,0,0,0,16,4,57,0,0,8,213,3,0,0,65,0,0,0,0,1,0,4,20,0,0,8,213,2,16,0,156],[0,0,0,0,1,3,128,25,0,0,0,192,1,16,2,16,0,0,8,229,1,16,1,199,0,0,128,11,2,0,0,57],[35,77,35,72,0,0,4,15,0,0,0,1,2,32,1,144,0,0,14,136,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,8,236,1,0,0,65,0,0,0,0,0,16,4,57],[0,0,0,0,1,0,4,20,0,0,8,213,2,16,0,156,0,0,8,213,1,0,128,65,0,0,0,192,1,16,2,16],[0,0,8,229,1,16,1,199,0,0,128,11,2,0,0,57,35,77,35,72,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,14,136,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,4,2,0,0,57,0,0,0,0,0,18,4,27],[0,0,8,237,1,0,0,65,0,0,0,0,0,16,4,57,0,0,8,213,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,8,213,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,8,229,1,16,1,199],[0,0,128,11,2,0,0,57,35,77,35,72,0,0,4,15,0,0,0,1,2,32,1,144,0,0,14,136,0,0,97,61],[0,0,0,0,1,1,4,59,0,0,8,224,1,16,1,151,0,0,0,5,2,0,0,57,0,0,0,0,3,2,4,26],[0,0,8,232,3,48,1,151,0,0,0,0,1,19,1,159,0,0,0,0,0,18,4,27,0,0,0,3,1,0,0,57],[0,0,0,0,2,1,4,26,0,0,8,238,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,0,6,1,0,0,57],[0,0,0,14,2,0,0,41,0,0,0,0,0,33,4,27,0,0,0,0,2,0,4,22,0,0,0,12,1,0,0,57],[0,2,0,0,0,2,0,29,0,0,0,0,0,33,4,27,0,0,0,0,1,0,4,20,0,3,0,0,0,1,0,29],[0,0,0,64,1,0,4,61,0,0,0,0,5,1,0,25,0,0,8,239,1,16,0,156,0,0,3,126,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,8,240,2,0,0,65],[0,0,0,0,0,33,4,53,0,0,0,96,1,80,0,57,0,0,8,241,2,0,0,65,0,0,0,0,0,33,4,53],[0,0,0,64,1,80,0,57,0,0,8,242,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,8,243,1,0,0,65,0,0,0,0,0,26,4,53,0,8,128,16,0,0,0,61],[0,12,0,0,0,0,0,29,0,14,0,0,0,5,0,29,0,0,8,213,1,160,0,156,0,0,8,213,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,8,213,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,8,213,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,8,244,1,16,1,199,0,0,0,8,2,0,0,41,35,77,35,72,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,5,45,0,0,97,61,0,0,0,64,2,0,4,61,0,0,0,0,1,1,4,59,0,13,0,0,0,1,0,29],[0,0,0,14,6,0,0,41,0,0,0,0,1,6,4,51,0,0,0,0,3,1,0,75,0,0,2,128,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,2,121,0,0,65,61],[0,0,0,0,3,33,0,25,0,0,0,0,0,3,4,53,0,0,8,213,3,32,0,156,0,0,8,213,4,0,0,65],[0,0,0,0,2,4,128,25,0,0,0,64,2,32,2,16,0,0,8,213,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,8,213,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],[35,77,35,72,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,8,213,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,2,161,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,2,154,0,0,65,61,0,0,0,31,5,80,1,144,0,0,2,175,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,5,115,0,0,97,61],[0,0,0,0,1,0,4,51,0,0,0,32,12,176,0,57,0,0,0,14,6,0,0,41,0,0,0,0,2,6,4,51],[0,0,0,0,3,2,0,75,0,0,2,194,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,35,0,75,0,0,2,187,0,0,65,61,0,0,0,13,1,16,1,79,0,0,0,0,3,194,0,25],[0,0,0,0,0,19,4,53,0,0,0,32,3,32,0,57,0,0,0,0,0,59,4,53,0,0,0,95,2,32,0,57],[0,0,0,32,9,0,0,138,0,0,0,0,2,146,1,111,0,0,0,0,13,178,0,25,0,0,0,0,2,45,0,75],[0,0,0,0,2,0,0,25,0,0,0,1,2,0,64,57,0,0,8,221,3,208,0,156,0,0,3,126,0,0,33,61],[0,0,0,1,2,32,1,144,0,0,3,126,0,0,193,61,0,0,0,64,0,208,4,63,0,0,0,13,10,0,0,57],[0,0,0,0,2,10,4,26,0,0,8,221,3,32,0,156,0,0,3,126,0,0,33,61,0,0,0,1,3,32,0,57],[0,0,0,0,0,58,4,27,0,0,0,0,0,160,4,53,0,0,8,245,2,32,0,65,0,0,0,0,0,18,4,27],[0,0,0,0,2,10,4,26,0,0,0,0,3,2,0,75,0,0,0,117,0,0,97,61,0,0,0,1,5,32,0,140],[0,0,0,9,2,0,0,41,0,0,2,251,0,0,97,61,0,0,0,0,2,10,4,26,0,0,0,0,3,82,0,75],[0,0,13,75,0,0,161,61,0,0,0,1,3,80,0,138,0,0,0,1,4,48,2,112,0,0,0,0,6,66,0,75],[0,0,13,75,0,0,161,61,0,0,8,245,6,80,0,65,0,0,0,0,8,6,4,26,0,0,0,0,0,160,4,53],[0,0,8,245,5,64,0,65,0,0,0,0,7,5,4,26,0,0,0,0,8,120,0,75,0,0,2,251,0,0,161,61],[0,0,0,0,0,118,4,27,0,0,0,0,2,10,4,26,0,0,0,0,2,66,0,75,0,0,13,75,0,0,161,61],[0,0,0,0,0,21,4,27,0,0,0,2,2,48,0,140,0,0,0,0,5,4,0,25,0,0,2,226,0,0,129,61],[0,0,0,0,2,10,4,26,0,0,0,0,1,2,0,75,0,0,0,117,0,0,97,61,0,0,0,1,1,32,0,138],[0,0,0,0,1,18,1,112,0,0,3,7,0,0,193,61,0,0,0,14,1,0,0,57,0,0,0,0,2,1,4,26],[0,0,8,221,3,32,1,151,0,0,8,221,4,48,0,156,0,0,0,117,0,0,97,61,0,0,8,246,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,11,0,0,0,12,0,29],[0,14,0,0,0,10,0,29,0,0,8,247,1,0,0,65,0,0,0,0,0,29,4,53,0,0,0,4,1,208,0,57],[0,0,0,32,2,0,0,57,0,7,0,0,0,2,0,29,0,0,0,0,0,33,4,53,0,0,0,0,1,11,4,51],[0,0,0,36,2,208,0,57,0,0,0,0,0,18,4,53,0,0,0,68,2,208,0,57,0,0,0,0,3,1,0,75],[0,0,3,29,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,179,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,3,22,0,0,65,61,0,13,0,0,0,11,0,29,0,0,0,0,2,33,0,25,0,0,0,0,0,2,4,53],[0,0,0,31,1,16,0,57,0,6,0,0,0,9,0,29,0,0,0,0,1,145,1,111,0,0,8,213,2,208,0,156],[0,0,8,213,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,8,213,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,8,213,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,10,0,0,0,13,0,29],[35,77,35,67,0,0,4,15,0,0,0,10,11,0,0,41,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,0,8,213,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,3,71,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,3,63,0,0,65,61,0,0,0,31,6,64,1,144],[0,0,0,14,9,0,0,41,0,0,0,11,10,0,0,41,0,0,3,88,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,13,5,0,0,41],[0,0,5,147,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,8,221,4,16,0,156],[0,0,3,126,0,0,33,61,0,0,0,1,2,32,1,144,0,0,3,126,0,0,193,61,0,0,0,64,0,16,4,63],[0,0,0,32,2,48,0,140,0,0,5,45,0,0,65,61,0,0,0,12,3,0,0,41,0,0,0,2,2,48,0,140],[0,12,0,1,0,48,0,61,0,0,2,93,0,0,161,61,0,0,0,0,2,9,4,26,0,0,0,0,3,2,0,75],[0,0,5,176,0,0,193,61,0,0,0,68,2,16,0,57,0,0,9,88,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,8,225,2,0,0,65],[0,0,0,0,0,33,4,53,0,0,0,4,2,16,0,57,0,0,0,7,3,0,0,41,0,0,4,234,0,0,1,61],[0,0,8,220,1,48,0,156,0,0,4,3,0,0,65,61,0,0,9,142,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,9,73,1,0,0,65,0,0,35,79,0,1,4,48],[0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,5,45,0,0,193,61,0,0,8,214,1,0,0,65],[0,0,0,0,0,16,4,57,0,0,0,0,1,0,4,16,0,14,0,0,0,1,0,29,0,0,0,4,0,16,4,67],[0,0,8,213,1,0,0,65,0,0,0,0,2,0,4,20,0,0,8,213,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,192,1,32,2,16,0,0,8,215,1,16,1,199,0,0,128,2,2,0,0,57,35,77,35,72,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,14,136,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75],[0,0,5,45,0,0,97,61,0,0,0,64,5,0,4,61,0,0,9,143,1,0,0,65,0,0,0,0,1,21,4,54],[0,12,0,0,0,1,0,29,0,0,0,4,1,80,0,57,0,0,3,232,2,0,0,57,0,10,0,0,0,2,0,29],[0,0,0,0,0,33,4,53,0,0,0,36,1,80,0,57,0,11,0,0,0,1,0,29,0,0,0,0,0,1,4,53],[0,0,0,0,1,0,4,20,0,0,0,14,2,0,0,41,0,0,0,4,3,32,0,140,0,13,0,0,0,5,0,29],[0,0,3,187,0,0,97,61,0,0,8,213,4,0,0,65,0,0,8,213,3,16,0,156,0,0,0,0,1,4,128,25],[0,0,8,213,3,80,0,156,0,0,0,0,4,5,64,25,0,0,0,64,3,64,2,16,0,0,0,192,1,16,2,16],[0,0,0,0,1,49,1,159,0,0,9,144,1,16,1,199,35,77,35,67,0,0,4,15,0,0,0,13,5,0,0,41],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,1,8,213,0,48,1,157,0,0,8,213,3,48,1,151],[0,3,0,0,0,1,3,85,0,0,0,1,2,32,1,144,0,0,4,167,0,0,97,61,0,0,8,221,1,80,0,156],[0,0,3,126,0,0,33,61,0,0,0,13,3,0,0,41,0,0,0,64,0,48,4,63,0,0,9,143,1,0,0,65],[0,0,0,12,2,0,0,41,0,0,0,0,0,18,4,53,0,0,1,244,1,0,0,57,0,0,0,11,2,0,0,41],[0,0,0,0,0,18,4,53,0,0,0,68,1,48,0,57,0,0,0,1,2,0,0,57,0,0,0,0,0,33,4,53],[0,0,0,68,1,0,0,57,0,0,0,0,0,19,4,53,0,0,9,11,1,48,0,156,0,0,3,126,0,0,33,61],[0,0,0,13,3,0,0,41,0,0,0,128,1,48,0,57,0,0,0,64,0,16,4,63,0,0,0,0,3,3,4,51],[0,0,0,0,1,0,4,20,0,0,0,14,6,0,0,41,0,0,0,4,4,96,0,140,0,0,4,200,0,0,193,61],[0,0,0,1,1,0,0,49,0,0,4,219,0,0,1,61,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75],[0,0,5,45,0,0,193,61,0,0,0,11,1,0,0,57,0,0,0,0,1,1,4,26,0,0,4,0,0,0,1,61],[35,77,23,83,0,0,4,15,0,0,0,0,1,0,0,25,0,0,35,78,0,1,4,46,0,0,0,0,2,0,4,22],[0,0,0,0,2,2,0,75,0,0,5,45,0,0,193,61,0,0,0,4,2,48,0,138,0,0,0,64,2,32,0,140],[0,0,5,45,0,0,65,61,0,0,0,36,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,5,45,0,0,193,61],[0,0,0,4,1,16,3,112,0,0,0,0,1,1,4,59,0,0,0,255,3,0,0,57,0,0,0,0,0,19,4,71],[0,0,0,0,1,2,0,75,0,0,4,159,0,0,193,61,0,0,0,0,1,0,0,25,0,0,35,78,0,1,4,46],[0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75,0,0,5,45,0,0,193,61,35,77,16,36,0,0,4,15],[0,0,0,0,1,0,0,25,0,0,35,78,0,1,4,46,0,0,0,0,1,0,4,22,0,0,0,0,1,1,0,75],[0,0,5,45,0,0,193,61,0,0,0,1,1,0,0,57,0,0,0,0,1,1,4,26,0,0,8,224,1,16,1,151],[0,0,0,128,0,16,4,63,0,0,9,134,1,0,0,65,0,0,35,78,0,1,4,46,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,8,221,6,64,0,156,0,0,3,126,0,0,33,61,0,0,0,1,5,80,1,144],[0,0,3,126,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,4,32,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,4,24,0,0,65,61],[0,0,0,0,7,4,0,75,0,0,1,191,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,1,191,0,0,1,61],[0,0,0,31,2,48,1,143,0,0,0,5,4,48,2,114,0,0,4,60,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,4,52,0,0,65,61],[0,0,0,0,5,2,0,75,0,0,4,75,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,8,213,1,0,0,65],[0,0,8,213,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,35,79,0,1,4,48,0,0,8,245,2,0,0,65,0,0,0,1,3,0,0,57],[0,0,8,251,4,0,0,65,0,0,4,94,0,0,1,61,0,0,0,1,6,0,0,138,0,0,0,0,6,101,0,75],[0,0,0,117,0,0,97,61,0,0,0,1,6,80,0,57,0,0,0,0,6,86,1,112,0,0,4,149,0,0,97,61],[0,0,0,0,6,5,0,75,0,0,5,47,0,0,97,61,0,0,8,248,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,4,89,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,4,116,0,0,129,61,0,0,8,249,6,144,0,65,0,0,0,0,6,6,4,26,0,0,8,250,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,13,75,0,0,161,61,0,0,8,245,8,96,0,65,0,0,0,0,9,117,0,75],[0,0,13,75,0,0,161,61,0,0,0,0,9,8,4,26,0,0,8,245,10,112,0,65,0,0,0,0,7,10,4,26],[0,0,0,0,11,121,0,75,0,0,4,86,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,13,75,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,8,251,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,8,251,7,112,0,156,0,0,0,0,8,5,192,25],[0,0,0,0,5,8,0,75,0,0,0,117,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,4,105,0,0,65,61],[0,0,4,86,0,0,1,61,0,0,0,14,6,0,0,57,0,0,0,0,7,6,4,26,0,0,8,221,8,112,1,151],[0,0,0,1,8,128,0,138,0,0,8,221,9,128,0,156,0,0,0,117,0,0,33,61,0,0,8,246,7,112,1,151],[0,0,0,0,7,120,1,159,0,0,0,0,0,118,4,27,0,0,4,92,0,0,1,61,0,0,8,225,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,9,141,1,0,0,65,0,0,0,234,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,180,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,172,0,0,65,61],[0,0,0,0,6,4,0,75,0,0,4,195,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,8,213,1,0,0,65],[0,0,8,213,4,32,0,156,0,0,0,0,2,1,128,25,0,0,0,64,1,32,2,16,0,0,4,79,0,0,1,61],[0,0,8,213,2,0,0,65,0,0,0,12,5,0,0,41,0,0,8,213,4,80,0,156,0,0,0,0,5,2,128,25],[0,0,0,64,4,80,2,16,0,0,8,213,5,48,0,156,0,0,0,0,3,2,128,25,0,0,0,96,3,48,2,16],[0,0,0,0,3,67,1,159,0,0,8,213,4,16,0,156,0,0,0,0,1,2,128,25,0,0,0,192,1,16,2,16],[0,0,0,0,1,19,1,159,0,0,0,0,2,6,0,25,35,77,35,67,0,0,4,15,0,3,0,0,0,1,3,85],[0,0,0,96,1,16,2,112,0,1,8,213,0,16,1,157,0,0,8,213,1,16,1,151,0,0,0,0,3,1,0,75],[0,0,4,241,0,0,193,61,0,0,0,1,1,32,1,144,0,0,5,28,0,0,97,61,0,0,0,64,1,0,4,61],[0,0,0,68,2,16,0,57,0,0,9,146,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,0,0,0,50,4,53,0,0,8,225,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,8,213,2,0,0,65],[0,0,8,213,3,16,0,156,0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16,0,0,8,253,1,16,1,199],[0,0,35,79,0,1,4,48,0,0,0,63,3,16,0,57,0,0,0,32,4,0,0,138,0,0,0,0,3,67,1,111],[0,0,0,64,4,0,4,61,0,0,0,0,3,52,0,25,0,0,0,0,5,67,0,75,0,0,0,0,5,0,0,25],[0,0,0,1,5,0,64,57,0,0,8,221,6,48,0,156,0,0,3,126,0,0,33,61,0,0,0,1,5,80,1,144],[0,0,3,126,0,0,193,61,0,0,0,64,0,48,4,63,0,0,0,31,3,16,1,143,0,0,0,0,4,20,4,54],[0,0,0,3,5,0,3,103,0,0,0,5,1,16,2,114,0,0,5,12,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,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,22,0,75,0,0,5,4,0,0,65,61],[0,0,0,0,6,3,0,75,0,0,4,221,0,0,97,61,0,0,0,5,1,16,2,16,0,0,0,0,5,21,3,79],[0,0,0,0,1,20,0,25,0,0,0,3,3,48,2,16,0,0,0,0,4,1,4,51,0,0,0,0,4,52,1,207],[0,0,0,0,4,52,2,47,0,0,0,0,5,5,4,59,0,0,1,0,3,48,0,137,0,0,0,0,5,53,2,47],[0,0,0,0,3,53,1,207,0,0,0,0,3,67,1,159,0,0,0,0,0,49,4,53,0,0,4,221,0,0,1,61],[0,0,8,214,1,0,0,65,0,0,0,0,0,16,4,57,0,0,0,14,1,0,0,41,0,0,0,4,0,16,4,67],[0,0,8,213,1,0,0,65,0,0,0,0,2,0,4,20,0,0,8,213,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,192,1,32,2,16,0,0,8,215,1,16,1,199,0,0,128,2,2,0,0,57,35,77,35,72,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,14,136,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75],[0,0,5,49,0,0,193,61,0,0,0,0,1,0,0,25,0,0,35,79,0,1,4,48,0,0,0,0,0,16,4,53],[0,0,0,219,0,0,1,61,0,0,0,64,2,0,4,61,0,0,9,145,1,0,0,65,0,0,0,0,0,18,4,53],[0,13,0,0,0,2,0,29,0,0,0,4,1,32,0,57,0,0,0,10,2,0,0,41,0,0,0,0,0,33,4,53],[0,0,0,0,1,0,4,20,0,0,0,14,2,0,0,41,0,0,0,4,2,32,0,140,0,0,5,79,0,0,97,61],[0,0,8,213,2,0,0,65,0,0,8,213,3,16,0,156,0,0,0,0,1,2,128,25,0,0,0,13,4,0,0,41],[0,0,8,213,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,9,73,1,16,1,199,0,0,0,14,2,0,0,41,35,77,35,67,0,0,4,15],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,1,8,213,0,48,1,157,0,0,8,213,3,48,1,151],[0,3,0,0,0,1,3,85,0,0,0,1,2,32,1,144,0,0,5,86,0,0,97,61,0,0,0,13,1,0,0,41],[0,0,8,221,1,16,0,156,0,0,3,126,0,0,33,61,0,0,0,13,1,0,0,41,0,0,0,64,0,16,4,63],[0,0,0,0,1,0,0,25,0,0,35,78,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,5,99,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,91,0,0,65,61,0,0,0,0,6,4,0,75],[0,0,5,114,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,195,0,0,1,61,0,0,0,31,2,48,1,143],[0,0,0,5,4,48,2,114,0,0,5,127,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,5,119,0,0,65,61,0,0,0,0,5,2,0,75],[0,0,5,142,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,8,213,1,0,0,65,0,0,8,213,2,176,0,156],[0,0,0,0,11,1,128,25,0,0,0,64,1,176,2,16,0,0,4,79,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,160,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,152,0,0,65,61],[0,0,0,0,6,4,0,75,0,0,5,175,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,195,0,0,1,61],[0,0,8,248,3,32,0,65,0,0,0,0,4,3,4,26,0,0,8,245,5,0,0,65,0,0,0,0,0,69,4,27],[0,0,0,14,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,5,238,0,0,65,61,0,0,0,1,6,0,0,57],[0,0,8,251,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,5,202,0,0,129,61,0,0,8,249,4,112,0,65],[0,0,0,0,4,4,4,26,0,0,8,250,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,13,75,0,0,161,61],[0,0,8,245,6,64,0,65,0,0,0,0,7,83,0,75,0,0,13,75,0,0,161,61,0,0,0,0,7,6,4,26],[0,0,0,0,0,160,4,53,0,0,8,245,8,80,0,65,0,0,0,0,5,8,4,26,0,0,0,0,9,87,0,75],[0,0,5,235,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,13,75,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,8,251,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,8,251,5,80,0,156,0,0,0,0,6,3,192,25,0,0,0,0,3,6,0,75],[0,0,0,117,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,5,191,0,0,65,61,0,0,0,1,2,0,0,138],[0,0,0,0,2,35,0,75,0,0,0,117,0,0,97,61,0,0,0,1,2,48,0,57,0,0,0,0,2,50,1,112],[0,0,5,250,0,0,193,61,0,0,0,14,2,0,0,57,0,0,0,0,3,2,4,26,0,0,8,221,4,48,1,151],[0,0,0,1,4,64,0,138,0,0,8,221,5,64,0,156,0,0,0,117,0,0,33,61,0,0,8,246,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,12,0,0,0,3,0,29],[0,0,0,3,2,48,0,107,0,0,6,120,0,0,161,61,0,0,0,13,6,0,0,41,0,0,0,0,2,6,4,51],[0,0,0,0,3,2,0,75,0,0,6,10,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,6,3,0,0,65,61,0,0,0,0,3,18,0,25,0,0,0,0,0,3,4,53],[0,0,8,213,4,0,0,65,0,0,8,213,3,16,0,156,0,0,0,0,1,4,128,25,0,0,0,64,1,16,2,16],[0,0,8,213,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,8,213,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,8,244,1,16,1,199,0,0,128,16,2,0,0,57,35,77,35,72,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,5,45,0,0,97,61,0,0,0,12,3,0,0,41,0,0,0,3,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,8,213,3,32,0,156,0,0,8,213,4,0,0,65,0,0,0,0,2,4,128,25,0,0,8,213,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,8,254,1,16,1,199,0,0,128,13,2,0,0,57,0,0,0,2,3,0,0,57,0,13,0,0,0,3,0,29],[0,0,8,255,4,0,0,65,35,77,35,67,0,0,4,15,0,0,0,14,5,0,0,41,0,0,0,1,1,32,1,144],[0,0,5,45,0,0,97,61,0,0,0,64,2,0,4,61,0,0,9,0,1,32,0,156,0,0,3,126,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,9,1,3,0,0,65],[0,0,0,0,0,49,4,53,0,0,0,128,3,32,0,57,0,0,9,2,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,9,0,3,32,0,156,0,0,3,126,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,9,3,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,9,0,2,16,0,156],[0,0,3,126,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,9,4,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,128,2,16,0,57,0,0,9,2,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,12,0,0,0,1,0,29,0,0,0,0,1,1,0,75],[0,0,6,126,0,0,193,61,0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57,0,0,9,87,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,3,118,0,0,1,61],[0,0,0,68,2,16,0,57,0,0,8,252,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,3,118,0,0,1,61,0,0,8,214,1,0,0,65,0,0,0,0,0,16,4,57],[0,0,0,4,1,0,0,41,0,0,0,4,0,16,4,67,0,0,8,213,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,8,213,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,8,215,1,16,1,199],[0,0,128,2,2,0,0,57,35,77,35,72,0,0,4,15,0,0,0,1,2,32,1,144,0,0,14,136,0,0,97,61],[0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75,0,0,5,45,0,0,97,61,0,0,0,64,2,0,4,61],[0,0,9,5,1,0,0,65,0,11,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,4,2,0,0,41,0,0,0,4,2,32,0,140,0,0,6,169,0,0,97,61,0,0,8,213,2,0,0,65],[0,0,8,213,3,16,0,156,0,0,0,0,1,2,128,25,0,0,0,11,4,0,0,41,0,0,8,213,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,9,6,1,16,1,199,0,0,0,4,2,0,0,41,35,77,35,67,0,0,4,15,0,0,0,0,3,1,0,25],[0,0,0,96,3,48,2,112,0,1,8,213,0,48,1,157,0,3,0,0,0,1,3,85,0,0,0,1,1,32,1,144],[0,0,6,191,0,0,97,61,0,0,0,11,1,0,0,41,0,0,8,221,1,16,0,156,0,0,3,126,0,0,33,61],[0,0,0,11,3,0,0,41,0,0,0,64,0,48,4,63,0,0,0,68,1,48,0,57,0,0,9,86,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,8,225,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,8,213,1,0,0,65,0,0,8,213,2,48,0,156,0,0,0,0,3,1,128,25],[0,0,0,64,1,48,2,16,0,0,8,253,1,16,1,199,0,0,35,79,0,1,4,48,0,0,0,14,1,0,0,41],[0,0,0,0,1,1,4,26,0,0,0,12,1,16,0,108,0,0,7,0,0,0,193,61,0,0,8,214,1,0,0,65],[0,0,0,0,0,16,4,57,0,0,0,4,1,0,0,41,0,0,0,4,0,16,4,67,0,0,8,213,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,8,213,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,8,215,1,16,1,199,0,0,128,2,2,0,0,57,35,77,35,72,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,14,136,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75,0,0,5,45,0,0,97,61],[0,0,0,64,4,0,4,61,0,0,9,8,1,0,0,65,0,0,0,0,0,20,4,53,0,0,8,213,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,8,213,3,32,0,156,0,0,0,0,2,1,128,25,0,0,8,213,3,64,0,156],[0,14,0,0,0,4,0,29,0,0,0,0,1,4,64,25,0,12,0,64,0,16,2,24,0,0,0,192,1,32,2,16],[0,0,0,12,1,16,1,175,0,0,9,6,1,16,1,199,0,0,0,4,2,0,0,41,35,77,35,67,0,0,4,15],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,1,8,213,0,48,1,157,0,3,0,0,0,1,3,85],[0,0,0,1,1,32,1,144,0,0,7,7,0,0,97,61,0,0,0,14,1,0,0,41,0,0,8,221,1,16,0,156],[0,0,3,126,0,0,33,61,0,0,0,14,3,0,0,41,0,0,0,64,0,48,4,63,0,0,0,100,1,48,0,57],[0,0,9,84,2,0,0,65,0,0,0,0,0,33,4,53,0,0,0,68,1,48,0,57,0,0,9,85,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,8,225,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,12,1,0,0,41,0,0,9,68,1,16,1,199,0,0,35,79,0,1,4,48],[0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57,0,0,9,7,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,3,118,0,0,1,61,0,0,0,64,1,0,4,61],[0,0,9,9,2,16,0,156,0,0,3,126,0,0,33,61,0,0,0,96,2,16,0,57,0,0,0,64,0,32,4,63],[0,0,9,10,2,0,0,65,0,0,0,0,2,33,4,54,0,0,0,64,4,0,4,61,0,0,9,11,3,64,0,156],[0,0,3,126,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,9,12,5,0,0,65,0,0,0,0,0,83,4,53,0,0,0,64,3,64,0,57,0,0,9,13,5,0,0,65],[0,0,0,0,0,83,4,53,0,0,0,32,3,64,0,57,0,0,9,14,5,0,0,65,0,0,0,0,0,83,4,53],[0,0,0,65,3,0,0,57,0,12,0,0,0,3,0,29,0,0,0,0,0,52,4,53,0,0,0,64,3,16,0,57],[0,0,9,15,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,14,0,0,0,4,0,29,0,0,9,9,4,64,0,156,0,0,3,126,0,0,33,61,0,0,0,14,5,0,0,41],[0,0,0,96,4,80,0,57,0,0,0,64,0,64,4,63,0,0,9,16,4,0,0,65,0,0,0,0,4,69,4,54],[0,11,0,0,0,4,0,29,0,0,0,64,4,0,4,61,0,0,9,11,5,64,0,156,0,0,3,126,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,9,12,6,0,0,65],[0,0,0,0,0,101,4,53,0,0,0,64,5,64,0,57,0,0,9,17,6,0,0,65,0,0,0,0,0,101,4,53],[0,0,0,32,5,64,0,57,0,0,9,18,6,0,0,65,0,0,0,0,0,101,4,53,0,0,0,12,5,0,0,41],[0,0,0,0,0,84,4,53,0,0,0,14,5,0,0,41,0,0,0,64,6,80,0,57,0,0,9,19,5,0,0,65],[0,10,0,0,0,6,0,29,0,0,0,0,0,86,4,53,0,0,0,11,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,45,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,45,0,0,33,61,0,0,0,0,3,3,4,51,0,9,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,8,213,1,0,0,65,0,0,0,0,2,0,4,20,0,0,8,213,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,8,213,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,9,20,1,16,1,199,0,0,0,1,2,0,0,57],[35,77,35,72,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,8,213,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,122,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,115,0,0,65,61,0,0,0,0,6,5,0,75,0,0,7,136,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,9,67,0,0,97,61],[0,0,0,0,1,0,4,51,0,0,0,9,1,16,1,79,0,0,8,224,1,16,1,152,0,0,5,45,0,0,193,61],[0,0,0,11,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,45,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,45,0,0,33,61,0,0,0,10,4,0,0,41],[0,0,0,0,4,4,4,51,0,11,0,0,0,4,0,29,0,0,0,14,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,8,213,1,0,0,65,0,0,0,0,2,0,4,20,0,0,8,213,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,8,213,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,9,20,1,16,1,199,0,0,0,1,2,0,0,57,35,77,35,72,0,0,4,15],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,8,213,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,201,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,194,0,0,65,61,0,0,0,0,6,5,0,75,0,0,7,215,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,9,230,0,0,97,61,0,0,0,0,1,0,4,51],[0,0,0,11,1,16,1,79,0,0,8,224,1,16,1,152,0,0,5,45,0,0,193,61,0,0,0,64,1,0,4,61],[0,0,9,9,2,16,0,156,0,0,3,126,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,9,11,3,32,0,156,0,0,3,126,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,9,12,4,0,0,65],[0,0,0,0,0,67,4,53,0,0,0,64,3,32,0,57,0,0,9,21,4,0,0,65,0,0,0,0,0,67,4,53],[0,0,0,32,4,32,0,57,0,0,9,22,6,0,0,65,0,0,0,0,0,100,4,53,0,0,0,12,6,0,0,41],[0,0,0,0,0,98,4,53,0,0,0,64,6,16,0,57,0,0,9,23,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,45,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,45,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,8,213,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,8,213,3,32,0,156,0,0,0,0,2,1,128,25,0,0,8,213,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,9,20,1,16,1,199],[0,0,0,1,2,0,0,57,35,77,35,72,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,0,8,213,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,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,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,8,36,0,0,65,61,0,0,0,0,6,5,0,75],[0,0,8,57,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,10,3,0,0,97,61,0,0,0,0,1,0,4,51,0,0,8,224,1,16,1,151,0,0,9,23,1,16,0,156],[0,0,5,45,0,0,193,61,0,0,0,64,1,0,4,61,0,0,9,9,2,16,0,156,0,0,3,126,0,0,33,61],[0,0,0,96,2,16,0,57,0,0,0,64,0,32,4,63,0,0,9,24,2,0,0,65,0,0,0,0,5,33,4,54],[0,0,0,64,2,0,4,61,0,0,9,11,3,32,0,156,0,0,3,126,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,9,25,4,0,0,65,0,0,0,0,0,67,4,53],[0,0,0,64,3,32,0,57,0,0,9,26,4,0,0,65,0,0,0,0,0,67,4,53,0,0,0,32,4,32,0,57],[0,0,9,27,6,0,0,65,0,0,0,0,0,100,4,53,0,0,0,12,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,45,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,45,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,8,213,1,0,0,65,0,0,0,0,2,0,4,20,0,0,8,213,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,8,213,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,9,20,1,16,1,199,0,0,0,1,2,0,0,57,35,77,35,72,0,0,4,15],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,8,213,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,8,141,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,8,134,0,0,65,61,0,0,0,0,6,5,0,75,0,0,8,155,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,10,32,0,0,97,61,0,0,0,0,1,0,4,51],[0,0,8,224,1,16,1,152,0,0,5,45,0,0,193,61,0,0,0,64,1,0,4,61,0,0,9,9,2,16,0,156],[0,0,3,126,0,0,33,61,0,0,0,96,2,16,0,57,0,0,0,64,0,32,4,63,0,0,9,28,2,0,0,65],[0,0,0,0,5,33,4,54,0,0,0,64,2,0,4,61,0,0,9,11,3,32,0,156,0,0,3,126,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,9,12,4,0,0,65],[0,0,0,0,0,67,4,53,0,0,0,64,3,32,0,57,0,0,9,29,4,0,0,65,0,0,0,0,0,67,4,53],[0,0,0,32,4,32,0,57,0,0,9,30,6,0,0,65,0,0,0,0,0,100,4,53,0,0,0,12,6,0,0,41],[0,0,0,0,0,98,4,53,0,0,0,64,6,16,0,57,0,0,9,31,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,45,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,45,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,8,213,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,8,213,3,32,0,156,0,0,0,0,2,1,128,25,0,0,8,213,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,9,20,1,16,1,199],[0,0,0,1,2,0,0,57,0,1,0,0,0,2,0,29,35,77,35,72,0,0,4,15,0,0,0,0,3,1,0,25],[0,0,0,96,3,48,2,112,0,0,8,213,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,8,240,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,8,233,0,0,65,61],[0,0,0,0,6,5,0,75,0,0,8,254,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,10,61,0,0,97,61,0,0,0,0,1,0,4,51,0,0,8,224,1,16,1,151],[0,0,9,31,1,16,0,156,0,0,5,45,0,0,193,61,35,77,16,36,0,0,4,15,0,0,0,64,1,0,4,61],[0,11,0,0,0,1,0,29,0,0,9,32,1,16,0,156,0,0,3,126,0,0,33,61,0,0,0,11,2,0,0,41],[0,0,0,64,1,32,0,57,0,0,0,64,0,16,4,63,0,0,0,1,1,0,0,41,0,0,0,0,1,18,4,54],[0,10,0,0,0,1,0,29,0,0,0,64,1,0,4,61,0,0,8,239,2,16,0,156,0,0,3,126,0,0,33,61],[0,0,0,160,2,16,0,57,0,0,0,64,0,32,4,63,0,0,0,128,2,16,0,57,0,0,0,0,0,2,4,53],[0,0,0,96,2,16,0,57,0,0,0,0,0,2,4,53,0,0,0,64,2,16,0,57,0,0,0,0,0,2,4,53],[0,0,0,32,2,16,0,57,0,0,0,0,0,2,4,53,0,0,0,0,0,1,4,53,0,0,0,10,2,0,0,41],[0,0,0,0,0,18,4,53,0,0,0,64,1,0,4,61,0,0,8,239,2,16,0,156,0,0,3,126,0,0,33,61],[0,0,0,160,2,16,0,57,0,0,0,64,0,32,4,63,0,0,0,128,2,16,0,57,0,0,0,1,3,0,0,41],[0,0,0,0,0,50,4,53,0,0,0,96,2,16,0,57,0,0,9,33,3,0,0,65,0,0,0,0,0,50,4,53],[0,0,0,64,2,16,0,57,0,0,9,34,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,32,2,16,0,57],[0,0,9,35,3,0,0,65,0,0,0,0,0,50,4,53,0,0,9,36,2,0,0,65,0,0,0,0,0,33,4,53],[0,0,0,11,2,0,0,41,0,0,0,0,2,2,4,51,0,0,0,0,2,2,0,75,0,0,13,75,0,0,97,61],[0,0,0,10,2,0,0,41,0,0,0,0,0,18,4,53,0,0,0,11,1,0,0,41,0,0,0,0,1,1,4,51],[0,0,0,0,1,1,0,75,0,0,13,75,0,0,97,61,0,9,0,192,0,0,0,61,0,8,0,5,0,0,0,61],[0,3,0,96,0,0,0,61,0,14,0,0,0,0,0,29,0,0,9,102,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,9,80,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,72,0,0,65,61],[0,0,0,0,6,4,0,75,0,0,9,95,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,195,0,0,1,61],[0,0,0,14,2,0,0,41,0,14,0,1,0,32,0,61,0,0,0,11,1,0,0,41,0,0,0,0,1,1,4,51],[0,0,0,14,1,16,0,107,0,0,10,90,0,0,129,61,0,0,0,14,1,0,0,41,0,0,0,5,1,16,2,16],[0,0,0,10,1,16,0,41,0,0,0,0,4,1,4,51,0,0,0,32,1,64,0,57,0,0,0,0,2,1,4,51],[0,0,0,64,1,64,0,57,0,0,0,0,3,1,4,51,0,12,0,0,0,4,0,29,0,0,0,0,4,4,4,51],[0,0,0,64,1,0,4,61,0,0,0,192,5,16,0,57,0,0,0,0,0,53,4,53,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,66,4,53,0,0,0,96,2,16,0,57],[0,0,0,7,3,0,0,41,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,9,3,0,0,41,0,0,0,0,0,49,4,53],[0,0,9,37,3,16,0,156,0,0,3,126,0,0,33,61,0,0,0,224,3,16,0,57,0,0,0,64,0,48,4,63],[0,0,8,213,3,32,0,156,0,0,8,213,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,8,213,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,8,213,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,33,1,159,0,0,0,8,2,0,0,41,35,77,35,72,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,8,213,0,48,1,157],[0,0,8,213,5,48,1,152,0,0,0,5,3,0,0,41,0,0,0,3,4,0,0,41,0,0,9,195,0,0,97,61],[0,0,0,63,3,80,0,57,0,0,9,38,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,8,221,7,48,0,156],[0,0,3,126,0,0,33,61,0,0,0,1,6,96,1,144,0,0,3,126,0,0,193,61,0,0,0,64,0,48,4,63],[0,0,0,0,3,84,4,54,0,0,0,5,6,80,2,114,0,0,9,180,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,131,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,9,172,0,0,65,61],[0,0,0,31,5,80,1,144,0,0,9,195,0,0,97,61,0,0,0,5,6,96,2,16,0,0,0,0,1,97,3,79],[0,0,0,0,6,99,0,25,0,0,0,3,5,80,2,16,0,0,0,0,7,6,4,51,0,0,0,0,7,87,1,207],[0,0,0,0,7,87,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,113,1,159,0,0,0,0,0,22,4,53,0,0,0,1,1,32,1,143],[0,0,0,12,2,0,0,41,0,0,0,128,2,32,0,57,0,0,0,0,2,2,4,51,0,0,0,0,2,2,0,75],[0,0,0,0,2,0,0,25,0,0,0,1,2,0,192,57,0,0,0,1,2,32,1,143,0,0,0,0,2,33,0,75],[0,0,11,95,0,0,193,61,0,0,0,0,1,1,0,75,0,0,9,96,0,0,97,61,0,0,0,0,1,4,4,51],[0,0,0,32,2,16,0,140,0,0,8,251,5,0,0,65,0,0,0,0,2,0,0,25,0,0,0,0,2,5,64,25],[0,0,8,251,1,16,1,151,0,0,0,0,4,1,0,75,0,0,0,0,4,0,0,25,0,0,0,0,4,5,32,25],[0,0,8,251,1,16,0,156,0,0,0,0,4,2,192,25,0,0,0,0,1,4,0,75,0,0,5,45,0,0,193,61],[0,0,0,0,1,3,4,51,0,0,0,12,2,0,0,41,0,0,0,96,2,32,0,57,0,0,0,0,2,2,4,51],[0,0,0,0,1,33,0,75,0,0,9,96,0,0,97,61,0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57],[0,0,9,39,3,0,0,65,0,0,15,174,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,9,243,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,235,0,0,65,61,0,0,0,0,6,4,0,75],[0,0,10,2,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,195,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,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,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,8,0,0,65,61],[0,0,0,0,6,4,0,75,0,0,10,31,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,195,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,45,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,37,0,0,65,61,0,0,0,0,6,4,0,75,0,0,10,60,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,195,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,74,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,66,0,0,65,61,0,0,0,0,6,4,0,75,0,0,10,89,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,195,0,0,1,61,0,0,0,64,1,0,4,61,0,10,0,0,0,1,0,29],[0,0,9,32,1,16,0,156,0,0,3,126,0,0,33,61,0,0,0,10,2,0,0,41,0,0,0,64,1,32,0,57],[0,0,0,64,0,16,4,63,0,0,0,1,1,0,0,41,0,0,0,0,1,18,4,54,0,9,0,0,0,1,0,29],[0,0,0,0,1,0,0,49,0,0,0,2,2,16,3,103,0,0,0,64,1,0,4,61,0,0,9,11,3,16,0,156],[0,0,3,126,0,0,33,61,0,0,0,128,3,16,0,57,0,0,0,64,0,48,4,63,0,0,9,0,4,16,0,156],[0,0,3,126,0,0,33,61,0,0,0,192,4,16,0,57,0,0,0,64,0,64,4,63,0,0,0,0,4,0,0,25],[0,0,0,0,5,3,0,25,0,0,0,5,6,64,2,16,0,0,0,0,6,98,3,79,0,0,0,0,6,6,4,59],[0,0,0,0,5,101,4,54,0,0,0,1,4,64,0,57,0,0,0,2,6,64,0,140,0,0,10,113,0,0,65,61],[0,0,0,0,3,49,4,54,0,0,0,64,4,0,4,61,0,0,9,32,5,64,0,156,0,0,3,126,0,0,33,61],[0,0,0,64,5,64,0,57,0,0,0,64,0,80,4,63,0,0,0,0,5,0,0,25,0,0,0,0,6,4,0,25],[0,0,0,5,7,80,2,16,0,0,0,0,7,114,3,79,0,0,0,0,7,7,4,59,0,0,0,0,6,118,4,54],[0,0,0,1,5,80,0,57,0,0,0,2,7,80,0,140,0,0,10,128,0,0,65,61,0,0,0,0,0,67,4,53],[0,0,0,64,3,0,4,61,0,0,9,32,4,48,0,156,0,0,3,126,0,0,33,61,0,0,0,64,4,48,0,57],[0,0,0,64,0,64,4,63,0,0,0,0,4,0,0,25,0,0,0,0,5,3,0,25,0,0,0,5,6,64,2,16],[0,0,0,0,6,98,3,79,0,0,0,0,6,6,4,59,0,0,0,0,5,101,4,54,0,0,0,1,4,64,0,57],[0,0,0,2,6,64,0,140,0,0,10,143,0,0,65,61,0,0,0,64,2,16,0,57,0,0,0,0,0,50,4,53],[0,0,0,96,2,16,0,57,0,0,0,0,0,2,4,53,0,0,0,9,2,0,0,41,0,0,0,0,0,18,4,53],[0,0,0,64,1,0,4,61,0,0,9,32,2,16,0,156,0,0,3,126,0,0,33,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,9,40,3,0,0,65,0,0,0,0,0,50,4,53],[0,0,9,41,2,0,0,65,0,0,0,0,0,33,4,53,0,0,0,64,2,0,4,61,0,0,9,32,3,32,0,156],[0,0,3,126,0,0,33,61,0,0,0,64,3,32,0,57,0,0,0,64,0,48,4,63,0,0,0,32,3,32,0,57],[0,0,9,42,4,0,0,65,0,0,0,0,0,67,4,53,0,0,9,43,3,0,0,65,0,0,0,0,0,50,4,53],[0,0,0,64,3,0,4,61,0,0,9,32,4,48,0,156,0,0,3,126,0,0,33,61,0,0,0,64,4,48,0,57],[0,0,0,64,0,64,4,63,0,0,0,32,4,48,0,57,0,0,9,44,5,0,0,65,0,0,0,0,0,84,4,53],[0,0,9,45,4,0,0,65,0,0,0,0,0,67,4,53,0,0,0,64,4,0,4,61,0,0,9,11,5,64,0,156],[0,0,3,126,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,0,1,6,0,0,41,0,0,0,0,0,101,4,53,0,0,0,64,5,64,0,57,0,0,0,0,0,53,4,53],[0,0,0,32,3,64,0,57,0,0,0,0,0,35,4,53,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,0,1,1,0,75,0,0,13,75,0,0,97,61,0,0,0,9,1,0,0,41],[0,0,0,0,0,65,4,53,0,0,0,10,1,0,0,41,0,0,0,0,1,1,4,51,0,0,0,0,1,1,0,75],[0,0,13,75,0,0,97,61,0,11,0,128,0,0,0,61,0,8,0,6,0,0,0,61,0,5,0,96,0,0,0,61],[0,14,0,0,0,0,0,29,0,0,10,220,0,0,1,61,0,0,0,14,2,0,0,41,0,14,0,1,0,32,0,61],[0,0,0,10,1,0,0,41,0,0,0,0,1,1,4,51,0,0,0,14,1,16,0,107,0,0,11,105,0,0,129,61],[0,0,0,14,1,0,0,41,0,0,0,5,1,16,2,16,0,0,0,9,1,16,0,41,0,0,0,0,1,1,4,51],[0,12,0,0,0,1,0,29,0,0,0,0,33,1,4,52,0,0,0,32,3,16,0,57,0,0,0,0,4,1,4,51],[0,0,0,0,3,3,4,51,0,0,0,0,1,2,4,51,0,0,0,0,18,1,4,52,0,0,0,0,5,1,4,51],[0,0,0,64,1,0,4,61,0,0,0,128,6,16,0,57,0,0,0,0,0,86,4,53,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,50,4,53,0,0,0,32,2,16,0,57],[0,0,0,0,0,66,4,53,0,0,0,11,3,0,0,41,0,0,0,0,0,49,4,53,0,0,8,239,3,16,0,156],[0,0,3,126,0,0,33,61,0,0,0,160,3,16,0,57,0,0,0,64,0,48,4,63,0,0,8,213,3,32,0,156],[0,0,8,213,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,8,213,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,8,213,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,33,1,159,0,0,0,8,2,0,0,41,35,77,35,72,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,8,213,0,48,1,157,0,0,8,213,5,48,1,152],[0,0,0,11,4,0,0,41,0,0,0,5,3,0,0,41,0,0,11,54,0,0,97,61,0,0,0,63,3,80,0,57],[0,0,9,38,4,48,1,151,0,0,0,64,3,0,4,61,0,0,0,0,4,67,0,25,0,0,0,0,6,52,0,75],[0,0,0,0,6,0,0,25,0,0,0,1,6,0,64,57,0,0,8,221,7,64,0,156,0,0,3,126,0,0,33,61],[0,0,0,1,6,96,1,144,0,0,3,126,0,0,193,61,0,0,0,64,0,64,4,63,0,0,0,0,4,83,4,54],[0,0,0,5,6,80,2,114,0,0,11,39,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,132,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,31,0,0,65,61,0,0,0,31,5,80,1,144],[0,0,11,54,0,0,97,61,0,0,0,5,6,96,2,16,0,0,0,0,1,97,3,79,0,0,0,0,6,100,0,25],[0,0,0,3,5,80,2,16,0,0,0,0,7,6,4,51,0,0,0,0,7,87,1,207,0,0,0,0,7,87,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,113,1,159,0,0,0,0,0,22,4,53,0,0,0,1,1,32,1,143,0,0,0,12,2,0,0,41],[0,0,0,96,2,32,0,57,0,0,0,0,2,2,4,51,0,0,0,0,2,2,0,75,0,0,0,0,2,0,0,25],[0,0,0,1,2,0,192,57,0,0,0,1,2,32,1,143,0,0,0,0,2,33,0,75,0,0,12,85,0,0,193,61],[0,0,0,0,1,1,0,75,0,0,10,214,0,0,97,61,0,0,0,0,1,3,4,51,0,0,0,64,2,16,0,140],[0,0,8,251,6,0,0,65,0,0,0,0,2,0,0,25,0,0,0,0,2,6,64,25,0,0,8,251,1,16,1,151],[0,0,0,0,5,1,0,75,0,0,0,0,5,0,0,25,0,0,0,0,5,6,32,25,0,0,8,251,1,16,0,156],[0,0,0,0,5,2,192,25,0,0,0,0,1,5,0,75,0,0,5,45,0,0,193,61,0,0,0,0,2,4,4,51],[0,0,0,12,1,0,0,41,0,0,0,64,1,16,0,57,0,0,0,0,1,1,4,51,0,0,0,0,20,1,4,52],[0,0,0,0,2,66,0,75,0,0,11,91,0,0,193,61,0,0,0,0,1,1,4,51,0,0,0,64,2,48,0,57],[0,0,0,0,2,2,4,51,0,0,0,0,1,18,0,75,0,0,10,214,0,0,97,61,0,0,0,64,1,0,4,61],[0,0,0,68,2,16,0,57,0,0,9,46,3,0,0,65,0,0,12,81,0,0,1,61,0,0,0,64,1,0,4,61],[0,0,0,100,2,16,0,57,0,0,9,82,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,68,2,16,0,57],[0,0,9,83,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,16,6,0,0,1,61,0,0,0,64,1,0,4,61,0,10,0,0,0,1,0,29,0,0,9,32,1,16,0,156],[0,0,3,126,0,0,33,61,0,0,0,10,2,0,0,41,0,0,0,64,1,32,0,57,0,0,0,64,0,16,4,63],[0,0,0,1,1,0,0,41,0,0,0,0,1,18,4,54,0,9,0,0,0,1,0,29,0,0,0,0,1,0,0,49],[0,0,0,2,2,16,3,103,0,0,0,64,1,0,4,61,0,0,9,11,3,16,0,156,0,0,3,126,0,0,33,61],[0,0,0,128,3,16,0,57,0,0,0,64,0,48,4,63,0,0,9,0,4,16,0,156,0,0,3,126,0,0,33,61],[0,0,0,192,4,16,0,57,0,0,0,64,0,64,4,63,0,0,0,0,4,0,0,25,0,0,0,0,5,3,0,25],[0,0,0,5,6,64,2,16,0,0,0,0,6,98,3,79,0,0,0,0,6,6,4,59,0,0,0,0,5,101,4,54],[0,0,0,1,4,64,0,57,0,0,0,2,6,64,0,140,0,0,11,128,0,0,65,61,0,0,0,0,3,49,4,54],[0,0,0,0,0,3,4,53,0,0,0,64,3,0,4,61,0,0,9,32,4,48,0,156,0,0,3,126,0,0,33,61],[0,0,0,64,4,48,0,57,0,0,0,64,0,64,4,63,0,0,0,0,4,0,0,25,0,0,0,0,5,3,0,25],[0,0,0,5,6,64,2,16,0,0,0,0,6,98,3,79,0,0,0,0,6,6,4,59,0,0,0,0,5,101,4,54],[0,0,0,1,4,64,0,57,0,0,0,2,6,64,0,140,0,0,11,144,0,0,65,61,0,0,0,64,2,16,0,57],[0,0,0,0,0,50,4,53,0,0,0,96,2,16,0,57,0,0,0,0,0,2,4,53,0,0,0,9,2,0,0,41],[0,0,0,0,0,18,4,53,0,0,0,64,1,0,4,61,0,0,9,32,2,16,0,156,0,0,3,126,0,0,33,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,9,47,3,0,0,65],[0,0,0,0,0,50,4,53,0,0,9,48,2,0,0,65,0,0,0,0,0,33,4,53,0,0,0,64,2,0,4,61],[0,0,9,32,3,32,0,156,0,0,3,126,0,0,33,61,0,0,0,64,3,32,0,57,0,0,0,64,0,48,4,63],[0,0,0,32,3,32,0,57,0,0,9,49,4,0,0,65,0,0,0,0,0,67,4,53,0,0,9,50,3,0,0,65],[0,0,0,0,0,50,4,53,0,0,0,64,3,0,4,61,0,0,9,11,4,48,0,156,0,0,3,126,0,0,33,61],[0,0,0,128,4,48,0,57,0,0,0,64,0,64,4,63,0,0,0,96,4,48,0,57,0,0,0,1,5,0,0,41],[0,0,0,0,0,84,4,53,0,0,0,64,4,48,0,57,0,0,0,0,0,36,4,53,0,0,0,32,2,48,0,57],[0,0,9,51,4,0,0,65,0,0,0,0,0,66,4,53,0,0,0,0,0,19,4,53,0,0,0,10,1,0,0,41],[0,0,0,0,1,1,4,51,0,0,0,0,1,1,0,75,0,0,13,75,0,0,97,61,0,0,0,9,1,0,0,41],[0,0,0,0,0,49,4,53,0,0,0,10,1,0,0,41,0,0,0,0,1,1,4,51,0,0,0,0,1,1,0,75],[0,0,13,75,0,0,97,61,0,11,0,96,0,0,0,61,0,8,0,7,0,0,0,61,0,5,0,128,0,0,0,61],[0,14,0,0,0,0,0,29,0,0,11,212,0,0,1,61,0,0,0,14,2,0,0,41,0,14,0,1,0,32,0,61],[0,0,0,10,1,0,0,41,0,0,0,0,1,1,4,51,0,0,0,14,1,16,0,107,0,0,12,92,0,0,129,61],[0,0,0,14,1,0,0,41,0,0,0,5,1,16,2,16,0,0,0,9,1,16,0,41,0,0,0,0,1,1,4,51],[0,12,0,0,0,1,0,29,0,0,0,0,33,1,4,52,0,0,0,0,19,1,4,52,0,0,0,0,4,1,4,51],[0,0,0,0,2,2,4,51,0,0,0,64,1,0,4,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,11,3,0,0,41,0,0,0,0,0,49,4,53,0,0,9,11,3,16,0,156,0,0,3,126,0,0,33,61],[0,0,0,128,3,16,0,57,0,0,0,64,0,48,4,63,0,0,8,213,3,32,0,156,0,0,8,213,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,8,213,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,8,213,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,33,1,159],[0,0,0,8,2,0,0,41,35,77,35,72,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,8,213,0,48,1,157,0,0,8,213,5,48,1,152,0,0,0,5,4,0,0,41],[0,0,0,11,3,0,0,41,0,0,12,41,0,0,97,61,0,0,0,63,3,80,0,57,0,0,9,38,4,48,1,151],[0,0,0,64,3,0,4,61,0,0,0,0,4,67,0,25,0,0,0,0,6,52,0,75,0,0,0,0,6,0,0,25],[0,0,0,1,6,0,64,57,0,0,8,221,7,64,0,156,0,0,3,126,0,0,33,61,0,0,0,1,6,96,1,144],[0,0,3,126,0,0,193,61,0,0,0,64,0,64,4,63,0,0,0,0,4,83,4,54,0,0,0,5,6,80,2,114],[0,0,12,26,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,132,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,12,18,0,0,65,61,0,0,0,31,5,80,1,144,0,0,12,41,0,0,97,61],[0,0,0,5,6,96,2,16,0,0,0,0,1,97,3,79,0,0,0,0,6,100,0,25,0,0,0,3,5,80,2,16],[0,0,0,0,7,6,4,51,0,0,0,0,7,87,1,207,0,0,0,0,7,87,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,113,1,159],[0,0,0,0,0,22,4,53,0,0,0,1,1,32,1,143,0,0,0,12,2,0,0,41,0,0,0,96,2,32,0,57],[0,0,0,0,2,2,4,51,0,0,0,0,2,2,0,75,0,0,0,0,2,0,0,25,0,0,0,1,2,0,192,57],[0,0,0,1,2,32,1,143,0,0,0,0,2,33,0,75,0,0,13,79,0,0,193,61,0,0,0,0,1,1,0,75],[0,0,11,206,0,0,97,61,0,0,0,0,1,3,4,51,0,0,0,64,2,16,0,140,0,0,8,251,6,0,0,65],[0,0,0,0,2,0,0,25,0,0,0,0,2,6,64,25,0,0,8,251,1,16,1,151,0,0,0,0,5,1,0,75],[0,0,0,0,5,0,0,25,0,0,0,0,5,6,32,25,0,0,8,251,1,16,0,156,0,0,0,0,5,2,192,25],[0,0,0,0,1,5,0,75,0,0,5,45,0,0,193,61,0,0,0,0,2,4,4,51,0,0,0,12,1,0,0,41],[0,0,0,64,1,16,0,57,0,0,0,0,1,1,4,51,0,0,0,0,20,1,4,52,0,0,0,0,2,66,0,75],[0,0,12,78,0,0,193,61,0,0,0,0,1,1,4,51,0,0,0,64,2,48,0,57,0,0,0,0,2,2,4,51],[0,0,0,0,1,18,0,75,0,0,11,206,0,0,97,61,0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57],[0,0,9,52,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,36,2,16,0,57,0,0,0,21,3,0,0,57],[0,0,3,118,0,0,1,61,0,0,0,64,1,0,4,61,0,0,0,100,2,16,0,57,0,0,9,79,3,0,0,65],[0,0,0,0,0,50,4,53,0,0,0,68,2,16,0,57,0,0,9,81,3,0,0,65,0,0,13,85,0,0,1,61],[0,0,0,64,1,0,4,61,0,10,0,0,0,1,0,29,0,0,9,32,1,16,0,156,0,0,3,126,0,0,33,61],[0,0,0,10,2,0,0,41,0,0,0,64,1,32,0,57,0,0,0,64,0,16,4,63,0,0,0,1,1,0,0,41],[0,0,0,0,1,18,4,54,0,9,0,0,0,1,0,29,0,0,0,64,1,0,4,61,0,0,9,11,2,16,0,156],[0,0,3,126,0,0,33,61,0,0,0,128,2,16,0,57,0,0,0,64,0,32,4,63,0,0,0,32,2,16,0,57],[0,0,0,96,3,0,0,57,0,0,0,0,0,50,4,53,0,12,0,0,0,3,0,29,0,0,0,0,0,49,4,53],[0,0,0,96,2,16,0,57,0,0,0,0,0,2,4,53,0,0,0,64,2,16,0,57,0,0,0,0,0,2,4,53],[0,0,0,9,2,0,0,41,0,0,0,0,0,18,4,53,0,0,0,64,1,0,4,61,0,0,9,9,2,16,0,156],[0,0,3,126,0,0,33,61,0,0,0,96,2,16,0,57,0,0,0,64,0,32,4,63,0,0,0,13,2,0,0,41],[0,0,0,0,3,33,4,54,0,0,0,0,2,0,0,49,0,0,0,2,2,32,3,103,0,0,0,64,4,0,4,61],[0,0,9,32,5,64,0,156,0,0,3,126,0,0,33,61,0,0,0,64,5,64,0,57,0,0,0,64,0,80,4,63],[0,0,0,0,5,0,0,25,0,0,0,0,6,4,0,25,0,0,0,5,7,80,2,16,0,0,0,0,7,114,3,79],[0,0,0,0,7,7,4,59,0,0,0,0,6,118,4,54,0,0,0,1,5,80,0,57,0,0,0,2,7,80,0,140],[0,0,12,134,0,0,65,61,0,0,0,0,0,67,4,53,0,0,0,64,3,0,4,61,0,0,9,32,4,48,0,156],[0,0,3,126,0,0,33,61,0,0,0,64,4,48,0,57,0,0,0,64,0,64,4,63,0,0,0,0,4,0,0,25],[0,0,0,0,5,3,0,25,0,0,0,5,6,64,2,16,0,0,0,0,6,98,3,79,0,0,0,0,6,6,4,59],[0,0,0,0,5,101,4,54,0,0,0,1,4,64,0,57,0,0,0,2,6,64,0,140,0,0,12,149,0,0,65,61],[0,0,0,64,4,16,0,57,0,0,0,0,0,52,4,53,0,0,0,64,3,0,4,61,0,0,9,9,4,48,0,156],[0,0,3,126,0,0,33,61,0,0,0,96,4,48,0,57,0,0,0,64,0,64,4,63,0,0,0,13,4,0,0,41],[0,0,0,0,4,67,4,54,0,0,0,64,5,0,4,61,0,0,9,11,6,80,0,156,0,0,3,126,0,0,33,61],[0,0,0,128,6,80,0,57,0,0,0,64,0,96,4,63,0,0,0,0,6,0,0,25,0,0,0,0,7,5,0,25],[0,0,0,5,8,96,2,16,0,0,0,0,8,130,3,79,0,0,0,0,8,8,4,59,0,0,0,0,7,135,4,54],[0,0,0,1,6,96,0,57,0,0,0,4,8,96,0,140,0,0,12,172,0,0,65,61,0,0,0,0,0,84,4,53],[0,0,0,64,4,0,4,61,0,0,9,11,5,64,0,156,0,0,3,126,0,0,33,61,0,0,0,128,5,64,0,57],[0,0,0,64,0,80,4,63,0,0,0,0,5,0,0,25,0,0,0,0,6,4,0,25,0,0,0,5,7,80,2,16],[0,0,0,0,7,114,3,79,0,0,0,0,7,7,4,59,0,0,0,0,6,118,4,54,0,0,0,1,5,80,0,57],[0,0,0,4,7,80,0,140,0,0,12,187,0,0,65,61,0,0,0,64,2,48,0,57,0,0,0,0,0,66,4,53],[0,0,0,64,2,0,4,61,0,0,9,11,4,32,0,156,0,0,3,126,0,0,33,61,0,0,0,128,4,32,0,57],[0,0,0,64,0,64,4,63,0,0,0,96,4,32,0,57,0,0,0,1,5,0,0,41,0,0,0,0,0,84,4,53],[0,0,0,64,4,32,0,57,0,0,0,0,0,84,4,53,0,0,0,32,4,32,0,57,0,0,0,0,0,52,4,53],[0,0,0,0,0,18,4,53,0,0,0,10,1,0,0,41,0,0,0,0,1,1,4,51,0,0,0,0,1,1,0,75],[0,0,13,75,0,0,97,61,0,0,0,9,1,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,0,1,1,0,75,0,0,13,75,0,0,97,61,0,0,0,64,1,0,4,61],[0,0,9,32,2,16,0,156,0,0,3,126,0,0,33,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,9,53,3,0,0,65,0,0,0,0,0,50,4,53,0,0,9,54,2,0,0,65],[0,0,0,0,0,33,4,53,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,13,75,0,0,97,61,0,0,0,9,2,0,0,41,0,0,0,0,2,2,4,51,0,0,0,0,2,2,4,51],[0,0,0,0,52,2,4,52,0,0,0,0,4,4,0,75,0,0,13,75,0,0,97,61,0,0,0,0,0,19,4,53],[0,0,0,0,1,2,4,51,0,0,0,0,1,1,0,75,0,0,13,75,0,0,97,61,0,0,0,64,1,0,4,61],[0,0,9,32,2,16,0,156,0,0,3,126,0,0,33,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,9,55,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,1,2,0,0,41],[0,0,0,0,0,33,4,53,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,13,75,0,0,97,61,0,0,0,9,2,0,0,41,0,0,0,0,2,2,4,51,0,0,0,0,2,2,4,51],[0,0,0,0,3,2,4,51,0,0,0,2,3,48,0,140,0,0,13,75,0,0,65,61,0,0,0,64,3,32,0,57],[0,0,0,0,0,19,4,53,0,0,0,0,1,2,4,51,0,0,0,2,1,16,0,140,0,0,13,75,0,0,65,61],[0,0,0,64,1,0,4,61,0,0,9,11,2,16,0,156,0,0,3,126,0,0,33,61,0,0,0,128,2,16,0,57],[0,0,0,64,0,32,4,63,0,0,0,96,2,16,0,57,0,0,9,56,3,0,0,65,0,0,0,0,0,50,4,53],[0,0,0,64,2,16,0,57,0,0,9,57,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,32,2,16,0,57],[0,0,9,58,3,0,0,65,0,0,0,0,0,50,4,53,0,0,9,59,2,0,0,65,0,0,0,0,0,33,4,53],[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,13,75,0,0,97,61],[0,0,0,9,2,0,0,41,0,0,0,0,2,2,4,51,0,0,0,32,2,32,0,57,0,0,0,0,2,2,4,51],[0,0,0,0,52,2,4,52,0,0,0,0,4,4,0,75,0,0,13,75,0,0,97,61,0,0,0,0,0,19,4,53],[0,0,0,0,1,2,4,51,0,0,0,0,1,1,0,75,0,0,13,75,0,0,97,61,0,0,0,64,1,0,4,61],[0,0,9,11,2,16,0,156,0,0,3,126,0,0,33,61,0,0,0,128,2,16,0,57,0,0,0,64,0,32,4,63],[0,0,0,96,2,16,0,57,0,0,9,60,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,64,2,16,0,57],[0,0,9,61,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,32,2,16,0,57,0,0,9,62,3,0,0,65],[0,0,0,0,0,50,4,53,0,0,9,63,2,0,0,65,0,0,0,0,0,33,4,53,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,13,75,0,0,97,61,0,0,0,9,2,0,0,41],[0,0,0,0,2,2,4,51,0,0,0,32,2,32,0,57,0,0,0,0,2,2,4,51,0,0,0,0,3,2,4,51],[0,0,0,2,3,48,0,140,0,0,13,75,0,0,65,61,0,0,0,64,3,32,0,57,0,0,0,0,0,19,4,53],[0,0,0,0,1,2,4,51,0,0,0,2,1,16,0,140,0,0,13,89,0,0,129,61,0,0,9,142,1,0,0,65],[0,0,0,0,0,16,4,53,0,0,0,50,1,0,0,57,0,0,3,129,0,0,1,61,0,0,0,64,1,0,4,61],[0,0,0,100,2,16,0,57,0,0,9,79,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,68,2,16,0,57],[0,0,9,80,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,16,6,0,0,1,61,0,0,0,10,1,0,0,41,0,0,0,0,1,1,4,51,0,0,0,0,1,1,0,75],[0,0,14,137,0,0,193,61,0,0,8,214,1,0,0,65,0,0,0,0,0,16,4,57,0,0,0,4,1,0,0,41],[0,0,0,4,0,16,4,67,0,0,8,213,1,0,0,65,0,0,0,0,2,0,4,20,0,0,8,213,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,8,215,1,16,1,199,0,0,128,2,2,0,0,57],[35,77,35,72,0,0,4,15,0,0,0,1,2,32,1,144,0,0,14,136,0,0,97,61,0,0,0,0,1,1,4,59],[0,0,0,0,1,1,0,75,0,0,5,45,0,0,97,61,0,0,0,64,4,0,4,61,0,0,9,69,1,0,0,65],[0,0,0,0,0,20,4,53,0,0,8,213,1,0,0,65,0,0,0,0,2,0,4,20,0,0,8,213,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,8,213,3,64,0,156,0,14,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,9,6,1,16,1,199],[0,0,0,4,2,0,0,41,35,77,35,67,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,1,8,213,0,48,1,157,0,0,8,213,3,48,1,151,0,3,0,0,0,1,3,85,0,0,0,1,2,32,1,144],[0,0,15,84,0,0,97,61,0,0,0,14,1,0,0,41,0,0,8,221,1,16,0,156,0,0,3,126,0,0,33,61],[0,0,0,14,1,0,0,41,0,0,0,64,0,16,4,63,0,0,8,214,1,0,0,65,0,0,0,0,0,16,4,57],[0,0,0,4,1,0,0,41,0,0,0,4,0,16,4,67,0,0,8,213,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,8,213,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,8,215,1,16,1,199],[0,0,128,2,2,0,0,57,35,77,35,72,0,0,4,15,0,0,0,1,2,32,1,144,0,0,14,136,0,0,97,61],[0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75,0,0,5,45,0,0,97,61,0,0,0,64,4,0,4,61],[0,0,9,70,1,0,0,65,0,0,0,0,0,20,4,53,0,0,8,213,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,8,213,3,32,0,156,0,0,0,0,2,1,128,25,0,0,8,213,3,64,0,156,0,14,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,9,6,1,16,1,199,0,0,0,4,2,0,0,41,35,77,35,67,0,0,4,15,0,0,0,0,3,1,0,25],[0,0,0,96,3,48,2,112,0,1,8,213,0,48,1,157,0,0,8,213,3,48,1,151,0,3,0,0,0,1,3,85],[0,0,0,1,2,32,1,144,0,0,15,113,0,0,97,61,0,0,0,14,1,0,0,41,0,0,8,221,1,16,0,156],[0,0,3,126,0,0,33,61,0,0,0,14,1,0,0,41,0,0,0,64,0,16,4,63,35,77,18,228,0,0,4,15],[0,0,0,7,2,0,0,57,0,0,9,71,1,0,0,65,0,14,0,0,0,2,0,29,35,77,35,72,0,0,4,15],[0,3,0,0,0,1,3,85,0,0,0,0,2,1,0,25,0,0,0,96,2,32,2,112,0,1,8,213,0,32,1,157],[0,0,8,213,4,32,1,152,0,0,13,234,0,0,97,61,0,0,0,63,2,64,0,57,0,0,9,38,2,32,1,151],[0,0,0,64,3,0,4,61,0,0,0,0,2,35,0,25,0,0,0,0,5,50,0,75,0,0,0,0,5,0,0,25],[0,0,0,1,5,0,64,57,0,0,8,221,6,32,0,156,0,0,3,126,0,0,33,61,0,0,0,1,5,80,1,144],[0,0,3,126,0,0,193,61,0,0,0,64,0,32,4,63,0,0,0,31,2,64,1,143,0,0,0,0,3,67,4,54],[0,0,0,5,4,64,2,114,0,0,13,219,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,99,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,13,211,0,0,65,61,0,0,0,0,5,2,0,75],[0,0,13,234,0,0,97,61,0,0,0,5,4,64,2,16,0,0,0,0,1,65,3,79,0,0,0,0,3,67,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,0,0,64,4,0,4,61,0,0,9,72,1,0,0,65],[0,0,0,0,0,20,4,53,0,0,0,4,1,64,0,57,0,0,0,14,2,0,0,41,0,0,0,0,0,33,4,53],[0,0,8,213,1,0,0,65,0,0,0,0,2,0,4,20,0,0,8,213,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,8,213,3,64,0,156,0,14,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,9,73,1,16,1,199,0,0,128,2,2,0,0,57],[35,77,35,72,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,8,213,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,14,15,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,14,7,0,0,65,61,0,0,0,0,7,5,0,75],[0,0,14,30,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,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,15,142,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,8,221,4,16,0,156,0,0,3,126,0,0,33,61,0,0,0,1,2,32,1,144,0,0,3,126,0,0,193,61],[0,0,0,64,0,16,4,63,0,0,0,32,2,48,0,140,0,0,5,45,0,0,65,61,0,0,0,14,2,0,0,41],[0,0,0,0,3,2,4,51,0,0,0,7,2,0,0,41,0,0,0,0,2,33,4,54,0,12,0,0,0,3,0,29],[0,0,0,0,0,50,4,53,0,0,9,32,3,16,0,156,0,0,3,126,0,0,33,61,0,0,0,64,3,16,0,57],[0,0,0,64,0,48,4,63,0,0,8,213,3,0,0,65,0,0,8,213,4,32,0,156,0,0,0,0,2,3,128,25],[0,0,0,64,2,32,2,16,0,0,0,0,4,0,4,20,0,14,0,0,0,4,0,29,0,0,0,0,1,1,4,51],[0,0,8,213,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,8,213,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,33,1,159,0,0,128,18,2,0,0,57,35,77,35,72,0,0,4,15,0,0,0,0,3,1,0,25],[0,0,0,96,3,48,2,112,0,1,8,213,0,48,1,157,0,3,0,0,0,1,3,85,0,0,0,0,1,0,4,20],[0,13,0,0,0,1,0,29,0,0,0,14,1,16,0,107,0,0,0,117,0,0,65,61,0,0,0,1,1,32,1,144],[0,0,15,171,0,0,97,61,0,0,0,64,1,0,4,61,0,0,0,7,2,0,0,41,0,0,0,0,2,33,4,54],[0,0,0,12,3,0,0,41,0,0,0,0,0,50,4,53,0,0,9,32,3,16,0,156,0,0,3,126,0,0,33,61],[0,0,0,64,3,16,0,57,0,0,0,64,0,48,4,63,0,0,8,213,3,0,0,65,0,0,8,213,4,32,0,156],[0,0,0,0,2,3,128,25,0,0,0,64,2,32,2,16,0,0,0,0,4,0,4,20,0,12,0,0,0,4,0,29],[0,0,0,0,1,1,4,51,0,0,8,213,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,8,213,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,33,1,159,0,0,128,18,2,0,0,57,35,77,35,72,0,0,4,15],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,1,8,213,0,48,1,157,0,3,0,0,0,1,3,85],[0,0,0,0,1,0,4,20,0,0,0,12,4,0,0,41,0,0,0,12,3,16,0,107,0,0,0,117,0,0,65,61],[0,0,0,1,2,32,1,144,0,0,15,171,0,0,97,61,0,0,0,13,3,0,0,41,0,0,0,14,2,48,0,105],[0,0,0,0,1,20,0,73,0,0,0,0,1,18,0,75,0,0,15,178,0,0,193,61,0,0,8,213,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,8,213,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,0,2,2,0,0,107,0,0,15,188,0,0,193,61,0,0,9,77,2,0,0,65,0,0,15,193,0,0,1,61],[0,0,0,0,0,1,4,47,0,11,0,128,0,0,0,61,0,8,0,8,0,0,0,61,0,13,0,0,0,0,0,29],[0,0,14,147,0,0,1,61,0,0,0,13,2,0,0,41,0,13,0,1,0,32,0,61,0,0,0,10,1,0,0,41],[0,0,0,0,1,1,4,51,0,0,0,13,1,16,0,107,0,0,13,93,0,0,129,61,0,0,0,13,1,0,0,41],[0,0,0,5,1,16,2,16,0,0,0,9,1,16,0,41,0,0,0,0,1,1,4,51,0,14,0,0,0,1,0,29],[0,0,0,0,22,1,4,52,0,0,0,0,2,6,4,51,0,0,0,0,3,1,4,51,0,0,0,0,3,3,4,51],[0,0,0,0,3,50,0,75,0,0,15,246,0,0,193,61,0,0,0,0,2,2,0,75,0,0,0,11,4,0,0,41],[0,0,0,12,3,0,0,41,0,0,14,226,0,0,97,61,0,0,0,96,5,0,0,57,0,0,0,0,2,0,0,25],[0,0,0,0,3,1,4,51,0,0,0,0,4,3,4,51,0,0,0,0,4,36,0,75,0,0,13,75,0,0,161,61],[0,0,0,5,4,32,2,16,0,0,0,32,4,64,0,57,0,0,0,0,6,100,0,25,0,0,0,0,6,6,4,51],[0,0,0,0,118,6,4,52,0,0,0,0,7,7,4,51,0,0,0,0,8,67,0,25,0,0,0,64,3,0,4,61],[0,0,0,32,4,48,0,57,0,0,0,0,9,8,4,51,0,0,0,0,168,9,4,52,0,0,0,96,11,144,0,57],[0,0,0,0,12,11,4,51,0,0,0,64,9,144,0,57,0,0,0,0,11,9,4,51,0,0,0,0,10,10,4,51],[0,0,0,0,9,5,4,51,0,0,0,0,13,9,0,75,0,0,14,195,0,0,97,61,0,0,0,0,13,0,0,25],[0,0,0,0,14,77,0,25,0,0,0,32,13,208,0,57,0,0,0,0,15,93,0,25,0,0,0,0,15,15,4,51],[0,0,0,0,0,254,4,53,0,0,0,0,14,157,0,75,0,0,14,188,0,0,65,61,0,0,0,0,5,73,0,25],[0,0,0,160,13,80,0,57,0,0,0,0,0,205,4,53,0,0,0,128,12,80,0,57,0,0,0,0,0,188,4,53],[0,0,0,96,11,80,0,57,0,0,0,0,0,171,4,53,0,0,0,64,10,80,0,57,0,0,0,0,0,138,4,53],[0,0,0,0,5,101,4,54,0,0,0,0,0,117,4,53,0,0,0,192,5,144,0,57,0,0,0,0,0,83,4,53],[0,0,0,255,5,144,0,57,0,0,0,6,6,80,1,127,0,0,0,0,5,54,0,25,0,0,0,0,6,101,0,75],[0,0,0,0,6,0,0,25,0,0,0,1,6,0,64,57,0,0,8,221,7,80,0,156,0,0,3,126,0,0,33,61],[0,0,0,1,6,96,1,144,0,0,3,126,0,0,193,61,0,0,0,64,0,80,4,63,0,0,0,1,2,32,0,57],[0,0,0,14,5,0,0,41,0,0,0,0,6,5,4,51,0,0,0,0,5,6,4,51,0,0,0,0,5,82,0,75],[0,0,0,0,5,3,0,25,0,0,14,164,0,0,65,61,0,0,8,213,1,64,0,156,0,0,8,213,5,0,0,65],[0,0,0,0,4,5,128,25,0,0,0,64,1,64,2,16,0,0,0,0,2,3,4,51,0,0,8,213,3,32,0,156],[0,0,0,0,2,5,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,8,213,3,32,0,156,0,0,0,0,2,5,128,25,0,0,0,192,2,32,2,16,0,0,0,0,1,33,1,159],[0,0,0,8,2,0,0,41,35,77,35,72,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,8,213,0,48,1,157,0,0,8,213,5,48,1,152,0,0,0,11,3,0,0,41],[0,0,0,12,4,0,0,41,0,0,15,33,0,0,97,61,0,0,0,63,3,80,0,57,0,0,9,38,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,8,221,7,48,0,156,0,0,3,126,0,0,33,61,0,0,0,1,6,96,1,144],[0,0,3,126,0,0,193,61,0,0,0,64,0,48,4,63,0,0,0,0,3,84,4,54,0,0,0,5,6,80,2,114],[0,0,15,18,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,131,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,10,0,0,65,61,0,0,0,31,5,80,1,144,0,0,15,33,0,0,97,61],[0,0,0,5,6,96,2,16,0,0,0,0,1,97,3,79,0,0,0,0,6,99,0,25,0,0,0,3,5,80,2,16],[0,0,0,0,7,6,4,51,0,0,0,0,7,87,1,207,0,0,0,0,7,87,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,113,1,159],[0,0,0,0,0,22,4,53,0,0,0,1,1,32,1,143,0,0,0,14,2,0,0,41,0,0,0,96,2,32,0,57],[0,0,0,0,2,2,4,51,0,0,0,0,2,2,0,75,0,0,0,0,2,0,0,25,0,0,0,1,2,0,192,57],[0,0,0,1,2,32,1,143,0,0,0,0,2,33,0,75,0,0,15,253,0,0,193,61,0,0,0,0,1,1,0,75],[0,0,14,141,0,0,97,61,0,0,0,0,1,4,4,51,0,0,0,32,2,16,0,140,0,0,8,251,5,0,0,65],[0,0,0,0,2,0,0,25,0,0,0,0,2,5,64,25,0,0,8,251,1,16,1,151,0,0,0,0,4,1,0,75],[0,0,0,0,4,0,0,25,0,0,0,0,4,5,32,25,0,0,8,251,1,16,0,156,0,0,0,0,4,2,192,25],[0,0,0,0,1,4,0,75,0,0,5,45,0,0,193,61,0,0,0,0,1,3,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,5,45,0,0,193,61],[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,0,1,1,16,1,143],[0,0,0,14,2,0,0,41,0,0,0,64,2,32,0,57,0,0,0,0,2,2,4,51,0,0,0,0,2,2,0,75],[0,0,0,0,2,0,0,25,0,0,0,1,2,0,192,57,0,0,0,1,2,32,1,143,0,0,0,0,1,33,0,75],[0,0,14,141,0,0,97,61,0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57,0,0,9,65,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,3,118,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,15,97,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,89,0,0,65,61,0,0,0,0,6,4,0,75,0,0,15,112,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,195,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,15,126,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,118,0,0,65,61,0,0,0,0,6,4,0,75,0,0,15,141,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,195,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,15,155,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,147,0,0,65,61,0,0,0,0,6,4,0,75],[0,0,15,170,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,195,0,0,1,61,0,0,0,64,1,0,4,61],[0,0,0,68,2,16,0,57,0,0,9,74,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,3,118,0,0,1,61,0,0,0,64,1,0,4,61,0,0,0,100,2,16,0,57],[0,0,9,75,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,68,2,16,0,57,0,0,9,76,3,0,0,65],[0,0,0,0,0,50,4,53,0,0,0,36,2,16,0,57,0,0,0,33,3,0,0,57,0,0,16,6,0,0,1,61],[0,0,8,244,1,16,1,199,0,0,128,9,2,0,0,57,0,0,0,2,3,0,0,41,0,0,9,77,4,0,0,65],[0,0,0,0,5,0,0,25,35,77,35,67,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,8,213,0,48,1,157,0,0,8,213,5,48,1,152,0,0,15,240,0,0,97,61],[0,0,0,63,3,80,0,57,0,0,9,38,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,8,221,7,48,0,156],[0,0,3,126,0,0,33,61,0,0,0,1,6,96,1,144,0,0,3,126,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,15,225,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,15,217,0,0,65,61,0,0,0,0,6,3,0,75,0,0,15,240,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,16,18,0,0,97,61,0,0,8,223,1,0,0,65,0,0,0,0,0,1,4,27],[0,0,0,0,1,0,0,25,0,0,35,78,0,1,4,46,0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57],[0,0,9,64,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,3,118,0,0,1,61,0,0,0,64,1,0,4,61,0,0,0,100,2,16,0,57,0,0,9,66,3,0,0,65],[0,0,0,0,0,50,4,53,0,0,0,68,2,16,0,57,0,0,9,67,3,0,0,65,0,0,0,0,0,50,4,53],[0,0,0,36,2,16,0,57,0,0,0,49,3,0,0,57,0,0,0,0,0,50,4,53,0,0,8,225,2,0,0,65],[0,0,0,0,0,33,4,53,0,0,0,4,2,16,0,57,0,0,0,7,3,0,0,41,0,0,0,0,0,50,4,53],[0,0,8,213,2,0,0,65,0,0,8,213,3,16,0,156,0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16],[0,0,9,68,1,16,1,199,0,0,35,79,0,1,4,48,0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57],[0,0,9,78,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,3,118,0,0,1,61,0,0,9,147,2,16,0,156,0,0,16,30,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,9,142,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,9,73,1,0,0,65,0,0,35,79,0,1,4,48],[0,8,0,0,0,0,0,2,0,0,0,64,1,0,4,61,0,8,0,0,0,1,0,29,0,0,9,148,1,16,0,156],[0,0,18,174,0,0,129,61,0,0,0,8,6,0,0,41,0,0,0,192,1,96,0,57,0,0,0,64,0,16,4,63],[0,0,0,5,1,0,0,57,0,0,0,0,3,22,4,54,0,0,0,0,1,0,0,49,0,0,0,2,1,16,3,103],[0,0,0,0,2,0,0,25,0,7,0,0,0,3,0,29,0,0,0,5,4,32,2,16,0,0,0,0,4,65,3,79],[0,0,0,0,4,4,4,59,0,0,0,0,3,67,4,54,0,0,0,1,2,32,0,57,0,0,0,5,4,32,0,140],[0,0,16,50,0,0,65,61,0,0,0,0,1,6,4,51,0,0,0,0,1,1,0,75,0,0,18,170,0,0,97,61],[0,0,9,149,1,0,0,65,0,0,0,7,2,0,0,41,0,0,0,0,0,18,4,53,0,0,0,0,1,6,4,51],[0,0,0,2,1,16,0,140,0,0,18,170,0,0,65,61,0,0,0,64,1,96,0,57,0,0,9,150,2,0,0,65],[0,0,0,0,0,33,4,53,0,0,0,0,1,6,4,51,0,0,0,3,1,16,0,140,0,0,18,170,0,0,65,61],[0,0,0,96,2,96,0,57,0,0,9,151,1,0,0,65,0,1,0,0,0,2,0,29,0,0,0,0,0,18,4,53],[0,0,0,0,1,6,4,51,0,0,0,4,1,16,0,140,0,0,18,170,0,0,65,61,0,0,0,128,1,96,0,57],[0,0,9,152,2,0,0,65,0,0,0,0,0,33,4,53,0,0,0,0,1,6,4,51,0,0,0,5,1,16,0,140],[0,0,18,170,0,0,65,61,0,0,0,160,1,96,0,57,0,0,9,153,2,0,0,65,0,0,0,0,0,33,4,53],[0,0,0,64,1,0,4,61,0,0,0,32,2,16,0,57,0,0,0,0,3,6,4,51,0,0,0,0,4,3,0,75],[0,0,0,0,4,2,0,25,0,0,16,102,0,0,97,61,0,0,0,0,5,0,0,25,0,0,0,0,4,2,0,25],[0,0,0,32,6,96,0,57,0,0,0,0,7,6,4,51,0,0,0,0,4,116,4,54,0,0,0,1,5,80,0,57],[0,0,0,0,7,53,0,75,0,0,16,96,0,0,65,61,0,0,0,0,3,20,0,73,0,0,0,32,4,48,0,138],[0,0,0,0,0,65,4,53,0,0,0,31,3,48,0,57,0,6,0,32,0,0,0,146,0,0,0,6,4,48,1,127],[0,0,0,0,3,20,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,8,221,5,48,0,156,0,0,18,174,0,0,33,61,0,0,0,1,4,64,1,144,0,0,18,174,0,0,193,61],[0,0,0,64,0,48,4,63,0,0,8,213,3,0,0,65,0,0,8,213,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,8,213,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,8,213,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,33,1,159,0,0,1,0,2,0,0,57],[35,77,35,72,0,0,4,15,0,0,0,96,4,0,0,57,0,0,0,128,3,0,0,57,0,3,0,0,0,1,3,85],[0,0,0,0,5,1,0,25,0,0,0,96,5,80,2,112,0,1,8,213,0,80,1,157,0,0,8,213,6,80,1,152],[0,0,16,181,0,0,97,61,0,0,0,63,3,96,0,57,0,0,9,38,3,48,1,151,0,0,0,64,4,0,4,61],[0,0,0,0,3,52,0,25,0,0,0,0,5,67,0,75,0,0,0,0,5,0,0,25,0,0,0,1,5,0,64,57],[0,0,8,221,7,48,0,156,0,0,18,174,0,0,33,61,0,0,0,1,5,80,1,144,0,0,18,174,0,0,193,61],[0,0,0,64,0,48,4,63,0,0,0,31,5,96,1,143,0,0,0,0,3,100,4,54,0,0,0,5,6,96,2,114],[0,0,16,166,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,131,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,158,0,0,65,61,0,0,0,0,7,5,0,75,0,0,16,181,0,0,97,61],[0,0,0,5,6,96,2,16,0,0,0,0,1,97,3,79,0,0,0,0,6,99,0,25,0,0,0,3,5,80,2,16],[0,0,0,0,7,6,4,51,0,0,0,0,7,87,1,207,0,0,0,0,7,87,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,113,1,159],[0,0,0,0,0,22,4,53,0,0,0,1,1,32,1,144,0,0,18,180,0,0,97,61,0,0,0,0,1,4,4,51],[0,0,8,251,2,0,0,65,0,0,0,31,4,16,0,140,0,0,0,0,4,0,0,25,0,0,0,0,4,2,32,25],[0,0,8,251,1,16,1,151,0,0,0,0,5,1,0,75,0,0,0,0,2,0,128,25,0,0,8,251,1,16,0,156],[0,0,0,0,2,4,192,25,0,0,0,0,1,2,0,75,0,0,0,8,7,0,0,41,0,0,18,219,0,0,97,61],[0,0,0,0,1,3,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,18,219,0,0,193,61,0,0,0,0,1,1,0,75,0,0,18,221,0,0,97,61],[0,0,0,0,2,0,0,25,0,0,0,0,1,7,4,51,0,0,0,0,1,33,0,75,0,0,18,170,0,0,161,61],[0,5,0,0,0,2,0,29,0,0,0,5,1,32,2,16,0,0,0,7,1,16,0,41,0,0,0,0,2,1,4,51],[0,3,0,0,0,2,0,29,0,4,0,0,0,1,0,29,0,0,0,0,0,1,4,53,0,0,0,64,1,0,4,61],[0,0,0,32,2,16,0,57,0,0,0,0,3,7,4,51,0,0,0,0,4,3,0,75,0,0,0,0,4,2,0,25],[0,0,16,230,0,0,97,61,0,0,0,0,5,0,0,25,0,0,0,0,6,7,0,25,0,0,0,0,4,2,0,25],[0,0,0,32,6,96,0,57,0,0,0,0,7,6,4,51,0,0,0,0,4,116,4,54,0,0,0,1,5,80,0,57],[0,0,0,0,7,53,0,75,0,0,16,224,0,0,65,61,0,0,0,0,3,20,0,73,0,0,0,32,4,48,0,138],[0,0,0,0,0,65,4,53,0,0,0,31,3,48,0,57,0,0,0,6,4,48,1,127,0,0,0,0,3,20,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,8,221,5,48,0,156],[0,0,18,174,0,0,33,61,0,0,0,1,4,64,1,144,0,0,18,174,0,0,193,61,0,0,0,64,0,48,4,63],[0,0,8,213,3,32,0,156,0,0,8,213,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,8,213,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,8,213,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,33,1,159,0,0,1,0,2,0,0,57,35,77,35,72,0,0,4,15],[0,0,0,96,3,0,0,57,0,3,0,0,0,1,3,85,0,0,0,0,4,1,0,25,0,0,0,96,4,64,2,112],[0,1,8,213,0,64,1,157,0,0,8,213,4,64,1,152,0,0,17,50,0,0,97,61,0,0,0,63,3,64,0,57],[0,0,9,38,5,48,1,151,0,0,0,64,3,0,4,61,0,0,0,0,5,83,0,25,0,0,0,0,6,53,0,75],[0,0,0,0,6,0,0,25,0,0,0,1,6,0,64,57,0,0,8,221,7,80,0,156,0,0,18,174,0,0,33,61],[0,0,0,1,6,96,1,144,0,0,18,174,0,0,193,61,0,0,0,64,0,80,4,63,0,0,0,0,5,67,4,54],[0,0,0,5,6,64,2,114,0,0,17,35,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,103,0,75,0,0,17,27,0,0,65,61,0,0,0,31,4,64,1,144],[0,0,17,50,0,0,97,61,0,0,0,5,6,96,2,16,0,0,0,0,1,97,3,79,0,0,0,0,5,101,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,1,1,32,1,144,0,0,18,180,0,0,97,61],[0,0,0,0,1,3,4,51,0,0,0,0,1,1,0,75,0,0,0,8,7,0,0,41,0,0,18,198,0,0,193,61],[0,0,0,0,1,7,4,51,0,0,0,5,2,0,0,41,0,0,0,0,1,33,0,75,0,0,18,170,0,0,161,61],[0,0,0,4,1,0,0,41,0,0,0,3,3,0,0,41,0,0,0,0,0,49,4,53,0,0,0,4,1,32,0,140],[0,0,0,1,2,32,0,57,0,0,16,205,0,0,65,61,0,0,0,1,2,0,0,57,0,0,0,0,1,7,4,51],[0,0,0,0,1,33,0,75,0,0,18,170,0,0,161,61,0,5,0,0,0,2,0,29,0,0,0,5,1,32,2,16],[0,0,0,7,2,16,0,41,0,0,0,0,1,2,4,51,0,3,0,0,0,1,0,29,0,0,9,154,1,0,0,65],[0,4,0,0,0,2,0,29,0,0,0,0,0,18,4,53,0,0,0,64,1,0,4,61,0,0,0,32,2,16,0,57],[0,0,0,0,3,7,4,51,0,0,0,0,4,3,0,75,0,0,0,0,4,2,0,25,0,0,17,93,0,0,97,61],[0,0,0,0,5,0,0,25,0,0,0,0,6,7,0,25,0,0,0,0,4,2,0,25,0,0,0,32,6,96,0,57],[0,0,0,0,7,6,4,51,0,0,0,0,4,116,4,54,0,0,0,1,5,80,0,57,0,0,0,0,7,53,0,75],[0,0,17,87,0,0,65,61,0,0,0,0,3,20,0,73,0,0,0,32,4,48,0,138,0,0,0,0,0,65,4,53],[0,0,0,31,3,48,0,57,0,0,0,6,4,48,1,127,0,0,0,0,3,20,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,8,221,5,48,0,156,0,0,18,174,0,0,33,61],[0,0,0,1,4,64,1,144,0,0,18,174,0,0,193,61,0,0,0,64,0,48,4,63,0,0,8,213,3,32,0,156],[0,0,8,213,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,8,213,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,8,213,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,33,1,159,0,0,1,0,2,0,0,57,35,77,35,72,0,0,4,15,0,0,0,96,3,0,0,57],[0,3,0,0,0,1,3,85,0,0,0,0,4,1,0,25,0,0,0,96,4,64,2,112,0,1,8,213,0,64,1,157],[0,0,8,213,4,64,1,152,0,0,17,169,0,0,97,61,0,0,0,63,3,64,0,57,0,0,9,38,5,48,1,151],[0,0,0,64,3,0,4,61,0,0,0,0,5,83,0,25,0,0,0,0,6,53,0,75,0,0,0,0,6,0,0,25],[0,0,0,1,6,0,64,57,0,0,8,221,7,80,0,156,0,0,18,174,0,0,33,61,0,0,0,1,6,96,1,144],[0,0,18,174,0,0,193,61,0,0,0,64,0,80,4,63,0,0,0,0,5,67,4,54,0,0,0,5,6,64,2,114],[0,0,17,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,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,103,0,75,0,0,17,146,0,0,65,61,0,0,0,31,4,64,1,144,0,0,17,169,0,0,97,61],[0,0,0,5,6,96,2,16,0,0,0,0,1,97,3,79,0,0,0,0,5,101,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,1,1,32,1,144,0,0,18,180,0,0,97,61,0,0,0,0,1,3,4,51],[0,0,0,0,1,1,0,75,0,0,0,8,7,0,0,41,0,0,18,198,0,0,193,61,0,0,0,0,1,7,4,51],[0,0,0,5,2,0,0,41,0,0,0,0,1,33,0,75,0,0,18,170,0,0,161,61,0,0,0,4,1,0,0,41],[0,0,0,3,3,0,0,41,0,0,0,0,0,49,4,53,0,0,0,2,1,32,0,140,0,0,0,1,2,32,0,57],[0,0,17,67,0,0,65,61,0,0,0,3,2,0,0,57,0,2,0,1,0,0,0,61,0,0,0,0,1,7,4,51],[0,0,0,0,1,33,0,75,0,0,18,170,0,0,161,61,0,5,0,0,0,2,0,29,0,0,0,5,1,32,2,16],[0,0,0,7,2,16,0,41,0,0,0,0,1,2,4,51,0,3,0,0,0,1,0,29,0,0,0,2,1,0,0,41],[0,4,0,0,0,2,0,29,0,0,0,0,0,18,4,53,0,0,0,64,1,0,4,61,0,0,0,32,2,16,0,57],[0,0,0,0,3,7,4,51,0,0,0,0,4,3,0,75,0,0,0,0,4,2,0,25,0,0,17,213,0,0,97,61],[0,0,0,0,5,0,0,25,0,0,0,0,6,7,0,25,0,0,0,0,4,2,0,25,0,0,0,32,6,96,0,57],[0,0,0,0,7,6,4,51,0,0,0,0,4,116,4,54,0,0,0,1,5,80,0,57,0,0,0,0,7,53,0,75],[0,0,17,207,0,0,65,61,0,0,0,0,3,20,0,73,0,0,0,32,4,48,0,138,0,0,0,0,0,65,4,53],[0,0,0,31,3,48,0,57,0,0,0,6,4,48,1,127,0,0,0,0,3,20,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,8,221,5,48,0,156,0,0,18,174,0,0,33,61],[0,0,0,1,4,64,1,144,0,0,18,174,0,0,193,61,0,0,0,64,0,48,4,63,0,0,8,213,3,32,0,156],[0,0,8,213,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,8,213,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,8,213,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,33,1,159,0,0,1,0,2,0,0,57,35,77,35,72,0,0,4,15,0,0,0,96,3,0,0,57],[0,3,0,0,0,1,3,85,0,0,0,0,4,1,0,25,0,0,0,96,4,64,2,112,0,1,8,213,0,64,1,157],[0,0,8,213,4,64,1,152,0,0,18,33,0,0,97,61,0,0,0,63,3,64,0,57,0,0,9,38,5,48,1,151],[0,0,0,64,3,0,4,61,0,0,0,0,5,83,0,25,0,0,0,0,6,53,0,75,0,0,0,0,6,0,0,25],[0,0,0,1,6,0,64,57,0,0,8,221,7,80,0,156,0,0,18,174,0,0,33,61,0,0,0,1,6,96,1,144],[0,0,18,174,0,0,193,61,0,0,0,64,0,80,4,63,0,0,0,0,5,67,4,54,0,0,0,5,6,64,2,114],[0,0,18,18,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,103,0,75,0,0,18,10,0,0,65,61,0,0,0,31,4,64,1,144,0,0,18,33,0,0,97,61],[0,0,0,5,6,96,2,16,0,0,0,0,1,97,3,79,0,0,0,0,5,101,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,1,1,32,1,144,0,0,18,180,0,0,97,61,0,0,0,0,1,3,4,51],[0,0,0,0,1,1,0,75,0,0,0,8,7,0,0,41,0,0,18,198,0,0,193,61,0,0,0,0,1,7,4,51],[0,0,0,5,2,0,0,41,0,0,0,0,1,33,0,75,0,0,18,170,0,0,161,61,0,0,0,4,1,0,0,41],[0,0,0,3,3,0,0,41,0,0,0,0,0,49,4,53,0,0,0,4,1,32,0,140,0,0,0,1,2,32,0,57],[0,0,17,187,0,0,65,61,0,0,0,0,1,7,4,51,0,0,0,3,1,16,0,140,0,0,18,170,0,0,65,61],[0,0,9,157,1,0,0,65,0,0,0,1,2,0,0,41,0,0,0,0,0,18,4,53,0,0,0,64,1,0,4,61],[0,0,0,32,2,16,0,57,0,0,0,0,3,7,4,51,0,0,0,0,4,3,0,75,0,0,0,0,4,2,0,25],[0,0,18,69,0,0,97,61,0,0,0,0,5,0,0,25,0,0,0,0,4,2,0,25,0,0,0,32,7,112,0,57],[0,0,0,0,6,7,4,51,0,0,0,0,4,100,4,54,0,0,0,1,5,80,0,57,0,0,0,0,6,53,0,75],[0,0,18,63,0,0,65,61,0,0,0,0,3,20,0,73,0,0,0,32,4,48,0,138,0,0,0,0,0,65,4,53],[0,0,0,31,3,48,0,57,0,0,0,6,4,48,1,127,0,0,0,0,3,20,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,8,221,5,48,0,156,0,0,18,174,0,0,33,61],[0,0,0,1,4,64,1,144,0,0,18,174,0,0,193,61,0,0,0,64,0,48,4,63,0,0,8,213,3,0,0,65],[0,0,8,213,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,8,213,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,8,213,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,33,1,159,0,0,1,0,2,0,0,57,35,77,35,72,0,0,4,15,0,0,0,96,4,0,0,57],[0,0,0,128,3,0,0,57,0,3,0,0,0,1,3,85,0,0,0,0,5,1,0,25,0,0,0,96,5,80,2,112],[0,1,8,213,0,80,1,157,0,0,8,213,6,80,1,152,0,0,18,147,0,0,97,61,0,0,0,63,3,96,0,57],[0,0,9,38,3,48,1,151,0,0,0,64,4,0,4,61,0,0,0,0,3,52,0,25,0,0,0,0,5,67,0,75],[0,0,0,0,5,0,0,25,0,0,0,1,5,0,64,57,0,0,8,221,7,48,0,156,0,0,18,174,0,0,33,61],[0,0,0,1,5,80,1,144,0,0,18,174,0,0,193,61,0,0,0,64,0,48,4,63,0,0,0,31,5,96,1,143],[0,0,0,0,3,100,4,54,0,0,0,5,6,96,2,114,0,0,18,132,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,131,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,18,124,0,0,65,61],[0,0,0,0,7,5,0,75,0,0,18,147,0,0,97,61,0,0,0,5,6,96,2,16,0,0,0,0,1,97,3,79],[0,0,0,0,6,99,0,25,0,0,0,3,5,80,2,16,0,0,0,0,7,6,4,51,0,0,0,0,7,87,1,207],[0,0,0,0,7,87,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,113,1,159,0,0,0,0,0,22,4,53,0,0,0,1,1,32,1,144],[0,0,18,180,0,0,97,61,0,0,0,0,1,4,4,51,0,0,8,251,2,0,0,65,0,0,0,32,4,16,0,140],[0,0,0,0,4,0,0,25,0,0,0,0,4,2,64,25,0,0,8,251,1,16,1,151,0,0,0,0,5,1,0,75],[0,0,0,0,2,0,160,25,0,0,8,251,1,16,0,156,0,0,0,0,2,4,192,25,0,0,0,0,1,2,0,75],[0,0,18,219,0,0,193,61,0,0,0,0,1,3,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,18,219,0,0,193,61,0,0,0,0,1,1,0,75],[0,0,18,221,0,0,97,61,0,0,0,0,0,1,4,45,0,0,9,142,1,0,0,65,0,0,0,0,0,16,4,53],[0,0,0,50,1,0,0,57,0,0,18,177,0,0,1,61,0,0,9,142,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,9,73,1,0,0,65,0,0,35,79,0,1,4,48],[0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57,0,0,9,158,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,0,0,0,50,4,53,0,0,8,225,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,8,213,2,0,0,65,0,0,8,213,3,16,0,156,0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16],[0,0,8,253,1,16,1,199,0,0,35,79,0,1,4,48,0,0,0,64,1,0,4,61,0,0,0,100,2,16,0,57],[0,0,9,155,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,68,2,16,0,57,0,0,9,156,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,8,225,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,8,213,2,0,0,65,0,0,8,213,3,16,0,156,0,0,0,0,1,2,128,25],[0,0,0,64,1,16,2,16,0,0,9,68,1,16,1,199,0,0,35,79,0,1,4,48,0,0,0,0,1,0,0,25],[0,0,35,79,0,1,4,48,0,0,0,64,1,0,4,61,0,0,0,100,2,16,0,57,0,0,9,159,3,0,0,65],[0,0,0,0,0,50,4,53,0,0,0,68,2,16,0,57,0,0,9,160,3,0,0,65,0,0,18,204,0,0,1,61],[0,7,0,0,0,0,0,2,0,0,0,64,4,0,4,61,0,7,0,0,0,4,0,29,0,0,9,72,1,0,0,65],[0,0,0,0,0,20,4,53,0,0,0,4,1,64,0,57,0,0,0,6,2,0,0,57,0,0,0,0,0,33,4,53],[0,0,8,213,1,0,0,65,0,0,0,0,2,0,4,20,0,0,8,213,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,8,213,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,9,73,1,16,1,199,0,0,128,2,2,0,0,57,35,77,35,72,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,8,213,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,19,11,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,19,3,0,0,65,61,0,0,0,0,7,5,0,75],[0,0,19,26,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,21,129,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,8,221,4,16,0,156,0,0,21,94,0,0,33,61,0,0,0,1,2,32,1,144,0,0,21,94,0,0,193,61],[0,0,0,64,0,16,4,63,0,0,0,31,2,48,0,140,0,0,21,158,0,0,161,61,0,0,0,0,2,10,4,51],[0,7,0,0,0,2,0,29,0,0,0,32,2,0,0,57,0,6,0,0,0,2,0,29,0,0,0,0,2,33,4,54],[0,0,0,0,0,2,4,53,0,0,9,32,3,16,0,156,0,0,21,94,0,0,33,61,0,0,0,64,3,16,0,57],[0,0,0,64,0,48,4,63,0,0,8,213,3,0,0,65,0,0,8,213,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,8,213,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,8,213,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,33,1,159,0,0,128,18,2,0,0,57],[35,77,35,72,0,0,4,15,0,3,0,0,0,1,3,85,0,0,0,0,2,1,0,25,0,0,0,96,2,32,2,112],[0,1,8,213,0,32,1,157,0,0,8,213,4,32,1,152,0,0,19,115,0,0,97,61,0,0,0,63,2,64,0,57],[0,0,9,38,2,32,1,151,0,0,0,64,3,0,4,61,0,0,0,0,2,35,0,25,0,0,0,0,5,50,0,75],[0,0,0,0,5,0,0,25,0,0,0,1,5,0,64,57,0,0,8,221,6,32,0,156,0,0,21,94,0,0,33,61],[0,0,0,1,5,80,1,144,0,0,21,94,0,0,193,61,0,0,0,64,0,32,4,63,0,0,0,31,2,64,1,143],[0,0,0,0,3,67,4,54,0,0,0,5,4,64,2,114,0,0,19,100,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,99,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,19,92,0,0,65,61],[0,0,0,0,5,2,0,75,0,0,19,115,0,0,97,61,0,0,0,5,4,64,2,16,0,0,0,0,1,65,3,79],[0,0,0,0,3,67,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,0,0,0,1,0,4,20],[0,5,0,0,0,1,0,29,0,0,0,64,1,0,4,61,0,0,0,6,2,0,0,41,0,0,0,0,2,33,4,54],[0,0,0,7,3,0,0,41,0,0,0,0,0,50,4,53,0,0,9,32,3,16,0,156,0,0,21,94,0,0,33,61],[0,0,0,64,3,16,0,57,0,0,0,64,0,48,4,63,0,0,8,213,3,0,0,65,0,0,8,213,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,8,213,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,8,213,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,33,1,159],[0,0,128,18,2,0,0,57,35,77,35,72,0,0,4,15,0,0,0,96,3,0,0,57,0,3,0,0,0,1,3,85],[0,0,0,0,4,1,0,25,0,0,0,96,4,64,2,112,0,1,8,213,0,64,1,157,0,0,8,213,6,64,1,152],[0,0,19,189,0,0,97,61,0,0,0,63,3,96,0,57,0,0,9,38,4,48,1,151,0,0,0,64,3,0,4,61],[0,0,0,0,4,67,0,25,0,0,0,0,5,52,0,75,0,0,0,0,5,0,0,25,0,0,0,1,5,0,64,57],[0,0,8,221,7,64,0,156,0,0,21,94,0,0,33,61,0,0,0,1,5,80,1,144,0,0,21,94,0,0,193,61],[0,0,0,64,0,64,4,63,0,0,0,31,4,96,1,143,0,0,0,0,5,99,4,54,0,0,0,5,6,96,2,114],[0,0,19,174,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,103,0,75,0,0,19,166,0,0,65,61,0,0,0,0,7,4,0,75,0,0,19,189,0,0,97,61],[0,0,0,5,6,96,2,16,0,0,0,0,1,97,3,79,0,0,0,0,5,101,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,0,4,0,4,20,0,3,0,0,0,4,0,29,0,0,0,5,1,64,0,107],[0,0,21,98,0,0,65,61,0,0,0,1,1,32,1,144,0,0,21,104,0,0,97,61,0,0,0,0,6,3,4,51],[0,0,0,31,1,96,1,144,0,0,21,111,0,0,193,61,0,0,9,161,1,96,0,156,0,0,21,115,0,0,129,61],[0,0,0,64,1,0,4,61,0,0,0,32,2,96,1,144,0,0,21,160,0,0,97,61,0,0,0,0,2,0,0,25],[0,0,0,0,4,18,0,25,0,0,0,32,2,32,0,57,0,0,0,0,5,50,0,25,0,0,0,0,5,5,4,51],[0,0,0,0,0,84,4,53,0,0,0,0,4,98,0,75,0,0,19,204,0,0,65,61,0,0,0,0,2,97,0,25],[0,0,0,0,0,2,4,53,0,0,8,213,2,0,0,65,0,0,8,213,3,96,0,156,0,4,0,0,0,6,0,29],[0,0,0,0,3,2,0,25,0,0,0,0,3,6,64,25,0,0,0,96,3,48,2,16,0,0,8,213,4,16,0,156],[0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16,0,0,0,0,1,49,1,159,0,0,0,0,3,0,4,20],[0,0,8,213,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,0,2,2,0,0,57,0,1,0,0,0,2,0,29,35,77,35,72,0,0,4,15,0,0,0,0,3,1,0,25],[0,0,0,96,3,48,2,112,0,0,8,213,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,19,248,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,19,241,0,0,65,61],[0,0,0,0,6,5,0,75,0,0,20,6,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,21,166,0,0,97,61,0,0,0,0,1,0,4,51,0,0,9,162,1,16,1,151],[0,0,0,4,2,0,0,41,0,0,0,219,2,32,2,16,0,0,9,163,2,32,1,151,0,0,0,0,1,18,1,159],[0,0,9,164,1,16,1,199,0,0,0,7,3,0,0,41,0,0,0,0,1,49,0,75,0,0,21,119,0,0,193,61],[0,0,0,0,1,0,4,20,0,4,0,0,0,1,0,29,0,0,0,64,1,0,4,61,0,0,0,6,2,0,0,41],[0,0,0,0,2,33,4,54,0,0,0,0,0,50,4,53,0,0,9,32,3,16,0,156,0,0,21,94,0,0,33,61],[0,0,0,64,3,16,0,57,0,0,0,64,0,48,4,63,0,0,8,213,3,0,0,65,0,0,8,213,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,8,213,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,8,213,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,33,1,159],[0,0,128,18,2,0,0,57,35,77,35,72,0,0,4,15,0,0,0,96,3,0,0,57,0,3,0,0,0,1,3,85],[0,0,0,0,4,1,0,25,0,0,0,96,4,64,2,112,0,1,8,213,0,64,1,157,0,0,8,213,6,64,1,152],[0,0,20,93,0,0,97,61,0,0,0,63,3,96,0,57,0,0,9,38,4,48,1,151,0,0,0,64,3,0,4,61],[0,0,0,0,4,67,0,25,0,0,0,0,5,52,0,75,0,0,0,0,5,0,0,25,0,0,0,1,5,0,64,57],[0,0,8,221,7,64,0,156,0,0,21,94,0,0,33,61,0,0,0,1,5,80,1,144,0,0,21,94,0,0,193,61],[0,0,0,64,0,64,4,63,0,0,0,31,4,96,1,143,0,0,0,0,5,99,4,54,0,0,0,5,6,96,2,114],[0,0,20,78,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,103,0,75,0,0,20,70,0,0,65,61,0,0,0,0,7,4,0,75,0,0,20,93,0,0,97,61],[0,0,0,5,6,96,2,16,0,0,0,0,1,97,3,79,0,0,0,0,5,101,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,0,4,0,4,20,0,2,0,0,0,4,0,29,0,0,0,4,1,64,0,107],[0,0,21,98,0,0,65,61,0,0,0,1,1,32,1,144,0,0,21,104,0,0,97,61,0,0,0,0,6,3,4,51],[0,0,0,31,1,96,1,144,0,0,21,111,0,0,193,61,0,0,9,165,1,96,0,156,0,0,21,115,0,0,33,61],[0,0,0,64,1,0,4,61,0,0,0,32,2,96,1,144,0,0,21,224,0,0,97,61,0,0,0,3,4,0,0,41],[0,3,0,5,0,64,0,113,0,0,0,0,2,0,0,25,0,0,0,0,4,18,0,25,0,0,0,32,2,32,0,57],[0,0,0,0,5,50,0,25,0,0,0,0,5,5,4,51,0,0,0,0,0,84,4,53,0,0,0,0,4,98,0,75],[0,0,20,110,0,0,65,61,0,0,0,0,2,97,0,25,0,0,0,0,0,2,4,53,0,0,8,213,2,0,0,65],[0,0,8,213,3,96,0,156,0,5,0,0,0,6,0,29,0,0,0,0,3,2,0,25,0,0,0,0,3,6,64,25],[0,0,0,96,3,48,2,16,0,0,8,213,4,16,0,156,0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16],[0,0,0,0,1,49,1,159,0,0,0,0,3,0,4,20,0,0,8,213,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,0,2,2,0,0,57,0,1,0,0,0,2,0,29],[35,77,35,72,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,8,213,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,20,154,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,20,147,0,0,65,61,0,0,0,0,6,5,0,75,0,0,20,168,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,21,195,0,0,97,61],[0,0,0,0,1,0,4,51,0,0,9,162,1,16,1,151,0,0,0,5,2,0,0,41,0,0,0,219,2,32,2,16],[0,0,9,163,2,32,1,151,0,0,0,0,1,18,1,159,0,0,9,164,1,16,1,199,0,0,0,7,3,0,0,41],[0,0,0,0,1,49,0,75,0,0,21,119,0,0,193,61,0,0,0,0,1,0,4,20,0,5,0,0,0,1,0,29],[0,0,0,64,1,0,4,61,0,0,0,6,2,0,0,41,0,0,0,0,2,33,4,54,0,0,0,0,0,50,4,53],[0,0,9,32,3,16,0,156,0,0,21,94,0,0,33,61,0,0,0,64,3,16,0,57,0,0,0,64,0,48,4,63],[0,0,8,213,3,0,0,65,0,0,8,213,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,8,213,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,8,213,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,33,1,159,0,0,128,18,2,0,0,57,35,77,35,72,0,0,4,15],[0,0,0,96,3,0,0,57,0,3,0,0,0,1,3,85,0,0,0,0,4,1,0,25,0,0,0,96,4,64,2,112],[0,1,8,213,0,64,1,157,0,0,8,213,6,64,1,152,0,0,20,255,0,0,97,61,0,0,0,63,3,96,0,57],[0,0,9,38,4,48,1,151,0,0,0,64,3,0,4,61,0,0,0,0,4,67,0,25,0,0,0,0,5,52,0,75],[0,0,0,0,5,0,0,25,0,0,0,1,5,0,64,57,0,0,8,221,7,64,0,156,0,0,21,94,0,0,33,61],[0,0,0,1,5,80,1,144,0,0,21,94,0,0,193,61,0,0,0,64,0,64,4,63,0,0,0,31,4,96,1,143],[0,0,0,0,5,99,4,54,0,0,0,5,6,96,2,114,0,0,20,240,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,103,0,75,0,0,20,232,0,0,65,61],[0,0,0,0,7,4,0,75,0,0,20,255,0,0,97,61,0,0,0,5,6,96,2,16,0,0,0,0,1,97,3,79],[0,0,0,0,5,101,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,0,4,0,4,20],[0,0,0,5,1,64,0,107,0,0,21,98,0,0,65,61,0,0,0,1,1,32,1,144,0,0,21,104,0,0,97,61],[0,0,0,0,6,3,4,51,0,0,0,31,1,96,1,144,0,0,21,111,0,0,193,61,0,0,9,165,1,96,0,156],[0,0,21,115,0,0,33,61,0,0,0,64,1,0,4,61,0,0,0,32,2,96,1,144,0,0,21,224,0,0,97,61],[0,1,0,0,0,4,0,29,0,0,0,2,4,0,0,41,0,2,0,4,0,64,0,113,0,0,0,0,2,0,0,25],[0,0,0,0,4,18,0,25,0,0,0,32,2,32,0,57,0,0,0,0,5,50,0,25,0,0,0,0,5,5,4,51],[0,0,0,0,0,84,4,53,0,0,0,0,4,98,0,75,0,0,21,16,0,0,65,61,0,0,0,0,2,97,0,25],[0,0,0,0,0,2,4,53,0,0,8,213,2,0,0,65,0,0,8,213,3,96,0,156,0,4,0,0,0,6,0,29],[0,0,0,0,3,2,0,25,0,0,0,0,3,6,64,25,0,0,0,96,3,48,2,16,0,0,8,213,4,16,0,156],[0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16,0,0,0,0,1,49,1,159,0,0,0,0,3,0,4,20],[0,0,8,213,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,0,2,2,0,0,57,35,77,35,72,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,0,8,213,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,21,59,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,21,52,0,0,65,61,0,0,0,0,6,5,0,75],[0,0,21,73,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,21,241,0,0,97,61,0,0,0,0,1,0,4,51,0,0,9,162,1,16,1,151,0,0,0,4,2,0,0,41],[0,0,0,219,2,32,2,16,0,0,9,163,2,32,1,151,0,0,0,0,1,18,1,159,0,0,9,164,1,16,1,199],[0,0,0,7,1,16,0,108,0,0,0,1,2,0,0,41,0,0,21,119,0,0,193,61,0,0,0,2,3,0,0,41],[0,0,0,3,1,48,0,107,0,0,22,20,0,0,161,61,0,0,0,5,1,32,0,105,0,0,0,0,1,19,0,75],[0,0,22,30,0,0,193,61,0,0,0,0,0,1,4,45,0,0,9,142,1,0,0,65,0,0,0,0,0,16,4,53],[0,0,0,65,1,0,0,57,0,0,21,101,0,0,1,61,0,0,9,142,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,9,73,1,0,0,65,0,0,35,79,0,1,4,48],[0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57,0,0,9,74,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,21,229,0,0,1,61,0,0,0,64,1,0,4,61],[0,0,0,68,2,16,0,57,0,0,9,166,3,0,0,65,0,0,21,162,0,0,1,61,0,0,0,64,1,0,4,61],[0,0,0,68,2,16,0,57,0,0,9,172,3,0,0,65,0,0,21,162,0,0,1,61,0,0,0,64,1,0,4,61],[0,0,0,100,2,16,0,57,0,0,9,167,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,68,2,16,0,57],[0,0,9,168,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,36,2,16,0,57,0,0,0,50,3,0,0,57],[0,0,22,39,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,21,142,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,21,134,0,0,65,61,0,0,0,0,6,4,0,75,0,0,22,13,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,22,13,0,0,1,61,0,0,0,0,1,0,0,25,0,0,35,79,0,1,4,48],[0,0,0,68,2,16,0,57,0,0,9,171,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,36,2,16,0,57],[0,0,0,2,3,0,0,57,0,0,21,229,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,21,179,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,21,171,0,0,65,61,0,0,0,0,6,4,0,75],[0,0,21,194,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,22,13,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,21,208,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,21,200,0,0,65,61],[0,0,0,0,6,4,0,75,0,0,21,223,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,22,13,0,0,1,61],[0,0,0,68,2,16,0,57,0,0,9,171,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,41,0,0,0,0,0,50,4,53,0,0,8,225,2,0,0,65,0,0,0,0,0,33,4,53],[0,0,0,4,2,16,0,57,0,0,0,6,3,0,0,41,0,0,0,0,0,50,4,53,0,0,8,213,2,0,0,65],[0,0,8,213,3,16,0,156,0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16,0,0,8,253,1,16,1,199],[0,0,35,79,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,21,254,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,21,246,0,0,65,61,0,0,0,0,6,4,0,75,0,0,22,13,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,8,213,1,0,0,65,0,0,8,213,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,35,79,0,1,4,48],[0,0,0,64,1,0,4,61,0,0,0,100,2,16,0,57,0,0,9,75,3,0,0,65,0,0,0,0,0,50,4,53],[0,0,0,68,2,16,0,57,0,0,9,76,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,36,2,16,0,57],[0,0,0,33,3,0,0,57,0,0,22,39,0,0,1,61,0,0,0,64,1,0,4,61,0,0,0,100,2,16,0,57],[0,0,9,169,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,68,2,16,0,57,0,0,9,170,3,0,0,65],[0,0,0,0,0,50,4,53,0,0,0,36,2,16,0,57,0,0,0,47,3,0,0,57,0,0,0,0,0,50,4,53],[0,0,8,225,2,0,0,65,0,0,0,0,0,33,4,53,0,0,0,4,2,16,0,57,0,0,0,6,3,0,0,41],[0,0,0,0,0,50,4,53,0,0,8,213,2,0,0,65,0,0,8,213,3,16,0,156,0,0,0,0,1,2,128,25],[0,0,0,64,1,16,2,16,0,0,9,68,1,16,1,199,0,0,35,79,0,1,4,48,0,4,0,0,0,0,0,2],[0,0,0,7,2,0,0,57,0,0,9,71,1,0,0,65,0,4,0,0,0,2,0,29,35,77,35,72,0,0,4,15],[0,3,0,0,0,1,3,85,0,0,0,0,2,1,0,25,0,0,0,96,2,32,2,112,0,1,8,213,0,32,1,157],[0,0,8,213,4,32,1,152,0,0,22,102,0,0,97,61,0,0,0,63,2,64,0,57,0,0,9,38,2,32,1,151],[0,0,0,64,3,0,4,61,0,0,0,0,2,35,0,25,0,0,0,0,5,50,0,75,0,0,0,0,5,0,0,25],[0,0,0,1,5,0,64,57,0,0,8,221,6,32,0,156,0,0,22,253,0,0,33,61,0,0,0,1,5,80,1,144],[0,0,22,253,0,0,193,61,0,0,0,64,0,32,4,63,0,0,0,31,2,64,1,143,0,0,0,0,3,67,4,54],[0,0,0,5,4,64,2,114,0,0,22,87,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,99,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,22,79,0,0,65,61,0,0,0,0,5,2,0,75],[0,0,22,102,0,0,97,61,0,0,0,5,4,64,2,16,0,0,0,0,1,65,3,79,0,0,0,0,3,67,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,0,0,64,4,0,4,61,0,3,0,0,0,4,0,29],[0,0,9,72,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,8,213,1,0,0,65,0,0,0,0,2,0,4,20,0,0,8,213,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,8,213,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,9,73,1,16,1,199,0,0,128,2,2,0,0,57],[35,77,35,72,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,8,213,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,22,140,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,22,132,0,0,65,61],[0,0,0,0,7,5,0,75,0,0,22,155,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,23,25,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,8,221,4,16,0,156,0,0,22,253,0,0,33,61,0,0,0,1,2,32,1,144],[0,0,22,253,0,0,193,61,0,0,0,64,0,16,4,63,0,0,0,31,2,48,0,140,0,0,23,60,0,0,161,61],[0,0,0,0,3,10,4,51,0,0,0,32,2,0,0,57,0,3,0,0,0,2,0,29,0,0,0,0,2,33,4,54],[0,2,0,0,0,3,0,29,0,0,0,0,0,50,4,53,0,0,9,32,3,16,0,156,0,0,22,253,0,0,33,61],[0,0,0,64,3,16,0,57,0,0,0,64,0,48,4,63,0,0,8,213,3,0,0,65,0,0,8,213,4,32,0,156],[0,0,0,0,2,3,128,25,0,0,0,64,2,32,2,16,0,0,0,0,4,0,4,20,0,4,0,0,0,4,0,29],[0,0,0,0,1,1,4,51,0,0,8,213,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,8,213,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,33,1,159,0,0,128,18,2,0,0,57,35,77,35,72,0,0,4,15],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,1,8,213,0,48,1,157,0,3,0,0,0,1,3,85],[0,0,0,0,1,0,4,20,0,1,0,0,0,1,0,29,0,0,0,4,1,16,0,107,0,0,23,1,0,0,65,61],[0,0,0,1,1,32,1,144,0,0,23,7,0,0,97,61,0,0,0,64,1,0,4,61,0,0,0,3,2,0,0,41],[0,0,0,0,2,33,4,54,0,0,0,2,3,0,0,41,0,0,0,0,0,50,4,53,0,0,9,32,3,16,0,156],[0,0,22,253,0,0,33,61,0,0,0,64,3,16,0,57,0,0,0,64,0,48,4,63,0,0,8,213,3,0,0,65],[0,0,8,213,4,32,0,156,0,0,0,0,2,3,128,25,0,0,0,64,2,32,2,16,0,0,0,0,4,0,4,20],[0,2,0,0,0,4,0,29,0,0,0,0,1,1,4,51,0,0,8,213,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,8,213,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,33,1,159,0,0,128,18,2,0,0,57],[35,77,35,72,0,0,4,15,0,0,0,2,4,0,0,41,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112],[0,1,8,213,0,48,1,157,0,3,0,0,0,1,3,85,0,0,0,0,1,0,4,20,0,0,0,0,3,20,0,75],[0,0,23,1,0,0,65,61,0,0,0,1,2,32,1,144,0,0,23,7,0,0,97,61,0,0,0,1,3,0,0,41],[0,0,0,4,2,48,0,105,0,0,0,0,1,20,0,73,0,0,0,0,1,18,0,75,0,0,23,62,0,0,193,61],[0,0,0,0,0,1,4,45,0,0,9,142,1,0,0,65,0,0,0,0,0,16,4,53,0,0,0,65,1,0,0,57],[0,0,23,4,0,0,1,61,0,0,9,142,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,9,73,1,0,0,65,0,0,35,79,0,1,4,48,0,0,0,64,1,0,4,61],[0,0,0,68,2,16,0,57,0,0,9,74,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,0,0,0,50,4,53,0,0,8,225,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,8,213,2,0,0,65],[0,0,8,213,3,16,0,156,0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16,0,0,8,253,1,16,1,199],[0,0,35,79,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,23,38,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,23,30,0,0,65,61,0,0,0,0,6,4,0,75,0,0,23,53,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,8,213,1,0,0,65,0,0,8,213,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,35,79,0,1,4,48],[0,0,0,0,1,0,0,25,0,0,35,79,0,1,4,48,0,0,0,64,1,0,4,61,0,0,0,100,2,16,0,57],[0,0,9,75,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,68,2,16,0,57,0,0,9,76,3,0,0,65],[0,0,0,0,0,50,4,53,0,0,0,36,2,16,0,57,0,0,0,33,3,0,0,57,0,0,0,0,0,50,4,53],[0,0,8,225,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,8,213,2,0,0,65,0,0,8,213,3,16,0,156,0,0,0,0,1,2,128,25],[0,0,0,64,1,16,2,16,0,0,9,68,1,16,1,199,0,0,35,79,0,1,4,48,0,1,0,0,0,0,0,2],[0,0,0,0,1,0,0,50,0,0,23,228,0,0,193,61,0,0,8,228,1,0,0,65,0,0,0,0,0,16,4,57],[0,0,8,213,1,0,0,65,0,0,0,0,2,0,4,20,0,0,8,213,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,0,192,1,32,2,16,0,0,8,229,1,16,1,199,0,0,128,11,2,0,0,57,35,77,35,72,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,23,227,0,0,97,61,0,0,0,0,2,1,4,59,0,0,3,233,1,0,0,138],[0,1,0,0,0,2,0,29,0,0,0,0,1,18,0,75,0,0,23,230,0,0,33,61,0,0,8,230,1,0,0,65],[0,0,0,0,0,16,4,57,0,0,8,213,3,0,0,65,0,0,0,0,1,0,4,20,0,0,8,213,2,16,0,156],[0,0,0,0,1,3,128,25,0,0,0,192,1,16,2,16,0,0,8,229,1,16,1,199,0,0,128,11,2,0,0,57],[35,77,35,72,0,0,4,15,0,0,0,1,2,32,1,144,0,0,23,227,0,0,97,61,0,0,0,0,1,1,4,59],[0,0,0,11,2,0,0,57,0,0,0,0,0,18,4,27,0,0,8,231,1,0,0,65,0,0,0,0,0,16,4,57],[0,0,0,0,1,0,4,20,0,0,8,213,2,16,0,156,0,0,8,213,1,0,128,65,0,0,0,192,1,16,2,16],[0,0,8,229,1,16,1,199,0,0,128,11,2,0,0,57,35,77,35,72,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,23,227,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,10,2,0,0,57,0,0,0,0,3,2,4,26],[0,0,8,232,3,48,1,151,0,0,0,0,1,19,1,159,0,0,0,0,0,18,4,27,0,0,8,233,1,0,0,65],[0,0,0,0,0,16,4,57,0,0,8,213,3,0,0,65,0,0,0,0,1,0,4,20,0,0,8,213,2,16,0,156],[0,0,0,0,1,3,128,25,0,0,0,192,1,16,2,16,0,0,8,229,1,16,1,199,0,0,128,11,2,0,0,57],[35,77,35,72,0,0,4,15,0,0,0,1,2,32,1,144,0,0,23,227,0,0,97,61,0,0,0,0,1,1,4,59],[0,0,0,9,2,0,0,57,0,0,0,0,0,18,4,27,0,0,8,234,1,0,0,65,0,0,0,0,0,16,4,57],[0,0,0,0,1,0,4,20,0,0,8,213,2,16,0,156,0,0,8,213,1,0,128,65,0,0,0,192,1,16,2,16],[0,0,8,229,1,16,1,199,0,0,128,11,2,0,0,57,35,77,35,72,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,23,227,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,8,235,1,0,0,65,0,0,0,0,0,16,4,57,0,0,8,213,3,0,0,65,0,0,0,0,1,0,4,20],[0,0,8,213,2,16,0,156,0,0,0,0,1,3,128,25,0,0,0,192,1,16,2,16,0,0,8,229,1,16,1,199],[0,0,128,11,2,0,0,57,35,77,35,72,0,0,4,15,0,0,0,1,2,32,1,144,0,0,23,227,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,8,236,1,0,0,65],[0,0,0,0,0,16,4,57,0,0,0,0,1,0,4,20,0,0,8,213,2,16,0,156,0,0,8,213,1,0,128,65],[0,0,0,192,1,16,2,16,0,0,8,229,1,16,1,199,0,0,128,11,2,0,0,57,35,77,35,72,0,0,4,15],[0,0,0,1,2,32,1,144,0,0,23,227,0,0,97,61,0,0,0,0,1,1,4,59,0,0,0,4,2,0,0,57],[0,0,0,0,0,18,4,27,0,0,8,237,1,0,0,65,0,0,0,0,0,16,4,57,0,0,8,213,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,8,213,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16],[0,0,8,229,1,16,1,199,0,0,128,11,2,0,0,57,35,77,35,72,0,0,4,15,0,0,0,1,2,32,1,144],[0,0,23,227,0,0,97,61,0,0,0,0,1,1,4,59,0,0,8,224,1,16,1,151,0,0,0,5,2,0,0,57],[0,0,0,0,3,2,4,26,0,0,8,232,3,48,1,151,0,0,0,0,1,19,1,159,0,0,0,0,0,18,4,27],[0,0,0,3,1,0,0,57,0,0,0,0,2,1,4,26,0,0,8,238,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,0,6,1,0,0,57,0,0,0,1,2,0,0,41,0,0,0,0,0,33,4,27,0,0,0,0,1,0,4,22],[0,0,0,12,2,0,0,57,0,0,0,0,0,18,4,27,0,0,0,0,0,1,4,45,0,0,0,0,0,1,4,47],[0,0,0,0,1,0,0,25,0,0,35,79,0,1,4,48,0,0,9,142,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,9,73,1,0,0,65,0,0,35,79,0,1,4,48],[0,5,0,0,0,0,0,2,0,0,0,64,1,0,4,61,0,0,9,147,2,16,0,156,0,0,25,235,0,0,129,61],[0,0,0,96,2,16,0,57,0,0,0,64,0,32,4,63,0,0,9,10,2,0,0,65,0,0,0,0,2,33,4,54],[0,0,0,64,4,0,4,61,0,0,9,11,3,64,0,156,0,0,25,235,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,9,12,5,0,0,65,0,0,0,0,0,83,4,53],[0,0,0,64,3,64,0,57,0,0,9,13,5,0,0,65,0,0,0,0,0,83,4,53,0,0,0,32,3,64,0,57],[0,0,9,14,5,0,0,65,0,0,0,0,0,83,4,53,0,0,0,65,3,0,0,57,0,5,0,0,0,3,0,29],[0,0,0,0,0,52,4,53,0,0,0,64,3,16,0,57,0,0,9,15,5,0,0,65,0,0,0,0,0,83,4,53],[0,0,0,0,0,66,4,53,0,0,0,64,7,0,4,61,0,0,9,9,4,112,0,156,0,0,25,235,0,0,33,61],[0,0,0,96,4,112,0,57,0,0,0,64,0,64,4,63,0,0,9,16,4,0,0,65,0,0,0,0,8,71,4,54],[0,0,0,64,4,0,4,61,0,0,9,11,5,64,0,156,0,0,25,235,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,9,12,6,0,0,65,0,0,0,0,0,101,4,53],[0,0,0,64,5,64,0,57,0,0,9,17,6,0,0,65,0,0,0,0,0,101,4,53,0,0,0,32,5,64,0,57],[0,0,9,18,6,0,0,65,0,0,0,0,0,101,4,53,0,0,0,5,5,0,0,41,0,0,0,0,0,84,4,53],[0,0,0,64,6,112,0,57,0,0,9,19,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,72,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,25,233,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,25,233,0,0,33,61,0,4,0,0,0,8,0,29],[0,3,0,0,0,7,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,8,213,1,0,0,65,0,0,0,0,2,0,4,20,0,0,8,213,3,32,0,156,0,0,0,0,2,1,128,25],[0,0,8,213,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,9,20,1,16,1,199,0,0,0,1,2,0,0,57,35,77,35,72,0,0,4,15],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,8,213,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,24,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,24,86,0,0,65,61,0,0,0,0,6,5,0,75,0,0,24,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,0,4,2,0,0,41,0,0,25,241,0,0,97,61],[0,0,0,0,1,0,4,51,0,0,0,2,1,16,1,79,0,0,8,224,1,16,1,152,0,0,0,3,5,0,0,41],[0,0,25,233,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,25,233,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,25,233,0,0,33,61,0,0,0,1,4,0,0,41],[0,0,0,0,4,4,4,51,0,4,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,8,213,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,8,213,3,32,0,156,0,0,0,0,2,1,128,25,0,0,8,213,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,9,20,1,16,1,199,0,0,0,1,2,0,0,57,35,77,35,72,0,0,4,15,0,0,0,0,3,1,0,25],[0,0,0,96,3,48,2,112,0,0,8,213,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,24,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,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,24,165,0,0,65,61],[0,0,0,0,6,5,0,75,0,0,24,186,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,26,14,0,0,97,61,0,0,0,0,1,0,4,51,0,0,0,4,1,16,1,79],[0,0,8,224,1,16,1,152,0,0,25,233,0,0,193,61,0,0,0,64,1,0,4,61,0,0,9,9,2,16,0,156],[0,0,25,235,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,9,11,3,32,0,156,0,0,25,235,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,9,12,4,0,0,65,0,0,0,0,0,67,4,53],[0,0,0,64,3,32,0,57,0,0,9,21,4,0,0,65,0,0,0,0,0,67,4,53,0,0,0,32,4,32,0,57],[0,0,9,22,6,0,0,65,0,0,0,0,0,100,4,53,0,0,0,5,6,0,0,41,0,0,0,0,0,98,4,53],[0,0,0,64,6,16,0,57,0,0,9,23,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,25,233,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,25,233,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,8,213,1,0,0,65,0,0,0,0,2,0,4,20,0,0,8,213,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,8,213,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,9,20,1,16,1,199,0,0,0,1,2,0,0,57],[35,77,35,72,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,8,213,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,25,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,25,7,0,0,65,61,0,0,0,0,6,5,0,75,0,0,25,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,26,43,0,0,97,61],[0,0,0,0,1,0,4,51,0,0,8,224,1,16,1,151,0,0,9,23,1,16,0,156,0,0,25,233,0,0,193,61],[0,0,0,64,1,0,4,61,0,0,9,9,2,16,0,156,0,0,25,235,0,0,33,61,0,0,0,96,2,16,0,57],[0,0,0,64,0,32,4,63,0,0,9,24,2,0,0,65,0,0,0,0,5,33,4,54,0,0,0,64,2,0,4,61],[0,0,9,11,3,32,0,156,0,0,25,235,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,9,25,4,0,0,65,0,0,0,0,0,67,4,53,0,0,0,64,3,32,0,57],[0,0,9,26,4,0,0,65,0,0,0,0,0,67,4,53,0,0,0,32,4,32,0,57,0,0,9,27,6,0,0,65],[0,0,0,0,0,100,4,53,0,0,0,5,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,25,233,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,25,233,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,8,213,1,0,0,65],[0,0,0,0,2,0,4,20,0,0,8,213,3,32,0,156,0,0,0,0,2,1,128,25,0,0,8,213,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,9,20,1,16,1,199,0,0,0,1,2,0,0,57,35,77,35,72,0,0,4,15,0,0,0,0,3,1,0,25],[0,0,0,96,3,48,2,112,0,0,8,213,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,25,112,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,25,105,0,0,65,61],[0,0,0,0,6,5,0,75,0,0,25,126,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,26,72,0,0,97,61,0,0,0,0,1,0,4,51,0,0,8,224,1,16,1,152],[0,0,25,233,0,0,193,61,0,0,0,64,1,0,4,61,0,0,9,9,2,16,0,156,0,0,25,235,0,0,33,61],[0,0,0,96,2,16,0,57,0,0,0,64,0,32,4,63,0,0,9,28,2,0,0,65,0,0,0,0,5,33,4,54],[0,0,0,64,2,0,4,61,0,0,9,11,3,32,0,156,0,0,25,235,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,9,12,4,0,0,65,0,0,0,0,0,67,4,53],[0,0,0,64,3,32,0,57,0,0,9,29,4,0,0,65,0,0,0,0,0,67,4,53,0,0,0,32,4,32,0,57],[0,0,9,30,6,0,0,65,0,0,0,0,0,100,4,53,0,0,0,5,6,0,0,41,0,0,0,0,0,98,4,53],[0,0,0,64,6,16,0,57,0,0,9,31,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,25,233,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,25,233,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,8,213,1,0,0,65,0,0,0,0,2,0,4,20,0,0,8,213,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,8,213,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,9,20,1,16,1,199,0,0,0,1,2,0,0,57],[35,77,35,72,0,0,4,15,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,8,213,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,25,210,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,25,203,0,0,65,61,0,0,0,0,6,5,0,75,0,0,25,224,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,26,101,0,0,97,61],[0,0,0,0,1,0,4,51,0,0,8,224,1,16,1,151,0,0,9,31,1,16,0,156,0,0,25,233,0,0,193,61],[0,0,0,0,0,1,4,45,0,0,0,0,1,0,0,25,0,0,35,79,0,1,4,48,0,0,9,142,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,9,73,1,0,0,65],[0,0,35,79,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,25,254,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,25,246,0,0,65,61,0,0,0,0,6,4,0,75,0,0,26,129,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,26,129,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,26,27,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,26,19,0,0,65,61,0,0,0,0,6,4,0,75],[0,0,26,42,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,26,129,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,26,56,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,26,48,0,0,65,61],[0,0,0,0,6,4,0,75,0,0,26,71,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,26,129,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,26,85,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,26,77,0,0,65,61,0,0,0,0,6,4,0,75,0,0,26,100,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,26,129,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,26,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,26,106,0,0,65,61,0,0,0,0,6,4,0,75,0,0,26,129,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,8,213,1,0,0,65,0,0,8,213,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,35,79,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,9,173,1,80,0,156,0,0,28,60,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,8,240,2,0,0,65,0,0,0,0,0,33,4,53,0,0,0,96,1,80,0,57],[0,0,8,241,2,0,0,65,0,0,0,0,0,33,4,53,0,0,0,64,1,80,0,57,0,0,8,242,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,8,243,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,8,213,1,144,0,156,0,0,8,213,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,8,213,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,8,213,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,8,244,1,16,1,199],[0,0,0,3,2,0,0,41,35,77,35,72,0,0,4,15,0,0,0,1,2,32,1,144,0,0,28,68,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,26,195,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,26,188,0,0,65,61,0,0,0,0,3,33,0,25],[0,0,0,0,0,3,4,53,0,0,8,213,3,32,0,156,0,0,8,213,4,0,0,65,0,0,0,0,2,4,128,25],[0,0,0,64,2,32,2,16,0,0,8,213,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,8,213,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,35,77,35,72,0,0,4,15],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,0,8,213,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,26,228,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,26,221,0,0,65,61],[0,0,0,31,5,80,1,144,0,0,26,242,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,28,70,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,27,5,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,26,254,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,8,221,4,208,0,156,0,0,28,60,0,0,33,61,0,0,0,1,3,48,1,144],[0,0,28,60,0,0,193,61,0,0,0,64,0,208,4,63,0,0,0,13,11,0,0,57,0,0,0,0,3,11,4,26],[0,0,8,221,4,48,0,156,0,0,28,60,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,8,245,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,28,64,0,0,97,61,0,0,0,1,3,0,0,57,0,0,0,1,6,64,0,140],[0,0,27,62,0,0,97,61,0,0,0,0,3,11,4,26,0,0,0,0,4,99,0,75,0,0,28,54,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,28,54,0,0,161,61],[0,0,8,245,7,96,0,65,0,0,0,0,9,7,4,26,0,0,0,0,0,176,4,53,0,0,8,245,6,80,0,65],[0,0,0,0,8,6,4,26,0,0,0,0,9,137,0,75,0,0,27,62,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,28,54,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,27,37,0,0,129,61,0,0,0,0,3,11,4,26],[0,0,0,0,2,3,0,75,0,0,28,64,0,0,97,61,0,0,0,1,2,48,0,138,0,0,0,0,2,35,1,112],[0,0,27,74,0,0,193,61,0,0,0,14,2,0,0,57,0,0,0,0,3,2,4,26,0,0,8,221,4,48,1,151],[0,0,8,221,5,64,0,156,0,0,28,64,0,0,97,61,0,0,8,246,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,8,247,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,27,96,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,27,89,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,8,213,2,208,0,156,0,0,8,213,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,8,213,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,8,213,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,35,77,35,67,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,8,213,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,27,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,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,27,129,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,27,154,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,28,102,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,8,221,4,16,0,156,0,0,28,60,0,0,33,61,0,0,0,1,2,32,1,144],[0,0,28,60,0,0,193,61,0,0,0,64,0,16,4,63,0,0,0,32,2,48,0,140,0,0,28,68,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,26,159,0,0,161,61,0,0,0,0,2,11,4,26,0,0,0,0,3,2,0,75,0,0,28,137,0,0,97,61],[0,0,8,248,3,32,0,65,0,0,0,0,4,3,4,26,0,0,8,245,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,27,241,0,0,65,61,0,0,0,1,6,0,0,57,0,0,8,251,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,27,205,0,0,129,61,0,0,8,249,4,112,0,65,0,0,0,0,4,4,4,26],[0,0,8,250,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,28,54,0,0,161,61,0,0,8,245,6,64,0,65],[0,0,0,0,7,83,0,75,0,0,28,54,0,0,161,61,0,0,0,0,7,6,4,26,0,0,0,0,0,176,4,53],[0,0,8,245,8,80,0,65,0,0,0,0,5,8,4,26,0,0,0,0,9,87,0,75,0,0,27,238,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,28,54,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,8,251,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,8,251,5,80,0,156,0,0,0,0,6,3,192,25,0,0,0,0,3,6,0,75,0,0,28,64,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,27,194,0,0,65,61,0,0,0,1,2,0,0,138,0,0,0,0,2,35,0,75],[0,0,28,64,0,0,97,61,0,0,0,1,2,48,0,57,0,0,0,0,2,50,1,112,0,0,27,253,0,0,193,61],[0,0,0,14,2,0,0,57,0,0,0,0,3,2,4,26,0,0,8,221,4,48,1,151,0,0,0,1,4,64,0,138],[0,0,8,221,5,64,0,156,0,0,28,64,0,0,33,61,0,0,8,246,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,28,143,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,28,12,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,28,5,0,0,65,61],[0,0,0,0,3,18,0,25,0,0,0,0,0,3,4,53,0,0,8,213,4,0,0,65,0,0,8,213,3,16,0,156],[0,0,0,0,1,4,128,25,0,0,0,64,1,16,2,16,0,0,8,213,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,8,213,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,8,244,1,16,1,199],[0,0,128,16,2,0,0,57,35,77,35,72,0,0,4,15,0,0,0,1,2,32,1,144,0,0,28,68,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,8,213,3,32,0,156,0,0,8,213,4,0,0,65],[0,0,0,0,2,4,128,25,0,0,8,213,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,8,254,1,16,1,199,0,0,128,13,2,0,0,57],[0,0,0,2,3,0,0,57,0,0,8,255,4,0,0,65,35,77,35,67,0,0,4,15,0,0,0,1,1,32,1,144],[0,0,28,68,0,0,97,61,0,0,0,0,0,1,4,45,0,0,9,142,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,9,73,1,0,0,65,0,0,35,79,0,1,4,48],[0,0,9,142,1,0,0,65,0,0,0,0,0,16,4,53,0,0,0,65,1,0,0,57,0,0,28,57,0,0,1,61],[0,0,9,142,1,0,0,65,0,0,0,0,0,16,4,53,0,0,0,17,1,0,0,57,0,0,28,57,0,0,1,61],[0,0,0,0,1,0,0,25,0,0,35,79,0,1,4,48,0,0,0,31,2,48,1,143,0,0,0,5,4,48,2,114],[0,0,28,82,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,28,74,0,0,65,61,0,0,0,0,5,2,0,75,0,0,28,97,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,8,213,1,0,0,65,0,0,8,213,2,160,0,156,0,0,0,0,10,1,128,25],[0,0,0,64,1,160,2,16,0,0,28,134,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,28,115,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,28,107,0,0,65,61,0,0,0,0,6,4,0,75],[0,0,28,130,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,8,213,1,0,0,65,0,0,8,213,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,35,79,0,1,4,48,0,0,0,68,2,16,0,57,0,0,9,88,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,28,148,0,0,1,61,0,0,0,68,2,16,0,57],[0,0,8,252,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,8,225,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,8,213,2,0,0,65,0,0,8,213,3,16,0,156],[0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16,0,0,8,253,1,16,1,199,0,0,35,79,0,1,4,48],[0,2,0,0,0,0,0,2,0,0,8,214,1,0,0,65,0,0,0,0,0,16,4,57,0,0,0,0,1,0,4,16],[0,2,0,0,0,1,0,29,0,0,0,4,0,16,4,67,0,0,8,213,1,0,0,65,0,0,0,0,2,0,4,20],[0,0,8,213,3,32,0,156,0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,8,215,1,16,1,199],[0,0,128,2,2,0,0,57,35,77,35,72,0,0,4,15,0,0,0,1,2,32,1,144,0,0,29,0,0,0,97,61],[0,0,0,0,1,1,4,59,0,0,0,0,1,1,0,75,0,0,29,1,0,0,97,61,0,0,0,64,5,0,4,61],[0,0,9,69,1,0,0,65,0,0,0,0,0,21,4,53,0,0,0,0,1,0,4,20,0,0,0,2,4,0,0,41],[0,0,0,4,2,64,0,140,0,0,28,207,0,0,97,61,0,0,8,213,2,0,0,65,0,0,8,213,3,16,0,156],[0,0,0,0,1,2,128,25,0,0,8,213,3,80,0,156,0,0,0,0,2,5,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,9,6,1,16,1,199,0,0,0,0,2,4,0,25],[0,1,0,0,0,5,0,29,35,77,35,67,0,0,4,15,0,0,0,1,5,0,0,41,0,0,0,2,4,0,0,41],[0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,1,8,213,0,48,1,157,0,0,8,213,3,48,1,151],[0,3,0,0,0,1,3,85,0,0,0,1,2,32,1,144,0,0,29,9,0,0,97,61,0,0,8,220,1,80,0,156],[0,0,29,3,0,0,129,61,0,0,0,64,0,80,4,63,0,0,8,214,1,0,0,65,0,0,0,0,0,16,4,57],[0,0,0,4,0,64,4,67,0,0,8,213,1,0,0,65,0,0,0,0,2,0,4,20,0,0,8,213,3,32,0,156],[0,0,0,0,2,1,128,25,0,0,0,192,1,32,2,16,0,0,8,215,1,16,1,199,0,0,128,2,2,0,0,57],[35,77,35,72,0,0,4,15,0,0,0,1,2,32,1,144,0,0,29,0,0,0,97,61,0,0,0,0,1,1,4,59],[0,0,0,0,1,1,0,75,0,0,29,1,0,0,97,61,0,0,0,64,5,0,4,61,0,0,9,70,1,0,0,65],[0,0,0,0,0,21,4,53,0,0,0,0,1,0,4,20,0,0,0,2,2,0,0,41,0,0,0,4,3,32,0,140],[0,0,28,252,0,0,97,61,0,0,8,213,4,0,0,65,0,0,8,213,3,16,0,156,0,0,0,0,1,4,128,25],[0,0,8,213,3,80,0,156,0,0,0,0,4,5,64,25,0,0,0,64,3,64,2,16,0,0,0,192,1,16,2,16],[0,0,0,0,1,49,1,159,0,0,9,6,1,16,1,199,0,2,0,0,0,5,0,29,35,77,35,67,0,0,4,15],[0,0,0,2,5,0,0,41,0,0,0,0,3,1,0,25,0,0,0,96,3,48,2,112,0,1,8,213,0,48,1,157],[0,0,8,213,3,48,1,151,0,3,0,0,0,1,3,85,0,0,0,1,2,32,1,144,0,0,29,38,0,0,97,61],[0,0,8,221,1,80,0,156,0,0,29,3,0,0,33,61,0,0,0,64,0,80,4,63,0,0,0,0,0,1,4,45],[0,0,0,0,0,1,4,47,0,0,0,0,1,0,0,25,0,0,35,79,0,1,4,48,0,0,9,142,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,9,73,1,0,0,65],[0,0,35,79,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,29,22,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,29,14,0,0,65,61,0,0,0,0,6,4,0,75,0,0,29,66,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,29,66,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,29,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,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,29,43,0,0,65,61,0,0,0,0,6,4,0,75],[0,0,29,66,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,8,213,1,0,0,65,0,0,8,213,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,35,79,0,1,4,48,0,7,0,0,0,0,0,2,0,0,0,64,1,0,4,61,0,3,0,0,0,1,0,29],[0,0,9,174,1,16,0,156,0,0,31,7,0,0,129,61,0,0,0,3,2,0,0,41,0,0,0,64,1,32,0,57],[0,0,0,64,0,16,4,63,0,0,0,1,1,0,0,57,0,0,0,0,2,18,4,54,0,2,0,0,0,2,0,29],[0,0,0,64,2,0,4,61,0,0,9,11,3,32,0,156,0,0,31,7,0,0,33,61,0,0,0,128,3,32,0,57],[0,0,0,64,0,48,4,63,0,0,0,32,3,32,0,57,0,0,0,96,4,0,0,57,0,0,0,0,0,67,4,53],[0,6,0,0,0,4,0,29,0,0,0,0,0,66,4,53,0,0,0,96,3,32,0,57,0,0,0,0,0,3,4,53],[0,0,0,64,3,32,0,57,0,0,0,0,0,3,4,53,0,0,0,2,3,0,0,41,0,0,0,0,0,35,4,53],[0,0,0,64,2,0,4,61,0,0,9,9,3,32,0,156,0,0,31,7,0,0,33,61,0,0,0,96,3,32,0,57],[0,0,0,64,0,48,4,63,0,0,0,2,5,0,0,57,0,0,0,0,4,82,4,54,0,0,0,0,3,0,0,49],[0,0,0,2,3,48,3,103,0,0,0,64,6,0,4,61,0,0,9,32,7,96,0,156,0,0,31,7,0,0,33,61],[0,0,0,64,7,96,0,57,0,0,0,64,0,112,4,63,0,0,0,0,7,0,0,25,0,0,0,0,8,6,0,25],[0,0,0,5,9,112,2,16,0,0,0,0,9,147,3,79,0,0,0,0,9,9,4,59,0,0,0,0,8,152,4,54],[0,0,0,1,7,112,0,57,0,0,0,2,9,112,0,140,0,0,29,116,0,0,65,61,0,0,0,0,0,100,4,53],[0,0,0,64,4,0,4,61,0,0,9,32,6,64,0,156,0,0,31,7,0,0,33,61,0,0,0,64,6,64,0,57],[0,0,0,64,0,96,4,63,0,0,0,0,6,0,0,25,0,0,0,0,7,4,0,25,0,0,0,5,8,96,2,16],[0,0,0,0,8,131,3,79,0,0,0,0,8,8,4,59,0,0,0,0,7,135,4,54,0,0,0,1,6,96,0,57],[0,0,0,2,8,96,0,140,0,0,29,131,0,0,65,61,0,0,0,64,6,32,0,57,0,0,0,0,0,70,4,53],[0,0,0,64,4,0,4,61,0,0,9,9,6,64,0,156,0,0,31,7,0,0,33,61,0,0,0,96,6,64,0,57],[0,0,0,64,0,96,4,63,0,0,0,0,5,84,4,54,0,0,0,64,6,0,4,61,0,0,9,11,7,96,0,156],[0,0,31,7,0,0,33,61,0,0,0,128,7,96,0,57,0,0,0,64,0,112,4,63,0,0,0,0,7,0,0,25],[0,0,0,0,8,6,0,25,0,0,0,5,9,112,2,16,0,0,0,0,9,147,3,79,0,0,0,0,9,9,4,59],[0,0,0,0,8,152,4,54,0,0,0,1,7,112,0,57,0,0,0,4,9,112,0,140,0,0,29,153,0,0,65,61],[0,0,0,0,0,101,4,53,0,0,0,64,5,0,4,61,0,0,9,11,6,80,0,156,0,0,31,7,0,0,33,61],[0,0,0,128,6,80,0,57,0,0,0,64,0,96,4,63,0,0,0,0,6,0,0,25,0,0,0,0,7,5,0,25],[0,0,0,5,8,96,2,16,0,0,0,0,8,131,3,79,0,0,0,0,8,8,4,59,0,0,0,0,7,135,4,54],[0,0,0,1,6,96,0,57,0,0,0,4,8,96,0,140,0,0,29,168,0,0,65,61,0,0,0,64,3,64,0,57],[0,0,0,0,0,83,4,53,0,0,0,64,3,0,4,61,0,0,9,11,5,48,0,156,0,0,31,7,0,0,33,61],[0,0,0,128,5,48,0,57,0,0,0,64,0,80,4,63,0,0,0,96,5,48,0,57,0,0,0,0,0,21,4,53],[0,0,0,64,5,48,0,57,0,0,0,0,0,21,4,53,0,0,0,32,5,48,0,57,0,0,0,0,0,69,4,53],[0,0,0,0,0,35,4,53,0,0,0,3,2,0,0,41,0,0,0,0,2,2,4,51,0,0,0,0,2,2,0,75],[0,0,31,11,0,0,97,61,0,0,0,2,2,0,0,41,0,0,0,0,0,50,4,53,0,0,0,3,2,0,0,41],[0,0,0,0,2,2,4,51,0,0,0,0,2,2,0,75,0,0,31,11,0,0,97,61,0,0,0,64,2,0,4,61],[0,0,9,32,3,32,0,156,0,0,31,7,0,0,33,61,0,0,0,64,3,32,0,57,0,0,0,64,0,48,4,63],[0,0,0,32,3,32,0,57,0,0,9,53,4,0,0,65,0,0,0,0,0,67,4,53,0,0,9,54,3,0,0,65],[0,0,0,0,0,50,4,53,0,0,0,3,3,0,0,41,0,0,0,0,3,3,4,51,0,0,0,0,3,3,0,75],[0,0,31,11,0,0,97,61,0,0,0,2,3,0,0,41,0,0,0,0,3,3,4,51,0,0,0,0,3,3,4,51],[0,0,0,0,69,3,4,52,0,0,0,0,5,5,0,75,0,0,31,11,0,0,97,61,0,0,0,0,0,36,4,53],[0,0,0,0,2,3,4,51,0,0,0,0,2,2,0,75,0,0,31,11,0,0,97,61,0,0,0,64,2,0,4,61],[0,0,9,32,3,32,0,156,0,0,31,7,0,0,33,61,0,0,0,64,3,32,0,57,0,0,0,64,0,48,4,63],[0,0,0,32,3,32,0,57,0,0,9,55,4,0,0,65,0,0,0,0,0,67,4,53,0,0,0,0,0,18,4,53],[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,31,11,0,0,97,61],[0,0,0,2,1,0,0,41,0,0,0,0,1,1,4,51,0,0,0,0,1,1,4,51,0,0,0,0,3,1,4,51],[0,0,0,2,3,48,0,140,0,0,31,11,0,0,65,61,0,0,0,64,3,16,0,57,0,0,0,0,0,35,4,53],[0,0,0,0,1,1,4,51,0,0,0,2,1,16,0,140,0,0,31,11,0,0,65,61,0,0,0,64,1,0,4,61],[0,0,9,11,2,16,0,156,0,0,31,7,0,0,33,61,0,0,0,128,2,16,0,57,0,0,0,64,0,32,4,63],[0,0,0,96,2,16,0,57,0,0,9,56,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,64,2,16,0,57],[0,0,9,57,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,32,2,16,0,57,0,0,9,58,3,0,0,65],[0,0,0,0,0,50,4,53,0,0,9,59,2,0,0,65,0,0,0,0,0,33,4,53,0,0,0,3,2,0,0,41],[0,0,0,0,2,2,4,51,0,0,0,0,2,2,0,75,0,0,31,11,0,0,97,61,0,0,0,2,2,0,0,41],[0,0,0,0,2,2,4,51,0,0,0,32,2,32,0,57,0,0,0,0,2,2,4,51,0,0,0,0,52,2,4,52],[0,0,0,0,4,4,0,75,0,0,31,11,0,0,97,61,0,0,0,0,0,19,4,53,0,0,0,0,1,2,4,51],[0,0,0,0,1,1,0,75,0,0,31,11,0,0,97,61,0,0,0,64,1,0,4,61,0,0,9,11,2,16,0,156],[0,0,31,7,0,0,33,61,0,0,0,128,2,16,0,57,0,0,0,64,0,32,4,63,0,0,0,96,2,16,0,57],[0,0,9,60,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,64,2,16,0,57,0,0,9,61,3,0,0,65],[0,0,0,0,0,50,4,53,0,0,0,32,2,16,0,57,0,0,9,62,3,0,0,65,0,0,0,0,0,50,4,53],[0,0,9,63,2,0,0,65,0,0,0,0,0,33,4,53,0,0,0,3,2,0,0,41,0,0,0,0,2,2,4,51],[0,0,0,0,2,2,0,75,0,0,31,11,0,0,97,61,0,0,0,2,2,0,0,41,0,0,0,0,2,2,4,51],[0,0,0,32,2,32,0,57,0,0,0,0,2,2,4,51,0,0,0,0,3,2,4,51,0,0,0,2,3,48,0,140],[0,0,31,11,0,0,65,61,0,0,0,64,3,32,0,57,0,0,0,0,0,19,4,53,0,0,0,0,1,2,4,51],[0,0,0,2,1,16,0,140,0,0,31,11,0,0,65,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,31,6,0,0,97,61,0,5,0,128,0,0,0,61,0,1,0,8,0,0,0,61],[0,0,0,0,2,0,0,25,0,0,30,68,0,0,1,61,0,0,0,4,2,0,0,41,0,0,0,1,2,32,0,57],[0,0,0,3,1,0,0,41,0,0,0,0,1,1,4,51,0,0,0,0,1,18,0,75,0,0,31,6,0,0,129,61],[0,4,0,0,0,2,0,29,0,0,0,5,1,32,2,16,0,0,0,2,1,16,0,41,0,0,0,0,1,1,4,51],[0,7,0,0,0,1,0,29,0,0,0,0,22,1,4,52,0,0,0,0,2,6,4,51,0,0,0,0,3,1,4,51],[0,0,0,0,3,3,4,51,0,0,0,0,3,50,0,75,0,0,31,17,0,0,193,61,0,0,0,0,2,2,0,75],[0,0,0,5,4,0,0,41,0,0,0,6,3,0,0,41,0,0,30,148,0,0,97,61,0,0,0,96,5,0,0,57],[0,0,0,0,2,0,0,25,0,0,0,0,3,1,4,51,0,0,0,0,4,3,4,51,0,0,0,0,4,36,0,75],[0,0,31,11,0,0,161,61,0,0,0,5,4,32,2,16,0,0,0,32,4,64,0,57,0,0,0,0,6,100,0,25],[0,0,0,0,6,6,4,51,0,0,0,0,118,6,4,52,0,0,0,0,7,7,4,51,0,0,0,0,8,67,0,25],[0,0,0,64,3,0,4,61,0,0,0,32,4,48,0,57,0,0,0,0,9,8,4,51,0,0,0,0,168,9,4,52],[0,0,0,96,11,144,0,57,0,0,0,0,12,11,4,51,0,0,0,64,9,144,0,57,0,0,0,0,11,9,4,51],[0,0,0,0,10,10,4,51,0,0,0,0,9,5,4,51,0,0,0,0,13,9,0,75,0,0,30,116,0,0,97,61],[0,0,0,0,13,0,0,25,0,0,0,0,14,77,0,25,0,0,0,32,13,208,0,57,0,0,0,0,15,93,0,25],[0,0,0,0,15,15,4,51,0,0,0,0,0,254,4,53,0,0,0,0,14,157,0,75,0,0,30,109,0,0,65,61],[0,0,0,0,5,73,0,25,0,0,0,160,13,80,0,57,0,0,0,0,0,205,4,53,0,0,0,128,12,80,0,57],[0,0,0,0,0,188,4,53,0,0,0,96,11,80,0,57,0,0,0,0,0,171,4,53,0,0,0,64,10,80,0,57],[0,0,0,0,0,138,4,53,0,0,0,0,5,101,4,54,0,0,0,0,0,117,4,53,0,0,0,192,5,144,0,57],[0,0,0,0,0,83,4,53,0,0,0,255,5,144,0,57,0,0,0,32,6,0,0,138,0,0,0,0,6,101,1,111],[0,0,0,0,5,54,0,25,0,0,0,0,6,101,0,75,0,0,0,0,6,0,0,25,0,0,0,1,6,0,64,57],[0,0,8,221,7,80,0,156,0,0,31,7,0,0,33,61,0,0,0,1,6,96,1,144,0,0,31,7,0,0,193,61],[0,0,0,64,0,80,4,63,0,0,0,1,2,32,0,57,0,0,0,7,5,0,0,41,0,0,0,0,6,5,4,51],[0,0,0,0,5,6,4,51,0,0,0,0,5,82,0,75,0,0,0,0,5,3,0,25,0,0,30,85,0,0,65,61],[0,0,8,213,1,64,0,156,0,0,8,213,5,0,0,65,0,0,0,0,4,5,128,25,0,0,0,64,1,64,2,16],[0,0,0,0,2,3,4,51,0,0,8,213,3,32,0,156,0,0,0,0,2,5,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,8,213,3,32,0,156,0,0,0,0,2,5,128,25],[0,0,0,192,2,32,2,16,0,0,0,0,1,33,1,159,0,0,0,1,2,0,0,41,35,77,35,72,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,8,213,0,48,1,157],[0,0,8,213,5,48,1,152,0,0,0,5,3,0,0,41,0,0,0,6,4,0,0,41,0,0,30,211,0,0,97,61],[0,0,0,63,3,80,0,57,0,0,9,38,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,8,221,7,48,0,156],[0,0,31,7,0,0,33,61,0,0,0,1,6,96,1,144,0,0,31,7,0,0,193,61,0,0,0,64,0,48,4,63],[0,0,0,0,3,84,4,54,0,0,0,5,6,80,2,114,0,0,30,196,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,131,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,30,188,0,0,65,61],[0,0,0,31,5,80,1,144,0,0,30,211,0,0,97,61,0,0,0,5,6,96,2,16,0,0,0,0,1,97,3,79],[0,0,0,0,6,99,0,25,0,0,0,3,5,80,2,16,0,0,0,0,7,6,4,51,0,0,0,0,7,87,1,207],[0,0,0,0,7,87,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,113,1,159,0,0,0,0,0,22,4,53,0,0,0,1,1,32,1,143],[0,0,0,7,2,0,0,41,0,0,0,96,2,32,0,57,0,0,0,0,2,2,4,51,0,0,0,0,2,2,0,75],[0,0,0,0,2,0,0,25,0,0,0,1,2,0,192,57,0,0,0,1,2,32,1,143,0,0,0,0,2,33,0,75],[0,0,31,35,0,0,193,61,0,0,0,0,1,1,0,75,0,0,30,62,0,0,97,61,0,0,0,0,1,4,4,51],[0,0,0,31,2,16,0,140,0,0,8,251,5,0,0,65,0,0,0,0,2,0,0,25,0,0,0,0,2,5,32,25],[0,0,8,251,1,16,1,151,0,0,0,0,4,1,0,75,0,0,0,0,4,0,0,25,0,0,0,0,4,5,64,25],[0,0,8,251,1,16,0,156,0,0,0,0,4,2,192,25,0,0,0,0,1,4,0,75,0,0,31,56,0,0,97,61],[0,0,0,0,1,3,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,31,56,0,0,193,61,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,0,1,1,16,1,143,0,0,0,7,2,0,0,41,0,0,0,64,2,32,0,57],[0,0,0,0,2,2,4,51,0,0,0,0,2,2,0,75,0,0,0,0,2,0,0,25,0,0,0,1,2,0,192,57],[0,0,0,1,2,32,1,143,0,0,0,0,1,33,0,75,0,0,30,62,0,0,97,61,0,0,0,64,1,0,4,61],[0,0,0,68,2,16,0,57,0,0,9,65,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,31,23,0,0,1,61,0,0,0,0,0,1,4,45,0,0,9,142,1,0,0,65],[0,0,0,0,0,16,4,53,0,0,0,65,1,0,0,57,0,0,31,14,0,0,1,61,0,0,9,142,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,9,73,1,0,0,65],[0,0,35,79,0,1,4,48,0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57,0,0,9,64,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,0,0,0,50,4,53],[0,0,8,225,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,8,213,2,0,0,65,0,0,8,213,3,16,0,156,0,0,0,0,1,2,128,25],[0,0,0,64,1,16,2,16,0,0,8,253,1,16,1,199,0,0,35,79,0,1,4,48,0,0,0,64,1,0,4,61],[0,0,0,100,2,16,0,57,0,0,9,66,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,68,2,16,0,57],[0,0,9,67,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,36,2,16,0,57,0,0,0,49,3,0,0,57],[0,0,0,0,0,50,4,53,0,0,8,225,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,8,213,2,0,0,65,0,0,8,213,3,16,0,156],[0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16,0,0,9,68,1,16,1,199,0,0,35,79,0,1,4,48],[0,0,0,0,1,0,0,25,0,0,35,79,0,1,4,48,0,9,0,0,0,0,0,2,0,0,0,64,1,0,4,61],[0,6,0,0,0,1,0,29,0,0,9,174,1,16,0,156,0,0,32,11,0,0,129,61,0,0,0,6,2,0,0,41],[0,0,0,64,1,32,0,57,0,0,0,64,0,16,4,63,0,0,0,1,1,0,0,57,0,0,0,0,2,18,4,54],[0,7,0,0,0,2,0,29,0,0,0,64,2,0,4,61,0,0,8,239,3,32,0,156,0,0,32,11,0,0,33,61],[0,0,0,160,3,32,0,57,0,0,0,64,0,48,4,63,0,0,0,128,3,32,0,57,0,0,0,0,0,3,4,53],[0,0,0,96,3,32,0,57,0,0,0,0,0,3,4,53,0,0,0,64,3,32,0,57,0,0,0,0,0,3,4,53],[0,0,0,32,3,32,0,57,0,0,0,0,0,3,4,53,0,0,0,0,0,2,4,53,0,0,0,7,3,0,0,41],[0,0,0,0,0,35,4,53,0,0,0,64,2,0,4,61,0,0,8,239,3,32,0,156,0,0,32,11,0,0,33,61],[0,0,0,160,3,32,0,57,0,0,0,64,0,48,4,63,0,0,0,128,3,32,0,57,0,0,0,0,0,19,4,53],[0,0,0,96,1,32,0,57,0,0,9,33,3,0,0,65,0,0,0,0,0,49,4,53,0,0,0,64,1,32,0,57],[0,0,9,34,3,0,0,65,0,0,0,0,0,49,4,53,0,0,0,32,1,32,0,57,0,0,9,35,3,0,0,65],[0,0,0,0,0,49,4,53,0,0,9,36,1,0,0,65,0,0,0,0,0,18,4,53,0,0,0,6,3,0,0,41],[0,0,0,0,1,3,4,51,0,0,0,0,1,1,0,75,0,0,32,40,0,0,97,61,0,0,0,7,1,0,0,41],[0,0,0,0,0,33,4,53,0,0,0,0,1,3,4,51,0,0,0,0,1,1,0,75,0,0,32,40,0,0,97,61],[0,5,0,32,0,0,0,61,0,4,0,192,0,0,0,61,0,3,0,5,0,0,0,61,0,2,0,96,0,0,0,61],[0,1,0,128,0,0,0,61,0,0,0,0,2,0,0,25,0,0,31,125,0,0,1,61,0,0,0,8,2,0,0,41],[0,0,0,1,2,32,0,57,0,0,0,6,1,0,0,41,0,0,0,0,1,1,4,51,0,0,0,0,1,18,0,75],[0,0,32,10,0,0,129,61,0,8,0,0,0,2,0,29,0,0,0,5,1,32,2,16,0,0,0,7,1,16,0,41],[0,0,0,0,6,1,4,51,0,0,0,32,1,96,0,57,0,0,0,0,2,1,4,51,0,0,0,64,1,96,0,57],[0,0,0,0,3,1,4,51,0,0,0,0,4,6,4,51,0,0,0,64,1,0,4,61,0,0,0,192,5,16,0,57],[0,0,0,0,0,53,4,53,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,66,4,53,0,0,0,96,2,16,0,57,0,0,0,5,3,0,0,41,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,4,3,0,0,41,0,0,0,0,0,49,4,53,0,0,9,37,3,16,0,156,0,0,32,11,0,0,33,61],[0,0,0,224,3,16,0,57,0,0,0,64,0,48,4,63,0,0,8,213,3,32,0,156,0,0,8,213,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,8,213,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,8,213,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,33,1,159],[0,0,0,3,2,0,0,41,0,9,0,0,0,6,0,29,35,77,35,72,0,0,4,15,0,0,0,9,10,0,0,41],[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,8,213,0,48,1,157],[0,0,8,213,5,48,1,152,0,0,0,1,3,0,0,41,0,0,0,2,4,0,0,41,0,0,31,219,0,0,97,61],[0,0,0,63,3,80,0,57,0,0,9,38,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,8,221,7,48,0,156],[0,0,32,11,0,0,33,61,0,0,0,1,6,96,1,144,0,0,32,11,0,0,193,61,0,0,0,64,0,48,4,63],[0,0,0,0,3,84,4,54,0,0,0,5,6,80,2,114,0,0,31,204,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,131,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,31,196,0,0,65,61],[0,0,0,31,5,80,1,144,0,0,31,219,0,0,97,61,0,0,0,5,6,96,2,16,0,0,0,0,1,97,3,79],[0,0,0,0,6,99,0,25,0,0,0,3,5,80,2,16,0,0,0,0,7,6,4,51,0,0,0,0,7,87,1,207],[0,0,0,0,7,87,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,113,1,159,0,0,0,0,0,22,4,53,0,0,0,1,1,32,1,143],[0,0,0,128,2,160,0,57,0,0,0,0,2,2,4,51,0,0,0,0,2,2,0,75,0,0,0,0,2,0,0,25],[0,0,0,1,2,0,192,57,0,0,0,1,2,32,1,143,0,0,0,0,2,33,0,75,0,0,32,17,0,0,193,61],[0,0,0,0,1,1,0,75,0,0,31,119,0,0,97,61,0,0,0,0,1,4,4,51,0,0,0,31,2,16,0,140],[0,0,8,251,5,0,0,65,0,0,0,0,2,0,0,25,0,0,0,0,2,5,32,25,0,0,8,251,1,16,1,151],[0,0,0,0,4,1,0,75,0,0,0,0,4,0,0,25,0,0,0,0,4,5,64,25,0,0,8,251,1,16,0,156],[0,0,0,0,4,2,192,25,0,0,0,0,1,4,0,75,0,0,32,38,0,0,97,61,0,0,0,0,1,3,4,51],[0,0,0,96,2,160,0,57,0,0,0,0,2,2,4,51,0,0,0,0,1,33,0,75,0,0,31,119,0,0,97,61],[0,0,0,64,1,0,4,61,0,0,0,68,2,16,0,57,0,0,9,39,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,0,0,0,50,4,53,0,0,8,225,2,0,0,65],[0,0,0,0,0,33,4,53,0,0,0,4,2,16,0,57,0,0,0,5,3,0,0,41,0,0,0,0,0,50,4,53],[0,0,8,213,2,0,0,65,0,0,8,213,3,16,0,156,0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16],[0,0,8,253,1,16,1,199,0,0,35,79,0,1,4,48,0,0,0,0,0,1,4,45,0,0,9,142,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,9,73,1,0,0,65],[0,0,35,79,0,1,4,48,0,0,0,64,1,0,4,61,0,0,0,100,2,16,0,57,0,0,9,82,3,0,0,65],[0,0,0,0,0,50,4,53,0,0,0,68,2,16,0,57,0,0,9,83,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,8,225,2,0,0,65],[0,0,0,0,0,33,4,53,0,0,0,4,2,16,0,57,0,0,0,5,3,0,0,41,0,0,0,0,0,50,4,53],[0,0,8,213,2,0,0,65,0,0,8,213,3,16,0,156,0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16],[0,0,9,68,1,16,1,199,0,0,35,79,0,1,4,48,0,0,0,0,1,0,0,25,0,0,35,79,0,1,4,48],[0,0,9,142,1,0,0,65,0,0,0,0,0,16,4,53,0,0,0,50,1,0,0,57,0,0,32,14,0,0,1,61],[0,0,0,64,2,0,4,61,0,0,9,148,1,32,0,156,0,0,32,101,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,9,1,3,0,0,65,0,0,0,0,0,49,4,53],[0,0,0,128,3,32,0,57,0,0,9,2,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,9,0,3,32,0,156,0,0,32,101,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,9,3,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,9,0,2,16,0,156,0,0,32,101,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,9,4,3,0,0,65],[0,0,0,0,0,50,4,53,0,0,0,128,2,16,0,57,0,0,9,2,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,9,142,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,9,73,1,0,0,65,0,0,35,79,0,1,4,48,0,7,0,0,0,0,0,2],[0,0,0,64,1,0,4,61,0,4,0,0,0,1,0,29,0,0,9,174,1,16,0,156,0,0,33,98,0,0,129,61],[0,0,0,4,2,0,0,41,0,0,0,64,1,32,0,57,0,0,0,64,0,16,4,63,0,0,0,1,1,0,0,57],[0,0,0,0,2,18,4,54,0,5,0,0,0,2,0,29,0,0,0,0,2,0,0,49,0,0,0,2,3,32,3,103],[0,0,0,64,2,0,4,61,0,0,9,11,4,32,0,156,0,0,33,98,0,0,33,61,0,0,0,128,4,32,0,57],[0,0,0,64,0,64,4,63,0,0,9,0,5,32,0,156,0,0,33,98,0,0,33,61,0,0,0,192,5,32,0,57],[0,0,0,64,0,80,4,63,0,0,0,0,5,0,0,25,0,0,0,0,6,4,0,25,0,0,0,5,7,80,2,16],[0,0,0,0,7,115,3,79,0,0,0,0,7,7,4,59,0,0,0,0,6,118,4,54,0,0,0,1,5,80,0,57],[0,0,0,2,7,80,0,140,0,0,32,131,0,0,65,61,0,0,0,0,4,66,4,54,0,0,0,0,0,4,4,53],[0,0,0,64,4,0,4,61,0,0,9,32,5,64,0,156,0,0,33,98,0,0,33,61,0,0,0,64,5,64,0,57],[0,0,0,64,0,80,4,63,0,0,0,0,5,0,0,25,0,0,0,0,6,4,0,25,0,0,0,5,7,80,2,16],[0,0,0,0,7,115,3,79,0,0,0,0,7,7,4,59,0,0,0,0,6,118,4,54,0,0,0,1,5,80,0,57],[0,0,0,2,7,80,0,140,0,0,32,147,0,0,65,61,0,0,0,64,3,32,0,57,0,0,0,0,0,67,4,53],[0,0,0,96,3,32,0,57,0,0,0,0,0,3,4,53,0,0,0,5,3,0,0,41,0,0,0,0,0,35,4,53],[0,0,0,64,2,0,4,61,0,0,9,32,3,32,0,156,0,0,33,98,0,0,33,61,0,0,0,64,3,32,0,57],[0,0,0,64,0,48,4,63,0,0,0,32,3,32,0,57,0,0,9,47,4,0,0,65,0,0,0,0,0,67,4,53],[0,0,9,48,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,64,3,0,4,61,0,0,9,32,4,48,0,156],[0,0,33,98,0,0,33,61,0,0,0,64,4,48,0,57,0,0,0,64,0,64,4,63,0,0,0,32,4,48,0,57],[0,0,9,49,5,0,0,65,0,0,0,0,0,84,4,53,0,0,9,50,4,0,0,65,0,0,0,0,0,67,4,53],[0,0,0,64,4,0,4,61,0,0,9,11,5,64,0,156,0,0,33,98,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,0,0,0,21,4,53,0,0,0,64,1,64,0,57],[0,0,0,0,0,49,4,53,0,0,0,32,1,64,0,57,0,0,9,51,3,0,0,65,0,0,0,0,0,49,4,53],[0,0,0,0,0,36,4,53,0,0,0,4,2,0,0,41,0,0,0,0,1,2,4,51,0,0,0,0,1,1,0,75],[0,0,33,127,0,0,97,61,0,0,0,5,1,0,0,41,0,0,0,0,0,65,4,53,0,0,0,0,1,2,4,51],[0,0,0,0,1,1,0,75,0,0,33,127,0,0,97,61,0,0,0,96,10,0,0,57,0,2,0,7,0,0,0,61],[0,1,0,128,0,0,0,61,0,0,0,0,2,0,0,25,0,3,0,0,0,10,0,29,0,0,32,214,0,0,1,61],[0,0,0,6,2,0,0,41,0,0,0,1,2,32,0,57,0,0,0,4,1,0,0,41,0,0,0,0,1,1,4,51],[0,0,0,0,1,18,0,75,0,0,33,97,0,0,129,61,0,6,0,0,0,2,0,29,0,0,0,5,1,32,2,16],[0,0,0,5,1,16,0,41,0,0,0,0,6,1,4,51,0,0,0,0,33,6,4,52,0,0,0,0,19,1,4,52],[0,0,0,0,4,1,4,51,0,0,0,0,2,2,4,51,0,0,0,64,1,0,4,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,0,0,161,4,53,0,0,9,11,3,16,0,156,0,0,33,98,0,0,33,61],[0,0,0,128,3,16,0,57,0,0,0,64,0,48,4,63,0,0,8,213,3,32,0,156,0,0,8,213,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,8,213,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,8,213,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,33,1,159],[0,0,0,2,2,0,0,41,0,7,0,0,0,6,0,29,35,77,35,72,0,0,4,15,0,0,0,7,11,0,0,41],[0,0,0,3,10,0,0,41,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,8,213,0,48,1,157,0,0,8,213,5,48,1,152,0,0,0,1,4,0,0,41,0,0,0,0,3,10,0,25],[0,0,33,44,0,0,97,61,0,0,0,63,3,80,0,57,0,0,9,38,4,48,1,151,0,0,0,64,3,0,4,61],[0,0,0,0,4,67,0,25,0,0,0,0,6,52,0,75,0,0,0,0,6,0,0,25,0,0,0,1,6,0,64,57],[0,0,8,221,7,64,0,156,0,0,33,98,0,0,33,61,0,0,0,1,6,96,1,144,0,0,33,98,0,0,193,61],[0,0,0,64,0,64,4,63,0,0,0,0,4,83,4,54,0,0,0,5,6,80,2,114,0,0,33,29,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,132,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,33,21,0,0,65,61,0,0,0,31,5,80,1,144,0,0,33,44,0,0,97,61,0,0,0,5,6,96,2,16],[0,0,0,0,1,97,3,79,0,0,0,0,6,100,0,25,0,0,0,3,5,80,2,16,0,0,0,0,7,6,4,51],[0,0,0,0,7,87,1,207,0,0,0,0,7,87,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,113,1,159,0,0,0,0,0,22,4,53],[0,0,0,1,1,32,1,143,0,0,0,96,2,176,0,57,0,0,0,0,2,2,4,51,0,0,0,0,2,2,0,75],[0,0,0,0,2,0,0,25,0,0,0,1,2,0,192,57,0,0,0,1,2,32,1,143,0,0,0,0,2,33,0,75],[0,0,33,104,0,0,193,61,0,0,0,0,1,1,0,75,0,0,32,208,0,0,97,61,0,0,0,0,1,3,4,51],[0,0,0,63,2,16,0,140,0,0,8,251,6,0,0,65,0,0,0,0,2,0,0,25,0,0,0,0,2,6,32,25],[0,0,8,251,1,16,1,151,0,0,0,0,5,1,0,75,0,0,0,0,5,0,0,25,0,0,0,0,5,6,64,25],[0,0,8,251,1,16,0,156,0,0,0,0,5,2,192,25,0,0,0,0,1,5,0,75,0,0,33,125,0,0,97,61],[0,0,0,0,2,4,4,51,0,0,0,64,1,176,0,57,0,0,0,0,1,1,4,51,0,0,0,0,20,1,4,52],[0,0,0,0,2,66,0,75,0,0,33,79,0,0,193,61,0,0,0,0,1,1,4,51,0,0,0,64,2,48,0,57],[0,0,0,0,2,2,4,51,0,0,0,0,1,18,0,75,0,0,32,208,0,0,97,61,0,0,0,64,1,0,4,61],[0,0,0,68,2,16,0,57,0,0,9,52,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,36,2,16,0,57],[0,0,0,21,3,0,0,57,0,0,0,0,0,50,4,53,0,0,8,225,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,8,213,2,0,0,65],[0,0,8,213,3,16,0,156,0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16,0,0,8,253,1,16,1,199],[0,0,35,79,0,1,4,48,0,0,0,0,0,1,4,45,0,0,9,142,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,9,73,1,0,0,65,0,0,35,79,0,1,4,48],[0,0,0,64,1,0,4,61,0,0,0,100,2,16,0,57,0,0,9,79,3,0,0,65,0,0,0,0,0,50,4,53],[0,0,0,68,2,16,0,57,0,0,9,80,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,8,225,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,8,213,2,0,0,65],[0,0,8,213,3,16,0,156,0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16,0,0,9,68,1,16,1,199],[0,0,35,79,0,1,4,48,0,0,0,0,1,0,0,25,0,0,35,79,0,1,4,48,0,0,9,142,1,0,0,65],[0,0,0,0,0,16,4,53,0,0,0,50,1,0,0,57,0,0,33,101,0,0,1,61,0,7,0,0,0,0,0,2],[0,0,0,64,1,0,4,61,0,4,0,0,0,1,0,29,0,0,9,174,1,16,0,156,0,0,34,150,0,0,129,61],[0,0,0,4,2,0,0,41,0,0,0,64,1,32,0,57,0,0,0,64,0,16,4,63,0,0,0,1,1,0,0,57],[0,0,0,0,2,18,4,54,0,5,0,0,0,2,0,29,0,0,0,0,2,0,0,49,0,0,0,2,3,32,3,103],[0,0,0,64,2,0,4,61,0,0,9,11,4,32,0,156,0,0,34,150,0,0,33,61,0,0,0,128,4,32,0,57],[0,0,0,64,0,64,4,63,0,0,9,0,5,32,0,156,0,0,34,150,0,0,33,61,0,0,0,192,5,32,0,57],[0,0,0,64,0,80,4,63,0,0,0,0,5,0,0,25,0,0,0,0,6,4,0,25,0,0,0,5,7,80,2,16],[0,0,0,0,7,115,3,79,0,0,0,0,7,7,4,59,0,0,0,0,6,118,4,54,0,0,0,1,5,80,0,57],[0,0,0,2,7,80,0,140,0,0,33,155,0,0,65,61,0,0,0,0,4,66,4,54,0,0,0,64,5,0,4,61],[0,0,9,32,6,80,0,156,0,0,34,150,0,0,33,61,0,0,0,64,6,80,0,57,0,0,0,64,0,96,4,63],[0,0,0,0,6,0,0,25,0,0,0,0,7,5,0,25,0,0,0,5,8,96,2,16,0,0,0,0,8,131,3,79],[0,0,0,0,8,8,4,59,0,0,0,0,7,135,4,54,0,0,0,1,6,96,0,57,0,0,0,2,8,96,0,140],[0,0,33,170,0,0,65,61,0,0,0,0,0,84,4,53,0,0,0,64,4,0,4,61,0,0,9,32,5,64,0,156],[0,0,34,150,0,0,33,61,0,0,0,64,5,64,0,57,0,0,0,64,0,80,4,63,0,0,0,0,5,0,0,25],[0,0,0,0,6,4,0,25,0,0,0,5,7,80,2,16,0,0,0,0,7,115,3,79,0,0,0,0,7,7,4,59],[0,0,0,0,6,118,4,54,0,0,0,1,5,80,0,57,0,0,0,2,7,80,0,140,0,0,33,185,0,0,65,61],[0,0,0,64,3,32,0,57,0,0,0,0,0,67,4,53,0,0,0,96,3,32,0,57,0,0,0,0,0,3,4,53],[0,0,0,5,3,0,0,41,0,0,0,0,0,35,4,53,0,0,0,64,2,0,4,61,0,0,9,32,3,32,0,156],[0,0,34,150,0,0,33,61,0,0,0,64,3,32,0,57,0,0,0,64,0,48,4,63,0,0,0,32,3,32,0,57],[0,0,9,40,4,0,0,65,0,0,0,0,0,67,4,53,0,0,9,41,3,0,0,65,0,0,0,0,0,50,4,53],[0,0,0,64,3,0,4,61,0,0,9,32,4,48,0,156,0,0,34,150,0,0,33,61,0,0,0,64,4,48,0,57],[0,0,0,64,0,64,4,63,0,0,0,32,4,48,0,57,0,0,9,42,5,0,0,65,0,0,0,0,0,84,4,53],[0,0,9,43,4,0,0,65,0,0,0,0,0,67,4,53,0,0,0,64,4,0,4,61,0,0,9,32,5,64,0,156],[0,0,34,150,0,0,33,61,0,0,0,64,5,64,0,57,0,0,0,64,0,80,4,63,0,0,0,32,5,64,0,57],[0,0,9,44,6,0,0,65,0,0,0,0,0,101,4,53,0,0,9,45,5,0,0,65,0,0,0,0,0,84,4,53],[0,0,0,64,5,0,4,61,0,0,9,11,6,80,0,156,0,0,34,150,0,0,33,61,0,0,0,128,6,80,0,57],[0,0,0,64,0,96,4,63,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,65,4,53,0,0,0,32,1,80,0,57,0,0,0,0,0,49,4,53,0,0,0,0,0,37,4,53],[0,0,0,4,2,0,0,41,0,0,0,0,1,2,4,51,0,0,0,0,1,1,0,75,0,0,34,179,0,0,97,61],[0,0,0,5,1,0,0,41,0,0,0,0,0,81,4,53,0,0,0,0,1,2,4,51,0,0,0,0,1,1,0,75],[0,0,34,179,0,0,97,61,0,0,0,128,10,0,0,57,0,2,0,6,0,0,0,61,0,1,0,96,0,0,0,61],[0,0,0,0,2,0,0,25,0,3,0,0,0,10,0,29,0,0,34,5,0,0,1,61,0,0,0,6,2,0,0,41],[0,0,0,1,2,32,0,57,0,0,0,4,1,0,0,41,0,0,0,0,1,1,4,51,0,0,0,0,1,18,0,75],[0,0,34,149,0,0,129,61,0,6,0,0,0,2,0,29,0,0,0,5,1,32,2,16,0,0,0,5,1,16,0,41],[0,0,0,0,7,1,4,51,0,0,0,0,33,7,4,52,0,0,0,32,3,16,0,57,0,0,0,0,4,1,4,51],[0,0,0,0,3,3,4,51,0,0,0,0,1,2,4,51,0,0,0,0,18,1,4,52,0,0,0,0,5,1,4,51],[0,0,0,64,1,0,4,61,0,0,0,128,6,16,0,57,0,0,0,0,0,86,4,53,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,50,4,53,0,0,0,32,2,16,0,57],[0,0,0,0,0,66,4,53,0,0,0,0,0,161,4,53,0,0,8,239,3,16,0,156,0,0,34,150,0,0,33,61],[0,0,0,160,3,16,0,57,0,0,0,64,0,48,4,63,0,0,8,213,3,32,0,156,0,0,8,213,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,8,213,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,8,213,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,33,1,159],[0,0,0,2,2,0,0,41,0,7,0,0,0,7,0,29,35,77,35,72,0,0,4,15,0,0,0,7,11,0,0,41],[0,0,0,3,10,0,0,41,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,8,213,0,48,1,157,0,0,8,213,5,48,1,152,0,0,0,0,4,10,0,25,0,0,0,1,3,0,0,41],[0,0,34,96,0,0,97,61,0,0,0,63,3,80,0,57,0,0,9,38,4,48,1,151,0,0,0,64,3,0,4,61],[0,0,0,0,4,67,0,25,0,0,0,0,6,52,0,75,0,0,0,0,6,0,0,25,0,0,0,1,6,0,64,57],[0,0,8,221,7,64,0,156,0,0,34,150,0,0,33,61,0,0,0,1,6,96,1,144,0,0,34,150,0,0,193,61],[0,0,0,64,0,64,4,63,0,0,0,0,4,83,4,54,0,0,0,5,6,80,2,114,0,0,34,81,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,132,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,34,73,0,0,65,61,0,0,0,31,5,80,1,144,0,0,34,96,0,0,97,61,0,0,0,5,6,96,2,16],[0,0,0,0,1,97,3,79,0,0,0,0,6,100,0,25,0,0,0,3,5,80,2,16,0,0,0,0,7,6,4,51],[0,0,0,0,7,87,1,207,0,0,0,0,7,87,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,113,1,159,0,0,0,0,0,22,4,53],[0,0,0,1,1,32,1,143,0,0,0,96,2,176,0,57,0,0,0,0,2,2,4,51,0,0,0,0,2,2,0,75],[0,0,0,0,2,0,0,25,0,0,0,1,2,0,192,57,0,0,0,1,2,32,1,143,0,0,0,0,2,33,0,75],[0,0,34,156,0,0,193,61,0,0,0,0,1,1,0,75,0,0,33,255,0,0,97,61,0,0,0,0,1,3,4,51],[0,0,0,63,2,16,0,140,0,0,8,251,6,0,0,65,0,0,0,0,2,0,0,25,0,0,0,0,2,6,32,25],[0,0,8,251,1,16,1,151,0,0,0,0,5,1,0,75,0,0,0,0,5,0,0,25,0,0,0,0,5,6,64,25],[0,0,8,251,1,16,0,156,0,0,0,0,5,2,192,25,0,0,0,0,1,5,0,75,0,0,34,177,0,0,97,61],[0,0,0,0,2,4,4,51,0,0,0,64,1,176,0,57,0,0,0,0,1,1,4,51,0,0,0,0,20,1,4,52],[0,0,0,0,2,66,0,75,0,0,34,131,0,0,193,61,0,0,0,0,1,1,4,51,0,0,0,64,2,48,0,57],[0,0,0,0,2,2,4,51,0,0,0,0,1,18,0,75,0,0,33,255,0,0,97,61,0,0,0,64,1,0,4,61],[0,0,0,68,2,16,0,57,0,0,9,46,3,0,0,65,0,0,0,0,0,50,4,53,0,0,0,36,2,16,0,57],[0,0,0,21,3,0,0,57,0,0,0,0,0,50,4,53,0,0,8,225,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,8,213,2,0,0,65],[0,0,8,213,3,16,0,156,0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16,0,0,8,253,1,16,1,199],[0,0,35,79,0,1,4,48,0,0,0,0,0,1,4,45,0,0,9,142,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,9,73,1,0,0,65,0,0,35,79,0,1,4,48],[0,0,0,64,1,0,4,61,0,0,0,100,2,16,0,57,0,0,9,79,3,0,0,65,0,0,0,0,0,50,4,53],[0,0,0,68,2,16,0,57,0,0,9,81,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,8,225,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,8,213,2,0,0,65],[0,0,8,213,3,16,0,156,0,0,0,0,1,2,128,25,0,0,0,64,1,16,2,16,0,0,9,68,1,16,1,199],[0,0,35,79,0,1,4,48,0,0,0,0,1,0,0,25,0,0,35,79,0,1,4,48,0,0,9,142,1,0,0,65],[0,0,0,0,0,16,4,53,0,0,0,50,1,0,0,57,0,0,34,153,0,0,1,61,0,1,0,0,0,0,0,2],[0,0,0,64,7,0,4,61,0,0,8,247,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,34,204,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,34,197,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,8,213,2,0,0,65,0,0,8,213,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,8,213,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,8,213,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,35,77,35,67,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,8,213,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,34,246,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,34,238,0,0,65,61,0,0,0,0,7,5,0,75,0,0,35,5,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,35,23,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,8,221,4,16,0,156],[0,0,35,58,0,0,33,61,0,0,0,1,2,32,1,144,0,0,35,58,0,0,193,61,0,0,0,64,0,16,4,63],[0,0,0,31,1,48,0,140,0,0,35,64,0,0,161,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,35,36,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,35,28,0,0,65,61],[0,0,0,0,6,4,0,75,0,0,35,51,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,8,213,1,0,0,65],[0,0,8,213,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,35,79,0,1,4,48,0,0,9,142,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,9,73,1,0,0,65,0,0,35,79,0,1,4,48],[0,0,0,0,1,0,0,25,0,0,35,79,0,1,4,48,0,0,0,0,0,1,4,47,0,0,35,70,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,35,75,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,35,77,0,0,4,50,0,0,35,78,0,1,4,46,0,0,35,79,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],[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],[215,182,153,1,5,113,145,1,218,190,183,113,68,242,163,56,92,128,51,172,211,175,151,233,66,58,105,94,129,173,30,181],[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],[215,182,153,1,5,113,145,1,218,190,183,113,68,242,163,56,92,128,51,172,211,175,151,233,66,58,105,94,129,173,30,180],[215,182,153,1,5,113,145,1,218,190,183,113,68,242,163,56,92,128,51,172,211,175,151,233,66,58,105,94,129,173,30,183],[215,182,153,1,5,113,145,1,218,190,183,113,68,242,163,56,92,128,51,172,211,175,151,233,66,58,105,94,129,173,30,182],[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],[222,36,37,129,75,195,76,70,242,125,90,200,53,42,194,120,152,251,22,36,71,137,39,215,0,176,92,214,240,227,180,58],[197,97,156,222,156,163,223,139,22,168,181,115,26,106,182,110,82,122,176,220,60,175,49,157,70,253,64,248,50,252,227,74],[172,234,161,127,251,123,250,254,21,226,192,38,128,20,0,86,72,84,201,131,154,22,101,182,95,24,178,40,221,85,235,205],[0,0,0,0,0,0,0,0,0,0,0,0,124,173,80,73,162,188,160,49,198,228,85,140,144,41,227,102,58,220,148,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,255,255,255,255,255,255,255,191],[69,104,43,3,125,33,210,53,189,14,214,16,60,226,103,78,92,142,152,58,136,191,208,156,132,122,99,36,231,124,26,214],[199,227,137,52,177,80,30,100,229,192,189,10,179,91,51,84,82,11,110,136,184,26,31,6,60,55,0,124,101,183,239,213],[175,169,136,142,53,29,253,239,216,98,148,91,13,163,60,158,161,222,144,122,232,48,41,36,56,223,31,161,132,68,119,119],[143,59,125,92,24,127,138,187,224,88,29,171,90,55,100,79,235,211,94,166,212,254,50,19,40,143,157,99,171,130,166,177],[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,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,1,255,255,255,224],[77,79,68,69,88,80,32,114,101,115,117,108,116,32,109,105,115,109,97,116,99,104,0,0,0,0,0,0,0,0,0,0],[40,53,30,18,249,33,149,55,252,141,108,172,124,100,68,189,121,128,57,13,13,62,32,63,224,216,193,176,216,17,153,80],[9,156,7,201,221,17,7,185,201,176,131,109,167,236,251,114,2,209,11,234,27,141,30,136,188,81,202,71,111,35,217,29],[11,214,138,124,170,7,246,173,190,203,240,111,177,240,157,50,183,190,209,54,154,42,88,5,141,21,33,190,189,130,114,172],[33,225,119,169,133,195,219,142,241,214,112,98,153,114,192,7,174,144,199,143,177,110,48,17,222,29,8,245,164,76,182,85],[25,238,122,92,232,51,139,188,244,247,76,61,62,199,157,54,53,232,55,203,114,62,230,160,250,153,38,158,60,109,126,35],[37,190,186,122,185,3,214,65,215,126,88,1,202,77,105,167,165,129,53,153,89,197,210,98,19,1,221,218,251,20,80,68],[69,67,65,68,68,32,114,101,115,117,108,116,32,109,105,115,109,97,116,99,104,0,0,0,0,0,0,0,0,0,0,0],[15,81,138,226,150,237,108,242,201,225,68,155,74,236,37,96,84,200,175,17,253,51,158,137,55,126,64,55,87,90,21,110],[31,42,159,216,171,131,60,79,133,237,32,155,24,114,41,237,81,197,16,50,156,218,112,11,209,187,110,52,131,41,12,76],[41,165,65,16,12,135,182,5,17,3,100,219,131,46,153,41,105,49,50,246,230,91,159,225,199,46,192,80,117,168,157,53],[24,251,56,3,94,249,168,100,225,137,33,16,25,209,49,145,112,217,15,22,218,66,157,86,78,247,27,31,114,164,80,51],[30,45,171,103,105,133,253,195,226,40,207,188,232,171,86,188,146,249,93,53,70,68,250,170,86,223,200,149,102,26,252,174],[69,67,77,85,76,32,114,101,115,117,108,116,32,109,105,115,109,97,116,99,104,0,0,0,0,0,0,0,0,0,0,0],[44,15,0,31,82,17,12,207,230,145,8,146,73,38,228,95,11,12,134,141,240,231,189,225,254,22,211,36,45,199,21,246],[44,244,68,153,213,210,123,177,134,48,139,122,247,175,2,172,91,201,238,182,163,209,71,193,134,178,31,177,183,110,24,218],[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,69],[47,224,46,71,136,117,7,173,240,255,23,67,203,172,107,162,145,230,111,89,190,107,215,99,149,11,177,96,65,160,168,94],[43,211,104,226,131,129,232,236,203,95,168,31,194,108,243,240,72,238,169,171,253,216,93,126,211,171,54,152,214,62,79,144],[34,96,104,69,255,24,103,147,145,78,3,226,29,245,68,195,79,254,47,47,53,4,222,138,121,217,21,158,202,45,152,217],[31,177,155,180,118,246,185,228,78,42,50,35,77,168,33,47,97,205,99,145,147,84,188,6,174,243,30,60,250,255,62,188],[35,168,235,11,9,150,37,44,181,72,164,72,125,169,123,2,66,46,188,14,131,70,19,249,84,222,108,126,10,253,193,252],[42,35,175,154,92,226,186,39,150,193,244,228,83,163,112,235,10,248,194,18,217,220,154,205,143,192,44,46,144,123,174,162],[9,16,88,163,20,24,34,152,87,51,203,221,223,237,15,216,214,193,4,233,233,239,244,11,245,171,254,249,171,22,59,199],[25,113,255,4,113,176,159,169,60,170,241,60,191,68,60,26,237,224,156,196,50,143,90,98,170,212,95,64,236,19,62,180],[71,49,32,97,110,100,32,71,50,32,97,109,111,117,110,116,115,32,109,117,115,116,32,109,97,116,99,104,0,0,0,0],[69,67,80,65,73,82,73,78,71,32,114,101,115,117,108,116,32,109,105,115,109,97,116,99,104,0,0,0,0,0,0,0],[115,32,115,116,97,116,117,115,32,109,105,115,109,97,116,99,104,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[69,67,80,65,73,82,73,78,71,32,112,114,101,99,111,109,112,105,108,101,32,99,97,108,108,32,115,117,99,99,101,115],[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],[211,243,158,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],[66,32,205,118,0,0,0,0,0,0,0,0,0,0,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,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],[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,36,0,0,0,0,0,0,0,0,0,0,0,0],[67,111,100,101,79,114,97,99,108,101,32,99,97,108,108,32,102,97,105,108,101,100,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],[68,101,99,111,109,109,105,116,109,101,110,116,32,99,111,115,116,32,119,97,115,110,116,32,97,109,111,114,116,105,122,101],[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],[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],[97,116,117,115,32,109,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],[69,67,77,85,76,32,112,114,101,99,111,109,112,105,108,101,32,99,97,108,108,32,115,117,99,99,101,115,115,32,115,116],[69,67,65,68,68,32,112,114,101,99,111,109,112,105,108,101,32,99,97,108,108,32,115,117,99,99,101,115,115,32,115,116],[116,97,116,117,115,32,109,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],[77,79,68,69,88,80,32,112,114,101,99,111,109,112,105,108,101,32,99,97,108,108,32,115,117,99,99,101,115,115,32,115],[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],[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],[0,0,0,0,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,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,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,230,246,42,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,251,56,170,85],[0,0,0,0,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,251,241,183,125],[0,0,0,0,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,247,199,60,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,211,243,158,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,211,243,158,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,225,203,234,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,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,208,127,66,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,171,37,105,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,184,107,61,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,184,107,61,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,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,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,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,147,174,83,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,147,174,83,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,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,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,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,66,32,205,117],[0,0,0,0,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,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,103,70,249,29],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,103,70,249,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,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,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,87,154,227,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,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,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,66,32,205,118],[0,0,0,0,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,25,216,172,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,0,0,0,0,42,187,215,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,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,51,208,170,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,25,216,172,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,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,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,5,77,67,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,6,183,38,49],[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,104,101,32,118,97,108,117,101,32,105,110,32,116,114,97,110,115,105,101,110,116,32,115,116,111,114,97,103,101,32,105],[115,32,110,111,116,32,119,104,97,116,32,119,97,115,32,101,120,112,101,99,116,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,0,0,132,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],[84,104,105,115,32,109,101,116,104,111,100,32,97,108,119,97,121,115,32,114,101,118,101,114,116,115,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],[103,70,249,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],[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],[208,127,66,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],[84,104,101,32,99,97,108,108,32,115,104,111,117,108,100,32,104,97,118,101,32,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,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,64],[246,238,190,171,224,135,139,78,225,22,236,14,189,243,137,181,100,71,233,145,192,87,59,242,118,52,253,55,47,152,163,196],[112,134,164,241,173,132,202,164,176,88,116,111,203,82,28,181,97,129,88,209,207,156,76,91,121,198,230,11,97,218,64,154],[210,162,228,96,106,47,165,99,156,127,151,232,109,33,140,136,82,91,164,227,17,75,162,206,135,176,211,80,117,20,194,101],[28,203,233,28,7,95,199,244,240,51,191,162,72,219,143,204,211,86,93,233,75,191,177,47,60,89,255,70,194,113,191,131],[206,64,20,198,136,17,249,162,26,31,219,44,14,97,19,224,109,183,202,147,183,64,78,120,220,124,205,92,168,154,76,169],[255,255,255,255,0,0,0,0,255,255,255,255,255,255,255,255,188,230,250,173,167,23,158,132,243,185,202,194,252,99,37,81],[98,117,116,32,115,117,99,99,101,101,100,101,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[80,50,53,54,32,86,101,114,105,102,121,32,115,104,111,117,108,100,32,104,97,118,101,32,102,97,105,108,101,100,44,32],[45,93,27,158,149,208,90,157,99,128,104,23,146,222,115,119,106,139,85,202,149,203,251,182,108,8,247,114,135,78,98,236],[80,50,53,54,32,86,101,114,105,102,121,32,104,97,115,32,102,97,105,108,101,100,0,0,0,0,0,0,0,0,0,0],[100,44,32,98,117,116,32,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],[80,50,53,54,32,86,101,114,105,102,121,32,115,104,111,117,108,100,32,104,97,118,101,32,115,117,99,99,101,101,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,32,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],[0,0,0,0,0,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,255],[112,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],[32,116,104,101,32,101,120,112,101,99,116,101,100,32,104,97,115,104,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[82,101,116,117,114,110,101,100,32,98,121,116,101,99,111,100,101,32,100,111,101,115,32,110,111,116,32,109,97,116,99,104],[116,119,101,101,110,32,116,119,111,32,99,97,108,108,115,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[68,101,99,111,109,109,105,116,109,101,110,116,32,99,111,115,116,32,119,97,115,110,116,32,101,113,117,97,108,32,98,101],[112,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],[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],[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,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],[154,49,119,0,234,109,123,153,174,120,210,160,96,11,18,177,120,241,14,225,251,52,118,106,222,41,25,155,236,182,221,214]]} \ No newline at end of file diff --git a/crates/zkevm_test_harness/src/tests/mod.rs b/crates/zkevm_test_harness/src/tests/mod.rs index 3c206a4..8958c96 100644 --- a/crates/zkevm_test_harness/src/tests/mod.rs +++ b/crates/zkevm_test_harness/src/tests/mod.rs @@ -251,6 +251,38 @@ pub(crate) fn base_test_circuit(circuit: ZkSyncBaseLayerCircuit) { let _ = cs.pad_and_shrink(); cs.into_assembly::() } + ZkSyncBaseLayerCircuit::Modexp(inner) => { + let builder = inner.configure_builder_proxy(builder); + let mut cs = builder.build(num_vars.unwrap()); + inner.add_tables_proxy(&mut cs); + inner.synthesize_proxy(&mut cs); + let _ = cs.pad_and_shrink(); + cs.into_assembly::() + } + ZkSyncBaseLayerCircuit::ECAdd(inner) => { + let builder = inner.configure_builder_proxy(builder); + let mut cs = builder.build(num_vars.unwrap()); + inner.add_tables_proxy(&mut cs); + inner.synthesize_proxy(&mut cs); + let _ = cs.pad_and_shrink(); + cs.into_assembly::() + } + ZkSyncBaseLayerCircuit::ECMul(inner) => { + let builder = inner.configure_builder_proxy(builder); + let mut cs = builder.build(num_vars.unwrap()); + inner.add_tables_proxy(&mut cs); + inner.synthesize_proxy(&mut cs); + let _ = cs.pad_and_shrink(); + cs.into_assembly::() + } + ZkSyncBaseLayerCircuit::ECPairing(inner) => { + let builder = inner.configure_builder_proxy(builder); + let mut cs = builder.build(num_vars.unwrap()); + inner.add_tables_proxy(&mut cs); + inner.synthesize_proxy(&mut cs); + let _ = cs.pad_and_shrink(); + cs.into_assembly::() + } }; let is_satisfied = cs.check_if_satisfied(&worker); @@ -315,7 +347,11 @@ pub(crate) fn test_recursive_circuit(circuit: ZkSyncRecursiveLayerCircuit) { | ZkSyncRecursiveLayerCircuit::LeafLayerCircuitForL1MessagesHasher(inner) | ZkSyncRecursiveLayerCircuit::LeafLayerCircuitForTransientStorageSorter(inner) | ZkSyncRecursiveLayerCircuit::LeafLayerCircuitForSecp256r1Verify(inner) - | ZkSyncRecursiveLayerCircuit::LeafLayerCircuitForEIP4844Repack(inner) => { + | ZkSyncRecursiveLayerCircuit::LeafLayerCircuitForEIP4844Repack(inner) + | ZkSyncRecursiveLayerCircuit::LeafLayerCircuitForModexp(inner) + | ZkSyncRecursiveLayerCircuit::LeafLayerCircuitForECAdd(inner) + | ZkSyncRecursiveLayerCircuit::LeafLayerCircuitForECMul(inner) + | ZkSyncRecursiveLayerCircuit::LeafLayerCircuitForECPairing(inner) => { let builder = inner.configure_builder_proxy(builder); let mut cs = builder.build(num_vars.unwrap()); inner.add_tables(&mut cs); diff --git a/crates/zkevm_test_harness/src/tests/run_manually.rs b/crates/zkevm_test_harness/src/tests/run_manually.rs index e3127c2..8c21a7c 100644 --- a/crates/zkevm_test_harness/src/tests/run_manually.rs +++ b/crates/zkevm_test_harness/src/tests/run_manually.rs @@ -238,6 +238,10 @@ pub(crate) fn run_with_options(entry_point_bytecode: Vec<[u8; 32]>, options: Opt cycles_per_ecrecover_circuit: 1, cycles_per_secp256r1_verify_circuit: 1, cycles_per_transient_storage_sorter: 4, + cycles_per_modexp_circuit: 1, + cycles_per_ecadd_circuit: 1, + cycles_per_ecmul_circuit: 1, + cycles_per_ecpairing_circuit: 1, limit_for_l1_messages_pudata_hasher: 8, }; diff --git a/crates/zkevm_test_harness/src/witness/artifacts.rs b/crates/zkevm_test_harness/src/witness/artifacts.rs index 1f07fbc..733c4fa 100644 --- a/crates/zkevm_test_harness/src/witness/artifacts.rs +++ b/crates/zkevm_test_harness/src/witness/artifacts.rs @@ -1,5 +1,7 @@ use crate::boojum::field::SmallField; use crate::boojum::gadgets::queue::QueueStateWitness; +use crate::witness::aux_data_structs::one_per_circuit_accumulator::CircuitsEntryAccumulatorSparse; +use crate::witness::aux_data_structs::per_circuit_accumulator::PerCircuitAccumulatorSparse; use crate::zk_evm::aux_structures::{DecommittmentQuery, LogQuery, MemoryQuery}; use crate::zkevm_circuits::base_structures::vm_state::FULL_SPONGE_QUEUE_STATE_WIDTH; use crate::zkevm_circuits::code_unpacker_sha256::input::CodeDecommitterCircuitInstanceWitness; @@ -12,15 +14,20 @@ use crate::zkevm_circuits::sort_decommittment_requests::input::CodeDecommittment use crate::zkevm_circuits::storage_validity_by_grand_product::input::StorageDeduplicatorInstanceWitness; use circuit_definitions::encodings::decommittment_request::DecommittmentQueueState; use circuit_definitions::encodings::*; +use circuit_definitions::zk_evm::zkevm_opcode_defs::{ + ECADD_PRECOMPILE_FORMAL_ADDRESS, ECMUL_PRECOMPILE_FORMAL_ADDRESS, + ECPAIRING_PRECOMPILE_FORMAL_ADDRESS, MODEXP_PRECOMPILE_FORMAL_ADDRESS, +}; +use circuit_definitions::zkevm_circuits::bn254::ec_add::input::EcAddCircuitInstanceWitness; +use circuit_definitions::zkevm_circuits::bn254::ec_mul::input::EcMulCircuitInstanceWitness; +use circuit_definitions::zkevm_circuits::bn254::ec_pairing::input::EcPairingCircuitInstanceWitness; +use circuit_definitions::zkevm_circuits::modexp::input::ModexpCircuitInstanceWitness; use circuit_definitions::zkevm_circuits::secp256r1_verify::Secp256r1VerifyCircuitInstanceWitness; use circuit_definitions::zkevm_circuits::transient_storage_validity_by_grand_product::input::TransientStorageDeduplicatorInstanceWitness; use circuit_sequencer_api::geometry_config::GeometryConfig; use derivative::Derivative; use zkevm_circuits::fsm_input_output::ClosedFormInputCompactFormWitness; -use crate::witness::aux_data_structs::one_per_circuit_accumulator::CircuitsEntryAccumulatorSparse; -use crate::witness::aux_data_structs::per_circuit_accumulator::PerCircuitAccumulatorSparse; - use crate::zk_evm::zkevm_opcode_defs::system_params::{ EVENT_AUX_BYTE, L1_MESSAGE_AUX_BYTE, PRECOMPILE_AUX_BYTE, STORAGE_AUX_BYTE, TRANSIENT_STORAGE_AUX_BYTE, @@ -57,6 +64,10 @@ pub struct DemuxedPrecompilesLogQueries { pub sha256: Vec, pub ecrecover: Vec, pub secp256r1_verify: Vec, + pub modexp: Vec, + pub ecadd: Vec, + pub ecmul: Vec, + pub ecpairing: Vec, } impl DemuxedLogQueries { @@ -84,20 +95,32 @@ impl DemuxedLogQueries { self.io.event.push(query); } PRECOMPILE_AUX_BYTE => { - let precomplies = &mut self.precompiles; + let precompiles = &mut self.precompiles; assert!(!query.rollback); match query.address { a if a == *KECCAK256_ROUND_FUNCTION_PRECOMPILE_FORMAL_ADDRESS => { - precomplies.keccak.push(query); + precompiles.keccak.push(query); } a if a == *SHA256_ROUND_FUNCTION_PRECOMPILE_FORMAL_ADDRESS => { - precomplies.sha256.push(query); + precompiles.sha256.push(query); } a if a == *ECRECOVER_INNER_FUNCTION_PRECOMPILE_FORMAL_ADDRESS => { - precomplies.ecrecover.push(query); + precompiles.ecrecover.push(query); } a if a == *SECP256R1_VERIFY_INNER_FUNCTION_PRECOMPILE_FORMAL_ADDRESS => { - precomplies.secp256r1_verify.push(query); + precompiles.secp256r1_verify.push(query); + } + a if a == *MODEXP_PRECOMPILE_FORMAL_ADDRESS => { + precompiles.modexp.push(query); + } + a if a == *ECADD_PRECOMPILE_FORMAL_ADDRESS => { + precompiles.ecadd.push(query); + } + a if a == *ECMUL_PRECOMPILE_FORMAL_ADDRESS => { + precompiles.ecmul.push(query); + } + a if a == *ECPAIRING_PRECOMPILE_FORMAL_ADDRESS => { + precompiles.ecpairing.push(query); } _ => { // just burn ergs @@ -176,17 +199,33 @@ pub(crate) struct MemoryCircuitsArtifacts { FirstAndLastCircuitWitness>, Vec>, ), + pub modexp_circuits_data: ( + FirstAndLastCircuitWitness>, + Vec>, + ), + pub ecadd_circuits_data: ( + FirstAndLastCircuitWitness>, + Vec>, + ), + pub ecmul_circuits_data: ( + FirstAndLastCircuitWitness>, + Vec>, + ), + pub ecpairing_circuits_data: ( + FirstAndLastCircuitWitness>, + Vec>, + ), } use crate::witness::aux_data_structs::one_per_circuit_accumulator::LastPerCircuitAccumulator; use super::postprocessing::observable_witness::{ - CodeDecommitterObservableWitness, EcrecoverObservableWitness, - EventsDeduplicatorObservableWitness, Keccak256RoundFunctionObservableWitness, - LinearHasherObservableWitness, RamPermutationObservableWitness, - Secp256r1VerifyObservableWitness, Sha256RoundFunctionObservableWitness, - StorageApplicationObservableWitness, StorageDeduplicatorObservableWitness, - TransientStorageDeduplicatorObservableWitness, + CodeDecommitterObservableWitness, ECAddObservableWitness, ECMulObservableWitness, + ECPairingObservableWitness, EcrecoverObservableWitness, EventsDeduplicatorObservableWitness, + Keccak256RoundFunctionObservableWitness, LinearHasherObservableWitness, + ModexpObservableWitness, RamPermutationObservableWitness, Secp256r1VerifyObservableWitness, + Sha256RoundFunctionObservableWitness, StorageApplicationObservableWitness, + StorageDeduplicatorObservableWitness, TransientStorageDeduplicatorObservableWitness, }; use super::postprocessing::FirstAndLastCircuitWitness; diff --git a/crates/zkevm_test_harness/src/witness/individual_circuits/log_demux.rs b/crates/zkevm_test_harness/src/witness/individual_circuits/log_demux.rs index 1a3db40..4ff98d7 100644 --- a/crates/zkevm_test_harness/src/witness/individual_circuits/log_demux.rs +++ b/crates/zkevm_test_harness/src/witness/individual_circuits/log_demux.rs @@ -24,14 +24,18 @@ use oracle::WitnessGenerationArtifact; use zk_evm::zkevm_opcode_defs::SECP256R1_VERIFY_PRECOMPILE_ADDRESS; use crate::zk_evm::aux_structures::LogQuery as LogQuery_; -use std::collections::HashMap; - use crate::zk_evm::zkevm_opcode_defs::system_params::{ ECRECOVER_INNER_FUNCTION_PRECOMPILE_FORMAL_ADDRESS, KECCAK256_ROUND_FUNCTION_PRECOMPILE_FORMAL_ADDRESS, SECP256R1_VERIFY_INNER_FUNCTION_PRECOMPILE_FORMAL_ADDRESS, SHA256_ROUND_FUNCTION_PRECOMPILE_FORMAL_ADDRESS, }; +use crate::zk_evm::zkevm_opcode_defs::MODEXP_PRECOMPILE_FORMAL_ADDRESS; +use circuit_definitions::zk_evm::zkevm_opcode_defs::{ + ECADD_PRECOMPILE_FORMAL_ADDRESS, ECMUL_PRECOMPILE_FORMAL_ADDRESS, + ECPAIRING_PRECOMPILE_FORMAL_ADDRESS, +}; +use std::collections::HashMap; use crate::zk_evm::zkevm_opcode_defs::system_params::{ EVENT_AUX_BYTE, L1_MESSAGE_AUX_BYTE, PRECOMPILE_AUX_BYTE, STORAGE_AUX_BYTE, @@ -48,6 +52,10 @@ pub(crate) struct PrecompilesQueuesStates { pub sha256: LogQueueStates, pub ecrecover: LogQueueStates, pub secp256r1_verify: LogQueueStates, + pub modexp: LogQueueStates, + pub ecadd: LogQueueStates, + pub ecmul: LogQueueStates, + pub ecpairing: LogQueueStates, } pub(crate) struct IOLogsQueuesStates { @@ -81,6 +89,10 @@ impl DemuxedQueuesStatesSimulator { DemuxOutput::Events => geometry.cycles_per_events_or_l1_messages_sorter, DemuxOutput::L2ToL1Messages => geometry.cycles_per_events_or_l1_messages_sorter, DemuxOutput::PorterStorage => 0, // NOT IMPLEMENTED + DemuxOutput::Modexp => geometry.cycles_per_modexp_circuit, + DemuxOutput::ECAdd => geometry.cycles_per_ecadd_circuit, + DemuxOutput::ECMul => geometry.cycles_per_ecmul_circuit, + DemuxOutput::ECPairing => geometry.cycles_per_ecpairing_circuit, }; let state = if let DemuxOutput::PorterStorage = output { @@ -137,6 +149,10 @@ impl DemuxedQueuesStatesSimulator { a if a == *SECP256R1_VERIFY_INNER_FUNCTION_PRECOMPILE_FORMAL_ADDRESS => { Some(DemuxOutput::Secp256r1Verify) } + a if a == *MODEXP_PRECOMPILE_FORMAL_ADDRESS => Some(DemuxOutput::Modexp), + a if a == *ECADD_PRECOMPILE_FORMAL_ADDRESS => Some(DemuxOutput::ECAdd), + a if a == *ECMUL_PRECOMPILE_FORMAL_ADDRESS => Some(DemuxOutput::ECMul), + a if a == *ECPAIRING_PRECOMPILE_FORMAL_ADDRESS => Some(DemuxOutput::ECPairing), _ => None, } } @@ -168,6 +184,10 @@ impl DemuxedQueuesStatesSimulator { sha256: queries.remove(&DemuxOutput::Sha256).unwrap(), ecrecover: queries.remove(&DemuxOutput::ECRecover).unwrap(), secp256r1_verify: queries.remove(&DemuxOutput::Secp256r1Verify).unwrap(), + modexp: queries.remove(&DemuxOutput::Modexp).unwrap(), + ecadd: queries.remove(&DemuxOutput::ECAdd).unwrap(), + ecmul: queries.remove(&DemuxOutput::ECMul).unwrap(), + ecpairing: queries.remove(&DemuxOutput::ECPairing).unwrap(), }, ) } @@ -281,6 +301,16 @@ pub(crate) fn process_logs_demux_and_make_circuits( DemuxOutput::Secp256r1Verify, demuxed_queues.precompiles.secp256r1_verify.iter(), ); + queries_iterators.insert( + DemuxOutput::Modexp, + demuxed_queues.precompiles.modexp.iter(), + ); + queries_iterators.insert(DemuxOutput::ECAdd, demuxed_queues.precompiles.ecadd.iter()); + queries_iterators.insert(DemuxOutput::ECMul, demuxed_queues.precompiles.ecmul.iter()); + queries_iterators.insert( + DemuxOutput::ECPairing, + demuxed_queues.precompiles.ecpairing.iter(), + ); let mut input_passthrough_data = LogDemuxerInputData::placeholder_witness(); // we only need the state of the original input diff --git a/crates/zkevm_test_harness/src/witness/individual_circuits/memory_related/ecadd.rs b/crates/zkevm_test_harness/src/witness/individual_circuits/memory_related/ecadd.rs new file mode 100644 index 0000000..57db574 --- /dev/null +++ b/crates/zkevm_test_harness/src/witness/individual_circuits/memory_related/ecadd.rs @@ -0,0 +1,210 @@ +use super::*; +use crate::witness::artifacts::LogQueueStates; +use crate::zkevm_circuits::base_structures::log_query::*; +use crate::zkevm_circuits::bn254::ec_add::input::{ + EcAddCircuitFSMInputOutputWitness, EcAddCircuitInputOutputWitness, EcAddCircuitInstanceWitness, +}; +use circuit_definitions::encodings::*; +use circuit_definitions::zk_evm::zk_evm_abstractions::precompiles::ecadd::ECAddRoundWitness; + +pub(crate) fn ecadd_memory_queries( + ecadd_witnesses: &Vec<(u32, LogQuery_, ECAddRoundWitness)>, +) -> Vec { + let amount_of_queries = ecadd_witnesses.iter().fold(0, |inner, (_, _, witness)| { + inner + witness.reads.len() + witness.writes.len() + }); + + let mut ecadd_memory_queries = Vec::with_capacity(amount_of_queries); + + for (_cycle, _query, witness) in ecadd_witnesses.iter() { + let initial_memory_len = ecadd_memory_queries.len(); + + // we read, then write + ecadd_memory_queries.extend_from_slice(&witness.reads); + ecadd_memory_queries.extend_from_slice(&witness.writes); + + assert_eq!(ecadd_memory_queries.len() - initial_memory_len, 7); + } + ecadd_memory_queries +} + +// we want to simulate splitting of data into many separate instances of the same circuit. +// So we basically need to reconstruct the FSM state on input/output, and passthrough data. +// In practice the only difficulty is buffer state, everything else is provided by out-of-circuit VM + +pub(crate) fn ecadd_decompose_into_per_circuit_witness< + F: SmallField, + R: BuildableCircuitRoundFunction + AlgebraicRoundFunction, +>( + ecadd_memory_queries: Vec, + ecadd_simulator_snapshots: Vec>, + ecadd_memory_states: Vec>, + ecadd_witnesses: Vec<(u32, LogQuery_, ECAddRoundWitness)>, + ecadd_queries: Vec, + mut demuxed_ecadd_queue: LogQueueStates, + num_rounds_per_circuit: usize, + round_function: &R, +) -> Vec> { + assert_eq!(ecadd_memory_queries.len(), ecadd_memory_states.len()); + + let memory_simulator_before = &ecadd_simulator_snapshots[0]; + let memory_simulator_after = &ecadd_simulator_snapshots[1]; + assert_eq!( + ecadd_memory_queries.len(), + memory_simulator_after.num_items as usize - memory_simulator_before.num_items as usize + ); + + let mut result = vec![]; + + let precompile_calls = ecadd_queries; + let simulator_witness: Vec<_> = demuxed_ecadd_queue.simulator.witness.clone().into(); + let round_function_witness = ecadd_witnesses; + + // check basic consistency + assert!(precompile_calls.len() == demuxed_ecadd_queue.states_accumulator.len()); + drop(demuxed_ecadd_queue.states_accumulator); + assert!(precompile_calls.len() == round_function_witness.len()); + + if precompile_calls.len() == 0 { + return vec![]; + } + + let mut round_counter = 0; + let num_requests = precompile_calls.len(); + + // convension + let mut log_queue_input_state = take_queue_state_from_simulator(&demuxed_ecadd_queue.simulator); + let mut memory_queries_it = ecadd_memory_queries.into_iter(); + + let mut memory_read_witnesses = vec![]; + let mut starting_request_idx = 0; + + let mut memory_queue_input_state = memory_simulator_before.take_sponge_like_queue_state(); + let mut current_memory_queue_state = memory_queue_input_state.clone(); + + let mut memory_queue_states_it = ecadd_memory_states.iter(); + + for (request_idx, (request, per_request_work)) in precompile_calls + .into_iter() + .zip(round_function_witness.into_iter()) + .enumerate() + { + let _ = demuxed_ecadd_queue + .simulator + .pop_and_output_intermediate_data(round_function); + + let mut memory_reads_per_request = vec![]; + + let (_cycle, _req, round_witness) = per_request_work; + assert_eq!(request, _req); + + use crate::zk_evm::zk_evm_abstractions::precompiles::precompile_abi_in_log; + let mut precompile_request = precompile_abi_in_log(request); + let is_last_request = request_idx == num_requests - 1; + + let mut amount_of_queries = 0; + // we have 4 reads + for (_query_index, read) in round_witness.reads.into_iter().enumerate() { + let read_query = memory_queries_it.next().unwrap(); + assert!(read == read_query); + assert!(read_query.rw_flag == false); + memory_reads_per_request.push(read_query.value); + + current_memory_queue_state = memory_queue_states_it.next().unwrap().clone(); + + precompile_request.input_memory_offset += 1; + amount_of_queries += 1; + } + + // and 2 writes + for (_query_index, write) in round_witness.writes.into_iter().enumerate() { + let write_query = memory_queries_it.next().unwrap(); + assert!(write == write_query); + assert!(write_query.rw_flag == true); + + current_memory_queue_state = memory_queue_states_it.next().unwrap().clone(); + + precompile_request.output_memory_offset += 1; + amount_of_queries += 1; + } + + assert_eq!(amount_of_queries, 7); + round_counter += 1; + + if round_counter == num_rounds_per_circuit || is_last_request { + round_counter = 0; + + let finished = is_last_request; + if finished { + assert!(memory_queries_it.next().is_none()); + } + + let range = starting_request_idx..(request_idx + 1); + let wit: VecDeque<_> = (&simulator_witness[range]) + .iter() + .map(|el| (log_query_into_circuit_log_query_witness(&el.2), el.1)) + .collect(); + + let current_reads = std::mem::take(&mut memory_reads_per_request); + let mut current_witness = std::mem::take(&mut memory_read_witnesses); + current_witness.push(current_reads); + + let mut observable_input_data = PrecompileFunctionInputData::placeholder_witness(); + if result.len() == 0 { + observable_input_data.initial_memory_queue_state = memory_queue_input_state.clone(); + observable_input_data.initial_log_queue_state = log_queue_input_state.clone(); + } + + let mut observable_output_data = PrecompileFunctionOutputData::placeholder_witness(); + if finished { + observable_output_data.final_memory_state = current_memory_queue_state.clone(); + } + + let witness = EcAddCircuitInstanceWitness:: { + closed_form_input: EcAddCircuitInputOutputWitness:: { + start_flag: result.len() == 0, + completion_flag: finished, + observable_input: observable_input_data, + observable_output: observable_output_data, + hidden_fsm_input: EcAddCircuitFSMInputOutputWitness:: { + log_queue_state: log_queue_input_state.clone(), + memory_queue_state: memory_queue_input_state, + }, + hidden_fsm_output: EcAddCircuitFSMInputOutputWitness:: { + log_queue_state: take_queue_state_from_simulator( + &demuxed_ecadd_queue.simulator, + ), + memory_queue_state: current_memory_queue_state.clone(), + }, + }, + requests_queue_witness: CircuitQueueRawWitness::< + F, + LogQuery, + 4, + LOG_QUERY_PACKED_WIDTH, + > { + elements: wit, + }, + memory_reads_witness: current_witness + .into_iter() + .map(|el| el.try_into().expect("length must match")) + .collect(), + }; + + // make non-inclusize + starting_request_idx = request_idx + 1; + + result.push(witness); + + log_queue_input_state = take_queue_state_from_simulator(&demuxed_ecadd_queue.simulator); + memory_queue_input_state = current_memory_queue_state.clone(); + } + + if !memory_reads_per_request.is_empty() { + // we may have drained it already if it was the end of the circuit + memory_read_witnesses.push(memory_reads_per_request); + } + } + + result +} diff --git a/crates/zkevm_test_harness/src/witness/individual_circuits/memory_related/ecmul.rs b/crates/zkevm_test_harness/src/witness/individual_circuits/memory_related/ecmul.rs new file mode 100644 index 0000000..77b7c99 --- /dev/null +++ b/crates/zkevm_test_harness/src/witness/individual_circuits/memory_related/ecmul.rs @@ -0,0 +1,210 @@ +use super::*; +use crate::witness::artifacts::LogQueueStates; +use crate::zkevm_circuits::base_structures::log_query::*; +use crate::zkevm_circuits::bn254::ec_mul::input::{ + EcMulCircuitFSMInputOutputWitness, EcMulCircuitInputOutputWitness, EcMulCircuitInstanceWitness, +}; +use circuit_definitions::encodings::*; +use circuit_definitions::zk_evm::zk_evm_abstractions::precompiles::ecmul::ECMulRoundWitness; + +pub(crate) fn ecmul_memory_queries( + ecmul_witnesses: &Vec<(u32, LogQuery_, ECMulRoundWitness)>, +) -> Vec { + let amount_of_queries = ecmul_witnesses.iter().fold(0, |inner, (_, _, witness)| { + inner + witness.reads.len() + witness.writes.len() + }); + + let mut ecmul_memory_queries = Vec::with_capacity(amount_of_queries); + + for (_cycle, _query, witness) in ecmul_witnesses.iter() { + let initial_memory_len = ecmul_memory_queries.len(); + + // we read, then write + ecmul_memory_queries.extend_from_slice(&witness.reads); + ecmul_memory_queries.extend_from_slice(&witness.writes); + + assert_eq!(ecmul_memory_queries.len() - initial_memory_len, 6); + } + ecmul_memory_queries +} + +// we want to simulate splitting of data into many separate instances of the same circuit. +// So we basically need to reconstruct the FSM state on input/output, and passthrough data. +// In practice the only difficulty is buffer state, everything else is provided by out-of-circuit VM + +pub(crate) fn ecmul_decompose_into_per_circuit_witness< + F: SmallField, + R: BuildableCircuitRoundFunction + AlgebraicRoundFunction, +>( + ecmul_memory_queries: Vec, + ecmul_simulator_snapshots: Vec>, + ecmul_memory_states: Vec>, + ecmul_witnesses: Vec<(u32, LogQuery_, ECMulRoundWitness)>, + ecmul_queries: Vec, + mut demuxed_ecmul_queue: LogQueueStates, + num_rounds_per_circuit: usize, + round_function: &R, +) -> Vec> { + assert_eq!(ecmul_memory_queries.len(), ecmul_memory_states.len()); + + let memory_simulator_before = &ecmul_simulator_snapshots[0]; + let memory_simulator_after = &ecmul_simulator_snapshots[1]; + assert_eq!( + ecmul_memory_queries.len(), + memory_simulator_after.num_items as usize - memory_simulator_before.num_items as usize + ); + + let mut result = vec![]; + + let precompile_calls = ecmul_queries; + let simulator_witness: Vec<_> = demuxed_ecmul_queue.simulator.witness.clone().into(); + let round_function_witness = ecmul_witnesses; + + // check basic consistency + assert!(precompile_calls.len() == demuxed_ecmul_queue.states_accumulator.len()); + drop(demuxed_ecmul_queue.states_accumulator); + assert!(precompile_calls.len() == round_function_witness.len()); + + if precompile_calls.len() == 0 { + return vec![]; + } + + let mut round_counter = 0; + let num_requests = precompile_calls.len(); + + // convension + let mut log_queue_input_state = take_queue_state_from_simulator(&demuxed_ecmul_queue.simulator); + let mut memory_queries_it = ecmul_memory_queries.into_iter(); + + let mut memory_read_witnesses = vec![]; + let mut starting_request_idx = 0; + + let mut memory_queue_input_state = memory_simulator_before.take_sponge_like_queue_state(); + let mut current_memory_queue_state = memory_queue_input_state.clone(); + + let mut memory_queue_states_it = ecmul_memory_states.iter(); + + for (request_idx, (request, per_request_work)) in precompile_calls + .into_iter() + .zip(round_function_witness.into_iter()) + .enumerate() + { + let _ = demuxed_ecmul_queue + .simulator + .pop_and_output_intermediate_data(round_function); + + let mut memory_reads_per_request = vec![]; + + let (_cycle, _req, round_witness) = per_request_work; + assert_eq!(request, _req); + + use crate::zk_evm::zk_evm_abstractions::precompiles::precompile_abi_in_log; + let mut precompile_request = precompile_abi_in_log(request); + let is_last_request = request_idx == num_requests - 1; + + let mut amount_of_queries = 0; + // we have 3 reads + for (_query_index, read) in round_witness.reads.into_iter().enumerate() { + let read_query = memory_queries_it.next().unwrap(); + assert!(read == read_query); + assert!(read_query.rw_flag == false); + memory_reads_per_request.push(read_query.value); + + current_memory_queue_state = memory_queue_states_it.next().unwrap().clone(); + + precompile_request.input_memory_offset += 1; + amount_of_queries += 1; + } + + // and 3 writes + for (_query_index, write) in round_witness.writes.into_iter().enumerate() { + let write_query = memory_queries_it.next().unwrap(); + assert!(write == write_query); + assert!(write_query.rw_flag == true); + + current_memory_queue_state = memory_queue_states_it.next().unwrap().clone(); + + precompile_request.output_memory_offset += 1; + amount_of_queries += 1; + } + + assert_eq!(amount_of_queries, 6); + round_counter += 1; + + if round_counter == num_rounds_per_circuit || is_last_request { + round_counter = 0; + + let finished = is_last_request; + if finished { + assert!(memory_queries_it.next().is_none()); + } + + let range = starting_request_idx..(request_idx + 1); + let wit: VecDeque<_> = (&simulator_witness[range]) + .iter() + .map(|el| (log_query_into_circuit_log_query_witness(&el.2), el.1)) + .collect(); + + let current_reads = std::mem::take(&mut memory_reads_per_request); + let mut current_witness = std::mem::take(&mut memory_read_witnesses); + current_witness.push(current_reads); + + let mut observable_input_data = PrecompileFunctionInputData::placeholder_witness(); + if result.len() == 0 { + observable_input_data.initial_memory_queue_state = memory_queue_input_state.clone(); + observable_input_data.initial_log_queue_state = log_queue_input_state.clone(); + } + + let mut observable_output_data = PrecompileFunctionOutputData::placeholder_witness(); + if finished { + observable_output_data.final_memory_state = current_memory_queue_state.clone(); + } + + let witness = EcMulCircuitInstanceWitness:: { + closed_form_input: EcMulCircuitInputOutputWitness:: { + start_flag: result.len() == 0, + completion_flag: finished, + observable_input: observable_input_data, + observable_output: observable_output_data, + hidden_fsm_input: EcMulCircuitFSMInputOutputWitness:: { + log_queue_state: log_queue_input_state.clone(), + memory_queue_state: memory_queue_input_state, + }, + hidden_fsm_output: EcMulCircuitFSMInputOutputWitness:: { + log_queue_state: take_queue_state_from_simulator( + &demuxed_ecmul_queue.simulator, + ), + memory_queue_state: current_memory_queue_state.clone(), + }, + }, + requests_queue_witness: CircuitQueueRawWitness::< + F, + LogQuery, + 4, + LOG_QUERY_PACKED_WIDTH, + > { + elements: wit, + }, + memory_reads_witness: current_witness + .into_iter() + .map(|el| el.try_into().expect("length must match")) + .collect(), + }; + + // make non-inclusize + starting_request_idx = request_idx + 1; + + result.push(witness); + + log_queue_input_state = take_queue_state_from_simulator(&demuxed_ecmul_queue.simulator); + memory_queue_input_state = current_memory_queue_state.clone(); + } + + if !memory_reads_per_request.is_empty() { + // we may have drained it already if it was the end of the circuit + memory_read_witnesses.push(memory_reads_per_request); + } + } + + result +} diff --git a/crates/zkevm_test_harness/src/witness/individual_circuits/memory_related/ecpairing.rs b/crates/zkevm_test_harness/src/witness/individual_circuits/memory_related/ecpairing.rs new file mode 100644 index 0000000..851a55e --- /dev/null +++ b/crates/zkevm_test_harness/src/witness/individual_circuits/memory_related/ecpairing.rs @@ -0,0 +1,366 @@ +use super::*; + +use crate::witness::artifacts::LogQueueStates; + +use crate::zk_evm::zk_evm_abstractions::precompiles::ecpairing::pair; +use crate::zk_evm::zk_evm_abstractions::precompiles::ecpairing::ECPairingRoundWitness; +use crate::zk_evm::zkevm_opcode_defs::bn254::bn256::{Fq12, Fq2, Fq6}; +use crate::zk_evm::zkevm_opcode_defs::bn254::ff::Field; + +use crate::zkevm_circuits::base_structures::log_query::*; +use crate::zkevm_circuits::bn254::ec_pairing::input::{ + EcPairingCircuitFSMInputOutputWitness, EcPairingCircuitInputOutputWitness, + EcPairingCircuitInstanceWitness, EcPairingFunctionFSM, EcPairingFunctionFSMWitness, +}; +use crate::zkevm_circuits::bn254::ec_pairing::EcPairingPrecompileCallParamsWitness; +use crate::zkevm_circuits::bn254::{BN256Fq, BN256Fq12NNField, BN256Fq2NNField, BN256Fq6NNField}; + +use boojum::gadgets::non_native_field::implementations::implementation_u16::FFProxyValue; + +use circuit_definitions::encodings::*; + +use derivative::Derivative; + +pub(crate) fn ecpairing_memory_queries( + ecpairing_witnesses: &Vec<(u32, LogQuery_, Vec)>, +) -> Vec { + let amount_of_queries = ecpairing_witnesses + .iter() + .fold(0, |mut inner, (_, _, witness)| { + witness.iter().for_each(|el| { + inner += el.reads.len(); + if el.writes.is_some() { + inner += 1; + } + }); + + inner + }); + + let mut ecpairing_memory_queries = Vec::with_capacity(amount_of_queries); + + for (_cycle, _query, witness) in ecpairing_witnesses.iter() { + for el in witness.iter() { + let ECPairingRoundWitness { + new_request: _, + reads, + writes, + } = el; + + // we read, then write + ecpairing_memory_queries.extend_from_slice(reads); + + if let Some(writes) = writes.as_ref() { + ecpairing_memory_queries.extend_from_slice(writes); + } + } + } + + ecpairing_memory_queries.shrink_to_fit(); + + ecpairing_memory_queries +} + +#[derive(Derivative)] +#[derivative(Clone, Copy, Debug, PartialEq, Eq)] +pub enum ECPairingPrecompileState { + GetRequestFromQueue, + RunRoundFunction, + Finished, +} + +// we want to simulate splitting of data into many separate instances of the same circuit. +// So we basically need to reconstruct the FSM state on input/output, and passthrough data. +// In practice the only difficulty is buffer state, everything else is provided by out-of-circuit VM + +pub(crate) fn ecpairing_decompose_into_per_circuit_witness< + F: SmallField, + R: BuildableCircuitRoundFunction + AlgebraicRoundFunction, +>( + ecpairing_memory_queries: Vec, + ecpairing_simulator_snapshots: Vec>, + ecpairing_memory_states: Vec>, + ecpairing_witnesses: Vec<(u32, LogQuery_, Vec)>, + ecpairing_queries: Vec, + mut demuxed_ecpairing_queue: LogQueueStates, + num_rounds_per_circuit: usize, + round_function: &R, +) -> Vec> { + assert_eq!( + ecpairing_memory_queries.len(), + ecpairing_memory_states.len() + ); + + let memory_simulator_before = &ecpairing_simulator_snapshots[0]; + let memory_simulator_after = &ecpairing_simulator_snapshots[1]; + assert_eq!( + ecpairing_memory_queries.len(), + memory_simulator_after.num_items as usize - memory_simulator_before.num_items as usize + ); + + let mut result = vec![]; + + let precompile_calls = ecpairing_queries; + let simulator_witness: Vec<_> = demuxed_ecpairing_queue.simulator.witness.clone().into(); + let round_function_witness = ecpairing_witnesses; + + // check basic consistency + assert_eq!( + precompile_calls.len(), + demuxed_ecpairing_queue.states_accumulator.len() + ); + drop(demuxed_ecpairing_queue.states_accumulator); + assert_eq!(precompile_calls.len(), round_function_witness.len()); + + if precompile_calls.len() == 0 { + return vec![]; + } + + let mut round_counter = 0; + let num_requests = precompile_calls.len(); + + // convension + let mut log_queue_input_state = + take_queue_state_from_simulator(&demuxed_ecpairing_queue.simulator); + let mut hidden_fsm_input_state = EcPairingFunctionFSM::::placeholder_witness(); + hidden_fsm_input_state.read_precompile_call = true; + + let mut memory_queries_it = ecpairing_memory_queries.into_iter(); + + let mut memory_read_witnesses = vec![]; + + let mut precompile_state = ECPairingPrecompileState::GetRequestFromQueue; + + let mut starting_request_idx = 0; + + let mut memory_queue_input_state = memory_simulator_before.take_sponge_like_queue_state(); + let mut current_memory_queue_state = memory_queue_input_state.clone(); + + let mut memory_queue_states_it = ecpairing_memory_states.iter(); + + for (request_idx, (request, per_request_work)) in precompile_calls + .into_iter() + .zip(round_function_witness.into_iter()) + .enumerate() + { + let _ = demuxed_ecpairing_queue + .simulator + .pop_and_output_intermediate_data(round_function); + + let mut memory_reads_per_request = vec![]; + + assert_eq!( + precompile_state, + ECPairingPrecompileState::GetRequestFromQueue + ); + + let (_cycle, _req, round_witness) = per_request_work; + assert_eq!(request, _req); + + use crate::zk_evm::zk_evm_abstractions::precompiles::precompile_abi_in_log; + let mut precompile_request = precompile_abi_in_log(request); + let num_rounds = precompile_request.precompile_interpreted_data as usize; + assert_eq!(num_rounds, round_witness.len()); + + let mut num_rounds_left = num_rounds; + + let is_last_request = request_idx == num_requests - 1; + + precompile_state = ECPairingPrecompileState::RunRoundFunction; + + let one_fq12 = Fq12::one(); + let zero_fq12 = Fq12::zero(); + + let mut internal_state = one_fq12; + + for (round_idx, round) in round_witness.into_iter().enumerate() { + if round_idx == 0 { + assert!(round.new_request.is_some()); + } + + let mut input_pair = [U256::zero(); 6]; + + for (i, read) in round.reads.iter().enumerate() { + input_pair[i] = read.value; + let read_query = memory_queries_it.next().unwrap(); + assert_eq!(read, &read_query); + memory_reads_per_request.push(read_query.value); + current_memory_queue_state = memory_queue_states_it.next().unwrap().clone(); + + precompile_request.input_memory_offset += 1; + } + + let pairing = pair(&input_pair).or::(Ok(zero_fq12)).unwrap(); + internal_state.mul_assign(&pairing); + + num_rounds_left -= 1; + + let is_last_round = round_idx == num_rounds - 1; + + if is_last_round { + assert_eq!(num_rounds_left, 0); + assert!(round.writes.is_some()); + let [write_ok, write_res] = round.writes.unwrap(); + let write_query = memory_queries_it.next().unwrap(); + assert_eq!(write_ok, write_query); + let write_query = memory_queries_it.next().unwrap(); + assert_eq!(write_res, write_query); + + _ = memory_queue_states_it.next().unwrap().clone(); + current_memory_queue_state = memory_queue_states_it.next().unwrap().clone(); + + if is_last_request { + precompile_state = ECPairingPrecompileState::Finished; + } else { + precompile_state = ECPairingPrecompileState::GetRequestFromQueue; + } + } + + round_counter += 1; + + if round_counter == num_rounds_per_circuit || (is_last_request && is_last_round) { + let early_termination = round_counter != num_rounds_per_circuit; + round_counter = 0; + + let finished = is_last_request && is_last_round; + if finished { + assert!(memory_queries_it.next().is_none()); + } + + let input_is_empty = is_last_request; + let nothing_left = is_last_round && input_is_empty; + + assert_eq!(nothing_left, finished); + + if early_termination { + assert_eq!(precompile_state, ECPairingPrecompileState::Finished); + } + + let completed = precompile_state == ECPairingPrecompileState::Finished; + let read_words_for_round = + precompile_state == ECPairingPrecompileState::RunRoundFunction; + let read_precompile_call = + precompile_state == ECPairingPrecompileState::GetRequestFromQueue; + + let mut output_offset = precompile_request.output_memory_offset; + if completed { + output_offset += 1; + } + + let hidden_fsm_output_state = EcPairingFunctionFSMWitness:: { + completed, + read_words_for_round, + pairing_inner_state: convert_to_witness_fq12::(internal_state), + read_precompile_call, + timestamp_to_use_for_read: request.timestamp.0, + timestamp_to_use_for_write: request.timestamp.0 + 1, + precompile_call_params: EcPairingPrecompileCallParamsWitness:: { + input_page: precompile_request.memory_page_to_read, + input_offset: precompile_request.input_memory_offset, + output_page: precompile_request.memory_page_to_write, + output_offset, + num_pairs: num_rounds_left as u32, + }, + }; + + let range = starting_request_idx..(request_idx + 1); + let wit: VecDeque<_> = (&simulator_witness[range]) + .iter() + .map(|el| (log_query_into_circuit_log_query_witness(&el.2), el.1)) + .collect(); + + let current_reads = std::mem::take(&mut memory_reads_per_request); + let mut current_witness = std::mem::take(&mut memory_read_witnesses); + current_witness.push(current_reads); + + let mut observable_input_data = PrecompileFunctionInputData::placeholder_witness(); + if result.len() == 0 { + observable_input_data.initial_memory_queue_state = + memory_queue_input_state.clone(); + observable_input_data.initial_log_queue_state = log_queue_input_state.clone(); + } + + let mut observable_output_data = + PrecompileFunctionOutputData::placeholder_witness(); + if finished { + observable_output_data.final_memory_state = current_memory_queue_state.clone(); + } + + let witness = EcPairingCircuitInstanceWitness:: { + closed_form_input: EcPairingCircuitInputOutputWitness:: { + start_flag: result.len() == 0, + completion_flag: finished, + observable_input: observable_input_data, + observable_output: observable_output_data, + hidden_fsm_input: EcPairingCircuitFSMInputOutputWitness:: { + internal_fsm: hidden_fsm_input_state, + log_queue_state: log_queue_input_state.clone(), + memory_queue_state: memory_queue_input_state, + }, + hidden_fsm_output: EcPairingCircuitFSMInputOutputWitness:: { + internal_fsm: hidden_fsm_output_state.clone(), + log_queue_state: take_queue_state_from_simulator( + &demuxed_ecpairing_queue.simulator, + ), + memory_queue_state: current_memory_queue_state.clone(), + }, + }, + requests_queue_witness: CircuitQueueRawWitness::< + F, + LogQuery, + 4, + LOG_QUERY_PACKED_WIDTH, + > { + elements: wit, + }, + memory_reads_witness: current_witness.into_iter().flatten().collect(), + }; + + // make non-inclusize + starting_request_idx = request_idx + 1; + + result.push(witness); + + log_queue_input_state = + take_queue_state_from_simulator(&demuxed_ecpairing_queue.simulator); + hidden_fsm_input_state = hidden_fsm_output_state; + memory_queue_input_state = current_memory_queue_state.clone(); + } + } + + if !memory_reads_per_request.is_empty() { + // we may have drained it already if it was the end of the circuit + memory_read_witnesses.push(memory_reads_per_request); + } + } + + result +} + +fn convert_to_witness_fq12( + v: Fq12, +) -> as CSAllocatable>::Witness { + ( + convert_to_witness_fq6::(v.c0), + convert_to_witness_fq6::(v.c1), + ) +} + +fn convert_to_witness_fq6( + v: Fq6, +) -> as CSAllocatable>::Witness { + ( + convert_to_witness_fq2::(v.c0), + convert_to_witness_fq2::(v.c1), + convert_to_witness_fq2::(v.c2), + ) +} + +fn convert_to_witness_fq2( + v: Fq2, +) -> as CSAllocatable>::Witness { + let c0 = FFProxyValue::::set(v.c0); + let c1 = FFProxyValue::::set(v.c1); + + (c0, c1) +} diff --git a/crates/zkevm_test_harness/src/witness/individual_circuits/memory_related/mod.rs b/crates/zkevm_test_harness/src/witness/individual_circuits/memory_related/mod.rs index dbf8e32..10f8bb8 100644 --- a/crates/zkevm_test_harness/src/witness/individual_circuits/memory_related/mod.rs +++ b/crates/zkevm_test_harness/src/witness/individual_circuits/memory_related/mod.rs @@ -16,8 +16,12 @@ use crate::zk_evm::zk_evm_abstractions::precompiles::secp256r1_verify::Secp256r1 use crate::zk_evm::zk_evm_abstractions::precompiles::sha256::Sha256RoundWitness; pub(crate) mod decommit_code; +pub(crate) mod ecadd; +pub(crate) mod ecmul; +pub(crate) mod ecpairing; pub(crate) mod ecrecover; pub(crate) mod keccak256_round_function; +pub(crate) mod modexp; pub(crate) mod ram_permutation; pub(crate) mod secp256r1_verify; pub(crate) mod sha256_round_function; @@ -30,6 +34,10 @@ pub(crate) struct ImplicitMemoryQueries { pub keccak256_memory_queries: Vec, pub secp256r1_memory_queries: Vec, pub sha256_memory_queries: Vec, + pub modexp_memory_queries: Vec, + pub ecadd_memory_queries: Vec, + pub ecmul_memory_queries: Vec, + pub ecpairing_memory_queries: Vec, } impl ImplicitMemoryQueries { @@ -39,6 +47,10 @@ impl ImplicitMemoryQueries { + self.keccak256_memory_queries.len() + self.secp256r1_memory_queries.len() + self.sha256_memory_queries.len() + + self.modexp_memory_queries.len() + + self.ecadd_memory_queries.len() + + self.ecmul_memory_queries.len() + + self.ecpairing_memory_queries.len() } fn get_vector(&self, index: usize) -> Option<&Vec> { @@ -48,6 +60,10 @@ impl ImplicitMemoryQueries { 2 => Some(&self.sha256_memory_queries), 3 => Some(&self.ecrecover_memory_queries), 4 => Some(&self.secp256r1_memory_queries), + 5 => Some(&self.modexp_memory_queries), + 6 => Some(&self.ecadd_memory_queries), + 7 => Some(&self.ecmul_memory_queries), + 8 => Some(&self.ecpairing_memory_queries), _ => None, } } @@ -109,6 +125,10 @@ pub fn get_implicit_memory_queries( sha256_memory_queries: sha256_memory_queries( &precompiles_inputs.sha256_round_function_witnesses, ), + modexp_memory_queries: modexp_memory_queries(&precompiles_inputs.modexp_witnesses), + ecadd_memory_queries: ecadd_memory_queries(&precompiles_inputs.ecadd_witnesses), + ecmul_memory_queries: ecmul_memory_queries(&precompiles_inputs.ecmul_witnesses), + ecpairing_memory_queries: ecpairing_memory_queries(&precompiles_inputs.ecpairing_witnesses), } } @@ -146,6 +166,14 @@ pub(crate) struct ImplicitMemoryStates { pub secp256r1_memory_states: Vec>, pub sha256_simulator_snapshots: Vec>, pub sha256_memory_states: Vec>, + pub modexp_simulator_snapshots: Vec>, + pub modexp_memory_states: Vec>, + pub ecadd_simulator_snapshots: Vec>, + pub ecadd_memory_states: Vec>, + pub ecmul_simulator_snapshots: Vec>, + pub ecmul_memory_states: Vec>, + pub ecpairing_simulator_snapshots: Vec>, + pub ecpairing_memory_states: Vec>, } impl ImplicitMemoryStates { @@ -155,6 +183,10 @@ impl ImplicitMemoryStates { + self.keccak256_memory_states.len() + self.secp256r1_memory_states.len() + self.sha256_memory_states.len() + + self.modexp_memory_states.len() + + self.ecadd_memory_states.len() + + self.ecmul_memory_states.len() + + self.ecpairing_memory_states.len() } } use crate::witness::aux_data_structs::MemoryQueuePerCircuitSimulator; @@ -170,6 +202,10 @@ fn get_simulator_snapshot( } use crate::witness::aux_data_structs::one_per_circuit_accumulator::LastPerCircuitAccumulator; +use crate::witness::individual_circuits::memory_related::ecadd::ecadd_memory_queries; +use crate::witness::individual_circuits::memory_related::ecmul::ecmul_memory_queries; +use crate::witness::individual_circuits::memory_related::ecpairing::ecpairing_memory_queries; +use crate::witness::individual_circuits::memory_related::modexp::modexp_memory_queries; pub(crate) fn simulate_implicit_memory_queues< F: SmallField, @@ -227,5 +263,25 @@ pub(crate) fn simulate_implicit_memory_queues< &mut implicit_memory_states.secp256r1_memory_states, ); + implicit_memory_states.modexp_simulator_snapshots = simulate_subqueue( + &implicit_memory_queries.modexp_memory_queries, + &mut implicit_memory_states.modexp_memory_states, + ); + + implicit_memory_states.ecadd_simulator_snapshots = simulate_subqueue( + &implicit_memory_queries.ecadd_memory_queries, + &mut implicit_memory_states.ecadd_memory_states, + ); + + implicit_memory_states.ecmul_simulator_snapshots = simulate_subqueue( + &implicit_memory_queries.ecmul_memory_queries, + &mut implicit_memory_states.ecmul_memory_states, + ); + + implicit_memory_states.ecpairing_simulator_snapshots = simulate_subqueue( + &implicit_memory_queries.ecpairing_memory_queries, + &mut implicit_memory_states.ecpairing_memory_states, + ); + implicit_memory_states } diff --git a/crates/zkevm_test_harness/src/witness/individual_circuits/memory_related/modexp.rs b/crates/zkevm_test_harness/src/witness/individual_circuits/memory_related/modexp.rs new file mode 100644 index 0000000..ede331c --- /dev/null +++ b/crates/zkevm_test_harness/src/witness/individual_circuits/memory_related/modexp.rs @@ -0,0 +1,212 @@ +use super::*; +use crate::witness::artifacts::LogQueueStates; +use crate::zkevm_circuits::base_structures::log_query::*; +use crate::zkevm_circuits::modexp::input::{ + ModexpCircuitInputOutputWitness, ModexpCircuitInstanceWitness, +}; +use circuit_definitions::circuit_definitions::base_layer::ZkSyncBaseLayerStorage::Modexp; +use circuit_definitions::encodings::*; +use circuit_definitions::zk_evm::zk_evm_abstractions::precompiles::modexp::ModexpRoundWitness; +use circuit_definitions::zkevm_circuits::modexp::input::ModexpCircuitFSMInputOutputWitness; + +pub(crate) fn modexp_memory_queries( + modexp_witnesses: &Vec<(u32, LogQuery_, ModexpRoundWitness)>, +) -> Vec { + let amount_of_queries = modexp_witnesses.iter().fold(0, |inner, (_, _, witness)| { + inner + witness.reads.len() + 1 // one per one write + }); + + let mut modexp_memory_queries = Vec::with_capacity(amount_of_queries); + + for (_cycle, _query, witness) in modexp_witnesses.iter() { + let initial_memory_len = modexp_memory_queries.len(); + + // we read, then write + modexp_memory_queries.extend_from_slice(&witness.reads); + modexp_memory_queries.push(witness.write); + + assert_eq!(modexp_memory_queries.len() - initial_memory_len, 4); + } + modexp_memory_queries +} + +// we want to simulate splitting of data into many separate instances of the same circuit. +// So we basically need to reconstruct the FSM state on input/output, and passthrough data. +// In practice the only difficulty is buffer state, everything else is provided by out-of-circuit VM + +pub(crate) fn modexp_decompose_into_per_circuit_witness< + F: SmallField, + R: BuildableCircuitRoundFunction + AlgebraicRoundFunction, +>( + modexp_memory_queries: Vec, + modexp_simulator_snapshots: Vec>, + modexp_memory_states: Vec>, + modexp_witnesses: Vec<(u32, LogQuery_, ModexpRoundWitness)>, + modexp_queries: Vec, + mut demuxed_modexp_queue: LogQueueStates, + num_rounds_per_circuit: usize, + round_function: &R, +) -> Vec> { + assert_eq!(modexp_memory_queries.len(), modexp_memory_states.len()); + + let memory_simulator_before = &modexp_simulator_snapshots[0]; + let memory_simulator_after = &modexp_simulator_snapshots[1]; + assert_eq!( + modexp_memory_queries.len(), + memory_simulator_after.num_items as usize - memory_simulator_before.num_items as usize + ); + + let mut result = vec![]; + + let precompile_calls = modexp_queries; + let simulator_witness: Vec<_> = demuxed_modexp_queue.simulator.witness.clone().into(); + let round_function_witness = modexp_witnesses; + + // check basic consistency + assert!(precompile_calls.len() == demuxed_modexp_queue.states_accumulator.len()); + drop(demuxed_modexp_queue.states_accumulator); + assert!(precompile_calls.len() == round_function_witness.len()); + + if precompile_calls.len() == 0 { + return vec![]; + } + + let mut round_counter = 0; + let num_requests = precompile_calls.len(); + + // convension + let mut log_queue_input_state = + take_queue_state_from_simulator(&demuxed_modexp_queue.simulator); + let mut memory_queries_it = modexp_memory_queries.into_iter(); + + let mut memory_read_witnesses = vec![]; + let mut starting_request_idx = 0; + + let mut memory_queue_input_state = memory_simulator_before.take_sponge_like_queue_state(); + #[allow(unused_assignments)] + let mut current_memory_queue_state = memory_queue_input_state.clone(); + + let mut memory_queue_states_it = modexp_memory_states.iter(); + + for (request_idx, (request, per_request_work)) in precompile_calls + .into_iter() + .zip(round_function_witness.into_iter()) + .enumerate() + { + let _ = demuxed_modexp_queue + .simulator + .pop_and_output_intermediate_data(round_function); + + let mut memory_reads_per_request = vec![]; + + let (_cycle, _req, round_witness) = per_request_work; + assert_eq!(request, _req); + + use crate::zk_evm::zk_evm_abstractions::precompiles::precompile_abi_in_log; + let mut precompile_request = precompile_abi_in_log(request); + let is_last_request = request_idx == num_requests - 1; + + let mut amount_of_queries = 0; + // we have 3 reads + for (_query_index, read) in round_witness.reads.into_iter().enumerate() { + let read_query = memory_queries_it.next().unwrap(); + assert!(read == read_query); + assert!(read_query.rw_flag == false); + memory_reads_per_request.push(read_query.value); + + _ = memory_queue_states_it.next().unwrap().clone(); + + precompile_request.input_memory_offset += 1; + amount_of_queries += 1; + } + + // And one write + let write_query = memory_queries_it.next().unwrap(); + assert!(write_query.rw_flag == true); + + current_memory_queue_state = memory_queue_states_it.next().unwrap().clone(); + + precompile_request.output_memory_offset += 1; + amount_of_queries += 1; + + assert_eq!(amount_of_queries, 4); + round_counter += 1; + + if round_counter == num_rounds_per_circuit || is_last_request { + round_counter = 0; + + let finished = is_last_request; + if finished { + assert!(memory_queries_it.next().is_none()); + } + + let range = starting_request_idx..(request_idx + 1); + let wit: VecDeque<_> = (&simulator_witness[range]) + .iter() + .map(|el| (log_query_into_circuit_log_query_witness(&el.2), el.1)) + .collect(); + + let current_reads = std::mem::take(&mut memory_reads_per_request); + let mut current_witness = std::mem::take(&mut memory_read_witnesses); + current_witness.push(current_reads); + + let mut observable_input_data = PrecompileFunctionInputData::placeholder_witness(); + if result.len() == 0 { + observable_input_data.initial_memory_queue_state = memory_queue_input_state.clone(); + observable_input_data.initial_log_queue_state = log_queue_input_state.clone(); + } + + let mut observable_output_data = PrecompileFunctionOutputData::placeholder_witness(); + if finished { + observable_output_data.final_memory_state = current_memory_queue_state.clone(); + } + + let witness = ModexpCircuitInstanceWitness:: { + closed_form_input: ModexpCircuitInputOutputWitness:: { + start_flag: result.len() == 0, + completion_flag: finished, + observable_input: observable_input_data, + observable_output: observable_output_data, + hidden_fsm_input: ModexpCircuitFSMInputOutputWitness:: { + log_queue_state: log_queue_input_state.clone(), + memory_queue_state: memory_queue_input_state, + }, + hidden_fsm_output: ModexpCircuitFSMInputOutputWitness:: { + log_queue_state: take_queue_state_from_simulator( + &demuxed_modexp_queue.simulator, + ), + memory_queue_state: current_memory_queue_state.clone(), + }, + }, + requests_queue_witness: CircuitQueueRawWitness::< + F, + LogQuery, + 4, + LOG_QUERY_PACKED_WIDTH, + > { + elements: wit, + }, + memory_reads_witness: current_witness + .into_iter() + .map(|el| el.try_into().expect("length must match")) + .collect(), + }; + + // make non-inclusize + starting_request_idx = request_idx + 1; + + result.push(witness); + + log_queue_input_state = + take_queue_state_from_simulator(&demuxed_modexp_queue.simulator); + memory_queue_input_state = current_memory_queue_state.clone(); + } + + if !memory_reads_per_request.is_empty() { + // we may have drained it already if it was the end of the circuit + memory_read_witnesses.push(memory_reads_per_request); + } + } + + result +} diff --git a/crates/zkevm_test_harness/src/witness/oracle.rs b/crates/zkevm_test_harness/src/witness/oracle.rs index 9b23d0d..3217f63 100644 --- a/crates/zkevm_test_harness/src/witness/oracle.rs +++ b/crates/zkevm_test_harness/src/witness/oracle.rs @@ -474,11 +474,10 @@ fn callstack_simulation( callstack_entry: ExtendedCallstackEntry, callstack_simulator_state: CallstackSimulatorState| { if let Some((prev_cycle, _)) = callstack_witnesses_for_main_vm.last() { - assert!( - cycle_to_use != *prev_cycle, + assert_ne!( + cycle_to_use, *prev_cycle, "trying to add callstack witness for cycle {}, but previous one is on cycle {}", - cycle_to_use, - prev_cycle + cycle_to_use, prev_cycle ); } callstack_witnesses_for_main_vm @@ -983,12 +982,21 @@ fn simulate_sorted_memory_queue<'a>( use crate::witness::artifacts::DemuxedPrecompilesLogQueries; use crate::witness::individual_circuits::log_demux::PrecompilesQueuesStates; +use crate::witness::individual_circuits::memory_related::ram_permutation::compute_ram_circuit_snapshots; +use crate::zk_evm::zk_evm_abstractions::precompiles::ecadd::ECAddRoundWitness; +use crate::zk_evm::zk_evm_abstractions::precompiles::ecmul::ECMulRoundWitness; +use crate::zk_evm::zk_evm_abstractions::precompiles::ecpairing::ECPairingRoundWitness; +use crate::zk_evm::zk_evm_abstractions::precompiles::modexp::ModexpRoundWitness; pub(crate) struct PrecompilesInputData { pub keccak_round_function_witnesses: Vec<(Cycle, LogQuery, Vec)>, pub sha256_round_function_witnesses: Vec<(Cycle, LogQuery, Vec)>, pub ecrecover_witnesses: Vec<(Cycle, LogQuery, ECRecoverRoundWitness)>, pub secp256r1_verify_witnesses: Vec<(Cycle, LogQuery, Secp256r1VerifyRoundWitness)>, + pub modexp_witnesses: Vec<(Cycle, LogQuery, ModexpRoundWitness)>, + pub ecadd_witnesses: Vec<(Cycle, LogQuery, ECAddRoundWitness)>, + pub ecmul_witnesses: Vec<(Cycle, LogQuery, ECMulRoundWitness)>, + pub ecpairing_witnesses: Vec<(Cycle, LogQuery, Vec)>, pub logs_queues_states: PrecompilesQueuesStates, pub logs_queries: DemuxedPrecompilesLogQueries, } @@ -1365,6 +1373,110 @@ fn process_memory_related_circuits( artifacts_callback_sender.clone(), ); + // modexp precompile + + use crate::witness::individual_circuits::memory_related::modexp::modexp_decompose_into_per_circuit_witness; + + tracing::debug!("Running modexp simulation"); + + let modexp_circuits_data = modexp_decompose_into_per_circuit_witness( + implicit_memory_queries.modexp_memory_queries, + implicit_memory_states.modexp_simulator_snapshots, + implicit_memory_states.modexp_memory_states, + precompiles_data.modexp_witnesses, + precompiles_data.logs_queries.modexp, + precompiles_data.logs_queues_states.modexp, + geometry.cycles_per_modexp_circuit as usize, + round_function, + ); + + circuits_data.modexp_circuits_data = make_circuits( + geometry.cycles_per_modexp_circuit, + BaseLayerCircuitType::ModexpPrecompile, + modexp_circuits_data, + *round_function, + |x| ZkSyncBaseLayerCircuit::Modexp(x), + artifacts_callback_sender.clone(), + ); + + // ecadd precompile + + use crate::witness::individual_circuits::memory_related::ecadd::ecadd_decompose_into_per_circuit_witness; + + tracing::debug!("Running ecadd simulation"); + + let ecadd_circuits_data = ecadd_decompose_into_per_circuit_witness( + implicit_memory_queries.ecadd_memory_queries, + implicit_memory_states.ecadd_simulator_snapshots, + implicit_memory_states.ecadd_memory_states, + precompiles_data.ecadd_witnesses, + precompiles_data.logs_queries.ecadd, + precompiles_data.logs_queues_states.ecadd, + geometry.cycles_per_ecadd_circuit as usize, + round_function, + ); + + circuits_data.ecadd_circuits_data = make_circuits( + geometry.cycles_per_ecadd_circuit, + BaseLayerCircuitType::ECAddPrecompile, + ecadd_circuits_data, + *round_function, + |x| ZkSyncBaseLayerCircuit::ECAdd(x), + artifacts_callback_sender.clone(), + ); + + // ecmul precompile + + use crate::witness::individual_circuits::memory_related::ecmul::ecmul_decompose_into_per_circuit_witness; + + tracing::debug!("Running ecmul simulation"); + + let ecmul_circuits_data = ecmul_decompose_into_per_circuit_witness( + implicit_memory_queries.ecmul_memory_queries, + implicit_memory_states.ecmul_simulator_snapshots, + implicit_memory_states.ecmul_memory_states, + precompiles_data.ecmul_witnesses, + precompiles_data.logs_queries.ecmul, + precompiles_data.logs_queues_states.ecmul, + geometry.cycles_per_ecmul_circuit as usize, + round_function, + ); + + circuits_data.ecmul_circuits_data = make_circuits( + geometry.cycles_per_ecmul_circuit, + BaseLayerCircuitType::ECMulPrecompile, + ecmul_circuits_data, + *round_function, + |x| ZkSyncBaseLayerCircuit::ECMul(x), + artifacts_callback_sender.clone(), + ); + + // ecpairing precompile + + use crate::witness::individual_circuits::memory_related::ecpairing::ecpairing_decompose_into_per_circuit_witness; + + tracing::debug!("Running ecpairing simulation"); + + let ecpairing_circuits_data = ecpairing_decompose_into_per_circuit_witness( + implicit_memory_queries.ecpairing_memory_queries, + implicit_memory_states.ecpairing_simulator_snapshots, + implicit_memory_states.ecpairing_memory_states, + precompiles_data.ecpairing_witnesses, + precompiles_data.logs_queries.ecpairing, + precompiles_data.logs_queues_states.ecpairing, + geometry.cycles_per_ecpairing_circuit as usize, + round_function, + ); + + circuits_data.ecpairing_circuits_data = make_circuits( + geometry.cycles_per_ecpairing_circuit, + BaseLayerCircuitType::ECPairingPrecompile, + ecpairing_circuits_data, + *round_function, + |x| ZkSyncBaseLayerCircuit::ECPairing(x), + artifacts_callback_sender.clone(), + ); + circuits_data } @@ -1419,6 +1531,10 @@ pub(crate) fn create_artifacts_from_tracer<'a>( sha256_round_function_witnesses, ecrecover_witnesses, secp256r1_verify_witnesses, + modexp_witnesses, + ecadd_witnesses, + ecmul_witnesses, + ecpairing_witnesses, mut callstack_with_aux_data, vm_snapshots, .. @@ -1434,11 +1550,7 @@ pub(crate) fn create_artifacts_from_tracer<'a>( assert_eq!(witness, &entry_point_decommittment_query.1); assert!(vm_snapshots.len() >= 2); // we need at least entry point and the last save (after exit) - - assert!( - callstack_with_aux_data.depth == 0, - "parent frame didn't exit" - ); + assert_eq!(callstack_with_aux_data.depth, 0, "parent frame didn't exit"); let full_callstack_history = std::mem::take(&mut callstack_with_aux_data.full_history); // Since we finished the VM execution, current callstack entry now should be a root (outermost) frame @@ -1553,6 +1665,10 @@ pub(crate) fn create_artifacts_from_tracer<'a>( sha256_round_function_witnesses, ecrecover_witnesses, secp256r1_verify_witnesses, + modexp_witnesses, + ecadd_witnesses, + ecmul_witnesses, + ecpairing_witnesses, logs_queues_states: precompiles_logs_queues_states, logs_queries: demuxed_log_queries.precompiles, }; @@ -1652,6 +1768,10 @@ pub(crate) fn create_artifacts_from_tracer<'a>( keccak_precompile_circuits: memory_circuits_data.keccak256_circuits_data.0, sha256_precompile_circuits: memory_circuits_data.sha256_circuits_data.0, ecrecover_precompile_circuits: memory_circuits_data.ecrecover_circuits_data.0, + modexp_precompile_circuits: memory_circuits_data.modexp_circuits_data.0, + ecadd_precompile_circuits: memory_circuits_data.ecadd_circuits_data.0, + ecmul_precompile_circuits: memory_circuits_data.ecmul_circuits_data.0, + ecpairing_precompile_circuits: memory_circuits_data.ecpairing_circuits_data.0, ram_permutation_circuits: memory_circuits_data.ram_permutation_artifacts.0, storage_sorter_circuits: log_circuits_data.storage_deduplicator_artifacts.0, storage_application_circuits: log_circuits_data.storage_application_artifacts.0, @@ -1682,6 +1802,10 @@ pub(crate) fn create_artifacts_from_tracer<'a>( .chain(log_circuits_data.l1_messages_linear_hash_artifacts.1) .chain(log_circuits_data.transient_storage_sorter_artifacts.1) .chain(memory_circuits_data.secp256r1_verify_circuits_data.1) + .chain(memory_circuits_data.modexp_circuits_data.1) + .chain(memory_circuits_data.ecadd_circuits_data.1) + .chain(memory_circuits_data.ecmul_circuits_data.1) + .chain(memory_circuits_data.ecpairing_circuits_data.1) .collect(); ( diff --git a/crates/zkevm_test_harness/src/witness/postprocessing/mod.rs b/crates/zkevm_test_harness/src/witness/postprocessing/mod.rs index 8267319..dc5ac4a 100644 --- a/crates/zkevm_test_harness/src/witness/postprocessing/mod.rs +++ b/crates/zkevm_test_harness/src/witness/postprocessing/mod.rs @@ -72,9 +72,21 @@ use zkevm_circuits::base_structures::vm_state::FULL_SPONGE_QUEUE_STATE_WIDTH; use zkevm_circuits::ram_permutation::input::RamPermutationCycleInputOutputWitness; use std::sync::mpsc::SyncSender; -use std::sync::Arc; use crate::zkevm_circuits::base_structures::vm_state::VmLocalState; +use circuit_definitions::zkevm_circuits::bn254::ec_add::input::{ + EcAddCircuitFSMInputOutput, EcAddCircuitInstanceWitness, +}; +use circuit_definitions::zkevm_circuits::bn254::ec_mul::input::{ + EcMulCircuitFSMInputOutput, EcMulCircuitInstanceWitness, +}; +use circuit_definitions::zkevm_circuits::bn254::ec_pairing::input::{ + EcPairingCircuitFSMInputOutput, EcPairingCircuitInstanceWitness, +}; +use circuit_definitions::zkevm_circuits::modexp::input::{ + ModexpCircuitFSMInputOutput, ModexpCircuitInstanceWitness, +}; +use std::sync::Arc; use zkevm_circuits::fsm_input_output::circuit_inputs::main_vm::{ VmCircuitWitness, VmInputData, VmOutputData, }; @@ -102,6 +114,11 @@ pub(crate) struct BlockFirstAndLastBasicCircuitsObservableWitnesses { FirstAndLastCircuitWitness>, pub secp256r1_verify_circuits: FirstAndLastCircuitWitness>, + pub modexp_precompile_circuits: FirstAndLastCircuitWitness>, + pub ecadd_precompile_circuits: FirstAndLastCircuitWitness>, + pub ecmul_precompile_circuits: FirstAndLastCircuitWitness>, + pub ecpairing_precompile_circuits: + FirstAndLastCircuitWitness>, pub ram_permutation_circuits: FirstAndLastCircuitWitness>, pub storage_sorter_circuits: @@ -261,6 +278,52 @@ impl ClosedFormInputField for EcrecoverCircuitInstanceWitness< } } +impl ClosedFormInputField for ModexpCircuitInstanceWitness { + type T = ModexpCircuitFSMInputOutput; + type IN = PrecompileFunctionInputData; + type OUT = PrecompileFunctionOutputData; + + fn closed_form_input( + &mut self, + ) -> &mut ClosedFormInputWitness { + &mut self.closed_form_input + } +} +impl ClosedFormInputField for EcAddCircuitInstanceWitness { + type T = EcAddCircuitFSMInputOutput; + type IN = PrecompileFunctionInputData; + type OUT = PrecompileFunctionOutputData; + + fn closed_form_input( + &mut self, + ) -> &mut ClosedFormInputWitness { + &mut self.closed_form_input + } +} +impl ClosedFormInputField for EcMulCircuitInstanceWitness { + type T = EcMulCircuitFSMInputOutput; + type IN = PrecompileFunctionInputData; + type OUT = PrecompileFunctionOutputData; + + fn closed_form_input( + &mut self, + ) -> &mut ClosedFormInputWitness { + &mut self.closed_form_input + } +} + +impl ClosedFormInputField for EcPairingCircuitInstanceWitness { + type T = EcPairingCircuitFSMInputOutput; + type IN = PrecompileFunctionInputData; + type OUT = PrecompileFunctionOutputData; + + fn closed_form_input( + &mut self, + ) -> &mut ClosedFormInputWitness { + &mut self.closed_form_input + } +} + impl ClosedFormInputField for RamPermutationCircuitInstanceWitness { type T = RamPermutationFSMInputOutput; type IN = RamPermutationInputData; diff --git a/crates/zkevm_test_harness/src/witness/postprocessing/observable_witness.rs b/crates/zkevm_test_harness/src/witness/postprocessing/observable_witness.rs index 7af2aee..3111284 100644 --- a/crates/zkevm_test_harness/src/witness/postprocessing/observable_witness.rs +++ b/crates/zkevm_test_harness/src/witness/postprocessing/observable_witness.rs @@ -26,6 +26,12 @@ pub(crate) type EcrecoverObservableWitness = ObservableWitness>; pub(crate) type Secp256r1VerifyObservableWitness = ObservableWitness>; +pub(crate) type ModexpObservableWitness = ObservableWitness>; +pub(crate) type ECAddObservableWitness = ObservableWitness>; +pub(crate) type ECMulObservableWitness = ObservableWitness>; +pub(crate) type ECPairingObservableWitness = + ObservableWitness>; + pub(crate) type RamPermutationObservableWitness = ObservableWitness>; diff --git a/crates/zkevm_test_harness/src/witness/tracer/tracer.rs b/crates/zkevm_test_harness/src/witness/tracer/tracer.rs index 8b05a06..fb69d49 100644 --- a/crates/zkevm_test_harness/src/witness/tracer/tracer.rs +++ b/crates/zkevm_test_harness/src/witness/tracer/tracer.rs @@ -83,6 +83,11 @@ pub struct WitnessTracer { pub sha256_round_function_witnesses: Vec<(u32, LogQuery, Vec)>, pub ecrecover_witnesses: Vec<(u32, LogQuery, ECRecoverRoundWitness)>, pub secp256r1_verify_witnesses: Vec<(u32, LogQuery, Secp256r1VerifyRoundWitness)>, + pub modexp_witnesses: Vec<(u32, LogQuery, ModexpRoundWitness)>, + pub ecadd_witnesses: Vec<(u32, LogQuery, ECAddRoundWitness)>, + pub ecmul_witnesses: Vec<(u32, LogQuery, ECMulRoundWitness)>, + pub ecpairing_witnesses: Vec<(u32, LogQuery, Vec)>, + pub monotonic_query_counter: usize, // pub log_frames_stack: Vec>, // keep the unique frame index pub callstack_with_aux_data: CallstackWithAuxData, @@ -109,6 +114,10 @@ impl NumberedApplicationData { } } +use circuit_definitions::zk_evm::zk_evm_abstractions::precompiles::ecadd::ECAddRoundWitness; +use circuit_definitions::zk_evm::zk_evm_abstractions::precompiles::ecmul::ECMulRoundWitness; +use circuit_definitions::zk_evm::zk_evm_abstractions::precompiles::ecpairing::ECPairingRoundWitness; +use circuit_definitions::zk_evm::zk_evm_abstractions::precompiles::modexp::ModexpRoundWitness; use std::ops::Range; #[derive(Clone, Debug)] @@ -144,6 +153,10 @@ impl WitnessTracer { sha256_round_function_witnesses: vec![], ecrecover_witnesses: vec![], secp256r1_verify_witnesses: vec![], + modexp_witnesses: vec![], + ecadd_witnesses: vec![], + ecmul_witnesses: vec![], + ecpairing_witnesses: vec![], monotonic_query_counter: 0, // log_frames_stack: vec![ApplicationData::empty()], callstack_with_aux_data: CallstackWithAuxData::empty(), @@ -373,6 +386,34 @@ impl VmWitnessTracer<8, EncodingModeProduction> for WitnessTracer { wit.drain(..).next().unwrap(), )); } + PrecompileCyclesWitness::Modexp(mut wit) => { + assert_eq!(wit.len(), 1); + self.modexp_witnesses.push(( + monotonic_cycle_counter, + call_params, + wit.drain(..).next().unwrap(), + )); + } + PrecompileCyclesWitness::ECAdd(mut wit) => { + assert_eq!(wit.len(), 1); + self.ecadd_witnesses.push(( + monotonic_cycle_counter, + call_params, + wit.drain(..).next().unwrap(), + )); + } + PrecompileCyclesWitness::ECMul(mut wit) => { + assert_eq!(wit.len(), 1); + self.ecmul_witnesses.push(( + monotonic_cycle_counter, + call_params, + wit.drain(..).next().unwrap(), + )); + } + PrecompileCyclesWitness::ECPairing(wit) => { + self.ecpairing_witnesses + .push((monotonic_cycle_counter, call_params, wit)); + } } } diff --git a/crates/zkevm_test_harness/src/witness/vk_set_generator.rs b/crates/zkevm_test_harness/src/witness/vk_set_generator.rs index cba7430..b8d1995 100644 --- a/crates/zkevm_test_harness/src/witness/vk_set_generator.rs +++ b/crates/zkevm_test_harness/src/witness/vk_set_generator.rs @@ -206,6 +206,46 @@ pub fn circuits_for_vk_generation( let circuit = ZkSyncCircuit::>::ECRecover(circuit); result.push(circuit); + // modexp + let circuit = ModexpFunctionCircuit::new( + None, + geometry.cycles_per_modexp_circuit as usize, + round_function.clone(), + None, + ); + let circuit = ZkSyncCircuit::>::Modexp(circuit); + result.push(circuit); + + // ecadd + let circuit = ECAddFunctionCircuit::new( + None, + geometry.cycles_per_ecadd_circuit as usize, + round_function.clone(), + None, + ); + let circuit = ZkSyncCircuit::>::ECAdd(circuit); + result.push(circuit); + + // ecmul + let circuit = ModexpFunctionCircuit::new( + None, + geometry.cycles_per_ecmul_circuit as usize, + round_function.clone(), + None, + ); + let circuit = ZkSyncCircuit::>::ECMul(circuit); + result.push(circuit); + + // ecpairing + let circuit = ECPairingFunctionCircuit::new( + None, + geometry.cycles_per_ecpairing_circuit as usize, + round_function.clone(), + None, + ); + let circuit = ZkSyncCircuit::>::ECPairing(circuit); + result.push(circuit); + // ram permutation let circuit = RAMPermutationCircuit::new( None, diff --git a/crates/zkevm_test_harness/test_proofs/aux_layer/compression_for_wrapper_proof_1.json b/crates/zkevm_test_harness/test_proofs/aux_layer/compression_for_wrapper_proof_1.json deleted file mode 100644 index 714605b..0000000 --- a/crates/zkevm_test_harness/test_proofs/aux_layer/compression_for_wrapper_proof_1.json +++ /dev/null @@ -1 +0,0 @@ -{"CompressionMode1Circuit":{"proof_config":{"fri_lde_factor":2,"merkle_tree_cap_size":16,"fri_folding_schedule":null,"security_level":80,"pow_bits":0},"public_inputs":[21633639700550076,48045916334222865,20177189711023887,63059293225404974],"witness_oracle_cap":[[8844676175549770232,6583850075550115690,13666586248576585481,256888860907815830],[4375819041444848485,5110939999110161520,9653814148314128608,598347526826524559],[14516237582001420425,2223773337956207717,14276546257794792922,2990749519932146870],[8120973060269282422,5837906734949881879,14563946469188618159,3141835658311057347],[15224653208001037214,5022689223541410979,1430401924588209865,1535292389881425994],[8971180122372586049,18131009073572853895,15943956471673918274,3227433527133184930],[13543708924083374165,3404295461749833191,9553969478893918530,1908064317331915484],[16498919866525390693,6000479482517816000,2140635677434672813,2609906694128897318],[1448253690725566128,855690520126432918,930262454351654755,34414059668875222],[1445171867903250364,15744489819416388386,1620636623117663126,2671945630523902382],[7262053180782096644,7088703731993255856,4094447191172482170,2356761806649885512],[14288001532998371044,15778511838950403736,7922417323152852134,2745847571440899291],[11493374110359314569,10726408648342908395,17695142520930434826,296932846174426187],[16654051699644279466,4258306041887987607,11260260034454932738,1951535121846465109],[14885726996356931263,16517540517326557170,17583168079479348977,3366507404377814345],[14870288668413096391,989162357081332964,9800022565262135107,183073198325673047]],"stage_2_oracle_cap":[[2713487605793100059,10370539147956616831,7489007792217475141,2063218982658183349],[4635513417363864026,11385635584299354763,15298307110261285988,2056602455163963304],[712045126744147875,16380446708164716263,17875192904280957020,2010508572532755620],[12333904546236226712,4580099936012117153,9294850694382282237,2987027048709572722],[3264609992452891302,6300611694246975580,1222290790434670644,1349870384353995591],[16568439558819652192,3667973317056896355,16749334336332011569,2519753249624568913],[16634083645695313245,309362137278044749,14528574939099390275,217029467390801736],[1339390012443900752,14195057114753320885,9390187366328212822,2313295938412701066],[15910877499625845251,16706786280402975268,6390972707183554073,1425445562134744006],[653963390311493213,11328131637328752939,9110276026442620930,2246990863118495571],[12713808632929797026,14106338645786617313,10696666725704671943,541506229973093201],[9086218073508038786,717486575736325933,6670482054169768624,2893521414115105852],[11710585725406534462,15779509743189931479,2187942076106667976,1557644865576925009],[9181529533134482715,7513942864784447380,3387657492075900211,458629993912112484],[18416957705222629354,12815200738193154142,10737130045285297898,1612562140327060318],[3168090934639875056,14032405859739574256,3500692247033524876,3405728536222344530]],"quotient_oracle_cap":[[8126448901209707565,7493244014146128266,12245457357743627483,206974514072702631],[15118640489164036289,2856140671160789855,12619239728467203212,74116305006461213],[10204388911698599247,9640316688258082408,11119031895423536316,366610651866537268],[591330534627750718,8439706887834301945,18407698302995972588,1154428900764966588],[3619911816081101271,12719486017746310985,7845908939359285707,2424246646757900651],[7881927259972562475,3660843872952279860,6128164999047392956,1473148787201321672],[3024153860205483842,8544234613782337359,3722611294624778108,980543270552803977],[11176261781493964223,5951243792228098744,5618676724200272788,2950109542193905686],[16052445853754520845,14084232932455627210,5586521449003472080,39966762994820528],[10730585942807647181,14080138060420035657,8903827122571282543,2184844261978929373],[11621080697152428453,1149590680740107667,4438293927262461876,2685187988683282098],[3216798224442949220,12047293272855804944,17483274987401064792,146835470157837054],[10783337675776571063,1448699083631015244,1344079293231870632,2624261056589864951],[12170354737618384480,8034727935131408781,10885384496950672266,199548995196772456],[7132770741431919452,13818067776679570924,937081224195457446,2709653169869128676],[8080562823914932794,3554195904354704484,4522678156297610915,552279379797836333]],"final_fri_monomials":[[8998092654957319715,9438910629198502298,4029675763269293339,15876362578429018837,12430007116226694718,2525605450954986208,16940983418677057654,7725561645247455194],[16273648128741099452,7777384626459149391,10340158940972408004,6662710762095648887,13739327281723970467,15988668549951659071,16458980159684012602,2297017236006987250]],"values_at_z":[{"coeffs":[267005474841715432,10783565582171727454],"_marker":null},{"coeffs":[3093038880434442140,8903154273068786586],"_marker":null},{"coeffs":[13086635101388733490,6966131402497799423],"_marker":null},{"coeffs":[4333966908566272539,2459585239845862892],"_marker":null},{"coeffs":[3360586831701505145,7213396696036856576],"_marker":null},{"coeffs":[2843684015207213594,16981175305720574993],"_marker":null},{"coeffs":[9266231666252447841,15761790789816084570],"_marker":null},{"coeffs":[15645277967267755529,15729513152515317544],"_marker":null},{"coeffs":[14021501653596824640,3022101180754984813],"_marker":null},{"coeffs":[16238157264963071193,10280619387577429898],"_marker":null},{"coeffs":[9476718130555677636,17555313002441027650],"_marker":null},{"coeffs":[5969661658982027761,11617439965324736065],"_marker":null},{"coeffs":[4858714818680719137,17471874846019917948],"_marker":null},{"coeffs":[1868889981625803932,17660953221149558932],"_marker":null},{"coeffs":[7087899526445159538,14468891461193067870],"_marker":null},{"coeffs":[8785752040167398483,5528787055417606766],"_marker":null},{"coeffs":[17361889279647151610,13068757337000150320],"_marker":null},{"coeffs":[16043494220544358507,3456676505679938909],"_marker":null},{"coeffs":[5811484853056574485,12047682157043283090],"_marker":null},{"coeffs":[14412674474441107429,922371226746427004],"_marker":null},{"coeffs":[817923558904727541,2769801467253808859],"_marker":null},{"coeffs":[1233720730468865858,14144378526822883616],"_marker":null},{"coeffs":[6929173119480288358,401621627092699193],"_marker":null},{"coeffs":[16014688079063854505,11800183491275197416],"_marker":null},{"coeffs":[7740248819673761106,4848359393924222859],"_marker":null},{"coeffs":[10408521963988288602,12410560098667422296],"_marker":null},{"coeffs":[7072318769291277763,14475122918594268895],"_marker":null},{"coeffs":[5185559879002409657,13453263610026947754],"_marker":null},{"coeffs":[10363717013788576928,14512479666379041728],"_marker":null},{"coeffs":[8218614391146770954,3389442470777292957],"_marker":null},{"coeffs":[8943300036597860587,6563071417595433875],"_marker":null},{"coeffs":[7214922039928036237,10650701920549133739],"_marker":null},{"coeffs":[18190748277096020138,12221275458933543904],"_marker":null},{"coeffs":[1623431627163210840,5883315556022294052],"_marker":null},{"coeffs":[11667812856834928932,11898488327762129112],"_marker":null},{"coeffs":[7222098160473327377,14100200095889578337],"_marker":null},{"coeffs":[1349353752751025182,3201005861441763665],"_marker":null},{"coeffs":[1279375737574786147,7223098952810796306],"_marker":null},{"coeffs":[18342700687381950456,11142587430853453664],"_marker":null},{"coeffs":[16459974764962491313,14921929641958649661],"_marker":null},{"coeffs":[16274172439305024965,9808755373129213199],"_marker":null},{"coeffs":[14736878529674038338,14264812863846521167],"_marker":null},{"coeffs":[13905099416008190025,7277905738685672808],"_marker":null},{"coeffs":[5894322810732287743,1584784304026500792],"_marker":null},{"coeffs":[13997520619398151190,16593587348199194788],"_marker":null},{"coeffs":[14803605331884751490,16942379492964368341],"_marker":null},{"coeffs":[9315650048490250106,5430419293515506663],"_marker":null},{"coeffs":[3184244145076490830,15942702073066085725],"_marker":null},{"coeffs":[15920048914718685347,7374973050161944315],"_marker":null},{"coeffs":[11025846083588977617,11727535386585813341],"_marker":null},{"coeffs":[12266133799080781962,5847841166651874610],"_marker":null},{"coeffs":[14697861152667093178,14098913615914832552],"_marker":null},{"coeffs":[3657570931276001740,959745123738116402],"_marker":null},{"coeffs":[4545578655987472185,979600121833109017],"_marker":null},{"coeffs":[16312569246315977653,7180045214142181367],"_marker":null},{"coeffs":[7178866814445877750,13385898691029343707],"_marker":null},{"coeffs":[16786336450443586612,16149063033730719494],"_marker":null},{"coeffs":[15708659759225223286,9063764868846481723],"_marker":null},{"coeffs":[905585522094127847,5638688115919999478],"_marker":null},{"coeffs":[1905962139554232246,15383653007001723421],"_marker":null},{"coeffs":[10452634577067563526,1559437719766591393],"_marker":null},{"coeffs":[10141726550018671001,17500115220455602716],"_marker":null},{"coeffs":[2436009980679565300,1888364339694865518],"_marker":null},{"coeffs":[3548275981568686792,5069942760210276640],"_marker":null},{"coeffs":[7299000742671262925,16621664748536918100],"_marker":null},{"coeffs":[15637247159380279406,11306338848792869179],"_marker":null},{"coeffs":[6557235369133041113,15990243440510622369],"_marker":null},{"coeffs":[17175560011732918314,11693670006653802487],"_marker":null},{"coeffs":[1146065302638451422,6866807692480000661],"_marker":null},{"coeffs":[15625878029790598573,7791270313226904193],"_marker":null},{"coeffs":[12436750665561213994,17059972934028057876],"_marker":null},{"coeffs":[14764070786501158120,1723600629225800001],"_marker":null},{"coeffs":[16590185271660618711,4977651525429362328],"_marker":null},{"coeffs":[3313961636383014079,13902445899355660939],"_marker":null},{"coeffs":[18195062798859324926,9135922156681727195],"_marker":null},{"coeffs":[15487123708072288980,7288893274998567589],"_marker":null},{"coeffs":[12718598075717213563,13105015823286951601],"_marker":null},{"coeffs":[6721002199586214204,2410489233024748888],"_marker":null},{"coeffs":[16017547453429852809,4782107898850302897],"_marker":null},{"coeffs":[8546947306998723028,14160553475161311937],"_marker":null},{"coeffs":[15516540447943516134,11539704445892356786],"_marker":null},{"coeffs":[148673356683059127,17687860774993371573],"_marker":null},{"coeffs":[17044172595474269540,12058870697830840513],"_marker":null},{"coeffs":[3662755918677748070,797651927254836221],"_marker":null},{"coeffs":[2448895110909322525,16573109370394292947],"_marker":null},{"coeffs":[15128636402598183443,1849297697186333804],"_marker":null},{"coeffs":[14834921777317661300,5747722843704354086],"_marker":null},{"coeffs":[2858581493707321895,10834835057813849109],"_marker":null},{"coeffs":[10093807475052665339,1708509020236807064],"_marker":null},{"coeffs":[4946259544053071394,6442894097256038487],"_marker":null},{"coeffs":[14491804721538191934,12217052147676431365],"_marker":null},{"coeffs":[12050113119417095685,14564883333639256162],"_marker":null},{"coeffs":[5792470558490775638,15320849448645333463],"_marker":null},{"coeffs":[13610662030229999707,12932747081208032174],"_marker":null},{"coeffs":[4158340867173682834,14581075376493269923],"_marker":null},{"coeffs":[5945388468910052248,15964210432429991249],"_marker":null},{"coeffs":[9164051002238462397,17851479147290062063],"_marker":null},{"coeffs":[6007607321811040270,17458579592194846458],"_marker":null},{"coeffs":[9013718150254348480,3680422910511258298],"_marker":null},{"coeffs":[7350975070531329078,5638616693062735213],"_marker":null},{"coeffs":[13932192618961741552,16029693620905507864],"_marker":null},{"coeffs":[6068211895472454908,10049380715590580630],"_marker":null},{"coeffs":[1544133361397346965,10686391533278676424],"_marker":null},{"coeffs":[4927943279715574174,13933564253891637014],"_marker":null},{"coeffs":[8832993609363701792,9776081298345785867],"_marker":null},{"coeffs":[4304053683882747714,9719700126052194042],"_marker":null},{"coeffs":[8822868797087510779,15984948773146715687],"_marker":null},{"coeffs":[5784148485229746704,1866847520262118748],"_marker":null},{"coeffs":[4997842014608408148,15369328130322296586],"_marker":null},{"coeffs":[16950387962174892794,4870519297914733320],"_marker":null},{"coeffs":[14835395307128039718,11080865854427949416],"_marker":null},{"coeffs":[13042528252791534546,14335987043557160761],"_marker":null},{"coeffs":[17693097349268049338,4506399231120224983],"_marker":null},{"coeffs":[7149495116105303755,12053096577303800112],"_marker":null},{"coeffs":[16302320718160823690,10081590277729409373],"_marker":null},{"coeffs":[9533257096533001757,14962371518013798194],"_marker":null},{"coeffs":[10173381760209699394,12327298371395927651],"_marker":null},{"coeffs":[16186361911040749541,13783933194417512031],"_marker":null},{"coeffs":[6462532395458643222,5094335679560891009],"_marker":null},{"coeffs":[1878082823122950384,10008215638593648209],"_marker":null},{"coeffs":[2803877530164049306,2560521817455225238],"_marker":null},{"coeffs":[6301972040271509147,5149081453664403117],"_marker":null},{"coeffs":[1075015069347321173,5502410759177158825],"_marker":null},{"coeffs":[9051612317992053741,11597498750660250960],"_marker":null},{"coeffs":[11947046301532799727,15468845766173184373],"_marker":null},{"coeffs":[4889469347798327086,4532727097879795866],"_marker":null},{"coeffs":[2259260947500307432,9509555426411785655],"_marker":null},{"coeffs":[1989394439592872564,5618867963125266749],"_marker":null},{"coeffs":[11723124515661506420,17287870986663826312],"_marker":null},{"coeffs":[13895735980354317780,845997933281466702],"_marker":null},{"coeffs":[536573064219933953,15688414244977482062],"_marker":null},{"coeffs":[14633199883203105599,4170212663917195093],"_marker":null},{"coeffs":[16473548613948980473,6412656588656820537],"_marker":null},{"coeffs":[6977754298167753905,3989209654926542591],"_marker":null},{"coeffs":[16251240432225938758,1032147055367714933],"_marker":null},{"coeffs":[9565859573415211912,527414217741121760],"_marker":null},{"coeffs":[7479757809070700786,16573630047727428789],"_marker":null},{"coeffs":[11989721569405926876,3506768173487651237],"_marker":null},{"coeffs":[2062542872659587522,13128256795006337124],"_marker":null},{"coeffs":[990486577967698861,14455697684704851300],"_marker":null},{"coeffs":[18421472562781143472,3066141272596893401],"_marker":null},{"coeffs":[8139441640627884479,10826635369386083882],"_marker":null},{"coeffs":[4364797070272251466,8698868686212742160],"_marker":null},{"coeffs":[6790903557723882598,11250484151039131448],"_marker":null},{"coeffs":[15199452963208194412,7264504819860901406],"_marker":null},{"coeffs":[15058012224075704199,5736751054818329729],"_marker":null},{"coeffs":[18402352008428213500,9353343399783552345],"_marker":null},{"coeffs":[16832965988367910863,7861408567980957520],"_marker":null},{"coeffs":[15288698127816490682,12355365607063279726],"_marker":null},{"coeffs":[11298990093271294523,14671374599171472883],"_marker":null},{"coeffs":[592904607981106355,4569423402910544778],"_marker":null},{"coeffs":[12012500313297302438,3353005369002360349],"_marker":null},{"coeffs":[8753219580840509237,6386962189282977421],"_marker":null},{"coeffs":[636688022342503648,12626778339628942186],"_marker":null},{"coeffs":[11550245291091363203,2309658790698272812],"_marker":null},{"coeffs":[1222459430397137720,16701085048933690404],"_marker":null},{"coeffs":[308642549569025382,4064523864567684174],"_marker":null},{"coeffs":[909530133491136280,10727288407582584000],"_marker":null},{"coeffs":[2812629660679626350,16711574551267207339],"_marker":null},{"coeffs":[9467968819017565349,1954234869378449582],"_marker":null},{"coeffs":[15231990930527582554,12068869166724279489],"_marker":null},{"coeffs":[4130524025938865677,8233974306986427115],"_marker":null},{"coeffs":[11616214285957114105,424515099076510330],"_marker":null},{"coeffs":[13931869772100800396,4807793460108687723],"_marker":null},{"coeffs":[2149230651495222932,2245333219545320196],"_marker":null},{"coeffs":[8457156741466464239,11957622728458007974],"_marker":null},{"coeffs":[865115286133887839,16258749148199876761],"_marker":null},{"coeffs":[2678012116669506089,10876836209885400023],"_marker":null},{"coeffs":[14292609920986549022,12011094763805450894],"_marker":null},{"coeffs":[3752695770414896651,4279034204087346678],"_marker":null},{"coeffs":[11814343587566706794,5975773068480352585],"_marker":null},{"coeffs":[17707559701892357681,18405023842690121992],"_marker":null},{"coeffs":[17840687390927529035,11337371977934529095],"_marker":null},{"coeffs":[12921433370914919500,46014411421110266],"_marker":null},{"coeffs":[17447977044437119737,13886121527910330855],"_marker":null},{"coeffs":[3872924299911790916,9351378565705939903],"_marker":null},{"coeffs":[15396681184379455001,10300637965443425213],"_marker":null},{"coeffs":[5604909797604063691,5901408976235852873],"_marker":null},{"coeffs":[15697381310487420243,11265964218596455660],"_marker":null},{"coeffs":[1375299410321735764,14986619008107035707],"_marker":null},{"coeffs":[1526094135333338034,2406905692242541416],"_marker":null},{"coeffs":[8885519905811798806,10479425998875652271],"_marker":null},{"coeffs":[9902513968808478807,14848252592732105441],"_marker":null},{"coeffs":[14677504142707347898,3991356770019273314],"_marker":null},{"coeffs":[17989094332885089550,670688720720473480],"_marker":null},{"coeffs":[2572774919617402703,6324198450656918240],"_marker":null},{"coeffs":[13181791395770274661,5966321314675250889],"_marker":null},{"coeffs":[447037187288284527,9973448828331976836],"_marker":null},{"coeffs":[12979075961186575982,6472126309124255126],"_marker":null},{"coeffs":[9002284153877823668,9843278859927705832],"_marker":null},{"coeffs":[14284305643859951427,3170227344501498712],"_marker":null},{"coeffs":[166537182563176894,18253649920020282505],"_marker":null},{"coeffs":[16854656103847564855,9563880887627067224],"_marker":null},{"coeffs":[10578432456833490888,8171129484307362967],"_marker":null},{"coeffs":[2645773307741955438,7136250222581937522],"_marker":null},{"coeffs":[3454630653873845103,11836795388423204],"_marker":null},{"coeffs":[15125399065509655681,8317193348971560654],"_marker":null},{"coeffs":[15570289028763488551,6245373628553914846],"_marker":null},{"coeffs":[9851562477834419105,9978809603880937482],"_marker":null},{"coeffs":[15957121900606463982,14043374889757162088],"_marker":null},{"coeffs":[6311568571911739344,7750277701008835968],"_marker":null},{"coeffs":[17072162542975324259,15620093276857458792],"_marker":null},{"coeffs":[8014457041161051136,7316595011667368542],"_marker":null},{"coeffs":[14472955556182131894,480462917633704565],"_marker":null},{"coeffs":[55887292610236099,12644437854392955684],"_marker":null},{"coeffs":[581551871254784446,11200947162188368629],"_marker":null},{"coeffs":[8884488915750386536,17976076729745073710],"_marker":null}],"values_at_z_omega":[{"coeffs":[15368309226390002947,72394664188044351],"_marker":null}],"values_at_0":[],"fri_base_oracle_cap":[[16001709499448344476,14820222707564580515,12744466032576663571,2582772672102738669],[1471191026957313969,11494268543818389338,6337897290845586336,362836141095662600],[17595896964893497292,7718317780793959563,17278407533119987623,133440826138061236],[4988704233121655054,4690880819282247762,16440994748924291248,2379285965046593084],[13171943102851875360,9635198674159205317,722826615848899051,2441910869486871502],[5217081095107753906,8412634781568989617,2828675469727117663,193525279317759762],[1827386449301371853,4609524277387013160,17033903040579396717,1618788863810862829],[16389816753502846933,680685144534170783,13581945077066558397,542727901486264103],[9721043048056819219,11525152927311170170,6498699968037868098,2555817642735375241],[1689590669551233943,17060504916594917776,10101200793652958902,1476346599080895891],[10401848512486679641,16153167318505788760,6677970445335109486,2143205977157801364],[12579217816488819012,7344777556193816493,170508741748307746,2701868830189665871],[16872251136714688241,6057053198926644450,413480218643088442,2355600634751474848],[14480711131698271999,13365909058712493642,8172944763826780964,2531448083706824222],[10403632661385621752,2244910387088390780,13926613305672366189,1987635957783317499],[10721877452844549995,9298405903890904420,4522793842108837772,2977231681706785031]],"fri_intermediate_oracles_caps":[[[1404505002950196398,2235001745952913563,1500800829522498009,104505610781280212],[10915645800981728601,16834948500384859669,11635952372204259479,3248057416672697724],[10310436757066756832,8056950822938352818,3195800086449566557,279952210947974097],[8290594727941661165,16094207879260346968,6738626163511080979,3168486389928222364],[10314243206370446635,15297120590403266054,229696710830261426,2221879004967645036],[8426375317572652472,17939036196501744051,9775564105115981034,33029603388648730],[2278428261525874912,693093507369101207,9483384542430364319,1951197592179533656],[5954493967330584415,9502255648429843519,12262840168177749128,1895905265093256684],[798221005760777790,17978837610546833906,15045928667448157117,1467727850263369945],[17404102094813168376,4856612280887081248,12700206759419726250,2654489894357005586],[5323657700728458639,16983832476272710821,12085893197638357620,486921470433033096],[7672376412790064278,14886982518106507901,10613348698164361955,2086855008809110801],[4686823168860044005,10738758586098293563,9765160531022893068,447993221293923209],[9221450478852682047,11539420713196250377,16758494729385809741,70523289353490290],[13432057839541786959,6236652836416025687,4327641370509609841,3320460100025007922],[1034701139735359377,13335779135295921900,15531858439525494710,685622844900450917]],[[16153733565662406773,18029442500376682296,11924201952827151813,2535464259236797607],[13545579529578722495,13048297904218662195,5870428786118320904,1951636846427411435],[13829574309775668478,2911052087386346736,4076006150724197196,3130674756076614476],[9966241207858358845,16156401446270405406,10441413280035608030,89742416679537626],[9540430141116102526,6503978356878305789,12668084278233011475,2282254352208360129],[5402244535433566389,13229565621132408952,15578122386514346802,502536738284303254],[9371783878454028938,12040334511183129832,11708655814943295013,3417084238195803355],[900498984197764145,12888703159917352966,10072494679167758894,3199615218714736617],[2047148528222639448,16025998609565189920,11659986513314296472,1512675032784062264],[18370434926797119782,13540831430373191178,16795883245448389286,161674420029392237],[2303344071363449722,1079271809659072596,14441699092536417832,122616240837690978],[12107765411819751515,14794491901050627451,14462741471775202411,430778761757032668],[8837166267493602473,12314357594702394641,17165638181808746414,199288217688421476],[6814764789634467298,9785966451398384184,7355550725787810535,2650428000206523425],[12764663508881534316,423839959192629182,1756311577167915900,19322268209439704],[10402425722309867202,1123117784130174608,16700517182660032100,3428784544900819990]],[[13593599816551536460,13440023752776486367,2352413407814187465,1073926276782280829],[8461746451461731920,12709026628136215625,16897754208126440517,1235157879262865479],[5066920674321177296,1385368519404376050,11781078605232585235,2632392155255104733],[10640697319372605967,2928241028847951459,4474737400548759967,3384237115057493737],[9213744227119133388,17379468964780799779,9745285344551818834,1841886759512962113],[8399446245743646549,5875925432388644093,14798951865223935319,1202344975409942142],[9658870861697142213,14036816264326242688,8733953442905757451,2053985300153878284],[4140098530798622210,11075941672715723585,15155847382072025919,3175338353969275222],[14252923572377934611,1542134998831342123,8172293706587818518,2718108141652724244],[14085419155824465196,5733654814212146715,6089100983359364720,2238996235322137807],[14415774491277304349,3702752510648428115,2260121722906152697,3077860765739822310],[335889385005619775,17818226773975829488,11494786033478264184,2943968162892137191],[12449991328720620105,3977302232573175952,9989650647338699660,291590821046171818],[10179959458615737495,6379672609849548277,6210358064177895266,2467986715003379514],[12884628403515402326,15542030086064466193,3936170801358733965,680048588788701304],[1056126867640001144,9879396982351631641,12109383058719199845,96952330842461781]],[[13033061953927257849,2544894538930012782,1126751917461926644,623857957301719760],[13395753229317240441,13535219829731526714,12901909209495195448,3397431797951100229],[7761702544694531951,3644645485988410401,14612198572052219234,965030581728680470],[8213930802020101351,4675210693368916820,14368694368560867253,1773367793978141271],[15546662848335791380,15090381129934120394,14894246705030916113,546326896993645709],[1775539582559114086,652724252801028308,13581635592076283904,2945222222745149832],[13035072558608855319,7349489488762135200,15762179043512308889,2650412089550845019],[15377258622270592859,1953432050100389436,10853493777812226766,381913834747285038],[1397805383998228867,11418495141662938515,7798166835920770939,3376196890556404169],[9245942584057223942,5919576212357338035,202705800857061696,2068008624995822647],[1239928104693506840,7427403520713688712,2017740168600516561,2355766226412073142],[17637663068965340757,709172498506042650,17964217990039520982,113046166351111833],[14547866262133278227,10942266950539995419,8918640647782559871,3370268941712508508],[16765068143348057972,10741397874758638717,7390825875736700794,1884149950312575136],[16731231638567632358,17015040664036407382,5082404376991524529,905567621637398769],[6159198299998534879,5140709060617596278,13493481277443849617,2804271234322094850]]],"queries_per_fri_repetition":[{"witness_query":{"leaf_elements":[17970123841656968559,13481790510083917202,2286784466199587102,5914087126415036404,15841926592725067655,4095052456949490275,797471193130356931,18013317896807681454,11704049956295146200,3758675282387476743,16715745698756112299,3962609814687525252,16089466656220969538,8288220562203817327,17529332409740078934,11000335161450989654,14754118548055574898,18375819843412113794,80252843665381537,16158328041780187130,14616917967723080495,8474208637876086789,2811691899835475105,7660403265570579564,14430517742170641492,4081085988668725022,13378061549720205724,1351451880948139552,5645655580912224072,17698828940214560826,12725606285971338882,1062109071466974927,892703602386091914,1894837816959611332,10380308992226978279,12136925149392240448,8961636483819017287,9220428058388094986,4987544991497060484,6720485693986266055,135458220587305938,5723635509488706158,15508161549143191733,6147575560020153112,12680056789137623665,12119489425281075310,2385037051079704026,14556095891526837179,8512016946575405515,16135029292060563171,8900180206088546909,1475405593451981887,15725528460339047368,15546873454335512116,9517253975325249857,13871595491152181966,15171973748470912242,6266286105442402613,11709865530461298833,2909753041898093178,17940128008734131033,17621079339695862426,10501027805444974944,14074741116525626185,5862256377718332612,2907348050731824671,17970979375497438822,11018071759901739622,1812861084336709525,10972185648111560482,6889007823924528855,12171007918452196078,1004844764526218695,16700990955344882705,14625999933659698606,8557669488878864106,9714413970466538362,15917116343636000645,18281821696790755160,18119057401462019422,728423191691159849,1237978038368928150,5008828746227026881,17082804009709890443,4840249556446494030,7547286114358999921,10139495905007250952,13814250249951405112,3268831253043448838,2962362656090608457,14738377641267293806,5622962214532221093,17885942087038888068,16762040393532265873,11303914261984199367,1949942933475121295,6063745684106960807,360384877947504700,8022408217090973985,4005296309391275964,16109172232629035325,11083460150121610943,11779830387816197987,9260271952114769267,10849838570811377493,18261543051921575890,1169652441886396707,10169987011001869993,10557202225064403418,16008360185096407955,8362022159849664868,10810039583589108222,4838523096180744082,15346235903124340562,15718114102160477180,4351770169919538095,16041811856979180189,2913801957681237331,16120028650024673884,3339612537813660339,1440997363860900130,17720660358259971926,16458324785516164361,63704470059080870,3948023693798519007,6026051249420781562,6493659260819100854,12638723583932896313,15114090871520704549,3029970397081241338,18392690222114596770],"proof":[[17788909700568759053,3970010317834349097,14271947439185397897,2389638249271245333],[8607125908160773000,18190610247285068661,17401255933968883594,1950195010998675510],[16138109954406164865,18332106788171926062,3493872483918638848,139935410359087745],[7088171585709415622,18006562414438319339,5114932369578051593,756822065932326026],[9564136269001489876,5506717972866169866,8261276163372671532,774193398371418062],[9421331588290320813,15183285383028952063,3565519315185806842,1169499095472457270],[3346917119334569857,4958334356482420668,6964719270748597289,622300613688029331],[4554392212335034086,15359243864478662811,9239344770013234341,181056284725246820],[4405409089704802620,11150355115603585676,14565831493461213364,2028581452564901287],[12460768900444784020,5576594848232282200,17416041079741544584,1123546804466381108],[2503665153956736773,17701251493816279618,14412658640691206573,26568670245358184],[6902291296385525908,6282427285539483573,1059247308760891000,1681441560494504270],[18265673367752908138,2754640070048023901,11724482278947537297,1725637765201767315]]},"stage_2_query":{"leaf_elements":[16723521335086567558,1491889904104646169,15987942644167580409,15182539382296250561,16878510349009371046,2239642356694345893,8459630893904936264,6668888493288017281,1839322360099462105,6496635400108412299,14525782393395726520,3251331937311277103,17387371513280940731,15650613155405433425],"proof":[[10694850792172159063,8829921499612912032,2900892484398834542,2098214348907317053],[15550391350382084589,1999534447241095900,1809932163491434307,3033191425490713782],[11768087787552530132,11343428795055416661,3550507803181346768,2908488535668877786],[12530275901483714040,14404020186491693012,13891032938439676112,3294638454953365361],[953718667548600096,6572888664396587849,17534634430759432415,2307830360569004093],[198081897449153343,6369751876418558381,2926735842838550698,2732885143298494519],[12113820430435468280,4741122413162821663,17886653308441285726,2951536505979050163],[8072424421165930287,5673025404592564179,4731011812140362184,2174488583371214694],[10963883540834088187,12411368101745084128,9295316295488679821,3074278677398873598],[15926784692644144937,10105749941195956482,11575877616074059687,1674953854457558853],[17653605708761678484,11128412812524188717,12517678524821206585,1816599886693073436],[13986678099248396499,763132589384391927,9776001136007254836,1152105376275273830],[11814671747401227134,14051467977723724755,11743029036639551575,3058315192689072958]]},"quotient_query":{"leaf_elements":[7804460979701892327,7235004382762175512,14263684747841194803,424874315771564517,6495476445270679704,9699938878719390700,7019512515058257621,1372098396425044471,16342642311884627723,18446521075852248682,727135047824387045,11960216749265786728,17177201097088443542,6088191279390927592,6809863879961606325,7857307685806882002],"proof":[[3793416896371883226,1665758574721157564,13634447506540031115,1786709718012722095],[7218542084440179990,10618758439612553879,6413868119724765901,1953746355783279816],[16740738525510394076,13581821425939534705,9657614888562824432,2806728340328595496],[15710526807201014038,14329259657017344260,16013012051502448973,1917416848660435624],[15066808579741484918,5630902026566762700,7557928092596792204,2112340584135842213],[1751418533116804468,3020592160198053352,9605758756531987538,2293217949298634031],[4624552645588543523,5531164681713149139,13556554478861737478,877527827937042995],[6182760385560116440,16616035036835733345,12534555915389532995,3009848390906577117],[8297478328250069543,9379767816802151989,2108523578306382258,2205375897450882633],[11161602453677629333,14085388039784099816,9642770167858872058,2620856497416710342],[9849695436071501586,17953769056934829276,7695364021090451497,2314536690529951670],[1142141420400307793,11479452402825870557,17088604191880103896,762895272704649451],[3504417128630898722,13418354669506357867,4877712583074407316,51888638990079231]]},"setup_query":{"leaf_elements":[6720755811817453185,17585999360779004354,6752222427941204288,7478807292076854350,12542264058134707274,7784377136206997423,10938706326085598382,5895417859050197721,7472715489308910386,4376933912468215455,13710720893324711755,137485758811502483,378020907474636377,16382625220080958521,3399001746991655998,13608655624449272528,10509884968722201332,13738841830453199331,11670059684329570138,639789851457002047,282597010848449979,4226759991328595637,10367228227206060143,15570194135181567520,695848424425685213,13399262937081226351,3667395415606237208,11732579819440843361,1761996515360146549,14934156231501704667,15230129641763643199,1984106406706218081,2680837295848754491,8208245823300071540,14631269225752378836,6978054493399966368,3603320285748463460,15923444209744769457,4035431135236954801,16322746835933664918,3653245088783491316,7412103195533200760,17186493184331437660,6611138280459798968,16744173469906362171,18171033151988384660,8111275762786322556,12171689403446328590,18409019052825366042,713943373035244123,1614745952815647191,17257223756281535554,6393100970861625569,211418019201115745,11752518897699985631,4451162047691368867,273279468850496942,17884941869253467388,11590415866939932058,7127656537568287800,378852674265837656],"proof":[[4739673289149048453,17007113841673230520,14882054601324540953,2943750432373970443],[5448258013500923588,6043109153824960520,13914748038600674096,1190467489788723282],[11722304805504363295,113088946199342037,14978103150731254168,1901582918547795297],[6020565140784535972,7932267532120613659,15495193040733062442,78956356465558750],[8194739846489535946,16500427820614525020,3717372225032169664,1352870175261767255],[13368527531067536847,16231910899429054755,8299289039085841211,3112573879900396268],[15453746841949587817,4220502126743864976,8672394160941738084,2147550994365629201],[3068106646056916709,940517368925110741,6075739962254820161,1850129720912396720],[11049878656309777010,17366909210453731484,267886745070092957,2227143188393557464],[10112465615104941234,357833218820644714,17836572035352137102,2216230345053829732],[15805847851050506814,15288827656103836746,17416016858118165468,538815875146189680],[14626434129209657568,3704788492558821904,11586933725645472561,2183731847757492550],[16340894896221363037,10515488107363041749,8989735385112029763,2859595575457666712]]},"fri_queries":[{"leaf_elements":[12204701115017836618,2837161142910256647,7611823252820475374,3207113021136752367,5479990809561416862,4801172167203884469,8548767838406603537,9546830117359244893,5276004697225208073,8386184738196600071,15370825730031443098,13188962837022093869,5115983245524809407,18408272355091172053,6097037770259917359,10329166923392860946],"proof":[[10353178748739147526,11694621427347224278,779161033485543807,97574362154997061],[5520225691076290317,7983631269359399489,128394786860828936,2721663127673627027],[1889050022788293541,13966307158963209192,14552386871579801042,3343032267222838086],[10660978818113458011,13262811635551575058,9580926212230811528,979218835364717307],[16325893452995886025,14434557817085933599,9174764330687297796,1274068813280449872],[1718533704280380175,9991292007556582659,11656308961839905952,1242905159750401192],[10710849580178033547,7811719790956016417,15249177737632781030,982457388690693665],[17408497355761376276,10474050774759595207,2528860048667436583,591482956912676393],[999846444995399222,14011138294935011139,6667964318074757587,867213260052525034],[13614949841622580336,9399492980024187335,15638599896098024049,1538027079629728594]]},{"leaf_elements":[2597962717775793180,12199617284679202625,16245608688124357758,11077381298280442747,12489171978677567447,14728716649229754486,15435603906034031489,15840329329709139247,5271104364723329962,5136201507047621581,16123643037909417823,14434305004100619150,12819950850461741247,8908457177429789381,14691877945257512366,12824780940828729746],"proof":[[7677710307327133610,2095951980846340057,13089934069766903936,3432521706637103667],[13793590847401384220,1783048621959148508,13130686000618115100,1426522966284389565],[3078649895805759068,14653220129529090420,12907338701304217574,925869809782347627],[90983467725985613,335530423920363131,658403098701060560,2604987885479845842],[33017520307084737,13852741744782689541,2645621811239446512,1404818793102642158],[1389768311319449007,14236537471961652686,3349081074204103601,2876773415225488148],[16707445333894112763,15652176173117182806,12717696149262687733,373930509062837472]]},{"leaf_elements":[14759155592439557793,16488441454620221226,17330459486777465303,11190660215740917708,14880969171061995116,13152854467232359794,6907162992881615924,1358177794514135888,16175207193546819510,928780939801814147,8223525302097893000,1954632806996643147,7011139936641774759,13866142840705453579,3590971238092489322,8091181876567799848],"proof":[[7377687488464998541,1685978064064248669,8428193370216528197,763910392754585222],[10317506766812928600,17896568784559891618,7810646376359295632,549909588202549556],[2598732342918378786,5317963112505505860,8244752469313706919,950042062237983842],[1395445178162007610,11626158447455766250,18397044548169564307,2769656745606904775]]},{"leaf_elements":[9036089175381653959,2987875599192350377,7744707005118505168,5188089847094658525,13129935381927018420,3730150788540291038,8209729877721515470,17090538519922816154,9607968513778767361,15071132642506767584,7320125160743097689,4991892819851375059,10068909456476243812,14089867269071297833,15389351978943733972,3387928692605495898],"proof":[[12726638950376879646,639506612650757720,16912813671638057237,2919186756859426224]]},{"leaf_elements":[11506617648987991818,868082017674053972,6543021463611153452,11748771781491803820],"proof":[]}]},{"witness_query":{"leaf_elements":[6077485044302383899,7964072719224616630,9922162248705172320,1931406090590497801,12896369061742191471,1847631146160749343,707072038614496207,4390763197219304357,18162066874700976413,6350472225000282963,1589555907514983906,6589206686891911739,1445985203731084581,12058410403301336694,5163207068427477127,14830831682735841882,6728326709874930114,9499030613737878010,7337313722591185428,16352500586732661420,10749200586127793729,7952746201815503369,3674854646829376802,13575901745719259818,17271415396033994751,13861528294846188784,7103064727477749527,3644076612367543485,730718586590296560,10523989598912180810,2368158989025947952,6770970596921482300,2946941805570854482,6900779089942974592,17473054737246631223,6006137527096518588,16621866350297547062,7164632357252276599,1033082909372664921,7636347499782533901,11787788953872723271,16775479653532452018,17656515573515457765,15451696296780675475,14706803047251391950,1147093381824243609,6434781450101243387,15713443787829784551,7714267045370269465,9401029519432805526,6753623774850869356,4258342076780631662,18205855732947252840,1356467339592298326,7052572597438550430,6576381663461065263,14648085871206993032,11244976151985914886,6801568067044847391,17646553686835500296,2706300175400212620,10275386993120399268,11885082404553589958,11911135187349425186,13927730445962800938,8863027467884536679,10588534527866463088,10338718621230052349,5751994206567952188,945004565257630488,13583159723214233439,16509913234493994279,10573312567590481400,5162000828836506581,16886129382880740604,12215057508120501572,17262858714177689297,1488759084367440242,10301318375284518820,4507716220870834660,15008911539305873647,7406649875528608828,17183276505818160169,13075288898921713714,6548616337090513025,1537341772560597718,16513276905385474720,7645863910817213135,7775053013146571939,2640537831274526370,17826404940079524935,7822784440207365917,7576961975860912232,15804833983607513528,7996308364970179454,11251138380187752143,13924617837729429476,6692620611882298566,8505078161193421539,4763967858212133526,9183541987958694467,13540815866790094300,10369755113881880995,9543866237420304406,18164397721129767573,5356231733361656470,9122835319091628083,6294659289611306790,5002465605520820218,11724408824945175633,3435360284021993858,13137110355791528063,15247403742912454147,7247782347499583921,2005156774516978999,9340911409797447904,11813946136486315802,2457956457913057883,16001620032677556223,201724905762209748,2268252546397170748,7364122959448423193,13077249853584050028,2129023301055679427,252893988904118453,5597663301917457573,8654703537670936441,16145255071353062528,76474902132390787,10208778331136707442,9323395107768248909],"proof":[[6242907584893370965,12372932697093631793,13942129693974896687,2843861640260251454],[775370825745608490,5417459948929670981,15212388135289648490,3184268714588316221],[9662785117647837277,3294828262773047675,14476349888257152919,1053487585110099588],[10608105030095899192,2523728841582399538,17967042290235737784,1664031471518191961],[897909777632203199,2843725045798309224,12962257836922482216,755111540203570184],[12672707398741353588,17184394726480931740,3834669951909814966,1911368097503754557],[13562762066899570754,1960124377208315643,5512412607795283414,2259400753041364861],[398329861788852579,3966873509202172362,10030862157498766177,1200346347692453620],[18390017707938171627,427903847285816559,17493013179744655031,1036606955455356385],[14301892666099265322,6222884080379243048,11726420686225479822,1325016167851522533],[16779477904172509902,16091115023491135893,13499810885676622069,3351915706379330519],[8690565119153444245,17487625917161455255,14430312195268593494,1607835318724117599],[15518311637091593798,7323673137202733312,16866621021086496135,1758145248427367643]]},"stage_2_query":{"leaf_elements":[4541254106977685728,17517769114166587354,4289111707393451731,6026148638827458564,18291914964333780148,15918609231520913488,4700688698770278021,1968488412896948431,8336631812158678922,14804079565523333494,10944350265499409063,17968204159636206574,17272094864225629810,6252469196135067848],"proof":[[17234128121471026916,17084637917518322480,9505683340603821711,736720787006288271],[13969327497910579751,6839001566400357084,5384701360824342067,537975726162849527],[15758603114754989351,17747354425417544080,6554253924921780015,644956008053688143],[15742502778751428489,13217063898869027576,10272196307146284662,37389626465142830],[9996590609178129303,3135333866328386836,11660578250839778873,3042857065914935392],[12796330549843900279,3347393794666795185,17668874360754231084,1107177520030767510],[8705836699590018197,9145438969318086043,9737133065220188019,1802088922585969946],[8812734631374898826,7915542764664098724,18212532731140347670,2971098827255997748],[16912979343278893927,605202949165733603,5092876968678233945,679232933363267743],[8322927887494576300,10360388406370206323,15171337664396455752,375861917059246569],[17954686911687466832,7688559998025566373,12366083838814267918,1844063590939899452],[1963554088813768267,14266585108512621430,7348072009656446802,1841284671791958841],[4875747540304223294,38261405649231656,4774002524529870398,1268748351122893534]]},"quotient_query":{"leaf_elements":[15456587082378659688,12483631971420952895,5201319838733066202,11647596127602017769,13709172876176206041,9238257143414914078,12529555792155144120,1741922896547063400,18253467032509374434,9546166088164480552,9272540739919121582,2840128069096664055,8013428590515956312,11649634006386193587,13531594673282374833,13164232605383663788],"proof":[[451159535645421542,4222093096152894856,11744996514505056086,2367438581197699092],[13960152649481700738,11072078900591428131,14764336816448115904,2409894692791175919],[9346221634127711092,15876414998006861686,8711752397012784165,1808990231043129626],[5716206150673734241,8499802230384408817,469571199760305114,554925651617661670],[11457774157258007246,16191313643216172508,6091744003592211581,586098189690631534],[1240371307099996956,14636694805144524847,11957825203981075246,778468398096064453],[17290744713006810289,9471039268105728250,9569375122716928123,1798617212337230379],[15050764983609212371,8450263817224090240,4399229579742096541,1534905661640819719],[7229783213173582940,3186486363585468901,12404377980950915924,2072474364914000915],[7431133909155535974,5679489411381905703,11316978234367615240,3020906890530555253],[14152989069101087202,12287794951587797756,14874830422162644088,3485185547646261355],[8331562444564311697,3970723311937752549,14203178688053940978,3390018082108970303],[10374326063544463999,13619301627134064518,17537478353870779175,1830171422987131595]]},"setup_query":{"leaf_elements":[9360499397975395688,6244332634197387253,12879994438455890988,16372300018527782898,12643370960199120975,14607210344864519784,13995111841300289005,12876839777736967704,11634952140767099272,9557637456893118623,9265302008295358731,15402655456867347443,13173754669437537222,16984039160440011927,7691694888005875920,12023499204323781953,13215524310272476182,9034499529946047908,15821612559696309016,7563420094009488884,4149974278472004701,10177900624010322294,1540876364141541754,6466695656218694082,2683260756092474571,8934615591830103962,11682491390876619067,11491537336116236253,17928318785839207880,2513446580934607560,10903650245651861594,8575830706357081582,4921519236054149198,17167066534349431042,5092715686544193792,363101849148404290,10241646212605907613,5698826321289124618,14255340395344229366,9103461050332460774,1596949410358646838,12713683711727692535,16107726454165049161,8589252259714619236,1821103663212545527,17429856793644477460,8637912130119081901,18235662355488056463,15385799383602865821,6183491282489553571,10641628979462187427,18306284708289290639,8954092633308805214,6850067403443110367,15583511535112855276,15659051243273644157,17321158911583659170,11529071205727689554,3056927067454235690,10043358737258105953,7200456072909217655],"proof":[[10008778415076816186,10288033141446420377,12168257243375150778,761578559841679412],[3297241915492615872,16627812091650867339,11054020427634967046,1062354328536498930],[1835320514805861029,14911537559856088555,1674811436123637042,1962505749431872559],[9692001106393922694,8894332088368441949,4613898696134948752,1935298238793056680],[10435965811417283106,13280038319069552987,16993955980608103513,1827342540684147807],[11831861360083826967,3452809253647043756,13075821437154107362,2380021773781417413],[9042118989544852092,7240330661278273171,14058418415593833014,2106825683148396192],[16959186525209193401,18157090504513401684,12733038888237257725,201652980071266420],[10932966571352479299,10857077330302452503,10174154837488854983,2272847697068371693],[17717967387065957201,9771438139238507642,5204958392165368010,1782310907160013305],[9457482904258610208,356219511890620635,9721094982983903760,777283556149836688],[10433510450430144301,9534562356708426407,110906836851143557,1929383473384015075],[9605218321895730305,11490338743997647430,12823317278098842748,3415966057955770875]]},"fri_queries":[{"leaf_elements":[71545121051053469,9084148606133670130,2142123131211012838,7815668100970136410,16962723519144377454,6280204493921906129,597822105705960799,3720464347937293787,4860878739101249611,6103131664908406029,11172381818931119015,9529814410488290566,3221372654247042661,6078137449183030757,4310142078742296189,9814652472503552102],"proof":[[13214171859889987881,2532991619733164674,18346444139074280726,2729434253697454055],[8270652680623102496,11241421547500690274,2155436410810924999,1346637889304547196],[146138121047430027,13990442974637457594,13784826651640996980,1109565523407472365],[16014445746210356502,9935674103449513719,5273991748295714526,1934179455373099150],[13425302871807098345,5097396896871992006,4767645093766259365,2789259936861270499],[5585126531196216757,7367913896206870359,12765078615643265650,1349553709645365897],[15520354940481339724,15536848090833273015,17616074985028870870,988739974645952979],[16652759705888100798,12007260918218635059,5145171050387575006,1214498768681436683],[8899149127723309034,16680782789077368554,12647937892000963151,2225211420632883058],[3942694800911061276,17921159622511465582,580068548089853162,1541139455362402679]]},{"leaf_elements":[10920992853615939967,3790138317200372300,13897965834944638240,8938184522676862811,9410747331155185578,2119715264165892346,5070698709204617606,9124773894282731561,18368241097985726341,10660847272129032798,5594847751799574606,5272919784515605285,585925787734288721,14956845784816589667,4472103195116628598,5848176591922456373],"proof":[[4300045949806776104,15149355326513071195,2520196133605155231,2290460473887015792],[1108575420675245642,16105008916339488847,760428530275168783,2847657089086898104],[13047896361868581167,5427983860177157663,15730569894933080204,1799402408948735291],[1723790679973059262,9870966104065550192,1088650322117238242,2196423903501652866],[3264726079356005385,1202373893288580291,13448781115362700825,1714524932960122614],[2528479504981134372,17740832014304503764,1483205343360500603,2566319671131613912],[356327678543436235,7521747318871730224,5926762661201943363,2802249010558468471]]},{"leaf_elements":[3058328279178208678,7829883332802513662,7080746957677036172,6987725583282306777,8270518424068588693,8926594841260776902,13747330287808676454,2819417015372890982,7625900463727107935,3398359389654225651,9035463830236415621,15933973516213579041,815126836308044192,17955834841048212255,17123528417263070149,5007884863202497580],"proof":[[15068152793048859010,6529765166456558571,1084033553434877304,2826818383228231636],[7188995064281191891,10021546224356321721,2776099942233359833,603700890933131035],[15828706135629023300,6002192074002833233,10107508101240280910,2288890144640514452],[7237173891938663337,8631390836781068402,10195641615156176892,531832987875452158]]},{"leaf_elements":[10795004986083287740,14360811068350965792,18254495574033950592,18333342172134336119,14842711178151700778,13998845893516253700,10325734391175010216,728330817682000593,14833964987039866727,11273087605295804328,17484234131895900348,14761196949777933922,2093000788320605630,108068430464939824,5682827616043446557,13244346337575742118],"proof":[[16205375200041717684,5114539439251029462,9508763204275366509,637819813805455874]]},{"leaf_elements":[16580212810250977730,4470259858681618858,8395368088134860335,16307579962635236903],"proof":[]}]},{"witness_query":{"leaf_elements":[11833047456433674269,14482401937426660198,13808039282343822307,10241116711484463249,17529157493674641662,12379718616512154881,10235822714357418136,17775664235670342023,5356290117774565463,1848791935994855905,4037915425641453518,16524658948093575802,16839613722142051408,815625514281500316,6687627444484829085,12321896364867652572,24321753540836695,17833988655800719223,17157671923375174392,8114858111800796521,18113410579940282123,16873538876569671508,14510109170719945086,5292137751819635063,12562021329930191548,14827725439052881507,6576106999896212387,5745381158128900866,3486623565584695370,6952032029355124980,17585211892524024945,5571933943082861117,11931390645737323493,958363269839570348,8902638456312587932,14734719538739761649,8471834030577625559,4515320106304407103,17549822990589601920,16470381105202048152,14514507963814514390,11083781282431821957,6405267897079329503,1171746317103647837,1457064308229083547,247880158063553828,18331787609161716706,3077417076286739675,7636055285676621268,12096372857863004035,14369413815628967096,14472315943524459675,9244246662194720924,2783277139316038561,5581569224513540251,624555393335118894,9112379906101305749,15914563809961999821,7591448797153556590,11288040470434210238,12770711738410993144,15455278075088956695,10292330359954949260,16219514104895724896,7612235051218568319,6288807345871233394,2106023612053225983,7684831615213403357,3991733612721842351,8954180287896742894,9175459531870770532,3245044862545910038,1359631407564196459,17934500578242638526,16939568729999298624,6846160011963963540,4717089687955592061,11659445355962040411,3015471050833849524,1421175596182760742,5529687502115565393,11190199729419392449,16024149630771157098,11497305542774695787,9285283751251295125,18268951730881038103,1698808014793756674,1606171963047433935,17788867521123786947,10449268263230047970,345267253703656972,6099518052939835347,8428403497181272640,12034372078558199135,14776742650234467664,2138655314397456557,11271563159054477978,15426859209383244542,12540900016776870425,6357177451655201009,4060674516979796439,40173386944624574,14818152953755443497,3455564891360358451,16650793083905363254,14760216656822723947,10814895135854268635,14956678661842005512,4510423573071942020,11093799253437491848,8730456460408521077,4669247982942989480,11897569219215502241,15373311605514680134,8017194288231201491,14374271314555666360,8049356188023067264,4470966076145397440,4943787683086026955,3081837284673650017,9441389328151984536,9245148712711857840,1485084669516340517,6763910963015218227,12865592066250886411,9625910224886442296,1334712000817340232,6657122026211780357,15238415257642549214,7138527190236550665,9734212909305784025],"proof":[[11500599344953850129,14996627010693695798,13739098124689258379,2842545720649165018],[3177612350684192719,13009862868933549075,13424823391114059747,3082825880270218159],[16091546789415491368,9893927759034785689,524562088104137614,1332856761099438259],[12040766112034476741,6334747586978101414,7090357655363339118,2086599339873233538],[12256004766860134761,17790555952832521376,15592764197119377843,2704489170326284792],[18095214753854189613,10178650889444219881,10270661338267585352,393938702921223812],[5390875736505904509,10599638689502109949,17179200344928311578,1885434479840728648],[16187667364613575404,14086689791477929226,11628856082037012649,188844844488450029],[1462690364762861859,7391820672947610837,14017089647055374949,3250315117990727516],[3261127681312918562,16735660629599891270,18247418370684520559,3254727243975979131],[12127852322855244248,6157826411207533768,10101693361150650378,3133699608277989220],[9768525576339722811,11672889008707792701,281691863958202578,3305185732159781746],[4832379906115138372,11028588231085674769,17437286517034418486,107753723037220434]]},"stage_2_query":{"leaf_elements":[461754584522663689,14627004407578907909,9594703282144604269,18215767994013782670,15794300310137116420,12922711970469985783,9791225853669455542,16631479976307016912,12635082145663249450,470341800010950990,11007385905063801008,11279886646091167847,9701398450104326419,5141535551904279375],"proof":[[12763101526854993020,12945148297375645180,4314537772445228430,2231407196017645621],[13453460598678558910,13211751513298653678,16912169567663353856,1331248391230377101],[13712105687585622705,17277412347745914796,6779143139926425276,1566368210781566901],[2782119326634347680,13472530477812176721,16535419109556332685,2261497630100921626],[7198000577876030731,7871578364117446775,14619183354551386368,3405526422754597005],[4017293940500637833,15391472484931446528,13582342145314476500,1032192625240215576],[2955545053657815512,14637445511489077385,12272314677165517657,1020871329916445363],[15150010895697646110,4323569470961256654,11939205563757346913,2521298077012664884],[15989479931801290198,436235686554504693,17979138085528318144,1427221777270019996],[8511712907817929782,6638848729552664602,17983170981134268312,1343681715893690621],[12974903116869077940,11105747345807080849,4417353386986237787,2856931376540744458],[4957393372301713968,7478362310982435063,2213452179512466607,2841487375964966511],[253179850175611026,12208827844828377664,5809494268557619388,1729946356149640536]]},"quotient_query":{"leaf_elements":[15057456631493700840,9684084936321153725,8845861161154755566,6859252889805933853,3444182928373053030,14893530272443917780,1894701494522633497,13580849552859764339,16487497581078082464,1001232483511750142,7407596129973418523,4617064497250536895,3366767385938467766,16734581797909442538,7846504298687170873,9856118980389912432],"proof":[[5896545675432639936,13378687597204700223,2910406306605603791,950470140173498800],[16193807557150555405,3784063233729518204,16790385303636731044,2131080980965218822],[9997634150250744468,12136882567097331194,7523619629763314080,1167157715337879945],[12854752165346602430,10858481415744379253,15073621480337422328,1890285119756935683],[17969446819146535248,8472160516200388950,18083121873626625984,120084353123249574],[3492474201649029335,12403770459565969521,9879640817612166874,1854733854281037058],[8257249178121991253,8736532774386115307,5846320139457159093,1987875836158112066],[17602380155207181813,13520762261738961810,3241333237529151353,2420566231572453932],[7992583745932746449,16945837655673480616,13293355169374859202,2200522464296877991],[9023151829240929826,2843767097796602276,12272129653273650256,1800738292201196814],[15827959190560400102,6995763554361694564,2298026645345693867,3440027472899695309],[7444540842383681101,8684344437036066525,602316500209861899,1699929338902742830],[7207630139810091379,4266854911965260134,6829268419185610647,551985630482796740]]},"setup_query":{"leaf_elements":[13042249495995175336,16103508383122432473,8915174036993875649,13149163937486451203,7350824956689476918,6804039347242122797,8778356483132889832,13581441036946801852,9982641416275748392,8250672460700703699,7911766725376112903,2939680328634267657,12109563695308686642,17478235203527976073,5594258717450566813,6418125669053747887,2105426453233858909,6516114211881588330,9079917652128661712,7799500773717000921,7176825224678971657,15925031806222784340,14151801479257858431,15102352219984075103,8456227810843329145,13764465923773542145,7538518358037890954,17154569912606000870,13258145568584015810,2402450909709416220,667111241447754780,15077239206156600320,16396999279988644093,9352703392931076072,13087974359811054095,3840034204407848633,15394275148022381436,17385703165981774366,4169948588777839693,8939268030120123935,985617123823610453,12748520481268273733,1340483831711259158,12865423819838126334,734617363878436137,3293007575857968355,3653004391161348446,3961594921146467192,13114725250299737610,8365784008905518150,13132705909447179914,2683505767183544453,12285306019357367428,5808954286719783150,5849146327741251794,14991574043010815479,3002322036058907406,6481934575647670214,4522420236140013751,13163678357337515444,3708082082192927541],"proof":[[17811720558198310683,5262147448920365167,3335634757650747879,86535972346598596],[17933927890223429782,5170206723614834981,11835135240596497817,2780901698328176728],[8795088501382377260,15276919438994538058,3976367079850947172,891061307260408209],[11483100926198428365,17143943272139637949,16321934988268600653,2242841788931608094],[14819462176352372838,15801870375245752387,1412489784275039843,2047923038803163166],[12108966629081532587,1371582505964871985,6258665001860429293,2707160348083291258],[11149238168463873263,10112657865253449964,5987838626393959003,296683685866338133],[222009559579300174,1381320973883113687,12302113045700586248,2262504708071563026],[11784985895202451185,7026340737855943442,15792999299706924198,365724601521654383],[12224643381520477969,4320966871043911358,2661660907376170966,3406627939649074732],[10455757379220240357,4099455521614776757,7291983808913411660,856319434517988093],[10367993263393630331,1790023779654835370,15091667091675067662,715938203495412360],[14430152768018435667,13625155425001863663,7751044715815897218,1229189555835738878]]},"fri_queries":[{"leaf_elements":[14521154678132547068,1216301910097758919,12098152682082253502,10348696526493963942,17419603603489388421,18318557007092911507,2102351986344710330,14537933659359485134,7148971974166702127,839172759181992818,17460977557725068761,7815724421997175209,12216655222214465279,6331639566670670163,18079698971682235747,6412668096441291945],"proof":[[8980848846838438046,17282732357186729025,13452625381143162996,497287313216990745],[16785814435432483442,4861628396995894164,4837303900009320096,3171603012762128998],[4407886159433133829,2425870433386076367,12125564675692930093,31918643222342383],[1042328702501970455,14903912564877705146,7533948852149355860,1458596514703956639],[9978337302987014658,13821741904829306231,12005701582551117454,689220667548188718],[2695334098523497815,2830126907069201030,6654738399356360623,3368107933114237444],[15187654257824309828,3965194026402803670,12039262933616569015,2737919392164299638],[2212500820357495793,6937574038175577081,8523903045346950306,2258988377035230135],[14554446821762509772,6529627218503375570,9851210291104147109,1485081884717766150],[12917255288235223966,14499976622908166881,5436213550229819212,2285844493389862808]]},{"leaf_elements":[15078471929653093160,5694287333993251367,15473951839407213249,16771283248659939155,18352237711554688479,15203442854888786928,9317033891847856615,12145214891234861485,14624108780742710309,3841808653842972125,4766791464238603457,804602386879916302,15787948655486393407,15180475794255126147,263861435622880500,12489049938808685455],"proof":[[611674732975260341,5086828433451006608,5801514558274583682,368277504814554681],[16138969907320167881,11689262890922308725,9355155393910888874,283205072987237734],[13928522118324807759,8590542890714388807,4813608130085993454,2797544329993296482],[7459324858133675254,15732445378714658871,4097417468335635664,247143953533461949],[15499152899528193300,7804569373351532253,12623084440031420317,3079078199647633414],[10755999276392972795,14331754590064518988,7553222335914137559,225262180444060771],[10678740004480657638,4821612586301572701,2713702765633163690,2883361707359353505]]},{"leaf_elements":[14546847992046342763,6171083746573157952,8501911667810956490,229890116965200758,17427125879513513245,2544006941087531624,4073944733295611295,9419392444665917827,17481348429223321626,5559719738400414222,4052402710394991850,2107505096945623478,5090702494022164656,15118151712808273061,1380716098664848849,13421737928759941286],"proof":[[10033425373562980192,11915608828670999174,2295270086726453774,1947475974416664199],[1386086042998848111,3673646343202589478,2519179364964670764,3286657799576966914],[5056283299278904916,7573716861628750030,3181551069891058784,569365129076205572],[7349579519894959072,3479006254350232831,2249506297850984686,3461002273469143448]]},{"leaf_elements":[10107650300144122446,12872316686921106367,17782138609005632202,3101284115629698348,8129718703149136541,3488748637624496172,12239539572413537733,8146046347961466389,3729132655365631872,3816743499182286664,16730468474630639466,9624190507278423052,1879743752497581249,4337712219509902155,1896622693346975870,8179875534869575739],"proof":[[2554532247243837486,6767478030061646626,4199547846988518451,2086946322843166353]]},{"leaf_elements":[6865243823879750534,264255220950879342,5012916995573505337,7094628130780347210],"proof":[]}]},{"witness_query":{"leaf_elements":[7858053895759413297,17265684436882291924,16766974822909926857,3465303499664434331,9534228294516748714,4032984289758998478,10850247355377850442,1464516432493615620,15762830965533552699,2233910658079061260,1857614548504856107,4456303440732756958,8708336317970479704,9579263915693897993,791983273371703301,15540243568502350777,17230666612686095535,10231199920379298483,2862759638803678919,421559860897805074,184125036513006281,6104399363275948941,9306873543547055142,10900821078020445261,17772399241542183959,6733384382265062729,1330965322355564972,4855917699720872194,6619361385008599225,8542077727032042915,17338062377847077341,5735345979695514352,13110457637062360636,2632091890242762259,8361470928332517985,2699421136753042056,7161863262825650290,8349689769951648140,11638863221951166222,12032645185916727136,17704892704004677664,12403061775981038565,16031757075276251123,14650862064443926906,16515203703207921243,4683025987414307939,4156744778119249862,4749348360435617831,2911567142162412649,17377160576881407761,9401573777677677330,12098153387655812015,10433906010992635352,3435742657791346113,3177486288869425333,2585819565654704019,12053047065409722849,13645059162711610947,21423275847969103,5580280916530469250,11407856738461719324,11526697323179379698,13987558369413825479,13801524763113946874,16043307182847084877,16402116663240649838,4494066996460538737,12855469553982270573,287255693971885289,2969124386453744586,8928810519062985626,4840597798250930136,15744551455689408593,3611220867817425017,1977609712293020807,3808615004478684834,2699408220846917566,16853841719781401621,7361551644600217697,11156124310228528180,16265619792038567155,3133713038354607608,63663942328739220,2311757288599513861,15151038365420826315,4549184485039584274,4138065344248967612,14406254587974572092,14839289392136175898,15943121016472190465,15095086134420153271,4823106491962138555,1073561163577799193,14494222875091136711,10181243972193507318,9899398314651438774,17114937674075741864,11387105926609214343,5302362556287250911,13588067785743770619,13382498408732249877,788744990152186242,5245580176391159200,10479343130649587529,4001598332587209591,15280950841757485376,11473607763803838741,9017760690388408092,293297464169325207,4346295824884441768,17767632442665281463,11752805059841756538,13615992397799893687,13063767029408415238,6994506286640835818,8801340772296449421,8823959093724638338,6040585894516185703,8423400221527120833,17054064767632723443,8544735916589329607,11160642711824954280,843588726499909546,8322423503310985326,13196367577408854465,8964126616648915821,8070042182156173237,17290693219251194283,4084479645041763879,16403499595766456232,7903990232150384040],"proof":[[9248726266279460407,11719716886506133603,8093472286927794750,2391733117977588000],[16230487998988215371,3869962483145590432,10667047180237612249,2619133409437079344],[16954556976740418427,6829734164595376758,9241021845014407393,2218451475913744752],[12741322580356810788,12281661807408177318,12823517827580402134,2116483097858975284],[4168687656463570433,820474106275283209,8258037139023940253,806364366208097599],[3576135308070206462,14516568160007066173,3170960222747206947,640556370129947569],[5358123620625392398,15157790135277378975,3840779527114075418,1820225871009814804],[2402996940444038742,3950758832537544534,2789895269555376893,3358125770469689491],[1430925518680982691,2151482013714942124,16913097774633859520,147599131468840431],[1404641130885712316,15967287234267707029,2952076247621225131,2559154194842940212],[9317988598386287165,4171320350909863924,7024179928034417626,2008805193649462816],[1399558611002625433,11998460121550009067,8931575056411310580,3349109739263796111],[9986534556560031500,4168905852649190801,8442442153577249726,935650195886037795]]},"stage_2_query":{"leaf_elements":[18387374257738215101,15306865974655227408,10432109101363722552,13009257871372670067,858742917555819602,11700042241141631063,11727056752961160433,17985370754237911177,8455775666096501621,158902061113344801,14384105655992688800,15222561479885621213,12412054439589846987,14203610041190331849],"proof":[[10602271031945289025,7216817529303894275,13166505173976065323,1865023148603653032],[12727876965690607425,15814055029826165251,17528228455431001104,1470221872853326659],[5199250607789117154,2398544252098586575,10172274853125479466,2972191494550935916],[14980119355089363917,11405247229453698780,4507664442888275569,2089786254495543413],[9714702084723907846,13303584281621097406,3105173158769839818,1141203502774068749],[2327605455165110139,3624045509711925208,15046532513107967618,2245319503228059824],[6469489900589334832,9624325376196692418,919653450069722995,2191430265191928589],[12111837910112259009,11424757229320283309,10945953313204065874,1077437281990647488],[11070872799713662175,14564988779637572671,7887799196142692735,3485423108122722116],[3659346768136687117,12679940537757350401,716142111141260185,1964797466937428027],[4156232298670899131,8442439683233985248,2816989313736023705,2855240463960380989],[4826186519142606509,8843526122236724294,17868385580913199502,789267515232431137],[3929106972898368341,8168702184152748531,1012745953153184386,2298210201343737391]]},"quotient_query":{"leaf_elements":[4373142612563086594,7196695026444633312,17966181116357038397,5898708573535078509,12423833816735514559,13655063470739956718,15844290769031548293,16853423080966098075,2152387015161682812,13449028288951989314,5047051715890940436,14761406751848360175,17334089116370640491,6252555333045656820,15717936551239099696,7650481587598529534],"proof":[[1352331086995267566,1400396491393940878,4746674844142304711,1260851863930028212],[10973376987389536987,12509235344157913231,7580817343989232122,50074051616339959],[5591065957170055081,12359457572268264550,1247653621792067096,583091124068274465],[442083255622447127,1099014203848345482,17962366655576264314,876113858416822965],[17344815146136435406,7118885977886899211,6137080122099893370,1512764061454333479],[8776096923298001681,1081566881641096575,1702148014321071430,1774221167702867853],[11452076884801265314,10495877807535785458,17666501598933167227,2919062808302266969],[15284633191884437224,10457892530260194329,4271961759214885038,2913223074315541258],[9003297077661626938,6311432929270788833,11967395938497052248,1817206478892744180],[14677564153425006496,15254281340754733383,7013018103077528789,1057327725926051211],[11242675047627637619,6613050748050112875,6280649273940896661,1540050270900068416],[5041539606130611705,911517593073596756,17525987174527020371,1929397605581272547],[3371259541088757273,6499617785722508082,5034023945137869546,868060244866308003]]},"setup_query":{"leaf_elements":[13362346394009980175,9765922703649385518,1384761281930046456,11404161352395288519,15563242342429714869,17436970936242412322,7445629126990963142,18201359157117362866,5375807717243711679,16972686101745404894,14665102692235845864,13913777093343325759,753387041202170043,9364842740350017109,5420656653052044375,11555717786061529664,11073175588637959843,16903406687579213789,649796185090484111,13375050265331305526,15332802773902762340,10596892116937578720,15381526947848232427,180762151583746435,14481021227183252899,4912230067271022786,14951704881092724566,8979661708963750302,9787983062512793514,17745058523192355830,10092951146302104051,6688154607682493967,14302982704500659366,12216186328706044021,18125594138526335054,16998636131538828443,1959176730016793439,16895118141237237428,2615808689926342108,15790081257058710586,18123403330007849215,8237608581322813907,8463232817732737607,17065603878084602340,3793389182477548884,6875520700161889621,11327343058397840664,16282879687489952714,16240713576847423276,8073676376859996125,10558983057594326156,901143834964025251,17284885476700362693,12898510279533251575,11573053444190212279,3273402262496919319,6912394307113305939,7497824384910778844,16245505234021041454,10019203148493413520,3330346283999610326],"proof":[[11362944488623568358,14321323659164885327,14769861324720909094,2273864781956942987],[17581069557383296241,8280362139485661281,6059938970471425519,2413765672219454825],[15172850002581237075,4007480753529100509,9994970668399738787,2618731030202893620],[2221585785030398036,10550150321083185441,6313923353761212888,3089672532832792294],[17955192206663394677,13682771751918836505,13572684429041180765,1819839124201662843],[13248143349288071894,7755576199645537547,503581653442734659,2283687638135454079],[7905410854775394028,8207723926404942478,7745566171735153328,2967590520489837012],[9731162891542664710,9115882563250478252,16506836542203721019,2620679213638050860],[16531563480308278538,2415206684488273664,7726928274633968361,2198698281715427113],[6681769119871912223,10714372967131915284,17046929091243664919,3278751980981841319],[5880536380205435091,8988109943768846168,8948683943614748747,1299484672283349041],[2096633613228542274,10247230832956913698,2582647671840881489,2337349213770688628],[694282249315834913,9131759307468547458,14859054783036377680,2556896920359897004]]},"fri_queries":[{"leaf_elements":[17448179620219742233,14907894638932304349,8152075974009371608,15452207072827673406,1887552926150902086,3375591415094970245,8355179878292433165,1006328114307204446,2060910564982400985,7937343839549568257,2330528159168748630,15575854274812294663,10834728577249479030,4129664799947145872,16250410176999245056,1334271651845186226],"proof":[[16006632195170523758,6031814007106143416,12766099896018082841,2235455319245190234],[2627061876928826620,7558242815528905287,9297991829398131661,1972949762957479292],[13053444695514198192,14959969886117666823,10973356735505849639,2669093997674898142],[7291541620870009742,9564559522487162719,7988701768424333498,2438979918018608234],[16215581870493295611,6981901017495999211,2411088552228350585,2339724453841161333],[14842540601198939926,14212332327556341966,9585353171459335345,1773011748439522014],[10067159748352494012,7283354477330642939,9796887370368421855,1420206223885988622],[7882092492228847321,4471930821896526360,6992058519468021938,1060754295174178583],[8711799995105057694,9584492765011979152,1662279205180426677,2721288857003446324],[3031335695723453993,6008477298464842454,10765433495181274712,2652030715416371027]]},{"leaf_elements":[1231632771672819545,8647645225602802115,6505641389952390315,8488095878835178397,9921832458845600027,7272157254971191398,16481763774383865736,7109060732964797969,4734528070654279650,6659267645825140762,11893976202563546575,7855816809633170471,12442853536837836513,3149635338181084106,1032366523092051375,13006031382762460192],"proof":[[7066477035558114234,8572854227660481911,11806511658222596578,43265015309209851],[13719258866141691610,9069607355396838243,3523167912845036938,1447834536367790179],[18259116392005291738,17914910057871241017,17991366593584456408,903812481976297612],[1236318463882885948,17900060928840192458,14524219386813794562,3104549702091529876],[14606953949117501867,5883776295085002593,2598488513080939241,2722239111241924332],[1308791687212800679,17439520654013078978,14966667291729064458,3407308016032870470],[9205275315130554131,12859436265214383430,10221394395219555044,1559039297082053848]]},{"leaf_elements":[9723188532656971829,1249184447740496879,15125384575301215451,4487429712898823799,5594325628639921147,9183613631676207984,6346356041473041189,9674444968242150801,8288418430817188356,643801183780068993,16343011503678450921,2340528375546138310,1889246346299928775,545642352382522353,6995236687576428003,11515050580050372673],"proof":[[5500961142336487041,9751250793586311554,775226974416726337,1953332802899312953],[5161885191070886748,17345126237564432542,4997730869086077647,2355282103243432075],[9375007685637847610,6537854564438990166,4361148130625555949,109028333873562308],[14642156447412971549,8753961440126326853,11783145797800391646,3176188692125511196]]},{"leaf_elements":[13231179435282412697,11067286733036426302,16464872316746670644,2959542249127229307,3656632155594300318,11512742211126633483,3641952820020161397,16524762161915820919,2866766436991766051,6121019872482128970,16957647701455810681,4800537360445888724,5549409295141574996,15845609310883329977,10819104344405081865,7529936042980408979],"proof":[[10164477711467631138,9942945204206605270,9118718961565509107,2739518935362102048]]},{"leaf_elements":[4501127538857023790,3168202938356671861,488429852234980958,10426529919460171421],"proof":[]}]},{"witness_query":{"leaf_elements":[18323484030534432371,1443841889208360459,3761990690188111433,16136866851823916284,5100663113579968440,13251398907985144110,3798599433797908505,4229596622638534196,8634642334638918445,3063236264164655452,18037284795093982870,4157694647778657888,17049941641587986973,8725922297699413085,13973345867842386294,8238565464305292514,1777563152996195925,2100300894680758404,3617484690192659750,14236680132795981907,10366268499416258796,2121549717373976850,9286745548122535852,16335050485911570202,2864900553339052140,7992381221778835884,14558032813621973189,14538855485597501575,17707598939744215639,5456511304712640120,6160962039817569592,15458576768511817378,6498363888440263582,875431751282704880,8981127095532687017,16675271955042566704,8826027871269297499,3389697969998375795,10495905109050930616,4126110047335666488,16555799747644865677,9441857115061216768,7852669440273983861,11022159418089648092,5860247917734866488,9537743004097560865,7211556068238256190,11615497447879057725,10166421030641480717,13332326584001424229,5897817578661815490,4743456394264907612,3423449377368646334,11583823050229840128,16812427111286277841,7557226121764056461,17368706353386910718,1522287501262381726,7248709678807278521,14358814805142124577,1097687452424285656,2087267305387315065,16849845059030686215,4179624600943224030,17709273729729467741,186016821774822371,17962947105053298632,3586297092431828193,9955551849237855258,5788598589286888743,17859330808159223290,3034094375537517945,15813471056230147221,12814744146161452060,10678623920862983790,13810100018350444066,3553444672216245372,13354530062179819862,5016097369186862049,7326641062587665258,15034183636753590748,4988821899249416109,10781389598341419876,8048994690260898148,17841784048036715714,1427649667669804476,10600611129515612549,6390033644704257459,2997106279508619006,10201389615228278988,9178381530192057921,10596672067659685275,2481474978503973758,18002754534098043014,2254408076618662702,11888966279901062588,13960768149770997094,18355957516941697313,3930112026668555785,12000550798998524753,7328493329769926291,15515526570757556802,649397367459172385,613748195726812827,6788913168937317719,14888189591074724877,16209029690883241234,5260180399498964072,7079049982676147007,17829202249508183897,7699715625978687901,8807983371983548059,1804803224760528843,3635415114476382088,2015905604767805344,18209816094662659702,13943080257138770858,3407964604981514135,337933180694800786,9304163064200126561,12942843725016449546,5343790965756122064,12871944312492523789,5674618142411392274,14169015412044923620,18153568383899349789,2333177398557171380,13995624192865920880,3640338388642267922,13559622365066353082,14273506014141871860],"proof":[[2491206631430241701,6439749856888493514,9963786596965626779,509711286808762048],[11429937226311692450,8430233198233212639,13435990789377303226,1230884057008166743],[15921820087496787662,74877410569287475,6045258402006979798,2588913826528731981],[5187279910860986996,8710605417237182324,4757504026344279584,2652756844064773116],[10673220036321479097,8372244401984639846,2022528930624666659,1852634574042662829],[16423014969113456641,17552692837361076432,7469408255939748041,2583045922627897005],[12405820383342720660,7764600441988237619,609837705467329440,1136119885811355305],[6434968310739783628,9127538386908464495,10407836532217591585,2353053664225470143],[15435286830679094625,17062255668594343075,2848770370087550394,3364452796251048273],[5893547256042664722,6028761409657483759,6592888294643335657,3197275473910754447],[2503665153956736773,17701251493816279618,14412658640691206573,26568670245358184],[6902291296385525908,6282427285539483573,1059247308760891000,1681441560494504270],[18265673367752908138,2754640070048023901,11724482278947537297,1725637765201767315]]},"stage_2_query":{"leaf_elements":[15015862435177866449,7236054672186885205,13745152809484059511,2413698356890659412,8872060594077140076,9956902294417052347,15273780179381419316,16034948209001538010,17899403068179267422,8585191457629942242,18242673787743941322,17170768719186846049,9577165461959417857,2980579989803011259],"proof":[[10551528138741913653,12481872029690152966,4185230973676683849,1972198617414624195],[9081276256773836966,11572212061764611943,1050511537098845308,1317576756904722317],[6470117461393679498,7664927281651619090,7145687203407232775,2087313415322359025],[9086082794461462864,8905818055877606423,9461281986727344949,765426391250000128],[8216024643048802303,16107686919068898745,2305755602499006435,2227922574132758503],[17077701023783486474,6739813048686032174,5314704255343384670,666208624331153033],[6728409593796422226,6470908201943483542,8521554913726535763,1371583044004857362],[15624687927112818628,7154091247040104256,10725049918323849061,269301152476186617],[2160682268525499383,3446638172960757059,7195497960834700385,580618829148160370],[7408864753338625279,17707040842568564519,9365359409953604244,1352079689472789329],[17653605708761678484,11128412812524188717,12517678524821206585,1816599886693073436],[13986678099248396499,763132589384391927,9776001136007254836,1152105376275273830],[11814671747401227134,14051467977723724755,11743029036639551575,3058315192689072958]]},"quotient_query":{"leaf_elements":[6575543290223723625,9696862086812971284,911399419694237735,13626444827345238039,7658098943045317065,17050223026091194880,3393539855348668420,12789755462635190892,13274832975814267998,11113131758347686626,10737015011619420579,15973371197526327193,14700629208964932687,2976393287473599802,5196296993063802611,13978618050945259876],"proof":[[3771329950971186405,16597118881545335275,4596979469805810908,1134468474308691894],[15056842692277642080,13409269192279961548,11898876952349686366,99544487317340066],[8747372415969467846,11417842962215468929,8474861445790833163,1694169576799852931],[13992389034605626632,14714189308495327093,2698974094651041087,2782043501347740372],[4245126246453321257,16955133961168447051,2972708368509267661,956787689084603412],[10162636162176732578,14576793817096887008,16178264886251165850,1844694136435219740],[694545856579672932,17311614921305412564,971823309868213721,215305728649349295],[5356772786556980451,10641661842742253933,9941350546198658148,2367860104687160927],[8244303796292594511,12239847792278851214,5776041679727841049,2676334164018737425],[8319558033497916956,15134643480958971268,7469846060563240007,1703987748567541111],[9849695436071501586,17953769056934829276,7695364021090451497,2314536690529951670],[1142141420400307793,11479452402825870557,17088604191880103896,762895272704649451],[3504417128630898722,13418354669506357867,4877712583074407316,51888638990079231]]},"setup_query":{"leaf_elements":[11984329116727726398,3525602127061214376,8236178664741976162,14721272715586335220,10075916755283455057,1915425955338524116,12126254853410173569,17909445733969268855,947575298944216012,8245473663367314695,7122774780519536144,12575419149100919108,16680416856591333692,10361178778337018701,7334726964326206808,3608243896987857258,1896866861716427321,5640502945513954129,18263446200406262359,2535336663540224110,5827333292383782711,7863742214564615414,14439327965831955798,14733886876011064132,8048310951123176387,1988439679555075407,292759294914187452,2687078246053840291,2282571943590183201,3655470899228466934,2764851595974602328,4256879524140773916,16654914562358511238,2381037154129757805,11881805518143993748,8071444688913543775,18122452906046860759,5391930136065260220,15726983480539380534,14535608930885217563,15218888525818058302,10269652431551494271,10256688975926424936,10062471587837641038,5602895040237444457,6788193766539062546,11175457758846976610,8906101500715247890,58259436302561613,17035258759703422504,3555965524225019559,13297348578173494068,14192358722163596617,14280050595993650803,18006441416656899332,13503717210977217532,4932735740815864280,8971123871185814380,9433356706774450525,15308640885518084148,5238765149775697422],"proof":[[10760769572583803163,13463458575378778023,8876267720869057351,2245398778255162769],[9946921523777413377,9241547953977227847,366319680732122661,2759420132097575001],[1398808648065059398,2676111957714358483,7262922684807110361,3471210893224654381],[18293230863739648949,368069484596562865,7818004055007771945,512788885246326906],[11552618598899198806,8055227613443430670,4932384470272708610,2031851054244426509],[18219872166309228181,18376230749282458304,16879536978096635092,1771736526688141413],[191320734384374181,9094267964388632465,8440874200618242164,1383021352463989878],[2673548215985444740,18216823874310659128,9395638245124015383,855252025823838114],[6505504850061707083,3793558263822328480,1347591894617603532,1065907620640625949],[7146374232138031804,1306294169116112805,17135063957859823267,829792535202030754],[15805847851050506814,15288827656103836746,17416016858118165468,538815875146189680],[14626434129209657568,3704788492558821904,11586933725645472561,2183731847757492550],[16340894896221363037,10515488107363041749,8989735385112029763,2859595575457666712]]},"fri_queries":[{"leaf_elements":[11618450351758492760,16496752045670771459,12728918608815423275,18172388212375880308,845988735730318973,6906448822536113949,13650961691807928075,8224559366408933093,8427396226408721535,9561453458371230473,14608207216378103893,15661182613153381749,15438024298238251884,5998842784437835747,4711700634786937049,6440755708883458745],"proof":[[16395757111033313665,6803346735283388955,17718087851589950117,1577575023821786943],[10661655105643418015,15793953160570581664,7638334239065336350,2298241982783124501],[2588986509143320628,12799443554610750347,7410373822102487044,1920421741008239040],[4587603480772927519,7971271078155834866,2207871477006940901,295895083255763505],[10839107141560016621,5489936144208069396,15714588142482128404,895767023833854356],[715769617315017120,1183286280270257861,5733843925469109241,2906646462715692182],[7264125311482092572,1168907455513158303,804368493162301880,3043434963273919225],[17408497355761376276,10474050774759595207,2528860048667436583,591482956912676393],[999846444995399222,14011138294935011139,6667964318074757587,867213260052525034],[13614949841622580336,9399492980024187335,15638599896098024049,1538027079629728594]]},{"leaf_elements":[4393801281606969512,17093484155532743392,11358030092308156969,14267994794617720006,17836505499152327092,165112743156092222,11550672207229857734,17475186469805737288,3403067954821470182,12744953731710480831,12033188466834240911,3343624580555701888,18424116280218841717,9953458067315072718,13074154007570251,17545583948356503265],"proof":[[6869620324539212234,5027315347979142714,8157964332028707093,1946184410786943867],[6416413444816683447,12121183298074822994,16393620040971977062,228627051611572306],[13031174565226892545,7970250805056519649,9000087678588837754,3216134566750001211],[12838049774185650428,16135150589157141450,4204846216889489667,2859255024845698733],[33017520307084737,13852741744782689541,2645621811239446512,1404818793102642158],[1389768311319449007,14236537471961652686,3349081074204103601,2876773415225488148],[16707445333894112763,15652176173117182806,12717696149262687733,373930509062837472]]},{"leaf_elements":[8974011178074889589,4650776972606361847,17024251066576812555,12387841572646439407,1874620816699592347,17174940154708249065,16631004948783231785,5291902380832776705,8272007247992656473,6502390224459270021,4475912663865115955,18386557505161871810,6235476761922802324,10862196983169983029,11259619626602767703,7703052365070986811],"proof":[[7831858875596105397,4589141293039518497,1168264694941022890,1274670217625191859],[10317506766812928600,17896568784559891618,7810646376359295632,549909588202549556],[2598732342918378786,5317963112505505860,8244752469313706919,950042062237983842],[1395445178162007610,11626158447455766250,18397044548169564307,2769656745606904775]]},{"leaf_elements":[9036089175381653959,2987875599192350377,7744707005118505168,5188089847094658525,13129935381927018420,3730150788540291038,8209729877721515470,17090538519922816154,9607968513778767361,15071132642506767584,7320125160743097689,4991892819851375059,10068909456476243812,14089867269071297833,15389351978943733972,3387928692605495898],"proof":[[12726638950376879646,639506612650757720,16912813671638057237,2919186756859426224]]},{"leaf_elements":[11506617648987991818,868082017674053972,6543021463611153452,11748771781491803820],"proof":[]}]},{"witness_query":{"leaf_elements":[1673999841898055553,17638106825674341075,16741106390371123968,11773779874332468034,18402410576819931899,12743041630059880998,11335229553295744877,3585381463503261739,4039886844343899500,17600153116538233563,1660730168095387220,6614018157153611350,2703229905986768170,9830294219769759634,8539655322962221731,12024346647171880880,3827044632292003162,17027154871207726002,16236569921652764062,8223757249353874336,16768198298420322722,3474946504872339522,5421395603019408296,14498784379604296361,2564450572405835055,55985611815570397,345557436799657946,15513074431640703399,11339447817381991345,12534375383446582225,2309688078107395715,14135871456655895410,1971113664116751131,18436324050269690564,13092880688427882089,13179801074765146089,2287305746730509210,7417172877060442865,12945244478544047524,18176104068377010393,18229926179828597046,1674119855049829813,17942139074302456113,7511238699556972469,1794270428215800791,8176965894621513675,18216055243760621333,12446092446058398827,9351034438017089000,12999924610972669895,5621401751953822876,13091863948709114990,8550147972945637270,783996871114620124,5302454802222921922,14602635477416735795,11246221419530257176,10342613683853670234,8210628908580739866,16245430279123629768,8457986242166127466,2079512749378870393,13251675954076759653,1882338146643122611,2490834110419196123,17869989816990807703,15586099258914951851,10546843703626612103,13651959934383141965,11137749762350603942,753851242836787765,12189780191030157697,17212222900364311922,14281974818450538846,1340283855523085457,2865777634276054814,9057305963490233133,17719717975512533490,332214921355298674,5573855377594453759,340813733961326668,741367710753485641,6548728066967590905,10272723965872534158,3415289011879536397,10872610719430735003,9793419727135373501,4006692755073213802,16719141097077325862,7718572436164588221,18250511615911903054,17035990649878445763,10623205816977437586,32167876533606885,6518460224372607712,17930788583797185730,13037023115396001605,2657621046670052888,17518994669729473860,8768145898397573554,12674142863829678292,7465841957763255117,1969709384186798663,11644786033029682849,14465380287771358536,10774864071221866725,9062630759664613019,17433698037048997982,2764874531550309859,8854057032944162933,5222744768651268175,11728670212932830704,6152848435084194889,9375961686550427212,10442388754584880879,14595901223466285483,9271292746845334680,15512810023822323290,72580635274748558,7622249267796766513,13246697430971346632,641987292546350474,6737532098906011319,17023329935941063635,12559580708917155671,2728253767997412296,12666565387831436664,14984757498754473839,6073315963322197818,9348250704996726251,4934680312835839220],"proof":[[994642129345447537,13247074620383922047,1855144803105224228,452819979034603778],[15654945722400381370,6212618764617231595,7264467779471719793,3359272359773357844],[14597792950341705856,3396515389155878973,13966393153697955703,2298738353040668515],[2307918998546280043,8766466053593090253,12707790380111049193,1228819674449916578],[6761086465278316798,7558695438239372220,9376512696186040317,1561194940126376676],[2538137208744740430,8185915294800942415,10706219965137051129,814288651793876798],[13585129352576906710,17618479777535529403,14716401666161114565,69536763096187087],[12233491235220066498,1755889837944056411,11655208198923090359,1500711183289173905],[14221658439044112259,762448881360649832,2787010955837564744,1018869735062517571],[8367770935239491722,14934840524337995061,6049257293628823872,2686886178563229828],[8182014679444923342,16445826551207987290,17013822517979645025,2656714516067615980],[6902291296385525908,6282427285539483573,1059247308760891000,1681441560494504270],[18265673367752908138,2754640070048023901,11724482278947537297,1725637765201767315]]},"stage_2_query":{"leaf_elements":[10283023376337143683,12705533759945197997,5694977031715361292,11190821004767595535,3399344076100338204,2716148054799928658,220577336473245719,14329430197991374778,2571668281544124597,590815850715858411,15272575037610373053,5013624108547110532,10839168765896602337,10784598846010973639],"proof":[[10992339331709547083,10601358133518438297,2791698456987770234,3397916111729693653],[14658426906460897717,15778444558232974518,9951784515703813830,237386032735080769],[3669495418148164554,5688207770109907884,16423639101254575325,1969466654158793235],[17863471966246355998,3673779170304918232,10366907437651452978,938506200218962698],[14915185722177361740,7352023276568981516,13742052162251712714,1074998853023916341],[9457003122570331988,9585223806654670553,5448680548190548820,1632707320798310341],[1090567050336204825,9372272214417532983,2162326061837574125,3010016222153994353],[4715538192299805040,5095497997188624027,14565497629219154691,1264794050787370511],[5921971944030605848,3593389454435556703,13112557240469878879,648227603904898807],[11576267748288634783,13630763058169160547,13260968374448577116,1460791085025866525],[6442970993011095046,16767343503915309638,15639864749420030818,378850544348321779],[13986678099248396499,763132589384391927,9776001136007254836,1152105376275273830],[11814671747401227134,14051467977723724755,11743029036639551575,3058315192689072958]]},"quotient_query":{"leaf_elements":[10512621980104235262,8435703583502859202,10858103888846957553,6011497498658063322,4472174904245697184,5905688520078768926,17319228555039012986,6207852663619591104,4423509557721130005,17410445283747723110,4800202087340434730,1800844311541255461,12332803112535006368,13618031002662131844,9665654754790828797,8779380044801247291],"proof":[[15186330239496636460,2108900877762499779,15163637176558042660,820659051709167840],[5799396111098804306,8838067296961941224,10812868997167877539,815939015517077892],[9847902807060326168,6705256935847544348,13759231077139469331,851899544917275821],[8025746522163489685,16359457046706917910,15443006042441987662,2420474923689716586],[18301532542152869149,12508295815641263332,1781573700580887777,567942160173604181],[5520106685886033898,14673842534293221994,9538464368878440230,473216129635313991],[13351416993527604214,7482955679942643607,10695373177926367166,2946565277854393029],[12836954216008233357,9357141381859569237,16184481083015648306,502460173866315974],[3386004484297168722,8674862339098314139,121361755044784071,1353486284509059934],[350337081150661349,1804101878965605005,15708859276316451547,1233673632858823985],[11218010515171313392,101745210632366747,17231656761344841354,3308126040096115441],[1142141420400307793,11479452402825870557,17088604191880103896,762895272704649451],[3504417128630898722,13418354669506357867,4877712583074407316,51888638990079231]]},"setup_query":{"leaf_elements":[2981592272433663023,12537334829522730537,1477650697900919827,2793622487536268425,2719442546768176053,16324688099886977811,17807300137853362173,4324978132549177890,16313086807878533560,12502765477712632749,352104463808278188,17055150438942116464,18344269684113876126,17083305411822799895,13188200014246396856,15438092879760438471,10210965019102000928,698592784761375753,11887621798742015372,12099890375709003397,12734537342384422796,15263280865060140085,5163700307139316362,16959120350528557015,2752628650319328024,3853696994926555983,12563019307895920577,3008062852743130824,174996483603192676,2374941042847599898,7404181078060385531,2549199184982545685,16044616918871897474,4164341168301830415,2036381581104922690,10511302384899612069,8420655495184093342,3239066967476534184,15643138730482545988,4359460908621771982,14587397737405500529,13176469678945873160,11472490594510369457,14761261241859791796,885990365628672963,10935876113878862931,10123378815299304608,14969253649046201413,939707495856043467,11161263949339396880,3785597984303868460,4504384204345989982,4954749785789888971,5393596864045690276,15046059614845676482,12844889891961784270,789087576624265731,7609572366401447565,13126648686008712213,16562412888600066157,11755436777217062533],"proof":[[8038825072662381353,6187547635126184730,8402053370106306203,838921634809667022],[3051461207815636685,583794667968021712,13252180833238504224,1435732635812056938],[2691288436927375153,15468566996351416493,8521895857218293627,3081669783237924339],[14076513256865902224,6047958817653733482,3907371970916224520,239641683254944124],[18209014420872915847,8587891556341194125,8645071360622107346,2388824814343735839],[709544962120373074,8731802287566750371,5649625170422791952,3363738074523265405],[3080564299174261032,16514114779974028679,8751220153329065739,828484833748328554],[6415321779162534232,242527757341009026,14355444057170073034,996739174996362201],[5064425324835907456,5930033852987696853,17383720248245519481,1255769046906380947],[16582624059087115004,6533605639799687583,10611059763982337273,1103360479940055008],[12936042570630472179,1310901294642854077,1974545396587028508,9396074164269318],[14626434129209657568,3704788492558821904,11586933725645472561,2183731847757492550],[16340894896221363037,10515488107363041749,8989735385112029763,2859595575457666712]]},"fri_queries":[{"leaf_elements":[15751898482947997321,10535835384755922684,1870915255354502230,8464095644627542276,16492815536752608992,15368322031879659683,13367732309445143445,17372197282918220949,9545810278507143051,6247878856164551131,4172549407773294410,8789302252124233750,6956453440279495641,7820974212049675424,3634565757153313429,1653747191550196476],"proof":[[17588823208488248902,16179895503687996239,13267946297614299283,175124489663869439],[8149284721021092431,4224282758107966624,427232216529095102,2690832374698178764],[7305364217194775276,7115840437243030006,11687419769936775652,2735039893117164307],[10858299353676109330,17182395097602943268,10359912302455115689,684867286249957837],[17289129682871609812,15935175586895626902,6580358140364301695,1870073076974865174],[11581985293524803789,5586244327441109282,9845055446534373733,2808818952088135136],[10143406709683650846,5633102100517303154,16469905000866411973,3406208476561652837],[10992314003799372557,17322716724534720083,15751576483304408144,1646111252671489369],[999846444995399222,14011138294935011139,6667964318074757587,867213260052525034],[13614949841622580336,9399492980024187335,15638599896098024049,1538027079629728594]]},{"leaf_elements":[15211795555875824610,7686336886199877019,16188248831084614495,11577747871536205062,717461600408997871,745613224677849039,4385485571593518306,10471031499875538044,12590367497468418652,12424699711871506526,18339274072014688,3042926086385234256,1431599270132773031,8686150398931362103,15336000343573095214,9682967388243216128],"proof":[[16442133382654394375,5420960782199519234,7378196893060848286,454397241461108396],[12256897324078302930,11893788765113874436,11294726316794671593,3300190215745527981],[11714382967511432515,13111606129023719458,10146414367791426319,508754940768771771],[884891247444970202,15023348828192863351,13299490720264045378,3185511240007856787],[14619780283819901678,12281755326726147473,319442712941351599,1558941547028822906],[1389768311319449007,14236537471961652686,3349081074204103601,2876773415225488148],[16707445333894112763,15652176173117182806,12717696149262687733,373930509062837472]]},{"leaf_elements":[10405193026471630820,5886540868220838862,12086339467788396575,18248244981775048121,15406279546541688106,8999151717228010559,978855660854391250,5806990496462608292,6234062989392770953,17342543145608919633,17879795720207709209,11123144005392420035,2305376481223293599,11256653510216225542,1552102940643429061,633285129771981570],"proof":[[14074479351977345807,10299250498137380971,1764447232380109409,230880189175204442],[9638837243345328524,3548442352561019961,7552415862605738816,2591611983958661810],[2598732342918378786,5317963112505505860,8244752469313706919,950042062237983842],[1395445178162007610,11626158447455766250,18397044548169564307,2769656745606904775]]},{"leaf_elements":[9036089175381653959,2987875599192350377,7744707005118505168,5188089847094658525,13129935381927018420,3730150788540291038,8209729877721515470,17090538519922816154,9607968513778767361,15071132642506767584,7320125160743097689,4991892819851375059,10068909456476243812,14089867269071297833,15389351978943733972,3387928692605495898],"proof":[[12726638950376879646,639506612650757720,16912813671638057237,2919186756859426224]]},{"leaf_elements":[11506617648987991818,868082017674053972,6543021463611153452,11748771781491803820],"proof":[]}]},{"witness_query":{"leaf_elements":[1014236306183794531,11722232148010281751,78310693832623439,3063610861999409473,1759393649197833974,7950810367840620499,17045214784646733291,7381020266092353058,14167859113719272075,3162127260079272597,4131938786090489557,15460414378789001934,586966744398647878,3580207531265497487,16571008311201685543,2219880355313731573,12207786544964173627,16368528346982075203,16092642209798101782,9140961250431011023,3199456332941613226,12185936508773365625,13209630683631398064,2256722394839878851,4164454658048973172,5332204459535525907,16445838238177962616,11910208627280953226,8905357949291285107,5666083168955448337,17386496520700243462,15043646628138582302,908528423622671134,7132467932889236715,6369789875413778951,17124260827524153868,7775901803401327724,550165758941845395,13771954189694815804,129410219717456781,4634651760025305060,12191520746647350859,18180150957411464894,12114724217068448611,11169639892872986440,4451068564969153789,9734457678122878559,6576132782207037525,6187235114758298147,15832300504158833254,15763615783065608049,10560271139401490700,1853630276460176150,18380881285472870344,8487569643884649912,319285942870291514,8961212771267485647,1211535043777622065,13894622396613253463,17925598727950596766,2801511327091743517,7893075062958297586,12478341616778224130,14675819002932999068,6752786154241618004,17933721277235458111,11729916442318857900,11794653181256849195,11212336651549931514,720073370336699890,14360368720416818086,7781010976573037227,10799665365054708754,11133936229564609082,2652322370025061725,3217203312659237769,9497769898729788915,10221874288594661858,17494588358430730655,7365626539232399639,12542551440164452003,15018799669534747944,14171787542054486692,16918149609088451157,5446387646883333722,11561008287803818216,14069669415659700210,4125739265391274342,7356912376410472769,5234956245901609264,12877187484791815049,1397731647470960294,178167595066796918,3795761146807276884,13926470882454997067,14531625465023330614,8608400780113088530,6601121903355675873,17077755163401988379,15638204271329442290,6445417236606198236,15455185626767590638,2381624982724695984,15972175955559789423,10832352321157493160,5953819948488918880,5245353445518592056,6138506873086304234,3810644177486211023,1911399783276108033,7697019428801973013,17376208396199555953,5211770013010043296,3174460210115303793,15159583447469192760,16705167391261970666,11568565458644506869,1277251217051530474,4756465443523991808,13631743026648032058,12006142061830765716,2149526900636751147,4475419075678143461,10187001502495626909,6910392969443962950,12520361302647292181,11449616721694777736,113423476676878921,16706145363988030226,11185058556759324429,6362844083301575678],"proof":[[4105330457805877167,8661860735077442984,1694507372862418282,2068886205508378129],[1812421815956379263,14322857626568330219,15914592269403452965,3407714766553085384],[15794225478527258501,16316231456518203158,17068908377651963963,3437765531395631605],[11320063284412414793,10795950415420379651,14357531090145560726,1572643928538292027],[1724262061167981301,18395978620843081592,6926617018299024311,2025739480882432704],[11004163675013153175,2158745370118529561,4899658848177192793,398135980201627651],[1843932380707994034,14766995473930393187,4780162934772191718,938826889575900176],[8353183975324405215,8219953705248408773,2319868468802291638,1867166280804803946],[13842078074068891798,11728423679238619812,11617025057845446240,1175616638710694607],[3674941681588722122,6937921218178197784,13667803740483330581,1805841077523833169],[10234923790260917492,16134544500046937010,6192536968478693055,2212199653872390577],[13956835885681269420,13977950138640785752,4863109640880899263,1937558364909967234],[10170411153944345348,15189428256572144992,12959700760463722718,3298790997504217383]]},"stage_2_query":{"leaf_elements":[4451992554040236219,14393514623624514476,7912556870234530930,4885802445912018098,15508786137181970067,16186385778678699812,15270952766609088365,6254535672812004565,12347832889752360236,2151085012617232637,1140108815942419298,1588908604128974254,3431998572287478651,3762489600722648848],"proof":[[13713896800199055882,9199530771703662623,896256663813590245,1005163530462412878],[2581151726896374593,14243788122034385790,3481603817348868534,579063516611630230],[3983350341089584785,6387169439075513836,12709419541294674245,3222093875296723614],[6448620137011686118,7443565194325313675,12361614284260913655,149563936564275405],[6149917216630650136,13428667959869759565,12722506626749982594,2471752316404257892],[10727037973542055447,8898181904702561031,2862276124513917382,1601201210938391197],[16139661339294992654,56040760734154540,7302275204196392082,2921392281900500523],[13914576835634164252,12171001295905527340,16231413945701879497,962166326444826459],[1723380146632626202,5295772956098083202,8318949327926379548,1367575739976870325],[15912240789430353319,2019066378173379809,1544743854581528804,527392455536907916],[13661234358441554655,5867380597679935196,16965064547634284256,1150271417876686726],[1101391570155270103,18030471955809926170,586352199699272119,1793679619803222441],[5944104811179779230,4705743378997469566,17252932908060409042,1116220520959491408]]},"quotient_query":{"leaf_elements":[6628507301279270269,16925087091697199467,16810442273668655567,9231544903713117169,13475677407978800327,13359360541802868699,3650918797498454883,291236409176748151,9331847147916138631,17225611402649617074,4182512696959126486,9264107375145259075,13817734816050391760,2892580557231210283,15921984144629369353,16260540986493513025],"proof":[[12910086181234652701,7037720533626248181,2314337105921626679,2604331666693464613],[2294649119555254764,16879645760412006440,4761050945415560106,2551489961930032246],[6845512002696591397,17375811070105492789,10108663704160500602,3248751496430251269],[3579669521127707016,17699765105858047127,5007357626416593321,1995258997054685212],[10187041404372064173,6526284829672281090,17431229025654108007,2124344148508485791],[5571566021422259323,14554172359832945661,7519993789310640603,34168347929090935],[13955897752505489071,17932721863784216900,1331959669305944831,2331489466772027738],[12530942231862598849,7007791965226478467,1523914301321699298,573601272525677822],[9323175249091540706,2641812429743234302,3701799595368381763,2061157132841749138],[11075825838577538280,15269034606084684571,8177132772191193834,670588787730383802],[8496151696296612573,7688097926724613118,15913285176425636566,260204469448824341],[17805648031392826486,2073215923224479568,7861966061060194600,1640385227104014486],[101117472389605186,17621311294920231862,9537129816252271277,264251130147554038]]},"setup_query":{"leaf_elements":[13806852647938292073,3850197098712946311,12580348127355581769,3980795266230776576,8760344364810947566,8822115905069875578,7733147435833210346,13182643917518013816,418050428405817339,12109662220597600525,10215423599957339848,5867419912629566970,5080837594911436911,16857064522578338452,2950619280713894167,7039018304025308212,15630297900529601979,15081204953944271581,6904922288890043268,11735449736320949767,17004147621230035992,3454974011954530621,7752305290179428661,9941055702958834976,18405477065607670161,17016408098195049877,6120284935893203994,12424464026246546419,11944436243083176635,7542723843177680340,15692445949603125981,16181269258762412120,13320753587393602265,16327693563659857957,11531954833901240484,12009838866004208347,3897148483246125125,5025880776148627857,959058162596298162,4845649050911767411,4177640971352692030,15446505660612674120,3956248292775628978,6549838901728037390,6693014392877428126,9075441062124052764,11419417230363842545,12145994242975885146,16732804727242846582,17284313352934093544,1076732048397735319,6930596991884085285,10769947033262955677,12471537116860575696,7514707720134952221,9046820147639271346,17080946700987697661,18182935640771918036,9154251571469353246,6684615187934703356,4164934028323647792],"proof":[[5332926073350814933,15276425721794067529,4155104185386358040,2279851439836915148],[17663970448630713734,942018067762034228,3198537011923468710,2755891609481114197],[6245404510751848121,14814322286368714163,12728414592534527862,2678539642542941636],[2875325751986187395,13119502457603823136,17149364067385865505,1623069002847919173],[9946008654496129420,16851727187409380380,8341922892728165916,1084878227602381885],[11761191962947607269,6533837475819176307,4433398193493725829,853476605821766166],[1797949597565572493,2477935105895000092,1715282977639636650,3302510774716100013],[11791140918838458737,6662526188784055125,17644529841219172303,3272909068853552475],[11360441399470316396,18433116269067948365,16544416248378954687,2809765658898487327],[8942511314576486062,3366580451246874736,14019961639623483145,2762490972839929808],[11810134053350416824,10070209752185561947,8072463214693336303,2312904188598789158],[10516063788198811860,11521768273658753976,375854070151956021,797548007667768901],[14721891719636996984,2949626462121883205,514398815710631466,2655190417159851675]]},"fri_queries":[{"leaf_elements":[2581447613514187903,372991530003623485,7837295797242363662,3891139360446921492,125247045406594894,17802070102661507035,1660703770742321976,3562925954083375102,17519311659401174455,5025035819052301273,9742455978746405772,14208889919885684236,5724813833665554162,17247851783302811917,8242335593834104819,13731332059191658282],"proof":[[8431572270809329440,2787846907535991285,16066792323433691287,138392929090575933],[12464203624175145183,5453309806462812257,8866692699696854384,3276231986450739986],[3134788416315170225,2547181856703798498,5080493699790292905,2127925841483180251],[2985392267537936500,16189811418496954821,14502617257202684588,884077810491495871],[2699895821806547946,310683302551631208,16026911394802734274,156788958977309793],[16935918147383267765,5605823580976041552,2962457246333809419,94916388846337672],[10736355005622851010,3031619636902531771,1793695099067853058,981445591399336857],[10250052735318230891,6305188096615566818,586180840856926658,1526313768161694323],[4999245903498690337,7298483859315852371,4711531156947246730,2388582959435649154],[5939124624586656117,8797311108778415437,8676485774919245055,1516009211411584182]]},{"leaf_elements":[9565829223576005284,2402084630815670231,5009181202833601428,15787558062930867380,9949819279315888367,1439443803679160234,10635045483150905740,939965641122059388,7054186668436638314,587932034541328832,14179109635291100065,16295154496982538025,1905657491327759262,13832567334012086103,1119179836396341144,8753547532092083508],"proof":[[2724622308316775943,3615790792071675127,141502793557855399,1538664784546777206],[18389952253664284516,13202332873228672103,6552880628019002520,1059631278288600810],[15100678417298115657,13874457186338398366,5512221613796313649,1315939574401156902],[2961037991650073004,12666891277499382629,1975850522687116715,505872547424588588],[1734663038235488200,12685525245348471603,2277070921607347413,2188248763925447369],[2767861238377875692,15785855316693498676,3744809610891684183,1567103551091653836],[4226831722111814395,6655831638141719359,18416793863196828265,2754055803328667659]]},{"leaf_elements":[13570227015988781841,7500101531777997892,8816433464733455109,8926772539064423180,9407403089687576453,801580812786153217,8836080678669536896,8405862057419486435,12522178852416395016,677201243902160192,5727416636598576800,14937014929751650934,2044623445036613771,13293268024941559633,4755317015488554456,11015753646241206069],"proof":[[13021967017824567280,6005782593242202559,9476063942390244347,1109097222503110018],[2571638911745539105,5939010277878936557,1517675223986912336,952587486881256034],[12210735443468912945,4228653015746222779,6294461639017255781,2485205723841483832],[10512165384836540950,12576725843624026847,9749163590345599686,3286629949348704569]]},{"leaf_elements":[13790855340402993368,7414387734080379513,12975407704994933495,11495992525856327121,922490172660792407,2216591724534083829,5681419279857519838,10808937684894799099,15699585052605113537,28254719198542013,12781572970255467545,7196566718999339916,8152988491243675749,16434549783931242612,15461814104182559509,9183595432750050028],"proof":[[14777760533211147947,4160079023517810966,16181012839474086048,2965431587160692161]]},{"leaf_elements":[16775312693976535021,11906390845590027506,16723574221087713398,13884781623836882318],"proof":[]}]},{"witness_query":{"leaf_elements":[7575258112001263694,2032155964294418382,7850506679167559948,10635400839007345247,5214238519103138406,14491747753822002453,14895681397620735770,2352101675595121791,6215679948024032257,17228362892129711274,5989317771923612731,12032455597997289368,657935033133158633,4911703843121397658,12206376080052288863,8718344390980712405,13361856824842598728,16643863179036035406,11269353697073418449,13440176340714173388,18089230242493080549,6931627570965716782,11586138418233110696,11408811450357238785,14527581803568504297,4205576783326279668,15395623133187838775,6366169393591937039,5990792643120236067,1684157578784618299,4687968112350958128,77346295726324428,2284281376857213184,4551510056672594793,9098334160738084421,79475872030333429,9446989837687402956,12310028648310806539,4381125304217830211,17352759041967692587,13232988248067996157,10670386187582083462,7218138127446983686,9153135827407969169,10982709027366291901,5731848439680239267,8840001107303388007,16596936866914077120,11905916704844609762,13813964001323815483,11691227662540900179,16135915574465575252,17545368347080345598,1923858920926290369,12105461963532793206,15593061694742960224,2267834151102628612,10853008761604927616,3264699937584794481,13006249518810349992,18235484991913245162,5750514914757284259,10713073813127908788,194877683372708035,16882176354657764373,6867244255465519357,14197025722178022685,4111839130586148485,495618086642669136,17218947525565386857,12848934895627477481,4524697077186085688,4656363683892348824,6965264358750390576,9170051976403832489,8195714207284400539,2872040637002035647,10001574473639736325,8743743587064034164,8173459467311735396,14298284443169023911,10712247432990491148,15400335936931881344,8333863308082456364,8772482082018399468,10508711238654175005,6954048273171494726,11936056877710615826,7618090340580379454,4835451119781358088,2485030930605223255,14913113880611484830,5317268447209854388,8527490659513110522,8333247243975246643,11742685909206951745,12282204873528686936,12894429617232550395,5524202359465289685,17938257147390322034,8283611475946275875,16640165956963948617,4004869966905269006,16686446232041567417,15119858085408664737,8942033491777828309,9463665518487565547,13783919027707738511,1957690563012544068,2999926330270437845,8122778598272918158,12361560124950819778,11103566828284095395,10580182933236814254,11874872351791434208,13058253826993246774,1684669227978194707,14983162758027088012,18345867098564900822,1596648035125102130,3149620406008445588,850413769785097915,14762664079274984641,1404013547863693921,5032321715649963800,11428438732576397322,1119351321536250429,7152430614346557414,16666845494692284841,267911634400460887,6842319151413804475],"proof":[[1293664567417280483,7836052416048413846,10489456053175469093,512960460041201],[6601098285063281558,11299096608530431033,12048343739016169280,714274186477491664],[2850177517139861357,15513879188463970206,8005782384157981797,1461266919290931311],[10719643219788820631,8506291482423908816,10410409205440569941,3078017185771051113],[17761748236398182707,4602476119881120416,9847684687688429998,386775346968977524],[6318638196685327188,9163904569175667847,1082576196350562271,915390251441059147],[3809181280763867337,12928943518373820253,15658128791946409742,895527974608023400],[4954263810776164163,10819509517929361772,7765276679475398381,1152988136514250551],[14128131184682063564,17038647130882398183,5113370982135933145,389612843791730124],[753673864850351312,18285912084953762099,13991842817579917537,730362296255621576],[10281909401223401895,2070502197082610462,14063637489139317945,1989185112808296337],[10874733966612544815,11074322858128802893,15990487178892717943,422650260095906956],[13357217182822843111,7246194359117680782,3300747307565431259,2805875995488588298]]},"stage_2_query":{"leaf_elements":[163244224205184638,6358718821321069833,6454190079678776980,6643892050472016397,11077153157111660324,3061039715440801814,3003500196766727506,2862780956760046383,14073830466331453821,16390053590507589984,13229396279530869799,17488977524285669328,5409853139199653378,2345040911593432986],"proof":[[4663734823917175253,5740335868787896371,11608368132291189564,51768239260955988],[4945733670710034180,10184447523882445576,9089731130341480166,300629457437599072],[12190407640764072227,3485611353298104895,11868006421651061866,229217477115119305],[16821067826163596058,14703944855925758053,8027870689607433044,1057694371161887322],[9568559354103513983,5144780446958837790,10188443492283029003,2406129589048043624],[5504272619373691723,9277235066315922862,17669161899109033228,2085614405205969661],[17102872514572312788,17624270925937499173,315300282632125347,3228835692927146296],[10718338512307719716,6068167039553028696,779487085933209099,2340753407372370785],[11902699160811830426,18327681521643124145,17275103317857452080,3372329086531058894],[4465962908280699299,17471826660734265559,16574876815416595445,3392565735226076716],[5668524759224651997,13442498307830437777,221002646873657042,231224762545497637],[3303406567477199964,7479037777574876150,3019416846549640606,2942376232877342398],[11783375733003255209,4043511936331649179,4043506204996727333,2003392045411938067]]},"quotient_query":{"leaf_elements":[8684736242403444364,7264039534805582978,741866220812128578,5143921588974934732,16834206412835353510,7906596973339944052,3436072851655673669,10743452798444769256,17301319675786765309,11777406054269609944,9203270213620342951,513845577597136498,11763845570908526333,1556678626882671698,6422168641807831994,10258091458200986433],"proof":[[17548002818061699513,3399976766035118937,11247161945789931917,2558022879896302885],[13005509625250513893,17101044320513353123,8553377545185336015,2535061843576286677],[16358474599566882536,9164075091971046731,10610828692607689296,2220208223604944700],[2365982252967093894,17846221850477931132,7925959390771266602,130754719914539698],[4662236037352833384,3042031450371495663,4185340428592342296,3280442073649566578],[6875280442445593270,8214254156287221233,14187199811233962534,1787481446475924016],[1076208214074139215,751477142498047883,10975037063710256907,2590735310509032486],[7382999284533102261,7689609186077839308,15010831791221561013,288935587987872583],[3333677992277781411,9642335684641656798,8121960486661830191,684744823763407222],[7698206421856067206,2363537360847709554,14239132750771751828,3286062784046658874],[4931499726098007716,12179671426218568034,11768395262272745015,352215414081702512],[2018525985558619984,137740710537253784,5618217583512308755,336693333814475874],[10071724685433138712,9277584171601855694,12421698781990076583,3392383529760788958]]},"setup_query":{"leaf_elements":[3133876703407586261,7153131264938803077,18379758243068865265,14150179831596174955,16035748686548881771,18393431200159964464,5951452962718186659,9698120537979355996,17877564449550619965,18399527824173098279,6835094825672425347,654656559679393733,1245795752617248364,963940306407997801,10613741517548369985,1428127578410045795,1954851299627043099,45331677403117425,13121989285737190903,4768299901087598037,3207899520500969078,13053749002910634398,16397069972584914597,9462892707689156062,13543499929822187920,1510256252832980239,17803945517958250008,16401462291070603937,17508420804963641866,1241969236454662757,2680603950466884814,16440913197777284632,4080723406633718584,5324205714248909369,2589225535363343745,5681008979749402513,14593598223147323150,17960070696550546111,5117960358512707181,11759693368414991942,8555188268600421892,3780572155422393301,15409163114567930683,17576465048962713121,3912982178122800384,16391943477845232154,1212930144985168490,16893819753171137508,9472680024795996868,5299462603040681765,3573383513911228071,2736722755720792367,3750108718234292614,13828769227425638491,10003603536746893687,9659500627999075340,17212274380115649063,1732454110416931664,7276957644278201861,14833439581409449946,13851071936480064549],"proof":[[5470304567165822535,6279637092201365906,13497029437126635812,2217204523793994589],[11329695683520257713,3079531128587286421,17234036141440452618,2450056068195111776],[5374087257919079921,18201737285357224427,10627723653982002636,3022212624635407912],[4127258002360356884,14667492175961870644,15640144375485431329,1995146124681155296],[13702839469404195535,8478621022597458485,9486256025983059533,909621569271402358],[4604977738290241412,14449616149101024076,15192580987397938522,2762286569942065018],[15952891843735141036,17041607763792713974,3486182989688276784,1574441862206874961],[2911318080300122901,16379967033804939624,8412930171638566589,1752019606172858501],[1209315724274643424,7002028690802374033,786771805449542367,1012308167974602153],[7710284734390133113,401744782823616302,15517334503689051107,3467819463180258302],[12845171450782834097,16516701653703550800,17286203523315526075,1374126044974334182],[10329734661477968365,4064135762975347579,6654916537517027331,2394750824071546707],[10215260393543767826,9751391172593344006,13862000312171403022,2102188527394459267]]},"fri_queries":[{"leaf_elements":[3373129299353353613,8152651317319037605,14322419619590182739,9481924114739997054,1174546412836127914,12465186084875487569,2490476683812511423,10701161355094375752,9185734516529307535,361630560838082607,2489183397124549110,9456638722243581054,8349817582173527250,4486138743153464924,12837038475019375634,8999133513450994431],"proof":[[7311982797387123133,4384234598000063015,3358278479944228118,603096532023215460],[17673299412068330274,10061005039250323904,16684999460099295281,2643755578941603400],[15492185054258246840,1397162963124213796,2460457124552731934,2161809742120942297],[1566428728072022945,2336941224391288014,16527327263358518692,979146100197901568],[2995823495733025283,6315338391499132025,11256234897507476889,1776118734247302141],[8533722328174273629,17955996264472142890,10876076587920121813,3366326122119469163],[15565234372276045753,10465082644416569857,5637806947175181735,2440887847756508763],[6376988885146620858,3914798314551517449,388209520764766714,3188762563956201938],[18194363797141198225,13411380482853529261,2095444994617149265,546801543464856746],[2727149282747321928,10891637232743280698,12913837565521066440,2576402083512426196]]},{"leaf_elements":[18174205741534775684,2872134835879876927,7795103723620280210,11355252863274976339,5097368694115425002,14006533225631523984,18341041523216694950,13721293343256069430,17628833196806521542,17118835017436114587,3185361996874232746,9803660964557025642,13652947077344205817,5803177989110120060,14368672610073105271,16584969461693812091],"proof":[[13402685162126347460,12395901871074968060,4099508644572886221,1621995152241741278],[16216544291669668653,9384883659878197746,5569568297091209217,763613714246732786],[6366101985058378743,584957485891872052,9370861807502874524,40786101993869548],[1896282822361108808,1250518196534309078,16036811784594702557,454217061669488764],[10728114299657712453,18050441078361654031,12472202118036179265,1748993432868781092],[17041208096320356554,7281327104126928444,8044257227016946160,296150336911917259],[3303603528948845539,3326255857540982732,3658681733470339555,1510526829171137553]]},{"leaf_elements":[9353296407067736873,12339955703703802678,18308768365098910339,9592316408774967328,5279833538446919094,16975781902354066617,15508622789552576242,15486850938367880301,15451829334875969352,1109011454527717972,13248870103710506637,17878606534257307799,3879580278837850085,5686108971143545207,12152169798697937952,15704936948656035552],"proof":[[16858314298679778665,11895273310902026704,14309628391379020858,3188967685264475927],[5302789301758403260,5221822417837137701,16048182677007640033,82924544860355382],[715015993235620286,15427062556929528446,14659021595870489039,3193097602166837712],[2675790080703259223,11672018712848555413,17368983387124538362,719346710673973172]]},{"leaf_elements":[2269900810174600336,5098110879737557033,8299216941866001348,3515417207436792722,12478804426321499801,343038200534073827,15203631289634068494,12313336925559358131,6203791195205671288,13398748586504670354,8935303490405486729,2665264765541986722,17919352332936791133,2982639848891027123,11502625188948097420,16989819816840410281],"proof":[[6212898492623545222,5273054318572493999,18120166942467567840,1600672264499078704]]},{"leaf_elements":[4501127538857023790,3168202938356671861,488429852234980958,10426529919460171421],"proof":[]}]},{"witness_query":{"leaf_elements":[11967188028393365957,9494399638041091979,9988833136245584684,2417878530111103804,3700727836422065667,16094193674833035404,4351960292036422097,723351253596449840,11647510336651714390,2923027309568061483,5680900856783889711,5147374339173526795,15912102451955757873,10681301234606057652,18364387399340944674,14487630547522737353,11992904869770560742,12914598231727235704,4724589894023542308,16199945717194279112,17141966192870429924,5604305578219633273,5044517739948165807,14123288616508409730,14486164563972304314,2140091343200877434,14545019462724586528,15069366325077592110,15462790580020094078,3336021427547020035,18383616997382963120,13692132575420995626,588129640397487381,18393532085493324984,12029890587390067485,6903564232619104534,13825324371614622384,18239406628836399723,4814895965341800298,16320083190515979186,7233078866208110624,16599378586380954259,16269038554872088348,600215203402189133,7981420556870875204,984154788558268813,7410729362521342065,11550705632589357915,14471013159965735170,17555342855167229590,9807476957278590092,14348039346217996928,2313599616165075145,13267286044390588939,16477453090389613370,10789325396873307887,7613651833169332382,17336715205931138101,11942738238430295098,11476336440232262008,8237824669397012702,1167200375530694383,3016620200167318500,8108482759642493787,770829806697888177,15028589396826397168,10894408467851404136,16308163910703453886,12406679374993514857,15281920751036090006,869393460702951686,11440530801613891751,16827380049819834191,17846688918139471706,3806989661467478705,15326738704710789606,9677256294669147386,7787374839078001125,12264859082927366152,4048212225451659436,3441214201727348709,12402890568886828231,5378898918702043546,14617010975044942104,6866724532713205676,1934413238296038438,10076544654493307373,4027230456736264851,320881575613879692,6349251576806741498,6943371657250028226,12677999792288089267,2709124886379837449,7538183113084870730,8775100965500486766,15251293327420936753,1326355519482008681,6912466300791314804,16375577325964656527,14023219810818741861,4326289412186732997,4334305796173630544,7148854381986540116,16163195697332423454,3923752033372400561,12110204262190477642,4533130334054399081,14400049960386438080,13773437819958040414,2633492718930121452,931113995867384993,6032364260843108399,13651047410974277983,17471158810945735082,236801249408502418,7447046671163130630,9785331310340821332,2039801384415370347,8053742188839186855,8988753975653060619,61157963855090694,5713355397696681808,2148332723172894478,17985717959562552742,13169233434297412020,8122322381071488776,15030223944254915131,10372841363718406913,11205691539532907664,3628243300122499265,7924113586867123123],"proof":[[9419630200857818205,4965462189067290766,4096251613555998380,110823535285948645],[14029764900784458016,10531269517360045151,3252632337445829054,794247683956073214],[10483988646940901199,4742207567291565717,7063238412655891814,960906904285179375],[7645491904229142172,5343220325471933628,12494562354055790250,3249535889629670415],[11377246993993640866,7513707666171584653,9131541854539934035,2780010046423317892],[7817111085703133807,4157225026230955516,7477787541036819346,3431994925226470645],[2826856241167462680,4554351942800660423,17948598524510533237,2433631439143257143],[15469547473165150655,5454106272042960182,17630825954262347990,2638712065295360379],[15170836176315874732,5311898155992926546,859628048047746292,3163810127323039209],[15904970467177416302,7885581310042278638,14404597872433939073,1523348859754907831],[10958490988289835192,3564692893968849492,6616438513941535093,1928006272262156707],[8971550641226983301,12666341096515836810,5119772871836300530,213649690094686053],[10824937849326215501,1718197996236237807,14099917621685022323,2178034142323898131]]},"stage_2_query":{"leaf_elements":[2851748970283595656,871347139231975690,4709350464618744273,16793167855053216517,2822982841626325121,17826097180941953394,10852900115471152983,17445760856099891466,6822949616624548200,10624579968506650735,15720981294244540191,1628080007299107186,14258892470454363917,3416272195332301233],"proof":[[6171533471957150576,1475621203829242084,11743259986955607649,1585751327989932404],[77501785877454404,14623496096126089703,15915423394322186357,2026941576585746798],[8099125009708051357,17402581171730735762,12832459147004551258,602621650504687771],[2392161717910529448,6939707943030257985,10785173904383264996,2157205440324284964],[16402583707141826060,18154577628345449207,6375735388957346675,3464729118864957125],[12326876796154787072,357427559570259459,10155693008659787946,2499231732215455987],[16784528279668927724,4257089601006013173,11752285175119356864,1368515241864028855],[4192925288304306918,14038453269174424216,5321305019389570958,2622412686732092607],[17358627338548629567,5247234787060739036,2256769281256319396,3243340277336617052],[286389416854280118,5481481029904598927,11448324684498534317,860299065237886008],[14855294033082672669,16316744861209386990,12678973156966176776,1870431974446894247],[4342695474072020893,9630581221526481868,7547063756698356121,2205642622808201909],[16392396484878729955,4126789946595454481,3364068644797407771,3206984783570342454]]},"quotient_query":{"leaf_elements":[11063796066802754934,1590897274693474913,3368087240652664619,2760823787281177504,5847043595108336358,2418195773384952189,836584809340077228,4344966241414089310,14274324646070080260,6763708705095004022,4260764883176428464,7980955694951440043,17103252578935063241,2346780522683637762,6916426472796141052,315148880854226841],"proof":[[568055332214224686,1473152555554866943,13762476245984377568,3418770979152864815],[3615916957316509500,2761443762869733720,3726355528082615644,2218720336457035173],[5047427948324093976,1623972868127267838,15069344231833864712,742190630364142277],[7618287731837488155,6440145642833337176,7491540259826185508,2242159411287227652],[9641177045875986044,7512442552669228148,6742052446624327543,3220175415467138044],[7881542669596115203,14377033939489589067,12932198063570380704,916437272887529270],[8066127584259546593,16029066477518348481,10782948260718215234,1403268713494094516],[10042761680286515210,12177985121779752693,1476178519157150564,2083717817910212901],[11263685789582593212,7513060731430950589,14838037366750172226,631861153494886968],[6824748216005742567,16885673855369499342,12067505636347794480,1814588586744554018],[3116586321160444290,6958352728219004220,14623508031201260613,3415114328625469359],[2368501418284441918,612763502767847230,14553353955504878327,805606120996264345],[5140577020405584832,8343465989344296495,13002851761865653574,2455122082449337052]]},"setup_query":{"leaf_elements":[7785508105322359922,16129873643014068083,6028962637289362150,9247620266068030675,7077850768097233844,11745333592398816560,1153511494814300069,4072975133007557337,12955841417996168648,512471617782980572,5514313184883188085,12174759550080636940,11686914608332964666,17828847661925760708,17837329009407053789,6734051223812099736,223045932108630495,14343739847522475635,9692026294965504398,17325062733603644341,14624233770969895552,17382488729997241980,7570963617152300736,18238757547347866683,139724908312160614,13855759769170392534,3731922954900460778,731906065098108120,6980965502358470838,7219341763306641275,13286247285705161105,13483087571547882253,13823006360509000434,15079655562878641954,11435256103705093724,11414000400750536037,6404471689367006022,10975373030503701288,15643297768849162965,914718967976069407,14254410968938757477,16020022249066252447,7600222909730316904,14706018491992080838,11226479924792644047,9951247172649500115,6459601163651540075,1003836800870108833,2386322900425233799,14612212938279367131,10247772796583978348,15441704264378335643,13723107777146513094,4088064999568589832,18439783424503835541,17966609329990526176,6461440699934851070,3933578027656933153,1464761498394255719,15735675783150300139,1530916477023846942],"proof":[[18210826617352773202,17726868702114030961,9617268748772950047,3954816681136549],[14569052136395074836,6946303112971344440,4264754872376378218,1650476961051801476],[6938295219040300861,14525763610817937777,11390815266854315400,3363776007915986688],[16270911231370315000,3807544845960209316,598762395845036314,880245400895289883],[7237432297042544101,13852568755905376909,14407381452108426609,1439102588699090026],[15746303232176148024,7843842242871146314,9487023045188354314,2247680079726938235],[17066625710666210719,3001543339437865806,15829871137247156037,2999788650248313300],[12689209601111999944,11911063863246420280,5209417082074260492,2405866048926820579],[4811233351172182060,17299827536728186500,11559574278006773460,3326835644597889565],[16987420973136768194,3654396609914898039,2234382432724386183,3137477222006993103],[5148122196096283165,4746302271774025234,5707164331223489048,517299353379233803],[18084428029419589912,4084746638087515202,15606040896233187936,2824151631763754800],[5756101253259440037,2507236924583807190,11397614503149736527,2196094715248116226]]},"fri_queries":[{"leaf_elements":[3939556446199740954,18166684489647718585,12866514312859997970,11930250320756390293,6379006556307309508,6901675440197434293,10312802399838738765,13121394415455323211,9587653784949423708,15871257780652415020,6019320422255464923,11130221556758633935,14087627109047978663,3891133572947192097,7749854084040363115,12250868828321092595],"proof":[[17710122167038241124,4717554906580869434,1722886778933972400,2937297633286748393],[1710219397344701572,11636134176352279683,16039345426550276839,3013714652719577172],[8068692806473870827,13451661677177453891,5290211467202828997,3168699807983095240],[13736947702827798996,9204370250385996277,11733013954149221177,1001744423684636479],[4381502737600482046,15168334462334897563,15996852678592263467,865200097522546989],[6952745563530148660,13247412316943924320,11787195675466073948,3383272035613146594],[13247135995094642894,6257044126830807190,15241741372061554329,253092306167290274],[17370964886938029298,4608757828685472961,11824757276767675278,2131933875569095071],[14587623574751915128,15605440221259329305,166993031526106173,592282036052164615],[4203734648063415088,5572606400297625904,11638643099097167954,2149312300932434459]]},{"leaf_elements":[4358167714380919263,11402484391938420805,404302512314525699,6594537255134904091,15695955483157038042,8293600223252391806,10386124383464348209,11514292159615734501,193276004962512845,1197051176388990354,17913901716008161558,5362197777948147940,16312324817682644809,377286026683109981,16725241540194858198,15226090789208671974],"proof":[[11048757224742162137,14974682095517073909,8735051700766816077,1371892634509778185],[9094404802790501872,7614529379978406412,5879909672515127570,1192735902714070125],[14318022032236464359,10233017699718499493,4447613324499287905,2282480613308093644],[16592760273712355353,10854955587800595841,8809126001910611886,2517900344164782692],[857888078231555140,6854724288508753620,17600439185098916248,2793496545818798291],[6565316766626235274,15840052527892295000,5929338727958474056,1872532020323958379],[18104451860560284932,4640583475077416108,3306284090082262603,1481349666398733696]]},{"leaf_elements":[13126109202626961236,2139133232184428322,13317050585247991707,5591776342977265348,5768775694226161461,2427815573678647081,318665822442663929,9715657985539482943,1136886958641764003,2561186386641975783,12760329195757372667,2071350179464889826,17671436990541019285,16182630691795926162,16250951031092178839,8248320394002954450],"proof":[[13396037428460928060,8515100104281655977,15077775287790727878,763151058011997982],[1914676428796838557,12308854683358632913,2788725102710754037,2668057056778906971],[17478367562608498702,14680413632411889219,9997801569494526500,1062035792450322814],[3739423148044018170,9885586201994819541,5180594229908055931,2531840889243286305]]},{"leaf_elements":[15859089997781038374,1994857186171601481,16712912127603582757,13210363489554923451,4307184507230540301,12355014920308439175,2377906283639097493,9636889481462111568,15689506450144469148,15329674555091613968,10455228447275223635,16353864476348180603,2431194475576405329,2637549350951861111,17140631889297147002,11070667164652724216],"proof":[[18273848792544346292,13194308337463836707,2821939436018162595,1287166854450626649]]},{"leaf_elements":[16775312693976535021,11906390845590027506,16723574221087713398,13884781623836882318],"proof":[]}]},{"witness_query":{"leaf_elements":[13844932413350534406,2190051052743007952,3419820526421237762,5322150152025296967,5590491159656925616,9689213247659683698,17493041783721426975,4835991368005009071,6758824487777069745,3254370626616684214,478227108190641323,6086068465982253295,7081884022231882299,2170347703440400171,8070792062541633661,10827814197050619470,8965205055050323925,629257727356680758,5060034703823435589,9953757072743975646,2682500139014856971,711976571622439026,12305641034576472520,15870314859063298312,2625722638276766811,6734197397948346529,7265453800292663161,8572066215713469905,14160641892864129072,11661910452167064200,4944263601161249724,7723286421251854897,12273621374915338555,5186207618670763062,7688379603785306529,9397723231793951871,4400294901278749742,12664916102311897352,6546610399660378450,15684957436524767652,12219280548563635690,12001535915131076074,6894538183195992354,12296336315487512505,9179094585832680070,9865615169832137801,13507225516654613135,11095326562567066663,9192349255651894406,280074172085550714,9760010679743861020,16678173217940121007,6902218934155415578,5137873067989666114,6473961007324239120,4232181583985358685,2622642904378280552,14989744167273311250,15037028374485073282,5139680276114764159,8810755042471525426,6431834517249133860,8396247240028236203,12772634759580281409,5947774332482564488,17293277225612309014,7668732252435454972,17604249929772583764,5907824284519950948,9669047407707160414,13540688560896701981,9996519629593265256,4048128009378903846,5538144702413457010,15323287589040788974,2189407515256070531,6462474937834146141,16052127872501068220,15305169758884264848,11895683050740879491,5664260312084850593,6772748669634259536,16163385942418030161,7060771550043707724,11656270497681664888,387697499227568439,3072550986648481152,10517823154836586254,7648416737524679929,11696817200759510525,13527554493933380209,18171511276721115823,12621964646850339446,11266961479465065405,4270515703753707159,13780671526415736430,7309218762508725056,556300336877261513,13747021890683570812,2806970225429983793,377609566605457938,7516409848057210412,10249239448099443302,17118533359716820047,10519313885480708668,14357780401527849161,1512595736663445452,1300121259498043921,12073216686310858346,14287282228208565539,13084969933597127439,15299736877133268396,1439526266833864121,2609089907910741806,13002339826157445583,12666392791419832896,9690909335988512744,910332392404522268,8699409721693974893,5312492763758697047,2822014700611721799,4421701532096853770,15595525706847618626,12112208327085822337,12052186502498624794,10767607110414389478,9422889056300454106,14588086158335701365,10434262652900336740,5580842667557216527,8787022358729654207],"proof":[[5079672402871298034,2615028160409743595,11192893665944342552,2781453387242409332],[16590565210158686137,4524576579897788400,17123685244919373973,1670102682284478160],[11254715432088626564,5377560282729651881,12634274735423574674,71010745704020418],[12612608951354831331,623270917778838688,11816428505521857824,1226803242267335626],[13211944059007037271,6410366223005092030,8669885281028808990,1070049912380281568],[9939556645083338188,12036062960181779546,8115457997071339029,141940874580246610],[3157473888812280755,8626073039746438770,10914133102399344061,150469567420911024],[9878223950168819129,12767781775803478075,7604681317994913519,2236498405437048556],[2929862545140706497,16280656146058387853,359930923030963978,2928634457277471496],[13073253082490204641,15638624881445348194,9841470601433926238,1676427404760367694],[10268531948664231170,6525118091667883659,2967761560303839577,861811849424894341],[17853319454102426703,11458132703626502620,15417113988119134628,674570626102661541],[10228429935734291152,15070756974979336511,15218154065077763931,1832421964913171749]]},"stage_2_query":{"leaf_elements":[903837152547199886,1435970004455423208,2907293059474586714,8404547857326504137,3106500858928861937,8841935586379113013,10764641289596637448,2953057261520463582,2325519892741787614,1900013824090320908,14990348025217843913,4513411834063013830,2093955263515056995,2245926728352860693],"proof":[[12606114837683405876,892132706467090432,11185165420580133646,1262425641877388433],[2806210459062174729,16607217590635463578,13578399035948397211,1687782343694381522],[9699318264239760091,18348730050002991056,10305050333358918565,380994401024817637],[2859574225268439372,12359588473395990809,6776519318807860909,514112873203861391],[7268569072983561358,12738828309262622123,742934250119785223,3157336970216717017],[8883734020370148527,9501005113428686139,17192418644228130033,479545163181114915],[11802016702582742134,14051821982284658637,5132814748957237808,1719106522970761206],[717528247159792666,11481946363112177104,8046717555696260108,251936863064407030],[16129526222841506927,14166328227043558724,15297222935389559663,198235865634238280],[7364223497299356969,978150780938585050,7145224579722954265,1172366305682289281],[2270320900022175314,11084083730022225629,10498212610982509104,3042167221963509761],[4635452191223119194,2876417225665026593,10993606036791249716,3465884504674745958],[2751258051649958256,17916243703110554662,13375786371768332344,179905637827751778]]},"quotient_query":{"leaf_elements":[9022938007555241602,14438734451938506970,18241986774841423103,13874292385010552714,10748904141500208274,16362320382291624985,2066366356611500832,3858616041126409696,14718245094150180577,3228629664790391670,13466763211601721333,17618092905889656988,16479310939496535431,13756990317511780405,3790983227112128072,17236756736053745252],"proof":[[12435871694549394090,17336609325884364655,239821334443914046,3262270192305557063],[14129365190415794016,9129015355793492837,14740417416689166871,2026029798270545092],[7910317387041928974,14385201834461185644,2423120838468123636,122070489281038438],[6760583030780593430,18141482037161405955,15405672274598517800,1420932374622656145],[9421674518611181103,18219053984776408794,6719266696703567083,2439770167967311543],[16562734265713768213,16856448150457336044,271460192661053419,3458982252065217782],[3036771716605111164,10449023193416215968,5520523731761551497,1559921415754015248],[4322896204110843150,9414894615148623830,4224647041284965835,1460903636457306156],[4797139944812578707,11684808730689157572,5088867655615736779,2754615984463887005],[9311127495606908805,6613148429567989397,3496496693834246804,3006318540312470433],[11420173561277255454,18057715400353369436,9202491462650698454,796211399199829229],[16565671729463939150,7300669218253294122,5820718040964588145,3134965001892430495],[12356171133472036182,3715560352098057395,10451102580509047715,2369959934291544747]]},"setup_query":{"leaf_elements":[8028645876916339322,3781315263949497547,10163494139676361452,68563941784139377,10451271646122399500,3262974182875113405,4206702660159275749,729146328309712863,3064787135427101871,3419333947202969175,5623560126256102762,1033272386049871098,16326913468636051451,43918928366865676,13944922682830891935,18307982600035978346,7983076403017909595,6215179316710630652,14605067282375350285,10745089616888144464,4018227130418750268,13918206331142750854,11101075790689391906,11998871516220475905,16684465391586621262,18002613149103632762,4481956901348381635,8220661292272559911,15777425112420375613,9839703877617253806,15937932953241237815,1457521944609089034,5096520447512530339,4134226035766672552,145961508162551036,754807440225474712,16291180011128337485,2366768530220489091,10673165989692912257,8965363365076845256,16808978356500254819,14175632436596044817,11849611356485195167,719207208017125542,18052099944357835003,2440025736450105408,13375441984650758244,14224434083564059899,17226472844534647737,10787245506000177878,16667268397109853131,18303420579111624065,7286326997969138818,3830847192582796742,3099705152233608499,17240021449687209133,28319971670948020,16297630239244625184,4589597198853459132,7010597986274003264,17874274983062509588],"proof":[[803359212808934456,1724265955804892468,15555155537954247562,1913163228446494226],[7687008898328523820,15767801722412536238,15670467535837408967,1479828109543296432],[3552601127636085116,8978934532270192859,16652243442999465578,144829765211263079],[9750830053733820286,6596375184450721747,2228640681331029333,1982101242381769644],[6705240991796151431,10531862253171850213,317979736546108285,3417549434486500039],[8343591435247680247,12796699521374552485,9461521314924151011,2692968888515466234],[12088337224080714711,14969563995689321714,9435796235305515607,2446342356998628178],[11382955391620787103,9579555865764175976,4091419046248149098,97526812475719058],[852516072309592509,1832579905906929603,11537420703747165971,1988241628815370823],[10543811926056251725,8223867670121429785,17005535188590062398,2818891784132038489],[1994173619678547646,10148852412617542927,11738218631705955193,152282741587195506],[8114630110093767876,16550415767052044878,5789539078719692602,2820570820614345953],[7450018982181130668,12654494844657139995,4699273518936840679,2505102648423673327]]},"fri_queries":[{"leaf_elements":[6543759125341495010,11823953383672674756,15002673028834585226,11961709349205673020,10498325897166149894,16209933548082168861,4173537286446717446,13581149622576454571,2023151627865007903,13701507871642680056,8892640371671725094,10129839200633772428,2880193800986450587,11093962024030494761,17040396926857371334,11460257297590904933],"proof":[[15232368756962968150,1728050953874783094,17872315587767522049,1048212858817615139],[11433450082085898850,2931254633107634605,16179893903561353998,2656891257496915238],[16315198339528687112,12221703473882543901,6730212725185859738,632160041755566273],[4175822869738072747,2965318358054530116,160212218831517393,1918048866356842510],[2369607319857290868,6367389322620150974,12226760407359691758,3011134584458574449],[9192681120024221845,1203727509762573177,14733971116742967162,531044497264843995],[5935461741890322047,12035738000010902182,11611847660690112388,3320321889769512978],[1008726943264402737,6466587780006767619,11810308758125917848,1441059928321202883],[6194151911933769572,8316546869983692090,17095017662834920753,251028876106012784],[11836481767288568977,12693209842729345382,15494293070777243110,2609142590190361171]]},{"leaf_elements":[11679623677280721732,7460412689090400020,12090057111532031993,2839856146700376401,10243978923503521960,2446409972404622534,17043000430362273849,11996735784474732360,13025559612931115901,9815807446172303033,2789872556226146382,13101312621098647514,14773714744891588914,10083019193769408729,12017428999559988552,10633961004454804075],"proof":[[6241115381434099655,9717900477169595047,10469335358641825208,1467038733306856888],[17494679617275322582,186556427690488356,13953410434179909045,513258953679026340],[18271545562307155687,10069025489759489236,50146087365325093,1367280205555322547],[18254946290161321080,11872966207879383732,13343550233043413637,303013657367501148],[1101874981325959238,4560900851701830093,9769211162644476409,3117656796157897536],[5494814019481716921,18311101359736832981,13570339656516216338,1358630459201341816],[18221825548504215278,371654840480040303,14092719419885102622,220673262799455597]]},{"leaf_elements":[5565613240052445453,4881451002888724707,18068397668498883156,4494904909318130628,380743001541324904,6751015474642466122,5785190955078372648,4940431271044920136,15239491850871874316,6675661567090458705,15846559846750524065,15021324880991846961,11317824577575091355,1467799927768502586,435157695315901377,18346283709919559934],"proof":[[13308723686730970742,17945073215094909388,9262832195351726227,23014200546860332],[3850264036200791075,13251391295098424621,17340602504065761923,67443032188134799],[9253287968541001853,15965406532159194935,2926908177009333941,289682274534081662],[14060609606501320317,14199662051727725133,14045188731999541466,360178435938369202]]},{"leaf_elements":[5617743489965329866,9656866167906423923,12342513696506161207,18445839140823577509,17173266430686786372,9885785082442603736,9640565192041168087,8859499278609365175,1962944870928990236,3217289664835128148,18150089437950339150,14748222972309771547,6995749073399235010,6830073760022153520,8684292857175602258,18324510307768863292],"proof":[[10423969435245672408,18154964293000735088,16236043164000731250,396436116672654202]]},{"leaf_elements":[18196018707140134098,3942247739030689718,1556687182756891542,8508669979898744338],"proof":[]}]},{"witness_query":{"leaf_elements":[10734847265377193395,4385220339988760972,12492576620018334491,5830056082396493784,14704787947996906028,9090398572715218286,1905972821569606751,10450166251938985651,637088788088643958,12591609331382621088,1098111196901820658,4502435829793732624,11488843254890103170,16892571967715207033,1188675014377659342,6395084388754660938,2885615405399416518,16616652876461571399,5535068396215828154,14171687765685417412,3301811478004599413,18436843832723113032,5853381145900259700,1075037097039707196,6781411269572475011,2963950193232691650,1343027816001075861,14682145511193402843,15464860538322649029,1551588954277929235,9539159580425739798,1795719610415888919,14054819822987369045,13908632758692822953,10963742792165915947,12987741940559670675,16784099278131285728,7866097578199118182,102646896476430930,15832353796317635231,9778025294896102242,11012822730960497954,4199253907201526673,14809853428752550840,10315529498535006118,2224277934024309945,10211186658972606023,2452069111225383822,17199216490440925238,10720249609407621592,5781825966774647835,5602758117745123257,11270537770690469870,5864791212580495618,11766363043052587914,3381246340951362778,16986647722511100255,9664752365966913975,16197119355273485040,6079413626540214706,503434148144813904,18266771130739386569,12183080434670869911,15181774042393100887,10737344945762175088,7165003939329193890,9519220849775294494,15664243153300516159,16002098724258114649,3279954793607025560,11845078141136568248,11057950234897444619,9069658501964126639,9873625957174530561,4762802271090658243,13858314336130152336,17066110767763817296,15839520354069017870,13259919493198256292,9251445689104058316,13140411099617506333,13596037693972416005,5407184256788272390,11722011968608208126,2446774831471404986,8215836318806260107,8599441005631077371,14353534451517445209,16058541941021945594,13678055663981302091,11821050886050086267,3134114203061400692,12068602279190629904,13214042367701641550,7212349639771104373,16423728923761568831,15890640796059871356,10974304831130479784,10100836708166186687,2371332042228498211,12728269365861146713,11443257022966363338,2735288069582956261,11348381886688819405,6919451045891863509,3486534447099917035,17053721962889103898,14458074061100315014,10854611245914701113,15603597883015704496,14832754250224325762,16898364384507308089,5106263985257036035,13714945068806123794,13803721912524252826,9341015958238358700,10976947081336355072,10987740286671483791,9048252785038465904,13496678537682529620,18349890898122718106,2125309323565174329,3477291484942256412,13102001305471189229,3701245418123921685,5566703700863596154,5510672306933357751,13400996796448698765,18266467348721260058,12942743075650842179,5341140862648901967],"proof":[[5082437751085576894,13503295085486963562,6268717206688297268,713368820017792408],[2322971944715570414,513636037931489926,2469044033376730624,1982477674284103769],[8837522889748984343,8733171237799573901,1660874890323925757,394416849561238718],[10990779083168954788,142289977293416938,14896542996083301817,1124047996648662169],[14119360018961389166,17221819306896730115,6942961155625666941,2376380455764962893],[7452543210370607286,16354603483301289585,4150755323995917542,800278697540248137],[13767221755492750010,10944585128530406082,10404250570107868869,1296717062443970658],[16657363524611837246,5697628554822062454,8991903517302523539,441007925158333984],[16691434516602183540,11364517126194071692,10196061941630621382,3163312572308894314],[15724908237463159798,2476128555711337794,893182730159862167,2389511424641657152],[10481485211999893321,18148823673357813916,536405877748246507,2216037530216711075],[11585500998014024581,18165704429894542582,3036654816167034839,1880224156156966484],[8885885328764264570,15253461075593888787,8635362468763591648,1758704055483322988]]},"stage_2_query":{"leaf_elements":[18445337089150757319,1985659166037398585,8567900310983993356,1905564921760598566,12160735339392338618,15890819313477408537,67289614684475453,18377896401367034093,9602928274041710103,12300745825120241050,706245631936510460,3547608272739530572,8078842972274904748,6557363172280477463],"proof":[[12030822058926858933,5935294659573366162,6040876685305881707,237023367073069594],[6822629239144723528,18424530615073969168,5053054743289312355,534453545308351402],[9287272502755591654,1023310268706044596,10972414159087476002,2800105593447335995],[12567283656523041720,9218114699699188606,6703823685057017783,1038518632642239485],[1735421451394868405,9535044742209852290,15124758794909304667,1846537757346155135],[10976398350073187307,17408231938720933760,14412310687776779060,3173372835444870039],[11242793996499101141,11095840971193645239,7545744032889754327,1324288668829770141],[15808802039348954282,16324732807935842589,9564081787538065640,3240642348015776576],[15880835260607700373,11394544125555454396,2093575555425727964,2177227286492690624],[935747794540775843,14644649117287967465,14831309637420490762,111187876514406520],[7939125308440738984,13207211164663922585,18419014294789621558,2041622973274595106],[6290462272635327320,11906594927819517295,9928188905264585011,2965979690039728871],[14997555234890825160,12722021247079928466,14973662964715584688,1500605475328540989]]},"quotient_query":{"leaf_elements":[2354384696286506481,9885105930033713011,15582005395671568898,15815110450503060884,1640437537782186682,6091421490928362190,16240256272887612009,2842762305413896251,4731525640412020396,18242734539730098500,6897844322256985357,14454611378711786373,4634990936693034886,11241010435901991172,5125583279706534795,18079997473933244911],"proof":[[6982178786748820782,4905973267712835525,4755050604539335501,1106821097736229134],[14073126105608266613,10386915173329991024,6292624276752024146,870884400868743219],[16643125681287263824,2905728097888958733,16161067041155979394,742087989582644165],[13774382358824107488,18249290833077407884,4646502006480488285,3057038140781490556],[9200055801486804416,3377454234273424095,396914750778042122,2078013130304926283],[17037017111729095151,11017825397541905896,15948199438414881698,2580810210816867000],[15301921067775246405,7752119588241923606,63443663472300880,1940425106787842037],[9437137519793185268,7269524954200854334,11349260093983604059,368982227996488404],[10973273263342282967,5671823598913900001,7762522711250887017,1670205373124623927],[7663246993311891346,9458561204814284184,11034902978544283452,2849373500503576090],[12704286207682930883,6142561122961796416,18024652275594999563,2605114323045480106],[13662726808171755200,15442147198637866076,17579350049766953928,1376694955370959817],[12983593438245748380,3228292378616042019,8094535644869113142,977779693227197763]]},"setup_query":{"leaf_elements":[10352356677911390958,8642956460846397082,15146359436114415843,6612735320491809071,13677084414239846214,11090317749192122468,8507729193999372153,2306774601572617257,11207927928792389022,4873138277864713350,14497293161745911813,2137134380674741493,2343158059398527953,13478207944118306569,9606259383175282322,8502729084586689833,14405232675457476777,10930747417106650205,12288541102955553647,11041514095110394452,3151942387661607726,4679024256737281307,14812776710070886866,5709863458532522851,861429351933623409,661263310846988427,4218733185897909088,17520859262757572764,4370605762413492649,11797065758898814824,7547520206341556305,3975754322459373875,9388122000044751586,18046842850933142583,12843954516945999557,1948251832674986834,13625905981495919585,3412275999808600889,7544089415911430262,10743686341989586807,2272381142449826678,3430713171784656708,16637130314598699257,273711000475785667,9886686828423199102,1385888574066414698,6979958025613005337,10626632854013460196,14684512634768076104,14948860082003090800,10735296963557076320,12852921402671749458,12514415163999044315,2859236335710144023,3516037684884663921,11629560697934491562,16478746894614528597,5015237468071211124,1017770061569684125,2759632941634575656,11603780012306261780],"proof":[[7384497761536435283,16962967661920084002,3568597578274151382,51768302599028347],[11383332123395077142,7902855490899699975,434145561068914801,2810597308203016976],[4347389443737247519,7193240396411427397,12940437599573146372,92979770436300263],[12058854524309680033,16923349299499463632,15655018141976384741,2796509467588058141],[9981616223282773103,6576465140587641270,12729133575866847648,3150187431118924091],[4071756005244360228,3004669076560014603,3550756139389053965,1060889389364887973],[6519283503288125937,853162181895537914,11417815879765553881,27044177227939880],[4635753880999120158,8146917199782070109,5342782396689034391,1201202121337541229],[4503184493933112387,8859145241309020225,16951183753062085952,2924671370225118810],[3370748523999477553,7783986352378729275,9772175682288711111,1028067807038039860],[17680691921336978422,14301628520766292053,1924351853217895611,3185911673472301622],[3076407743883423930,7998951661287753548,5794264668421718855,3230768055453350371],[349109335511215027,17635955180576205439,10873157572691085590,100138798179046082]]},"fri_queries":[{"leaf_elements":[3865993013070362238,5532823801230316031,12006164888858751604,12489355482797240596,15280449161771851187,6961092826192280168,9700399231364684376,8536409094827930621,11192110166651147090,2945356549111988174,11169917380729542994,14767570604338361036,5618691148687214438,13672073847689156686,6271639702821807466,262269164788715892],"proof":[[12694447394785781013,5895504780124702572,13041000541179623480,2609322099542809529],[3490421911472590672,6944919087081258583,10739728429183623966,1978238307296549574],[7196875726972823938,15719515539810102024,1930381777655040999,2611493419714886271],[10134290067133814702,2944362829042516636,264687289387548310,2902140708878885107],[16948078795478004381,15539505073664609293,9009298737466477093,2367734070937830988],[8120499858619132566,9442908795557788471,17114375885759005374,409517308458043786],[4084110535151932009,5938789006963722190,2631162897856151111,2155222703305860110],[4410682433289130035,5212970886802626181,16376403481127471230,3041089853216483375],[4574901668681599804,18146419379319762142,15253018587145302208,1332106348631076297],[5872362109046519663,17298216179683052012,17954241167942654865,1329959830779270496]]},{"leaf_elements":[2994552647190715639,12324813496709469604,7440074066375270263,17778293216548669929,16982716498392285740,18389741725585456210,5734828535099955386,17707439227969337371,7012482909169761751,16356049143944978421,11522326827549007668,17133475455288618386,11487700740993073037,92969711180096748,30899931288351054,14839274590150130339],"proof":[[14452344353382682678,3620715750081975663,16832799929576622602,3083055362054492200],[17439316444533342193,4996892300558345327,15122819057219097296,900563009813958485],[7264105601811391823,14341086518734238944,5302966181654712864,616295168391251644],[11570822149305146215,5779563311811392699,15189686608345357736,2860090083491693844],[7927732714397296991,17233307063368432725,15604893170033517152,72877664776598643],[9812876142300382920,13673779875247428723,7249544964718288020,269382820752168909],[16261718003729431254,12624140424445433761,8264539174081367282,1767999685948706560]]},{"leaf_elements":[16321554387713941129,7562769819463798446,12702692799425629772,5008973206428613891,14369019329085333280,17867990559888516981,3416411548751171202,3808746794100003230,7323950333897198764,8737840998287224750,6548923871431524142,14804055692892647508,3599867174793672361,2653386877696463964,15905775105548625307,12997681053164523312],"proof":[[16964177825262595436,9604102104004527812,8895596106992569144,2205277455885499259],[18195926313264799527,5708793743604447653,1578117109710579006,2767569431879076183],[4173343898888985275,9065398796238881668,2307654876821585699,1145680773226216614],[5178269920370475624,12704941860743336856,14608161129520644440,1975034317178109081]]},{"leaf_elements":[17528109201327554736,17512551739109393673,16067869402036412515,4610657633269719786,1119811347496505942,1935047269409703784,5352052601147768823,1757265509591557078,9849843274380055845,563104860289626653,2454136331468955769,15986139360915283519,14488296552677031709,16258607666023994816,3068527877316626104,12344638888204519753],"proof":[[11920089887337287797,4554508008204592489,16273321998182690570,2094470738456569066]]},{"leaf_elements":[17499325981881337266,17599898521267640417,6381771601744403426,6712813034178600945],"proof":[]}]},{"witness_query":{"leaf_elements":[14312950951887036208,540649795251404424,8010312859577520684,17996548963667312103,2548437013844402231,9033026494887359074,4959378681346399659,11362809567706646507,6993489254006618764,8449576247700131320,16875332977103309865,11661500719280602154,11858924200591744113,12273010073076965096,5940586536292955195,6806935007900300215,4370949594332692565,12295644254182709721,11581936302841590372,11726601824079853897,7320484158346516032,5521187452160586560,1355459934686715774,14495080960057358656,5697570819172890690,13617642767872836569,7418570734934158164,3867033049110989903,17891383567997557854,11913849401408476769,10898085506842521321,6402885953715394047,4346784949626703596,5894430429046724599,6112571002049527497,7053034472629276377,14041150035205250100,17045325390156580804,9027411284689091445,7313456439438294010,13634954479645096040,5057780413157300599,5866354122623532581,2702800644157946961,12784368639347562228,12575938356101453757,14949676669264692344,1200069159651685525,6319811501886432491,2731202713232806328,16347734133113368591,1345901375983387166,9027222287784917882,4119456555244636018,5451395010308868277,4310705678610444954,12386925906307855470,2698478234902777889,9919173527089563771,6199583118474730930,5641308608796273168,7912465585165322133,5715675793103003203,8769958293640132929,15838381377274375874,12752056259362953475,747228772648495940,18229147533518794186,8785309810736982796,16179167494362827627,8316014410423294787,10358236421677864050,254904052831154403,3386215134125693994,15261844838491584149,10916807226300068387,4782659664231456346,5116229151427821182,655383869351981915,5627698400672019249,9111636601566804274,11224251669109972439,5256030563560593763,9628257032183402837,15646834841353829966,3124398946468601990,6377240014889727188,4721039512472446856,9920893431525011936,3336265567200712396,8130803991093298227,4582385782869960258,16152050667010331431,6774368456018849738,1892785725688948621,9599707763697691176,3749342898984692149,11743596631033503565,2228103905895131075,13077695265116569524,4058421140212228992,9645895749034125057,8142467277246776354,16108237765022903158,8935205114054612310,6058785170028390208,17959785913745953370,6497343725004836882,3484187775602205747,11089312308756198178,16839886883147802037,15087377115130615919,4940082667766359754,6848199197196748948,7753223656052693480,6521209704358531160,5436993244852639992,4472829125248460799,17304143983854140924,7443772412987124776,15843575360296527309,13995895381501748826,18256828285240659220,16747236809893131957,2394612619668025929,6642915926678388601,15288227743000026365,4013936426807643501,12067719618694095247,14208046732376496222,13687037434245320400],"proof":[[10231495560702952659,14284445232356842093,2228764266037770014,1148756899025502956],[15529947741696777780,4126275373659682264,15805985927056022208,2067631830287816031],[14340693674603948982,13058913044105552975,8404001319262021565,2631772624859378203],[3936255618468629748,9102968894653310036,6348123515873591990,1203619457138355263],[3477042385519341633,9718171947229293453,8010099688931002447,3204689537429979047],[12031285476450758919,1213759334025678953,2733722424503990791,1217721712229465080],[1454082045151307484,635909899429527306,12087828076315983122,2134023034813708956],[8353183975324405215,8219953705248408773,2319868468802291638,1867166280804803946],[13842078074068891798,11728423679238619812,11617025057845446240,1175616638710694607],[3674941681588722122,6937921218178197784,13667803740483330581,1805841077523833169],[10234923790260917492,16134544500046937010,6192536968478693055,2212199653872390577],[13956835885681269420,13977950138640785752,4863109640880899263,1937558364909967234],[10170411153944345348,15189428256572144992,12959700760463722718,3298790997504217383]]},"stage_2_query":{"leaf_elements":[10977820177642431622,12355049730854249061,989355490586763258,10081504224373268992,13244513373510164222,11532270702569153652,3853607895109615387,4307660920782751580,11770503221449353468,17899588422098079048,16133227068588733998,1881346061661684123,11581775197013251192,15797327760664802327],"proof":[[5256572784190027373,12709266029511128990,589938865180542830,1086656762329449568],[2129121865992431522,2191911848441998257,6697073597176166309,2457217598410394823],[5413294032912112549,9349825085591014881,13762551920732339854,1835100063655092144],[10752199339913237627,16299047342074834426,15632045302221369239,2081021504822569522],[11881278564779880160,242153046048600686,3033174051897498486,1208289329489159523],[12607285682433474503,16948535903982040802,14543063309346294418,1034645106232645762],[10462860247836000272,5173411797062483326,5619596694273044435,315021801342417361],[13914576835634164252,12171001295905527340,16231413945701879497,962166326444826459],[1723380146632626202,5295772956098083202,8318949327926379548,1367575739976870325],[15912240789430353319,2019066378173379809,1544743854581528804,527392455536907916],[13661234358441554655,5867380597679935196,16965064547634284256,1150271417876686726],[1101391570155270103,18030471955809926170,586352199699272119,1793679619803222441],[5944104811179779230,4705743378997469566,17252932908060409042,1116220520959491408]]},"quotient_query":{"leaf_elements":[8473416429515718485,2261532725834506004,11346292133688818898,18318007794485152352,398136717246102608,5513469787399253355,9051869627400482894,3124225831789933885,5370451358785834065,16823798925588231194,5398407229436748694,10258850440595947925,17163782869630215394,3624845785124147722,17802936143930775821,6975285207267462577],"proof":[[15794948074676457207,17075402373575823000,13093415430188613350,2605074392191220283],[17127741553938158764,9806810613848812563,1597784993042970160,539617433200944743],[5306312853283373672,1608380737963995951,14792446383152464893,882824672668795653],[2347391813094263970,415321377325173504,5079615735739123280,578730543848509630],[10110913919842996757,4996395956139764749,14983115205935031,275909113844093812],[8958416948950735220,7484035537776734580,3316280242492832067,2344268880479604797],[15474260935514366188,16748958734754071543,913529434781076833,1404568021797679211],[12530942231862598849,7007791965226478467,1523914301321699298,573601272525677822],[9323175249091540706,2641812429743234302,3701799595368381763,2061157132841749138],[11075825838577538280,15269034606084684571,8177132772191193834,670588787730383802],[8496151696296612573,7688097926724613118,15913285176425636566,260204469448824341],[17805648031392826486,2073215923224479568,7861966061060194600,1640385227104014486],[101117472389605186,17621311294920231862,9537129816252271277,264251130147554038]]},"setup_query":{"leaf_elements":[2667209490145168168,3260981944461852719,14179170541610277474,14224222329702891628,5532607547890858617,252300195634314020,8620064470931864533,12009266417758849457,4521948570602413844,510256438112467055,14858544791018790006,3928102866172290742,9162449762235279241,9003137673368798672,4932301663117658087,3187631614127601906,2022652628789892926,9455515078250803232,10323198506705531601,8577148414490781510,3770903797967314966,10410861408104899537,12375895225136730277,7380684924203174595,12660487605140122730,7223248010908861950,4994487705353298626,11141075028669888550,11462341093270704237,10585699971265225506,14769267366807047748,1450250100014090913,13128883588177787505,3929886225125994240,51978270746154214,2969183479624006020,14279886825398201289,13831526932562048673,12705179403921752803,6567602033809535681,14316237334274541534,17254568565861248052,17648513225915073174,6142923681024332864,7180257091040864463,16179238030936402946,10247491601561050521,14028896908142098879,10005026725723018136,8044399963380898176,13310044209264445810,2827756904035901176,11986427695799811351,7007940234379019494,16172094242454974301,15984165507488021793,5335257745226198250,3066211923084981806,16739841838361127187,5888071936862439792,10266475690181076695],"proof":[[1336337568950086204,17885996910722061189,4972602400910393786,2851337735091217395],[13964474122028245897,2110976399506089636,13006350744495165249,3066831448875273989],[2449523818727329391,338952590114269227,4368175279456577367,72594337481501925],[13479628487874058349,14354547720731538477,4030935797744718899,1788441240230042209],[15467689758982026470,18263071938789191840,16105813183797791209,2991528194009807116],[10497804199026007475,3236186555630028037,9363280888642861842,204174717900907244],[8745519078250035065,13611496086325837855,5823860807038846298,2202543840617899931],[11791140918838458737,6662526188784055125,17644529841219172303,3272909068853552475],[11360441399470316396,18433116269067948365,16544416248378954687,2809765658898487327],[8942511314576486062,3366580451246874736,14019961639623483145,2762490972839929808],[11810134053350416824,10070209752185561947,8072463214693336303,2312904188598789158],[10516063788198811860,11521768273658753976,375854070151956021,797548007667768901],[14721891719636996984,2949626462121883205,514398815710631466,2655190417159851675]]},"fri_queries":[{"leaf_elements":[14691378147987986695,17677313700744140046,12779997365577689774,13762783812483410216,16630183531356663038,11561446117046618588,1403333325048708547,11100324401001426104,2641913703471851555,337445421260441550,8182927382790552039,8882894309507002328,10760537129919326035,17622837310244577754,6756190528837525374,2570780862093437186],"proof":[[17730381965655341142,183618909952771112,11729543017318790982,880003895945865243],[1572424748869408372,11955071587241670963,17105084547716903016,2278697398719820131],[15360100431560165687,4196989641602651353,4634540256312340690,2937353377240457821],[978206290860527641,13803109477032506490,4014522065650637663,463520029010295947],[2699895821806547946,310683302551631208,16026911394802734274,156788958977309793],[16935918147383267765,5605823580976041552,2962457246333809419,94916388846337672],[10736355005622851010,3031619636902531771,1793695099067853058,981445591399336857],[10250052735318230891,6305188096615566818,586180840856926658,1526313768161694323],[4999245903498690337,7298483859315852371,4711531156947246730,2388582959435649154],[5939124624586656117,8797311108778415437,8676485774919245055,1516009211411584182]]},{"leaf_elements":[10693957814404890724,7829245548291734282,11189346713915824073,3922067712387417336,1684027312654243387,13304859319369327733,1011448846606340024,8179642682941020582,6692395817053102028,442985851819391236,7285162998906916003,2517220497067476516,198726016342487827,13395674154549610524,15197305694065949814,14979208736354447518],"proof":[[4265581963009130981,14634040536346792228,8433009094958895168,2187954398372395852],[18389952253664284516,13202332873228672103,6552880628019002520,1059631278288600810],[15100678417298115657,13874457186338398366,5512221613796313649,1315939574401156902],[2961037991650073004,12666891277499382629,1975850522687116715,505872547424588588],[1734663038235488200,12685525245348471603,2277070921607347413,2188248763925447369],[2767861238377875692,15785855316693498676,3744809610891684183,1567103551091653836],[4226831722111814395,6655831638141719359,18416793863196828265,2754055803328667659]]},{"leaf_elements":[13570227015988781841,7500101531777997892,8816433464733455109,8926772539064423180,9407403089687576453,801580812786153217,8836080678669536896,8405862057419486435,12522178852416395016,677201243902160192,5727416636598576800,14937014929751650934,2044623445036613771,13293268024941559633,4755317015488554456,11015753646241206069],"proof":[[13021967017824567280,6005782593242202559,9476063942390244347,1109097222503110018],[2571638911745539105,5939010277878936557,1517675223986912336,952587486881256034],[12210735443468912945,4228653015746222779,6294461639017255781,2485205723841483832],[10512165384836540950,12576725843624026847,9749163590345599686,3286629949348704569]]},{"leaf_elements":[13790855340402993368,7414387734080379513,12975407704994933495,11495992525856327121,922490172660792407,2216591724534083829,5681419279857519838,10808937684894799099,15699585052605113537,28254719198542013,12781572970255467545,7196566718999339916,8152988491243675749,16434549783931242612,15461814104182559509,9183595432750050028],"proof":[[14777760533211147947,4160079023517810966,16181012839474086048,2965431587160692161]]},{"leaf_elements":[16775312693976535021,11906390845590027506,16723574221087713398,13884781623836882318],"proof":[]}]},{"witness_query":{"leaf_elements":[13107876929215815533,3098829163022062750,6128680907270236945,18252543035405443559,18375977621467955628,1010794992945754422,1814998548333561473,15433089497477227405,12683222516768420734,972417912862383849,15692409070633776667,1223286084123178074,17737824065872899032,7923963069497049931,10147072526808801938,10631489547960852524,5453646435181750198,3030437762573377418,13245740731076621895,5755610507679172637,15276201718747134200,12800919648510525135,15696589657809103182,2628911147679917645,12135321478174479952,17887433832661475108,786465754992931470,18267580957073487605,13162959289163925188,3611798433884734064,9777135718029712323,16612433526534200865,648591417871261793,18181412015550747621,10804879516217729118,16653327024958791578,14453469317859826472,17621645853540450409,143869295265878728,15412584344703170958,11699635791107026506,14097173207864342882,49960148084677584,9813683418104601295,14447156981074697565,3078770968668125199,12737390715503315201,14962442746491005750,1773744560531205949,8292375568690747586,15852945672886666011,17726464276111728769,10500025780428330942,16106005562962815460,18403525416290056543,215636680832569480,16296520119467512789,9623144099438326301,2847114137820596079,3669162455202808780,17600824115390087533,501084079634381141,14054289448481314493,11347699790308666007,5523051425207459930,467690531335520717,3276433090794170753,12546680199609428412,15148225383437692854,11352651092110687894,10159267377012193333,13048271395338978269,9342458830613610771,8852449984030060386,16065326227722889549,10747498060805246068,8780227517457435199,7427125882806143783,16883437903800271621,15742642531082127404,8396060676573520571,13327115878387141330,17618220163961182990,4813135526292128217,13188881392643786287,12444941564646308232,12205739132636371220,17768130444956300115,6778892389933621950,1383512606135652849,16289377461841231702,4119765526491906563,3523677935124044883,11652149595367370951,6433014300267800599,17504576906993785477,14276768306206239631,7973023999057648321,5612462184990577212,6874228104377545518,15592317863725894434,17394338302388608672,16529568226363890338,3417301406366864077,16816202200073606053,10462567305106308106,10251544820539794348,13296525020438388176,14079345280466371009,5958582320385568411,10276476156846619372,12817616411790218707,2891260365843395018,5392016648285770831,10861782281252579025,16642558161033801954,2173331832143446414,12244208897314763649,1803812138598967505,4827695754415103818,354701410273397252,5743158912119209010,17479318222236238813,13831366632346585216,12104443310132298757,7356426069390488105,1962239689118033560,16973694639649195629,351255439713420859,3821290556333270107,17780714638620871047],"proof":[[479142273563024860,13853421838676425999,17829538483207101065,306277362943378127],[15772996337760168298,15702037954096316464,9238403279788719109,1954529616307148799],[11074409001528043609,12122990801023191095,1833640661327318099,1802926233450702548],[6915915986104372199,17237226253477002273,17159495010431729121,1771647507205142217],[2888744298626616031,10857349776584289571,6426109019757045665,3052239301913917141],[13129007302767303520,16407915544547293465,14839775537481465621,3202218263055723542],[11056163118595268478,3684725042508180961,2450778309280201669,2737094789696853047],[2929859332652544356,5934164507746925817,8528857859726331346,3004418361219647098],[1614643615339081958,13801396234458060869,6575795994579754613,2170018061199986248],[15270918330674064724,18424375348583209601,16403049653150833588,2224508713353166866],[13847400891124446113,2789912962675913999,2131806968534017233,3462450050851116088],[8306212057502905801,4513570971440212739,3182621761424601631,2007843718213213775],[14367620299360517077,3486062918649683097,758936314403206639,1603949708714258502]]},"stage_2_query":{"leaf_elements":[1068063249200302089,11882442026989253917,16598719481807649997,15614021460355302394,7506379076357854902,5555692924119473597,5313612885456720822,17052715152600913292,5492782900338946149,4986859106688984958,1417329100356903623,12035853515391713407,13515996828958341120,6067781815398491823],"proof":[[4239934847447591352,1523153707173960918,947121128021886619,2805187085059775608],[2065101407282619212,17765427597500697408,951370742218989431,2952291769760739288],[3077239266353620695,10460148546520307434,10928421332731705171,799362539794338281],[6641030986932040919,6321406314685918475,15870915743050962015,2231969113739073537],[11937930699161714832,15673090503857970065,17941716796520293220,2197409681411270444],[3193710552132735047,783546245270592895,6581433316857268842,1405902862958484323],[16803080932271371360,16422210624616288416,851449020260817118,1492173049868555707],[7983856738452908083,1804797692579472291,10368720521800737431,1193977989235226881],[16629417302031571627,10368903630772021783,12808385451734518892,669650273061612865],[12955806825047399476,6486150578510343128,852423938643535460,2858942042869040817],[5887659399355191086,7174368684729802907,3922383235137934379,3354869013348000751],[17946811300233807722,10697057011455301775,8841411358577018535,2882676071995806414],[9302781254238343662,6119432163943488281,15090348966859265029,530198869118147718]]},"quotient_query":{"leaf_elements":[10284988171387872733,4189004773849949480,4498873592207817758,2045268729650227673,12504260722348189332,362229667912625398,12332483128662820138,12771896850867685532,14904027498999102566,11511941252372562783,706898284636943922,3031441651787206740,18073206506006940284,1470166520887359682,12538034071621748253,6631753434826341357],"proof":[[2284280959934824423,2164326976593746608,18221426433649216308,428119367133027107],[17064158640133625317,5997348408213780612,1198852206989385614,1351483777749294067],[13090745263642853315,1920129779073197964,9069524367401931104,1919059202109128161],[8499003373089262856,927313271566013470,14259912864024431183,2553818611455888254],[776496235608471559,7165566596603545418,6641820051230464005,3342197463674944303],[3181140125806316992,15219027077300647388,6948921430202400344,1605491166387647892],[3496698701797999174,113218878308246532,17707315565548405435,2949429912203421051],[10207134430467833892,10539999020633804313,7051302017273650359,915706280226373372],[4266584729228504188,13676796620947585267,1408597794297276185,2536825408424183519],[6264086271465643011,10371501593482275224,1421036796903795317,2818717546567841802],[11321327010506253185,8618701882431728540,17606487007445284154,2454227746734772045],[13496753780212999111,5601887085332510753,5921920338607442953,2763534670305069476],[8815952717605006386,4526522413909831776,14701097622325747530,3485165681977640036]]},"setup_query":{"leaf_elements":[16084013888982606513,8004936038459084404,6830066682586637124,899645052684504545,2830267448347156075,4135000594702886215,3069620440910478590,13574940762568370244,6714205416247675220,13303208817877836368,18136345925616308951,15595485793382957150,3477639773124904572,6800841849916822382,14071129896990402958,9872506258988281160,10843330454410834932,7882432468261864286,1992559489149779837,17594584526677048587,18331203496972985318,2302811782923009242,17796902774968891137,4833928407538341129,17689852040148069012,1514593447708981724,5704428395692071383,17994487186505434935,4251773488431517758,11379916488500787476,3690358160729180972,8998556365317261167,13667660422881710374,9510444216473157759,6852095934071647790,7562094171684857818,13227169978198459702,407639279664700263,1086440788870155902,15034593807200240991,7270665309461110644,3545005353145481949,15947194410822101340,4496175018790777773,12166547999080473499,10774094167324464543,8927918422639436316,12157972509016763383,2812663864949294920,1504985128057070359,3724920325914376189,16590803162685153476,6441651453796582937,15373467165888398991,4420362878221825179,8352324561016089196,8114290691827371197,3139908643730169201,8800455700078188208,3498677582934793511,7754826867465194618],"proof":[[7962610823606155216,10587365098014831037,7243512588197132938,1272346125059474939],[12836662193847432613,16540632926588530115,1042513543457223143,655741359162956832],[677576805936606340,13346671000305034936,7641841819659427153,3176691352051760474],[10239471945175248418,7057457706631700353,6381258370212738814,89837076637274174],[18420500987205540762,12310026697447372203,1671385397805241079,183968318795011932],[3648799507634325268,2493894060573828178,16109686109176116420,2722471867420680729],[16034663858643142202,9465318648618485264,12591412249778478203,809071420537697435],[15517486621494757174,7908488685528465109,7077297450059622126,2111462333632496935],[11310416980522924841,3807836777832857816,5284541498733480889,570519396226990130],[6666251362431125665,12923444987057555807,3041116118283722521,2767188635987646333],[9892719404195873544,2546647787023808772,18037364276362727115,2571930886089900315],[18281726552398374921,10687318528114695449,13037667625031883888,3021881666691503501],[15649328145457671106,549776313160692971,9928450923310963291,2751020716435042226]]},"fri_queries":[{"leaf_elements":[17076758299368540966,966229203040290253,14423224149310893159,2258574840720366510,17525361482167722260,5729436186846096423,17962352945159496733,15930318617802465499,16046440478118343438,18311794370256260509,1128370347617199734,480841900986784381,13604515155788320230,16965490732455185976,2033606477666006213,1077167749128541255],"proof":[[14578242136451846621,10309780406014206286,7808296213519825954,3278370048524478220],[5993957492400279091,7146943511385324340,12063563544436404216,217723864053816307],[14166957037365876309,8513157137284519711,3250090809821027732,45435760870903941],[8669878570745756870,12879597580352676100,10508957823342845608,2666262731498078264],[10193348020517764652,8439463575271561858,6071046530723178462,3457050750238077647],[9713959494299763104,8209848556810028597,14242202521271656743,207387609604468579],[17847952552214599827,10632105656150254165,13951437950939180941,3403074921740609222],[13473335106084991378,8087828339387511908,8146161747446899952,2141452261045257246],[3836149467745891357,12700830065944535128,17543171510772478243,2771009779489953517],[18274227798351134084,14614972872318737132,13670777970563782359,2498334094624877115]]},{"leaf_elements":[6943981330872316929,13715218787789212004,1217606224335626574,10512546819213213457,18338631903747577963,4285681544365026335,16605770173091648822,7378090824820035800,6012608792151348177,6083903734545912972,6784731919356897245,13957856846731532930,869052712974949456,434773995353595642,2224878072592587826,7688515409374191404],"proof":[[5989131206023916838,7161820572913304083,12769200416168121780,3476101842166954643],[7865163451349759261,616409362945865507,17220761462443780463,1274941789974854258],[11578821381284200582,13509323926933035943,756722498972069517,2974031108541776149],[2353461396289754969,2160859219742795876,7317602384919543912,1359513315536123339],[5367047093430431165,17482935022978133436,212560596756536963,2579869642965964445],[17647726135037315420,16939452995086140404,9926656647162993029,1129491512409889290],[3864735070791189707,8330668194952393004,13164775125511877827,177041749183560687]]},{"leaf_elements":[16475566031165809174,15325392876571330065,5268776904905897063,2968931797061382990,7522997360824537960,2946522724450032446,7047532903998201114,13274673540688035438,1261891468646577203,7289177497747361644,14266873858293886894,6346738787113190240,1019142652903352962,10842787559930328969,15438962912716504324,4636421722503434870],"proof":[[17256920270312594807,7784466799730635799,90433486118535057,3105622285119420210],[4564980509096746145,5089962408011563613,6258795974971092925,2663951082052024580],[8146435607594056767,5057348374914061128,4043163455170630552,490242688245896419],[15036230558710107040,11921162934449550531,16484118682594038981,2366781330473308508]]},{"leaf_elements":[1161939574018876374,8351817840696965648,18372653301453144055,1094858428888221872,17891497325732335182,6378736636084565709,2312548455298580963,11108539684721161071,646629569524013389,4395291750589940087,12400931690617795476,7655909668271100330,16676308543461110775,6945943938750155993,13376778799557250354,2903074057851475984],"proof":[[5616782601955618559,11536326776059504369,7332699799654596753,2141932960124082581]]},{"leaf_elements":[11506617648987991818,868082017674053972,6543021463611153452,11748771781491803820],"proof":[]}]},{"witness_query":{"leaf_elements":[1392585439841913702,18423733222831024563,16224839804986019453,15456101583290409437,4246116753180138923,815064347839012891,13905377810189289610,10489626153712438560,2259160300486896895,14080460092142741036,17448354874341741282,17548870470689013368,12260174825146038118,6740846407013168082,8019577344042753363,17021920327464495663,11952570439497420338,11130685014126165709,11448024605016287714,9529130761340525884,13339210091075994097,9123666933054250511,15532610514264320368,15275639160393045248,15470529976247055075,17665244222676810321,961360892993029887,7873239872422267401,15084320520822627414,2801069055496238331,13438641000564194797,16890483780823701732,9935148759790716188,1376811071139792200,894998197196915769,3971723256836744507,2721407657608641225,6505263410611454820,727078036655246444,14386258407152013606,17056501658306256351,7899770330790331960,10191096183460838615,14299885399074633849,1033181726847796920,10310885305574692065,11214953055163384063,11282412389331867307,8831969180366080412,8309585579518465540,18142400979662036564,651992277922250014,13390301506543501800,3073874700155237755,7111835997218112979,5601503275289053458,7552121508536735965,748274395215341304,11216937264317912370,2230483209157589999,6928762128729625083,12918210165860741225,15622722910303795214,10154648998470714132,3162834089782596493,3388721085896292350,17620035875409627194,14801071746718462854,4253243071019372828,2714701758281662208,11800554344219554693,1652435936526697721,8377100077205092862,13488630261174615298,7256229497716564718,17661547882334722848,1916163673658085878,10058934734211511609,778111998342521959,12327078434126200913,16921477754117533239,1455063524778226016,10901783966415537294,2701568312658637600,1381489144162744599,16528632307972989934,14338038634481496587,11449439365415194123,5314458289391384895,2730787757925178978,10781642951491132766,6525808388532507957,4044900136554699773,5091486047967798295,8605297094133766624,7203908167573024329,2565832979015866681,11019725811795523830,356111299047413618,12925031461891384296,6103867530753961640,2449728789766847985,2160979228981108777,1746112946350933645,2081426487239020684,14993550070507274202,14174755856885833942,17223185495251858713,6513285235540168257,15101223092899097263,16158878869859025646,17753501625612214972,9227880661396322860,13978271442774625385,3140696020298666978,10604691635155962629,5783294069790066428,10552967469154165973,2090853000612782615,17904565962607161211,80692470719188397,10145489522465349335,17508464128949104884,5847490567742010653,1178073814994535080,8959118940792657334,10071126839721100972,16550681783506245871,16889336614667136773,13798867875119684823,16948848422532472395],"proof":[[2395019551050168080,14450503371353262833,15747151336746221567,2573984319162689788],[17632742907064303538,6200851355192448365,10611971609627888195,2932372216223448229],[1156073710132971506,4315676136030435277,14442978106519344870,2844347497951494042],[9076304820592376653,1238783427861217436,7421290059088194200,2474994818304020171],[3907063758900125686,11849458901926119364,7584206361385037602,1685636285278938517],[13858045241177765477,15405882947442047924,2340740437974076432,3286199171908002224],[11994859677022324372,14904686079632182326,2769577283778887471,130066694828546779],[14310637277937097706,10516954110442661212,8903288866692648931,460695689387652977],[13185653855260684816,13539984563226232926,1670608875989530771,1352929439979478920],[50499025161597099,2208612728521119688,12677410341029930976,2349900618766068994],[6014675289067410209,2882854166926367824,6769315820515215535,3414482884817818369],[8812799168192178943,15817148503805171590,7416738395751409999,2656716391030436415],[10824937849326215501,1718197996236237807,14099917621685022323,2178034142323898131]]},"stage_2_query":{"leaf_elements":[5522202759125302118,11603435207986436253,4135029997724626393,16502386958249817882,2221156043842166915,81118637408159089,13218703765091592048,9484473064355127958,2264668177129486150,16910823848947643191,16321649521774950100,12361896658128410966,14354330708074327690,9611747358572741079],"proof":[[4419376120735314457,6130644640593966050,10003619786655855007,381862234426202549],[1831255002395576534,718046150349078463,675977723735577281,1781356817961270941],[2324208182302272599,9293350077001159208,13646931675331500879,1424904652737905919],[6911056795592451127,8758541995049696707,2902408232745965334,2348318725374066036],[2301637309315143210,18226661660573440932,13456626316100516068,513375297909474960],[12806740084793926405,8177713957248300475,5105581015910127279,329497160626526599],[548164878401104604,5094388148857699187,11657034083313039205,408520962812376111],[13081708554729779084,9749006311440304536,13976794579317658471,499596215362247988],[6790051861295762106,664511153537227998,11558359259146203203,3249818567006998861],[1642553001932826346,1809571692793852919,11456521542980429772,306385213232138035],[12810357796317451907,18339731872390033321,1319146508501262775,1164127292591674561],[3442307337701005884,797696030091021696,15922844621379204252,1386733303659964522],[16392396484878729955,4126789946595454481,3364068644797407771,3206984783570342454]]},"quotient_query":{"leaf_elements":[7717407690954739514,6288395939567097798,12918990434391643465,318292099294275348,2145747117350935651,5313899859634211572,12881044454969602451,13226823508973059624,17313990892617586154,5332439911750289256,11928902951770497413,9242592342179258728,16315090653902657862,2794247369480027877,7246623076684616233,2090374435959668540],"proof":[[11214469727315455511,10050332995017816232,5750092743670299703,1581510785519309731],[11438581778261744685,8094051371681974445,1431743899696664813,2379225959169891003],[2063544901389398491,11858928356971707534,16672711907867910750,3215140569994485429],[10687995661901187846,1283654889305515075,16936751143400266313,1721779908804646469],[713033381888482697,14940168328798215523,5019144678938747472,3478117840083864925],[13632300967382530047,15160310671071982813,9758986702575560795,3056519182863773250],[15730237920431541776,13166686830379886145,15048914483412891368,3406557626308027886],[7937130540191623841,18013413710501066063,17276447388665463280,1321632814037896210],[12658722071993089907,17706608705213637783,15708159573467852044,215302790508192215],[9410734011778743581,15960696430613625935,13834292985582592457,2401244792750033120],[14820106978531599798,4898700026691627161,16688866859713747666,2510079936757525968],[17743936867852481363,10113744422538872953,3685837512323243447,2484984772802128319],[5140577020405584832,8343465989344296495,13002851761865653574,2455122082449337052]]},"setup_query":{"leaf_elements":[6801497435853732456,4915647951789807439,16754689809131019179,5354313379665163293,2463144075029375396,17446212997346329169,14823665213317733159,4227790995854335099,15020060112318183046,14324231286007331765,16697041735469068607,842960128641829176,13885327920403043116,9903598287688588636,4777708588521669717,10729677246056680990,10196060179371090038,8597789538738173564,12237485239298704836,17271666227654884208,16656644327833891578,8346035718125366595,7237627179242788285,9659619560958342445,6506457654201331395,17561485754520926355,2994965603651316414,812155764150248040,2345018943169849892,14435679230174281671,11277998539937421729,6387991274488891972,15116173357032098123,17625409293213941287,13368123138200184546,4954291493961513354,13753877427206027416,6109075604146927101,7898116881603221514,4451001508858822831,10611459400613391007,6289185669661472735,5991101376014825966,16370941660214316075,912415259483176255,755912231820607239,4773412346811795557,17127401967084900328,12575823388685763717,10769996746691494469,17688568560743407679,12576306102479798821,5355143758450448408,14738819107747705779,16764166855964785626,17576546423434866741,15994083881281984774,11991025722081665119,13258122692463175020,15669629654714642663,2729727849720515395],"proof":[[18398001079540070661,12761781976170842848,6653497449065701933,464247940309603626],[6032093156691494329,6480175640249573992,17651680094429612959,2307849282520396384],[9715006617914992325,308105211207701560,279069888288978169,2856662142006116353],[6298808368083233769,8174681658929762887,17483901928704488671,894680417754673272],[11371802793674486814,4496684948780552193,10141149141517025980,703259921271060629],[4992424275002791829,11665663224405912733,6028410253147771869,1164162142760367633],[7569479061444700295,13107038814490629199,16642245847442299748,1408503334226868134],[12704649590029312089,4506164920017863030,5670025467525187193,330880658708473153],[1558894594161361377,6150125471366856314,11695472125598998786,2389684867016458171],[9921671147312707239,1362208472988864843,12225205321228228488,2657070098376354044],[11956709791970767239,12433099334634085444,18029488146378683977,824137296371291595],[13600120118518769778,7523264672317453919,8452388071972994672,1739731379094919334],[5756101253259440037,2507236924583807190,11397614503149736527,2196094715248116226]]},"fri_queries":[{"leaf_elements":[8141101898241911286,7801207245275426532,5575891171937739415,8144971451902364054,14886695420517014548,7094935336708013059,5369222692224479290,10760124255744862372,12992767700118818967,7191280884834365387,15714349334758840628,5709944680238053692,6998268985097117636,6459822189978196692,16406481288950336832,684957255879748191],"proof":[[5180207520514838160,4583840745640110061,12917605300157403539,3214738882175304132],[3393305077269863521,18051034348241170359,13305279826705555804,1023922261480880354],[3314976940683217606,15270803868855551253,3141824162406734605,1261448967392187650],[13892899619396315151,1686497672948236337,3413834594285990556,287409804946716584],[5002474575235338510,5586598796575095344,15765209518390714795,3463937966830779230],[473863755291002647,13847999676199913683,16841540213579527711,2591797402766194212],[2914718810302235043,8958446851259421940,17222426953155993345,762325359965816192],[1274556783226337682,16650448429943937011,15095493939608976315,331444902791212764],[16880965244994303231,12506394165471472704,5241695247584061404,791507468751235324],[4203734648063415088,5572606400297625904,11638643099097167954,2149312300932434459]]},{"leaf_elements":[2427445390528398123,8871734692231038848,15226688026409299264,17800142054208437905,3388016240869899195,17543382544502424892,10959911715256795716,11534579342504281997,12190660475331275433,10871039929826296785,215526370005621309,14770869253718032815,17924053886666669566,4267769096787248686,15180463145139281219,16052897209013242577],"proof":[[1969197724584313505,5325631853084969054,17509301542997861880,2923600568162336710],[12051656445990407753,6544973510415146563,1383787745116656119,864332500361230969],[1043335071286060964,9756666878576891992,7881362820265304859,306651609056190329],[10905691566842477799,5587679253825418455,7539198090802394674,234878558379516751],[14938680021002349201,4371257551769188740,6461957125718625433,2407181370293581700],[11708003656034450040,3178081941574435450,16858879150168702993,1298354803572582653],[18104451860560284932,4640583475077416108,3306284090082262603,1481349666398733696]]},{"leaf_elements":[14966554342365388974,2471534931058931988,10695881441739231484,130374336737454511,7763517382609932144,11163089576962639961,5209630413412205703,7113549177449161061,6731938126539242846,13400959355663000334,4482229756934071881,13694678042432643307,7159941228401734957,9604392362138222405,1080769394928971922,8773710650923347558],"proof":[[4112222955226904266,17569729211997010843,14601371487351814196,2254641433296629028],[1518558087098168355,471325964271538436,4500657863054745167,1566236310304240123],[15281332419856728899,15120485917225134181,2098771883856822086,273885078190931260],[3739423148044018170,9885586201994819541,5180594229908055931,2531840889243286305]]},{"leaf_elements":[15859089997781038374,1994857186171601481,16712912127603582757,13210363489554923451,4307184507230540301,12355014920308439175,2377906283639097493,9636889481462111568,15689506450144469148,15329674555091613968,10455228447275223635,16353864476348180603,2431194475576405329,2637549350951861111,17140631889297147002,11070667164652724216],"proof":[[18273848792544346292,13194308337463836707,2821939436018162595,1287166854450626649]]},{"leaf_elements":[16775312693976535021,11906390845590027506,16723574221087713398,13884781623836882318],"proof":[]}]},{"witness_query":{"leaf_elements":[11596518568050856038,12755458845198254158,17914427772261172929,7675738890234343874,14970266074695326092,11143782863552961142,18010028959524783422,8187185931257257595,9054592257750750478,12892767048129890518,12312427257398342793,3754874784475797477,15525964699741961960,7671972336986424995,13714971803321909503,2019684007835885410,6807284498992175955,17882898764529041191,3328106790734478680,13701485602527027741,12156843363128127484,5355692238437124432,10470128735808779638,365712529909055957,12646178183042245345,6009476224981704920,17090078168616043553,3641536570294853517,17438433234143609228,14334853910363827705,17794565508604237211,14136415738415445209,8181842307004869152,11922584496526440055,11109173435924297171,2453445449711421001,9350477233936583384,4216828328340471823,1967676436644088183,14692079034567375620,9536268018809884581,362703251282581881,6312696805952414798,5593776405338269245,13264032916984738445,11881298794208299385,3838398417038314726,11597042914515994370,7117128002200152709,18014990144017735935,10885211317869026430,3157522008585050717,3296179300574987606,6740376279323546470,9789982108565657195,170658594562474756,11254048188690292811,11900283538637003132,4918851050684371190,11844555625627944393,16458603579580946721,12078041030031080208,3645330528705760623,7370534852404406656,1303232251586350401,16260292409830868878,12294575062817305416,8183662374097435530,8181851384689646979,54307390126966163,18433013778226424333,11784205992062254222,9789876668182579791,8582952456896919588,4284207646417984876,4509241830299689814,17819019949484307872,15168012735187592046,17964017668813023104,11780157388267567011,8184289902547225972,13753420186611081352,13337660516718241013,14754220874436803910,6126624637604442369,13557476092206217863,9168214781220226026,13138397852347780121,10157752764718553841,5970078271386047988,15575239917114477353,11554117558152146879,14871084970456705676,8530567416829124475,11179667943557114767,889846157106193800,5234874172963797326,10805839349904065108,6454321122815605746,9444808323628326901,12245431467078739220,4243597563276166296,4694495240454427757,262512993369526888,3618526963100621105,13602137908579456584,454056760102781138,12079732210066579226,11427950503723488246,15142411482944216458,10596822752548536710,12596677032275867947,14173225087146253394,6296333037673402083,15361907083514642184,7818119805285559315,5504816254122896401,14583913787129219294,7809403848149787700,2087510024328542012,14846952497102704023,16373545937289729263,8873809366868422788,5675803858763621385,13558708186104080859,16307254597591556127,6275018441425063441,5378196908136322679,8720659144411825148,13778328951657990327,12730340495489630187],"proof":[[15549657008524968520,3504042209373079066,1452544996211213377,2684831060690091472],[13742472361333542290,7093982294921360128,16753496132696691787,1960156982302731292],[11107546881685874722,12974452672603462469,7165826494267666343,1160762928694788806],[15468730129102180926,15794804664029950493,16286233507404686164,1519673496203625660],[9173915990619188269,11539472056992750791,18203498651788388706,2051095534787701297],[17252620829481876078,3203291145295325311,10526369891822711091,1774467444039803175],[15982516717162784087,770789023286021068,8007828152619140489,2086001694246262318],[8339819429636656091,16963359177016173991,723928136042326478,912919360381121684],[9762858071388125781,1465848833213318480,5205048935631690374,3396874570418348037],[11543031132391257854,3372475063408567465,11427980464171863138,2090715540199494252],[4191256144832005274,9915222063909787702,6279758859485441310,3361022386994292658],[9644445524481950472,5116419298525792857,3413875179885627002,615924523731411124],[16174210416781440038,11224782680825625613,13584339858344595283,2293598389344857220]]},"stage_2_query":{"leaf_elements":[18357624237441986422,2199638636949711653,7544023032102750180,11741177151337504476,10793557444159068766,11445268538349224965,9579202765585012520,7976649199003738326,7044964927837679299,8828611229521339368,5723614497813765161,5695174660395340807,12608295352226312465,11171225573819685834],"proof":[[3840794058827635002,1225950571688309917,16097782830225210621,1263644015218664177],[15816804746883011235,14735609667892089118,12024975470660747781,652357797523494093],[3358519527756894198,2849727471150152134,11027939398286332686,1529110596168058539],[5577580337556098565,8743845741004811353,9979409452751211266,235449736026474548],[8829030710998617355,9698140525816687392,14798196395157527917,2536860906619480171],[15440102403327527054,14366642753713749958,17006647282460610453,2930661873441771074],[15170939506153414639,13477741394147641378,8493830027558714125,66629548763119170],[5611008531704958537,17258659528405837384,2335371474098192796,2335299178510563399],[1733783129894659166,5479315776728833169,10529952119559312639,669714573586602982],[12644003850791733368,12635397391450601328,11000105485075310288,2530987008030024691],[11539425922428798229,10316360602384796063,13626081842303084972,1387159090695357195],[3985708731772658045,10754460169425816107,7293852040011809602,1548978186074940849],[7143706776069384250,15680275494194306607,14480354172152921765,2190139242083446267]]},"quotient_query":{"leaf_elements":[7326904123016153303,6124799226547027417,6672907273742188121,11455019694052031882,13167714776959209296,1723561250420222821,10580695490205723221,5045973737044395928,14379039501232526465,11074460960529696470,6216668507654961978,3023070726277923155,18046160696521222475,10335875565346633962,16571793330272082200,14455428539053938303],"proof":[[14226980908699115950,3976136894007725954,1282068543119412866,711134770822053428],[7727852593596908070,7410607732743987373,15131258305169050034,1027706594098247516],[6319877291118508919,6725238968957948618,8234927541272436047,639273933820090350],[17363699305233005217,12441243934993108137,4275670030437928957,2493920650171549825],[16649462744217130971,5865905523587259664,6976950314710087709,805804844988964679],[6481548314053611955,16194619824332195323,6631682270031474538,199296562010431472],[15215976167458387717,7602163437268211133,3509341978187683148,1249250303263610780],[7558560123952608728,13244413176990989015,4878940572116545979,2577702239945728963],[10441093713558558436,9736052404222157972,8190712311345142212,330990458449641070],[12393370337620996100,2206623927400255796,13063982841285469851,1794440939324263598],[9069371295911015324,11543257235310531452,8197221623342521355,2888971259919567731],[14096135276490114937,934952086452724518,13685357035753289720,3464441529743507205],[893769981673929871,3319556979175080647,7336913751317520875,2767808378512761087]]},"setup_query":{"leaf_elements":[9945481527758130186,16102832343563120050,13532246229506059186,5858019866543914529,5692953674286473650,15509367855802363157,3763617068065392232,11488478922364345399,4120839411511383547,16374371828771833523,7189563768965221889,5645014407437214225,11190702690144630357,2861400451028048395,5864467485718888225,760375601433638745,12736518939452187634,5114131981361573834,8541807577570287426,17824589677268265936,8476620264570294868,5996669985851983996,5300449157973902286,15674903069002992208,10818887716613583368,17354422994995484844,13294525546675840225,10499057117219699912,8078762413272855914,3492046373632554788,1896816605209695170,2946418580619096748,11540835241815025391,10381951261942270040,17610259584620876462,7252101673979836985,6273183373678807980,1802469043846153861,5175679463942557902,16210100400586501263,1207176365337688166,15573147698677414560,566800774536433761,6679834999132939881,7490642106355923087,18322683762645778788,8226455307438150198,15449528118216156485,14028483004774003385,2368430477530764201,8231187976573592766,13433633944212610889,4188710844239861448,1886012977135134641,16177784080829642759,11173071072492329931,7637447334205354084,8633333213441431163,14346198597192263312,5995044027846560685,8415174315817406624],"proof":[[6014201907395507170,3618686433353329890,9503011021000919611,2610483707642611166],[14372241249336990740,1165666016737411441,4071525561898712063,1477238144401972836],[7467228333681986036,5690760253068148739,2837471318171734336,3403584388343384291],[8364453058071372483,15620413031408070812,8689013889239449881,470833638716728761],[2566584062079198516,4193119190038786493,450264894369992753,1108561725283575391],[6741415392291048885,8209441914089437817,9426463092604359398,2716592022973796774],[1665666486676151072,8550174627705387654,5955885602722597104,1122685594515251084],[8468160262225148582,14333971683586568391,554017511113799209,2921295986738583253],[6188922933525595983,14466443312754089481,6514164977164929108,2514780699592481942],[15676321607272174715,440492761365860235,11412702081222980020,1231556104830504558],[8677846826338869903,5427765284300324242,4714913439232743932,1762887376331384779],[7862272296835307117,13758153652198257213,11066006271944237067,3110603293053479954],[12671376312025887274,17441343524713900297,10896011836861176681,2912297064607346901]]},"fri_queries":[{"leaf_elements":[4044988298516733108,17105711088715517763,8029669423334845554,2243159589292619375,1931263189025791502,466921197246197164,2699102741958398863,13260525040258539637,9886711166983944466,5430240903211064036,2476228138099411295,3673825389693468312,10711774461527842479,14725796635385345244,4875310133497256950,12597357566530825361],"proof":[[7502750866136697098,2648333110560061234,1582518249471823416,2078067953275576612],[12255067065363132439,11883561587997179942,17211720343168383349,2529124380533552581],[17779811107903674050,15209088813787226758,14875272043329136991,3217370069035778224],[13399152694978881312,9546798323104122199,13277745734665367284,3271828369300024124],[2013520185885862472,16047132708294304254,14560134033273149505,727187883136753457],[3310867745847639932,11893178006863931600,14634459014324465186,2229301520218512936],[221197179113758607,10670223116723873526,996527548120598714,511127097577215588],[16933127110299226565,11466221292367671163,9838422806828480489,3170864960091036243],[10672073706590809111,15948760533067443828,4608531742732004549,1167752916355856979],[16109863426784669012,15963846919760798386,9142194185212147107,2313643416305218987]]},{"leaf_elements":[14928057416412781656,9251451305803729490,2087616280853457403,13484438126509183484,17167146442720047798,15093036115773061114,7165487130060919622,14779028628889559046,5294164760412174307,2272801323825790989,12067319421845823677,18079829104103887370,16754003232020325912,6849072506849166135,10296934051934006520,4186244169700244140],"proof":[[16266727134439819885,16258993261191103596,18102283598536535720,2265093101642646566],[9606552967093465044,8162934239356731352,4409827717775339783,1612707312234077765],[13874483142697052307,1352026522605036386,16586681617684642085,270116520827438013],[17156852610994765851,17269668289823375658,8206103851870634527,2672246440067815470],[9681889145106072593,8780853507047804146,6894027738928297951,1164763262799763370],[6104261833129659977,4895313453845829034,12725742286012740408,2424891684706653051],[10344127557781956199,7906363140092405288,5982125655274322770,1672165157955432393]]},{"leaf_elements":[12535956480567297718,10649620520935423708,9908702005832026910,14177578903915935141,14539206836033674747,15273978808733878513,9000443213065444397,13127899233722707873,3118544485616892007,7695207388473263739,13650062305645492989,5603078777168836203,6480226413365864298,943094878451497416,47222708529300263,17780879313766684631],"proof":[[15944290577369265171,631523402255762423,18357309078319467543,2691508116619170189],[17566745660870464212,15913787990054348328,604087449651909264,2388586265810455263],[17340377091611705279,11968596905046334040,8361551254700181307,2553393763160504229],[4274407429085135596,548774181466706774,8603117836559137571,160198004595477839]]},{"leaf_elements":[14694649177522924455,8970524565615133352,6698130501351274130,5407467138564220850,6709057259898075644,15065386984471511193,8847484406550740690,3130960100291456344,3694217830831795275,7041401053929351398,879613210345154478,14654620960715256415,11095625651784495053,10579595773725487118,8663536013231766845,10383856026212629571],"proof":[[16046369096493514353,11215590715117997524,7658673164007518840,655039943382377449]]},{"leaf_elements":[6485988802393016559,12130974100501667025,3138003141619716888,4081174251100168420],"proof":[]}]},{"witness_query":{"leaf_elements":[5575038896445247562,11098325302245653685,17133683449768992930,16353259677499689037,14634946934792682327,396627564681664282,8453193727548797538,3782754567755429116,17023947006867331054,14675413505038771702,17509333279048518699,5740732564275096553,1169645642723530540,12097010756594458322,210787582442220802,8506136285889715143,15365675308480514326,3923160988150175955,15757170303791905667,12854731220563214205,925116471989179387,12793504566483768829,4923587995327094420,17797364220246298488,5333929596770529808,16700500379445292086,16126923800522079780,13447563992993652461,1056726305372942720,11514840925868825233,8725267202833974264,18074178525144398116,5709529489930433056,634413696060703743,15660816699263366512,3675574368498939662,6393722084523403204,11278904608949165658,11535634353088165068,2024256260651198545,10353487444967408242,17780936028891684780,16959271240764697964,2469610843385974832,9127691748315808160,10259509002164047727,8032176464367335265,2223989988237349605,445769831464783993,12832195549047309098,11168861987834201507,8047844883084541736,9599111363521012833,17993694605698753369,927032017825259511,14548593580364863706,16895627301794554930,13989893061150054119,15475196861404382187,8712122105649759680,7722936693401874052,16473776110274355473,12258811519590533105,10745191367683626971,13705587863301025635,17077756827969963573,7992399004783523917,14830544869520277743,11182158475613185881,10074364395801651201,4571745331496934435,1564257142207880804,5826862177965134618,9335906177446217035,10067608566771662966,15837055919479443289,362983673558148480,7804952371420998283,7713835970534062809,12665367082533629927,6732061355941693763,10525050965389108675,13343968583604420797,10668624192416046630,1745192847340191062,3951333869766098114,9042844253003725190,12841739969871386154,7910143774291907224,16493633434471573975,6590764015481599527,10987749031000477697,4369297271835579008,18190747634974297497,912126024579212447,1254311771816779257,15883780810297270019,12543896148540513639,18018108289064539076,5866424521558669609,8091230589129164889,8880549659104994355,14072087867807978635,14935303733550751539,12255637564578358068,568740994376330168,17798660374049656507,18012104933115897670,5935047078533847004,8362240684952704018,16352692211844488175,8983786063415239485,9072323555036252133,3951401024752792358,17792877251270698364,5956561118044785932,17411924989201403509,11783361694425925305,15604374301070720689,2202560268003527994,6435727120608831512,16368886839357558256,16951503155627656962,12857721965426983760,12104654317843520733,3632551214448896160,14341514376673140713,15085607958402593966,6135126189403383178,12615246399026888125,4268960589165650025],"proof":[[7720000979888172328,14123994398394299834,185635331534512083,1640874506978993719],[2295372922971128744,521893800290413473,3348531737985781307,1937472965936695483],[867042229825447762,3164468818022115920,887957378987907955,577935423788523106],[14143517879962087800,16089611203141513647,5313454929328682358,381516236706775134],[11031395110782136298,1898385487814441992,15037274747758316767,2902752272997645315],[7371578971353133427,14769846255401276371,1242125896588497574,1368527074961802011],[11496175500270809736,6531081412039885174,17100950535852100163,902811689610825165],[934287682950800653,12024200835861669296,2395714854962153311,1736327579807174811],[1281554673275393036,14145867268327546649,13119778369171145861,1825671802834354142],[11955244089072309238,16274185217521274724,6958034684425131627,2878010863148156188],[2853992209979608543,7480421103751381478,6266145427255707523,609026604044859261],[11395209662662043513,1193952028845704783,7328494175882249763,2550616215545667113],[16588491068607937261,3526966741617928076,10392695706853076554,1484301400438308297]]},"stage_2_query":{"leaf_elements":[4981183324774549839,12675567746044210211,1041782324036530442,2255611946983787739,6435248969028338375,10403994782669861345,11734369503459468070,7653017198601972866,3746112464184027164,10179612760099500623,1133696311895222602,5116908640343708175,11997938232498284077,11529166166379028082],"proof":[[8231610012930732422,5771998389541200935,2230300104294598037,1854193759979263244],[4277445103244665901,5195086077883573295,8027255724084331711,1559616921839639678],[1399887672584275131,18094912304704349853,11591508182332494027,535743276259009723],[15691455844656267386,3095768156469673826,15651602281428688898,641563871665958537],[16441341131043756683,13065423973910502044,15744451502601480547,2987234395867788242],[1728782870333927756,11667629838455582305,9762057932000216534,800412595068406580],[9113506928561459210,6015892401173274654,5839339827906556424,1440164537792826236],[10624722560341943450,10867162268496348346,14333609325572105413,1323181526741151231],[6100827353699827898,8680907872809107107,13649105908619058201,1369699320728049867],[5267911691065447342,15050866534489357971,8135597120057048811,2046478303567617368],[11783098937363174806,10444382783640076073,5990283414820188862,3446747531802190182],[13453799667936609752,9408999572463695881,1267418068921507325,2811649048378416322],[1137189341543078283,13958353513130400171,14826580562953365354,969106141811926692]]},"quotient_query":{"leaf_elements":[16469877755494216830,1966169187529430099,7081864181501130358,15490342425158927347,12605734264248174916,881025078678805640,17638860079177265581,3672825826350537712,8836571831818084948,15555189282897768719,3923555089582030347,10855861763332351533,10102118839334936982,646312211456803284,5137267413931610619,7850255259789198780],"proof":[[1515119733648374971,10316010818082800117,8391808641353445631,539331326618327221],[6109999896701541606,8541555419585955332,8141426972134104421,26511332443474835],[8154497452557088790,1585168807508217920,6453733176500495681,3388967848157289616],[14939371418033383214,2966799676819655101,18123804574773744675,3252703824988904966],[14571756881279911147,4454671129592058991,17730527630947579388,253665498381759488],[2174857673810731725,11263510854561271523,17634387444575591157,3384764181454049850],[9522935485662558395,5772307320009326810,13188388307487667785,2961281630081871137],[9308900784713345305,9800412891750074528,7512200762715748583,3277251260189019418],[1682848634186419984,6803015471738318258,605019267689011556,783698944507546709],[8658902292368764436,6873892523014575974,15496428575405464873,3455480457979335407],[16205960092201617632,1858647265064593050,9242235220739230545,1027400683482998715],[15752324323616957754,12779224907026990562,12892007258134896959,904790612977146347],[7644633979883049593,5553498988801646622,8610663271832258607,822488044543005878]]},"setup_query":{"leaf_elements":[13438659168168928039,8015286436154703063,7990372828183818141,7762798928547763732,16389571341722378128,1605755009302160726,1999929613161514550,9493030360510940434,7264384494882267363,5679985782291513324,17915630003185729613,1884083086562275080,7002690653783629773,12417451864015137755,7903875678910572962,17926324152500168986,11501137136858751048,2071857590484402048,4462192077090867602,5566160905113570300,1462979005906586731,7830188231633434825,1526350064698471471,8426198303008220390,15764124876699141745,13332443102219650530,9638356217141106070,7384849256879549045,6493140790529497845,9615555682411260887,16870967581635035448,1701667869165193663,567357005973357301,11290515043996069131,2500999379127797174,14742087343391071081,5829928881081806492,1163726733213955818,8521151192794490176,14982169329647753986,13072222418204103496,10826828130955075121,5234930108396155713,15336288286343949692,11519139417399954446,4573856990130300419,5698563147905352346,17208215367473200292,10298217655217550534,3449889356211825506,12027795387783925616,17906752209466444266,4232814893700734499,5074872131803706702,6277667397334544622,13185290432945891524,9607220303091150643,13518749179691888864,2331681119670318075,1973480820231892814,5796505715373363596],"proof":[[1331133620160458032,17704355859520208380,8425791644587104581,297076619169368497],[14890196932649466051,6587065349494056651,1740983125534396441,605961594420093622],[11435869809684739973,262104332337220617,237527701497641382,3092249627556134060],[10708529428969847400,9314761344253057106,4517285163691538978,3079400392545827554],[9244469499433050576,7317725071125242956,4354388839423859595,814821648531861455],[2459765144100115651,16664547666953908382,7841139148405846072,61288242280657680],[12364411129204075522,6991856826408851396,7018752370647892837,130857268711805084],[12435134771692829454,5975989111264023255,2526407986907465578,1875734274204884756],[18033546302340972839,14423213476732529326,16246037090897051792,1717597567226411091],[18241057233340885498,4803731038649725236,7394498317798674985,2250054278306788662],[7159520266936439876,14749332712915783770,17912632823641890013,2783056856267458238],[486818797389721267,8084439847514817549,11236188824456470837,1459116569331864959],[17233809955911081924,346565918454960805,10256110933992363603,1021423818581111110]]},"fri_queries":[{"leaf_elements":[2856835011480465781,4919461246840178835,11455889028295827781,18096085669571130929,12984666988841455065,15146034162179693863,6581794853139215045,2264956214128562931,6614780043494067974,10415186649216392644,11523907538026172704,3859032991479802453,595740823831033701,17678520066412902671,14906702389490616933,8116344719116128166],"proof":[[1893364706585211871,8851297426931198076,6101511442253287799,476474062474625575],[13559343920712512527,17870973518976595818,14187969998841491204,1644118139111915655],[3614965705996492760,2613305768431179437,17285613091327274314,1612743170234623086],[14959049072461980782,4960260986294212814,16484084870450252263,793019204785913425],[5933027166563636015,5723313901122767400,15821905126435344526,1513233618525564695],[5467472859565875702,11895483773314262609,12881362459159527124,2610817678137105324],[16561004979137886812,13872102757749160108,16697433992167262234,1773354400604808009],[14992575685687128963,12709149031323741069,13640315697743379233,1015385893621543080],[8102852523074086294,12167191959051485489,987731537766481809,807813579561528140],[17504669361731179974,2131055028050421148,1385363377788465903,1412066716416574165]]},{"leaf_elements":[15794408177375948347,11307795520311882554,13450368065233085934,16824760126351922913,408974141518472903,17840135633980907895,11207357300035922554,10191863000124261177,463432909626314584,6379435042446119330,11712048139768930518,14169464165082657368,18321887000439203754,17745595822791931340,13351266770975207506,4937317504290477811],"proof":[[11826869622680159819,4210049058943241398,3053699576099293483,1864477843134944470],[16586906374203687430,16262572107520224808,17971830916532773394,101875466986826117],[17605145175241943502,6037298622006236924,5122345727363921818,1928677489693141221],[18182715813624259210,12851953572602146940,7910441234876407214,1128572664395105857],[1034811006155829986,4254908152578855217,18187586512564442648,2387292835542340214],[2131054147592230459,15614884782830478317,10463509545389308182,200991098452333108],[12768234999023651365,10129420054475814617,9085624202641957562,2813036854653805665]]},{"leaf_elements":[5224070489114068585,11741064992239745195,17457407556228431647,9939447143783811749,514979789292475085,16503659610491085219,867782230446166473,3445183516413990655,670270436802993874,16307827597579008724,2517692840552953873,11270576333215412393,7712938143145232793,16650455890165790458,14510668937061869231,585394501900353866],"proof":[[13219592009834583278,8147549885642118323,15149349917507242183,3265829311472343720],[16532808132867334162,11894728293018834897,15700310002404958182,2634178845003622762],[12718046904109163356,2264729531904559187,8794836354474897212,1277593160709481300],[12224604233216893620,3883891059941308031,1780591444954729148,1399256507324657499]]},{"leaf_elements":[15893017159368408170,13726125840665252010,17148517059027992310,10710769517928453429,62468483247850795,1706573451560102365,6329054516726111507,16539953298218191128,7256712283437372812,11674755078445890482,2696239738289444223,7519682009745736278,14986697876302099271,12120225001183003578,2476978608143749707,14668648539203632694],"proof":[[9243350332989540492,12504692849143041848,12202608967821609829,254256006803436255]]},{"leaf_elements":[7065729504527910035,9780518320697745842,13314892057648005417,14505346905238107109],"proof":[]}]},{"witness_query":{"leaf_elements":[1215001383032048192,6103640550078932707,13025597614303739951,4868838116283390367,11762296430279128855,5684890533556733947,4982572522400289125,10642595516310076606,14673789584735160931,1482131614986893133,5596673819736708652,2474617296555563748,9145619047392853282,16982869917070076858,3892622880181221050,13297721050003226780,10707791584266659375,12717381470180363801,15359847939544782029,7005680151778864298,10831696111713193045,15399089351720202438,1507022277337711695,17068059500876562308,6537805493655989495,6826332066363460104,9582929504419754523,15859627148605743435,838169172582453618,12807013270566472086,4698888512741186654,14551560393499638890,6627200524373426094,14240085208301751668,923680440088308301,7936127178416230263,18020274294303814539,1454841923672690898,4708557169749715273,17253763094316203744,6712476547339089674,5171721095920473003,10998144205583349250,3992206868279524211,5775137878845358139,4718529134010224859,3114891654685885224,3801001085532390068,9303518463560583168,4911033835277032921,14764582868062931621,17513653370200647562,6159959734217554521,8960173697723092226,2172493150048649690,2998483259721581405,17980811274358523712,322616837360606197,5375770481788704931,9570046941078382393,11629409403081776555,6864393612889468294,10218613536218477720,3515654483241231956,10384216959756187988,17066966274527385278,10304064446155897309,10035740768278678517,16817473706543879969,14992223831500147843,15261400016171917172,11427325180605833969,17667649090054398618,14519377115872692973,4032214479175016878,5736267368648890341,5407999627920558642,6462489248709603592,10700751430964330892,15279993627878018706,12797653241277594746,17437247032546149231,9899994928161582143,14767529820607571661,13370553325682616462,10907617809091779693,7361225411391135306,12183103407542558352,12467457165758111314,10925461732546067313,1848566868813968215,7082520027536613327,4344976893544498353,15279194096299045618,12658591787544795535,2030931625637149456,18261722800633644533,355461737926575664,11234007551329453821,16788057886299593794,10287637027862279269,6238095918950126807,12689119851482146652,12467538748724610362,390140310053875341,9383212947786603578,11408219843499108590,17920422500678483871,10421251558447501019,15846983383048256280,17750863112076975030,13497650762078792262,10471426686378174031,7800994413701956010,13545629327956099629,8915213735764185710,15799636738951486187,4197302252633617867,17268581622890544272,1788979689460815377,1467514052362054757,271210876365191028,2092162789368560100,11643933083794895881,13450098881857520650,12046570276400748488,13327907258672493977,17362864467847027600,7210299068690515282,1404802756094182179,5444372967512579683],"proof":[[15721844306525670495,8986019258970263996,16447385427951718805,2371328138956241418],[9347672204253739491,420150220209609158,11936004841552137733,148260908047937397],[8768674036788792187,10608658398638827797,2036271073605310136,2103583295874392721],[12493089384447074728,4510948699141451849,6485176626250753421,710718940788970952],[4409712369220239400,13977345140381965144,8901668879966374539,2281847530147381412],[5948689413171805977,12492725328308169833,9276844952540086039,3106558124412036143],[12819794916739253882,15508517348550795793,3627489493374704445,1282269169595592489],[1450573994636917181,10624083934349612088,5962359723705977402,3066700701614321295],[9863206242119146222,13194082874406521960,1475218077905374445,1756272685745407812],[7245279328760343895,5811176660057094455,1603635321652595093,1524156924964331757],[12036199073822799947,18344382032541332774,1150380077402298600,137757782090781130],[15056798879279227557,7642122615035966749,12396778318454286618,2846877088663908415],[8899754350472755776,12278932612733122602,15570693645971944066,1640054857718498562]]},"stage_2_query":{"leaf_elements":[10465981481798473108,735207257332012324,542679668078926140,11322947299184555078,16759480756092110673,8784430972503469621,6531191738696938598,17481415654037161950,4820802744820410139,16706361297222128059,4773939856909994627,12535884840978379143,1475478577138856685,7886696844299334129],"proof":[[16073814202852222316,14778245098081070271,6651687737078997231,2213132735571181231],[14005026472547471525,3121823583135903880,2261304686018702752,3128370120349640918],[8396595188168362447,11577523570686253992,14761828824182278688,167264701407541168],[14357854145481154580,16187215450816250022,6266536376706975430,2494986337728044104],[3940529663744603579,961906719058944224,258145945574333030,1584681599627061968],[1711565965163826212,12148443634418703794,14648012268521215761,2829018131923957802],[3842326100042717011,18325390735605480848,4359630179184651986,2189315615811226146],[2415440017609913278,9475443225397536599,7554261458078025295,3122366063351512870],[11186613281271210903,10373904054617679514,8765985318898579051,3319300046170545716],[13339117596973325593,5125175564976215035,8195156164378609410,1988983859891405696],[6089297347779533698,18288578288688712260,2464975423208903473,3381181044776058761],[2202002661820034453,14408375113858267240,700400200812454902,3451107817587353209],[12572859388325897636,17011840285034537662,14979141720780255310,2732718184850494243]]},"quotient_query":{"leaf_elements":[17825296785197578064,12250128734383074973,4867485579702967439,4284281640576972275,18294989351992912673,303897133495028776,1850911559611504940,13386764926858011541,12040701991209219526,15120176496049754999,12589828780494574359,17848656615253120170,16970757292988616122,16692433657436697360,2725874787524519786,11604811981755132861],"proof":[[5804833009483343589,7257443577809140464,2325159954357278679,2560354405676676935],[14178088466402975871,5406450458448559345,4310154258101263591,856013014486558863],[6767631633864407656,11093365133541448923,3083871483755700898,2663271744244236718],[6651089740757155000,4875528830853113498,5077123875187354417,2046216335192354993],[8247285594259639087,10675599350191214014,7551880898101425378,2470076634134984745],[10559951582219277264,8709472837422501758,183276731548429261,1517134192057281796],[13022927862504347509,503571432897713891,10687344655235423177,106145763937663356],[2204327241266416142,8026548421549464797,15352385450152997664,2774070736867018436],[10502825225986662242,10424325544720827384,17116562821988333022,3412526797174201844],[3196276470646850580,4004690858886185003,5966741146768215072,2142909305153113471],[6785880900866932520,821620509556502585,8656418859660568549,1427611543780621878],[6901920785147334066,12856560133237768599,10764700425195042763,1166708839200723743],[2322302405481175655,4650094345301116407,2541181434162447780,3440250464316257291]]},"setup_query":{"leaf_elements":[4700713063647460458,4825163406637274714,18025497119368248496,14709729825927490806,12900237827493039000,12290588654861011581,12009412454345302001,598374426864793624,17012433210512560298,8562862743071266817,697671005959623751,10794953758259582951,468941820091890524,5057567429161613572,11496285597429603848,16858075465274751170,5955595134470912636,7722650457282506664,4143825304631077817,3898105361719791138,7640751618274640911,17640135446603031618,8675530093887683,9646619112334640883,12560860918746523358,8564863237752721272,13694306121818325210,3465473977927310529,12875639431661141301,16635756735252960994,13198844944769541192,3513310936153567136,745964587776035249,17018200448156306501,15380253017152936062,10138495330454709617,7523199322251016964,2865628493718131569,5709000782301282490,7517193238514272400,13507718874883642911,4888997445058934093,7141432660954653749,16163442370825930500,677918272811083138,16552074039024109194,4275103255614744978,10469828430343077645,1164836606042612867,8786419420472289709,11848020664208334871,13369426439143906541,7399782243604744344,13099660385549820487,15137956398068897614,7600960053084153405,10651936226523514510,12714907361768932366,18410522918376988202,2818445444199346290,14023444587635018175],"proof":[[2888820399888217134,9890884505984898016,12483101221848945390,2076449834293950496],[3488931677710094405,16864393773213304053,13543505798507928878,2879892181535985135],[2995119719629856287,18324648061042124335,11000218883768177791,2427491466816355951],[17124670353761547868,6895602532587470286,15061520573820950810,2847716942417014144],[7978712398182034366,11298756726216905244,10796020156527728982,2970447912205747022],[3541239357772005813,9493194925227228188,17199486133256632489,484007383985867609],[12226512109280665502,18377379454113881035,6302340690777882002,3168535848105886281],[663669195010847064,11832512777230573183,1121474876419550544,392856606458465047],[7373791671506509467,17237201314606505003,12317503870830202867,1406803425834533937],[14580317445988625856,13149130945592640029,16604304107363690250,2841140179067370039],[1944238263364572460,16944590141222724672,2731199171487136026,929417722718882978],[8184583848188389689,1691925751284768332,4808945709990961020,1954402464110990423],[7393247476269389035,4694627994465087610,8725146533108150334,2229767323800595700]]},"fri_queries":[{"leaf_elements":[7749187509767029292,13252891345254679714,9307637443607343155,5828450646800596814,916632668659395818,6458035464258391229,6125397420106890663,6809440990995835377,1536651100100820238,12195229519014119227,3466812166242867457,5905356438217971053,8563750000199967202,9274147101843088485,9005821596535752984,13196004989815497622],"proof":[[8056930210404646730,7435308696457129121,5097783615378740073,2876169443509424612],[16828557883431877469,3423575560352973137,13925568908627070106,793163425668124139],[3855097842341130231,5916063159946231560,11256412174030430663,2196884434161248191],[11233629868580638060,16001146981040295497,17338238406503101674,1694665572255561006],[10332763375431650461,11063175572016992389,7212395916553313797,1363196769224310734],[7408005092659803064,5208385871320286472,7516922882001672374,1179399835552760453],[13809049362851506025,8607923437647402370,6301151890285172059,544502475405482617],[13349775921664257113,14150048354355143187,6461649815032889461,1502093382481396807],[7605375743785670799,10185895542438624416,7815638543420388253,3054178810126252517],[13909292638786716778,8970587721766887481,4064072683418480103,2352438592939364893]]},{"leaf_elements":[7712267997879279470,9472212827475411714,6960425966514436288,8268011658515516923,3756722708976977085,17824230482320491907,3443242133638358007,311691735506755798,17252667844409808683,5171002681264399808,13718116683420749912,143408120795613970,4664540243541949932,2918415592347774443,4076331129018653977,14552283708148115366],"proof":[[16002476354896969727,1637675569869513036,18035656005892348841,825934726762370533],[4847709282463754910,4175831001744885057,15061963814206782339,2827269874398203816],[13523793075301788403,18038620006543299865,5914085807356195225,1271185905648154550],[13158986810215683201,10792003983509805572,9763759046117259440,3200939465432167230],[12813882369894236157,6484739813566793012,7796420782761195941,129094952693746200],[2137973266876116548,10812798778330061619,1702586614393510203,1435662129826923283],[8219660059199024368,16655180989667732883,12470720334809693761,3261694339373339859]]},{"leaf_elements":[7609642428281801096,17005821060119013229,11823129476702904261,957512364212992741,184476775746606850,15607448156848144321,17715979604102664711,18408588747795226494,12972032159496124287,439953035378313170,10656303046645347390,17068679234718264430,14046546218603249124,9296731761204080269,10873591382654756613,6525842527898342333],"proof":[[11606742728350261452,4189862011412764281,455539630406906637,1064856730530685172],[5460207319851950092,7473606203375009206,8720429620102853383,1374949819360850622],[15389039272882718662,1220524723794399443,3027321851306010981,761737478691848471],[14914066784182050162,13218321865492874577,736393783097052782,1014363730706131245]]},{"leaf_elements":[10843563837985374749,2934059280078601464,522664419033492028,9663970885524212153,10528477958991422926,17612037856198408780,12590216556634830341,168568544817592541,12645274891552093570,17506125824037388715,12658942764876917960,8356328858488461741,2074282120620356578,8773718658183707819,5723522309117596141,7469780649577961051],"proof":[[12374258612337946155,8133723967161758545,9858584754587618204,1967446838911406840]]},{"leaf_elements":[17499325981881337266,17599898521267640417,6381771601744403426,6712813034178600945],"proof":[]}]},{"witness_query":{"leaf_elements":[13645949009585560531,4212573226249452588,13695339007296405194,13492436178033663056,1902934968353771945,16316810139820222950,8570473260764020303,2525664828251839187,12004976576105812783,14286051497866066906,4014749625853021264,11839273468638512124,16219686369006565635,3318153799689124532,6022923360764892660,14684839952027631558,5696211416279425483,8133130098395761949,3942945466848912909,13094485037263983541,2758784488256881788,10583926506591755192,16581431445430112972,5952716315398587478,5450109982955639898,6453970120455105068,18233698192948025571,1416679179088713824,13050857743863407128,16469736078562806801,1689633714479496261,3547968651032964672,5400673656527962057,9052924063434334244,14056704069684076090,14332925206949053163,8194775092229116440,1989750280993651646,13094527908151780208,293415293573230345,11575014885998435615,3733433296851791854,7135639821824441144,18189181423949637713,2551869537641028144,17773399829569032817,11358038850307629578,15107242195895423865,1265362580956074766,459979956584425343,4873429136503308051,8554364833660713626,5945665319997224858,5648981769586470823,269349318678345212,16931642470170640445,3622659161869752731,15968870486194540312,9483233207141100182,12802367623113047405,4052030377647813112,1391827937135405446,16527189229715555184,1988118449650103275,10431259700522543761,3511897514416089676,7376101296409805434,14983725886158412490,11575781946158927175,14969887058724417814,7971863015854501524,4281054948491826619,13382353153758853226,13899758319527170471,15053425191567795986,13934996564278482055,14675035202232104491,7210385433362639988,1144420483880373738,16906070973481882775,3755664379499868916,4269592443866328500,677195409751326717,3246434040446297854,8305014371539862307,6992350501686716804,17069193720967512454,7973284514993228894,875274616649363197,5013658595613268110,15215279279074081107,15642211220538332983,13611976458432225469,7822468108597902944,329351920134405726,9194741481507537216,17876282531288193816,12467744660140676667,17901133768087755861,1188693228881443041,14435872333384867451,8810099264622379089,14423290054229933002,11557430622947971889,14988508393593846924,6774666757984512778,17774542313014401071,11478768686329836805,7169423296913591091,7908902006266152701,11766213030011474269,1710591917972129003,2479440513352799936,6064269368045258982,7202139233293615437,16069334813747347807,2520257833002354447,3622699260631258710,17247995929797753551,7039792080307357019,11570265846430440223,2257204682373582544,5032233150090724851,793576616080860574,2207957050871963798,9558752045082836317,6332797170487433361,1986764920607329602,14992535357262908935,1052723954665517791,1017700209155531108],"proof":[[4976495185770684814,530720453191961677,15984611842081526712,1028014671490075260],[13101682018933051194,3396590318102650639,1375120270400458376,2339747603551424157],[7312349094197532601,2752649312197517291,16452477214306372585,2112757786303317581],[7689353599926164762,11915775784916387712,7500743137498694597,452916923974357810],[7202265713617304654,16780036748487895422,5099442174120459477,2441441733284025514],[17622446766599564158,15010974671025626918,1005448999634780184,121337427521051116],[3826705090257337678,8859619422318654745,17625002667950823709,1969050758630534938],[16897246651552276055,14546876273132450661,15026214729759584489,3292002413220446699],[10411840758857518852,11335727682586501573,16704342851134900219,1825567629739686869],[7845104032949413984,14227682426487064844,12235787677570897478,340075377670963195],[171331851479781644,8936991567376566139,4554582658362714294,1481229455953702197],[111213802398324409,13414388693591907295,9175218896119912829,2638942766800436560],[16081857253535339839,12369760122243596919,321147843985612881,1421310820854733572]]},"stage_2_query":{"leaf_elements":[14480576460963624557,2645119950489794076,16537500014817668754,8911326615198571261,12183329561760590549,2508094175492737542,4944171053529039147,803069720209313565,16935871172348173931,15592738769972188868,14197449598626099263,8829330426063665582,9193773790737476704,17356764200784401391],"proof":[[4388575884743525985,16612438315920319351,10065991335879371824,1102323327206117620],[17631236961467484518,10974924359845240654,7693447914865160042,484923808524793947],[6027882899988326951,803138105074458796,15240257054533195707,1608037071632342365],[3515799466111234759,16818114179052339924,6958766635986805854,585474797483191260],[15187639719200648994,16845713357625800605,13261589136350228416,3292686635377373583],[13748455259533636747,13129457746063835869,12838195330533655310,1782225714917009396],[6083026836239301795,9935423074290704970,2161274595501163416,1137911542275940782],[7412100274999400457,8520191823446518527,887313834569595105,1503944885479060636],[15424357622453784010,6205143386018520965,13541236207613629982,3046636896575722535],[16392913908751044941,11940657156077815363,12512314471613862433,233229714298843809],[15152880817095458326,4475998106991160465,15008538817701683484,2211487576287516768],[17177506030369921111,12851121567553979669,14107730224997407492,1580369957140359352],[15814695789183998421,56527914284832412,8797409215270913660,2669762635623790074]]},"quotient_query":{"leaf_elements":[4947901762974373768,13839793446727070577,8245819532096818586,17962095463648744896,13815139899011102995,7479949498173818735,2779629515201830902,5977480691696368113,17855874836746603866,7644619358932566616,8902630245773795252,6736953025409862088,18053847707478970604,7303111850232886847,3761646276421239925,2250606200799590680],"proof":[[17255433553544083984,4405278786705624746,14475229123196447557,1541029311835504210],[15792814779875232760,14695552510937008071,8452152202166036235,1270507535278472540],[4869303605529158087,11783494380661420796,18044102672130184638,3091224643998353173],[5919311199431186185,12235712953392272637,13166006390541081933,1208367033109364925],[2396957357741347449,15139303519713490469,1446453482283660415,3257412113334809655],[7564540198698649070,14148184847885731698,12262839815302611957,2379543784402717348],[16746387460775651072,17312085692393867771,17953858522159752601,619059633068603554],[16204472797234167478,12907796128695407106,16420028718873613010,2054263445169775778],[1457974482241520203,16271394766746553923,10532384162566687979,2294207979343728504],[14582940653611852153,5204292480076757109,5076104760862492616,3321339133646313086],[14956780942580856435,1258560855878731901,2322737509787285841,2918643104563390249],[3483963415091158506,3894653977204847782,12406404646759003454,3094658829410325307],[18356626245744303853,6926726491857343148,2930800252704934760,1845281596278268515]]},"setup_query":{"leaf_elements":[10402222764010504223,5097467238015203256,12015668190370510120,16450672757798295214,11551846507318505573,18163603625663144585,9262011087693061101,868627299268080494,17781039728608475675,14285385143242466922,14364899665746231088,3392288487775826375,17816101123680509942,7674765982156778108,288715594107713621,1752452861704327037,14991601748543943757,3019308995202067898,10561832885475297266,3846423051349591059,10814849944637887060,15562869258489093465,11047760504723605125,9255299233816143462,15967447243000479551,4878137984099455797,11185546861152967001,16980052483815363618,12633977380294553497,17808737162407590807,1248338019494112597,17617842949550758378,4880850367537831698,14146191452229274418,9227322571303123960,5959319972800187288,15049224837860966420,13595706549172701595,10113268970109675420,5676641547020546036,5117250876307997294,7984770713901503988,15882371861214682454,15120566089697506478,11665457183390739832,5587088831674292215,3484952570676092949,14483078824950271921,3186353562676135288,12741319815406718292,3906291135617672869,9576326013138651501,11160853429142526162,9083980083306358112,1766888867502918445,2053571970378478437,15975433653983589993,5054515666302301471,17149197860516679568,1363048115150696328,3979452102523192110],"proof":[[12844541763310039992,1022797756604560461,16938439321210459951,2250539951236636157],[11674559820161982948,18299436798864699369,17098870849355988595,855810738904534765],[11306302699080307043,4019033690089948485,6434275963467147433,3463013189992818394],[400697949087128976,1171528282377754626,8613809270496612537,2959151265723320461],[2128278939821351121,13003733584236245666,5273525010297744260,1001191370815224515],[11318702301153414067,10088065118888411010,8495080716671180794,2366475822046588759],[10871468616169632158,13405599540486591991,1489244964872477975,153161620633975422],[13700173712251592178,18159619464847619048,15194648889617595881,1055447986934910185],[2103299083336083268,15678489400018486527,4794156575473669691,3283204052906469297],[9814661791264875806,9420661027775581088,13791379520687020298,2372271057587401706],[10000891259386339385,6315007953130685884,6887747776954917417,775327446143990338],[11560595489664821065,14711084012141472140,9667246125152613359,72718795004520500],[4629382627929813659,10434807975241473018,2682618813578145242,1989052126100709949]]},"fri_queries":[{"leaf_elements":[6930060961824314901,3915588876328113216,15911860434722603607,11068026279552408615,8013906579884965050,861184092739880352,424056172376360614,14936215112851788307,2769611215570359088,12587771271501697711,8337272254247511490,745081322743516947,5251301876534421997,12250673898979579109,4577071283668219089,16134335384961354975],"proof":[[6258604226296752758,18203348287521357014,13318663044618334752,2376356165335999017],[10714619272407752488,3268651506953734882,2345972500232824178,1870553270983306778],[12580885810467431846,7449468394955545545,6875446772130912192,2583468572529752602],[4677450034241278693,119634827351242415,869383687567252334,2340662625733552530],[3356964341072353142,4030443873111094048,18321435672469228585,2814614111802855864],[14265535233567567747,2169752577714320157,11738220580594527113,486648400250316560],[2598533567160923825,1492802831977426443,2426288801517425884,386780708791788308],[12869009608291108887,6090290039398388224,5738066062384596457,1725441883651360552],[12491559816505698310,7859756576441109701,14895406505862962053,2931918777804915151],[15662626367922126968,17810244674751992628,11036241030129481650,1434089276239568845]]},{"leaf_elements":[14735240928641210407,12608747499198002111,4642928312352019599,7634431856988956119,5475763819027330985,6539945136570901880,17889019497027498965,184210942443094152,17444975956180361533,13170912251882803526,11541097912525920333,16866357306155711288,3980210715202559559,3430314987286213020,13138651486625236610,2371484729874828887],"proof":[[3351874724909009035,11717868622997149411,15302198497375369830,960304240252904372],[14711721703624095014,18440824530321704391,4046017826433700842,1236032231875722471],[17800289306509054235,10682354380096152728,275562256689185548,1690433433480492134],[17751198850040091301,15883223324839576293,15144880822275581688,1004106752842303932],[16434240657069264735,11480357466363264813,14267234548891798770,1349536451464086332],[6694393482400992803,9377296027434232341,218594664158465201,2649907960693375389],[772002559898402491,17472642335343753501,5484690018317829634,627070858078387906]]},{"leaf_elements":[5830814031683715740,11058006329376318108,15601867257491024710,10353541744365965061,12885204819861551667,7041622066613008195,10442332493100454569,3383173754296491177,4715300644367887996,14000610411267695084,9416722056787379029,4566244133653094266,8750067520076775321,15371970698808037611,3576073655089744817,12540127057735692909],"proof":[[5110993140968900735,6427708914314604314,13172507593245240792,700461219376529580],[17960074102599957202,17446519498755199449,15192701518082843601,1511720647798143606],[217518400021473653,12326198898289941254,14373323732582149021,2685234189206933142],[14851984780092764014,1641047040120452539,8824922906790340682,3018535465669299193]]},{"leaf_elements":[15944738748606314490,2274005129597262509,6673033953838553594,4782849776554528839,16471427245309607619,3638544443347737602,16900485101718499277,7270002477188713541,1980029502034887834,1890826269618363501,15614164942184560760,16775737583699511213,1065694939228935166,5741681071371454950,9624583362685852590,5349665761988333245],"proof":[[10109734138832900614,1881041950409089259,801683665027458401,2204090125200326105]]},{"leaf_elements":[16580212810250977730,4470259858681618858,8395368088134860335,16307579962635236903],"proof":[]}]},{"witness_query":{"leaf_elements":[7679382762254875438,10556063610211269920,9745197772260532384,13065270675142772818,11637188754256267615,13815369026950218520,8287878257568168740,17646608945601227933,2424832416096924283,7698040494913175364,17363741791751461826,591522865762799405,4171768702256525473,1041104532032716882,9105570007129488276,9228141315923420050,5217132925796176310,9778537382928778323,13202580128633825757,7379089222520131922,6881866102741492246,6958693931260782772,3552442831883541512,2107435872094052278,15768002858555035398,13693051837073396992,16922696986335198203,14987489456686793019,865517295249610795,14268091164429244493,614921124166753369,11933169115780024753,3404006886842267631,911104394132973965,8209572757565597589,2663167562081503993,3428514673391213410,17640168095895350984,2269007567944139027,14673013975055816339,4054947464080103302,8245464020235228263,1602316792873411419,16852591432998250930,10689310191530951670,11864203849808970849,17016403551493304400,15914216683249870891,14090165315281762235,1727908870465736872,976837732068336621,13569268397504417933,7481837840701534839,3598833861422781564,5095729652318116370,3792020622764148276,17511367689865217739,12765178270828852197,14381114610245930389,15039607642106624597,5740190439042109178,13632412743524519412,1617681073679671677,4723461402004689299,5697420909102110566,15899169325982808397,15452432670829738014,4904827405798694295,13521208463253384181,15419186998793157738,14048114375043841969,3548020579507318522,15016523343703723384,7898456359351717977,3704298511760422952,16759925368932905442,12695771156649557402,10306226451339611938,1775726898685756552,13504730833870349563,15971960810658702719,11995970275448543484,14580944261614837233,14964270925855886626,10312765519927174367,18046607778174669128,14216352074851040719,9746548911477713458,18320987887526387206,9099211954122392197,15466257935840852765,11269273708945771849,4431559084208026108,2122787598827182588,15717347257861617033,8365317533818811943,8174887194131702405,18210303984954654617,17229972879185949411,9015296414364844529,3047076715937096610,140268029516337455,4590634406688775297,1772028846660394240,6443180409655641652,7558800433973012279,2898259872955739753,7325770845671122932,11867522685917094098,3364984145189556997,906969883884391135,11130265697559307403,14369159548388882988,15976866212527061137,7542078667546989301,10495199357306133474,12347915656437424146,17044944056252736969,7907144160849186874,9894556868454209907,10245269829771747204,16106057393530000643,1998093880076281349,4009099901512548908,4453918748236367424,2693632920279140587,6250592054422973778,12371860690137165967,14697237167951586183,3342468488256850268,16706586382822146903],"proof":[[14484056700308224709,15073617203510114456,3866048498544894931,580113305006336247],[6625882647483763184,15469969540990439681,13710414397625831965,1924706999434879650],[18353000261096102680,8765709790127985745,8198557736138476120,1121890182824429820],[4327628856899542080,7571140564569435633,14337118619749843233,3409338912189435308],[11015046685451813327,1498204908494884908,7769614802762632153,1325814924496161857],[310864468468289909,15126759911203224972,5038023531799168108,1222432958273449822],[1086898904501110497,8201499778274840285,5498177318828226305,1632354289093994366],[16077659794307081146,1045773331774385111,11976045034498401047,856880332834217393],[13895810054411071029,9619167071048313283,8084381841124534498,1854228066656027406],[11201847132789597723,12595636639423380475,568186034680886954,1108132146533878665],[3451811609405046308,12955494814316407201,12624377448568066404,1181723932403558794],[17671914304407481281,15250981406533444861,14565207026805768862,2760054854315918067],[4882341907511761828,17248529125536155909,3175697314877703332,2970579942529858095]]},"stage_2_query":{"leaf_elements":[3661710880168143182,12682470354428839499,9269327727792970468,9610160961269731406,9318668051377916015,12557272910184070177,4496639517828090242,12134025667036258700,14337726367676566191,9020371025028347307,11746542031377601887,770967376152457092,2150318742322034780,12058675384345583976],"proof":[[2025995077873770270,15626586187443281493,712850049462140066,1590825915950121494],[11781336785744664981,8867877184352567794,7689066595717233932,2697631627921766899],[1453217170912674708,13488441095003447024,17206069936934363552,611999175640647456],[7213726513976890115,12073064322613673090,16917433525155527820,2866413047666152368],[10413623723771805183,16406544752652322599,8920910619619230726,1783345462457552738],[8901023751250724708,1838288308180034315,6891013999815225008,806147351899072211],[765427883932958732,6543180701213451301,18344641508909714983,3181320723758887598],[7164749361749459314,1099788419117905157,11316784975959227229,997923072084790842],[6959783703316506934,10221296278393110760,17875137551298274347,1915419180696247003],[10956917595863260187,47725423125017681,7982073389958467553,1027809880682074048],[12306973922205257953,18134892844992046818,4909846925181999553,514217486188727486],[7440879363638726122,1272187568204886256,11807148749459268623,2757513016743690613],[7193705033799763541,9048181582346268552,11152058647750961664,1742650808604916784]]},"quotient_query":{"leaf_elements":[15810167485075156907,11642066885689055318,11449545903593861125,10181937474759590646,4125290258650579106,7687461562514581226,4074286712538898617,10222322690230853855,7397937741867767727,5735615160386029426,7365963302807346424,15510807284289003096,6837819388914450409,12100700967371173075,10801453376405388247,17439186070387970140],"proof":[[3217447671982885349,6744093139036872291,9370957174423994841,2598336106602772987],[14848325423596103948,8959542363741913161,16303155398417974705,357445194203787244],[14675260247305172128,18198013589963892259,4931969293978977578,3346818492009810114],[13374971737785462181,12476109077987680321,5538268301228137240,701936184378054711],[10017473370807706134,17240964029141835836,5024661006161252003,1639841049476002042],[2508594219093545616,12648231417062082218,16860902730205205963,2307675117568995342],[10005861086127355570,2945390116757194318,6923878625273992217,3352286896812143917],[10839621544304018399,12503576249850488612,597443762507101141,2601354440248605803],[10722074010411622920,1249147544441479569,17542941708666385491,3423957276555954946],[11665641228563514993,5460805232917942395,13483300284211512875,320198936673534311],[17451694591408679228,15229411708894453702,13423381248400178260,2428060335885006254],[10036339106512996484,8017919505745166723,4863977692106479589,2511454411117686761],[117417962886288672,14214076626666423966,6745455965795245453,1238354374129802593]]},"setup_query":{"leaf_elements":[1983917255209327261,5285769086758699454,12000345156465308265,17197146789487702525,6633710861219818824,11742270245220302852,16092188277665701001,8659886529530722231,18322956918335654633,8048781955268694706,12369776614113389580,13983823300582204170,1299995122469614274,754589869030660933,13790900811695970265,16702740770617496255,2984984800237482538,15286677388903129201,1540149301304041424,2963970182571788285,10590409495410595162,3935181672254393893,1157378612439604125,268640768120195690,1821588274658722572,11482101423057666540,16623190742459203403,3075860476379353617,2692714859091179805,9848778445802149141,5637200917648252209,12930197418809255483,17363965816847447869,8285044042079296912,17604209779304388536,5061004126416929056,4014773322397079728,8456266654538501525,14633118906317820545,10812235139163601544,16326676405278390812,4226779337334292837,9282497325924391362,2820535182827250028,11904348238491130786,3108900693424035177,13384626251338364325,14100631152590959705,18169133979740436928,10948480613736374435,3121186950463475170,16449893075817973454,12258288180886509132,1432312470553757738,13963288238414019765,16212017984797002709,246213728339149091,15085463506207590496,14219285219430732094,16127452459184438384,17575375929742801856],"proof":[[972216859937085698,16770303013852474375,2471231959727304669,1245403857774267425],[2454196736143991633,1675933853406693490,16123813894614311248,1789768333489362627],[10017432010452133355,5115126407331326413,4700889609533081701,1593904259993932581],[14903795181915197178,17366196990838637371,107141593326873584,54906148506648574],[6276926877548755062,14086119768194470469,16594372698710369344,640083286382645544],[18163046995104261617,15866804735419799655,15452847346300943536,2435581505199609893],[12562837774625600087,3489686271158252678,15356834592041371058,2634825446204090360],[3617427894285370745,11326662423287198148,16085558352645256845,1530192617022959185],[4350840874500492496,18011876077385780984,6609721101410320944,2015209832986677056],[15544938126635112376,2855697305052997761,11730446877167136,1755256576539074483],[822201642010616353,16601556358609654412,14983251665919113871,1064264031937084851],[14334209393799635469,1475323473228810002,18184008165679810890,1713996275066066032],[2812288052570429747,11192114483378251971,10192533965505786912,2372986316534941658]]},"fri_queries":[{"leaf_elements":[7520098835740101800,10278719598795105367,7121853382485125352,12141076701879642521,3442449278556824807,8467956205883267478,3696819264902302086,12430874432267484030,7263632585212489991,6317381469673125298,5122959038187659220,2090271353792717038,13509525896522620881,15729547366751851370,18365428345930774746,17885354310276702172],"proof":[[10429838830576987084,1055264115807876911,1581960767543255875,199256329905235685],[9978289688726959384,13975439457425714995,12601223601286740399,890024617751658113],[14608971439920111462,11544549816362215881,1170161791325137513,1184577087051390626],[6408664906738686333,4788243557769658723,6275192305030986880,606585269587367451],[11970144788057058595,5743127531678418748,2644815693602078979,742269618636261541],[1245990148489009350,1733441002689171944,2689115015017295390,925299738181023767],[3231904232961211629,9319333604652905006,10481895074231723962,1928264077353597962],[1181378642861328473,1511033868296641097,2833311835469482257,1244195921661519822],[14498309021160317876,4335336406161045620,10269803013955387956,85048028284377013],[8616858090914454618,1663075563175866095,3467139390527938134,649361097648535523]]},{"leaf_elements":[12220592997256386643,17293595954483236385,7752034809405125705,10851230125528265521,6767925300704043401,16589699241793181047,10369170495703664426,15950057455800253657,2628819144976053150,2772472438376957622,1582313327429881142,9068987441493301532,17158384714020148005,1465367927706152349,11093005867540014841,4375801975375025847],"proof":[[5171500822808642092,11858457006155243909,10506291387323157143,318213297285397447],[1087617953807929148,1749266171114328024,6452416738505165632,2820905156032769974],[11476906344696376236,3348800926949200350,7206955281995877207,1387297043404871784],[14721451286642473617,10666934883849771075,5823705559975829969,3265248871011407522],[5752376409291467957,667947035431943061,10476895350076206282,2045674658234997720],[8769980020455982479,10264300124099998582,10055189718779220036,3407096088247693131],[2715489747108002065,5305903886920463068,7746148398384784045,2253146750247811367]]},{"leaf_elements":[11531981849707966840,14695348886464175104,2460326584497313261,10913911483493926533,7861865813663489030,9035997014056657398,14700603411437578869,12231247063912033139,321556680728611998,7792073961460301945,8909637579191763389,11283675337130427775,11971037166466592334,365064750974557868,13193305012113921173,9688118754937464704],"proof":[[13450973342998908723,12780954244954086971,7658707812888809306,3037594873587654497],[2466919783244307316,6235684966589171095,16514339429706847530,538888076790160404],[14523714712956106902,7893188032393412920,6957786632367611107,2913391734713166420],[14590848441063452794,16273615971920084576,17011998151899724188,463497794276927016]]},{"leaf_elements":[6278203763991616066,8078050046665436218,10081382088507432339,2222463645849995902,2969879425453338659,7276527334025712803,5195638262421124803,1423548983605012455,399448597950965084,10609950177358245602,3937540680217941419,2177255647077924033,8319833819507901832,10608342303844245766,7261168177199598481,4461036407361939175],"proof":[[16347249376249566426,14583720912265793793,4350686724955233422,1407886625625018208]]},{"leaf_elements":[2966080012095824694,10472639831135879261,4652833482319589241,5368590808610327190],"proof":[]}]},{"witness_query":{"leaf_elements":[12333122189483789396,5542947836332340700,9812779717402857566,2730029175401212115,35527615216679670,659294584235008375,15234548800952177327,16021811812239030860,18257734821226214956,5630939042780759440,13461484502986424341,17149600549883882897,8307151090080650360,14862927168504928324,435220907617265559,7981985565634222621,1101028049873623141,11210429014804702793,5170564253182318684,17271673313506169853,15028371106868615619,280332727415858437,13399638233962275450,16843387097867394347,3597223228360098183,10934428855917905404,8150584885992719385,1689942749103916650,6585266344931729757,17063784535573142743,17780151987091102339,18246294752873921141,13910508851604209056,9407933615099393710,16359118300036940428,17962673000250395968,14352074900053818941,16844784968381532120,3672064347322358131,13792578961361325723,7674059999511269251,13932429640573559894,16471708177337816522,5391319539706879159,15707159363924242489,15679071010109254845,8484955601364917648,6191842643663811299,12691613857653823435,5476464826019355520,3807035084183592710,7143662099836449021,3914461534814102849,13538516706410987363,7301737357728756526,2580370533757882349,976152309597680875,17754018920579159903,564850115058672890,3164234868120982457,11715729522981197272,15623744734519409391,16440275004395490141,11264098167458727061,887591781494484675,8777021402183182147,4377476961940393175,17085404291993513183,1670067235522467555,5251061279525560788,6173262506814251353,4905296099408719181,12596552020564466516,3056224752615673734,1493678547409924746,4581998988979165567,2118241838393412064,9111075377201303583,13646518807365573167,3800443601805127385,11222421938944939336,3514145268806862879,7933292492482867578,5181547552964787074,10938226900633301005,14108072898165010363,423518347717590861,14676460055096944092,3913656800320589738,1206254627070240726,11888129765557301388,13753347853527357740,4630141436825375207,9352302096930833443,9131206692475366312,5670020626714642802,15471665953951321207,15444436999251080429,12954212803420548318,2569631191764464252,7017407315739400636,7590444964226337742,289670492758369745,3845674392798474267,15901896009504641145,10556675965698591649,17109571091945748224,15479004986132428740,16530153267681389549,12322129722484303789,4180617454618643996,11050894404917942867,17880710303209433676,2087322501786151015,7822265505356124915,2873094355055495901,6325717183539509071,5227890803279849910,17309791036050569516,16874023035594900486,767388623974796911,10694610250934103874,4551504826580513937,12128803134483301527,8709308070194966873,17245751578131960792,778911382651452816,8415392326518258486,5551509111840297856,3277489988391329755,1198301288989774587],"proof":[[1929410550416711066,13631899197697275918,5116405632597919057,824245842211746719],[7417502792986537884,9531798962893186007,11270054515529762514,3108762433559880184],[7929772275763940652,6504319588665951061,4315883697658669749,644313199406745340],[8010707664703315161,6663842491710188616,3208472432129093824,2169923155807071250],[9927427075639106703,6667715248426748075,12792761283349535892,2548161571839861824],[11744592523105274815,3953904780002735897,1133322867965742173,680751201765249935],[7876003688147027155,3725645985659418894,17553019631507369538,3183798890159655955],[10239639345553746666,5869487122015266002,15500562966380087143,228803054229017627],[13138550258331372992,14893528087779969999,16714836530065588061,862045042768758462],[10951653104043587848,7919903444412719083,5162695335858127617,23119395089544772],[9388057809714662536,6881594517039155908,9621280000059624914,3408116750480582021],[5337386146685324083,1759315120300051303,1014203858517702445,2373938672992607667],[10760418131477431642,14820657774701628297,11628914349052808993,2039254384422831665]]},"stage_2_query":{"leaf_elements":[8492658903664143129,12677489378047690409,6136652003076791811,5197464343502937025,4079870915553323046,12566981598569093473,8276916886971200771,18247145586176194680,4242638230793619338,2363609957433095025,13704576765786514128,7275356406934766797,17418511491501289458,6912229660744021297],"proof":[[13288822139342018962,16576777847421905907,9942521187565654975,2944089003793974001],[14957000362305406314,3874593509714952938,2498680343202017574,2582804358792513969],[13984953655549044719,2570815733869693497,16395819666028783502,2263021108696798331],[8267563474831601079,11625348151723946364,12560336202915233016,397274194538487693],[3136803354469829712,10828497187672060123,1431785523950423864,3107843881786249296],[16689772624555613551,5008041377135709283,6932781461721355699,2259664383378524608],[7640956656048553885,8403635443237624158,16383656347291441090,459662687119049360],[3526164484871033574,10222714778840049436,10191399154573189639,2177690883375574134],[5536893132027057841,6192682532865860260,7988068125621997876,1404425105648803296],[18408895195113260190,8769004206195816899,11490392707479511896,2112799591863743477],[2222405210836799482,6953798830797038681,13472779768468229362,2244017304401157106],[10946443397241484112,7632626395748461425,2953818670712640602,466835577787625070],[10265763405734876041,5280836174585384744,1332105447072495082,1288183057809366478]]},"quotient_query":{"leaf_elements":[13092893545126992691,4504695173901388205,13132055045628749629,14316248580234625359,18234928748012540007,2336005471498418652,17350673568352635267,10393119089038164355,14765466436538523355,2650826174287951425,5891197167129895703,9422740934847213180,11254701704451586899,2125952738964001863,17165000885116162044,15037196414134197517],"proof":[[7423547709768247424,15452685769646112938,14153292244776881753,1655396746217602098],[2332499997179058523,9503173752029071281,402276593990406030,1779076328322929857],[5315424011929370453,17442459874700592793,6061313504769894239,2393732401606341197],[11433423966110562869,3807388593208140910,7815924972004829165,18174239642162419],[13078895621284286079,8057230540471309200,9127899844508799454,366928118038189434],[7008476538584705520,3334262730075475472,7673358407111505403,1324118052419445078],[17883750576839358898,6934016764710525300,984291567744841020,1784925206144876485],[12004351778418388077,4697010492969595955,7881199033422781197,1334529771020467769],[3165834478501365173,13494943742204800498,9365776494686569060,1395088187315892830],[14275460733389509382,727630136473663868,3068214610850205613,3149710175450347811],[10676253219800793360,3065231490902574033,9625064857038164035,3481474067564603472],[14698990891311628009,15892561105547541385,6630210176285877232,628055738420819513],[3336220069100085124,5759271110398045898,13618835346520552360,87853750978578886]]},"setup_query":{"leaf_elements":[3679174387034188547,6635908900094953892,9913512123156671562,2003079149100595748,3220335964757720510,9944029131317034628,6810573744923592758,2474899082534218738,12951371858138838351,11244777055143168446,11260102806539785719,15131832067252054265,975440356235274634,9739080198975453374,10280672167619084987,6377011205576497212,13884188973652003534,4976302459228930430,11556129148790312635,9191383738379315940,4256245124647993462,16217601195110451927,10396929455906818010,18153898991360599924,3730605171779030670,6845729690211612998,289689330482625128,8186460130073430752,8054623388591739380,2098887216922763145,17106482474758589873,16926940956107249803,12888561035956626311,1263509229857625280,16912276555989418158,3238613583256996810,9587292157611386299,10925914497898767039,17308451357133095640,3254694076986185431,17088446834273326269,9383800327315080895,16876157114386635067,8712477916670934144,7848684314877168368,15511078994168678161,18367476313152380585,15474158507222912080,1593018634045474770,3695912738582897124,2965956271957116975,11534385191790692031,2047055982099888450,6485464891234052700,15779283594801162293,11552858805274365675,11158834777192249799,936767347402599361,879880123187616360,5093091567538974428,15320592030502719680],"proof":[[5172144164155159287,13854763409825360831,17768797543004320966,1888216630773229226],[910386891249271145,11525773274967446717,17437826241945141114,1451738648029565780],[10239954522956327149,15621254681100037747,6654103891432866211,3374312028951390060],[4789121246699762250,6844045152413891817,13237691751710319604,2339327964607906687],[1981707095850032827,9123186666586442822,3973537398364295975,1112783683764725554],[5452000838153831375,13598102878491549520,8864652452206187588,362706343713548312],[8896428629835170979,13107835961352583805,3941340621454177410,697270259158921410],[9841076032258356833,126079188255781992,4982033767937849762,176024870523422830],[11261659494708642916,4952713328269126389,8906223940340672178,1706364260053030206],[2390011459891806211,3285298630356948080,15789193015670778304,2542725731978842878],[3204993322470177833,6051698634689342142,14629886291271439938,1970813260747825769],[8634214520312302704,5788473018517600736,3895694945095744202,1852559750666780338],[17874738227292005179,6326465745494053,13494069438792348789,1192845911089305290]]},"fri_queries":[{"leaf_elements":[5192500706881009884,3666627404035167231,15123359910653536150,4209430281216538132,7852300294938681524,15034524088785802417,7592056224803382136,6366960442971791164,3724311332473646410,4223493493230209824,6867358781863913293,7390319209912327588,3827273833963975118,10221739122018316604,14824295774074792807,11695096871900771752],"proof":[[4406374216689072176,14368171393879737179,16589759916963348599,3031812959778602391],[13202722794984755506,1180118659431536044,17628950476033966286,3099217666073203921],[15452100555557024825,11984907896208008488,6102040005886110655,3442670655275111733],[877476717893669244,10315068006689379072,163085804975125583,2211265013658280649],[17867825747058058572,1083441972522374226,5538120313443016343,2076637165706049672],[15548907228064586125,13245879855202429388,16732067322266566290,2194362118786187508],[4952831040562207074,6517362100909505655,16174006814181420491,2416180852475674433],[15278104253822765377,444973421875180932,6867578795190594467,1889369406362716708],[8736545542981214870,18091865623238342905,16938045962214512397,1619771569222218445],[4755821502693131307,9632672734832196477,6831801818195575559,1211503718015705569]]},{"leaf_elements":[7474990717223488636,2910427799124280193,16388120447690138270,15579554146344380758,2986622706563226811,7223848547773670653,3518991212579842755,1669508625798474570,13985350847907789375,14270869936918007476,11113767782102441287,14948034477438591757,5118751315079765926,1880127923263043847,16910399527523898155,1631276832051036681],"proof":[[817428331259215481,12272894036330761195,15989614189392520729,3196950180017644621],[12336676220520525764,4668850784600160372,17331121141462859224,2244482748566447947],[14879713037010436626,9996640984512543226,12195441762651172930,462077149151588135],[10800162864120345556,7596200427698308094,17553146207459303591,1946335454589994254],[12631542405088319149,8508646081898105547,12611729228031276884,1437295729419850320],[17748107662216378529,3745547155845768398,10781438857281393381,2132537212408657619],[4968579060289205032,15025470103249155658,4016020820835814409,676707436625885313]]},{"leaf_elements":[13092178898224954836,13121171690169681357,4563839687463904392,2884719900177674209,2018875173937622824,9364799514609993044,2120333816287278172,5771409380339448258,3790608599368895699,5392395979202498885,2044919337182583878,14357494483865510256,14409218015068534053,1409362299784941964,7017790157041022834,3050733522543745861],"proof":[[15096638317328239054,4245079533551746238,1928602671317396739,2694019264028933600],[6330150321326104935,115391163174278785,12091614213860527036,74519276213109023],[16787357039742660708,15074718737644074307,7357274406577523229,2904651230561894869],[6775086337445118645,3836725614252760951,1244274972769235222,3458783429667173983]]},{"leaf_elements":[16760476579281369555,11684430973873978645,3628257208263626274,13264191245930967560,16805239192496903355,15197924325062831366,2446532897786143650,2265791655783868310,12694463806107320464,16750582611044430566,7379235119149631963,8016374353919518273,11399838020256932524,8401772713760710572,16660944741874745508,2593524144018731665],"proof":[[1408739999051503414,17928989256333671698,4393560887102948271,358038974748859422]]},{"leaf_elements":[15915622550061201680,4536541224237163888,16120598048347926193,2661082248244309055],"proof":[]}]},{"witness_query":{"leaf_elements":[15346053497013852738,8863269125766156094,7233514704047142613,2135001378935003795,2956410632957077808,17250678625079629514,13811466556734628000,6562600256285389326,9956372014575548309,255712732780000300,3577412116690952867,3397140641981122195,8866634428906810021,14932710348821071669,3112872219750426104,15365559452510896840,10439299531750742510,3741895324892307768,12344281749115599326,10432534153354745159,15225644214335244530,13105653130444120965,18050867590076032260,12221106254326235266,1642357391675783217,1561633659984398242,15719337777900054757,15386146998046431875,9056644824984585588,11071793166359053002,15564059639187095750,15008319014443196683,7358059364493370982,1014948407715977181,6668379924441770203,13051434017063751456,3914997161930784331,8991968807939145802,14538933216149100752,1813246697052979910,362569534382220033,5162775333590220314,15128930515633116647,8370774036655644010,8080486867583201876,15246921184018635321,5737653504783879117,14883696236909329251,7922646266147014384,13545408768052031013,9575434312861664909,5406756295627595077,14853805792300287641,14847818388870051483,9124506697627417485,9636052627020218709,9282832419613026410,5520290308040033374,17462670092370014545,15631926525115395474,11737478134658108681,2434002842130822666,4446033662891994158,2799983907227462569,1219123514957864629,9419450209141426635,7056711572785882552,8272707177695248430,17794714882470236262,767504424771415456,7769264287408724086,2801172703842776196,17655383228351535036,16604477334620125010,16727083439875493662,15290132420125826,1647424770581491323,16689976033951682822,5755047522476966152,6998341477504919913,6172033530023988198,14963206598229003546,567047557192560314,8214583105120231901,14719444813067394735,8640428630109280029,13362707503774220,17574945268130514118,599962828961376861,18143509797635182878,17121842759933915098,13545660219812057332,15793513938007952389,12572328319492446562,3263301949210631910,9718652261516467180,12894578523867903053,1784117748399869178,993293843893884971,13558751682836847140,8416729725001846620,16221068644943505941,1545159056813026112,17476621416165204619,17534900401738676094,5163496570084443992,15111840696380344213,3779338180934133494,17151840634168489409,3839625203848618335,9453529252544661109,8896426173086900669,11182001457853115620,2332281000928831327,10335492201829709593,11789951677323836994,14752626312212602434,11525789640320442845,14343968945126223347,6465117484258748227,5551514676034245813,5147106185111767873,4710767990824229747,15057847007795186184,3265188829168044864,7622413483158670348,6795154269715631373,4833901181313785999,13283514918929879923,10607165507662021312,2511509936865117439],"proof":[[11117776589964643533,17488014309923840370,13562534603415370501,2322056006549568901],[6908808046276401982,1102354384508555170,1272844089651179409,767343935933068901],[3073598239447296909,1315363985853085851,2910595638583115831,2188115021353290704],[15964688975042750503,10738735974492747850,5531500799420015027,1168529284858060148],[126783938767772017,6249766545830413038,504833088389937217,824036703492953906],[7464673196533247921,4168154864447720444,16300281385238443290,2922568809147096054],[1312036937020716380,3259939815424595917,14816254834053454988,2903718785609729440],[3311188101964372135,14126124594489948727,5262509993807641224,2629674265415474103],[2702720675570331880,7076803046559371647,9555036583998620079,1547707184950759975],[11983607628650377709,7352316250343537026,17716902015107092039,488891433819409835],[7690951596761023,11458922597451823616,8882527569510708970,1266506885877286605],[11415905996941427151,10660302710143654885,2372276255914879287,1679654779518758413],[2402167573558463631,2137105850631415449,4214898604496638014,3277064941376453795]]},"stage_2_query":{"leaf_elements":[15800085756652357811,12772958324113929316,12254790053940049595,5152372493975117194,14712049804042260229,7111529532949187132,5301295179227688009,855390002918442830,16221304110881872126,15607697299059862245,15411194998735797251,6356567717864298562,13871095200927330334,1796319856503077902],"proof":[[16467738559374651027,14989750290282745504,4302400041007136622,2096472086955901509],[12856950691055769683,11516645791782802135,18282070607124066170,1566507834027703944],[13801738799871484,6128759668709906062,15202350847032216196,3078808479370894754],[14860424437569857359,8180819248267355332,4291395336463411437,2844688356278012670],[14469590864910700892,6751225676105699463,9653098678458347813,2710949074783560962],[3659336844960739705,5878730011172754968,10001728293176158939,2454807614818583419],[1202435918512861680,14606442478731184710,15466999085227873211,3285435054481064495],[5096390280501994819,4392377070817049917,7485082897445257716,2326980141679431574],[2906368939126608792,18148812531725172461,908633712253003875,1260393989059351374],[3109333228960940251,7856026674639660990,4328136352532250260,2612544336654324059],[17761375393950071380,6795162970777673619,14375268200983230937,2335790224882885577],[10407363249130410373,16954790918514647387,10609888232113772352,3146799241964272978],[13098703293661233855,188671376608403103,4925193949924778707,496229296521733553]]},"quotient_query":{"leaf_elements":[9785254114342712054,1261084148255323529,11445625596702558364,6340096314473311273,10662759526692736029,14834496503163310566,1930180057910011900,11146232108870353024,5926441074147525525,5319593629390311596,6480171295205043400,8010132189469565928,7374397167912915924,8254414417955199112,6136406590276438063,11563212103214645828],"proof":[[15901181904268633362,4109503920099012733,18232977425538106018,1189862879031136785],[1699202713328764314,3526426339753360928,15647013269261155574,1129730761045439185],[4247446379612409533,1697010825709227503,7953951627843086473,1787794964529418260],[2241372765459465366,10426803445031671778,10944042581072599514,3223371186308408590],[843251529686695600,5548180571119093745,10191313084309474368,3017715262360607554],[5371105199402842254,3596813569539896980,18195601177301103268,2043045830663210871],[1923322011870123423,15010750175121590866,5357228579315558937,1171307190496887195],[14138566072364735327,13555488145352762145,5827494633006015860,2623540049471837534],[2453012214444812664,12559347951707140855,11535067648379349216,1920239645087247370],[7279315271696316725,1624981244850771524,2708461011295415222,2420101634609411864],[17556510744001313675,8683728022009788672,154922456991861702,2883140580046216063],[18115605467734096472,3574051143500497427,3020749458933764493,930824462930490723],[7064726902681906417,8802656868035565002,10106252046860638745,2781091557009897750]]},"setup_query":{"leaf_elements":[11285709282252360028,1347684664187797482,5761313485463330930,3322273084175809949,14447701855152395072,1639737938791023626,229544141462178042,17331887422444777913,2831981148379666051,4716216962195145873,13386601433210219052,16855306700215342852,5771061679533575349,9957763010212447326,560518671870824069,12484476862140619415,43757402974594993,14106298807781461521,11876947927343657344,17305663203735106953,15125529586613076733,14368859525727708058,17291445035780907297,9501627163010987002,18313546386663576581,5517237263356094065,8453601465590921709,342343526146852566,10053370258628895943,11508764377859341977,1005618988427836097,16208075887075363034,5468185876626344508,13642642744518948982,7976098659450532789,17767084701181216599,18345289812240116397,4827900434548490716,13599764926086146830,12325324286417328569,10386713954183850509,14640788221281509799,11177093405491532568,11904441454789271489,11485752069424631809,11344701947374579110,5771840420457426437,16349410926302086358,1785783039550084815,6622714047542552758,169581267395249488,189775858822343314,17412582438808653825,13442679205921816380,3933575187906609044,5056523104968891893,2844004312044475974,15133300037267829582,5471205779286130701,7194923794054172642,11138172605615749691],"proof":[[4272515208564973190,10346068767566030468,12524164378928707956,3203089949494629731],[8045702424698780959,505629283037062136,13920096082351565475,2812763847016190396],[13750133457910846394,13083056599222111628,603954513673882756,3230822688674255858],[11670631755052908947,17497605764571274885,9366250947382371887,3206398445763118209],[7517611235018142406,261014279805436964,1415638207132786868,295205356317329043],[15034960643608288596,2192670825378866464,5596054660932114276,174768255557675730],[9487110337023260411,8269567457389730144,13890741413799000501,3129564668957440673],[8883712635139325113,15002766575057273832,10438038433614062930,2999963452099649562],[5935028654997809328,9558514596462948436,16336026032628243512,1215572339095748740],[13946065930384763924,17122745387154957923,16507256448872316952,682960349349592049],[17793057826571537103,5871641048410822126,135290287805394137,1286187672438399899],[5445559004216073443,1198132081030565079,17435961269386252882,409115357091037829],[5510389358968454592,6342099385859423646,15847287637010183663,1721032798950188614]]},"fri_queries":[{"leaf_elements":[17890639243567903351,15811025165767575640,12689021685310922104,17431242589786500258,14183389603963819912,924632569821346164,14093627653653337924,511708293062656281,18395991050074429463,15681215497639267405,13604190183661626394,17302851116338550478,8529372914638713126,12429274697516821231,6720964780899467212,15246940870591428579],"proof":[[15711842903238028022,12538553101098430888,2051705556569729105,3147076792678186706],[2310486221022099953,17443431131767323464,11318197262500092385,842018521706242897],[9988028768757738297,10560913459270260621,17857251753415892422,1465623475106714579],[13977918002296552381,1093037803408939680,14805987556261617589,2817011570460864409],[1906432958425770986,6063164782357779028,2672343246352986783,3485585581008055404],[18151026162341971873,10594094832116410608,4117696026799955264,2032680751620118745],[2210147654815311115,9755151552001893274,14223104150702538835,2298895887271983715],[1672215460919510228,11678346249895981517,9350507107985831061,1413091040783043124],[13576090322169072468,15773115218858709815,11549256246675271586,1581530864327155504],[11512094953525416513,301201197378265374,4065232932777357782,2702801754939657824]]},{"leaf_elements":[1541723845126899916,11488206329635341170,4535156573313732690,9717887368661501817,1957492231739585017,7110857923562567474,11383809026168903631,2323277322816787947,10714319688655089440,3543044253136833013,9116096663726360243,14553256868726023977,10180152469607391484,12032064266050969370,4344719374951135953,8195274642159070296],"proof":[[8105116858244580182,1656221177914354113,11474974154165601864,1851033562072828640],[14638477491821386280,11840371443357798529,10802281831301563377,1354347873904552172],[6949905826637729590,7916709827382836607,7270114525818431555,1994485638200166893],[3801198160896282892,14987262530264821944,1190694078219642755,788771330793622633],[12057856753089965632,6675875001242647287,137210034102096310,3476837347261188754],[3513926668228552914,15119690949552432682,963605868327422277,1009404848197770467],[6905604683261516761,785630753018559997,8071271293678686283,1371257465431982896]]},{"leaf_elements":[3019165066595823160,13095273563032438663,14425153917644764187,10954552964374299023,1700374471918703143,7069332259798822919,15305914613124902316,15253193862847849416,7579313616619506374,4093472708685020156,18208281309132313573,17224706958808545811,10805387669929938784,426318675414809286,6523771378620617956,807791544580544593],"proof":[[15938629210137001193,9930336941785222766,13471288445967932147,3469837979683864674],[7356971435280096125,6919906741957109976,16542070738234385373,2981048301230491537],[17968893795748583061,18435562828519063323,4801354124354045479,165544965653125324],[1389524551255036162,7115597326301420030,4677436100140046760,2997251062732232682]]},{"leaf_elements":[8766804231547517221,4314020161339189469,526230993367059777,1371290347504725484,9718295733965069127,18006200898151862508,4150610419468893976,14342643557102012012,13624566138619880019,553955421167211366,15268536086186198656,18097336813190350750,4289863886401648441,9987687823700455758,7369310771996817417,6478430192287573656],"proof":[[13748503802770165510,6447469746112887630,5266659250392852870,2048396772139579074]]},{"leaf_elements":[6865243823879750534,264255220950879342,5012916995573505337,7094628130780347210],"proof":[]}]},{"witness_query":{"leaf_elements":[12467691435525775255,12476621318745358482,2971399757750492257,6630752727491426662,287055990639851070,9555583773694534053,4668064156641570193,3655718973834912736,10683818642542580346,11314036742255195816,2167001313424154182,8359700121804649167,2553351116087993695,10889803909185397585,4732771266447811503,13206250328051248841,16885244933966315239,10858673869511515771,10242477091154514886,2605096041861493333,5370184675276100765,1791689728815157900,8647416902942447122,17544613579471259210,1087992792999031046,6354914677482156791,3410867116580880042,6140292333407148018,15355639355576709590,13596405861127676640,4905296161952296450,5878078620793839243,17271368512816339937,7866094372808344450,8086142443020045205,1376299895383895708,8113365468963015933,8541006836081371440,14942118376217273660,4012548515652227400,14831708446168625549,14071655561517593252,13909135146216723815,368451018676648443,1341566109976784950,12978279426936553184,5381332911066766176,10667415826345222758,14526418799327461001,4809993801225006458,6089402465635182300,12604190745853304250,12452421983084895091,15742433264079001362,3222840547297163409,11144660074475991455,4610979806355958367,17015987139946804015,12061654076999445244,6082882664562852616,14509998373871549336,11780495661762853356,6683993544119085919,1490459701400034934,3682423095576632056,1959211251110174506,9248546997089986184,6408254483671905728,11294853470803400781,13353197112722064728,15452915601476512324,14802715250199780387,8778529172594253369,8028006931551589111,6324276309302635411,5978288168786319658,2990452390401618779,823978789288197315,10365690335274516182,7232748171958569951,3492928599500919841,5679365708723729114,12735939605024371880,11820498144450539601,14444436493586079146,11072255983456333517,16346109320884668838,5911396732278193542,69577570204745550,2159301184639952501,4548737565939569575,9587297356985346813,1381206855057639770,8145826360099242587,17859748015393908512,6059560733855700981,12372819174984268663,8303516226829523580,5954846183720873353,6128071111698577115,6066428953767639434,12016406619703844718,982786517685520320,475516916111192594,8131563004875973416,10191211671194451077,11268484003752099708,8391069935248586646,13249980414076077337,11640680288901865544,11904878364139800319,2010545294048225365,4180232137729248396,8308742169409653123,14925913426823328484,6907881623778611242,2059363576264359732,13302225404301177900,14645863950455551456,14335259312770576030,2191143648982482109,9988396842031754206,2335472631660959896,2641763680384852217,15989821546729195444,13539003821162203324,17980858186223902314,16504420485543355081,8760936694307205721,10727728790356910855,1481011132338681226],"proof":[[13397669238495441801,12075232799005708990,12769853196506539122,2286565282530905704],[10395840535555029548,14837692248401899219,14767348252122830549,251329015079790037],[17600505997380817969,3564765083929496019,8162806129830619903,311465486199791565],[2687060308182107019,16396171923903907601,2748351809730201474,756951856495594247],[12339069447679904615,9213896066640712124,7123065194855735729,3161724733015783686],[8517832732985836076,3640382744074351178,16796392559353857199,132962694550140381],[14092795766206161850,16495182119204665383,10852954410018918350,1487384304314697482],[16013235422082209387,466402863454231748,8850864952350938923,736725806591412590],[11522951245599020416,2312544841108416370,15825610310176324801,1210932404184133151],[4704053039071903943,820626443950605277,8962884576541836146,1827069947529563843],[3451811609405046308,12955494814316407201,12624377448568066404,1181723932403558794],[17671914304407481281,15250981406533444861,14565207026805768862,2760054854315918067],[4882341907511761828,17248529125536155909,3175697314877703332,2970579942529858095]]},"stage_2_query":{"leaf_elements":[15566470391184705459,4442226760665492570,7080052883733058549,4866572852355543407,3904484337725471826,10193219075343048845,14381500485881682339,12191973111225503820,1159627837507420289,59481343708142672,8409929198715840677,3956137778115837399,14864217973456551570,7046704725890203577],"proof":[[1938580041312859864,954485156269238026,8603789428713725165,3198006305356844062],[18145949041410291351,1125777828874896407,10719161441673783316,2551926719921477121],[9208885652783577356,6213601899332979340,4717102982777370296,3195618805592873166],[13843087384154165654,17058475780721580464,5381380831347327535,2503629586433539034],[14836833095618222894,9874945373501164516,15029419275100101099,3143142764970412702],[9885869726014368771,13686834087814933749,8942350307599308221,1665829847761102908],[14506948900700100500,4810465070811643563,15774740091360517320,905652621680589176],[14889493505692566052,8232683243145181303,12450006610778359517,674177845823091184],[9529235157376575084,12639008820360667440,6910817947456222138,1100699829410051443],[8093257173613260020,11030253819115852377,7534133989694767698,902794213547130104],[12306973922205257953,18134892844992046818,4909846925181999553,514217486188727486],[7440879363638726122,1272187568204886256,11807148749459268623,2757513016743690613],[7193705033799763541,9048181582346268552,11152058647750961664,1742650808604916784]]},"quotient_query":{"leaf_elements":[11715541082376939109,4785427947791871753,4513679819402579211,11765121197701432388,17038444287545573377,10194889225734041142,17431646703564181442,1968121109780071315,5395063322482912713,3616160632711731761,3037036876754508369,15494927300695837137,17862189988663841864,10118585799275511000,249223075669328773,8832491872232259530],"proof":[[11074024260003894156,16123282783626164925,16976138986411868847,1674334717044204127],[8986016621553259645,10426564334412338905,14100535579115529620,2981436315298318035],[7012679922382429698,5690885929871689182,9835540414068238436,1030454823046666365],[3146896976512823038,6197532582925343946,13006790593063659512,1344651477127557430],[3117270319437377815,2590224606535071273,6055845542174650940,3484397088920723337],[15151760347705401981,17486326993421710081,6601047290932906027,3289686737649391807],[13914392795481085239,2906380843974913903,5162147304138445235,586545343956791731],[12604269867243388439,2549553504672189041,6892906380449938870,322716651933799378],[1339777488830364723,17370862978160072258,13421012144552150788,1237801771660144071],[6433617677093749054,10169252695088108363,12956811980736558685,482492555498447276],[17451694591408679228,15229411708894453702,13423381248400178260,2428060335885006254],[10036339106512996484,8017919505745166723,4863977692106479589,2511454411117686761],[117417962886288672,14214076626666423966,6745455965795245453,1238354374129802593]]},"setup_query":{"leaf_elements":[344692420001368884,7492607131540632034,8257948013198757220,8047027079021827492,13803910403151700886,7632265336585485259,2536075865751646645,11648672170537281424,754548954631715590,17820180377212813545,3072944055324723716,2534473739772183710,2085622283604625824,11393381965831765251,5812873261263242579,14840973098349293788,9227112637176663220,9552258341387287763,17637923781559005337,3422417809391663660,13333139124733697639,3647468124683624190,14190979028215941305,9555677671886835966,1737765290311363783,17197419382629410548,12148203042050076264,4283722492505416307,16655184484108007684,8855627615450092131,16149288553927578280,16671606255647239744,2638107051052749717,4561208154088393085,2647432709626951113,1833688766883832321,10497156971927137771,2666754842495419182,13470901466445422151,12076120655113644811,9922177438246328384,16933231394279210559,9628722714216543255,408050752339896991,9523099887036050521,13982462149255376426,9714813395899404367,15992282904696619548,16391407959810280861,8681092985477424638,11022506430903821199,277869443551687539,15952331632792898632,6893694292430048589,11513016763926483306,17511960280747396185,14877686735513922693,2433844682136441043,15957421598894713166,8034890539952741767,11406076511589545989],"proof":[[17604334196147511468,11516951541788305836,3849966231838546114,1536252348181713641],[1133124906183321463,9603146949859819018,8313897272647245205,1137407403688009210],[6425034220152468561,17564682975554556235,11412543979545689371,2466319148659769002],[7339846053571779188,9969975343132714890,8434145332060623144,3121602265206780335],[16697857425406747065,2452814026853671055,15034079264294028941,3387618800984314068],[9530506633435845510,2894556150693524401,13945487373016336616,1533123568275235583],[8625006335721004017,17701549014294800473,4590451143010800360,1560130186163747947],[1911815669472529911,4279521638996446834,12409061294593052488,1783420249759046776],[9063121663294140035,3395379298759875067,13076121161501390867,2748703590746106811],[5186651174829940338,5450565772055814622,4518524670176053074,1083398875337883640],[822201642010616353,16601556358609654412,14983251665919113871,1064264031937084851],[14334209393799635469,1475323473228810002,18184008165679810890,1713996275066066032],[2812288052570429747,11192114483378251971,10192533965505786912,2372986316534941658]]},"fri_queries":[{"leaf_elements":[2392987528550613325,17939857701999044142,12873023048821108839,17314908330595620341,2392101300755201570,17126468521039850710,6384958440597848910,12616127704018276688,2230469494747307513,8550845359871315044,17755324032570574540,2519104522164524939,13859966881651180437,15301840736557296768,3947356189978114829,3893224956100447858],"proof":[[11280925668216355506,734308454033926547,17883380391536858183,1964163812730784871],[10883903318915224070,16996104457966559975,13525462928873805130,2362221175935581067],[5060229525501284106,10279667764116299206,4980689923664689647,1969513744021464682],[10629764709890748768,11315387245912635920,12559399055878974249,3470538790071115108],[10045837467172319538,1911875193229486276,8229491650694377363,2190295329869156647],[3645906702503721206,15735577321776558926,1613893408418734849,1193433823862580063],[15945460522938287791,14692657355686160865,2770370044066862462,3214460137461050300],[1181378642861328473,1511033868296641097,2833311835469482257,1244195921661519822],[14498309021160317876,4335336406161045620,10269803013955387956,85048028284377013],[8616858090914454618,1663075563175866095,3467139390527938134,649361097648535523]]},{"leaf_elements":[7409569235627817213,11092853596628359201,16652960727914767560,2783241007663350339,6749873186514001908,7509570859237233122,5614929564098229681,17415326913720920504,17589487971188676567,5707125141078309979,7415656458241626336,8600623064494317679,4991029240259959564,15264147968995031097,11763557949365541085,18062150852615206352],"proof":[[8213383058746667233,2096162301080105753,9621543680884845272,3252198915055697791],[10701411359061100813,12975162305953384847,437128377654732728,2658603495049860555],[2554445331030411458,7453871052700824545,16439700159787683744,273463037902786512],[9842454499822875836,142106953811037998,4110503788048730452,858470670367287372],[5752376409291467957,667947035431943061,10476895350076206282,2045674658234997720],[8769980020455982479,10264300124099998582,10055189718779220036,3407096088247693131],[2715489747108002065,5305903886920463068,7746148398384784045,2253146750247811367]]},{"leaf_elements":[12827893241671878388,8235942690334217299,14777211708281394421,13426354428492628119,14256946422823268512,1855741559743143909,477749849174681864,7645409670655463279,12680168918836608406,12703984115287695843,13665669862860572312,2792585961915718835,15814395791280513745,13730401134196543033,3321596669379423432,1527635260253571651],"proof":[[13329999757020310457,16149474285897739737,7265603506755726220,143901432017735492],[2466919783244307316,6235684966589171095,16514339429706847530,538888076790160404],[14523714712956106902,7893188032393412920,6957786632367611107,2913391734713166420],[14590848441063452794,16273615971920084576,17011998151899724188,463497794276927016]]},{"leaf_elements":[6278203763991616066,8078050046665436218,10081382088507432339,2222463645849995902,2969879425453338659,7276527334025712803,5195638262421124803,1423548983605012455,399448597950965084,10609950177358245602,3937540680217941419,2177255647077924033,8319833819507901832,10608342303844245766,7261168177199598481,4461036407361939175],"proof":[[16347249376249566426,14583720912265793793,4350686724955233422,1407886625625018208]]},{"leaf_elements":[2966080012095824694,10472639831135879261,4652833482319589241,5368590808610327190],"proof":[]}]},{"witness_query":{"leaf_elements":[13147523419460049019,23311168919126677,16463443001930233346,14050160791100877892,8835689253158280809,12596821854063663231,670815457475244356,6454619743896235902,3937151574793030420,18132223479341982291,14358694588661629403,18407616440202366185,9462265681108873230,10771748738197623087,1410509198549833333,10102584973494851580,3941462942085616073,12098600750424757986,18169308703411575807,11138342052798747587,9219753038760272855,10612694247289899792,5036408730555019000,3312397418274342561,15039196551989135431,13521095822367002977,5497217254416174071,18376580679765247683,11043213540041410674,4425655706552181179,13201333035804248216,11179039620272501174,17316866216220276022,12088110425428911203,8726898737958841656,2758273398423900256,14886679937563281782,11226141573054967470,6259557442143441907,14354275909291427694,14586470055057159108,4125635446112969557,4519397472366126798,11839937221590646185,15660240958208971959,13125309753406623392,2723032435194407967,1045823394883243665,10443783333827874999,5561741036996902148,10093465684213560180,14867892949578348562,17092157471141094863,16476819113539244603,12410997007011346752,5782819402901993517,6520653546870730889,4902482818937629130,9251520023978927608,7831742292425573471,17427242929287553876,11479683143736366527,3259888464259252796,2448770630297298295,13719371660921409787,8989110956619133951,3663023556144571464,4500708866766347447,6484214886968064445,10625851683515368063,5224615404445095862,15065921422859684742,6614640503286906884,13442659213376433752,11872457269056957570,10372259257173855106,17520065047665108331,12887696569391472238,14449267319903632871,13392926147547620250,6913803718128056390,1977169560105215105,2651122267797115844,2724333279060152487,6542831685487180579,16812185913814743096,4026723035609666436,1034573962547178558,2639707609715119361,8744651380218232375,7126575782155210051,3325392561175720774,16991540038261810538,4828855777140182831,5523204254103049237,16723004816261138442,4361816210538388982,11954483886204395620,16883026353852114398,17740090991590757352,386629200286986440,11361334690779855209,17211655524095226687,11612889883110525697,18026760225211125558,8992796687024545321,7253529581720189119,15876234017267614790,6946049875762367371,10678694659561752284,289052244427064040,5814655809011611255,2390068087071912484,13325368209314100629,5629689275843859227,14454820369790271526,13277552965756907055,14319048872266855937,6824542417328094180,16636571613788862684,14480826684100666140,14709953843076529093,5738407961973176261,10930306817687374100,16728099150045561558,2556887685890757487,7138911333154401040,9116394823983831627,14784737206271163788,15248321727633216872,15668433742133260509],"proof":[[15937773056438871764,14079583647622596515,4841444144660138888,2840322401389044838],[11425913739942348752,3974511494346500776,17708406296318220734,1323679452504114594],[343694632719600200,6392382837124089215,4029716365849008442,3257418620094546882],[310614350034367092,9475093033123149555,2186608069505486270,3239558910582048222],[9809561547955246148,9983542693331590898,9978081841276083729,1712972180275487575],[9518438687497213235,8103665350933904694,16386793265962468953,2348328082717094094],[1747270563178215328,3143319401336715722,7099481390908865166,1020395189797517274],[13298451859968953245,8758676502645176523,3915146447991670353,1596467244368166608],[4829086690355400996,5958990850533270350,3677572876392162503,2261358819639150542],[3140279070706501915,4078218573849803731,15130969812479510640,2629247039101873382],[4470573511364538295,3072401176796498953,16201908554622770280,2788031219243177258],[8425516942936181230,483034393298231671,10477473390075102732,150189516499498482],[2402167573558463631,2137105850631415449,4214898604496638014,3277064941376453795]]},"stage_2_query":{"leaf_elements":[16865367687343217423,12409083437457577224,9516224056741658917,17436161530373813156,6944786253140356017,9520016990185623310,7581944854836327434,4916829560003237374,5551826571466275767,4606284051621228082,2103257833490452531,8482806095065352661,4467846039534117673,13557732382093583597],"proof":[[8145030084669225386,16993337258496349084,7803034689424140172,1457360888268617391],[2301286803543718576,13607669363691748159,7057934103939107178,1953972944027417697],[11986836273869629152,18165565413525437421,9019073427840066341,2556575623833191698],[7174161697971445789,5527137959234949957,3232833478298655761,1901732527304254530],[11672352248515203167,7682275009124944681,10253929940230036842,1445361917637480776],[16277424713662625778,1352674905560055726,14494249286001805380,486802226530029216],[18160594305618128661,14728935349170180064,12514929318247900034,367399597394383906],[6537130901265295283,16485063720762150364,13823169674010708268,2631769435256404356],[4859248762256803829,9584343984602993891,1987540772204714605,2098963894906190508],[7031515034786319741,18275132255742271382,4323677802722786521,654301555566673801],[6799894136363316477,15151782857945782652,18411117048748230506,1898708911910688086],[745666826706744259,17567446146397159290,17029694275521485389,27260608986812560],[13098703293661233855,188671376608403103,4925193949924778707,496229296521733553]]},"quotient_query":{"leaf_elements":[8071983920800777309,758095193053083045,7169921891357992935,8917485298631239851,14785909186135483121,779469414356988677,8591052158266163139,5581974001777227986,8342592077005823372,18030250414066101294,14612125652341960163,10818255133408315749,2076210983678752822,5765653504136703141,565553373892280786,152175554687944918],"proof":[[532416335538558144,17536352945950629972,5063356639523845406,1412421209920949686],[12215826345310357836,16521906082244165712,8339466444210997644,435618054866758079],[13870717143842996689,3682533719895005951,5556913753892683921,2621993743363235267],[7298165705025405581,12723961350317363997,8974912598601097617,3203788593530189722],[9650793842393890918,6165578675097666124,7267281840800999812,2217707175666589079],[16931000801251833902,6052509604245528889,11968488165785330371,1556672677063880322],[10903435829209587983,8956446871989644359,13659308161436375625,2398062273416001619],[9346759857334410035,17357879698505902408,12716885971271276232,3235671482609092241],[7419082044657024225,4510174949114636386,9995911549610556160,740084141018955692],[4321723759391095940,5383714445900943082,12924114311805099977,1959800114989123529],[18248813950090284891,15264769847501014554,16470925086369571060,1641734585999141467],[6483723199069637619,10922280988596920056,15638188869268327681,524906435665901280],[7064726902681906417,8802656868035565002,10106252046860638745,2781091557009897750]]},"setup_query":{"leaf_elements":[13780356109675786986,12975113501305142114,913335293252397784,14011060590877426828,14194305188187631508,14958856883757562400,12897098140715176526,2354605745002321668,17702679229205975409,5002701882917450297,5241166917824147274,6409222915107830559,10310650137144470834,147552982597486470,14471993069029173748,6890583592295170478,4931822012112753395,2259234157201488888,960572411223526430,1934195294403299529,3383146101636382294,5216202842907722569,13630668338622494572,16630136475467735482,8015571075657493448,15545842428515564458,4047931579547470827,12128134130686665704,2591309062263837756,5510400568892977004,17054657345344489639,3040119846158358151,17116374513178460987,13838166515900007172,10578440031150921080,1114627350632606259,7278276491554090803,7722009309549136079,16002948821398728841,13613710533850860300,16252182699661471966,17936394355478792942,2090621449182668686,5652311521299486408,12406887644407410482,14977890123548069895,1238255244595693045,16008012979739464834,11550415728927081380,356340974188237113,174504406739336208,12327353713411380107,2724759127286113942,2793044470897842693,10480127236947896517,709124363879304789,4714022286146532432,1086475195268048792,16747358474064877282,12291282719847052234,17483186049855412340],"proof":[[8151122552891661260,17970890769692360623,16437712203829900391,2175936430666160289],[17899225497033609767,14838881026822714589,3881950077457093194,1857221262842661336],[14538476422751779859,475923934177606731,16506614498766794482,1203742249589429518],[6819455283546442508,4177579837198529193,4807436263519348507,2552694276539514297],[4695662747957922060,17097951157710595103,9034450228484610061,2865084511945626904],[18280492342235439469,5655752789397339448,17296446819445722798,1053401606864585662],[17781090622886655784,948669538971273933,11705126096938247333,3444018051906673690],[1432881727127110960,15345576146065276842,452774187341208890,2841848704248745791],[9837277652016128890,1813434351550800808,18064557743896674895,2554336843557045670],[3137825612869565015,16190956652448818454,13814802841207229689,2727700156159039890],[14211253461318336953,14698553904440713876,1215335496790964480,3214092473229563681],[2319840627421732396,11880222938202960862,6462039118647357450,396343187455400076],[5510389358968454592,6342099385859423646,15847287637010183663,1721032798950188614]]},"fri_queries":[{"leaf_elements":[11132821523775981997,10062302253586642026,15708443357647972139,7335558055685359582,11433054216432450802,3202572890056184765,623442761536022151,5057092582045921628,968286527558009969,13958634655135382776,17493585260288284625,1309807794977947513,15883412727839236354,235159256517941177,4220823523746577800,3366958132756985156],"proof":[[16432945161875066624,5011333032354116447,15276041346919428460,381829477803512954],[15073551259154354648,5702890225957295179,9883997555975941861,649480079750540682],[6537257624729719083,10082067332431634411,9984240860145404040,1197366791836183625],[2932413117697364288,2539022990246264701,4707418089172622562,2191718811874383429],[11268650306520981872,822957727287946688,11389419539557084728,1558209520736845273],[14880453339761676419,6303383025418016265,12352442150375740021,2210075666515788345],[2619500987714521286,11482010577440727850,8410370375611017021,1364049326102807099],[14810850173207459937,2116454594748557248,230163200410766595,1641052023191719386],[15449742020830670463,2504111050166408295,6502440755783385744,2746750322419423511],[11512094953525416513,301201197378265374,4065232932777357782,2702801754939657824]]},{"leaf_elements":[15153100985228493408,14905350214289553170,902689133325621331,13106770401205820010,10548203388718182739,5631226971291496536,4368583201056672465,1906223980146206391,16691927880260361520,12583145723696337313,7899590774398371467,7164465056247216164,5419260403645748392,10858167653914846352,7302614057661440653,15876271216906965425],"proof":[[1904783563588208131,1162898314847537619,13267163592595629995,1311127455408813200],[2392141390304054594,11467022385129410741,15142332774791175337,245636142514410844],[7783768723070173024,11781420793876232060,16791622723489075159,44122111287453055],[1132848919924385043,14056526644500741775,6332784331118603800,2332792059641125617],[10191315401445696412,6280994496960481888,6251536364121698284,187367878256504162],[4690438310709256034,8652297081282077156,9367045947916506578,1164431050711913661],[6905604683261516761,785630753018559997,8071271293678686283,1371257465431982896]]},{"leaf_elements":[15549396044150810935,4377449947370068005,13788924562444469111,17902790492450737797,14596478425670398602,5656777946315898163,16447723180772387181,13465267525287585420,10147321902506868296,1196706565521110128,1798941292919754308,949685843388830599,3564976715598543520,5097215988352073899,14057553010599484721,11669462938921547717],"proof":[[12941068349182194076,3594824413437589077,10459936716266878396,2338368559615314095],[2697009025509228754,11000852118224199768,15389405589811843678,1770937907911177182],[10890060001537195700,13057372539207777287,17410616761313584025,588520907784414304],[1389524551255036162,7115597326301420030,4677436100140046760,2997251062732232682]]},{"leaf_elements":[8766804231547517221,4314020161339189469,526230993367059777,1371290347504725484,9718295733965069127,18006200898151862508,4150610419468893976,14342643557102012012,13624566138619880019,553955421167211366,15268536086186198656,18097336813190350750,4289863886401648441,9987687823700455758,7369310771996817417,6478430192287573656],"proof":[[13748503802770165510,6447469746112887630,5266659250392852870,2048396772139579074]]},{"leaf_elements":[6865243823879750534,264255220950879342,5012916995573505337,7094628130780347210],"proof":[]}]},{"witness_query":{"leaf_elements":[11948795710264375955,3579972359226832183,8536711601574309381,11396829051685123078,16952896974736752037,4812067023169352570,752137558755471761,10084960256663509835,2544750230458809155,17030651141629010623,14279814900408777125,2045317724438886490,6941441122062687621,16834404791832950995,15936326321371307779,1329410647863596500,7727519106571359668,17105886540561019822,14353595911971258176,10713749166959871379,16750870551519249184,11323464595555265601,834845291311153654,17529180241175587439,37848275059131677,18105663000759888816,4393873288488342091,3947621141477337836,5799050532406529507,4401451964912879503,2393899212721697554,11969769752241608791,4433635556526512125,12474067865023777236,1796334476796406826,12427974951280116751,9184674791025121397,1939787536911140975,7776282856808946117,10953028547075317785,4624625171157010660,8680298032529616209,10283785126883384243,1280898109036960772,14147670060461597513,5297624234194698205,11321143869167180287,16696438873603057900,13749401227833466920,15835460497571671337,3565102563089184722,15574142811337068417,11477996794931765834,12083671708967381374,3252689138429560628,13540031273572513223,11217001327991968539,9037141442767471077,4167661026166268435,15283164909420815520,14531025245956542721,8776115548046335055,8859055840084181636,12381786712538831544,3434126407083357024,7193450252638156393,18395789363135852426,7999516356386080843,10275684614336317770,13806736820695529455,2302350665630335882,13103426674578149310,13195379945687255954,10887709560799869005,13407209527852098370,10352194363026426169,13038599802795065660,5180910592622355210,11772544321268490080,14730426422217250088,16763453130020049098,4036830757664011040,7353575774814667341,7369097360190511078,16727069799353205451,2861920738879633079,17252053550106222090,10715932931918828114,3219323047427609726,7823313357974793447,16796372289272392201,12423584609180124312,15379435781773213580,134486740851710209,1485507674877020542,4618599570982800077,11735816578617590836,7843387119214334584,6211977022205361547,3935757660625493349,7474648453258992144,4762578523091358717,1271477897694462433,6083698776546104610,13634780373534588991,18393193002704725586,13579048256376560477,13957606179332349716,17493094982263522769,8663141994412089904,7282306780829774321,1563180342260108747,9332793408626379650,12843891907403264952,10835097388363274399,19777796151783993,3000136436195076083,7073744392544836758,8441458936004030459,2630130599048821497,2416727113278575964,12751883671089468955,5625413016645574770,11838182331542754612,10954355068839399879,18272997824062609226,12631306951804659139,7428505078978945213,11149821451768023381,6327508690927457581,14515729450842505361],"proof":[[10554659508671778649,3569879561146348851,2623102594771511313,2199507477741425514],[13374087441215736910,17920513061902029090,2531204468149018093,216389700490800985],[6615341234702182028,9791943736305547849,13137968285055742591,2467731851776422880],[9603036439868910141,4598306675817751940,3143808107535269908,3442704851343000251],[8176179294327968920,2933940122091421385,16755453167672504240,2380887341492756658],[17140186722172320504,9317579894634382266,3096285794062678376,2110828512695423886],[14055757009204859914,4737595654705366171,17449717446217913387,2037498423728019081],[7061904308973836850,5636894431559730080,5330257904007396198,1718349596010735736],[7150863009503969572,1204505448702042210,15651957073007012091,235018674792616253],[12074134137501755981,16299228162971215472,8115585412613276480,717261193191659743],[8182014679444923342,16445826551207987290,17013822517979645025,2656714516067615980],[6902291296385525908,6282427285539483573,1059247308760891000,1681441560494504270],[18265673367752908138,2754640070048023901,11724482278947537297,1725637765201767315]]},"stage_2_query":{"leaf_elements":[18280009013508119638,16467590438846971293,8060230084683838439,12710864283649870740,16227875809967901430,13390647711142671433,2655004526135771958,16791319757306977452,11466646892680517283,9576817100127526579,739400022542534316,13559303926608930368,5882155795018058174,17574861964033823578],"proof":[[8859287737477806861,9844682376306615927,119476763743396730,1886925092232090086],[943937782278166030,4259752835772241679,5032728382915577606,3290392282727907950],[6332378566786974686,9118474372335905726,4361268773226772851,875097267182184941],[1132085936305677001,2696146792986145696,4989887274096532267,2126119154860762241],[16920399981787442539,17626586397547740771,15292983802183743424,2281973351911042208],[4266831146031759935,12542423050082426748,10945700689640780177,3083207207112374420],[14187957889119098088,7681103484547388231,15613736954228619111,733823455672501024],[15638473760976791030,6954496999646427829,11498669177228386068,984593981875874345],[10258136441597804082,13038055152395310458,10056821565562679030,2612210956946026845],[11808796866521203003,11207404278376310701,3721232178035827594,564698731802217865],[6442970993011095046,16767343503915309638,15639864749420030818,378850544348321779],[13986678099248396499,763132589384391927,9776001136007254836,1152105376275273830],[11814671747401227134,14051467977723724755,11743029036639551575,3058315192689072958]]},"quotient_query":{"leaf_elements":[8265407751709832254,12296715845791742259,13670472454793571793,7641483485934747242,8742559451732788619,17528219422631035628,7131202490045574161,17222732473806114304,8915934786128424296,17478353321914378993,5840707644096178088,10929213252143016092,16735111816798388607,18162818324827994866,6406717822799112869,15830288299443881608],"proof":[[4967577392751128547,10231120923999071985,2920288187933826456,958807157317245791],[3092394109658711809,533194440803307039,2107713047296641498,281917863637075782],[559436666174139517,17992402307799369495,14085846431638618078,1973882349774879321],[13550452749842863058,9796967015639244127,5629053876381955083,638345255365464904],[13746150254545166815,15140374587070621509,3667595646034042726,743544085393785822],[13589156500723121971,6442717902188720845,10611670445803161354,538358515115667240],[15473455648144377650,4252996537459122264,14782827260532056552,2939415269244089094],[6352249808613789468,53754944102007352,2478300398864278931,696724686821481561],[14767227779805144849,523980339935641819,4916097963648211856,1699271712100775424],[1673228963995879266,6412421679271202550,17345905633693911519,1453735194706700661],[11218010515171313392,101745210632366747,17231656761344841354,3308126040096115441],[1142141420400307793,11479452402825870557,17088604191880103896,762895272704649451],[3504417128630898722,13418354669506357867,4877712583074407316,51888638990079231]]},"setup_query":{"leaf_elements":[16747052227524051105,12870503493232299897,7387220514673987351,1339333837602199481,16747918328338546696,12987524862862206296,7458184540077493719,16561956463250066316,7681491435899188220,5236884676411369852,8143334029580469066,13058047349709851670,6210651816470022307,1259607409855661529,3571654737126349132,17815818436527183103,12599248445261486557,7682359343352202390,18176536621467437726,4791971110248363939,15868368691154763902,15423037147980089460,7642077975305740149,8293057035620600566,9949842387765063022,10921241653581493327,7557182855315120528,11744231115835753088,5984135213929303501,17202975187523845910,3285733334806358128,5316891125243765785,3245697059015649060,8083182424157831820,10445069711594022011,13572469799958737371,10491333743773195049,9079500663331008595,15585367930935648103,8073870201697034053,9267910660633483394,6375683406729213489,11176089878825257988,3813976916188635840,16597814978461411597,6299174222607142499,17869074988840795169,2460699796722598779,13071802783172978008,3935188194871212364,5279902447986189562,13660219308385664673,16032255680562315511,17226528245240393823,9026174948625806070,8868506835612959507,4834681182567607502,18162475110619560865,17383086281176264106,16481554970874116092,6921655115418354927],"proof":[[17020888769200384246,6342289120486297637,2282033168318114611,1109450360645096053],[3913569535061780345,14779248366466509392,7332546830268806066,292953922607843272],[579772160864529171,4852821184334431198,4201029223297409239,1953555181573085614],[4254964960699300228,3756083058429470723,17175277677537909926,2570973651596630618],[14824668216646963762,7820528152655483340,2819609188775595586,671404713276198141],[2609647830242647286,10649370127312789791,795721718637389357,1141836006990541302],[5574920143586176230,15516872148987706507,607523082096478731,3212669687190729760],[14717008524679147372,4650951541322338538,5773722309021551,1428899433806618441],[6434930348788884492,11398719568328309163,10493250540552169876,2699222612433752275],[9161858143714012692,14583841292042326625,7505752205083140831,3223826884155486379],[12936042570630472179,1310901294642854077,1974545396587028508,9396074164269318],[14626434129209657568,3704788492558821904,11586933725645472561,2183731847757492550],[16340894896221363037,10515488107363041749,8989735385112029763,2859595575457666712]]},"fri_queries":[{"leaf_elements":[8953210716521508742,13430643931864996402,9186008392111375344,271640789856598445,5995511245948303339,18025877909858361663,16306711897541346531,11706973127133663203,7231821491795531882,7888736550478092763,11385391423263547112,8610557821550912546,10054511550871260390,9589186668815366176,14554183551471723688,7251978104182782834],"proof":[[6545876977560049987,6324325623585059653,18421782886204428654,1336775510558370743],[1784279041911295338,6893990376610786087,14657258225746427440,2894307102108440182],[538422128960354073,5079659609558248009,1601371199634404579,1511162614920031178],[6360940289710848672,13959020359172562063,7734307203992874219,72457029483636045],[2939633391558907317,14596408551291345863,170188067083817089,1591644173987587796],[11959305332501688504,15141526033257603834,7456321919182154890,2580728452360402841],[6380864619414380636,16167847419220614059,14037915157061739524,309969490492929172],[10992314003799372557,17322716724534720083,15751576483304408144,1646111252671489369],[999846444995399222,14011138294935011139,6667964318074757587,867213260052525034],[13614949841622580336,9399492980024187335,15638599896098024049,1538027079629728594]]},{"leaf_elements":[11530333504239215645,1751366369809449551,8781810676880441574,17898744044518770217,5068123437852440080,5767189567059560148,11212307793995376907,8176805808070644216,11400983458819192016,4448425662802430695,11211522929998577173,2774223502593013931,6955805867371182938,2912552641121283820,17877098378778789567,3452134661020584941],"proof":[[16046424079505256161,16717425652690287279,4028470104283444491,3042689486287658667],[12975326195471338756,8925853549187645950,4063408808751826092,433831207167069807],[11142964206601506757,17493852466301855203,17753202963181992484,1533192299295367021],[7772034170709087401,7904938873317950700,7550180933320659345,1472476815663134744],[14619780283819901678,12281755326726147473,319442712941351599,1558941547028822906],[1389768311319449007,14236537471961652686,3349081074204103601,2876773415225488148],[16707445333894112763,15652176173117182806,12717696149262687733,373930509062837472]]},{"leaf_elements":[4522531214427608807,2708895458228607768,14378655018498255086,3701004547392321150,15598906413480729310,5769931387414445109,5837999110613815764,3203528792294961933,13933396286397715199,10145643743243072268,18342763054078240104,15109249409918197141,2868717040574798996,15005633071425220544,9769550803238356021,16923072860317850832],"proof":[[1946900366549917852,17640196811033354600,5063518774281691521,2709440878538215044],[9638837243345328524,3548442352561019961,7552415862605738816,2591611983958661810],[2598732342918378786,5317963112505505860,8244752469313706919,950042062237983842],[1395445178162007610,11626158447455766250,18397044548169564307,2769656745606904775]]},{"leaf_elements":[9036089175381653959,2987875599192350377,7744707005118505168,5188089847094658525,13129935381927018420,3730150788540291038,8209729877721515470,17090538519922816154,9607968513778767361,15071132642506767584,7320125160743097689,4991892819851375059,10068909456476243812,14089867269071297833,15389351978943733972,3387928692605495898],"proof":[[12726638950376879646,639506612650757720,16912813671638057237,2919186756859426224]]},{"leaf_elements":[11506617648987991818,868082017674053972,6543021463611153452,11748771781491803820],"proof":[]}]},{"witness_query":{"leaf_elements":[13609445363672058865,9004000194728633488,9203190777616095306,5704151393958158684,13943071071313722973,516743361292693548,3522504134721135699,4330944302187500132,13110847250708054574,7425353087918929045,12990866878127035602,2151608528275539982,8748923711574586652,10668207835487511735,1523162534263904122,1218838723199413915,10808296954813393957,5687162473186451363,15209327970045065292,3951675673976805969,4908979908125287679,10274111459522471573,11504543762447288998,12449268394547657329,6162693352507398177,14413044192394147004,11581473165461705958,3155140515343760889,6276872120420081115,14688735611343963444,16620684949622073505,5588116089686305708,15699046164467573109,1923293440709439310,12311039017435866928,5383743772589957981,13494849223355563038,7225400992675380322,3956398665452109996,10538442769746976106,17013309398513202077,9547844172949669132,17962357870602496870,4973584233154871277,16014552364114606318,18324774294366523165,14844219196149240939,6019631490886836202,9416740548632323975,11285924044795049209,2166517775118112441,1228775463662094079,5703876632194132248,11657101798873218654,8099208127820823309,13499009157560832315,17457998127427206917,4248127420777576871,5142048344565896224,11338359845416697358,18283139880576438418,1980917715988395958,7351923662374593944,11671827686272062766,6340716764714084563,8820642644959699338,11569225906387690027,75315836347278008,11734462541188999113,16687779773465276438,13300676586325204708,1163646708904801580,1681812354070235948,8052395991962424189,13574789296237346839,16912571277780360286,17926927983601401311,12274663569708932811,8939850250294622223,14550984782596874225,16315268369790642435,16824694024440912936,8915551679931455151,13256960044151068521,8351992504063123923,18409350461967529477,10457043864918643311,7211679929234810587,11646063321070674059,14232350912811472075,16686263507037135390,8056363826536589674,10110623296824470645,17868758050231466850,6979190633374858371,14222988737992856210,12136090534955419122,12753665460362974466,1261238335654171349,9385207785693882673,1946805415264958900,7151847749346379461,18386749168922381274,1763011014335081578,7755320670047220648,16615136399969194594,14650786121190967786,1704424089306468353,11504677410476435218,9243396988346474418,14773128140521429636,774572183526346242,3585531237397015297,8104441237692277113,15224131874756537337,17457865195481416231,12167355988012729570,9814302068127561377,11139928175443923754,9472134390289198151,347071090272136776,8637235336394504464,9915197968072456538,4595071055829837790,3405639937074862558,16521576917728237542,6887642607954641134,17095871925285995419,4869434994002218253,4636140026373734638,7966416483752363717],"proof":[[1225688189026503549,8596884912250507941,5552230861248882140,374533704338334324],[14181459216776320188,13311692323378015327,6319888519519164080,1060043678868322034],[17259328171483111412,12315794921078233439,9142976098950004903,155400903858192156],[14515024104360711076,15046871677288354633,7212815095997619531,2718610444514085636],[6343340543938177797,1346809772731274307,14694273686939833760,1285178120703155845],[10846291898719997885,18120623939563648130,16763356527051280811,307281961404908203],[16384246222156383579,10631303849445819822,2064151195487627239,2699416229289726027],[7987407125754238671,15551694315394481998,10021619234004249548,2813174103834777815],[10279441134453647248,3225073937357662560,3960785182366609467,1379599797725456201],[2497971760758312965,6941215204086950283,2542074989584813641,2224767224879212028],[9529653253922139009,5282909414936017816,6161231114367956174,899405009548116716],[9653994095741149648,6693767989202592068,12384719871825976520,1147806512135128414],[14367620299360517077,3486062918649683097,758936314403206639,1603949708714258502]]},"stage_2_query":{"leaf_elements":[9083429207727951986,6686421633399160323,18293844454763530889,8483912038460331146,15266331531059204992,5371280448545886469,1192853545225990342,9390291193498123406,17803131910017342709,13542450720973917935,4529691724312955013,3130199654590855049,13581443293629676985,8833226072186190360],"proof":[[6034114375601680956,9698927623196739707,8852575493445420971,784195498101162586],[1626579736915843771,7060344006413099212,15544015096109843037,3174070312188257951],[14244742990839596573,11283776100249779030,2799135921444820417,2882713677914872668],[12389888586017365025,8145497029132810469,17698895731931732117,3215804019530496451],[2172855385536301407,12045189171047024471,1506099275893602544,2712768184820846857],[671158704972388957,17292776861394781052,8644653171866220581,3000083257489024057],[6045883898447726006,11822990785674317386,7385067520396736330,2381408147705553132],[12646260384349554022,4011993110502875278,446597308965330218,1638270342800571886],[10138896492306920536,4267193470827960145,5743714634372069362,2005093267637534173],[1770352352544555214,11503347561982608092,4967334841455303620,1881066244197976384],[5830900046758375023,15604014666533198478,3708889240989816115,577453142693312212],[11586254663808444089,9649978829832228512,2456767594798906555,2922524290208600819],[9302781254238343662,6119432163943488281,15090348966859265029,530198869118147718]]},"quotient_query":{"leaf_elements":[3676198479521639100,3218396378745322504,16198051468241260058,12598701070981975157,1292139625395755264,11897496968982380134,15679579860020113661,17355603486353203769,2128441636504681836,14860215740787472593,13964186033657593217,14355701217251943746,12439387304594169630,17281505513718197170,12813781450641474637,9993499324587015109],"proof":[[5756478946986725118,1052668720155137944,15451377503015982132,2241552816998635411],[10933561021048947813,12806903953969785580,11878379809640065882,1948755542293338808],[7147743203456391344,8486308561172142238,15227844469507035973,186022230370174975],[15845301973963794348,13890796863322776221,9636054203030181071,422717864229023998],[11764461991183093693,11013239324103336137,576318096872214745,1614964345462808907],[7132744645587727370,5203774010503966966,15132833356544549044,1626627432396720774],[4358052595228720781,8624465166383960948,10305725361909701823,3349242269044271159],[14403185115857649701,7372634461268699265,244434204854312400,2604902742872593804],[4540786855679701672,5422112622451914833,5685316574463970743,1190117837935105102],[2228005610798993496,2004724919195437665,14380929959310661678,1689511098488711356],[3567423335356629639,4411325966704188513,4268360902456184506,478658816986403953],[9173486775257139146,10137054949619224047,13924502850789890943,2822498744591213857],[8815952717605006386,4526522413909831776,14701097622325747530,3485165681977640036]]},"setup_query":{"leaf_elements":[15377337040864929377,6856847601147466964,17128308400437006829,14158611396822916182,16282794400160370416,7270371054811524792,2525131608047386118,3548075438542246338,2279790174304430185,8220151542218378422,12538694279908947782,1173826758511439009,14668441215311292145,18174026878262530682,924316457313747080,4369586636286330983,13638194858655035712,655882206293094578,3976174283193334524,3663557392574043513,8596693720384034752,18356948399564277144,11299756743551110280,2833583976580694254,7211677531670892135,9962442022104397805,6840098126822209883,5295908684519848272,10337119492839838052,17771882894095402129,4862035831875903549,1392621135705096818,14463835865887966650,17505001254708488827,2608049222825119491,100486700978007380,18321611346027550013,14899524465515442027,15682614167149768187,12273491384175497063,9765510506496749663,8113429426867211647,2963672124475784526,16449687295235955288,8711258994833886181,14119455702971143010,2357076761304754389,15577144749276496409,5369703884216727837,2669984008219415268,6868993635426302844,2375438983292015016,14531630306215598125,14875658994700365441,5917030201440408747,9905939539741454678,9114109983355034853,14177450029027642450,16622800381761502637,1002794210325826495,2533291707800199686],"proof":[[10302643081314597765,9014842997188822693,12179748895698952538,80707225326598667],[712654472999723702,9320130616043818293,6790043660115723930,1622926617377518303],[10403097884755916339,15686591120435062258,6336378395282532700,1457247642936875295],[11169334405674907084,14226943977424223932,2923426254348574602,2287222921881951074],[2069411292007468391,1741782692745125535,5496652329595839227,2110350203367401289],[17440757370267286274,9542972311375798417,16006171171768105736,708345329836378570],[17272399708287917285,16722497636434276504,11702461736567250978,2145610117747562020],[5053075542815791262,544790488003267972,6829939782065395412,1461751306701986392],[3400554617365919751,16519018606249882725,11756946234401004162,2279041505962364654],[9425367909661232718,16212916946172534455,11653542791948258347,1200020914090831840],[8897054833573090181,1053001915298800933,5632870258241756242,526235879397439495],[15200607824454873355,11040607145831835802,4383506428310207721,2767645816861274925],[15649328145457671106,549776313160692971,9928450923310963291,2751020716435042226]]},"fri_queries":[{"leaf_elements":[6181750473293269095,14894875479305564372,17645677149446644138,934081697891498507,3429790227546833910,9867975405586468804,8630728581583380963,13152149945578256278,3160413206389792062,1021842979186779246,5677592337848365206,1818613269275235459,1786315513655476764,14245415459278266930,13952226087056789264,15512258641624442969],"proof":[[811137936080113958,2186355955277390988,1613550594902251600,3424771173218413999],[7125162390246100689,16520341220538785482,7195605656993273108,1348501386223720556],[5502044875509087392,5542936917094114031,9101115753879716193,562779576613339683],[2745480676937364504,14925595917447314297,13674409487407000457,1479656902561694379],[5740410112755126766,1903757309147221639,7896260668526701584,11165980192738518],[15686790371055531565,6946454947760485889,7868064144702226772,50034450653217654],[295476054630260715,2630830757687727646,13488267475738836353,1226401965370485671],[4703718381639210305,12636191310739263230,3062071949666723777,3154517507701705152],[7385017009064519880,2637096054591857111,11922713896890014705,3084456035366891821],[18274227798351134084,14614972872318737132,13670777970563782359,2498334094624877115]]},{"leaf_elements":[1247437131519566648,5577832315081708883,4784669823468438200,17570693216835477501,9177115701836767086,17355615263171291619,8710109902447031143,10339112350006010127,2130139978358051700,3306318597656897294,18211027383887527403,6895070617996846474,9618785017791604678,17932362345426124384,3744574055042659299,15367808790258796099],"proof":[[8990557699678572383,13613345054748425557,9881952303528673150,3322472895231301278],[14507020966043414452,5779893411036489515,13245415405741977606,2618049691245294351],[13591393288879762381,4493691537977151089,5960445238358474400,3401943635529491189],[4275122454678480340,1662959997101223502,14781032076294262171,2202924470800566547],[7853223832743604015,18371017161360746611,12006668819789881266,1595732005214836354],[2740910005191995843,6716625060797660464,11518524057840860956,278856238073149708],[3864735070791189707,8330668194952393004,13164775125511877827,177041749183560687]]},{"leaf_elements":[2167546782365224427,12972500962488132878,10060384729038741461,965079689529559409,17185003784188946805,4114501435647959198,7340445652922898361,5626372596246656973,7217929690013938425,1117583472920906711,3508602984700796914,912924360294464995,12217761841714912930,14528486953412149277,14359975623516507265,12595374255463602235],"proof":[[7895962028324653724,3725676821329781357,15688631988854298891,3257510923188662860],[16251869741933535828,18422115813315679345,10222120882620913618,2647976828729845650],[11832554300978104202,14261403502407546042,14520703700616912472,468790055090309713],[15036230558710107040,11921162934449550531,16484118682594038981,2366781330473308508]]},{"leaf_elements":[1161939574018876374,8351817840696965648,18372653301453144055,1094858428888221872,17891497325732335182,6378736636084565709,2312548455298580963,11108539684721161071,646629569524013389,4395291750589940087,12400931690617795476,7655909668271100330,16676308543461110775,6945943938750155993,13376778799557250354,2903074057851475984],"proof":[[5616782601955618559,11536326776059504369,7332699799654596753,2141932960124082581]]},{"leaf_elements":[11506617648987991818,868082017674053972,6543021463611153452,11748771781491803820],"proof":[]}]},{"witness_query":{"leaf_elements":[7469752215233654574,17834740599865758764,14347226749229049243,12880433748217527071,1738735970169606598,14563784745051577497,2286536152186918569,14460699020721935159,7580943384782148226,13840945333365316862,9606749402380420287,13640354217980011803,15216802349832998812,15627811622321593861,2928820583553411653,14277476300549518261,8766449320661475720,9225519960330709821,6922175953179715837,9878690395073304819,5943422640495934177,7199741031484795359,5711564914377883519,1254592124505412410,13292951200259330726,6002568952460468529,3318932850324359917,5007680049221520589,3502648265178710332,10024476664996690502,4262572008876228033,5678410033169229336,1423950701393836136,16513099284402528972,378479404086589430,6734870010597185100,2187669501726751639,4415748919683634134,10897872495943958347,15419514357464568140,272667006752038356,7315223950791607314,2226263503345542780,18387775329009178565,14619300509960752326,2185368985892156931,1358426817693427290,15830993817921172075,4233745479740976462,1093286104243634570,12542847849284845366,560896718168510821,3132359466131531551,14023088663811093640,7578064235176902675,11781255280495815845,5375595860517915991,9287013554547842391,15836146185825462537,14347858439391649786,9496076266940250726,14357514942193984549,538763610096190356,6945027195112634478,1391756693644376141,3036380042089783189,15256742394942888214,12714457391770210538,718598720494325470,17716920649783082953,17244859700701791966,13429260773619767260,14790174337497812598,18252149204813312440,1710850862679355053,2650071210350936910,15808930557231062753,11472041748978538401,11777630659500255464,2481188753854769817,3275736526586068086,7975125631965826046,8490032484910595709,4019679985622960412,16099803215583857440,14282469282656472100,6406948414684461792,4061293705144832124,6278281589629263245,7760713530936395994,1013772222407532322,14357472372360142735,5092722140221447527,12626427217527079654,6660412633265747300,8376210762644632856,7450830859861081969,1030493021412352733,2675678002596499448,4536671327598420600,6763934832343566010,1653765618623087959,997727020402837884,9078573969455809644,4495892297830812507,11347031718341893843,7905515838737354471,11416812138314142067,18366486212697928881,3464893742106647243,5041117812917251374,17840814924079187338,18369675610703237001,1679539639791934238,17817247243019691606,8633191446361046291,12673869746983615607,13299726698257336457,8804472955632465434,4369033040508413847,18364380442345744821,210150733326245682,2523475618864020300,10196218294889254970,11879598382659782062,13830036784629764894,15829083760381641815,9026003364524373060,16465683643777364207,8646243617317788247,7338962262221554238],"proof":[[5392252111131433322,8995869437923621968,7306624904915295643,2318842668576416869],[6495898403711041617,18201549853802370027,3522461428307852241,392675762324335301],[15519182354414244821,4011007131432979893,12657745410961422139,2100204668001897282],[9160906082585450193,14934771310710968294,6808736922980491113,2227243618176552977],[16293797718216876966,12122276356798073171,2384369915371659410,476219887693452598],[18354290578464389715,10831918275454095794,5961255201484691069,3357929147899233392],[407403712093217850,5406792335175341195,14239633460425858934,596163028847181035],[5494716650503425380,8767534754545342573,7992635780232882537,3152457197191263819],[364258889916979472,827696495252320629,7839194783004057550,2161346481293142557],[17677366805921569011,12046422182053282218,8537053646158915002,238479154052576922],[14821677025821634855,12678566443032613173,18428198543260742288,866632219690740546],[3373605446307076353,12141411619945472228,9451450480592638058,485523100920767396],[6248880740263255263,2723122843674386514,16580961043761809285,1164311999391324090]]},"stage_2_query":{"leaf_elements":[67800883350363546,2137328305590470037,9860686601438671193,8384435162418605039,7548011489452619825,8983480842005816775,17277308294330593076,16734829888521877690,5081120364968917499,2005927974598503467,9592394261537259628,12165921373938363637,3852863217057164038,4060640808676946620],"proof":[[7255057163402053238,15344466295277928398,8010336369658492726,3081624969406011147],[6941076079758220787,705032027879267575,15782361409967448722,2770478373654474923],[708025622074196575,12722686116482252735,2644566954012939783,3221104641603436186],[9587537370094004467,7431398717865920517,1501168698188928387,2651396503773855669],[9969918584432710508,1618219624995309009,13327199422138701548,612259581242234752],[9706268780595254805,16130498624848580509,13337125622104896233,909417844101691826],[4454612189803976650,13123890562960435110,5898997438889459718,1608339813416682925],[12594640220544053237,1156768145777532230,15013981586165387952,263214468939355570],[14018826584308327133,11116661523792770601,59879344678105149,963140684177054219],[18228027439090359205,8800860030082764691,13374118243446597220,2529658712834039816],[11436475788057167556,16390444142263400920,76822122693605925,1085789007539480658],[17332954140750592222,10294786215967534177,5921744226753787275,1049539317754457214],[8563593989446047328,8164499793278811445,14204177022024955620,1981295651367553005]]},"quotient_query":{"leaf_elements":[14456303746342687365,10648037396387769662,6978627296740213273,4554554724015782226,6297054717069140894,9521991828400381800,4174189852131697738,11178609835693513887,2878960719783256688,837267366912057135,16072952575190657015,16567326951987880386,2583964272939045688,3077913036749217617,14025020037337191272,7353856486211988894],"proof":[[2506822217718063143,9152472917571620475,8409319086226979034,2224003601505929036],[18219253466903526311,14341200332459368209,14285440521774337145,1599169663540007910],[11912163055057770642,7675433461153645229,9251444770932821040,1800553888519101225],[18164600108862242745,16861401802341795980,17952147666747028856,1840686458045241000],[3596508889608964290,595822521703316187,16979056484737632100,552542585823958327],[7691350746105015438,14338849910825181072,7306050230414781853,1464785913387152014],[6767304703807130404,1864160373733273135,9160167266966438236,2763186315623351161],[14666595403704884749,12086617277725381025,8195476187699608819,1036146677129636963],[12243323317059650509,15495327079374339557,817632647931523023,2609407296211945329],[15552257540972297703,14803442557659497036,424164484485863958,3004148151854141989],[2687059980117537085,7924346243614277178,17285817370875823544,2302383843929577187],[755844430678329277,8599556420845964652,6680122281970827173,1296966116141781999],[14309839409676856343,9713738310784912288,7331134436690285112,971820748569824165]]},"setup_query":{"leaf_elements":[14902217536131640203,788666884859728014,1215547451922050370,2051163210588336288,8763761117880341550,3940312820048385006,12640901157765103665,17558936289235187952,6911289436979064779,8115636904569662332,1891907168300685852,9501549157046754559,17004435387780015310,4983108637165111229,16917138850191204148,14072784014201455105,6895633789459489308,1814660230196368951,3507715899235269446,5652256526616915187,13039572399643053126,2059779286456966097,14051196002738182586,15444253135583316999,17193619669279692074,12830473548557934566,5801040122955490594,2892058411196773434,2559461075692207854,10581473495256190081,10245602703501410910,11971631238631207827,17550587711245320652,15950371491373026066,10566587757491071140,10663726193531697959,4404705780367307219,3810557428537921917,4205855613413273246,2117549662867207419,9831338409627275787,15195743294965878723,16128974132170860755,8761295104464668775,4105310806656869976,14674478946085102156,5659137669277464957,6586110352017698313,11245103011629548079,9306752717749760245,3440318432057495963,17471459813847025731,8174061484357354357,4500748388345790327,7095514997435892163,14323774948008342917,4390671800457705697,14418751643267841561,16889932549092120831,17559750472908013668,3503445863674719967],"proof":[[10054261480805314322,1853879456161700335,6376349503445604161,1347897175299661493],[12958831615886461904,15273733817830938419,13167710325679047325,160044020906763733],[7119562155097739279,12444336164874924008,17791694339726168077,3085199985310493155],[4968843798543503568,6447264107745985830,7606840894474517005,185908843510338850],[13029445661035717682,17662689417102108033,10522361716169539621,1381778863725460146],[2682240208423183383,17100544346162840728,1687281972403886599,2489153063976250562],[5441787669484276335,16744926366778688610,9520338148478811606,3033669494709605099],[7793714524700783307,3268302654115481764,6411291063932951108,2620164684475004112],[10854473530224478540,2756852741911553527,2194813350792443863,1395469893813960787],[5213729582619592531,10795999448260192557,11660958328734716866,1859206544292259322],[18405049454917086573,14576648186879307123,15034690018957840330,1899751093143473928],[16551305571259784718,2018895054339524142,14470706386993702810,2054295203925096555],[10395317326975225441,6407801005412337338,10434117868465609087,2082187945290833166]]},"fri_queries":[{"leaf_elements":[7852326892621591146,8409737247167635962,57319012141639428,4086258421484168111,3659307556975909507,5073697508241518848,6982593246856089561,15731301305400341966,11407152701782398089,10917378266071916481,13159806842808285536,12876087587546790909,8704128598734495691,2962415519895347747,8509360639314911641,12963178816951901343],"proof":[[16924532538595046948,1589772296039037727,12937115754933249618,1229956109533930237],[13116881499157781191,7307281988373794832,3884746151975447427,260359108996889424],[10676071769963355542,3627625207910605845,17491969217122139181,285680302011081879],[461361017658010235,9500649204222363249,12173180651709489571,1775866261024923259],[9515343970794583425,6117709230878967072,11225159618064185926,1084070859585343239],[4140772267370476715,3543327731260586269,363322136091766667,2973244704731008154],[4168670514550649876,2020314204749884476,14272199545402345482,916792397282283268],[15637098858350978993,10451866894874032897,7236855799260821183,2868931267341681703],[3927744458549941298,3496128964211743010,16192519430312263805,3274559130776179415],[18131198280540285608,12581310562695097525,9196147599945810214,462009875683355533]]},{"leaf_elements":[13383392954386856358,12355591765578142465,9496284468992008057,1577663837140726389,1057750305418881642,6837207861185861675,2050523773048504537,7792187003501348674,5246626772525888761,12217341222574406698,14125048593059685757,140729257124342487,11587391766366201045,5849559526425643,1861918178559227106,707465782520136599],"proof":[[16347168695060316901,11799221609114043731,227645574933561099,188189684487999517],[13182296572629618092,9239431762628356511,9278028794352541539,1126824930578079647],[11465891446883698778,1618105043981160347,12822795911012242413,683541259422695612],[18379869965507177349,17196574187034164860,8785864030021707335,962615482803317601],[2440134031042957037,16887529202809299088,6741216325153862881,3459135968753911545],[17942502096034518156,16859436221861128819,1952217781406608491,2242621810152801951],[17099306107583130662,12848433781283675920,10136925567309470195,522643541969499478]]},{"leaf_elements":[16690014629847877210,7287951047495699982,17665454195277337117,17666558965150158127,7875813784344663254,1994599825534812174,14246148622283798058,1731564080210221100,7642256739323182550,10682854129282991548,12432134430989777455,5887791163196053305,5429980759607000938,12093278519029258328,2160195302834755717,15788413545726116040],"proof":[[17496052659133593606,12264356912561324979,4601662404996576460,2551876205772580673],[8413961427930482341,1121254669388356250,17296780279592351278,678698294986152038],[6375818986139564146,7254514347935865059,2420570388057316336,3151813934365162123],[17998516154849033443,12765003108734775304,3277043473406281168,1097192453493713991]]},{"leaf_elements":[6669658827104917344,4074685166664785434,9790115576362344338,2899208765474075180,3813964448471056927,10280782794637071024,11313220144895867410,2004159888459006034,2740320980919109436,14466055620107982586,7683642816942705918,4974564548964633479,15543691003783197066,73854648871467976,14457452735536113234,4188696714651533998],"proof":[[9848510709615912413,8366658415164351761,14144261372479424433,3413452159001191959]]},{"leaf_elements":[7296409731632184274,426054755240503357,8507719345572846816,17585008801542160155],"proof":[]}]},{"witness_query":{"leaf_elements":[16221721178664366970,13989122789978796867,13351682947768188127,16808551445181156734,4285064866625434225,5276917630368769412,203750107199292828,6741179546108782702,13284497628833489697,14496482610893062853,14886148047239315566,17299752439612218093,2962758864011485399,886338094738487477,9906050283410674040,17637511352593194528,7236233885798181732,12773021224993665627,877386877291842816,1467421315795887831,11340421636313639921,563119764299212700,15937771700286289458,9855671063606934124,6883393991461338526,5913228377337910596,13917042036805033538,14654257292746176316,1907300045196019425,12258001025974436204,10250002180105691094,2924767350500086707,7393576953850291469,1654397600115527893,9291417031524936772,15128051346760404657,4050645556064481011,6892438293049589272,6718293296542878208,13506416380818668744,27047968166373984,10125165438557719889,10325306627496554041,11847045269682560945,12363984574356068638,8125836489661426919,8558278368239969126,353485507033369577,12283241600079080956,4835921025420966008,1282041441377082986,15436340281884202350,17878214373644333470,9696299985070575544,12804249109050604822,1585312918664487210,9782488569521514456,2252637781844010993,12245821302764625831,16695857573286478894,2984603802479824390,15325225616001113895,4473419839464563279,11490963593145778192,15958013989308975318,8366287218329093834,6231941921876662814,13122648998991203267,11674122822272347744,10131443914542818758,11167052706267038798,16834011543749311096,1751061619357549036,4881769907521943877,13614788769756851420,10168510927716011476,10730407358584343073,15161129141175992556,10946108982641316846,7726730612847596608,6037316272037155235,5205289652073958875,12075248269731656795,1554598960039418791,14933993482045123331,13836464322100512472,564123119374898691,5165805800110701415,2566758825699786810,4566532721258921116,871044404389255080,915237985139820338,249411932749805536,4716361449230637057,17103610856765585894,6170279767388749607,7503448666216181973,10471937536998715088,3623861790749304814,2821176103381538239,1075801812187219733,11790255810860248367,18296298103917088900,2560422677144509764,4434577416805712035,14108263841146250467,8935337388294917310,18234273177335219970,3118826300535852887,12124922448205817384,10147620032722740958,14120204983857981693,5441074862591426290,232390271739001643,1647426812662702041,8565339683282957687,10260531393302891626,13638051509754428249,15902463279872613310,6407627353228690456,17830939337821768447,6725901034015272516,11757617946622332076,17845081029619103426,9711811157617794141,10974496940516250700,1817634609104201536,2892884685380541314,5053407044019780100,2787495739885667702,1691191345361519975],"proof":[[362031388581292014,12233838645401472519,17635845293079517116,1815120180882007968],[10552184296933008420,4966240921573557731,16339811292872795534,79182347281545909],[10556772973209881385,11812968537529833871,1361705464538603909,2259123702106015324],[17697445639550302514,11137340001116980064,10576396031799368190,2458901369798617644],[10665326810986840536,2757094445071759156,901048881605906907,1618543926549807782],[16418408292341990858,1000227384116415897,9242640654496607781,1199762964333561945],[15323906464114246939,9619065874742677287,15242371657539967664,1188186215707578682],[11535394326501113172,17008668753096369165,10625814454121437273,912006301171033742],[388883530297836833,1166146812163848413,10938177701117269052,2801440855367457126],[2252339037165760102,5966437402453409697,8092220380170511975,1120773937089136766],[1127030895586069538,694780759772484591,3687000931591563247,2750936864721522891],[5142135479214200327,8993737624634604378,5176462942667777740,525546059952794244],[4835930027315713455,14567191116503688260,9793062311750296446,2116148360242737249]]},"stage_2_query":{"leaf_elements":[12686177918477478895,9654681491811872109,9551764201565513628,7666270721112060820,3406334241833008900,10405588202092694091,14989522152444918826,3467603600220127627,13995072244515250488,17958081758769363830,10711324271788328610,5990604342533467549,17464626206442164729,7151507976061458735],"proof":[[8803027857079078591,14842429107552651924,12511434139057620124,677340245467054751],[1176919003309481042,11093974052157511099,10377441904371824296,2092324944841200173],[17459299018120198412,15922024554910122307,7571540435316781491,398883880436586434],[10393648237166379669,16099330459075550675,4274324062162924345,3031850054925340093],[6967927862372824890,15745919164672924098,12277410046798848529,2828363679500296854],[9241773783003353957,17162286021437742471,12287658230023517112,2505968813171505268],[16192743331420801756,16853099623822253248,4500949460661869295,427523159909760180],[15585307975185240439,10645421230436165629,9542668404047539530,2410388635889841734],[14108155453108918936,17768478179091243388,17677048954565280289,2491273503427794453],[306986072590255386,736170251667370346,5833842388505069483,3175110833536678460],[5431947802106662554,5443354384023227846,13897831674897138335,1596310562825674992],[13174836754061613523,2244801622794592706,2243592228159740092,3224233877026474973],[8400976163326016007,13459382111531745039,16189427956558551098,1917620776118434428]]},"quotient_query":{"leaf_elements":[15539341829760149260,5070538483359292704,10739172477460710888,3975248068699790615,11299568778594849102,17684955844615082967,9470679597746632413,15416801158951990148,1376446039843026679,12299376012373091436,12380015726041113055,6922270663149478623,7321984613422441921,1057638767027923979,10477359871124793304,12198958967737654898],"proof":[[9456659638386461407,10459804739950027468,4118258715336110527,3135027834408520792],[7989804177315535656,14160467106884891656,8646245262129291496,2512257392046146533],[5671250522994910665,15860451557005433745,15690743948704764470,2141240063002154394],[8633722987978111441,3657267095159696937,1576872460306535016,3212573535192863545],[9647748802488501153,9141606840556642016,9800999515371633394,2342574377652335744],[4957702768070759140,14097941451773030863,3473978284971358035,172893707022022776],[15997433120551377070,10972232126841400648,5904236753397513191,2453763533391185647],[2327639692908028998,13057650817947852413,1719208798220399402,2526188301216941217],[5425951749466856899,14508624385588496846,8024834083118233060,2580061400401503299],[8356830417145955711,9534602605795708827,10204078793677780453,1188305220769711507],[2157695038304941352,11191783211948267574,16678180536735649302,2113735272830865899],[12727463944066686440,15031778029241626609,1474235568906382933,1585885662917994428],[8560803622457089329,6576268329716751604,17480918290423520249,2783826331117575223]]},"setup_query":{"leaf_elements":[2055134557313161544,965357918958940251,3735327071672470463,12644184263503038969,1221350972148134971,7765405654249943814,5472874845763232549,11984180433617229103,2618800215481601815,9403772028149348994,8848249450230491581,12365632164738717054,9672609103653700452,4218309073687432868,4390398802628145265,17319072030845930851,1989673410952332739,6306983634174509597,4935975783169606544,2835961606091606370,16663798842440931446,10342434974769565339,15383326174698104647,6422833046025420657,10106065759651384256,2632272024255513919,897965808618989837,15844552397154315837,10568088440744857079,6774164707400721906,8808645360344605874,14377772861527623658,7717325487228938498,7039778657782223924,15927192703565385139,8355379604111178344,1977507356839558509,11810268917641074359,3671733676362715058,14734988772515418102,5529845729669907197,10291416720305679659,4343909343255340406,10014085808789597339,14432843770424241323,1164567855972365211,10456101877468708880,14918148604444517033,285236530568143626,15510936059029277638,4783774060606597899,14830299851201917097,17741535243814157688,14405983026824511256,8697872666590223349,11497163867377302654,12535456775325011286,14137880779988043006,1641915275659904765,6380219381329450360,17060884823961737882],"proof":[[17208962143061205865,14348780283112921417,11844472883286089902,2997626664388225036],[16951277476228874297,9831532517795792128,15208180506366356058,3003594910105433980],[12629889643537433729,15890047805688943641,17012480289715161552,1160273029000526754],[3168595092008639006,15838658109289260137,6755863860443619165,1630406725820087492],[8448406091151735189,4880151297973279039,10706618153362883767,3475356124827148107],[12937790747914626552,11728870585990571639,9630601499355831260,1733496685472324275],[16771403596047220549,1380347137182014405,18211691055079521038,404541225141835953],[2714156101248815368,4852826042704527885,578746972754335125,242072900226017574],[17861491712169111639,14486851144629482817,70317164938166219,2478259083062352822],[9178614914299510232,703880190692736801,10715466778585138132,926299619382688535],[736051928442084714,13996136793561635304,16064150511766965841,1622030257075208925],[12569192502573143015,16626706419100452938,89526480532839450,1151220156167419616],[13233111940330375337,3721613951002169723,13215477271364309671,463369196759619265]]},"fri_queries":[{"leaf_elements":[18214502874438579876,7696302486700219291,12800354207470834506,1463799994301308999,1722257608046149030,16989312530868493558,2722248555517965251,12984819205301281374,789483289643447767,12313279881780019617,1951626583096616240,8601715069428378620,11387180138865846928,17474436810334474449,16878410227080847297,15076645321099247724],"proof":[[9527088389042543718,1170521241781254548,8835038283948576269,786255883503742252],[14574783515459114368,14651222494923844816,17238615123932287897,904362599935953004],[7037758321051720112,9999480988483978061,3212794505013441721,704821670732092456],[7154726537181071484,2866121777207443486,438771501433567663,3357731442610815605],[16606785679027778584,8608068982801941231,11604133878995604520,1953409844535838518],[9668973662797533341,17008671945333907157,13011134964728200566,339675791014902061],[2773384782288598880,18014997815818311444,6604108646907801362,2244999675674992892],[2945639535046352386,18040994403281453872,5996673420161924372,2821830344895488563],[4804235064255669216,14729952626711900118,17533787292596999691,1688029707652464723],[10293913151203782939,17276720635789980012,10145594858043310023,3455109967926550842]]},{"leaf_elements":[2228900834281716229,1299549190204654587,9006865616199779017,14228404441233766456,12929065521212336520,14299758915935582515,16168647894681347525,971012716067556375,1384234821846101455,4502067422962884971,6587604784764740208,4407234884591606677,1537070333044138384,12707478726357704962,15005362655075721356,9407124680955709137],"proof":[[4182976749845098317,1727124410915355476,9133308911947156078,2207952676689896345],[625650313468136740,546715585006836960,16609571025960701184,3322005179135568740],[11168978340572580790,11612030342488860850,16177125614093008464,2131479750789903495],[8310248125072317605,4043618984646884373,3992279181772451218,3482627284703626172],[14708966990010504020,4452105162794639184,226325883480207383,1404688822222607006],[5473885783605311085,4026771276107960446,4742656884502189251,2192188515716722929],[7407740297327449151,1602759275088930253,1080223580461385578,3082418193151690999]]},{"leaf_elements":[16830736489035123973,2100621626496328942,11449750340129115054,8433611836233024086,6388975388185370857,15576933765194661476,225656297721650540,2921233064941678249,12671330555576495253,14697492231472457732,51115461127253171,17647807930666116374,17095594050960443002,3522074783838344,7577080264799679379,14189229942982532212],"proof":[[13835981104362840035,11270682153572237710,8650110278885517205,3262536527438020932],[14690733459800600196,6625699307920514996,11949566284692742831,1050059442516129033],[4800217489573654783,3149554734942641022,18307580925378185476,95013896439469199],[12700299161953849936,17896603572231004330,16616459751671690607,786280160165782906]]},{"leaf_elements":[3303258396085125681,7334765928689504730,14735023820760202469,9619724676555854682,17674259656641861264,11577514084267056637,2440871980048415777,4361546825864617734,17764661275648454126,14367408337706981883,3009606633506689442,9303345605953149770,3068930268487580864,16855781256128155135,10975044962187852064,14887023502175238661],"proof":[[4082544563390657584,2428803467750713898,15919672509928983616,189310895045026976]]},{"leaf_elements":[6485988802393016559,12130974100501667025,3138003141619716888,4081174251100168420],"proof":[]}]},{"witness_query":{"leaf_elements":[602619258930425763,475187827036072351,1002308757448893478,3995816576697635898,1656737791006215598,1518434625547989223,3725660881662908373,4415528101188094276,8338840836612233335,1766523412917301303,8776388329586553460,4193660726630278698,14902551575174746540,16493981000182953719,7091076716465944294,14305554483986963809,12694349962879260730,18209846013372984373,10653155052039029129,14285098775633482811,11376081736435315751,1381616595853021933,13760810404040582703,17559676910850830097,14605864490466051905,17808292860672337400,2201451807948839727,6598514272914503435,2975222499762846189,4989029037530265990,5233317242656919589,15082229320767485379,7173010162560802895,12055010512006813133,2595514890436195034,12035942356211944889,17715265473470154692,8903347784235535797,2333393618456712618,14739606083147019465,5445182073357806537,18041471416981687445,2208709744816733768,894340999055570329,7150113197421946311,4463017975855434029,16420580042011537038,9617447312504598200,8273045695739270675,15882636175016080456,16508017834643396495,18411349563523428870,11281053992812124294,14063852676109365375,10304380377656677591,6159220460848169753,1269487050386745827,14046504408431338225,13196048612508832994,13766502916024544627,5432413331164548686,7247523401921485777,532985569869465746,11687148905809312747,11304474805701197804,14663713885849803615,2550193552759562079,6300459211559012495,12154205275983828572,13228891960559595228,101814363380532977,10683072411344639549,7905870814942712009,9474636771658336875,10597651230238335092,7429055640026985299,6796250401454707418,12971464294360862288,15676989233294978359,11335504333922745058,1732444785623048529,10649816746877153098,1366462626909993690,13094375270553281566,6852640111945472784,7104658054507986263,5282759981958460252,2225179208285773791,1573400422072223490,10001366943561658188,12721894017247652786,13571263545110700542,16259427326409928602,17624966522598812440,9177942293321854990,15769387180790010617,8245270162544662831,11300446713042658730,1484511857165477426,12356076662602348406,9286679272052255780,13947468710942019665,331815081677969510,18358538453103077153,15427173027594014983,1620260365163134164,13735288795717994568,17380831341821022745,11344780422360340417,7896308470112551267,5203713189957987299,11330661910275218316,7815617760739258315,2040497088171078633,16072659395278768496,16572389140726609567,513434029562773024,17694619208908110511,9472586701815520614,3866369640797441343,10549442429904288276,44626767509795467,16201372727083214730,16335399950281687009,13780764451689729262,13748661470141538572,6012471240257064125,6471483119437711918,11175704081119533296,17272722812094073301,726374270297807832],"proof":[[16615157074579999326,12319536767894088149,3716302138234602496,477128535496728952],[449524878732669829,4558945606052382296,992002041405804161,2439597343594244476],[9367013455241819113,3462215357107608304,16208841233217953881,2898684120214590371],[15116206799472171522,12554509692953006614,14513924226073890580,2385172679432417263],[16827311950551954079,16462469024948028014,12917131866394512588,1193346717573180722],[1433817311404551936,16558502213114337649,18111930669786096338,18988415095117817],[12646733209673403300,17661892587252294157,3542898754396028665,1769518045945451713],[14901970442169215768,7289383370152616229,13855122796567358609,1545625714300529941],[5912035077522829327,7527421549868620409,6478268667789886421,2738692677567587515],[384349733363842198,15047629148647972682,6644810888003117253,3272975948910484750],[3729870639045351131,14727722161884950768,13174920228765499536,1594190664104852092],[17987329640643634080,15012964337311746710,7351410855661486719,1350274959490068541],[14529369058256465838,11494318455472272794,12643466557790876047,2895029653840738288]]},"stage_2_query":{"leaf_elements":[17670922586472016092,3463397541842089983,10379080571630315408,16691029060464470639,9805372237066595319,2866299402828465841,14763794121220501217,4185854808103214311,1142019295367696289,10556753058732616117,4081021370061776282,15326571050530132157,11990355787839517246,2828202331856521447],"proof":[[13878436616694753016,10076209391865581547,2037040832557939848,1489475458488179739],[4219037070420516733,17221102678651177634,18084793474138391579,3171064583458790084],[4752656294864547486,2608001955915436303,11517836239657342174,1727806317625785253],[769040284878056142,5424073944154300611,444246569140642173,530979925309238707],[4426110140870858327,16213809655252738809,16492878191600753238,2944824385823037151],[8165996742800031134,6211888985593543356,8904180245719727143,2185702967954594467],[16160907993371023284,14133667301165015925,8951110626011061451,498887988989259837],[15448642712886781539,8123271978372870701,12440453178746958091,1531090052651675366],[11578692153572404213,10138777034309055860,14907076530611184621,1971959472873110738],[13989252825441541054,2705925807047885813,7622508092890761251,2969810306082740077],[14148865650455366705,726062445596409966,6928639599705081508,1913446844725551294],[11220017259697723622,677001679594051167,6925218384805950482,2073318416511068166],[1241545135385123701,7679004444393135724,3025994387032875785,1519048666296970932]]},"quotient_query":{"leaf_elements":[14903411439012073551,14844272460554056120,9182202812342282877,11073665880512471388,15780131837005414517,518360153991506176,4606719201519732354,17039373331883417834,16149751756345341480,12852169082270239517,5928031106607039225,16511970598841041941,4943000872461219386,11114554164617156455,11830648730480402539,3764606100965580716],"proof":[[166705477548517628,4376702884240907676,13088294677419552355,1309665378574670140],[4264542167422112897,15925978983934247381,9619956603682808757,1870256808264591493],[6061534675974042456,14207130798276018103,5703881586353722939,3340721101707409739],[14431742305370433686,8578633206598621255,3758512954152227131,1201655430016203471],[9614894617689528196,17374902680303820881,9823062992739385274,2173802458567587651],[15366045499318596029,2791263104640335375,18269130937461766167,1635171972315280635],[10195668950741515500,2973137986729783792,585982261048546768,2500417660959417267],[12201251587566845083,8680412804891861399,7908029028625616870,3274390501759745786],[9908312030584365129,13897759345277912024,15213250926373382635,2460499880434506881],[13083085271690926205,5588446440154269276,14617806450600078052,2148254481823711617],[13814780666178806219,8701498612994953716,15105392011306361365,755338624726281651],[2032376285152840491,7142132393502982569,1384580021556495755,2616812089124926360],[11151149218063228756,8120946621539383472,2153351129223377690,1948019290312331727]]},"setup_query":{"leaf_elements":[6215765775389015629,12414126241239489180,16442719940288951239,4978583418132459544,16490232676477019295,8259793220925488033,931927045600844774,17413972938321811564,6903723826920707901,8306958220787752982,11379502230025488851,4365427720624474484,12814304964904640811,15628775106472299581,5781591452331670154,9382264918004323978,12843321451247627835,5717424719946885456,124707899200754945,16428530665611715826,3349005434163394442,2876584203932179591,13317767204104216678,13772951573848811484,1531823635773915526,11469585732597452285,1472979571563349196,9649777972658775353,15011584380269763239,13286010239967991461,17311997925851203958,2174483497339657520,7903029571669089710,5989228180070808511,13727035936312707468,7355772458140003344,9487820305945990968,7325484722797443645,7998911823919204677,18019238518528357772,17226236493318085212,2013921466325250479,8991051259873511045,10593222291717142099,4518242511277518555,15060681875341704725,17290821747921223850,18174351142328174605,2037569542906356027,1915558695101782455,5674388525659207298,7050222958160032599,7182791206268221553,4470246078125301747,16588326461650784446,10302243554711531954,11094102631488375155,16667427043034316837,11458301070152154393,15081867320368361292,11707965402660451004],"proof":[[11458476708780656178,14450451608641889936,3283244344291322244,1687600173587205501],[18039794887688030196,8102866811582291105,4488569311948976899,1731639625322453766],[11003800009851070351,8673196835389424168,6622802075744623042,3198018730598480584],[6198813077377756416,9373805290620427541,4303755995514002597,1897042732238661878],[9446441584271271818,8765758760698364136,7816906983203818602,2005703898197687890],[6845371052229018091,11135256754661176045,15929447768219602746,2220866331068780919],[446327370884842097,1121100299360871689,12859824236109466287,3036125930405783426],[3339491911280052803,9277873680338617441,14657471947964967038,1111850130442406850],[9122970035134548352,16755169178682314336,10106987669529676486,2506618339775598166],[3920135293007296747,2637231464474328039,2544803906256176382,2605758384702158180],[11330851353241959642,7737266325616587668,9576171607732079077,392559943791442360],[10710052728847521794,1310188681526079020,6397101549672991908,1637501846289329853],[13149784555253046835,14758838563795191874,7433057622550658850,986325784856918114]]},"fri_queries":[{"leaf_elements":[14054520612658914736,5641971677843973658,11774032772149780661,2183275234114411606,5983169947619777992,14867556303070692762,226080911141639297,11441734261593488141,15660018716354603824,16266196300484781469,5442710157832689116,15921339435013669654,5082779198803258275,16285982495358279784,16559833420693288410,500217656198145919],"proof":[[9070213766549711029,8030551932244479479,3501705106637477564,1708573877627180989],[2599244898618133665,6836030807626761504,5975937265590074760,1927781725989948990],[1518156883681662069,1145730092701266162,17026208183990946588,300667145282105713],[17327393068427787680,14677191601985613204,15578343363568549274,1964337171181568763],[15231584523083740636,5628865189657864984,11968052282529521585,736272508254555616],[5616469359848997669,13531524087850636664,5668290592184082305,1278353567080472548],[9299570302684351962,3485506679846794281,6141125811392908314,1163825471206286843],[6679927951018212291,5258794126340581833,10460743017857341325,1693434545059098457],[4210560855886740970,6088046815714819661,13266640682913832721,1701582425475924178],[8347360573839206051,1768446814586231047,14007334252911185829,190786222251169773]]},{"leaf_elements":[8829937386662117490,13479172081793416456,12523144444099707681,8336743620505364002,3762731741350814964,11036124705220862273,9881181617042802632,6763942774079012555,57494463623814373,906449725620364454,6345068626569328137,7884330044285818615,6882088629595456170,9292934366446309979,1858653679467060430,6405556922618052946],"proof":[[7647699429832790491,13704115884980967740,4902426751053344372,1183519067924910222],[17959027877272670452,9085212545272741663,119806900961660057,1214998597093718008],[1319752157000564172,18369248854915664602,7606164338449245004,377433471940471965],[7218012616860069511,9580058550936193288,15789053834068243802,1532092022575427679],[1644085197289565618,4385777682071696421,1933089665859629666,911849557118272594],[14157526227560209653,10829391244618508863,11697006768307302778,345724691103367460],[9127794537611649855,5814250328747267805,4296556981629366486,2685070511949217859]]},{"leaf_elements":[14845767165484150506,5717386160317909315,6622494600866111357,8095927758798238430,12894197341256661524,11787364273476415755,10543445492557719550,10277672860220629634,12920680082131347493,1113838086251821948,2529597108249929512,3763963732081166289,9120171838429573513,11061424086470694570,12649880241875324489,7938384967194726564],"proof":[[1557323779758958543,5820858620902575166,7035525896288632554,3414674497403938387],[2169544865213028053,4321849700532411418,11849290130794620169,1693218383394977429],[10948678975314608133,3924083284418572810,13364196439838498155,2305767341443876489],[17194299915970532300,415382349675028268,16738602978340998696,3449836998464456936]]},{"leaf_elements":[3789702018995450110,15854387717208756361,1862553614940700864,9514253061725497845,198987545915237403,2445744595491142240,11873260469463328166,2136424363509213897,5107746734140941096,13172010550308694095,2233544282983968511,2369746150205641333,6878826575781853838,4016984314925335006,91665176381536295,15855865455423374290],"proof":[[6449941176220115590,4755010037827490481,11626402507764205885,228837083492347851]]},{"leaf_elements":[11323862628515517922,11439196860937776991,5413344540181736252,8741335607124726181],"proof":[]}]},{"witness_query":{"leaf_elements":[9576751094841568367,11549384390847967542,11337809281632217353,18112091058731165391,14455860613671625320,1947312392629992605,9247200251193367578,12958791300864936371,3767923864175237774,12807032806251115657,10679774762756573461,15593810700228760654,5048055338023923928,4060308279066758222,12145132307359132056,2483790419001220193,4760176018067231425,15435886694080499488,17367728054090569120,5491850036640957048,16714338878147882899,2130100879713947796,11856138400605268518,11322437280969197761,14970258221954108162,3552331842998265460,4366666405677113547,9740645590430256873,8771574844136276649,15562907023075459479,12007484868184567421,8657265135222668418,3969192549861350187,379022287653374874,6197034600229666552,1573918593899722765,3675176401021600127,2419318799185966909,5726699451612643337,10022803618004069432,5817677907492497026,17376357336600422764,5489647947740267393,8824682760754036813,9901419033269065500,7010441955824342296,11922355678881334224,179538720755093198,1014366709331293734,8015850533225461193,15351993804947735298,2091175742688118491,11398857711620630842,6887935519183011562,16281130652008346452,2184181598242462923,3526182414307713736,14694277811433077935,8783286772057177511,4980484969631821222,18425650677339824219,10927904624768608345,9202745665321342140,16119616462768209410,7215939384026328930,16789481758481457342,17384718281379025168,15728586872910266605,8319014114767537037,7296249132969118439,13739548559754795929,10327796492115842875,17568555404342664218,2405309112169094795,5489995657371800997,14830163920314352421,2035903964202947258,13068021440819783114,17039915115331423681,502486269743751171,4412701720498999531,2386446855859011481,8763324509783026970,5682023955212128704,3387708986081190846,2628968031547532404,2541986101309192058,14780130883090255925,12417457106244855574,6974929799589569954,2363391646486895949,9147734930159772925,4146042945391918716,589454436929240138,18334446090304463273,14300636682693223948,17576044399020706144,16126543153671086975,5538386195559521681,836124039062721326,151270991645739046,269596979687167413,13921122550699384190,13622361920288230507,12489900888828030424,15116986730072568383,12259254109127252740,14095745062758748522,9013654270731132681,1618713530092488115,3720301359754234706,9236518253267695007,16305961658758771128,14534512449925929505,15416233320139623476,663167777262760914,10885303796051694695,10988296633583225511,11576486552149957754,2175318293903558453,7265171124725753261,9590719296933162642,17435241996282989120,1904979744138598332,14442875949978323509,12274289961618189432,1790907694168827949,16854892807549409714,11748391527805778251,2818958510372129214,87502659283352793],"proof":[[18050768959973614723,10665940034543255293,4437328589492816863,1662258828278022781],[12179169659562287906,4186294003665794086,12261106871304863605,831726938613208133],[2378803977055558706,12316085572191624628,17863138285168484606,1108480401939582361],[2063744880248880235,171045395582142937,1250042646463895159,7363821099723113],[6979783548944799823,7685455089751042192,14932172928168256263,977261150708305201],[13233311155745937075,89742059567000692,9348873021654647324,1673533088234001667],[8817559294831957244,9834113172940771641,13573551126405514228,1021531137816186284],[14583714878465552577,1568061544181166036,18399746561580329368,1064210436789031213],[523043553863187054,9905984354218801977,629451019583438268,2362734975357887362],[7225578083697310481,10201876296549829672,5751971141253932118,1814600732590357845],[12036199073822799947,18344382032541332774,1150380077402298600,137757782090781130],[15056798879279227557,7642122615035966749,12396778318454286618,2846877088663908415],[8899754350472755776,12278932612733122602,15570693645971944066,1640054857718498562]]},"stage_2_query":{"leaf_elements":[17473306423073513922,5448099279822259258,4146033170122175877,8559445682920350584,14969027455870319475,18146410953525510394,9951243776121836542,1414901612658040462,13520115702882979833,9039858657566486734,94817819360248030,16003578980445985627,18097285284229736211,383489683136345738],"proof":[[1696714152612816992,4454060729678650160,5704968249799861550,3403757306719878051],[854915854617036176,10686218281671858028,1551353194611386656,1102357920586533080],[13493329155656550177,15923381264985615186,17646705725672367957,2500421169911647928],[1211466334396868376,15700921768926201734,18098710788355758597,656832115652465189],[14461750715338718759,1849244691228761102,583573069480743375,593091477170261525],[15049105798662218319,10354200684493955003,539320360345556536,3011177372492298609],[8300468029935118722,810560895770974513,2208072390056768108,2229151655525867317],[11072746705442039374,6132142741978102765,7398589329538284966,3242542622293563382],[16449971787836292349,15203164646742497874,2163961612597871719,2941633256797704800],[12650071330826553917,6486014659524005679,10284470515523067712,1764121787341350608],[6089297347779533698,18288578288688712260,2464975423208903473,3381181044776058761],[2202002661820034453,14408375113858267240,700400200812454902,3451107817587353209],[12572859388325897636,17011840285034537662,14979141720780255310,2732718184850494243]]},"quotient_query":{"leaf_elements":[11831144125070212983,760217210587245702,2317489011429296069,3962159296066368069,14893495718841633258,5802091777719873821,6422804782839040813,7394772605308958666,13091142807810990210,14693313582949528084,2886375469140978180,10335658936704273036,5193642610975775992,10931923452049655208,12461075610614315089,11059483635660172543],"proof":[[8081652125434284123,1420849017980647363,18302470234123948064,1910765841492026512],[15048848205633345378,18324120671516504313,15485803382990626448,2392259860285029957],[16762727393160196630,16789407221974553997,16112296059450527989,3419089778811657351],[11835354099622550875,12736176025246714901,17636052427149352522,220116017686194049],[12062879889240230955,12831747163248288126,4299098913263867119,1702323347174387670],[7529470018203432423,7982065078607815015,5235566433797675016,1138145125778464297],[12832782061781978455,9435310685903933877,13248762061154520827,3418820942178996271],[3953385663957747822,16699444338975036455,2401449816348246179,2472990846993747389],[10582102723147839124,4717307175100299885,13120252777695429660,2863367089614961220],[6655869341818575767,2144410408674612246,67232810001377191,1402062444968036823],[6785880900866932520,821620509556502585,8656418859660568549,1427611543780621878],[6901920785147334066,12856560133237768599,10764700425195042763,1166708839200723743],[2322302405481175655,4650094345301116407,2541181434162447780,3440250464316257291]]},"setup_query":{"leaf_elements":[17600834682267289568,6551544975655020190,9626437669811389314,9947280749986088031,10186480616765326406,12441359337627273978,16234633058009531281,11026362119868659006,7111438461932643451,10640147784118959303,17378530060811346967,17891945817577658397,5311228459370430823,3700745279075511562,7812291405338863157,7677799859770939240,4721269911599219215,14947696288264875308,2400012490908224398,16154776614611189394,2532886600140671760,6539568829674227205,18061614080341992196,11265739861178690041,9915118265237989590,1064837276855391276,15252478354541832652,1683432285185088286,537830661562462599,12290845644940797179,13645592712636870423,12832907173019627345,4387187771895121058,12397960510589977470,1367617616728227317,14135338424015924061,6302603740629685666,10696475226799523251,16040214751748033251,5559363363678395922,7160420500770327312,9700851086204980687,17795034572361905027,15691006280206879794,6668567947441410051,1672795495794877400,14923765395064526196,8589553651890069817,5336421627308582930,6816605756977674530,5969581732898368218,17407029617593745917,6483623612413279044,5772161835510691325,10174257402210106315,3232871604747794756,7254146630626486121,16144960430261819801,3082333026672953196,11730406188518929015,12670804023141699382],"proof":[[18318902287549636408,4209674582499328476,3073468292103642828,1752235913624924248],[18127527606575670011,10244426813071973754,11508775744083872116,850207874340150371],[4225975006835144329,16638962698658642950,8405374410100795483,1728096994031773435],[4286149095793488340,18161625360289004873,10220497732097993010,2904365501353212978],[17566654073066002550,9150017445697727185,18192877639169726204,2206403996128970513],[16115257381937942766,1861405569748078867,14658335958428874331,3298864403305576422],[169952488849222552,2513645967370441379,10487349425188523174,3332927936828110739],[3704462409953609912,17259095946708594850,9170638382056556778,3336304082489188453],[13223495952886414288,7017652692921093256,5448250669894159749,687407285520057113],[17416144879797363510,12596645203997159937,7077149315526450634,2749898165155967605],[1944238263364572460,16944590141222724672,2731199171487136026,929417722718882978],[8184583848188389689,1691925751284768332,4808945709990961020,1954402464110990423],[7393247476269389035,4694627994465087610,8725146533108150334,2229767323800595700]]},"fri_queries":[{"leaf_elements":[14635685575520325862,18045476494344982081,9929148329453140589,8698384249683306681,6240962250900845351,5821024060328770672,11557413112566746551,5566415759882129929,2938788185695838414,4990140546325053821,1168000096076103410,1781730882039432907,4504450143266553411,6320619646046067666,3482573509038099415,5096963667942362535],"proof":[[6489446967705239162,15032394788444070976,10245720670230121433,2301009914412377055],[2909175762783314995,18050416537130373596,4645652091869132035,1570769626016282107],[1433522967623108742,8598851194226441398,13045352975680828456,696670495119364634],[1669915048009254230,2064036013235485943,6602017226103888174,752476135185499861],[2096731900316279930,16576188446061878311,17278675504881688388,1856556255006571606],[14844055986107451936,12628170303811961746,17108795091595755128,3200268011941517180],[15193506466800529704,9556346219543735833,12549780234843632811,2810066479216778009],[13349775921664257113,14150048354355143187,6461649815032889461,1502093382481396807],[7605375743785670799,10185895542438624416,7815638543420388253,3054178810126252517],[13909292638786716778,8970587721766887481,4064072683418480103,2352438592939364893]]},{"leaf_elements":[10115193115061861984,17929396353742094272,800136647454405862,10436361124442552708,13862982416777443129,7338938286081065530,4818120893210280041,6865401796034637299,9120707744993472055,16771258696155957653,6457274363872626557,749388593317156885,4779477613951543359,4641875835916545495,7565816221518631991,4152580604307579951],"proof":[[5125957050941643913,14347124663193603090,14983185349477303308,1675556183057672437],[7005509259887422570,9550191499395162844,16896956844251160107,1536110898128131204],[8052798945598597777,2791498987137438348,1351247512677698232,898464712438743152],[7640566031128185294,1414746828959449011,8790853225863047303,3198450905194569007],[12813882369894236157,6484739813566793012,7796420782761195941,129094952693746200],[2137973266876116548,10812798778330061619,1702586614393510203,1435662129826923283],[8219660059199024368,16655180989667732883,12470720334809693761,3261694339373339859]]},{"leaf_elements":[18226344093150864797,8026434138078381899,13097736228807377611,12118308210720633808,804378179402838628,2000490197074003766,13958069589604513714,17571099298476213225,919277563278167337,5387814971588703027,15415011347255169929,9955727367083855477,5408356955634925834,5644219902597951889,13229521572547345741,9534183104462639355],"proof":[[13289256723722013129,17256501021443216386,1814765959698446293,388096428816549163],[5460207319851950092,7473606203375009206,8720429620102853383,1374949819360850622],[15389039272882718662,1220524723794399443,3027321851306010981,761737478691848471],[14914066784182050162,13218321865492874577,736393783097052782,1014363730706131245]]},{"leaf_elements":[10843563837985374749,2934059280078601464,522664419033492028,9663970885524212153,10528477958991422926,17612037856198408780,12590216556634830341,168568544817592541,12645274891552093570,17506125824037388715,12658942764876917960,8356328858488461741,2074282120620356578,8773718658183707819,5723522309117596141,7469780649577961051],"proof":[[12374258612337946155,8133723967161758545,9858584754587618204,1967446838911406840]]},{"leaf_elements":[17499325981881337266,17599898521267640417,6381771601744403426,6712813034178600945],"proof":[]}]},{"witness_query":{"leaf_elements":[17521958612050491490,9567437649636890587,4869853096088223805,2760681524654223173,16402123085305737152,7954918130386263733,2272663865093639226,5188023742499797426,3461459904428624961,2323905028618700458,10556960171656589986,660943942524163432,9714825228453579472,1160748746400868806,2253732093594133664,10105985796226206314,10123022325461125910,4195965188939203727,6750934408113657915,14661834821995209899,5910255362281297460,4624588538135572749,12098363262883541819,9289332973315358686,6303572112477311869,265910613295759077,4515066712625191057,4533890952660483231,13694986235211686082,9985487373145829170,10662794303014309787,996140586756376228,4442944873651673612,8769760537179807130,4236427659614661012,11225198157351053695,39822611797408182,11197199690200347864,9508071117061517126,7708231855480791815,15895218741741393893,272157054942830140,1635353236163786678,5070533989251147309,17755707072067000233,3102508108213533247,13433419506197682684,4323797262220367198,16591016912209640179,5749197782019235740,5317254398417741504,7129271224636459911,18291000620860229502,15924326967676575509,12805383838168352071,8827971619548850621,7645274265064185810,14962853985711159716,18147300898559045539,8225781947295477570,7000177402165192065,1083767709955407290,12999212016044979318,4628922181583563073,11742202459220652024,13427103050251164192,2169810315993550004,15135351630597870664,3629012072559102706,7836572644918936689,7061906720293349703,1187502203767408089,8582476474689023968,629672014236317372,10098802676531163295,3226641108801442697,4426606597474288252,8241410435585506717,13534867287130463071,6987434382703003357,13843092061457163376,6790165400822008566,4342382452055212525,50464588392518455,4181311752635053026,1205183973681719676,9831955119866776629,15889816856672509638,13627874825261141675,4742056798404702702,3875908163169359755,12816879309581030896,7814457346166606765,11796741780725335901,13576814723147920788,14135433436987987368,6797476648384798418,2455260048080586925,7867741735057158428,5437045296922182866,3803546751038955096,9483627168379173104,10586455794537997836,4454425279172650813,988432138249642874,5155615089470676180,13848635980401409972,5398384086180329248,7383960274291900513,15734580293348485860,8114482970479706152,15386948723405709537,4530334361477724796,13597692879100992027,12613358688580319093,15859625984584751588,12240602738308542337,1804612021562125729,7248749685108963791,13451071369738462864,9374031095820080822,11517442877673624370,5534808790330233926,9024035214257410501,13316587001689593701,13840660546872162338,8638482430779616584,15025771393942326089,1100608703010916035,17453359609796620315,7272843649133671414],"proof":[[18004345142961760092,6477253009951200187,10270185357333010801,893088093390832016],[201258162869988388,6965059447203301049,12111768518146956821,1753472291940789137],[6319909806101242639,15083720546106811624,13543613245189538857,1025345745726295073],[9456701424623178226,17915424054819802408,10738857593805445566,2337051191688250278],[10023099585691787343,18380851324506838607,14645076184608580736,1545820490931443238],[9657176846054901487,10763085996900505396,14359871000106556893,655351451758348940],[14696504169856388730,13657932833164966005,14968522178996733733,1087096375426515979],[10178692081894777623,17221812861814519354,14411962280530904005,3437555999553059568],[13744399062368078803,4790176502208849648,14898681865517676808,1714051279044447450],[16082388412919767989,2283788685008919016,12712343997890131439,2615654387031861476],[6255716597487924478,9755540032979704580,14745922823330988308,2777748977779662694],[13836668906829710369,10341401230349416198,11163754085741760243,3218002454189563944],[12489835289634896400,6436027295365327603,13835359195736637174,2107156744221810711]]},"stage_2_query":{"leaf_elements":[982185146251640546,5765488123622228758,14180462358604098776,5341734177981767593,12381108446431704911,3930608115860599980,4322889109046346215,12243262482127711799,15982430307454506360,11458501089319823554,4314324986174080999,105328906365671602,9402285637288844890,16301297391303489371],"proof":[[5383369525447222346,11100905854750921447,17642250154953759755,3000268857654254116],[5660669331810845970,8923044850633938984,970032602702374964,1471273450783484060],[548212366007315994,1894541340566799735,17509463606202254476,687804579624460098],[15105942131336316897,15474915367481508757,2770914956755456820,1814762666059376475],[6356052328375382359,8334106609696398328,11643100270029672540,2248961784688411191],[17409707628872825729,808731439565157400,7162674576136393479,940277530845433158],[13270838478579747479,10047880545690007730,15537101255917788549,3240277803484363113],[3074523075113805979,10893692220418132941,16692981170863645261,447957130653244379],[17795438772997000713,9467915644959759111,13908319311166923984,1339230708055371837],[11165928349547906039,17044617554589589783,6052362293878905060,2116224653569415255],[1183043004176350965,6936588016048698215,535622981502154285,1988473032688790364],[1588122855051381316,15986256495690246090,15845347415925917050,3002469809967888056],[5088184440726532484,10624519551630831941,4139449485439259727,3412129392071649693]]},"quotient_query":{"leaf_elements":[3920179369862740335,11735906194314469030,12840927191927459192,2772035060102757247,16000391752356976773,3702705040004118716,1131995019464821677,9618503320216386519,12029510128144225593,4856198147995230361,7136053490736944038,913384835415627696,7744251254341365110,15683983879935552637,16141025584473190630,2060903489997869691],"proof":[[10928722193248258951,10572505756171598104,11319297931236078433,1409984112780017837],[8837442828737371094,7608713293109879837,6896898481234526173,1442064064428055466],[9096161475788296127,7621897791391409851,16923572215472987587,518975881914120809],[3109646554445648970,17551604953820246591,10664236493848211951,269670428630879908],[7699927337513856161,18267103867398426425,5034625339294322584,146294428209775491],[15867848785987450928,6207903983875976827,6694639328691206271,1136661422774194072],[12986270987902077023,977651882573203420,10153987921128420108,3336809152487621316],[3048592803754345784,1600130930372018575,2394256592783272236,828402747693583194],[9685037916267707117,7760006297178937728,9511589176593753245,1229542267381280557],[2078739388611051521,4338737628411070364,9487814046498170075,2527395053468858067],[482229698886387901,11029935584867999260,7416896752534935237,1228402156128570090],[207043033235468965,17758881744043525803,2123779994158588754,2204467661134451222],[2206136225417434008,2701764854394411613,5566855779015492723,1850531030693384592]]},"setup_query":{"leaf_elements":[1355673397133206552,16624679760373400638,10576334702516042838,7360053910164516265,9818245033085381350,13761959597850868037,2118886618023348259,7913141778299451861,17437651061225385125,13314544514542540624,11592626801821627736,3371994627777415044,15842547866684423315,11490457236889902878,13605735221386517628,12142589482455713070,3021116808106667477,15713703560518862877,17173808171656557046,12400144155615711429,16654458227608513171,2688808732270893359,14145073280589860676,3973984332380713260,8098870306854216005,16731026638679582324,3997069862706402266,1463466807851480381,2274054442290324946,2937956476090401498,4888711325099276008,2113158276658231946,474528284042613063,15372180447191937529,4172250802717157143,15535807937593433032,2273457365007002487,8050149271754798302,12637263731783815820,12343718394405685662,14790386198489269644,14527525398461380182,18380333593041546537,9050985597353161519,13157521581649082359,6235322836971444065,10005960010912737416,16630365179281611346,6916695780541869495,600008399536122585,6025051717514347262,8553788315190621937,17988241434955282717,15900008749983044289,1209192457595274367,6780036347621488180,280246316290989124,17156246495239159380,5641506186782750333,5844116681872756152,14474080224388045148],"proof":[[6527901709182734312,6406139154616769636,1748090372630010312,2936456039583879501],[17691503593666566444,13257211940848573906,2923793043851064178,2037008751216728731],[5757136084937964504,2502780160425199734,10026566853520555792,2354742848796309995],[10679676018851931945,3187567936901159794,6165409962595252519,428722590507043243],[10612634109704588899,2265921774035565070,2792634214159758412,2851093078807654382],[7184871336631684152,6410013678021026402,2647785781569885488,482185626207377247],[14926883745329312007,4482061402271079367,12411186909073642798,2790289643094819246],[4124738745312985172,4207461405898522032,17287683763856391623,1144094205236546067],[7644450250128884198,18173950873808950522,5988098850251033895,3289098661696874031],[9986892814781889647,2026850949365544285,16415112472893041071,3011090863105502475],[153888852915966077,17972168662458850399,12103382874054819748,421710622830068301],[18247657968427739412,11980466839669134857,11851357272994488667,2939293211808769075],[9160595042059558321,3003654428390274044,17180942480487853646,2327618075865250316]]},"fri_queries":[{"leaf_elements":[17254025254818345174,17183186234981699123,12754145714248302613,6414685226928119024,16695105037005275396,15794636382819703189,1777831607728994455,6284950806621789652,9161151602750391422,7230717325628819140,1561801609793300813,9572902908226383327,15750389680973061629,8965515235051357888,11635561120373700257,9086256320901372304],"proof":[[8267897130838622177,6442268717150199860,13340268300986128932,2913169008289031657],[11984059354832354156,11032280312280831634,5314515681941775038,634286045445096875],[11816810852773208260,10267329123203026022,825255327531499841,2377955466691896572],[17211569953491555835,8707372427791204028,7598000726445284342,589739286809556109],[528817135806258694,12191543876458399622,16519562356854569949,3095365550468445478],[6824941936180812492,5120161419118431481,5365667171269112921,926142812200642602],[7768623096735499719,4056460535835726199,13632021689595887433,1068826273900536014],[3868701278953793503,4100608210264928165,2780486069151558900,2115596530450397031],[12403873574716195796,2349135915077416510,7468767277575460203,2092587708709019038],[17081479404112278480,617184671756641223,8216228617306694673,3379202153544912932]]},{"leaf_elements":[14797464185987080030,847629152230489649,14151066362151177179,1836677227488812947,16916463108112252182,6215264582172269151,15642500966024366820,11117122054590960794,8646877471929605689,12225507634549888373,15802807806274145072,6730918736061398350,18425986999720794,11462119334355473508,9327854643199698366,9596166148626859978],"proof":[[3130321265368027429,7007847714692765125,2423538036867493148,3265533771464890987],[15092310831581961861,6724197227287467238,10512123145823420706,2166363089408337006],[15708896409412314513,16159106395447873471,11032417151103494118,592708483199285924],[16128822770032341206,11764570339321408245,3646507939455976389,1981301148222524901],[5420257122579917456,9714500252158636923,7779912524437290766,3452963018561853654],[17169716515783796911,1500806662997531208,4252073954974278456,2343125948170061068],[5813712587629336352,1082708786045461569,1092112838582383375,3425941116159785480]]},{"leaf_elements":[7024355718601390918,5277672392892876083,827293714387430296,16369316608947007307,9833023254632075882,1871152066860603249,9029835456346178235,12443032464155200491,14903256027728109014,10147111615072011603,8757604889383504862,11025844569948001491,14601464061959365757,7254405106310336232,5967132259268658295,5344227218450665330],"proof":[[15399971345202591582,3011667195888806057,5560387751494564333,3324582730283159586],[1493042040292047390,15395071095904431479,14600032091785965594,2327623214616711775],[3654369732084213993,12432004624548316494,143217563669780288,2095965278091705794],[4216581162791829782,12611432400497020496,4291082047923264811,6403411685447305]]},{"leaf_elements":[4311699445297929499,9806112033748572177,3539043589198585194,14593654441266355321,15762928673565885253,5932108298477060518,17925124669056389626,14193547706035909747,17259293125139773774,2442827444727177921,17080903217978581511,16105909017897668138,12320793498174218612,797232347842516762,16412067898771630043,9571229727132115841],"proof":[[6720710772968328146,8869646766528407003,16450207532160375016,2278103972111261741]]},{"leaf_elements":[11323862628515517922,11439196860937776991,5413344540181736252,8741335607124726181],"proof":[]}]},{"witness_query":{"leaf_elements":[11948795710264375955,3579972359226832183,8536711601574309381,11396829051685123078,16952896974736752037,4812067023169352570,752137558755471761,10084960256663509835,2544750230458809155,17030651141629010623,14279814900408777125,2045317724438886490,6941441122062687621,16834404791832950995,15936326321371307779,1329410647863596500,7727519106571359668,17105886540561019822,14353595911971258176,10713749166959871379,16750870551519249184,11323464595555265601,834845291311153654,17529180241175587439,37848275059131677,18105663000759888816,4393873288488342091,3947621141477337836,5799050532406529507,4401451964912879503,2393899212721697554,11969769752241608791,4433635556526512125,12474067865023777236,1796334476796406826,12427974951280116751,9184674791025121397,1939787536911140975,7776282856808946117,10953028547075317785,4624625171157010660,8680298032529616209,10283785126883384243,1280898109036960772,14147670060461597513,5297624234194698205,11321143869167180287,16696438873603057900,13749401227833466920,15835460497571671337,3565102563089184722,15574142811337068417,11477996794931765834,12083671708967381374,3252689138429560628,13540031273572513223,11217001327991968539,9037141442767471077,4167661026166268435,15283164909420815520,14531025245956542721,8776115548046335055,8859055840084181636,12381786712538831544,3434126407083357024,7193450252638156393,18395789363135852426,7999516356386080843,10275684614336317770,13806736820695529455,2302350665630335882,13103426674578149310,13195379945687255954,10887709560799869005,13407209527852098370,10352194363026426169,13038599802795065660,5180910592622355210,11772544321268490080,14730426422217250088,16763453130020049098,4036830757664011040,7353575774814667341,7369097360190511078,16727069799353205451,2861920738879633079,17252053550106222090,10715932931918828114,3219323047427609726,7823313357974793447,16796372289272392201,12423584609180124312,15379435781773213580,134486740851710209,1485507674877020542,4618599570982800077,11735816578617590836,7843387119214334584,6211977022205361547,3935757660625493349,7474648453258992144,4762578523091358717,1271477897694462433,6083698776546104610,13634780373534588991,18393193002704725586,13579048256376560477,13957606179332349716,17493094982263522769,8663141994412089904,7282306780829774321,1563180342260108747,9332793408626379650,12843891907403264952,10835097388363274399,19777796151783993,3000136436195076083,7073744392544836758,8441458936004030459,2630130599048821497,2416727113278575964,12751883671089468955,5625413016645574770,11838182331542754612,10954355068839399879,18272997824062609226,12631306951804659139,7428505078978945213,11149821451768023381,6327508690927457581,14515729450842505361],"proof":[[10554659508671778649,3569879561146348851,2623102594771511313,2199507477741425514],[13374087441215736910,17920513061902029090,2531204468149018093,216389700490800985],[6615341234702182028,9791943736305547849,13137968285055742591,2467731851776422880],[9603036439868910141,4598306675817751940,3143808107535269908,3442704851343000251],[8176179294327968920,2933940122091421385,16755453167672504240,2380887341492756658],[17140186722172320504,9317579894634382266,3096285794062678376,2110828512695423886],[14055757009204859914,4737595654705366171,17449717446217913387,2037498423728019081],[7061904308973836850,5636894431559730080,5330257904007396198,1718349596010735736],[7150863009503969572,1204505448702042210,15651957073007012091,235018674792616253],[12074134137501755981,16299228162971215472,8115585412613276480,717261193191659743],[8182014679444923342,16445826551207987290,17013822517979645025,2656714516067615980],[6902291296385525908,6282427285539483573,1059247308760891000,1681441560494504270],[18265673367752908138,2754640070048023901,11724482278947537297,1725637765201767315]]},"stage_2_query":{"leaf_elements":[18280009013508119638,16467590438846971293,8060230084683838439,12710864283649870740,16227875809967901430,13390647711142671433,2655004526135771958,16791319757306977452,11466646892680517283,9576817100127526579,739400022542534316,13559303926608930368,5882155795018058174,17574861964033823578],"proof":[[8859287737477806861,9844682376306615927,119476763743396730,1886925092232090086],[943937782278166030,4259752835772241679,5032728382915577606,3290392282727907950],[6332378566786974686,9118474372335905726,4361268773226772851,875097267182184941],[1132085936305677001,2696146792986145696,4989887274096532267,2126119154860762241],[16920399981787442539,17626586397547740771,15292983802183743424,2281973351911042208],[4266831146031759935,12542423050082426748,10945700689640780177,3083207207112374420],[14187957889119098088,7681103484547388231,15613736954228619111,733823455672501024],[15638473760976791030,6954496999646427829,11498669177228386068,984593981875874345],[10258136441597804082,13038055152395310458,10056821565562679030,2612210956946026845],[11808796866521203003,11207404278376310701,3721232178035827594,564698731802217865],[6442970993011095046,16767343503915309638,15639864749420030818,378850544348321779],[13986678099248396499,763132589384391927,9776001136007254836,1152105376275273830],[11814671747401227134,14051467977723724755,11743029036639551575,3058315192689072958]]},"quotient_query":{"leaf_elements":[8265407751709832254,12296715845791742259,13670472454793571793,7641483485934747242,8742559451732788619,17528219422631035628,7131202490045574161,17222732473806114304,8915934786128424296,17478353321914378993,5840707644096178088,10929213252143016092,16735111816798388607,18162818324827994866,6406717822799112869,15830288299443881608],"proof":[[4967577392751128547,10231120923999071985,2920288187933826456,958807157317245791],[3092394109658711809,533194440803307039,2107713047296641498,281917863637075782],[559436666174139517,17992402307799369495,14085846431638618078,1973882349774879321],[13550452749842863058,9796967015639244127,5629053876381955083,638345255365464904],[13746150254545166815,15140374587070621509,3667595646034042726,743544085393785822],[13589156500723121971,6442717902188720845,10611670445803161354,538358515115667240],[15473455648144377650,4252996537459122264,14782827260532056552,2939415269244089094],[6352249808613789468,53754944102007352,2478300398864278931,696724686821481561],[14767227779805144849,523980339935641819,4916097963648211856,1699271712100775424],[1673228963995879266,6412421679271202550,17345905633693911519,1453735194706700661],[11218010515171313392,101745210632366747,17231656761344841354,3308126040096115441],[1142141420400307793,11479452402825870557,17088604191880103896,762895272704649451],[3504417128630898722,13418354669506357867,4877712583074407316,51888638990079231]]},"setup_query":{"leaf_elements":[16747052227524051105,12870503493232299897,7387220514673987351,1339333837602199481,16747918328338546696,12987524862862206296,7458184540077493719,16561956463250066316,7681491435899188220,5236884676411369852,8143334029580469066,13058047349709851670,6210651816470022307,1259607409855661529,3571654737126349132,17815818436527183103,12599248445261486557,7682359343352202390,18176536621467437726,4791971110248363939,15868368691154763902,15423037147980089460,7642077975305740149,8293057035620600566,9949842387765063022,10921241653581493327,7557182855315120528,11744231115835753088,5984135213929303501,17202975187523845910,3285733334806358128,5316891125243765785,3245697059015649060,8083182424157831820,10445069711594022011,13572469799958737371,10491333743773195049,9079500663331008595,15585367930935648103,8073870201697034053,9267910660633483394,6375683406729213489,11176089878825257988,3813976916188635840,16597814978461411597,6299174222607142499,17869074988840795169,2460699796722598779,13071802783172978008,3935188194871212364,5279902447986189562,13660219308385664673,16032255680562315511,17226528245240393823,9026174948625806070,8868506835612959507,4834681182567607502,18162475110619560865,17383086281176264106,16481554970874116092,6921655115418354927],"proof":[[17020888769200384246,6342289120486297637,2282033168318114611,1109450360645096053],[3913569535061780345,14779248366466509392,7332546830268806066,292953922607843272],[579772160864529171,4852821184334431198,4201029223297409239,1953555181573085614],[4254964960699300228,3756083058429470723,17175277677537909926,2570973651596630618],[14824668216646963762,7820528152655483340,2819609188775595586,671404713276198141],[2609647830242647286,10649370127312789791,795721718637389357,1141836006990541302],[5574920143586176230,15516872148987706507,607523082096478731,3212669687190729760],[14717008524679147372,4650951541322338538,5773722309021551,1428899433806618441],[6434930348788884492,11398719568328309163,10493250540552169876,2699222612433752275],[9161858143714012692,14583841292042326625,7505752205083140831,3223826884155486379],[12936042570630472179,1310901294642854077,1974545396587028508,9396074164269318],[14626434129209657568,3704788492558821904,11586933725645472561,2183731847757492550],[16340894896221363037,10515488107363041749,8989735385112029763,2859595575457666712]]},"fri_queries":[{"leaf_elements":[8953210716521508742,13430643931864996402,9186008392111375344,271640789856598445,5995511245948303339,18025877909858361663,16306711897541346531,11706973127133663203,7231821491795531882,7888736550478092763,11385391423263547112,8610557821550912546,10054511550871260390,9589186668815366176,14554183551471723688,7251978104182782834],"proof":[[6545876977560049987,6324325623585059653,18421782886204428654,1336775510558370743],[1784279041911295338,6893990376610786087,14657258225746427440,2894307102108440182],[538422128960354073,5079659609558248009,1601371199634404579,1511162614920031178],[6360940289710848672,13959020359172562063,7734307203992874219,72457029483636045],[2939633391558907317,14596408551291345863,170188067083817089,1591644173987587796],[11959305332501688504,15141526033257603834,7456321919182154890,2580728452360402841],[6380864619414380636,16167847419220614059,14037915157061739524,309969490492929172],[10992314003799372557,17322716724534720083,15751576483304408144,1646111252671489369],[999846444995399222,14011138294935011139,6667964318074757587,867213260052525034],[13614949841622580336,9399492980024187335,15638599896098024049,1538027079629728594]]},{"leaf_elements":[11530333504239215645,1751366369809449551,8781810676880441574,17898744044518770217,5068123437852440080,5767189567059560148,11212307793995376907,8176805808070644216,11400983458819192016,4448425662802430695,11211522929998577173,2774223502593013931,6955805867371182938,2912552641121283820,17877098378778789567,3452134661020584941],"proof":[[16046424079505256161,16717425652690287279,4028470104283444491,3042689486287658667],[12975326195471338756,8925853549187645950,4063408808751826092,433831207167069807],[11142964206601506757,17493852466301855203,17753202963181992484,1533192299295367021],[7772034170709087401,7904938873317950700,7550180933320659345,1472476815663134744],[14619780283819901678,12281755326726147473,319442712941351599,1558941547028822906],[1389768311319449007,14236537471961652686,3349081074204103601,2876773415225488148],[16707445333894112763,15652176173117182806,12717696149262687733,373930509062837472]]},{"leaf_elements":[4522531214427608807,2708895458228607768,14378655018498255086,3701004547392321150,15598906413480729310,5769931387414445109,5837999110613815764,3203528792294961933,13933396286397715199,10145643743243072268,18342763054078240104,15109249409918197141,2868717040574798996,15005633071425220544,9769550803238356021,16923072860317850832],"proof":[[1946900366549917852,17640196811033354600,5063518774281691521,2709440878538215044],[9638837243345328524,3548442352561019961,7552415862605738816,2591611983958661810],[2598732342918378786,5317963112505505860,8244752469313706919,950042062237983842],[1395445178162007610,11626158447455766250,18397044548169564307,2769656745606904775]]},{"leaf_elements":[9036089175381653959,2987875599192350377,7744707005118505168,5188089847094658525,13129935381927018420,3730150788540291038,8209729877721515470,17090538519922816154,9607968513778767361,15071132642506767584,7320125160743097689,4991892819851375059,10068909456476243812,14089867269071297833,15389351978943733972,3387928692605495898],"proof":[[12726638950376879646,639506612650757720,16912813671638057237,2919186756859426224]]},{"leaf_elements":[11506617648987991818,868082017674053972,6543021463611153452,11748771781491803820],"proof":[]}]},{"witness_query":{"leaf_elements":[11381130096720056043,4418091170695323619,10706390494723173695,9530233665068317648,14754436103353359608,1608000997116169830,7405582144252957079,14428396442665963301,5352866742700793137,15832087951235178744,3575667938383293319,17189010643600120338,16816323120627605623,8843764720297834529,15699600556583887434,10840069773055053516,18145644424040060110,16732179017104267620,8190452824737487305,8784790073303038185,16125888585446211341,8826704773435085079,18322416113412309471,3550550118346996363,16765095245179559617,12576170432832122323,14628333952875026779,16175949987915769416,10117950228986303385,971133087009432842,3923192882560719941,16157485869486452133,1538186344167153287,15126261481730218562,15310514117095245086,2333242471521984819,3703367306420312479,9025389388872128688,3428273095580407781,6394568940089753286,403028626109712363,6858655271006080739,12880233966194053229,11431182295360732918,16970199215078244003,10674434914952537700,13130293830003105985,9746706731420320357,12280400879182994221,216236575832048881,10454063189606820195,16817284752601497494,17130659169600398267,218405356205299384,5468285243885359617,15624300742476548538,7390370213812827278,16175755706178334066,16434499950499644554,12009463666880025335,6499887326805214585,7013722265206764493,11912143908962525035,15547686443017294025,17204090477886003544,16470063732135174680,1007291153992430010,16959844123066830936,4580068045200603919,69118233644283635,13505564307351565602,10384603751724244217,15182632035517272789,2426910691989238722,10638442415476019228,13452727080881450274,7279287580390764541,15080046830848820034,17257046948875660111,9284326726189456559,14251671883669082152,2564110953368817662,18040000722286480228,4063068910394035503,17857751814657815985,12672902027536733921,18099287025125935238,17695394371478530383,2338778277458974231,10946207134948506605,1461533349317985835,10239336532692073486,17459559200146095007,8172991926965051345,7706373861468414472,3868169823586813041,7250287710495002631,806269354540034254,15759264878198441357,14566228073721018229,7816112481244556470,7411463637164508502,6857215478097658390,8013302220157404393,7706140505252264423,2237704360168306470,15385788790897275087,433022581642711491,16082961872276869441,1748349967220953730,15311523343952583187,7932144367545293651,9122819106579246112,11210066333622337600,905452872226750715,5984285822040650823,18223545883506965914,10150450708601417586,11847744476277144159,17625118990124987363,3252090377339452782,15141276115708692658,18363566780768446639,8023947659434767730,16517651902112257607,6903799543055283755,13157551212526828014,9114527326271825177,1430249512280530085,17208585497003644982,4003870372420974462],"proof":[[10636765665343972556,11385574872017768382,7622071564448307217,3198132448875007877],[2846898399276917060,4923445195069410287,8683671284851593000,2892267862329504292],[13837921771211512133,4773031160065282843,9979788310038223609,3178392181569301612],[4986878358776635029,12305297340767846716,16528882733393282415,1594586598538032493],[5435979976920785298,18117504383218081518,1347180638324187068,3344016135640309431],[9518438687497213235,8103665350933904694,16386793265962468953,2348328082717094094],[1747270563178215328,3143319401336715722,7099481390908865166,1020395189797517274],[13298451859968953245,8758676502645176523,3915146447991670353,1596467244368166608],[4829086690355400996,5958990850533270350,3677572876392162503,2261358819639150542],[3140279070706501915,4078218573849803731,15130969812479510640,2629247039101873382],[4470573511364538295,3072401176796498953,16201908554622770280,2788031219243177258],[8425516942936181230,483034393298231671,10477473390075102732,150189516499498482],[2402167573558463631,2137105850631415449,4214898604496638014,3277064941376453795]]},"stage_2_query":{"leaf_elements":[10211015551424443135,11681814958973377159,12660986941030048392,7349285843489524261,1250714826165942290,2569350534266797235,17154450489683769751,1440163494084594454,4034734564367401706,2782214164815366526,18365677222573465583,18107533811872065371,16029170231250317655,13862454113610788121],"proof":[[11857430013524163585,16688558619810672627,8024025905495607429,359195990420161290],[4353978048010923061,16209336491314236407,8342059902166351086,450806722869694311],[3415150797619744641,11528018021363580187,7539801068945299842,943484162544944675],[2245777233327352047,17249213478856839978,2173782979225619823,874973605130074310],[1001424908032419296,4183492692115837517,740986526967812706,1394832398980860812],[16277424713662625778,1352674905560055726,14494249286001805380,486802226530029216],[18160594305618128661,14728935349170180064,12514929318247900034,367399597394383906],[6537130901265295283,16485063720762150364,13823169674010708268,2631769435256404356],[4859248762256803829,9584343984602993891,1987540772204714605,2098963894906190508],[7031515034786319741,18275132255742271382,4323677802722786521,654301555566673801],[6799894136363316477,15151782857945782652,18411117048748230506,1898708911910688086],[745666826706744259,17567446146397159290,17029694275521485389,27260608986812560],[13098703293661233855,188671376608403103,4925193949924778707,496229296521733553]]},"quotient_query":{"leaf_elements":[1570071531379991477,4727612152181467629,9411066513896300710,16883188662781275681,3794771022735113831,2217101069748898559,10245170221026920909,6668246869627293083,14725707072555405007,16234540307829565863,3032785862684407736,655796073388821280,2853767002522660078,1884486221989689814,3501578465614151574,13793701041790574448],"proof":[[1616200536738074416,7982774960905498205,9323937005023158446,789056318155724686],[10658028648400024165,8565695268230384489,16318953676788949619,2434973817672414107],[4600052555526866264,9450498163207192586,14241998287906358120,2194933490963325439],[12590823811343337977,2818190716116514076,2779770876043884080,2136980450959473327],[11210472237266818801,1180336622630154236,7242235072920582104,2640120135016619206],[16931000801251833902,6052509604245528889,11968488165785330371,1556672677063880322],[10903435829209587983,8956446871989644359,13659308161436375625,2398062273416001619],[9346759857334410035,17357879698505902408,12716885971271276232,3235671482609092241],[7419082044657024225,4510174949114636386,9995911549610556160,740084141018955692],[4321723759391095940,5383714445900943082,12924114311805099977,1959800114989123529],[18248813950090284891,15264769847501014554,16470925086369571060,1641734585999141467],[6483723199069637619,10922280988596920056,15638188869268327681,524906435665901280],[7064726902681906417,8802656868035565002,10106252046860638745,2781091557009897750]]},"setup_query":{"leaf_elements":[16701293988911151669,12717733492337313503,16839096745928248860,10109518012436798952,16558552883517055941,13084243925848934942,12010567130075911449,6122520269704044939,14296929821880960315,6193193857622766246,2101600245934453523,376137331269349650,4804652258900645758,3849944895726137934,10994499961413995535,7661549761143979363,12888395814079414826,11085182739655196620,8752411132261344621,11281140057101703159,6169696576839868904,5849090709582567059,12445276985995983217,4110504352419853228,6346127431931334202,3347655863819703031,16119324337639661353,14630475914942928629,13978934954514453120,4943897523694342319,12909393369878546350,3813165339282253924,2390253967772564148,6290906497802444241,8211319162799391912,12629053625079063221,4093133371413920351,18121382652396892412,7953139713020132067,3159383338655518376,8072495412762004538,14569711008381684446,15412118939796724165,637227867874346212,15836390081343111288,2379056287835034830,15201473193538093753,9530416341093783138,11816995403227608407,12452972326601649454,17656471857516396606,81707916725270703,8268131378156997925,9727357083839208600,8879393306617700116,3432801084428547291,16375748110726746217,12850511115927161029,4178597073981254831,15867114773429021290,11552040940922368065],"proof":[[12528741290643539204,10975718579568652694,13919714049957052209,1227441226390990196],[18098699206066548712,9889861307679998155,6008232950049305295,377397884530818584],[16336886661038891680,1458689920254483160,8114869964942283603,705576327951669695],[1268137326707264959,16574892741912310808,15298800573350908213,2846991819902636062],[9325248488282481651,2428106188944361134,5036648940624683358,440866465815752642],[18280492342235439469,5655752789397339448,17296446819445722798,1053401606864585662],[17781090622886655784,948669538971273933,11705126096938247333,3444018051906673690],[1432881727127110960,15345576146065276842,452774187341208890,2841848704248745791],[9837277652016128890,1813434351550800808,18064557743896674895,2554336843557045670],[3137825612869565015,16190956652448818454,13814802841207229689,2727700156159039890],[14211253461318336953,14698553904440713876,1215335496790964480,3214092473229563681],[2319840627421732396,11880222938202960862,6462039118647357450,396343187455400076],[5510389358968454592,6342099385859423646,15847287637010183663,1721032798950188614]]},"fri_queries":[{"leaf_elements":[4141015755035035824,7929819373165337158,7569361209506647995,12559300687235665155,13017939409690148424,9113359440272217096,12582573815639195887,17723893858795052404,15797639268718969884,10692265460301980762,11173142034107009058,13246226450086578976,6868860593183859079,17535786141412617323,11749733549297615571,1763624441139498475],"proof":[[13810990734615908360,3794182279188607499,1037218506428924332,2489822007875813950],[2629662196557943660,3049368552432665046,1740197224526616989,333576352196433069],[6537257624729719083,10082067332431634411,9984240860145404040,1197366791836183625],[2932413117697364288,2539022990246264701,4707418089172622562,2191718811874383429],[11268650306520981872,822957727287946688,11389419539557084728,1558209520736845273],[14880453339761676419,6303383025418016265,12352442150375740021,2210075666515788345],[2619500987714521286,11482010577440727850,8410370375611017021,1364049326102807099],[14810850173207459937,2116454594748557248,230163200410766595,1641052023191719386],[15449742020830670463,2504111050166408295,6502440755783385744,2746750322419423511],[11512094953525416513,301201197378265374,4065232932777357782,2702801754939657824]]},{"leaf_elements":[15153100985228493408,14905350214289553170,902689133325621331,13106770401205820010,10548203388718182739,5631226971291496536,4368583201056672465,1906223980146206391,16691927880260361520,12583145723696337313,7899590774398371467,7164465056247216164,5419260403645748392,10858167653914846352,7302614057661440653,15876271216906965425],"proof":[[1904783563588208131,1162898314847537619,13267163592595629995,1311127455408813200],[2392141390304054594,11467022385129410741,15142332774791175337,245636142514410844],[7783768723070173024,11781420793876232060,16791622723489075159,44122111287453055],[1132848919924385043,14056526644500741775,6332784331118603800,2332792059641125617],[10191315401445696412,6280994496960481888,6251536364121698284,187367878256504162],[4690438310709256034,8652297081282077156,9367045947916506578,1164431050711913661],[6905604683261516761,785630753018559997,8071271293678686283,1371257465431982896]]},{"leaf_elements":[15549396044150810935,4377449947370068005,13788924562444469111,17902790492450737797,14596478425670398602,5656777946315898163,16447723180772387181,13465267525287585420,10147321902506868296,1196706565521110128,1798941292919754308,949685843388830599,3564976715598543520,5097215988352073899,14057553010599484721,11669462938921547717],"proof":[[12941068349182194076,3594824413437589077,10459936716266878396,2338368559615314095],[2697009025509228754,11000852118224199768,15389405589811843678,1770937907911177182],[10890060001537195700,13057372539207777287,17410616761313584025,588520907784414304],[1389524551255036162,7115597326301420030,4677436100140046760,2997251062732232682]]},{"leaf_elements":[8766804231547517221,4314020161339189469,526230993367059777,1371290347504725484,9718295733965069127,18006200898151862508,4150610419468893976,14342643557102012012,13624566138619880019,553955421167211366,15268536086186198656,18097336813190350750,4289863886401648441,9987687823700455758,7369310771996817417,6478430192287573656],"proof":[[13748503802770165510,6447469746112887630,5266659250392852870,2048396772139579074]]},{"leaf_elements":[6865243823879750534,264255220950879342,5012916995573505337,7094628130780347210],"proof":[]}]},{"witness_query":{"leaf_elements":[5559406573881567469,749647979114047158,2189369303140002656,18419533234370347045,12843205900125088766,16227917063144147940,15138369736228338970,11914333906680707129,9830544810698495231,3196375568525766082,9584440177031075504,11132488836546239945,7331505736610393204,10343053283288707792,17148709185694831905,10799711715807347588,7325658095155188313,13581931990313539551,13582804746812382399,16151380273755450655,5647408844646383177,5171761596719248215,8470243850122480665,14626999053933445616,1253149189715026325,8171668819911812843,4975466775497452553,10184703759926615095,240166324443738208,6254014312837991613,3588730827201630690,4586137197535668566,10882138679633345342,17749601853497519963,6632990996069083368,16205960487695758355,1441588256377950497,8264818239329985827,30360001876213571,3270673483845913589,14520735899985152265,5140799350816048562,1714431545223320886,3969014037652171752,6596312442985917284,5859039480018930667,2397254695277448850,16096277647729551875,18334785683309338898,12873902075764925648,3493113422607088239,4295190643307700815,5664664686918619232,15220117454373159445,17641386057706738218,14001084236565079166,17060523132722874207,9199559715825048089,14164399333952190637,13634233793380609543,3525357540447278620,12383746230339712477,15419092694127529856,1127589617814972591,7268799227794399140,9238062988522961082,7146791427965308093,8708187059102916561,9820530083865201962,12090107891248390320,14343717786298303731,6680054456302090824,17930373393932042110,9484827933051121536,10922549487951068852,14441454805826414959,1862970552748686005,1389420524302588430,3100872726551825777,5628365559119846502,8970181292497635917,118310903514786282,1950067479083966117,16831335976812094043,9985718005673396229,16724074902954696039,16982248023075576860,10027781331860944400,2967978148749316807,3624707513729230554,12492628729537296489,8272030015363138307,6251753846873914974,6425343718863761549,3479120408346943544,4633782966799949668,9640152578118653622,1923726657454455177,114607391269680088,12487522789097903544,14855244082228148385,523420015151053527,2783664324073169975,6860931776839535667,15873658916293966157,9044360822551789132,11945186818668392460,12908638575653736278,1176567727979049797,193440929219637933,14729552564792844707,5089755433265121856,4427157617086002904,17593464416358349123,4877586882370052878,10184564266837165,9611045817873368674,8145580947220915921,10226562319523599165,5750070584262348798,5952433866650115452,8175108559204031995,1897641242588797657,4925538441982052718,12708863831866538237,11177380226243755279,11233042365674870713,493190057289516361,9319397779211589116,16833356463292458916,3409447847206581779],"proof":[[4363853985937117355,15916481427926450742,9470470877753864977,1813665637916487696],[12416665117215326637,14008334988957456262,11895736360879716522,1790966554531433242],[15136672501117152787,18243347356251856274,16914972750673629566,206598928635686239],[8230904190733590208,8284327096148074029,1179053657665073620,3434320027778163945],[10671264266441565145,3416070959714203467,1922848527670402418,1785358724849789123],[6856778121222106268,13463639852634749821,13835268522783990134,2032974853602307968],[7723956407147189999,5494535696638472598,17280116167191638843,2516034647769109338],[15042620436125792543,4328471352099434356,4133763943020039381,1116156851058173248],[17709987292381749157,13869423038606411345,13442839829634682994,428863761033056894],[17193176952710025348,860096432313589575,17963610832003238771,1391358697504112409],[4734995795921915230,4623969510906222627,9256522227688797598,3473826067968244499],[2892709706934527733,17838480464587819444,10155705260521547536,2387506384667558531],[16174210416781440038,11224782680825625613,13584339858344595283,2293598389344857220]]},"stage_2_query":{"leaf_elements":[7922118165673263888,13943700770168875814,7585982531578202413,4345173226518716156,9348903270183886902,3506027223917219936,15257744180076487828,12157132206189901618,13815663275538098602,5036834221085854614,5528245645354817375,1348821689410919546,1862185301999167920,10666301250919858300],"proof":[[2219230748177032942,9015838469285855862,11880723110009211162,149473252795911993],[17512776156294770750,12097538450121691720,14101723035349276569,2900532533267601227],[4682283947832646192,18158128108124892144,4650574442869618354,122398471702395019],[7563129450886688636,16420673605417596663,9545803899328509210,2508037994301994233],[2230283105006200349,15422815386257433266,41282829872735191,2467667680051531374],[2531697954861284395,11780985214427733371,6665197058670131547,3020494169762385051],[9516200554373079523,5126279852544074017,4816142904478841259,1712786937460548394],[2767789402370602850,9585156646402169768,10823349752862006985,112930487613252682],[4097999239774129441,7604543444120790135,1894460702108994104,1086651341842154717],[17273947804060033556,16199810104635056885,17938796905747720364,2949621109597555988],[4307292625710429256,4505716506027778825,12415975303251403643,819183608158687576],[4099148929035402499,7673469686607061609,4505982977117334820,1485991602633362902],[7143706776069384250,15680275494194306607,14480354172152921765,2190139242083446267]]},"quotient_query":{"leaf_elements":[12055016116635274628,2017212608023413473,669701679481194446,6078620325433338747,14044359331667598302,4271925409999627628,4841106241464308876,11331545253000580019,6252867386451152114,8773725447174504196,8513631029463688082,7270193012201126499,14550843587098151104,395756205016208259,13808166796125838990,6210788466344595895],"proof":[[4346719354685880244,12926618114608717451,6759506398712597439,2141150052987243928],[7254921825377114585,7805564764983337017,10403647443254409808,1011905783111333642],[9321565990817839190,851277875937222908,11583634230498623178,2508619690757980924],[6912657797326402509,12104108814810088442,9985565283190634822,1400712640507886203],[5662121090399955923,12507363218258419815,16974820778594980611,1647747266231355098],[7462212503953252053,8846676593677081050,3720150450364719691,2714541315567993822],[17492906703257543210,9092582390869709557,13212680261756691886,2842552725939525928],[11023162467131714722,924729220689830403,180931059525246611,2003107902580152060],[9405858294736761853,16425136972550717999,13240745343526695327,569825521222689064],[7393917858099576981,12169024137893925324,5233685297229839670,2366559202330909870],[13071015009834032515,5244056340103240456,17527143666732474632,64895979602718316],[9864148082391051930,18335226582304505341,8569801661974152939,2353801358142108048],[893769981673929871,3319556979175080647,7336913751317520875,2767808378512761087]]},"setup_query":{"leaf_elements":[5623220047444164818,1486849908853603724,5705736442397741773,2469910011679317322,17640060813696286619,15495674158881169861,8931076255951265612,16187174705586483261,3650742738501422880,11172692071647106145,12809293825820435275,17335005333443614508,3451824887034557100,2054849750893442507,1536282935166712331,12147062624257433947,13516082013347612536,7338529306960876893,3238079718615534381,10705669825261030787,7424743286488982394,17597156848112869177,13784320392898251833,4543144423345199211,15636915115569575981,17682136220391382169,15277855497495660268,13281631218420694846,8881066763397756869,548473653017347790,17880217867505931013,4168029305008652809,4058713587932421276,15512466725411459678,13362569127572734625,6679227358791310170,7678533582410590572,14865097562197666022,2441692260026433796,13815040870290997649,16426473554826853844,15553185011777516705,16949718373317920610,3903639960654892640,7977641527811181507,97998152330866899,16434155302739157824,11240504636819924498,10293068834494327448,10571635011052521300,7716174089411559147,13771721911565119995,14448133008317346257,8980380690060668635,1320752963354097403,8817963984210094659,11321537144550734274,17397002871792917443,4688727770451555332,14536686652138656259,3250819622523486942],"proof":[[15281292989758118413,9960368117271073591,16980086578656680750,1920865640899662226],[14991627210139542205,4713171726195138160,14288455477410944245,1218436514210389947],[14436198302906163253,15618878822752666187,6904928634242075622,215873855892869042],[9764137166038254099,2412238046389423466,4374586455249890570,1720837215586288707],[16178437806443529110,1921752997018159699,8109843633569391675,3134183326258159401],[8534094153193231492,3773965563293280533,2993870264303556007,2953755658859541212],[8728450404752383960,11943747652111801345,4193216997335896874,1136719122625350982],[6374881958160804808,7715497075395279158,10456674726393758772,2858589021929213050],[6030411142193316661,2522123567541469446,7262132202201577603,3002253707942951799],[16032122289984447523,7499403857371149926,11887253149445581209,1683321519167369353],[12124909263257621136,10818567662606497721,3959115628505008577,1119369570721152884],[2209330244228393786,9841280879286562939,270696346365318705,11851569992788159],[12671376312025887274,17441343524713900297,10896011836861176681,2912297064607346901]]},"fri_queries":[{"leaf_elements":[11499804354974479026,8425805836772282443,3932488415933841399,16535845463908216862,7397434452379954530,3114701194886986237,16136885153449591148,9131173935143069256,10963438946675574798,3478186398916802647,200533693643064945,16222220595250667200,14429437228758843083,10973187636569281618,3148370443897343333,12499269743957640584],"proof":[[11746879286560344612,6051811078629901953,10774406656080209445,411811141102335575],[12518698658752874943,9732047466625877167,18188269043810642952,1926162134663873283],[10708180660010453041,13415259397284659947,17938431485287333874,2706944738517362489],[756187216599112268,14816289663633590365,15122165558869542724,1070025489475126399],[12956151689882073341,15314030438263027396,15990740871227633115,1399256910532196145],[8475909807969763234,9152329035167862776,6912010028224455197,2202459725789123163],[15750385535818593120,11946133434391833354,15343526478737079321,727518421252664123],[11024181518270608996,14617547031936786079,16376168583193951650,3074166109090888096],[380973593249884925,8211361821003589829,847491229067143454,1569444070397871644],[16109863426784669012,15963846919760798386,9142194185212147107,2313643416305218987]]},{"leaf_elements":[6929414629491842748,1365156121809170177,11632795321578701959,16348351580815114514,4199806014632749046,13478983893000608692,2688108622146495275,9153998855440637692,15170724909505682523,5555106124920959165,16662853090672423391,12690044657453622222,14740759025546313020,8165574303529211553,10798366361045348582,14424362084978268522],"proof":[[15537292091830035639,12925026317603621156,14890973226088930507,614546964859779556],[4463916695716678161,16874370437827275905,214848589596104186,972521220694257935],[11081156110326022310,13428368980446310311,12911907201251225563,2075006630915523632],[5029247599413956245,9614974761259856412,1607895646761284198,2761613305995890094],[4575792760137230209,11633705882469235577,9841123168578556127,2039102739463027263],[17680882297911546997,1285525161416870700,9603686181424221186,2725273453195948649],[10344127557781956199,7906363140092405288,5982125655274322770,1672165157955432393]]},{"leaf_elements":[12698284169577138121,6380679397958639310,13463694638516145173,1867763465918078328,17101323362300856734,5571058722937926322,1078874112603970839,18289262124767908587,15023365805438353369,9005816757625959421,10455895038319905090,6326587037493777221,3104769015094251340,16718980437211271523,7547915859214082494,16090006472822739677],"proof":[[10072939034673203190,8264993371088481646,14552178211266357679,1070107708830041334],[1975479693281105564,15428429971138180179,4843772626935739041,3203071186112330796],[11161226704473065150,3322189911423566603,13118161592899224271,687763930591193762],[4274407429085135596,548774181466706774,8603117836559137571,160198004595477839]]},{"leaf_elements":[14694649177522924455,8970524565615133352,6698130501351274130,5407467138564220850,6709057259898075644,15065386984471511193,8847484406550740690,3130960100291456344,3694217830831795275,7041401053929351398,879613210345154478,14654620960715256415,11095625651784495053,10579595773725487118,8663536013231766845,10383856026212629571],"proof":[[16046369096493514353,11215590715117997524,7658673164007518840,655039943382377449]]},{"leaf_elements":[6485988802393016559,12130974100501667025,3138003141619716888,4081174251100168420],"proof":[]}]},{"witness_query":{"leaf_elements":[13045638056005190393,13030191807473405744,17310937158758213798,802876004308351249,16590408904121537754,3204313087078418192,6647499931969547427,2406600641034318677,14754497814501916074,8799964358203652024,8078117943781342456,10820513014824133509,17775399899322435694,9167969689473628265,9201545433445297350,11001210051316988901,15451422501135685793,1172658916690353626,12080174720561729347,17731548320806203400,167612937351920271,18125454603568637672,12584545882517845542,8988456868624285620,12815772095462106726,4121343729348634944,8133961813131046865,18161796032634800992,17238031223982757847,652750942891806739,13821159194220858566,2354715408053866045,14288210456317323145,4252765257695200203,5399759088249943704,6128258284474699391,5613383458352610857,4925850387416044132,8242597797201387137,6062847965875482143,12987799638006323818,9168383055568218515,18016323572352341928,6618590560390955824,12336709138269286372,7281168783543597702,5222363798857339957,6243840294323695306,11444671123888538188,12207613645922346065,15268023839617286334,8183592922212972217,13241563679947138939,2101171856508860239,16780868352981761961,1640666275126129822,5692998793602951277,10116632386476475703,1975216404806820585,7298507116173693005,571415976573295533,3322570632493704505,14774299226439264603,5165963963356047007,1168565912216475895,15773435144079633692,3523378655803884265,17032602610164236075,13940214908798110521,11315798592036388116,17320734295302875997,18178204524242918713,13091498304763906812,10970437170633402120,1850311158911041859,4706147219680953526,8874598240021133611,16514251618836565706,17595608150799706832,4632673587387121585,4532884191230142085,12820485894703422132,7184482191892395181,11439903065290265474,12476129150578479841,924420765192224086,167203907766865015,16944473854472164470,5559146935263821643,13242011512894284381,8374365479291569822,7335391068161946665,6643078271824181175,6267939086769510402,15465654477140987470,8781383466315201766,912198067216312198,13662057183974058480,1064410100548229287,2519529813704305423,17309722451680557099,3252961591526735729,15665480410975473742,2425123447311407758,7115333682971649605,983561668662386744,4107870770360521928,14674184698954962671,14030307047207616593,14962983570770429519,17839864796273435846,1563475775716350731,8646934951659794148,7123097632563292805,13269135715632387210,8107392759825062179,3207529222201570256,2921513304892649043,854544875333376551,8328939000093668306,17316061104171437114,26753153765059724,11280157440439506556,2147366500633857265,3713327766650976969,13179644570978892739,13937422695327607725,10593052274751176102,5778642146373754980,15005699725661797955,16134018450820667430],"proof":[[8123512620285352593,12120275135548799438,17359547416993716440,2375349224925778904],[3965348935089276409,12815588592547547981,837868902004177388,742689524218448671],[9125071773396722688,10810829406734117496,14213024766168573703,767037916271083689],[6802523782377188243,13876779709159745282,3404908396023706801,71995098575171362],[7946386313275069542,1006192980158858364,17804942231971118345,1841860580871439205],[17784593099285883239,10816798478632450887,17013917358759841856,3120664882638367337],[1650812198388228740,13113248382101112316,5517339971177569069,726834285887879586],[1079272573430420010,16380119774048879336,4723680866198798696,1660631656862667237],[8834834589058579736,9573414920538195309,9469969059822307127,2853566505153225370],[9068500865335892846,17894902570814080090,17843791793667551540,2741035318267206374],[8945142244981022397,4132694561716680804,1668048603293474420,2592677836486414188],[2344436475178933391,4062052178812451310,9943466165468859811,1840010875486786956],[4832379906115138372,11028588231085674769,17437286517034418486,107753723037220434]]},"stage_2_query":{"leaf_elements":[9964110427227420818,17948518891976042144,15040192877608502957,408255667849237302,10325063572155835497,8439934956650689287,10755483807324323203,6117716009988039968,3792562753688536017,13838207241117508287,1176277528714501882,1042688589988781960,1754916643601715775,17163827646567502554],"proof":[[16996393949617460733,3632062165731496261,13313130332924304666,1630528767298204811],[16990938332687033481,12259049190853548370,13362131874901474396,36347199092873082],[13824325016726894436,8947267500020652106,13540399413107610471,309692617945407584],[9297142853232223576,8567684425490763008,9119782130694839939,2855025655131043333],[4567979978282458564,12900497740408619646,12676812674499068105,2109112327252332536],[12588861949601185765,7263126999372261143,16640882277990366986,1547281470321861553],[8545651807061195426,9850500085869610881,3838249122541807916,1380282496679672764],[11667502565552207664,2165987279657900869,3051573764719478071,2460158704776688153],[3620529574409128049,2909611484370346720,12673113813508401893,831832201747640700],[8650771266622145962,16375676950112046283,11481643154926592963,2506719908025588311],[1440829670241841936,7882718851365202077,17428541729952155132,1230293759435640308],[11264749751591383823,767628461264999960,5345022302686527027,209784591318481977],[253179850175611026,12208827844828377664,5809494268557619388,1729946356149640536]]},"quotient_query":{"leaf_elements":[18320236754215577267,14087485729002080709,13258114896207930237,8549288608258186846,16675401220414594354,7831309406545088311,218892335845074728,3977411489939216740,12911992331804793173,10072364754810694118,16211230988194276570,5807629257565582035,3370326243305909952,13297231244805871202,1298196375491717041,8506652796902952638],"proof":[[10795066615344129868,9205095709922883418,11164538196281451538,2536294387903744435],[16555659534226758242,17442422084721411558,8072697531427969671,1898975290372523535],[12530605775431299845,6927200052942604032,14252394340690115436,1531807211526720517],[6291149450355889093,2583511597285454446,77089133396865632,3356141060095730200],[3763256062376783710,5237355023526170916,196459803660642078,2505473292559223178],[8266547866082697416,10051423282950453516,114948799430868208,2854704686060899211],[2119359842376135242,3686072364287080504,10550147581811778875,1971050412122573447],[955747276652935470,15818653483150924295,13600681352204114295,894597453891491142],[14619688393324815930,761000202659330304,9978565748744223525,2370822683263364394],[1597696285204455968,13113360678186446514,3340200003660249777,3231363616013267433],[13333611037837570757,10966559271191553465,10701953971674168956,3279215810258115057],[18315803809008667171,17325247700639040458,15219730772163426330,2799321953579950557],[7207630139810091379,4266854911965260134,6829268419185610647,551985630482796740]]},"setup_query":{"leaf_elements":[8618030009547498974,6385221707334005108,999267163261136269,2497994390343262526,3879540893645026842,17517009067123596916,15876412348961807214,11034087373355473470,8910326643677640691,8799522270427415358,2340991441367028849,12712729339264631845,11453987099961685661,17352447331033467913,960869283003909962,3758299026740878624,3688492002786059216,12916269957023495609,11204079218212716752,13038758213601104287,16933653716907565407,834919346188309385,14576836968503540651,11412146083908998792,15478924148781966959,1512678958474369764,23691550911449970,6535151887051679220,2455648915410774690,15246607930811412763,17947028838994520143,6600640148259172798,7008131429130033283,17845151254159996665,8982537722550889049,2485837081782247034,9456712775765498175,975360696283026528,9902376210496183357,5889025332348570560,6928736622450437769,260287381396841731,13935858581771422070,2748239125819458307,9491009016908417882,2916579586732753976,16005641524589569150,3276326280691782404,11855134707059787152,5863063044541300785,6951549728962109331,12762546720758668089,17448508930515584823,14081729920200838262,341827269400327496,1309443904470819778,12629702943489139091,12332774047139213327,1267983895416088178,4891976800485821634,8750312603503278043],"proof":[[8918454826267477774,10754472288106808491,15048650070452286538,1760172127843770892],[6165423382990894590,10954139324402215260,12413879530741085376,3352623047838697773],[17972078878258736360,4610371874464303928,6291698035743062732,3237809959316472850],[6797867917032523588,619166928770935473,9082101157145787557,179552252916943602],[17013178990683563157,6203741405937926720,12859899757064031639,730483185987368980],[7922420619031895425,3696540672806065085,6552623838820640206,1520809089490749668],[4372812095555420331,8127906948003991624,2424236896461775675,1770682088936431861],[2770538530157594564,5780443567346104025,18175885130050716546,596875292044124240],[4322566344332243665,10868765582588567085,75646602951629260,1456365890761453738],[11589937129659854331,2308153153867951199,7691243075838988815,2924742680175474849],[7888579360829401936,11922182204266290931,3277690841049468158,517755490177362798],[1693793544362908852,15539779474735271465,13362084606296023968,83073674722645432],[14430152768018435667,13625155425001863663,7751044715815897218,1229189555835738878]]},"fri_queries":[{"leaf_elements":[4146213136452883636,14795435396654831333,983596790011437951,14880766584525825750,7081519357444572726,2766089406376777954,221636560777844516,9719270305462953604,13899632067138295376,12464190054389256982,6809020990790600415,988231474761082054,631569550841917299,4276900228554782388,8535552846504963826,4837466174695308259],"proof":[[14087767296181995621,1812668601066023463,9090443059647198287,1318272920369882104],[7963105915812053840,11966223071664557753,2878127094994645709,2429543001899367103],[2955678969250974400,5601837148532324599,16330727811062852955,969385874281984049],[10970414655829664215,16832902275374834431,16759148418683583890,3256929161684250134],[17837400744210882972,17895829555328731091,14342413784771492518,151159139566663800],[9944937977389129559,18100563834998528949,17572705802815158021,1346615519744565283],[299452493740989679,5358198693350343479,14747194576469339651,1342882558941638346],[2334033796281155824,9182664393340093512,8909395258253325409,64655080554692372],[12297092375196949780,4063775297884581511,8331546240352635221,2811606575599316396],[12917255288235223966,14499976622908166881,5436213550229819212,2285844493389862808]]},{"leaf_elements":[6373219193121711340,4448279816432271980,17975623741262847065,9476726989032223249,7642065529123482358,689458276936663381,15422990595222320503,10654897680639445351,16828799326067910516,11852633489182808806,12551358371923848215,17065583836921768295,7271866266003847623,9463058923895044719,11660816687387533069,10251766953852857120],"proof":[[8217782303761500707,1843280836953510061,12877973437016205234,2044008533816622988],[8268872742321199501,17820894844992548146,1946700084338542352,2785826710464694828],[813294305924426138,8953971294755770341,3841935015826332875,3331395153047427033],[1244388220173410487,4777947297051763420,3128713601712470364,625341966561650541],[9086339667247899932,11767333141410358478,1364274073655938976,1497181780258460751],[6638888986919699988,12415880786878933592,15353235368647017313,2241137818206725374],[10678740004480657638,4821612586301572701,2713702765633163690,2883361707359353505]]},{"leaf_elements":[15749615179547859340,2385152170382820467,6158293238120065824,18369397314479308768,8991264182857186475,2595109540519853107,11246271456213909191,3331755789946916381,3359979770186950142,9104016935107853096,2534950715098935098,9951046361554612799,4624696666452572261,3967934743989208892,10313333747320396397,3330206376793370688],"proof":[[10793563227244478484,5495909705855147512,8319192668437680274,206746755093220507],[4178421919246597878,3661074070934431092,12704215678000201331,3171860511508114163],[12947327200571502181,14246179720668150335,7063786210406221140,2827464451635400985],[7349579519894959072,3479006254350232831,2249506297850984686,3461002273469143448]]},{"leaf_elements":[10107650300144122446,12872316686921106367,17782138609005632202,3101284115629698348,8129718703149136541,3488748637624496172,12239539572413537733,8146046347961466389,3729132655365631872,3816743499182286664,16730468474630639466,9624190507278423052,1879743752497581249,4337712219509902155,1896622693346975870,8179875534869575739],"proof":[[2554532247243837486,6767478030061646626,4199547846988518451,2086946322843166353]]},{"leaf_elements":[6865243823879750534,264255220950879342,5012916995573505337,7094628130780347210],"proof":[]}]},{"witness_query":{"leaf_elements":[17594712228481431481,16593049000657764116,3192453836698890373,2827379378138686218,11049225200589323726,4059759649040444450,13767655809015639858,2003528809541566918,6050384086936142601,11388468092781753140,5108782027354372609,5573764071596868124,7741677850997103105,15321552211090769442,11023785334913494981,8760122105723694768,2927917564348911255,14629492412423866357,9307174832375821890,9342103493508957057,1688871804464269054,6419686348295069550,1973232065755862408,4255697477556501362,13969568555507568749,18641175448808320,4775292550972812922,2145717994679041343,17032900337635926623,13319321331126789096,9577125875496422614,2749687349459057563,11252224967082642910,8001764387679242568,12602825078551091413,7667098944453763739,10424391424977562418,4771139287145787494,10764244370967796104,3075246956501869535,15694188838346060350,17391089142925758642,2684632776573306210,16267504557300418429,13882007804885461727,17908797212125396325,9877985175588582318,8236467041844073410,677078963009221309,4735138105716775788,17006710484629239050,11936641322571129866,363143428137515214,3957867286196139163,13429488082791814269,11214636643530238697,860178825719461593,12098463406091192321,2281952856940996716,4510022028682484610,9296393797760422113,18391349732301408796,6673191929670157665,2816306319957211828,3282454602064069042,3920021522995118849,1240967092715129606,13933860033514949300,17507835051632095181,16418791244019036213,1392353942644101514,7238317901295841333,13353115105537432868,1316798251837228732,1969864329880232571,9059242127906742842,8748664586686427807,5546931123066691062,15058884491269399308,4747383855309135009,16228450589734459884,17339491867442438742,12679318108653994396,1312495849169682941,10792972672186353969,4076114097138903134,4260881308412567660,4424676897388801581,7531254674584477595,7276774955470905664,15533219067084233939,2917514084470395170,602652174108739078,12885257641877364468,14823836242432932154,7056424690250958561,5265103550632152965,8968742451623791816,10400236047628891827,15781863473140056186,3173490495531648621,8865753910898506880,711464847612847453,7433423308621476867,10582953247533274182,14539854053192509407,11356047801113540565,8195581380781699452,16651410617755243624,13077903635542199692,4479353632197912574,7052573062040972352,12474147785644597020,13192439888231133969,9170294499847928510,16244361004664782794,14875806970888805735,18287125443125812141,14271316841094863567,9987895921271634643,118112512211833099,18404171946742118727,5663036846186676000,6324863840009096728,12408013088273174018,9371341240514980423,12429456116180957490,15716453089792583719,270946551750556689,8111344784333724983,9256332346064721451],"proof":[[11601569527071904626,2207160474482540779,3954386823163440535,652534907282761902],[11258545736728660753,1658880292145037096,16464234970613666038,1201198080064964612],[6461867633353918521,2169392399423026993,8771877671180459937,2532405229368302422],[11686015906193174377,11971601974109069622,12782723660110111158,1502600254570113437],[6066460396114688167,13714209511031508462,18024375940725576491,3369512143452986644],[17842934751409561389,10541735868837009435,1525583677003216795,810932642537306256],[1257366646100203096,14154226092862216010,9724992082628218745,2376724297178552284],[7813238373931033584,1387498207355888363,1701696535736584805,2326462465775729747],[9263820449688069916,16865561148606528744,5535900983606645864,3339830188277189976],[11087646283219186339,8257765940274267283,16564377859614097803,8149533126541082],[14320153604127691138,9970218165963075177,18437857222265369302,1851927438058469084],[4867128387966308819,2970634964322252313,4305468736211036881,1331764268425527793],[15518311637091593798,7323673137202733312,16866621021086496135,1758145248427367643]]},"stage_2_query":{"leaf_elements":[3844954530135193211,10712969610099561519,17303791143738496125,7805282136058320263,13105525978127959468,1413300948043266152,14242568272864760693,17142340553785413139,17507704795959384660,1130336821089878372,9841959488108002138,1033207711056503133,13206954069210103068,13338128118065387650],"proof":[[5322995688793607529,3916873424303793225,12588086130162497007,1233356601345806357],[3740930269835630911,10549426733890752736,16064592246810609838,375557000053651846],[2744421922904523467,16973071291470623421,10312658665784265455,119877330089221933],[14176084116699993954,10739853502245407293,5805680227924258646,2743892177623054238],[10113235695966270177,4985478198938061578,1576666876515523896,2834465336528148436],[15397088457642254129,11987414861007222128,11934895806089372622,3115953645234198180],[4162156703251917524,11249298832756319366,14758493569041095023,2075141445865205174],[12696428765020101388,1875424536965578136,5106856087063974875,935330085269202244],[9521099742196222,2624336201998531745,4288133587122099553,3352980340369677347],[5605843168891182952,12945943306679240071,2015401203261295875,2549317158670480905],[11522075779004427866,4861585203080278865,646242025636271542,1796407776246754468],[6405381481079513988,14689574099534140175,7330487452385558712,684694691471920619],[4875747540304223294,38261405649231656,4774002524529870398,1268748351122893534]]},"quotient_query":{"leaf_elements":[7411110861272348397,4063685188378939160,3268581252017034750,3719041965109034100,6826357158038214551,11435114854816228633,18288120956409145756,15476248144777701370,9035412303670118323,1301359289315020746,4183350190679333437,11690193991012632295,7435762539165192772,17710751050620746534,12273180035479470373,17586747526841263489],"proof":[[75883856119523484,12593082114158901444,6597561990597188058,2453214043854483606],[14987999437150016389,4447001611062561246,3198154291410587046,2259544665748590173],[5217655719788843551,17239509953346004365,13858100547361089873,1450990371256849484],[2293378189690841698,2020314472580018729,6419297441404168409,2945203370096974168],[8894190956158401475,2762659337879337981,14842644786757980130,152643153709961556],[3540015870230002091,9559721338727746175,15332301383375956051,2782309516709074203],[4743095694255168778,14324511190603200915,10886193452728348783,1538174257793110890],[3030104235242216432,10594843396077250012,15947080307019748231,2193549805921732300],[7817160382485910063,1220013751217467561,9505069066091554657,1536547220185742981],[2229396392163593947,1723875158026080710,4147448721162570704,2417008505322238152],[4642872429447775337,2417648541373296635,5310731098671176732,1335978130614858843],[519174363265327741,17603946692452939811,7817902012424311464,735211675914646550],[10374326063544463999,13619301627134064518,17537478353870779175,1830171422987131595]]},"setup_query":{"leaf_elements":[6486730117611485160,5209749231653045531,13649003542322793023,15159391114493196603,12510780927902282756,8949714754307015108,6455504364064648478,579019099428107235,7564399563333944704,17031975393926603610,6323389328264236470,10038639528385495489,11991486481071900114,7939997714612756448,9124153884266099270,8607615652024527587,2341799487567675021,9346633761540022974,7536266821385858686,10745468764652236360,17280175426640208077,18171902460968473557,15890900746564439696,7699701595963873473,15079448164177003808,6061655006352335531,6016460129462704714,10100012253941560745,7303754892901023891,525801844168714958,14286411189920018801,6067460519052488312,12622587859672381586,7961557046894701149,13285400946030221067,13173261109356223409,11812622975214150840,4331194626958113463,3722681549059764998,14076263263579838669,7682582486998979535,3520859724338333696,4765082458861092726,14562311009334600010,17679094838098581204,4507051210696351647,9985757542957822414,18221629197624595823,2764869293782902767,17234978251576464709,10763723798208699881,18147114035958766093,1540086657688446292,13276379611110088244,10430390343605099612,5889279196347270190,2641398289932313650,18235733519088780453,11316261937896129954,9734059211730719288,17942406421167398090],"proof":[[1632002439770423206,10180571036909739267,13290645909573727944,791465031887583280],[15071520480869561127,3500786488624564715,17479871707302826433,3434913783036351352],[365756654430348890,12071449698054582968,2685670206394835533,1153155530713303367],[9346000823188635334,8586447157215307259,14807539743941229017,2507235944551469425],[14785834767341564852,12525926785786561319,1736896776184992490,243032171196048572],[12826929290018025318,4395435405865211586,14742208396075391296,924852762928368161],[5110596655589697201,15475713219464016932,2066939109513558173,661072438612375507],[3642391079750522878,2705716173434455687,774694482561543120,2868684941985713081],[10438143222845874034,5921815875338294036,11963762284564070990,2845357315015131635],[980257522714833611,15924069168176486615,3841729557039544315,2324611782429118675],[11814081956833418779,7096355811716236862,5815602076527851638,631123736172657743],[16629758827854654108,17682571778901772101,17941965808918577150,915619972758397393],[9605218321895730305,11490338743997647430,12823317278098842748,3415966057955770875]]},"fri_queries":[{"leaf_elements":[2071463506386682215,17488008895798510641,5310097325601282247,7916875755324516966,14623328266330606694,17683068451690849461,8615430338792006509,9161524716144498845,17252479674671940294,5040747481217755454,4401007837345643131,2495275470265233,14225487283538426367,7164575612346793573,13223952680366834954,9084349305626596857],"proof":[[66686872131588147,9090762000550935312,16991839139457869848,2541789923048534339],[10778772761981884165,1349871034595345429,18311103318457520508,1781124120079423931],[14368694217282840063,6479971105075814225,12706747062588799480,1194988761556000097],[14733818491180510583,15066070604905937409,6188145800451927005,2565957922231864991],[8273687034267684468,2637073237306905819,7152933216542587695,1087463239176347991],[2910846906052754915,8083533480415551910,11649333494488028628,1513039064432274447],[13415692629901076492,8577616453043143949,9048336142185042189,1790918626404120807],[12822880563444392943,8928188531713254563,10808718581413111051,3400582133303270446],[9967701348593166582,495924263350042035,3462628003174902198,166316931801075501],[3942694800911061276,17921159622511465582,580068548089853162,1541139455362402679]]},{"leaf_elements":[2857272154631741886,14743123542359265782,13314017435105058321,7748754919447435346,10019201833677441310,5688176241562501435,10426770556386333441,2173479098131691367,10887845495145396258,18368394668135803843,893389983101835020,7028946764234342891,9089811016019667753,459301820246590490,2060602376968912644,7781824238065606256],"proof":[[10002428472215174151,18400017171384940756,8311803233088297717,723610117592992140],[17261124839663676252,18013028996214630730,2503600958834781202,1597395304914972278],[12899060076629031821,7811470824192415684,8860848390029301469,3368569230775498424],[1731845384760144440,7180986322972544628,15826643773445701893,2270038857329432127],[5720604610689012225,7185148655877201843,9289879939475094609,2938787019894021832],[13695243512197703922,4457698671362304058,11046797326166973550,959503591023363226],[356327678543436235,7521747318871730224,5926762661201943363,2802249010558468471]]},{"leaf_elements":[8424899667221534324,6612756415552191136,6612796931283468376,8597016386047461390,11326844825772800350,8192832428246823869,11106453837140316791,1117948685924218467,13750917578457324240,10061966538649067179,16862294871236636093,17729303802207113239,32335188817837376,5680295553451216637,3422205144263220565,3383972669635048930],"proof":[[13553095190192181027,10727398224364960259,9175819148353165043,2547522677278321611],[12951644801913901490,2959430091162009480,10551374789189466428,875497288094680238],[6039877870596496556,1355185342888665747,3773928709771887072,296080807882380385],[7237173891938663337,8631390836781068402,10195641615156176892,531832987875452158]]},{"leaf_elements":[10795004986083287740,14360811068350965792,18254495574033950592,18333342172134336119,14842711178151700778,13998845893516253700,10325734391175010216,728330817682000593,14833964987039866727,11273087605295804328,17484234131895900348,14761196949777933922,2093000788320605630,108068430464939824,5682827616043446557,13244346337575742118],"proof":[[16205375200041717684,5114539439251029462,9508763204275366509,637819813805455874]]},{"leaf_elements":[16580212810250977730,4470259858681618858,8395368088134860335,16307579962635236903],"proof":[]}]},{"witness_query":{"leaf_elements":[17605809114421731833,10658546691552597355,13656626287559466565,3953830549984924800,13953819023051867855,4387218660890128917,8358793968849769515,16975244832414710065,12840688226503727187,14436944545562459422,13799345720419591515,13858698828277876539,17992501317962785701,1768934871347875734,13859466390318440930,4586611731156393494,12110727071811113740,17635662993504269724,12861457794030191183,13468661187730810453,8492054548412630122,7011165894337281053,6596997413522146510,2227655830024039880,6839104907912599069,18262659238575738938,8623788827858857483,4575403814646411965,17780443593568669570,671198712122360227,17770663962779868844,11794779499242187519,12130961199168905414,13167979851945066539,7688849438401005330,16934184487408401972,16492835610420677235,10613206371057398164,6503625041644053834,9792713627644354124,15109410499352599782,10782958811390849208,3010822910248775373,9849725565306094062,5197640242108846060,9376582587236116682,5532314110323537359,11183094702428307470,12752080905916647999,13323106519324431655,11593516680803761379,16527495836538671416,4094304953047447763,8678099578739486207,1769427829016433002,6287577702207361271,6063281130111677734,2862509691976030561,11467058383508272071,9277413335651116536,8744855625273472608,7708050161964060967,13158094667203063094,16107484108507667107,11307327218605334793,16837042178794894587,4947884112213757431,1454889080485414701,10968347130955428548,16852799517936496946,16444494470729734504,14290692126121830136,8150582345829049890,1399158009170172550,14876221389046809016,3115643086949530991,9697657257504673156,4542861182939023438,10654113416499311085,1586132234694866193,18030788893459337030,5485161751920222560,15532487366262735021,17629642559324902816,17374371765978508817,18051518164294118004,5927677595267164047,8437042368849396154,12361117139770083606,3071403873385414984,18070214135906693603,11365727902875839776,8321299819975025716,5370443834854712786,1801396468903323074,10598500145807043639,9270407327535041902,17287030447066328234,13832702672597643585,8315074128454805349,16661324752444515836,3970969613737106622,3809792606354740267,16348755866178404174,1769757981006016182,2395372880239104198,2194984846834180368,8243081187232774152,5900191832346647115,1261521715556389929,9003331112232345235,9002598074369319771,5287707479573540879,1876973895149439960,3990474616653449981,10809534305078268555,16201214172759116472,17107296305440325802,16490180119223580809,16415580451067785906,16750404337522450513,10218114759352875418,17050859669956747467,13263071582385926370,4064196900620266798,174573754828544660,1024433843824935494,13047959056917866689,7994516926635554643,2187452627834592673,14407827147251931062],"proof":[[9078314697975022562,9098901910305926774,16275978444288032504,274989436114260701],[11249874700537221822,13801396524782738496,17352215934472603861,2821844291408356429],[13352364272011608671,11357451007260795983,8981596073504687310,1581242074620860310],[12706669123095089,13162398519732849924,5564309125572187136,1379600085958336050],[6417808938651468720,8992199984850248935,10996233347521781009,1778755417148858166],[11811139455832068351,4445894624612048537,7500077269535084365,373984355413339590],[4662133234977522962,13635902938280395200,18440562315474524247,3448430147155556352],[9967813899400508050,265217299073687819,2119760577160009618,1683396352112395726],[2097688345774291867,1551334356762660159,8676980732097792236,1380356550077930328],[12311588002355993115,14046779706496227818,2514591721280086408,1236085812407252772],[5139450616859371181,2087204078897206196,11056165366781405704,1373790495304623363],[12889308197316909207,2282266747643383222,17495160709644002465,2419368441022065796],[4882341907511761828,17248529125536155909,3175697314877703332,2970579942529858095]]},"stage_2_query":{"leaf_elements":[14430739715548342481,14295364953876423369,13383908731562167414,4021376457938763365,7280317893064294843,7108546502689551277,14415689918119496905,14592231278995471778,5907908262291426144,14731821263598026548,9404731801530369941,11941705618344968765,8656759241910643328,6966348011281311636],"proof":[[7495912549508828129,14733524180597245268,11987355383340777831,2137136614255014954],[8075028576441004046,10408164619714397457,9829122380347774983,146141908060282460],[797005123299356942,11994804597587635699,7183368781360530506,806173439918613210],[16753085696494537344,16165316543327435946,11426904865582560035,279178507487589955],[1804769633466229342,1573608888606020111,15999550575919971645,974737622330637952],[17170172592273192900,12038038528345244274,2864979488765030673,1979355731787055371],[18120938113191513356,4932364082435130015,11871460451535109700,2939088286197845315],[16744841360254723943,5769656662315364922,15636336807664407230,1839315306604795112],[5177743251823448208,4326570970243686590,2492624941525607502,2634314475382688021],[8200862497347994868,12993355160416960209,2313472834601161464,3060061178968894826],[2279343374209367606,2164333708923678881,6016385070657409954,1594124521952387634],[3091719033970318313,13966232134961963679,17352051512255518833,2117206648197379507],[7193705033799763541,9048181582346268552,11152058647750961664,1742650808604916784]]},"quotient_query":{"leaf_elements":[11717999614889612352,6710663481663955427,6369298512351318286,9005297867318841159,17217266035524043859,1555505765335400042,12727968002908424504,6343562850414666,12675638902237175630,16707000323484678044,13478281849849051943,10320982349079097680,1140064261157597301,14333187151742133609,13518715212027509563,16345118226106906575],"proof":[[1673522622269838427,12970601757224914113,15032770239839208693,1742371850895926554],[4671183340483534948,8360294171165015929,6223841836773903668,1637751916481665441],[1054983099440854833,8719559781484191404,6930357831786576521,1686460966433019299],[13535775282484036053,8696935580285833735,10526161654279865748,1797145282256047147],[18215022457257751206,842109970180421055,12777554103825585636,1477627904408447716],[6965628319637665150,2178706704319885499,4115299823955678494,1170552591919068820],[3218275109395321120,3650485915920324678,3766387438261231373,2945642052547398144],[7319682085484880540,167043397619401794,6342802902486262924,2210144679785232500],[7126967494033341404,7910734681262260802,8409603639680244065,935981132460601280],[14959185445280292951,3036589757253135287,243382025611781600,3420901177996722616],[7105253130684250977,3241432610934844898,18396333052216698749,3252856551037188689],[1339914433452434392,45162647631230588,8631130021405866980,365543632767909237],[117417962886288672,14214076626666423966,6745455965795245453,1238354374129802593]]},"setup_query":{"leaf_elements":[13806592382513433309,17014359232589288244,2294455331293768089,13641188102213920408,11459333965920234458,16492729062134138195,2892050653963654103,12826707984526020493,5771084939800199690,1453144797466857447,17667352489062905665,9622072134786395635,16272700103366747883,14505344358655507918,14555362417741230494,2499806779076703038,8790221429619365028,11145634307595658760,4738365155557420953,2603647885267411629,1419978873246018876,4782516616394177526,15038959928094472318,3657890030390435268,13002408538509415534,503103934990690271,15348407155100698101,8610741402755092322,9144867498773284438,2853586662006165991,15291342823874671583,5856815255689917386,10794477121454832477,7348696326207771148,5322339892291369835,13595645147023422412,15395755235043394421,13127461100239628252,8032183678014896713,10032075623407431751,1427021943756203049,17671261771496423997,583947600721504693,8226004828168937456,11436625142153606202,16084737868666055364,3819806147631901050,14797525099299765141,4132986053036774357,22312325106518851,7856863763216593737,6091504133169376937,4112797042296888665,2082743184016832922,6770325206482985284,6346138389363604513,15590639913008161269,18211640448948684709,2128393900035589772,6091669393898576722,15202760537485850753],"proof":[[3002907870901220,417390139536052163,14797128980443620770,770976699696311463],[5175177459462199886,6769643913429205562,3866072970190365825,831009524654759403],[8061844020870255915,7044744676204329173,2448766975466176918,2029119345697896943],[2375531020744427089,8269277120654655391,8538697253598924129,1579201626282693980],[1058947531228255021,13502104779440662920,10301078704183360270,664754837139090110],[4899603562823662909,602483818205431903,12924497671876388686,2699113340575054589],[16990312294546780178,778222941016554731,17036887996952097263,705683733119794285],[439438727141975402,15940450817259164016,5985309408465010508,1952135629598501856],[6499532775735121977,918266073547725644,17235679573324865457,1385310496445096345],[17732518911236868111,8695815302346154982,5974038600269524308,1976622497695164700],[10171103296261072729,8004780863982512820,8226463489668754977,972255685900117889],[10336914720975372098,9618323270753389619,11106414814916715037,1399209016732401409],[2812288052570429747,11192114483378251971,10192533965505786912,2372986316534941658]]},"fri_queries":[{"leaf_elements":[10906908043036631944,13832680615250526581,11559078051263532286,8898402442791631229,8958030243207267811,14798334033293894366,12784083012712752001,2790866510236717317,15912125522578983257,7115140346860084389,10087842466278683564,13374842629660240814,9448292995921673701,3172595298311373676,709638455578477234,10438156065226873333],"proof":[[514595019331859107,3805249560099683316,16673398358662117827,1771484359283435480],[13351366678594219032,1070683893081881898,11942192261313368548,2865999489120888905],[14463598526357539431,11895276980259220352,13804093046941875603,487277178471638953],[13941702955462022486,12118247817631989940,16398767733176544653,2596695144447207452],[1270090257606092025,12015768439548632671,13530901279833131329,1263395064705998924],[4171172370961205212,2745649269923538315,5507954323922123986,2546845001221494443],[2652072232526668400,4696623662717062601,13290992267644511505,165375287401223851],[8027587598170013989,11627758616813150524,11434861074461238380,3471640561763885200],[17970507027788699634,7518146182630518600,12979247614906369857,2264518446436324027],[8616858090914454618,1663075563175866095,3467139390527938134,649361097648535523]]},{"leaf_elements":[7814465261899793890,4563248719373135387,15731542184258903415,10899545513446294272,5406985610261228272,9416432294167410615,2735177041035638668,367678197572734888,4074076980221508720,79151403378584849,9012898396866868341,3209760985997627869,4478326419224090861,1897392246638634249,18415246292078184712,7071889123005461384],"proof":[[12618312159312005042,6920130729970114015,11428459262180890110,1823029059063422229],[15027148448132599366,9333717857039799999,10893643007962355944,2213603187146284068],[7306411376545519681,2771852738032742319,8616306018600029663,121022245389855274],[10842347474234112954,1487931343508683399,8658878230999581826,1101982334789710067],[17328231401873326271,9509134007184042166,12278013693113723126,2947568277108179231],[2849322931733077405,17483247710221335294,7437202443465797114,567741684499503304],[2715489747108002065,5305903886920463068,7746148398384784045,2253146750247811367]]},{"leaf_elements":[10682835866252674269,17732497210026013683,14147770432803943938,7556788595847416526,9651970381629460715,11833207707939918843,497472898628115520,3783884591111853278,2589323885119358159,2337537984966558221,3523144764515381321,2730371061800342335,13539390225062420423,2663473649224595668,1446386267321792942,14547891104639267901],"proof":[[7441646281671916802,15711098165727754760,8653371128226417599,1082296250745376691],[17606548035232485189,15805182197147240084,285703851201593202,2034015027158211150],[2879799443635186680,4974241474058338423,5656028455063025637,2671083806016974131],[14590848441063452794,16273615971920084576,17011998151899724188,463497794276927016]]},{"leaf_elements":[6278203763991616066,8078050046665436218,10081382088507432339,2222463645849995902,2969879425453338659,7276527334025712803,5195638262421124803,1423548983605012455,399448597950965084,10609950177358245602,3937540680217941419,2177255647077924033,8319833819507901832,10608342303844245766,7261168177199598481,4461036407361939175],"proof":[[16347249376249566426,14583720912265793793,4350686724955233422,1407886625625018208]]},{"leaf_elements":[2966080012095824694,10472639831135879261,4652833482319589241,5368590808610327190],"proof":[]}]},{"witness_query":{"leaf_elements":[6555385525264050021,17105615314263141733,14415937687261688095,1840212054008767744,3725981131550390353,8647373583853526418,5572748272231480247,4333632904082115750,2311917341039377075,4359894409592528402,3647681372297070251,4927529584717050321,13239674033452402060,1996569307757814591,14191427227457273502,8430037784833173819,16985179130119593400,14039747157499301093,17187434147834297014,16550511421246332554,5208647127565737186,6126035319976390388,16666394198184380329,11638285170221959830,14163119079645024051,10526922358701663323,3742391221734531198,118694279825540165,14004070697985212954,1169660748503337444,16483454298441934854,17441040611561140817,10076037589745404680,6156423878067245306,16570429288204918236,3219003802087437679,4575531060746302087,8337073957582950081,11044098391989078834,13497052807798100227,10113907331195494499,9250759276755129796,3167768801807240787,3822991823350759273,548929162126330992,4978756541944961639,14248341532490173402,9970022058733222201,7188600232696917468,14933513783284688455,12245724990742964576,1623501270111127846,14723657369052355961,4328825712651759302,11412886516578306707,7857691332949354479,10913624552622304390,1260138173508648270,11215933371224027769,12087083232443949191,3246441758057331207,14035830758432127918,16340349051633105727,14206264255847674684,1309342078303397750,13074547292545471729,13865728557669130207,6383607216808966737,15695313964230759633,1022112205250548918,8412747540780515056,5321064037517007095,7443944128754134536,1029169588819364894,8960133043307092653,18295804738439546056,8178447566776976603,14116295757404542281,2898072021212597472,18430683001267152304,18052457256128902103,7066764150801987498,317811026667298925,6175883698229047269,6365215705838314337,9838777380850020204,18441372143962815410,9831085602189913741,3222904311456251250,14009605621942739947,4517273693866094716,13965356294231854191,17414164550342105654,4482713050429006189,2067815373878353377,2856569367689550829,17879150075710148109,16973029630312662908,8021162030409390214,9080103233994472367,2522641334648988405,14723150484078397305,6662234661389298553,11358979115310554134,13302222568235577276,14379634254935778663,1483482280840022203,11632939875868447921,3014211190149764851,9973831199110467370,2827914703852806677,16407977597361907945,13880153611018810838,11149412479001901620,4328893377445434725,6167736666755464218,246481253604793615,10886506079433339912,14943487052962605779,10863864458571697996,8168429117750508994,4526553231362724284,2715130205817921288,3250750819778029553,13883159353461705621,17781189194532738693,18318142680290401766,14401441724284044609,11626826323331627903,16663746466082701623,4955195043295450901],"proof":[[16713195945249203948,161452049869389831,15617426727351154748,2550470761896213361],[14611183633320485024,2206308790883484660,6216257423573218061,3236295754405905510],[17866973595876599193,14803934900238549133,11519992440088722458,53945562147318839],[2594442761264392268,11692262698217965868,4472360486548710320,522561818281374032],[7895060073403037032,12200349921319718645,5650779956863966845,2214480733329747100],[4649404071279579339,3413930583155147340,801169206295970773,2759742033477360711],[13594188904351187642,11677311747838537623,11201247465933119650,1122523125618434152],[11073487757891686485,13992957167560109654,4455921139172168864,309760666353782605],[5917738820991141905,4101923527724065565,17354110818614526428,69318809203172942],[13245347524737417258,2318207854407445113,16986488710682533644,3309449997624821254],[11432283659985769519,14388550926813684844,1608158383785800185,284676376548000731],[7551781662711293182,14332883861788060529,5854916174821757009,1180253320097834079],[6319403942848876859,549033099055625544,9838606079043705509,1442728268342064409]]},"stage_2_query":{"leaf_elements":[13935181415141061134,15089905820873394311,12745288946047478918,9948760285935593015,16250465347811612564,3197743565757880392,7922725133532811306,17231741309087533293,11289159695723065714,12778381203559192184,17264793533403759884,14264909726152826047,5173171433202323218,5398617649261402039],"proof":[[6157518402754492075,11898664864151976482,15206951071762232442,617607900709763586],[9562360230688445719,16665737774172462324,3014007950375697324,1652100566289427261],[8309399772898675321,3625657890238689571,8476956227969149532,1680746330606491658],[11317617417271813693,12897536401849856083,13211598148859466905,3314976229900136549],[11427874528584745629,12319134658645833859,9183127730865346436,2895698003705128481],[17415084099119758080,10776246404492192439,14931104549405692357,687645410414854219],[5501483481074596235,1995097062245763517,12656780944352127993,3468957685993204136],[13569434564481437304,4516452172566442255,15951484096398772797,2537742930847411788],[7114317960137428020,12135711669607155721,15033088621356431375,1817178335111906111],[2299784782873289057,5147273652072114973,13130374836678824315,11292614119616324],[12646582496146945603,8325812408298575004,1422645035632642136,324868366660455380],[6221897171993216899,5015940854970352631,7130320216356552427,1830735253647230345],[8559229694106243581,6083801497235235894,12366925889308928834,1093878940771847338]]},"quotient_query":{"leaf_elements":[10586751013002330248,8258278786195706755,742914268516078758,2177152007814134179,4003324156238529330,17794054954558770528,9136343169528518943,5094030960216848106,14904869938790256640,12044147474754728848,1209376155130240089,9872940074745609734,5083643865992110225,15830472958467826254,89543072051410901,1498873959760456061],"proof":[[14754871579238725651,7678105021075849924,12228305424319352308,1157574431332627064],[15122264023015046343,5105836090855766954,8472554894477260050,1285770696146952772],[4699458555932705852,17786634245955846507,16127566759445348523,268726857645034965],[4619670942420368698,14012042148689896300,6415937747776058918,1570004054313955644],[3706292282404072687,4547369689045686068,17423399795100601235,880182759493704476],[16814461992123416799,3921708987782041221,12701543969434181639,3250371904234922091],[7610620978227078821,16060691497486519789,2721437135454269219,1323829048112228693],[14243394832569950708,15634336592861189500,2692730908869484780,2015496205174590828],[9128922645184568677,11793673236739347874,6805626941011504718,3059283494033265096],[11706535233069418657,4120847561811158293,16878178140899977080,3107420277854687833],[8672123240052048088,4443353146465696788,12580392470658925822,2562127010262566621],[1006482219181302306,18103354286349078680,10357206732421543392,1184898023058336042],[6742689458430904017,12365859125775949332,17589705338515253507,41352540069468767]]},"setup_query":{"leaf_elements":[13391782601835959698,3841041908621096113,9730147035364141905,15612130477572808022,6219638897882253463,12201431705139904137,6753227336323624830,3288956005840792590,17393830451089118628,123012454219363837,8511965859185730640,10602423861141308808,3791337733016659682,8072353819765084430,278874672507620626,4094291974802628747,5036758464651862605,4845003305368569172,12062678409161478987,3342209586903665231,10224798854854030769,7733896270787497889,5721891227289286390,14806840417273660432,18088666821062909288,3412942207667439170,10438993400118278991,11629954245154704498,15804139851563988776,979052281098627701,15720439501654841287,2492806402251076570,11571255029805626675,13117400569359021712,13811540149966513030,13191722616516557388,16301547596511193202,9249743830094788397,12552036661716788849,5717435868098669636,4011332008169523969,9316213101195750606,6704663223816589184,14794193390041610621,16047443945422967302,6079083435652901554,862894441610868546,3398387181559883874,11192882603271471777,14277800928170332545,9858204768276269179,16684404465269172904,1578225235898138319,14681873781330288902,5926575642938980658,6916741707319544618,8706857833497867786,10660007763627506877,676238570075588471,10253019171751514678,3468607279434927533],"proof":[[6880531858596817979,7492389112770872361,14400221147476057171,1840310101891462633],[5549511266241700224,11613189603360352693,11184806257125258928,1350609118723359496],[4285166981806392640,10831910680368470881,1308676430362091723,1747470888435560400],[11658797554457709123,1933213385069629346,2157422481021498956,2780878946918497238],[9375547580315918599,10911842806529912834,4643289489062118769,1501396088868380250],[5506798372343935718,9979759819465109355,3009082358450122651,294565345216877989],[11063713028164355304,2796029702982226097,10183625903118808289,2834047112561872942],[18140615753808099812,17833399792085969633,2502546930939366615,1455388040566018186],[13230773132133369729,9847985827817512805,17742604482211293774,2279430797160123720],[3409777220836122989,294902725272039169,11562942377235379974,2404922618615884212],[16538951258400721934,17471398493350159549,15246487556608002010,1495316794456283210],[18273441020957215580,5310347066230532130,12853466621058370464,2796547916926690774],[4116420957544392334,981127288402861837,6702203925816007197,564656793942279335]]},"fri_queries":[{"leaf_elements":[5964971434165467043,1512532040784313065,669450722511318494,1414143880021357314,3514933371019296349,14801237265674521142,5937558249492973472,4599444339817337294,2271214014494305645,12987966555001305461,13390916402414575932,717769765314170689,13479131842695584895,9601461046107971981,12616123609142052136,7566494944759860579],"proof":[[4836252303389394731,16815087716063575576,15993263602219007969,1666855025535900785],[9853286339099945784,3114123015572063684,1454902316252015691,267063744623447287],[13191432798142895618,5755778607847798161,2733885824802526823,2098116451244502315],[1868834135185913608,1557060005862332095,8242142154863189299,1901866919591488118],[3982319961987319264,18399198019027893916,5322606592679269945,2296238295865455714],[676710917331893892,14943714864529769962,15492152756466975829,610119554405717647],[8618335763915567968,8883061498915700397,18321309157393400254,3050620840169337288],[6481597279115214364,6976410916853372392,395890284198031633,3360855170595700035],[6410108083965119228,5670695521396022464,8728923467010294359,2857961213027846142],[10701620580987285083,14029228686717680906,17606917425319476032,2505274531328869815]]},{"leaf_elements":[9636941902364412305,2052098568164135615,12463954175156608392,3297688504721653187,9965127207970713545,11402562220473832211,16654584275154357554,4113220980633730836,16162263318931525725,17686130457593907538,17326551619065663785,15079111250752727034,10197046039472377485,8180048300092084506,12855937323098906553,14599804320808670855],"proof":[[16899542279610916154,17237142162347435783,6061058601066449286,321744714051502051],[16427178820978739650,9328433331301840618,13191827738655241773,3080702551604545893],[10597494874878287729,4266249230129966602,14852714910919308151,1938489325007455626],[4869633817271567256,15487475601649221020,4722537794127713310,3212467330079453764],[6994975584673612106,10742376796409482693,7332695112669689784,1816425617286594831],[9805718263872530570,14143077419582883586,14318923842988812352,2311737774111977178],[10796312805924833779,10052204889508537523,17029417120171154458,2380688193371945324]]},{"leaf_elements":[760340993264689891,3272205859085774116,3155076320157576757,14571259853522432923,6925451141450230559,5737724787514979034,1625194676628936571,15309314608608266472,17245534346898047165,14136481595159259003,2165269278861135627,3105777634748625873,13616132648794936057,2420767980182835305,8169508359545032029,9526819383763496121],"proof":[[14731202161995375258,10242494434190312567,3048756093650892786,531799399258897551],[8457388088084640313,6779591129619376807,9094494561639129642,551983836822541437],[989000846145887814,15051402191572006114,604360734627324609,2633584895164485977],[139744036230662203,17798083038650091172,6031175594198885029,2124951385919977084]]},{"leaf_elements":[10414973603641774256,403394223439685500,10536595545238386023,14417065532054984200,12384715249560097018,3156902985129211271,9484383719828687856,15924333456246663000,7155148099983750153,2808246294803892123,1669609172955553579,1751249439668137723,2177940236717868821,5260503247396225335,17657695492767045645,12121937833396643927],"proof":[[8669456116196418953,8307641683636278137,14371410889281616166,2389164284214036631]]},{"leaf_elements":[18196018707140134098,3942247739030689718,1556687182756891542,8508669979898744338],"proof":[]}]},{"witness_query":{"leaf_elements":[12585913562589998845,6463548449492641643,15668750412976206887,706543086744788954,15612106666163741159,8015657795677450559,11238207732785264324,14184844778647037452,3213487198068786222,2485592439609978331,4309390248119342482,13335050087235769839,2195289551597235406,10694643167375552535,6902734279714536232,17961623719827372992,15402309122077782943,16592056963352820082,17600186546827984151,12165768640834158051,8262738305534873172,3444890077471762020,3294350753523450016,13328679968912578392,7773346198888369441,10392624341768070325,18284510762332186459,2714931747241697787,13425855742232707981,95373734744940915,17526395794052045642,13387566234122929528,14283925201278324991,5610782914431267194,3077988572704296047,13390015552587020291,13161437885097834624,5544275732619865590,13234263048207849571,16295180216277499440,17894934323935947275,10483146987129706443,7091770722858777750,8312601546809235770,3541009028630414968,5635334391255806778,10473851774055453183,4397307112666253859,14885911125164275243,11641004950403299328,4213589365615421652,14565667664944914029,2107872288374507507,16696189368422518522,1953853513852822563,701005490529757112,12640814504533033549,12380502972442362869,4135581572023057122,7134848594823195526,6810784797939822375,13358206254330642890,13045554916405811757,10332347516894403081,12127036303673293833,3583683575675937716,14863746968915294662,14596712965510550660,15872420213814273507,7931715027466574833,716515834243505418,11269848434452565101,9468976369657223696,5359693756184148947,2364318290001405662,17812223792306479410,17832327870984060261,1173237807530582534,451886719172792316,15920065512914222548,7343111630366262702,2851350866348120,17420530798245098476,4373345082083868159,4734604137912266682,4478830701389826891,3897781226872204272,11625799070526148,9479388748150041129,17405996718750107587,1204009373506795859,10240097113414069428,18251787648198299930,9049064130381124237,9457837430328068162,10296441190043789466,12159641145614863863,17017493176842666915,14897766426115266437,14603337252446467546,8937488418247385746,7393661953520396463,2837565462710517005,11392372860919206165,17879224071602588351,2714646102202470351,17730061704595894512,12528337780625677818,17213306952016752969,10040085721733441115,5274411394985975828,16685785088369262686,15513234662851185134,10027963802058902876,13003701491183733073,18292067221560485897,18254992728092950013,11729304005892072510,16331627434329091458,5587244822372108897,3201132268778038074,1919947440648346629,14111004672116215847,13436105878445864710,9676891414532126187,2868257138340839371,6586053875903303483,3690751166962576965,8160994230280263968,17105993877003884556,11924207463196712129],"proof":[[17465077601752138868,14286543533011758723,320464303288076595,1882039229886233365],[11709705669723556630,3459738364876745441,6545784852968688673,2850346675864094390],[16544875812161331207,7825992693032691216,18298896041164710825,826853846583232023],[5488929836944392923,5061764426817006121,17473902965742347523,952986321393836128],[15107274755904564904,13644546759340343051,9854604442340302234,3038737511226366172],[1886244432250439071,4212759787054925996,12723603143722862509,2766250180251111940],[4724319524471055414,111732527197908416,5223557258240385865,3269683383579562888],[17037201524428477992,15283435638783790113,173338870629617806,2168434166746184822],[14309438021148814601,10294785265869509488,17955065952552632788,1661380805432369533],[7651445082213597533,9553470395621017260,5109111873210239511,229806987475662],[5139450616859371181,2087204078897206196,11056165366781405704,1373790495304623363],[12889308197316909207,2282266747643383222,17495160709644002465,2419368441022065796],[4882341907511761828,17248529125536155909,3175697314877703332,2970579942529858095]]},"stage_2_query":{"leaf_elements":[15529901612211816950,8422468760352809690,5654821722581450766,4501389095001113708,5585449211260445489,11700343718586595483,16652740646138165288,6328572480737922316,8465108025335246164,3854023559711472724,13454232845413040071,17911408052655256622,4521178609466985910,17773321910082281792],"proof":[[204184140232056251,4381532002240047250,3973658225226056760,45351559559055656],[9613958139849492314,9080704480333706129,13173338951726086237,2517185114955109675],[6091269415804765338,11920807528691233807,12347494068582439266,534068906358152457],[2838803697269578615,4991436402329032951,4304362065629621398,3473910309495306253],[17086981302454728273,2045345466151320710,10210303438994869759,364680428039018160],[5469283207541240805,790160724647892365,10440238314610119336,1608390452348370729],[14080214543349024092,14575372225030994404,18403136409255370814,2739770985962000255],[18066531466696207133,2874034365841222682,10627815245012754676,2607349365750516276],[5090217706551097172,12460916553090400733,2383122355387969854,1765183529782796027],[9748721604977324592,8442260739507940350,11351118531222719495,2113612794742443602],[2279343374209367606,2164333708923678881,6016385070657409954,1594124521952387634],[3091719033970318313,13966232134961963679,17352051512255518833,2117206648197379507],[7193705033799763541,9048181582346268552,11152058647750961664,1742650808604916784]]},"quotient_query":{"leaf_elements":[1387162072975807326,6193284661204222953,11083819655512441717,7037896279010849789,8733740119487947556,2363518264381976632,7923999615694034650,2065429963383420850,3889805768810782589,8900014257171421315,3663996434407567668,8049407961074094096,9271746317004285418,15310938196309241137,17951977893698784327,17052386424395770875],"proof":[[6466764692124437064,13565096390035135797,3964726643983410382,115899186299137448],[1121949069127917666,17811546803673136557,11354067603165515888,3245059450856653160],[5260388750214678909,14682309253551401548,1267732992273494794,3013451859070746331],[14665810731513156161,2246750981620606031,10452040517451279866,1028159919315992295],[2147732278326424942,13871159964419553803,12554049185165501430,2168381051046834393],[3412059098436766508,16077645914892504475,4950273403893594308,2704025167773240477],[15515614374480898309,14968992467468684747,1399600225970756602,874562925632776325],[4416114147951235702,14838423070501480100,6534491653094926138,1519308287298886417],[14760190656857276194,3627079943434700008,11656032249010445369,1312788260291467582],[5235974788609322045,14087831825139807116,15311943734535995707,2770010158949289522],[7105253130684250977,3241432610934844898,18396333052216698749,3252856551037188689],[1339914433452434392,45162647631230588,8631130021405866980,365543632767909237],[117417962886288672,14214076626666423966,6745455965795245453,1238354374129802593]]},"setup_query":{"leaf_elements":[5202536316123024030,5503432310399564889,7590186436416435742,11450621143223712313,961154517093866066,4383323461572847511,8204274486933827401,4362120388579532946,17378269256384496340,13346955754565378501,12923402955671555557,2533168259477508390,11984756907444477354,4422710390056404122,2540649247886661961,126562353997775726,3551488420909437843,14100773629519792034,10863701052424348303,11948516762448570918,13907282977724655486,15017477991128194845,7931493196600092668,15380199894455393325,6289231572508006809,15429859260881771931,5065441922141222728,17118157959901323726,12129455797250976959,12931179812561799993,7817660734684613035,11723152777683564478,16491145487461465102,9393698183742285101,13142456007579316804,11909391239670550809,1337317892418251794,3517347825746232844,4090312244367104429,4607607674514239332,14961658807628287226,1648527861107784719,1421116839558576675,15710458210883813387,13854527305205387465,10127530609667482385,848830984271557605,17617526591790060493,11553607504670496012,3787106367709069232,4009737719161733703,4419340399625984559,14996767239602803350,14047376850870519876,1052730424574215356,3496543136945228294,14622099178628130511,4533174104563414153,6833091598983383938,5126696730332244216,16048830633137025735],"proof":[[2252590839091412144,2877102577901213509,4954597166729952869,433766877099046868],[15263716302562505366,11171611938226737197,3704612576465160380,1252573596289325751],[1164193350717784682,7808479198024948942,2432611502119188469,1611777022786530009],[17768827676141552388,17585778933950352917,2277525174099050732,2350861531639383500],[7823674080626733629,8472055443911459919,14992935513303362349,1904762600496243961],[8913399478574860875,3103722984319435662,5574343274764035123,1954673402979474968],[6087932311121548838,6540788482970339963,3119628744667513568,3020124296924505452],[17871508609194082033,6185578325526168102,15274816695451833540,3202104917945432717],[17593584234042845012,16431717641559751746,3657466060442961817,541519433143038166],[6427944541346737781,11850903295560773947,15442560863828195751,2022083000528176971],[10171103296261072729,8004780863982512820,8226463489668754977,972255685900117889],[10336914720975372098,9618323270753389619,11106414814916715037,1399209016732401409],[2812288052570429747,11192114483378251971,10192533965505786912,2372986316534941658]]},"fri_queries":[{"leaf_elements":[3406550113440878865,10834199005472537364,5989460962092036814,9674079075298540685,10775973499385306123,935514533865059579,12657813914712643618,12360348352889396074,13647578928775644733,8733367513545684970,128724391207483483,4795713343825940934,7299492689154242598,13707227227764472974,11585373693869343490,13689703966065986253],"proof":[[2675199880270114143,367488880117856368,11018772333840540082,2506116559496833213],[16327401837165725927,16265450483225513130,9856598562134327574,2091437094608397467],[15147088553068650706,9364326236495047133,17504841356452701327,1526377865778883331],[2663744844896330967,18426953221920272499,13962842972677846062,3057940948955451063],[13960597087129399307,2742413874328966525,14014472433590568700,818462817269083817],[13660720150344110738,8714834213666151266,11286857090979776975,3104117373629023326],[10145140688678011266,14375729019606233344,8098873207033452686,905872187123606030],[8027587598170013989,11627758616813150524,11434861074461238380,3471640561763885200],[17970507027788699634,7518146182630518600,12979247614906369857,2264518446436324027],[8616858090914454618,1663075563175866095,3467139390527938134,649361097648535523]]},{"leaf_elements":[709176145607890217,8031302124708633042,7402839599027833606,4865055333598849005,13244233448914351247,13321607150000049065,2651378874326432743,5343302850261581923,15763139766287883540,12337589355193190594,6850827772019786073,16685577779659204188,4796116280560660865,6656910709250349725,18416416856388925981,13727748798209415402],"proof":[[16189718842580691855,15531801813570183559,289405530253266655,576180048262125803],[18047515968259002847,9281879689877095284,4969198497906788316,439502299283953467],[9220932145306610368,4333144843807241234,12399871747620814265,2062830250169549150],[4576495701420489331,10830447008132951230,11990923709411365473,2642941914940938465],[17328231401873326271,9509134007184042166,12278013693113723126,2947568277108179231],[2849322931733077405,17483247710221335294,7437202443465797114,567741684499503304],[2715489747108002065,5305903886920463068,7746148398384784045,2253146750247811367]]},{"leaf_elements":[13896883706562634719,2933726015254331259,1615974454349873272,14015534748592643515,3891849642314202825,17417471154607537630,5373530991591536441,12078404734984428056,12588877507545296955,16828013043534499340,8663788128427695119,6583321707308322330,5490174422653847173,15749761958447762373,7473499716399862295,2016287304298384211],"proof":[[17111068438287183411,8845947713968112385,5656307296986973856,1492419519043002258],[17606548035232485189,15805182197147240084,285703851201593202,2034015027158211150],[2879799443635186680,4974241474058338423,5656028455063025637,2671083806016974131],[14590848441063452794,16273615971920084576,17011998151899724188,463497794276927016]]},{"leaf_elements":[6278203763991616066,8078050046665436218,10081382088507432339,2222463645849995902,2969879425453338659,7276527334025712803,5195638262421124803,1423548983605012455,399448597950965084,10609950177358245602,3937540680217941419,2177255647077924033,8319833819507901832,10608342303844245766,7261168177199598481,4461036407361939175],"proof":[[16347249376249566426,14583720912265793793,4350686724955233422,1407886625625018208]]},{"leaf_elements":[2966080012095824694,10472639831135879261,4652833482319589241,5368590808610327190],"proof":[]}]},{"witness_query":{"leaf_elements":[13736675821992063022,2260342515735910835,14414575235193834999,8247748154296935347,4604256127025244127,6493792264048129950,14401638783429193926,3506592484988112359,11378827460327826291,42301735886460359,8797211627068024739,7800340134078963345,5631408586112953992,6940649003697515384,5862295837349346080,2855823062611613833,14432561748398949374,6982974320866637573,6714733814410499833,5278460020524473460,18023875472650573619,11094782330537130404,1576891378707033226,15289710039063923310,14111677350976276022,6472619654816964349,7845364533416281738,7645054033170878310,15903171526100983492,3762734881561501432,2866679005937051565,14567052020140895976,9798257818640625059,1521876624410176921,8763229661565108795,2474185692933802678,6169794297152389133,11511924468584235880,12807484888375680714,6716008018820218361,9691627988024417171,8612730272055893480,13815267289133025970,4095699728750200272,1759761884669083882,12954912582508615472,8976496567292113760,4550608022123649894,5594474045796442936,6505952309063222686,1937994739079019054,13936984125129075357,17541362094978392199,13541961570504899494,12748791702646107114,5132063833646406385,7240305585422819749,6533208239080422364,6476030428856508606,7333978005166362549,9540006626211736601,15460542993645676989,11776681446744106799,9075126439154909379,10827667415588075006,12485253502156704515,1271760383679876056,18005722871378881867,2383720785729316602,16978289587156950549,17501179493314847628,13359271096760401588,10637702331892128656,6207356768618444498,5979993025698718818,18094884594417475206,1662805577716312127,11330937022982851411,3965188514914083939,884530781713667626,966538249997311506,14964455368348596066,13192462374982738177,3603411410661218510,5382228523483902033,74896961067901028,14819604101873614673,3728110977052077005,4622457370615316663,10178003234153526217,17179394696643717745,8300360034338271618,4781166012589077004,14756349977951728139,13732484686768215316,16120784669481067600,15856980093662606305,6152917557306374766,704878790824542627,5678542825972642185,7493731404103377931,11644982780889827457,9887280771763092284,12862612647257174212,17957931145470401693,13510155691364058420,6672974915351892033,7975322750222154813,13931264613505647811,11073562397937929760,1197088334755015380,16750280545186403855,6406453051275419271,8726369977080445710,9905415999987481740,17938565398137085209,806268532269440087,11004369069130721047,8132256855244701538,9631916962859160846,7362466595296700123,3384674687898441672,15327077295790697884,14213668572689022157,252687155787773237,14324926693008850183,7913144518340946658,15971409658664360944,11099503283454831617,16771503132711398242,10711197060335721889],"proof":[[13898257658613556876,8908925802307885266,14575630305361055825,636227006898391555],[8586154757994496444,5843469848315182757,6050798182749593962,3205696494589547366],[4557994414685687,6836273841905850058,12828466544325592011,1457921832438741794],[4186999260020154402,5242597085223787754,12771784626307880878,2452024304879512816],[7887828407904030197,12801358566284762945,16349147078139686354,2915018889073897914],[5221387058716811335,5253987659825292317,4652741471707365043,349711635504768526],[4338828177670192616,928569022616103016,5657076138417576649,1294335304386431447],[16493216418729599108,5864116827361353951,17341164103114647916,194889109226613152],[18198084281654034951,16357779054501277840,3597970601654398001,43479350022582833],[12251520032188166640,13964881192534298828,1199448246584760847,3426472155082523586],[39698197409192067,18328421271659813501,5373892500258405414,199683966958664387],[15421655209924002952,16368321879835928311,13763176468640007060,1827063992316191969],[6319403942848876859,549033099055625544,9838606079043705509,1442728268342064409]]},"stage_2_query":{"leaf_elements":[11429272111744661642,4099857268297115441,2364686788519224277,8046845912964263187,12622436961737741650,15008594421420397184,5923583236292691086,6064552832143330220,132825422954212446,12154610392263955392,10400531997043120075,3749453581953020199,10685994343509831064,9749345222789433926],"proof":[[15757098588375779189,900131184029093080,4490563323362141496,2476517943310059097],[10029461795784899672,10289277865409231567,18148536224527228116,1444406868128159795],[2049580505060335467,10453738724581716377,16625177389492258879,1857301932568196461],[6592271388639229393,2837053430973646635,9990952533900925119,1258774471242637933],[8380130845700165829,1625512853780682873,7966433447163397304,101639192850554901],[7797625761856211650,497134083033047442,9751311937208184975,1371471043040599820],[9835280590398222008,3181740886661925382,5330659109722971181,1433835214565024092],[7952511946970483003,14692750075241710737,15079825187338614810,1021088744848002597],[1185939834737213826,13184527098206416396,11635105567210116608,3322683249873425316],[10747819576630721630,160446580737553255,13751282753543587131,2265776968462859182],[13182354767411469832,14107148174981907075,15670800624922813846,2934633881830154385],[12021982420473469380,17569332985180571919,9131874529933552696,2059893048644664856],[8559229694106243581,6083801497235235894,12366925889308928834,1093878940771847338]]},"quotient_query":{"leaf_elements":[17197852514890217692,5643033614810698308,12057354406098146978,8913632843306854334,6682232215417780363,6361648767475776471,3417609703300702842,13947348717235653632,6124235359724714125,16189580991373262613,14661267455501966553,16716419897995600385,4903362687812588319,14822827920863742131,13772166378837335126,9313585251784706742],"proof":[[9943288797154149632,13075262464714521129,16310855415398609481,1954023226390161986],[6634067872504133974,15684308087944830922,840903531167055148,937310192537738482],[15478852750797102299,17677140896380211245,14545416355998631170,2880205497821152466],[14746506145470994628,5436758852644416451,10040033202858237512,1218133602630547217],[4815697161882295771,6680374772112471982,16879493233855109504,3413603603883686127],[17339415394433695006,9866086080820458206,4852046221525163645,2270746765593008346],[1851574303962289558,11922567396656263754,282899877194935511,2602085668420308283],[10198275252247963184,8972427500699569853,5689437695253974787,3287616051033960303],[14927900645804959535,14346403443001257816,4686965869398064733,412544221072779209],[530887412218173494,4069129494104531873,10795546427799339403,1778464432087942228],[11642634586355144404,13524183933447549346,18342548649266705956,2154561244508476359],[10864231025343200565,14365906828085033749,14285158680845176124,1852444960593571030],[6742689458430904017,12365859125775949332,17589705338515253507,41352540069468767]]},"setup_query":{"leaf_elements":[13257655338405681560,9610448405229366734,7103360759592823745,17458562960821419255,4443858245740781446,1078269107289425819,10383961486501590701,1218723242091518311,12263367624667880595,15013936046156381259,549755446292046987,12029962623399976263,9781499769608182717,2596125329824381504,3106142519388260779,13372085099933125456,14346319355198698451,14242908307744781705,3224562412977325485,10051770812501467260,1009721601907483711,17070287712371188676,546276542438139771,917234080814482765,11335644338587562058,17907004592116515220,13214522585726736933,15836175597577256800,1752293277651443260,7922962960629686886,10403756875714886470,1788789209413161116,7875708210957049537,14950961327464357136,18033333054296287107,17880889800393914808,6540360299861929795,2984763239169092140,10118087812534512809,11295490055345487419,11937993142101911775,4798994288100582813,11327308424502043752,13303945874480371527,9276516735160084191,5196116130117261646,85095196847476408,11025707274959672228,6309093227032735931,6459183073182836564,5426220075792032305,16278130905580015378,6939334112845399172,3869028740231326658,13558142903045276630,1133214146096335813,10948909070126272128,383487688320399349,11523573763937023405,11219500934169374234,17900429211458076139],"proof":[[15361331214220861085,14099921018181888282,4516391099306922823,2246587103693247867],[8685966553550540435,3766495234392472794,8007602197318693521,1116574540725268206],[1825164862518874135,15085000959470014933,2509900369743639176,2841616800670210077],[9181913070983839790,446775179372746816,3343395872024652891,1957412799261736040],[9709481083920653432,13231340542933423473,17613154774180416254,2085541999486253847],[15016065949488787234,2975647535209316200,11608079043726128112,2533824620519357426],[3601511704885768731,16040323839326082696,2683526615836094726,1993568544953592826],[15860905318086663542,10939943964564605426,4962298773706868309,2624494608236343430],[17363171682766544560,3667059035089566726,13483584785676326311,1758769245393073985],[5170783612596755313,11430313289911920418,7744932436519666651,407107225754060915],[10728006944275488600,13460645259128552188,10428182427638012003,3387795798992070862],[8290037536677198273,14658697448777920115,16438037693689542587,2289856877963691407],[4116420957544392334,981127288402861837,6702203925816007197,564656793942279335]]},"fri_queries":[{"leaf_elements":[14785045601430713326,1877464608003451327,2557074260437183436,2961596703312039889,11158592166783685692,16188214036041380059,1320991156959821580,17321341392179579494,1939526969067665925,5879061158991679696,5563683882387088898,17710095831156550696,8164949769584274327,2189789446860053788,12013633108250774879,12599543566703245088],"proof":[[6963634659720400523,6923630784534231288,2472547316778995844,3078318152402664326],[10808660774339532269,10646485197231407370,4862925652637470775,797122320591628370],[2218770939446316481,11465637897146522366,3505796439131172264,3187831079302126018],[14059901160414339910,2998733380331654224,11287643128091097044,270676664715994231],[14817240820562121182,2177026288657355457,10037324053349616000,1863527803464807164],[12429684542226109881,14542102988844799829,14200830825053149126,367221143125879678],[3532330861425255193,578049178405438148,3377079969913533457,2333512747986720465],[12018457935594535653,9692341406574464875,2760565008527368626,3391117026383682925],[12459205945557951313,9658351906122242482,10911664809236274781,2168571547161351640],[10701620580987285083,14029228686717680906,17606917425319476032,2505274531328869815]]},{"leaf_elements":[380147433001108345,3484200285947555166,17607730178584100137,10832449307728568297,195341449594400063,18356632032983789917,854402965398521978,13209138066470853817,17935347689846053486,5653489462863037600,7975571685191230114,9029697817409493510,2708271035467199524,2253198017780861558,17522495218814971507,16868105904429572594],"proof":[[9925107655808591311,4125847376615398066,1512253941015695997,1461713859118981123],[14899526231936260158,8030324692362064627,8452147608248686091,1496363574328198319],[16582085233536012084,16717570006984069584,8817668382935747194,1464862905365546558],[9141439477645370553,12575387910760566411,10796871418905408552,274546708763952851],[17567586209079277908,14226009379804531805,1678790079539932792,1740044022097005265],[17784093462431197239,12814742217395568791,6508355028532470827,2412882452421209535],[10796312805924833779,10052204889508537523,17029417120171154458,2380688193371945324]]},{"leaf_elements":[7133794153491046080,12391511318157863172,13038688150704261545,10283288148787090406,4685930859416234814,9929563938463782255,4111728149948148935,209269094361233954,4766322736084527044,16960019263469617541,10757688771833804328,14896634530808258918,17754848202993077490,422518382116188131,3068197370565502540,11856846370795087145],"proof":[[10297012102806641458,12352821735213970689,2256159259023844868,3196449397001263180],[12797790670834854050,6480329263276533545,3998602564223302896,3025504060122744324],[9037746557057048456,17834278038352391830,4656790350218572942,1400337594587714743],[139744036230662203,17798083038650091172,6031175594198885029,2124951385919977084]]},{"leaf_elements":[10414973603641774256,403394223439685500,10536595545238386023,14417065532054984200,12384715249560097018,3156902985129211271,9484383719828687856,15924333456246663000,7155148099983750153,2808246294803892123,1669609172955553579,1751249439668137723,2177940236717868821,5260503247396225335,17657695492767045645,12121937833396643927],"proof":[[8669456116196418953,8307641683636278137,14371410889281616166,2389164284214036631]]},{"leaf_elements":[18196018707140134098,3942247739030689718,1556687182756891542,8508669979898744338],"proof":[]}]},{"witness_query":{"leaf_elements":[2884571791854112631,16670949619790457349,11762211361553357743,6214549310627800344,4104645279063423911,9225182486849102410,16268433028861909356,10201337362967877809,1213660394835940277,12464236487869578199,1995454736121233795,12112066367461913573,8177394500727724875,5754008813972715841,6530538946623920454,11296551753093902800,13538524560801229524,13437841283874847275,12196334722147480018,12270818067122472037,2659089979322530514,3744472692429908107,9161523835686562642,1428774475490152796,4471862207925964549,7025669470790733729,10377550614994960386,12098755665115315896,13115413065493225158,9385606364042445523,4704994192220201702,6800082079118555256,11107559177743843432,15396503504469162688,2248237612439299308,15290436852708750924,11303083533269415066,665019374178988971,11823821146509943972,7109466142947639071,8616976299024597145,9861228051031426848,8835540252382963714,2214575326013842767,13508509938516768165,17004217153767532874,15048757313082980613,8129356263683722919,7821315043671895335,12630460512241602634,11220594644083102029,8066889219393553966,2397254008652323776,15642607197017676115,12539850323978556939,12564555233216380784,5462871454889966493,14025470534521019501,18173035894507225569,12257461676553475934,343594503856635716,1372276958800890962,8613484669665292853,11652620843133900331,5531618988142588175,8223900129372551481,3065038527938451962,11103893746415852989,2453054467506314407,13188163786656822589,6397780460246622045,7240981719259387702,16154598896477224328,12530877588630865963,7010936612217840355,14630150729686544014,5842574469585938743,2147322126682676103,18203719868053474618,5674281238767897744,14353739849702908095,8370522098996136260,16096804081001324066,944663012370106870,16923527515048833771,13092018989950543757,3119697811021010428,4172991359442309490,14369253129050525421,78702567169359924,3006642118472856093,17563802651908124495,11530715232694449866,192287041237775467,17261900460985479189,15045051830912377834,3165971233544485749,1508567077119701019,17605314105717112639,17703742401896212904,1208902124105731868,9080236671756190455,5805404714364851482,9980129529258217597,15342420017127309066,15978390775013643829,6319399874950584702,12112283714953368759,12386149422479813669,1902313873799639216,7872114271819209700,15896334433316029668,832236596124987789,18212848005911748475,10936885303282550514,13862412820992460306,11725307501180701602,14470580240462298233,14139684152715406132,5225330689415276449,11469272867585263826,10137572111195079844,1886986595319651259,7987796962663594716,1712669860267065413,340017883874505912,5019976534189398820,4713907070155153827,4528130305148083258,2450380646863927717,437344313403630905],"proof":[[7104657853792831513,9790257305930515467,8878250177808252499,2183961313278980872],[9935301416429021702,13351047907782045031,5724269679645387204,1678130250712726370],[14248540919323974481,17870882345354668880,7640495850674820714,2771048608698756241],[594483262087916468,1715039146466177043,10929004669274655890,2555625183857007346],[10741967279421883992,14504014400903291568,8618469480343499126,918307522719440457],[6278258853554207652,17014594723424108780,13127463183513078796,1570945834895522387],[7092435318147693623,5302007514230966725,7968667474058316000,901305394731961472],[6637525593608244354,18008603249090400428,991188114358936560,2072953143717394966],[14615458940141479662,15009851878164050948,392450882970930403,3228459194420982393],[14062705785943038141,15536186854940875510,3729900588673455497,2728331039382905196],[8546177603714549538,9731507560978562283,10073065034012766283,2229658289611443493],[8306212057502905801,4513570971440212739,3182621761424601631,2007843718213213775],[14367620299360517077,3486062918649683097,758936314403206639,1603949708714258502]]},"stage_2_query":{"leaf_elements":[8039291446717872823,5414646211152645812,5113953320429796184,9277055059092393047,14766084064932092353,9592266763006908553,17263440314464418130,9846106434712768309,4827797489644367426,4715171058138990324,1491767850777850704,11541779604102014040,4383317761326425771,4032517177734134705],"proof":[[10646354567037917136,15015222257725780226,8834223575290668988,385748395303296821],[1699043306984196981,5358925348669920442,11821275222708764219,1194367786293028418],[16271177768292194761,10511165054750144406,2016579787889315726,2500086330011961737],[6261562100772830968,16011787583490234975,7305009113330344567,747792432142642391],[17784318339066833378,6049903928371829205,13612594981720130335,1352646572679311789],[16740746401980029838,4333266331824423570,6037937461364451756,3441338663437851270],[14677725749627604584,14428722807736990153,15557334929657165829,3045619635819170358],[4730511195800731556,377422510996105462,14668013292803916466,2558776186906061591],[9893650935917082330,8612827559018332378,349841004139413917,1316737630730888367],[15606604571595161392,16175646993947669807,8306520237934446030,2757825325461070483],[121396382258913492,13855720110696501783,11173136907780149812,2958597000520510762],[17946811300233807722,10697057011455301775,8841411358577018535,2882676071995806414],[9302781254238343662,6119432163943488281,15090348966859265029,530198869118147718]]},"quotient_query":{"leaf_elements":[18315198000940882128,6924442667083137923,7980724922076396925,7598985012731395534,14922652009787804241,14984879086380594511,6027828251034642783,6133756628856833190,8114301623942434149,10749207867472371081,12403398460459219463,14861404922811436106,2723004073426467989,6784008507538377083,16900116661981156117,13462237132515894466],"proof":[[14480011988412573677,12461166923781205215,8795123046529213189,304914208854800550],[10998362625153574157,5037834575030937023,12284261025804947829,1332677821061162074],[5189847470069192339,14749670232200980088,15640373137635253536,2171870714041166242],[4242079684072323102,11843570488683434890,9379337898962279726,1244626332806754843],[3398410572500529060,4168581239836457285,3155411317693519514,2599258233175836882],[9732196013448118001,8909096912833325551,273733996558399278,3245055954133347213],[11585736902116164822,7188843925415210432,7197708541947804762,2283123921377660899],[18441330633635537388,10342146907818413866,2936418213829459056,3213070820011357612],[826115451053515147,6399989333022243830,14029706182131625538,2666830317371216920],[4306658815669141511,1000738004669499087,14468977217461533623,123912981583775758],[690956218003368641,11271872052100171622,12010225112564945277,2652967736515055733],[13496753780212999111,5601887085332510753,5921920338607442953,2763534670305069476],[8815952717605006386,4526522413909831776,14701097622325747530,3485165681977640036]]},"setup_query":{"leaf_elements":[10568706168260680827,8811840154583669425,8637943023549974007,9690184112352498443,6551633249103169429,1148443841457918682,950932450116580189,5402499017074414833,13629962206327574409,12868510153116359500,17195711267199182388,13484799278928519773,10448454107095374689,10790915463281212437,9951401316654649543,468355182181268258,15116941636378641447,13936103148465500516,6745084806710922572,10563982241667640048,12093444607809955665,3383633884621528113,6696416586955545947,4932600129074998277,17233826016488736852,17120974784609375359,9021455056669147673,3431047727127097970,13788469137689912688,5374543246460757966,13490302967690618278,17730959864073471261,749649031834953821,12488327101348149230,2400371849528732572,3521853764136504778,9964384484992953975,4294384076227859613,15000597396843267689,9313034171428644635,14950769605219348643,17249214070881397176,1379175824678051350,6271880075623721331,5112611820183447582,11780179289517143014,1477049557150912294,7250721285139145726,4450906159608050962,18047733523718770744,16520174905021493507,11130334505554687201,485230779869912470,18414856072190122876,4156552246856876824,12956907599080629035,1874386979216293170,1542524189150760839,385912943722319649,14012091123342144625,16370471405703171086],"proof":[[14799876193076651319,17007748532108876239,8947187280744668110,2719702049277237213],[3444522201653442859,17740167106377497420,8000825869159639321,1401779446105486838],[5108116670938852424,13300616931947094197,11005263534813970630,2733747088637586114],[12573880320975241492,13216145748907286072,4064431567262589115,2668406605992732827],[293545496347127853,7196858855287418460,8296754516676796253,1966580867337417551],[4767609931666915474,843805577036692922,6667792749108039637,2356318978668253501],[17495606465163513345,6384249972588317400,15187191879833792682,2347512599990708131],[5249811127765577229,9026432277364810784,11641230875993335357,2074415694004756986],[14267602776922856037,1373023832919764068,867740952532462755,2138129001617782437],[1151310088668724095,14038744483975954861,5760080154045965857,179705461157934831],[2376731054126549134,6819668798859308066,9876880567564165409,2668289824324948766],[18281726552398374921,10687318528114695449,13037667625031883888,3021881666691503501],[15649328145457671106,549776313160692971,9928450923310963291,2751020716435042226]]},"fri_queries":[{"leaf_elements":[3098976358104012391,18145020674912786107,4279384525206215041,6642030857785370264,2117809806577622589,344347334586786675,16876794904820204493,11108474613013295594,13128087108331306159,12751351594519692225,10318193422253850071,9918582333578868170,15244123595611990864,13359913591707304823,9115970596759538555,13210011093993852858],"proof":[[10312911504731353968,14748473113234039119,12358154010580745549,1575917249066782919],[4315852634051532141,7207059402510936663,13461992698256970806,2521138001984011098],[1088095523066260018,12626143756560875161,999904755972853404,1201580123307382844],[13041964341958327828,5216940957124430645,542300721033335161,2311453028405390980],[15403421971860379921,3744860260199247722,7595415110289436817,2639046357980125118],[3874455474330518087,5003549543090011538,936581685022270211,765776682804131332],[2522509805466932273,9653898018140610320,5599479681012700789,346176432730102797],[12009773353683871091,4506558698578468983,9089979691125928464,519890529356559345],[3836149467745891357,12700830065944535128,17543171510772478243,2771009779489953517],[18274227798351134084,14614972872318737132,13670777970563782359,2498334094624877115]]},{"leaf_elements":[15576260099674000691,11404351188836850908,11466612986236880563,14173527519111862421,430634730281163308,17687079966821558542,11275643520578309016,18260366623352218178,15912484910770750199,1225304251282636653,5710766763403120278,8211105212319988346,12732774177293320642,16614142637054873808,12142339898826138359,9694151136217859179],"proof":[[16901284299309817705,2292324165952902586,16935898757823531437,3066652160677861820],[14892402829052491347,2833191510262515177,3324989729100878882,1498231023248521031],[6530641536175766489,4242703819429625175,5064176079102228434,1045780302285621885],[12454890526333753930,3201978947918422083,10678737053118785835,777345307730208342],[6870935313225897170,17077921725179214299,2715337795293003721,382690835644999429],[17647726135037315420,16939452995086140404,9926656647162993029,1129491512409889290],[3864735070791189707,8330668194952393004,13164775125511877827,177041749183560687]]},{"leaf_elements":[14491078459708759530,18266244580071910732,2375556921371899716,10456437434718672838,3364361029694307433,7848282988736829706,12040593508154765818,6729397710684024158,10750817768927452768,13284308159480678614,1538663693094846764,10448635000390890554,13090030653961928650,2306737690079481401,1056897741158094061,11345722061824866943],"proof":[[12804840986609170954,11011107415267122649,7192919539194472114,1085663711794729646],[1065871498043493475,6532469188357444428,9781246741891437037,3390787234931501497],[8146435607594056767,5057348374914061128,4043163455170630552,490242688245896419],[15036230558710107040,11921162934449550531,16484118682594038981,2366781330473308508]]},{"leaf_elements":[1161939574018876374,8351817840696965648,18372653301453144055,1094858428888221872,17891497325732335182,6378736636084565709,2312548455298580963,11108539684721161071,646629569524013389,4395291750589940087,12400931690617795476,7655909668271100330,16676308543461110775,6945943938750155993,13376778799557250354,2903074057851475984],"proof":[[5616782601955618559,11536326776059504369,7332699799654596753,2141932960124082581]]},{"leaf_elements":[11506617648987991818,868082017674053972,6543021463611153452,11748771781491803820],"proof":[]}]},{"witness_query":{"leaf_elements":[8161998666977474657,2717970127754480060,13819512354306193148,6498582912734129907,18105474951927960540,14723275596763064196,58883675728344372,5892733964961769876,12860059915147484779,162801839319959041,18042150525451196894,3605025400544785294,14709326566502632410,13589502665620144242,7328391408669237064,400470464013985063,15045129687295861351,16739484146713986706,16355359291705419894,12907259824486410582,2072024153563672271,3466469229296092377,11750000130549856768,5278328877919417479,2174132754619770748,13735133590550290523,7596108160196750290,8594472686838046019,5993037781965474725,12503671241449944715,3288708251164152860,4329936901907922792,16083210720174342098,17435137674720077221,13065205941330945305,7376965796832715547,10235882903736772640,4219684081010020448,13982446861449433011,10200036003842419845,11401830009039430835,15492699696024005884,6538160737537724152,1137272849124947999,9671475818505310529,11573881618969603015,5047890821993036435,9993673323785936903,12310775582010085570,2458631696157664403,9971147741489422880,2233459665739935387,16874890380651591805,7611857867065127375,11654208500253829203,11968660129572697239,1025477733071324349,6188580977200384584,9377127811585654022,1006545421025003865,10479129512868394025,183281320795523256,7698108870565322881,16832697249979250309,6679649565128258101,8094336601737544597,3838653991164436842,30743309829957380,8538255457651616369,5786721133259770958,15084242429884762922,11193490598157832762,14684766412871346260,8537944715664011880,5801731381341396172,3757392100632818571,3469519710722397990,5609546847414071649,12567942343401076904,14319046724222310923,8925758562917484899,17585467546922307846,4584637716345450275,3201590843976488610,1386329025311462978,10991546346910369336,16513213612591195306,6962629961513661429,16713865293270963007,11558331309303906429,13233578552746244832,324811293551199825,11512460210584401887,11327564374291152901,7341495995687063391,11594915371895987865,9172762904888177425,2472432927312994425,17665080789492084655,6473818592597113272,2042540757809847397,7637926317803134607,9244027416751900019,4297522551510613911,17108275737463294058,5164654406389105529,11046441550024277653,18178908028924177779,16301733131604409567,16460975416214011838,9804802822959284395,10768501889413071070,14635251357910886764,6969099825798364377,11344403826001499169,10662600025189704696,7338789252228772944,17771653485164961750,8189601943626896058,12296566988500543092,7295913176487130554,9481677887173760182,4242258413575640697,8779939241117777126,7536047786078367525,14643990371541862009,18350167107501914495,18346338023218208693,18132513134963306985,3873132137923295185,4320777693749251495],"proof":[[13440864253403635329,11713927889857427733,5371560423692623855,548145032570942677],[3259690234057982269,7648136840330004794,15921946277881971997,890275379043567103],[7124990826248251738,15896214275450579946,9215494927444447866,530924695791682072],[12633434121780431579,7825267582607459094,3329545484383171749,3262772088411285629],[18296590314677053744,14780179774885872209,2620344665956991705,837991232946022122],[13381578153985953102,5114921598175027067,10076223476048443510,1327948044860008156],[4918695923936066117,17166216762991356826,4327782539045356251,476094172708581317],[1840838772452910104,14988442075250406644,8619412163719324591,1780196434435177055],[12928425502066301836,13172557842224064635,16158743681695581541,2756986240894389263],[698417159435157269,5128096137083892992,11084364247697163842,3194873589066267980],[9317988598386287165,4171320350909863924,7024179928034417626,2008805193649462816],[1399558611002625433,11998460121550009067,8931575056411310580,3349109739263796111],[9986534556560031500,4168905852649190801,8442442153577249726,935650195886037795]]},"stage_2_query":{"leaf_elements":[15048265523860294475,3094574080376679624,17103551161644463791,13832982231130643408,13817817968265701699,4790373440994824189,12907150708423606021,7177775171934965181,1029411785747585797,12763231749224249238,6873663421094968961,1202475113452208926,13118487315129250905,10409643252155854802],"proof":[[9328513131171235749,3048512048810939190,2549942417902865423,1682768524836106982],[660428304658480804,8683221935002331765,15311912095474305072,2054112655079461439],[16575132476241806908,9695504126467136770,10300225373395055743,1620763434114855626],[17689557433236023737,7575562097688436016,5241597473902342660,1299268731264598604],[14828616365264033015,14759723233626304327,8221566808712422691,405729117767263849],[9103756146470744613,3362650911466473839,15750674468652450388,92821151448559515],[17997242322908501004,17100847868529690684,13448625608249935106,2968115433700344350],[15326637242572285543,6210462883422278051,18336893949764035268,3231771582283396332],[14504164800535977191,9371243476952136901,14920815103367540568,2485795751265638679],[12027407452887463094,15035687474020459977,17957820817306104523,2581336642017829076],[4156232298670899131,8442439683233985248,2816989313736023705,2855240463960380989],[4826186519142606509,8843526122236724294,17868385580913199502,789267515232431137],[3929106972898368341,8168702184152748531,1012745953153184386,2298210201343737391]]},"quotient_query":{"leaf_elements":[5787424563812054971,9941670458315682489,12929530455607161204,8771547441226911560,2853394274436439976,2557743796087305198,2287268422574339167,2209414117003112188,8325634205467170172,16644212114145812855,8696169295340576429,7380854245451573628,6692293528094064781,13998272932284504043,6416952831147813641,4444105310313910415],"proof":[[13246692993505369007,10615812824174054440,1104911924457928601,1808223794094097179],[11656465396294712948,7801187196026671228,4032414941388915185,1067410807781660147],[12760966210459163848,17892496661167274516,14726851152319476578,1804606133636888481],[12994668641686083845,2821924006794136203,14246611837494892644,1270640770685671315],[15847730032742490712,7456813409464092912,4095140080657021461,2618450048553532099],[12339945130065569983,10593598205388770927,11801062099802035583,2616696201451531520],[12798586587647292824,1743823890538334298,5389205824344600035,2843126406293274254],[10988037142099694300,3063013406065269968,3490037553155577844,1800176573237115793],[10664573641515260949,8309492481215849904,5800901499764155573,236662996988193252],[13855451812732282993,5000499419932966588,16617327504968286146,1256024334507860132],[11242675047627637619,6613050748050112875,6280649273940896661,1540050270900068416],[5041539606130611705,911517593073596756,17525987174527020371,1929397605581272547],[3371259541088757273,6499617785722508082,5034023945137869546,868060244866308003]]},"setup_query":{"leaf_elements":[14784093583331122971,3059596313222877022,1871452540383072574,17971685177031870996,1871947145693618674,11534643484794712914,4216635144700270408,10261499203381902720,18127088777962271032,16357137612126170266,1065752950769307664,1582920827249845392,14724500376450717734,3975319953530027907,8085013229035513370,2860399415372839621,4054893852148531044,505492876778001721,5553263385068860038,18244823225214561307,5119500757557626447,8595085916650318076,3315768718390620094,14498631102537160170,12525227003712939232,2799235537981715897,7155462643487395773,15778363657361199896,7003962444103597009,654796278064831287,9926509129939547891,15881751715439237472,13772437587775931812,15949292311737340590,9753689508387912984,8266944216084312601,15875180074197381584,16109493543656270261,8275647773399043782,2153349116343715153,14593306924485330,16421955153997138467,15253088737562769243,5903226375179911221,14465682411668035254,7803323244782083637,8309501212191892308,18396687205570995424,17830361279616530890,1231259590912653525,9185080177356979369,903922256468631469,14247783247346664341,12659437896030004009,17208770931848452058,18193498592913102164,13022540323423566574,15630463997563265514,716959981641940816,4272708058352190170,7330230866608351450],"proof":[[1328496121787302230,17155971701837665523,355134518016850268,3150368643914689718],[4174723291432204918,12179150018157025997,12800235277811698673,2115688338672620831],[15245013464068565101,2269910039607277210,8030582132114938068,2399531758338968991],[11747340437115169687,7278888452113603466,18009461807862749339,745224107591598655],[13895916405105470565,4908444505600150988,6034800920012099025,1487584069961334592],[15625449963191485160,8381202418143208441,9045597482061282081,3399786361066750983],[1681658419393265156,9836263994538433897,14026849812482562093,1628965145993921513],[10419396502932781312,2569387724900235676,16984142699268798953,455065763537786945],[12027932116062701359,13961936021944938221,7047951901640731935,2988468298603780341],[907006740545163468,6269262895689363562,17851887098498866368,3120033187030792211],[5880536380205435091,8988109943768846168,8948683943614748747,1299484672283349041],[2096633613228542274,10247230832956913698,2582647671840881489,2337349213770688628],[694282249315834913,9131759307468547458,14859054783036377680,2556896920359897004]]},"fri_queries":[{"leaf_elements":[8059634466938395319,1087603675273069303,13887427810301954835,14245029163612071685,17538346192875501844,15524802611947173849,14783400768858695905,3630211827902011232,9777043384041672425,11695405228073127608,8278408336014408125,3973522133024671914,10696174491489876921,12181581826176823476,25514381388910319,3514726653043463490],"proof":[[7007368958791493358,8355422154445290097,10342513220371205707,147303390348839066],[2026522767657158741,895524326187194940,15723750370526611903,3450631149279494212],[11443319771970133611,5524708156726810923,10971349184701529508,3083527610413365317],[163171466640758978,17351989194464696535,6336576454861821254,222753214723538341],[914408659289186902,3761027086289183818,16786714230629868573,585630427233371724],[17318503094204988140,18044884685216064390,6614024638630101800,2076544447321436782],[11361730203068894426,3680121946875651386,17526033062008274652,3392669872204530935],[7882092492228847321,4471930821896526360,6992058519468021938,1060754295174178583],[8711799995105057694,9584492765011979152,1662279205180426677,2721288857003446324],[3031335695723453993,6008477298464842454,10765433495181274712,2652030715416371027]]},{"leaf_elements":[138542514111468065,2859441077371707649,5408326759719516838,18204574879932934289,3202872516731105880,10835135764697582830,10256328339983915072,7934646329097440401,16693206975438763182,9427236966150282011,14577286388591456344,7445336705463883784,15424427905622527561,1934702650119023723,18399955868471688264,15866995049239277517],"proof":[[10473189255268275882,4333295987636609172,16765928973969046273,1006189058866089642],[6174050587783112948,149887720016339890,13541188707786944022,378250261021521255],[17956264954769611488,9355461975784408498,13279103555217665460,784459187721225029],[8095378267247906322,8452209587008052269,14304794645877391388,3217989672068972675],[14606953949117501867,5883776295085002593,2598488513080939241,2722239111241924332],[1308791687212800679,17439520654013078978,14966667291729064458,3407308016032870470],[9205275315130554131,12859436265214383430,10221394395219555044,1559039297082053848]]},{"leaf_elements":[7316483859597586081,16428180163814632291,7091893937774374451,6046056136958251440,17809833247029302149,1445940697811951404,6295867159341258123,15853361936726787578,9011748475182841663,1392259783797100151,2144902125626971175,12960187304435301386,15351301122828506928,5010318016691547351,17709602852160607468,18134361388934027729],"proof":[[14631725942832508968,11782009017493823066,1641238755326935,1825415171838851693],[5161885191070886748,17345126237564432542,4997730869086077647,2355282103243432075],[9375007685637847610,6537854564438990166,4361148130625555949,109028333873562308],[14642156447412971549,8753961440126326853,11783145797800391646,3176188692125511196]]},{"leaf_elements":[13231179435282412697,11067286733036426302,16464872316746670644,2959542249127229307,3656632155594300318,11512742211126633483,3641952820020161397,16524762161915820919,2866766436991766051,6121019872482128970,16957647701455810681,4800537360445888724,5549409295141574996,15845609310883329977,10819104344405081865,7529936042980408979],"proof":[[10164477711467631138,9942945204206605270,9118718961565509107,2739518935362102048]]},{"leaf_elements":[4501127538857023790,3168202938356671861,488429852234980958,10426529919460171421],"proof":[]}]},{"witness_query":{"leaf_elements":[1694971936807105814,1960581814906018030,13239671607943332368,9290547819864941328,9918737525416844221,12337378698120264826,16973210166175936923,2970386754298723383,15996125911179171270,15258967507531021636,16983877328038857541,14763819685403724392,16716109998596733203,12967482950267694578,4648202585207145898,11563056279887844620,15553320807069497279,16814904291614794826,17346108490987091125,10958518154667669916,11302549310745798519,13951688166063156204,14077866171319161770,3913700438775006218,1155947497712428425,15655011614809806533,15603568630216109752,4816923803825131741,1947676218130889025,9989291018915446399,4185712996797341424,16643810823450928606,6064226203868817463,8996720940864756752,16088064131110077338,4266545312748805550,1088667439154535380,7365621404318501931,15943473090454578277,17706993819556148527,8917329907265803438,17339590353416996237,7555574044333209336,10306358469239906202,2218900284047884527,3504810895023671556,15808864495386822894,5027088178883164466,18313800138751524779,14165736437682684239,8464800758693866513,2798265812524661019,2022019823873912622,7842341223694490507,10174463020343400297,772924712504797022,4596427123410430304,7740386246177598998,6001247318636693594,10525473769606938623,4775460833164181258,1298463091503833147,11365136884049431457,11154569526088388494,2126084383908821478,6175435873129608269,3612890836972278024,1179522712980790553,6364505633831635863,8455214126399073516,4329381138627314881,683529310263560414,15901506951867396457,17079367134331384303,11790786467585428617,11914882419729376337,6738097452816406985,13533411989447181867,16151022961595878892,5844994529550811461,15604452556176001493,9505462376605889475,4727971672943936346,1616073999597201988,2547384888700190403,3933058235255621930,17597297120210883367,1670084406516195631,6361090361239781563,1210531366023021807,390853708604145930,15367331491208098365,1080385901063637749,2449246457290717631,13824607031880483408,18247561309890126639,5140286518543763913,4078429992080300416,16464061047013350107,17451384810173472729,10274232235527460107,4268519055811773779,16684927694640142930,15124845355506514892,12949410069349171826,9686339763878843168,15671949200789887469,1764482602592474712,637384249973319038,10713133696354283429,18082403793199207275,14960097066350130395,4660364504737560625,11280093889780813182,14576792727913915545,12202482549536369482,3407098419497347663,10031999849962263902,6583421870642871564,853598349223325518,6210069796453654738,2969551885990650481,16154574430705048918,17158888979684906466,16203996856899805212,14558494383531853448,7000925815323956021,11989227724244154170,8381226843367132970,2008237307087084710,3178620920764442816],"proof":[[16160439845184544505,7450154885754916884,15696854798246779813,445743262478815507],[2245391290491280348,11800573605196430689,12251578538496609486,3182755666867725557],[17682705671239077721,14759766540334602031,10799141844781022485,637059524373471907],[6042658337484298513,11837860439011903994,8339790866668894246,273774838810043265],[17041073959356366825,3207300363557764362,16630194392286092630,999404921820761677],[11014464264141242663,7504518153903022606,807188900621388803,2876625539868764157],[18408976750362264522,358389842512090813,14887416897826145201,1137127659818260090],[8556477515042486621,17317344015486846238,7437744676791388868,3212445515799370694],[9483627992556356738,6363986109053003498,7563101653901182871,3099897461249434709],[14162926451732993154,7768258176751161170,7951774118366133080,497679327739911498],[8647911231698358056,2295807399450814483,16916144144238836378,822673099938684472],[9768525576339722811,11672889008707792701,281691863958202578,3305185732159781746],[4832379906115138372,11028588231085674769,17437286517034418486,107753723037220434]]},"stage_2_query":{"leaf_elements":[4005674302023008264,13477820862138515671,11945698458081810670,16415404573113122342,4360007797148372437,14063327275897798053,8341038744897937618,17090355453948762668,13239164060445386769,5754641803170561694,5472327153607533928,2140151716702093105,9414176012112932971,1862652560805511583],"proof":[[2153862827621064437,3992542207469148648,5402708266758301546,2031638122445034231],[18098642574604134248,4474693192960571608,7929242384224265134,2178003450827838599],[13457790023009279569,7296378257101309611,13523588425636012740,1077783524298796685],[12056688093085496509,458188737773922803,7141279122631854864,1212316058231915001],[13697155581119556001,6377324708397821270,16582712225103106550,1730728008568010559],[9820875715511281634,8392787532622553189,266587354856788279,2683151882793789988],[7182058003155885342,9447933007233457025,16000829947138235026,361775713767438628],[10885238216987635166,15546505761809999726,15405824866064282712,120348995255248935],[14611637176592823710,1970966454688702474,12054266669811092618,735547702572591015],[1656345402767237225,8750426827503633134,14094814171731903712,2972660053551373806],[5517078829986673266,4765223688197535203,17846521699919079287,1123536604806375542],[4957393372301713968,7478362310982435063,2213452179512466607,2841487375964966511],[253179850175611026,12208827844828377664,5809494268557619388,1729946356149640536]]},"quotient_query":{"leaf_elements":[4452340948054201938,11228688178157039008,12600039847356996729,7117606220283241335,10015894635236535858,4948257927416189941,13357032890415118807,9749820947381154821,16898154356184375907,8972538947273833975,3874458714344686905,13077208266134579054,10711146831456082679,10303459371122356185,1451915849690870708,11137022007377015887],"proof":[[8806682873017029963,12904186324266479663,7517174034665604107,612152108867497360],[2590016351369342264,7501442474631662030,15539344626646833288,982693114771503606],[11428755427618955316,4304556370967303180,12894811763209391510,943492361433824019],[14016799295155133240,12595939725661274553,12930439134015301395,2305102881074702491],[17210099131265159467,8275478889460024284,2446734820002199337,265994969031213868],[15804442900067323139,17562935135620788685,10067717924967859453,2950844383054000453],[6841830497636669640,17393045450002389937,8368116957802234490,3386632811946547504],[10065460027447600264,5485558964732840239,10420803692581449786,2776628542034159834],[11741125954125309622,14991619531842660664,7934377381295883611,3428674420504629535],[15749194532270838296,161955749435476138,11305876001004709713,2489567775698804091],[11913578987079266683,10555458325815583823,2443841609235451405,3108548648251898065],[7444540842383681101,8684344437036066525,602316500209861899,1699929338902742830],[7207630139810091379,4266854911965260134,6829268419185610647,551985630482796740]]},"setup_query":{"leaf_elements":[17372833694949656235,7541604427770759338,12199952899778831893,11400128908085184057,11741824661351109752,15830142632735267429,4702504578981495819,4306583233092261080,1303401394765588524,9433783948579767697,3061994187552691841,1549533168208142663,16757981433723082267,17368120375406536622,2341286738710464330,13030830618310657685,1132487953125632689,16406333967178042666,4827086323352224227,4797198114405142466,6413190161314965983,14988583089569768249,587560481184614103,10593917678050018460,9229175757536904233,15910695747065714446,7977184287618772899,3048975415920469418,30978609562686748,17362267845172169877,6239945951980188576,16318925488987341063,17888742516043812456,17103876262272674294,12104865419517576044,7567138273235834269,13161224683991966003,7392308271434138045,6586395837936519855,13651114073111306675,9230762161609469907,12009689846574584271,9522923055619595811,17129440376576069087,3370089725513703726,12947075986559081268,15162839462968142058,10523558936263353325,9918941946032879452,14272167273613004337,15834692133593531020,15843012784171699335,9174481011980855612,4050262835582095466,11994419528078671071,15864744374171462573,15529891546315838169,1237876568035726334,11881372172326670837,8838414885202036356,11731659505123409167],"proof":[[15993597836764905642,4162663448720669544,6686731878526815144,688171962670192489],[10785778573475963500,1966921880241210025,1194837046293856380,330349584837976054],[13456063286493696259,14588063584560493190,7171986579367597575,929760873472247185],[13979347510785126573,15403716385774014755,13035060062688663685,3113900374146233885],[11909105241349961441,7959410882943305645,14647972821010937685,71365978641406961],[383356763239182157,16397829236228003638,12311059863561077082,30183411410897568],[14846062609051746979,11018031883068473576,1083111044501568327,3208185548495117593],[488228859397201539,5606717493053033219,14715986832030924582,2736499925235124148],[4231097607846732209,17532298808366557412,6327219904797164767,3397830458468060651],[15602829511307296172,14306412105585350181,2850756668987090345,3008851569837670190],[3853108449884422719,9627752530165478615,17412967633302180422,3325873838249488187],[10367993263393630331,1790023779654835370,15091667091675067662,715938203495412360],[14430152768018435667,13625155425001863663,7751044715815897218,1229189555835738878]]},"fri_queries":[{"leaf_elements":[10559746908099285327,3170294892325051422,10928445042385205020,10196000174421538947,6257299532853346630,16261463817131734363,10606029465517443987,17003703235339336834,15049792398190809941,15358938677908205960,5018437717922419613,16264499429113362295,18062081320507426806,16436964981850423415,11941707594059901354,13582831039940169117],"proof":[[12596756273658222484,88663680094597283,4470553500275495542,2338872452683034820],[14687571628399605458,525721155386007995,6832488963473984539,1821386099126200663],[2674667894324307758,8113816929839616647,151296236411995306,1689177134145562026],[14275646152434054780,8565199127808165421,15035746240363778048,3122639698782328511],[642649356325641115,10369278673199420272,16026080461974240818,3441486646352538468],[9566513808413548595,560006117462744520,17239472664259494959,3228251901777315940],[16801916908899122507,5929681946005913836,1909254740585023011,733803569298113456],[3083644177803335052,17346917103600867333,5315874095699433297,3259402054651908865],[14554446821762509772,6529627218503375570,9851210291104147109,1485081884717766150],[12917255288235223966,14499976622908166881,5436213550229819212,2285844493389862808]]},{"leaf_elements":[11685982143159445943,1543719632031993549,3762195286132297503,16624347411882283774,7050121841734903175,10420683008081865929,4864327533320107671,5928987311450676162,5488170061823846202,7459459274438836875,8471918370304388193,3352333567284367809,8205128010228481451,391628998001224389,6469830760425210667,14013283545450817400],"proof":[[12096089519500117202,8489751441337974591,10571300408170368450,2022565290752058301],[13341688086568955305,11087193438846751696,5786697713725438078,3323582275933188500],[8334828225179248755,7355246841079124895,6216841711724171346,287482368557055015],[11479276781720853054,1000302628620038843,12306400217302650057,496476198514362501],[10310290768795898811,825025388262787118,369789961353825747,2182482597144832919],[10755999276392972795,14331754590064518988,7553222335914137559,225262180444060771],[10678740004480657638,4821612586301572701,2713702765633163690,2883361707359353505]]},{"leaf_elements":[170120562046535787,9653716258521158255,18026791857002157525,11429643689863377149,3950704362830130652,4804216613364764372,4627416771046313571,17149525667940950251,14730665405148459746,9951043948163542393,11041824839418896571,14467633231638790229,8045309682662099827,13630617185281088313,9378902254906922856,492374666371975446],"proof":[[14244445302169830607,8285687263097842070,14013495657030423881,1740654508434405528],[3124197734515710538,8336586721135752433,14611100852704868617,2420503830742021714],[5056283299278904916,7573716861628750030,3181551069891058784,569365129076205572],[7349579519894959072,3479006254350232831,2249506297850984686,3461002273469143448]]},{"leaf_elements":[10107650300144122446,12872316686921106367,17782138609005632202,3101284115629698348,8129718703149136541,3488748637624496172,12239539572413537733,8146046347961466389,3729132655365631872,3816743499182286664,16730468474630639466,9624190507278423052,1879743752497581249,4337712219509902155,1896622693346975870,8179875534869575739],"proof":[[2554532247243837486,6767478030061646626,4199547846988518451,2086946322843166353]]},{"leaf_elements":[6865243823879750534,264255220950879342,5012916995573505337,7094628130780347210],"proof":[]}]},{"witness_query":{"leaf_elements":[7030561965821623616,5669801917288711509,10749157166020968894,5758648292809057437,5730891787612932477,1806404442396226257,6094631432419455820,12813537317586439092,16393834577071502748,11949044704731210928,9118893527273927622,82003426099333342,6549000804760277187,11553703452909564341,1090504250503792383,10886173681091968350,6011694708438683411,3366816843957868577,8084501423892635240,16012449788411884062,6926644001239903868,12994173680724481870,9215824103489667452,3182517358549035724,13635557676640885454,6101099112565635516,14223365483955709760,9566655547096125830,4023933533609108465,18168585892089856661,4139334490761699054,5448446867778498245,1330655015322540263,11385512069197591299,6909342017883141922,5991633250036540350,2005910671340800682,381188893190823140,8394234341108009004,15295725373902856044,6512758860277370076,7543527144318409900,16205715664851288923,6130674843978029387,787591352052696471,13281213346078627037,12172303092631782652,11912256716378587200,3998352704069964218,1805724720934268993,11021971266693567824,2087789137833292365,263041563563752386,12320179584664537502,7828580580277702455,13548699683320361370,13398192524046276472,11362942023960410322,1161786308486614621,14725734840410474295,3288414859477086946,3444944741424841530,5464773957383386236,15320901085355336945,7339037385180863934,10291839184620584420,5028484361320790845,5522524815047284395,4826295798355589045,10333326460714079404,3596427203995796136,4248791658942290200,10848324681189536897,10240348112566627300,3980386065890912513,17745750292385567692,12991112453616834279,8352337133488842115,8215918672455920691,8969059461487766698,15185905692798299772,17233852163459962127,14176676715379436454,5995654070824978762,14965902366145949692,11096598087815620635,10535171544995630455,15715903174445631009,10661571368787030888,13914042038723017455,17634019394042642999,5640716938303430192,1599205282966415704,6129703697035514870,16485012792989738552,11788395782381370859,4632198567609962184,13566265231408715112,11713079621294027206,283886480294143708,11308900406165593128,1655082456042146567,8965009423938203328,13964922878156860816,8727855994140150640,6259153869491728399,17271476090925354906,12616747102983907322,9729955742828596370,3966187061170415045,6691402547786264967,4084652064959995538,12194138010786438013,15217154846834309637,8992234940039304260,9514923859899610289,15779730517074233612,5140063396922771240,2922575283182123942,9356902668072144972,7078363985533625475,8587596513398580754,7764190848863257612,16320165373754138035,15593362413605134529,2864760174968038530,16313466506532649295,9728206877628359618,12642202617751382680,11710300976236824279,6116615507560474346],"proof":[[2742603476072053656,6505974887931257587,16755661122489620144,3055496274665791989],[11274664747919730969,17645377984527061196,4841562059952111108,395096527603900431],[17366028123394249845,6789603832942281313,3857175768237276669,1556253523301702012],[4917222435290666778,9594671207649902926,13012062091886407365,3483814177887381313],[5048102548147551649,8598010266831842736,2638010396568151352,1909369943185073754],[15408067648158245482,16510061024428541649,15968092896856955837,2904608272717385604],[7881881768289431,9796475189638078792,10099321246728504580,1524576268578222483],[9748569698170133251,6069769454731927218,11224368081131203305,2495990534480443150],[15001207518908853402,15583076913897132521,7920670534411076305,2745338736049920005],[3021903561226446393,8200634701864757838,16487565651097998291,2391192077551299953],[450723000563061488,15434080896398895877,2582070088100393897,1278712261124326559],[16863036208558952238,11988215026144335206,13195299128578403050,2619397118560080661],[8899754350472755776,12278932612733122602,15570693645971944066,1640054857718498562]]},"stage_2_query":{"leaf_elements":[10119815898826497144,10009499770870240433,1569388736032498986,503931807763565493,4466231224699375197,12601739528327908802,6218826975729166312,4069605157874790974,14388138581646666351,11549910428810366726,8560412859435354027,2359998914099646044,17795589577914817694,6954258386783200039],"proof":[[4617940185583535546,4645452069283436719,16679009735874941849,727451141940876051],[7720378233512346247,989703269993690901,13199705906464135617,38684423570515876],[14420329270509424393,17444039665461280436,16749491230929431803,2917783472294217558],[11208871071245527301,6515880799705162746,6087836218090228878,1958413799352494102],[3355864036171537236,17989330360912328255,12268017701224472157,2627169935776923197],[10295283483423443924,13702600095007857122,11337855410067059674,553984760406646356],[13052677032669872754,677071089747284146,16298957268177123815,1099808678799803051],[15190431425598042160,8368050110872340526,2392789156063739351,221488413964245346],[10485461082726957800,143304353782748699,2807166156211397245,2555588546603418815],[5290751237375684086,9848152834481505111,7386069177986578966,2611320048011078071],[6855436136382435261,1870117002762231613,15567958786874543756,391235778591055565],[4239951313504535638,16901129885328875348,13702359977106038458,2044626474161266594],[12572859388325897636,17011840285034537662,14979141720780255310,2732718184850494243]]},"quotient_query":{"leaf_elements":[11670757976430964102,2281641810762829196,10629326903856477625,5917624737704939067,14586101994970347744,9856668395163165182,1075332310592044481,10696456898848884906,12083824656022650981,13804804037234152351,6364678534175501174,6143842784415926951,6401029715612290878,3118557061613123621,10325429092969857841,1571429162781193934],"proof":[[270753219307059055,6505568877625297458,1147078131281171100,3246030015850207300],[16158396375254636220,5826496246347869840,15421420345849635915,820582257458952832],[16049234802790451216,14088563823022018289,8763294824485637388,2680134758818704223],[2455516046350429201,6370863706128507298,912422149768128263,1213139199252514523],[14136388839196321513,8485005154545293432,4164237056751863492,2251592131490633344],[922701798431188547,10442189044972743219,14930908692661327933,2612099590426610162],[10556823676336330276,2961397704566771172,766841377871744115,105352045041845844],[4683609120609815779,998310261445247658,3142048447109445634,950586763616749938],[16477136330143677390,9983398293885396725,10711761933515205197,784510967613966734],[3204585686440439986,8909968791530906666,14301355533980415395,296130618275327572],[11750331563632585034,9099622008721567403,5598521584222145596,1176108471731472748],[17226619570451333012,5804126442384619246,11303236367700841610,1628133822769581242],[2322302405481175655,4650094345301116407,2541181434162447780,3440250464316257291]]},"setup_query":{"leaf_elements":[13817590380956828157,11633635205950605805,10410657720860629699,2881957871398791396,906766402334604440,14423650288509454260,448510574368762028,3483058546543161736,10723535843362260305,7581271134298775330,14533571752501578161,5972568927355291030,710822221116788898,4303783673730884097,1770284674945103576,8243490113645654081,18410978894930940781,4615054178259315316,16334088634201703832,13095085394852240530,7078364543763210044,2105078773131655790,14322380927460271470,9519710726304321419,8493822985378390521,14153785125007061046,17214059565696643714,16774637006756546939,3444715189954557011,11213941669405984662,2047089260120260907,10377980406547620236,15651195167889236205,6044974506498882440,17112525905792784342,3935361508240891846,8009574117671920072,13120723966445957615,11177261990807932317,13802624355805421573,16824247424783238499,12919711238226307444,9380871676421245834,16184357788181846752,14156706158205175262,11753092645618970661,9734922721930533749,9181204483870645563,2952383253687246430,18029637902811984481,3168754565286228312,14312739212548467283,668223690223294960,11570481842966336818,771634491009333076,2718585406377575047,5135360622298897014,8522411807837607424,5394458655005122636,2471488556387480741,4109123283815574630],"proof":[[16037198992527258521,10702696532244505605,8834236029588442493,1292549924951315543],[1388674470398847962,18057475551138316854,16869299770415216885,2531463180083681458],[7329853068445166960,8532996226317178589,5799058396028574014,685636891689550955],[15913795422250004182,8327822900854606520,17169211611729272771,1985452738937505257],[3721821625706997424,11562728406123287757,9341393317940941803,1094304974548096320],[12408390615568495849,3025209985204177671,4836293523136309015,340256519275455950],[12124665407049781986,11855714046927924782,2380903956394528147,3086065365582321500],[4761107456464617800,17630130463648913994,7553773888409628298,3359841685074631430],[13757707014504258079,1877755430963808613,1479806010960169482,2028203436165687353],[7897282245274292570,6070231691242376800,8704913588560876920,1969179554267057642],[12420226133792857547,17016255984614324924,4366758720943739434,1589337421974557736],[152324854936793720,6434733559477165843,4995158629164115062,1904827749789826932],[7393247476269389035,4694627994465087610,8725146533108150334,2229767323800595700]]},"fri_queries":[{"leaf_elements":[15898410939818360916,11178107965171185743,3637147332250836982,17098294767889429740,4296035829713539434,16171299935289205387,7128052052398622412,18184806757642145591,9831222275150102474,4146082091368690860,2368336602361969150,7653245504355392966,808843430106943837,11562232256426541996,15886579423965899484,1396532274554378639],"proof":[[16069613034884544331,17864966653427314148,17974523230741755826,1762107372857117881],[4635563394551680731,12266981952467087686,808725876958659599,2939756238608743875],[8250856484723894157,3970916504006834561,18261309158835545613,643164117884928974],[16097696491894221213,11378451600034099367,13678860618038036674,1060530829092377710],[7008651140053791165,6048493446929834838,4108788744429494188,683254568153261939],[16748766695739318524,10835018975208126073,10464913576878391787,2286929169438187991],[12578290231270095177,105268140089458175,13081506781113439738,2959540431584216992],[7793945251104959936,11294403770291624404,15149857362310540531,2975949276820438977],[3381658889260995503,3637357565425517524,83142123069217560,2656235863936968317],[13909292638786716778,8970587721766887481,4064072683418480103,2352438592939364893]]},{"leaf_elements":[12787685275170163424,18357791615583518399,9696353547962376476,3154487431639995322,8426219577154932369,16109899580609727447,18141565523142593447,4890621316638099934,16870145897707216792,3487186794537379348,100819503290026866,5782042635177496278,17110905219570550366,3463693709869813508,1556405372383323235,14774449644835403694],"proof":[[11995139595886006979,4451460654459859783,11304920951034280209,3449873801098458744],[9030755797771948692,9019394019513513633,17863586231181738948,3310253193051333663],[973890441221613216,8014180136408230809,11021340449022718759,1179974515483355249],[12396299052082700427,11636922925782633782,14018315892845892010,1100162689157957105],[16703883870810821147,11238238038101244023,14215320887317163700,2757164543050117465],[7058560104955698145,13685770340727647471,3368167327492511222,778222969493879357],[8219660059199024368,16655180989667732883,12470720334809693761,3261694339373339859]]},{"leaf_elements":[4448754499290945384,10773325992226133674,630107828946673910,16960681374269374453,2276725812501157897,7478141619493700218,11007108831826698712,2069255390048289856,16825459579871713867,5228671458166119490,9871725927541309308,6882360901603752533,14098155155851322978,17416652416927697848,13723089993215597484,13769811594136049251],"proof":[[4949277776250941569,10024655168291975251,5203995107321912169,1059694533829483381],[2031094328539001503,16627167335287863007,1344681254547685416,2030237878421916800],[4548839254371180364,7087336273699594530,18283837389736962471,551969604138509709],[14914066784182050162,13218321865492874577,736393783097052782,1014363730706131245]]},{"leaf_elements":[10843563837985374749,2934059280078601464,522664419033492028,9663970885524212153,10528477958991422926,17612037856198408780,12590216556634830341,168568544817592541,12645274891552093570,17506125824037388715,12658942764876917960,8356328858488461741,2074282120620356578,8773718658183707819,5723522309117596141,7469780649577961051],"proof":[[12374258612337946155,8133723967161758545,9858584754587618204,1967446838911406840]]},{"leaf_elements":[17499325981881337266,17599898521267640417,6381771601744403426,6712813034178600945],"proof":[]}]},{"witness_query":{"leaf_elements":[302312780753871019,4428635474147894520,17379476623044000402,17786469797418254331,2498669099489402721,3482135386364210937,9835716310924593032,13415089386993082703,16478120205730221925,10510918681635024934,13556125432596063582,17205334453997809476,1403865416110265924,17105812319706074651,5559175606437158868,2306198693352751323,6521522156076968949,9817299897763621401,13176872369459068200,233701992054351963,14507403602637681395,5958735433023841047,17820267928595255829,6060396593056827011,14532695831861650666,17665282569768660695,980941889386745241,14348697178087691529,9763294951310394076,11174169760231988223,15595845349985218132,1656211597030039150,10023670491971383538,16794677255748833089,7608526091755868380,12393662272214466167,10939843487639725038,5584180851789092934,18229532132601291954,7236233929559658012,1970103336472990314,995593195728324625,13267290176149900492,8105993284191168481,3187425343942522192,13705458328122660471,2794425573023458164,5098111759153962851,17377915163535495098,3239295734543323678,10784690587187927580,12421464265467746170,8709301290526318664,14092852437679940079,11501043952432957597,16902675663042871881,5114381614972077731,16773543969652928938,15655263672739647770,14398512844687065721,2468900069289942760,17057594486462671250,5570579373903253480,6039837679326828249,2272011441041024824,7369132166932322377,13538969973541241438,4946290148981055650,5107046607824021173,6824633623680207116,5673584511701983048,7544313311496143787,15657363436224525137,9833624614564674656,14195033289400481925,16479468160185663279,2130599453529339306,2969560187615714634,5381875803552237141,13830381240731995267,1863595259013051966,121472805804240932,18000362157799335259,5241908120366726441,18265503248718717765,7421602049872677095,10156035464066961969,5247676988247529285,16503638746029980983,2108475818948426278,14545183532980615163,901010321983932690,6441985770919633282,14462557823923503734,13235445097194380370,6743223141870921187,10116746565292652723,1486102186619966099,16829603281202228315,14655552308950670772,16691366396361340751,14612697822780416083,5158256206815259086,5249708047025986351,3096365642126644684,7211969063220658071,3615865371509883456,15802756658234757849,6208288517071948721,3045249222120473218,18318343754695825331,9684513656278601220,759874039703504996,4710991052451409349,9268688881716510660,15743046731442070048,3277699843632859348,15515720690377948650,18383785837766952062,2277103656320892120,12567653477851701684,12039307962951268562,11455524598404995145,4670281852649676976,12271171754742605005,9577540024609650455,16285139665406759649,2576761032060771348,13519263707324008848,12024766800919641248,5638348178898210561],"proof":[[8616532636437432508,16776434551703949213,4926358168821875495,1034321575444362255],[5041726161892998219,7096547947418017546,3178962439686455010,677292441560001841],[10069546393021443706,5629153897623773958,5119897729952399058,2484692588118302629],[13070145618533252506,6560274839925950781,14508601188553664406,2359794377918276711],[10771304539691871984,13556550448753469934,1603434245192459665,2692510214277890856],[4029862936506402854,9102255325495058679,9573919752517432655,1816188556652647402],[17427629221641061107,7825851411950513827,5467110382590075917,3321022886819806972],[10581733629843383067,6980168292988652173,2805589683511883557,1465558342721646649],[10999576519686340064,7162518533837430584,8893062227899382554,766919222727204131],[13473279358552520258,18351268652446147061,3330407349260370270,2723666300754352293],[7949311848825114589,6104413394651655009,7022174876635094126,616093520121474214],[11087426802181800923,15884898200158356806,1332726411791772390,2686199046994254784],[16780060758106606046,11958032741938148456,7312416229524187577,2063252650720473744]]},"stage_2_query":{"leaf_elements":[4107198672673396548,18226261925466852002,11473747257571128161,10805682269990716904,17413931534614561465,4143680844354501828,17896729508124479271,14007972608498705447,6864072745922503246,12200296648823798831,15182793940165156132,17075229608465568822,10969724051411635989,1139072818898336522],"proof":[[4586429173650219389,17924186594504999153,15910272267450408340,3271420156929619176],[14371295299287445209,13248691779247873944,13211827090586769795,475459052712524808],[14473113969454328732,13102784251834584331,16606031274509406558,2260221118022971195],[597696875092224058,6125521943048560907,12926831749514219181,1087363170067623163],[6942062374436692620,310887101679416817,16132025844789140130,37939827018736703],[3571900467458834272,4099078057915318486,4374837855009248460,263133476735155867],[13207927460725663514,5721138418357235946,13649614717449867634,2720631906384355920],[12952874071089760197,16007518959941080332,116748753290052562,3091609167135584327],[9700526005774530018,2834953884527472437,2777098686389980159,2082416001939653902],[14121773662320592298,14184631469476648732,2628700163687270773,81847610796232201],[16358064401996142927,8450936922289422782,1742310375777747660,2082364674147704057],[1600324096323697199,12298561271247772534,10262459070123938112,297497425543426121],[5354075957868852375,7926439690175627247,8585448747203103732,3454314098108174446]]},"quotient_query":{"leaf_elements":[5038034734215509259,12294974902983075044,11399520237134706507,3587834939866484551,18324147326177643485,11810307306289479835,15538828036344028821,13503454187828825226,17794026021195719137,15251140173813012205,3748970040377080650,17137744875353546188,17985359043521256917,7989080515755450817,2605747360132779000,9546093541857314827],"proof":[[17580544060871558681,9566779694139267737,18401109277990994301,397788965307520282],[11413158615547404074,5980284484699313065,6992334003021166588,1197475965309036149],[8872918522790506758,15815325460865813325,6959045090841329485,352521106360291847],[2180719570601442050,11364753815827670222,2779673138785023323,1595071780563893310],[16968678036221312335,11257297821810763132,15689829644330041324,315606370241610300],[14077892102066456925,14259375902019270143,540891968674215148,1219217027090776627],[5223392352305033848,9575001651791601048,4857130585368801473,2132105878017743571],[3471919420718230473,11904972556378275394,3860224491052458503,2649469725858542288],[11390263896006233096,18434348726442519451,8996799934272479463,2915366322178000013],[12073103251394277465,3736466511122351874,2567245270691808411,1919310147787076698],[4971545956126970030,669295233418725715,313339822746109125,3409389182178758784],[15954198373034633801,7895793786093438672,17040091218657199541,1472989558763709756],[9894783286081270076,8285846266767218443,7388875983260854164,3412182721263324036]]},"setup_query":{"leaf_elements":[12513164830809287503,5350701525421505893,15969026302034022873,10556430679780005611,10644842001937163243,6553225499557882012,5862651879683727609,4077410902380466917,12977042825962084387,695526164184749829,8839499633900195115,7140832301056927817,14825391364419786294,17838467738470743140,6598702789185591096,9278468210565902306,13486512571013269717,10592330682532347930,15809930762918281860,5644338871231494707,14169047369385597332,18041490259793337907,12031417250334222239,9097042135035942325,14476423655700822476,16669989929020317015,17786368146082361273,1895333586298391122,12665493522602891102,9740381670108609476,6829309364433919342,16094965418329986861,2195865482714384321,1476384745806245930,1963584782887175835,14249231330915151402,7491426855840727592,13780536130297678434,15844924515227798422,14258391624532003962,17978706971616637187,2572120321574511581,11608768753275526193,8978787581962834249,4288320027056256763,16254536677778343837,18445597956180309632,5301701285096283984,15791595598954037329,1451773598617127690,14071561383762616739,2190495175295508244,17196793604577647059,6146922306890973214,5624417946781750493,70895699500806602,14511346036602846284,12617068652485988088,3178153040819381861,12558594058167754703,1490649170776524017],"proof":[[11209560670326466921,8307809405432672430,6699139747444315717,47053619768469838],[7661238220402051711,10904224992531398375,11189646543968108754,450970769354003758],[9619357454163584147,17717483513415516359,10133987817279624337,870109819322632472],[15492756928702943586,5802238046547501437,17597153442322147599,38946734462180226],[5220160673506363915,8150955126741289606,12539193634981096672,31731270134942971],[5239427320966667022,3368794621053804580,16373805219825090941,976773498082026513],[1600859562152982974,8478522287421918758,2188467005231228751,1131615008247828534],[613214897496540598,16489304097948669249,15698584638199723739,3260436440838772388],[15126242016640862169,615993858332056827,16711775644206196917,3041435191844524109],[12802412493503057635,16882954521123509908,3848811869777888217,3385995935006837957],[12885553678244712111,6256143155388119886,14640565542862303022,2658837783515037107],[14772192792860455257,11118246339688119280,1965080097173840031,3349448022561578366],[8257498406240408542,15294783180318616062,15553598136149729540,2708965552677615445]]},"fri_queries":[{"leaf_elements":[1310613289475470508,5300687168582014561,10073562317281321525,14105961855457190749,12582370340073996429,3484474482440969923,5405703365886503130,4159834640456092328,5793428172611164395,2865759409046623335,12266954955972341361,15322403071633083330,8772832444645448150,3807311187443475745,16355153246579935992,3429370400245568359],"proof":[[10903304980434562129,8628876082344702684,9346944944665442503,2133834528178615958],[14072081990949351895,12547208424262208164,3767131861083007976,19113929997590074],[12834150759685049473,7728506473126655844,16582856651751333223,3236419890743569885],[14165630224579263625,12559034004046739973,15593197459980668151,3329905078068540194],[7000290812543477958,1391973129233020235,12896018790870938442,634284796233124387],[10717958542163361518,3020093942847300967,9115197239198016520,1507624623819175979],[3493214209932470310,14352148469656456284,16540959922755673833,659985928209885110],[3640705241707191752,1439364678369733228,16823017061232202299,3287558799196288399],[8513214180609609037,13297284929573666992,6797607627951630926,1890464891137065182],[11555457030939037269,9085544040749111966,6591791325541549161,3213063993889265843]]},{"leaf_elements":[3324965197275114892,12999240749060546617,84499457182986755,7613198752404784477,16622060943088592742,11092336087401665796,15311860043681419575,11124674120508689822,11032804896987646344,5433229827358732297,1572988777800865644,221213156057061735,8355375036837245023,1965285867282549499,936643466192380347,14341453661133732188],"proof":[[2871584511416077971,11186904495231330317,9927015214717876555,1203134002069740123],[8376592063612793361,16251927674585851395,6816590692993224517,1913556680516343476],[11157214202607563605,7468618570710117446,4096019470850484628,1589536712797500894],[1592043380310194631,17927605277043203374,17326718956861760042,1901063593416629454],[2549493498408255385,14855674615213855028,833536151334318953,512168683439409590],[10668781434632063102,851620707839899462,924228320636093084,3049764870018326485],[4849490650414052880,49293529635015172,7888700325494612796,960799201708683278]]},{"leaf_elements":[6324108224470803719,9963940336969474195,1850269165618670271,1022213065944088683,1977111228944209541,9477182315152071634,6313898440555609609,15076501826452454401,4001706208885847454,5178995302113597824,4094168901182232718,1743637457997577336,2879887735877208464,6075159056992708939,422939670170608203,4110482132517673521],"proof":[[10551853953976152519,10620037343427777899,14132951982043948018,1944399682372269984],[13700806054213566414,9604222832073855930,10094771509987470565,1550243616437931062],[16293225978637085163,8792781559710197860,5437602222559494734,1152586688213575212],[18214637273193897569,17083110335864207315,2458916006554433768,3322903078046680236]]},{"leaf_elements":[15049793618273264278,17443600347219547516,1587449845484096471,9268301052953521075,15310044983624285302,3137536321055870732,17729664650163897904,7295871734567114690,948242394662532442,4174441826096490128,5717830596626736236,18234818179955594845,6559695840222737178,6570323834431778590,27890742420152916,6071881210060785784],"proof":[[1207514275877165031,36803928778764813,11527218039117858712,1899368366190537423]]},{"leaf_elements":[15915622550061201680,4536541224237163888,16120598048347926193,2661082248244309055],"proof":[]}]},{"witness_query":{"leaf_elements":[11575157606359739203,10035001864335282223,4918220150166398418,4105016304825624188,3092233500480487799,16798369206064131020,9628668051573080118,866772415166068642,14589054436027424153,3413655412605752860,4559053889384142414,12469682950093013009,10209532074869281141,16699588615795462035,6234551338494294759,1649486232882265625,8627200651651204810,10500214990005935387,748246317042637000,5128285381426845955,4856624027916867221,11433728361194366940,5478861332897318047,1265229375496707789,17399513827665820488,14830585653298670733,6879374785298567348,13696356644751470152,10222491452940066338,8092167152703328290,8970879515547824867,14463222307663398004,658860873168545753,11636286483703488387,256638840353853312,14230607971080352411,8728149039845638050,16421992749994212508,11798613827830813497,7081896095390127951,14791353099210245908,15557286094791356025,582969323098461452,12618533452284925553,5810909320859220511,11818016111608214916,5394155797349509896,8030151973373835042,1625041823337009874,15633543969773615405,7707963211949650243,2001854328950764951,4131434842146559033,1271766457350500377,11747286109884077710,6575744704951111007,8842196241740639517,4116493555482504456,6638983368653435525,2014597549749797631,9927328551776109371,11046082432612538844,15280437758447960075,7950951254918403331,17852749160143227373,12726192443992767334,15707566837501175950,18317040072728984100,5623428880311390159,7492375688842468625,8318133796035527588,3214975415326508186,3448210485314416899,13489100308768882283,2374146380797446199,3376837007608321274,17943984464424847065,11789693699192990922,3348136870251041723,4062031117638911436,17574188770989418572,6489304278545403125,8526360151116447714,10837042541776511123,4101108758385869339,3837336864846036565,8113564258271501442,5011184443001923386,3789878866042383836,15454322085954217180,10066926663871905047,17269971828869023772,7839599380774657112,5779291377810106932,17875142369300382771,13540417720346123272,1274945914653223817,1698669739283850680,15566288585037512429,5019897980702579561,16763624354860421325,17617583962867976887,2501035354779154689,12485811584966749949,17428240542759460179,12345801069946656186,10195218624405596754,14351403702981141499,6004341160859912718,1364190253033893238,15796283215725356113,1123583623759149954,584189104176586238,5895111963753146628,10789040748606011544,5829158575615694714,6463094810378857429,3689620805564337955,880290389662344336,3169102536126585608,12348767807289266235,12048492300151565150,7839108284490126735,15040338472160209631,6796558104019535410,5741171491152781341,12499346748392628185,17726474622714223686,17487319158857169522,5269687550643992471,10794739121125989909],"proof":[[8065635251923292097,17514919730054872381,2841269420192760530,2095154164117032380],[3077993298256830730,12939467787428729824,3362670740931251594,3393468914856648320],[6671111377699149479,11684400717529370063,11818443265528315260,2639889477205904238],[10934649384048679702,13832409182824507831,6831291047985636721,5941170304818324],[11194907693665501387,10000755834912637479,1901715547456259972,309486125267809630],[691599533256940751,16636632049765227124,12406295229909037314,1360021983190191714],[7647991064151427669,7060604869986141222,18256373296747910675,1874219996238918223],[16811679841022741031,6051435241087029659,14482645679736285732,1606648669161332097],[6749417622445779427,15811057044516797574,11683726509721346128,3359379759309590124],[8731331459858555400,4794785011636928767,14014502162874431284,3215988054991918654],[4248797211813909895,14040089604235735473,15599987940746318338,84186887586394144],[16487596398035217804,9647644250171436371,593772509881424834,2167801526081690019],[1443710191567724466,13285942274380957982,15597202445998108376,3018040234733100453]]},"stage_2_query":{"leaf_elements":[12917740876902986489,2798493139372662956,182816508657318693,8967282123156076745,17284074846325982011,12932616076069126041,12485772463417974063,6611610923951138746,10415505115374235713,15220981455279269982,3223115582448734169,16031237121944296974,211568238902401154,404987941762188693],"proof":[[13301335903971025884,16149881946828859285,13402336888492095518,2590876910622839082],[12816671722918978445,6785256017075321217,7045820044467482433,2933331681328164041],[871600790921702997,6233134678242528500,9788829052778325642,603077726691273719],[10036708434682869569,7605003664988386693,7987686694692075998,768679579098545922],[12800748781940793137,10781163070590823371,11137162588734285950,2121620651428131502],[13113801492376713343,13369215986025321598,12147662991293151397,1149001748123946861],[14573050616820349221,12406665978477620232,5066518873176930928,301079241976902908],[16937440436493765827,3424229021270690107,2382985060855197533,3149585940041769088],[9648559609763952530,16523746994175739948,4076193922027599233,1339863291972475785],[4048860296270760677,10654584233847122785,17658554602779271948,234782811802859205],[9556326280020632014,14622049087127220127,7188791035379400675,1318738925078166584],[8763095688229377138,4203027844693350601,15839287648717765419,2464465881556052390],[13192953421021811020,12135368163999496150,16519089414246052774,1297301135049925818]]},"quotient_query":{"leaf_elements":[465616677272876844,11319752104113346131,7597582457032679083,10610538788425563739,15068217507975025388,839747963857782835,1200123563916136879,15134075312039220209,11799997433370690621,5086401052403502286,7039218810410509848,17949686630207623392,12594082339486463027,13544191265063767246,1203721928401459271,18215184218459498962],"proof":[[4252816258206111627,9292129838949165111,943872780049401181,3357377527567005167],[15356107957572576228,8209920620279685510,3540543346517100175,2258930650012963162],[12271434124335773312,9286116666932381380,5616623095625621502,2004056420777073394],[17158079170209543604,3997957830231871535,4199889834972118272,188530503049526263],[2399465445330442756,15738996769496691104,16306586802952455558,1312021304135174057],[8193627733436817687,12754032769635347396,3543092740589951216,1143759576867300170],[4556791682155364618,4469240576795646791,10759402592819350690,2148680945946376131],[6052011947747115591,11431835354516860541,12922276237700862940,3005703562704003122],[4445228737098014185,17026879312714717423,10345194716094813465,2972546250557248354],[14911493800648682030,12034837643726087066,11622076309937884365,823795144246392576],[8812185660268755303,12934107594033073921,14594710797974305940,1970618438189651963],[13741377562277466111,1944538524945591851,13834278555587898987,2841913467563537476],[11100972887232792717,16842313487508060518,6071017510380834699,2105986336062779306]]},"setup_query":{"leaf_elements":[5819662894218759526,14567403039901330184,17527637865147891974,5430244614216171339,15293336234540272089,6097365879086149292,17882966231553552390,8813789751146913636,6677293813141474096,17725225067626873188,232000831731677746,17717133711850108902,11832278543594856958,7178660088096439478,2972178005641807889,448324806590069609,4661601423033879495,6784133508293763995,13050267335873547341,14610317053801484875,3612330163733682454,13921549839710652621,18327664736228011349,3197949094300327937,16232759288273988100,1135473910127538600,4252608059713568668,8049476801513141894,7661110979832552568,7889136920095592539,10565047707182285252,14214206120114714386,15262795854062193454,2555135223034114672,923488922758269231,9479852654674285990,12512483071134710112,16456436303422412441,17764166289733667929,11179159787845392966,11657007745265136727,12904125692802433277,12740942851155276833,13279188340353458221,1809289074622520443,5792764325096415624,5258534504232031184,6242274291791061781,7046034307234469693,2510143579222121657,15297799902100339097,2264977049038135456,15680060418289537391,1285092396695679413,10141182806296893590,11341022588597715334,16614755611467798086,3473682666066342232,11453530262216729377,4841322735229027205,1446785515492040244],"proof":[[11546572517259162216,3369164934597632025,15614107082093457441,359358591873546113],[4198041198968038593,16659249563319672999,16933798821917410272,708550381536950423],[4052275201067498218,1467272396215196041,2634479397318185323,2722774346483407855],[1138754717332223724,8998192920164028934,7083841562005352205,3485042706785643991],[13072869267535295323,14673257813557351599,12023155522621164575,2133680685351324203],[14736518490650420271,14461158402246155422,9892808841771340917,3248347951629415804],[11721285952815786128,9292034692898110868,16644406612841740392,1591729956142620649],[9144764718129318448,16824722763977984603,8508521117660693196,3417303369398421873],[17613823959946941782,15422043290643843880,5308430791448064798,209089946280225789],[6655436725026151787,5261426903001576465,12735392084318986460,902252469119205088],[11428864581181648815,12611799512637801373,5370448499064147956,1416033710994386171],[1625000981274062376,14334696978480106348,6441995967927892212,3030286209213344148],[14895236666511632273,1399194341617175758,1368280455654082000,3365187953082285783]]},"fri_queries":[{"leaf_elements":[15066654569836798321,14859402520864080354,16144297989520081400,31563161096723310,18058020377217187134,6424629234604838378,4660759429505145709,8688088295163918480,14478076076718851870,4123889785949587958,6990596892515560712,12495642850501118796,11849438677702813841,13013543870281513245,4757288454547020669,8265018080988359123],"proof":[[274839693720320368,10960662663321606151,7641653276770111815,803301155953987299],[1513861963754839633,18192665720650270561,16837421300331753970,33072038135567621],[15920907959121698605,16646217317516398030,18348425236910775489,701396968748223125],[9628335659072867494,10734619594962654627,8628015487047090815,2019222997241132474],[8016818661213428114,10861830256262736801,14015371151169018705,3005216333144095793],[4926925710469094944,18374657107725105406,13296810771716392518,421627518205276267],[3355396946822226001,15837241923345079988,17188534636111513863,691850309568703126],[613459326179506739,2324040073875118185,11972155232303911763,1528656241590597161],[347176974939002625,7719741817708622723,14418590971901590662,2029569711632894471],[4902605877920861213,11701332700254187564,8706248708951556531,2700469757148440756]]},{"leaf_elements":[10633403515774017449,13637566241263245393,13372791274910967004,9041602293111951117,12929431112657551787,17281729733346203221,16322555810331997117,2873323472445684955,3845468584241883703,1828593885063641179,16049062456097558078,7438953176668991740,12068475667667748195,5024695186481295214,13643877734462364006,1991605463420089501],"proof":[[3771927826241672530,14093823981275130606,4247885213195087828,3372405195984894094],[12551298466438789212,9236347994440695514,16093271466471936,3462601373620652658],[5392917045405381209,1487675981312816052,5697406694580600752,365780816140201001],[16110639326939105299,14365603980961760813,11377919323609459290,627961758965310213],[7115416922232224744,8146080255954698009,9062846923992120040,1349124095773385961],[14981366453569600762,8751061205393511146,4656728583089136557,2901921338668318906],[18139407998752333981,17909362892501148452,7363527141544631108,2985762817603723685]]},{"leaf_elements":[5089704405242328048,4610293652415261191,6301115028294572990,10966047133026433313,18426995840494730531,9230550097232456802,14942959027480939161,12862176383297900056,15983975016420334874,6776121426712139530,5293254082614396806,9141383582709212896,2578561387502501197,4257557193930842761,7508645388646954335,9252965497429594707],"proof":[[7201592579686222510,7964557712720126612,8260767976594055454,2792518390170497744],[2363389257407655291,14771852290769972522,13544844909431106986,3165032970444982491],[2498404504816880002,16841764584222148124,8463928566302136484,826219200934473404],[12056361099189973316,11445222606787504472,16233639641333485004,1561239046487682830]]},{"leaf_elements":[17729354569920996859,16449461548712133538,15065163420655373648,9804137193794166355,12383677593442401399,10114681989149391484,4432167545295727131,3779701101209125310,15177492424625855301,14521020974475802444,13362237075230757592,13717904117314483410,3196402900380536253,17065120679399165829,10990006025068578642,17916730893864383515],"proof":[[10651158724031988562,17385018956147728316,7353147695606921272,1616320887286571537]]},{"leaf_elements":[2512589913085626850,6670100345702245078,3875769945896076457,15189048974320662278],"proof":[]}]},{"witness_query":{"leaf_elements":[2187024112951743175,389206564411409500,6644957619314319297,4719008842232419219,9923207349656499769,12587678017236437629,8294251625052904634,1197593320593654429,11314925163096051685,3386825916392678318,17154827093124990640,7514438365737866350,4077397802270271618,12117757039007425794,10369617740770423029,15740188635641264752,5264027648551945300,3747234015324819412,18302743617708656868,11457181929095703870,4793995518702485999,2991719821909562834,6764842117313876301,9635760555993426192,9890960288976730635,9417988864714122540,7390934319667907142,2155263759883337375,5539022144712569500,14971841681803130984,13257974203548537708,1627233345540433421,3185168445642718616,18209694721905127338,6972410773164384719,4151315691103509531,3768152367238350164,7508330546160761706,17236738708207562649,9208660348891056034,14256300095877094142,16818336703118284228,18352292964038706843,4673711840562364962,6079760555506522151,4885954418811334891,5726704043522958898,13867396239395583220,564348504265594306,12789380605067280767,4437508267745596964,12358385068313580646,9789262327036212461,15104549709550124474,10383844712222445343,12758322324754476183,15606336802227623843,9988194312996518832,14290625041617347929,1020680376221276070,269369194019637307,13267624637049519398,11682108871591305863,6109965585749787192,15409527904345167005,11472389373480704757,14884190096435378228,2716658108799466386,166506142067490281,8588820458705292889,1911107342921519056,14360766409074671310,6800922082814058659,18434498429756433343,3527620612853453756,12501526016114657418,2922056334237536183,978898422414996741,18411082958993446202,17273061748252946619,5407467671571037569,1863913200623306982,3151595203680308090,1745813611405779478,18428241529177876621,3420842203729187865,10314999698484981540,11881172624357614199,1971237503627022279,12498336259764126842,1503558770691810780,7674959188308277985,8338228876216979403,16574193499621571301,6349940208857659755,4912356238269133818,678928630031422497,14138465421825369871,1772727353597793206,14612639684536489743,2051039725798607992,742524306990381008,3324043218151323285,15435693086940471665,7606519171878351349,2805316018013102265,15762959376703594321,13595772159517686873,16191470728309548390,4675919408263736981,10218168140266687650,8246202764459854961,17680452518027921471,8815352274208368635,18135312566034252416,8437769872859516420,14205147346165829173,4552605937313600267,4926947537951629962,10661667634982036883,16186594537338502651,1853029770952492067,13163878830624011280,16115892460851871878,9212038113622413228,14026014396559686949,12713054030768950071,15109534630925004687,9035084928711454321,2907466030066403863,12819379178632849395],"proof":[[3586196858641413360,6122426049232947048,17589405211711937572,3309840293806481998],[6875387195558594401,10194006291500302984,3244210814208371895,1164354882021938299],[4310774034421049840,4610312669445047810,5739726215502576454,139128042245293633],[9902710023190555120,11408801913224912707,12414253137313131329,2144260551113261681],[17580747087323158802,4377178581846199831,5069170579066984624,2458609441830847436],[5909765416057713619,6852531436660942331,12279037537139325334,836598839765877653],[10742639536128603479,9317077929744470204,2949871061783882005,253458590101910777],[11118906575606791733,5703026334620313599,18283905212633103386,1152940985109211351],[883834146545005694,14502336986477664651,9054642122190665562,1622670913918553974],[2679208933754938042,2381272374693791184,17610662853409612314,1054461821651762441],[9151718361097604542,11273441527300137089,10033571517675473104,1109114853531283164],[13836668906829710369,10341401230349416198,11163754085741760243,3218002454189563944],[12489835289634896400,6436027295365327603,13835359195736637174,2107156744221810711]]},"stage_2_query":{"leaf_elements":[9418354337741400929,16999094112014325916,3867941093132122450,15947668571674423645,7709758591106157297,6114497364487128919,16401021287023939170,18280984662756008374,12994719188695796225,8697150490203470889,928210563085379036,3587346937918290293,3518301097017610610,1664235546552981291],"proof":[[9407347896749869619,16194571088392412800,5109227489765617110,31175554995320788],[3117707595913150862,534619769165606406,7535610590554456873,2703771999761141674],[3980949612726137727,15624938739210316050,13619745477231213592,2955313286049674314],[16029522244330997492,2948531921768966498,16236942298679450727,749080303735469440],[16318245525811880900,13182988182851294309,17848226528810643700,1615440479366872622],[9812933463152658913,4668148658767669234,5656942889008838592,2538393308938002793],[1637087596550566054,16302654485001832482,8304302725728973573,3309289792542561626],[16094891269859452902,4350244887446145212,7102572066219114207,1604939959568099983],[11806312781421923461,12462845796603247095,14788536926934471141,1407630956995008113],[6147335282240955949,3696040991488513544,12986049670135589846,2830299459304505435],[14490740811161996927,3628714400200805408,1453346564145070167,1269895602592864847],[1588122855051381316,15986256495690246090,15845347415925917050,3002469809967888056],[5088184440726532484,10624519551630831941,4139449485439259727,3412129392071649693]]},"quotient_query":{"leaf_elements":[5588144395338532421,11438963819293285583,16349464809069889490,15063086010160979174,9902195544469731537,14652788419310354203,4237097549296461678,1378724871506719394,6890124023000065653,15869732242756391238,12938777277863067709,9541570340167365277,14563362165345957314,10079257020039253036,12908882297161862349,11166407153558519572],"proof":[[6144386806189431930,2747401413825151334,15296601985628704268,1312624280968563107],[10641371296486343189,10143284844261972150,10782126367910852796,2712806796064130230],[17713880566312896785,13533611391476164710,17388924033066521326,2749156045443226602],[5761635845000697090,2298281648571901307,16863445115582358295,1884857424426658354],[2932821334605889118,8694766465698227945,8761676985726368451,2700824479231176176],[6450981709066857906,14604545805723316536,13696103863984530034,894936243627926476],[10207371642268558836,8518944451360068026,14460325848107454734,1237668562775882337],[12691175024444354131,17239909912624774925,3134539748875896465,30964342674361346],[12985044385316325632,12846586802475920882,4641653627022437039,1361994546599845554],[1289195982411627349,12698588624025658034,7144633838333646047,3296920615551251496],[11121985568448180963,8201231474107074724,3483138072113700302,1888167443751953967],[207043033235468965,17758881744043525803,2123779994158588754,2204467661134451222],[2206136225417434008,2701764854394411613,5566855779015492723,1850531030693384592]]},"setup_query":{"leaf_elements":[12152233131232690247,10428163972393501038,9042419624945240618,12814233191143472786,3225195509360269562,1416027207940941981,348150063254589126,12473512859421318265,13190130576125633059,14656298542098137018,16850644259226876739,11895012901085585924,4898358146930594291,10529968263984071809,15825481967350062285,10036837590280850156,14061061680001339755,18445295748894935742,4258267176344398856,14943858069088881058,1717233597773285630,8960329990746140293,414984571413689194,9764359770657698849,6614953633917325501,906860897329559596,14117723097140283032,1433272579609596200,15850027545300661530,6702025051315398599,4994834275589510204,16580903427890136206,1428069781727582978,2272632929921522535,1980643452150727152,9807445401610607881,248367753284851747,5510376832353921649,10367452617141919804,4900653246137654489,2115819614522998969,9137082764664689868,2360969300193801356,9208984212680397043,14124094701705891220,7195025778993325810,9059787544944055188,1190032361920245300,9359372800169555280,4953657408954976553,16010312587745972776,6917044386013705312,13498626995559504047,16568697957753958941,2889420701522630539,12009559992083251977,16522186956193084809,3432032562071978211,1265366894137738314,18384965130054195734,12346481790746900832],"proof":[[12696596769644715982,17333783599888862091,18091847544190898288,1230325442793998529],[4509630059266665097,12578379825360396328,16686781503312749481,2798920361226021286],[18231257513967802729,16507619633499094873,9826434896227798700,1072460919903019241],[17504338766697481834,13104087426041736717,3185255795046764589,2145381936414031104],[2024786622910875432,6433162772613446850,1252763967353578852,3090002501882924481],[5656235721764947375,1445277791411246584,10254822864687509745,3290647037702944478],[617991043807407334,2660645427023045178,8117492593619198698,1658657704006189764],[17700148396015638622,8094946999967787175,16600294387811029466,3131468935263753511],[16716536920465424113,11614267213631418966,3625117215440609164,2991057542840667552],[15103050277332389169,14735972067864571852,7256877003769283506,3383030611167601140],[6660110760056497000,8452968119520856605,10785636027562208602,1106781653452192485],[18247657968427739412,11980466839669134857,11851357272994488667,2939293211808769075],[9160595042059558321,3003654428390274044,17180942480487853646,2327618075865250316]]},"fri_queries":[{"leaf_elements":[9997298567413397417,14730416684979584855,12633510465035351702,10954959087245385696,15132143631502628139,5698623131783046664,7583720159139389300,3081221250577084554,12529282711593343279,10536808961980441777,15864920210650176072,15694432659749732316,2995416574887580449,510703140930233511,14015033031964113980,1193940479632390737],"proof":[[12666972196946568314,13522902530809207745,5236899636880422574,159351237629273404],[488953494683537852,4391632383749844366,1177613274060560012,3027848890386019940],[16158335451246236650,5894279972411999414,16291809278054474316,966408040260163570],[10803220491509031480,3138603907894112885,1915481855243042050,2862187843327347984],[7391103650746738797,14726717671530411136,4610220978370012360,71703311237530598],[12691761911330496570,9146320363761364587,16188787681721704773,18309908416201573],[7382892552706603842,8767124160418583297,12962277305867411009,1213868553077887362],[1084128502492236214,17995698642344495368,2675199903911190239,3049917355373904467],[12403873574716195796,2349135915077416510,7468767277575460203,2092587708709019038],[17081479404112278480,617184671756641223,8216228617306694673,3379202153544912932]]},{"leaf_elements":[16242347422465709442,12055638080331459267,5732493272644436189,17083199926943365333,9453265574060680330,3682078813550250119,9841043430010912324,6567152180296725097,9235069665788421972,3905034326925758638,2905375563459656237,11415269221273774233,15711655339384831074,12316266252274399462,13641737660235459884,7154622704746792312],"proof":[[9343569741156372666,16035219319246764405,10223259757549069377,1909529800133067527],[12309857784420283257,3768919279625525212,5502528179208337120,1300252213318145656],[8476559349125885919,11931432628511952664,8083649267774376009,1931541153951705534],[1511710025571455970,12937432850323306391,9797176704949665612,1729630259582461696],[13611229207882295436,16395918807524204430,15089075286731819298,2737228933675129427],[17169716515783796911,1500806662997531208,4252073954974278456,2343125948170061068],[5813712587629336352,1082708786045461569,1092112838582383375,3425941116159785480]]},{"leaf_elements":[15429175109220991098,18414013918312540351,6204084562062188491,5846276514714138351,13445828703121114356,3454597414282645785,184539581779419670,8609899297496508365,14901317364321151430,15676634699356902132,504759763014206749,1862371919961355827,15431120340888921718,1806625636610130643,16997341141391806046,8673455573797049560],"proof":[[442195020894418925,10440362023130517719,16301671275770156330,561440230066692351],[12440136255142106039,9121368262388742986,18248593802323231034,3138111430316840132],[3654369732084213993,12432004624548316494,143217563669780288,2095965278091705794],[4216581162791829782,12611432400497020496,4291082047923264811,6403411685447305]]},{"leaf_elements":[4311699445297929499,9806112033748572177,3539043589198585194,14593654441266355321,15762928673565885253,5932108298477060518,17925124669056389626,14193547706035909747,17259293125139773774,2442827444727177921,17080903217978581511,16105909017897668138,12320793498174218612,797232347842516762,16412067898771630043,9571229727132115841],"proof":[[6720710772968328146,8869646766528407003,16450207532160375016,2278103972111261741]]},{"leaf_elements":[11323862628515517922,11439196860937776991,5413344540181736252,8741335607124726181],"proof":[]}]},{"witness_query":{"leaf_elements":[4794812290847072376,3402700122811943313,17306040371694263478,2125761926033246643,15080923575778846898,9380470803381054521,18385787082253573986,17404099306032026840,3922424085624791384,9384794125534551459,4015385287252231485,7737109644169585241,460853033762178177,5376664578050423175,17360210434722280598,14985990135868777698,9507548564187404110,15181368758792457445,5103788172042098784,13616292781325460438,5569522697619612740,8769142400598739123,2705949170756326980,3500678716352618280,18029309827549193087,7900175025279239166,1573519552052719938,11464770751308821205,7173018529905308438,2851960260192948685,3893740223101953568,1474651503426312293,9622772209646787496,5978605045195862821,394727793150576061,10406750588432943170,12300310449109311087,13350413157082636204,10330350424876488785,7597607997035195948,1678374219481539238,8009444003895675709,15998909181916306694,4910683199105111082,6467333536542852385,10174995694933978923,1882559594068028294,3300483711907113441,8205795456578610941,13120534197209162154,17345421409302209612,805422239725528741,11460789126285088082,13497292966876416522,10055550879232235376,11874739519429908645,278746517605307485,14146629457214797876,6094167768327555525,7494883169156068230,10170393907722395901,16962723380960334891,3266717485149503882,9306820771823943688,14575940205065034512,14477690275119450215,9116155535664914836,16913927870599760670,11578986172558740229,8381379976581644763,6064816339368303949,3161852286875441644,3684706554794141573,16399157839950079827,7594890478606868648,17987471108873556030,17253439374866190168,10630124599499400335,7410857338707420164,4792237616453969879,7767283764815809811,10315300750758412209,14554293623971124693,15086621086583637252,16645648046429745856,16369681235218154625,9431278883517111985,18195328317553585043,6208281553517787877,17267913356527355839,5961200504201007501,15199557799419130310,14392682717921532886,11301700538454068404,2724625553238579007,12043706759284823881,17594259472649614827,9026862426252744869,16713097010491013522,2436543605298808060,18197701189429956826,8709531706017690071,18400097547414274274,3296180596695732951,7665746991799051534,9626142487232166436,6160566872604921193,9770877745813989447,1991021582113324508,1014711568084237695,9098240845529415405,7730287056137856469,17192067455522307084,5358887624143095571,12165869421908824667,18210845062559100722,603036923350228527,8944643219866375415,9199803374173070278,16130384517570444752,2026812180538255307,6936275747947002830,2382552808087302021,9089357893716387310,3025774032132911860,8994925846048111917,536305326311037363,13633848528948856860,1539746565907133269,8649196274251363094,4663166836637281340],"proof":[[3967423979110041365,10891933468977737198,17470732313359386518,2751234033749222486],[15075349785818419563,12901198879538285996,9210593194092908991,3096694171594909907],[8486230560414034546,9838028449554926487,3912909785762411836,2163145425476682801],[2373086203760223184,401420107110475203,5886464499111066554,2034534311578850638],[6403498361852889529,4589876402872000690,8137414073929488258,1917883135313882013],[9441984223027613154,8157067561483479195,18414438335074579785,2546607660425388472],[17316876995498354523,4748957689327344667,13284046720271048510,928885099994079151],[951225373107165794,768387216045759330,17383664143899005942,1881937011703967080],[2847728188917774344,18248905509197421605,9675431151234982750,768754119271252035],[1491083142310928705,4743998026436318626,8690645089708143382,3358505118077473740],[1127030895586069538,694780759772484591,3687000931591563247,2750936864721522891],[5142135479214200327,8993737624634604378,5176462942667777740,525546059952794244],[4835930027315713455,14567191116503688260,9793062311750296446,2116148360242737249]]},"stage_2_query":{"leaf_elements":[8961369842096797827,5044044462099493206,10075456083467144559,1871751159863520128,11327825544810868400,9482782547375649819,16794254293386429268,10335920364036220071,6799508312216028896,5173084863255363692,11181954314901219335,6188980073009843577,11440182903289456961,2096055433319163842],"proof":[[4873264470465648943,1336303549876842246,18352296764469565644,3138789231669096564],[15914444318296376185,9611463257490039740,3277311775800749730,1833314230224480268],[1897672009209041574,343142558455313377,8435028482485434671,806620885723056704],[6929417412780639587,17264317340775323801,5268246468882747643,2745916549060885401],[4846231526970815644,2455312704950148592,13065679153107471349,1003640906956858832],[9689572478915353525,670658642378254341,6277177613469139920,2142701962383092018],[1969815318222037942,1614428619223595039,5039473904608107043,3244305720215407960],[18319699833045368328,9058125677857677144,8910127398458562694,423785635917254777],[17799434150604765802,6197796014779576268,12802748503648213898,3448545837040956703],[1780322833747596479,1745603590673318704,14851741195976123353,2791481713598494650],[5431947802106662554,5443354384023227846,13897831674897138335,1596310562825674992],[13174836754061613523,2244801622794592706,2243592228159740092,3224233877026474973],[8400976163326016007,13459382111531745039,16189427956558551098,1917620776118434428]]},"quotient_query":{"leaf_elements":[4489691246679236361,15250674627298475439,17438921366469849567,8060785296940928684,13630794848678354232,13290279515098916648,2969891887456658713,13728260210849971811,3428917160104439190,14642547279170411473,8700246693529926567,6527617765047433032,6365418386912933303,1343959230690247533,5614606079218955408,636547293071291601],"proof":[[1010308371779747913,15856094189714979867,9449699613969956772,1897449347393342506],[11082186515617071380,14352201859621759244,12784686962070037099,2997855059672377121],[18033719746498087718,14584728510614161321,10618922676590854890,1412227053131342184],[263868730010762457,15352625681423809705,14365360907405160402,2093841101759990757],[13105286508213018328,2580633654417109550,4695996779116304730,157839303234981830],[14080699471343723241,13210173155800407855,3695403903300669426,2723007097408091596],[10778956088513994937,3447048356945368982,5090402529668880588,220920962680807665],[978284616129456794,1678856283605058346,16369396634473963555,1114324772619981540],[3727469774085492065,13345937257991395570,10774064402505471839,2780933401153353140],[15245179022544431283,15996947075174566389,15677302735640011105,836503348099231366],[2157695038304941352,11191783211948267574,16678180536735649302,2113735272830865899],[12727463944066686440,15031778029241626609,1474235568906382933,1585885662917994428],[8560803622457089329,6576268329716751604,17480918290423520249,2783826331117575223]]},"setup_query":{"leaf_elements":[654715951002420855,2756207152671953684,14992291614043552317,14604693182198674614,165340721089819543,14312685686102600271,14748242035882941644,2093577536787108424,2616151052419095972,924331704058553300,17880477983468728725,17386907166167570819,11175895719290581389,7369175114859271066,11061399480191987709,1705995205148405785,13535940411144141485,14844662175415764954,17933400887651107404,327787634054126853,8438503379235845753,13561169673601031972,16052891578982972094,17141522158340426701,2691614907843347718,3344433873252208703,3961125078251992673,11182027221551687376,12336521534747384213,15065044204923462110,17521756036629321267,15439477674579938115,5990578968551381657,14816625993122196164,10990159240857968602,15877993066037242682,743229685298852725,9358392907676897379,13935979041084937179,5018186857807639739,16073257205594792088,12375736309039991312,13998922122499340631,2410690484180393561,8111019467854521178,15609647931668320257,9648354226505630126,7034201518080776558,15337618324336564331,10153366001896398853,14298043512080013840,14436434437350695420,17727858438695536807,15013878655856068782,18133554105926877980,17026089606494272119,16517238010516451720,589035019923420874,11307549184288971225,18401105034920779807,4544123932010603949],"proof":[[14581114440079176214,5436124821964866565,11988147712443544638,24275183717989490],[15478217229768585626,17061868033674519880,1524092403622844235,1739561317347703577],[2094805968763519212,9851053379059142207,7414660424906329275,2638499906162502848],[827356899773088351,17892376740243436133,3232829597089526770,1602458267545424273],[7785261090896837038,11537872495082681507,460819556830895160,1467847588049258682],[10454110689457587477,9005264394842790885,15395464053876710466,1406677261520585427],[11329184216262142715,7138465386973014600,15950532199201476702,2382475165635371137],[8270517562570575673,12138127413586094613,4944495091895858319,1974635899011333245],[14171156779967806029,4069843521041944458,12707813693797670346,2222893365503597537],[1508272923037230783,16599100383134782183,1362879958019308681,1877044066528613290],[736051928442084714,13996136793561635304,16064150511766965841,1622030257075208925],[12569192502573143015,16626706419100452938,89526480532839450,1151220156167419616],[13233111940330375337,3721613951002169723,13215477271364309671,463369196759619265]]},"fri_queries":[{"leaf_elements":[3634382256837446327,678556078202697093,14567667105972145854,2139730323751616797,9450894091382387179,9798186180702960371,6753527883773811015,10386830703073313501,15894115683367821285,814061718109837812,3401878287030072734,18249919344317525456,3007318781763986731,13605621355500120298,14802115159937972119,388781687240983942],"proof":[[2508608202904545375,1830335936559776431,15302592796375996005,2706305195269910507],[5371270594956437813,1991187090795080300,17284536878856747035,648459286712220161],[15810993595192899600,15900581848478638272,8375146548571066433,2672511459427246016],[14797575714013877757,3439588686538012081,5598055904637726331,2106956269934668854],[11267608028869901555,6311550243311407809,16527448107197168200,175413572045004369],[16427895550330449371,11278530785499398509,6665987420855308316,1333853721747528608],[703281410541162485,81937716967863994,5758883802304623415,2377962109147460982],[2945639535046352386,18040994403281453872,5996673420161924372,2821830344895488563],[4804235064255669216,14729952626711900118,17533787292596999691,1688029707652464723],[10293913151203782939,17276720635789980012,10145594858043310023,3455109967926550842]]},{"leaf_elements":[8366701744004785783,15628611283176443478,11406719114818598673,1390367681087055963,9371849085829210196,4561045168953537788,5011898733450589523,16483680388971281211,14320049873751075641,7021195730472576769,4995405322160358723,3376187916306918454,18152608913892242647,7951777446162880121,14450155724471379811,15438334897727114120],"proof":[[7229240363655270191,13979493989196298904,15225995018693303868,2619082390587546791],[17223868907244390765,9706801894740324984,1179463483094816448,1850208354962886454],[6386801949145623058,17452238438495136999,16649417074709082193,1480898100004536857],[2577807755405497397,18141355035645237622,8820516844858516269,1868509288398581249],[14708966990010504020,4452105162794639184,226325883480207383,1404688822222607006],[5473885783605311085,4026771276107960446,4742656884502189251,2192188515716722929],[7407740297327449151,1602759275088930253,1080223580461385578,3082418193151690999]]},{"leaf_elements":[17356559651860261601,12725442532173348047,15597425032154248096,8143773272584448380,9651626334201672884,4452841545941158216,16352824483281747528,12096256978676876977,16533960919196670103,1267973754278080950,9881509445871888062,5400710465314869476,4075577429598672956,13199238483938231281,12280597211204560789,13807198767935685743],"proof":[[17906617555350196716,2697734889843229528,17760594070209285177,3176982764010391975],[14690733459800600196,6625699307920514996,11949566284692742831,1050059442516129033],[4800217489573654783,3149554734942641022,18307580925378185476,95013896439469199],[12700299161953849936,17896603572231004330,16616459751671690607,786280160165782906]]},{"leaf_elements":[3303258396085125681,7334765928689504730,14735023820760202469,9619724676555854682,17674259656641861264,11577514084267056637,2440871980048415777,4361546825864617734,17764661275648454126,14367408337706981883,3009606633506689442,9303345605953149770,3068930268487580864,16855781256128155135,10975044962187852064,14887023502175238661],"proof":[[4082544563390657584,2428803467750713898,15919672509928983616,189310895045026976]]},{"leaf_elements":[6485988802393016559,12130974100501667025,3138003141619716888,4081174251100168420],"proof":[]}]},{"witness_query":{"leaf_elements":[10441288971292295433,17915497541340984965,12183533981135018629,2876121262988853464,12941558902968296245,2017625944432514172,12583324681569624582,9475707861373091989,15781141593993067518,16989318557516906310,15727265039109015850,1614349164792710854,1425451767875154556,8855396234857348278,17318567464276033146,9509827511423477415,13962594255007721596,4855675650360295050,17075645390886301153,11843126355658419524,11204988807196534033,6634425965172464825,16158141471928045754,12429354392002865058,16833735378481475467,7089894930215414637,11424687612046741813,11778439194884382180,5323792409102953522,8107932692828511897,6520271307613914836,8099151931313242550,4664788281389718475,15772773824965237914,13138370542930369061,14134657431467700820,5481390696692761413,4027693326704136334,7239553776751714467,2915331181175981980,11451264883670035004,1348292442767293391,4914236571767510300,4368195435823931983,12376776675452089602,15396198352272162972,4051047357981936865,8675617902053325252,8671100091905527590,8571692572927633792,10657370402044274394,12678199582059124960,16044680046336426833,11670966514389923340,16512688205985569715,8751873508177120214,11474106169269019348,2989550382556153886,12671623363357099854,7444397507045461132,2695281703244226346,9245954542137452453,16034167624214458455,13574447909873742229,14302111357081026842,2329071524169455092,12099899562501749359,13295272910787303440,14797187074382298592,14410915403514360415,13085289268951429479,15185472338735522422,12878807870424040289,15275155281481104311,13098836497194546153,8801248851466114577,12053902962455243831,1684487544071972247,8658464880184248583,871752489763879712,10836347060232984257,11039644376983212113,10398025341616357070,10598663728546475830,5208343603399261356,9827548414901928313,17699323726087516536,10256183557477221521,1378181411361468407,2412359952677480850,17559806900357664665,5833182312602163999,3255288528664639301,12171702508416303748,1612680768387248739,8952259615565312135,12221210840059293026,2034159536254121677,15066103180851370266,8495464367671564740,4591501369298447212,8746775386761068240,13197043357337105008,13226369267541904033,2444402298621006340,10290249225175849489,250140927209998621,8264915684460661753,1816999592884289862,6841484832213741780,17254362835010868190,1492702088030496170,13937700219909507414,9743480992616047529,4347304833221065861,116936805331551015,4871116698002808548,6226218933215306898,12343533440183356226,7135830823403417673,95446456667799293,17504168943742660368,3178466029955973324,2173632219272771253,4903741774307344968,7421533171970598737,12679470112921799206,10092348204257306973,17440283112913824862,11103153851399171605,11055239548814985250],"proof":[[4699250703705485833,3497480500199251677,16012171368620632965,267785348597550134],[8320480837701777703,15293332390270494964,7938295797212985898,2575901236272786493],[13091293067392077644,5388665231591625675,5672880940715497689,3408023635516380006],[17670347421062818010,17984843508928894942,11117666642290460644,1104555157145930320],[17704831442433588956,13532974725315024479,10286786853934890493,155391413888431729],[1278847935949582995,9933576507748013785,14671360377446332574,715544282950533226],[6006421457438298005,3296356121490711055,374492831520524738,2864276449302254112],[6434073621019896017,2521006277298542770,11820076791659153035,2589224354219876373],[318734463099269121,16247265767652072325,5586884991409057136,1359404956349237016],[6564565267089994989,18086740306331707935,11076902215968475447,170431649390530249],[2104366147942583527,325656767526212637,15687584321686934317,49600423922309603],[7410073984382977025,4983708886626685095,5020934352287608280,2014256418271613005],[16780060758106606046,11958032741938148456,7312416229524187577,2063252650720473744]]},"stage_2_query":{"leaf_elements":[11325580892662938550,1170330941686906088,9866752706607958579,8324390300862744820,16891529423787480726,5739682475739262069,13522731862691286894,10887691608383444122,15338660239089519191,9904141407117210737,9484814920660970172,11095737198362398799,6864753783882826683,11764942849671209727],"proof":[[15510091311763773113,11553572772704855905,7119668993070085500,101296617004535422],[4702156448568351978,3013393253336605912,17683646099858168363,1949593092392247209],[14071471335144172807,540391330055438266,9302464383369094707,2525078797606887903],[3869017407857361113,4935679905685175249,8387018173316748472,1672760121028339033],[8774737899180322250,9359851744627431908,5396241290503214699,1450747879987979376],[9097354526608896890,10463359461819077939,2404732069939517385,2151855867169375371],[11261353552534486827,10872167702586549768,11395573973162317307,3046187154792718890],[3310648052425702041,16763823569463245373,17320697665205283432,1263280013613227585],[14915440263737449488,16009002592574225847,18209854225026685861,21730918635170305],[16407414201084028659,5856487983419042992,8374681929822607906,206428409330500653],[14156826419724198095,11312986700954891604,14403898608252047750,432278914041123010],[3071035745069006946,10293589212124639477,8477104568259185096,2274061596706743004],[5354075957868852375,7926439690175627247,8585448747203103732,3454314098108174446]]},"quotient_query":{"leaf_elements":[11771155907616812853,8582126111328795887,16291385587308149233,15332416570368886476,4452881118801255807,11128919426596500015,4924584696911104468,11037620198044981503,7985008780982645965,14902428472163022396,16799448693812084334,2582331974986329940,1718675343945547673,14265577963335505173,13125033177357950342,7225180167296606260],"proof":[[4105775493032051147,1581195832709753126,38394084832566144,538595753458775535],[8559527879994111571,2877135655956800483,13367025715203979315,1072732775258672625],[16024975778253175300,5755299591633974888,4015899474080229324,1720224533666568999],[2065724269674452704,14921678981710629286,573883276510891190,1197652816716705148],[4717376425986873970,13553446900256117762,16631286986484591136,1254346926537223714],[4124205189533076393,14651816032346012653,15250649836103223361,2784870895276226780],[15336237624567894421,13094003253233319803,12452538346433828714,2332559683010045590],[2357094731362372628,6670965375207782005,2561914003826591481,32694584006121130],[14301197184074571842,4586317924748782034,18004667907984388148,2360520765237822433],[8953955251260247790,5205366719339843586,8230520589137648553,1714694091713233336],[5675142551664701273,3964371915580869745,10289337494046890160,1976433570173220005],[3204262288836114067,12551118658643858392,9474083513439660449,1631741663863701661],[9894783286081270076,8285846266767218443,7388875983260854164,3412182721263324036]]},"setup_query":{"leaf_elements":[15333882114334668825,6892235706590567566,9579616598652570282,8566920716741299493,3906495914170383579,11994340857139443122,15843286052041595,13787753044181795525,12743942492400888589,3620775319131705946,16181188823871410384,14764605153270165589,10731654757478170222,12851882971536913654,2047722772662663651,17116863880664477067,15443911129427052910,9361724893919277014,9657493602277946808,14617543379891513155,15038419968790262383,14065202498536387059,11204476801239272571,12833500899601125049,3899111621821647666,308940455012126719,14036211434835356710,8222049451025438733,6581775017226411373,12525197705292787219,1770682548056689176,5719178789827550269,17264531476156913397,5797636751721007285,10730626635537712103,14787848908774520397,4391615444133745030,4592689688203767589,15577155389392291542,14401515165218984196,11657294654316231603,13191892276356344557,10563071449132848315,561706466400182065,13326055232211684493,15705524552098748959,9333309583939152586,376691619331930558,16075585827539137024,6036909378647019035,5765734343059113927,2890494326549732269,15392367153198157535,10798617854359586472,8611895732175333234,2990759152463836600,10375303375683469028,825585203773767970,17397332653582411065,7927624494265463314,8803089978358405206],"proof":[[16409547433303099175,5528029868647200977,5636847344968567382,949531835607140867],[6351665094751831752,146043347775981296,14141991455977147453,494250495692574515],[13761107815868139119,6259159767067610957,2405283246148048886,159181896537592509],[8905475695430699126,7738444618187549650,18183532290161315854,1720430696187462157],[12540149960945281179,10203693293390465084,11515759070592587683,792775490476031477],[13145549813414791952,8969701751003751665,1012857097434196818,2739411173277100531],[8945687620930028272,10479466953866220655,7685421378652900175,2722671255647625156],[4420740540785227452,2362069760213929240,16426898884742002529,1330775225976511371],[389059000842970062,3025940174604674445,142433092389584392,1412882757043183459],[13582922178650608328,1598971795142973755,3307062095683768768,1848385521591728213],[4143417163302399210,6919295008301675546,17058252070951181637,3058865981642241175],[5913934557672547683,5916126773193269092,6753410884991633143,1320656228715007534],[8257498406240408542,15294783180318616062,15553598136149729540,2708965552677615445]]},"fri_queries":[{"leaf_elements":[2557351240199774806,8194980625509229774,7750512200234238046,14268132461441790019,18368891107015329227,12502828556188454990,1000453782745310153,17329517468703486246,5124950407204803783,10175021419002124318,200079656311325759,17921739995308947060,11629509110386496456,4336760091297084555,7024148198220540352,17127976943108725481],"proof":[[8856241023133856467,269020575295000242,18420140422983354595,2246546632807880556],[339306135243600321,14516298689991975036,16097854180543309022,472586826346336441],[958252540141346841,10525897743910600674,8972348084131906857,1811921758585401819],[8978492762040574775,16517203366756177263,7324734482039233902,1297750098974006938],[14047341810604300505,9438336016473745751,15604267459633933694,915743719059199501],[7998225502433280066,892507142418782055,2222197419631345306,384919099489357817],[2427877410394269102,8800044443291938349,12042802347235648054,2405939501116732414],[7566408421467322530,2026118716803720927,8167883592719448491,89407085636062433],[16219247362141681837,16928423012354471480,15574738645971155951,1214143588786176393],[11555457030939037269,9085544040749111966,6591791325541549161,3213063993889265843]]},{"leaf_elements":[9170386245972670832,16277736717669234917,18204185494008552789,4751915025597306409,15180347981472181436,10705430352326798168,13838946948618646797,7441911169689341099,5524827523708792880,17638035284792046146,9965536517269020278,3286863267244447417,11999099006822805546,16886921091942304579,13896996658273947350,15414016079145367357],"proof":[[2404445625116817890,17846046464319150442,12534651349552467043,597884210447167576],[2870484589216668122,4107564706674750048,18347948652833913469,281192132379861017],[2528866411890316237,15688908680329704353,12799197862349595468,1326885619892445074],[11912348547794745506,3719313222777448058,1608796665149670074,1518141577974460943],[513091978522108156,13097094926631096801,15301289754046961544,2329738128187416860],[6427968877227619501,17989961370054482037,1223698676916034283,3229462048709684664],[4849490650414052880,49293529635015172,7888700325494612796,960799201708683278]]},{"leaf_elements":[4708528301331802132,2658622690857129211,744076086777609294,7505959656018913889,16891235882263027000,5709909813535875043,5646908823768456664,15960023083279152222,710662232349665012,8573778981915918902,10471616904827766015,4159095414015557847,12251070783863533290,6159867367155980988,8457318080357612482,5116303239228248863],"proof":[[4413059430088283329,15461370013868080375,7492367997108147133,1423837814725342605],[1653564847119757862,4664741028410705035,10069352778031234376,2832398770983206753],[1324489763447242483,5436060794771051078,6403362546343843938,2197070821733807419],[18214637273193897569,17083110335864207315,2458916006554433768,3322903078046680236]]},{"leaf_elements":[15049793618273264278,17443600347219547516,1587449845484096471,9268301052953521075,15310044983624285302,3137536321055870732,17729664650163897904,7295871734567114690,948242394662532442,4174441826096490128,5717830596626736236,18234818179955594845,6559695840222737178,6570323834431778590,27890742420152916,6071881210060785784],"proof":[[1207514275877165031,36803928778764813,11527218039117858712,1899368366190537423]]},{"leaf_elements":[15915622550061201680,4536541224237163888,16120598048347926193,2661082248244309055],"proof":[]}]},{"witness_query":{"leaf_elements":[10050143888401326297,3306763487459789815,10936458571400063632,3521032038542458089,5696616502223583501,8655784198293123806,17680289626249903698,14791305567519931570,13611164675862674073,12885027322289442485,4617177628375885626,16571148998482760474,13513931571802567850,6768756076536027190,12559229257296706603,3383707506382345307,80087993177217978,549831853341191400,1764875307392551039,2146338708956611450,1712729366174464337,18292026559500484169,16966144827966167731,1965599470088305867,8768048360039058894,7522516836650640007,6183656137313080575,8811984993458484394,5930406024160258800,14649481322037233760,11138553554368682725,1853480816626353770,1483337338768015338,12317675066530634489,11099160306433511356,17292845633566934437,12151142272092009409,4549094909871968643,9482708228500651544,9294652799056201504,14710861896558995180,1175524708710272783,3129794816881099561,29054440571187386,14757705699454052612,13052935267842707671,10326501584379889025,18374564000506250289,6788140747622007273,13544530147917914796,14266096379441194907,9388834687396503683,4344635551019283132,2459708388597393944,18110676177108696552,15416394198317460636,1584215499984249443,10569201434572385865,13861370903879361661,2948229869653730214,15687012016608305744,6114133477013544483,17957713826420923516,17003058962656584263,17669550019024370288,12343741930470655696,16769044136906058889,4537561509879782266,1123741145550077368,540932719016874511,12243889481680081641,1941544905755182632,16996461505744634256,578171865618210499,16330210759414203687,7737979181597966443,14599672008867294103,232442127392932544,13179623726879132802,9418907739295400465,8190283516754160186,3423345067896989103,17579838559942809064,15479245455317199372,11633370735966044303,6013114999225220304,4772054117795748519,2573247747804664553,8120967326840685856,5843592858178927329,4393304783536392901,12343699679569334467,8045952099076796100,17826879159476966749,670069218050756132,1837135507266414643,3317972400720630004,7720050949176060774,2335903991365006860,8722134500289103758,6734618741893016672,9030312774635670641,14049248207206650124,5800067133381325436,17510898104744555302,3839773718822111103,5568954009641270999,15274829545772780725,15523075705984283681,13644340527117090875,4500737044912232202,13829817274570960267,15881501770778599728,16138481260483023604,4069982913529706452,632022926881889385,14011704247514951991,5308233628532941068,9967223072310805199,17922200442213861120,3865608822153974204,5004522339301308658,16670833885540045913,1580547840774469014,10285841989030495354,2538987419435119778,1268567335881651525,16495847953275669547,18266882471791417246,9129215276177293088,6139738483908858335],"proof":[[3543162041754611431,3280051677987735852,15581605470825488307,3163702960166029549],[8630224215003440285,2180494549031187555,16337606513938395250,1706976881106499102],[16464467193880457932,9447457404836229263,4402043553850125830,1696902232861320378],[1503361979782982135,1771471301513690577,10482306952691691402,2921809543014621248],[6892954404364835822,15480725942106912308,12304672480441622215,1457210490506234202],[13063225544877050243,7433325593677074484,4723654136779631593,140385148545544817],[6503472885804734620,485299351703072395,8116392982228511831,3307269945632889492],[12580893667233074549,16679380852349264299,13911458679765274719,1159241673002549311],[3328466614558684682,13356824135130290333,7360552298769640577,1515170122362749942],[9162827774039783876,9058377120574313965,16945724347563852287,2390140136187825816],[16138292879750550217,13270977979011614910,2587367775404837619,670282248324348919],[13956835885681269420,13977950138640785752,4863109640880899263,1937558364909967234],[10170411153944345348,15189428256572144992,12959700760463722718,3298790997504217383]]},"stage_2_query":{"leaf_elements":[15475615286810638402,5941606003349468527,7149406797220853747,14408094695260466072,5935620588522615717,360696970885289270,13328552568249680202,7478780662730886663,4991710269693280760,12444528642231171416,13388733990315296340,3846862432865267487,17370449880663240332,18006078725324001687],"proof":[[2946675202410270403,16085473693448507536,9732777204450259944,100182121040436077],[2913666794105344175,12025424693416741546,18079622373045167038,772503831382555296],[7859532325162600818,616010668244157513,7968735147500383026,2292437672857683782],[6261767386718653319,5025849822528274832,13647353099448951451,2044114585393201909],[5619068552856192055,12493836239879180842,15206697587685340812,468314258965872384],[16915616490246934394,6074555269809991873,16863396930555143351,2210394180159601344],[8638178289108172843,5413452299523624945,9247016552295550779,629272378754654261],[11764615921182342623,7566316925405593535,701820600861094499,2327239355199173655],[3772482027384474858,16846664080843896703,1152892815842111257,3193064965466408758],[16758513432939013410,939059060802428491,16909055089512467783,3366403956267459255],[13284840367506353666,12609461417301466338,4830301200085682655,3180721742702944775],[1101391570155270103,18030471955809926170,586352199699272119,1793679619803222441],[5944104811179779230,4705743378997469566,17252932908060409042,1116220520959491408]]},"quotient_query":{"leaf_elements":[15247932975560730365,7320780462605076673,5251747439963441553,12655930600651631507,13606755628631117545,16688464345814120582,9806082282000785220,887867128321985928,5569486224572387302,13679021574194323906,13752848778024799559,12782271260943006035,1882458533744760803,7393733071841197733,3434530881028818425,4812153668984337121],"proof":[[12359919334582606610,12860707606052515264,11812545155604962296,3055669825840455475],[16685007834373428602,11355941128664296484,11559466188710795118,320028853097148249],[10417085956314648390,8432336321280724182,9672439236579906089,756228063497740880],[6875650536606009717,14732851765669873440,17739550322805352947,53107543878763745],[16460026629674525327,12302587232054295892,5118813596761793440,1532057924615135700],[1634961789251502130,12977187391594002674,8797307390161715014,840784968025538952],[4127056660221968673,555699239965602857,100747746820898460,272038097021372806],[1096643144277716418,9992568742433196056,13734650985406825551,1686392887015763600],[12298628987253730464,3289475118357903876,16491669816361412218,1912623569684632214],[17596666723160575362,7499527703118665552,1153860263569251762,2384044325195890946],[1269044347733385167,15197569271567601323,4526178305405777126,1235445967747812413],[17805648031392826486,2073215923224479568,7861966061060194600,1640385227104014486],[101117472389605186,17621311294920231862,9537129816252271277,264251130147554038]]},"setup_query":{"leaf_elements":[4289634576391547924,3693723425752140503,14819616981213038734,9117038717420187508,17851779861385163882,12699280140786240163,10666140605791459986,16854355747992409827,1204944751719132138,16898581546349443709,11324333113024276685,1003417374174025642,10686690219897620316,10187381110682234682,15944264775876869021,10260577949417337931,9166368778778719355,7098837082555303485,11869378250046474502,4570186902978068750,4809112169242168684,8040778407696381097,9781723465252600771,2191628233065942756,7967252951473721625,14957407508895518903,8944007015032848589,3467301165543603629,478660638347226158,10873321850386967605,4417961032546204521,11430507897109050863,14501865616986856249,9117639605647592107,6163700493811778629,4472209138724668409,16917485674122423520,3772899794619079343,12190087752702483633,13464200849021693041,6660654117884251155,17929362804263707037,11315350830989398703,2942844436267695971,16643842650310627551,17905519946296814482,12862018692785071129,2697348811353189680,15357977434039191380,16019860535209751010,10969935766494791565,9999603820139662173,17156542285038100541,12790692086671311388,3653570275449684030,13040224568415612683,4560697730785122425,7260680317967611911,228658600402122796,10906244590785175618,11704881002553057455],"proof":[[1207607795927801329,12778268502248437684,12800021159254671829,2107272906818636325],[807437414593946696,6290222401888322249,483285801115982198,544938400383624096],[2175047394634405486,1694565273942473394,16189661069723093040,604715959344499433],[11845722519418532402,16715117442871786012,14822279670385392311,3310555175334865333],[18380654114314487865,7784856180183102544,830668299818375704,466447468956148846],[12898477813783938791,15480396059701246459,10704218788376171123,1526356054155727403],[6180262220122106019,7192175789919171110,854639968979801761,1783272814987923762],[6094126077363140780,16924369610486836995,9970725823551882765,437572095695684632],[4703402166471852317,6609887194327491239,4934923835825330382,3417091003899445853],[8253151151567512963,12284442112631241033,7333548270141704476,2808473973835984311],[11511593473130073380,16758027243998119240,11238201813964671026,1610623666683215022],[10516063788198811860,11521768273658753976,375854070151956021,797548007667768901],[14721891719636996984,2949626462121883205,514398815710631466,2655190417159851675]]},"fri_queries":[{"leaf_elements":[14322363541491293487,11195206613470942700,12843643770062254803,10545562081413253023,270558009762697530,16122884785617875149,17239742841900189369,13396302659675366515,12561981404260483090,13746996311463398219,16090203757895751314,16515296065746866289,6542357525172826076,15698983318120531305,12646354149026697506,9846491622555677015],"proof":[[8685701916712499326,573517993689562805,12330152193920436601,1026805317662455233],[4196144830769589084,13825882387113895288,4980755585818294157,119149695234457821],[3200262266958231033,11311180460537395484,1658865945887369692,3130433843649251943],[5977132661908383317,15577227715565216498,6286475954524577254,1684554450636974332],[4291651322849345571,6072611352994143468,10778447206341042063,1271303396863140611],[10415493506444250443,553720053689466004,8697199181893997963,2979772793044450586],[7275931400292024573,4672127520779342328,18245903685394006764,936600854038905670],[9869303500020419675,16951623351796344107,10732088556418064923,13056656217461683],[4999245903498690337,7298483859315852371,4711531156947246730,2388582959435649154],[5939124624586656117,8797311108778415437,8676485774919245055,1516009211411584182]]},{"leaf_elements":[8853470121701151071,17012509669602342731,16342060757775542327,512318421398344760,10026666520692207551,10566001790864063879,8470143654166545262,11936473033533025420,1256416165371994531,5623989917236720116,3821113094688792686,6451534391014005301,6861457454729447743,1840515654498355961,16093866411469816926,3274116957503284312],"proof":[[5229374790364440655,12599778466265624359,937701348223663394,2443547082390869427],[9923008058519202758,2950762569981114796,8667779831531106981,2278180134621757847],[7624500039925813169,14618041072385403792,1133921326730511628,2949519529977420828],[578519023419535324,6729669966150372522,8060010581380258995,960056631465573482],[18211480017626989338,4709303199120528782,1502152619576634948,2223187906636586282],[2767861238377875692,15785855316693498676,3744809610891684183,1567103551091653836],[4226831722111814395,6655831638141719359,18416793863196828265,2754055803328667659]]},{"leaf_elements":[12098827377785122161,5467888329142950581,8296957083938342277,11858263805259697988,16289332376730377831,5454369002615115421,4673608919955217392,9733860546816059060,5212639243081590246,6456832561473241387,17307042226371683541,12792728938626906408,14262360202210178523,9832526960386771244,3836309361574291694,17320999409185470929],"proof":[[9244770867765703028,7710536580448944157,13743910745316014004,1929416992786659380],[3361149475921811048,2294286482498528797,12030246206304109516,2389100999924704930],[12210735443468912945,4228653015746222779,6294461639017255781,2485205723841483832],[10512165384836540950,12576725843624026847,9749163590345599686,3286629949348704569]]},{"leaf_elements":[13790855340402993368,7414387734080379513,12975407704994933495,11495992525856327121,922490172660792407,2216591724534083829,5681419279857519838,10808937684894799099,15699585052605113537,28254719198542013,12781572970255467545,7196566718999339916,8152988491243675749,16434549783931242612,15461814104182559509,9183595432750050028],"proof":[[14777760533211147947,4160079023517810966,16181012839474086048,2965431587160692161]]},{"leaf_elements":[16775312693976535021,11906390845590027506,16723574221087713398,13884781623836882318],"proof":[]}]},{"witness_query":{"leaf_elements":[13475383314879609949,11821758013995837718,5857647165822095247,14424827182396038966,5638026013087879784,10238744261259446164,18086586176397083399,14714974356500238282,4410486365630155904,7657215192134681306,7808034447665573746,6863557009938967646,6988759234471517222,14982244469866588010,1074916935242935350,11003860867865458094,5622425620371445036,11099047759906940323,6643201941025419677,15621498233341784556,8785479813347429617,17785653105495529279,12056265318483140528,11948721132761019712,4306167789140698555,16634819358634882575,1993453517312566353,13087340968812190947,11932661583841480693,14333726732051472493,15802831252927083576,4763556746430980968,825827199570131041,7251231456357595427,6862386878379263995,16411442584001491490,15927567053007459668,3214091219808403983,16732803617497047367,6322688220720198889,14795605101555573374,1149070314204181151,2673469186102682485,10985548320370029659,6321457636117519083,16180878879482506844,11907363926316072880,11544847066146665837,115916306157045758,16120999998517075920,8116746753483324892,10720229433621105876,7488130161779131226,1872379176808769695,12332509368209604451,15008844934695356268,8849370854070502133,10846431103454457892,9758706146334437920,4906099524461572706,12744516015852256913,10879886518140642529,4271821438333655112,543145446911783301,12669447352632231349,7220134908278463445,266511320605793054,713977555993900895,14175293008449497223,3140297428990258509,9319210528705609677,18388555482591788069,1371711921618716479,15648512786067454711,8905131723145931240,17837479178885506122,16407470895762919447,14091297173532348658,143607518696119143,17139873075299195269,15334949741662088920,5872264062531517278,1141291557509831300,13633249547448016568,17963413086864966013,2572855617188154930,10769178277440347401,10734728931728088974,14535868291721607940,2781901393002217399,3160039815666894832,1000777256643169734,17931696745186081918,7093553708091807725,13231093590887515720,13602008883351724276,508843089652838604,8585883974092185041,7843215426469968612,14983094822424381701,17267107295134035284,17929862421866815757,12130358392744969058,15281763359226741971,16528393243977637206,632956135558391532,16963401426727225495,5265338422765038935,7540272121205460845,9600764301313863159,13213351477742567415,17527780023737877931,8408393008083273920,5496570973734106673,8932248038960244576,12007623560051550084,14055467106021441301,2733576522247971221,14159164029716909420,4714002502996375353,13222552969494162020,1893476100210984136,13075728701488649586,18073285269679452621,13691716892765144887,10593547738900506958,461658967799792429,16715670372918463505,11208629111677079129,4062365439055347234,7829082729839280564],"proof":[[17527316757453519910,17560766253745398056,10356011087673106249,2759985922530675733],[16667184649362951099,11839810135011677236,260706468294150810,987567298256932488],[7271847272232961203,66305394284348837,10736685474036289631,1918135081506183224],[17049778431920160235,47753655537597224,5651005819928873301,1080371199746553631],[11573735345982338887,17227154710516213483,6072891425372633386,1521357754676191441],[6818069857301786527,5870889669375212487,15842940422177648742,785113348687631067],[12646690592602073743,17214930909451755135,16726559582056159816,1141753055871247775],[5655715792811371276,8085015137425967550,10386484444409442125,1067394247695052301],[14270547091406400679,9437298940110618555,14605893994333448220,136444117143911252],[4985954218741978868,13643457840867935634,11059738903030275037,1020921213604094700],[4938596165638790050,4789246904654602240,1405018266607845889,732885786220588782],[5142135479214200327,8993737624634604378,5176462942667777740,525546059952794244],[4835930027315713455,14567191116503688260,9793062311750296446,2116148360242737249]]},"stage_2_query":{"leaf_elements":[4703110508832914125,2415087426786991182,5426476451626836724,8787128652414183861,10573442273551183256,1466323596334615320,8890023873314299613,7948856822706791202,15007851664251507077,16460658212565365033,7329310922791436690,6146108014974314137,8141319984372818503,15348699589075382433],"proof":[[17501042883811938813,15727130465773565166,13486661414492511305,1920065995317515940],[12794132820655828998,12499738091838311884,2128529734899225810,1377834316665672185],[3813576381674140483,11175009496950864555,11489585158747286489,1072198944618435270],[12644042269517314956,4019355444707648314,16502691345201225878,3126787870251071601],[3312874155848515897,3253026127025444734,17007383617971455834,603632515753404266],[513052871496734317,14006977731588131156,1984220014546753371,1064166462296710566],[5719256514933664235,9010260409426842228,15381640690187883230,2970060948766792531],[10105550774453834270,13604818512716826817,8507970201511742111,1296307591012524904],[14659547505127571233,10331558127143919266,3382863726398058431,2829417585110967266],[5289343936016602144,6216879279634235513,12352254977133981684,1539318850215007422],[13804284724927624830,4966686022311686561,8802885186398022619,1488410060661994260],[13174836754061613523,2244801622794592706,2243592228159740092,3224233877026474973],[8400976163326016007,13459382111531745039,16189427956558551098,1917620776118434428]]},"quotient_query":{"leaf_elements":[2197965212963589918,15977787317743546807,4971570081652714460,1342417020146486049,6171249175548297103,837577006271422788,17650315911862331103,9604721276678259880,10871662250851079977,1915933906657439858,13946180601267047331,4588188414069994213,5342132582752415727,2478381236818198066,11385528636665234036,2830347694217596361],"proof":[[12313340093387542589,15062954691145308638,10141921935200309923,1901653113151145486],[10360288465275151967,2398838322599987841,13853247376608068185,2693578465233375429],[16905359147834412864,7981652461923743146,11263343408580748126,243533592158694525],[9416387346899498870,18187100729469388612,14500298986679509044,2434199633526127303],[9805787686408300827,3514714478904316811,14279538175338064584,3082745961609780233],[9195527473231804666,117920629339167051,1154441974318210017,549103704918501272],[10170516609328035056,17109060481751761191,17531164859351729131,2122087992377220609],[5597813826779104774,16328102571357901578,2623215925996742443,39444846115805278],[3166114802906148261,10720932171018221651,15136815414354806421,3178332829050768283],[9129105635949564894,11603408119518037805,6838309326651462548,1484721021996601958],[9555337039809433660,7720157082072450846,10430032887101630327,2658560773844221879],[12727463944066686440,15031778029241626609,1474235568906382933,1585885662917994428],[8560803622457089329,6576268329716751604,17480918290423520249,2783826331117575223]]},"setup_query":{"leaf_elements":[1872454777786172384,9754929679841341838,17974530608303139948,5663633796246680332,12646268198934985727,1171710964439427941,875656469538696527,14877890442060547700,8600303721752676872,11568760628785160331,4727754742038987402,818125263351335947,6469519670113984786,7734721570420366988,9050155146601902631,3511502605123390841,13286957209560107749,12016447044911295650,12805636025143094308,13506913646697372720,5808259094122262761,16557905904778015430,5141268931056075075,1999211787795057763,11178132703581009685,4491829787235686840,5086814678316520672,10223659189803464804,6129802040971257411,4701479207072566378,9002788178363866706,13981898719059646763,14142268242179268247,3122787348067085029,424852984999022367,14304825740144472473,2669876776885276269,15007384064736288458,17405144377303649961,17156715994790488601,16739025963493693059,788732335815354972,16099262561394517512,15344331991115108251,10492649745501698178,3984824547622308904,3257830540677577291,13960801733957589164,3685235796755644218,3759453128341552741,9557725168003151103,16089029907302129070,6120924795695602929,12143187205666095334,5723345358782716539,15514448994146956958,5887676123918492512,12941815731818609942,5651887770721463797,12046920931204379548,7092723811904090958],"proof":[[6976388279140031915,13829672651217852711,13488510080836228267,2972761645386199355],[7586612608992904374,10779424151026787125,8626540445374666521,3455216502817969988],[4756895150912389251,5567346220386360786,4252960593252261523,1154746415748048840],[13091301232598333829,3022901269897577544,16014136241179049777,3027603930273527225],[640297778313985380,15831636360494591187,11946706955795304324,2370188854332129548],[2156503037052229236,9314319773785162304,9950517007426675199,3454054319739249250],[16595832725300802900,14402066961441733891,15797259325490885948,2473316522363503138],[9400053830245829634,5217985353516756264,13689137022725038540,57623692977690593],[13689561830025889794,8364871906449537195,16755057433248980334,3013061714963842367],[2412802751561812889,16638336423528935300,16359893771718326723,1391259067499736447],[11844050273273531004,8496635511186105557,8074218520401262503,1925017630146181652],[12569192502573143015,16626706419100452938,89526480532839450,1151220156167419616],[13233111940330375337,3721613951002169723,13215477271364309671,463369196759619265]]},"fri_queries":[{"leaf_elements":[14053756874869152027,10646374245763957020,8555293544766120692,6837110610636107836,15578087095589470507,2893383136870943714,10920508503745731282,6916544239374002042,2938779818819895555,9419308580984196927,1588768999359814034,17753033793388676230,7112444333122520917,5397961600110460211,8618728102059830581,11301087168550347593],"proof":[[1733140995613706286,3875291778573667327,13043230170326353122,3198278411758218890],[17242104760674663959,5012508818522049122,14274609647534296203,1050189795174622111],[4691169431864396725,18078225332446283769,10726329288740653047,142702084793537776],[5164161886591231602,17857339635758359628,16786414664458470516,658587609076009115],[17616045177514077244,4478617464363946885,6181241826156339859,3021741985569284564],[365730665921913752,221961240544600485,17408878656470425165,1527044093837645313],[455120731051178242,9060924031659420268,16190535329885659635,3458294095353453389],[17467653045468885287,5939208484021172269,15846670269887154064,2442974407936301369],[4804235064255669216,14729952626711900118,17533787292596999691,1688029707652464723],[10293913151203782939,17276720635789980012,10145594858043310023,3455109967926550842]]},{"leaf_elements":[3830742733576597299,10118750357278663853,2049925293989963981,15407468090256177929,1778568001019771038,1983734682050626504,4721287791095720532,12707436384043541506,1838985162674701324,13622249463474781976,16464085096558510163,15594510660745842657,6354700687734868970,6257885790661670706,12293305480407981654,1720274938478741682],"proof":[[16462375235538968036,6267236704995803486,13711422342500124781,1586748317816370357],[13335554084872434060,15672099898324919035,7359263000257543413,2124572309168268531],[992260052434504080,5140020301160871979,8991509337628051686,850866033059338862],[17176314644515570812,2974875921159877596,14299167926041653182,2382631316493475758],[14010706419556403221,3712952949473851457,7419215692255647423,1929805000562920671],[5473885783605311085,4026771276107960446,4742656884502189251,2192188515716722929],[7407740297327449151,1602759275088930253,1080223580461385578,3082418193151690999]]},{"leaf_elements":[6129560827756072416,12674032171627184331,1564547387859849589,12075976309103694195,14779290442284723867,15013165619541635563,16373690855436461690,14668929074834513137,17873803419057464876,6524170840020064684,10883586905891084708,10800831129482397349,14605765130177436245,18389111610014130539,12910613202332334243,11080886136814803393],"proof":[[10783859301346373355,12287979526347799696,6686350621682653853,111965784954742050],[3228293528710157651,9322735451481363043,4717096984123856486,2681158853409885982],[4800217489573654783,3149554734942641022,18307580925378185476,95013896439469199],[12700299161953849936,17896603572231004330,16616459751671690607,786280160165782906]]},{"leaf_elements":[3303258396085125681,7334765928689504730,14735023820760202469,9619724676555854682,17674259656641861264,11577514084267056637,2440871980048415777,4361546825864617734,17764661275648454126,14367408337706981883,3009606633506689442,9303345605953149770,3068930268487580864,16855781256128155135,10975044962187852064,14887023502175238661],"proof":[[4082544563390657584,2428803467750713898,15919672509928983616,189310895045026976]]},{"leaf_elements":[6485988802393016559,12130974100501667025,3138003141619716888,4081174251100168420],"proof":[]}]},{"witness_query":{"leaf_elements":[10663621626943911093,9474949378881150970,10015267735398839219,17931591625876827738,10902400772457446403,7538595352398548771,10135136202988315939,11799097636433710335,17826690365781440433,10271426313847779628,9517035224240801305,2710602149014164076,3658760428203107971,1958528770746002629,17442862647952460046,5674643659920867614,11777355322587118652,17809761222121624309,660705080155572977,15308346595246548133,10756192876517522036,10216599738659548023,5750114516482752368,3545257736279912173,5368676520592344689,15536853888830202272,873893848409117711,12074467566832253279,16502584119453786506,3275990416047917098,8600031247788994543,16396270986826682204,17800792266643202472,12189720568217945928,14323356445702440412,3472882982513786475,8506978643656503286,17469132560932817827,18145482160800446363,11379446055087306977,9909685597606186611,12726672949751114208,4933146189831962139,6401100962547175134,11082894065432955352,15493003517096005805,2056725948623024729,14417844948578285442,4432499317103788285,9719827220291885957,16969555504192637305,10643124841759131130,4074453078040674151,12204453575141193815,265684832284470204,5221200915767631753,5606937907782488511,9173465361625831807,1748643107742712681,11497656251511288568,11287177770460535355,15758299091938733292,14017046450784909704,8188641975528375685,15182467794586018361,4290821640699854343,2416681706675856225,8373814341804693587,8562672184711490926,3897230431590650537,17655752973919579273,13778889057814826782,17356099254517516018,6899941446113293270,1147402468338769875,17408804183528479560,1922955146816831817,15892376680365726074,13515168252002930946,16077640145017136843,5915506608711537000,5867399954546434706,3543010723008625422,4357844892408121959,11672237038737733127,16663289811039835080,9435134209579347755,6205811254722561281,3088277133365148483,17096725913983096996,1816220432238360525,8926037049947760877,15200079636706998574,8259501558684638136,4639465610900732760,14732889840978169147,13099324709920608399,14129306684595887364,5152969087304074540,3854036579132534887,3526035214698811128,1024928748550035108,13194626915559980838,7187816500728745444,15902408673761550144,5563750950642015039,5000195010427099451,11398758222803304621,12834142411878766401,5988483823625765456,2288282647501426740,16195391225995580460,9268652033213993876,10491135394332723192,13247856757542274553,4574545664816211949,17221876630084123226,9794214532336021117,16907637407202219271,855317558682017433,17328368698762675166,16177972188805528479,17500714187122768434,10439791295140967467,12374377867342523296,664506105484999193,4465120294721407361,3632786882315706769,18361845490105515485,8456344952174763126,10313324540977362614],"proof":[[3004620482983715891,18350215515765506474,13253415130038519731,1836589921508647948],[16002372386741925307,14568454680065515365,2811525241938698584,2743716637242514375],[15190313219615976206,1966121057027535040,4025516203552786283,841450109119734834],[11604725455032383878,1318442346853290076,4836874858600919579,2147989497917115591],[6670530144733038243,13057122204288111959,7120260382559031722,207055126686203635],[2051413559321197544,11513626554459602859,8447232366093265267,2227407664609997796],[10536305569982133295,15957702207317425978,13471780184925594574,2238662493612532853],[6288407802663865425,16973497555959370500,8342243747929918452,1793444899878636542],[3993475210696380616,12445406977946300148,6170462162933994056,3081973524688627776],[13073253082490204641,15638624881445348194,9841470601433926238,1676427404760367694],[10268531948664231170,6525118091667883659,2967761560303839577,861811849424894341],[17853319454102426703,11458132703626502620,15417113988119134628,674570626102661541],[10228429935734291152,15070756974979336511,15218154065077763931,1832421964913171749]]},"stage_2_query":{"leaf_elements":[10608235195365477814,15266558935496780506,13158934831437376788,9927778118292882103,13457890496066403108,10073770081353872718,16233006916936382248,9694144161516668100,18423471329849283705,12107388489995727992,9296410897430245322,10390265735764235824,4660239149817533443,4841339684826294837],"proof":[[5590106589809502168,221039280535966009,12919439268003808469,3371344716765188214],[15022345526827267085,10964157892630024729,18217525673363222861,1003075474742630488],[16883698900681618178,14168518682476214976,10890102417081191879,1933783641047255620],[13592847849759425547,5519604058571793040,3568414847991532030,2890570149656082283],[3337995431952687334,13932187539290665542,13850694106409647199,1180058875430916532],[15185413423192658771,4384803911522482648,16374279350160093637,2461733438480822118],[12209913052999866322,16071054814560060395,12595552347268030729,3252835621663431299],[14037611434714593050,16884468818214938134,5023818103972568096,2285693731661010000],[4778431312930965369,18259889621071908341,14647603346757945642,1919663359710058021],[7364223497299356969,978150780938585050,7145224579722954265,1172366305682289281],[2270320900022175314,11084083730022225629,10498212610982509104,3042167221963509761],[4635452191223119194,2876417225665026593,10993606036791249716,3465884504674745958],[2751258051649958256,17916243703110554662,13375786371768332344,179905637827751778]]},"quotient_query":{"leaf_elements":[17724612122144260257,1744532647741897519,15422919947975631592,2694556897661227561,12522403516599006816,4347483502384890247,10736846588769574115,7915341105740583300,12171543452911275259,4062765749162057235,11438351513877360190,5764850453343721014,6404818067879385287,483948522428777626,11411347069449353255,10827091598208481962],"proof":[[5214723830227268636,3850641095350584449,2078318169712512659,1473178968724018190],[13563921466337933604,17228225068699751683,1804315506172355058,563883695296536855],[7891116015249369781,11106416124688546675,5793905804533329197,1934712875085724760],[14749589618916241338,7467079075139460791,11408026244784824048,325025373523217130],[4106523606772748485,14484490452132093205,264721713464398059,1825371815752463194],[15974640493756290131,8753556480784491866,7799959705505606689,2064948153840513186],[13292659377301623206,16830278197582159813,10900926290780768382,632724213435232358],[3420742288754466097,14183211027271406577,73464373538644040,1531407508867544924],[14423148169716443994,13194794117578154044,7078871375268863674,3381616193040014961],[9311127495606908805,6613148429567989397,3496496693834246804,3006318540312470433],[11420173561277255454,18057715400353369436,9202491462650698454,796211399199829229],[16565671729463939150,7300669218253294122,5820718040964588145,3134965001892430495],[12356171133472036182,3715560352098057395,10451102580509047715,2369959934291544747]]},"setup_query":{"leaf_elements":[14682302885826806708,11009119016146538643,13606707279991396568,8390548807452904277,16534205284377117372,8251662305134470680,12289182216945299304,6953922461619598686,16148956937640600215,10898682417175674185,15876804611352375350,12752499923470756909,14765529555676733062,3593529541327813464,1022243934254504570,2426087020713645299,9339039332660146634,8891866864897399657,6999605820064553114,13565278028074412843,6917950908139232253,14840760070498501852,11645040949107944233,14994660131321890380,10029354427745269127,9261698526107364244,9361219178685995691,6029470192277360377,2627947045672715227,18344213320164533154,53979640218753762,13068313028771282522,8847192353264118162,13865573628974581809,13951112607015101287,4981446525325639227,15124488078355007045,7987032244690497054,8402729429204280277,12920576275768921714,11666678214107282052,4569457332765642194,6102571859611890249,13949387774032358809,14622514061199151822,18050200669127222970,11749618296764517413,2816389668168070321,8479245591755901529,3459521323053605113,7963236039900563646,5103044755337320362,10221500956430890392,12642633332737502327,4055850345247968345,10353041307260114392,15978845905308143477,3295385875386891126,8731505999659388519,6557945375481758968,6807994473934843334],"proof":[[13516147247004132300,6063019707344775830,15615625511990447061,2520701075872045183],[18266311905554926442,12626624139901927120,17690370603660245643,1162682862880988645],[9812004965330997639,14092886649202800773,17606036253889634927,2973085218731279757],[13519996928781450549,2294423406721678758,11406680285317995235,2588265312277102211],[10883665225787666152,3571744532468236516,2008046024734557203,987055005004956061],[14727933029916802379,3087215885054207780,14646554392891781380,2787033390361805002],[14537777075313204565,16107827354757553015,18176301314502355150,1857676245861441870],[16376437543722462365,10617964691161671040,10509097441675764298,2365905218315810366],[232052860262153647,4046934131873646287,4375600156485893840,556539205531626894],[10543811926056251725,8223867670121429785,17005535188590062398,2818891784132038489],[1994173619678547646,10148852412617542927,11738218631705955193,152282741587195506],[8114630110093767876,16550415767052044878,5789539078719692602,2820570820614345953],[7450018982181130668,12654494844657139995,4699273518936840679,2505102648423673327]]},"fri_queries":[{"leaf_elements":[916386125298391590,11640932268527500927,17293112347391411440,15321299027266567858,12816849509903374403,7040057294463893976,13099712761852227013,4371574441282263196,8234500697914793366,288478059396072876,1534823942041525223,4142181710898254659,12754443439429908298,15273750224853480335,16087960093385038940,6980084444203662440],"proof":[[8155690223662781147,14810885629499539291,9147648907946127905,1717220050132015381],[12071945890364132765,1415232589451380571,17143269104943421729,695632802759092780],[1343373248024516447,1051312744422094427,8799955999784305779,3204648360530983533],[13048977015793828537,913386389727947922,9445824754636167371,1523805358359165729],[15302067896785976730,11704070370262522958,7450417471057838415,3264590026550646039],[18055852439277694023,8893838933201600007,4715388663342797984,3026103007829326569],[5935461741890322047,12035738000010902182,11611847660690112388,3320321889769512978],[1008726943264402737,6466587780006767619,11810308758125917848,1441059928321202883],[6194151911933769572,8316546869983692090,17095017662834920753,251028876106012784],[11836481767288568977,12693209842729345382,15494293070777243110,2609142590190361171]]},{"leaf_elements":[13411207024832526720,10656245682985122250,3013921213735297356,3130918940093519447,2036414881602279832,15869124095863556366,831558188501942345,1310521973621904005,15499034261071249550,13246431543273031969,16637600569181405250,18348729338585969255,218637339287689556,7801087139721534471,14854702602063085192,16986771473613681945],"proof":[[5310881794316556416,11773188040541161381,5321716567474968685,3366435811656490003],[17184443126246845838,5463815939448937095,1571575723766867884,211856435772389138],[10918100353537202483,15685761115532394398,1113860192001174417,2714976668479596938],[18254946290161321080,11872966207879383732,13343550233043413637,303013657367501148],[1101874981325959238,4560900851701830093,9769211162644476409,3117656796157897536],[5494814019481716921,18311101359736832981,13570339656516216338,1358630459201341816],[18221825548504215278,371654840480040303,14092719419885102622,220673262799455597]]},{"leaf_elements":[5565613240052445453,4881451002888724707,18068397668498883156,4494904909318130628,380743001541324904,6751015474642466122,5785190955078372648,4940431271044920136,15239491850871874316,6675661567090458705,15846559846750524065,15021324880991846961,11317824577575091355,1467799927768502586,435157695315901377,18346283709919559934],"proof":[[13308723686730970742,17945073215094909388,9262832195351726227,23014200546860332],[3850264036200791075,13251391295098424621,17340602504065761923,67443032188134799],[9253287968541001853,15965406532159194935,2926908177009333941,289682274534081662],[14060609606501320317,14199662051727725133,14045188731999541466,360178435938369202]]},{"leaf_elements":[5617743489965329866,9656866167906423923,12342513696506161207,18445839140823577509,17173266430686786372,9885785082442603736,9640565192041168087,8859499278609365175,1962944870928990236,3217289664835128148,18150089437950339150,14748222972309771547,6995749073399235010,6830073760022153520,8684292857175602258,18324510307768863292],"proof":[[10423969435245672408,18154964293000735088,16236043164000731250,396436116672654202]]},{"leaf_elements":[18196018707140134098,3942247739030689718,1556687182756891542,8508669979898744338],"proof":[]}]},{"witness_query":{"leaf_elements":[2544868000864912946,13053933615362622639,13703726560527632595,11083227410053786380,5830058925024221663,16325223989755757820,4958537947151803384,17046465492217365975,7715621248232383338,11130793378932140316,795152436265121764,11021727666394068070,13437951047243106736,6622330289856707435,2445308179707147602,16901594421944236097,8355186103078924073,13141022670685427440,5709248899352007159,672014725915358744,13161923975236372387,8955514002083481085,11323440607558832630,9096840124883152355,14217359417194633524,10475911360899061260,8834621196741262322,5490269474849715838,4822426482212363833,13871989827511146425,12185304444883255168,7829785644834334262,15301910832478842322,15889350156706030105,1187559454714762298,1956693998087152711,743574314709554288,17782277141230747241,13254828937593380901,14161013611515936162,16203108925263708127,3656415261540982607,9287401738778723137,6953635668348483576,17569303229473811020,7770822741414450214,8919530390126070294,15302943847618803169,2724775013114283326,4680918764374411528,9716143721904302626,2419927762524934849,9016773950884975614,15043751262065797189,17823771358382383635,14720993685538974239,14104644533297664608,7235089621397529350,8757223322197031878,5971510536448427679,13984233381085322263,14684227666585764086,3370020982218202933,2856055293656536359,8256194493513377908,3966045744793037748,5332994108758261796,3303352163998446250,6145716035507900503,7611900436562572616,9822573591774672162,2008534742308656894,14843787370033865358,2619355897642535237,5316093937920115377,393620622733936219,7870773626678877263,8839950307612718476,5063283905469993707,13512981674855639648,9650270155341875728,11123993963320316606,6191552858454205200,4102413488060290555,8764323067311907477,15956999335367495564,12023902228044461884,1421853938245464570,13558812725454262246,8692975550883644511,11070617656779627389,9146413036054487846,14895530695755418084,7457753539377105646,758778747434134363,6225915700896356807,15662937482029084279,3610502366476017720,12567473822909277650,12427597417146569280,13119185689460700419,8504493126016227718,14458475650515743362,5969511973800798638,8565929670971200722,16201430028680360386,8186403804517289144,4068757078845205888,13967960019199946740,4425917015706382258,397569473418505980,6346534027178097092,14458237774123752854,808101545414809772,4097056764342553514,1725421699620193201,10985777117535767304,11802944576144539053,2173461065450862511,3435920501399962832,3946388627493066327,9722856758531255472,17386537697102688504,7498873419608606655,6668627233749658985,15379792174949501109,15656764663809715983,561151118861640836,62831498571551614,17855479630023479857,1785023757291686980],"proof":[[10175171982248466641,9920408217456436642,3832429211352960745,2583551103807852817],[15517714556831001967,4239256362907514845,11626095781024810191,1144205378259148420],[15039649849344219379,9682197618260074407,9486350320477719923,1738462780943730131],[15637724287272531352,11842081699954211653,14082149722748551925,2022485515615515381],[542875926406288967,13220915486870351641,16279653519502343915,2374480596324795441],[11205554299263197533,15358292587386696504,3778499820946787587,3413792110327711276],[7476909440795840880,338487938619175611,13415564709397735378,551737871920376742],[13333582015113987906,1889502359314169461,8874116366730151339,1271663459765103859],[8194322445021574268,8300756559971199565,5472687007664245089,2575246362817416334],[18196582002726257548,6746744118716689611,4204561479206427702,1610429971794223463],[3052769839153502075,16076543775274830677,15530647281036234040,1890509300522111740],[12475044989031866318,7184415729384318154,6629636478275800590,2966988193844135630],[10760418131477431642,14820657774701628297,11628914349052808993,2039254384422831665]]},"stage_2_query":{"leaf_elements":[2329180552760505150,15496161640689295104,9967434668673852775,5836149420069316217,18185481543841241689,5684964043725716702,179625336226257408,15645921902462724372,16416143230174438100,16534743194594716903,9490106337990771964,5582631808744837268,12063134483382723351,16028253469042289584],"proof":[[3433477040113029201,11738808820386592108,10076053740343997581,539902237154555886],[11300350085434193140,17266159071631209858,17697622392717159391,1850486570869524201],[5232289257816284972,3900589466819789568,3504094912433038760,116031592580796508],[10112855634438715708,11440473343589305092,13631610171704920681,2791412099231330055],[3806570097770583051,15478640578289546501,10133955138220411757,1307552282992256631],[2151589531617336454,14723346505856811256,12401919204539714983,718790956622057396],[6224194816807582754,8100589747549504895,13517151641453320941,1862066872609454674],[310246947279204687,7707746397192084661,5678090732288440889,588797951551667491],[13379121645502093800,4203616361030087683,13536563738205295515,2832504135907353358],[9183042935547927003,11849443004006479552,11761322016486598635,1961693464927131177],[15270189068040843327,6540736229038739977,1884817225337202625,2193279034898817630],[8127607865834670865,14729965564009286649,5279919429282908308,3248549838502019424],[10265763405734876041,5280836174585384744,1332105447072495082,1288183057809366478]]},"quotient_query":{"leaf_elements":[505726771785485986,7094180695133651716,12385408030689523009,7149270863427039411,11165558058271870548,13766917164773829479,2530493666778150200,8465729632537349977,461211520896821538,15011338305088956891,13450072308575863710,11829814613663271296,1120186697696819539,17260959973941643376,6115605267100127187,14288914662544955152],"proof":[[4638301722231147142,13706742403596148964,5421784437923619398,454028540397184072],[12545676741452941020,14001408528415596811,16423774146403114522,1460862478423923254],[3380190876313703483,11038803298312128130,18137466668635066475,322030468920932788],[3325399662402092098,4087080358129737135,16157086991543602382,1190514002501164116],[12235220008444425396,8765878102986231506,15288506807661522706,538400245720009243],[17847649249088351754,4066552912327446795,7873444340071837471,3159325237183933564],[10623476379938219408,1389877773106794538,15518428211044770273,1215851691742045714],[16482433469325065525,6113459233741506368,4401160248927144357,431915032439191239],[13550288856641438219,16022242347928581572,2630114900257118934,592949526637222689],[15211210063092102954,13962922723598465950,18442173497799663063,239409433161593854],[18220462470061240791,9013867161474547770,17825969056815746077,2826956307497552393],[2841694422372735971,16650924386010654716,14519535071556084623,3340584605848388621],[3336220069100085124,5759271110398045898,13618835346520552360,87853750978578886]]},"setup_query":{"leaf_elements":[8766072089071634022,14674078039919398369,719447294918929734,5973081529107753722,10896948823928262757,3038309761424127921,4977980086553520263,18212660851630390678,9379780655414674554,5037408283128545746,1726158127271201734,15495951210484123956,16270814312999017162,1589540573801826337,5043718640351728245,7182729025909894612,10169107040810197930,5328590222402736955,9434533607787505535,2201009637539485362,15702074649160526266,3330093361892333055,12110955477804847837,2933886950467762909,16981564833277781179,1368612830057765518,351391272655196003,8268497846654645359,16625900369240777689,3653157862557126877,12549290087968533619,8272113774351196406,10215822961255811391,3026733581757221248,10395359965327065292,4985587637845036125,15521828439480454595,4634912732090585091,17953718720072786080,5266077118747425525,9317292364172793497,3118907057507119490,8805150834921919978,9240923321795588599,16784248793570642931,5408928496976476881,14417517188728179360,11763754045662986340,17400531475679289333,12763619393340494315,16388235289641524588,11954069463804696804,16984287895322967986,6245296443844605744,7410294483417945173,12428864942263562042,17012331589179338294,13247114175172437460,4248341547744374505,981341606279590484,1216326441217458676],"proof":[[7052287164467666116,4128820066393817083,12004228996394496865,2757002812021063148],[7883160861928577543,11804112409078432236,4971339513581272250,2763510568597165548],[3269407060880510048,14606167247258571319,10834896035259901744,668279368239144214],[1434220207888078586,12795856600647814571,642215468475933762,1514253120306612216],[14000031067807150012,2772479537063700307,8667663038049238838,221892566235466308],[7669478523704046540,16211693337851432428,17800552370226617969,1530079332015495435],[1640040644934043095,1682222048593033598,14805476323100540507,1098144197407788823],[17687397738862792181,13625493317639025433,7875622511013496571,340125465987740783],[12121574474885441157,5464481261436606018,1057339104395557274,3191424732470567129],[9073280641395803527,2933138734167402427,2460847223802091992,747079962548205393],[9504926050382533598,6708291765656053457,9050283491920720817,124790896979962174],[816603275984845589,16421293770312208627,6436518652581983748,1646585520448043581],[17874738227292005179,6326465745494053,13494069438792348789,1192845911089305290]]},"fri_queries":[{"leaf_elements":[4002172606791593569,385052692369462065,4748618225142745884,15520333457285712038,14073189563588713025,13106001035415178824,13559484074551911899,16864528340970073873,14535495508974824692,5167623710343234293,10643924545544601756,6654987689945011190,9756252669627913458,11566048574441557109,4598106979703256167,10204947164438538105],"proof":[[3681154398562533776,11912604670203357411,2855287553322344450,1055205057099949095],[9518479379144092038,3045518956667233677,18023342720221696893,137502400988953152],[13738400380747445626,15061631818437685830,9461490775087755967,1637094372721718842],[13661942167284389081,4426924546093396567,11650819786480364813,329468488714422038],[4319437207538073834,17327644643240922859,11003738130774307769,1046833703873008410],[12760212714705876237,506461891909189548,10309807375696278639,3070593829269508072],[12216925716605557058,13489244322316852777,11184709375206925621,997589363429899811],[9106624583403281969,13612281113976011432,10326203882250134028,1761694247803376456],[2474386909479108107,15743225463482922414,6717071940973494994,880285736130704643],[4755821502693131307,9632672734832196477,6831801818195575559,1211503718015705569]]},{"leaf_elements":[6547737123782109161,17477440852365599514,2566463767088096013,15562119084103251625,7789568923415672691,15186977496010838499,1961101351391796289,16880961601068699311,5637094737578327499,16262935695710770087,15999079402828443218,17948790890945503195,17309342318021874434,17660435211483562809,3716821234407064743,6078940472428666139],"proof":[[12729337907054834397,752559693293076387,4105947889529242526,942495980523641787],[952779044381642766,11468592109269816172,38619839526358385,3477466940491611601],[12683018202999391764,6514070132978388675,9507995367267889398,2613589432259200703],[14257398705117713967,10442825125406307356,7051410383319342770,1678306670978990422],[3662088690810273411,778943384847449174,3252519369946193487,2136467769116153821],[8566120840172993465,4521693103239627433,8775637222783257403,1195809697926602439],[4968579060289205032,15025470103249155658,4016020820835814409,676707436625885313]]},{"leaf_elements":[8739475814721406167,15137291696515122693,3173315989503362132,16881332129315596714,7921600635706531894,3740117113117147208,4948980211720696074,2719609042234715302,6608217055956353199,7792155436591683532,4398503882287183505,16816831435021282405,14122856681506507267,16184022487263290557,11596834943523595209,16923408694490334406],"proof":[[11011625658805751494,16198302627463457681,5986171672753553571,2808367334269758958],[1964388511587953848,17498845169523966783,16101809794355642271,949393377346781604],[18007238475553311250,355626820106702666,14439666787943405261,3242313359508596896],[6775086337445118645,3836725614252760951,1244274972769235222,3458783429667173983]]},{"leaf_elements":[16760476579281369555,11684430973873978645,3628257208263626274,13264191245930967560,16805239192496903355,15197924325062831366,2446532897786143650,2265791655783868310,12694463806107320464,16750582611044430566,7379235119149631963,8016374353919518273,11399838020256932524,8401772713760710572,16660944741874745508,2593524144018731665],"proof":[[1408739999051503414,17928989256333671698,4393560887102948271,358038974748859422]]},{"leaf_elements":[15915622550061201680,4536541224237163888,16120598048347926193,2661082248244309055],"proof":[]}]},{"witness_query":{"leaf_elements":[5779853618823983086,13307561783707906133,4339661657852116698,16298916488557847353,992149790669577992,12940368474929067004,6684720304018190769,4270053882681024991,1089552502381302863,6614344928961471177,14149473416258873991,7791773201388381366,2924932124304380540,12586424395674962911,17298400651182434403,3888415729334598006,9135551485654886841,13375577017143307593,6010766159552080794,6764924852328851617,6857080697966096949,1520481167191205505,18124727205345784664,546492643798257663,7794493746801072048,14965019368607137133,11950888617357877377,18315976271955893006,11302848954831296619,1793142946119529698,16622780090480313282,10550794868000166651,8062939244639782863,14104718310754271178,12623862102211101098,185878607892141085,9447407278994361193,15156752716806542306,3996850036433557977,6200776661428989891,12990642503981472985,7709980023709118068,13821216809434092761,7498629093237028244,12418340850564383427,4831467936000644834,8550572663631744470,6976314393910466786,11857859298217298810,8703569161995220745,12377099224844100738,11473988216472496088,11277841043860401839,9329700617904706564,4827679151331888712,3521180961118651330,467983678138610043,4186631292466421394,10000869637190731104,18322184508142258014,16905254758403406653,4360847707228520441,12548589573353841572,392688679010344289,4855661994991857038,6697694638204026503,4517809274142646452,15201110983730500222,11701047401455721271,2907861230855621292,11994228803937582592,11865741768736847468,14412026878634655210,16854499646009687724,7510695843540553592,456207466865978184,14000220969402713468,14881747856684260063,10297685939386631480,11752066596082483896,10343769675056117379,354798997460137238,8849799041105613184,2061504157740845789,3743019318123067070,16276751604491476711,16039075868229616238,2851219190730137769,1552496437664240949,5430084091127605864,18396961518681542174,5222766486099782517,933711280001452450,4523191114835624408,9908818117406409714,1629906198679366394,9301031557517470354,16208259445128282107,8206214703042845109,9966873658054029874,4317766814964981410,6475430223533324726,12388196632677487704,11068368271837462042,5573837990940924477,4946178915437225900,4078349447862776667,14837832112341604310,4569795452945956217,17967381401526907646,5962679025537792780,4329246934978898969,5590901892058676336,5808211353630237203,5395785160049242432,12189565148972880264,13608331096732665135,15044457069577271205,638060225859316978,17203131254227109471,4060285598397809778,5834231914111491137,5920048322662013323,3409616417855047485,1602239641084120526,9370069803814083425,5176299414720895180,12866703655908236027,13028644418172073457,1085089105313967428,16060225132825716364],"proof":[[6307629537453779253,3148954064343417222,12722340062237440781,65878360194972929],[5529822347752427877,3165428967827317135,1398538536196986804,1234228118958034409],[11668757954589739598,13363096618578358264,5392048180664693777,126645489767775701],[3584345396020913860,15061606215649845155,17993522797866926508,2288610150796130206],[4484990660455022741,13030670784844915466,2863050002284310444,1189818129911757123],[10507151523252646498,9387416552488852293,7827271435977044856,2150869474247263225],[9021297734123049125,2163618883688299081,15142303302577603426,1320552075630588951],[8689572004503520826,13444571354487171448,8927461290373045054,1713315447292586690],[2049108990632876936,14748050888176687880,15495073686877757907,2233075778415540095],[1491083142310928705,4743998026436318626,8690645089708143382,3358505118077473740],[1127030895586069538,694780759772484591,3687000931591563247,2750936864721522891],[5142135479214200327,8993737624634604378,5176462942667777740,525546059952794244],[4835930027315713455,14567191116503688260,9793062311750296446,2116148360242737249]]},"stage_2_query":{"leaf_elements":[17925929539648931900,4671315894678531750,4101133104920615326,12338947758548330097,2418410221535645442,10499415048481082868,12112544211197265368,5864121182423781529,5250012323213521278,574538832935884463,1595684033626918473,15898993100424487511,649366840333443549,1629041609577845164],"proof":[[6075543903511699848,6900022404494070268,5283216428782574786,264044568769407764],[1474812596888732017,5699051392702892997,4297092633741974662,3179174857291963915],[572443514298805421,13793704664197652092,8387735880435992444,607412315945465852],[16304324659956244094,15890211973711362773,11735989571158468393,1161616250117714371],[9816154370483029610,140957910014611502,1332421814758013367,678092484669934917],[11709754351085843979,6323307718244292008,1167167750963940086,1885500829008229337],[11301027201795180158,709383491387359105,5228863522139418972,2854713676688050874],[10906398566555027720,5259078251616050617,16425271002078973562,2988920152118750223],[15819135818264679188,15629233963901781561,17871185216003779136,79086769758809576],[1780322833747596479,1745603590673318704,14851741195976123353,2791481713598494650],[5431947802106662554,5443354384023227846,13897831674897138335,1596310562825674992],[13174836754061613523,2244801622794592706,2243592228159740092,3224233877026474973],[8400976163326016007,13459382111531745039,16189427956558551098,1917620776118434428]]},"quotient_query":{"leaf_elements":[11057455710392431963,11456514923545875019,9270446623778237257,13137585538800188788,13159981542994887641,1756577302839223488,9516412917419424824,5861550649535662944,2222690009052119260,15097399140322983661,16432815118499320835,8458420795505874756,8959371978790311705,8877956325959480497,14661854079382516919,15234522058738614839],"proof":[[7894476776454053779,5087391047964452416,1046321503053612891,2440610009733917843],[15966152159655053083,5824295366042332113,4109942638569860668,3043533115986375708],[10558214776286039377,11632630980837042995,15177210153243187524,3201321340771001206],[1991921563827802398,6798628658290996260,12406288546925728302,1053868500900229966],[14685842808607737256,17133374649666332113,14562848362482301081,2773756347319392316],[16334121242824880688,12480630510557474852,2338932665451037219,1138633170820780316],[12338597362919889978,7471069148445099978,16346311540942770188,2158243581117799290],[11402489857024014181,1934576251455205838,4738988182100221779,1757898871763618118],[305949684991016194,3161518649171406873,18431490989648751867,2206541298450726119],[15245179022544431283,15996947075174566389,15677302735640011105,836503348099231366],[2157695038304941352,11191783211948267574,16678180536735649302,2113735272830865899],[12727463944066686440,15031778029241626609,1474235568906382933,1585885662917994428],[8560803622457089329,6576268329716751604,17480918290423520249,2783826331117575223]]},"setup_query":{"leaf_elements":[16115822653325335756,6031986874967093955,13329930625933829271,5494854961138555488,8470603591485338115,18132850478016172989,14322113743668962269,17397730504956279939,3837176510906628854,2217917516996685500,11813651912440523014,4877257035808104988,5017718896319348215,10083344417201021137,12491209913008154510,4039919741391922557,4005243270499739691,11679026652415630063,6925770290865156553,11914171731842423040,3005938114815545735,9706851021010881208,15297490479616048089,10013837458801579300,14369960189453774629,1894002110376124889,15178237788589600623,7264949192124515256,11817652586837655480,15103258532123918069,18345991738524012423,17924290879533987929,10070966144675640769,4036268394773448277,8207627695590171228,12521789093920622904,3994523146164767277,15884441165405962710,5267566297598091465,15034750169418631094,10809414692849407896,8976569347456045984,11854562396135561715,14489373621410289225,16211443837929540324,14918661173958551665,376450455113277953,3099455575234562191,9843767859503897054,12413361011034775230,2294728692262187494,14736939895228135550,12792138071338268959,8422521270065655473,12627591890411157140,15694391973925042593,5774506616474928916,9088473189277761394,7016152431477436252,9447587742456591439,17916797488203837912],"proof":[[6120389362944172556,3825146323069482065,12383841665392586162,2689711096329993375],[13642840510810559222,12279017376277741292,14224250033836105488,966014633920856891],[3504468798017465750,2363773685553322724,17976941477095767118,1933407302299088849],[4085515140995806540,4512819440954105276,5982343878263959108,936209207587973557],[10139662776072832744,15619705721194488177,3975931956437813171,1603052970023861569],[8453849919307092691,12296269495704581326,2143721598810667385,1927906664677276470],[10188837803326282649,5991166516152777311,2189734958670651471,1452985713154195150],[9619593424935331992,4987176234611855086,11583345369381780506,3037771297276856713],[10690909958040746457,17783148936128502689,3192296259061892329,2318908079182128924],[1508272923037230783,16599100383134782183,1362879958019308681,1877044066528613290],[736051928442084714,13996136793561635304,16064150511766965841,1622030257075208925],[12569192502573143015,16626706419100452938,89526480532839450,1151220156167419616],[13233111940330375337,3721613951002169723,13215477271364309671,463369196759619265]]},"fri_queries":[{"leaf_elements":[7593466116913793084,12049250193739827221,11484304673647065289,2603047196782908067,15463217588619988919,5367680535892970547,12409291087940659530,9536087980858550485,8027473529915763152,5651982165636901491,2400968635426681042,7384319209154395184,651830685389618418,301941204416977917,4717899314830935489,8407042854200961132],"proof":[[3633009163582421413,9385965418364950576,9060062061925219816,366441586220641064],[10176352800770996322,12413706145595610568,13046118764563645394,1629780734792557536],[9119718942165750961,2983726360098634819,12926224294151582096,350277912211060169],[5601518469438532727,13295691631628044514,10696698730253389634,1363962320400451102],[6167104588419566178,3625768114232811071,8799666038245853718,2500600228360389698],[2651859190920072050,9346738892714991781,13417680713392588179,2172383307307802297],[703281410541162485,81937716967863994,5758883802304623415,2377962109147460982],[2945639535046352386,18040994403281453872,5996673420161924372,2821830344895488563],[4804235064255669216,14729952626711900118,17533787292596999691,1688029707652464723],[10293913151203782939,17276720635789980012,10145594858043310023,3455109967926550842]]},{"leaf_elements":[9824936829806712907,8409159502656099007,9349632266878839544,10022800492355573524,14321956622795827960,4867351931320697776,6004566829844290482,567841505807059937,2944156350216799334,6944598728550518762,6809798537249097948,7932211145189275706,8424188677194793794,16262578719093728857,2612261422447080774,15187912580008094003],"proof":[[17260859401690033265,10388129597387984001,7605048808194772234,977241401799019121],[7618912741438055598,7199568753683981058,4743427605046249258,1294987760390040212],[3209022440049319388,7308505490900828086,752611779337425772,3261732914184277114],[2577807755405497397,18141355035645237622,8820516844858516269,1868509288398581249],[14708966990010504020,4452105162794639184,226325883480207383,1404688822222607006],[5473885783605311085,4026771276107960446,4742656884502189251,2192188515716722929],[7407740297327449151,1602759275088930253,1080223580461385578,3082418193151690999]]},{"leaf_elements":[17356559651860261601,12725442532173348047,15597425032154248096,8143773272584448380,9651626334201672884,4452841545941158216,16352824483281747528,12096256978676876977,16533960919196670103,1267973754278080950,9881509445871888062,5400710465314869476,4075577429598672956,13199238483938231281,12280597211204560789,13807198767935685743],"proof":[[17906617555350196716,2697734889843229528,17760594070209285177,3176982764010391975],[14690733459800600196,6625699307920514996,11949566284692742831,1050059442516129033],[4800217489573654783,3149554734942641022,18307580925378185476,95013896439469199],[12700299161953849936,17896603572231004330,16616459751671690607,786280160165782906]]},{"leaf_elements":[3303258396085125681,7334765928689504730,14735023820760202469,9619724676555854682,17674259656641861264,11577514084267056637,2440871980048415777,4361546825864617734,17764661275648454126,14367408337706981883,3009606633506689442,9303345605953149770,3068930268487580864,16855781256128155135,10975044962187852064,14887023502175238661],"proof":[[4082544563390657584,2428803467750713898,15919672509928983616,189310895045026976]]},{"leaf_elements":[6485988802393016559,12130974100501667025,3138003141619716888,4081174251100168420],"proof":[]}]},{"witness_query":{"leaf_elements":[10948608990163227128,13080402112615684659,5056632117221534878,5179122557052011065,14280555615800489988,15215866869197767009,14639878439318151202,4937772994220400576,901471331186647715,9904143283048911486,11448020057007109787,18418220562050784801,1728750718733254404,10640309183980534752,15338479526583134477,7594769909809409311,3973355773734332874,6777455742268323622,14221082866613708584,17097928381183461050,10930216232016309462,6563556897920250352,3252174521035555100,13946965766362931499,127690120843206276,4484059820606001333,4680820001604924451,15141936337901292493,17875995888828697413,3077619456576804432,4420408036432383205,10132475709956562285,9024515746681149143,16471120367444585408,17661834828874072612,382656357492025440,10965657697126258415,4129005695921358931,6653269598371082444,12517376599283370826,1307055285630565048,12919723214802359500,10449464317891394987,10604047280587507623,280135072838552779,7624284112286923233,11413033528806851551,4136698047506480914,12541560567689160018,7379179272913896411,3527745697751705994,342582657268951570,13614578386025392991,4167908547523286654,16760887774909532034,13111657504024791460,15904547775802978702,5704011330552510643,14484618222117317199,68123973382439454,238345405592604145,4548982036279381415,15778560409042073335,1452890279478912614,10420097475662107184,16447882622746687787,13077921611285926216,14786587163713146039,16822373947915528536,6406299255848669945,12000143094115642065,2568420385853024272,9608186472276636286,14683121584768779342,17948940295008628489,3533861912630195278,10489087319736580189,4829662785031772434,9417024415857857166,7364641003738583143,311556058943787279,8507060643047758011,4671082095776734475,2885218942159518807,4832382225512582594,2400263671349892695,14148362719890660124,2911307775513852778,7342343643634325704,1593515845211667289,6309880504111475014,7524373643044862976,5475018077983646732,144331500193379737,11107765325741596189,3914697109355823440,11459038766642689349,8188924239060918518,10342138531156542622,5903005755866977254,1057632374801015885,8253572756457818029,16604645327151432469,2202525898705093529,10494352311191666459,12298964260206229342,2903037447903269992,11162520034331468019,5403316407460304972,15674732230463605912,1799875646358882368,6275162083218995941,10824192801552998552,6158236629019470176,14765314044947498432,3877613781207497594,6887951793194136203,3369174630930526657,5410868023143186442,13935658388347572572,2671592007964255518,3576649878696491403,7758598283222360919,14635738848655492497,17623066426748536391,6508886273228436172,6164689256437411379,6162969979372602769,10485509195960048532,826045809743113912,2305212251269891915],"proof":[[641354973965442763,11973773562846195918,15716773302775552289,2375445199868569637],[11338168376057459716,7429640503678000295,7894650388308054773,214439383964834089],[1002753620226776010,683436536266077991,15617910541560189619,516439009290669978],[13740023795518092083,17414643979500597022,3927086667114064546,257598443055661843],[17724613988974911537,7442841772796744904,5737761243319424736,1582740763899330529],[9563955369455976350,15564608757126423376,7403160778189075328,1031250088686849310],[958395804773150342,10391740962294778912,16067530702984675585,243576660007763988],[1324334757951191114,11938579736706683050,13787601639545095410,2487961541127121946],[15966010173899575476,16694295181009117673,8154649360638629849,3082835869181658210],[10991637116190393358,18019713487067295977,17446421949851256750,3050349447645948172],[17519159683931686705,12492084838942994584,4278902334263638617,299615805260675305],[15421655209924002952,16368321879835928311,13763176468640007060,1827063992316191969],[6319403942848876859,549033099055625544,9838606079043705509,1442728268342064409]]},"stage_2_query":{"leaf_elements":[18078921992501442493,16025302091653158089,6394095920321771176,1059072422699995623,18275949780319325322,15544733974203846581,8981589781587884959,12288844072069828718,9319535323858760503,523877547113472647,2773281462578011879,9470873648217905933,17216457349528257860,3743428342505149795],"proof":[[3206472958645584540,17721197265044446226,16666249761139954803,253083419056782582],[15433232623219065212,8870498299452351550,5391254146282617936,2950178265608329350],[6305026117270676758,10255907079024160789,14657204915106568642,1354715459037427669],[252591369529932403,9499557809379910715,18079416270181668859,3365259689254567922],[7076280622445693518,3202395591646788165,15537995976987120533,1432010064834273548],[7518196019677525884,14491270981674553745,1378183218543986638,759504153005822151],[112731219400492953,17483054213384243347,4480802567320003701,536051587215848890],[4197137441227371200,5106103242843746529,6392802264378368769,2256786522559778232],[17097419543501439209,3258780264697206465,9553432340640827191,2370534050041055915],[8161609323598277935,8243259110720593217,14746445362519689663,3394881238325177171],[12870233950447818119,11764028962045992496,13275299065655103485,2880257295026148580],[12021982420473469380,17569332985180571919,9131874529933552696,2059893048644664856],[8559229694106243581,6083801497235235894,12366925889308928834,1093878940771847338]]},"quotient_query":{"leaf_elements":[10376555380930332688,11924278705749461287,17428412680359229908,8035649791956596598,11404464477137628828,3782638743578298716,17585969784099042509,1017177830650272924,14939271554238998908,6495470415943637973,4849785739647042705,3977474106461833214,14641638753307586077,9100221439726997639,15749613083380279848,4457644524811573350],"proof":[[3570319209644650816,2348673796955386166,9736063582503699410,2108907108639390050],[2754379874314766022,4762157201929967027,8072852374034011343,174921306742931785],[3960505193345395022,15488424175106794168,7896383840125544789,2805913692715202217],[942095805786504661,9778789326129797807,17206978635372081924,2674182482808231126],[14156059056993202055,10150165172927490159,16886132173807662861,598958685623139776],[6316218635699173131,12250548208633333489,16455310082050558004,2555447476004937790],[4924987783868568147,2580754240534766052,15912556025000918445,2486442940293105932],[2361112932274392430,1656148842673349073,9529736211928157283,3241033187996450491],[8737733325985449066,18084582606328121642,10729507164405040832,1311419404844288159],[17100118263872496389,7903234555707314996,12864163995324146319,1878754340965457911],[15297750724711498016,1443615784227563352,9384081075577506101,2050232170265759284],[10864231025343200565,14365906828085033749,14285158680845176124,1852444960593571030],[6742689458430904017,12365859125775949332,17589705338515253507,41352540069468767]]},"setup_query":{"leaf_elements":[3764552311375765945,14374207044287426389,13608147336844623610,14629021348244652058,7764792962366766697,595306068664656740,16898134534166706572,2025628589539213445,6959489890083421772,16041624385482968174,18378709556105772363,3329646402887407892,15957654418601589796,18107706551197655004,17069740348977628198,14547725710797039049,12478380373678473287,6396957463734812102,16854992056446613133,9760888729558841383,1527435257852608354,7573148777270580439,13108542019434658468,14385074569149558112,14149530729874465249,9661926892694668801,654146180477490493,17915157032760738661,453331652685728606,7922194193627070803,14801978190970631596,1363060634635675294,7569721907480870266,7612936902229052611,15964545456132520918,18286288187734249019,4648626881252381242,17856178241069855813,14325008259565782024,10737910371631014574,12458204078528107101,14153873292687577726,272283911625793639,2262430812377976527,16994735043898637311,11799139657465883623,17220101335680877643,17852991684842920811,14283186294135672851,471016122170882621,3217781154026986677,16748344574745082028,17518660106639067784,3504765042114877445,14639805742378128888,8563510953995368,3373069420229154818,2268859717827840473,11931267797710811364,13940138388113907255,1525026278642031061],"proof":[[203380327713015389,3282475248191270501,11992249411557401169,726814000288912346],[15606555906562305323,8625059474002376502,11190465140427478741,1527129070263221971],[10633121933075100136,1743593751501599338,1046950637657995167,2378414938471157582],[16925378032266597171,15898957115748881692,10227946981672981952,1914126051450500377],[11140209243379188290,14294703103710060672,1294254410473257234,1557770099872704904],[12763040157151374736,7066532933116177298,14688160535162025175,3052467370748413180],[6181490951601706551,5406796261818947791,13054184268984362455,53918725015928641],[12142050682830054517,5671486659038295027,1637862139555233275,2116709130481718336],[13166692045942994746,4373822046750605757,16944609110448390180,3439714572390836292],[7260886529189317407,14297077880355957191,9486960744506065432,463498015442889874],[9902139823942639191,10763284980523859807,7173184343265808925,910681841653445455],[8290037536677198273,14658697448777920115,16438037693689542587,2289856877963691407],[4116420957544392334,981127288402861837,6702203925816007197,564656793942279335]]},"fri_queries":[{"leaf_elements":[10142493818528990422,10890883423104430215,4960440988358238634,15413731859793085947,10424857213265133314,515026826915083284,18316254226924383181,6667781217113645946,12461380924111507257,13483387916502446451,9625331963653127386,15606009289521509345,16437706570064222238,11395539896782897597,9210570761304356772,14814180580117774467],"proof":[[14745856882003139034,7122574777577757823,6690239491744104122,2907157762711995284],[3939419401513045091,17995703808740146088,3604549729026179524,2099417929621913556],[17604713582700663433,2519706725714901756,14967490662308732316,2753306130357077864],[9577867943747877411,2787571589775719345,2274430636526384265,941280492538410795],[3290475972502984525,13501065159653410898,16720797137104555600,2381128985642985350],[12088988617052139771,7337368987482133376,6421866122174010281,2922247744314534147],[2612677933907930127,8465688693440690668,16065874207475283502,3102971380639974586],[14078856757752134775,16217300030537981123,16993594411714563811,2845805971970989621],[12459205945557951313,9658351906122242482,10911664809236274781,2168571547161351640],[10701620580987285083,14029228686717680906,17606917425319476032,2505274531328869815]]},{"leaf_elements":[3282273792998156330,6905645732587374840,397402934540905899,10305006113288691100,3797957403648442834,17530991030714307611,8740610252405865517,10201154878403770289,17507623662960760799,7479941277305467220,4121091990169409881,13044152786341627677,9725912955932299661,2463430367201634169,17002052177331991830,16324836131565836747],"proof":[[8792653742403108800,1496303395956909139,6056395937854109279,1000643383959152979],[13087335475085284763,11456002641677980584,7751791080058485759,2258721878920337936],[4599934747781904082,11919381319780538468,3047433832933385138,1687477995371671941],[17632903661105489631,11315557563274655423,1813175877983102015,1410008926069540140],[10242510154156362293,12182112277103374202,2592047013658237490,509195850680426011],[17784093462431197239,12814742217395568791,6508355028532470827,2412882452421209535],[10796312805924833779,10052204889508537523,17029417120171154458,2380688193371945324]]},{"leaf_elements":[16887769100482488348,15266904209205454232,2363214317348031805,12815356925714764240,4087500884689587033,1645017454326299089,17233302565082907502,1019982788229449534,404981045313298672,16364394872904230554,16527521354377696463,2603359862988264562,8636601554630138622,13533729068690122063,7747417808260565134,5933815917070666780],"proof":[[15968296949295101371,2890605523696032543,16961298101573001645,3476101181597750011],[4303536558544980372,9945524152286140669,12814948613470899335,3435840979935024480],[9037746557057048456,17834278038352391830,4656790350218572942,1400337594587714743],[139744036230662203,17798083038650091172,6031175594198885029,2124951385919977084]]},{"leaf_elements":[10414973603641774256,403394223439685500,10536595545238386023,14417065532054984200,12384715249560097018,3156902985129211271,9484383719828687856,15924333456246663000,7155148099983750153,2808246294803892123,1669609172955553579,1751249439668137723,2177940236717868821,5260503247396225335,17657695492767045645,12121937833396643927],"proof":[[8669456116196418953,8307641683636278137,14371410889281616166,2389164284214036631]]},{"leaf_elements":[18196018707140134098,3942247739030689718,1556687182756891542,8508669979898744338],"proof":[]}]},{"witness_query":{"leaf_elements":[3962889815661260570,15161867550712434691,3911170358510557726,17698418901784047298,3161078688420392201,7049819072221703564,16810042304707629367,8275547485725686169,11169376056686419820,3044547994700533104,7697780703438260166,17140582457616141032,6143652166448152702,1360476923880512957,13343819078934263381,17441864749432171954,12780993909484689525,18341167840817229626,17160143544377777968,10406128324327868412,11396615332652238806,5820192977517553183,8691968096472969032,700205842388412648,11882731743295309980,13072868433718374562,3182854894564230361,10550807895145074217,2802546122368274830,18059931359829862986,4466404030126048996,12630813412671510748,15686053114970965111,13290305275209243221,16944363025684777451,1706183354751171462,7188248114283463674,5126533065965601683,2110018146308268184,15662744623084294197,9738870662530876560,9862740380172797443,11554335998925001063,7815075112665365910,13931859598318184251,17203130087082022689,2553909148939944488,15883312798482228125,3628126591023319094,17962306179015325930,3583499395313826620,5261028341890690727,4481034910882002609,17080937977243083430,13607376762356388123,15726506932837014323,9355038896992969183,16875358311348163929,4339907787735874560,14942839527583469424,17279618369426858391,16314485321857870291,12208678949379639941,17649964446643292456,12394915199110004493,17952944801067331526,4998999723301419355,9186317136631691469,7416955975663665819,5520865025291338468,2992765628849278326,13639061756412612534,9461776076929839806,8384706446948112968,856257009943128624,6668331079233920238,17113005703696762864,16532387582513963729,12859699268976954407,2384628098975301787,9219888142850457204,13953200897188046716,9514556169288911104,10878358037554160653,4430504326536355190,11551907072652651753,15561851437520232724,10642992478090755258,7730286266988300230,8041553651059352345,11314211807038799988,13703977196385175603,6756984601205624704,987659667278110377,9014177134931842005,11277918126416955202,5276300667989863615,5387585530498533386,16443562999471011597,4433366552446240175,12634221081299707666,13323289846121780793,680663491293341800,474632662696610264,2139194625041510289,6212800541330662328,1561449392608023967,11113214570721274819,5528045066189393530,8403635273411657067,16175746452494311170,8294609549409808768,7414368897841055387,13126572269564992243,9596426200669943446,13611427237894200944,18237019593037534204,729877300884240425,8953645815565633410,8957311921873906825,2590929647952486026,11026816316025260205,16456914507822800971,10473255223030528936,6900325806479352522,7409346796115163910,15127447123777112670,246836624262398941,17660437430140307190,10231549878358464404,7247023845124127713],"proof":[[11663536692407190158,15624092323535998481,15060865244719020511,374840630584780427],[2891863002770345026,16687282782677773036,6339075317830252011,1684513210813396775],[17256798040996112963,8562686220836260176,1355955658532450955,250812377225686417],[1320556973719842302,15832828594527807237,18244038913558965323,2152715016259395730],[8963600232214250494,2332826689216112029,9896713000852833649,1544550044165961308],[11682940815439595943,7876580386155799842,2391952232829747289,1178005927844422430],[8955736969124221285,1019236955411120588,1829603986881860602,1952405883413114328],[7302776577819949345,13906052307400051169,12730990668134511003,318851399144414331],[6749417622445779427,15811057044516797574,11683726509721346128,3359379759309590124],[8731331459858555400,4794785011636928767,14014502162874431284,3215988054991918654],[4248797211813909895,14040089604235735473,15599987940746318338,84186887586394144],[16487596398035217804,9647644250171436371,593772509881424834,2167801526081690019],[1443710191567724466,13285942274380957982,15597202445998108376,3018040234733100453]]},"stage_2_query":{"leaf_elements":[11421357704744088411,10207652371119536450,5633798171953778336,12004084731100464039,8884705824149997436,7036779625383514813,17331489121881184134,16565915621712924051,1412506771319253743,16404470242119086580,8255532869265007055,1611570813804528662,12569764168659331519,8472603010635873315],"proof":[[10292849649435968312,12903295425651317128,1224847995076964248,1561758712425194625],[10490025321246722194,14420882499486198784,17970182773226127618,3406982288575522460],[11981641012187775819,8027894651075132098,4743768053263310682,2165723375896218305],[11553378813931839561,3699978287936880331,10568910472878662135,2444917134818256723],[4114384377893805622,6332258439799649446,2890776995741054537,2256092399705915049],[15795949829964541498,6202442196016794759,13099354472000341750,347041800744032905],[9858512376858999906,10059199434489536759,10785031154940491554,3407124437057352486],[14649021273271446910,17205349074018550010,267951168097989028,788639867851042763],[9648559609763952530,16523746994175739948,4076193922027599233,1339863291972475785],[4048860296270760677,10654584233847122785,17658554602779271948,234782811802859205],[9556326280020632014,14622049087127220127,7188791035379400675,1318738925078166584],[8763095688229377138,4203027844693350601,15839287648717765419,2464465881556052390],[13192953421021811020,12135368163999496150,16519089414246052774,1297301135049925818]]},"quotient_query":{"leaf_elements":[17713079287154921508,6906158046729995901,6711156392131896377,12166941396758564595,17640211418010172788,9114454597692335520,16271635955789858841,12207476447326360961,9334008067251068042,353985884501362121,7504917167768745954,7530330963956234830,4802287060524569491,17042203512935709987,11932685526657453244,6003115271079304638],"proof":[[11635944224569890151,8662494161941631579,1070060936062756235,2250616879758385132],[14979452466406446124,1969305867074761639,3634986204783468211,773834326088914046],[4281290440736975167,9170557428193140340,17095349600930348359,741627369716118115],[6623167725095867911,3098890897343819202,14462329830999901030,214493571942426815],[16807559155238527922,8326399232015045894,1284422786198510834,3036892404620382725],[16196898396562660248,9654519113073378710,1712171710949493640,1183631445878773996],[4350625754085406902,11517694987252069397,3296123057432391864,514106483018183074],[3756975171051023970,12130035998519558427,4166339418103352019,1089322710949789529],[4445228737098014185,17026879312714717423,10345194716094813465,2972546250557248354],[14911493800648682030,12034837643726087066,11622076309937884365,823795144246392576],[8812185660268755303,12934107594033073921,14594710797974305940,1970618438189651963],[13741377562277466111,1944538524945591851,13834278555587898987,2841913467563537476],[11100972887232792717,16842313487508060518,6071017510380834699,2105986336062779306]]},"setup_query":{"leaf_elements":[12053714771923162858,14482988259826271115,887797364928522229,14538833392368103919,10730876747719148196,15091159698830217185,66372659017573236,6163270160279895413,7311089694961102868,14545290557877308729,11684255665255370569,13832879722335621311,13849986347257594264,9329283346277817068,10571395048314439526,6208116032049006218,14640471889748820064,14184471552555394014,12257822076397954917,4069662575504633812,9868459618746965140,6466879752685579861,9071484346947709091,6362575504298193867,398757968034923427,1494813380820702897,1415720525813672753,11370151113648537538,10181963431871693705,1546307599756108196,5369357896993119402,4326410583917356003,16441078837140117923,7409290866814046682,11559165899948395941,4716928736950526144,14330815318365269157,6329360381694689933,8279676983953697929,18139478222380840772,10864821396093098650,7097262679221435018,14618310229858991902,3849956783617050154,18288038842497968034,13764974567954832422,3112571885935850587,13699873393700343098,12935566738840790242,7256881134898714825,1760439194013269755,15547818514165636783,8106949978640969430,16158798802751611486,3075716286331580626,7922207125356220208,8603850409000042162,9263644074220863858,3343839352171994179,16795342962507284437,14661789409676238358],"proof":[[12350015094178640248,6153994040542305774,10470620031486120144,1686246240629544349],[10035475324239791509,4399385379708581808,10921776032177513515,188849344235432135],[956438246790720008,16554888100692966552,10368036923154755599,721257101979168088],[1310864221314741422,1619635611169252373,3050635390076580587,2810225093898399308],[6122091100596310528,2207057575376700151,596568274257464859,951248558108911049],[8307754370244055714,5647568164644408554,6332552744264978427,924219161900484841],[6963193043060615188,5664957855734920570,373071700585388638,1784243811275572018],[10775349345562124160,11789541010926585185,7162463088317456889,1730531058206314203],[17613823959946941782,15422043290643843880,5308430791448064798,209089946280225789],[6655436725026151787,5261426903001576465,12735392084318986460,902252469119205088],[11428864581181648815,12611799512637801373,5370448499064147956,1416033710994386171],[1625000981274062376,14334696978480106348,6441995967927892212,3030286209213344148],[14895236666511632273,1399194341617175758,1368280455654082000,3365187953082285783]]},"fri_queries":[{"leaf_elements":[11365558775523113028,7921051751083588097,15298328421529438668,8269588853724167935,7904973835856244099,7502677851497305320,11129627246104310199,7405136349899157944,17416365074362859008,13532744317121980310,14727775716960568491,6193847659699944617,1332904864107079492,4570249061519001561,1755576673692375117,10126325384021961543],"proof":[[17223307741295849326,9326426324225991587,16994853498787523531,2241867103085443093],[10671422301438032726,12852377863287727709,14022223694259486525,2913767704794616237],[10569889832671938706,8533263608566094355,5841721696852230740,3458079105581718067],[10804176444141187544,286475127624724500,15979219712928423098,1648252736600077131],[11927484988502661830,7602415419088774444,989572515767307219,111294091281084076],[4926925710469094944,18374657107725105406,13296810771716392518,421627518205276267],[3355396946822226001,15837241923345079988,17188534636111513863,691850309568703126],[613459326179506739,2324040073875118185,11972155232303911763,1528656241590597161],[347176974939002625,7719741817708622723,14418590971901590662,2029569711632894471],[4902605877920861213,11701332700254187564,8706248708951556531,2700469757148440756]]},{"leaf_elements":[6902403536511510366,4233763010879589305,10690890627600794200,2410007705279819265,3735375793450009574,6175567993029505291,10028130504313962258,187321022152669904,16360617219432859975,1626333879234870152,9460902757857504650,15708165420261010758,2423570325039866785,9244858248057662136,2744735092066823696,17732936092121075044],"proof":[[1474579119523734765,15496760468382264925,15528556530246809523,1882665644262054184],[13693394450047548842,11610728349579964332,4113885620485865575,1171450943386644307],[5392917045405381209,1487675981312816052,5697406694580600752,365780816140201001],[16110639326939105299,14365603980961760813,11377919323609459290,627961758965310213],[7115416922232224744,8146080255954698009,9062846923992120040,1349124095773385961],[14981366453569600762,8751061205393511146,4656728583089136557,2901921338668318906],[18139407998752333981,17909362892501148452,7363527141544631108,2985762817603723685]]},{"leaf_elements":[5089704405242328048,4610293652415261191,6301115028294572990,10966047133026433313,18426995840494730531,9230550097232456802,14942959027480939161,12862176383297900056,15983975016420334874,6776121426712139530,5293254082614396806,9141383582709212896,2578561387502501197,4257557193930842761,7508645388646954335,9252965497429594707],"proof":[[7201592579686222510,7964557712720126612,8260767976594055454,2792518390170497744],[2363389257407655291,14771852290769972522,13544844909431106986,3165032970444982491],[2498404504816880002,16841764584222148124,8463928566302136484,826219200934473404],[12056361099189973316,11445222606787504472,16233639641333485004,1561239046487682830]]},{"leaf_elements":[17729354569920996859,16449461548712133538,15065163420655373648,9804137193794166355,12383677593442401399,10114681989149391484,4432167545295727131,3779701101209125310,15177492424625855301,14521020974475802444,13362237075230757592,13717904117314483410,3196402900380536253,17065120679399165829,10990006025068578642,17916730893864383515],"proof":[[10651158724031988562,17385018956147728316,7353147695606921272,1616320887286571537]]},{"leaf_elements":[2512589913085626850,6670100345702245078,3875769945896076457,15189048974320662278],"proof":[]}]},{"witness_query":{"leaf_elements":[18230675930824400076,16595533684105107657,17577311365932956162,14298821334219436093,14288821262655800840,16172663875560726088,12421802956325100135,12891755406272754878,4801706781739507673,9973875544561861592,17918746412423931859,2161349845874181869,3219887910480597073,11866903925117267054,2354360384682042073,18074070505094901153,10065671238350002919,1542173248482729245,12725472968283289263,16652097410198089526,8893026035792779486,13351066331738058808,11661543644489253432,13296678574841267095,6403545716399395832,13960333263316130043,10394732883171875202,8153477692617993832,14304716627552823936,12282009767042433789,806442331091857239,16189855777882191060,12907479170582876224,7564571452353698580,7198976836751850122,5105533824272941093,922439113722769499,2678683144279544919,8475876890352655937,8780816633973272216,6964173669822385917,627000493042619616,240515544041137189,3385275986684613224,9372925206388616037,3712890000947286625,16666796115362879407,1812491080545730865,12544232380481930304,16494379636143404191,10182761555653995526,10383756204388599830,4338684877330542788,3056216511715987070,7743991589729286217,7198618674781505652,3080170832476940937,9332879371987058012,13059161316358550222,9508941988348478313,8494899151309521580,6001177421667913568,1037070178511344508,8278989252630729900,1042055951872099621,10603340447417481898,359894391471207873,1466318159522678812,17292143835125513308,10526796713491276947,868465360825570518,1191898982693169553,5477633786500068057,408746254449562224,8132210652683473142,17285697394288294671,5063299857880846584,12444555392875490571,11090916443405143234,3830973425082756380,15104701553454812676,4604673844790656681,1018430400042691398,13737726055465487924,17042779024400020000,2088468183992264517,3519619610507278107,4581539140843104341,14519095501707833751,14138620890019371098,10843515359162065785,7623849722272735588,2446700406187902755,6549833680612650180,6814195132204797745,414967919585910373,11837215421887418426,4245843359274496775,11853341504847280646,775307942935360976,15582124563958021527,13909851690099442962,5739490547679243696,13622423554920821468,7746571089467233830,13383477080729360094,1154903488358651214,3847681478867068115,1134799978786970507,5637925741144316016,3373935412716015288,8406674984603945117,17661528536382266323,5322102731710479527,12819001402546927240,16449348977660943888,3215305634688428992,9809290133991081027,9314263429546171825,14785160362600873197,6519857300122558590,12344175554016141571,8917315561197843317,13856309723927625428,8885138172529535241,3315784085833973808,13790518505640448429,9744139225799528996,2924201175781860965,16730323201760231444,9849562383789832647],"proof":[[15391967061863790644,991320133393979801,7509520936245818274,585675714634736670],[4309294429330448722,13500616020041844245,14937930865520284181,442177560597064992],[12549591832176972594,2619507930794936239,13950489922379648580,1553643134824494315],[5688159794566396635,1949053264296809375,4607587191155663063,1641604807702577937],[12024257264089141971,13715693851454031557,4711364852662560912,2796708038062309596],[14300608358813429937,7481965439752467516,7661950216083765649,265792545838411720],[11217001417946782819,3693756236845098794,8873500696175729936,3222496416717953473],[5217067104807152822,6982551089863362117,16332131488522146933,3414053151462783329],[13063433097419226695,8474230318588280077,17785129528892561327,2101846788854710613],[4893893495993030509,15823045525216911365,1873200291009843091,2705986321176687321],[8124719023073524489,2130541610055144762,7733812074658294348,1008854424278926615],[16024126794043083705,10899560432999881639,7555937540337753015,546085181159407964],[2086040302146157032,7810162543658900816,785139048180578586,2799343072935149560]]},"stage_2_query":{"leaf_elements":[15972468157405660357,1951458275114913953,5659191139327913645,15916854616872787760,8762759590737736387,17832086332668988254,10939416553559145819,6336958668623738429,5487715789907254723,12201645271037195064,18134992703650543951,18415702513309292245,14207389114978199104,377689062033844317],"proof":[[2215201620618307738,3465232985094332676,13760383512129898131,3391213938470732138],[14212085492247514962,4643565280390090862,434635496078501992,3236241720232112288],[1470663261730669538,867416126066407068,9053924566439572727,2478483812408605958],[15531452958666125569,3102328439179684856,3088672581507834147,217034202294167745],[10542719710211101981,4666625189448481675,15967748846436612354,221770601369274021],[2209389786920166772,18180359717919804411,8215353619363357683,2796540847214850099],[9418686405935729519,5564722633530568778,5792100516840448134,501598936209246747],[14854457835365205336,11115029264391512417,5647269361080042155,491557926211684106],[7371626235160580442,14067292795461173391,17742305600708223461,574009199502754794],[7418339522154074638,12256863408392615837,14200790661275491639,1086030030070335832],[3665789200818560555,14234365222274727436,1221343164647597724,1835486777221736649],[10420647029832961792,8377141977636023760,14908232275114260877,3232998643597040836],[7020421133167892612,4107716798518306815,902385229600460307,3065494559822768460]]},"quotient_query":{"leaf_elements":[16325142988481261055,18264834875536563475,621655234203065225,5080519365740676697,8582890086999777596,17903241066428200995,10417713327602565000,1095499404857323226,10273224290677922707,14906573230093901373,8567252056271553113,378712663185175478,15444390621720513039,6631122968783234083,408370889788357677,9128069108688271432],"proof":[[8224383590707373726,5836250632028205150,11522877984546703397,403666042010453364],[12749575490177252658,2218880308055969533,1345717315252077264,2217692255971457718],[8617582651872237679,12600761573231126956,14039673741618284371,3069866218102470459],[14331553530143178657,14460907615239460814,244824966561792526,1974028319327813909],[5251147302587626613,13781516117922799568,14556995222635707536,1294751553151696330],[18335766699050386141,11754685525768759670,8871140825396356564,550506917286100459],[3472530869255658858,7793324451951682859,4811769540194182299,1554373082650778545],[9093722856872479065,8706794391678775063,8249510081892657243,3088261095409334219],[16312195808758058741,9973726501193729222,16348115344508485945,1541547708588511309],[13430307604630920964,18116456937465028445,7766145159982960540,1624558029928437083],[15097912526145131356,11069542579246812320,13941441400201535295,1860726448453234564],[15324507379258823148,18076066785690353175,16637166118380240248,1916966790277779855],[11309577697716563607,17722788140558117797,9354329122003178154,3161978493615211441]]},"setup_query":{"leaf_elements":[1098808134876543856,3568111961429263974,18109759359436550675,11684153747127255481,18097129057816167470,17702677617513850234,9994370349721416978,2793445120714689562,694725871426042373,4494116369117841348,17967141338428677342,709878786070132622,7640613617933516013,11891741037903967950,16816767528053648644,102384597816513585,10986270831138488714,6246702482804857472,16966113934940644997,3712654697093879597,13499421609912695131,13171289658979247228,2850259576516528572,431299036789264381,5507302990155316739,1303224020572566904,10220150248497029157,14535027367901378356,14042470286362488143,17952146041474199324,5950587132775847548,6791406399969129753,17804319928265483108,9330653754087773600,16042981078876243764,12026307393247590737,16414156809431528770,15677845366231796403,16525090658020854522,16250383096397909562,18380014721978608794,13843677059754467806,14362672105973970492,14789385404530715078,11091514993163816232,5824567972401262215,1850097385151498586,8161958787006978736,5315311158818352493,3136882113471337240,10218961378792663383,5264395726889259048,17685187737462367208,11203459817119065661,6868185041063759273,10643460981625435716,826451388212409922,18158988945814872906,5369321391082261794,15549796955418463539,10163367537347987844],"proof":[[15190988491286039467,6048873316158171360,2589213333993697434,2964258865139051109],[13310282971281106010,9642222031945911650,2254699869888060858,479138878758594127],[8999126256510156348,10970267504260062330,3595172384024833833,7997193953101100],[8458061344885015718,4531866945385575514,4943684467382617369,2407296924570074009],[11613941584554434004,15507195588551073740,15936514648694273954,2165430402585315681],[2198733970661511042,7840786235508765287,2797918137333009985,159370631426131144],[15281392057394865904,18031834860158843165,6797016608163496361,1010557033511692801],[7853686392660679180,11133730251837138863,2509685931229959853,1669623715302307391],[7677379544709503210,9548437124723093799,4252269420038742416,3465854416824477702],[8578550300206018357,17976483431619634566,4333479813720410445,744844072473968285],[3087250122740173921,12214099895966311783,5062908482220159778,2402824971678283790],[2887290727764094442,17085224331222863276,10457582396987618584,109691295540185976],[8256807376369432741,15168980514826175640,9277870041920615508,3198794032107338459]]},"fri_queries":[{"leaf_elements":[16498957595019353038,13834289085620096957,3389511900442014760,15260942824037845581,12542062603775044150,14224565546524167716,8057160214737232033,1616823917359374245,7094330398198617318,10741617935678454274,8381578394379299393,11821722775985865422,4148971454995232547,17191509380423866744,16747022333052900886,7716407084189670991],"proof":[[14956197343033536328,7532732853148792388,15897712929354183077,1153985219507451041],[12347761953330684260,13732179141782058601,10274181888368430700,3032285607702938556],[17127228789861504680,18405248455057655340,8344323689377958361,727202307743606842],[10494872470707781598,2222059986104734239,3722515604346737520,305450980855820511],[17200006530288005938,16568542368121053277,5995413581143989620,2315010180227189934],[13062057060307421512,4637345856133055062,15638274787630697232,2241206183497156618],[3198011279018543860,6070417269250646182,17820811483147929625,3056087012536026021],[6755771788124095350,16002892849360200122,15254603325947916879,44297949988231212],[16992438034976970084,12642660533012434575,12773412679142479647,1225112692034852006],[13622876694477883628,5833345947361085782,17891337713967508499,1013791216218856434]]},{"leaf_elements":[15348926202552378971,8532585800608605627,16118646465702889073,10591711916494644357,3358720529444722823,7779983966085245760,15279312481913536138,13406181772870950304,14176626246163010131,13605077514875562695,12418976643994759090,462016917950993869,12210032553697514612,2023882080881288256,1389776722574866948,7704657252974253176],"proof":[[10247840978632702283,11677368859836294728,1724081946466110108,3227238604769735198],[6277032646386321064,9192256238980841712,2881547728001363866,1954913252778369478],[15633105990443440866,12075471385194267671,1234056365559065361,2380661606584168539],[5792121167419933376,17646023236016268436,11594108727544920645,3061043322625973802],[15952022580806899884,16723471596644711299,4178946832376223244,1819146468093577214],[3819540347607810344,17116963439094612218,16523705837782870267,2297782081394439321],[17500939717838253157,9705443385530785495,1779363690164319671,1074122371231927020]]},{"leaf_elements":[3175751985462725434,12154395394042003087,17991628131226096427,9853028857148843118,12666890603694339191,4862694850735176503,5188777711923415836,13708667820606921164,2712250010114216481,12333410176405076026,14284401144403829340,1854669034241263389,14954253303980644246,5781838775252338572,11804857103670103013,11478935400329047729],"proof":[[4433858474442377829,5003409275864703390,6604743385869300526,2935718346901914890],[6266172138153541008,16000285683563998471,4011214948806064684,3059938997994574375],[4758383864741446900,17226598889475045556,2718477887338645498,1200054338722519702],[10328160373740026240,8849183999081324149,16955602573418810021,1200653738176335537]]},{"leaf_elements":[6670996430230973635,9411346294205502373,8483550996224526525,13740447761273969068,18383799888576087863,1861103407767075109,14128577166984205448,2729368874586322948,6073654733284029417,3615814553695871612,8114762500221555235,14148764031155796224,6047697994034696922,11425529257488454808,7856428913764654696,7581181778488487106],"proof":[[7055916157395292321,2510178398061995998,1073981448647449388,2900422869111418466]]},{"leaf_elements":[8315176551938840764,11851180921358640063,6375850040316541105,3560990375012668258],"proof":[]}]},{"witness_query":{"leaf_elements":[10418571924063498743,5827947052255948608,12002567627411450969,15205711871851306935,6993813804133538393,1503100684647831297,11449840538695276977,4284092405181535886,502304691474417467,9028515416700422621,16703695854620960496,5146595208546484925,13180664434711110260,8868430263528934209,1878101435931090884,14689847600579398820,6858161373115015049,14935465661590336483,14657536167962835438,10422802110765304720,7305985315994991931,8926835759580495241,13239403470442289165,4916943326195311758,1425841714251360907,6479475630396339517,14319455199642396213,3264567438534069309,12347429669055377490,14815806272239054229,14169555028593703605,2591562763565566524,10709542151733423478,890281787063598257,7106216828686208938,14978381613115959683,18326912492275864918,532087667913910783,4930412612132461695,16725831444246798227,12694942775407670270,16656078881021378796,3672389953734696155,5096979204415389807,12877926407634739185,14636552451752141295,8307836310592372960,1175262474271937811,3305260252521397644,2111754262443970309,8962692033032510880,9366833386099261456,15099936060613449481,1266715080117141656,116052465382737327,4469452617713374114,9485120913912532057,11958607281286018815,1637154814001875641,74432642240343753,8037694145145694164,9487972022461090361,17286552816292586570,8943701021329152180,268250108420912707,16951573227950695041,14207352563881939955,8467962002083200402,16643459970737755429,11833880001805631493,16646615294616255522,16660229626435328676,15521579359227629871,14818501696295391032,18403845775197635783,15167263997279038776,4047848674156247951,16914769561877273071,5642635715521717080,3848957958569519057,15344373718540978030,4889220979302014650,11090977819364258102,17096992098010708837,8864387525706593237,12022791652082310809,13634257859379772273,15915570719581700530,15087628047700388298,1444395501610867495,3438063145134800567,5865438364073043611,17156379552041704451,12445407981474813550,13180380129477266580,11689148304563632268,4180621260868749637,1166827667616260748,11043050580865573667,7652092514391970571,11411373483021384268,6532116818510177915,8836949214450672978,18161712477675136827,10688472193315597255,8611790998518350755,13930531266394907582,5909211196781410476,938589197932060745,1130168787679659068,4027643796281542587,4861305973168008914,6895053188089916233,18239061114152376553,17713041696048944334,2889017730220674426,16017175050532137938,6299374812341024088,7412882953280975823,10095327631247441168,9678760821560052208,13951041757534400119,15276010028411484053,13181283155463578734,3660146520357940284,7613430509537802977,18014220444476319326,8338417806866939133,10265544633770846056,18263905017846190622,2003097137689761721],"proof":[[9016335199316748133,10026664092486502564,2151415145178629182,2456953845580747188],[13691784634537993418,9586521237756871647,3063699934580387937,1244799385955666073],[17436102140137547982,6513549922598649583,6403992852421014370,948153070002570135],[10815386946234000127,17849107990642741625,224331373763219855,2895056559724928777],[10222378487179948185,4063893954722429113,3083788599763357275,943524313613805588],[6356663466266342571,403143480187582522,4149436714865515534,1311822880262070691],[7497064491737214293,2757093140000435418,9275655806501576654,2405442358289301579],[16758118795925943807,12696355488554603338,7707760698909362613,1844132738016375832],[11120895255133637266,11909925831703333535,8452991905956016421,1587453129089877863],[15429822673491620630,15022889910299107987,4789377043958502327,414340285326213930],[2199844625010788932,207243730639473275,4965686603521225943,1557124794114651053],[12596324349071297506,650568380548773699,14628353966245616893,820623334795860976],[12489835289634896400,6436027295365327603,13835359195736637174,2107156744221810711]]},"stage_2_query":{"leaf_elements":[7358670257437687355,8589692308040580224,17321548507454905679,7990673097213425774,12352707133324167249,2958372689740450665,15072735274022909374,5427353883694894509,6690377759332841308,7258671140427865609,643732426641573445,8162316875907943706,11423220487493557529,10709771705351550225],"proof":[[10721342928361333897,6264642006664855427,5867797974598473506,3429536750942923098],[17518595137217459117,10482555042157179283,15752077205537293257,3064401016571169821],[17555585222021224740,14220848334285605558,3768382405130563532,3430985381759421850],[2662327171661405925,10948858772654349483,4017571120730362864,3398224511160221575],[7417432722547319081,14246528214582681783,15045282451304434237,3337436169395733762],[10038707524020855196,5999235776054187814,14432957877054687948,2544758319165466908],[17111514158293740977,2467258707398294913,11406444748699593103,1102900643336584913],[9051566786910682029,14300629396365571579,9539242100957366303,922307911295446470],[735186647080363966,10421400106880276341,765165250681223014,2552826920950953460],[5947593888500992756,7767789340230942762,18294234105657287425,2846314976263546193],[1739782288191443403,18377148546627693567,9454299425633555570,2812435486859492082],[12199509332844513209,6289704150970667889,15090849501270404306,564382372865800925],[5088184440726532484,10624519551630831941,4139449485439259727,3412129392071649693]]},"quotient_query":{"leaf_elements":[5466422390297731442,1339554422909798236,5841779924924608942,17938324827386378662,3143180599703166401,2890612577005142279,12455372560420395904,18368005369047741581,9725200389337038237,18240663336530937127,12249271845369069224,13315649560000375147,13789819171327732683,3662986661664183479,15617791934790921050,16068702380395549116],"proof":[[14832189410358351763,16253587872385023990,602281712253618018,2492109018175628380],[390054973403017605,15674215939490642089,16227417886713739413,424276408192988403],[6120820847069300500,12707880279540806925,4918684824657239501,1839294629538061480],[15601160054240758615,1351802760258016225,1227855170244920900,112834160226727537],[13362412652321771824,1761944813182015900,1986719282747370959,755856658293003904],[6145164878327140686,1627130124813261621,16453292131182888552,1797287519765528536],[11371980449858357861,5750510087683903680,13097353056655400837,2388007775803132474],[4607778129528114378,14410004081371547204,13393034102425091093,335547067435825623],[4982166714770339335,12044149082804629221,158219208686303047,2629753251703123212],[14145755589696249525,12753906094253147629,18192309177857019130,3076359479347091329],[7614431164331918393,18255184243091980842,12278229449227605332,2678284897473371078],[9597732716930859269,17638715697466088868,16042498924296234427,785371408119740079],[2206136225417434008,2701764854394411613,5566855779015492723,1850531030693384592]]},"setup_query":{"leaf_elements":[17598706275930762053,12533792888087803757,121776315503406945,12325259939982922701,14154292624165063881,6866787127147915424,7384483865482134387,2087506255527386026,3567086933302372457,16618259578789613237,5137039297928697495,6814782862616280202,9315372266377024299,13022661936482002003,1041120338076474962,11454704622024523793,12206919546967204160,12206708157916557661,9474373201330552989,12937909019706907200,8166883968258663731,15577055545913305129,9861062664545971345,2994528466163393017,13219535622623290628,1187363378920760330,6185373446014779056,4501569778046920033,5124658957857456823,16508271231888119852,2640768180490182286,13992705746692986512,4996530735411203279,4087928520594579299,17527584660663754520,8768603685475174277,9860408403423219578,11015667638196400301,8101426167017087836,5658593031416566983,136771101915812907,1509115892495394132,18346761943071054461,1034226991660332263,826632968990026268,8763654930757744516,11309084740980561504,18420712641711467973,8921284542756910137,4730754134940839132,4359629454906864312,2223782582853514550,4727855953070954132,7248149745784875504,7534525406008704883,9659011150818799275,2134571429168433180,17733577700463888684,9111802810935863979,17745904364814229984,8269989253691303144],"proof":[[12764156469715654038,1038406757654337144,13986449738312547479,806882664273521452],[9787018687440174478,3618085271181167804,10671859150693306630,2085405699590493895],[6696338987550358138,11000232818773170825,6600098380285330515,3370227442941985379],[17826259348502919075,8232092479401560490,7328846594803020962,1745358085383574447],[4019261211298829238,14913323885421989454,10940905649547171621,2732433239495431494],[988045004965188872,4921028279025238186,8149343675263704181,314702744386192273],[12385485172491752025,10259568724594757186,3267914665597268388,656401433294045486],[6629662454573320036,3395902999632926859,4790192206761161998,2231693909374154377],[5555316125345338690,6090286166298020180,15607892846937578286,2406003010748834427],[13638097457512873933,17842293204987197455,15355390714195715911,271959683589669808],[13982435368302911826,16412714100195348126,6539485576429505075,1293216423346938695],[11520027135635602178,13631428291843464574,7547062763468766959,2304945956753451373],[9160595042059558321,3003654428390274044,17180942480487853646,2327618075865250316]]},"fri_queries":[{"leaf_elements":[6872204329437499495,17550797499121858742,4256890881153269490,7608300821972545772,2174400771222821937,13280578915515828914,17564873570240204278,10528902870946049694,161322217306017144,786888199330835488,15582159151890956927,11749427541739610778,17606517250952105317,11597806962549509159,1043503123328420721,2854967855274796420],"proof":[[17979836800131887986,11813030823926300727,13345765073332899427,2973518885788961071],[17708078235063845960,125364707743544021,6076256479159270744,3062993689467048482],[13749507951369987045,7904864553035589247,15991977794507421735,2334847532976796415],[3906296482432310688,9136427131919268187,8222803257371064453,3236598797721025433],[16160889630559288063,1333989368554058214,15078903326647135021,2871511000772733210],[4526779852542491323,16000801246627067344,16238748276152257675,651179386632511385],[1947376226308492658,9808185759736178944,14707856686060259983,350465426769938422],[4684288483664843629,5187621852905601021,2527247282874054871,1233691075335551248],[10723020342470848121,17474965981455051584,15206467815456018608,2902423583858735627],[17081479404112278480,617184671756641223,8216228617306694673,3379202153544912932]]},{"leaf_elements":[8649603656205263627,3648052589332566752,11091192055181584314,10337630542032750050,820286962491245301,694868491010285518,6885038490419582774,5873479607591314227,4402834139841116787,15462954652753817214,16801814833814680664,9769992453033991901,5351112628130761810,7630405138202886147,14366574423707690198,1403475868999229808],"proof":[[13340452076796408618,1994616910849058624,1200062281970534407,2310551901848145666],[3475398768345530559,9059115066110577571,10807463165879797456,162648545215426819],[14637884088167962345,3899377273610532611,9099275725601113949,2982153427812170242],[6390374341440854950,9948514843579518528,12875970295216571370,1241636431209157568],[8077143868170118771,4725437901546329835,4293781317923256525,2862795524965076934],[16504235514074964649,15253849892541395677,12108649168859793274,744569816225014137],[5813712587629336352,1082708786045461569,1092112838582383375,3425941116159785480]]},{"leaf_elements":[9197228715853585080,11986409890448262335,8898382392253299712,9849466047123370003,13131669293082808280,13422475063452060559,7979412999215004638,17736512003827247124,11295842764203849741,5051668327662972457,9569358171555519656,7930312562028899266,4063170401366429153,8380516489491241545,7780870777369171918,7643718619254550514],"proof":[[410650020306432265,6937567492657715955,10606739278152439103,882513824846557597],[6250532142866724018,874464391132368249,12803709443487121292,2264513077249386621],[5234607112344311336,17810096218651059591,14589380212376460928,1182833263942171622],[4216581162791829782,12611432400497020496,4291082047923264811,6403411685447305]]},{"leaf_elements":[4311699445297929499,9806112033748572177,3539043589198585194,14593654441266355321,15762928673565885253,5932108298477060518,17925124669056389626,14193547706035909747,17259293125139773774,2442827444727177921,17080903217978581511,16105909017897668138,12320793498174218612,797232347842516762,16412067898771630043,9571229727132115841],"proof":[[6720710772968328146,8869646766528407003,16450207532160375016,2278103972111261741]]},{"leaf_elements":[11323862628515517922,11439196860937776991,5413344540181736252,8741335607124726181],"proof":[]}]},{"witness_query":{"leaf_elements":[8124539724539331808,16400698383424273733,15420973902985722577,5308077112053575244,13040094474734654351,7017861419864178528,2127693512059714514,14983692779880405656,2009688044885866819,2265090434975122623,17915307538234028014,11074829006894988222,1709474153271133356,3187838121191222349,4676142253158109775,4693604981541121900,3552538003498879204,3260434701293999764,13761448486898250333,8595548218671461437,3974994256881852374,5198967410509312735,8696726196590586800,13916497394762048395,14719621491539261187,3664526152868674617,15400992958613642250,5100129608911954963,9573909405877640359,4135096473295240606,6245848128000592177,10222867780871692200,5348471487802706088,5745774637930629320,13884122806594750869,10298481892425585826,4247507214670540015,11057268755459325679,1665562049469690138,17531837938489562385,5147466901687954893,5119940145006256242,2322227790715198019,14637640476395911269,3692024074599112087,6263952904005993749,17650820432470724200,10995944605762529469,16601554032418498337,2428053262916655622,1515500342037582223,7305261793863977891,6017100172833615132,10146339802892246684,14313108610966049482,11685114489635541824,10932826540701756251,13297067225834490384,5354279184010963546,1939832556105775831,13564603238454565829,13165613549067909623,15245417195937105712,351505756928354189,8944325301476710564,1807566695596188147,13409935917694961275,1932311712180182471,17949202152875850895,12748518970587071107,12072902542580003665,1509561024403255245,6508666476966639677,7437355897079294140,9338438691887853638,15642400037104248844,10132466300183447817,271668470436863346,4036141388901352524,8379948491858222496,6257705280543316193,12244414219691510600,17946809199820923258,1945719490387774536,929383296283677280,14420208481215891216,16867795310209562598,10693307550059497286,1527379049309340645,3175921453515818195,18139901056853791323,10265403733516713878,15874670506446572135,17497842110155429477,7022960058798258523,5371344687505670789,18048325487290439972,1284905971684270,13698385705261755193,13418681510091005055,11892189006024873076,13099204902763958761,9680684402489620160,17905943313449752560,10337149086376469858,9393556580668675004,9237255902604070952,2027474309073900498,8751956303004191503,10572590477579306866,13931696858850977647,8275614164140942004,10352558918668164112,4614970265008258012,16233377522678784800,15254708358238009627,9690613817216745493,10632196184587757197,16375609678680766662,7259264134808208458,16560416085787628961,10968594471038547840,1521420939866757563,17397379120822459966,11093061025225048413,2109033338429386395,1802723497626120465,9878175040492313519,5436989383573056340,7464471563038491418,12448612942856405555],"proof":[[6514447405262728920,13705263697169627362,8490619809325128194,2562279054114238230],[4378186681081469557,9692080890938867809,15126510795329694482,2155044287863269829],[11200465091969740830,12589790725420716188,12739461205716207977,2576326683069224427],[12207801576883848287,15545150489766148436,8504203120887558797,3208652682056143545],[13155942655184858451,4980835212635984884,9217162677924129111,577028131553982046],[7696537225362381967,13653471248555229708,6688298010075282459,1014271791524987367],[14804013061433557879,15934714522815907265,2280224546568952591,3105813378643706866],[29230548507110707,16724482215220627585,13944418850228575393,2583640729276832849],[8372598071462376961,2603980865134103046,5306154123838459341,1232485177254295271],[5489788198357043875,9691038253541085117,15383810944083683222,3308415829039631731],[17349955109595768544,16743960907917532183,17857521342031017248,651961673542365248],[7218174071320126908,3391602635141918653,9896595918848906488,1823235285631652039],[16513765587432722546,121544039024893773,3138743533043215794,733950146762531495]]},"stage_2_query":{"leaf_elements":[16349455811922982987,2837376443246113383,2801268024153720610,10649009486584464653,3350035330192383520,14549387877239587818,17881231212782194661,834426590218031770,8108756682670580867,3969396883485352950,1926634206740793866,104588575683808524,4895211838517584815,3101005036013568045],"proof":[[3366733150151481575,17575495355964366851,10055488504852514574,842172419803150370],[5244999257841825539,3212443790099038703,4559132396477311345,2028376632473939112],[13020210901533142891,10668970247944318014,13359112109371949773,664177489003278719],[14771966629850626498,1468368638286871507,4868905906130336258,896406002202834697],[9885960412536761865,1033460729218715653,10363456559543815834,1727241823040539080],[669087228529765370,14942817767585156807,7228487412576441153,1188473521927956228],[18436356280944220777,18065074972925822935,195398798780014446,1088880764921757952],[15250893409243389605,16630884065388943510,10258699566778762014,1019680085488934354],[18002950842404775025,3703453828817575100,3632849190160933170,62470256635048983],[15267794468213091871,1944914123468818495,17120516978601139508,3359921725191906603],[8057777655389200611,4479722035356839996,8075693173658676205,915682735566514205],[9438806516255595655,17844878632545378719,5138587953355539140,2234801027948212830],[16525377618692489719,17328983968272744590,3650596284590334988,871340746504299580]]},"quotient_query":{"leaf_elements":[1641758046788962619,13964605734396803034,12843163866514475984,7904444671889787646,8818964640805459920,13090206157770529519,5818484331091508835,1674075563558194661,15042245767591557756,5931927253884416563,11904453816563184373,17044755162434307352,13578577347014342489,2967051227606805695,5722497738403227599,14922776829829676366],"proof":[[7965589951207691169,14502858369895340055,14651969759522488806,1839443366713850644],[9525704288425430765,9448095924791650073,11334642939529986117,2383252636201228531],[3307953280324762036,12409975942296441910,13166560859081709672,1557510180380692479],[5000309781037201114,17225809101110949088,15142620539019812343,2381195671303483010],[6915277742961050350,3719084157354204797,6590699295689153786,2843180103592053485],[5175190294553811293,13577606668963315992,10137807922531082774,1409845154265485263],[12800432408057892422,11634567445636294563,12010959371825473329,1773684238195599669],[15128945954889881028,11222579476055097270,16397018459387673168,1418323402421428482],[10151085496776236399,8955522521679813898,13578445565040379278,3409093990363432994],[4890438045013635191,12650615348801566235,17768187948190258953,2879828757293696365],[9915057964071577145,1964225964417928312,13382952069357899140,2710939449546884707],[2401237826681113308,8909424395211937939,475068384883389955,822955861264257061],[4877516156134644516,8438558471521262095,11689573288271903265,1820872385465103953]]},"setup_query":{"leaf_elements":[6616139142663604570,872606683362384398,5273200686402272312,7707060101474146976,6829551632370716260,10634669392476104794,10633091731706996300,5229815004925196695,13190066791736329686,15112455672614750291,16924704016711714324,3407434841309916445,6474509485792320121,11450493081155690087,8176250712055842338,14339430301532655072,4849321308100687842,11201672860639632976,9447362369947748988,3706426913623345537,7323912536298619645,17415453698271785014,3942251482185252695,6293062695606593252,10788870659173222135,14276898181801272626,6066462192743637438,17195236302767698316,5869945045697104743,10542848583278701012,12476562167125625113,6296082999643583888,13556201344564041758,10479025131497129270,15256886135136362433,214137651001895680,5933156863294873759,17341104732077506520,4870063029664045150,2940886245105178134,14061263582970260009,9210681106575396580,11918443727262892705,6331994352492493939,13790023008890995507,11931928390616226498,5635827882558498181,2884938783038207856,18299981416840434617,6234179593106269862,16463273835943877588,15522248954738697064,3561915516946922908,11846074145729135358,3156110467891635082,16704457729808525730,14481600151474854329,1061359800375615084,17321312755673609198,13155419274374546571,11743794473308487470],"proof":[[17181646531939560487,10337502765332238192,16495272394772778691,1877959300531805439],[16654096983448191441,14221135013384599780,6075857843502035758,133304665839553348],[4873618323392254015,15989116203432502103,11320567846143930824,1678305177052670803],[12669591453194927187,13183336063574108702,3972035094471359529,3074473048426343318],[2254788474706165704,4337571748697551249,15905547527363383312,505527677278474587],[13812257627230735801,7409684626264612435,7783876082721612866,2202975432065214398],[15358296189977591764,14278535098950540236,18191443616951919806,2229226831113516714],[14439872236529863191,8596315124349269828,2104184846693974920,346932294983722528],[1947238611397738530,6325823781000102461,5524573040176309107,314685963194860356],[5222397238295803356,8920029560215082497,17279332928133846665,1857266373320731370],[11726129945642873427,10380315726163455303,2959037522864988791,1539444225808368214],[7031390392236892690,11403796420058588736,12541295250845120410,1685901086013876799],[6903761968075767775,16335138838085280161,11255601848129470680,2840544635581585015]]},"fri_queries":[{"leaf_elements":[182226401385593990,6194808387995267172,11162712674187853215,13070705813267447706,9526237110194109738,3194852153036111490,16379028781742513309,16890426726667367941,10083879557423847126,14366122155039612503,6509588353627537342,2980746645716647430,15354662511571038056,7758052665912120966,16757664068590257179,2500067383838410336],"proof":[[17602871277047605916,15484115495855567206,17614026477403024256,3483195805153401012],[13154269641200668491,15146341242051598858,18343099964049257064,1788823339342086332],[7459239696491081168,18049170621751433518,5716932578077610570,1489374745662671986],[13288021460422759329,6738500604036649807,79981156178981967,3170068375716385322],[5249051539473680788,12304331394327030246,8429505410308375703,55266664663478305],[6230353613005622127,12788889699762855430,9942656867556520868,1351408266916127164],[11817563146632654599,13854435912354217446,13829330066251063434,2026446345469155296],[6141016834281562498,13557895874158797347,14296991498835590330,5191440726921059],[3047858776583339722,18039244376599446631,4665799727996645685,2393727567721304533],[523525909914794213,4641273345161396273,456208264863516188,3185861633421690290]]},{"leaf_elements":[14488813937680286083,9266222080651859526,217595419232362347,15689919129805550040,12027521984468272253,18046314669607699532,11623732037902912927,16898411526666662802,966693760892049744,13978457831412120951,17824845043554901067,5939013498380676691,16222557948681489239,7002038002034322607,3349346509241930131,8702552963639259436],"proof":[[9908247766181805576,12931710452507482910,12581443112573447889,1825819311921612721],[17253754433942195238,16383717618622353535,10385573986801528250,3240058210182353255],[871586174077384335,5075076414369872029,14187178070867894883,3219628464598876359],[3599831821469344156,7514406533552393940,6806177809029853116,1851935279622925902],[4858258630973905047,16889928276112672878,7889444479700284658,3442222253421765459],[2244566249098437668,17243142189126086824,9062012274749468692,1112101514670813382],[12829028331720930570,7839367307024997347,1708950152111826918,99008787807097727]]},{"leaf_elements":[6031107926071223991,7592835496868492250,5995321249216199767,14967509613363868842,12634460503970910486,3525304240552032262,10916070852699932201,540290767015729928,16747706798246691909,9394404339670905165,16601971229099546157,6574772690533936083,3448852453424294482,9336189267968852063,2433849627992908690,15948852374665086435],"proof":[[222449263846210045,6490090775212345108,13308299783656239445,2154583913325595660],[1633604523041796883,3050622003535546438,11898400139231559621,318602716408661797],[11797179099208339866,3270327483478855488,15342294916443107845,1316040111633353487],[10948929393571349751,15133035458002609575,13033826236490809564,843927101519598979]]},{"leaf_elements":[8985689063820130294,14632500928563021011,8492175115891029234,17457269209371091950,1787740454944567578,10619543811862395874,1673814834726206631,15839903481460576304,17127299113268322441,5820857297293477877,6267821794017558446,1211012250684612131,2179153015643737742,14613273144592282206,6460678397327558989,727797160042742470],"proof":[[5650056522720703258,11411019331149860848,12435384058340081666,2342512692171438581]]},{"leaf_elements":[16020615081147422815,13915578652650564399,3736948130494827047,6469096372567627750],"proof":[]}]},{"witness_query":{"leaf_elements":[18297959374293951249,3931345149495073738,6962343789842172541,10521257772647221235,5100352501022725407,13654529909062413540,11735373834331358532,2020874618630582769,9888981642566141708,12421977705577158872,1698865688195003015,10026678428978193078,11965031303586011088,1059842539570441132,15709502489820272857,10145357931242630839,7041386570423101953,2814326215970872006,8041404729018643688,9382005612094936723,11865741352924394715,17557829427323373098,14377468865565334311,8389075269757778499,7193746897056439409,5891530144556777527,18076154849309198380,4247518637360840830,9248501667428206734,9959334356028512683,12495835726379506253,908298973564225879,8908073248783877726,343944033229499048,16916204341191355365,721650926226702477,17302887446328249875,2170700445896839600,7186456206766409768,6531160384679803368,13376045282236835540,12826653638020629038,18131418675709328995,6298205178321393569,10725175149378620174,32241867300994260,12297435024413580249,10491900156859751442,5662358314563904494,8689344733906836244,6622403890931362549,5326147630491441966,8173043460304819128,14990791867062784165,153435463057330328,13100989085943743696,16166303687122896658,15643488198394533950,7598250516382198838,17636549710538017470,7496170798379484921,12153098545210913981,5072960159224689311,9746182761848426720,3105873249389817962,7976420420591126785,9044781784649464616,8577667742754374952,9645810012482909472,4215137150007056571,1257157860092758728,13683706578534600132,9574123403188986379,18330680265421526226,2635323775625315202,5857649971752868717,9664684670639611008,4700318485373701017,1267694765901512127,11896594086873825638,6737360335424980011,5463334808675725316,13811795406617314860,14042342354436730973,9071697105269539360,109633071639560184,16390685597802285534,21680881367723447,16308215978083079629,465364781979960258,12734798799316327714,17978376879942532695,9431268203623654105,13614556272927766670,3942213306717989909,2490342001848523909,15272277600804921085,14293030179972756412,1643935338417263162,7076420756860095455,7158739104684944811,12880859222737643531,3721609985293747761,5382066280933914951,15695576925987773758,6521682518885126984,13050763643822445524,10228356888086372277,14743822166351646088,15899412326739067466,15005372104840614115,1087075932729875207,1987538945752713798,16574282482741586837,12070928886630975141,7782911844837055789,14538336506634997835,14172523090321644309,16585956227542694707,2085333216844164698,14096763537226268462,8510678633628895385,492863440750899638,2531444438422712062,4185755852481839531,14446620209947896220,13447801111852088448,10225040822809992513,15299769089632545362,2321316158256600887,8091780302954576193],"proof":[[77746262458805213,11534898390091624513,15895102884833420557,1614385669357019441],[2949275311960425153,14733909456657484538,10717453814127211609,2431896009211696534],[13977630251851840632,1703429950593710553,3924637848321827692,456055270553885659],[3325996339543554822,14572098554901185955,8380645715349643079,2498285719968886147],[5653886644869586464,10291020684516370413,6762386992976912835,1574106328756456109],[8283160623654105516,3351663266629687735,482214409451521269,1604517551697098152],[7540457555463354876,963397278516882875,1470089892842488962,3484011713247105895],[851834703582443763,16861305119101482408,9962136416014150189,3413146494801032953],[1298510870950052879,12777148439123562837,630992607786586967,2841265760576453252],[5700517798463361040,15872682058702155892,3651753752888608534,1683270016700603497],[18133448950438938027,3590728441915711227,5935118372286298235,2069166987537017368],[17723243069304556056,11357807378517089352,13657516448748847876,1268493559648078622],[14076076261611183675,9659655257828759082,14706052795474948929,3072947630100654201]]},"stage_2_query":{"leaf_elements":[11337418237309378774,9214142501954318776,8334300781901076364,12325252359250307836,6419076694799226352,2440378244996884586,2280368115672283284,152586936502127697,10717864479965302752,14596239211453296118,14311284909797357323,5756221085395762283,9676021403399157853,6945073334351407412],"proof":[[15662259936679340424,8088278518720874786,15456691449526728615,1092923422362319703],[16894514400582601067,6327000136628935305,11500513024930508129,2114429998937100700],[3920685882136513298,8968323401304196603,6836903913908410756,819918360939142756],[5679081292912069248,12210798872574110087,6588345729152252269,862830225674813452],[12350599251374849496,207236413794505172,14822180136491568819,2833870039510925858],[5613806965035592347,6102317152662156447,2213818724263530679,1879373779574910469],[4501735049836707368,1346448364517277462,11172172382966276858,961000133896081152],[16825613868045794558,14889333762681354529,8584060494767983463,332057062469001777],[1028994877350102045,16084120264939554078,1631836921972401608,1219878043121008788],[10527037117328713707,778037761352702330,1058560302799952893,2819245014613598696],[14630612566051183120,9751199677521176731,6133826899499776822,2095532847582998790],[15825230168161676768,10913299072888876783,8456846884114915477,789517465186489202],[8364166707332384431,11085165977414611782,7147555899875154179,2437337308019370275]]},"quotient_query":{"leaf_elements":[1869514684235334233,16186593378984145741,11188688211078174906,13147491104843955772,5640961159247343063,3449203874134404232,3979637240915832648,4122234781530012931,17280504486879470904,13491531318827423299,8509711734701858269,12950196537308695509,13241078888539605588,3596830486363561696,9213967471924103248,10130453377216899029],"proof":[[10504389119769003711,4357955845576555285,15897822897806336195,1154396071418399276],[6689455635274149774,3489518472983365015,2171458577196824180,771387779022538946],[17664540541581316410,4968089260799610392,9580897866755086542,74228308470975168],[5046840986426025307,16935130490036772279,13244317824383714822,1726113957512713779],[14996273160637075002,13676674725058034254,3128215658068023940,330385410851614749],[15626863522873956011,8743133763729224054,12513512508105707064,887154573401085237],[11837102917145703411,4090311716041598193,12562585638665298634,1489935142270772235],[15922177363212896050,12683021565521856221,17676472234282261031,1448258946771978103],[316272772089310229,6279548667130104358,16966802669001655748,1170828971822634081],[9366567857068535942,18227855068744415641,16859995543691246840,1605511042846358251],[5556893964396667697,10583310459409899369,14179098296704603923,536838040304858988],[7006659901838543096,803969477343191497,14981256681159703528,313881293679275484],[8730086932136367951,11925599204180882986,8819274418015626761,1710917549612166364]]},"setup_query":{"leaf_elements":[9953593205679201103,2804634613446688573,13603233605933321948,3097703657634239995,4845410542070360211,15771587521860199570,5604603225523343671,16581808378365338478,3787788697133213994,5348270608716931604,9166091816817743366,15784251020102434580,5690467923710196128,16434608324552412792,13599693992570207068,287355297040241374,16744171228951698651,11661698081960667960,1755590914967377240,8318758822904118644,15540560279483824658,17723178904904599548,12129037252868476987,1534549452010067990,3731869974025065564,3156674094197607462,5904685606924938360,11624786932905041204,5571897191263685189,7966597590843702193,12391370470778634186,4410335316635306926,17750946620835706765,3835463939917496906,11903271151461087211,9111013210235408392,17049321736586513303,3342305976170074518,15590996733127896365,18443099968152224648,2614871233933426561,14648967278310633066,7402992477874491682,10647492122351820196,6443495380185378105,7921003350958562226,14811545408806671734,7126446347305389666,5184187001982096968,1380726160237319020,5325030688487819948,32145996204271264,11606403572911531840,227203725162483344,3214858221619407535,12784193531833663514,14512928299716337373,17729345260658835826,9581590878799159400,15029089864611962294,961326124234096819],"proof":[[3206605393474430990,18055731107580101786,1777738429936660804,1778743523631836938],[733459770555097396,8170526983146688920,2867696359577186967,2429630201792148571],[12205368594754540423,7304268463802406882,5530220064788790695,3035160539873191637],[264159943553899837,12404435914984258223,1123818165300790590,443834798025495729],[2168065801669329996,401101041226999748,5389367088487144663,1155793103036720021],[13245449142386012932,11255736695178232013,17900422728563882794,3221339263607920416],[18315540463687217743,3728879541257748780,1076671866001390716,2966766098053864652],[18353531070583224273,11203614929540223029,3967278062310214398,2827551468023682088],[12267858927280501505,7576890090535633434,9339848421784617928,1367247514145126637],[6670588123847843161,11533653149932071337,945910733009995587,612502495769353372],[9146488317584951273,13125702516936194298,18136646936310502200,759946512215221304],[11950118845523605228,8974871691156313033,14281810236981205890,1646875305781119811],[722733291788924176,15852581872908387515,2443795526216256097,259525222240707858]]},"fri_queries":[{"leaf_elements":[9311910525268321155,11219299489587277539,3150907074874963669,16593309000364539213,9343600742699737344,6460974068651351519,12891638520758863671,9875481701437076842,15900227559779696607,4955286390585076561,4005200885344134659,15471977211591053639,8044050222585110456,2933194867454343545,9657211659455282127,8510645267554769396],"proof":[[6801499054842160525,4748139414018880015,5143760524276512528,392322304830064476],[6106403769585829777,16241279793426893129,1950907108710066774,2801721961909115253],[2743858445025144364,16185567289310388516,5075106470694881554,815509620345061010],[279441258344345487,15240478833515826938,11747958086981438831,927557371188998430],[4482946962211315926,14497676946024730774,3973826415190024306,2780718766047714676],[12811006606735385586,1148168768341225154,10739089740428865782,2344818098874943485],[7580951838199716408,6454529149564525038,10137547856367458853,2220210809015054053],[10513572516478520082,15351965221111537265,416895882993972594,892914602842381509],[17252262767457113072,3084397863169735726,15602101305331398506,1534812293163552664],[5118267202683754962,16438757699427697566,437162205562170402,866418178278798530]]},{"leaf_elements":[4965815999885458307,7725719837041061956,16798304231495400123,8955194277927374437,10471768865896999908,978282299187587628,11189040805588935236,4996769833518300613,13021968428985553513,7021759184808504868,7645754403319355918,8020492467734186210,17693683701207298159,3292971950694725905,7636428671692652367,9733257799329405147],"proof":[[2373724329894194353,15475972173879047695,4500898216920510061,2194896733804050173],[17076604182111510544,414283360495323611,15429934746102478734,1343041960795439414],[1180746509985973576,3328949480134028292,13081662208954061291,1239019151589608580],[8616268286351361433,11313678446437513323,5084108130193669352,2365140909640226088],[10543376209209672796,8936431957960339410,10826657902299599743,693082604322999562],[1187062444726445116,10624690922973651627,10396984044167040774,3206270247758655471],[1766928392174372401,9273764266976117261,5364669811481690826,1079770134041172907]]},{"leaf_elements":[14482577333078825037,10394874100114606060,5447938818270134425,5519375567335535765,14040460667441290634,13988476428861235489,11299049926905294084,5572938966349825844,15051321890572816769,1048851991398651265,15073822220803454792,11631697679571241707,2609697069536398233,14656672259394555958,12743544293051773401,12376336801623240062],"proof":[[4502684539725247213,3177103619473326476,7151289931667891851,1353048982490199016],[8863988291767182616,11473705006316782842,12663363257106293963,866893491834465233],[2034437430147221946,2102045484291976165,5468074473542929735,2904546012807388467],[12790274898788724833,11778265757858560232,615264687241093150,189207347702324596]]},{"leaf_elements":[12951502065863114524,15589898566447076325,8471850072136287179,7795508617952139287,243812168411268926,6176350138902543632,349377700592651405,16069763194368890798,2248025273204271793,10388784969645694575,5945734337008841339,7955221026141260029,11185399327475433104,2090689616069089665,11256685780909830861,7807387601872616093],"proof":[[4892189012639208965,14949783539425906421,7682998158330916053,1995989299876921147]]},{"leaf_elements":[7065729504527910035,9780518320697745842,13314892057648005417,14505346905238107109],"proof":[]}]},{"witness_query":{"leaf_elements":[18097342364246898755,4436478314385615515,11087403113501364808,1163247671819195129,16580943507331291277,15260610969202835441,17312879612631667873,961450843063003470,7564595945351568864,9064850416128343963,490413516665168816,15568694738155899963,13680397678388309211,6151484123305706665,2592855994603384396,17701006273034565838,13478335931240187107,8114306562441341020,9020718765957210447,1533779275186758307,14197610554008709966,13410024527608947229,3632893469912342913,16932153246478017414,10017064616729203699,14480631597017166938,8093980931471800170,6805996211523179939,14596504717246328449,11733286582666029078,11002477328481592398,2662508249860406497,7069749276869619725,3775554097655037585,3848415543090400596,11714626686406630887,7760092322313685766,863635579195618479,6348027422763353012,5598530999426714314,16987563950147500233,12844396205527696406,2752868031680467616,13072121318688651446,7181735174773334576,10307536851823634483,15857915285583676673,15699606139797070445,9549357281209657745,12179146489191474822,9299509459942749562,16404938023251814550,1969295242086341438,164397542868556706,13653696243450085540,3158445654624984526,15167070885714745400,12387420907457570722,14877110555039748212,14417685237444767054,13622612106894528078,2110687628700910498,2443209341647330017,6274711471266813815,9128731513430822645,4470588371951622780,9122713834739046520,8679749229314933,9877317544430065301,1727013564947866205,5204340851672304672,4414991310058646543,5765194662362893013,18050268565330808218,4917792723825292231,15821291987035901149,11253080960187669124,11151437087740313461,12053772546581749708,2341375673800911661,11921317796607048878,5587089285955516492,17969990639819788326,15856742483112318938,16252154343646373564,10565022339965675850,15789509915220194318,14360724860390363568,16524610702939298073,14311895985091608736,15565679482200525480,4254287435884773769,4211506026110778543,956971122207561623,12615870310484733524,18138157970444225439,4542382385252968051,4862293830452466754,6385034260593621343,10726216037628907914,12341039700169625730,9105708058072055928,13758861078072950954,13969086627166359470,4665157533161296335,120378557649244690,3566593645652498988,6266948846702115201,17907124155194764660,583099400854864274,5031885790537839602,4991721580797006003,17464166371908656486,18173977074897485495,11832394286185510268,5846111045826206268,14906826369963967252,16378513103018758826,18399292334589309347,9810129111011543626,15494470282475451768,16981212780989142651,13260915303699182303,2750493102643190016,6284611416998384737,9647256758949277076,14891392251290686752,15208338404833103448,3047526851583993978,6163098219279145755,7538877070584161170],"proof":[[5380299897992273918,2203092084796453020,15471668378454095279,174821997619067179],[4190583801533686874,10504703452600616353,694228448571640492,191646941634210949],[5132695020862987240,9689500102379348103,12194217539062655260,840858458970913590],[562629151641044247,17761451737688368374,18209553072624766355,2372097143403816004],[9665207378435737078,2557047899039662201,11297262181463826569,2840826374621653705],[542459459860750268,2244521629288888256,17443125477487415514,2818116448854301917],[4196693632766578413,13789811321136558142,7025355529559919421,2488642731115341952],[13686737056287502170,16749169835048611727,867740174471630,2724109351280313013],[2700484966851988557,15422179830808976592,14819707031571775852,3451143015884046777],[17648132100849151726,11510382120374436258,2213613093252627031,2762830612510110009],[16227014586563902288,11806741452106796398,7289885446626261489,1830052120445894234],[5337386146685324083,1759315120300051303,1014203858517702445,2373938672992607667],[10760418131477431642,14820657774701628297,11628914349052808993,2039254384422831665]]},"stage_2_query":{"leaf_elements":[14682601285751762667,708606448584919366,10399825452650186611,7646195089256214434,9647950337968985771,15131339101537900435,14195902769696644108,8817523696640653029,9568974099887053935,9871551760241488859,1221597964916729673,13438396611880529942,8488071416133075909,1273632299824164510],"proof":[[13443376760817153638,16235255994949684452,14009702440820361317,755508864199369848],[9353278179576422318,3512712022624863645,6045540494455051803,1963858115960487094],[84250445187174541,3926138958909901239,14404434310062476353,517709337034187662],[6690544133719462465,10245187588232241101,4026692647098760927,600439615320196019],[3992965327149094260,1534454008104018494,1691746646734764036,2671153362661237080],[18373325801012480870,16732279587972793075,1757777907376229755,2554945850596232658],[15839140641696436942,15050146657873604837,18067950697623853197,3046671712785077626],[810930994898426710,10436400719313463824,16715368890030192525,1137810707506790062],[11879285534208010791,7084843268404195974,17397654526441175935,233707915223976710],[15511469999609308644,6531681108437632486,16640524167174633943,3245338827740932804],[17961360173795477962,7720565919948432160,2062932133412226373,3419185367283942938],[10946443397241484112,7632626395748461425,2953818670712640602,466835577787625070],[10265763405734876041,5280836174585384744,1332105447072495082,1288183057809366478]]},"quotient_query":{"leaf_elements":[2275729159892706798,2728805718254034047,16235170573787972411,4245841907850299441,16781270243883912553,1403916242737207821,639945289195229421,7812071612722588676,4831034019341332314,8171144828308759846,10586331866679048145,5642254323875808696,1168549662135383745,6099798470996515425,7235944120357361919,15616239518266068445],"proof":[[16063143889309831964,16835130928714860722,3588237727071406541,583763103836058742],[9726436863088295790,7762689300951184615,2577054146432626218,1977871962889224941],[10387075193735504056,2653730505822905427,16777080898552994844,3021234778845106902],[479537849812192417,8719051759321825272,13420623974295016095,45745292980960523],[17430286673832271403,448298288118244429,17935271234053252690,2322677956499521250],[1856367608926008379,13762502649364851778,1410371516792103768,3210042448918130169],[18127185360520436542,17697936898963258228,11693804988261469418,2698326913667054360],[11003958897459901399,11136329284095879688,13613888728084128933,3368930938716578026],[17216384032372075144,14354419070564171945,13992197128708584015,1245877274575292242],[14495633381505184602,9299846403028644538,16370141644983784684,2484358238794042371],[9799625854887603623,17768803730781488837,1027653261824511039,3144774709573792281],[14698990891311628009,15892561105547541385,6630210176285877232,628055738420819513],[3336220069100085124,5759271110398045898,13618835346520552360,87853750978578886]]},"setup_query":{"leaf_elements":[13429354277612612016,11802907434842809496,7152029691928937604,15103647393984121802,2027394955168190922,7489797271802111917,8998600295406819492,14523341192636920658,8839094728931356871,14084773731084417567,9085681190649599961,11336363551655381855,13898983373536262673,11061313952232474379,15214568595395140944,11554610467224577374,15590984150053399274,7718499046077082523,7188073932820223759,15113689703439841232,1620765393214159467,10969897001173734471,9084576198922136001,12709776599841089014,9529680643118789363,14666531661709971564,18298394388835478170,17011102065926525618,7871703278938852825,2371261253629213043,16035436735456441808,14081571924577149039,14652049321934502317,3044576550089024320,12739831904793046590,11821661912070301230,17264403334993087738,2852192288210770701,15986424422093241379,10803226692151309980,14305939724667816635,8170861396095269983,16255903804844355568,11147260202793160265,2824049960938497802,15367015026942022956,2621835543722204218,10394788390863476244,2909367711880982334,5970294618086683077,6696442598905927689,9809118948828553310,11785200675550198910,12109360128638633571,4875674644432902664,14242961163852454077,9140732816568137145,5780329646761401124,12547592343491939734,7077802455708262076,18125545990784055886],"proof":[[8706173434542235570,15360088750936225071,11042825634756440675,1113681746036943128],[12293060242658919457,3976826729935827335,1071733871710086645,357424802497652178],[2020329148802575064,5078880019606015157,5748779571604658717,2664458382016385826],[12524269147740174141,56166465706017501,14950389482561453100,2599873770787836288],[17051057822334559777,7460467209705588558,2874781892016605323,616601809530589838],[3267762387884212063,4491930682368065181,12624036904229960867,89592698308695292],[14660142671561038840,1850823301553139732,1241292503952739071,884394191861676792],[2034987172948117922,6776616278869124365,4954778331689348712,2435662031603208598],[12602783149331955748,971894995829210868,9938275213585558572,603734519592384361],[139134273537688952,6992979227619680571,5219970575822457984,759903076144052075],[8561863369731937059,3748792952491648386,16955955045075445143,1430569550067109689],[8634214520312302704,5788473018517600736,3895694945095744202,1852559750666780338],[17874738227292005179,6326465745494053,13494069438792348789,1192845911089305290]]},"fri_queries":[{"leaf_elements":[5547768765864925459,942199216610521151,1898383407799251908,4967556809431687370,10865720759834808581,2327659632545740651,16762787954261228805,4600264684859739504,9666555422039137324,12266311141699764058,14987848371979191716,12422752312359460668,26281078932804180,2109635435812752163,17269525618052527832,9414934147227695922],"proof":[[5855148264063749303,6229592738546401616,15740760744035248510,434561492177833550],[3122703685960051757,15743822883730040495,1255748104648928720,2719898581894954238],[6578804701688408036,3057391026388382463,9395780675481735360,2863916961798613844],[17273116438950023526,9429589139420393051,4917601215331481111,2248184516486759721],[8156315080531904637,13948354891094559515,13391837742319367192,1769474356877236011],[6316989014176430731,3875427538594636848,14931224154743096572,2055837446936166116],[13228320050478322458,9894090960301266730,10251212409517826905,3467804671625554517],[5740760957804843562,12683386640919453121,8731505470485739013,2549651604685741430],[8736545542981214870,18091865623238342905,16938045962214512397,1619771569222218445],[4755821502693131307,9632672734832196477,6831801818195575559,1211503718015705569]]},{"leaf_elements":[7671912735415296369,2995430212049653791,5766505774617478405,12610827994094159625,8927640188092403718,5864029239265448995,11828062946497944191,102124796354343911,3665280969895374266,14000716544758116981,985210652539723230,685270681072112348,15277639891303145181,16620850239509046686,13817379085765328585,312764416827469144],"proof":[[3797566294984244386,6187180247496797783,3848012875178044282,347435259807746710],[17340938539774380726,16686449986302717915,18109988851191378041,495815362793783790],[13490293166060865529,9685553433986131926,8979399201769514384,2600775463503387902],[10827404187231120061,6533149187892014423,11944205768551897422,499515416643671203],[18285979551069281330,1965461503927681991,6858294520353012990,1817109101893344962],[17748107662216378529,3745547155845768398,10781438857281393381,2132537212408657619],[4968579060289205032,15025470103249155658,4016020820835814409,676707436625885313]]},{"leaf_elements":[10366124592146345303,9270600929113586275,5096317204823678955,18160598869472101149,14993707494245990034,17924124337918483943,12044568294919556401,3207517519456463523,11880111490836129502,13996824970745960089,10893762151078481782,8344287899502609530,16517328923003533735,6340218306875362577,14556572799635399962,8139796564487875297],"proof":[[17976125046882125244,13272246983559278520,4938159646937417051,712855948467314754],[804078176578386963,3846429302243631822,4469311658787756735,1625073331326137204],[16787357039742660708,15074718737644074307,7357274406577523229,2904651230561894869],[6775086337445118645,3836725614252760951,1244274972769235222,3458783429667173983]]},{"leaf_elements":[16760476579281369555,11684430973873978645,3628257208263626274,13264191245930967560,16805239192496903355,15197924325062831366,2446532897786143650,2265791655783868310,12694463806107320464,16750582611044430566,7379235119149631963,8016374353919518273,11399838020256932524,8401772713760710572,16660944741874745508,2593524144018731665],"proof":[[1408739999051503414,17928989256333671698,4393560887102948271,358038974748859422]]},{"leaf_elements":[15915622550061201680,4536541224237163888,16120598048347926193,2661082248244309055],"proof":[]}]},{"witness_query":{"leaf_elements":[14800063320740863528,16024341373799135039,11411556610080075286,7955713256023226889,11791467924228747297,17084808399729590510,7648704236859624772,4731070068603496307,1720176112583597727,7242248775219424766,6184473843896192315,875002966069937715,4645304709454047108,6406861179832759264,17763568418760151600,13013928251178453476,15600579058821805487,4491622997191008000,9416359330255629433,9825309721615056130,5752325526007788713,17087703252477444218,522688201326878473,1929998537497501138,4777772012369684716,6114799019793355563,10673703922317317971,7700590693189593259,10663280551587259790,16547768944027195468,9590647852134513282,12246331389855630157,8123678792933969083,18334880415301870065,6041583540729443358,13782103009191334480,10283901054492574419,3903234201426761566,9502019538335471948,11240539038777864365,2414062674736173840,10919452499606828464,1801889636534415934,10578921586311449394,8946026022292195288,8333399711112513292,12965652515956173210,8552817025601635917,17952605688120733052,4746202286109738987,23500766268782032,17490144420371292702,2134805456623764905,18077591728455947775,1485748432022409655,15554072127729118112,4330133794199151877,16969873245022881820,16936639476573124038,2283033889606177664,14287072736503237496,7864035378614123494,2070166525567042087,6642227656084531361,6249209310004967136,5579513935377495925,13325777842204769205,11484173746474699202,3210947371878282203,15199124219534187135,4353140548264560619,8937562550473162609,2763688388995682258,15038990615331341992,5725920069559992603,6488280096379698660,1965966539510417842,3687657575067763578,7439635735129625570,5786422921508622486,13227365916848866951,9719505290070218600,4999216374808831258,15956854496438611804,17474563243824974625,12350671254095866361,10836025194494887937,10418452928132321475,7074927794481815554,13575885373937062038,6055770783762451297,17037684965456335865,9870319691409102038,8290927731450578780,6864850591523114371,16082733698836985159,14281452500617922509,16079938740392159578,3154644506811273824,11382371732268655042,16377047345973768404,8687621358218405953,4837138312715062880,6941080855923464488,15321586758582882212,14114821795343862576,13345700570844829956,7405855730312112563,9786377270291156157,7668306639512055055,8567004128670780608,6212635777830160807,18229427275763105642,17888977584831083270,9916172660082111195,6382477155832587727,14819817605245736969,12873807810435377777,10625592540654776187,10035531452004507828,410786338432897580,2536400719007642496,8751646243805652482,2170637947309164419,4435829033897369960,15108250652158432119,2691476851137000978,4884741137149395399,13751245054123410131,4556958069734457520,8304344725224047743],"proof":[[7155198303450498640,8125735099619011120,9991402947516713390,1295153204474557053],[4738508981402743310,13612043205289628075,476512630331550429,1313946642273310835],[6003614369275289451,538745130996086721,5855429410865698780,1205340351997036180],[636504358878446939,18031877158730053156,8682692371607787112,1832562221923881639],[886531883187275801,2931218712657838443,4046112196316565908,145668639177585008],[8436237407941446244,15771478676751743838,221508314252473623,85352981560413697],[15863778060365827476,10723151162392701078,7616543041232008213,1305689966799233190],[10610346795798553170,19815413671372100,13144785286063802617,2623016974436204169],[11866531546164064338,10484408113690674192,1226494682963570383,1021217355056589915],[8193514674805675027,17513323135307108884,11270300645142030525,3185484705504018671],[2226723878357767203,6907060864645212035,15288564405948249585,143356550194151194],[3025696268175542504,1811029513990196629,11033833219888416310,514707846647079341],[16588491068607937261,3526966741617928076,10392695706853076554,1484301400438308297]]},"stage_2_query":{"leaf_elements":[5746577085789269418,6695680131725294305,7121312780931793127,4970117846475921015,4640658128741395388,6495409614571479237,13761296220610152736,14470637826393487775,13620335150444756580,5429786327901003815,5398149039473428016,11342470460221277046,948445334988693149,11567030837764048550],"proof":[[13666540421408341484,722451835749466080,15208628690017489633,2385210987949983564],[17599780785096558753,379347304174338487,16260243576452578279,3040840760852039123],[5418975999669495450,3282452511524239552,1211920117631663815,3070779939590656462],[10184988983354873,16980546654622488126,708945644101015178,940131180494242074],[16994449515308479527,18009500459477519545,2213967082375235611,3413079839721366105],[13488526846002641699,1636935396592370144,5405349273147722299,2948629570450180274],[7963274894950540412,670322037059630952,10256907301400793053,769178350926615323],[5227557316152368537,5838423129486715129,14886561524899633679,919052250654285789],[4822720314503969158,10142475337245406809,3347819758621450376,1489456962083136257],[10797843017958922556,7408558772690614360,16463142077196603706,1290145295860928559],[16244871788677299291,7579926744538462936,5423572791070509393,2933673083298627417],[17603814926883290029,7657532600076575694,13189183360980068776,1053195816475917650],[1137189341543078283,13958353513130400171,14826580562953365354,969106141811926692]]},"quotient_query":{"leaf_elements":[8221614098726645745,13736680717959437859,15737727753373640427,17225068389874140982,7452529514500145543,14125032637527109450,13069199669830833097,11714638012184673457,17459058442098342584,15240651346109140636,14982643933728178958,16491669215100710694,12055053401928752894,13856579098439928871,18024249480521110627,15817566829756621443],"proof":[[5636604224438352760,13869233576256546359,10208451654171211203,2271539112391162974],[1778642748486587971,15357409392231611957,17067384795364122830,1456084243776320817],[14477421785017639250,1080554040726222203,15136910228805998309,2828318073822595628],[7590510381177641776,10498331504202846099,10662965233839590507,3116757623201220511],[2287955067896343211,17963589368633505193,10658589390706637516,18894317991354948],[6470862789380652262,12202730266918248062,14849461166855546623,2242273367187300783],[1873312511048374793,15455824937368890442,11656194112034165179,1232767769267244106],[896924289798751531,6809858855495214817,12654469680378914090,734845290839232406],[17047465576130313493,12101311390046573137,15182322769847071671,1023180773269842662],[3116618570006244150,3050304403457920310,11949602981297598743,872380798148477378],[10987904740664328733,8269807527356530332,12086673306317258424,3472869179684966342],[18400129585021623352,17725819983091570639,9335365942795346746,401863454731231604],[7644633979883049593,5553498988801646622,8610663271832258607,822488044543005878]]},"setup_query":{"leaf_elements":[17782145773595303083,12105225252455229343,12731214568750359602,5209470802896557154,2638820123361398926,18311427152904825390,15279546701342218426,3513592622558291887,6221029848168907424,6293909064554701906,13388551053245119566,6818085612886677134,7401057021151835854,18215987261128411774,16092230652700025964,11628258350891326603,12356461786131233412,9275188930439160764,17659588011863271303,16974225618898564566,1562071152613840130,7353860279372263727,1531632951340567461,886672662707435834,14833573266408609372,9440127265223643297,6651634496848732276,15786522587974477623,13508855113920158580,6154561871946805645,18299310217691059530,8521327749442408758,23162531976508560,4506982283009059460,11149257707497190205,17802775679379216391,5978224699728389606,3866893270467964579,10704054898689922140,15791602269022134074,9134947256935423526,16417489763897557273,8333226201978193258,12030775729998536147,2899427935883618613,16301250994458975161,6603704599796886543,9823448101051116572,10950006897489270177,15852693353865986544,4297211783831800441,18360548907276281086,9132769068640397598,4335526537961472207,3016105638733674178,14921466435855588769,18389356189804388112,13452881638867419801,17293386431861290212,2414881981519630940,11971364704678043858],"proof":[[1480529783378959851,12333690316688723296,4309586749459707866,43018663553873837],[2244735709016631939,11548717798700318104,17996588827949293648,2736330177885753099],[12687772483104223000,18319389174578249155,4138163291146617659,475469086536609729],[17663421293409367099,10182509609294383308,8700839027894353151,1650213355775859511],[17617405386537689624,10803890213033778063,2348809168482666178,1088977861798100722],[12367617908505877092,14957019031223963226,14117964538243414884,1344040135425316913],[14687027911334798213,14614419711818712392,17879089344145295588,466194572929063132],[1065005644255531189,1284636815828318074,6106911498311468883,1219745525821636097],[15023604465527579294,9607297900213284664,14110864797455122933,2883024653802373252],[628556957677155828,7585121546351451268,17616108359763264123,2705061026983748321],[2925546025121368322,9393212929099205742,15922491707060905970,2420077998596994704],[9570117264848148802,13031384388492958840,2875517330729552202,1797201766000743835],[17233809955911081924,346565918454960805,10256110933992363603,1021423818581111110]]},"fri_queries":[{"leaf_elements":[15526693323502978609,11070899250978640929,10065079863097543074,17412262577618895674,9788588448875878861,5429250036642708947,13135458651686023290,1721837130634776045,12171518770295980861,6043889969243474216,17734423746038417874,5100518189825784239,10541394436846761596,13865018793607541240,11084876544253950707,6857351290243584634],"proof":[[13846763017979781343,2779470092049346651,4447932101426985549,2956784984924931023],[2694868091754838793,9696423449273113661,10959434442476658633,3392037012893205280],[14482077562851930809,2129954715150560452,3064182020333460159,554125088704349108],[17854694079051012084,2123844065474761981,5806775957423980939,2326010763908955917],[13864524522564200801,182678366687134381,6643793782779364032,322788871192408940],[2681675665800531770,13497876709844975924,14399128414906976217,1805142764847213427],[14992849479960007690,11215741003905785426,15588352663165793123,165681071149794813],[17623924459256954140,12305512018102128168,18115127356720493669,2145943281043213099],[566095417874937160,15038343599373286874,8740222354101684066,2931945077491031766],[17504669361731179974,2131055028050421148,1385363377788465903,1412066716416574165]]},{"leaf_elements":[17950783216801127740,12391648107447077162,3534989011321275863,16815653095177082324,17514739812002964694,4345746075605430311,9735616760636997598,1179020435364994708,10463317660534982160,16453076427050667845,12282493913867815384,15306675023117047302,6923128916615584663,13887563646484830225,9602134933345004306,9295085251521062274],"proof":[[7511042054991971030,6167183366691983386,15258347471968729224,2062661517999546495],[3407592941498116814,8021544933882080835,3623121715345915074,1827079755456033782],[6696797621464492057,10810387206839314440,17412574846726977459,2168052137990973615],[12848174996938781007,5407283164694043099,13767705568471018668,2408050946651618038],[2385816523902613387,1501348945346020961,152288624272726131,1706442185237321805],[11942813463679522047,11347630943101030614,17936129890552113812,2881836516204859492],[12768234999023651365,10129420054475814617,9085624202641957562,2813036854653805665]]},{"leaf_elements":[15997009302944698006,14270131949276140433,4400944575674046551,10974919612377289612,15359962871354373737,15409656810324791493,9987224537441179323,14224962973178977019,4933930942537917300,6901341756775153657,3035054613398178871,17563301596685452845,714530273645811056,14350375597356506508,10442915514158627045,7373153398233004572],"proof":[[11345269940212746383,4160826551232717350,14374322261503278022,1577739514790828163],[9598025570090363779,12307631117902654730,16837469065227998637,3310607545286743763],[9757453704712024366,1285281873730643983,17442336056444085252,2819784771850586037],[12224604233216893620,3883891059941308031,1780591444954729148,1399256507324657499]]},{"leaf_elements":[15893017159368408170,13726125840665252010,17148517059027992310,10710769517928453429,62468483247850795,1706573451560102365,6329054516726111507,16539953298218191128,7256712283437372812,11674755078445890482,2696239738289444223,7519682009745736278,14986697876302099271,12120225001183003578,2476978608143749707,14668648539203632694],"proof":[[9243350332989540492,12504692849143041848,12202608967821609829,254256006803436255]]},{"leaf_elements":[7065729504527910035,9780518320697745842,13314892057648005417,14505346905238107109],"proof":[]}]},{"witness_query":{"leaf_elements":[13821774841987296576,2173465140181481093,10579817599571384327,16556890296219794650,4850930259045551056,5621484121500641944,15437940127075385190,13897394466440590129,6365505266641209790,2832136603806251877,11875745355938749398,11136683041568154300,1522698232522650764,17617190607643959336,15889309489991588546,2014099767160982315,9897495705572687348,6524898500102879059,6386663336331801460,18118472454350364687,2463154574717037640,14640428582634113512,6368023638648827989,15440544973423654700,12308289396529940189,13247999556638508556,4591170506806487405,13716762582311221643,8040149118442597519,15606757444486683016,16932230188339652369,10525054994551734117,7386210915494689220,4076991905882459008,9585708012957030502,10856442983304349121,6009258117103700617,13691364753336280902,1768104409890595444,9150208944074615997,15958426363473568198,10229315296326755022,15217714958197544405,9417282919661291755,4552179949114370037,6582494377664158016,11173806008416493697,27728799129673551,4202195515649673952,15545040712768388700,5206569818333477992,16382786877998554407,10301891261355490299,11262181081473197224,15624830296689851458,18136086736033985978,7511721595278127079,2832788120613549223,4493645438359153173,16331429190506806058,10802896200306295944,6471387783896538034,14822063353669256164,10391798824377307143,6440849523889126976,2727313916146995772,8712976204293434997,13543233381764447588,18369335883275470977,18132624393008122045,2166906815891002201,15241470635469856439,9239930054055867640,7540416786567368047,18176947553420928981,10484430892525927262,6421035613018369237,13459368807567919582,7411083459541271030,13508841703175215612,1066064386547667736,2037209011284403387,11997889897057101201,6591411190693050465,16162419862830768363,16453667175878238146,10301229634523434823,3511849686033173230,6034410505344969953,3332272288836153216,13966099606600273027,15472017513710595807,11638752472868863844,10458792455850531673,14848355837193067679,3718062904611781266,1120998465218644409,29717779390382937,11451251749539216483,13478414635932985332,8305756976508718007,8190903855229085357,12902375634002739205,7046522760627542549,2418217376705469277,9908402852831555534,15601052433234263293,14361043188438433102,16256613223894900842,17246072792009313405,6047930523623201964,9431131952030909301,16600316936049112674,11692104260058310425,10987513577072100489,7257207199736467663,8211014258472351598,9857869284777490502,4442789141728944817,1313971172699203110,7944068724024180916,18127318230973266136,16135933452334421647,13961072240110729415,7483648139095563735,9036001795877313271,6147572955373179658,11022965600870500848,3557189012402075697,7653204658697180745,11838889562519417002],"proof":[[108115099596351879,14131023580717861191,9481609829964097726,2060988456909696072],[5788467183117055334,6983515015863461004,18049046794749373917,1956792857243920792],[11755765135140478516,4216113096261181659,9729931151634588433,2706867273011983273],[785208036303707227,9933936563576436249,9627944696557539577,2999706343347557596],[4635183805052082020,6851372427819031723,11937999531152392914,3128467060100464362],[9073248950657391456,3563902054723590420,9333195910855203922,845272067293658551],[8484440992079562646,4977230656189336482,4105615194137608951,954708141528376793],[8800684375111414410,12212154409294577786,2425914583897426374,1789237837149782189],[11592596589119456637,546114280844764117,10893458119382614313,767662925490972099],[12429585374484222308,15755987540261236508,13541186208445502846,88178831612874977],[14091583747401054235,8013636446082379551,16253246224390022151,483023640479400450],[9392237965359831881,3373404592516458736,15381650937528463053,2235031350419977367],[9726171590966735923,4829651508997724003,16090602382248396675,3352657705301266573]]},"stage_2_query":{"leaf_elements":[3406874535190529868,1844884583128141,1251182387352331810,11753237838083043661,1773340663489466391,5613469283166259824,6243724882313272378,17627871525249795554,222800152535371777,12132393140224712653,12745386593368930294,17070440694549038124,3783035685356916565,8226923495702751473],"proof":[[16337032383898008421,8572557260461852276,10086414792736961996,107529055323735003],[13359846068827274605,1676277634425131080,6079529741279970619,1674244286937324659],[10746431402901577562,5295321546263257798,7326335049210441490,717222595993552561],[12984820979388084274,1095237112126188354,11456506837140311175,470930463623427129],[17327148300583119286,10477153979218471344,7343473445009952505,3430174866323862229],[4091240440321875975,521666761639895530,3448871519845678695,415657341545912571],[18080429725855358626,11162300662552894940,3645331286962591600,1177565083204240698],[16116690592960418028,15536387953535871991,7660838372346983916,437482425979689812],[300907486011493359,2585194937478303801,5409274350043594288,1849385980261750514],[16175918921888327375,14327762221961708410,11863767738778267675,2706864635906876479],[13690185690323344341,3422592527962931227,12283922099035150449,2426307266977381925],[4085129217155588969,9902617974521523003,6401123027535736409,2341382674348654216],[18089861010488996852,12225825164867094808,338012099446561451,2297052575992396677]]},"quotient_query":{"leaf_elements":[17015495238034528779,15132765810048860809,15286608113542257999,12255909478863141025,15027750992693057329,4839567215074200918,4363175597241377785,8077973453042626079,17058719253703504927,18431969539316109298,2294234259419487402,13161085382119614537,8297754059776036535,3649215185305664954,6672691052918156952,12899913326432249621],"proof":[[9667377958860907945,15353210443444378962,14521525829899525420,1042067204780841247],[6744489740621661222,13904709238090046829,15633246814557390493,2605209681722670179],[15505532064479240236,5602208866861647869,17239324858490618647,1501517448978756359],[13479446003158989986,2501790227604638460,4695891858520434857,775362646142662166],[14018861360974993152,15124498808552633361,16630568875502354281,1302406569762231360],[16835733526592946071,16387867921925113084,873022805833364243,1229940763613345294],[10274698009643330627,14379238384780950445,16682365949117888785,608980674378222610],[1369885325860478735,18064069123947309324,6121489737830458181,1761805992168430058],[3018972631656144144,6143490577040477695,6050328996577952307,3290643506711379995],[12363221408990137394,14249998656864331782,17794978571348959191,383383664826939207],[12855773456359339230,1947100207869309666,15627659640544093007,2433885526130669722],[914096873976635451,13600268564108607375,10755682147995863864,2524133046339100366],[12402567447674926623,34131464737049163,10998478783239915879,1633215049887817820]]},"setup_query":{"leaf_elements":[14764019193875456829,6728811276800868777,5917000491557725828,344623647685893797,15201507472635171202,4783221196355375155,6614712367096126211,5662100303355746873,18173325832550535919,15505414269489821457,1409018220640623236,14561724413411212077,17298478038712565949,17038904575262040353,10358550766655648665,11889185023129732669,11821459017430105330,343107432945153437,7229517784689857100,2740387578888905171,8905037291249662753,9232179249189112131,12049641580961520192,849062828764396984,13484550798584000971,7554539166569403264,11509292285003992302,13641483667166997843,10910606250255955054,15987796337968714479,10019224500939943097,2600845420839859939,9580626414561358670,6084892147123139830,12630829398559523224,12839736926583642942,17173970431855477114,15591095845323400263,2717406306941688523,11608894612372167908,11857717364138548457,2884587361837518672,12155436523349253887,3251091115110721430,1184921303192147100,162580898346778319,13625241752574124286,10713586814677454618,15364601154344578634,18197920217890928077,12196488039107195419,13969881563490652736,3771944588831012454,1720699347071383137,4412474209321505288,2343555299558190193,15617966892926760210,8735286101964777978,7886389794125106190,7768273764623176927,17996989667167363717],"proof":[[12265358872639976948,172302468761399607,399003007459820103,3423921717199795012],[18101016689691109814,6608040551859128672,5152559867786535792,2681952577876950494],[16892413158105875907,8303754829908670161,4775203378571968057,2824133849511584770],[2163852749156281716,1846321641593408015,3007702819703105012,740458673049503866],[14556123488789758314,14022635997311579502,14721163150312892667,1084775977797034537],[12260145515585580049,17322661363297850752,1850941033256480460,1194284468706441627],[1273472665081956878,14870524553347491574,4239978235242695877,1364407448580402282],[16849496271327074220,11733059684343140721,11674273614320263526,1469020967236430856],[18359097096813559168,16962403842135298548,7848896523196464197,1772769873494447580],[8321112589569803522,4939077257470082413,898685243798170262,1537360392600558003],[10314200912660081869,14899293936836911685,12814003637050044911,1120863063100975849],[13691466506730382299,12582051411105350099,7515702800952027373,1032050712653070522],[12677027283722113761,5760596819309652167,9296137788221035287,7276189033338124]]},"fri_queries":[{"leaf_elements":[4425149509202910835,1821919373434212079,908826003267245820,3492684954213879586,6385692308675741134,3185293125762409681,8513128416130144205,873999808831338179,7540361414460281832,5879741413337035746,5914496074022315145,3937231545191041718,7247751475299959618,1860706911466615153,7945570914183777337,8889751692004836654],"proof":[[9032937370111342628,77728885008321332,17975500602725426028,3286702040675708720],[15734049592565547387,11880528582138456223,17278831148291056201,2904281762711519334],[17353866491256997706,7808515110557791506,8824177846914828394,1782419013340955364],[13555935847243160864,18282501518928060462,4065256561839221055,1652415855583315996],[6032139312930022077,3797938605811134740,7701749343635663971,1770821783939346541],[3035294361217179049,17807962004999393181,16022199603808414592,3443123618314210633],[5580756781335262704,5744769864188592755,576668182097871202,1693296447257780535],[15561732359266293241,12960261280737709094,12839791413423074110,3375970917139363518],[15377055784024574031,2935190248487441831,9819102633003476332,1673248324082124694],[7833494872882654736,13491280940374720712,1865292856529784931,2326123362451408995]]},{"leaf_elements":[1910661971672655671,13406224002497762458,14270168467704478487,6062203188007533155,12317396904888359209,3260627862664857303,8790486393368991446,11461945436485809096,15117945566867935153,14637252622854989072,13744368345596956626,15472073111441057758,14188830251208038493,11845954410517033550,3246513062421065946,18160852169237166937],"proof":[[5430240083685239156,13213842175797605418,14868736740121756911,68829229777439703],[7190990858177163826,10596650108521409569,16360751759347949377,1200916602833135431],[12788328036769690358,8317622452940775999,13407505508679691691,1720808961387768581],[4768484949524193003,2866945496979662378,10961791452041971594,2414364381203295700],[8768978161874043453,1097597209188189216,3600548552493907180,1214987540168240730],[10382723244974006766,11377203304278681465,8396257149204953311,1363038635008309569],[581308798135467893,16998357754940647505,14986254711669363955,457711454011638545]]},{"leaf_elements":[17077216813323378139,14709747519409098478,5623600546262830777,679118088041086904,12218624971849167725,14673612190234717892,11810900960847463012,10995659475360312652,15676906182957334114,11345992929271999063,17687225736108474558,14513635765570081926,4178753028088895499,1054961627388689589,12931494099069612078,2172019769579270871],"proof":[[10815595415076825166,7188127971147345499,7805454341537490479,526008818062141885],[829208853847060487,11573188543703142198,9783951837554879792,122082398237023668],[9382926910159745008,8401489314014756052,2781570748316150546,1912543555875382734],[6676997926391340321,15562037663091789584,7589018588370876531,3405987729888422728]]},{"leaf_elements":[11414911216863297309,9958857463806239799,11617274891234403398,5190211773535601480,8383208128232170584,11247122109368299925,8471331620151977551,10425320070161718803,12877418394616094148,7618734693058804732,4326828691187841724,915344756469604978,11516958910916813934,10740654785186859735,16851397472892690165,5451020333978628369],"proof":[[1556664724426284765,14553328811358462559,15787649915632612502,3130198072879929077]]},{"leaf_elements":[16020615081147422815,13915578652650564399,3736948130494827047,6469096372567627750],"proof":[]}]},{"witness_query":{"leaf_elements":[12378147862235105557,16380610098810392501,7061467788356169018,18045923129330328397,15412341748570981364,16390818808754798390,6721835851823755508,14836621727805328185,14684566669652835864,2239874112232813202,5841156235228957482,2086481121249840128,1705429603817365764,17358498843792232622,16768909663448758908,6386897967756613997,11457458172522311061,4205132761882894206,12270576626337982824,9302494206191454420,8544980752611825622,45269541637439514,2412900308703753983,16807064023684433184,9426379211647782849,13829196774752094665,15305021630895434883,3794446784069095536,17735516390336236161,18425433281553388016,3122173870116389457,16781572598505171738,7034191275762259669,11827177142834765673,6590980812136480268,1005877516419489689,6239905916397220540,8062275466999113620,4079901699638452936,12227582610309066981,13009213240326961934,3645871339254153170,11523832877588242291,4204226711153736405,5333522782662205374,7197368287737328644,7623673008326335944,8550024007737828950,1202412918632503611,16226201744555711524,12595504713183102815,1472432621485828773,2741017054262912012,11803941567688273628,3747539836159608191,4638747143824215370,11565820921915004993,6077863222175014388,12249971535926244348,9038769518574091593,2165675578669112008,9929716907211545779,4785116388398577472,13493517815526512069,11268587515587608461,11393329900203480084,16694341452429594264,17336242228652073482,14669730739503138553,14388885513058387515,17388606123356668780,8130115344464292207,16444175352839041971,4100580680013747422,3855738931207754866,5264609851556260534,3716489141267421215,6270507540833638186,793714912597170776,17912586992497120945,17510200990283876756,16565660389156694933,2941783796276336636,14224522939656208615,6569559549250017880,1046677066004501711,14317566658339263350,13677501944595519591,16010569498149595668,7536094658763282154,16635409857622404009,17195895159059639895,12636101628916025613,4475029267977541547,4297082841124284110,6924247876001118730,681749564972526998,4751846155072398094,8555433344099904500,12071994877760516318,14987851340028752226,9548265492882078471,11697042254670071937,5691378036626353858,6089275687009789288,2004136431867342943,6924833304124059069,5753678252484517464,2706730175823828532,5441792029240803781,3189714167635008484,2587340177268332013,15179298794307356355,9500327148699375459,8967105130741721242,6711622183135647560,12920246842474499205,8641414630572336125,5705770168316479439,719648446608630954,9931539445583558710,11134707635961986737,15304572038909211053,11068467182555048673,7045160360920534544,11962421126169346636,15312624426642434657,10626233297001374897,17361616791430363439,2609406420711234784,17835333860024055236],"proof":[[8336982192291657318,2207436826341216797,11634807592568171203,735117407228594963],[15506550586095533315,13013336075316731404,3376066109461536108,2384323486873127727],[17424475874453656939,14981236020774157965,13547751937371430877,237300608733982819],[11511168609423990056,12466102826999630694,10314447345301351976,1586781937629832752],[13797435133729434094,14886799828829352520,344902919094967250,2751919268683730818],[11290814805735393274,12725836103602435363,12584248733229749742,3179255057311409828],[5618260122140717422,11601184528156138816,5194634568906378749,2413272886008082345],[15042620436125792543,4328471352099434356,4133763943020039381,1116156851058173248],[17709987292381749157,13869423038606411345,13442839829634682994,428863761033056894],[17193176952710025348,860096432313589575,17963610832003238771,1391358697504112409],[4734995795921915230,4623969510906222627,9256522227688797598,3473826067968244499],[2892709706934527733,17838480464587819444,10155705260521547536,2387506384667558531],[16174210416781440038,11224782680825625613,13584339858344595283,2293598389344857220]]},"stage_2_query":{"leaf_elements":[14822908254260943213,706880215095074549,18391757278300367870,8338474401524445213,10035072905225337399,8382069550914363236,16873653600316525085,15512584181366268776,13528298269012787761,6405058744682191490,4018097479485315289,17534109729573794521,7290239583486174651,18294749900486314753],"proof":[[16629258704449432895,1535873428852556293,14855622486495098069,2224485992767796708],[14523583408010058070,8140971107318563655,3793650903422800325,181447634288586309],[15457596190067676529,12152438543275835579,10597585789797693794,2137902629451796142],[15518090210489280072,2803931238397097059,209621312300059785,388834816490023008],[14949031042941832862,14857668634667210342,17183981069901122218,2973435930147366837],[4133756080407713473,10279191446177836970,1030107231845462253,2538513074587951705],[9332403821431606122,7155253334881422935,9964947943857967470,1957601079178905542],[2767789402370602850,9585156646402169768,10823349752862006985,112930487613252682],[4097999239774129441,7604543444120790135,1894460702108994104,1086651341842154717],[17273947804060033556,16199810104635056885,17938796905747720364,2949621109597555988],[4307292625710429256,4505716506027778825,12415975303251403643,819183608158687576],[4099148929035402499,7673469686607061609,4505982977117334820,1485991602633362902],[7143706776069384250,15680275494194306607,14480354172152921765,2190139242083446267]]},"quotient_query":{"leaf_elements":[248812030952529412,6762856217746997696,15109044828495968502,9850317994157206478,11319765543032717386,13899634638145401820,10428596078078564524,17169335767736377216,12262603094762562806,10187033812007071243,2237659999878679963,15001904434705230201,15289820100465071514,17281305969419193064,13402537156267801325,13277859182179962592],"proof":[[806494729078078186,11314319978597602356,9303193066899418681,3208786614534289717],[14101716351477246781,10079272957908489466,12310884832314888794,3254714862979325215],[12141223880336549216,10732073104725175886,11517091148474891720,2529154504037420096],[1680572701399345807,10390428392133393578,9801632962442923629,643713052374328032],[3623463339886697158,18151260923549110390,14289357189221627635,3424471588862521501],[6828805606036321867,18120483272107007550,9219485302957988926,929733929835488359],[4457843730121296737,10198457074278281192,3003059237990427180,1244864463125751181],[11023162467131714722,924729220689830403,180931059525246611,2003107902580152060],[9405858294736761853,16425136972550717999,13240745343526695327,569825521222689064],[7393917858099576981,12169024137893925324,5233685297229839670,2366559202330909870],[13071015009834032515,5244056340103240456,17527143666732474632,64895979602718316],[9864148082391051930,18335226582304505341,8569801661974152939,2353801358142108048],[893769981673929871,3319556979175080647,7336913751317520875,2767808378512761087]]},"setup_query":{"leaf_elements":[8759760376929764020,11606729972106050689,14264780336105757805,17313099262445637994,6935948235493248975,5293707412941225122,4721404627242574842,12995622101403513111,16062260084056439480,14635153427405317668,16556437217841217435,14478135756777166634,17575192777374736242,5235825537986121082,4244680137882148079,7542422069264114486,10020567869133067006,8352134438168596127,12589222196103280922,11875338599957196267,6993389918236307308,10300707310431707907,6821576163484181670,1570784159969970220,3815770029367084748,8461942126411382526,9204422143289599645,4656141439155907283,3411264040408551486,5731769008062606701,17922107491013138484,9155543139607635831,7581548991561842886,2706223559006198642,3068270269912533,1927418978129451839,12377165017053173839,5378777809551699837,14850888348671074729,1442902898369593960,11437849527491462701,12022718603183921917,8142682023678979071,693593270374035437,16012743383488250909,11609403062570184166,9751039410085468926,5946813030686186883,9647097260752804642,13485469846680231362,10697536011472411730,17029093578779888227,18210283382339088042,11582722849931382473,6363158900546789601,3966222584484168460,7918644140772521218,17846519341848763625,5720992035250894880,11991706065436277047,8873855061294445913],"proof":[[1645960536246882689,9868822223658293058,15889516863986373840,3106532920168906607],[16296961492468133671,12475868050990842610,17631793699736904504,1036027731991346231],[12983113375495553235,4824461160114454157,9560255633713034819,1147380050966209975],[8430694397450308972,14102919200770351249,16830865143557235138,2144142871357082798],[254629673276667013,2826711594632026002,9593753420730538488,357888162574896919],[5256987839421954282,4051967046002127726,6564720132402659192,968068871948495107],[7700002472086444552,4724571277279940496,2466410653457135959,1594761329648338885],[6374881958160804808,7715497075395279158,10456674726393758772,2858589021929213050],[6030411142193316661,2522123567541469446,7262132202201577603,3002253707942951799],[16032122289984447523,7499403857371149926,11887253149445581209,1683321519167369353],[12124909263257621136,10818567662606497721,3959115628505008577,1119369570721152884],[2209330244228393786,9841280879286562939,270696346365318705,11851569992788159],[12671376312025887274,17441343524713900297,10896011836861176681,2912297064607346901]]},"fri_queries":[{"leaf_elements":[9017462378017781621,16101196482292665279,7665503339165121049,13129573912546594153,10877532224592754596,9282268430117184638,7191907196548736860,7899441121909030017,16438151939033260289,16816251933029994050,2958809156395270718,1659794431082484049,8541618478544647422,6258876874104033501,640589225736174253,16070648532684854594],"proof":[[8713942476030565346,6842803475276604594,14244245015210981815,1811712870411061747],[16806376993794293959,8759504459074233921,12940491202915355934,1272927983866496957],[11205212739510612406,7878080797064323041,3135739584528596973,1861028949440148472],[220972554002484898,1083069764975046605,1080059382524659125,1851361876503092232],[12956151689882073341,15314030438263027396,15990740871227633115,1399256910532196145],[8475909807969763234,9152329035167862776,6912010028224455197,2202459725789123163],[15750385535818593120,11946133434391833354,15343526478737079321,727518421252664123],[11024181518270608996,14617547031936786079,16376168583193951650,3074166109090888096],[380973593249884925,8211361821003589829,847491229067143454,1569444070397871644],[16109863426784669012,15963846919760798386,9142194185212147107,2313643416305218987]]},{"leaf_elements":[9746367625657692566,9893888500343730999,369930629267831070,7556812195883317562,6051126059330903182,16732879840186833195,8889501280042402153,5730461550236598909,3731976448199845378,10569900882427889299,15930566329982855661,12561000376411720083,11104261639911777790,6008518754081807499,8142286015690442851,4762867860017816745],"proof":[[5799997093501202444,12387449882852605817,5899156034917125878,94467118652781832],[4463916695716678161,16874370437827275905,214848589596104186,972521220694257935],[11081156110326022310,13428368980446310311,12911907201251225563,2075006630915523632],[5029247599413956245,9614974761259856412,1607895646761284198,2761613305995890094],[4575792760137230209,11633705882469235577,9841123168578556127,2039102739463027263],[17680882297911546997,1285525161416870700,9603686181424221186,2725273453195948649],[10344127557781956199,7906363140092405288,5982125655274322770,1672165157955432393]]},{"leaf_elements":[12698284169577138121,6380679397958639310,13463694638516145173,1867763465918078328,17101323362300856734,5571058722937926322,1078874112603970839,18289262124767908587,15023365805438353369,9005816757625959421,10455895038319905090,6326587037493777221,3104769015094251340,16718980437211271523,7547915859214082494,16090006472822739677],"proof":[[10072939034673203190,8264993371088481646,14552178211266357679,1070107708830041334],[1975479693281105564,15428429971138180179,4843772626935739041,3203071186112330796],[11161226704473065150,3322189911423566603,13118161592899224271,687763930591193762],[4274407429085135596,548774181466706774,8603117836559137571,160198004595477839]]},{"leaf_elements":[14694649177522924455,8970524565615133352,6698130501351274130,5407467138564220850,6709057259898075644,15065386984471511193,8847484406550740690,3130960100291456344,3694217830831795275,7041401053929351398,879613210345154478,14654620960715256415,11095625651784495053,10579595773725487118,8663536013231766845,10383856026212629571],"proof":[[16046369096493514353,11215590715117997524,7658673164007518840,655039943382377449]]},{"leaf_elements":[6485988802393016559,12130974100501667025,3138003141619716888,4081174251100168420],"proof":[]}]},{"witness_query":{"leaf_elements":[7120473777872087374,12364244440942261945,15039384678952789151,4879654229323112809,17333195044769746779,11459449718962398839,4932544065141934161,15798474884844611235,8891175492587581657,6921636407387941108,10707741920929081188,3765654394628313220,17728451631586331626,17414329181355196351,320987627888049539,174348052544068129,18329946054838725753,13092330971231138504,15455311592503237045,7118647647352835928,8918195365170161645,4162635233406819531,7671596790736083783,17440281271815780808,3192351820823883967,15087403254507451347,13949682830339573622,15827855855436602153,3784604947444744411,10061125418848015065,5536003328891618829,14827026064367035649,10103379747401594772,3945611187524800855,18348847578157779834,17971961536656851601,4031411849795676436,5465064502894278329,6764439274666476006,14845474936446859821,16009126127854242452,7022556563175804600,15477924042684160893,3587759579650126710,8012578150791737390,17848122369370758489,16319557089518077048,13754536326279924471,17112461143198852524,3594856812669588322,13924264584747710182,10424296845136833709,7324528967522848390,13987582772247661377,578563499969998546,9161769595875640738,15049142577452980929,15115185842819856990,6786330304023612353,5900819638401351901,4794490039185775226,12264703263263361677,17023675841819221241,11094732188244905793,17864021174449571470,11644669173265580547,6046863249966245920,9710778232943670395,8598043564518894541,1386055798358671634,1373135685304574078,10747149788153324178,1996996432508708686,8308621847777479107,16945311629101463227,12897724117270255593,3433631408115106341,1816110527151884275,11135160301677533316,10213080894333987380,3935192093019262281,8728586563381915895,9821804315992074783,16654434595099731465,13657481155210495916,9364803269705235125,4521598631534967216,7761577150443685017,14618643306510898620,16871864132132863968,1495957372204012656,12528079457476036899,17806466596383858157,13562864374200694615,4555450239293461295,18182375540521044848,8235385653096843702,1772524996879111371,7688646301382823134,2136918407137638263,13284975785888280972,16839182896866457184,4152886957727380045,3265813036335740828,839671371454287876,15108484228508095293,2393993062601582135,3930851572149311381,6942803713275455754,17310441297738813395,12058752890119530812,10072483590632385415,14405202396152589679,14032721019356263773,6344152811427092274,8156221377866880400,2425728490774068299,17536907293334781129,14212936729633143790,13513481087186303838,243548198974514730,10071954612716916345,1966001295930155173,6413915586708595156,3740709862258994446,7560286291306442172,14468919079553702852,13248784537987459770,13389633370422267787,7750290884557092216,3039780721795656296],"proof":[[17455759871944105601,4343005790519354152,11711995422385694315,3130052694863457755],[18198602174717073086,3906635547942207359,11670578441989653496,1665261716067287048],[1382973917120578396,9314075185264048273,9651390036227939900,2409375488397587865],[16013497417180368115,4072388981348196149,6347947928125127434,3244510576770775610],[11531313080261032281,5266360041806969200,5427548327555383195,1514171892125823780],[16157721861801685930,2674547821489411168,14562652467857343859,866068238829310499],[12135050891146362881,1041583430248676968,13647619609416258494,209050212382652935],[17512014452259050776,11425234069054726212,13497319685280206084,649951967609436242],[1924084151317795520,18423834077794836803,15006718471783148654,592910906432973321],[9406116281282634345,16862610032733593760,12954890539348018523,841335985339332614],[12970486835521510226,1866445652419010628,7151429743658632178,111012358390426024],[9976335644155126785,8334260381949829728,16609245529797172699,808191351321526797],[13357217182822843111,7246194359117680782,3300747307565431259,2805875995488588298]]},"stage_2_query":{"leaf_elements":[4846770382016114306,10936044111025389656,17954576566961123189,13437486306676386569,15961411769111472634,16723765871023100490,6323039674061336197,6738260018030496171,15026889363393186151,15091050694028389855,816423396674348990,16138040641270748095,6461909611632322300,1588349866507367756],"proof":[[6659808489221645647,1097784333747589419,3135821239700392779,1212295408655051323],[6261554541491857160,120470527985291940,17293524695832014589,2119658781991752165],[18321690082159701704,16194812358118348400,13612282417018019362,732026468237898369],[8283790504858406349,4537662239765808,9483376461392815472,1450983253666268515],[7228333546192696429,7321729792310877352,13323569734119467848,969171226004965893],[3888574677383436779,13348149833215227516,16817549398079993451,172957782757390425],[6098852174577148363,18341746261172205923,16970466261662386101,937443687952982475],[15426732780254717124,8919067593761422755,12530395192168376755,133728576409286225],[15381732192316943642,13397214210872857951,1572619577451894139,1862664925225461515],[2667527601254501578,15544106504185562862,4731071859952851047,3129656168854711093],[11222195966843527041,10029558956373736288,385125420014816848,788548530015826979],[5393399548198960275,4965487180566053164,9823490252370990723,2311833187933397144],[11783375733003255209,4043511936331649179,4043506204996727333,2003392045411938067]]},"quotient_query":{"leaf_elements":[2689554338211249056,13296718297864960537,16879105976621413477,13623640051645989891,13191436024216780068,10872683277834320455,8127100567718997309,2643265051204444845,4133259584340672536,6114627369728450409,10207307803835417273,16260908079140203340,8221015754432468761,9215989403016796158,6222546556757168688,7622321688340022211],"proof":[[8178042332805728894,3029120533648388513,5882347899945616861,2896324927594540532],[7404608930713029429,14202860038401622916,14610039174630890859,587444065717688475],[4185265498667638639,267690816308937484,12974621143606804526,504392343707296855],[14511345440332177348,13868452761932693716,16462848938273846078,2044047125804704473],[4283582443133775220,18421650480376007459,1150844688010196586,3469735703320631047],[3141925074358455479,12277794621690918610,1737893692367185006,3442351771334165911],[15081270199959491591,13172173128134569392,5777546939003977079,656363898187123915],[3670713498138143288,786301259288307241,17446095964794853466,1746227770584938070],[530964016904406423,16737273259892414437,9980033554528712676,1183140712997862770],[10779324384745878413,15028309566714863609,9301081500427545290,3012364719139551719],[18349452246617137205,2023220348133599653,16807574102074814906,3094054051262067783],[11344669591276189236,5448561436747376280,10794809766239163677,2752009775522827299],[10071724685433138712,9277584171601855694,12421698781990076583,3392383529760788958]]},"setup_query":{"leaf_elements":[17389256948100453491,7591223612961268224,4724295791254875224,3955626928954446331,14875007657855407803,12478676310882237285,16279366071610453212,14695470417276404669,11813766305401512186,4373048836864412130,13007662424196245259,17769829720627124438,5676536800689110843,1651981345479425468,11163482391568421743,15806874114343563629,14414961059416602983,9809390565311114602,5318290507789990274,11984953917225379091,4783657943633277580,6019666637395764353,10785296468379988227,2803711256651983578,952305968306652050,1361769468436717248,4133259922448203177,7556176334120630993,15634150363229414682,4973961454454276197,1075894918003449699,16522387765331609732,189619007506318343,11397415602895511327,14577442216824542779,14200505306670789953,2604904461594308414,15134160354341579908,5183667190669567593,4562236843873083132,5811673139210341763,17772027687702371266,13229847439682322772,15554840592941124623,7831273597132061724,12661333554003514031,1744513120393324571,1249346110440030183,16275015702989740739,145149371936757200,1734814177864987696,11445651526548063212,6092731626224834962,15763844271767157091,14487432999729091528,13258992316802191680,16265869290701317255,16903876714966650086,13251333276254265106,11844302181382603020,12938646321292722164],"proof":[[1387728125076617538,1190859897473375019,9053843648002669140,1551319970478979938],[15954570868028986892,4017157308350626878,14126612211214499751,910174763948266908],[16978798298582695850,2879619463617264000,18105543206011945147,2716741904759988170],[442682081711520156,17505614610865454191,9452502570681061452,2648412471536133924],[17164820226748440865,6515232562641208084,14460380967051750121,113204938496878569],[2066401387514853278,3628979646875212743,2172449499360072236,647868892788379991],[442915513697819076,9033876494128225944,1750960690947286142,1588247936299934824],[141469045047550353,17856493507002094674,12291298831670844649,2917433460901041480],[16922325639024922490,12572318564549052600,6906991424794365574,245912644336985432],[5002419135473748684,2543078721467763780,6432413338614147573,747198837494799480],[10199172819188065724,4805418889441920525,7361655050538375997,2555885512702447895],[5944268534244072637,17509291754432751515,4135650977453405129,2907349052238253570],[10215260393543767826,9751391172593344006,13862000312171403022,2102188527394459267]]},"fri_queries":[{"leaf_elements":[15065703246170884804,7335346868172689456,1831839049090791387,5251834376072937361,655291798376380065,5086449075977748273,4548615260576844858,7278416464311346906,13402709827925034563,13649222018488618921,10360971204569009273,17076923465640383486,2612407008247234939,9321605681614455936,9468844879036973983,4245128543494738886],"proof":[[2300680059936476942,11782490105422725544,1154351419247709741,301645231194439536],[14366124617475277537,16458251037123396545,13436863075433132196,797971006266279003],[2506331248385366848,12254708899711747696,270758481319622439,968063938183364854],[6251461406607152087,66828212868993217,17870097918490666732,2097639554382283428],[1634950866521908515,9246371555872883672,8778106318657957476,1658023683722167021],[16771384920563478120,15376903946411295889,12207601135978666570,2299077782791686336],[847109726119985235,3275712338532899995,1039028769337242789,1639376410719245706],[13852531061222225232,14461508082217658630,1147267112765808011,3261791193482669828],[12728736652339829482,3763524200232196691,5497754700624594402,1717602228308441003],[2727149282747321928,10891637232743280698,12913837565521066440,2576402083512426196]]},{"leaf_elements":[14474075653442370873,598395732841250038,4164112465214298621,1665252630203358552,11421629661933145704,3393603602471152313,7637582412252389822,6885787785673831463,14608738285160576125,7807403729377733955,14903910248307605314,15924521827940352805,1929522310048300827,7020273707587468839,13961372690713404016,13482198883358363730],"proof":[[10432564685302744909,9479623514825725608,5654767039973423037,3440466730823134932],[4214351983741363784,10754989992039745501,4550798083872960164,594129952684281074],[6384223506224882999,16409080186695740472,12910110321082576363,3018028220792696695],[5707849192065076919,6778676395563542455,18133782838356795287,1557824070995895996],[11863858781830755159,8505276823327594098,9537695097564425097,1059886170988714660],[8479843093041232804,10838606492268780139,6179794554925052650,2794245564815508948],[3303603528948845539,3326255857540982732,3658681733470339555,1510526829171137553]]},{"leaf_elements":[5333191081715097590,5862992474815932981,14306701148266211696,17965966645393158373,1093299634746349569,11756086375131609043,6842976639385660921,42031853203513331,12096597081821512935,3485800860296058590,14005810957307971550,17645684878237869730,16825334139361091846,12123996486206508675,12154673618882333493,9533986749771702421],"proof":[[2474515105168655665,16746698621835186269,6674933517135459510,2279663511592811040],[11399712119321032488,14188219063488204416,12055815732605971814,325940372394151411],[17822320780112967606,11929122230921897343,15027943035283827874,839309485425582314],[2675790080703259223,11672018712848555413,17368983387124538362,719346710673973172]]},{"leaf_elements":[2269900810174600336,5098110879737557033,8299216941866001348,3515417207436792722,12478804426321499801,343038200534073827,15203631289634068494,12313336925559358131,6203791195205671288,13398748586504670354,8935303490405486729,2665264765541986722,17919352332936791133,2982639848891027123,11502625188948097420,16989819816840410281],"proof":[[6212898492623545222,5273054318572493999,18120166942467567840,1600672264499078704]]},{"leaf_elements":[4501127538857023790,3168202938356671861,488429852234980958,10426529919460171421],"proof":[]}]},{"witness_query":{"leaf_elements":[8610285328607253574,7791379857733166058,12453104077142581735,11402713879570643943,5060237385622322103,11747820210067130336,2592825348543218575,9677876490507248497,17041592038750195122,17178022303234746962,4585518903289889819,4514082103069463382,4386963282860614329,2566897837873771540,1195935013212034678,3061623553280797800,1310981346670642134,7724486955896505363,14385485159908728541,11458656715184112525,9274209916765896639,1960815766324422261,5010847974880972261,15037130342969737767,16779546317402968238,6842108135395441163,13964651877336301025,17133854405443323755,2400083064357106830,14732319289389424594,15912427821723078639,10585688679173539595,10228044350627016786,13999968096877603015,7414821878158919,2361734809151610874,14122175136230185203,18310538850954231060,4527436213405510990,6475435421215956843,3857594478575154359,906577876155085463,7178937540471528163,11969032578984813833,1031181777459700535,3528893098842011396,7057391010168992935,6677751402269642469,10471734909965311161,5615434738475069364,1102122195849530650,13732295629855616288,8006506808787349757,10283536900787889714,14894009314715334194,10840647869920518732,4605684219318789512,13810311419570705978,6163103491533029361,15392285766472564308,5941781696290611420,11756205851660321492,1085751294743648819,5575227067895305753,7197000368648578751,4396225425044533597,6929795567626088434,17412794275466404675,12188241838209451501,5226261219458716331,18330305057379223939,13854621505555697558,2159040259620128222,7317961741860782915,4520391431423322517,7160839567711830650,11737109682585461744,721978885326059655,16339779132064876744,7921667785475359382,1775659035479689894,4364099514722845303,7376744814511429803,15291902084067305131,8592492146996719832,16831026020004168311,4607510055467338406,5438886631401509663,8755885391854543784,7967587934872343351,11794857356046251924,3494295827695701060,10764642620395042391,468267787630117925,1109350458024174988,6083912026912643799,6208515254491098342,4613154800772136750,12954555890043416272,4884442243532128014,9151029980067926319,2633194189553715310,10797344358821358416,18266103313235009937,5996817293454567617,3602062263178300257,12074185998809742762,7098838180889089558,12883614050792667263,10305606106452396040,18012334045672587806,14254175855853330130,3878090267354103885,14260269754502006400,4686926933512845391,2155581585055876209,18160209245273088175,15525398968682419340,1744996462945127197,9905028729680958647,10405449834137390920,5281393873440152981,11867541206524571059,10050230467097846443,9591048527900745469,8683996194713836095,9688678820138719434,11293073728471645361,508585560764643214,1710999461280833210,10423489967932663215],"proof":[[18401581898673895424,1226398105242013685,4689844469790284757,1114606907966473379],[109117488067291090,14021681160582443660,9412797830776936687,943419182115742032],[3050150955070201988,1239892501353772569,4560376464015080949,1597868320707738950],[470723495945712855,5563904883747325981,7186238055808465247,229668183601677857],[11477903900512529505,16993098961729885104,11660437852921084664,1650903645273964337],[13873587110734551116,7443962674512703445,17351766882808946152,2875230231238044601],[10216859080848041752,14454745942699341070,8614602800848552693,1548891266799822372],[3500849281299165418,6941691944761507452,47693698257386186,696483923054798489],[2185101081603933938,2771783713475838348,10745203506244860706,971659783441928492],[9615776086258195605,10386827319165379920,10901404599849144334,1895109056165437778],[1090252639095477414,1003051767983179297,13656174796442251829,2759704369646211388],[17853319454102426703,11458132703626502620,15417113988119134628,674570626102661541],[10228429935734291152,15070756974979336511,15218154065077763931,1832421964913171749]]},"stage_2_query":{"leaf_elements":[1867424706360717905,5682061242219600276,7673141830055733861,4511539846161651453,3881525294216216364,16420524667440769812,9402403931888824310,9594132393020690671,10994039511626395924,16911670722373710344,4129181608417914021,13278986177943473628,5343020421992006842,5478596153069421605],"proof":[[7322930213580668141,18368650568031969971,5368659939755253688,3464527922449978806],[324292203918781471,375243322000580251,18400607892257346807,3087105732662281791],[2679589523134636742,2940422501072288043,11177925057916618201,2112868479469919987],[15388608198419661565,9558127613825629680,6291981825253672036,815834431788277019],[11476272057010363626,10972492643024966456,10691460689386717998,2657494307791409416],[17421856178437171819,17898950181826328273,11897493469789889100,703476897942718252],[15457258364198194841,4704728500804905293,5214016524785381691,804831232053095923],[18044950649686873743,3321757785888183781,3483702833637295805,189464484484133524],[3001093071035062995,5663836323763648650,6274133479706714052,2118167646640707321],[4566104170909461241,12056926391003555204,17013851159357218285,1582466914088153643],[5452128596668918044,6401345446059671116,1782610501691916069,611921027967465411],[4635452191223119194,2876417225665026593,10993606036791249716,3465884504674745958],[2751258051649958256,17916243703110554662,13375786371768332344,179905637827751778]]},"quotient_query":{"leaf_elements":[15615588344083287190,16796317693449903348,6102290737929841067,6307820430784578756,450611215077128730,14826847973514704500,9751193931339087277,5753576187116551743,12676480951305201830,11201087536641486913,12671894409158237745,1465887441338105536,18214172029470683043,15286915677599157529,2750651349067456162,348457781617119042],"proof":[[7342945255021193946,1139786280811993453,14075856851976264873,3027559334696248932],[7041859463341951377,12096010614076618516,7772502755750622456,3093018092468074734],[580043164472179462,12056113500498907219,17603327786356642608,3357936921320286041],[12949720878659344257,831935645418157132,4134534394619654257,490966205182968343],[12113298566052520311,8046410200792693648,2202429080140567004,2280902032501509907],[7879512387052175752,15133860111821069956,7637270840325588289,1577124415176991832],[12203521058141372556,8131063003268509891,6876640073501825989,1493606097866469768],[9245009466764865332,5480931177983583843,12606214966871673374,1541161334124387818],[18094648605715717241,10692740936596217286,9430822955476612071,1887821403606473476],[16485740601009555303,9736363165332285607,921253607025220285,2768452811021740926],[790551840159566589,13317763970215060465,10609960422383475796,3443614640168868803],[16565671729463939150,7300669218253294122,5820718040964588145,3134965001892430495],[12356171133472036182,3715560352098057395,10451102580509047715,2369959934291544747]]},"setup_query":{"leaf_elements":[2848134189451891680,544061351400086380,13647988743949318474,53654116091165420,8706094359192357565,17332286212664259035,5178138718686486502,8396124424563716020,5510868944576061933,16218927819473249520,10222346276657499598,12595280672643324200,1352985635889308210,14629567437419043744,7648106428804425704,8222651034733473766,16487617569269602734,6451533159730923185,365613358622512233,10711234775354941910,10786483239765324030,15072114047523718712,11153871662745547796,4117041262158953925,15959198533773423145,8662729229215861897,969369936388313507,15959601128990314838,14009480834220687537,1605451217886653856,1702544154878639852,17338794660152172425,17741487843794789978,16698957249216313327,1604481535964998597,9579797374601794591,9592895140131484631,10070872876441943925,724650511766861346,4804517361134111489,13297191197863922728,16444011829198296401,7071680759622669112,5672289198106271988,16824173561869459098,10133875311891770740,15611214405094656843,7379134907831996589,14190764910575329006,3328062257825680215,17102011355139116696,2941152299716972709,15253357520212365097,7955617386694819053,11570873856565493484,4441195258748891565,17767099258020374055,4926926607922399088,7886086269757694883,12031123121234452935,10938648824849780214],"proof":[[14620714357541866680,8861706759922069346,9550674045938788815,1816076895902207720],[13959168353658879635,5797380330107744757,6697854506200887541,2672806629029479223],[15626697459810272172,7970000333166443720,15356550203317906674,30879803164078794],[14217369077936400508,5478097121011199192,15209669965024749897,414660783810020699],[9378580867441396271,3165883213271787335,7182371648480557274,87046952434953627],[16582252399215696460,18141025296594746117,13396873937471637512,3484517852267337915],[3604044547697056802,3041170857691385924,10149995936351479232,1205568546781345441],[10671865986018617827,10590153108070152379,12023835823543779758,175773807165217285],[16758538404119302567,16345913357169147203,8875869738159765651,568307702590429675],[2327900155781653234,9479620111936595977,17991344298045740334,770148065054875054],[5797706559201630105,9961922403899465126,4579229215203798650,533441581801934177],[8114630110093767876,16550415767052044878,5789539078719692602,2820570820614345953],[7450018982181130668,12654494844657139995,4699273518936840679,2505102648423673327]]},"fri_queries":[{"leaf_elements":[8742464067679632347,14771910677779787660,13776711629779140907,14019916943470806071,7353802907458225095,14287148280871057153,5078080799969238998,16037148258158667679,10037602279042072285,15972179290651476224,12504986374309057500,7961367879982300649,13136837929042442526,14792466858556408152,13450483981549815374,13506730659384405711],"proof":[[5778877994985013179,18166569078545865182,17908051065884331624,810455143717822441],[9600776804582097856,3402933279780912990,8914530534435616726,1084470842842260592],[11596456325489060740,14435203956938690713,6800551900832382792,2988970160067038379],[5241854739735688769,17319511734875303445,6708202751788213690,1772295084206962326],[4569148466661232673,11218924122431498371,5402640565911078117,15154034876321500],[3275106500851248644,13581349233920770678,14654487106743830301,3071267940617986805],[14233632040557965637,8018066555756846088,17676169116513302888,1273460375195879282],[1424928588733702440,17641328804410442492,16195880388039101808,1938524304438241557],[6194151911933769572,8316546869983692090,17095017662834920753,251028876106012784],[11836481767288568977,12693209842729345382,15494293070777243110,2609142590190361171]]},{"leaf_elements":[6882062710363346253,10574065909906642734,13913898593141861035,1935084972466366460,5237793653160926477,17597786303665312841,1856832122359542702,16758188396222453338,17485031816965052578,14089669378529872117,3911202818402368502,12607889996757476877,13130296505620721918,10254033178209694290,18285650537489226822,17077861312187033890],"proof":[[15998422006872519635,8536287589095938954,11652577501153740672,2302946207278524738],[12705212250886568389,14385136841260239320,7425371033877862375,727532234031314098],[4356984349895837669,5253285408950714538,6895324628901688843,462735129328325435],[8975909069237241959,1665984544405572272,4213896314206141202,37268232745936987],[7001584551067187303,13355190561100452279,1302288186223270773,1236566086277083121],[5494814019481716921,18311101359736832981,13570339656516216338,1358630459201341816],[18221825548504215278,371654840480040303,14092719419885102622,220673262799455597]]},{"leaf_elements":[8265461790474828573,8291768010594166938,5163248426449179188,5784572887990822866,8521941588987919204,16266490867852204450,14358675780239904371,7819649987222633316,6049656362629608354,1786060624767365251,14098607384345449992,3062422698985319165,2509588118674979811,996284956854495390,17962858890336240332,847586205464793878],"proof":[[8061702418792495453,15751574657855257614,11910520168733886864,302883432085742265],[15551612106057279797,7080125319648695578,18211325055795745361,2155849640567126663],[9253287968541001853,15965406532159194935,2926908177009333941,289682274534081662],[14060609606501320317,14199662051727725133,14045188731999541466,360178435938369202]]},{"leaf_elements":[5617743489965329866,9656866167906423923,12342513696506161207,18445839140823577509,17173266430686786372,9885785082442603736,9640565192041168087,8859499278609365175,1962944870928990236,3217289664835128148,18150089437950339150,14748222972309771547,6995749073399235010,6830073760022153520,8684292857175602258,18324510307768863292],"proof":[[10423969435245672408,18154964293000735088,16236043164000731250,396436116672654202]]},{"leaf_elements":[18196018707140134098,3942247739030689718,1556687182756891542,8508669979898744338],"proof":[]}]},{"witness_query":{"leaf_elements":[11790877970570982776,446118578940642068,7598574781699441328,16494445964991915568,6831073959280401314,15437285794828460730,4895754765647168528,16787546768143651811,13368638430531460149,10487285764685131927,495632752889250898,6143567446700142499,11870701633948494738,16845555970058859994,16505293721492803663,13769097844820560459,18335269800533688379,11843381843877727400,7285026454325549384,5895190863314509654,11123675090418426562,3717109260493649839,5251912236300798674,6568333562852270115,13941687828546019641,12202397325657549169,13963240356634157388,1193858447443436629,15240879441157716043,12941053982883677122,1559332358130851735,11280286731904190348,2435160256089295851,3112215220949038181,11691132879878438313,283336714478844656,17344227182424967809,12669242043946015650,11779558771761835726,15704871524487028528,16924167386861549585,12672309709325643177,1798277939911919314,17765111173741458605,9481580954657318344,5654619776148281765,5573110350560276020,10752694623942364918,14515840869059303915,15299591761409881003,7558957815094801415,10746820830451228772,16149487606175843364,13204906968845140347,3931929258358168531,17513883162223232553,1815318811063330037,17427427211240249652,11271686862876326243,9425947854698129642,15449823963511971236,844535885668220036,8350393830301476166,13618865274390019010,1019112540422126272,2585821683188648834,4697638502480183955,14066433315686052684,7664695672783614807,1042224611502759795,16259560442276657950,11399011085046758969,11673149861242266457,16535402558070289043,13156274900535632597,1387195624202281265,4585628245003280150,5693587042134438781,3186361777389795835,14497266505277829487,11982699835368387802,4287575877166809297,8523212358187222084,5355137747464147652,10086209726535237175,8003728341556266272,11443032556487058964,273041288885384926,14696956837012550171,13708507895558861786,9945752416157612317,16385749149867878210,7522446956350989964,6309137675108017915,9979384065145430557,11796971435574918741,5388160898365878358,4662745944550316164,414831201355798905,3650249907970287353,1310071517150423101,12699068146114809554,15351296198779164645,17181970723824824176,16771686421084859351,4232798147097204162,17752111804545215001,8782406267787260947,14046546646641913597,17546623219962751901,4131163571330541517,1154645209328833102,4546788931600607947,4897588040928993267,17178404490809993976,14555302116626665888,785932676322620453,2074453054498582016,13603953172755209734,2115317466009175698,5240656985899753191,11205998449770467287,7535969611622717930,7750419395934444189,2214986586166642115,5578748630784194567,6961630770405435351,2831455570771506524,15757877092316278101,788655629540452460,14238807253051520904],"proof":[[8711249672568846568,524314870938414975,18225953534368370873,1124264731323639706],[4834811119027002708,17147217889415795628,10080706533179720332,307177063010256292],[1375284023154397388,4438860254422441142,13530897572629080328,1843087524730348301],[12331034257898541660,17231856861615506495,17922944953074752060,424898962377309132],[958147301098219888,7947782561131806435,13176708981236436640,2507847468689871721],[7769442315375720830,9877130110921618699,12783690505081938028,3466690137585386178],[8063343791416675091,9896213748359294893,9218261254177174274,1022601071758402620],[12970183801416066267,4052866482897735098,2289489887479283659,3001166666979493206],[11927768655091281440,8249593734582766346,14736021276598368765,2078087719271732938],[14737585616223778032,13745076075830248382,5001623363337376253,2508105059721915848],[9388057809714662536,6881594517039155908,9621280000059624914,3408116750480582021],[5337386146685324083,1759315120300051303,1014203858517702445,2373938672992607667],[10760418131477431642,14820657774701628297,11628914349052808993,2039254384422831665]]},"stage_2_query":{"leaf_elements":[76479843558730908,15948665549979019436,16452339326405802824,11353762651443380032,13694401565679392216,16273478711285541202,119695287512466366,13360036174257544279,3728658069409619724,17551530901902956592,3405363152000049665,1573869791847933892,8251793928577293182,4235084477760711785],"proof":[[8537921174549306134,10536002487736146392,17594708466806428771,1347040021811013878],[3948451454681361745,10738016679780697436,11776516062543763138,1375347522360478063],[5919629436554103797,4787214287188961692,6384397247730973448,2497425831303705760],[2453041564514341697,17309961226127732194,5927898551217954623,2683529132616504219],[11409785013320691863,13762282616345878827,17621538097780206764,823901875159432678],[16886603214478800454,13133362174909382230,13050108577974831521,3052120455135280210],[4050893927706876187,7493887753736942725,9102089217946821295,216756387800806533],[14479399800111271610,3181051412852650574,11783362378526863809,62539514393001144],[8374300493535919988,6538032286451573885,13362003286555693148,528157284078584224],[17537518918145712982,702811882081457905,15662789026126831039,3481405174646986941],[2222405210836799482,6953798830797038681,13472779768468229362,2244017304401157106],[10946443397241484112,7632626395748461425,2953818670712640602,466835577787625070],[10265763405734876041,5280836174585384744,1332105447072495082,1288183057809366478]]},"quotient_query":{"leaf_elements":[15443706856647175659,17694554960446761619,5426685037518182975,9920130029549948104,13425556593253451882,3438361957633228080,14992857847761872460,5806041171686205714,2507612947707434609,8940185103830806058,18125041200169214109,11215366831481019639,8942285623023894914,6611842996574782583,4360174868174208728,1111546199392114184],"proof":[[4384047458936117077,17121644244832218484,2139382223914461182,2562009783261654066],[7061287658741143861,13457237242172175799,18066215834575696011,2737628040583729564],[15173987763831097582,11656369227486022462,219782520668409707,954486743901570983],[11459028795883422023,14502995155698471092,11489003741607576718,1393313131725139226],[14967392653992667260,1568364930200821911,13126997927558969927,188653336775264929],[11846710256606390424,2440648526483677111,14297586738865153398,2631384492257802138],[6365310133501964925,17296767537667637361,7643279075791143603,3173205814973558537],[7103900781068643148,15683428814733219694,657103452600693962,2082117679616968486],[443110545499061246,3760793136594538564,17491704924899846387,1148843959368061390],[15882972925655843831,13958086957113699452,14932522488816505482,3089030408803848823],[10676253219800793360,3065231490902574033,9625064857038164035,3481474067564603472],[14698990891311628009,15892561105547541385,6630210176285877232,628055738420819513],[3336220069100085124,5759271110398045898,13618835346520552360,87853750978578886]]},"setup_query":{"leaf_elements":[13149909727829997808,6437071800898262793,10854087953726004127,12278640222807799479,14252113537362000273,9163940860663445924,15580801852309155353,1711886502253476392,5023792508452674002,6656119840958199967,3068116231010727362,8082019069024062532,13291641011516333237,2104835814461952296,732061843083932463,12511723534388329876,1105741062856358558,9531030606009272423,12884602853675018102,1938834351547025178,7452806169206311585,5231833510902773738,9165482593445571642,17740749911815473678,6527528036622519420,718170579177504698,5157465628635407170,8617159829964415481,17129250811023799074,7674438927344478872,6844882349037890661,12100562350406515605,3644447389876950069,4395742937266939817,2468620919622018429,10638237800440336038,5199554691687979347,11100183826855229855,1326891253974406359,11916987705318674480,9233408572286650220,8085287030476045945,4565935899581742337,17838442545325331399,14211995186192251620,2134943077505289180,15205668265311525288,18393061424862034176,4259499182376672148,14056598873791839249,7492295652449009235,11310779054183705628,10534248697528753399,8274823857798004265,13680233468940803487,6020330193825310626,16557089879236549494,1245429313114556773,7689570373937120056,2095415063085648441,14004750198744597003],"proof":[[3823854021077864609,815682609763620989,12757332698964756567,673821804796226635],[17437765792581124996,14954719964817750028,16127689030167455245,2653179804235438231],[13486952798061442993,2574058697522954559,2910611195497651673,1815184124279457997],[2870496279627200445,6561962467028313660,6134338239894263395,3115234520901725338],[1552509017239695124,598535045262107569,13619471751392840145,1858852389603744799],[16400778237661179355,6372237267536979327,10645121446796989608,3389674511271744832],[17613810564960793358,18072324457812902327,1335690039952108224,2216472110888133165],[17622220639303238778,14053507404653918414,2463913609541017966,1660495836798216476],[12951278294474316175,14511617968148919288,7154033991131353853,156349520852303076],[1566260656853570532,7030921666368450963,6968672400945466641,2459137408761903881],[3204993322470177833,6051698634689342142,14629886291271439938,1970813260747825769],[8634214520312302704,5788473018517600736,3895694945095744202,1852559750666780338],[17874738227292005179,6326465745494053,13494069438792348789,1192845911089305290]]},"fri_queries":[{"leaf_elements":[9295085784596081505,10402940307688420550,15080197055319258048,8189961571947406441,4917445186588425698,14453743338772394485,1130096060430895221,16223852860480741141,10872081667610618389,7563815780136999678,11729996275012841128,10572838343824786260,14129909607324926441,2122505655340722062,5892267779558156658,16625718047678195200],"proof":[[9641800901229274191,5349610189424995214,3583328629309906692,632140557190877872],[12709445359992635099,13916319321141541086,10204102099913904398,612258835466128027],[1142738099851438651,11442849238531782283,18128806351858754173,1244496461375598046],[7988184098359258404,8271330541446765801,12003257862494911486,2584041657848116744],[17826866681432970942,5595476787484481435,6476394214190735535,2880246277819748590],[1508445003923869709,6327538259730918405,15637634641763123247,2318678906210572688],[17590235892659829324,16869889631158424031,15455570787995697822,3110593907418655773],[15278104253822765377,444973421875180932,6867578795190594467,1889369406362716708],[8736545542981214870,18091865623238342905,16938045962214512397,1619771569222218445],[4755821502693131307,9632672734832196477,6831801818195575559,1211503718015705569]]},{"leaf_elements":[14462140882930731350,5593203826115978697,3937376592042192662,5361701539086749521,9917085288490769314,4405939402406456750,4651110537271984645,13180200428696855663,4911939045641933357,7260386287627589903,12057211650853579134,5322955248296944873,9225609860474997040,3708526688374302390,4992862812601930088,1273309260761500508],"proof":[[7972059737774811793,18011826682944938851,13743495507530254170,1333046668988461661],[11656903994129005578,13129234140725558120,14160630890180598101,59844284695602384],[14458336213137122817,11945900117761878117,11682932433367515921,3168893577757610199],[17783797389034557129,11714655599879677073,2210704385848090651,2129281144959497732],[12631542405088319149,8508646081898105547,12611729228031276884,1437295729419850320],[17748107662216378529,3745547155845768398,10781438857281393381,2132537212408657619],[4968579060289205032,15025470103249155658,4016020820835814409,676707436625885313]]},{"leaf_elements":[8955683304045896015,7567813712183879959,15756119619072957773,9917402590863726063,3894130955380148080,7652631671131667035,5307299545898405431,3630850291864102827,17969901419634817722,11438035810891577182,11443097954401481629,7097692750796647972,1553797559833334845,1338605641705226768,4702874296396786784,2072948608115309792],"proof":[[11942064506510791892,3769888679790809796,1901529127762064629,445717851217948732],[6330150321326104935,115391163174278785,12091614213860527036,74519276213109023],[16787357039742660708,15074718737644074307,7357274406577523229,2904651230561894869],[6775086337445118645,3836725614252760951,1244274972769235222,3458783429667173983]]},{"leaf_elements":[16760476579281369555,11684430973873978645,3628257208263626274,13264191245930967560,16805239192496903355,15197924325062831366,2446532897786143650,2265791655783868310,12694463806107320464,16750582611044430566,7379235119149631963,8016374353919518273,11399838020256932524,8401772713760710572,16660944741874745508,2593524144018731665],"proof":[[1408739999051503414,17928989256333671698,4393560887102948271,358038974748859422]]},{"leaf_elements":[15915622550061201680,4536541224237163888,16120598048347926193,2661082248244309055],"proof":[]}]},{"witness_query":{"leaf_elements":[494586387938845049,12965187690162682467,10891979742686861210,2592909768672742937,11235383126208540807,16442023761858403272,7639586301948251783,7951927322697264753,205826553866676563,9753748732600908382,4499478016478759708,3140109597659635151,2406084849010616776,5288601726377997543,13387564577405584033,14780056563138304150,7542227678128823477,8956759934481152949,15534565320681632388,815180232741867327,5990093741516451642,10847502871609475449,11340490545237678815,3503903110886103237,18326189305519880390,2515578336719658165,14820599151837004735,9669415519210697135,17931412632322434176,5281030167664339037,9376311069065342087,15938474160902112929,9882606680929800928,18043417556831554547,15509317776498040026,4863539730680482772,1627911548931729718,5017869250298218832,16653888533979409856,10015665985761253674,4460335737870121279,5507538080749503074,6686919026997359474,17313069942298748435,13532703551230364969,14912399559888829478,15543531445891018340,6188739397872695373,12428791603691633378,2522920874805148015,7935833024753971828,5345722782224645536,16089743405079444285,18318520546727697973,12733948203413938387,3524652139878440060,6563641269243810519,7442950269621997841,8150075893631341289,5083329233787555797,3139632146901262154,16144807467294504492,12864827147710469422,2538114101788582963,17187126257100341941,5982126082546629974,3569794539435574480,14845499217056521717,17398379253751967928,9585986761983453133,10448296356210724850,5188661246447178826,12209186293197314155,15656944740038132248,2867198867899254057,7585370725293537816,14230132653560319949,183342944906280585,8543881147869504811,4357767658493083007,864954257735935765,7220207119138205821,17822532598263318858,12694663568191570868,1075164554804012425,11037466889743387938,6295205804960720964,11764652273575068642,2390107952792184595,16877285714915705249,10963270683049111143,682710945689490004,713088695459838844,16578545635967992944,1236041391026007675,3459308318216890396,13696713138403312959,6280576506594844523,1424952151217903516,14761864330299525354,6021134953129177859,3303470999462554412,18056416780914521921,3385342438578276207,9827524473016340437,13260674901580200499,13385105512985411034,747189697145506748,15950955641943466846,10820124901554567348,7020993527588889544,1141570016575131104,2404494291320857906,17213632926113864704,14401988899409207906,2940306523249168688,1312752675048034508,15719144682688386159,8487205883685225379,1411094979181220687,17989260482900525264,6958200999062228863,2422001846532202951,3611626094335406147,5653529614290834228,14452978858324074111,11529660172070479488,8089659350794919158,17741925354518236232,701488149613117571,18252811675660071450],"proof":[[10696335801996372090,3462564433749579572,1483846664780442861,2963851280313040019],[1020267969615877062,9153700049997494634,7669979424301842780,2334941140114421785],[8969206300841449811,17584493604404983555,6055154950922203150,2893158686130790318],[16898675629602792203,5070802332578261001,13583374087271224955,2348950400177534673],[14433752388927661832,9383686529967163680,6784822415174396157,151951163773132364],[18212600953966870983,7625974820594351202,7135303582853776191,1840565515337498718],[5830125177475051803,702459762299151443,9630598523704232034,2679768005929850218],[2472023930679992251,18356608143881405046,4998780905377858911,1960456933432754825],[13978070535199150038,14475794894689565606,1284025774645954753,862890407587997772],[2497971760758312965,6941215204086950283,2542074989584813641,2224767224879212028],[9529653253922139009,5282909414936017816,6161231114367956174,899405009548116716],[9653994095741149648,6693767989202592068,12384719871825976520,1147806512135128414],[14367620299360517077,3486062918649683097,758936314403206639,1603949708714258502]]},"stage_2_query":{"leaf_elements":[11878684084962578376,4494385637174449873,4500936755451861975,3771948158363767797,17514945497790797854,15864896600997915294,9909201918061353784,18339160192527316343,16788710734065305581,2929868767828431289,4615532773735224296,18440031896085555284,15238124368229485122,15929435007693678222],"proof":[[9125778794454968774,3363003551316693607,15699345391584716828,1580421066866596968],[3583943104563717273,16346314436569001618,2770676547666066146,1233891033522471399],[17224435294655100252,18105779272742696483,15357704327161689817,367602802879093960],[15708094351084264571,12581746329043324419,5642999239911811039,55875057132468824],[930416847968676604,12106277686111108202,1299476144800702933,2859743260175195279],[4932585665350856660,8697698342793775368,10733302372073032955,3111554631839267251],[2103437357965721045,13877219266047975618,7791221423714037435,3037054352082538243],[109797339539347162,16317440720675349130,10514633912347036535,2635985395893187308],[13583244774422467326,16921440355930024926,552337557336598830,2637943588966865817],[1770352352544555214,11503347561982608092,4967334841455303620,1881066244197976384],[5830900046758375023,15604014666533198478,3708889240989816115,577453142693312212],[11586254663808444089,9649978829832228512,2456767594798906555,2922524290208600819],[9302781254238343662,6119432163943488281,15090348966859265029,530198869118147718]]},"quotient_query":{"leaf_elements":[6288864474156372661,17388641728157366436,1180701560675208900,11129139339519688730,15533943338060530058,1693763613684436777,9732260581979157822,18345881987153956135,11250323803839765043,3716551407926387316,18096569489995707896,7254733425702238458,10163512820848136084,14085860656528137086,16805068835122315196,11501300114051474512],"proof":[[3129200693084316746,9622740485476669914,13901630172841147959,2159684406808843860],[11074330326690064671,138146702920897395,7600866575468348369,2867055643309065219],[4887917946238932935,14557010846191481632,11607871067200327883,601292462299709036],[7051061243110512954,10083073046749291630,5473860099177843102,2799545839609954940],[11865923552134860458,8806958037470509095,16969655588670023762,1433556817563517999],[9203603854912061591,15710110411660610090,10452606113140824443,1420419383035754273],[6613868067163403760,585638605942311699,13339273571915463931,1806584203605759936],[101049161899328591,12306387551890381693,8757678693980921435,1217393635480002732],[18121349141535740371,6004176516485425306,1045076458799444720,2500910918030619625],[2228005610798993496,2004724919195437665,14380929959310661678,1689511098488711356],[3567423335356629639,4411325966704188513,4268360902456184506,478658816986403953],[9173486775257139146,10137054949619224047,13924502850789890943,2822498744591213857],[8815952717605006386,4526522413909831776,14701097622325747530,3485165681977640036]]},"setup_query":{"leaf_elements":[8385294869215906766,17917059330473202507,8600719207564478363,10076751219483940244,7327124785209023400,6877190184759453024,12133644788045738970,3177353668896199508,3250870610147229748,8082813536684055680,15378195082822140500,5076593909565070070,1796385137559409576,3672568812930506029,7241780534820679428,14722364220538162190,15542486647199768484,6257468906808178508,1021137440091553157,8874706302715087246,5335688239288648920,13102156342757540334,3894038144518712994,12445973771220514531,4689667414611299214,140354087578985191,16560159381448102226,8996755460599764322,4879498256458930921,11328724145508712563,2549412799628819624,7225586379434251681,15395349397336551765,13120100832500161655,10996651387022898149,487919415341007986,16712238220381947688,2949887285747412001,17435865870562093626,7928654791773960523,18277271362340044610,9603972327759192469,10616277657290668472,1878538640378929897,16757741060664548422,15991920781284594650,12277868667474397116,15853114295607152652,8827310599578740315,13258017316581220167,2530625412086275398,13493092905535887095,5709926064707014927,16597252650045743644,16753262080472051114,2027296429085459214,14234358879686968828,8071595498954207742,8748505570056607032,7830449377802491240,9195671372292857753],"proof":[[3852424932878294628,12640639232106889221,18428617351790942387,3330789616520107876],[11411778296490402724,1110650519322699744,7090864081240560183,1351569726147275597],[6857595339561500017,16781797754109457370,12399435135108266678,958269211513464326],[1461983834848139841,16593646471833302916,3426608616673136236,1859345630495628815],[10082707359174233491,12632527343413300167,3698560122656640325,791860235376707166],[5884133165775465152,18446432436308025741,11956801205287910311,468347193823575352],[11302551070342626078,5001260995988035792,1147700082967868382,3334425487210123328],[7966527370708416371,4528879710987805557,10961704621745180954,2623170439317103934],[9178563773158400734,5740593142323987753,12116820982122914009,597236797772275320],[9425367909661232718,16212916946172534455,11653542791948258347,1200020914090831840],[8897054833573090181,1053001915298800933,5632870258241756242,526235879397439495],[15200607824454873355,11040607145831835802,4383506428310207721,2767645816861274925],[15649328145457671106,549776313160692971,9928450923310963291,2751020716435042226]]},"fri_queries":[{"leaf_elements":[18361425404206606645,11561688235123884249,2044416332881486430,15545593013424070119,17741080039513186161,1145071672423310794,2946412912065580208,16424883512287660982,1343260255814495436,9279357794156720724,5773106712079305751,4479018502258749210,4235804491318106169,11416225051247409118,6272612284151212737,17476158466006824539],"proof":[[12762171578574015524,15777569029816468982,4355565471799723310,767090474218800249],[2948308959475875933,12826951153526516932,18159004496052064260,2225954715612160258],[17543440257186546684,2266462965129150073,7015209755446153191,2349762977204759064],[5392851409279150833,16490295524735157133,13558873771750992404,2903724179016134776],[12416461367675387284,17913305087949531575,5883171869909753129,2394424152843621553],[7696014833100252906,13602634672587788178,17449149766279808469,3378458341309667374],[295476054630260715,2630830757687727646,13488267475738836353,1226401965370485671],[4703718381639210305,12636191310739263230,3062071949666723777,3154517507701705152],[7385017009064519880,2637096054591857111,11922713896890014705,3084456035366891821],[18274227798351134084,14614972872318737132,13670777970563782359,2498334094624877115]]},{"leaf_elements":[2016743205984233414,9236441645675996983,8383034807154644050,1834149854278443701,942124024372044826,6215031654877250687,17395775811001977578,15877458443872988025,12590604862252311989,6694665089655356379,12379012038717156954,7091586019465688057,1472792763016645604,5120886969346147181,11001269858194436445,2955211671496724666],"proof":[[14977983449122652584,4448247215422719819,14919147253431145712,1824406463368600988],[8352427788170322625,12047247660064308117,15269712096600079817,3451515266180398094],[11830410231914324119,9924355807996254172,10267226518896677821,972089213729951395],[4275122454678480340,1662959997101223502,14781032076294262171,2202924470800566547],[7853223832743604015,18371017161360746611,12006668819789881266,1595732005214836354],[2740910005191995843,6716625060797660464,11518524057840860956,278856238073149708],[3864735070791189707,8330668194952393004,13164775125511877827,177041749183560687]]},{"leaf_elements":[2167546782365224427,12972500962488132878,10060384729038741461,965079689529559409,17185003784188946805,4114501435647959198,7340445652922898361,5626372596246656973,7217929690013938425,1117583472920906711,3508602984700796914,912924360294464995,12217761841714912930,14528486953412149277,14359975623516507265,12595374255463602235],"proof":[[7895962028324653724,3725676821329781357,15688631988854298891,3257510923188662860],[16251869741933535828,18422115813315679345,10222120882620913618,2647976828729845650],[11832554300978104202,14261403502407546042,14520703700616912472,468790055090309713],[15036230558710107040,11921162934449550531,16484118682594038981,2366781330473308508]]},{"leaf_elements":[1161939574018876374,8351817840696965648,18372653301453144055,1094858428888221872,17891497325732335182,6378736636084565709,2312548455298580963,11108539684721161071,646629569524013389,4395291750589940087,12400931690617795476,7655909668271100330,16676308543461110775,6945943938750155993,13376778799557250354,2903074057851475984],"proof":[[5616782601955618559,11536326776059504369,7332699799654596753,2141932960124082581]]},{"leaf_elements":[11506617648987991818,868082017674053972,6543021463611153452,11748771781491803820],"proof":[]}]},{"witness_query":{"leaf_elements":[12596829972955302339,16671500226364659020,16109210863711924642,231685570081114009,2871973302107584737,13246413469707634762,4581991815627331838,18406101646854138216,1657387477765713578,4282312305916548055,6732145098309388887,15160988005314955979,2229119677700718667,17958395939168665899,3455410718703688814,11587137109559930066,8157533115295742223,12558054886082375064,1685453369808711401,8370208512420990018,5134231986352481479,12736932244349154536,15082319744903836377,2353015186179822764,4120199353468999255,13938529073085549549,5824567635645402091,14069814796776599021,9602989315243064193,14994288495345573385,490679101764827453,7465530474561965845,3393709577908139484,9213685118098955867,1236705411687643646,4325133727955003859,17786177132795915202,12620604186884243170,10392235248096927209,1412421768860122813,2375121008948104154,473416502949917057,3481848748417542678,5094826841828995561,14975640707326329826,7647023128964057638,13736129695276060279,4899389595428527087,13997084885877636852,15979407657153061423,18010590535140190581,9095472346297785385,637340785719919681,16630000521758602950,5187424562671335684,13417078774506577321,3732156701502745402,5782180184576343292,15848402668329924474,15677177494334798825,13220885395415517353,8849124751052699198,13060249664193396452,10221801307049227613,2348333960962596967,18196875435442273144,16055862383977366990,6495598167520955935,357216081082737330,556673102133707852,5194646098403169554,6081528051913372259,9929838348453031151,1928542866359093726,17548878934457402741,14812598348341169278,659037648361896543,3540276467413637971,3751821149500381604,3044773635901577551,499209592071357859,17396506756840908803,6160259504598013107,4911313423070035517,3683028438351736129,528270711285324855,3847603315393288317,10222128773373756732,15983487532175954683,17226806026630839368,17216543652057558830,15357553027441566627,5718075733498894191,12827464014082979165,16829063016314045048,2206837961160855245,1457802796452221667,7632418006334513513,1418310690318744071,2089285976004413327,15719601707733187589,13530046534375155027,6439282982632705471,9606830152323671448,5287898250085567512,2812197238426727358,10882705403973822747,9179781624786742556,17148095620912582485,15994757753770320277,13650189001645349404,14136392631983997706,15838040552713483084,17009577844621011582,1962159471707731335,11041620791208733630,487355619862042381,10424087789893215234,7192747982264333783,17268786569092513703,2558635854317737304,12273783239468876434,12982803124339714708,1334152146425209416,2887408928405323340,12243467055421259218,7407125889115582531,15345830647460258916,824428719647907055,1445705946519252068,12761607262110388244],"proof":[[6372634430724570471,16319167852450059803,9470582382424916707,1599004558114385481],[9750507024387649610,12377331051037859063,15183643930896287508,2026231204237839924],[3054025127220387995,12625910069853094979,585260870776819998,1872356273132260636],[8577142899957400737,15993072841522416650,5632981808650905015,1145796400914402203],[9202739205085056335,14525428722613671433,11793450779443845861,2215490814539917458],[11256097124088287670,6687584538635438139,17382998429903923551,151794070253260145],[8473097187896131124,13790239132156085461,9167062191308911948,796304586219675798],[14057841581612219460,8566665453779435424,13179851191110558979,354578967719844858],[16889524375593664544,14146093430589149351,5905710709577275152,438609472924966719],[4066920170409194031,9923489932158254356,11401870840366022708,2325876788439815032],[12970486835521510226,1866445652419010628,7151429743658632178,111012358390426024],[9976335644155126785,8334260381949829728,16609245529797172699,808191351321526797],[13357217182822843111,7246194359117680782,3300747307565431259,2805875995488588298]]},"stage_2_query":{"leaf_elements":[3452487738018296579,2754336629459296427,9906221718805467536,6050313045510064794,5914349828631395853,6701319141046571788,15698025931596297958,2946170576040347350,16540197981305990400,6165180304359094164,16339496666124051700,13145904088173352991,1833607644585077130,4205995476466322090],"proof":[[12783323199095535804,9265236897030520509,15818623387153844984,2917420193768740664],[688607711118305943,8277474696342463463,4080550159138208248,2952788392996507573],[9326102404211415077,14430438065977921521,4029328915672934680,3401261503166064495],[17316165009836534302,7646556717630973639,4638262676559281555,2155262732223005720],[3596108100782037604,7096739080268941216,12431069475984282736,2636987151034521201],[15920930992714381553,13332061597719586958,9152541868924565858,318256328833889540],[8462266424751576056,16122111068942091396,16758785559660751737,1927102532249463500],[2141305327523017951,5689047316887693063,7746004233171881556,1269160916759011581],[10457028605763800668,1438307728004663333,3810844997901114277,2555217648133006421],[903786866936549616,297175495366222272,5894494766818701029,3172797234243725788],[11222195966843527041,10029558956373736288,385125420014816848,788548530015826979],[5393399548198960275,4965487180566053164,9823490252370990723,2311833187933397144],[11783375733003255209,4043511936331649179,4043506204996727333,2003392045411938067]]},"quotient_query":{"leaf_elements":[319537684027746327,13573817497685175538,8788364899662154504,5728643399580280044,9617948200819756032,1208118526453767827,13548321968165198002,17232742717752089367,16132345178428368054,18043834147183545898,12921677798344256548,8593813463571781145,6082961586162329219,3868040929662510830,6551460643299749937,9581505846739467684],"proof":[[15947984361353613436,7799842881915562099,1314724396237670679,849570254818477879],[12681201127696304700,5219690975424286224,1980967210004172524,1354679454769858174],[4623725267910391181,11089157567384012480,1155078021248204956,45265798919680628],[17440619473127084987,11058533422895785286,4177147164095186342,2179078454162131838],[160177516244533653,17771645565889858922,10392472388564083300,2282825335347960125],[16541989224995900192,4429152026507170780,8068827076637166383,879996040632340828],[1444534680699764768,17820874898353094375,14592545686074017180,2526406675939933807],[13779551605089688075,4226703146868845464,7036199216398608268,3217954072703787264],[17704471496014940027,1663015042485371160,16862751645129844784,1297130198030950554],[4632270919408138179,18255749408979585775,6731310840825657327,141355123216832609],[18349452246617137205,2023220348133599653,16807574102074814906,3094054051262067783],[11344669591276189236,5448561436747376280,10794809766239163677,2752009775522827299],[10071724685433138712,9277584171601855694,12421698781990076583,3392383529760788958]]},"setup_query":{"leaf_elements":[4173682486678947236,5455814597193750323,4550786671771893587,4185868996074229603,7719909750068340318,2114668571223578831,14426667122249683958,15153953271905459834,5292580676861646818,2119409815341981037,8715117325026755978,12314092509315668666,12209004173550704448,5967804433474472645,10635869642444503069,8909379201345891754,2467437111809916733,7878671497066561818,651227884950261482,12898223492605076258,15016835426004167187,12410281402923105758,17442091695925745394,17320700224961708609,6523272843558419556,12133805075319193274,13039405178013272471,1835951004623906657,14521881906826040835,11743528590867894695,10599279555348921486,10444298407900631693,7820955360572466488,17488421714390281966,9495646587863634597,1288639164796917656,14439282731891058809,14939844327490140389,15298519227072592249,11833917190305803649,1415513884588912457,4156052144261901339,6268902050428624792,399671514829515423,8488233812255084375,18000537472541967138,13858918446899274353,8387914966443158890,7444602189834895019,2472518932187599436,11468281515678831856,9099608773229364551,16368974938751917453,9592364319634536679,5363860914243620747,3251808282528628184,7018675252285035620,3198287106039461785,9171974701529459186,18144150492751742517,11129822846792103371],"proof":[[2651278722177826423,3926328576639872379,15339455547481015385,499403144977396590],[14787423464862826215,9974895430912475494,13940035632467456900,3013597758362370614],[15162096807526239258,18420598055236978120,1681108345318928749,3180929697266217351],[138246202045019549,2823151519828718409,6159289071789051096,715147916976732379],[3795354284403968235,8980617318008171790,7276581579201464876,3084799504577411446],[16664864442551074372,14814781955294693887,10757080176616036812,486732020599540467],[9547387845387706860,351913669535008800,3906453187326950769,2363294166472820985],[4049835162889371559,5844855175553567561,8783767707291408354,885428943444422797],[9994954283381267496,1018031125308182641,9325810436165097422,2886280474456714793],[3030115736555727871,12131726583026586132,17991716452447782242,3063298879899065800],[10199172819188065724,4805418889441920525,7361655050538375997,2555885512702447895],[5944268534244072637,17509291754432751515,4135650977453405129,2907349052238253570],[10215260393543767826,9751391172593344006,13862000312171403022,2102188527394459267]]},"fri_queries":[{"leaf_elements":[7238794074836478352,14511311337077755320,16248492180802102469,15185419279239724407,6841837364644648656,4404946374300170007,2938790689834103860,9013737861704700448,6164836301162554929,8075272827210162020,4119929666968297541,16392640791326008406,3029878491128585259,15012036192292599324,1781985302612398614,3714555100589384543],"proof":[[2030295978488754346,10025080296149599889,1401905798440929440,1313137706506207199],[10794691858392422920,8848165862067003015,7442157161773202678,3320378878984275050],[5402342315065525140,9800971415114813905,14279533086677500569,2506138894515971418],[13928706046945488599,45714233408086782,16003940006613528167,2466359437742257313],[7825209587567679107,4007502258153065533,15276328176020566413,1159652191916493596],[11169072030695569656,15088650786560007381,12118645955042170038,3031161908643893597],[12648340621785871026,9062810613213647782,13236935801282453375,3148362021928228592],[13852531061222225232,14461508082217658630,1147267112765808011,3261791193482669828],[12728736652339829482,3763524200232196691,5497754700624594402,1717602228308441003],[2727149282747321928,10891637232743280698,12913837565521066440,2576402083512426196]]},{"leaf_elements":[1627765665828057056,5999428113434386309,15262544140837151394,13909000515773618134,16219947555815378778,16430353343803806719,1855887307779828190,4884760626107112380,12599554646314835418,5060857157444539303,17775658940482202354,16131084211744507245,12047261769741992815,1089169556488580440,2237191800223124016,12020957201369140314],"proof":[[9966522621592958463,13563022556140669588,9826740781424225306,2548443412261550274],[5725048285989163379,748275041001877339,14640103218007607297,558580091578619906],[5599960259566243556,16955429212207628013,10628523898512240479,2000659074381940465],[10605182707835532844,1637551537758974320,6812559257891564389,1759124912786740053],[11863858781830755159,8505276823327594098,9537695097564425097,1059886170988714660],[8479843093041232804,10838606492268780139,6179794554925052650,2794245564815508948],[3303603528948845539,3326255857540982732,3658681733470339555,1510526829171137553]]},{"leaf_elements":[11576082337549313590,13228082405353895515,15863798642261130949,17429558916456669891,1001171491361697837,15752875340244672943,6947300415524028090,181784997405886942,905709583827479825,11129980706691663854,6276700527186915187,10049599254717119164,3814364704646199530,11948949424984387113,14400040339729393405,5430305118454920465],"proof":[[10238745097063724778,5793831616836089814,14845514571269711795,2094375744645305228],[11399712119321032488,14188219063488204416,12055815732605971814,325940372394151411],[17822320780112967606,11929122230921897343,15027943035283827874,839309485425582314],[2675790080703259223,11672018712848555413,17368983387124538362,719346710673973172]]},{"leaf_elements":[2269900810174600336,5098110879737557033,8299216941866001348,3515417207436792722,12478804426321499801,343038200534073827,15203631289634068494,12313336925559358131,6203791195205671288,13398748586504670354,8935303490405486729,2665264765541986722,17919352332936791133,2982639848891027123,11502625188948097420,16989819816840410281],"proof":[[6212898492623545222,5273054318572493999,18120166942467567840,1600672264499078704]]},{"leaf_elements":[4501127538857023790,3168202938356671861,488429852234980958,10426529919460171421],"proof":[]}]},{"witness_query":{"leaf_elements":[14381549949188186879,10193155844951401512,9655723379203761680,16976535023242735328,13875055781499492794,12847323553585901138,16687809977539799865,3841490557278919429,3810779465796366580,10372164302737588696,5220932687517998097,13945232068933721306,11277364001787535528,2271153148542924605,18162120653047509638,14618855655381628413,10210796762848795398,4702834344521494747,16584811721671904507,707008474703283651,11807533873372775881,13573962829834070440,17554890230195840176,11911093011379253281,3151106625865967137,3326650439957826127,13514054856268565948,10129079431306944992,11159995877267325442,211735165045048551,18021871544209410890,14343485664717430338,16545001484607392762,12441208854881715014,4740329765657422809,12804509945053936846,3824525553447981563,10734072034632651931,4770125807136550176,10528792314132762061,11066053854211919193,6527496227650382288,17482445392465496784,12279899311916648976,18211939810893807919,3392863636335679204,11964072614918127020,6392403219919132012,7718332342330387038,15902304534663678849,11782238271866825384,10952237429237933884,929035843949003907,12889816579674163475,10282861609276724416,12577870252764868445,3353901785620080047,357074745869879256,4726643945591752606,1501259203147572982,9845219898967557060,12795851953952575240,16549759925364521708,5470698355509832189,8246693293380147007,17607523447632067187,1431647171148987259,13389370611618487924,544500294861633119,3304526130525672488,2803360361808038501,12504349592053916360,5844373752630290485,4566885504199861293,5829883430008887650,12664299942132557067,15772836546037133855,7934082747341169936,14626370716720517064,16803767701434399775,1421632007060101460,16480682694028272130,16792881211358891997,2838295988064776680,8940889132544596506,9071107169435627668,7451831745865017378,663755221079021055,13359611507001830087,17795662213096093120,12959311012002819045,6456274021250975002,12846934048532457029,4363723022054500935,9710425623910320819,13801601151257530958,2049923436124559257,4169952061450353345,3157592003186032320,16660019183963394246,7388635604686776777,2771273703552248276,5621064916598900032,7940348850014897008,15247482349140768661,4969830892453949418,1817287922232767004,9715533232310075582,12022788852998364363,14843006412024200699,10592604632543675229,2178227117296581133,13153828658910572420,16581582696369609712,210861994637330525,14310648678914230595,15398483565969595729,17835047448108860672,12562531084643623301,12973766079696554226,14084666770974340282,6642169939327169445,5162327554063618152,3634046647388239226,6527129348106018884,15634909965873588586,13293555746079392366,3864902716646219759,5530398034230591790,4698217507346910179,4772190234349617697],"proof":[[8191926039644333541,10856117558904811164,11764567238340000257,3059077666268440099],[5016594445644284859,14038657875341792777,1086358762803338848,507356437161849416],[7069289585161420934,10872430627220773020,5343589814421729026,3020711012857011561],[1808236142063125182,14599318874436564861,10577699981652803943,473331665937051568],[307141819142728679,17557572397482122467,12124913454663374617,3257191107478146423],[8873044659579955284,4960373046495023101,8728467078346857980,1898742122786968582],[16389540040579962674,15165056468680971570,7528986355461727221,740466474037200071],[7952045121856297291,17886340979100599116,6118863901243946594,2152714863297305989],[5436563905394629291,8798172964229505428,5671721303726380297,3211770541907063453],[4547395613433886871,17844614407603917200,7572268213754788814,2439453082104437567],[11195354486077822150,1773340076233782383,6801418499422737127,3020710183597747319],[9213800472765615388,1158316303019748845,12991514382138391125,2372426829132123741],[3099716925912581483,6678030611343483989,7025197896971857722,2531579221790547378]]},"stage_2_query":{"leaf_elements":[13220081126465883479,3111927064520300706,12771398080711360465,16641503596654852959,9599262233086286006,4726086112676600023,510495385662462640,6137075259225948726,9132262532002929261,18169830966085489292,4509948125022015066,14205228621540280520,8584569077758127605,103701005622310512],"proof":[[14902716200288392695,14914743750952965423,11809026629545925261,2062728992110882395],[14058641519577075386,9939139921330508549,13186015301189589539,67191710391667258],[4206930362691734154,600891255202641224,2290605502279841938,772177091561610536],[16399900890399928347,782650095260578380,4398402109826868252,1759455964687391576],[16322392710294577585,18191915729612727212,818547789920402267,212766563644002183],[10577191461345236031,11295130818479859892,9371342208784556671,407686097700380066],[17432042862359151161,13805395021772422567,5935398521629703754,631630813197488974],[14445198986484222733,2369109347478517334,5356420298173870014,2000717711626599103],[4536133836263873743,3475374968721784400,4665727786500703951,3358889373262285206],[4393380720750496031,9892260491425092153,11798607321218199291,2468660382843453428],[6674516047286965592,14122137952659949972,13339681292169278889,316790666314110925],[11700693259148205928,15528432552127481912,8219018759397253025,2162129865191522389],[10631333340002775728,642120458864718232,18184208447282953832,2499189033817952518]]},"quotient_query":{"leaf_elements":[14646355118241236613,5690684197488744296,2809908011529484883,15591192660718597305,9588648313948299593,9636500257679314064,2781785342717850806,17496916971985913211,12619188976950603214,10940367245406078142,14408578703813574399,3944380693841075669,16560332542822848808,9686125166090595440,6375880545993523646,11056064625134898315],"proof":[[5660707409360475121,4458280268039403711,14634854520193596071,607121459764592043],[14234929897925854785,3832782629350728558,4386575871038845162,2643645519400341741],[5813469262854079804,6761187595074167251,8025271280703837610,331023790783482620],[6025441954297451948,3705988629911024643,4738338078134439494,514790626302006564],[1041920622314614323,13376341182282719619,1429911843859499677,1174080302807327612],[16112993061913637459,992373648383782213,10998935342093082745,1955794778208319197],[6892078933053368198,7062218555586129074,3065975781126196352,1803354906383882836],[5074535434926523258,12302128800702357313,957047598972919286,3387150291288054273],[15105608576691469162,7582664782741032873,2688001121713524055,532676682708521903],[8901442788751184725,8811147888121558392,5748985623447622024,2496817928998160398],[16456053988842746347,17234441536445376580,7200629840384684799,520407338944369231],[548550013870319300,3226183101983914273,6816022094353997718,284317959116476499],[16342986491749802556,17454831203565383762,4680887698253431682,1406959034796530272]]},"setup_query":{"leaf_elements":[18339325825380288325,14649091583613888614,17945167617167105514,7767778177397984260,859610815562664039,13334490125598535502,7798944196544916702,854887337551756616,10939593015511905767,13023171812931960398,1728303730978055868,12720113056835512876,16536869494345251587,3151256020623760939,15433890525893740854,13331136953343543853,11954291683045140896,9721378276060457720,12271827822554019586,4423895106986972800,5527272888236194886,16472764174033741806,3383688827085698960,5526934678696676092,15778369479725053657,9466299689286553173,16722441193796466051,11117740347465559207,6085538624861384136,16832831889952358859,15312857211320138741,2278639640895144699,14637146278210332554,4670397761968376846,18200374242211855712,9889979497800872024,17310221330264587172,8608056197555804870,13050091281646484109,3819543435440830394,10042798615699894519,6240160713167146551,7169894245503090164,1044816726938763813,17231284754790062524,12699588813462518294,2791818177638417756,5398385629077351345,12600676229984306338,11461593727163764452,12091627935605328674,12729533298248737214,1607623611941876789,14045458348684496870,4053881032986297121,11619800431554120693,16144932819387945897,13726323875823458545,1315298686601835793,14690475007680468185,5787451735693692505],"proof":[[9649135528893044152,11467383032054450834,11454028361645706094,1137987272757672808],[7427392430817325173,6578540227692854733,12410111014010292831,1255817079076871235],[5890657849988924735,4952509083759637203,14056292718462660003,371253101970039716],[11891466107400022052,14829011324729850697,14745493326914998020,842036935010852430],[15387986721814969214,1033419912205073998,6753889305669974602,2513803176354754982],[11253105888959457300,13903937167614516483,12991438607152466219,629625716413388434],[14612870492846284677,13946203054779924161,14147893485035460722,2984200543738586952],[12343235972735821285,9600883590299955361,9625473062009585093,2379274131479416832],[10972114921256751233,8651915268712321254,14105558962188748973,551103400239830946],[14446301563054008146,4796151942379991487,8228495201009085898,3416110020178350178],[7327335420128347748,5920222809152371247,9538311201909750707,915684056766971029],[7055319602096595194,11464783531727278740,1759839108333331006,41434432410530885],[3995132822838448454,2846542933920014253,4890579769695319057,2067526069473059889]]},"fri_queries":[{"leaf_elements":[11883361048558082806,3332163272438423170,3362185351916890823,5466514409260069890,4945820118055417929,14712040017413166772,10789673852478105970,11901949970728941506,2134139375320193241,14404442597012762943,6691585485620301759,2076237292639825883,11603284699024817765,2625982428030807648,8315113217065882410,3888979000117625406],"proof":[[2436449185420253053,2249773341521269636,13516104379391526333,2158942191542989310],[11286288414377647527,15478407964746868900,12318876420190214899,523099100410578294],[10339772684303854733,4207732518564887986,16331389658113387176,2139466856375344461],[8143123101416577652,15428961402399641771,2530356544988665639,1140328231242783666],[15768755438958403337,8632874178372512591,8181681773416162473,131516628906679810],[8862253086672634552,12705906320761570539,1900788492676378731,2863398311890240995],[16728459734944576682,15077012272153695308,17483884817304233041,1857910935087836249],[17330372961762560019,7027285076794433421,9546728019518826346,2774832751867528622],[11414814374608261462,10550371136378275745,99222866707934719,222323455718166932],[5372050669665668656,2531004979834820284,237856451516060770,1063357899924609756]]},{"leaf_elements":[490720307014304589,6624206906649539280,1106388778976032958,10679199129808160632,8248870999085964119,12594823978462992083,7755516494441439274,9098237157649777055,17852689273450045870,13799677125293519289,8058976844843042961,3541363584423508658,2467850016688734765,14886402476113162485,16132112267718114242,3012246023479344235],"proof":[[15316680158038785079,4967390707112334814,1332212905164395434,1375558356372960435],[8019068807366144672,13604589403592285442,17705902162692579097,3131883917659530805],[702424870714320722,1136975791117779823,4304063123641762243,902124151813983077],[12575247757524333914,18125035250672512876,11741031209458428718,1672377156391200884],[16427131369228368286,15161192532584863074,13785951322865727728,399724323342211631],[796562504078608021,16881067040971446732,8081660845298381682,2673579681902268455],[5260383682142355478,5611438961528204855,2999527192322743314,2910090006399941672]]},{"leaf_elements":[7770776737455661647,10668582793550647000,14004817581443878450,12984300776721617079,2260577505586345492,11209552085706032812,2572989823441891178,3939458824393215599,8877734796347860149,13724658602748200726,16896726189812717161,13280444247743168162,2228010815988240014,16611530108971585893,990617995558929027,11183745440176679302],"proof":[[13919766588471148106,10929155737272259984,10826354287109213676,3101273228507674622],[4818826844076730291,17180257000244286193,11265047987947866283,1781555415302840352],[16756467014491550361,6016903521124414545,7315589155338106837,3051887955897998784],[13563414973992183299,2116411489152791601,5001532693103286599,17692006655279297]]},{"leaf_elements":[10225814171813459836,12725893102043196075,7295078541196454247,8625410329319773927,4263878865734639923,11251946793173801696,16393238736617361826,2599091078451761432,12396122362530392359,9324346104821663189,3443820156697793777,10276648187268039057,13558877638201331801,4065790490564903520,6065438844186016293,5175052910854462695],"proof":[[4996307187254343803,16943616208787107289,5663018010017451605,555345195086986338]]},{"leaf_elements":[2966080012095824694,10472639831135879261,4652833482319589241,5368590808610327190],"proof":[]}]},{"witness_query":{"leaf_elements":[373174967087648495,13659300758451653818,10284372493792908126,2200737467866879500,616410445478336250,2416101282494944569,13870948998407387167,6839463794059714889,9922012122865523407,3986586197477111381,5032811648574846659,9260426556371952414,2366688641468211243,6564885635071170733,11777717958016533183,2595795055570054295,15178535374216292008,1223890980423665333,1095529113335693913,10549139107284727254,5070258288477535030,11374029683639681021,10128255937029662389,5383886746280421576,14040720227210918597,10472939098119070298,16971080870019052355,7561834683260179469,224792879325862593,17008517832967715372,9187137546058032293,371806203327865857,16776666285480095143,11674588816206851054,1932367053405306937,5042799916641165274,13953734236802373581,2599454267262800479,11100601082152308360,2850582894853991512,10536649264272766832,4550164226990653557,12708644045672203519,14279701800824310613,10327175217393588692,14798268331654352345,8515857710106939011,5299784275998510517,3678807673178713718,10723765451691860820,1698268580654907533,18010647754625059370,13280576408363812718,10193447756461955441,976274693415505415,13285910392556378367,5850119344470503207,11295585300165281659,4085488402474955104,6407425573881207385,8456454598178178817,12574981038512490081,7330021850836187186,10745688827303236320,3296199866975640234,14218178479180240270,15560011198264727090,15740861527337221507,1410534873458533798,13886222928533143915,15971322222127492909,8289718121177491081,12547918188094265368,10579952748188910014,8491704031206269617,10197528650430207662,11190441443014432438,14453205098444789054,6779714026395822648,8691229564158326716,366951805232144798,6459995931877118304,13066628826615284264,7927364443069873471,12171999154742483659,8391065925048169440,16289674458693536317,10260730762471185777,5052541587270220572,3084905065190527365,15765620403246891695,12592828148674918075,3424343884781232397,11868799387096352659,2486757440793567685,988900161062436232,7078824617164729082,4157788783563737429,12350967334759853698,12726998177679614685,18152106435261249795,12706289688536731825,7195877938418340619,5735764589433069002,2680008422648086237,736571427837401073,15227281624371246697,5311216722691916944,2317320206889962094,899081173439286876,7517414042049849762,12311298329683415472,9367571867688373496,14623566120118749656,3801435425406645571,14299201012120319598,12462691118043726930,13372245917262650682,7011559832026614690,12089099125865423486,12265160487456996686,6403453663460513627,3432405148188228479,16574146586994846983,5099981789039713536,13281662179450142069,4950408272251148739,5574360763338351561,5290347222598056935,4999324417964302270,17774448259059188134],"proof":[[7939439793310588787,18257284623447714505,10030872514396614860,2591487327905768878],[15907950066569400388,6680089137406624208,10757193406552804133,1042654264950990249],[17855489706175010766,18306722708490237789,14660714536164201275,634377158321052844],[7378575149168193343,7979855086189560111,1414720902283455909,2906860453415636234],[3774379492819512333,603871900469395866,15933825469077306556,3384051105823408532],[16306555844819829269,12922973042086118644,10135651314181446495,3479197395205057362],[7382443130781134166,16510712477857332404,4612102993811923754,1237225390199030984],[11482577158927091249,13304631925767743061,57457853828034868,711107901257053221],[14056647054029251523,14437732090330533697,607910341046958120,891191003123063577],[10334962000005340327,7867588562198272976,4563449465900852193,2500006382134369556],[4583040498555971616,7747100777154412055,13929384765094672206,2440872387464085566],[2766366385088090494,6769208155111811097,11371689314227132362,340257912735176976],[14529369058256465838,11494318455472272794,12643466557790876047,2895029653840738288]]},"stage_2_query":{"leaf_elements":[189056265712397897,7051642697472351371,40724834087487408,10806715658936233220,2632529184797910783,6534784530409153901,14211372350791343288,594993868570320163,8908566848711448455,3906656511690037094,13990460450936996565,152861975845167685,2064113518920521336,4497532390473058688],"proof":[[3076755899049922340,12417336138333148659,9907852856432780226,1904010737261217141],[17187386867591984753,3256172484260867994,8489957949714861561,1251689945975606827],[12808197030942827501,15696346718722240389,12278300748237705575,2669003769861160015],[7252078012991693842,15401140829952786413,12717057335842397526,1224634455363648995],[14021085593416498190,1710635376079293848,16751964086571443069,823532397508805753],[9322520957689209855,350662710554688898,2023733016047364999,2310492625471190888],[6126172794226188601,9181513353011347776,9142079991131801945,3039265806878655509],[4436865866428310667,1093428978615823097,9282758937453080159,287712519428534501],[2388597560303381171,6714534955024774119,2759869955726321724,436354429904998520],[13770098120105363085,16206939090417846846,11750618175693252153,861829443217162157],[695775844056571704,11948017328804839600,7297840129450458723,1996599486233491892],[9853728952074350056,5243511523582415604,15033444444682052514,2820152547819487473],[1241545135385123701,7679004444393135724,3025994387032875785,1519048666296970932]]},"quotient_query":{"leaf_elements":[12833932361677978990,4703597801185907993,8355849042885723886,3775056041063038750,3812617135617990162,4102516758593686650,17534467837091574422,748391016804990239,606013303743251276,6658352001734381308,10054962238351413092,18169870839350822013,15833374226689271528,9544833669773292420,4492894822051590375,991059100253914133],"proof":[[3028010237697932532,17147379807280249052,711009808626490775,1188546225726134619],[17229963152699473131,9588921317570532592,7858384590644739082,1510247958805926275],[5095906107398624141,16380311407563032697,16055223754575966171,3190685985872536349],[7141317193849907300,1223723303279175666,11977370931952074868,3420266013401402061],[11389976313000851508,6515820102762403829,15605077000580172931,895736780114167387],[7631537702860562475,10059098012069053976,15444215607690564113,222885876336663216],[7608271141265919545,2008039532303045851,12494759256652346687,1253981176739599469],[15906127309870491004,5890435689668103977,9186706466856000696,1254006674690767572],[6858681732627174830,2209024622745984763,14782618090796718938,214637902438741055],[10996578022350522067,10587029183644986899,18306673069540592560,865103154747362680],[2145289966024657905,17033641827413818572,11985851744785195685,760361178709545190],[7042052438198579881,796540043896361985,17830230185162420255,2249494067159037413],[11151149218063228756,8120946621539383472,2153351129223377690,1948019290312331727]]},"setup_query":{"leaf_elements":[15917324601686183034,4526313996582888812,17676778668344307577,10957905340595917610,12446891970149522426,7255775571207605703,12810093446913856833,2786545761412613164,16651405020009654985,7403981091405506272,11683062933164582918,6159525661017931142,12445448208248722661,11831224171338138983,862532978538994885,12535693072406412651,2491924617468386536,10729983916897791589,3984281874185964488,8021077295902614556,14413503692693750727,7377182761923824997,8152162717574899938,13791825760137988259,3001707232602870306,3620201614717075825,14987439221527200739,13675426863741864822,1157079695639124040,4951957102372620716,10559600842800630196,11938957964351891955,17206532739026255950,9582277930242443743,2255288332716593318,14175698995588912101,1535613645749060638,1596770719522306288,17739099025422132535,5567452543092794725,4523256722404973064,13130330204687859869,9232584698457373320,9343612790060933678,15646436440664739256,1826896161681019574,2804805156898948089,15844656734174806356,229436178101831704,5664023466036042636,4439074009231746846,16173074041897434688,8911289168377381826,13727268419527108544,3077916982865268494,1395814920575693988,12321719443964147356,5103293464480044636,2375136451650766928,17763908060762304173,5022718257443028245],"proof":[[15320949261462498112,10216534644205454660,17476688170466737911,2398821118212538034],[14258605962796632353,12934093406999993949,12722850803721263110,676836916741311401],[146029089537668253,3506473798636075328,14900300565208497369,2191048987455027159],[18199310978048064941,15974462568107604262,4163783721475162893,1477319168455547750],[9792070353831569312,5281921138683753456,18437778016031526792,280876615154318102],[12577299466212822317,370195534204339662,8279618526871901413,342813193479863663],[3652897303573439076,715088755169868147,6424809329369259038,53944835992254664],[17105974022780092470,11800496740020589960,1591399409039612783,2001438358512834821],[16885299428557618432,2667379643540441832,6519426898364512001,1385800044510812049],[6773097280187574234,4293151313873275442,4332258679775392364,2839900687804557218],[5948325550731255160,8238701916440581702,53113983211910388,2294278694902979384],[1730616017315666014,1299200534008402240,11162104827292250293,660519070144899916],[13149784555253046835,14758838563795191874,7433057622550658850,986325784856918114]]},"fri_queries":[{"leaf_elements":[2804838000371275513,3262563804827965064,17204178760712423529,2289800165027492005,11324905237147455669,14537386306062521554,7743837251197132621,9238822461556134138,12857766102580847453,9821509229452608795,7613697893945583356,18440083008798426706,12023051621484512151,1978698479998686184,17496943056076022069,13664821744000225994],"proof":[[10159653164669715279,3179102988197026548,12019133758213023098,2874048564765837448],[4131686452138604880,18382626038177416224,6569454443377715580,2676975562744810918],[3662068134984960897,2506274876310912228,1886506458175336841,905736917879301502],[8025889030472053053,16718556166707905552,10244432901798716458,1267296843992018301],[15518651254859695220,10176301966702647032,8025963987044189709,1650691223477459814],[18046678074296270145,14335017984576697242,11260349655594939186,956550786760256481],[6397474756562677744,10408138338120512505,3934376092695086725,2607630317762696347],[845005393906438921,10272686258973704889,3551414226955745471,3452364450445772245],[3905828464536085541,12674349991270608003,7697017796816780652,2943916197389319917],[8347360573839206051,1768446814586231047,14007334252911185829,190786222251169773]]},{"leaf_elements":[14763659853566652910,13891154743546885529,10919272531520915643,372872776985274775,3841007418316894627,16721606615101373010,15043376463893004422,13624563736432542647,16296006322135531323,1805163213581504272,3304612400978373527,16120153630941584629,1476590491358916361,1254128590189787068,17195518893317377535,6817555509331619533],"proof":[[3498012759497414026,16350765172698604173,4950135859827217641,1718446492032066225],[3781610346289643733,17753629649712561665,16029812721593707521,798601228556330354],[17902490637573479561,4331097989599163042,9065308487531684289,1963435070488674037],[9518390246800381456,13430970766535505731,3669146452630375332,874331458603803420],[14956751388932837462,3783719934086287379,10236924018805898626,105995308644831632],[16155455856565919690,5061964990708523169,1902122666115875254,343869268516906328],[9127794537611649855,5814250328747267805,4296556981629366486,2685070511949217859]]},{"leaf_elements":[13359490908652558014,5997640506745633614,4959066642841481585,13275276783934490908,3504783412645379436,332948606864961780,7392812665750659091,7313916796737550898,15454949239181403626,7820093532902416732,4190631103434677293,16374686988061935065,14019460712939982669,14271131282857817901,6172990654719820747,6340860797783558575],"proof":[[12977527118766060820,10117161255319273682,13605220916015228928,3162028651511221268],[5907087738312150412,12887804975834396340,9181568002007361439,3343111879709306985],[248844622435178628,13520985268696963693,11418430057449801682,399408629245820694],[17194299915970532300,415382349675028268,16738602978340998696,3449836998464456936]]},{"leaf_elements":[3789702018995450110,15854387717208756361,1862553614940700864,9514253061725497845,198987545915237403,2445744595491142240,11873260469463328166,2136424363509213897,5107746734140941096,13172010550308694095,2233544282983968511,2369746150205641333,6878826575781853838,4016984314925335006,91665176381536295,15855865455423374290],"proof":[[6449941176220115590,4755010037827490481,11626402507764205885,228837083492347851]]},{"leaf_elements":[11323862628515517922,11439196860937776991,5413344540181736252,8741335607124726181],"proof":[]}]},{"witness_query":{"leaf_elements":[11662769621147878501,16252016139828378581,11144075744923314804,13309895449215924800,12555113327700527594,10569012505150386385,9767671664135784579,1533874144770126257,11573572669985005121,8860098129875244560,1646799104574245503,3954238267405237757,9998980247883258908,13448336628960906315,12384543436165332381,15886219592618844027,17809481141802571674,16208085726168657802,7740055678454743534,981845710994882818,7343451576811393179,10489594854331327428,8627911724200393774,15920557181078130208,12074455257569858751,1643546329328529631,17917947306083424576,13357772735635731863,10604573487495282579,2003331781683712523,11385554162658031271,2781706506245293614,2373050411141570965,9571613678114588411,2698657520370696087,7638017724681508481,11644841688855319901,2858563418279404546,4816096871440300238,9231144414762855564,13276351818044089404,17002143170614867956,2321735181398686614,4440543370953730496,294453993175989885,13454962795498386831,5646876544945022979,2981310393101423210,1874678223214297835,5989763785683046703,4935887243579672479,7634181393191597469,12494066578383135226,11649900068365191689,225056504550797880,2200608107939282962,193348560108460530,9324251976855135049,10581127578195604031,3507161163765102840,7466472453143619807,13034365300146795868,14693158151262486990,3093033252573038581,4295322125066632195,13576685486469582121,4906622711307712836,8115465271353020373,11889822778634773460,1911337429542267518,1166869015544372355,3495144951594287642,4876516306494657129,15554637186373629536,16150484187697614806,4449874824943183301,10329715540430878509,6144554073836861012,18281776219059907389,5331047745294907710,13018896740517838446,6135511304453499922,9777952647670501803,3089982091730304467,16838877069505292948,3318176893571575436,1517749982125546718,13154346821613287339,5824805036774973584,15122326109831701978,7886937160473428528,12058988467944183977,5160501018554266393,4525871905444547136,18040804609943006024,4649760679680836508,9119634413679147835,14306666870960212615,756790013430860353,8758143952192037341,15748194109294058851,2757307344251885330,4230528320407359462,16304000557634933527,15074337250403080859,15630590363569924748,14668675772503493015,11518730877913173300,8170031527958606159,4268204344066955920,8382407662656938943,15825601178289378862,18384719984421351251,8135165002316786670,13301789213353454229,7099727085326822222,11162226844037638707,15014771302271148560,6235310768223782841,3295099990456509230,15602723504292640853,12272312267424820567,6255029205960208453,8446493374815037862,11707080636573273893,1426914390335859585,14381779112644928972,12750955104327406386,6885307191711684912,7075980362226734526,7355190205705546105],"proof":[[17608809344769670958,16820972537613212625,11683744906201766309,1541634239701563144],[1964543658510436758,15176527099243073418,17220963673152078603,2000398676118854904],[9945891713406153578,1625992486037707208,17708895956013186654,532309194701505231],[162156585752633902,1566217094553920952,2566598864872606197,1712649614629444673],[17502330882714524329,1993368179755967773,17396295323898608516,1809367281669583234],[1665374662018336136,2657997185863137129,16242334063284926010,2265720444697535199],[17256958616271272257,14242172399910949318,13986399340172442712,1187508217273968717],[8053430375618995056,12578265997111964741,724999274076528506,1505897422146829145],[3911225018129733379,10813370222067360328,10922401052279397971,2598501529215982800],[17188195007368425481,13825399381117869572,810089413047375861,2841855346059209063],[8800787531756665566,1601626430640983386,18021283412139762015,707454732071377121],[17987329640643634080,15012964337311746710,7351410855661486719,1350274959490068541],[14529369058256465838,11494318455472272794,12643466557790876047,2895029653840738288]]},"stage_2_query":{"leaf_elements":[16375643745257747433,5462321985556623988,4049377798738542873,7736337852010081210,3461157615783743185,4855281819344095391,11029329904275871835,13361742251272359141,10765105029980401446,6483482848456747153,13274451964628898603,16236174797141302120,18602374416578447,6710935517113925545],"proof":[[18075516675364813846,3237227347729210374,1900046615000419404,2465737705023800930],[12541925532033646418,1116286894474099842,16444323740835060046,185639394794280482],[4073890968681936442,2458277283394838561,15794245423755050456,599333257812876392],[11265635174965683839,2628561790443748532,6285455837485553851,2576316993454282719],[17193081254900055457,5215321644978581222,6936483947771777558,2517759135249553524],[17779428161550186288,482536800686888955,8360746325458304249,178549910916250352],[15066066463868692180,11412919472356942717,3661623246848054246,1161510239860456140],[10991714530720185133,2808241878205972507,16264713818688183835,1246863430419381265],[4383982486894115383,14037447518525819866,13591187787526663541,1565950799847022583],[8783670973508486192,11767229508935448637,4340957135599703584,654785558190631285],[14987321959618278568,13284824437122618949,14861976676288104077,731845425489805733],[11220017259697723622,677001679594051167,6925218384805950482,2073318416511068166],[1241545135385123701,7679004444393135724,3025994387032875785,1519048666296970932]]},"quotient_query":{"leaf_elements":[15173479045184989960,2906374230534452561,14685685890009252652,4053353672571475936,6967828793179795768,10147216617849127276,1913270802135794573,5073998214926507344,3756521073357288204,73899414762850493,226884154150826842,6316006949293924448,5835052906707308087,9995473217220737770,4363440976335529386,6152013726251009675],"proof":[[9139556009407840967,10293470984978183430,8855977816091829223,2359480400791448094],[5667876933242299263,6225554531008531649,2414363410948643636,1300065071671314458],[9559307566746199698,18348991681784054853,11844371999384822344,1286515743340055226],[15193542495505475878,12322810787739088613,17760835731923317417,1819976987387125405],[14544918302617219016,9589412894208417700,14938121866820469882,2475064205964823444],[13985525756015267456,6782638751143608393,9886230907329245253,309580069477910465],[17067672697963827338,10847478522102780542,2660225774438924267,1771947251325639653],[14696992882748859678,15358930003109752984,2802781166654888356,2550387557993107909],[3753067391361686890,14631982585359035201,1169785579055582494,398983197141698255],[9688347552198029610,10352161459492948250,12775465388176039219,1735153194551437697],[15897127967116985070,14781255194005157150,17826243340795235202,1235289287843546645],[2032376285152840491,7142132393502982569,1384580021556495755,2616812089124926360],[11151149218063228756,8120946621539383472,2153351129223377690,1948019290312331727]]},"setup_query":{"leaf_elements":[1259548049106495775,11613992120118129648,16715704569835660092,8782374835905395400,12133522815075465907,13782021186931806148,412754275726865900,17564738902098742962,13564783779267505104,13082788598619107096,17257470469296028173,14218633579002341089,1728539229664057788,3809665413933209484,12252083614767404171,16072979851309505341,17243418083020951768,13836686166692033701,10249309366443637306,261198249562660162,5399367894026852544,3725348457324065669,16993069479048395190,15277492104732698990,14976247235606314412,1742340215802650127,9768047101890603326,12538658291947297352,8436413907457532442,3612370810992201820,247728916646816791,13044958742530769697,1160436146294097348,15329972539798624530,7460258371709949829,14334731343764576471,15439324109308147289,11799408476797471129,3211048454722944250,13986855377825126567,14548934939494570313,16203234498321256381,10961184553948774156,2948829916364751408,3016797721551206568,10154517419789812380,18359804226204383930,16824069210618836250,6720575619175006561,2295609321900629388,2963258313726239201,13772267812819156692,4693976566732817329,821605182488899359,8196487905677442293,3239385459566093679,13041987271737187389,17685423661779499056,8214431531359056949,3256194900240135618,13522409968311741693],"proof":[[7155353871719195516,4772423470401925840,10088869667291718858,3397775263414572667],[1659313473795330100,7970221753099987152,16085081569877721625,8140868079994001],[3307753674889418073,7230450982027962551,17483196857099780278,1772723333320116208],[10237961955491739377,2441644982175592028,2787107230704134971,1550556884570755461],[15616185889014951648,2384180577961354051,8771155979817580787,750525578297629815],[5948444382674743686,2122612895908454817,17876094367977363721,1191665547787391886],[10061974321800496840,757930867346344812,15927979315502770189,907645388578204059],[16604194878953957195,5436923274378554155,12678805696993210958,2959084406074951303],[1341461015524338075,10194609277213901041,1089137671253595375,983471957334616996],[1629507222814009481,11583943973113671657,17220869231860288814,1854475850229031880],[3347708738892720858,18207696225896229587,17887413276290714469,480107742079763421],[10710052728847521794,1310188681526079020,6397101549672991908,1637501846289329853],[13149784555253046835,14758838563795191874,7433057622550658850,986325784856918114]]},"fri_queries":[{"leaf_elements":[4731946889646626419,2952560631627790554,5392455857607461929,14769637275832377280,3242554279582456692,9526011524916135972,1387737384400870266,4342748191383337599,18081671550935993518,12513360223671092942,5758412313717019796,3942871686329482629,15714186316015501328,2142456587267949198,5475008966771660217,7910188426734402792],"proof":[[18369590718096506207,11471069559171686097,18148955068242805095,2085953530802179154],[5763203966517087548,3573446473870719466,1126654361351895957,1618340753257971173],[3115875098601718141,1904535008001150045,17957818286830051434,683079903810956148],[8113408311673492777,14198376341309969683,11800955284453897165,3220718322764546336],[973137261131246401,17413545498871735159,7543883047874341718,3085028986478770311],[8623812115423311247,9065756973900211895,2233310166001780215,3163373439836825837],[1522973736789924385,752025736531433356,9767535830920750062,353797685187889862],[15588498712575954061,6054896883917248686,16895245680221302553,2312317291775608406],[4210560855886740970,6088046815714819661,13266640682913832721,1701582425475924178],[8347360573839206051,1768446814586231047,14007334252911185829,190786222251169773]]},{"leaf_elements":[17819266884068099150,17192519616148472893,3418203087063443509,5406853097639833789,16203446853451978370,16886564130241072825,5867790590339057953,13422668413555816198,17456243524121513184,6749077906520459031,3771239999836180100,10243412917169986323,7839170528402192255,4762780396485880244,14650337237879251215,14574319618113460681],"proof":[[6289522833168391751,12246122298626560803,2777935740147704734,1660239169200281878],[9712760132733152752,12476983337670345675,17688424899583460696,2051716245379163832],[3323323306618830433,613905118227761903,9939620785724853320,1792071685482093233],[11620763375071177159,3041581693030435972,11618557265365566486,2760926856464395711],[10293025377758463634,4616899267784383272,11647732056482502672,2017876803202301791],[14157526227560209653,10829391244618508863,11697006768307302778,345724691103367460],[9127794537611649855,5814250328747267805,4296556981629366486,2685070511949217859]]},{"leaf_elements":[17401742431190261443,1726031007182976277,12051965728813925763,3568977673320661942,15469465436461866310,1455657128574250149,18221608088367846267,15515125293582627508,9387483391187800786,16083020204287558544,559343653973481808,1393631344510499459,18364864831375462834,8054575329332131823,9590735090831762133,2936469302252749974],"proof":[[5626797304445397684,7299538692500801600,15247931070089125002,2133379881437494271],[1707411167394437621,2326555226076525966,10404571736012530751,2356544624993836918],[10948678975314608133,3924083284418572810,13364196439838498155,2305767341443876489],[17194299915970532300,415382349675028268,16738602978340998696,3449836998464456936]]},{"leaf_elements":[3789702018995450110,15854387717208756361,1862553614940700864,9514253061725497845,198987545915237403,2445744595491142240,11873260469463328166,2136424363509213897,5107746734140941096,13172010550308694095,2233544282983968511,2369746150205641333,6878826575781853838,4016984314925335006,91665176381536295,15855865455423374290],"proof":[[6449941176220115590,4755010037827490481,11626402507764205885,228837083492347851]]},{"leaf_elements":[11323862628515517922,11439196860937776991,5413344540181736252,8741335607124726181],"proof":[]}]},{"witness_query":{"leaf_elements":[3290268266640130409,3729757689802144689,11992612971343865473,9842296963494825698,1624178844604088271,3444867212868224058,12624052502976786154,16763765957000001438,409366643721301025,3175155346097290941,2335131187350965531,16179916233704122879,14567189020227114643,9821586314841614135,13346248469884244447,14403194258473997066,2864225459328119489,8897039741209903,4263424177170478524,5392948645208762245,11868098909543218959,13632487654844317110,9401658795625634549,13603630367065419394,7449927858959808954,10333777097156296219,2351727437787411165,3040537361063704200,6870448990461826243,16749035909455172056,17994930064122354357,3361424122763803739,3755669354962903328,6840538183569234414,4299962843074181340,303358861392478650,12114063754740192078,4911762579493767623,6484388268661706353,10565828369840102784,2315220379720823256,3644011034648853856,5161682466517552874,12180651724558097683,10698802057005171417,14709828270760729934,9121405704256280756,4620404332380577789,17599077460311212223,17575828879979645490,7506774341423965908,13901115460900506056,2746120078809548586,494929678186585501,9628356014391790387,15647467092771751491,18072020267297436759,10212514840902028606,2339478698998377785,12527397428208101553,2102191937658750328,4196114000860276753,9527804903730645106,2996497458315237097,15760722218676505131,9211189616029240831,17322938432134233747,12964010906994411518,5242616120741524658,10777253367167976197,4253478637928660790,2797327905164151309,15737270150410556291,3495577583902653274,16381075744554846704,7681158565512533117,13771309630203862093,15754288780480507467,6973166385862751078,2958908070498821522,5678166795147683713,7164487758026191692,2778784331132505749,398750670051943973,13393097627713717298,1083357396752129292,14155727006292108300,12387895762799748577,2126405479116114927,12639679737987247210,6731249703315332543,16719079388349889552,14860472810954251327,8267128311038697570,3811070533021901837,14591043972911937168,1997808834024524162,17196192926401591602,833444932560598413,13125943600926613345,12216743617604299920,11580375387359346863,16322451608422539784,16093547873287074104,4230670487872505686,15153407502585483126,15816489668621883155,10464054972915226870,7067616954127974963,16309658993581808488,1378495184303015999,7694467844370233225,13868278741895887040,3011434652890867244,3510883951825271658,2329966553820576418,15292980374037741602,15151125696931236115,17181235944607976637,18320076750631809459,638058374024356056,17776888239364358257,13520807531797313445,16939831975863124350,12419010824180325836,15903567417294629320,4248016367943269297,6037610879560927952,12903404172119908295,649381813957649934,4923872305283333270],"proof":[[919951431921670391,9410704041661442329,5415145125188637502,1440678223753693053],[10028357948036967894,9456470326721546113,17819527794724382074,574734310563975345],[4107220641812862935,4856622926791399767,5641557983288144882,3270246230316372313],[12736350580747143172,1868720629971157211,18083005081053058446,90798595706142670],[2212860053570886286,264715073973267389,11410390054367720599,1983658861781646967],[2697569942006455825,6521939019617662197,3144403436511974787,418305817315552543],[17459890758880841901,16823320731570914771,7437599298876168113,2451420042766410861],[7554465648710501828,15709342963209417198,18049134872679028110,1678268730996254454],[3905562376468690690,7769493917452620007,18353086232893079568,403752567324511919],[6357035576840156483,14231255953092015768,8122839792224942389,3077089340526063617],[14733508325092594762,9571544914722195887,14137749797057421838,647294597318033703],[2766366385088090494,6769208155111811097,11371689314227132362,340257912735176976],[14529369058256465838,11494318455472272794,12643466557790876047,2895029653840738288]]},"stage_2_query":{"leaf_elements":[13112060946361048841,4384472323128365110,9257789564796247633,11957990931589909208,3178386881179661869,16881293434628800821,16592257575148310613,7121267938033456094,10996651798730840379,950713172285310713,14765660112929411107,6393615154846996412,10583802169167458660,15953710040534728018],"proof":[[8417431094029282649,13184630017125684746,9548333399507643826,2065134999996308818],[5148624316787508964,2359967788151290561,3091570007654041184,326184102977257305],[15326262186870505134,10943199394400534188,13750872610319650915,1358337018500448706],[9251833905142407717,5534388045151043058,889083846617341011,773605802576734688],[14110144669440192154,10067112332393787672,15170673641306067666,3313772012094903069],[3319380946446862812,67437023039583685,11709671074537980974,79141161809681423],[5885682120827132797,12876564194453444202,15783180036406345321,1342524390611434595],[15887933638569986816,8972340878618494307,6890020773822989911,1680731643949090259],[6429509995662183910,13792649267867381650,11419091421300276508,2026463455601927265],[15295990751828752856,9979576372885204569,15747974117870290406,2272940730991023683],[11427303536737877639,6801814388610461876,6107641741384984598,766359408787638043],[9853728952074350056,5243511523582415604,15033444444682052514,2820152547819487473],[1241545135385123701,7679004444393135724,3025994387032875785,1519048666296970932]]},"quotient_query":{"leaf_elements":[12848869043522893069,2168301263826677000,14180517967720548473,7863704497044755032,3623371783825134497,10564082835056167404,2332499614704220895,13413199749252845006,14534745408734161911,5713373006836862306,13045406888295603444,12633897021096638406,9864198464877477786,14105915034190811061,13143025597234832944,5593541747552489243],"proof":[[11123681552974312828,6489779590573176151,5398341958608047504,786178383911450171],[10936062425878965413,10021954256223932444,14810750891160541557,2747554630362180626],[9651235330421189105,14367316669981169742,11709015687527217169,1554561329855326204],[15617859851422098327,7798648904280004865,13543711326733651422,2777808938886478287],[2829593685133908652,629329324952979115,6261930970704487062,2197047057991767396],[11199517274415944984,10081505372590939582,9190575294500086012,2853622121548697382],[7221101136046114991,3985404969826191996,3376442643676424994,2593917319071177388],[12488293110982909409,9465912346307039457,4309127809902185864,2171380772595321626],[2018211969464625440,13402918227811376840,1653340640594811206,1653282847052707610],[14106799473717877940,14568989310396713991,3635279110894153538,1012406427262795905],[15969453155653885014,11946820923768701303,7992073692205041515,1642627875497258998],[7042052438198579881,796540043896361985,17830230185162420255,2249494067159037413],[11151149218063228756,8120946621539383472,2153351129223377690,1948019290312331727]]},"setup_query":{"leaf_elements":[2650091020793697547,490757235233621531,18065137848888552107,2050605760118313670,12235821708584180128,16020167902757910960,14326078800183432417,11264086951293770356,206663537644429741,8578344062496317920,17344927259780577140,13546601209204774246,11033680999926137140,4792467305838593765,14973514831122405690,3988750876388003016,3132302445089702095,12391037104011751737,3970378219449214232,112707048754685778,6154339930255857471,1378585170132881815,5746248751118817083,7611560641032391552,12224065063555449946,16875877925842059457,16666435660508838340,9543601212811335006,517374854697631207,11224836665226275708,11370494959753352416,2575471338471454148,7152548302079046402,14719784347599479313,665355455596668839,16601828513892449297,16807162482235772582,16017884168985934264,6303029596204766638,4310087570876428825,3664547949579886879,17430113866241656756,17228857078544680758,5367574580421247127,3213956273844155443,869777182920443050,12035830306514986326,1559802306673437677,7489329858176272486,17244863027541067764,7115567871538337467,372114578395890843,16347975915116648981,9908055502141108384,3527684600131709309,12614611852329252521,7754721977973590179,17746696231547446842,6399870106470545418,14617301567994114920,11587210476323232694],"proof":[[16035189005412187092,9612458373711662662,5444998093421453197,2110198480594227957],[5695115649859179844,13988356303149554077,6822115071054864886,2907741251792029441],[5645901995392171354,9809649567472432237,11552729394204578669,807469989790882148],[6322465649938146520,5009739716624341226,8067115797835509122,2188865375483289905],[9718973949497455738,1250439191390537990,2570697029851249424,1439438967733442169],[13443749801375612798,12126266058337574983,2975375231424623932,1601457124495347566],[1029138483855778756,14936395822772351354,12508623091521215677,2036561545416471243],[12131339629907373438,13969547477225418454,5842399639225755987,2283192174606826756],[17174410910746095676,18183784474275499893,12177577405978900346,470638783381377706],[16118699847006863351,11536016472670397320,18443104935653640703,2356453852553273466],[17969422608252871793,8307312270289755147,4856288380758393470,2999967421241013405],[1730616017315666014,1299200534008402240,11162104827292250293,660519070144899916],[13149784555253046835,14758838563795191874,7433057622550658850,986325784856918114]]},"fri_queries":[{"leaf_elements":[2296141891386478992,3347253110426316739,2667655480150610060,6241988773072955246,11325384592057325261,15810194139170520635,803450512358420663,2071211750740397801,9309655459334620142,7681769166376600244,13826629654162388985,352949910776289974,5162249848242955175,11737404948600473008,5379189841134580530,9965261814919667743],"proof":[[5761622228476153673,5711010778861323717,14905650691776639337,1398482238776722952],[8757640389641768160,7890556216124843820,2533240003819317078,524548785091227257],[16042724435521643541,11129307673185187119,10247572473782192306,3193888642885598373],[11860912580444139817,18358114608040689677,3712012718042041277,1397200993493340499],[14601813494716448894,348149715189166790,3403329039247344836,1354120937282154129],[13433015128533269783,1185357919725861927,11251054840690614895,2529739479307558811],[14913262432553566734,374916928751125720,12584439829311048532,115423574785754451],[13029959466966526362,1951142863526424533,2245644542581373246,1743049093977953263],[3905828464536085541,12674349991270608003,7697017796816780652,2943916197389319917],[8347360573839206051,1768446814586231047,14007334252911185829,190786222251169773]]},{"leaf_elements":[4285498125156914455,5150746476257518427,10589952604708454896,16448485834615660996,10216507169150022023,8790684447618012031,10988627615957915974,9250804704922597666,17905101658611530671,16989473035319708920,7477143298656860270,16085096727546713326,7395066367040768919,4101001145559466477,1803823210012151629,10146016420667607112],"proof":[[6801793229012510147,10560656159170410001,6890005819286424715,3127095587549718553],[879416768156747506,2399197144308850382,10046913631290164540,1692942378713050068],[9192059461583537788,13510492456264856518,17897225275391497617,1928138751739972705],[7213119094963076980,14103233928630453938,11280135587222093722,2046587233910366629],[4009896405096881107,8990172916126270895,799619736269724941,2679326100414503874],[16155455856565919690,5061964990708523169,1902122666115875254,343869268516906328],[9127794537611649855,5814250328747267805,4296556981629366486,2685070511949217859]]},{"leaf_elements":[10729759587231574855,14780151725676541755,13256208936519045571,6038876437146793469,7739035518069284494,81459772340787090,11118035873923874512,16326665708227802180,4989244718931531485,6154792730468802525,18355290569962525423,7191271717128552275,6779553173287613837,5265678406996848988,14549770372862601040,5532128926239816455],"proof":[[10755490913806206335,14702617229410248269,17447581907979504045,2640393026520544213],[458134419148441519,4506509809646281554,3766650108044620443,2953590888960172215],[248844622435178628,13520985268696963693,11418430057449801682,399408629245820694],[17194299915970532300,415382349675028268,16738602978340998696,3449836998464456936]]},{"leaf_elements":[3789702018995450110,15854387717208756361,1862553614940700864,9514253061725497845,198987545915237403,2445744595491142240,11873260469463328166,2136424363509213897,5107746734140941096,13172010550308694095,2233544282983968511,2369746150205641333,6878826575781853838,4016984314925335006,91665176381536295,15855865455423374290],"proof":[[6449941176220115590,4755010037827490481,11626402507764205885,228837083492347851]]},{"leaf_elements":[11323862628515517922,11439196860937776991,5413344540181736252,8741335607124726181],"proof":[]}]},{"witness_query":{"leaf_elements":[16727055588311647803,8885777124717581535,2255833877203884264,851998181994959364,962687561892187979,1490729377706747237,17625323919248213670,4537537267936473840,14568270133498778654,9783495966826905404,11502458377601853698,13991375305724391548,6432930387368914084,15162596646159400832,9304184765517869877,4748149369478786258,99656077840350489,6100195525578120269,15785519784998527697,17494124057745130250,12892319690696874070,692683235134271380,7222807762484991945,5805963958481143392,14675109825724918873,10842158885600269844,89639884414433205,3198441143802915163,15152589648145063399,2335772818549024006,12218495344858540225,15080770735416625653,14045571555679603531,9692861186463696436,10036266372959086386,11132479886659773807,17671454004862309043,13712530360719012404,7962629114730011510,10871477312091561419,14775215238512111014,17212525540469838870,8308749386662454070,13495468645781472693,14709969324370671312,3730483021378021616,17241587236337298309,590188127600373705,5000938772431643810,2272178230878491835,16740680178372313382,6847249934710297274,13007414889698956855,12014182468222183893,3894613936289126055,10871700317992616133,2174020995995771914,4495230304402265362,2210344952677059195,1974799283019301761,8772879743295595680,4249114132290531011,11149513188676276275,16135570632750240840,3211938458120786034,13787643681357272339,3991710975169688582,6248434201434347672,10967104655227615564,4091714937922339062,3402004934685040748,2109278041180993638,14922942811381089654,6817857881531906418,6248345908815302595,6892028202534637651,895355700834740510,13363495860371747508,11481889158753259776,11653359018219333016,10748310986488134950,1017795480450415624,16925049511907945989,18433668230077543485,1422249990499121914,8015837643582815352,6449520623991544543,10322093862927436747,3894391168290567065,13756791991206754190,16597513782211467886,11831226398984247873,5972498206673190066,16973497609192287713,2636240830918024782,18037446361446108517,16526123246784917486,14415670332102175943,5460121563524508533,2233542221222261349,14973281934741045955,5874452296045239633,8236311556636418183,15286314862676527172,16647670871703080728,16531155237194420758,7723643511896835700,11089423295362335419,16533938458376071852,6467320773945761093,16694776618578300471,10763334661655909727,372878587342472201,8222582736403174685,16952439751924560645,12509511674450447040,15422141699645517037,8163182088396305381,2063325874357958270,16372607749499697536,10246051898498548133,13141070850685727121,14794170672745645506,13637259565195035087,10184503791183746072,4956005087879564684,8349844288372481304,14438937179780637275,11427765997242910264,8670633627089359831,3061429912063648746],"proof":[[3594356867434023337,16463089456465042882,10636440843562583766,3407029473386696888],[4508428863530196431,12485183033426120239,5536460759245761099,71172717282304773],[13060973963931763908,11021545078440491434,6691213084525755717,2002242916317768805],[2072617215840183779,5918078728395667743,4975666040266429491,976483385695257770],[15374081832113194312,8622513456562096324,17624804384012159607,520720125059178695],[13995599084704078951,12313571688667141819,12191394641893821599,951339261761751106],[8932282920467107834,17924401991525761973,11230725411861407665,3219814244620665709],[5063971433149267873,345853996087683012,16021289784284998650,1633742181807046209],[1614643615339081958,13801396234458060869,6575795994579754613,2170018061199986248],[15270918330674064724,18424375348583209601,16403049653150833588,2224508713353166866],[13847400891124446113,2789912962675913999,2131806968534017233,3462450050851116088],[8306212057502905801,4513570971440212739,3182621761424601631,2007843718213213775],[14367620299360517077,3486062918649683097,758936314403206639,1603949708714258502]]},"stage_2_query":{"leaf_elements":[9545744022484601149,13435112219577569359,11754579295936931274,10574389036431765886,15927505733043323827,17818349665455463840,1038869716056785010,17719300959269227320,2926736856490736963,12628623516226157242,11877910173116007765,526792659841463135,17381977216168483469,12927537419810112806],"proof":[[615048575946349284,7626427913212106878,14292878835981161699,432003322446502628],[13617363888569188319,13076606295165014733,7234365462721323010,2421036886577204568],[10104228750598363928,6494696787061941002,3367843820976547737,1449722762037310943],[2619293771049440581,13392118472617480911,8747162557694569788,2741729531691243369],[9079131368162469276,16929461265373840334,6382960309651018361,253130714961180943],[9713930753926991774,17909855819251797539,14342845345007743789,2103406583052056875],[9455484183888340250,11898071210162451716,5420203414199277798,2527486755996631737],[17307470612202754099,5196168425885397420,16876091796142941210,2432214646468457873],[16629417302031571627,10368903630772021783,12808385451734518892,669650273061612865],[12955806825047399476,6486150578510343128,852423938643535460,2858942042869040817],[5887659399355191086,7174368684729802907,3922383235137934379,3354869013348000751],[17946811300233807722,10697057011455301775,8841411358577018535,2882676071995806414],[9302781254238343662,6119432163943488281,15090348966859265029,530198869118147718]]},"quotient_query":{"leaf_elements":[2395050991747497738,2896880741533064903,11950081882692507716,8544801290076553862,8573449185790876722,3960470959848588029,13220655747234046839,8573129239013546866,12148133107681702364,307819625906612734,2998132780343833931,1727512416885153411,2188012307714846985,2689149582412502768,2206725076301226400,7588931027844281521],"proof":[[3001113536326048949,13396817529449167758,6759668941849027274,267882443354579060],[13036957262163732909,3563786266166915565,1073131552992950289,2300858735853607012],[6616286888463820073,14653528777432653697,12416253337035629473,1735883901626989156],[5623607936316535389,29321881576417275,16365655758080801409,1573486845095321472],[13791904318007047737,2358822006913908139,6328353631338837320,1691182430573158139],[5536987045546768916,13394992654699036423,16697423416331286753,1776690605828882173],[4769528868582155304,11621424046509725183,158676710039590766,51476995157382899],[13498672912265323130,11761648744948964038,6874092319668859913,2801100184006480070],[4266584729228504188,13676796620947585267,1408597794297276185,2536825408424183519],[6264086271465643011,10371501593482275224,1421036796903795317,2818717546567841802],[11321327010506253185,8618701882431728540,17606487007445284154,2454227746734772045],[13496753780212999111,5601887085332510753,5921920338607442953,2763534670305069476],[8815952717605006386,4526522413909831776,14701097622325747530,3485165681977640036]]},"setup_query":{"leaf_elements":[6819706164058405013,1447371157040887874,970645214626133151,11678251586692280424,14470792011997542087,10823129797455624477,17316335323828824966,16153396521448381493,11915612664644723849,8461597555322235985,15479691121807667690,12484302364988649933,14988416519934105307,18327490112658278299,5273835414865517124,4377050930623496341,11405671733762596320,12397446325418335030,425872738026306764,10483810046149236808,8054263593072350208,4375422271267147824,4984012410229328615,148500384740782647,7475501928723120512,9563638901238021539,18422152589386956929,8117860077611098452,617266107981379075,9786086724664508846,11200152775129351023,2413518570434006089,7662812472787789001,15654894338396035093,15401243461797224793,5455893854972618609,3857117711432591672,15496950600984618687,10920379777963995287,5063418391300757497,2589500200622382252,9592626862442931996,4225255481484951012,9053261508975920573,7165664452170585731,13188796130946023974,976913271290158503,10533423902622631917,6980681463879039187,16671372929212232381,8532141031755405010,13556031612066445941,10441867125043342573,15442965109169513264,9526853102028041601,5297622962140572465,2452666251809793500,13374313830080258745,2716025223122338967,2157308312873616951,9909602381542847043],"proof":[[5240531699275656872,12651767059543770612,5463358957375440904,2800696920367068415],[13254845241936544204,13531013616207556890,4974576891604651932,1931315584092371828],[4660659356559910457,17513348062026793840,14847228048790297423,2920968556080343376],[15974906031089894435,12897415078580260689,5070180540845385424,821127204946248696],[7131029556765141791,15628033066817378563,2796505516794326744,1685383287155249489],[11008802951974949872,1782215689234839078,8238070276347538596,2317577844099736376],[9273570821074938730,15278248500398179155,14195491722997099844,1227496020599686853],[2416479267346555660,2891682180143862519,4883404186418943650,3244217618994557353],[11310416980522924841,3807836777832857816,5284541498733480889,570519396226990130],[6666251362431125665,12923444987057555807,3041116118283722521,2767188635987646333],[9892719404195873544,2546647787023808772,18037364276362727115,2571930886089900315],[18281726552398374921,10687318528114695449,13037667625031883888,3021881666691503501],[15649328145457671106,549776313160692971,9928450923310963291,2751020716435042226]]},"fri_queries":[{"leaf_elements":[14963318130716412617,18194157810678747813,1170754796224454141,1055559313903342270,3113513367715403245,9127440028722460400,12771480948877855458,6394464312163661120,472300103390517289,8448728365632249869,15410906781816529116,4182661422385783366,12511281957430384144,4948376044365766026,12408564701445616866,15320834725581419118],"proof":[[837115637285514563,10860309509382821300,14339541601722897077,106710026229747641],[12821234760650249060,3514150078112301410,7377287175407960520,1816027839392198096],[5514350124154977598,11481979764190736475,12088129941024873047,1585157892215485580],[5534517321540040963,9095246835818473318,7151797477141797740,1686847420796969907],[16058438183573295747,7983279015768726012,927685901913888650,3460860317281683492],[9713959494299763104,8209848556810028597,14242202521271656743,207387609604468579],[17847952552214599827,10632105656150254165,13951437950939180941,3403074921740609222],[13473335106084991378,8087828339387511908,8146161747446899952,2141452261045257246],[3836149467745891357,12700830065944535128,17543171510772478243,2771009779489953517],[18274227798351134084,14614972872318737132,13670777970563782359,2498334094624877115]]},{"leaf_elements":[8129109564979298354,13691808552572857274,3708734668028506733,7610364632242256183,8637187580461754707,936352171048322141,6028292351650983096,13068507919199303713,16897111728319023966,6700543207840724207,634313515027214575,9795992791421588577,18146492081070262302,9501277853093171147,7035145343446357356,11354223098133486699],"proof":[[7775664999379291350,3194168724791863984,9998722069597029031,2356406325681211222],[14542197104825925603,8637982619773489900,13665798981211834410,1249827789045108101],[11578821381284200582,13509323926933035943,756722498972069517,2974031108541776149],[2353461396289754969,2160859219742795876,7317602384919543912,1359513315536123339],[5367047093430431165,17482935022978133436,212560596756536963,2579869642965964445],[17647726135037315420,16939452995086140404,9926656647162993029,1129491512409889290],[3864735070791189707,8330668194952393004,13164775125511877827,177041749183560687]]},{"leaf_elements":[16475566031165809174,15325392876571330065,5268776904905897063,2968931797061382990,7522997360824537960,2946522724450032446,7047532903998201114,13274673540688035438,1261891468646577203,7289177497747361644,14266873858293886894,6346738787113190240,1019142652903352962,10842787559930328969,15438962912716504324,4636421722503434870],"proof":[[17256920270312594807,7784466799730635799,90433486118535057,3105622285119420210],[4564980509096746145,5089962408011563613,6258795974971092925,2663951082052024580],[8146435607594056767,5057348374914061128,4043163455170630552,490242688245896419],[15036230558710107040,11921162934449550531,16484118682594038981,2366781330473308508]]},{"leaf_elements":[1161939574018876374,8351817840696965648,18372653301453144055,1094858428888221872,17891497325732335182,6378736636084565709,2312548455298580963,11108539684721161071,646629569524013389,4395291750589940087,12400931690617795476,7655909668271100330,16676308543461110775,6945943938750155993,13376778799557250354,2903074057851475984],"proof":[[5616782601955618559,11536326776059504369,7332699799654596753,2141932960124082581]]},{"leaf_elements":[11506617648987991818,868082017674053972,6543021463611153452,11748771781491803820],"proof":[]}]},{"witness_query":{"leaf_elements":[2229099440558523296,5599028387192923792,12528013767867986330,9454867799515429819,14053179662292337645,8468289284247358578,14053064746459011198,13596885218054881664,4302754224618566889,16615246116134740387,11867604380987145476,6370928452743637680,17139928190019828343,6332447839131505142,17573498163158455259,5816437587192735358,15565386800524804385,15690698838747800468,8049337067462144177,2350878214339183804,10656231480650795995,12371604883343365987,7920402593150846652,195882072401861211,3078051551092397226,9715293934790306821,6988249542379381963,6393728427514013124,11068407791485386418,11179394744330795710,2592157307538992726,11827578013206731924,15290780260277651335,16913870120676712978,8447619680944881611,12603047931390891222,13612802540274041449,2833104854311663814,17565852631757434604,17567391082052361976,17857070044597984463,9562225065790693060,12274234722834993399,17406384636400746969,4895839714749827099,11391195160328922896,17514927427076910562,12065525194275806381,15257934418666110766,11151142645733104114,13687932484742746686,542294583373678913,9037369123427596877,18138865651406243237,1441708376340006348,16823643477882128986,18091863085516791999,13398191847839922422,8234672346838593335,4032269002879479470,11531819497753308105,17308291322263200074,11975381287151257081,17016126309217673040,13463462634364074959,8533706738699817754,16428563138188510002,16509730320881262903,1919333400491414929,17129252704618452465,7901411774627468464,18201160632306587151,5288251271281180840,12222384580567642720,3130230642244920549,11750664917651664560,16765366070637078708,8565484138859529625,15442646177870704914,8732938528211785974,6958822791763961042,17701006920091905474,12266003879889950578,12233712922090884457,15193124501868533422,13804196065347370845,9348782100298158890,10255533486799051609,14610813152218809264,6110188540120869827,4479683290284293636,14300317538615552123,5249596836279226723,12162819594835094073,17341571568434127585,5130821221897064249,3223811550404288455,13665818978724487526,17888979250741334440,5003883411148382938,14082981528532133116,15060642984774751795,17311068292849204477,11902023456969407113,9239213806391786591,11876507302315698528,1820069880254049948,14098209108635353695,8213595226606878039,1310885905328880843,5021965142939764954,7177918571994605959,3002724015532367739,17103811995119727566,17109309636834805066,16717921778191100510,15178943824012624706,2155039787995365938,12999100655817858,6636965915596414662,8073890514036086262,7382266179747579113,636692693856887170,122045739292013228,3880574922652045981,6846545691661661979,2430308434235888681,3635094737061354569,6587723471552881192,9414602028396473966,14327676718443661193],"proof":[[13684258850822180527,14526792255605920449,506654973189765992,2261424723294486944],[4637441574773281002,5007627163749993099,12617061995728078223,720688027679481362],[9497516528499065718,1626065047477210529,8893976405999213320,2487862883632515462],[10783977913901904777,10782155814575824977,871108419676727997,3471682156817646502],[2991271536915901131,5140424081277286946,18189102815638378909,2672247046009544002],[7532948798595184698,1056752502244893568,8579106303919297443,1418248510599393102],[15191133912178332044,5016400572701103425,9041465841760022860,753724187118719033],[11266133263594673180,9286106902223801873,11759255521839126481,2346389725699213471],[608537996223994807,5052671579903310657,16476589408828569751,687402747179203603],[15996430774802548813,2133700828433115620,2884919011913851640,1118315428087109776],[8999899993863035888,343305868797158242,12119011018425464178,2310739249807087172],[13682456364671077567,18141653164708263783,8712061362180406792,1128828888402053263],[10228429935734291152,15070756974979336511,15218154065077763931,1832421964913171749]]},"stage_2_query":{"leaf_elements":[12704150800171421724,13877790826790432261,2067092263023322304,1235334116650560124,6789911528774554208,4034157740353125377,8475773106488492280,12688367595785292525,13161310632463880519,14415940243476097083,2638880576809400011,341035541184699287,6899373962292879930,5198035963791201512],"proof":[[18192831684611729399,13867264412219210717,11390222167340895822,2449861647434756931],[11946376681202524519,7183570869481233574,17742019245181505865,225643613470579900],[17337016982375278740,10597231002281428200,4655021626255060361,1608121357592754692],[6207632663563155206,12030980170518363163,4771932449889855363,1459723152624468319],[13474974322570416209,4905948380969189472,801062023765188658,1504888603766746386],[3630344676017688819,9171804454745918669,13749916507668014466,1956559127278720833],[4395853796519785331,16661193308597591146,1029864115308283134,1744072709947231398],[6121249696837778378,14211706874408619182,15283914496140466599,230895556086656871],[14667397562891713340,5949438165242150190,571055670287669080,277025780872119269],[14310686493592408760,7877252193894340430,14662553633531673087,1227768448205866575],[17084674663193673154,7445058713372520873,11860933753098295678,2690951818121935294],[2552139015318238056,11872018541665332455,15345673388535962130,3124487018502601172],[2751258051649958256,17916243703110554662,13375786371768332344,179905637827751778]]},"quotient_query":{"leaf_elements":[5443742218778929142,11769539108216591888,16333292963974487538,5431505284954966180,8246876748854645150,12089496086992443842,16207811038799362198,15882290438899137804,15443675497132857955,12132323915894670847,2906880678281240354,13149287043613452753,613211912951791802,13296156636312053048,688520590055780296,7047009880458222836],"proof":[[3564790349841133468,15543145886235582318,651530066432323355,365815337399015543],[14022526613336320502,10911549331247418379,7154579130899125029,1769807072163825134],[6612362835272153977,15237407459162434643,11258933511665566634,213230106950061330],[10614730498970468140,13076099444384271806,9216885329882694310,260103569536987433],[334169507632601421,13583960729214377420,3302698625481617817,2385114966963966223],[5520600920680267865,4952659411451883978,2930429795038001767,3481973428135635416],[13115949991923673926,4956354891266187602,1358188147632039435,1022023654779521115],[1806646683100504388,12897257098438069896,5141439438556010974,2564671654927153936],[7530115382770162086,8451717686147303827,9542342747471222571,1603696559869007060],[13549430107270173735,14120134983373570779,7878001544555622516,2367153215970887517],[7123211934832565815,17307471784896381509,6159679868171803733,1550807928852191849],[17382057367068000542,16683567394761496054,15805197247815474754,1521801008129536395],[12356171133472036182,3715560352098057395,10451102580509047715,2369959934291544747]]},"setup_query":{"leaf_elements":[2594624533467960379,4641626357040249785,1497133257952173325,16146137806707727012,15978847470929350058,4293063154276030389,11822483089296091016,11605387189390468426,14836303839120521782,14637935013332753964,3286866342304579218,5331318952035488591,9857340229671497889,4533273802757379700,16153284483093512993,15434356000403725674,15727044414700703599,15509460513468032538,2974331621641166201,16952059597470781496,2222520211392057795,15328018900362239810,3169195552959339151,13807304766321999210,14565301187367776844,5834316771580205329,15264571079784768599,1947292001982463232,13981255560948026619,16862980427938856943,15676830047584462129,12020794021791485190,13705521956854828868,15366897272050914048,14533620404567511203,8225644400474702554,7044412043713281849,2193310413539772968,15834668342162662335,11893400147285167811,136065206551469308,1223304700655878009,16197353535845494792,5230761323454046638,5935709616553242506,12601139463939824689,12538585652933728339,7199353121286200535,13115114108788528288,15183202466877219847,9556422442286653858,16280617883368874454,8806741020881846335,11231708387544558745,2530596805864888020,4042369788334074830,10083918182560744047,17318994646102402846,16971392291303893976,14310941672203891583,17054954457604585368],"proof":[[2082335425977149106,12715880321228824478,12085272834623743231,2052210019973404383],[4848062440332994,15541983034584185317,18175508480540835636,3333505239829268052],[14214184578308237921,6054811946664339363,17729288403531627446,3395481439419917266],[10248717258504228341,14774403192169369380,17805059732291522210,629744946081303655],[3827349052744210304,8707902530883251455,12141966801112974356,2705132545628895850],[5913807891296121428,14569513303569245065,13209357688715482579,3282618791770370567],[10541178273818890676,12402278313446298620,6976371238361018148,2586514900498702221],[12179101167829783697,15984444736354789595,16808216686878048836,2542221680120283819],[1822526940964511415,191487880581839838,16884663915410887137,2146594898946790688],[2635406729944538580,7755331457626817398,7754307804266263282,1344692952980360206],[2674908234926353729,2961793619724172487,14426098509147974069,3286558288851690954],[9042756460705636839,18032916781835140443,1228589304641969201,1548027548703115227],[7450018982181130668,12654494844657139995,4699273518936840679,2505102648423673327]]},"fri_queries":[{"leaf_elements":[8358770292087276220,12072506531313786616,15690153693377462253,7129488981877264076,3083652953727026661,13120773539638325795,254740853479755942,7681348463467547065,13014802936910975180,1239468639833417220,13255199676302731970,11524605154211442496,18091955305889409788,17289002019571765994,5808451839621107069,534631005756609085],"proof":[[13460570590503112358,8815986423739037168,263100907188347738,942916707763149489],[9835803557577839402,1382864153857785011,17263175121949798317,389527884028907723],[10909796927640832545,2217517612543521129,15262607658104918113,1866558768565333452],[7376595209283214022,4391241015685839185,2259982449666213107,1254278590594456081],[13030253706353216700,6806276856508775907,3569856662363903588,1624221721209958346],[1798431961209076902,3160230471788922418,14425341589799134900,1599068684693535590],[12452104796680320642,14472831131785224453,7292853006546552533,2843420926205829168],[5314582985812671951,9766185085475412827,14076982134540043500,1436849805750538733],[6174463526753878589,3976066256589904306,6450163432787507129,1370516860777537170],[11836481767288568977,12693209842729345382,15494293070777243110,2609142590190361171]]},{"leaf_elements":[7007215700116805428,5279969368182507911,2048842774501115559,12346006495584459784,13470249292052891658,6900149795815965565,5425684501769746316,17964219351346255813,2930134145613216374,16362105551965153479,89482317627130834,17842884081350484439,972780494903355055,10098733397027410219,15692821980359951303,13935022762828644551],"proof":[[11251964397579098066,10371227138099487285,10510223621265601743,1045734344239014426],[6728376102031457562,359174844975121164,17374458229492820958,1628847933369238234],[10729928211847989397,10173948767655005615,16258172153565842451,3479762052107284334],[8740870165560560959,5593280064494976276,12265736355497372972,939376573699421034],[17892194403126607637,4763317137623934129,10795254700014707934,1271274731424425557],[831031810596103902,9375137598181528111,7637100785997718034,1558930276374030508],[18221825548504215278,371654840480040303,14092719419885102622,220673262799455597]]},{"leaf_elements":[14641763798181529091,8126076844639031333,8661734301755818997,7057729015970879362,11980016194258969856,5457715748878456129,14478219503045214238,16557846192866105436,1761210394906854956,12705417128751364805,13670718724902889635,1609189885981388479,99138466569820549,754747665188144542,13024192369134148795,14807572850025120596],"proof":[[2415492757400771339,10646301344596790660,5545060966040996856,2536919382665340165],[1561637246100476018,11391744941233112129,4119212403141337239,2485188293062123723],[10187320849882442284,686534248292088072,17531588228027383996,1542447043464305493],[14060609606501320317,14199662051727725133,14045188731999541466,360178435938369202]]},{"leaf_elements":[5617743489965329866,9656866167906423923,12342513696506161207,18445839140823577509,17173266430686786372,9885785082442603736,9640565192041168087,8859499278609365175,1962944870928990236,3217289664835128148,18150089437950339150,14748222972309771547,6995749073399235010,6830073760022153520,8684292857175602258,18324510307768863292],"proof":[[10423969435245672408,18154964293000735088,16236043164000731250,396436116672654202]]},{"leaf_elements":[18196018707140134098,3942247739030689718,1556687182756891542,8508669979898744338],"proof":[]}]},{"witness_query":{"leaf_elements":[1169026337575508630,4987507860946994006,2127723952804561796,1585199897462967086,1841126887212375171,892377182422924995,13925523524545465651,10890290721025377485,5801924802727251542,10087309554018352644,15938541894270301866,1014352313865297313,2794505435589195383,15658023999394737366,10378412876846257665,4571070847343992592,3555650458257159045,11752984017630309372,17956458180537564599,10518673676084931736,16473102872787882693,4261389477894180276,6509067857775870791,13436310080619496408,13628191688405071308,11281672159171470455,18013661082389571551,17509328606702775413,7040224409307270932,10434807102842063024,11257505639235587327,10193892765312279205,1852275099843258213,14294027861053923704,6451861650270032580,3085916514172345785,14469345815098890982,8086102155934161235,8804671571038385901,665669043975104888,626880905787483167,847140005870278357,4099902001491572091,4143915948116038552,3459298535182383299,7511817535728819390,8140008940169984106,1192442554558465553,3705303530468356893,18402765340447745716,10545488178550551696,16845561561608228373,16000460904668149822,13868548536450599798,8923872966245547246,4878937289792007681,722221452035646534,16460721147693569249,2990371678777141740,6743622358892465349,2714851106110182488,17867099391978751206,18160213373322887102,9180307457271322564,8092544611106342147,8589413621962459352,6159573342128705089,3160280494858633786,4614708472574317336,7148092167236599990,838999958458219208,1662963496186776432,17681757168926692279,5227564903230409309,13023925872766446692,16871942368672742160,17993528876652520222,16254640883690211478,14491142617319755884,10357019270594205092,15642782367715636911,13643032186790697110,6856390979077467197,1729767259339501045,18195317177249491322,1480096290555765426,9829623152180250748,1391041084130954644,8484919565651000915,4771508565717215531,10329358556273461814,11587267280927402892,15115399254796338458,11973589565488733941,6653176208553048934,12645984258715318757,1729883483085074340,17856912462112431733,9947635601314281165,4361283753568661153,8694032429673415392,15631669210227346296,2657196944870361680,10013383896216340308,1199921358468961478,9489324929418285035,13999223085753210560,4360057291421924431,8184867918061100955,10329766713403018221,15955378037993521339,1115690839257671151,8753298090402490554,12517684004593278535,15341791576320997513,17666788305286789737,9491316184383342731,7328167808774097118,11501468491811048521,9751967812658418126,7277877130309748755,5027967143597370880,12043039959982299149,6343813980579207714,7760316852789012072,13126498527392343427,10772329849355881494,2255390744176273353,17467343641506757230,5992088025458107314,8157036708992362868],"proof":[[17275013725500068045,18019570301431860511,17044579292572092128,165421455219536440],[5491755566131233285,305475355365225536,17536581006633279457,606625382194258895],[13833843975319402036,9988298149509942943,9547152424419037388,120014397990707903],[17086523859454728907,5864114823446826314,15231771625217629527,463148411116427877],[8672302756084763029,8488452155587555501,4582060049253250916,1315744841243204818],[18311329867529345859,11289448860343147120,1728928891441651093,3039869820456819022],[3648652725095728298,10255397692911065960,6019293248167040763,2509173491746812850],[15637296729279310238,14275364387277708288,13578754569454781096,830554599302006305],[908434258940919648,10452360125441393215,4422223327960584953,1296523216792680146],[12425054602644502221,888520762613982977,5414234429864770591,928688956887751505],[17326761311744562773,6549825147000992500,15953425104837634195,106363353390309433],[10015729539933530335,16677332769860113337,4544647630350854330,2289016026089552631],[10170411153944345348,15189428256572144992,12959700760463722718,3298790997504217383]]},"stage_2_query":{"leaf_elements":[18194996216189526292,918615050915193549,11065810798045663363,11195591903649934773,16191337279392914273,17443491731692372426,8522645741507280252,1991437507260220254,16241249688547472365,12948342728149401450,12726216140055009267,17841482046568751534,10432501770071474933,10530885338481682305],"proof":[[16767748069929140,14461800122001471689,17099201863411048052,1034853905971290263],[12551991901271164537,15095840834729159790,1030819330237141216,1472479661953211183],[5431727264063432574,1528202202515134635,7677095660147376224,985658783701300025],[1794556268864256573,18429209842690687499,4840010312688578368,309493642247820764],[10414350114419685592,11889998672875817997,13412385749534570958,2560101950190478918],[17616736784289168398,16913523434183242572,9680660457269731739,2585852965220954278],[776625350982990785,11668683199683723098,17907773124713677306,1038266782792444613],[13122535229168005194,6216250053879741190,12746702051245264485,1531863865424987063],[14182750031266697918,16586495595498551604,9569515752955463154,2059316516732528086],[11765963989955960199,13624085261983232663,6728595976407400440,1785257660135406246],[6211500316236092806,6560614962250817412,1897056650320282642,1808284784011234849],[11382531354751073732,12862440399096166043,6001950675235833060,2904395028810313080],[5944104811179779230,4705743378997469566,17252932908060409042,1116220520959491408]]},"quotient_query":{"leaf_elements":[12762700095600847500,12848576580326675030,135775853856974646,9983334645463621414,17132488458599854646,2876611369037183737,4650300367088715915,4862838071337509446,1381134503193073509,8757450727382103480,4293754069911777402,17595445647321586114,962917259249306991,6517129351182573400,2738624904936906656,178781955830432801],"proof":[[908839345071774285,9443650813882846331,11755713115332503531,1099993548939911128],[8230845672307963594,6452926773038304073,1436974555856988972,780887583380151484],[3657537565162425876,13339315410315911931,1064011483027762396,2423209754943560757],[623938157722393000,15986257347523210695,1861547453023935665,1045520882101736462],[1843998699214279257,8618761283590060748,11372950870709919888,2666259889780849437],[3466989944977415123,1815321168808514740,2413000802889900928,584931329987422174],[9248325282569100376,3257088015820337055,447174119495481620,2220516792815543822],[7785831380690014756,3816292646174152492,17049421997009426556,2588028002528659699],[10868704372010053365,7437906797835302058,7748282333925135651,967904334897905274],[1744944210677153606,14898998155686445638,2419429639788087454,478574440382010709],[3037606756596658597,10752406595064792868,12601430933494962451,1486419311172264272],[9907624180812629469,14446971549292473164,16881439250875001044,425190254503246614],[101117472389605186,17621311294920231862,9537129816252271277,264251130147554038]]},"setup_query":{"leaf_elements":[17369721567974553625,17267534216551987602,10040495944760196646,4935893648276814998,10673488011117212857,9365951764687392576,10497308573908575033,6055892912428714675,9995077351912811411,4004856904068035109,11846913854376522658,1861660430450723296,4737031461764680380,1198923326318839747,18374940542804678313,18120331973139722901,3786383584340300485,3665399265073286240,757834689302979046,8539228731720387510,10223661848127423730,14811842156506012646,1902132282449945100,2979300194014470392,7280781717255901111,3094294112539795085,14289267027842718177,5110264900030225434,6345986906625862685,10844815801672640173,1589372942566344261,6414363228119871532,12858535510843861624,8425904342316070840,2701061416932348578,16193337298451809620,11957090030104403793,11034171896405568983,7935866523987595756,1836210915817592011,18360936077136947906,3704644615509040210,5773997913189078379,10287229644638583302,5371731531396007764,3504766614189713980,3472662056978212710,5835690960760483042,8168303601974678981,12052510357919400318,12089562167480767102,12575335122308310793,235573932294616623,13357794991921537132,4068302609527800115,5316786204027201417,11976439892985702808,10851683718860176422,1091212185595294895,9429314775558567627,10037695766342841165],"proof":[[9603759759403760113,9105692358394178241,5591889150685296400,643091004371537422],[4151897306936418851,14167928841262648415,3907946319255112872,1713006988692741528],[15221471355479784443,15544864251399782868,14708925457346996456,3405446618698272235],[12857784121346285613,17199278401141021437,7643345472701893377,1833908035129090794],[13982242722569369253,14956688195675346289,4402535542574300994,1520871274825367651],[16407865486623853539,12430587678243142252,12713884778387550562,2764905515213270847],[17212016974638036994,11598593538226779614,3802286491860133644,2426845490746319248],[5590090052372163044,14626059057808858903,14918510073923188059,91007860874362021],[4331755112024051676,3392406095600032080,14177816833970995972,2821549826318628881],[12492951949980409652,7834856766146413272,2078098890016986603,1764728787865290829],[16173925822333376402,232727229995140793,130917651684296076,54938220172188244],[9379442358549346120,7100708449698755218,8003531104624666850,240405821702236893],[14721891719636996984,2949626462121883205,514398815710631466,2655190417159851675]]},"fri_queries":[{"leaf_elements":[728881734335668136,8509505192621530846,12514721522246943190,9113273814884650445,13752033775781498546,14130132581167113409,12548916631866699412,15817444541757738108,16394701305378940095,12693025312079250803,5773520103159013032,15313207000073303832,11354217187191066186,5953137794810908286,1867260727006224501,8561969703098343812],"proof":[[3061353450971088649,13793572821388361253,9984203067653732816,3426482227634888805],[12887946419334196726,2539101263950432195,12129078546123502761,2949320824227602452],[15342994387088663790,7447646069369132333,3127294104238451619,2713063922256133288],[1640714759562748672,16619608578055483149,12375000428237393328,1497920266607852120],[12078271442484866510,236484162839540825,7518486392288929081,1080700272281047940],[15977886946160032904,2149331720462486344,5905991066040727658,2207870891678361536],[13155543566709587944,13656246068263336094,1155103612438976713,2684446003927580449],[14753855280286232625,5820772626148958181,3100950260116691930,171478781242230670],[7152690124974453139,12833156512135954046,17166947046268682433,2896533487307130005],[5939124624586656117,8797311108778415437,8676485774919245055,1516009211411584182]]},{"leaf_elements":[11865434967500349365,17492241206590753650,1778563656028676133,3883207012714827125,15845953737339694460,15939037051748475979,3117604357070642287,14315512290629329576,6881197166396573450,9433611125279689561,10728494661002581501,17248110070526226191,1691559248627470401,3130380105818715664,9127807085938640088,16564695974562600477],"proof":[[11159373996866711422,10860411575853548297,2983196223082699229,2458340036936089689],[15598842979112164627,18038236874642748572,5400146307688444676,1871368251843164099],[3704591643668945506,13619801262334418106,6892764789645880867,2290215156800120079],[3971020886639112272,1905553982466237734,3646122373655155467,2329293601114980419],[10277448828266001914,4377717650572238827,14215543573906462839,973551455220086087],[1893623453574328340,11613728381160159469,4071645331713565730,1711775210905780789],[4226831722111814395,6655831638141719359,18416793863196828265,2754055803328667659]]},{"leaf_elements":[4214479544341161098,4451634067580902308,8692405550764081331,15306171780998136394,18141630236613899275,14827037713467860712,3948239617453515305,1798395024303827404,11903755507728468015,12888178283194997389,4018485881144587835,3844040313248467481,15070072488943903574,9206633274456304748,3227995667717832832,15806131501373374273],"proof":[[4759371278859000419,6353988611992497364,14128316604403190811,2448905572076335786],[2008656846137273274,8068752598518186562,13669722476974639275,3394977419891630510],[17425176810934334979,9223823599904378368,16399804404978959993,2362328860189916024],[10512165384836540950,12576725843624026847,9749163590345599686,3286629949348704569]]},{"leaf_elements":[13790855340402993368,7414387734080379513,12975407704994933495,11495992525856327121,922490172660792407,2216591724534083829,5681419279857519838,10808937684894799099,15699585052605113537,28254719198542013,12781572970255467545,7196566718999339916,8152988491243675749,16434549783931242612,15461814104182559509,9183595432750050028],"proof":[[14777760533211147947,4160079023517810966,16181012839474086048,2965431587160692161]]},{"leaf_elements":[16775312693976535021,11906390845590027506,16723574221087713398,13884781623836882318],"proof":[]}]},{"witness_query":{"leaf_elements":[15389693519449644376,5038179981953817371,15907097853423636164,16751324993051681396,15478271508498270332,17306584256326941463,18318277445387346010,7367932442394175793,3142928046692311477,13092978013339379175,14400212429644486795,13031356821499690318,16358198319582682608,6221245169094680673,14536061455173452524,14112196263108786836,723938066492557116,8648853517441889982,2335044746788114427,15735300956476951606,5715939653785694711,781473933018127593,13722126679187476730,2666453726375027381,10246239177231638657,11348850456152336526,6537002647474243832,5752184534121595466,7192937768878190018,10564200287720272072,11196929179577233889,16861523040466330187,4391322198474157468,9171823339875578933,276060631324239891,9559300907813668397,131394046199137861,5157372972120886782,17434241450459335548,6830235253451740900,7745287540251481974,15369345480685617681,17145140531241378193,5114620754579389620,15808089704066102341,16305360388818673202,8033095166175104167,8633020805261336509,10696358167701298444,16601816855668492906,1701096796286572955,16782271765626001587,8311210759073165510,15795904134157642778,13290475895664842346,2309043124255681209,5688853084234558588,7947491916304504712,17321400494324392972,7982566789092921177,1731076968457765509,13509524065017321239,5495892168496843502,9697174101306364223,11131341262143139271,14531992503215722177,11778989310761002904,15364079065642013733,17182773298688103310,6678505161286749382,12351634092121961819,1723048222771233145,18083665823771409452,2523527740956203818,11952965225909182774,14981879593731677452,3612185188963499605,18027419996265366607,13635994494512248461,17998119066049610652,2813515234255298223,16851738526771535378,16845358281728626057,12352758141461110186,680496461156963537,3175937746217209243,17657174996074975310,370597322351785634,13785815552668523315,13292739511651939614,7581163024768824815,17496659329751833390,3800447917022059466,7266375703508704352,9452673321578080074,6227268951871613947,15935889864130044226,7596323456547216704,15043683530039980214,4390265124273065137,10896402355758166722,6401361468966064208,10868656421554324509,2166905850225111137,11910640907338973458,13395383310183424786,5943265395257946469,7811929837676463038,7841910522850479612,9842246780986121091,1634244291068244508,14815925187163878564,18353778061760353040,13826804576803871886,13233326517368728111,5961191051580170127,3369247080225375471,7697970522406781153,16743711397995377158,346933986963478582,15996620155404513298,11783429801923311094,298152780080915467,11953269715764907414,15818156759588287714,9765222254701537369,17923096703918503536,16106602878891885861,17631971119865834500,5605688792052543291,6948775488170928834],"proof":[[16815313956508944314,12810785243537008570,14080286575052630635,430553277731294496],[4377692400944796140,15690310718193664211,12212352275288991967,874798388141921367],[4088430374807000313,2696187034616971230,3075859489991975995,3030002764719874144],[10677139061786364968,16330066261165514877,10352865108420015480,2590158989053698245],[14093438057626301882,14434446109274152315,16496309468612893102,176797065068249529],[948910130377503810,12587892698489502425,594556668353043034,179737944280304122],[4372318756114008595,16896787894194169069,4266555605043832733,160589241295209149],[7184236255704090369,2194747309331510485,1814930569548117353,1235791704569145204],[2600580733648450594,10305555176746422498,10605721023963914011,111748766955193454],[13615772645470212926,11933243305290104554,6879373570622515347,986134934225740146],[16138292879750550217,13270977979011614910,2587367775404837619,670282248324348919],[13956835885681269420,13977950138640785752,4863109640880899263,1937558364909967234],[10170411153944345348,15189428256572144992,12959700760463722718,3298790997504217383]]},"stage_2_query":{"leaf_elements":[8319342768497300013,9009569655544518313,18159246955733947425,17085106827848665690,17044863934670755367,5760791453442719485,10804984884533552208,11219209782866079076,8417186567676251454,14587336248457766560,14696195242430391266,11480669389208706277,6107621045875180844,4890701661153407339],"proof":[[9984249576194496441,12716827591095029894,10219617841679876668,2554629563184936105],[8917730207068821412,17665612816923605631,7981455134342567637,2502113744175905364],[18427569311697780574,6025448665159838837,14278162855558087959,2839505287227997282],[7033423866194113767,2765714364280171228,2708147182784367442,3332708604172678926],[12998144279761758797,4393276911749999087,7102059070177827958,2816783812405819474],[481064137907232558,9115359698871173830,10549468096445241005,1732668689371649701],[5914198853886964978,17373576964231163683,3159862900712454952,2176215155380670427],[9470641688670398532,6860966991048584631,3652726533893335419,295745076526821628],[766650290998193620,435203253753385534,8912943950692291243,745672242176573003],[11611572795116234415,14604468692075802986,14859318733760582479,106745124045139078],[13284840367506353666,12609461417301466338,4830301200085682655,3180721742702944775],[1101391570155270103,18030471955809926170,586352199699272119,1793679619803222441],[5944104811179779230,4705743378997469566,17252932908060409042,1116220520959491408]]},"quotient_query":{"leaf_elements":[7140397498690996616,8068240907940179366,2676547185565790665,8757677223673023861,15034305211661724790,3780746626234336669,13218330087600944487,3571152321949812228,16108538445725122269,3745967801525903094,3860141324814398270,1497468757224271526,3439727460577798436,6388711596087254038,6222195853877753602,15477304574525796243],"proof":[[6173874435124293765,8777543018241656185,13774734746482583390,1066371725121225345],[8237429034716952376,15867904007021330629,17031463640951045549,2590030303779929070],[11459734390571271983,9398373960982490511,12084983738823006113,1037962607901502119],[4670750095902494798,4426410686420796398,8984496597318169048,770655950034131117],[9459398821855017831,10948389232646596022,15301630804568539084,3065722554026821505],[9735326468307623475,6100674159043031455,4165108456091422801,1600987482343689547],[7663131570728132961,16957291639537350923,6008847615741221766,2849563414569619701],[970259066917599697,7663587304428967884,1100678013216627024,1595092779356254221],[16299588941941355374,18307713630928378492,5557649199316055006,2832732146580150691],[16240188461710060868,10777950902617923468,16712190997736403001,1740625406950774613],[1269044347733385167,15197569271567601323,4526178305405777126,1235445967747812413],[17805648031392826486,2073215923224479568,7861966061060194600,1640385227104014486],[101117472389605186,17621311294920231862,9537129816252271277,264251130147554038]]},"setup_query":{"leaf_elements":[1162640723363281444,4592745520662151432,2498599055040711827,415854216971341625,7048112655470646577,15107607531550243520,4224515406149178825,10739745523509147209,1512535250306950460,16780411270129909693,7235796680035158237,11755955765310508754,9935066019591909433,13239585532403783511,290452406345326690,723342063003461571,3311564820829892858,13831625587460246822,17048536729306506417,4779892350101168051,17521156717666329051,8457126669851543838,13208899784872714115,10210189112870346337,13919136133263520185,1460367637163248016,2952823270790995579,2647506846602191712,14483172624685387586,8571841207913466867,6692835811644289368,5138926495480453073,1468972428953941543,3759899131759755588,12287268611163626386,7189725174054863624,15137379807156896687,13942957464329716003,13133321160071361306,4439542824194915901,15258526373953598286,11069049539558915267,12488335708976779214,4329715422627646303,15577164528780564803,10208699697469560393,9381282301814411857,15586035546844480654,1136015603035961719,8100359110560109332,9022129957917766881,7050088376695651106,17628887574608695210,10120277210484867365,11161252585457373644,8781486878066227097,4507986019270398347,8107283387910571000,18165992548207838504,12061560110946377270,14236483840164150401],"proof":[[7565255705399558656,11577595045128327700,2194948195394286538,2252990525210986001],[3548709726315262681,7504193735564815110,14169453825974596498,3075373882057494430],[2131420660845517794,11259584243592729532,860890437612164456,1095330656610430290],[10168866921499038932,15508060906977989282,9694274284555413517,1219226193280204575],[2592198125934040696,10505699080905519863,4101482109823267798,1004366793534080279],[2223835944726716335,17530911941502055388,15532520154634970364,2612339682258117794],[13146976590170125616,4161197811289774750,17195914605652385452,3355512514969026183],[6479653370891765442,14232343854245830984,9901817476014369522,2043835118261663289],[11320626287850343435,7094535524195806287,16857801473543370086,2868067167961410584],[16083932235521214651,11052585747024478772,1050563401291637167,553968276334897528],[11511593473130073380,16758027243998119240,11238201813964671026,1610623666683215022],[10516063788198811860,11521768273658753976,375854070151956021,797548007667768901],[14721891719636996984,2949626462121883205,514398815710631466,2655190417159851675]]},"fri_queries":[{"leaf_elements":[5042709027524099547,9310481383413651208,3922421492748094138,1174749119676406014,13869876365501143249,8826826972437309764,6452158360317836023,13203373037177387539,13027968261582857526,17544998200416502926,16828700748895253698,6848045503659705634,14130022509299613572,5184671048283652137,9866009882515647879,11052132038655258721],"proof":[[2701275243639256696,1823111265060954116,6297632914157920387,1859714997478388187],[18064532508635293273,1269228953270673982,13846446419217978932,82472098365337626],[11406249037505794540,1441059730681983529,16396407950675386745,2925641340413512243],[6428124295697452860,5181476497642150635,1278978003685118902,2448924703169315608],[15149028989464701999,5901149603987608977,4772918424412192559,1625993390672497881],[17316770116590607772,1779309067084439660,12390197381842328934,1416071136454322042],[8473607060741978431,13554102641645913642,4940415124608138434,3425705294118668807],[9869303500020419675,16951623351796344107,10732088556418064923,13056656217461683],[4999245903498690337,7298483859315852371,4711531156947246730,2388582959435649154],[5939124624586656117,8797311108778415437,8676485774919245055,1516009211411584182]]},{"leaf_elements":[9263448910946892530,14844082906861295181,14082267717860469530,1696812927716026202,6099303238268940993,1946324577250961275,6277434233064449621,13923821899222712547,2643947075425169737,8338226996300674935,305066571431903970,5709716333269799997,4943591720422156233,12200337090769340468,5136749984555521854,8694804850262022010],"proof":[[8662507392640303615,14474485068128453538,4163329447678421486,749090120601933542],[10977818749876770900,7525885287852817074,9880430841466529112,146411727468888107],[3293845982724922952,4120504461709260765,9150041585877338389,1716262569160059627],[833915068240585543,8741965102193011948,3976710636698482744,2324217604739011653],[18211480017626989338,4709303199120528782,1502152619576634948,2223187906636586282],[2767861238377875692,15785855316693498676,3744809610891684183,1567103551091653836],[4226831722111814395,6655831638141719359,18416793863196828265,2754055803328667659]]},{"leaf_elements":[14958564030690573577,267318822844730965,9192418804759933572,7252966927688988731,15126130058393621059,14052418355406396666,706238706480646779,14350990268658631226,11044230523938883674,13385758136792853808,9612460927501827745,9334673857116548970,4270377957108915122,4059042500322783387,8037842328281328023,2056100270268452079],"proof":[[1736913916491834893,7821440272060090245,12207507031267195590,35802290930883218],[3361149475921811048,2294286482498528797,12030246206304109516,2389100999924704930],[12210735443468912945,4228653015746222779,6294461639017255781,2485205723841483832],[10512165384836540950,12576725843624026847,9749163590345599686,3286629949348704569]]},{"leaf_elements":[13790855340402993368,7414387734080379513,12975407704994933495,11495992525856327121,922490172660792407,2216591724534083829,5681419279857519838,10808937684894799099,15699585052605113537,28254719198542013,12781572970255467545,7196566718999339916,8152988491243675749,16434549783931242612,15461814104182559509,9183595432750050028],"proof":[[14777760533211147947,4160079023517810966,16181012839474086048,2965431587160692161]]},{"leaf_elements":[16775312693976535021,11906390845590027506,16723574221087713398,13884781623836882318],"proof":[]}]},{"witness_query":{"leaf_elements":[18285053511271959385,8899113625371227732,13472232704757115409,8786259087852226723,8529252521234379010,11521945807738869587,2832077901360097128,906773942836410192,3014699498002973399,1274632102119688682,11029301622983254309,13919566558847960089,2775285843076365110,17014056819092946351,17395952878953552956,3383479261983343138,17375845883951787768,7690758129707835769,13545974727330696013,1144924175365519849,9248684486401316158,6989829285263530905,18188276108509698536,11392833371361003504,10142486972034711110,5014301490369627477,5316167608893305,12266041342087042058,7194981849322330450,11278893079245787935,17214678267898700895,11929948704412136406,4969574640426046966,4986018054999345126,7040260231422804160,14027831284176616371,16648537587067046791,11122936552352208156,13927907505297532823,17581223583420082801,12327872525838023974,5851402372931420367,17615679862014265007,18092513238351985940,10466394329417842111,971152230312937620,1871359428107763127,5740382559649406284,120928707852164887,49872184836508642,9310909969358249036,5889288383099172077,11002161001120686855,2554192116619485063,3608023940261673281,17459497921452549056,8926195907093142443,15511313656827483200,17124556835166374976,17916169672020273460,15910746212125016192,2345554533561032490,1861015851966039291,17330932105599787305,11829232933625422177,13310283959928660431,7373220239532486838,15714122868814165556,12392944137540514956,12503204861188825023,12355570451452531897,12050884932332913138,1704583166931217215,16595666690732607909,13531290060407328271,14946758960008456762,2554107385543102261,2148605243160704892,612919517322000736,13210343535760169800,14518265097472531245,7723412107598258451,4419935464658402915,9651541253886428992,7440127151286983328,4770044457279554465,8972575937298108818,15718140915957484076,611327385089372224,4521557633633886420,1456658287694820951,437381106631462503,2440997603916140619,482080487955788230,897686664150812734,10907891405203649229,17116255001702396423,13585073693843319651,8149910953041709687,2200955549122642119,8366121861124446510,12493535009838846063,11088658051358819696,6310489338253194025,8098099547255908754,14557784827661057502,7950474352354580519,4348034686140697351,1960253474569964040,10110727924867478168,6909924217488402272,4748862316594166364,9235053598732591788,7913054401038361659,5375636275901295301,10175114751111697395,10889719452376284079,192701028851152914,18095805234596605757,12628890685896121725,6726966580267924656,17226337672088972748,7937240760642321128,17373392078362935403,9728755937487226129,14292261964050827710,10146496611085718689,12191163293932001775,5385348852328689562,4773012737078316773,15322911942638237808],"proof":[[4545194818960032484,16018144182842015731,18067576870516734760,2419419172432653559],[17673727522841070522,1198031396131145187,4415904375171390292,889273925402813004],[10861055764602997009,276602168743788250,10492615463841122110,3069096869530524174],[3590790677093904080,6209458073962409919,17826056093996804225,2514714038129767757],[15323997407979350882,12670551512264632074,4464036571546599655,3380529046725681531],[1322732891488752738,16841167125921369264,15732780943199899971,3456073242329841387],[5271444214938501175,14901842527422780606,14974657512536343982,3100787563260163241],[12017810422671066459,2173422596165313575,4218828457234441800,3360623074519427448],[3919076186141974043,9061765407691628343,11712299689573710842,2788220902831524556],[7845104032949413984,14227682426487064844,12235787677570897478,340075377670963195],[171331851479781644,8936991567376566139,4554582658362714294,1481229455953702197],[111213802398324409,13414388693591907295,9175218896119912829,2638942766800436560],[16081857253535339839,12369760122243596919,321147843985612881,1421310820854733572]]},"stage_2_query":{"leaf_elements":[12456126383752732971,14931932540637733263,13934278755007793162,11105905833463179979,6193677485870706186,16408135831540989150,7375262000137493205,10991394822219102245,3933737871843023061,13974085921739295357,1540761368483916640,6365144102870467592,9643937924950139937,4014520346124968789],"proof":[[15465998944310311403,12234905213185367249,13805137643441674662,3014227802387064395],[13380332521108137712,2830090874255615832,13996404841464836153,1139930489988401652],[5009640637135915220,6165366948899981337,1818634713443111512,1789999080156465552],[492302721022228370,6819045086253436508,11602196214661782495,2203728223441132784],[11245215951091709276,4051338299489848562,6662749941443455416,3044528590392166051],[7371147733066797928,16041021454021635008,15345221468532215805,1446022579044689707],[9391674918686134553,16603300007402801928,2639423570674964465,2750899057419640066],[17411636790108841105,7508791718293961968,8079631284622667542,2590178211272507977],[5826166708349852873,11921068518626084177,9771075151078444663,389904575025083676],[16392913908751044941,11940657156077815363,12512314471613862433,233229714298843809],[15152880817095458326,4475998106991160465,15008538817701683484,2211487576287516768],[17177506030369921111,12851121567553979669,14107730224997407492,1580369957140359352],[15814695789183998421,56527914284832412,8797409215270913660,2669762635623790074]]},"quotient_query":{"leaf_elements":[16659710327741176514,13161315297670969184,7563016604501506120,2157750161816032433,6269846329087011460,17061854788890392683,5742950381266004672,11420386247947934390,15068424444080904583,481961234042858291,15083429300171344719,3978012608306830565,11611820401516839687,5311393437099180658,7050732425284193844,8296310099707201126],"proof":[[11441277305951961880,15864268422525302161,16497273665756696957,1700916925459866404],[9704093396994246900,16452009709101134929,6844324897364443035,2291420782868355936],[6022867431322267916,3469352390779293647,10857748299217030610,486021625394616],[17086019409186610975,16792497820199162727,13977348804571754943,3295076915492296076],[9441460766693822997,8906264123734800291,10408301393765335882,1275843404009216838],[3138403374739954072,6950033652328438777,1674538102154547198,856400102791239999],[8723803772561630216,13069623965703409915,7136606662114402762,171647176346851060],[17116104540819397107,8295648146828676637,10620501277389384999,1037671099779942170],[16871737324826904096,7853893427292180107,10729084540305534280,784900133877557655],[14582940653611852153,5204292480076757109,5076104760862492616,3321339133646313086],[14956780942580856435,1258560855878731901,2322737509787285841,2918643104563390249],[3483963415091158506,3894653977204847782,12406404646759003454,3094658829410325307],[18356626245744303853,6926726491857343148,2930800252704934760,1845281596278268515]]},"setup_query":{"leaf_elements":[14769550792333716161,5574399603868657248,11076503449992510894,5175950689745668009,11092266209861279911,15325204852205281745,13566357387238080817,11734190158387935861,15283541991386046553,2623171831163979062,9465987268076892546,16437539805572577092,13851757620825366156,5895478397210635400,8207989499911128189,7712816031029260719,1733593166444192239,15361194788148042839,11047592525540996572,8414468202211681075,3668142552614510346,14852753810648054223,7780391147614866754,1572659983320197015,12507005579905743281,13218781168519837910,18062666187274590518,1845160948702411629,14462575549209402604,6933129291745090278,8289505344780094625,13759637786993247341,16540050479359134727,1934050164386170030,13782721757343343358,17331843788736014177,3858554466743041012,12668795621966070967,14129407791504140850,12759906109681788418,9741917269371017565,7592477749626581824,11660955497148632418,14247876799831162487,16573273210685514117,7200009263218199582,10327304688426669199,17020977877326503780,110865720092098537,5807087527279555782,6977972342651660785,6573480994268194800,5191487956396045074,7037679846585973926,5887902457872345706,4502711082162679384,9167243104713429423,11609228784005437548,4161777138272437935,6607575619651619678,3524355707497740864],"proof":[[6308557664116217352,17861180893341047514,11352686499124242891,1922978480911490145],[11966757126297198274,2978184146264363480,6305287016840053905,725401353470118692],[9846775339254548923,17941431912097268017,7609774203261416196,1915414369800656990],[5602786177808854999,15796376611372695084,4735199193393585482,3203576713903796288],[15233240229596077049,10415112759706881386,14296658490626720472,2884724579516275804],[6654559979331305484,11292313271308862858,11595517128811293024,3379789770102871647],[4157024615019345165,1730475715599443243,7601394378035057066,1939293231286493609],[13109370203292663665,9721893962074922039,6368398350388004718,99320754152866081],[469144306697255768,12868324204690112656,10712994981835943633,1739817538384926241],[9814661791264875806,9420661027775581088,13791379520687020298,2372271057587401706],[10000891259386339385,6315007953130685884,6887747776954917417,775327446143990338],[11560595489664821065,14711084012141472140,9667246125152613359,72718795004520500],[4629382627929813659,10434807975241473018,2682618813578145242,1989052126100709949]]},"fri_queries":[{"leaf_elements":[3256415220252545437,4945839825387458022,1955423542425192362,6202974793420086912,11369679411345601321,14074687149061282384,13319981531054582405,7290344013881849129,4799663464267643739,7403391484109178284,7785260732462119537,3681510849991888246,11160740561721017483,6247606613165360793,15529427475402798149,17566910154602952392],"proof":[[8186453186864381886,5277967090589380922,15592800657724045687,1263530238596958939],[15509415087562280047,14759042481001370711,6089564515211755593,1363698311128378544],[6011370238097314682,10129549209241008348,14093930644285260345,2460414698389522955],[4124303585425168245,10744597064301956010,2112509591100677504,2137528403038824509],[828152123813802469,6458350874142000896,10457087731622039757,2226312563487637909],[5356653560643438828,4953445040931655093,5987241981767271384,582093598792548341],[2598533567160923825,1492802831977426443,2426288801517425884,386780708791788308],[12869009608291108887,6090290039398388224,5738066062384596457,1725441883651360552],[12491559816505698310,7859756576441109701,14895406505862962053,2931918777804915151],[15662626367922126968,17810244674751992628,11036241030129481650,1434089276239568845]]},{"leaf_elements":[7170165347071463598,11255748720080484808,4417659934435779812,5342728612302938412,4709107758481528403,11316166300506137474,18369567551990336353,573034973715148845,10370506011363367167,8903396280576519996,452309889948293977,8486569851258600500,7544923888464688228,6375047594197815438,4032251777532425045,2632368442816034615],"proof":[[14466566885704289311,7695595986587992938,7066725076051479893,2170429434375369892],[9452123755641402114,18330302655730356258,8966399234399298825,3451454856793802954],[15747922773337540197,6133401866917676944,2594466990523678042,2262664933711852949],[17751198850040091301,15883223324839576293,15144880822275581688,1004106752842303932],[16434240657069264735,11480357466363264813,14267234548891798770,1349536451464086332],[6694393482400992803,9377296027434232341,218594664158465201,2649907960693375389],[772002559898402491,17472642335343753501,5484690018317829634,627070858078387906]]},{"leaf_elements":[5830814031683715740,11058006329376318108,15601867257491024710,10353541744365965061,12885204819861551667,7041622066613008195,10442332493100454569,3383173754296491177,4715300644367887996,14000610411267695084,9416722056787379029,4566244133653094266,8750067520076775321,15371970698808037611,3576073655089744817,12540127057735692909],"proof":[[5110993140968900735,6427708914314604314,13172507593245240792,700461219376529580],[17960074102599957202,17446519498755199449,15192701518082843601,1511720647798143606],[217518400021473653,12326198898289941254,14373323732582149021,2685234189206933142],[14851984780092764014,1641047040120452539,8824922906790340682,3018535465669299193]]},{"leaf_elements":[15944738748606314490,2274005129597262509,6673033953838553594,4782849776554528839,16471427245309607619,3638544443347737602,16900485101718499277,7270002477188713541,1980029502034887834,1890826269618363501,15614164942184560760,16775737583699511213,1065694939228935166,5741681071371454950,9624583362685852590,5349665761988333245],"proof":[[10109734138832900614,1881041950409089259,801683665027458401,2204090125200326105]]},{"leaf_elements":[16580212810250977730,4470259858681618858,8395368088134860335,16307579962635236903],"proof":[]}]},{"witness_query":{"leaf_elements":[754919493255086205,12234023685219458422,15716988583399700125,9006841294566379092,7914760063113307602,2710404969530438554,15948723591742023430,11659165017523734028,11609071972550513424,10631679121797715874,12752431700214084985,5380937585939915293,1274396051084903090,6887950391908866318,13141498454422602670,3964258627181511599,2013595262527320348,12296559350675263291,4884862525164364801,737160325609211220,7257491981772644159,6272339402133305749,10436705654551836118,8314686781763962484,12108406654250118287,8254092316841782838,11710730866342111794,15480150568446627177,3548127155906299902,15949861591528348825,15063357883683433013,6415538434661787088,12189745394568000463,6637354052153649213,554235778905703647,16334923898491665613,4210598310087059709,2283467678346928435,15711678134752987415,10251290042636422461,5127747951726264492,1010411601901351685,14397776918968477649,9689416365045331228,1115637301750779018,9644214310749359689,2945076539296657957,6358510985504363288,14047828287758321387,16576283616839484351,15039779134189183442,14035639468601333733,7528886817007284614,15719297793772651285,11141544336805696474,12908074477179076044,16629102456160772837,8325718467050267930,7482450122176696698,9371293365942750825,9261167856932631487,6117978138350302239,11560201825643677413,9708158507187536216,345454416207303646,1816704019551648645,11722899190542355199,4233180291329957117,11195856489838731264,17705756588893490298,4025157761792032479,15114196628301671328,742075925174222076,3088369445203080909,8057031837471257928,2294157626986129535,11337240497406894938,6625775493426246189,11935958364042299317,8889128719008984856,16714156767582609865,130999170320094348,15693424447856982158,5891894328896545809,11037091520556801321,16783907784629853692,11335235868702986318,9600590918033882035,13206184788011039127,12260388182892337194,11197528786637723675,6915870647051477320,14802471060003280105,16576339105954646005,6063547395989860171,7531244252636899009,9581431996350181961,1158844458689096364,7833936018747409415,4146532837782195402,2143714889053266594,9072461752032740738,1106186338336955193,3645841992314195373,13350150742552407857,12662899913259863772,1832434460231531388,455526029235042164,8206182343727700030,12500251501058266839,6602931977638241950,9195331787033785478,6620532194349434675,5230010598708088822,15678909394205170490,2685329671479864491,16771999563035732274,11421663017048107045,16383496463914971543,3749897823098198140,12330104352353902568,2137607211179317769,6959953843916438442,8333382709835147768,10344385821949361154,12646737224971436334,7064327894008005220,9802363089541290316,5250363268852222356,304759637390510588,3654535748769123946],"proof":[[317142348160289016,1324237038755427617,12100082125585335319,3123969935288133790],[6528450905127571931,5971753421129561976,11185407083873634271,1369606705831917744],[795149306766645642,5337737688442245405,1004896738250550014,2447869337511257834],[16227186892495953403,17831634087557202985,7629642805444967705,1427904619613164012],[1474975304120584127,3022388325012117321,16849904732804259632,2536708966002750612],[7389877177593625674,13535927894080781763,9574200566159366336,1793999437095924001],[10752675588640799157,15886291600302463343,3678353935295667852,830757622554969253],[13754561355578214136,17692355723038456360,1736012239996295585,707290612348435347],[10980722691717351269,12538310560877522297,16234345069654583782,3295665373968407846],[5837602687100984571,13429690771302381074,927020594147584474,236605526730557920],[17913038790405574005,10177357468544894484,3301713929534404571,1509235318751622695],[5701050097312196064,273438735955107815,7289492473781115995,3001665390633644975],[14775659456443440031,1334530784622447516,8943612273700071220,1338759925121470796]]},"stage_2_query":{"leaf_elements":[14722993641797590989,9109072555268198135,10670314648830363461,5126444431124156438,14739380825037381773,15603126247285393632,18410075301267829703,13572898763899169891,9808554580776955292,4250556555690445822,1272977324418318934,3719958038825111153,4021703620016909118,2306636125935999137],"proof":[[14641116498067947048,3706311975619702253,11906262376107193772,3199941626126890180],[16607607753336569723,8760425010525964679,15846048861883163776,2895858045749789731],[1323421297610886713,7922068008294919120,13829345323837847689,2612808458356977490],[11678197455193774447,16531571142551276295,15309088400379328421,1184132901830725058],[16607809763987916936,2648222886869265980,3635431408131925804,3196032703118660731],[1555468928396472356,12073836111138240666,2264964211221734370,33727667994549184],[6716365167605028138,8664012501038403379,8261305223096906903,1860746776032624807],[11861020858468119228,13710933697935398554,13644947086255980842,22377997356858442],[3667346511889476418,2227489015848729995,1330865474389686279,1706716202527532896],[2072938743275050790,3460679110004826103,13859472331060847547,8276138121591401],[10145952693747646114,6112296965654229148,13911759721086195599,1542386033742297921],[2725961486644828773,968069703755735106,7014016895630597352,683643425655615046],[722241383568005332,6601780098421013494,13826961905102470983,2693007883546258981]]},"quotient_query":{"leaf_elements":[4227307210064112882,10188799809507735517,7453537231362694982,4742658086252222055,4500283331611737913,14317685033498478182,15569994025160749226,14752724888051965415,17308945209031701948,700303118454962113,7522774543654381079,918039709903913134,15954122933701544756,4350281208541118446,183457438910852708,4384678014136229154],"proof":[[17382445911519522773,696063503233140070,14266594430021695761,1987078731674900160],[14891669783146845849,11913736840207086903,17480270058778355236,1019551860685005142],[2352309959712477492,16513685286730674637,1930603567167485945,703077707244142249],[2543449264938403856,14392439296031783754,12535242977838058487,3429980353986767781],[8945079781198349755,9593015413518134992,152920102073477748,121196797364348955],[3368878920660225487,5998832516799214567,8649096574953888779,730051772567895792],[8510768180329299664,15778084791246256455,16815800186318605440,3155141682982140000],[4244929789546412949,8569946678501330065,6861163701731918063,573382273245878173],[1592634251946293001,3128665798749974776,4225545971203131686,2491753016984952884],[10796038800260870445,5957659388134020477,1270364402490344805,933354253913656990],[7320899235031288258,11485996040079662385,17597161178753405142,1067958829391331490],[9377098579159531335,17383909838798620218,5046970499680863756,3147010032550180727],[1250231735564029257,6809488777860586483,16089573894631543223,1945123631152919569]]},"setup_query":{"leaf_elements":[17985870515262358068,13382605850812713548,17109862639714798593,11091986500882412799,11880803435877553352,3768674775575388563,5213022509877037219,14771003218804260574,482578934567097562,8045801925722063544,17808105528326629566,4651904450138035686,8574221982259184942,17663451756837257774,13235607429097105862,3358295649063505067,5107383459946104009,9275707203467156660,12019955987906117425,5272901834521781813,8825420797831902939,5612802467651211828,12040023348251467130,17913448954615566060,13417549562898967320,16636060763700192701,784309968799418585,5001817261388239592,17378002081028276652,14758882828078070198,13605185931231755795,220011295913010610,8126120021526178859,18104090113286572074,16482351588137244008,16569564865182188776,13759926479894489674,16487580291223187585,13029838669854969465,5608984357468048186,17209374823975047323,689635878042294513,8266111254969147281,13840240761984304838,6676878786300463706,11310942476836380767,4369880589358713993,678014046627069641,8689777830416178352,9766404305049056255,7437654091991038906,5000323364276125084,303689712825259410,15686865947916885890,2238930477488311929,2956862206499423120,6845067650745145537,13565161564006698569,3964275749228621241,14838264383777311064,13636442081932929169],"proof":[[10310678646593613749,11608130909215224350,1842742023438342050,237818831285243983],[8009111888362995701,9723486787583184859,10261312142465241257,377984671271581312],[11924272493004018829,10061038396567189982,7706874090382999453,1998225328256785669],[1044714443606071467,4704032695045361697,1171156724565575906,924812534814850386],[9422651131963983061,9825280909767209642,9215515424789707278,1748874508600133940],[6603473792307875470,4222292778721377923,5395313167877918866,3226090315303367313],[7745873969116529995,11075213376546954037,17232291617143745095,3162334720615815424],[2879843640904956973,17339450855360728313,11763511034126620993,556927832043025724],[13577982093975527486,7929423011323269681,5797389575294079929,277351754554159579],[12053220473658978083,5377078530977605166,15115312667311114020,1360742259381589597],[15724344926544827072,7205417153972985516,4103881744555125089,1983290272126016585],[12518122685287142733,11101254042761690968,14573798326644535090,975518879293916629],[15470229706085811907,7922041834933855234,11466811437363182481,2761232339665304973]]},"fri_queries":[{"leaf_elements":[8097701943298489777,4469728239494817459,3210187552377776093,7132204273500896824,9946314909011470146,777855117184929819,2716099566610865084,18145138356965793071,14363773599475067448,17623488877200885108,6376556932738986854,13567401422246703338,9772033385172847678,17600582748060824574,14537980390636575912,9762216152585136793],"proof":[[11195891691397337388,8912773983791095944,5418605055696798650,266959641801791381],[11876608566120390402,13051977886598697247,15512199855016567569,2065913349043408747],[13066126696968787009,8681654487111881060,15028541257634660335,2427408249195209855],[4773089585373021615,6665731031628446385,8404824690658294187,707355995931083374],[10843767298881406096,9396171846494975431,16916887690744189130,415316402552028167],[13336447377309319846,14056552267549774599,9465864758008056237,3042652013440657375],[3773242069149274183,6797230317725244676,11852124273502386866,1050270621269837990],[11273582588326222567,9643444904067045425,12026071760980995910,1408924762213611125],[9971292649392864193,4677233979982873832,598129504946710962,263866205805198541],[18408097362159705766,3674782100163908896,6095738724540536383,2657308411350263184]]},{"leaf_elements":[12620209446181293669,16684097581246255543,14649530475773442343,17706708556845156445,1631170561166017202,10084245182575171871,17130179196094253593,6422075058881021274,4634691467467259365,16799394347447928116,14186792608252669845,9526843445045693728,8480980480397007858,1657847699711417720,17247255323997814792,7873061108596258169],"proof":[[8772063207839031948,15895253541206370511,11565466240392724646,1108535223230235000],[16313643990632800598,15766609047609219978,6979572879620355963,1636242517062759881],[7638620601323045623,5472619007504419368,14373284271546265932,429900821778458637],[7186127257909200015,1855120968712657171,9840177584071132914,906692480968313932],[17334156120150723288,4872930205276815022,16488189971437182006,1774196915951916456],[2836906763646278657,7057041665296351436,181644496866568053,129880401674371852],[4124618749469596092,5995537212191202230,18146879114555701726,1988346917016170719]]},{"leaf_elements":[9821242699192908719,8739857788097027336,16369633756523386499,11723530553154735349,10822407557224043081,8631371694248781430,8108135957522995034,11584973831641421332,9590476904321155943,17854335305852254970,6872850731262886464,8620625463396573285,16420106502521753294,12980374864699010408,17001651783280476661,14989637261764431126],"proof":[[5831313298898439456,5727633718348958119,5048595085608714303,3071472458779202592],[9328106451891214100,4781040186577153649,13841419071719016551,2416374854734447447],[3733279068869424779,11973263620855343548,6909992130978527075,1157920713234646116],[16420592705030288902,16154897142436087555,515784517192506590,386633383944296666]]},{"leaf_elements":[1091038529729091373,360244423195320730,14115534382564426400,5174093879692909629,17426673258368455123,5846560390879105960,6541402252381006594,11727795843090891153,10761005366554087980,11100066226836967325,18386556587157236886,9486653089691708086,18107301933890814410,1640832420586185348,4493954068875173273,9069457263268401249],"proof":[[9753454383334036633,10719921044426572154,11066443179285133377,840081113900875566]]},{"leaf_elements":[2512589913085626850,6670100345702245078,3875769945896076457,15189048974320662278],"proof":[]}]},{"witness_query":{"leaf_elements":[15444408682172657126,5683927542119395900,5091380638379402538,16345010063129180084,30859577296278176,10520880138456430412,10809311339994261603,17067628310371565162,13596653481580028928,12325037505158562697,9454268034177218332,14835374034636862381,7058530480418290480,2755236656035847749,12981176266538168773,6955744117609926217,14442884722953344902,7216295280311770763,14262409948640840499,5014052195551313897,17984687723553347321,5162588451443308448,9366091348612712766,9768891683737839174,13755024443863379891,4190851780594180966,2242863810624155687,3194884955548512976,14241282556182681340,8518256068553135154,14359856631361259742,13131567991839459469,1104104370567451532,2600407768624055992,10620056306882111878,16282781411260918782,18093711550606879797,10436240470766844623,10953807511539337180,14525934105368449652,9684945124870702378,10446578753294214062,16211785102825446806,3273598288134905210,18441501555051775509,2514572493117372829,543651137570778993,6972247398541294869,3349426680996603945,13792166454046090642,1659222680461908998,8780270922686612266,6977152963795574060,4261504763156317195,12036331351594213655,13175501818473115098,7110766174399648566,9330325595592981798,11384964352198150886,559396721094212625,5820869745383896591,16566046377010352977,7235993572185613026,16353333329610073264,3346668391993831880,9535838197603450539,2864422836531851986,12923082347655866791,5165548276530467729,6626449983443041419,12901456621443127767,16131928312659314136,9210427268183651339,10468666315321843020,5412565342199705458,6286703223811234348,16855559156710255837,641317507723784242,2429637282623200534,832788729635088780,775956281701068955,17526090864423741216,17856282446201986743,2533433705268543298,14573972027880526552,13117271832163323658,3853841612707904056,15736919977005748504,5092053380137384781,6274877416319931049,3341481834008678040,12073193812867218616,7358381829799492419,16458330951079113249,13012386254609014542,10053084537948913470,7123985646481534597,15373561040186770867,14201448111221157480,12358085105847360467,7110221259529004171,4044758826641746171,9190123952264615651,1591729050716628939,884940670954986396,11222363035221370039,4485634370621723169,3727897326058763083,11400554960830291932,12862855018039964927,2029431748998726978,7862283054552523981,10244699852157445484,13589463304580484957,9688626557378548404,16995877680639524303,10829756178464362785,8408757789776096806,72540294375932686,11101013327758806313,9014818913390714405,8639219083427723714,15669007346275225751,8133665875422074972,469234312584433707,8918823403344798487,6903259219346261910,8967488393615769234,1174853914784641606,12118345197073392,187472377333142084],"proof":[[560728842147192375,5846619407816065412,12775132585188670671,1410286602009980276],[12011904147032912308,16726263604043289350,7790080609366335246,2981765893243885615],[9602815213130112275,13373185653839736698,15770275792663162816,2465881617080807543],[12621123239441318420,17779110098285276480,14214821443265637218,899495483381895168],[15191486042958166928,4826097750720543315,12172093601546423288,910836090916890063],[14717559776427443777,9563482331781820553,11216143943670677439,451014664693699634],[7808261178805780861,9533317070162912157,6833100909364876371,3202908631105133413],[7275758856104489056,14587545246575390727,149463074815000055,2713389791701357394],[15443905923599074434,8929221619226221064,757634271911946905,1283568413665156037],[2046832725505672161,2358684602138294949,13058707605501244175,401024975988640210],[3124939890686202473,12434127287446414414,11391448563620529306,1872047008976416915],[11087426802181800923,15884898200158356806,1332726411791772390,2686199046994254784],[16780060758106606046,11958032741938148456,7312416229524187577,2063252650720473744]]},"stage_2_query":{"leaf_elements":[10831518742304226834,13174412712563926089,9920173323829569491,2917393089683798699,12511641640460039534,5224693884568025094,4756710800523322635,8527130704123697246,9275687116671269745,4881668025255872738,17693946649138567569,2696496737215223385,14255296927930386917,12126052038546001160],"proof":[[7319918293579420821,12191387891308310304,12532884566891997269,1321975765385929692],[14075814368418102292,2147809782427954356,6297236053863291943,2415477494718771817],[14377369336142667047,1826465765241253562,16235065598022015894,418375656300551345],[15050177285591485998,5710739480190074776,10971726049503431508,64633226631785650],[1798426193381111534,2837701589107704060,9605282719789679575,1373339388407647273],[6143688732123860576,1775215968191252075,9476513882467432978,3095832039663167308],[1412273420901130913,2945803650001525197,10991269116505334068,2434256254602377620],[4185977759424396906,2947270174233376525,9013152852095916349,2728869038501183445],[5827475906301776013,13245517701039921136,18222995501430134263,1577402939232764952],[6657463957781491597,10043056613982186506,5963611177171263693,337795743954390865],[6737172209953658147,16489058110007905380,1814303185256252838,2627815580957802054],[1600324096323697199,12298561271247772534,10262459070123938112,297497425543426121],[5354075957868852375,7926439690175627247,8585448747203103732,3454314098108174446]]},"quotient_query":{"leaf_elements":[6142265257202292680,15344140290857802776,2171339316071123315,16776255270219878480,501840159762669181,11424102271396485213,10655936668471758953,1568033538743760588,5382029415488370400,589386544708047106,7876099134821497523,13359828945456282077,9311174933918288491,2463754135552589751,12190692676580044595,7555705505896772051],"proof":[[11868946669630576242,8196011561193116599,15483742981110011453,2448186691650232392],[6642220636272751936,17317209010436177868,1987436726792106941,1563147890437554561],[11985420910509254666,7018647897519571129,8136291632395577267,1617710134403568665],[9784145807668764660,5521406445616224159,3979710646193867153,972596627175227555],[8225717698944281555,12067763569359892252,16650953473361133083,1726161937957560410],[10299777249375226749,7443365998738581846,9227735166569042056,3233339471354055885],[8664735868673762034,9412071431298457768,5128229658173831498,2397798344144025692],[10664685373798623850,13934048161899331668,7122953462594316004,2941862402619926640],[11441523591043033852,15813054028029977406,1956451772581751959,3320668700430887458],[10408148633400208648,11066693619713380781,10421869165366412783,124677900597386261],[9606512609427358054,10116069330568017601,7184536970639145121,3035878958718098165],[15954198373034633801,7895793786093438672,17040091218657199541,1472989558763709756],[9894783286081270076,8285846266767218443,7388875983260854164,3412182721263324036]]},"setup_query":{"leaf_elements":[16327529021383194982,7387021667992148535,6753600835399153810,3447794729926317663,16313335348105297977,10793816816519001710,9773093457938274289,3136580958259669747,12759164205970254109,7943873605554156646,9689955440194454049,7253308997513548025,10243551351470711062,15598778919032633031,14800420496148707174,5723667365745891441,14713494663561806976,8483309483289137912,8157535170336773473,10093765180065472040,5485397628542176509,1642329032539787283,27490577293184700,10395309054047252594,5917810997400640968,12773270022550614031,4390593179053840924,3654324279710716818,9519860087433519888,10039063642659724427,14281392026313962569,11128326602615586259,10281327038687705854,6456050451016195022,2874221887496087814,5272089195460135599,9939268385454213257,16548514070891667372,14732621179182315906,16828609378199442915,15447604357650913112,1216670093956894056,7938150082473645314,1219105006006880106,486197351577963324,1873118477946938998,17854667741843004421,499368159686110613,11737015822213890515,11595834003402770513,2936262800300673690,14390754673570163445,1185368291613264460,278624320602707374,13179954561654948210,2327618912824526524,3771061775110741320,8026964112670319342,9505213234009089915,11222809446496113749,14732562525269189556],"proof":[[2909355663152452600,9264516788801231550,14925533180725514526,2540794832040745400],[10150415276273939132,17849762274667119457,6204140293692611656,952901808194715831],[8681613358560457341,8906061679646456222,15710017722917605694,113751255132455062],[1347507384320339374,4662440040825466992,65537871293319429,2661700251892074243],[2917697573141094750,2672935004568741347,612155821310451510,478675869113920759],[16443679545099366896,17825935747443282547,3018605035779927845,1864526379906400847],[9244503151688907065,17142477759611146675,15481552948703002214,3403481909426386344],[10600458727831800635,8756158293337280345,5764238403990333398,2146140760205598387],[8393336726537465239,12990876132353555902,7239584864702480113,1787525439503693593],[14633369029286090213,6328171313852274177,1087291408152086768,3039328353628171596],[18220701056869606660,15899836938551514381,7294504702082007332,955695727653342264],[14772192792860455257,11118246339688119280,1965080097173840031,3349448022561578366],[8257498406240408542,15294783180318616062,15553598136149729540,2708965552677615445]]},"fri_queries":[{"leaf_elements":[13768498799938267401,15949591329177899529,2507293313614694586,5691887163811737069,7831892065570277534,7126373400485389554,929791550465030687,15287417644048224308,13971680310485293758,5348340367963362122,14413018089242379305,1448654360060196579,2272460773915978916,7062137964884726006,11453183414716575436,2352778810360585735],"proof":[[8741146529264613905,245639521816998606,6310138659924101528,229347416608565296],[1846177746220464732,13302725520937002868,10195450418291149264,2666663153613666381],[1870021855622296337,1301109678419702935,14745413611201121644,692364317773567994],[13411381582757668686,18362991217089462665,16575853108498908842,134007692259961799],[5371777708049279965,1232212087550978369,4753762104179296644,826407760210708444],[4049016070203224085,1562000625389513022,15851804015622904588,1602055886512330384],[17508543071736168641,12997509917611112420,15543826025943926197,2982069125373312895],[14342858853982456673,2454284253859467645,1609444251919599664,2674607079117991908],[8513214180609609037,13297284929573666992,6797607627951630926,1890464891137065182],[11555457030939037269,9085544040749111966,6591791325541549161,3213063993889265843]]},{"leaf_elements":[782580950601800432,8731566722117124649,17256945082928865583,18268549951257773332,704395739154726717,16074589918754864937,13485243282222503095,6829444202563601016,7452540614746898661,6396234548649509034,18176973338587471334,18174613586207417270,9634125321186228914,10262812594433134486,12515194265299415818,17260054753459241310],"proof":[[14754263447094258357,1739296025503366472,1362946511892519503,369957764981861815],[8708326874552774323,4110909247164409381,15114095375723028534,462742196856514131],[3845462801667136012,11540547707851508867,1002295649916845110,2620581685593055541],[3640910838938706379,1726243147529827367,5314084324712296205,625325497089886439],[9233446734907637133,621373823029314559,6809106629803315095,144460338219984191],[10668781434632063102,851620707839899462,924228320636093084,3049764870018326485],[4849490650414052880,49293529635015172,7888700325494612796,960799201708683278]]},{"leaf_elements":[12600873372199617279,8018817920862935128,5989851613131404427,17829343548776004528,4361811864843572115,1532231990668811414,6775679949662442184,14123084783668195725,13306635866242099436,1529064264939582818,5181615967428092847,4053341919515954389,12976890871890558409,12674967878189764793,15849729856698120978,8998685836632860789],"proof":[[2319283885128689190,7899539408342446851,5347800424197699738,2277047217891017295],[9475135118679978168,9646238608317144652,12018813147330942716,257252859296930888],[16293225978637085163,8792781559710197860,5437602222559494734,1152586688213575212],[18214637273193897569,17083110335864207315,2458916006554433768,3322903078046680236]]},{"leaf_elements":[15049793618273264278,17443600347219547516,1587449845484096471,9268301052953521075,15310044983624285302,3137536321055870732,17729664650163897904,7295871734567114690,948242394662532442,4174441826096490128,5717830596626736236,18234818179955594845,6559695840222737178,6570323834431778590,27890742420152916,6071881210060785784],"proof":[[1207514275877165031,36803928778764813,11527218039117858712,1899368366190537423]]},{"leaf_elements":[15915622550061201680,4536541224237163888,16120598048347926193,2661082248244309055],"proof":[]}]},{"witness_query":{"leaf_elements":[13573926274329169636,16447937140389869447,16906770811814160638,7483846466093302665,1654307374628008869,3599728973408095032,1689324998707772762,18056556135149972447,3668470002758051442,18089376005334747828,13254396114510277418,1511273915989945268,12392280884634562127,13856873503261401980,16144387012123049193,11313520670670405517,6534762527932152254,13800523426642226551,11930147153524463146,6169969496991866459,15206009618644216642,11582635134066624369,983558124694926521,4834495863920021327,16586523925949933130,7568209875977706505,2603127605488242573,15924377755864889018,1971597791675651807,9358495056818349996,14444130655506547959,10423329148528986327,12253168514679696638,8546845751181534769,10739859388965985128,8767549164311617107,15267364503426211566,13554142011361912752,2323282287352621634,12797037912725740110,14647014068023016225,16984652374164637421,12659940160322554330,8598979907377911990,3033683347960672137,6983060923417948585,706428785789105102,13829640821576173828,533641521544444064,7367811022049895759,564359037790249799,4952308654721818282,12445717263565279184,15177707142880786465,5738843545015917998,9581043192435262165,8292392669120666255,9043193193449444829,13968980872683020699,10173955815796283716,8047790367400548894,130889683292660894,410795479103803026,17253858844575794012,7888601892782810365,3190920537445039092,6963320703796864370,2474499506510994645,17040705217611307531,8065968892346987420,1479393972250480373,2461371613223516264,16470579785507021127,17533095064565271146,16464544923752137397,1541192714891040045,3193046576030707366,6982869147420294692,791327452518761363,12489889227502330112,7558016944426104153,3909712333295904526,2521924170286883696,12720952058321159182,1677848525907468278,10987393806061031422,6483337861759587828,8362523594626742587,14442174812221586397,10169665997791635419,4775477377305165101,17408222631451442380,12583653279517335942,16185031920536966310,9304901384595335225,298019067005627901,9416380633781691879,10880174964467886617,6648088250822017785,4740000699232454469,5839964607762902046,2451871210363340674,15359193100020258184,5663956367476153960,3391853522181709329,6888653063973208480,17190622511483831167,15219681065484350699,1652492529210112221,3834735607893009704,7988283875992506266,293760286692761729,30991073764060676,6625572261288673784,6899097344351826396,5892492439170807292,10656128526731739161,3543842950180038674,12156080846284538508,15254277194383540590,3512478725841323181,627519550896506534,11208222878687702398,11664152843970155705,18280295085294780281,13875625186582521298,11212447134708280867,18178618695677376172,4014977246002710759,1163644197113204053,3473465057149977372],"proof":[[8195866761334405402,7728372729072821601,3203751470282494769,1713003425286928051],[1788552761458782415,16365084169267858874,8814962866010254970,1265441661366488798],[17796779423316340734,13717082509527291087,4615811500797924079,842167044763381169],[15189877766753331688,15675287669799442243,2272584295007911255,1096513526603540312],[16791991325418267575,9434432791716417891,8947423195653042193,2980623406097039556],[3698874797996352281,13361606006148530351,3029962078050856214,188885932216324222],[17542998964969773477,11974819610041153163,3580999219989853324,3397037770406900356],[15074369188124768591,16050113884122261271,17141918555408804738,1972956317314318789],[9253888556754583470,15857669941876511384,474221133400533990,1453295689275094202],[2680342756764926429,3301173422649283477,9201932570514535782,1198991468438980690],[6493858094424311351,17964455185899766013,7361557769315166314,3145896826223756895],[2892709706934527733,17838480464587819444,10155705260521547536,2387506384667558531],[16174210416781440038,11224782680825625613,13584339858344595283,2293598389344857220]]},"stage_2_query":{"leaf_elements":[3698789395107801574,18156645777068534767,3797000822437501254,10793184958739941936,5065515680938867111,14107921703245122170,11325279744384819201,5294498267615926801,3352056432256083619,4268225721643006151,4418417108678997733,1747926308950623107,852805002467900917,287599025908201184],"proof":[[3126939268237288446,18444825007849734083,14669248931160134543,2723675502794845322],[11122835716992982567,13733821968971134714,4401251739460273675,2148127659495414480],[5643066818113935815,5112484605913643120,7677013224890721622,386619249410639407],[183692118871327194,5096916689331143740,16569497041668889129,271197856665780886],[16727014193281031813,3462563350130875566,6712924829384375750,1036082845355132757],[7272945444342064992,14037532907983213274,9260461531230676645,276640785065723121],[10119300732678814557,508131832248777820,9441039898168212936,2903110521621687319],[13315027455763864561,4001877763867478743,14684363449045463757,1434174929807102384],[10908167086652021337,8521065222749899132,4649363111779218893,150452410519185938],[4083363817390795534,8255507467522616370,7452300364725971151,1138822611051974478],[77691030423604040,8072883092021044577,11555075588162523475,2536731254804190307],[4099148929035402499,7673469686607061609,4505982977117334820,1485991602633362902],[7143706776069384250,15680275494194306607,14480354172152921765,2190139242083446267]]},"quotient_query":{"leaf_elements":[17260146473267161076,594339968080220049,3362803834938595464,3008650127817020815,5940898137903317025,11423573842575118155,1828256022320166639,14884360272799065335,10048296163600901712,12714985130679712040,12232245645474582705,15343360891347520167,15559651396788929001,7328419875186485066,9440781357719491306,17065990574366717350],"proof":[[15915541095443232779,6968442395726144872,4436397688681640814,2545738607106590741],[6029762474481928853,6660862838773258110,8935626722171893316,2155799527453844049],[14038455994775546008,2169888678164796769,10691814199877438068,3176973335428827565],[1365795191568466087,5291005305041738949,17270513814900819478,1828679948938265458],[2794132281487070537,11274864811403065757,11823889288350221551,2053684673420112851],[2446717869999654635,14913830052699120798,17360932943857523709,1213904405086627965],[1733502861413377019,14682833694761597055,8120704337776217963,2756387265964889464],[14307274736762744822,40134624108231816,14896167052185422012,392119272921055413],[10992070097371331120,10130487000761737745,8285803226814060059,1785276815956649122],[1097438903780754667,10250654518577101769,17719630571456478530,3123628085225008027],[513525338842350831,18260814354677563574,7310823943426295669,1311276556965140485],[9864148082391051930,18335226582304505341,8569801661974152939,2353801358142108048],[893769981673929871,3319556979175080647,7336913751317520875,2767808378512761087]]},"setup_query":{"leaf_elements":[11955716259841807692,5458147274133332500,13391632687015978207,1459713454881241157,6653841953671106242,10654946187403945664,13712318535624304530,17596068547800635914,15652604058783451833,3052457281372262253,17548262517763852985,8925225700514477808,10212468529619613197,2222155028654491534,13419636586527692751,15115968661564018480,8888642419643725248,276038193820028751,17707108708616030010,9116628066519009508,6284990807102053694,8442984849872109405,8786908644516838374,8841010973441503873,13965661075028130963,17484693987669742395,15302743291698212478,8824811339733022850,14523253112061523097,385119465004941064,8298852564217222317,3297747938793275646,17556794901025145409,14308093962457881875,7835494096636320067,9737322297257089367,1055925251947592345,1726998778914403841,5206425122588731588,134120898524610806,17295706462657118676,11441132054344217238,10487159464543597552,17026606281508594575,3106614464098578320,2464498795746284674,2305227823328432733,8022040250319176500,7478604320017319804,12388669042404837091,17276341762394374776,2640537743695782039,10021875038456907754,11486437549121864799,812926336959583565,7769816106339226653,4311182884546487218,14768963469809994607,7185972592317175078,3510271780982459568,7933664325331000423],"proof":[[15670240029668090395,8039584857555600299,4728387626407362433,2367055995456904553],[1410747611610333184,299368952263284469,11816028735552764718,1591600849974941625],[9955706858889896995,14534653371241873399,5573442511258423263,1520351854252918434],[17816336316176233165,4067647231400392955,3441246708343252340,3343698165986905315],[8239213155008983010,10878354554557215373,13281558417253075238,2655581731852521854],[9521285215636636385,382156712047272383,4704876148128151510,1084850007823243437],[18101147605642313558,12226026572563009144,7102649771760711452,556133476996434640],[1979526677510731811,2239338364261171673,11023247746465977756,592559397604982003],[8402145307336955156,8432608770869496252,14149237832006571451,316782118593362826],[8490136823157943241,10604122552062700989,2739662839645950240,1787213058684882487],[12021066607121965183,17861714534690723597,17296885748557096089,678963565057594802],[2209330244228393786,9841280879286562939,270696346365318705,11851569992788159],[12671376312025887274,17441343524713900297,10896011836861176681,2912297064607346901]]},"fri_queries":[{"leaf_elements":[8680266430840318687,15986306992002827088,3770879806478745994,10217015498601167963,6174943947767986896,17708432880210176899,10982539545400700759,16426225062349235530,3376848141478064719,16626110048955568632,4686710402240995734,11404809761518882195,729606986302839937,2517109665314586078,14962519960698691716,4005058085626367811],"proof":[[10110209148329487850,8067366408867900929,6288925598461493187,3158965601402029667],[4117597226072012858,1953455720956516868,6880414443352081601,2344145758106164077],[8377582083033960,16623913343915098489,16715392942475687693,2849195289308966639],[11752736631829508043,3624692409698735531,5389516507817522714,1902741855422451145],[6235014279802804201,17394430777918922522,5828782138821766912,2093627814931141885],[2822223559590069457,3247796785777046875,699336004311959938,2840058512128887037],[10679243869796351109,12043877745852464489,4109226623373864475,821273371395817532],[1872015595740997226,5739662186684146487,10454611751381357817,956517089745787042],[380973593249884925,8211361821003589829,847491229067143454,1569444070397871644],[16109863426784669012,15963846919760798386,9142194185212147107,2313643416305218987]]},{"leaf_elements":[15144107183277435152,5640096783634423662,14117343765696421910,2975724546282612539,11108518461309872718,6651574134435047357,9365087020172177266,17183255145248782959,16163053465742960642,3575081739878502732,1036661985199587601,3152463415753461009,8240199620420068232,15707346772573516946,16193621971557987104,4979180132624307775],"proof":[[4199415938204970929,10795572623327694592,10162663399542825246,1194423476235972406],[1763951514572754447,4963844676355894481,9548953586253179184,2750504433176231626],[7662492606912409419,13492583264118111871,14525845040437336036,1944866242665829379],[8289084913569954648,18036125490095870208,10107981285806608967,530527060839988065],[4938699479983424968,15113520228776542053,16149793309100718980,3145315196322342997],[17680882297911546997,1285525161416870700,9603686181424221186,2725273453195948649],[10344127557781956199,7906363140092405288,5982125655274322770,1672165157955432393]]},{"leaf_elements":[16293573619085866155,377941440823283910,160252430989852924,8760662639310320557,6053951938879568984,7916346170455991806,11714838629808742125,17481164413978137439,14480253569859628575,844343935620458124,6755245284194395982,5161040012839104262,15368329810896416967,7114436241732862531,2122551020211500383,14270247501092108989],"proof":[[9991673916571847555,12151362763527062452,18425071221778742165,3148791936914914032],[16132083267436180541,12995889290913544250,13657280925826151036,936283808435384592],[11161226704473065150,3322189911423566603,13118161592899224271,687763930591193762],[4274407429085135596,548774181466706774,8603117836559137571,160198004595477839]]},{"leaf_elements":[14694649177522924455,8970524565615133352,6698130501351274130,5407467138564220850,6709057259898075644,15065386984471511193,8847484406550740690,3130960100291456344,3694217830831795275,7041401053929351398,879613210345154478,14654620960715256415,11095625651784495053,10579595773725487118,8663536013231766845,10383856026212629571],"proof":[[16046369096493514353,11215590715117997524,7658673164007518840,655039943382377449]]},{"leaf_elements":[6485988802393016559,12130974100501667025,3138003141619716888,4081174251100168420],"proof":[]}]}],"pow_challenge":0,"_marker":null}} \ No newline at end of file diff --git a/crates/zkevm_test_harness/test_proofs/aux_layer/wrapper_proof_1.proof b/crates/zkevm_test_harness/test_proofs/aux_layer/wrapper_proof_1.proof deleted file mode 100644 index b6092b5..0000000 Binary files a/crates/zkevm_test_harness/test_proofs/aux_layer/wrapper_proof_1.proof and /dev/null differ