package octez-libs

  1. Overview
  2. Docs
Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source

Source file timelock_precompute.ml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
(*****************************************************************************)
(*                                                                           *)
(* Open Source License                                                       *)
(* Copyright (c) 2020-2021 Nomadic Labs, <contact@nomadic-labs.com>          *)
(*                                                                           *)
(* Permission is hereby granted, free of charge, to any person obtaining a   *)
(* copy of this software and associated documentation files (the "Software"),*)
(* to deal in the Software without restriction, including without limitation *)
(* the rights to use, copy, modify, merge, publish, distribute, sublicense,  *)
(* and/or sell copies of the Software, and to permit persons to whom the     *)
(* Software is furnished to do so, subject to the following conditions:      *)
(*                                                                           *)
(* The above copyright notice and this permission notice shall be included   *)
(* in all copies or substantial portions of the Software.                    *)
(*                                                                           *)
(* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR*)
(* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,  *)
(* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL   *)
(* THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER*)
(* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING   *)
(* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER       *)
(* DEALINGS IN THE SOFTWARE.                                                 *)
(*                                                                           *)
(*****************************************************************************)

(* Precomputed vdf tuples used for benchmarking using rsa2048.
   These values were generated using the command `precompute_timelock ~time ()`
   with the parameter time being a power of 2. That is,
     vdf_tupleX = precompute_timelock ~time:(Int.shift_left 1 X) ()
*)
let vdf_tuples =
  let vdf_tuple0 =
    `Hex
      "e1d5a7b7c79985b08180c8fcf0aa95988bb4d3ada8f6e6b8c9ad9880d9849997e5b3c5b3e6ee90afb4a5a8a5e6ba8d85da8c9eed81a732c1b3c888cd9bfebeb3d0f4f1838f95b1c4a6fcbeaaf9b0e8cbb6d0b6eeb9c297f9c6f5ae9090dec69b8bad9dc08fe5f09ea18c8fa883b4f1c7ebe3baa1b989908ceefcc28cb1adc4d981e6b385cabed29dda8784a0aaa48dffdafdbc95aeffebc78c8fc4dfafe3d98dbcabc9e21301"
  in
  let vdf_tuple1 =
    `Hex
      "88f5f489d5e384b6ece4c6d8fdcfbbb88992dae8aef8daeaa7bab1a2d5a58dc2a7f3e2b2d6fcd890bbb897a3e6f6809af08aecb7fad11780a0d0d9bb9bd094ddc2e5b59fefb1f6b6a394a3f3b392b79895e4a792f1e9c097d4ddd7e9c0a389c49485f1e5caa1b9f0c788dbbccfc3a9a192bc98fbe2eaa3e48d80b09b89b6e29dd5efec9ed2d1c1c9eea1afdbb3f8d9cc9e819f89aaf8cae8feb8bfa5e5cbddabefc3a08bdbb58cbdd59ba082ace9c7adf3fb979ea9dae383b9c4cadcc6f3f5ccf7aa9fd6a0dde296b89beeeefda9d0ab83f28381bbffd8948cf0a5b3cd83a4c186e9adcebaf3d7c3d9ccabccf994939791b8938484d6cef6beba94888fad8eade89098d0be94e6dbbbfbd8cde1d8fa87881301"
  in
  let vdf_tuple2 =
    `Hex
      "bfde86c39e82e2bff6afc3f683c5e6abf9d8a58eb2c5e995d8b99cc2a3da90aae3f6b8ace9ac89c585a091cdb9f9e3ecf9e094bbb5d230a2dcdce2c59d91d896a3cbac8aed87f187bad589b487f498c3dcd1b7cbeaf2b28df3e9ace1c4a6cbf4e7dbce83e6d28ceb90b880a7e7b7f7b5bb87fdc9b88398d1ebf8dfe7c9c6eb8cdbd5c78a84f8f6ca99e4bbb6b6abbbc9d1b7c3c3dee2c3edaacefb88eef4d2dbc18383d3f6a4c6cef2a7e09ec5aeeac9f6bcc6ecf6f4afc3f3a0cbb0cdfcc6a892fb92f99b97b3ccd3e7e3f58e8081c2c48acda1b4a591b6c6aaa293e2f4d8b7d8aac9adc0979ae2a0eed2b8b9edbde293e7eaf091b3c89bdd9f8dd297a9c2e2dda7e0e7c1f88d9da0a1dcf0dedae3e7aed89987d1f5f78be1ffdaa4c9a7dc8da58cc898bdd0b89eb380c3d28be2a3a2b5d88a9cbe8ffbe2d5918996b2cad2c7b7b4b7dce0ee89eec2f2c9f7b1809bf0e49be59cedf6a4ada6ea8e0401"
  in
  let vdf_tuple3 =
    `Hex
      "89d7e1ccbbb8e2eff995f999f1ab99bb96f1fec8e8a6aa90af98b4dde9d4f5cb9ee2d0b7e2cd9acbeaf0e69a95dcc8e3fac4beb2c1bb20e0f7a3c6ffbce5f7eee0e799e2bfb1edbca8bc9ed1dca6f2f6f9c4dcbeceddcadb97d585a7a4a592ecc086fc8fd28ae5f9eeb1cb9cd289b394f4f9d5b69edfefffeddff7dfb5decb9ae9eca9858290999dd6ff9d878dc2f1a5da82a9bdcea3b6bcb0b7cfa28ef18fdad1ecf1a6d8b0d987b19fdbcac7ecdf81929dbda0cbdbd6b7f4fcd789d9aff2c8cf999cd88a8591a09ff3ead09e849bdad5cbb097ced5bac8c2aaf7ae9aa3edcfbff3c6b886c2c2efc0acc4959d8ad988f5b1a3f49c98ade99ea1feb69b83f184fa81d385fd8997efa8ecb8b1e4c59be194a9c1a7e2eefe978390dcdab1a0d3a6e3dcd7f5f6c2d6c6c0b2cba18c859aaf9dafbb80c9d08ee0ebe6fc83b1a0b7efcbc39aee829784f98ca8a7cfeca2fa8bbeb79cf8feb3b0ffe6e6fd0601"
  in
  let vdf_tuple4 =
    `Hex
      "fe93c7e5bbb99df1e5b1e393f788d7b6e1aee88ba2afe9c7b7d8d08bdbcebadbf6cccbc1acb995c8c79ee5dcb282dee396c8dad2b6e02289f8a3f7d2ad93eff098d58385ffcca5a3a7d4adcdf38b88a3ad8ec7a3a18ea3beb7a2eac8e489dc8ff398d9b0b9d8b6baaa9d8884e3f1c481d9e4b895c8dccbe3d4abc48db9d4bfd3deaef8e0888ca6d99af581addb94909dc296aad0cff6b09e97dce88a96defcb4f2f8de86e88d8ac4ace3cfb397ffcce8ead882c58dc4bde3e9a79bfbba8bc9b5d2c7b5b0deb0fa86d18ba4a7a6febeafb28efb9cae938a9c968cfa83c791bd83f8e2ddbaec8ef0f4eaebb989c599bbd28789e097f7f88fd3f8caa5c8969ccdb6ced1b4f3b4cd89c9afc69498d28b99aba0dd8bc197b7a5cad0c0d2a187f39896f8a6f88cc5bed0b0cbc196e1b5f587d4c3c4cbfac9b58fb1ebb68ab198809092968088e083dfe8f8f2d69c88b3a181d1889faa95e4e4f096bf89c10501"
  in
  let vdf_tuple5 =
    `Hex
      "d096eddef9d4d1b1defcb2e8e4e2a8e8a3e9ef83dfaffbe59ebab4d4eef3fdb1f79eb390be84e3ebcdd88ae1d386f2fdf98abba3f0aa02c795f5a1e386b9b5c2a9f387a7cb93b3f7dae0bbb3cbe9a09997e2e5b5859cb6cdddd0e3e7dda0c4a9fceecff19db8859ca2a387a790bc8083d1a29ac3abdbc399e59a99c9aca4e4c2fd9fd290ba9cded6d7c2e8f699f7b7f5c393fac8c2f4bc95ded1d18887ecfddee1d68db0d3bee8f6b996c0b7ff9aa095ccf1d29ea689fddcdbdbd8b0e0f398c7fffd94c497c4a48fc8d1f18aa2cfe0d6c8e5c2cedacc85dfeaaffe9f92cdc4faca9bbcd4b598ddc1dae2bdf189d0aad5e5c0c292bd8dfea3ac9af5f29e81b8e2d584a8b39b94f5a5c1cc97e19ca2a18898d3f0a4dfe7bdcbf195c2badf82f28fd3fef0dabaec86f2a194f4b7c9aeaaf7feaecbaeadcef7eac5d1999dcfcb94d1818fd3b89ca6dfdadfd8a7feb9c6d9dcbef2f8cfbd98dcf4f881e60601"
  in
  let vdf_tuple6 =
    `Hex
      "d792fefcff8fd0c8d7dfe5d5f2eb8d8bc283ffe5af8c99da95f282efceb5c4f38bacd79fd486c0f983c0cafdafa68bf69288b4ade2f531fcf095e0afdba795c0f3e3fa939896bdbaff8582c3b3bfd8c8a091b4eccdb5e0dcc481b88d89e2c8989a88c3a489b2959ba2c2908ba6bcafbc9dc68ce893bb8ef0c8eba39983c2dbffce8ef4cec9dbb2abce9ab799d9cbfc80a89293c29cc191eaec83a58d91f3aadcd3c7edf5aff8ebaaaaddacd6b7aec886d1eca8d2f6ea9ec9e3ba89bfc08cebefc7e2d8a3c388f89dd2c3bed8d483d6d9d084f79ee9e5f185a8898dd7abc68efc9ea2b5caa8bef6d7c4c1a4b48698fbf3a3a7c3929eabf9c789c6a4e4fac0ebe489829ecedcb5caadd1f1b98c9987a9c9d9958ab792efbddcddc3dbb0848fd4de8784d3f4e7da81ffeae4d4e9f9dae2d8e7a2cffe8bb4a6f4a382a2e3d2c7cff9848ccd88e5f3a7c7b4a6f29ac8d4d8b5f5eee4db8a92afec92949d0401"
  in
  let vdf_tuple7 =
    `Hex
      "8abf86cef88989bcddb6f7f1f9c89d8aa2ddf194a4d8a991b68db8aeddd6cd83f28be0f8a3d7e0dea2f9d7ceae90f7d0d3a686b0b2e51780a4ec95dd879893f0a9a1e6be99b3c2f8c0d8bea3fd9995cde6bac8bfa0f59bbf888abdfac69f8ce8ccc8b9aa99c5d1cfee81e7919f8dbeb3d8affaa1e09d9df2b1b89d9ec6a1eedea6e9bda3dceaaba4efb793c7cabfb5d0b0ed8ed0abd78fad8af0d4b4b1dcf1f38ce0e4c8e2e2dcd691eecfbcbffbaccff8fdf7f7a6a6829bb99fd5afb0dfe7fed9808bbdf1c2c09eb2f6fd89ff98a991edffc09383bcecb2c6a1df84e6dc9cea99bbc2d5fb8285bcee8092ccfa87f791a3c4c5a3a8f0aaf9a3a381d5c5d48dd190f6ec8289c4b8c182e7a6d18ca9d0cb92da89fbbee58287b0ee8ece94add8c8aee8b8d69eebeda5b5d7dbf4b4b3fff7ebf5bacdb1bfb7efd8c7bb9ca6a587c4bbd39381f1ebf5b8c1c38581a2eca5f2a39bdee3e8c7dbf4dfc39e0401"
  in
  let vdf_tuple8 =
    `Hex
      "f0fcb384eee48feda3ece4c4a48ba5eaeeeccebac28cf28ecfa2f5c3d8dbdf99ebcec2e0c28acf919bc7d5e3bb9d97f0c483a68a94a807bdcfdacfc6ec84d5a9c6a5edf999f0d1c58cbdeef5b9b4a8fd80ceced1cab5cacdac83c9c99bf5d0fdfac992d4f1da96c5ad83b1fd95d8b5d8e4cdbcc9b8d9e5af9c8e8a838fadf8adf1e3e1adad85aec596f5cece8cb7f4f3b0aab2adcdc59dd9cf8b84f08182c6a7d98ad2b4cec5888a9692d1aaa0a9b69098be97e8e2bd929de7f5a9ebec9e82eddbdc88e29fb5f499b2d1acbaedcab9bd9bf0dfa58be4a68bd3f3f8abc3afbbb4819b9ffdd0c7f9e881eddd94bcb4b0cabbc3c0fc86d084c7ed818087af88c8a2aa99cc88e4a49a86eceae2cbeafdc6a887f9c99ac8c8ebe6b3d5eeacf192b2ff9787beb287f5b6cded89b2f7adbc9f89dccce6c4cbcdf3c8f9aa8aacd497e39e919cd1ebe08cf2a3eabddaa0c1b8cbd5d5eab4ceb58eb4919c9e70f0fcb384eee48feda3ece4c4a48ba5eaeeeccebac28cf28ecfa2f5c3d8dbdf99ebcec2e0c28acf919bc7d5e3bb9d97f0c483a68a94a807"
  in
  let vdf_tuple9 =
    `Hex
      "8a8ad1d381d99a8c8392ecb2d8bbf9d5c3e29a97dff3c8e2a2f6ec8e8dd4bdda80e4e9a5b9afe58883b98ceec88196dcefb7dff2f1ed019fac91ec87a4b19bf5d0e7fda9b19f9cb7dbcceacffc948cecabadd7bda5b5f986c9f6f2d1a9eecfabfef5d3a0f78fac949acaf3dcfcd89786f0eae2e28dfdeda2fac5e0ebedc18097f789a292828ff6b2bec0b6bfbba191d284bae1a8b8f6a7e18ca1cfa8d6d0c0adc3b595b2abbddefaebc5f78dc49483bbb4fee1de9ed7b2efe5ab89e5d3b1e3aef3b38ad0cee7bba081dee6b4f1f7dbccaba2b380badef8f7a7cf8a9edbbeb1d2b497c8e3e68887c2df809dafb0fa9ed4c89bac948bb1bbdeaba5cde69ea380adccb1d3a2af9eff90ffc59ca8f8f0e9a490cce785b7aaa6e0b1afc0e1f4d5bbe48985c2fdc69a8edde5a0ff92d2bbbab1a0ffcaa3ded8abde8ee192c2b99ff29189ec95b5fdd68582b499cec3e9e29bfdddbe81cb88d6b0b5c48adb0aa8ada1e9b997e6908f9780c2d8a9dfebdbb9a6e9f3eeb8d3839298f69fcdbfe08db39ee7bf97e0bc96f9d2b68e9c8683dcc6bffb9efbdff6b3b1e3fdee9b81b2fba5e9bb83fec1a992e8afa4fcf4b6cad8a19feccd94efdafbdddce3afcf8e8c8c9ac6b6fc9fd69ef3ddd7e2cfefb7b3cec0dbc5daa4cb9ad3d98599a6f2cfe28a9a87a1b4f78ed6fc8c9180c8a7a9b99480afecb8f2beab87f7d6d1ed9d9ee4feda9df4d291b6b6f08ca5e6cef9f6db90a4b1facfb681dc90def1c5e6989283e5e1afe880a4fbe0e0beea8c9ecdacef96a59e8191dff3faacffb1b1f4f8f4dbd2d48bc7dbc8ee8486efd7b9ccb6ce8ea8b09790f1d1c7b398c890e0ecf0c08fc8a2e8fad3efdcbec3dfcfe2aa8dadf79c8cebd282bab28bb1abc0eaade9d690d3ea81ef04"
  in
  let vdf_tuple10 =
    `Hex
      "9ec199cdc5b6b4f7f6e995b88fe9bb83ffffd5dcfbeca3ae9280c9fcb5edfa8abea3fb8abbb8fae98e8bbb89ef89e9e7cee6a8db98c518bc91a6fcf086c0adc9f3b29c92f7a4f493bdf49dfaf9ab8587b3f9d1fd8c89a7d6c3fd83c1c4cbaa87b9d8fca4fcf18fa489c6849cd0ebfe8cf190ec84c3b8bedcb5d39ef4b8b4dac1f8b0ebf7aed2bec3faf58dc8f1d8a2fcb3dcefa0bc83b4d898c6a3f4ddb89ff7eda3939d9589cb85d9e7d79fe392cafbd7e2a3afb1cea58dc2b79d8fa0f0af92c3c496a194edad81baafc0d7f5a0e6d8fd90b0a6f484bfae8a9391bcc3a7c69582a4dea398ec81f6c08ba886b9fde8caa0e480f3fcac9fef81aa94b287b8f79cab9c94b4fdf28cf3fae1989ac7e7bed5e5f8e8e9c2dab0e6b6b9cab08ee0aef890a4e59086d3dfc0e198a4b7d3eaf3bac3ecd3fb869385aba39d95e8c9858ce6cce6f682fda0efb68bc4e5a4f6d4ce969ee3fd8cf587af9ffdf2f906c7ede3e9d8b2b7d5aecec1ebe2d4dbef9394b48383fe86deffb0829d9285f880a2f49896cab7e0fadab4bba8b59e9489aaee8d919988818e9acfefdfb1dafaf784a4b5eddf8ec5e3c78fb293e4b2a9aac9899f828a82cbd7a4d3929d86d38fdac1ded8a7e4d5a8a6abde80e19ca085fae48ca6d3dff49fc3c8fae0fea394babcf2fa8891ce82d4a5c8cae6c7fce0e987a2c3b9c998f5c6ea80dd828beae4a9db858ba8baf5a3eadf899da2939f859c9f88bbb1b1d096d8a6f39dc8bb81a39affc9aeaac8a69ce1a0bac38dbc8ddb879bd98f9cf4ef9ab9bcbaa6cdbacf988ff2faf5cefcc5c5faf599e7e08f8de9d7e688a0cdc0eeca83aec5b08bbb8ec0b79c88d898d9e59c81b098b4aea790d4e8948fd2a9c3fdc1ead99caac1f8f9f0ccbff19bfc9d05"
  in
  let vdf_tuple11 =
    `Hex
      "e898d5f6cf99929bbcaa85c3f1a7e290bcaae0cfe4d1a0b8a8e387c8f2d585b498f6f3ffc5cafd88d0f496befa85bffabfd9c882f8b136a9bfcfe3fbacb691d2c7e694cbee90bfec82e08f91b1cb9aacf6d7e28e808b92c6c0e7bfd99bb3fd8fd8a9b7fe8fbfa7d5dec7deda98ebf2aeb2be9cd8fcfc88feeaffbeb1c9aeb4ddeb8cbbcca6bd89f4f8a9dce5c1eea9afcdd3a68ec7c8aadd8d93a1f3aecc8b9ed8c7f3fa97ebdca6cddca78695cceae6e899d88bc4d3f9e9cd80c0cd91b2898ddacf9bc1b4e6d49ec293e885d78999ca9db1e4aa8dffd986e0afedb1ccedb1b5d1ede68ef9c78ab2d3979ea9e19ce28e97c6a0d199fdaa908ba2a286bc8fca9beacfcc9cc4efb1c2848cdbdbcb9bf68995f2a59ee5ae8caef2a0e98f82cdcbf78cb9ffe0dabe8cced9cd9dd7fb91d888d7f2d5d9c3fc9faaaf9690dac1c8cfb3b9bf90f6e9d4bbb88bb1f1c4e2988398fffcdc86ff97c4f3b0eb3981f4ba90f88f92df9695abd3bef3a09bafc6edacc2edcde3f89c88d1c7ace7969ac0dcbe9cd5cd8aa381a89e9aa39a87c6b3e68ba7bc84cddbdd98c8cee9ebb9dce3d3a4cdf0a8f8b4e4f1acecadc798fb92c4d49bb4c1cfcec5e6fd90b389e6a4a8a7dbcbe88caa80e4908cefc2e2b7c9c4e0ab8987c0fcefc0c8c295d2c78fbeef9281eed8f0abe9ccefc495a2ced9dfdbeeca90aceb86b6f8fda99192f687ebd2e7fbd7cdfbc19abfb2f6feb8c3a099d9c5c5b5ef9a9df0d8dad4888afcfdc08c9fd59088d4f4bdad808cb4f3b993ebbcc2a8f8c6bf97dfbb83ac80a9d886e3eaa48897a8aceffec0d692e1c49bbcc695a196a29ab4aec4cfc1ae8fd5fdf5efa395f5f5c796a2abc9b9d6e9fbace490eed7d9f981ece8e1c6c686d3b9b4c7c0a990b406"
  in
  let vdf_tuple12 =
    `Hex
      "e4ada28fc390defbd0e984c8fb83ffd0e1a7fbb383b1d8c8b9cabc96cbc3cac0c4f8f8efdab8faf1b2f7d0d9afbfdbf5f2fe88dff8e138ced9e9cfefa785a289e587e6c899df9993c38dead0aef4f0a1bdb6a0d5b3939c8cf6d0bdde9acce8faf5e39fe284a18da097c9a2e98ccdeda38de4afd4c7969887948ad299e2c9e8f3f18fddb2aeb1f4b78ddaada0ee80ddeef6c3bf82e78980c7d3b690c9aae88ba3ecf0a1d69bf2cebfa4d0c9d4becbf3bb95c9e7e988eee4eaa0aaccd5d39c86bad999b3faf4bfcbeebc949da4e0a180e485ba87aecec2e6dca2a9f3c2b88f86c3d0fe8fbc8be684f6f7e3aebbafe1ace694c2c78292e98cd785a3c7e8f0b1a49cbca9dfa290a5c7cce5f98894a398edf9eda2f2b1c08c9b9591f9e1a8c7c285eabae9ae83e6a9eddcc0a9d8beacb6ab9ce1e9d1c7ff8af9a59ae581be8c8dadb5c9e2ddefc4a8b3ddb5999e9d9882fcb19b8acfaddcf796f5b098930691f1a8c1e2f6d8aead95d3a19dcec3db9bc4f1baa295dcf0e192b2aa8c85b2dcd799a6f4b6a7a68e908faf8396d9d4efe4d891bab6898b86a4dad3b9f8f4b08df1879ec689d7baa8b7ced9b38ec39ba990cdc49af890b49ae481b1b2e7c1f6c998f0ebd4d7b7d4bf95cbe99589e6e4b285a0f5acf7d699dab7baeb9dd3a29ee0fef787dffdeca295cbd9a0c7bfdcad94d6cdc3e7f9b2da9cf7fbe2988393bafbd4f1cff4aef3c3f8f89dfc8ff5afead8b0ffd8a0b4cba8dde291d69ecededfd2e4e6a7f5a9add8d6cbcaa5948688eab7e39aecc8c0b4a281a2f49ba1faebedd9f7e4a3dbc09ff6f0dcaa8d89b692fac7d2ae8286eff6bfc48ab484b5e8a9abc484c5ada3a3f4a4f6dbeaf8c98aeb80f1cdf5d5ecdad98ad182dca69984a8ca8a8a90cc9f05"
  in
  let vdf_tuple13 =
    `Hex
      "be9ab3f799fec9addc838aadaadbb08997f5fad4b2fcd8b5d1e5fce6a0ecfcb69a92bf99e9e892d8b391ccc2c4a2a8eda1a5a5ac9f9929abaf8cccdc868da9e8f5d9d2dbf3e5c7abe79692bbffc6cf9eab84efe2ceac85bdca91d5f3a8feec97b1a09f85ddc5c3a1abd6a5e0ede1a7bdafa7c9dbf0d2fcd5ba9be386d7e39cb2a7b2daeac9feecbcf1f68fa68ac6f2f48c97cfbbd8e88fabcc9e8ceca2b685fafcff8fa1a090e8dbe3bdc7928fe2fcf2c581e9faf098ecd0dc9b89bf8efae3f4ffe6bcbfbbf4a2c19bc3bdbbb3e4dfc1978dc9ddda95f3a0dbb8f8eec69490b9f78ae5bcb0c683959aeaff83efbef9b89f98ebcc86978ff595d5a38be3a1ae8bc0e1cab59ef1c6bdacf987dee384bbc2f3a59c8cfebbd98befb8bedcc4a3e68ee2c19dace8dcb4e8d1b386bbdafdeef0af8b99f58af48c9d9b83dcd3bbbef8d0b6f8ed87ee8996cef0ff9adfe399a8f5ead6add0a18dc2faefb5a60ca3beb8c5e5c0cacfdca284fd92dcd2eab686d5e78dfba495bcbbb2e0ebbff1cba0b3dccece9fc8d6cbf9f1edf9e68f839683e2adaeac8bbb91f4e79de0acdce49283a292d2afdaa7b0ddb3a1b8b1e6f8edb8c3f39fc4fea5d78a95dbf799d4d69fc7c19681c0e2ccc2ea86ead1e0a9af82f385df809bf09592caa891c4dfe9819dd6868190ebc7e9c3ceb3819fbbb2c0e5cb91afc2b8da95f9a7acfdcbdf81f4a4a0a98bd9bda5cddfe2baf89d81bcf0eae285fda6d2b0d6d29deceddee7b1a9d097e3c7ebe982a393cbb6d08ad195b8b39ca885a5edfcf0f5e4dea3dbe794e8e1a7e89abc8c97ddf4d4adb3c4d482ecc1fce3b88bfebe8bb1cda0e0e5fb948c8faeeadde6faad9689fff2a6c884ffd3b4e7f6a3e5f1cba4fd878cfde9bfc5e2c9cf9cda01"
  in
  let vdf_tuple14 =
    `Hex
      "98d4988bbcf5bb87c78f9792bacbbed792bff48df397f4f6cce1e89adbdfd4cfe8cb8f8dacdfda92a8c2b3f8a5be9ebf949fcde3aade0c80cf84d5a1e9a0afa7b0c0bdf2e5d28fca91f79af0e6d1c1f9c8baeee2ccfafb81e4bb83c0f3ef81f3a7aadfcfde95a788d89089b6f993aaec9c9daecdc4e9a0f4bfc485c89190db809887dd8694b6e1f9c681f3eaf7ba94b69aa1c8d8bcddad9b988bbbcad4e887fc9decf3d18e8a9bb1e1ccafd5db86a6d5ffbce7939d87bfa6ccabedeeb1b493baa1ea8bb1c1b2bad3f1c8e3d8818790ada2d4e5b0a4ffaff9ffd7f2efd692e1a2e3fcdd9386b7ef85e1f9afe1ec88e6e5d5a0dba180dcea9c85bcf7aa9283a9e487d9e9ecc3d2b1f3faaea6dc93b2ca8fe481bffd85d3e0f0e6c79fc9c2eaa2a6daada0edd1f9b38cace7e2b4b888b6ff80afacccf7f1f38bd9ce8fc3aea2e3cd8aff8aace1d8d0c2a0f3b697f7e6e0ebead1e8f5ece293ec9bdd27b0adaff9b8fb81b0faddeec1f59380b6b589b098f2edb8a9e8c2a1dbb1ecbaed87b2c28bf0e1dff58d8287a1b8b6c1d1818c81fcb6c3c3b8b480b4f1bdd0d8f4dd98aaf0e780a6b6fee0b4d48cb2f4e09eafc5dbf4a08addf1ea82f5d7b3f2e593a9e8d2d8d9e7e482a9db86f0b2d58b9cfaf8b2c6ccf5ac8684bbdcc8f6f6d0b8c4d59c9a94f4d7c28ea4b3a8c5c280df9eeddbd597b69cbe93a7dfbc8cd4aecacd80a5ccf38ee8acce948ed69291a58cf2a9f2c2c1c6d7a6f9a99dffa8bde883a8e3d7b5aa89d6b2d4f1f28aa9bbf895f48ab799f1f992f1aec28380c695ff95de8295cbbaf3b080dda68b94b3fdb6a9eea4daecde9995a1fd8a8cbfda8eb3edaebba1afd596e19cb49af1a18792ed9ba0f2bdf29080e1d0a3c9dcfa83ad94968fa68409"
  in
  let vdf_tuple15 =
    `Hex
      "ddba87cbb3f0e1959fcce7bbf0db99a7ccd5d7a7dba1c0c0a79599b5f0a8d19599f4ebeeb7b2a9efce8ad7dd95c684d18ac2c4dabfb1189980d9def6d3a993b8f4f3898f97a3c9facbe7889bff9bd5d2efa3f9a59c87b288bcb59ac8abbcfdc68390f1ccf5e8e6b0c381cdb88ef6fdb9a1e7afcbbe98c29fc8c1d5868f82f08ef3a5e7c2848496faf4b3c196b380bee4c9d3f5ceed94e1a0bcbf8f888596c0f4bdf8add3c28eabb3c9b2abc0c5f580ce89eebfbd94b0c487cfebe4b9d1b3a5f8efe290d4b1cdddb0b2c4819bd9cfa1e7f181a1db8ef182eaf0e593a38dfaf5b59fb4a3bee9f384b792d286f1eaa4c59ec5b692e9d3e0f3eed0b3ad9ecfa8abb1b8e7c4a0fcd69788f7b4e0f8e0c19e98d7bb95a0909affe8c0b6d2fdb189a6d894e7a286c7cbc5dfd7d59b9b8d84f3b6eff4e1bac9989284d4bba8c18df9f0c7d8b293fe92c3adf0bae7aae4d6eba8b0fe84df84b79ed7d880c274f4bfc7f490dfc999dd90d8ffb4b0f483d99d8bfa95f5dbbae88ffea8c497878ae6feb7b2b7e9c293cdc7fed48c8aa2b1a8f5ffc4a9f3d984aace88fed4f398b5f7adebcff5cf9aa0daf5ccf59aa38fefaed1cbe2a5e6abb781d7edfdb98ddcaa86a2bbcfd5c7fe86fc8088dcd5c4c3de99f88d94e2e39fc994b798bdc28384c0c8ab899a83d3a3bda58ec4aea79ec6cadcf5e68394c6c388ce9985b9cb8dfc8da2c394d988df90a8f09287d881ded0ccc0cacdd2e5c5dfe0c383c79293f096bcfef3cb89f3c89ed9c3c5f0f094b7a7dd86d1dffbd1e0c0d1c790d0b7a293acfe9084ccfa8ef68be082f2c689daa4bef6b7da9196a7d0bc98c9b38cfb82bf8ac4b6e9888baef299db858eccf8b6b4aba9fd86cab7edeeb8ec9ee3f5b8f889f284fa9487df02"
  in
  let vdf_tuple16 =
    `Hex
      "88adc5a1cbe8daf0c1bb8ababfdf84d68fbbe391c0d9b8f9a7b8c0bcead6d9b1f2c0a385e1a8ede6a1eab8dfd6e1bba187a7edc6c39f229ef8bbe785bba0bfbb94f980b7b3fae0f6ff9ff9f1e1edda8189c0b9d0a8bcd2a4b5e0e6e5b5b0cbd1ceacf7f9a4deb3ecabb3e48be7f688adfcc8f3f8faecbbcddaf7bdeadaf893f7cab1d2e3a08bcbdb8fcae9c1c6cd96d7bb8ca8e48bb3c395aac7afd4818cf4dcb8f8939a82b88ac593b1dfd6facfdeeaa0a5f8bbfde2e4d1caa4d384958fc8b6a989e0e7d8ea97d4fd94d096b3a1ee9cefd0b5b1d2ea869fabbcd1b4eff0b991f3edcdc4dfddcccd97918dc38e98e395afcdfb92c2f3c4bfe09fe3daafa2bc99d2abe3ce94a39ea8cffff4d2b2cabaacb9e0ecdeb1f595959ef4a8f7819f83f9e7ff81efecb68af79cbbadeea1989d93c5e6a2eedbc2b0bfb6a3f2c7e6fc92a184beec95e0e2efdbded495ac83d1e6c2d2ddd6bd98edaff087a7cb0ba0fed589d0e2a7cbc087c2b2d6fca2b6f5eeb5c0acf4b8b083b9ba91c6bcd1d6c2dfdb919cfedac892bbd589fcfb9ae1ffc2c487a8a8f3d89dcfc2afaececaa0e5b2d8d0d19ccd8a9e9cb89e8fadc48b99d0d68ba6dfc9e3c1dcd2f990cdd6c3b4848ef9e4f0a1a6d7ccce8df4a7c0f7d9dca3aee5d2ca89a48cf5bac7a1bb8fadcaffff9de0f0a2b3aa969094ff9cffc6c9ddfdc0d3f8f1f8bea4bda4bfc4f5f198d6ac889295a1d2bd85e6fdf2eea280b7d0aacf87cdd2c1b7daaeccc982f9df9bc9a7a6a6b689c1f2f0a9ead8b9a6a7f5b1c5a5bdf3eb83c883cfd889c4eca7fdeec0f5fb9bcec2bef6faaffee28886a7cd9baf9084a2fcb6bbf3abdb9390fc83f290d08cf087e68ad9a4ee9da9a1e0c78dd1d9f29bb9a587feefa7f6aeddd4afe5b004"
  in
  let vdf_tuple17 =
    `Hex
      "8be69fccf08aa3cab9dd9581b6cfa7898182c4d5b0e5caf697aeae84c7c2bda896d2f39fc1f5c7e9e586edb0d492cc93efada3c7d59033eeafc1acdccbafebcdcd949ab58d99fe9fcfd49bc3b9c0b2f59c878ceb9d88b58691d09dd5ba8bd5a3f4e5b7be8acbc4bbfec3dd8cea8ed2a0fecffed3cfebfed1acc695e6d3bc928fa3c6f1b4a9a3f4a8fac5a3d2e9ce88adf5e6d79f93daaeacc895af81d18982d19fc2c9cbb8d787bac1e4a090e588b993c6e7ebadccffdfddd2fbd3ca83edd5d6ef93b997f796b9c2c4b084b3cfdaa9b4db8ed888ebd8f395aed2969bbc8c9ad28e81a5addaf38eaf87e3a1c8c3aabba49390bac3a8b4fb81d3dbf8d0a4d7bdc48f85dbbb86f9d3eda39b8089c6b6df98b3b38cd2a5c5c8f1cffeb8d296f2e8d6aaf7b3a392b5b4dce8fbbbcff6cdfffd8fb9c781e4eba083dda6d1f7fff081eb9698ed84d2818ceac4dbc2feab85e681d9de9b86effbbdc7abbbab0bff87918fe892c88385d4a9ffc7899f81879a88d18e88bd8bf4bffcf18a96e897a6dc958e9cedcfd1c89388c8e9f3d785d2b7a387e4f9cc9ea98b9fee82d3c2aaf6d2e8b9eafcd3cef8fde3b2c68adea4eccad8ae9fc4a4f9d0c39ba6b3daffbf8a9da9d8c5ade48ba8848ea0b38a8896d5d799bea6b9f0dab5aea9e494bde9b2cdb8928dea83ac9a82c29a89a0cf94f9cacb85c3c285b0ef8d9ed9c08cb5e39fc7acaef5eabedfd4d6a7c495dbb9f6e6b1baa181cee8bdd4d18ca8a1adf6c8b1b6a99feca1bf8efc8bb2b58fc98feada82d39af08ef3cc8996dcf0abcec697f39cbdc296f1c2c6a0e5a2a5d0ed87dbe5b3b7cc9586dce7dbe2ffe9b8e0ccbd989ec29fc7db9f84b5c68bf59792d594d7ceb28ff295b89bc98bc1d5f8aedce2afdfc9bfce08"
  in
  let vdf_tuple18 =
    `Hex
      "fac9a6b6e1fddac2eee3a8e7bae7afebf48b8cd4e79398d096dcc1bb99f7a7b582bbb1a48bb8d8f9e2d9edccc5a6fffacf8584db95c737b8f1e3d9e2abe9e2e8fdb1aeeeaf97c0ce9381d4dbc5fd9a899ca0ebcdf396e2fe8ed393b7c5c287d1e2f58bbba7b7d6d0d7948c8bc5b8e9e1d0c9adfab6dde8ad85ee9cec979bc48a87edcd8eea8594cd9a8e84eef188ea93afaedf8ec996c2ecf684f7ebc9ecf2aa8a9e99cc89cb9b8db7aca4ade695c4dc8efb85d1fd96a594a3dda0aeb3fbb4a4f5bbc19cede7b4d8e29d898eeb85c1ae94aaf9babe80b1fcdbef81ed89cbcea8d2d5b5ce89b3aecb8e9cd6e6d8cb9ebad495e3d780e9fc81f5b8eea0e7bac69e85f2b2dff8c796af9bec85f5f3b6eea1f9ebdddcf696bcfbfbbbc1f8b897e5d9d394a1a689c6e98df5cfffb4c4989cd9cbc58ac18ab5ec86ecd1e19af1b5b0d6c2dfdfb2f3d1eac3b4fedb88e5fcbe9bf79f92b8abbb8f86ccb9f20af78f8deee09db7d5cb8ef6dbb594ea8a97bdf5c792d6b2c081c7fb8dc4c187a0d3cb9489f2d39985a59cdaafb98eeee59ef9e4d3d5c98accb4c1acfadfffe590d4a1c1e18392958b93b1f1dcd9b0f1a995b5a5c58492b0f2efe5a4cabbf3dba0c8e880a5a9cbace2afa6b3baa4afc7d0e1abc9c5b8b8ac84f4ded1f8f1fdc8f7908ecde9c7f897e0c6a5d39b9b97fbaecfd1a7adc5a1e98cf4f6ceb193d2f9aedeceb19e9fdfb4a185f087fcbcac94f8f7d78becd7f5e4d3bae0c9f997c59dd2efd1fa83d8d5dcaba5d3b4caa9d8b9b48ea38abae996c7d3c387bba88eefa88287a2cfdf89c9dbfc9ced859996f8b38eb4e98d99ffe18a8ccfd1fc96e3b4d3effd8ad5a0fcedf5a5fbbe92ba99d3fdcfb6e0fad2af8e81f8fcecf3e9d3fc9ed9c5d6d68f0c"
  in
  let vdf_tuple19 =
    `Hex
      "8ac9cd9cec8997bc82c998c4cac6e383c7ac94d4acaa9df1ac9fbde1f8d591b0e1c0828590a587e9aca1808299bee2858abcfdf5ccdd03dcdcbfdaee92b69285fe97d99ef895f7a5a0dab1a9e2c8d7a2e3e2e2cdcbd9f49f869f8ba09bfff7b6c6aa9dcc8cfbfdb7e5b6d5e1cc8396ce808ca7ffa5dca8c0e1c7b2b3f8f5b0b2c08fb3f08eabe9a085f58efbc6dfeabaa0e6a89d91d5fb95c2c08fadbafa89b89a939e96a4cffa9bd3e883f3c8f788f9a89dc1c9a2b9ffa78cbefadc8c9c90a0fbd7d9e7b2f0959bb3f7eee9ffb5aafabdf582dabba5d4c1a789f3ddcbd8f6de98daf2d299d582a4aa9fc6acc694ad89abf382eba5e9a3819bcdc0dbdf8b8fc0a1ceddb6e9f286cbefbe9ff0cdfad3d6d0c2d2c0bc9e81a1f986a695d7ecf1c4d084d2e2e282cea8cdd3c5e3ddfd978882d1c9c882a2c3bfafdfbacbd3cc9698f9e1edb890d5afb5d1b5b1eac4ffd2f18fd1f0dcbe8ecbfba29af304c8918ca1a5f1bf89f4f0e8adf6d4ea97edbfabcaebe9c2fd86dfa790fed1f0cbe294a9cca7a2eee9f3d88f8fa397a7c69dc2e6b6eba6f3e3ccaf94e9b0e29b8fb694a7bec6ccf7aafca8a090f590bbf1a987e389c5f198d292dbf2f2a9d6c4faacdbcca0b5d8dfe2b2ecf5e9a5bdbbb08ac1b7e7979b96e798cedde081c6b8fdcce7d1979bf1f7a2c8ebe0f1c4c2fe9d8ad8f2b482e4f0e2d6c19a9b99f5fe85e5fe95cfe286fac1b1facfe4acd0fa90ecbf9ac18aaee1a8a2eeeea3b2a1ffd2ca8ae682f7e4b7c7a4fceabef595eca1a685ccf0d2f7e5d7d0db88dbf9d58daeebe9f4a5e5ffef89ced58d96e79f8fc18a91e892d89edefaedc9a2d1c6dadbaab8d4bee9b8c1bcfce397988bbde9a28781daaba5baed9ff3d49ac1efc6f0c186ece4bdc004"
  in
  let vdf_tuple20 =
    `Hex
      "85aef79e82adb19ccbd8de8fcfdaaf87cbbfe4feadbdbde99db9c0e3f3df99efd5efc5ceb4e8838ae7eb8e9c979a83a9f5818185d8b63cbbf2908c82da85cc99feada59af4b6a0d6bd95c999b18cc3f8b8be85e2d1c9e99a89f1faabdac7efe0f4d2b1b6a4ff97c0e6a8d6fa95f5b1f5a7e2ebfda1e0989adadaa89ef0b0ebf5e6ff8a87e9d1bc94cdc7c2fbe7a9a3af8ce2f1b1fdfeaf85a3afa0bce9df81cba08d9797f6ae99c1bbd98befad9cadcba689c7abc3a9c3e7c8b0d5f588949ab68bbed9b4ceb7bbc4b2f9e0eda1a994a0a1e2ea89e6e1f6dc83e0f8cbfcfa84d4c1ada88ad7f1d8c6ac9f93f5e8d8d1d094e4ada5fccaf8c3f5d58ca0f6ace1e3e480d2f8cccca7c092f4f9facd8d9ca990dfc5a984fc9fe19affdb8af3c5bce7aee8bf88fed6dcb89590e1d18eede8d580f8f79f86e5c79ebde7939aea99e583da89a096bf91f481c5ee95b5bef2f9d886b1fba3f2e4bad1ee8080068d8f8fe09fc6c0bdd4d8b49fcfdde7c2a7d1aefbca8fd292b5a7d690c3a4cdc1ebb7d0dbc492a7f1d6d7eeaefab0f2d4dad1a5c0eadda18ed9b0efb1d1ffbefa93bed78cd595edfaa2c480c1f7bedf86c993f5bff38484e4e8b3eedda6f6deae96c08393c4dc8ff1dfacb5e588a5da8cc0d0a4cfd2f2f192f6ecdc97e79ba29584a2bcf3e583a88789a9aeeec1d8cbed81c9f0debf94fed8c5a19fd388f2f7a6b883b19f87fad5abe28d8ed6a1ea8f9ccceaf1d1c5beff92e1d6b39a97958ac5b882ceeea993debaa7f4b6e688bfc89bee879dc9e29a8592bede9682fecfaa96c7a4a598a9f087a09dc18fa19a9798c8cbdea8e2c9d29b97f8a787d7bbd5b3a4c7b8ecacdfc9b1a7c2c2b0e7a4e1bea6e7fceaaacbb6add89b94e2bfaaddebc8f68dbdab0b"
  in
  let vdf_tuple21 =
    `Hex
      "e8bba0fbedaacbe4fff3bfc6d2e58694ed9bcccaa5fbf78bdc9fb2ec968ccda8c0deb398b5fcce9580a7c2e1eff4bfbaf7f2bbf0809832f8a8c2e5a2b2e2a99a8eb18ae2cbc2bdf293e0c2b1d38599dfc394cad9ef98c1afdbb78b87a1d5aecbb8c2d5e2efa5da96f7f9b9d0b0fdb2ce94dcf987b2ce91eeab8987d2e78fdf8e8ed1cb98a8a589f5c2e3ab8ca2a4c9ffd2959ba1de92c5bad3ece3f8d1a7caefb0d0b8d2d58c9fe6f3ffa083c3c68a9eeaf9dae8d1cdb5caf98b919cbfdfc4ded8e4a5fbf2e6a0bd91c1a0c0d5b6e686cebbbcb5afb29dc39edab2b5f0f2c9bd8df9dcb79cf0f4888ba98fcecafdab9a81f1f8e08a8fc89f86b0dd8ba98e929cd48bb7e2a2cce6a488e0f19dafc6a6c1afbe8f91e3cc9d9deef0b4f2b282eff1c695e5b29299988c92feb387a4f2fed8e294d1a6fcb8acdc84c8b2d9d2ecebe1b5c8eb95a8afc9c5d3edc4e8f3b7b4bca3969d9aabe785e3a0ade305959cf6a3bdc884d2ed85a9b295ddc2859694a0f3a8f3f49fd1d08c83b6b8b299ddb4ecbdd9a4f0fbc2b787dc8594fdb899d3fd98c5a9b0c9f6859bb2c2c98bb5b096a791cdcdd2d4b689a89ab3949f81dc939df6a8cf81d3d9db9c9486ecefc293d7e9defce994f0beebe8ad908cade7e7fea8c6cdca89d380e2bcc6ce8191f4848eabc5b9b9d384ac90ebbcccc39af2b8818de2fadcc5c0fcaad7928bd9ffc7dfbb80aea4d199eed0f3e5e4f1a78ea8c3fe8d8df2d490f1bf8ba08ad381e09db1bda58dc58a97d8e7f9dfd7c6b4b1a1d59690e7f89e99dc84d485cd90ada0ff8d8ab1bcc6d888e0a3b7d187f6dcdea0eeb0f5d1d79d8ac9ea97bf8bec968c85c383c1d691b1a7a8b7ad96aaf9d7e08a9baf87c7bcbfd6f2f582bfc3cdbed48ebecceeb802"
  in
  let vdf_tuple22 =
    `Hex
      "e8ef80c4c98892ca8ca98bba85b2ffd3c2bf98f9d8ddcdef9794d384b183e4c1d2f4f4dcb9f6a19685a8ecc991f3abf1b4bcbde9f49a269c94eaca8be1b1c888a0cce6a1a2d9d7be9fb8f4c8b492c7a98193eaf0d88abed2c0aff597d7f1c0d786cda7daaab2e5f8e7ee87bbbe82b694e6b583cce3be959db6a2b9ace6a8ceb287f1c7d0af92d1febdcef4a8fec7ec94b1def7b0f68b97e5bca2efcbbbb0f590b2e49fd999b986c3afa19bdb9ccab395c4dbd4a081d7afeb9a95808af0daa9f983bf8ca3b9d3edf18b83b7f8d1cdd0d08ab7dec787a3f2b9c5d085b5e69f94d4fdcfce888197f5f1d6a78ef8d3b3cef6d7f5a18fe9ecb1afbb8b83ecd093eddb9ff2948fbbd6d4e6cdc8a9ecf7cda3f7fa8ed5b88dc7b1b9b2bfe0f797b8f8898dcec3e5eff89edfa09adbcf8ea69fe5b7b3aac8bba98ea08997be92e7bad8ecc6f6eba8ffb0fafd94e6c5d781fb88b4bcf3e0ceece7a0a2cafdb906968da0b0f3eabd80b8a3aad8a490828ad7edb592c6acbfedc0d9a0ef8892a5af849df0c88dd78fa183bfeafbc7ebfecb8dd182a3dc9dc2ddb1b18e8ba1c788c5d397a4e3c3f9e2dcaea0a5deaa809788c4d1d2e7c3d1e58e858db5df8df884b9c9a7d8c9dbd6d8f9b1918fe7de99c2c1f5edc39cdcc3d4e2e7bcc2fc8c82c2a4d9c4de84bedf9185fc89dbade4f2b2f6fea0bfce8687dbc0a6e794b1a4dfcce8b1fdd4f3ba84e2dd9f89f6b98880ec83d8ebe7938fcd9eb196d19281d1cfca9881918fdd9de194f38fd88de6ddffd092a8c98fe6c1e8c5fef683b68cc19fb5e19bbbfcf6f7f5cdf3e68cf3e5a7b4b6b98a97f9a0b191b7c4fdefadaf92d7f0b9e2c4aaacf4bed4c3eaf78dc5fff1c3cad0d5949af4cbc8ae8a9fd9b3cd8aeff9da92f477"
  in
  let vdf_tuple23 =
    `Hex
      "86c6968cb9bfc3cbc9e6fc94e1caa0caebd29888c19eeda1f693c18394c488e1b9cbc2afeaaab5f084f6f6bbed8e8cc3e4ab8bfda1db0be0c8ecabba90cbabe19698ef82c2c4e395ccfee3fdc9c4b780eaa6bd9de5b3c289a8b8beeaf5c990f2becaa2cb8b80faa490d8bbf381b3adf6dad4defafc9efaceff8093f6c7d7a6e6bff7d296e984dcc1eebe8eb7c0b38aed989ee4c7dcb7adfbefeb8ab7e6db95bf8a89bfd9ec9990a2e9e2ced0b0efa4859be3cd8fc2b084ceddd698fdf1e5d3c088cfd3d4c585aea6a0d88793abdca6c3bd96f980cdb2b1b4eb9ab0a3d9fbccf19281cd92bea0dfabe59c9cddf6ccdcf4a4e1c3beebebe4bbabc0a7bba9ebe0f2cb8faddaeee4de8e878ae1b7fec6eadbf1dfa7d4a68ff1f9c5f7f69bdeab87d6b8a2a0c69ca5b2d1facbb1feb6a899fbb6c5e7e5c0b6fea685d7f1a092a58ca3b0cbdbe7a88eeb90aaa1a1acad9481e3cfa4dde5a0dd90feaba09a098086f0ba878e8491f0b9efe0c5edc99b9d9c84e483b0b8a5fcbcd1a2ead8e1f9b7e89fc9dad19e95a7cef7eac4fef8f491b9f7d5c3a4eb92cdf1e7cfb2d0fca2e8ecc9efa1fbfbfcc3ee828c9c98cfa79889d3aadab1e8a787dbbfb2a38bc8bd9ba5f8cbc89986cfacee9486dcf0a9d288aba38d9c9681fef39bd8dc9fe3e3ea93bcda95b5cec3c3ffba90ac9edfe0c0cb829895cccffa82d7f2dea4add6cab0c383aca8c18f9cbbf5b3a6dc85ad91fdf7eb8bbfeff1b29db7a9a89cfaa7fdb2c0b1dfc8e09bb19b94a2dbb7ece2b1d89ce1aac0a2e3bbd7a8c18be6f08ea7d6b0919cdac3e88ae1becfeacbde8de0c9e1d3f9a390a4b984e08d83fbe69df6c8ddd9b1d19fa287d9b4ebf8fab99ed4d291def8b6f797bab2aaaa899cc784f5fcbaa591cb05"
  in
  let vdf_tuple24 =
    `Hex
      "8ccdfea7f1bffeb2c6d7c9d995b2a4a1c1f09ffab8a491fdbdc788e2a5a9feaab7ec918fa9a985c793a3b5b1edf885b8fd86aac7f0f122c8f7c48783c9c4cfa7d6f2f1d0d0e880eea79fc6fddc8ddfb9e9dc8c8cbd9efae5aab6b4e2cde9a9dcafc997bf89da87f496c1839df48f82c9faa89df6e09da7d6f4dca38f95bdafe580a9a2ef9ffba6d4f3dba3ec889d9a9aadd3f8b7f68491a8cd9ba4b0e79abf84f0d9f8b3d4e7c199e8d494daaeeac0b5efe2a7f998d48dc2e4c3b789a0f6e8eae0a6c6c2f4cd83938ef1c3cde5b2b9fbdec5b1f097d887c1d9aa95b881d3e0dcdae8f1eba5bac981c484b3bdc38595d7c0f796d2dbfaa0aeceae81e5a2c1cbeef6f7b4cce790eacb889abdf2a9e7cfddb5c196ecb3c6f7b78ee1bbb9d2e1d4f3d4c4bfefd8cfc798fc96d8a6afbacbbdfb89ead7f6b2dca191fbb1c497c6df9bf8cfb2cac2d883d1c6cfb8a899eaadb691f1829fdcbd83c9cca0ac0ce3adf182c4b8fedbd0d4dfed9a8fd0a0ae9ff0a8bbf9eab3e99ed8a995d6dad799e0f59afaabc4aabbff80ccb0e8a5b6e098d7a0a485b8bdf696db93deb985a2c8c0d6bf82e7c797bae6a585aedceadbd5e591e0c4b9daecf7f4cc9881ebe0b8b9f9f1f6e18685e38b8088fdc297cdeadaa9bcd1f9f8edaad5819ed8badaf4e586f0eceab0d5a2d7c585bc8fddc9f19c83cdf2fdb1aecfba90b395e2e9eaacbea6e59fecfad891dad7b4c5e4d1c88dea82f396e9a896d6bffeeda4dbddfde5bac1f5d7d9ebcea0dbf087e9ffeacbb6d094d1f2a9f4a3f7d8908adaca93e8db85859e99c7d8fa9cd0ecb6d1cc9f83d6d68184e3ebfecde9e9f9a898f3f5f6f4caecb889b1dbe4f5cba8ad85c2e2ead1d1aaadbd92eb818ec88e9fb29e84b0f3c68cfff2a401"
  in
  let vdf_tuple25 =
    `Hex
      "98a7ace9ccd5d9a9a7edd3c5d288d8ece1abfb8efd9a8dcf9b9bb795919afda0f997a0c6a8fd98acb1dfda95cab5d98cd891e1dd9d802afc95ed9d8ab29b95dfb5cfa7e1b9e1c7fab5caa3c6d2f8dea2f1b5addcfc89aae88fbde1ebecb9dfd7fdc0e5eeedc5969fa9dde985f6f5e6b2ef9689a2febbc39cdbddebe8faa18a87d1dc81ee869ff5fda0d88181b0e0fbb2af8a95d2b1e78a82d6d5d89da7b090f1b189cacfdfc59b8e8cd988dde6b3e1bca1e1e2ecbc99fadc96f6d9dbc6babc8fea929a9c83c19fc6eff8aa849d98c481a4e9f2bfcaafa984ad93dfc6efa7cbe2dabaf0ccdabca3b0e2e3d7c6ebe394ca86d188d191c4bca4e6db8f8c88c7a78ecbfe97ebdda68edab9db89df91a8ece088aca4a9c9e4efb8fcb39984f388ec8eaafee6e5d4fedccba890eabedca8f485b8b1d2b9b8acec9ff7c8a3ebc393b6c9d2cbcab0bddad9b5a3bca2d4bfb9fedde9a49187f6a6b88fd2a294039cd1e9aae6aa98a4829aaba8dba3b4a49a8b98c3f7b7baa6edf2a6dfb4efe5e4ebc6ac91b6f09ba7c08cb3abb891f4c597cec4b4a1b984bdff88c0b6b8f6ac9186f7b3e1bdeba785b4bacac2b8e2ba89b1b8ad84b9828d8fa8ac9b85dde8e4fa988e8cf7b4becfbdf9a0e9e598c8dfcbc99ef68aa9c4d3bb96a5e1b58aadde9decd39a9795a1b0ead98ba6e1c3aa8df1f3c0a0acffccac889dcdd4e4e9f88bd7e2abe0d2dff5de9683a0e4e4d0a5c5a692c7ed87d58d9392a283f0d0c4a1c5bfd0d7b3e2c7f69cbffecb8280eb9fe38dd480aaced79acf8ccae186a8bb9ae9e696c0a7f2edb49df29599eaffe0d597f18ad1a5f5a9daabf188e9d9f7beaa87bab0b3f2c5a8e2a1aaa7cdb3e3c0cd8cd4c2b2c9ce9e8fc4c5ffe98ab0d3f688e0e2ce92af0a"
  in
  let vdf_tuple26 =
    `Hex
      "e7e3efaaafa4b797cdd49edbf385e59b8be78ffda9ffabcfdbcad7eaede6dea88c90deeed7c1b6aecdfdddd4e5aae98ade8efca69bbc1e8aefe6f3ad9ef398adbee5d6e4ad91fba1aba8babee9da8fe2a88dc6bbeca5fceadb949795d3d0ee9acbddca85a6a5abd9d18cfbe9859394aaeffe889ebcfbccd7d2c8e2b8beb2d5c9a3cab3a3a6d5c7ce81d3b1938e958ccd81bcdf89dec7d7a4d2b0a5d1aaf9eef1d6c6d3cfbeccab8ed4f8de8bb6fca7f2cf99a3a6b280ae87ed8ac2c0a0b1c4e9f5dbc1e1b5b3fae38aa7d4f68fe0d484f9aae5b4ecf9e3bac5a5fec6ec81b2def0a0fa9f9e81dfa0b8ebe4dcf2f68c899ee28be5c58a8989fba3af9893e6939a90bbb7f9aa8df0808ea5c1c4f3a99a84bf8ed8a3fde9db99fdbbd797a3e5bbace0a7a0d796baf19eec8be7b79ac789b48ad68fa3c1ef93b98caffa88d1febcdcd2dd83f0cad88bd2ccb287958e90c19092edc1a1e6c7b5f3fa94b30a9289bd91a8e3e1fb8bc2ffea81d9bbb285d9ea88a0a4fe949b9dcb97f5b5919afa92a8a5b4ebc0a8f6cfb8c898a3b5b1db9a89c0e6d7a7b7ad99b0b9f5d99dc1b7e88f89d9ccedb0fca58fe2feeec4f884f5dec99ef9dfd79ebdd2a38fceaed2faa6b9a3b5e5baa5d1f3d3afd4bde7fdba84f584b2cd80d6c1b2c9e5baddd5effec8e2d7faee84a1dfd3c5ecf5acd2d099bdfdb6d99ad4a8a595879a8894a6bb9ff6c880f5e2add3a0cc88be97d3b4fffff4b692fcf0f3d7d4b3d292eecd818faddbcfc18d9da0e5d5cfafc4efbfdeecb7b2fc948ba1e4b6a2bf95c695a392b8d0feeccac784dfcbafe4daaee789c2a693eecdbad38790bf9ee39894a8ade3c4f4b29090b7b8c891868ea9a0f6a4b195d59099e1b4e0a09889afd5c6a6dafeeaf2cfc3ba01"
  in
  let vdf_tuple27 =
    `Hex
      "c3caa0edf6cec09ff7b9cda7fed4ada2b1edfff29a818e9df6aee5f4f3edd5a4e982b2f6aaff92d6d0edafe6ceafd18287d095cbd0f81491cda9e491eef9a4f985def4fa9edf9e83ffc08caba3ca948a90e9b7f9a3ff99839ea7e0e1d7f7fea4f2f0f8a697c0a9be88a2b0fcf2d8e2cadcc9d5dc8befd3ba95a0dcaa8acba185f1f1859f9d88dab3d4d380cf90ea84edb5ead49e80d9cff6dfd2a8f9a2beeff4f98096a8dddbf988989aa19db8fcf2dccab39ff093d4ac859b9891c8cc949983d2b6e89e9acffdd79bc9c2e3a19b98f9f6dfc98bd995f5b5d3df9faf89c5a2f0ada5c59cb3c7fd81a4a191a694ef90f9e2a4f4d6fc998f91dcf1e4f2d7e8c68a8eb59efbd5e8dbd8dbf1c9c2bdb4b3efb49bce9ca19f85b5dbc9c3b0b1d0e5a1c2d4d19ed1cab689d499d9e5cd90ce99c6a39cb2ddaaf0eddcf5a9b6bcabc1ec9fb783ef8ae2b5d5fbb0ce87fa96dcedd9a6d1cd90dd95e69cf89b03a9abf7abd796a4cd83958f889ecce4cba9f988a98eb3e5d2afb5a59cd0e583eef085bcb5dbf3ddeda08e83efd9f5e7c1defcb0f0ee86e6b2ffc3b5ecdffe8cdeeb8188eaa0afec89cad8fdd7ca9eb7a08f9dd0acbc93f7d8de8b8ee18bc8d08bed81b59f9ac8d8b7f7dccdc795f0c0d4e49caadfacefaa90979be5e7beb784aaa9dca194c3aec8b4efa2c986c1cde7e6a0dbaff38ed98aeec6a7d8b489f0cce8d4b2ce99b3c6f287ad91d0d4c8efd69fa7c5c3d5daf9d0ae8dd1bfb1fcb4bdff87b1aae6efd182bce4dd87f6ced0cadbb3bbcbbae9ea8a9bc6ac81cc9acbb0f2d5f9e8aebfd785c2c5deb3dbe99bb8c6beb1b0e9e7c8959cd0d2bf8ce9f4f5b8d3b6bbb5ec9be7e48ec481b796a3c6db99c3e6f1dadba1b180c5e0cce7bb89b2ccead2c002"
  in
  let vdf_tuple28 =
    `Hex
      "af99abaedc96dcfccebf9afdd5c0f289e0beccd6bbd1ab8691ebdebbe1b4d1d380c5a1c287d7b9f7dbac85b280d1c9efa0aeb484e9fa1abbd9c18482ebaee6c0dd8781959ef3b38b9a97add4d5d0b9dcccb0c6dadbbfa7f6a5f0ebb5c0dcb2a680c9d9efdbd3b4de8c8dadacf4fef8b182c7f5e4a7aee38bda99f5aceac486acfae8e1fecff9d3ccefe0d5d4e6d782e6deebc59e8db798b3ef86bade93cbcecbbfd485c488e4bfb494dddddabe8386ebbfe5f4f1808abc9fe7c5b8a0e48d97af96bfa8d0dff496b1e683f0fdabba93cffffbf0e4bde1ccecc4f2acedde9784bfc3fee2af9fdac595b9e3fddb95e3c0c0d4e4b8f49f9beecac38eb8e1cb8ca98392a6cab89c968ccfb7c5b795d78cdb81d7a9b895b99bad8edbb7d3d3decba2dda2f7cfecd1befa89c9d2ceb1a3fe9593c8fa80d99188ecb9edcfd395d491cc97ebd09e939fdaa9f098ffe5d29ae493aab885aefbbfdec9f1ce9af507d08fa8c99ee1a8cfc6e48ff5c8d290e1cacbb2b385caffae80a79ba9d6bcb2b6e3e9cc8683c0fa8882c7f0cbb7a08691d4b2be9eafa5fdaf86bcedf3a8e7a9d7a0818bfcb597f0908dd3b9be9281ca99e4f0be8988dda7c5d785c3b6dcf0b6c0aae4a3b7cf8a8c85ee99f9c48fec83daa2f9ae9ab7acc8eb9290d99ef2eba2d79d84de97a68fd092eb8697929abcabc3cba79da9b4f0d8c7b392be8cd3f5d0cad6be8ab5a0b0b2cefbc5d5b8e3b79dc886c7e2af9aebf3aba3c6f889b3b6b3e59ce0d4b8dded8c87c0fcfda5faf2f5bd9c9a8dffb3e7e2cecb82d18d83b9a1f5c1849be082d0e39192f4b3dfecdf8cd7b1a5c284b9fbf1e2e399fc9aa5f58e99fff9cca099a5abc2e3a2c5fe83e680bc9dc993dd9393bbb8e19dc8b5dab1fe8eee849bef06"
  in
  let vdf_tuple29 =
    `Hex
      "e2c7d9a8d98ceb8ef8adf3a5bbc2b5adebbe87a8eb9ce1bcfbabbfd08e88bfd0c2f2f496a08ffee19984b58785dab69a86e38fcbde801bca9eb6f18ab890fedba59ae3cac981e29af0cfa9b8c8fbdcd890e3c692beb49d8cb7d59ab9ddebc58cacfccdb7bc928a9dd6eee5ecd4aebeb1e9a9a693e8bb899c91caf2a9aae4b6bcd5bf8dbfefb7e6d4e5dfbee2d0bf93f4b6d6fac1898ad0aed0dbbef7dfafa08f8c90ffb8829edf9feecdb4aef28b89f2bc8bb5d8b1fad0c2a999f4e3fb8dc0f7b19afcf7c1eeefb6c78bbfa6adb7a0b5f5efadc9c0fb94f3cd96c7f6c5ecb1d9adb4c7848cf7f1f2aeffa799b4dd95d8ebc9e082cce6c987a0b5f0ef90c5e38f949fa1829bdef8f9f1bdc0b88fea9de598d4b9acf6d29483ddd1c188f0bacdbd898fdf81c5acd8fed9faccdec3cbd9bcaad9d0b085a2e08585abe39ba594a2aece9f97baba98ea91bce89aafd8eae699befc8a899790ccf8bdcdcf0b95c8c580a1c3e387d28dff8bef88cea38f809bd99c87878dcfbdc3a8e6a5dde9a7d5f690d2eda28896c398dc9adf85d0bfa796eaf686eddeb7cad28ae28da3b3cfc0e3e28d9db1dadea1aa9caa81cb8ad0a6c38ddc97aff5cecab69a91e2f5cd8699ebc4e387ebd7a998fd9fa79896db9be4d98bb3cac7c78dc1dda2aea3b2bd81f6cbc1dee68ff5f2a9c59cc29bf59ba5f69fc487d6a58ed988e4ddbcdae3b99a95b1c6e196f681fdd4dd959a92e8c69cedd986ba9896adb6e78889868499b1d894dda4a7a193a7c7dde9f8cfe6f4e9f6dfdaceadc6b5e9fd8cab95f6fc8cc88ea58ea980d7e1d6e886eb9792e082c5bdcacbfc99e9cfdaf3e2a99591ab92d7b8fcd1ce86b98fb481e39dfee5faf3cdbfc482de84b6a0c78285e3e5b3d9bda3a7dce8ed09"
  in
  [|
    vdf_tuple0;
    vdf_tuple1;
    vdf_tuple2;
    vdf_tuple3;
    vdf_tuple4;
    vdf_tuple5;
    vdf_tuple6;
    vdf_tuple7;
    vdf_tuple8;
    vdf_tuple9;
    vdf_tuple10;
    vdf_tuple11;
    vdf_tuple12;
    vdf_tuple13;
    vdf_tuple14;
    vdf_tuple15;
    vdf_tuple16;
    vdf_tuple17;
    vdf_tuple18;
    vdf_tuple19;
    vdf_tuple20;
    vdf_tuple21;
    vdf_tuple22;
    vdf_tuple23;
    vdf_tuple24;
    vdf_tuple25;
    vdf_tuple26;
    vdf_tuple27;
    vdf_tuple28;
    vdf_tuple29;
  |]
  |> Array.map (fun t -> Hex.to_string t |> Option.value ~default:"")
OCaml

Innovation. Community. Security.