From da2b9455f21ef63be22394d02fbe2587dbaaebe4 Mon Sep 17 00:00:00 2001 From: Mayukha Vadari Date: Mon, 6 Oct 2025 16:38:40 -0400 Subject: [PATCH] fix: remove `get_ledger_account_hash` and `get_ledger_tx_hash` host functions (#5850) * remove `get_ledger_account_hash` and `get_ledger_tx_hash` * fix build+tests --- src/test/app/HostFuncImpl_test.cpp | 44 +- src/test/app/TestHostFunctions.h | 24 - src/test/app/Wasm_test.cpp | 2 +- .../wasm_fixtures/codecov_tests/Cargo.lock | 6 +- .../wasm_fixtures/codecov_tests/Cargo.toml | 2 +- .../wasm_fixtures/codecov_tests/src/lib.rs | 14 - src/test/app/wasm_fixtures/fixtures.cpp | 604 +++++++++--------- src/xrpld/app/wasm/HostFunc.h | 12 - src/xrpld/app/wasm/HostFuncImpl.h | 6 - src/xrpld/app/wasm/HostFuncWrapper.h | 14 - src/xrpld/app/wasm/detail/HostFuncImpl.cpp | 12 - src/xrpld/app/wasm/detail/HostFuncWrapper.cpp | 28 - src/xrpld/app/wasm/detail/WasmVM.cpp | 2 - 13 files changed, 306 insertions(+), 464 deletions(-) diff --git a/src/test/app/HostFuncImpl_test.cpp b/src/test/app/HostFuncImpl_test.cpp index 60578c849e..8dd83fc74a 100644 --- a/src/test/app/HostFuncImpl_test.cpp +++ b/src/test/app/HostFuncImpl_test.cpp @@ -169,44 +169,6 @@ struct HostFuncImpl_test : public beast::unit_test::suite BEAST_EXPECT(result.value() == env.current()->info().parentHash); } - void - testGetLedgerAccountHash() - { - testcase("getLedgerAccountHash"); - using namespace test::jtx; - - Env env{*this}; - OpenView ov{*env.current()}; - ApplyContext ac = createApplyContext(env, ov); - auto const dummyEscrow = - keylet::escrow(env.master, env.seq(env.master)); - - WasmHostFunctionsImpl hfs(ac, dummyEscrow); - - auto const result = hfs.getLedgerAccountHash(); - if (BEAST_EXPECT(result.has_value())) - BEAST_EXPECT(result.value() == env.current()->info().accountHash); - } - - void - testGetLedgerTransactionHash() - { - testcase("getLedgerTransactionHash"); - using namespace test::jtx; - - Env env{*this}; - OpenView ov{*env.current()}; - ApplyContext ac = createApplyContext(env, ov); - auto const dummyEscrow = - keylet::escrow(env.master, env.seq(env.master)); - - WasmHostFunctionsImpl hfs(ac, dummyEscrow); - - auto const result = hfs.getLedgerTransactionHash(); - if (BEAST_EXPECT(result.has_value())) - BEAST_EXPECT(result.value() == env.current()->info().txHash); - } - void testGetBaseFee() { @@ -2899,7 +2861,7 @@ struct HostFuncImpl_test : public beast::unit_test::suite void testFloatNonIOU() { - testcase("Float Xrp+Mpt"); + testcase("float Xrp+Mpt"); using namespace test::jtx; Env env{*this}; @@ -2961,6 +2923,7 @@ struct HostFuncImpl_test : public beast::unit_test::suite void testFloats() { + testFloatTrace(); testFloatFromInt(); testFloatFromUint(); testFloatSet(); @@ -2973,7 +2936,6 @@ struct HostFuncImpl_test : public beast::unit_test::suite testFloatPower(); testFloatLog(); testFloatNonIOU(); - testFloatTrace(); } void @@ -2982,8 +2944,6 @@ struct HostFuncImpl_test : public beast::unit_test::suite testGetLedgerSqn(); testGetParentLedgerTime(); testGetParentLedgerHash(); - testGetLedgerAccountHash(); - testGetLedgerTransactionHash(); testGetBaseFee(); testIsAmendmentEnabled(); testCacheLedgerObj(); diff --git a/src/test/app/TestHostFunctions.h b/src/test/app/TestHostFunctions.h index 6973a107fe..11d613bc8d 100644 --- a/src/test/app/TestHostFunctions.h +++ b/src/test/app/TestHostFunctions.h @@ -113,18 +113,6 @@ public: return env_.current()->info().parentHash; } - Expected - getLedgerAccountHash() override - { - return env_.current()->info().accountHash; - } - - Expected - getLedgerTransactionHash() override - { - return env_.current()->info().txHash; - } - Expected getBaseFee() override { @@ -649,18 +637,6 @@ struct PerfHostFunctions : public TestHostFunctions return env_.current()->info().parentHash; } - Expected - getLedgerAccountHash() override - { - return env_.current()->info().accountHash; - } - - Expected - getLedgerTransactionHash() override - { - return env_.current()->info().txHash; - } - Expected getBaseFee() override { diff --git a/src/test/app/Wasm_test.cpp b/src/test/app/Wasm_test.cpp index 2b1259365a..00909bcbe3 100644 --- a/src/test/app/Wasm_test.cpp +++ b/src/test/app/Wasm_test.cpp @@ -648,7 +648,7 @@ struct Wasm_test : public beast::unit_test::suite Bytes const wasm(wasmStr.begin(), wasmStr.end()); TestHostFunctions hfs(env, 0); - auto const allowance = 153'296; + auto const allowance = 152'154; auto re = runEscrowWasm( wasm, ESCROW_FUNCTION_NAME, {}, &hfs, allowance, env.journal); diff --git a/src/test/app/wasm_fixtures/codecov_tests/Cargo.lock b/src/test/app/wasm_fixtures/codecov_tests/Cargo.lock index 28d4d65630..000ecf39a8 100644 --- a/src/test/app/wasm_fixtures/codecov_tests/Cargo.lock +++ b/src/test/app/wasm_fixtures/codecov_tests/Cargo.lock @@ -6,10 +6,10 @@ version = 4 name = "codecov_tests" version = "0.0.1" dependencies = [ - "xrpl-std", + "xrpl-wasm-std", ] [[package]] -name = "xrpl-std" +name = "xrpl-wasm-std" version = "0.5.1-devnet5" -source = "git+https://github.com/ripple/craft.git?branch=lastdevnet#6b20669b20561b9d0f09678f44ccbddb84ef9f47" +source = "git+https://github.com/ripple/craft.git?branch=main#638276c92d790f5b738faa9f42855f02a2c7c7dc" diff --git a/src/test/app/wasm_fixtures/codecov_tests/Cargo.toml b/src/test/app/wasm_fixtures/codecov_tests/Cargo.toml index c9b4c53490..ea776999a9 100644 --- a/src/test/app/wasm_fixtures/codecov_tests/Cargo.toml +++ b/src/test/app/wasm_fixtures/codecov_tests/Cargo.toml @@ -15,4 +15,4 @@ opt-level = 's' panic = "abort" [dependencies] -xrpl-std = { git = "https://github.com/ripple/craft.git", branch = "lastdevnet", package = "xrpl-std" } +xrpl-std = { git = "https://github.com/ripple/craft.git", branch = "main", package = "xrpl-wasm-std" } diff --git a/src/test/app/wasm_fixtures/codecov_tests/src/lib.rs b/src/test/app/wasm_fixtures/codecov_tests/src/lib.rs index 0e755ebb75..f02550ba96 100644 --- a/src/test/app/wasm_fixtures/codecov_tests/src/lib.rs +++ b/src/test/app/wasm_fixtures/codecov_tests/src/lib.rs @@ -68,20 +68,6 @@ pub extern "C" fn finish() -> i32 { "get_parent_ledger_hash", ); }); - with_buffer::<32, _, _>(|ptr, len| { - check_result( - unsafe { host::get_ledger_account_hash(ptr, len) }, - 32, - "get_ledger_account_hash", - ); - }); - with_buffer::<32, _, _>(|ptr, len| { - check_result( - unsafe { host::get_ledger_tx_hash(ptr, len) }, - 32, - "get_ledger_tx_hash", - ); - }); check_result(unsafe { host::get_base_fee() }, 10, "get_base_fee"); let amendment_name: &[u8] = b"test_amendment"; let amendment_id: [u8; 32] = [1; 32]; diff --git a/src/test/app/wasm_fixtures/fixtures.cpp b/src/test/app/wasm_fixtures/fixtures.cpp index 6ad3e33639..ea46b49d39 100644 --- a/src/test/app/wasm_fixtures/fixtures.cpp +++ b/src/test/app/wasm_fixtures/fixtures.cpp @@ -9859,314 +9859,308 @@ extern std::string const allKeyletsWasmHex = extern std::string const codecovTestsWasmHex = "0061736d0100000001570b60047f7f7f7f017f60057f7f7f7f7f017f60027f7f017f60067f" "7f7f7f7f7f017f60077f7f7f7f7f7f7f017f6000017f60037f7f7f017f60017f017f60087f" - "7f7f7f7f7f7f7f017f60037f7f7e017f60047f7f7f7f0002da0d3e08686f73745f6c696205" + "7f7f7f7f7f7f7f017f60037f7f7e017f60047f7f7f7f0002990d3c08686f73745f6c696205" "7472616365000108686f73745f6c69620974726163655f6e756d000908686f73745f6c6962" "0e6765745f6c65646765725f73716e000508686f73745f6c6962166765745f706172656e74" "5f6c65646765725f74696d65000508686f73745f6c6962166765745f706172656e745f6c65" - "646765725f68617368000208686f73745f6c6962176765745f6c65646765725f6163636f75" - "6e745f68617368000208686f73745f6c6962126765745f6c65646765725f74785f68617368" - "000208686f73745f6c69620c6765745f626173655f666565000508686f73745f6c69621161" - "6d656e646d656e745f656e61626c6564000208686f73745f6c69620c6765745f74785f6669" - "656c64000608686f73745f6c69620e6163636f756e745f6b65796c6574000008686f73745f" - "6c69621063616368655f6c65646765725f6f626a000608686f73745f6c69621c6765745f63" - "757272656e745f6c65646765725f6f626a5f6669656c64000608686f73745f6c6962146765" - "745f6c65646765725f6f626a5f6669656c64000008686f73745f6c6962136765745f74785f" - "6e65737465645f6669656c64000008686f73745f6c6962236765745f63757272656e745f6c" - "65646765725f6f626a5f6e65737465645f6669656c64000008686f73745f6c69621b676574" - "5f6c65646765725f6f626a5f6e65737465645f6669656c64000108686f73745f6c69621067" - "65745f74785f61727261795f6c656e000708686f73745f6c6962206765745f63757272656e" - "745f6c65646765725f6f626a5f61727261795f6c656e000708686f73745f6c696218676574" - "5f6c65646765725f6f626a5f61727261795f6c656e000208686f73745f6c6962176765745f" - "74785f6e65737465645f61727261795f6c656e000208686f73745f6c6962276765745f6375" - "7272656e745f6c65646765725f6f626a5f6e65737465645f61727261795f6c656e00020868" - "6f73745f6c69621f6765745f6c65646765725f6f626a5f6e65737465645f61727261795f6c" - "656e000608686f73745f6c69620b7570646174655f64617461000208686f73745f6c696213" - "636f6d707574655f7368613531325f68616c66000008686f73745f6c696209636865636b5f" - "736967000308686f73745f6c6962076765745f6e6674000308686f73745f6c69620e676574" - "5f6e66745f697373756572000008686f73745f6c69620d6765745f6e66745f7461786f6e00" - "0008686f73745f6c69620d6765745f6e66745f666c616773000208686f73745f6c69621467" - "65745f6e66745f7472616e736665725f666565000208686f73745f6c69620e6765745f6e66" - "745f73657269616c000008686f73745f6c69620d74726163655f6163636f756e7400000868" - "6f73745f6c69620c74726163655f616d6f756e74000008686f73745f6c69620f666c6f6174" - "5f66726f6d5f75696e74000108686f73745f6c69620b6c696e655f6b65796c657400080868" - "6f73745f6c69620a616d6d5f6b65796c6574000308686f73745f6c69621163726564656e74" - "69616c5f6b65796c6574000808686f73745f6c69620e6d70746f6b656e5f6b65796c657400" - "0308686f73745f6c69621274726163655f6f70617175655f666c6f6174000008686f73745f" - "6c69620d666c6f61745f636f6d70617265000008686f73745f6c696209666c6f61745f6164" - "64000408686f73745f6c69620e666c6f61745f7375627472616374000408686f73745f6c69" - "620e666c6f61745f6d756c7469706c79000408686f73745f6c69620c666c6f61745f646976" - "696465000408686f73745f6c69620a666c6f61745f726f6f74000308686f73745f6c696209" - "666c6f61745f706f77000308686f73745f6c696209666c6f61745f6c6f67000108686f7374" - "5f6c69620c636865636b5f6b65796c6574000108686f73745f6c69620f64656c6567617465" - "5f6b65796c6574000308686f73745f6c6962166465706f7369745f707265617574685f6b65" - "796c6574000308686f73745f6c69620a6469645f6b65796c6574000008686f73745f6c6962" - "0d657363726f775f6b65796c6574000108686f73745f6c6962136d70745f69737375616e63" - "655f6b65796c6574000108686f73745f6c6962106e66745f6f666665725f6b65796c657400" - "0108686f73745f6c69620c6f666665725f6b65796c6574000108686f73745f6c69620d6f72" - "61636c655f6b65796c6574000108686f73745f6c69620e7061796368616e5f6b65796c6574" - "000408686f73745f6c69621a7065726d697373696f6e65645f646f6d61696e5f6b65796c65" - "74000108686f73745f6c69620e7369676e6572735f6b65796c6574000008686f73745f6c69" - "620d7469636b65745f6b65796c6574000108686f73745f6c69620c7661756c745f6b65796c" - "657400010303020a0505030100110619037f01418080c0000b7f00419f9ec0000b7f0041a0" - "9ec0000b072e04066d656d6f727902000666696e697368003f0a5f5f646174615f656e6403" - "010b5f5f686561705f6261736503020ab02b02460002402000200147044020022003410041" - "00410010001a20004100480d01418b80c000410b2000ad1001000b200220032000ac10011a" - "0f0b418b80c000410b2000ac1001000be62a02087f027e230041f0016b22002400419680c0" - "00412341004100410010001a100241b9e00041b980c000410e103e100341b2920441c780c0" - "004116103e200041f0006a22054200370300200041e8006a22034200370300200041e0006a" - "2202420037030020004200370358200041d8006a220141201004412041a58cc0004116103e" - "20054200370300200342003703002002420037030020004200370358200141201005412041" - "bb8cc0004117103e2005420037030020034200370300200242003703002000420037035820" - "0141201006412041d28cc0004112103e1007410a41dd80c000410c103e200041186a428182" - "848890a0c08001370300200041106a428182848890a0c08001370300200041086a42818284" - "8890a0c080013703002000428182848890a0c0800137030041e980c000410e1008410141f7" - "80c0004111103e200041201008410141f780c0004111103e20034100360200200242003703" - "002000420037035802404181802020014114100922044114460440200041266a20002d005a" - "3a00002000200029005f3703c8012000200041e4006a2900003700cd01200041306a200029" - "00cd01370000200020002f01583b01242000200028005b360027200020002903c80137002b" - "20054200370300200342003703002002420037030020004200370358200041246a41142001" - "4120100a22054120470d012000413a6a20002d005a3a0000200041d0016a200041e7006a29" - "00002208370300200041d8016a200041ef006a2900002209370300200041c7006a20083700" - "00200041cf006a2009370000200041d7006a200041f7006a2d00003a0000200020002f0158" - "3b01382000200028005b36003b2000200029005f37003f200041386a41204100100b410141" - "8881c0004110103e2003410036020020024200370300200042003703584181802020014114" - "100c411441e48cc000411c103e200341003602002002420037030020004200370358410141" - "81802020014114100d411441808dc0004114103e024020012001410020016b41037122036a" - "22024f0d0020030440200321050340200141003a0000200141016a2101200541016b22050d" - "000b0b200341016b4107490d000340200141003a0000200141076a41003a0000200141066a" - "41003a0000200141056a41003a0000200141046a41003a0000200141036a41003a00002001" - "41026a41003a0000200141016a41003a0000200141086a22012002470d000b0b200241c400" - "20036b2203417c716a220120024b0440034020024100360200200241046a22022001490d00" - "0b0b024020012003410371220320016a22054f0d002003220204400340200141003a000020" - "0141016a2101200241016b22020d000b0b200341016b4107490d000340200141003a000020" - "0141076a41003a0000200141066a41003a0000200141056a41003a0000200141046a41003a" - "0000200141036a41003a0000200141026a41003a0000200141016a41003a0000200141086a" - "22012005470d000b0b2000418180203602c801410021010340200641c000490440200041d8" - "006a20066a200041c8016a20016a2d00003a0000200020002802980141016a220636029801" - "200141016a22014104470d010b0b200041d8016a22024100360200200041d0016a22044200" - "370300200042003703c801200041d8006a22012006200041c8016a22054114100e41144194" - "8dc0004113103e2002410036020020044200370300200042003703c8012001200028029801" - "20054114100f411441a78dc0004123103e2002410036020020044200370300200042003703" - "c80141012001200028029801200541141010411441ca8dc000411b103e4189803c10114120" - "419881c0004110103e4189803c1012412041a881c0004120103e41014189803c1013412041" - "c881c0004118103e20012000280298011014412041e081c0004117103e2001200028029801" - "1015412041f781c0004127103e4101200120002802980110164120419e82c000411f103e20" - "0041246a220341141017410041bd82c000410b103e200041e0016a22064200370300200242" - "0037030020044200370300200042003703c8012001200028029801200541201018412041e5" - "8dc0004113103e41c882c000410c41d482c000410b41df82c000410e1019410141ed82c000" - "4109103e200041b8016a200041186a290300370300200041b0016a200041106a2903003703" - "00200041a8016a200041086a290300370300200020002903003703a001200241003b010020" - "044200370300200042003703c80120034114200041a0016a2207412020054112101a411241" - "f88dc0004107103e2002410036020020044200370300200042003703c80120074120200541" - "14101b411441ff8dc000410e103e200041003602c8012007412020054104101c4104418d8e" - "c000410d103e20074120101d410841f682c000410d103e20074120101e410a418383c00041" - "14103e200041003602c8012007412020054104101f4104419a8ec000410e103e419783c000" - "410d200341141020412f41a483c000410d103e419783c000410d41b183c000410810214113" - "41b983c000410c103e417f41041004417141c583c000411e103e200041003602c801200541" - "7f1004417141a88ec000411e103e200041ca016a41003a0000200041003b01c80120054103" - "1004417d41c68ec0004124103e200041003602c8012005418094ebdc031004417341ea8ec0" - "004123103e419783c000410d200341141020412f41a483c000410d103e419783c000410d41" - "b183c00041081021411341b983c000410c103e200642003703002002420037030020044200" - "370300200042003703c801200041d894ebdc036a2207410820054120410010224173418d8f" - "c0004117103e200642003703002002420037030020044200370300200042003703c8012001" - "2000280298012005412041001022417141a48fc0004119103e41021011416f41e383c00041" - "1f103e417f20002802980110144171418284c000411f103e2001417f1014417141a184c000" - "411f103e20014181201014417441c084c0004120103e20072000280298011014417341e084" - "c000411f103e20072000280298014101100b417341ff84c0004118103e2001200028029801" - "4101100b4171419785c000411a103e20064200370300200242003703002004420037030020" - "0042003703c801200720002802980120054120100a417341bd8fc0004116103e2006420037" - "03002002420037030020044200370300200042003703c80120012000280298012005412010" - "0a417141d38fc0004118103e20064200370300200242003703002004420037030020004200" - "3703c80120034114200341142007200028029801200541201023417341eb8fc000411c103e" - "200642003703002002420037030020044200370300200042003703c8012003411420034114" - "20012000280298012005412010234171418790c000411e103e200642003703002002420037" - "030020044200370300200042003703c801418b9ec000411420072000280298012005412010" - "24417341a590c0004119103e20064200370300200242003703002004420037030020004200" - "3703c801418b9ec00041142001200028029801200541201024417141be90c000411f103e20" - "0642003703002002420037030020044200370300200042003703c801418b9ec000411441b1" - "85c0004114200541201024417141dd90c0004129103e200642003703002002420037030020" - "044200370300200042003703c80141c585c0004128418b9ec0004114200541201024417141" - "8691c0004125103e200041dc016a200041346a280100360200200041d4016a2000412c6a29" - "0100370200200020002901243702cc01200041808080083602c801200041003b01c0012005" - "4118418b9ec0004114200041c0016a220441021024417141ab91c000410e103e2007200028" - "029801422a1001417341ed85c0004111103e200041003b01c0014102200441021009416f41" - "b991c000411b103e200041003b01c001410220044102100c416f41d491c000412b103e2000" - "41003b01c0014101410220044102100d416f41ff91c0004123103e41021011416f41e383c0" - "00411f103e41021012416f41fe85c000412f103e410141021013416f41ad86c0004127103e" - "41e980c0004181201008417441d486c000411f103e41e980c00041c1001008417441f386c0" - "00411a103e200041003b01c001200141812020044102100e417441a292c0004121103e2000" - "41003b01c001200141812020044102100f417441c392c0004131103e200041003b01c00141" - "012001418120200441021010417441f492c0004129103e200141812010144174418d87c000" - "4125103e20014181201015417441b287c0004135103e410120014181201016417441e787c0" - "00412d103e200141812010174174419488c0004119103e419783c00041812041d482c00041" - "0b41df82c000410e1019417441ed82c0004109103e419783c000410d41d482c00041812041" - "df82c000410e1019417441ed82c0004109103e419783c000410d41d482c000410b41df82c0" - "004181201019417441ed82c0004109103e200041003b01c001200141812020044102101841" - "74419d93c0004121103e200041003b01c001418b9ec000418120418b9ec000411420044102" - "1024417441be93c0004118103e200041003b01c00120034114200341142001418120200441" - "021025417441d693c000411f103e200041003b01c001200541812020034114200441021026" - "417441f593c0004122103e419783c000410d200720002802980141001000417341ad88c000" - "410f103e200042d487b6f4c7d4b1c0003700c001419783c000410d200041c095ebdc036a22" - "0641081027417341bc88c000411c103e419783c000410d20072000280298011021417341d8" - "88c0004116103e20064108200441081028417341ee88c0004118103e200441082006410810" - "284173418689c0004118103e200041003b01ec012006410820044108200041ec016a220241" - "02410010294173419794c0004114103e200041003b01ec0120044108200641082002410241" - "001029417341ab94c0004114103e200041003b01ec01200641082004410820024102410010" - "2a417341bf94c0004119103e200041003b01ec012004410820064108200241024100102a41" - "7341d894c0004119103e200041003b01ec012006410820044108200241024100102b417341" - "f194c0004119103e200041003b01ec012004410820064108200241024100102b4173418a95" - "c0004119103e200041003b01ec012006410820044108200241024100102c417341a395c000" - "4117103e200041003b01ec012004410820064108200241024100102c417341ba95c0004117" - "103e200041003b01ec01200641084103200241024100102d417341d195c0004114103e2000" - "41003b01ec01200641084103200241024100102e417341e595c0004113103e200041003b01" - "ec0120064108200241024100102f417341f895c0004113103e20012000280298014100100b" - "4171419e89c0004123103e200041003b01ec0120034114200120002802980120024102101a" - "4171418b96c000411a103e200041003b01ec01200120002802980120024102101b417141a5" - "96c0004121103e200041003b01ec01200120002802980120024102101c417141c696c00041" - "20103e2001200028029801101d417141c189c0004120103e2001200028029801101e417141" - "e189c0004127103e200041003602ec01200120002802980120024104101f417141e696c000" - "4121103e200041003b01ec01200120002802980120024102100a4171418797c0004123103e" - "200041003b01ec0120012000280298014101200241021030417141aa97c0004121103e2000" - "41003b01ec01200120002802980122062003411420012006200241021025417141cb97c000" - "4127103e200041003b01ec0120034114200120002802980122062001200620024102102541" - "7141f297c0004127103e200041003b01ec0120012000280298012003411420024102103141" - "71419998c0004125103e200041003b01ec0120034114200120002802980120024102103141" - "7141be98c0004125103e200041003b01ec0120012000280298012003411420024102103241" - "7141e398c000412c103e200041003b01ec0120034114200120002802980120024102103241" - "71418f99c000412c103e200041003b01ec012001200028029801200241021033417141bb99" - "c000411f103e200041003b01ec0120012000280298014101200241021034417141da99c000" - "4122103e200041003b01ec0120012000280298012003411441b185c0004114200241021023" - "417141fc99c0004121103e200041003b01ec0120034114200120002802980141b185c00041" - "142002410210234171419d9ac0004121103e200041003b01ec012001200028029801410120" - "0241021035417141be9ac0004128103e200041003b01ec0120054118200120002802980120" - "0241021026417141e69ac0004123103e200041003b01ec0120012000280298014101200241" - "021036417141899bc0004125103e200041003b01ec01200120002802980141012002410210" - "37417141ae9bc0004121103e200041003b01ec012001200028029801410120024102103841" - "7141cf9bc0004122103e200041003b01ec0120012000280298012003411441012002410210" - "39417141f19bc0004124103e200041003b01ec012003411420012000280298014101200241" - "021039417141959cc0004124103e200041003b01ec01200120002802980141012002410210" - "3a417141b99cc000412f103e200041003b01ec01200120002802980120024102103b417141" - "e89cc0004123103e200041003b01ec012001200028029801410120024102103c4171418b9d" - "c0004122103e200041003b01ec012001200028029801410120024102103d417141ad9dc000" - "4121103e200041003b01ec01200120002802980141888ac000412020024102101a417141ce" - "9dc000411c103e419783c000410d20012000280298011020417141a88ac0004122103e4197" - "97abdd03410d41888ac000412041001000417341ca8ac0004110103e419797abdd03410d20" - "0441081027417341da8ac000411d103e419797abdd03410d200341141020417341f78ac000" - "4118103e419797abdd03410d41b183c000410810214173418f8bc0004117103e2001200028" - "029801200141812041001000417441a68bc000410e103e200141812042011001417441b48b" - "c0004112103e419783c000418120200441081027417441c68bc000411b103e419783c00041" - "8120200341141020417441e18bc0004116103e419783c00041812041b183c0004108102141" - "7441f78bc0004115103e419783c000410d200120002802980110214171418c8cc000411910" - "3e200041003b01ec01200120002802980120034114200241021026417141ea9dc000412110" - "3e200041f0016a240041010f0b418080c000410b417f20042004417f4e1bac1001000b4180" - "80c000410b417f20052005417f4e1bac1001000b0bf61d0200418080c0000bc5056572726f" - "725f636f64653d54455354204641494c45442424242424205354415254494e47205741534d" - "20455845435554494f4e2024242424246765745f6c65646765725f73716e6765745f706172" - "656e745f6c65646765725f74696d656765745f626173655f666565746573745f616d656e64" - "6d656e74616d656e646d656e745f656e61626c656463616368655f6c65646765725f6f626a" - "6765745f74785f61727261795f6c656e6765745f63757272656e745f6c65646765725f6f62" - "6a5f61727261795f6c656e6765745f6c65646765725f6f626a5f61727261795f6c656e6765" - "745f74785f6e65737465645f61727261795f6c656e6765745f63757272656e745f6c656467" - "65725f6f626a5f6e65737465645f61727261795f6c656e6765745f6c65646765725f6f626a" - "5f6e65737465645f61727261795f6c656e7570646174655f6461746174657374206d657373" - "61676574657374207075626b657974657374207369676e6174757265636865636b5f736967" - "6765745f6e66745f666c6167736765745f6e66745f7472616e736665725f66656574657374" - "696e6720747261636574726163655f6163636f756e74400000000000005f74726163655f61" - "6d6f756e746765745f706172656e745f6c65646765725f686173685f6e65675f7074726765" - "745f74785f61727261795f6c656e5f696e76616c69645f736669656c646765745f74785f6e" - "65737465645f61727261795f6c656e5f6e65675f7074726765745f74785f6e65737465645f" - "61727261795f6c656e5f6e65675f6c656e6765745f74785f6e65737465645f61727261795f" - "6c656e5f746f6f5f6c6f6e676765745f74785f6e65737465645f61727261795f6c656e5f70" - "74725f6f6f6263616368655f6c65646765725f6f626a5f7074725f6f6f6263616368655f6c" - "65646765725f6f626a5f77726f6e675f6c656e555344303030303030303030303030303030" - "30300041ed85c0000b9e1874726163655f6e756d5f6f6f625f7374726765745f6375727265" - "6e745f6c65646765725f6f626a5f61727261795f6c656e5f696e76616c69645f736669656c" - "646765745f6c65646765725f6f626a5f61727261795f6c656e5f696e76616c69645f736669" - "656c64616d656e646d656e745f656e61626c65645f746f6f5f6269675f736c696365616d65" - "6e646d656e745f656e61626c65645f746f6f5f6c6f6e676765745f74785f6e65737465645f" - "61727261795f6c656e5f746f6f5f6269675f736c6963656765745f63757272656e745f6c65" - "646765725f6f626a5f6e65737465645f61727261795f6c656e5f746f6f5f6269675f736c69" - "63656765745f6c65646765725f6f626a5f6e65737465645f61727261795f6c656e5f746f6f" - "5f6269675f736c6963657570646174655f646174615f746f6f5f6269675f736c6963657472" - "6163655f6f6f625f736c69636574726163655f6f70617175655f666c6f61745f6f6f625f73" - "6c69636574726163655f616d6f756e745f6f6f625f736c696365666c6f61745f636f6d7061" - "72655f6f6f625f736c69636531666c6f61745f636f6d706172655f6f6f625f736c69636532" - "63616368655f6c65646765725f6f626a5f77726f6e675f73697a655f75696e743235366765" - "745f6e66745f666c6167735f77726f6e675f73697a655f75696e743235366765745f6e6674" - "5f7472616e736665725f6665655f77726f6e675f73697a655f75696e743235363030303030" - "30303030303030303030303030303030303030303030303030303174726163655f6163636f" - "756e745f77726f6e675f73697a655f6163636f756e74696474726163655f6f6f625f737472" - "696e6774726163655f6f70617175655f666c6f61745f6f6f625f737472696e677472616365" - "5f6163636f756e745f6f6f625f737472696e6774726163655f616d6f756e745f6f6f625f73" - "7472696e6774726163655f746f6f5f6c6f6e6774726163655f6e756d5f746f6f5f6c6f6e67" - "74726163655f6f70617175655f666c6f61745f746f6f5f6c6f6e6774726163655f6163636f" - "756e745f746f6f5f6c6f6e6774726163655f616d6f756e745f746f6f5f6c6f6e6774726163" - "655f616d6f756e745f77726f6e675f6c656e6774686765745f706172656e745f6c65646765" - "725f686173686765745f6c65646765725f6163636f756e745f686173686765745f6c656467" - "65725f74785f686173686765745f63757272656e745f6c65646765725f6f626a5f6669656c" - "646765745f6c65646765725f6f626a5f6669656c646765745f74785f6e65737465645f6669" - "656c646765745f63757272656e745f6c65646765725f6f626a5f6e65737465645f6669656c" - "646765745f6c65646765725f6f626a5f6e65737465645f6669656c64636f6d707574655f73" - "68613531325f68616c666765745f6e66746765745f6e66745f6973737565726765745f6e66" - "745f7461786f6e6765745f6e66745f73657269616c6765745f706172656e745f6c65646765" - "725f686173685f6e65675f6c656e6765745f706172656e745f6c65646765725f686173685f" - "6275665f746f6f5f736d616c6c6765745f706172656e745f6c65646765725f686173685f6c" - "656e5f746f6f5f6c6f6e67666c6f61745f66726f6d5f75696e745f6c656e5f6f6f62666c6f" - "61745f66726f6d5f75696e745f77726f6e675f6c656e6163636f756e745f6b65796c65745f" - "6c656e5f6f6f626163636f756e745f6b65796c65745f77726f6e675f6c656e6c696e655f6b" - "65796c65745f6c656e5f6f6f625f63757272656e63796c696e655f6b65796c65745f77726f" - "6e675f6c656e5f63757272656e6379616d6d5f6b65796c65745f6c656e5f6f6f625f617373" - "657432616d6d5f6b65796c65745f6c656e5f77726f6e675f6c656e5f617373657432616d6d" - "5f6b65796c65745f6c656e5f77726f6e675f6e6f6e5f7872705f63757272656e63795f6c65" - "6e616d6d5f6b65796c65745f6c656e5f77726f6e675f7872705f63757272656e63795f6c65" - "6e616d6d5f6b65796c65745f6d70746765745f74785f6669656c645f696e76616c69645f73" - "6669656c646765745f63757272656e745f6c65646765725f6f626a5f6669656c645f696e76" - "616c69645f736669656c646765745f6c65646765725f6f626a5f6669656c645f696e76616c" - "69645f736669656c646765745f74785f6e65737465645f6669656c645f746f6f5f6269675f" - "736c6963656765745f63757272656e745f6c65646765725f6f626a5f6e65737465645f6669" - "656c645f746f6f5f6269675f736c6963656765745f6c65646765725f6f626a5f6e65737465" - "645f6669656c645f746f6f5f6269675f736c696365636f6d707574655f7368613531325f68" - "616c665f746f6f5f6269675f736c696365616d6d5f6b65796c65745f746f6f5f6269675f73" - "6c69636563726564656e7469616c5f6b65796c65745f746f6f5f6269675f736c6963656d70" - "746f6b656e5f6b65796c65745f746f6f5f6269675f736c6963655f6d70746964666c6f6174" - "5f6164645f6f6f625f736c69636531666c6f61745f6164645f6f6f625f736c69636532666c" - "6f61745f73756274726163745f6f6f625f736c69636531666c6f61745f7375627472616374" - "5f6f6f625f736c69636532666c6f61745f6d756c7469706c795f6f6f625f736c6963653166" - "6c6f61745f6d756c7469706c795f6f6f625f736c69636532666c6f61745f6469766964655f" - "6f6f625f736c69636531666c6f61745f6469766964655f6f6f625f736c69636532666c6f61" - "745f726f6f745f6f6f625f736c696365666c6f61745f706f775f6f6f625f736c696365666c" - "6f61745f6c6f675f6f6f625f736c6963656765745f6e66745f77726f6e675f73697a655f75" - "696e743235366765745f6e66745f6973737565725f77726f6e675f73697a655f75696e7432" - "35366765745f6e66745f7461786f6e5f77726f6e675f73697a655f75696e74323536676574" - "5f6e66745f73657269616c5f77726f6e675f73697a655f75696e743235366163636f756e74" - "5f6b65796c65745f77726f6e675f73697a655f6163636f756e746964636865636b5f6b6579" - "6c65745f77726f6e675f73697a655f6163636f756e74696463726564656e7469616c5f6b65" - "796c65745f77726f6e675f73697a655f6163636f756e7469643163726564656e7469616c5f" - "6b65796c65745f77726f6e675f73697a655f6163636f756e7469643264656c65676174655f" - "6b65796c65745f77726f6e675f73697a655f6163636f756e7469643164656c65676174655f" - "6b65796c65745f77726f6e675f73697a655f6163636f756e746964326465706f7369745f70" - "7265617574685f6b65796c65745f77726f6e675f73697a655f6163636f756e746964316465" - "706f7369745f707265617574685f6b65796c65745f77726f6e675f73697a655f6163636f75" - "6e746964326469645f6b65796c65745f77726f6e675f73697a655f6163636f756e74696465" - "7363726f775f6b65796c65745f77726f6e675f73697a655f6163636f756e7469646c696e65" - "5f6b65796c65745f77726f6e675f73697a655f6163636f756e746964316c696e655f6b6579" - "6c65745f77726f6e675f73697a655f6163636f756e746964326d70745f69737375616e6365" - "5f6b65796c65745f77726f6e675f73697a655f6163636f756e7469646d70746f6b656e5f6b" - "65796c65745f77726f6e675f73697a655f6163636f756e7469646e66745f6f666665725f6b" - "65796c65745f77726f6e675f73697a655f6163636f756e7469646f666665725f6b65796c65" - "745f77726f6e675f73697a655f6163636f756e7469646f7261636c655f6b65796c65745f77" - "726f6e675f73697a655f6163636f756e7469647061796368616e5f6b65796c65745f77726f" - "6e675f73697a655f6163636f756e746964317061796368616e5f6b65796c65745f77726f6e" - "675f73697a655f6163636f756e746964327065726d697373696f6e65645f646f6d61696e5f" - "6b65796c65745f77726f6e675f73697a655f6163636f756e7469647369676e6572735f6b65" - "796c65745f77726f6e675f73697a655f6163636f756e7469647469636b65745f6b65796c65" - "745f77726f6e675f73697a655f6163636f756e7469647661756c745f6b65796c65745f7772" - "6f6e675f73697a655f6163636f756e7469646765745f6e66745f77726f6e675f73697a655f" - "6163636f756e7469646d70746f6b656e5f6b65796c65745f6d707469645f77726f6e675f6c" - "656e677468004d0970726f64756365727302086c616e6775616765010452757374000c7072" - "6f6365737365642d6279010572757374631d312e39302e3020283131353965373863342032" - "3032352d30392d313429002c0f7461726765745f6665617475726573022b0f6d757461626c" - "652d676c6f62616c732b087369676e2d657874"; + "646765725f68617368000208686f73745f6c69620c6765745f626173655f66656500050868" + "6f73745f6c696211616d656e646d656e745f656e61626c6564000208686f73745f6c69620c" + "6765745f74785f6669656c64000608686f73745f6c69620e6163636f756e745f6b65796c65" + "74000008686f73745f6c69621063616368655f6c65646765725f6f626a000608686f73745f" + "6c69621c6765745f63757272656e745f6c65646765725f6f626a5f6669656c64000608686f" + "73745f6c6962146765745f6c65646765725f6f626a5f6669656c64000008686f73745f6c69" + "62136765745f74785f6e65737465645f6669656c64000008686f73745f6c6962236765745f" + "63757272656e745f6c65646765725f6f626a5f6e65737465645f6669656c64000008686f73" + "745f6c69621b6765745f6c65646765725f6f626a5f6e65737465645f6669656c6400010868" + "6f73745f6c6962106765745f74785f61727261795f6c656e000708686f73745f6c69622067" + "65745f63757272656e745f6c65646765725f6f626a5f61727261795f6c656e000708686f73" + "745f6c6962186765745f6c65646765725f6f626a5f61727261795f6c656e000208686f7374" + "5f6c6962176765745f74785f6e65737465645f61727261795f6c656e000208686f73745f6c" + "6962276765745f63757272656e745f6c65646765725f6f626a5f6e65737465645f61727261" + "795f6c656e000208686f73745f6c69621f6765745f6c65646765725f6f626a5f6e65737465" + "645f61727261795f6c656e000608686f73745f6c69620b7570646174655f64617461000208" + "686f73745f6c696213636f6d707574655f7368613531325f68616c66000008686f73745f6c" + "696209636865636b5f736967000308686f73745f6c6962076765745f6e6674000308686f73" + "745f6c69620e6765745f6e66745f697373756572000008686f73745f6c69620d6765745f6e" + "66745f7461786f6e000008686f73745f6c69620d6765745f6e66745f666c61677300020868" + "6f73745f6c6962146765745f6e66745f7472616e736665725f666565000208686f73745f6c" + "69620e6765745f6e66745f73657269616c000008686f73745f6c69620d74726163655f6163" + "636f756e74000008686f73745f6c69620c74726163655f616d6f756e74000008686f73745f" + "6c69620f666c6f61745f66726f6d5f75696e74000108686f73745f6c69620b6c696e655f6b" + "65796c6574000808686f73745f6c69620a616d6d5f6b65796c6574000308686f73745f6c69" + "621163726564656e7469616c5f6b65796c6574000808686f73745f6c69620e6d70746f6b65" + "6e5f6b65796c6574000308686f73745f6c69621274726163655f6f70617175655f666c6f61" + "74000008686f73745f6c69620d666c6f61745f636f6d70617265000008686f73745f6c6962" + "09666c6f61745f616464000408686f73745f6c69620e666c6f61745f737562747261637400" + "0408686f73745f6c69620e666c6f61745f6d756c7469706c79000408686f73745f6c69620c" + "666c6f61745f646976696465000408686f73745f6c69620a666c6f61745f726f6f74000308" + "686f73745f6c696209666c6f61745f706f77000308686f73745f6c696209666c6f61745f6c" + "6f67000108686f73745f6c69620c636865636b5f6b65796c6574000108686f73745f6c6962" + "0f64656c65676174655f6b65796c6574000308686f73745f6c6962166465706f7369745f70" + "7265617574685f6b65796c6574000308686f73745f6c69620a6469645f6b65796c65740000" + "08686f73745f6c69620d657363726f775f6b65796c6574000108686f73745f6c6962136d70" + "745f69737375616e63655f6b65796c6574000108686f73745f6c6962106e66745f6f666665" + "725f6b65796c6574000108686f73745f6c69620c6f666665725f6b65796c6574000108686f" + "73745f6c69620d6f7261636c655f6b65796c6574000108686f73745f6c69620e7061796368" + "616e5f6b65796c6574000408686f73745f6c69621a7065726d697373696f6e65645f646f6d" + "61696e5f6b65796c6574000108686f73745f6c69620e7369676e6572735f6b65796c657400" + "0008686f73745f6c69620d7469636b65745f6b65796c6574000108686f73745f6c69620c76" + "61756c745f6b65796c657400010303020a0505030100110619037f01418080c0000b7f0041" + "f69dc0000b7f0041809ec0000b072e04066d656d6f727902000666696e697368003d0a5f5f" + "646174615f656e6403010b5f5f686561705f6261736503020ac12a02460002402000200147" + "04402002200341004100410010001a20004100480d01418b80c000410b2000ad1001000b20" + "0220032000ac10011a0f0b418b80c000410b2000ac1001000bf72902087f027e230041f001" + "6b22002400419680c000412341004100410010001a100241b9e00041b980c000410e103c10" + "0341b2920441c780c0004116103c200041f0006a22034200370300200041e8006a22044200" + "370300200041e0006a2202420037030020004200370358200041d8006a2201412010044120" + "41a58cc0004116103c1005410a41dd80c000410c103c200041186a428182848890a0c08001" + "370300200041106a428182848890a0c08001370300200041086a428182848890a0c0800137" + "03002000428182848890a0c0800137030041e980c000410e1006410141f780c0004111103c" + "200041201006410141f780c0004111103c2004410036020020024200370300200042003703" + "5841818020200141141007220541144604400240200041266a20002d005a3a000020002000" + "29005f3703c8012000200041e4006a2900003700cd01200041306a20002900cd0137000020" + "0020002f01583b01242000200028005b360027200020002903c80137002b20034200370300" + "200442003703002002420037030020004200370358200041246a4114200141201008220541" + "20470d002000413a6a20002d005a3a0000200041d0016a200041e7006a2900002208370300" + "200041d8016a200041ef006a2900002209370300200041c7006a2008370000200041cf006a" + "2009370000200041d7006a200041f7006a2d00003a0000200020002f01583b013820002000" + "28005b36003b2000200029005f37003f200041386a4120410010094101418881c000411010" + "3c2004410036020020024200370300200042003703584181802020014114100a411441bb8c" + "c000411c103c20044100360200200242003703002000420037035841014181802020014114" + "100b411441d78cc0004114103c02402001410020016b41037122046a220220014d0d002004" + "0440200421050340200141003a0000200141016a2101200541016b22050d000b0b20044101" + "6b4107490d000340200141003a0000200141076a41003a0000200141066a41003a00002001" + "41056a41003a0000200141046a41003a0000200141036a41003a0000200141026a41003a00" + "00200141016a41003a0000200141086a22012002470d000b0b200241c40020046b2204417c" + "716a220120024b0440034020024100360200200241046a22022001490d000b0b0240200120" + "04410371220420016a22054f0d002004220204400340200141003a0000200141016a210120" + "0241016b22020d000b0b200441016b4107490d000340200141003a0000200141076a41003a" + "0000200141066a41003a0000200141056a41003a0000200141046a41003a0000200141036a" + "41003a0000200141026a41003a0000200141016a41003a0000200141086a22012005470d00" + "0b0b2000418180203602c801410021010340200641c000490440200041d8006a20066a2000" + "41c8016a20016a2d00003a0000200020002802980141016a220636029801200141016a2201" + "4104470d010b0b200041d8016a22024100360200200041d0016a2203420037030020004200" + "3703c801200041d8006a22012006200041c8016a22054114100c411441eb8cc0004113103c" + "2002410036020020034200370300200042003703c801200120002802980120054114100d41" + "1441fe8cc0004123103c2002410036020020034200370300200042003703c8014101200120" + "002802980120054114100e411441a18dc000411b103c4189803c100f4120419881c0004110" + "103c4189803c1010412041a881c0004120103c41014189803c1011412041c881c000411810" + "3c20012000280298011012412041e081c0004117103c20012000280298011013412041f781" + "c0004127103c4101200120002802980110144120419e82c000411f103c200041246a220441" + "141015410041bd82c000410b103c200041e0016a2206420037030020024200370300200342" + "00370300200042003703c8012001200028029801200541201016412041bc8dc0004113103c" + "41c882c000410c41d482c000410b41df82c000410e1017410141ed82c0004109103c200041" + "b8016a200041186a290300370300200041b0016a200041106a290300370300200041a8016a" + "200041086a290300370300200020002903003703a001200241003b01002003420037030020" + "0042003703c80120044114200041a0016a22074120200541121018411241cf8dc000410710" + "3c2002410036020020034200370300200042003703c80120074120200541141019411441d6" + "8dc000410e103c200041003602c8012007412020054104101a410441e48dc000410d103c20" + "074120101b410841f682c000410d103c20074120101c410a418383c0004114103c20004100" + "3602c8012007412020054104101d410441f18dc000410e103c419783c000410d2004411410" + "1e412f41a483c000410d103c419783c000410d41b183c0004108101f411341b983c000410c" + "103c417f41041004417141c583c000411e103c200041003602c8012005417f1004417141ff" + "8dc000411e103c200041ca016a41003a0000200041003b01c801200541031004417d419d8e" + "c0004124103c200041003602c8012005418094ebdc031004417341c18ec0004123103c4197" + "83c000410d20044114101e412f41a483c000410d103c419783c000410d41b183c000410810" + "1f411341b983c000410c103c20064200370300200242003703002003420037030020004200" + "3703c801200041d894ebdc036a220741082005412041001020417341e48ec0004117103c20" + "0642003703002002420037030020034200370300200042003703c801200120002802980120" + "05412041001020417141fb8ec0004119103c4102100f416f41e383c000411f103c417f2000" + "2802980110124171418284c000411f103c2001417f1012417141a184c000411f103c200141" + "81201012417441c084c0004120103c20072000280298011012417341e084c000411f103c20" + "0720002802980141011009417341ff84c0004118103c200120002802980141011009417141" + "9785c000411a103c200642003703002002420037030020034200370300200042003703c801" + "2007200028029801200541201008417341948fc0004116103c200642003703002002420037" + "030020034200370300200042003703c8012001200028029801200541201008417141aa8fc0" + "004118103c200642003703002002420037030020034200370300200042003703c801200441" + "14200441142007200028029801200541201021417341c28fc000411c103c20064200370300" + "2002420037030020034200370300200042003703c801200441142004411420012000280298" + "01200541201021417141de8fc000411e103c20064200370300200242003703002003420037" + "0300200042003703c80141e29dc00041142007200028029801200541201022417341fc8fc0" + "004119103c200642003703002002420037030020034200370300200042003703c80141e29d" + "c000411420012000280298012005412010224171419590c000411f103c2006420037030020" + "02420037030020034200370300200042003703c80141e29dc000411441b185c00041142005" + "41201022417141b490c0004129103c20064200370300200242003703002003420037030020" + "0042003703c80141c585c000412841e29dc0004114200541201022417141dd90c000412510" + "3c200041dc016a200041346a280100360200200041d4016a2000412c6a2901003702002000" + "20002901243702cc01200041808080083602c801200041003b01c0012005411841e29dc000" + "4114200041c0016a2203410210224171418291c000410e103c2007200028029801422a1001" + "417341ed85c0004111103c200041003b01c0014102200341021007416f419091c000411b10" + "3c200041003b01c001410220034102100a416f41ab91c000412b103c200041003b01c00141" + "01410220034102100b416f41d691c0004123103c4102100f416f41e383c000411f103c4102" + "1010416f41fe85c000412f103c410141021011416f41ad86c0004127103c41e980c0004181" + "201006417441d486c000411f103c41e980c00041c1001006417441f386c000411a103c2000" + "41003b01c001200141812020034102100c417441f991c0004121103c200041003b01c00120" + "0141812020034102100d4174419a92c0004131103c200041003b01c0014101200141812020" + "034102100e417441cb92c0004129103c200141812010124174418d87c0004125103c200141" + "81201013417441b287c0004135103c410120014181201014417441e787c000412d103c2001" + "41812010154174419488c0004119103c419783c00041812041d482c000410b41df82c00041" + "0e1017417441ed82c0004109103c419783c000410d41d482c00041812041df82c000410e10" + "17417441ed82c0004109103c419783c000410d41d482c000410b41df82c000418120101741" + "7441ed82c0004109103c200041003b01c0012001418120200341021016417441f492c00041" + "21103c200041003b01c00141e29dc00041812041e29dc00041142003410210224174419593" + "c0004118103c200041003b01c00120044114200441142001418120200341021023417441ad" + "93c000411f103c200041003b01c001200541812020044114200341021024417441cc93c000" + "4122103c419783c000410d200720002802980141001000417341ad88c000410f103c200042" + "d487b6f4c7d4b1c0003700c001419783c000410d200041c095ebdc036a2206410810254173" + "41bc88c000411c103c419783c000410d2007200028029801101f417341d888c0004116103c" + "20064108200341081026417341ee88c0004118103c200341082006410810264173418689c0" + "004118103c200041003b01ec012006410820034108200041ec016a22024102410010274173" + "41ee93c0004114103c200041003b01ec012003410820064108200241024100102741734182" + "94c0004114103c200041003b01ec01200641082003410820024102410010284173419694c0" + "004119103c200041003b01ec0120034108200641082002410241001028417341af94c00041" + "19103c200041003b01ec0120064108200341082002410241001029417341c894c000411910" + "3c200041003b01ec0120034108200641082002410241001029417341e194c0004119103c20" + "0041003b01ec012006410820034108200241024100102a417341fa94c0004117103c200041" + "003b01ec012003410820064108200241024100102a4173419195c0004117103c200041003b" + "01ec01200641084103200241024100102b417341a895c0004114103c200041003b01ec0120" + "0641084103200241024100102c417341bc95c0004113103c200041003b01ec012006410820" + "0241024100102d417341cf95c0004113103c2001200028029801410010094171419e89c000" + "4123103c200041003b01ec01200441142001200028029801200241021018417141e295c000" + "411a103c200041003b01ec012001200028029801200241021019417141fc95c0004121103c" + "200041003b01ec01200120002802980120024102101a4171419d96c0004120103c20012000" + "28029801101b417141c189c0004120103c2001200028029801101c417141e189c000412710" + "3c200041003602ec01200120002802980120024104101d417141bd96c0004121103c200041" + "003b01ec012001200028029801200241021008417141de96c0004123103c200041003b01ec" + "012001200028029801410120024102102e4171418197c0004121103c200041003b01ec0120" + "0120002802980122062004411420012006200241021023417141a297c0004127103c200041" + "003b01ec01200441142001200028029801220620012006200241021023417141c997c00041" + "27103c200041003b01ec0120012000280298012004411420024102102f417141f097c00041" + "25103c200041003b01ec0120044114200120002802980120024102102f4171419598c00041" + "25103c200041003b01ec01200120002802980120044114200241021030417141ba98c00041" + "2c103c200041003b01ec01200441142001200028029801200241021030417141e698c00041" + "2c103c200041003b01ec0120012000280298012002410210314171419299c000411f103c20" + "0041003b01ec0120012000280298014101200241021032417141b199c0004122103c200041" + "003b01ec0120012000280298012004411441b185c0004114200241021021417141d399c000" + "4121103c200041003b01ec0120044114200120002802980141b185c0004114200241021021" + "417141f499c0004121103c200041003b01ec01200120002802980141012002410210334171" + "41959ac0004128103c200041003b01ec012005411820012000280298012002410210244171" + "41bd9ac0004123103c200041003b01ec0120012000280298014101200241021034417141e0" + "9ac0004125103c200041003b01ec0120012000280298014101200241021035417141859bc0" + "004121103c200041003b01ec0120012000280298014101200241021036417141a69bc00041" + "22103c200041003b01ec012001200028029801200441144101200241021037417141c89bc0" + "004124103c200041003b01ec012004411420012000280298014101200241021037417141ec" + "9bc0004124103c200041003b01ec0120012000280298014101200241021038417141909cc0" + "00412f103c200041003b01ec012001200028029801200241021039417141bf9cc000412310" + "3c200041003b01ec012001200028029801410120024102103a417141e29cc0004122103c20" + "0041003b01ec012001200028029801410120024102103b417141849dc0004121103c200041" + "003b01ec01200120002802980141888ac0004120200241021018417141a59dc000411c103c" + "419783c000410d2001200028029801101e417141a88ac0004122103c419797abdd03410d41" + "888ac000412041001000417341ca8ac0004110103c419797abdd03410d2003410810254173" + "41da8ac000411d103c419797abdd03410d20044114101e417341f78ac0004118103c419797" + "abdd03410d41b183c0004108101f4173418f8bc0004117103c200120002802980120014181" + "2041001000417441a68bc000410e103c200141812042011001417441b48bc0004112103c41" + "9783c000418120200341081025417441c68bc000411b103c419783c0004181202004411410" + "1e417441e18bc0004116103c419783c00041812041b183c0004108101f417441f78bc00041" + "15103c419783c000410d2001200028029801101f4171418c8cc0004119103c200041003b01" + "ec01200120002802980120044114200241021024417141c19dc0004121103c200041f0016a" + "240041010f0b0b418080c000410b417f20052005417f4e1bac1001000b0bcd1d0200418080" + "c0000bc5056572726f725f636f64653d54455354204641494c454424242424242053544152" + "54494e47205741534d20455845435554494f4e2024242424246765745f6c65646765725f73" + "716e6765745f706172656e745f6c65646765725f74696d656765745f626173655f66656574" + "6573745f616d656e646d656e74616d656e646d656e745f656e61626c656463616368655f6c" + "65646765725f6f626a6765745f74785f61727261795f6c656e6765745f63757272656e745f" + "6c65646765725f6f626a5f61727261795f6c656e6765745f6c65646765725f6f626a5f6172" + "7261795f6c656e6765745f74785f6e65737465645f61727261795f6c656e6765745f637572" + "72656e745f6c65646765725f6f626a5f6e65737465645f61727261795f6c656e6765745f6c" + "65646765725f6f626a5f6e65737465645f61727261795f6c656e7570646174655f64617461" + "74657374206d65737361676574657374207075626b657974657374207369676e6174757265" + "636865636b5f7369676765745f6e66745f666c6167736765745f6e66745f7472616e736665" + "725f66656574657374696e6720747261636574726163655f6163636f756e74400000000000" + "005f74726163655f616d6f756e746765745f706172656e745f6c65646765725f686173685f" + "6e65675f7074726765745f74785f61727261795f6c656e5f696e76616c69645f736669656c" + "646765745f74785f6e65737465645f61727261795f6c656e5f6e65675f7074726765745f74" + "785f6e65737465645f61727261795f6c656e5f6e65675f6c656e6765745f74785f6e657374" + "65645f61727261795f6c656e5f746f6f5f6c6f6e676765745f74785f6e65737465645f6172" + "7261795f6c656e5f7074725f6f6f6263616368655f6c65646765725f6f626a5f7074725f6f" + "6f6263616368655f6c65646765725f6f626a5f77726f6e675f6c656e555344303030303030" + "30303030303030303030300041ed85c0000bf51774726163655f6e756d5f6f6f625f737472" + "6765745f63757272656e745f6c65646765725f6f626a5f61727261795f6c656e5f696e7661" + "6c69645f736669656c646765745f6c65646765725f6f626a5f61727261795f6c656e5f696e" + "76616c69645f736669656c64616d656e646d656e745f656e61626c65645f746f6f5f626967" + "5f736c696365616d656e646d656e745f656e61626c65645f746f6f5f6c6f6e676765745f74" + "785f6e65737465645f61727261795f6c656e5f746f6f5f6269675f736c6963656765745f63" + "757272656e745f6c65646765725f6f626a5f6e65737465645f61727261795f6c656e5f746f" + "6f5f6269675f736c6963656765745f6c65646765725f6f626a5f6e65737465645f61727261" + "795f6c656e5f746f6f5f6269675f736c6963657570646174655f646174615f746f6f5f6269" + "675f736c69636574726163655f6f6f625f736c69636574726163655f6f70617175655f666c" + "6f61745f6f6f625f736c69636574726163655f616d6f756e745f6f6f625f736c696365666c" + "6f61745f636f6d706172655f6f6f625f736c69636531666c6f61745f636f6d706172655f6f" + "6f625f736c6963653263616368655f6c65646765725f6f626a5f77726f6e675f73697a655f" + "75696e743235366765745f6e66745f666c6167735f77726f6e675f73697a655f75696e7432" + "35366765745f6e66745f7472616e736665725f6665655f77726f6e675f73697a655f75696e" + "74323536303030303030303030303030303030303030303030303030303030303030303174" + "726163655f6163636f756e745f77726f6e675f73697a655f6163636f756e74696474726163" + "655f6f6f625f737472696e6774726163655f6f70617175655f666c6f61745f6f6f625f7374" + "72696e6774726163655f6163636f756e745f6f6f625f737472696e6774726163655f616d6f" + "756e745f6f6f625f737472696e6774726163655f746f6f5f6c6f6e6774726163655f6e756d" + "5f746f6f5f6c6f6e6774726163655f6f70617175655f666c6f61745f746f6f5f6c6f6e6774" + "726163655f6163636f756e745f746f6f5f6c6f6e6774726163655f616d6f756e745f746f6f" + "5f6c6f6e6774726163655f616d6f756e745f77726f6e675f6c656e6774686765745f706172" + "656e745f6c65646765725f686173686765745f63757272656e745f6c65646765725f6f626a" + "5f6669656c646765745f6c65646765725f6f626a5f6669656c646765745f74785f6e657374" + "65645f6669656c646765745f63757272656e745f6c65646765725f6f626a5f6e6573746564" + "5f6669656c646765745f6c65646765725f6f626a5f6e65737465645f6669656c64636f6d70" + "7574655f7368613531325f68616c666765745f6e66746765745f6e66745f69737375657267" + "65745f6e66745f7461786f6e6765745f6e66745f73657269616c6765745f706172656e745f" + "6c65646765725f686173685f6e65675f6c656e6765745f706172656e745f6c65646765725f" + "686173685f6275665f746f6f5f736d616c6c6765745f706172656e745f6c65646765725f68" + "6173685f6c656e5f746f6f5f6c6f6e67666c6f61745f66726f6d5f75696e745f6c656e5f6f" + "6f62666c6f61745f66726f6d5f75696e745f77726f6e675f6c656e6163636f756e745f6b65" + "796c65745f6c656e5f6f6f626163636f756e745f6b65796c65745f77726f6e675f6c656e6c" + "696e655f6b65796c65745f6c656e5f6f6f625f63757272656e63796c696e655f6b65796c65" + "745f77726f6e675f6c656e5f63757272656e6379616d6d5f6b65796c65745f6c656e5f6f6f" + "625f617373657432616d6d5f6b65796c65745f6c656e5f77726f6e675f6c656e5f61737365" + "7432616d6d5f6b65796c65745f6c656e5f77726f6e675f6e6f6e5f7872705f63757272656e" + "63795f6c656e616d6d5f6b65796c65745f6c656e5f77726f6e675f7872705f63757272656e" + "63795f6c656e616d6d5f6b65796c65745f6d70746765745f74785f6669656c645f696e7661" + "6c69645f736669656c646765745f63757272656e745f6c65646765725f6f626a5f6669656c" + "645f696e76616c69645f736669656c646765745f6c65646765725f6f626a5f6669656c645f" + "696e76616c69645f736669656c646765745f74785f6e65737465645f6669656c645f746f6f" + "5f6269675f736c6963656765745f63757272656e745f6c65646765725f6f626a5f6e657374" + "65645f6669656c645f746f6f5f6269675f736c6963656765745f6c65646765725f6f626a5f" + "6e65737465645f6669656c645f746f6f5f6269675f736c696365636f6d707574655f736861" + "3531325f68616c665f746f6f5f6269675f736c696365616d6d5f6b65796c65745f746f6f5f" + "6269675f736c69636563726564656e7469616c5f6b65796c65745f746f6f5f6269675f736c" + "6963656d70746f6b656e5f6b65796c65745f746f6f5f6269675f736c6963655f6d70746964" + "666c6f61745f6164645f6f6f625f736c69636531666c6f61745f6164645f6f6f625f736c69" + "636532666c6f61745f73756274726163745f6f6f625f736c69636531666c6f61745f737562" + "74726163745f6f6f625f736c69636532666c6f61745f6d756c7469706c795f6f6f625f736c" + "69636531666c6f61745f6d756c7469706c795f6f6f625f736c69636532666c6f61745f6469" + "766964655f6f6f625f736c69636531666c6f61745f6469766964655f6f6f625f736c696365" + "32666c6f61745f726f6f745f6f6f625f736c696365666c6f61745f706f775f6f6f625f736c" + "696365666c6f61745f6c6f675f6f6f625f736c6963656765745f6e66745f77726f6e675f73" + "697a655f75696e743235366765745f6e66745f6973737565725f77726f6e675f73697a655f" + "75696e743235366765745f6e66745f7461786f6e5f77726f6e675f73697a655f75696e7432" + "35366765745f6e66745f73657269616c5f77726f6e675f73697a655f75696e743235366163" + "636f756e745f6b65796c65745f77726f6e675f73697a655f6163636f756e74696463686563" + "6b5f6b65796c65745f77726f6e675f73697a655f6163636f756e74696463726564656e7469" + "616c5f6b65796c65745f77726f6e675f73697a655f6163636f756e7469643163726564656e" + "7469616c5f6b65796c65745f77726f6e675f73697a655f6163636f756e7469643264656c65" + "676174655f6b65796c65745f77726f6e675f73697a655f6163636f756e7469643164656c65" + "676174655f6b65796c65745f77726f6e675f73697a655f6163636f756e746964326465706f" + "7369745f707265617574685f6b65796c65745f77726f6e675f73697a655f6163636f756e74" + "6964316465706f7369745f707265617574685f6b65796c65745f77726f6e675f73697a655f" + "6163636f756e746964326469645f6b65796c65745f77726f6e675f73697a655f6163636f75" + "6e746964657363726f775f6b65796c65745f77726f6e675f73697a655f6163636f756e7469" + "646c696e655f6b65796c65745f77726f6e675f73697a655f6163636f756e746964316c696e" + "655f6b65796c65745f77726f6e675f73697a655f6163636f756e746964326d70745f697373" + "75616e63655f6b65796c65745f77726f6e675f73697a655f6163636f756e7469646d70746f" + "6b656e5f6b65796c65745f77726f6e675f73697a655f6163636f756e7469646e66745f6f66" + "6665725f6b65796c65745f77726f6e675f73697a655f6163636f756e7469646f666665725f" + "6b65796c65745f77726f6e675f73697a655f6163636f756e7469646f7261636c655f6b6579" + "6c65745f77726f6e675f73697a655f6163636f756e7469647061796368616e5f6b65796c65" + "745f77726f6e675f73697a655f6163636f756e746964317061796368616e5f6b65796c6574" + "5f77726f6e675f73697a655f6163636f756e746964327065726d697373696f6e65645f646f" + "6d61696e5f6b65796c65745f77726f6e675f73697a655f6163636f756e7469647369676e65" + "72735f6b65796c65745f77726f6e675f73697a655f6163636f756e7469647469636b65745f" + "6b65796c65745f77726f6e675f73697a655f6163636f756e7469647661756c745f6b65796c" + "65745f77726f6e675f73697a655f6163636f756e7469646765745f6e66745f77726f6e675f" + "73697a655f6163636f756e7469646d70746f6b656e5f6b65796c65745f6d707469645f7772" + "6f6e675f6c656e677468004d0970726f64756365727302086c616e67756167650104527573" + "74000c70726f6365737365642d6279010572757374631d312e38352e312028346562313631" + "32353020323032352d30332d313529002c0f7461726765745f6665617475726573022b0f6d" + "757461626c652d676c6f62616c732b087369676e2d657874"; extern std::string const floatTestsWasmHex = "0061736d0100000001430860077f7f7f7f7f7f7f017f60057f7f7f7f7f017f60047f7f7f7f" diff --git a/src/xrpld/app/wasm/HostFunc.h b/src/xrpld/app/wasm/HostFunc.h index f1332462a4..4478a8cd56 100644 --- a/src/xrpld/app/wasm/HostFunc.h +++ b/src/xrpld/app/wasm/HostFunc.h @@ -135,18 +135,6 @@ struct HostFunctions return Unexpected(HostFunctionError::INTERNAL); } - virtual Expected - getLedgerAccountHash() - { - return Unexpected(HostFunctionError::INTERNAL); - } - - virtual Expected - getLedgerTransactionHash() - { - return Unexpected(HostFunctionError::INTERNAL); - } - virtual Expected getBaseFee() { diff --git a/src/xrpld/app/wasm/HostFuncImpl.h b/src/xrpld/app/wasm/HostFuncImpl.h index 7c02e3160e..f56aa102a5 100644 --- a/src/xrpld/app/wasm/HostFuncImpl.h +++ b/src/xrpld/app/wasm/HostFuncImpl.h @@ -99,12 +99,6 @@ public: Expected getParentLedgerHash() override; - Expected - getLedgerAccountHash() override; - - Expected - getLedgerTransactionHash() override; - Expected getBaseFee() override; diff --git a/src/xrpld/app/wasm/HostFuncWrapper.h b/src/xrpld/app/wasm/HostFuncWrapper.h index dc0524d611..6bfa576b9d 100644 --- a/src/xrpld/app/wasm/HostFuncWrapper.h +++ b/src/xrpld/app/wasm/HostFuncWrapper.h @@ -44,20 +44,6 @@ getParentLedgerHash_wrap( wasm_val_vec_t const* params, wasm_val_vec_t* results); -using getLedgerAccountHash_proto = int32_t(uint8_t*, int32_t); -wasm_trap_t* -getLedgerAccountHash_wrap( - void* env, - wasm_val_vec_t const* params, - wasm_val_vec_t* results); - -using getLedgerTransactionHash_proto = int32_t(uint8_t*, int32_t); -wasm_trap_t* -getLedgerTransactionHash_wrap( - void* env, - wasm_val_vec_t const* params, - wasm_val_vec_t* results); - using getBaseFee_proto = int32_t(); wasm_trap_t* getBaseFee_wrap( diff --git a/src/xrpld/app/wasm/detail/HostFuncImpl.cpp b/src/xrpld/app/wasm/detail/HostFuncImpl.cpp index af8eff36ee..f6517767dc 100644 --- a/src/xrpld/app/wasm/detail/HostFuncImpl.cpp +++ b/src/xrpld/app/wasm/detail/HostFuncImpl.cpp @@ -55,18 +55,6 @@ WasmHostFunctionsImpl::getParentLedgerHash() return ctx.view().info().parentHash; } -Expected -WasmHostFunctionsImpl::getLedgerAccountHash() -{ - return ctx.view().info().accountHash; -} - -Expected -WasmHostFunctionsImpl::getLedgerTransactionHash() -{ - return ctx.view().info().txHash; -} - Expected WasmHostFunctionsImpl::getBaseFee() { diff --git a/src/xrpld/app/wasm/detail/HostFuncWrapper.cpp b/src/xrpld/app/wasm/detail/HostFuncWrapper.cpp index 304fc9eeda..d7995f6b32 100644 --- a/src/xrpld/app/wasm/detail/HostFuncWrapper.cpp +++ b/src/xrpld/app/wasm/detail/HostFuncWrapper.cpp @@ -358,34 +358,6 @@ getParentLedgerHash_wrap( runtime, params, results, hf->getParentLedgerHash(), index); } -wasm_trap_t* -getLedgerAccountHash_wrap( - void* env, - wasm_val_vec_t const* params, - wasm_val_vec_t* results) -{ - auto* hf = reinterpret_cast(env); - auto const* runtime = reinterpret_cast(hf->getRT()); - int index = 0; - - return returnResult( - runtime, params, results, hf->getLedgerAccountHash(), index); -} - -wasm_trap_t* -getLedgerTransactionHash_wrap( - void* env, - wasm_val_vec_t const* params, - wasm_val_vec_t* results) -{ - auto* hf = reinterpret_cast(env); - auto const* runtime = reinterpret_cast(hf->getRT()); - int index = 0; - - return returnResult( - runtime, params, results, hf->getLedgerTransactionHash(), index); -} - wasm_trap_t* getBaseFee_wrap( void* env, diff --git a/src/xrpld/app/wasm/detail/WasmVM.cpp b/src/xrpld/app/wasm/detail/WasmVM.cpp index 022d66f982..f2d3799ca8 100644 --- a/src/xrpld/app/wasm/detail/WasmVM.cpp +++ b/src/xrpld/app/wasm/detail/WasmVM.cpp @@ -41,8 +41,6 @@ setCommonHostFunctions(HostFunctions* hfs, std::vector& i) WASM_IMPORT_FUNC2(i, getLedgerSqn, "get_ledger_sqn", hfs, 60); WASM_IMPORT_FUNC2(i, getParentLedgerTime, "get_parent_ledger_time", hfs, 60); WASM_IMPORT_FUNC2(i, getParentLedgerHash, "get_parent_ledger_hash", hfs, 60); - WASM_IMPORT_FUNC2(i, getLedgerAccountHash, "get_ledger_account_hash", hfs, 60); - WASM_IMPORT_FUNC2(i, getLedgerTransactionHash, "get_ledger_tx_hash", hfs, 60); WASM_IMPORT_FUNC2(i, getBaseFee, "get_base_fee", hfs, 60); WASM_IMPORT_FUNC2(i, isAmendmentEnabled, "amendment_enabled", hfs, 100);