Skip to content

Commit 1b09f6c

Browse files
committed
fixed tests
1 parent f9c0550 commit 1b09f6c

File tree

3 files changed

+57
-58
lines changed

3 files changed

+57
-58
lines changed

target_chains/ton/contracts/contracts/common/utils.fc

Lines changed: 33 additions & 52 deletions
Original file line numberDiff line numberDiff line change
@@ -77,68 +77,49 @@ Note:
7777
- If the input data exceeds 1016 bits, it is split into multiple cells linked by references
7878
- Uses direct forward construction to avoid gas-inefficient double reversal
7979
-}
80-
;; (cell, slice) read_and_store_large_data(slice in_msg_body, int size) {
81-
;; ;; Collect chunks in order as we build them
82-
;; tuple chunk_list = empty_tuple();
83-
;; int total_bits_loaded = 0;
84-
;; builder current_builder = begin_cell();
80+
(cell, slice) read_and_store_large_data(slice in_msg_body, int size) {
81+
;; Collect chunks in order as we build them
82+
tuple chunk_list = empty_tuple();
83+
int total_bits_loaded = 0;
84+
builder current_builder = begin_cell();
8585

86-
;; while ((~ in_msg_body.slice_empty?()) & (total_bits_loaded < size)) {
87-
;; int bits_to_load = min(min(in_msg_body.slice_bits(), MAX_BITS - current_builder.builder_bits()), size - total_bits_loaded);
88-
;; current_builder = current_builder.store_slice(in_msg_body~load_bits(bits_to_load));
89-
;; total_bits_loaded += bits_to_load;
86+
while ((~ in_msg_body.slice_empty?()) & (total_bits_loaded < size)) {
87+
int bits_to_load = min(min(in_msg_body.slice_bits(), MAX_BITS - current_builder.builder_bits()), size - total_bits_loaded);
88+
current_builder = current_builder.store_slice(in_msg_body~load_bits(bits_to_load));
89+
total_bits_loaded += bits_to_load;
9090

91-
;; if ((current_builder.builder_bits() == MAX_BITS) | (size - total_bits_loaded == 0)) {
92-
;; cell current_chunk = current_builder.end_cell();
93-
;; chunk_list~tpush(current_chunk);
94-
;; current_builder = begin_cell();
95-
;; }
91+
if ((current_builder.builder_bits() == MAX_BITS) | (size - total_bits_loaded == 0)) {
92+
cell current_chunk = current_builder.end_cell();
93+
chunk_list~tpush(current_chunk);
94+
current_builder = begin_cell();
95+
}
9696

97-
;; if ((in_msg_body.slice_bits() == 0) & (~ in_msg_body.slice_refs_empty?())) {
98-
;; in_msg_body = in_msg_body~load_ref().begin_parse();
99-
;; }
100-
;; }
97+
if ((in_msg_body.slice_bits() == 0) & (~ in_msg_body.slice_refs_empty?())) {
98+
in_msg_body = in_msg_body~load_ref().begin_parse();
99+
}
100+
}
101101

102-
;; ;; Build forward chain: first chunk → second chunk → third chunk etc
103-
;; cell result = null();
104-
;; int chunk_count = chunk_list.tlen();
102+
;; Build forward chain: first chunk → second chunk → third chunk etc
103+
cell result = null();
104+
int chunk_count = chunk_list.tlen();
105105

106-
;; if (chunk_count > 0) {
107-
;; ;; Start from the last chunk (no references)
108-
;; result = chunk_list.at(chunk_count - 1);
106+
if (chunk_count > 0) {
107+
;; Start from the last chunk (no references)
108+
result = chunk_list.at(chunk_count - 1);
109109

110-
;; ;; Build forward by adding references from earlier chunks to later chunks
111-
;; int i = chunk_count - 2;
112-
;; while (i >= 0) {
113-
;; cell current_chunk = chunk_list.at(i);
114-
;; result = begin_cell().store_slice(current_chunk.begin_parse()).store_ref(result).end_cell();
115-
;; i -= 1;
116-
;; }
117-
;; }
118-
119-
;; return (result, in_msg_body);
120-
;; }
121-
122-
(cell, slice) read_and_store_large_data(slice in_msg_body, int size) {
123-
(cell chunks, slice remaining) = split_into_reverse_chunks(in_msg_body, size);
124-
cell last_cell = null();
125-
while (~ cell_null?(chunks)) {
126-
slice chunk = chunks.begin_parse();
127-
builder cb = begin_cell().store_slice(chunk~load_bits(chunk.slice_bits()));
128-
if (~ cell_null?(last_cell)) {
129-
cb = cb.store_ref(last_cell);
130-
}
131-
last_cell = cb.end_cell();
132-
if (chunk.slice_refs_empty?()) {
133-
chunks = null();
134-
} else {
135-
chunks = chunk~load_ref();
110+
;; Build forward by adding references from earlier chunks to later chunks
111+
int i = chunk_count - 2;
112+
while (i >= 0) {
113+
cell current_chunk = chunk_list.at(i);
114+
result = begin_cell().store_slice(current_chunk.begin_parse()).store_ref(result).end_cell();
115+
i -= 1;
136116
}
137117
}
138-
139-
return (last_cell, remaining);
118+
119+
return (result, in_msg_body);
140120
}
141121

122+
142123
(int) pubkey_to_eth_address(int x1, int x2) {
143124
slice pubkey = begin_cell()
144125
.store_uint(x1, 256)

target_chains/ton/contracts/tests/PythTest.spec.ts

Lines changed: 22 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1774,7 +1774,7 @@ describe("PythTest", () => {
17741774
],
17751775
HERMES_1_BTC_PUBLISH_TIME,
17761776
HERMES_1_BTC_PUBLISH_TIME,
1777-
mockDeployer.address,
1777+
deployer.address,
17781778
CUSTOM_PAYLOAD,
17791779
);
17801780

@@ -1805,7 +1805,7 @@ describe("PythTest", () => {
18051805
expect(op).toBe(5);
18061806

18071807
const numPriceFeeds = cs.loadUint(8);
1808-
expect(numPriceFeeds).toBe(10);
1808+
expect(numPriceFeeds).toBe(1);
18091809

18101810
const priceFeedsCell = cs.loadRef();
18111811
let currentCell = priceFeedsCell;
@@ -1878,7 +1878,7 @@ describe("PythTest", () => {
18781878
],
18791879
HERMES_7_ETH_PUBLISH_TIME,
18801880
HERMES_7_ETH_PUBLISH_TIME,
1881-
mockDeployer.address,
1881+
deployer.address,
18821882
CUSTOM_PAYLOAD,
18831883
);
18841884

@@ -1909,7 +1909,7 @@ describe("PythTest", () => {
19091909
expect(op).toBe(5);
19101910

19111911
const numPriceFeeds = cs.loadUint(8);
1912-
expect(numPriceFeeds).toBe(10);
1912+
expect(numPriceFeeds).toBe(7);
19131913

19141914
const priceFeedsCell = cs.loadRef();
19151915
let currentCell = priceFeedsCell;
@@ -1993,10 +1993,27 @@ describe("PythTest", () => {
19931993
],
19941994
HERMES_10_ETH_PUBLISH_TIME,
19951995
HERMES_10_ETH_PUBLISH_TIME,
1996-
mockDeployer.address,
1996+
deployer.address,
19971997
CUSTOM_PAYLOAD,
19981998
);
19991999

2000+
console.log(result.transactions.length);
2001+
console.log("deployer address: " + deployer.address.toString());
2002+
console.log("pythTest address: " + pythTest.address.toString());
2003+
2004+
let i = 0;
2005+
2006+
result.transactions.forEach((tx) => {
2007+
console.log("Transaction " + i.toString() + ":");
2008+
console.log(tx.inMessage?.info.src?.toString() + " -> " + tx.inMessage?.info.dest?.toString());
2009+
console.log("out message count: " + tx.outMessages.values().length);
2010+
if (tx.outMessages.values().length > 0) {
2011+
console.log("Out Messages: ");
2012+
console.log(tx.outMessages.values()[0]);
2013+
}
2014+
i++;
2015+
});
2016+
20002017
expect(result.transactions).toHaveTransaction({
20012018
from: deployer.address,
20022019
to: pythTest.address,

target_chains/ton/contracts/tests/utils/pyth.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,8 @@ export const HERMES_UPDATE_10_PRICE_FEEDS =
6363
export const HERMES_UPDATE_7_PRICE_FEEDS =
6464
"504e41550100000003b801000000040d00688223fdded4c364d2bba44b9ef3f5962aea42dae42acf933afb025204f7af77282f19b9dcc6e72ed8d244d80bcada72e74451570cba6d7944705b92b25a4fb70003934caaa10a45f997d84f89e5f47f442505de5913440eb5348d049ad8c0a020cf2b8fe96313a65f86f97e988e8c0c3a546650b18d76aba1680ef02f73bdd0189f0104b5a25d61ddee85452bf4cf42fe5e576388e6c8e0fc38651f9fc6cec76155232e440cc5fa0a7ab327ee440684054dcece5c6822d5fa276439f2a8dd99b7ef2cbb01062f30978199e0804dd2bb5ec449a3ea13a890db07c138623e493f64cbc52160cf340be0bec32da5366c74647a7aae210f83d479719753335ce7129bfbb532272101084142aaa870bf4ccce995e3c28216274e9a8894de0dc22faab25bf60c69f829f67ed2559430681bcff958a8bf84a7a26aa06bd189a448a2bcaa4f4f9a1c897d2e010af631239025df0e62d9b140e428d97d57feb4e2aa49ebfa0d4895642954bd608310c38bf647fed900048d7fdbe6a6e14035b2b4b8d0577460fdae24befa9ed014010b7e862b3dc7aff7cedd3c20f0ad2f3796c8746840bb43d112b2caf6c3d4c018782c7fb19692807ca40718c2865928568da25e24b8d44aea9ce3628dbc67f9d6f7000c7f9c6be212fd95903a504b47ccfd56323a0142f825f7be0fb34c1e0fec3447490a9cdcee4fecf84e11faee27a769ab0ccfbc9af6ef6abbd9b7e77de907e0dc85010d2e792bc6d9243492433e002ee223de24aeed445cc4715d9ba662c19ad0b507dd4eab94800c9118b4945e27f358c967c4014c11c64e2776c119d23edcdaacc387010f0bae38eec443a5b8f64d4542339d5d464eb2a75c3d9053fecb1adc49c1c94d2a7df9e6618dee1a1a382d7ca1cc177a236aebb706e2d6a81c4f736d4d9bff430b0110b31a7fe26282a1edd8a839c88722c6b077fc572c5f9c96fc0c7b9c8ddd5b622154cdd7efbe132af125c5a9618a6d1d47aeb797716390c6a8dc9d0342e08d2b0f01119a8d4e6a6b7961507bd58d7544808d008c35b2ec9d88d08c78c4a840bd09dc4a1588f71ad923b6dca9d44442a6f29463e26a4e27067a55494ea8b059c2056b7b0112ff849754025bc5ec412e625c480fcce8499a99a1f0fa0dbe9e2e76552613fcc7305ae22d07da732e52bd5c1094e727ad97f9a9b1b9980c179925fe60e9f1f7c100689218b000000000001ae101faedac5851e32b9b23b5f9411a8c2bac4aae3ed4dd7b811dd1a72ea4aa710000000008ea4bb8014155575600000000000df7de5e00002710077df99688b52570a8aed2ab38c266ffd6c7666107005500e62df6c8b4a85fe1a67db44dc12de5db330f7ac66b72dc658afedf0f4a415b4300000a42b23f8929000000017c705f51fffffff800000000689218b000000000689218b000000a5b80511860000000016db315280c66818828ac6e074da0166e68bbb09217b673567fc8ed3355c811123d093d8ba21dd060fd823617a9cac2f21f4bd3a6e45e371ca4ef023247054be224d2c3df634e63aad77f8f33e8522868705d340e1a7ec0e19c4903cc3f78503d18b77db8c9eba4fbc93adc10317749f5e66aecef4a7cafc21a1571ea5e4b9fdb71e9db908894b8150b03f1fc4c724df47c86265af8d0568655cb7c324d906b8a6106218da399116477a334a0114a88703e79fc087a846594fe75d5a7c9b8f4cc55d1cd91cd582042d11cf3b4a33da420b221caefa35a2fcbc20b3d7eaa105aa3fa0a752e9f3de0bbe96dad1c2ebb71c826200b548d005500ff61491a931112ddf1bd8147cd1b641375f79f5825126d665480874634fd0ace0000005330ab7328000000000bd69b1ffffffff800000000689218b000000000689218b0000000543d7a7b50000000000cb50bc70c6e06fdadf5803f83f79b540b4c730d48a99a49a1258fddfd0fd65a01d1d94033315ef5537d4f6576598ebf023bf2f2c8e9ab4ff57592db330330620d377412ccc4ff5cf9b9e14013cfc77cd61eb6bb24f1cecfe4e4f7723596730959ea4fee1f65b75796c496b7166c7afbea8a2ae75dc5fa54cb4d8271e1b970f826db35ce8e96830ef94dad0a32d173d7751764265ffe658e9a13906c3bf1be6824372e5dadc24780c30755c12d975cdbd3c896a0aecdd1eac675d5a7c9b8f4cc55d1cd91cd582042d11cf3b4a33da420b221caefa35a2fcbc20b3d7eaa105aa3fa0a752e9f3de0bbe96dad1c2ebb71c826200b548d005500dcef50dd0a4cd2dcc17e45df1676dcb336a11a61c69df7a0299b0150c672d25c00000000012faa590000000000004726fffffff800000000689218b000000000689218b0000000000134d38600000000000046da0caf13ef404d534a31f533f98972663a4ead54d6baec0612654a6169d78e551c91b37222b6347a7033ac7d5b673042e5fc3bd06528bb4dfccc79ad97bf6cbb174c032db1845847d00f948706687de50b0b180a1012e4a89ecae5d271159f589cf1470747a89b619a09da6f8ad7fb8c2334ac847f4641969d091dd00ae0f88dcf12e881da23872be72395c2f4c55ac4ac4ae151401c944b45cf110a857492fdf64699116477a334a0114a88703e79fc087a846594fe75d5a7c9b8f4cc55d1cd91cd582042d11cf3b4a33da420b221caefa35a2fcbc20b3d7eaa105aa3fa0a752e9f3de0bbe96dad1c2ebb71c826200b548d005500ef0d8b6fda2ceba41da15d4095d1da392a0d2f8ed0c6c7bc0f4cfac8c280b56d00000003d30e3b340000000000b85af1fffffff800000000689218b000000000689218b000000003e0df50780000000000bb8fb70c855d8cbaca67fb4b9de162c82eb6cef04b976ded7eb8cdc5801cc9997eafa9af110d828febe76bf4c49763e8db52ffeab0f4d653758b5e47851faca9dc65ad844767095b894a198fa07fbab88a14a37ea067bdbe9589d380e5f6083ce2575061bd28601de94d5189b9ac4b4eaecb6d8006dc26d0e194ff5e5d9196a6f4999386abb5129721fe25674bedae3286265af8d0568655cb7c324d906b8a6106218da399116477a334a0114a88703e79fc087a846594fe75d5a7c9b8f4cc55d1cd91cd582042d11cf3b4a33da420b221caefa35a2fcbc20b3d7eaa105aa3fa0a752e9f3de0bbe96dad1c2ebb71c826200b548d0055000bbf28e9a841a1cc788f6a361b17ca072d0ea3098a1e5df1c3922d06719579ff0000000000ab6da200000000000043cafffffff800000000689218b000000000689218b00000000000ae2fd300000000000047b80c79d9070b84dbf250c78eba8ab668fcd17c7f97b97524078dc95e14f5c58d9c8154cf1180e9177c1fd1ebea4b6f5c48ee0a215cec09b635433e2b7921c57bfdc9d01fc0d9b7e89aa1b523f340f576078ac1d44a8bd8c309eee88c7ddd9c330e58295217614c3e3dda04c8d6b2e5fd75d3b33b0d30ea319a8d7c820660b512c810c76dfd048cb453a38a756eda0fdf9aad5aa0b21a981953c9749a3da157e95c214efb00660de89bc70b4dfb0ec0b206f2c6b8e6747c63c36856582812f8c2c0377f293d0acfdc94c07be14210ac957b508a61e098c0cbf2e5f7c32fbb0a752e9f3de0bbe96dad1c2ebb71c826200b548d0055003fa4252848f9f0a1480be62745a4629d9eb1322aebab8a791e344b3b9c1adcf5000000000249e360000000000000b0fffffffff800000000689218b000000000689218b0000000000252565b000000000000a19b0cdb9829053e9d7d65b4d608de51920701dac9e0f00cbdc6abd7346ac971a3e8dc2a1131f2319eac06481c9d510777a8e38f94d84d1b72656dd14c46bc1687998697888cacf10c52cb48233e151d4a1d5c4432336aad69960e10e20d0bb8c09f92714180ff25832d38e420dad55812e4441098b0777a11e15053395d0f12e9941ea0866202b576bdc555a3080bc53ca9b0ffb6def44ce84de2cf0a29343cd221df178005ad5b97ba6e3e0a7b1dbfb90151890862127c63c36856582812f8c2c0377f293d0acfdc94c07be14210ac957b508a61e098c0cbf2e5f7c32fbb0a752e9f3de0bbe96dad1c2ebb71c826200b548d0055008963217838ab4cf5cadc172203c1f0b763fbaa45f346d8ee50ba994bbcac30260000000013abaf58000000000005cb92fffffff800000000689218b000000000689218b00000000013bbf43c00000000000667490cb6f974c896c0945b6d13b92ac1cd356bc23d08c5cd68a954fbaef3169907ac8cf2a03b3bf7a352637240067bb79735c879f954434e27d70e9e5a33a990f2d701a7be0fa9854a6539900abe654a561de41bfeb2fe2d8b9bb702bbbc2fbd2f3381c1982babb081792ffb5627b5fddc0c6706d50e01fa179fd6b9fc0493002891bcd0ea99da8b04bb1428fe63a3dfc9c53645a9f5195eaad192cc953fb2715757984d99e3f38d07b48ddf9790101286d13b35816354274e41d2546c44cead5957852d20a0ea71ed50a23da420b221caefa35a2fcbc20b3d7eaa105aa3fa0a752e9f3de0bbe96dad1c2ebb71c826200b548d";
6565

66-
export const HERMES_UPDATE_1_PRICE_FEED = "504e41550100000003b801000000040d0024ba4db49c04e998aa08060759b348d165e4150d4fa02532a5bc0260b385e33b3da2b52559818c9dea0c1346fd3b889cbc4b77dfbcfc8cdcebdd5a4e8a2716e500030637f3314ffada501a5294676863a0f0abfda6bb5ce7a070b1e397ffb731a57f5b699ad8d110a60298b5182d3588736d939dbbb616731f6ed776ff1db1ecc642010436608a4c1069b85102d300f0d49e8c0b6dbd1b91a125be9dc72846e4dd3039851e9a3e993c6e80bcae827a1acfc1038c6fff49b65b547e4fe6f2c6b75eade2e3000623afd9393f4ea29c96c444dfbfe8f9bc8020073c9f4e2b0c684d661c5a24798b0c0835e6a56c67e4ea5cbfc11c4981bc0211bb2196d623f5635fcec881ddf09b01082c879187eb3617927b9fa4a55313d636a92364aead6065e0a5d74350a28fd67f3c60f9960493807df1431dae2df1566e22173d2a23169d99ffb6bc791a71c67d000aa9f49113cfe7842c4c2075bba6bda40567ec205156942c824d6ab7f1af2069f766404fcdc4b8c90baa223a1a5393bf4d0f3784722303c3044287113c76063062000b65943f76cf8128e03d70eba5d7e1328266d1ecad09a6893fc78b2aef2f48a88442388ef9787dbb77bf0801d6d9ade7c250b3a6ba7af953097ce80bc17364bab1000c59ae3741f6a832c3526a9663d4b43645eee038b7c908bf55713e89bcea2a52c113c4eaf9e5b5717e68093952a49d864a15671c4668ccedd02c6ec9d0f01ceb99010d925bd5b9d7df657400d14646d09c31c39cfe303659d3b01d6a1ee102c32c7dae08cd454fbfe376193d01552cbbb24071e665c99f32ab0a550ed5ab353e38c310000ed06d7f2b80be384bf7b6476f67ca6af530837d3e9c8628a517ca84c785995dc942f26be6c6cd1a24d64eca9f758869417f6ff5714c12473e9fc534b6f02bb0fa0110f7027f58118f8bb0f10d59c69a2cf0fcb5264655fba2db5a025c420c8297546508b52cd945dc00a963b64489ed20d51ccacf1a4952563a8a885212b318aaacfd0111acc1db644a0b71d35e68f2ef9463371368242bd22780c48bc52b10a34285b486155e2aede0a09cc66f34372e4841bb74d8713ba327f69a98fea1ddb9f23316380012be4c1d49b251a8ef92292a5c2ab09581c9b08c69cc8091f48bd2b6c145f75d427e1eb97a7235b972addaf1df0cc37547c0dc31745895b950c52e34b7fb7b9b7b006892252600000000001ae101faedac5851e32b9b23b5f9411a8c2bac4aae3ed4dd7b811dd1a72ea4aa710000000008ea69e0014155575600000000000df7fc8700002710ee5af58391fed56b5f26b26231e26cc703fdafb201005500e62df6c8b4a85fe1a67db44dc12de5db330f7ac66b72dc658afedf0f4a415b4300000a42b679e24800000001704b016afffffff80000000068922526000000006892252500000a4eee4f47e0000000017076fe8c0cd24564d2513ce1111370207f28363b4b4146a0b3a6469da754532cca14677495f08a3cdfed390033edfbc59e4097783d67292b904daa9911d9fb07d2512441b9704253862330cee327ca5a1eac6bd6150bc81675cc60efedd38db3e35eaba1c1c56865d78dedfde72b63a0786e5dc0b5afb3b733513e574ed175766e3ad63f1d7c29a7c6f99155fa85db42e3f4fca2ccfa2ceb910a876b836c7a7c44047e8143a276f85741fae52cdc591c31eb3e412007dde4224db3ce88d2a07a806ddb80ef3eb75ca6e32fefd122d10fcd5dbf2d6f62785cecdd1eead5788a61969a362c5cff8ac0a8a24b3eb08e19adb34a836192b0c3f1d2a4e5b6c7d8e9f00000000000000000000000000000000000000000000";
66+
export const HERMES_UPDATE_1_PRICE_FEED =
67+
"504e41550100000003b801000000040d0024ba4db49c04e998aa08060759b348d165e4150d4fa02532a5bc0260b385e33b3da2b52559818c9dea0c1346fd3b889cbc4b77dfbcfc8cdcebdd5a4e8a2716e500030637f3314ffada501a5294676863a0f0abfda6bb5ce7a070b1e397ffb731a57f5b699ad8d110a60298b5182d3588736d939dbbb616731f6ed776ff1db1ecc642010436608a4c1069b85102d300f0d49e8c0b6dbd1b91a125be9dc72846e4dd3039851e9a3e993c6e80bcae827a1acfc1038c6fff49b65b547e4fe6f2c6b75eade2e3000623afd9393f4ea29c96c444dfbfe8f9bc8020073c9f4e2b0c684d661c5a24798b0c0835e6a56c67e4ea5cbfc11c4981bc0211bb2196d623f5635fcec881ddf09b01082c879187eb3617927b9fa4a55313d636a92364aead6065e0a5d74350a28fd67f3c60f9960493807df1431dae2df1566e22173d2a23169d99ffb6bc791a71c67d000aa9f49113cfe7842c4c2075bba6bda40567ec205156942c824d6ab7f1af2069f766404fcdc4b8c90baa223a1a5393bf4d0f3784722303c3044287113c76063062000b65943f76cf8128e03d70eba5d7e1328266d1ecad09a6893fc78b2aef2f48a88442388ef9787dbb77bf0801d6d9ade7c250b3a6ba7af953097ce80bc17364bab1000c59ae3741f6a832c3526a9663d4b43645eee038b7c908bf55713e89bcea2a52c113c4eaf9e5b5717e68093952a49d864a15671c4668ccedd02c6ec9d0f01ceb99010d925bd5b9d7df657400d14646d09c31c39cfe303659d3b01d6a1ee102c32c7dae08cd454fbfe376193d01552cbbb24071e665c99f32ab0a550ed5ab353e38c310000ed06d7f2b80be384bf7b6476f67ca6af530837d3e9c8628a517ca84c785995dc942f26be6c6cd1a24d64eca9f758869417f6ff5714c12473e9fc534b6f02bb0fa0110f7027f58118f8bb0f10d59c69a2cf0fcb5264655fba2db5a025c420c8297546508b52cd945dc00a963b64489ed20d51ccacf1a4952563a8a885212b318aaacfd0111acc1db644a0b71d35e68f2ef9463371368242bd22780c48bc52b10a34285b486155e2aede0a09cc66f34372e4841bb74d8713ba327f69a98fea1ddb9f23316380012be4c1d49b251a8ef92292a5c2ab09581c9b08c69cc8091f48bd2b6c145f75d427e1eb97a7235b972addaf1df0cc37547c0dc31745895b950c52e34b7fb7b9b7b006892252600000000001ae101faedac5851e32b9b23b5f9411a8c2bac4aae3ed4dd7b811dd1a72ea4aa710000000008ea69e0014155575600000000000df7fc8700002710ee5af58391fed56b5f26b26231e26cc703fdafb201005500e62df6c8b4a85fe1a67db44dc12de5db330f7ac66b72dc658afedf0f4a415b4300000a42b679e24800000001704b016afffffff80000000068922526000000006892252500000a4eee4f47e0000000017076fe8c0cd24564d2513ce1111370207f28363b4b4146a0b3a6469da754532cca14677495f08a3cdfed390033edfbc59e4097783d67292b904daa9911d9fb07d2512441b9704253862330cee327ca5a1eac6bd6150bc81675cc60efedd38db3e35eaba1c1c56865d78dedfde72b63a0786e5dc0b5afb3b733513e574ed175766e3ad63f1d7c29a7c6f99155fa85db42e3f4fca2ccfa2ceb910a876b836c7a7c44047e8143a276f85741fae52cdc591c31eb3e412007dde4224db3ce88d2a07a806ddb80ef3eb75ca6e32fefd122d10fcd5dbf2d6f62785cecdd1eead5788a61969a362c5cff8ac0a8a24b3eb08e19adb34a836192";
6768

6869
export const HERMES_BTC_UNIQUE_PRICE = 5924002645461;
6970
export const HERMES_BTC_UNIQUE_CONF = 2634354539;

0 commit comments

Comments
 (0)