@aztec/bb.js 3.0.0-devnet.2 → 3.0.0-devnet.2-patch.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (599) hide show
  1. package/build/amd64-linux/bb +0 -0
  2. package/build/amd64-linux/nodejs_module.node +0 -0
  3. package/build/amd64-macos/bb +0 -0
  4. package/build/amd64-macos/nodejs_module.node +0 -0
  5. package/build/arm64-linux/bb +0 -0
  6. package/build/arm64-linux/nodejs_module.node +0 -0
  7. package/build/arm64-macos/bb +0 -0
  8. package/build/arm64-macos/nodejs_module.node +0 -0
  9. package/dest/browser/async_map/index.d.ts +1 -1
  10. package/dest/browser/async_map/index.js +1 -1
  11. package/dest/browser/barretenberg/backend.d.ts +30 -39
  12. package/dest/browser/barretenberg/backend.d.ts.map +1 -1
  13. package/dest/browser/barretenberg/backend.js +103 -98
  14. package/dest/browser/barretenberg/index.d.ts +4 -6
  15. package/dest/browser/barretenberg/index.d.ts.map +1 -1
  16. package/dest/browser/barretenberg/index.js +20 -29
  17. package/dest/browser/barretenberg/testing/bigint-buffer.d.ts +17 -0
  18. package/dest/browser/barretenberg/testing/bigint-buffer.d.ts.map +1 -0
  19. package/dest/browser/barretenberg/testing/bigint-buffer.js +37 -0
  20. package/dest/browser/barretenberg/testing/fields.d.ts +16 -0
  21. package/dest/browser/barretenberg/testing/fields.d.ts.map +1 -0
  22. package/dest/browser/barretenberg/testing/fields.js +47 -0
  23. package/dest/browser/barretenberg_wasm/barretenberg_wasm_base/index.d.ts +1 -1
  24. package/dest/browser/barretenberg_wasm/barretenberg_wasm_base/index.d.ts.map +1 -1
  25. package/dest/browser/barretenberg_wasm/barretenberg_wasm_base/index.js +5 -6
  26. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts +1 -1
  27. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts.map +1 -1
  28. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.js +1 -3
  29. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts +1 -1
  30. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.js +1 -7
  31. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts +1 -1
  32. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts.map +1 -1
  33. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.js +5 -4
  34. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/index.d.ts +13 -7
  35. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/index.d.ts.map +1 -1
  36. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/index.js +45 -18
  37. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts +1 -1
  38. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts.map +1 -1
  39. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.js +1 -3
  40. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts +1 -1
  41. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.js +1 -7
  42. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts +9 -8
  43. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts.map +1 -1
  44. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/index.js +4 -3
  45. package/dest/browser/barretenberg_wasm/fetch_code/browser/barretenberg-threads.d.ts +1 -1
  46. package/dest/browser/barretenberg_wasm/fetch_code/browser/barretenberg-threads.js +1 -1
  47. package/dest/browser/barretenberg_wasm/fetch_code/browser/barretenberg.d.ts +1 -1
  48. package/dest/browser/barretenberg_wasm/fetch_code/browser/barretenberg.js +1 -1
  49. package/dest/browser/barretenberg_wasm/fetch_code/browser/index.d.ts +1 -1
  50. package/dest/browser/barretenberg_wasm/fetch_code/browser/index.js +1 -1
  51. package/dest/browser/barretenberg_wasm/fetch_code/index.d.ts +1 -1
  52. package/dest/browser/barretenberg_wasm/helpers/browser/index.d.ts +2 -2
  53. package/dest/browser/barretenberg_wasm/helpers/browser/index.d.ts.map +1 -1
  54. package/dest/browser/barretenberg_wasm/helpers/browser/index.js +9 -2
  55. package/dest/browser/barretenberg_wasm/helpers/index.d.ts +1 -1
  56. package/dest/browser/barretenberg_wasm/index.d.ts +1 -1
  57. package/dest/browser/barretenberg_wasm/index.d.ts.map +1 -1
  58. package/dest/browser/barretenberg_wasm/index.js +2 -3
  59. package/dest/browser/bb_backends/browser/index.d.ts +1 -1
  60. package/dest/browser/bb_backends/browser/index.js +1 -1
  61. package/dest/browser/bb_backends/browser/platform.d.ts +4 -0
  62. package/dest/browser/bb_backends/browser/platform.d.ts.map +1 -0
  63. package/dest/browser/bb_backends/browser/platform.js +10 -0
  64. package/dest/browser/bb_backends/index.d.ts +12 -7
  65. package/dest/browser/bb_backends/index.d.ts.map +1 -1
  66. package/dest/browser/bb_backends/index.js +8 -7
  67. package/dest/browser/bb_backends/interface.d.ts +1 -1
  68. package/dest/browser/bb_backends/wasm.d.ts +1 -1
  69. package/dest/browser/bb_backends/wasm.d.ts.map +1 -1
  70. package/dest/browser/bb_backends/wasm.js +5 -3
  71. package/dest/browser/bbapi_exception.d.ts +7 -0
  72. package/dest/browser/bbapi_exception.d.ts.map +1 -0
  73. package/dest/browser/bbapi_exception.js +14 -0
  74. package/dest/browser/bin/index.d.ts +3 -0
  75. package/dest/browser/bin/index.d.ts.map +1 -0
  76. package/dest/browser/bin/index.js +11 -0
  77. package/dest/browser/cbind/generate.d.ts +1 -1
  78. package/dest/browser/cbind/generate.js +93 -1
  79. package/dest/browser/cbind/generated/api_types.d.ts +632 -400
  80. package/dest/browser/cbind/generated/api_types.d.ts.map +1 -1
  81. package/dest/browser/cbind/generated/api_types.js +773 -465
  82. package/dest/browser/cbind/generated/async.d.ts +16 -11
  83. package/dest/browser/cbind/generated/async.d.ts.map +1 -1
  84. package/dest/browser/cbind/generated/async.js +305 -96
  85. package/dest/browser/cbind/generated/curve_constants.d.ts +45 -0
  86. package/dest/browser/cbind/generated/curve_constants.d.ts.map +1 -0
  87. package/dest/browser/cbind/generated/curve_constants.js +45 -0
  88. package/dest/browser/cbind/generated/sync.d.ts +16 -11
  89. package/dest/browser/cbind/generated/sync.d.ts.map +1 -1
  90. package/dest/browser/cbind/generated/sync.js +300 -96
  91. package/dest/browser/cbind/schema_compiler.d.ts +1 -1
  92. package/dest/browser/cbind/schema_compiler.d.ts.map +1 -1
  93. package/dest/browser/cbind/schema_compiler.js +29 -8
  94. package/dest/browser/crs/browser/cached_net_crs.d.ts +1 -1
  95. package/dest/browser/crs/browser/cached_net_crs.d.ts.map +1 -1
  96. package/dest/browser/crs/browser/cached_net_crs.js +6 -1
  97. package/dest/browser/crs/browser/index.d.ts +1 -1
  98. package/dest/browser/crs/index.d.ts +1 -1
  99. package/dest/browser/crs/net_crs.d.ts +1 -16
  100. package/dest/browser/crs/net_crs.d.ts.map +1 -1
  101. package/dest/browser/crs/net_crs.js +6 -1
  102. package/dest/browser/index.d.ts +6 -3
  103. package/dest/browser/index.d.ts.map +1 -1
  104. package/dest/browser/index.js +5 -2
  105. package/dest/browser/proof/index.d.ts +1 -1
  106. package/dest/browser/proof/index.js +1 -1
  107. package/dest/browser/random/browser/index.d.ts +1 -1
  108. package/dest/browser/random/browser/index.d.ts.map +1 -1
  109. package/dest/browser/random/browser/index.js +1 -1
  110. package/dest/browser/random/index.d.ts +1 -1
  111. package/dest/browser/retry/index.d.ts +1 -1
  112. package/dest/browser/retry/index.js +1 -1
  113. package/dest/node/async_map/index.d.ts +1 -1
  114. package/dest/node/async_map/index.js +1 -1
  115. package/dest/node/barretenberg/backend.d.ts +30 -39
  116. package/dest/node/barretenberg/backend.d.ts.map +1 -1
  117. package/dest/node/barretenberg/backend.js +103 -98
  118. package/dest/node/barretenberg/blake2s.test.d.ts +1 -1
  119. package/dest/node/barretenberg/blake2s.test.js +2 -2
  120. package/dest/node/barretenberg/index.d.ts +4 -6
  121. package/dest/node/barretenberg/index.d.ts.map +1 -1
  122. package/dest/node/barretenberg/index.js +20 -29
  123. package/dest/node/barretenberg/pedersen.test.d.ts +1 -1
  124. package/dest/node/barretenberg/pedersen.test.js +2 -2
  125. package/dest/node/barretenberg/poseidon.bench.test.d.ts +1 -1
  126. package/dest/node/barretenberg/poseidon.bench.test.js +81 -79
  127. package/dest/node/barretenberg/poseidon.test.d.ts +1 -1
  128. package/dest/node/barretenberg/poseidon.test.js +2 -2
  129. package/dest/node/barretenberg/testing/bigint-buffer.d.ts +17 -0
  130. package/dest/node/barretenberg/testing/bigint-buffer.d.ts.map +1 -0
  131. package/dest/node/barretenberg/testing/bigint-buffer.js +37 -0
  132. package/dest/node/barretenberg/testing/fields.d.ts +16 -0
  133. package/dest/node/barretenberg/testing/fields.d.ts.map +1 -0
  134. package/dest/node/barretenberg/testing/fields.js +47 -0
  135. package/dest/node/barretenberg_wasm/barretenberg-threads.wasm.gz +0 -0
  136. package/dest/node/barretenberg_wasm/barretenberg_wasm_base/index.d.ts +1 -1
  137. package/dest/node/barretenberg_wasm/barretenberg_wasm_base/index.d.ts.map +1 -1
  138. package/dest/node/barretenberg_wasm/barretenberg_wasm_base/index.js +5 -6
  139. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts +1 -1
  140. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts.map +1 -1
  141. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.js +1 -3
  142. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts +1 -1
  143. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.js +1 -7
  144. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts +1 -1
  145. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts.map +1 -1
  146. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.js +1 -3
  147. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/main.worker.d.ts +1 -1
  148. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/main.worker.js +1 -8
  149. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts +1 -1
  150. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts.map +1 -1
  151. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.js +5 -4
  152. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/index.d.ts +13 -7
  153. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/index.d.ts.map +1 -1
  154. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/index.js +45 -18
  155. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts +1 -1
  156. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts.map +1 -1
  157. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.js +1 -3
  158. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts +1 -1
  159. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.js +1 -7
  160. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts +1 -1
  161. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts.map +1 -1
  162. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.js +1 -3
  163. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/thread.worker.d.ts +1 -1
  164. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/thread.worker.js +1 -7
  165. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts +9 -8
  166. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts.map +1 -1
  167. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/index.js +4 -3
  168. package/dest/node/barretenberg_wasm/fetch_code/browser/barretenberg-threads.d.ts +1 -1
  169. package/dest/node/barretenberg_wasm/fetch_code/browser/barretenberg.d.ts +1 -1
  170. package/dest/node/barretenberg_wasm/fetch_code/browser/index.d.ts +1 -1
  171. package/dest/node/barretenberg_wasm/fetch_code/browser/index.js +1 -1
  172. package/dest/node/barretenberg_wasm/fetch_code/index.d.ts +1 -1
  173. package/dest/node/barretenberg_wasm/fetch_code/node/index.d.ts +1 -1
  174. package/dest/node/barretenberg_wasm/fetch_code/node/index.js +1 -1
  175. package/dest/node/barretenberg_wasm/helpers/browser/index.d.ts +2 -2
  176. package/dest/node/barretenberg_wasm/helpers/browser/index.d.ts.map +1 -1
  177. package/dest/node/barretenberg_wasm/helpers/browser/index.js +9 -2
  178. package/dest/node/barretenberg_wasm/helpers/index.d.ts +1 -1
  179. package/dest/node/barretenberg_wasm/helpers/node/index.d.ts +5 -6
  180. package/dest/node/barretenberg_wasm/helpers/node/index.d.ts.map +1 -1
  181. package/dest/node/barretenberg_wasm/helpers/node/index.js +14 -6
  182. package/dest/node/barretenberg_wasm/helpers/node/node_endpoint.d.ts +2 -2
  183. package/dest/node/barretenberg_wasm/helpers/node/node_endpoint.d.ts.map +1 -1
  184. package/dest/node/barretenberg_wasm/helpers/node/node_endpoint.js +1 -1
  185. package/dest/node/barretenberg_wasm/index.d.ts +1 -1
  186. package/dest/node/barretenberg_wasm/index.d.ts.map +1 -1
  187. package/dest/node/barretenberg_wasm/index.js +2 -3
  188. package/dest/node/barretenberg_wasm/index.test.d.ts +1 -1
  189. package/dest/node/barretenberg_wasm/index.test.js +1 -1
  190. package/dest/node/bb_backends/browser/index.d.ts +1 -1
  191. package/dest/node/bb_backends/browser/index.js +1 -1
  192. package/dest/node/bb_backends/browser/platform.d.ts +4 -0
  193. package/dest/node/bb_backends/browser/platform.d.ts.map +1 -0
  194. package/dest/node/bb_backends/browser/platform.js +10 -0
  195. package/dest/node/bb_backends/index.d.ts +12 -7
  196. package/dest/node/bb_backends/index.d.ts.map +1 -1
  197. package/dest/node/bb_backends/index.js +8 -7
  198. package/dest/node/bb_backends/interface.d.ts +1 -1
  199. package/dest/node/bb_backends/node/index.d.ts +1 -1
  200. package/dest/node/bb_backends/node/index.d.ts.map +1 -1
  201. package/dest/node/bb_backends/node/index.js +17 -11
  202. package/dest/node/bb_backends/node/native_pipe.d.ts +1 -1
  203. package/dest/node/bb_backends/node/native_pipe.d.ts.map +1 -1
  204. package/dest/node/bb_backends/node/native_pipe.js +11 -10
  205. package/dest/node/bb_backends/node/native_shm.d.ts +3 -3
  206. package/dest/node/bb_backends/node/native_shm.d.ts.map +1 -1
  207. package/dest/node/bb_backends/node/native_shm.js +61 -39
  208. package/dest/node/bb_backends/node/native_shm_async.d.ts +51 -0
  209. package/dest/node/bb_backends/node/native_shm_async.d.ts.map +1 -0
  210. package/dest/node/bb_backends/node/native_shm_async.js +232 -0
  211. package/dest/node/bb_backends/node/native_socket.d.ts +2 -2
  212. package/dest/node/bb_backends/node/native_socket.d.ts.map +1 -1
  213. package/dest/node/bb_backends/node/native_socket.js +43 -31
  214. package/dest/node/bb_backends/node/platform.d.ts +1 -1
  215. package/dest/node/bb_backends/node/platform.d.ts.map +1 -1
  216. package/dest/node/bb_backends/node/platform.js +7 -2
  217. package/dest/node/bb_backends/wasm.d.ts +1 -1
  218. package/dest/node/bb_backends/wasm.d.ts.map +1 -1
  219. package/dest/node/bb_backends/wasm.js +5 -3
  220. package/dest/node/bbapi/exception_handling.test.d.ts +2 -0
  221. package/dest/node/bbapi/exception_handling.test.d.ts.map +1 -0
  222. package/dest/node/bbapi/exception_handling.test.js +48 -0
  223. package/dest/node/bbapi_exception.d.ts +7 -0
  224. package/dest/node/bbapi_exception.d.ts.map +1 -0
  225. package/dest/node/bbapi_exception.js +14 -0
  226. package/dest/node/benchmark/index.d.ts +1 -1
  227. package/dest/node/benchmark/index.js +1 -1
  228. package/dest/node/benchmark/timer.d.ts +1 -1
  229. package/dest/node/benchmark/timer.d.ts.map +1 -1
  230. package/dest/node/benchmark/timer.js +2 -1
  231. package/dest/node/bin/index.d.ts +3 -0
  232. package/dest/node/bin/index.d.ts.map +1 -0
  233. package/dest/node/bin/index.js +11 -0
  234. package/dest/node/cbind/generate.d.ts +1 -1
  235. package/dest/node/cbind/generate.js +93 -1
  236. package/dest/node/cbind/generated/api_types.d.ts +632 -400
  237. package/dest/node/cbind/generated/api_types.d.ts.map +1 -1
  238. package/dest/node/cbind/generated/api_types.js +773 -465
  239. package/dest/node/cbind/generated/async.d.ts +16 -11
  240. package/dest/node/cbind/generated/async.d.ts.map +1 -1
  241. package/dest/node/cbind/generated/async.js +305 -96
  242. package/dest/node/cbind/generated/curve_constants.d.ts +45 -0
  243. package/dest/node/cbind/generated/curve_constants.d.ts.map +1 -0
  244. package/dest/node/cbind/generated/curve_constants.js +45 -0
  245. package/dest/node/cbind/generated/sync.d.ts +16 -11
  246. package/dest/node/cbind/generated/sync.d.ts.map +1 -1
  247. package/dest/node/cbind/generated/sync.js +300 -96
  248. package/dest/node/cbind/schema_compiler.d.ts +1 -1
  249. package/dest/node/cbind/schema_compiler.d.ts.map +1 -1
  250. package/dest/node/cbind/schema_compiler.js +29 -8
  251. package/dest/node/crs/browser/cached_net_crs.d.ts +1 -1
  252. package/dest/node/crs/browser/cached_net_crs.d.ts.map +1 -1
  253. package/dest/node/crs/browser/cached_net_crs.js +6 -1
  254. package/dest/node/crs/browser/index.d.ts +1 -1
  255. package/dest/node/crs/index.d.ts +1 -1
  256. package/dest/node/crs/net_crs.d.ts +1 -16
  257. package/dest/node/crs/net_crs.d.ts.map +1 -1
  258. package/dest/node/crs/net_crs.js +6 -1
  259. package/dest/node/crs/node/index.d.ts +1 -1
  260. package/dest/node/crs/node/index.d.ts.map +1 -1
  261. package/dest/node/crs/node/index.js +11 -6
  262. package/dest/node/index.d.ts +6 -3
  263. package/dest/node/index.d.ts.map +1 -1
  264. package/dest/node/index.js +5 -2
  265. package/dest/node/proof/index.d.ts +1 -1
  266. package/dest/node/proof/index.js +1 -1
  267. package/dest/node/random/browser/index.d.ts +1 -1
  268. package/dest/node/random/browser/index.d.ts.map +1 -1
  269. package/dest/node/random/browser/index.js +1 -1
  270. package/dest/node/random/index.d.ts +1 -1
  271. package/dest/node/random/node/index.d.ts +1 -1
  272. package/dest/node/random/node/index.js +1 -1
  273. package/dest/node/retry/index.d.ts +1 -1
  274. package/dest/node/retry/index.js +1 -1
  275. package/dest/node-cjs/async_map/index.d.ts +1 -1
  276. package/dest/node-cjs/async_map/index.js +1 -1
  277. package/dest/node-cjs/barretenberg/backend.d.ts +30 -39
  278. package/dest/node-cjs/barretenberg/backend.d.ts.map +1 -1
  279. package/dest/node-cjs/barretenberg/backend.js +108 -103
  280. package/dest/node-cjs/barretenberg/blake2s.test.d.ts +1 -1
  281. package/dest/node-cjs/barretenberg/blake2s.test.js +6 -6
  282. package/dest/node-cjs/barretenberg/index.d.ts +4 -6
  283. package/dest/node-cjs/barretenberg/index.d.ts.map +1 -1
  284. package/dest/node-cjs/barretenberg/index.js +25 -34
  285. package/dest/node-cjs/barretenberg/pedersen.test.d.ts +1 -1
  286. package/dest/node-cjs/barretenberg/pedersen.test.js +9 -9
  287. package/dest/node-cjs/barretenberg/poseidon.bench.test.d.ts +1 -1
  288. package/dest/node-cjs/barretenberg/poseidon.bench.test.js +89 -87
  289. package/dest/node-cjs/barretenberg/poseidon.test.d.ts +1 -1
  290. package/dest/node-cjs/barretenberg/poseidon.test.js +4 -4
  291. package/dest/node-cjs/barretenberg/testing/bigint-buffer.d.ts +17 -0
  292. package/dest/node-cjs/barretenberg/testing/bigint-buffer.d.ts.map +1 -0
  293. package/dest/node-cjs/barretenberg/testing/bigint-buffer.js +43 -0
  294. package/dest/node-cjs/barretenberg/testing/fields.d.ts +16 -0
  295. package/dest/node-cjs/barretenberg/testing/fields.d.ts.map +1 -0
  296. package/dest/node-cjs/barretenberg/testing/fields.js +51 -0
  297. package/dest/node-cjs/barretenberg_wasm/barretenberg-threads.wasm.gz +0 -0
  298. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_base/index.d.ts +1 -1
  299. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_base/index.d.ts.map +1 -1
  300. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_base/index.js +7 -8
  301. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts +1 -1
  302. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts.map +1 -1
  303. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.js +3 -5
  304. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts +1 -1
  305. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.js +1 -7
  306. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts +1 -1
  307. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts.map +1 -1
  308. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.js +1 -3
  309. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/main.worker.d.ts +1 -1
  310. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/main.worker.js +1 -8
  311. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts +1 -1
  312. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts.map +1 -1
  313. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.js +5 -4
  314. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/index.d.ts +13 -7
  315. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/index.d.ts.map +1 -1
  316. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/index.js +45 -18
  317. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts +1 -1
  318. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts.map +1 -1
  319. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.js +3 -5
  320. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts +1 -1
  321. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.js +1 -7
  322. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts +1 -1
  323. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts.map +1 -1
  324. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.js +1 -3
  325. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/thread.worker.d.ts +1 -1
  326. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/thread.worker.js +1 -7
  327. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts +9 -8
  328. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts.map +1 -1
  329. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/index.js +4 -3
  330. package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/barretenberg-threads.d.ts +1 -1
  331. package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/barretenberg-threads.js +1 -1
  332. package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/barretenberg.d.ts +1 -1
  333. package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/barretenberg.js +1 -1
  334. package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/index.d.ts +1 -1
  335. package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/index.js +2 -2
  336. package/dest/node-cjs/barretenberg_wasm/fetch_code/index.d.ts +1 -1
  337. package/dest/node-cjs/barretenberg_wasm/fetch_code/node/index.d.ts +1 -1
  338. package/dest/node-cjs/barretenberg_wasm/fetch_code/node/index.js +2 -2
  339. package/dest/node-cjs/barretenberg_wasm/helpers/browser/index.d.ts +2 -2
  340. package/dest/node-cjs/barretenberg_wasm/helpers/browser/index.d.ts.map +1 -1
  341. package/dest/node-cjs/barretenberg_wasm/helpers/browser/index.js +9 -2
  342. package/dest/node-cjs/barretenberg_wasm/helpers/index.d.ts +1 -1
  343. package/dest/node-cjs/barretenberg_wasm/helpers/node/index.d.ts +5 -6
  344. package/dest/node-cjs/barretenberg_wasm/helpers/node/index.d.ts.map +1 -1
  345. package/dest/node-cjs/barretenberg_wasm/helpers/node/index.js +15 -7
  346. package/dest/node-cjs/barretenberg_wasm/helpers/node/node_endpoint.d.ts +2 -2
  347. package/dest/node-cjs/barretenberg_wasm/helpers/node/node_endpoint.d.ts.map +1 -1
  348. package/dest/node-cjs/barretenberg_wasm/helpers/node/node_endpoint.js +1 -1
  349. package/dest/node-cjs/barretenberg_wasm/index.d.ts +1 -1
  350. package/dest/node-cjs/barretenberg_wasm/index.d.ts.map +1 -1
  351. package/dest/node-cjs/barretenberg_wasm/index.js +2 -3
  352. package/dest/node-cjs/barretenberg_wasm/index.test.d.ts +1 -1
  353. package/dest/node-cjs/barretenberg_wasm/index.test.js +1 -1
  354. package/dest/node-cjs/bb_backends/browser/index.d.ts +1 -1
  355. package/dest/node-cjs/bb_backends/browser/index.js +1 -1
  356. package/dest/node-cjs/bb_backends/browser/platform.d.ts +4 -0
  357. package/dest/node-cjs/bb_backends/browser/platform.d.ts.map +1 -0
  358. package/dest/node-cjs/bb_backends/browser/platform.js +15 -0
  359. package/dest/node-cjs/bb_backends/index.d.ts +12 -7
  360. package/dest/node-cjs/bb_backends/index.d.ts.map +1 -1
  361. package/dest/node-cjs/bb_backends/index.js +6 -6
  362. package/dest/node-cjs/bb_backends/interface.d.ts +1 -1
  363. package/dest/node-cjs/bb_backends/node/index.d.ts +1 -1
  364. package/dest/node-cjs/bb_backends/node/index.d.ts.map +1 -1
  365. package/dest/node-cjs/bb_backends/node/index.js +17 -11
  366. package/dest/node-cjs/bb_backends/node/native_pipe.d.ts +1 -1
  367. package/dest/node-cjs/bb_backends/node/native_pipe.d.ts.map +1 -1
  368. package/dest/node-cjs/bb_backends/node/native_pipe.js +11 -10
  369. package/dest/node-cjs/bb_backends/node/native_shm.d.ts +3 -3
  370. package/dest/node-cjs/bb_backends/node/native_shm.d.ts.map +1 -1
  371. package/dest/node-cjs/bb_backends/node/native_shm.js +61 -39
  372. package/dest/node-cjs/bb_backends/node/native_shm_async.d.ts +51 -0
  373. package/dest/node-cjs/bb_backends/node/native_shm_async.d.ts.map +1 -0
  374. package/dest/node-cjs/bb_backends/node/native_shm_async.js +236 -0
  375. package/dest/node-cjs/bb_backends/node/native_socket.d.ts +2 -2
  376. package/dest/node-cjs/bb_backends/node/native_socket.d.ts.map +1 -1
  377. package/dest/node-cjs/bb_backends/node/native_socket.js +43 -31
  378. package/dest/node-cjs/bb_backends/node/platform.d.ts +1 -1
  379. package/dest/node-cjs/bb_backends/node/platform.d.ts.map +1 -1
  380. package/dest/node-cjs/bb_backends/node/platform.js +8 -3
  381. package/dest/node-cjs/bb_backends/wasm.d.ts +1 -1
  382. package/dest/node-cjs/bb_backends/wasm.d.ts.map +1 -1
  383. package/dest/node-cjs/bb_backends/wasm.js +5 -3
  384. package/dest/node-cjs/bbapi/exception_handling.test.d.ts +2 -0
  385. package/dest/node-cjs/bbapi/exception_handling.test.d.ts.map +1 -0
  386. package/dest/node-cjs/bbapi/exception_handling.test.js +50 -0
  387. package/dest/node-cjs/bbapi_exception.d.ts +7 -0
  388. package/dest/node-cjs/bbapi_exception.d.ts.map +1 -0
  389. package/dest/node-cjs/bbapi_exception.js +18 -0
  390. package/dest/node-cjs/benchmark/index.d.ts +1 -1
  391. package/dest/node-cjs/benchmark/index.js +2 -2
  392. package/dest/node-cjs/benchmark/timer.d.ts +1 -1
  393. package/dest/node-cjs/benchmark/timer.d.ts.map +1 -1
  394. package/dest/node-cjs/benchmark/timer.js +2 -1
  395. package/dest/node-cjs/bin/index.d.ts +3 -0
  396. package/dest/node-cjs/bin/index.d.ts.map +1 -0
  397. package/dest/node-cjs/bin/index.js +13 -0
  398. package/dest/node-cjs/cbind/generate.d.ts +1 -1
  399. package/dest/node-cjs/cbind/generate.js +93 -1
  400. package/dest/node-cjs/cbind/generated/api_types.d.ts +632 -400
  401. package/dest/node-cjs/cbind/generated/api_types.d.ts.map +1 -1
  402. package/dest/node-cjs/cbind/generated/api_types.js +843 -507
  403. package/dest/node-cjs/cbind/generated/async.d.ts +16 -11
  404. package/dest/node-cjs/cbind/generated/async.d.ts.map +1 -1
  405. package/dest/node-cjs/cbind/generated/async.js +304 -95
  406. package/dest/node-cjs/cbind/generated/curve_constants.d.ts +45 -0
  407. package/dest/node-cjs/cbind/generated/curve_constants.d.ts.map +1 -0
  408. package/dest/node-cjs/cbind/generated/curve_constants.js +48 -0
  409. package/dest/node-cjs/cbind/generated/sync.d.ts +16 -11
  410. package/dest/node-cjs/cbind/generated/sync.d.ts.map +1 -1
  411. package/dest/node-cjs/cbind/generated/sync.js +299 -95
  412. package/dest/node-cjs/cbind/schema_compiler.d.ts +1 -1
  413. package/dest/node-cjs/cbind/schema_compiler.d.ts.map +1 -1
  414. package/dest/node-cjs/cbind/schema_compiler.js +29 -8
  415. package/dest/node-cjs/crs/browser/cached_net_crs.d.ts +1 -1
  416. package/dest/node-cjs/crs/browser/cached_net_crs.d.ts.map +1 -1
  417. package/dest/node-cjs/crs/browser/cached_net_crs.js +6 -1
  418. package/dest/node-cjs/crs/browser/index.d.ts +1 -1
  419. package/dest/node-cjs/crs/browser/index.js +2 -2
  420. package/dest/node-cjs/crs/index.d.ts +1 -1
  421. package/dest/node-cjs/crs/index.js +2 -2
  422. package/dest/node-cjs/crs/net_crs.d.ts +1 -16
  423. package/dest/node-cjs/crs/net_crs.d.ts.map +1 -1
  424. package/dest/node-cjs/crs/net_crs.js +6 -1
  425. package/dest/node-cjs/crs/node/index.d.ts +1 -1
  426. package/dest/node-cjs/crs/node/index.d.ts.map +1 -1
  427. package/dest/node-cjs/crs/node/index.js +11 -6
  428. package/dest/node-cjs/index.d.ts +6 -3
  429. package/dest/node-cjs/index.d.ts.map +1 -1
  430. package/dest/node-cjs/index.js +28 -11
  431. package/dest/node-cjs/proof/index.d.ts +1 -1
  432. package/dest/node-cjs/proof/index.js +1 -1
  433. package/dest/node-cjs/random/browser/index.d.ts +1 -1
  434. package/dest/node-cjs/random/browser/index.d.ts.map +1 -1
  435. package/dest/node-cjs/random/browser/index.js +1 -1
  436. package/dest/node-cjs/random/index.d.ts +1 -1
  437. package/dest/node-cjs/random/node/index.d.ts +1 -1
  438. package/dest/node-cjs/random/node/index.js +1 -1
  439. package/dest/node-cjs/retry/index.d.ts +1 -1
  440. package/dest/node-cjs/retry/index.js +1 -1
  441. package/package.json +8 -6
  442. package/src/barretenberg/backend.ts +125 -126
  443. package/src/barretenberg/blake2s.test.ts +1 -1
  444. package/src/barretenberg/index.ts +24 -29
  445. package/src/barretenberg/pedersen.test.ts +1 -1
  446. package/src/barretenberg/poseidon.bench.test.ts +161 -157
  447. package/src/barretenberg/poseidon.test.ts +1 -1
  448. package/src/barretenberg/testing/fields.ts +63 -0
  449. package/src/barretenberg_wasm/barretenberg_wasm_base/index.ts +1 -2
  450. package/src/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.ts +0 -2
  451. package/src/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.ts +0 -7
  452. package/src/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.ts +0 -2
  453. package/src/barretenberg_wasm/barretenberg_wasm_main/factory/node/main.worker.ts +0 -9
  454. package/src/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.ts +4 -4
  455. package/src/barretenberg_wasm/barretenberg_wasm_main/index.ts +37 -4
  456. package/src/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.ts +0 -2
  457. package/src/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.ts +0 -7
  458. package/src/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.ts +0 -2
  459. package/src/barretenberg_wasm/barretenberg_wasm_thread/factory/node/thread.worker.ts +0 -7
  460. package/src/barretenberg_wasm/barretenberg_wasm_thread/index.ts +3 -2
  461. package/src/barretenberg_wasm/helpers/browser/index.ts +8 -1
  462. package/src/barretenberg_wasm/helpers/node/index.ts +13 -6
  463. package/src/barretenberg_wasm/index.ts +1 -2
  464. package/src/bb_backends/browser/platform.ts +11 -0
  465. package/src/bb_backends/index.ts +12 -6
  466. package/src/bb_backends/node/index.ts +23 -10
  467. package/src/bb_backends/node/native_shm.ts +59 -40
  468. package/src/bb_backends/node/native_shm_async.ts +261 -0
  469. package/src/bb_backends/node/native_socket.ts +31 -18
  470. package/src/bb_backends/node/platform.ts +6 -1
  471. package/src/bb_backends/wasm.ts +1 -2
  472. package/src/bbapi/exception_handling.test.ts +54 -0
  473. package/src/bbapi_exception.ts +13 -0
  474. package/src/bin/index.ts +14 -0
  475. package/src/cbind/generate.ts +99 -0
  476. package/src/cbind/generated/api_types.ts +1267 -783
  477. package/src/cbind/generated/async.ts +308 -95
  478. package/src/cbind/generated/curve_constants.ts +53 -0
  479. package/src/cbind/generated/sync.ts +303 -95
  480. package/src/cbind/schema_compiler.ts +25 -3
  481. package/src/crs/node/index.ts +4 -5
  482. package/src/index.ts +32 -1
  483. package/dest/browser/bb_backends/sync_to_async_adapter.d.ts +0 -15
  484. package/dest/browser/bb_backends/sync_to_async_adapter.d.ts.map +0 -1
  485. package/dest/browser/bb_backends/sync_to_async_adapter.js +0 -20
  486. package/dest/browser/bigint-array/index.d.ts +0 -17
  487. package/dest/browser/bigint-array/index.d.ts.map +0 -1
  488. package/dest/browser/bigint-array/index.js +0 -37
  489. package/dest/browser/log/browser/index.d.ts +0 -6
  490. package/dest/browser/log/browser/index.d.ts.map +0 -1
  491. package/dest/browser/log/browser/index.js +0 -28
  492. package/dest/browser/log/index.d.ts +0 -2
  493. package/dest/browser/log/index.d.ts.map +0 -1
  494. package/dest/browser/log/index.js +0 -2
  495. package/dest/browser/log/types.d.ts +0 -6
  496. package/dest/browser/log/types.d.ts.map +0 -1
  497. package/dest/browser/log/types.js +0 -2
  498. package/dest/browser/serialize/buffer_reader.d.ts +0 -28
  499. package/dest/browser/serialize/buffer_reader.d.ts.map +0 -1
  500. package/dest/browser/serialize/buffer_reader.js +0 -66
  501. package/dest/browser/serialize/index.d.ts +0 -3
  502. package/dest/browser/serialize/index.d.ts.map +0 -1
  503. package/dest/browser/serialize/index.js +0 -3
  504. package/dest/browser/serialize/serialize.d.ts +0 -18
  505. package/dest/browser/serialize/serialize.d.ts.map +0 -1
  506. package/dest/browser/serialize/serialize.js +0 -72
  507. package/dest/browser/types/fields.d.ts +0 -43
  508. package/dest/browser/types/fields.d.ts.map +0 -1
  509. package/dest/browser/types/fields.js +0 -102
  510. package/dest/browser/types/index.d.ts +0 -3
  511. package/dest/browser/types/index.d.ts.map +0 -1
  512. package/dest/browser/types/index.js +0 -3
  513. package/dest/browser/types/point.d.ts +0 -16
  514. package/dest/browser/types/point.d.ts.map +0 -1
  515. package/dest/browser/types/point.js +0 -31
  516. package/dest/node/bb_backends/sync_to_async_adapter.d.ts +0 -15
  517. package/dest/node/bb_backends/sync_to_async_adapter.d.ts.map +0 -1
  518. package/dest/node/bb_backends/sync_to_async_adapter.js +0 -20
  519. package/dest/node/bigint-array/index.d.ts +0 -17
  520. package/dest/node/bigint-array/index.d.ts.map +0 -1
  521. package/dest/node/bigint-array/index.js +0 -37
  522. package/dest/node/log/browser/index.d.ts +0 -6
  523. package/dest/node/log/browser/index.d.ts.map +0 -1
  524. package/dest/node/log/browser/index.js +0 -28
  525. package/dest/node/log/index.d.ts +0 -2
  526. package/dest/node/log/index.d.ts.map +0 -1
  527. package/dest/node/log/index.js +0 -2
  528. package/dest/node/log/node/index.d.ts +0 -6
  529. package/dest/node/log/node/index.d.ts.map +0 -1
  530. package/dest/node/log/node/index.js +0 -40
  531. package/dest/node/log/types.d.ts +0 -6
  532. package/dest/node/log/types.d.ts.map +0 -1
  533. package/dest/node/log/types.js +0 -2
  534. package/dest/node/serialize/buffer_reader.d.ts +0 -28
  535. package/dest/node/serialize/buffer_reader.d.ts.map +0 -1
  536. package/dest/node/serialize/buffer_reader.js +0 -66
  537. package/dest/node/serialize/index.d.ts +0 -3
  538. package/dest/node/serialize/index.d.ts.map +0 -1
  539. package/dest/node/serialize/index.js +0 -3
  540. package/dest/node/serialize/serialize.d.ts +0 -18
  541. package/dest/node/serialize/serialize.d.ts.map +0 -1
  542. package/dest/node/serialize/serialize.js +0 -72
  543. package/dest/node/types/fields.d.ts +0 -43
  544. package/dest/node/types/fields.d.ts.map +0 -1
  545. package/dest/node/types/fields.js +0 -102
  546. package/dest/node/types/index.d.ts +0 -3
  547. package/dest/node/types/index.d.ts.map +0 -1
  548. package/dest/node/types/index.js +0 -3
  549. package/dest/node/types/point.d.ts +0 -16
  550. package/dest/node/types/point.d.ts.map +0 -1
  551. package/dest/node/types/point.js +0 -31
  552. package/dest/node-cjs/bb_backends/sync_to_async_adapter.d.ts +0 -15
  553. package/dest/node-cjs/bb_backends/sync_to_async_adapter.d.ts.map +0 -1
  554. package/dest/node-cjs/bb_backends/sync_to_async_adapter.js +0 -24
  555. package/dest/node-cjs/bigint-array/index.d.ts +0 -17
  556. package/dest/node-cjs/bigint-array/index.d.ts.map +0 -1
  557. package/dest/node-cjs/bigint-array/index.js +0 -43
  558. package/dest/node-cjs/log/browser/index.d.ts +0 -6
  559. package/dest/node-cjs/log/browser/index.d.ts.map +0 -1
  560. package/dest/node-cjs/log/browser/index.js +0 -30
  561. package/dest/node-cjs/log/index.d.ts +0 -2
  562. package/dest/node-cjs/log/index.d.ts.map +0 -1
  563. package/dest/node-cjs/log/index.js +0 -8
  564. package/dest/node-cjs/log/node/index.d.ts +0 -6
  565. package/dest/node-cjs/log/node/index.d.ts.map +0 -1
  566. package/dest/node-cjs/log/node/index.js +0 -42
  567. package/dest/node-cjs/log/types.d.ts +0 -6
  568. package/dest/node-cjs/log/types.d.ts.map +0 -1
  569. package/dest/node-cjs/log/types.js +0 -3
  570. package/dest/node-cjs/serialize/buffer_reader.d.ts +0 -28
  571. package/dest/node-cjs/serialize/buffer_reader.d.ts.map +0 -1
  572. package/dest/node-cjs/serialize/buffer_reader.js +0 -70
  573. package/dest/node-cjs/serialize/index.d.ts +0 -3
  574. package/dest/node-cjs/serialize/index.d.ts.map +0 -1
  575. package/dest/node-cjs/serialize/index.js +0 -6
  576. package/dest/node-cjs/serialize/serialize.d.ts +0 -18
  577. package/dest/node-cjs/serialize/serialize.d.ts.map +0 -1
  578. package/dest/node-cjs/serialize/serialize.js +0 -82
  579. package/dest/node-cjs/types/fields.d.ts +0 -43
  580. package/dest/node-cjs/types/fields.d.ts.map +0 -1
  581. package/dest/node-cjs/types/fields.js +0 -107
  582. package/dest/node-cjs/types/index.d.ts +0 -3
  583. package/dest/node-cjs/types/index.d.ts.map +0 -1
  584. package/dest/node-cjs/types/index.js +0 -6
  585. package/dest/node-cjs/types/point.d.ts +0 -16
  586. package/dest/node-cjs/types/point.d.ts.map +0 -1
  587. package/dest/node-cjs/types/point.js +0 -35
  588. package/src/bb_backends/sync_to_async_adapter.ts +0 -21
  589. package/src/log/browser/index.ts +0 -35
  590. package/src/log/index.ts +0 -1
  591. package/src/log/node/index.ts +0 -52
  592. package/src/log/types.ts +0 -6
  593. package/src/serialize/buffer_reader.ts +0 -85
  594. package/src/serialize/index.ts +0 -2
  595. package/src/serialize/serialize.ts +0 -75
  596. package/src/types/fields.ts +0 -126
  597. package/src/types/index.ts +0 -2
  598. package/src/types/point.ts +0 -38
  599. /package/src/{bigint-array/index.ts → barretenberg/testing/bigint-buffer.ts} +0 -0
@@ -3,401 +3,605 @@
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.SyncApi = void 0;
5
5
  const msgpackr_1 = require("msgpackr");
6
+ const bbapi_exception_js_1 = require("../../bbapi_exception.js");
6
7
  const api_types_js_1 = require("./api_types.js");
7
8
  function msgpackCall(backend, input) { const inputBuffer = new msgpackr_1.Encoder({ useRecords: false }).pack(input); const encodedResult = backend.call(inputBuffer); return new msgpackr_1.Decoder({ useRecords: false }).unpack(encodedResult); }
8
9
  class SyncApi {
10
+ backend;
9
11
  constructor(backend) {
10
12
  this.backend = backend;
11
13
  }
12
14
  circuitProve(command) {
13
15
  const msgpackCommand = (0, api_types_js_1.fromCircuitProve)(command);
14
16
  const [variantName, result] = msgpackCall(this.backend, [["CircuitProve", msgpackCommand]]);
17
+ if (variantName === 'ErrorResponse') {
18
+ throw new bbapi_exception_js_1.BBApiException(result.message || 'Unknown error from barretenberg');
19
+ }
15
20
  if (variantName !== 'CircuitProveResponse') {
16
- throw new Error(`Expected variant name 'CircuitProveResponse' but got '${variantName}'`);
21
+ throw new bbapi_exception_js_1.BBApiException(`Expected variant name 'CircuitProveResponse' but got '${variantName}'`);
17
22
  }
18
23
  return (0, api_types_js_1.toCircuitProveResponse)(result);
19
24
  }
20
25
  circuitComputeVk(command) {
21
26
  const msgpackCommand = (0, api_types_js_1.fromCircuitComputeVk)(command);
22
27
  const [variantName, result] = msgpackCall(this.backend, [["CircuitComputeVk", msgpackCommand]]);
28
+ if (variantName === 'ErrorResponse') {
29
+ throw new bbapi_exception_js_1.BBApiException(result.message || 'Unknown error from barretenberg');
30
+ }
23
31
  if (variantName !== 'CircuitComputeVkResponse') {
24
- throw new Error(`Expected variant name 'CircuitComputeVkResponse' but got '${variantName}'`);
32
+ throw new bbapi_exception_js_1.BBApiException(`Expected variant name 'CircuitComputeVkResponse' but got '${variantName}'`);
25
33
  }
26
34
  return (0, api_types_js_1.toCircuitComputeVkResponse)(result);
27
35
  }
28
36
  circuitStats(command) {
29
37
  const msgpackCommand = (0, api_types_js_1.fromCircuitStats)(command);
30
38
  const [variantName, result] = msgpackCall(this.backend, [["CircuitStats", msgpackCommand]]);
39
+ if (variantName === 'ErrorResponse') {
40
+ throw new bbapi_exception_js_1.BBApiException(result.message || 'Unknown error from barretenberg');
41
+ }
31
42
  if (variantName !== 'CircuitInfoResponse') {
32
- throw new Error(`Expected variant name 'CircuitInfoResponse' but got '${variantName}'`);
43
+ throw new bbapi_exception_js_1.BBApiException(`Expected variant name 'CircuitInfoResponse' but got '${variantName}'`);
33
44
  }
34
45
  return (0, api_types_js_1.toCircuitInfoResponse)(result);
35
46
  }
36
47
  circuitVerify(command) {
37
48
  const msgpackCommand = (0, api_types_js_1.fromCircuitVerify)(command);
38
49
  const [variantName, result] = msgpackCall(this.backend, [["CircuitVerify", msgpackCommand]]);
50
+ if (variantName === 'ErrorResponse') {
51
+ throw new bbapi_exception_js_1.BBApiException(result.message || 'Unknown error from barretenberg');
52
+ }
39
53
  if (variantName !== 'CircuitVerifyResponse') {
40
- throw new Error(`Expected variant name 'CircuitVerifyResponse' but got '${variantName}'`);
54
+ throw new bbapi_exception_js_1.BBApiException(`Expected variant name 'CircuitVerifyResponse' but got '${variantName}'`);
41
55
  }
42
56
  return (0, api_types_js_1.toCircuitVerifyResponse)(result);
43
57
  }
44
- clientIvcComputeStandaloneVk(command) {
45
- const msgpackCommand = (0, api_types_js_1.fromClientIvcComputeStandaloneVk)(command);
46
- const [variantName, result] = msgpackCall(this.backend, [["ClientIvcComputeStandaloneVk", msgpackCommand]]);
47
- if (variantName !== 'ClientIvcComputeStandaloneVkResponse') {
48
- throw new Error(`Expected variant name 'ClientIvcComputeStandaloneVkResponse' but got '${variantName}'`);
58
+ chonkComputeStandaloneVk(command) {
59
+ const msgpackCommand = (0, api_types_js_1.fromChonkComputeStandaloneVk)(command);
60
+ const [variantName, result] = msgpackCall(this.backend, [["ChonkComputeStandaloneVk", msgpackCommand]]);
61
+ if (variantName === 'ErrorResponse') {
62
+ throw new bbapi_exception_js_1.BBApiException(result.message || 'Unknown error from barretenberg');
49
63
  }
50
- return (0, api_types_js_1.toClientIvcComputeStandaloneVkResponse)(result);
64
+ if (variantName !== 'ChonkComputeStandaloneVkResponse') {
65
+ throw new bbapi_exception_js_1.BBApiException(`Expected variant name 'ChonkComputeStandaloneVkResponse' but got '${variantName}'`);
66
+ }
67
+ return (0, api_types_js_1.toChonkComputeStandaloneVkResponse)(result);
51
68
  }
52
- clientIvcComputeIvcVk(command) {
53
- const msgpackCommand = (0, api_types_js_1.fromClientIvcComputeIvcVk)(command);
54
- const [variantName, result] = msgpackCall(this.backend, [["ClientIvcComputeIvcVk", msgpackCommand]]);
55
- if (variantName !== 'ClientIvcComputeIvcVkResponse') {
56
- throw new Error(`Expected variant name 'ClientIvcComputeIvcVkResponse' but got '${variantName}'`);
69
+ chonkComputeIvcVk(command) {
70
+ const msgpackCommand = (0, api_types_js_1.fromChonkComputeIvcVk)(command);
71
+ const [variantName, result] = msgpackCall(this.backend, [["ChonkComputeIvcVk", msgpackCommand]]);
72
+ if (variantName === 'ErrorResponse') {
73
+ throw new bbapi_exception_js_1.BBApiException(result.message || 'Unknown error from barretenberg');
74
+ }
75
+ if (variantName !== 'ChonkComputeIvcVkResponse') {
76
+ throw new bbapi_exception_js_1.BBApiException(`Expected variant name 'ChonkComputeIvcVkResponse' but got '${variantName}'`);
57
77
  }
58
- return (0, api_types_js_1.toClientIvcComputeIvcVkResponse)(result);
78
+ return (0, api_types_js_1.toChonkComputeIvcVkResponse)(result);
59
79
  }
60
- clientIvcStart(command) {
61
- const msgpackCommand = (0, api_types_js_1.fromClientIvcStart)(command);
62
- const [variantName, result] = msgpackCall(this.backend, [["ClientIvcStart", msgpackCommand]]);
63
- if (variantName !== 'ClientIvcStartResponse') {
64
- throw new Error(`Expected variant name 'ClientIvcStartResponse' but got '${variantName}'`);
80
+ chonkStart(command) {
81
+ const msgpackCommand = (0, api_types_js_1.fromChonkStart)(command);
82
+ const [variantName, result] = msgpackCall(this.backend, [["ChonkStart", msgpackCommand]]);
83
+ if (variantName === 'ErrorResponse') {
84
+ throw new bbapi_exception_js_1.BBApiException(result.message || 'Unknown error from barretenberg');
65
85
  }
66
- return (0, api_types_js_1.toClientIvcStartResponse)(result);
86
+ if (variantName !== 'ChonkStartResponse') {
87
+ throw new bbapi_exception_js_1.BBApiException(`Expected variant name 'ChonkStartResponse' but got '${variantName}'`);
88
+ }
89
+ return (0, api_types_js_1.toChonkStartResponse)(result);
67
90
  }
68
- clientIvcLoad(command) {
69
- const msgpackCommand = (0, api_types_js_1.fromClientIvcLoad)(command);
70
- const [variantName, result] = msgpackCall(this.backend, [["ClientIvcLoad", msgpackCommand]]);
71
- if (variantName !== 'ClientIvcLoadResponse') {
72
- throw new Error(`Expected variant name 'ClientIvcLoadResponse' but got '${variantName}'`);
91
+ chonkLoad(command) {
92
+ const msgpackCommand = (0, api_types_js_1.fromChonkLoad)(command);
93
+ const [variantName, result] = msgpackCall(this.backend, [["ChonkLoad", msgpackCommand]]);
94
+ if (variantName === 'ErrorResponse') {
95
+ throw new bbapi_exception_js_1.BBApiException(result.message || 'Unknown error from barretenberg');
96
+ }
97
+ if (variantName !== 'ChonkLoadResponse') {
98
+ throw new bbapi_exception_js_1.BBApiException(`Expected variant name 'ChonkLoadResponse' but got '${variantName}'`);
73
99
  }
74
- return (0, api_types_js_1.toClientIvcLoadResponse)(result);
100
+ return (0, api_types_js_1.toChonkLoadResponse)(result);
75
101
  }
76
- clientIvcAccumulate(command) {
77
- const msgpackCommand = (0, api_types_js_1.fromClientIvcAccumulate)(command);
78
- const [variantName, result] = msgpackCall(this.backend, [["ClientIvcAccumulate", msgpackCommand]]);
79
- if (variantName !== 'ClientIvcAccumulateResponse') {
80
- throw new Error(`Expected variant name 'ClientIvcAccumulateResponse' but got '${variantName}'`);
102
+ chonkAccumulate(command) {
103
+ const msgpackCommand = (0, api_types_js_1.fromChonkAccumulate)(command);
104
+ const [variantName, result] = msgpackCall(this.backend, [["ChonkAccumulate", msgpackCommand]]);
105
+ if (variantName === 'ErrorResponse') {
106
+ throw new bbapi_exception_js_1.BBApiException(result.message || 'Unknown error from barretenberg');
81
107
  }
82
- return (0, api_types_js_1.toClientIvcAccumulateResponse)(result);
108
+ if (variantName !== 'ChonkAccumulateResponse') {
109
+ throw new bbapi_exception_js_1.BBApiException(`Expected variant name 'ChonkAccumulateResponse' but got '${variantName}'`);
110
+ }
111
+ return (0, api_types_js_1.toChonkAccumulateResponse)(result);
83
112
  }
84
- clientIvcProve(command) {
85
- const msgpackCommand = (0, api_types_js_1.fromClientIvcProve)(command);
86
- const [variantName, result] = msgpackCall(this.backend, [["ClientIvcProve", msgpackCommand]]);
87
- if (variantName !== 'ClientIvcProveResponse') {
88
- throw new Error(`Expected variant name 'ClientIvcProveResponse' but got '${variantName}'`);
113
+ chonkProve(command) {
114
+ const msgpackCommand = (0, api_types_js_1.fromChonkProve)(command);
115
+ const [variantName, result] = msgpackCall(this.backend, [["ChonkProve", msgpackCommand]]);
116
+ if (variantName === 'ErrorResponse') {
117
+ throw new bbapi_exception_js_1.BBApiException(result.message || 'Unknown error from barretenberg');
118
+ }
119
+ if (variantName !== 'ChonkProveResponse') {
120
+ throw new bbapi_exception_js_1.BBApiException(`Expected variant name 'ChonkProveResponse' but got '${variantName}'`);
89
121
  }
90
- return (0, api_types_js_1.toClientIvcProveResponse)(result);
122
+ return (0, api_types_js_1.toChonkProveResponse)(result);
91
123
  }
92
- clientIvcVerify(command) {
93
- const msgpackCommand = (0, api_types_js_1.fromClientIvcVerify)(command);
94
- const [variantName, result] = msgpackCall(this.backend, [["ClientIvcVerify", msgpackCommand]]);
95
- if (variantName !== 'ClientIvcVerifyResponse') {
96
- throw new Error(`Expected variant name 'ClientIvcVerifyResponse' but got '${variantName}'`);
124
+ chonkVerify(command) {
125
+ const msgpackCommand = (0, api_types_js_1.fromChonkVerify)(command);
126
+ const [variantName, result] = msgpackCall(this.backend, [["ChonkVerify", msgpackCommand]]);
127
+ if (variantName === 'ErrorResponse') {
128
+ throw new bbapi_exception_js_1.BBApiException(result.message || 'Unknown error from barretenberg');
97
129
  }
98
- return (0, api_types_js_1.toClientIvcVerifyResponse)(result);
130
+ if (variantName !== 'ChonkVerifyResponse') {
131
+ throw new bbapi_exception_js_1.BBApiException(`Expected variant name 'ChonkVerifyResponse' but got '${variantName}'`);
132
+ }
133
+ return (0, api_types_js_1.toChonkVerifyResponse)(result);
99
134
  }
100
135
  vkAsFields(command) {
101
136
  const msgpackCommand = (0, api_types_js_1.fromVkAsFields)(command);
102
137
  const [variantName, result] = msgpackCall(this.backend, [["VkAsFields", msgpackCommand]]);
138
+ if (variantName === 'ErrorResponse') {
139
+ throw new bbapi_exception_js_1.BBApiException(result.message || 'Unknown error from barretenberg');
140
+ }
103
141
  if (variantName !== 'VkAsFieldsResponse') {
104
- throw new Error(`Expected variant name 'VkAsFieldsResponse' but got '${variantName}'`);
142
+ throw new bbapi_exception_js_1.BBApiException(`Expected variant name 'VkAsFieldsResponse' but got '${variantName}'`);
105
143
  }
106
144
  return (0, api_types_js_1.toVkAsFieldsResponse)(result);
107
145
  }
108
146
  megaVkAsFields(command) {
109
147
  const msgpackCommand = (0, api_types_js_1.fromMegaVkAsFields)(command);
110
148
  const [variantName, result] = msgpackCall(this.backend, [["MegaVkAsFields", msgpackCommand]]);
149
+ if (variantName === 'ErrorResponse') {
150
+ throw new bbapi_exception_js_1.BBApiException(result.message || 'Unknown error from barretenberg');
151
+ }
111
152
  if (variantName !== 'MegaVkAsFieldsResponse') {
112
- throw new Error(`Expected variant name 'MegaVkAsFieldsResponse' but got '${variantName}'`);
153
+ throw new bbapi_exception_js_1.BBApiException(`Expected variant name 'MegaVkAsFieldsResponse' but got '${variantName}'`);
113
154
  }
114
155
  return (0, api_types_js_1.toMegaVkAsFieldsResponse)(result);
115
156
  }
116
157
  circuitWriteSolidityVerifier(command) {
117
158
  const msgpackCommand = (0, api_types_js_1.fromCircuitWriteSolidityVerifier)(command);
118
159
  const [variantName, result] = msgpackCall(this.backend, [["CircuitWriteSolidityVerifier", msgpackCommand]]);
160
+ if (variantName === 'ErrorResponse') {
161
+ throw new bbapi_exception_js_1.BBApiException(result.message || 'Unknown error from barretenberg');
162
+ }
119
163
  if (variantName !== 'CircuitWriteSolidityVerifierResponse') {
120
- throw new Error(`Expected variant name 'CircuitWriteSolidityVerifierResponse' but got '${variantName}'`);
164
+ throw new bbapi_exception_js_1.BBApiException(`Expected variant name 'CircuitWriteSolidityVerifierResponse' but got '${variantName}'`);
121
165
  }
122
166
  return (0, api_types_js_1.toCircuitWriteSolidityVerifierResponse)(result);
123
167
  }
124
- clientIvcCheckPrecomputedVk(command) {
125
- const msgpackCommand = (0, api_types_js_1.fromClientIvcCheckPrecomputedVk)(command);
126
- const [variantName, result] = msgpackCall(this.backend, [["ClientIvcCheckPrecomputedVk", msgpackCommand]]);
127
- if (variantName !== 'ClientIvcCheckPrecomputedVkResponse') {
128
- throw new Error(`Expected variant name 'ClientIvcCheckPrecomputedVkResponse' but got '${variantName}'`);
168
+ chonkCheckPrecomputedVk(command) {
169
+ const msgpackCommand = (0, api_types_js_1.fromChonkCheckPrecomputedVk)(command);
170
+ const [variantName, result] = msgpackCall(this.backend, [["ChonkCheckPrecomputedVk", msgpackCommand]]);
171
+ if (variantName === 'ErrorResponse') {
172
+ throw new bbapi_exception_js_1.BBApiException(result.message || 'Unknown error from barretenberg');
129
173
  }
130
- return (0, api_types_js_1.toClientIvcCheckPrecomputedVkResponse)(result);
174
+ if (variantName !== 'ChonkCheckPrecomputedVkResponse') {
175
+ throw new bbapi_exception_js_1.BBApiException(`Expected variant name 'ChonkCheckPrecomputedVkResponse' but got '${variantName}'`);
176
+ }
177
+ return (0, api_types_js_1.toChonkCheckPrecomputedVkResponse)(result);
131
178
  }
132
- clientIvcStats(command) {
133
- const msgpackCommand = (0, api_types_js_1.fromClientIvcStats)(command);
134
- const [variantName, result] = msgpackCall(this.backend, [["ClientIvcStats", msgpackCommand]]);
135
- if (variantName !== 'ClientIvcStatsResponse') {
136
- throw new Error(`Expected variant name 'ClientIvcStatsResponse' but got '${variantName}'`);
179
+ chonkStats(command) {
180
+ const msgpackCommand = (0, api_types_js_1.fromChonkStats)(command);
181
+ const [variantName, result] = msgpackCall(this.backend, [["ChonkStats", msgpackCommand]]);
182
+ if (variantName === 'ErrorResponse') {
183
+ throw new bbapi_exception_js_1.BBApiException(result.message || 'Unknown error from barretenberg');
184
+ }
185
+ if (variantName !== 'ChonkStatsResponse') {
186
+ throw new bbapi_exception_js_1.BBApiException(`Expected variant name 'ChonkStatsResponse' but got '${variantName}'`);
137
187
  }
138
- return (0, api_types_js_1.toClientIvcStatsResponse)(result);
188
+ return (0, api_types_js_1.toChonkStatsResponse)(result);
139
189
  }
140
190
  poseidon2Hash(command) {
141
191
  const msgpackCommand = (0, api_types_js_1.fromPoseidon2Hash)(command);
142
192
  const [variantName, result] = msgpackCall(this.backend, [["Poseidon2Hash", msgpackCommand]]);
193
+ if (variantName === 'ErrorResponse') {
194
+ throw new bbapi_exception_js_1.BBApiException(result.message || 'Unknown error from barretenberg');
195
+ }
143
196
  if (variantName !== 'Poseidon2HashResponse') {
144
- throw new Error(`Expected variant name 'Poseidon2HashResponse' but got '${variantName}'`);
197
+ throw new bbapi_exception_js_1.BBApiException(`Expected variant name 'Poseidon2HashResponse' but got '${variantName}'`);
145
198
  }
146
199
  return (0, api_types_js_1.toPoseidon2HashResponse)(result);
147
200
  }
148
201
  poseidon2Permutation(command) {
149
202
  const msgpackCommand = (0, api_types_js_1.fromPoseidon2Permutation)(command);
150
203
  const [variantName, result] = msgpackCall(this.backend, [["Poseidon2Permutation", msgpackCommand]]);
204
+ if (variantName === 'ErrorResponse') {
205
+ throw new bbapi_exception_js_1.BBApiException(result.message || 'Unknown error from barretenberg');
206
+ }
151
207
  if (variantName !== 'Poseidon2PermutationResponse') {
152
- throw new Error(`Expected variant name 'Poseidon2PermutationResponse' but got '${variantName}'`);
208
+ throw new bbapi_exception_js_1.BBApiException(`Expected variant name 'Poseidon2PermutationResponse' but got '${variantName}'`);
153
209
  }
154
210
  return (0, api_types_js_1.toPoseidon2PermutationResponse)(result);
155
211
  }
156
212
  poseidon2HashAccumulate(command) {
157
213
  const msgpackCommand = (0, api_types_js_1.fromPoseidon2HashAccumulate)(command);
158
214
  const [variantName, result] = msgpackCall(this.backend, [["Poseidon2HashAccumulate", msgpackCommand]]);
215
+ if (variantName === 'ErrorResponse') {
216
+ throw new bbapi_exception_js_1.BBApiException(result.message || 'Unknown error from barretenberg');
217
+ }
159
218
  if (variantName !== 'Poseidon2HashAccumulateResponse') {
160
- throw new Error(`Expected variant name 'Poseidon2HashAccumulateResponse' but got '${variantName}'`);
219
+ throw new bbapi_exception_js_1.BBApiException(`Expected variant name 'Poseidon2HashAccumulateResponse' but got '${variantName}'`);
161
220
  }
162
221
  return (0, api_types_js_1.toPoseidon2HashAccumulateResponse)(result);
163
222
  }
164
223
  pedersenCommit(command) {
165
224
  const msgpackCommand = (0, api_types_js_1.fromPedersenCommit)(command);
166
225
  const [variantName, result] = msgpackCall(this.backend, [["PedersenCommit", msgpackCommand]]);
226
+ if (variantName === 'ErrorResponse') {
227
+ throw new bbapi_exception_js_1.BBApiException(result.message || 'Unknown error from barretenberg');
228
+ }
167
229
  if (variantName !== 'PedersenCommitResponse') {
168
- throw new Error(`Expected variant name 'PedersenCommitResponse' but got '${variantName}'`);
230
+ throw new bbapi_exception_js_1.BBApiException(`Expected variant name 'PedersenCommitResponse' but got '${variantName}'`);
169
231
  }
170
232
  return (0, api_types_js_1.toPedersenCommitResponse)(result);
171
233
  }
172
234
  pedersenHash(command) {
173
235
  const msgpackCommand = (0, api_types_js_1.fromPedersenHash)(command);
174
236
  const [variantName, result] = msgpackCall(this.backend, [["PedersenHash", msgpackCommand]]);
237
+ if (variantName === 'ErrorResponse') {
238
+ throw new bbapi_exception_js_1.BBApiException(result.message || 'Unknown error from barretenberg');
239
+ }
175
240
  if (variantName !== 'PedersenHashResponse') {
176
- throw new Error(`Expected variant name 'PedersenHashResponse' but got '${variantName}'`);
241
+ throw new bbapi_exception_js_1.BBApiException(`Expected variant name 'PedersenHashResponse' but got '${variantName}'`);
177
242
  }
178
243
  return (0, api_types_js_1.toPedersenHashResponse)(result);
179
244
  }
180
245
  pedersenHashBuffer(command) {
181
246
  const msgpackCommand = (0, api_types_js_1.fromPedersenHashBuffer)(command);
182
247
  const [variantName, result] = msgpackCall(this.backend, [["PedersenHashBuffer", msgpackCommand]]);
248
+ if (variantName === 'ErrorResponse') {
249
+ throw new bbapi_exception_js_1.BBApiException(result.message || 'Unknown error from barretenberg');
250
+ }
183
251
  if (variantName !== 'PedersenHashBufferResponse') {
184
- throw new Error(`Expected variant name 'PedersenHashBufferResponse' but got '${variantName}'`);
252
+ throw new bbapi_exception_js_1.BBApiException(`Expected variant name 'PedersenHashBufferResponse' but got '${variantName}'`);
185
253
  }
186
254
  return (0, api_types_js_1.toPedersenHashBufferResponse)(result);
187
255
  }
188
256
  blake2s(command) {
189
257
  const msgpackCommand = (0, api_types_js_1.fromBlake2s)(command);
190
258
  const [variantName, result] = msgpackCall(this.backend, [["Blake2s", msgpackCommand]]);
259
+ if (variantName === 'ErrorResponse') {
260
+ throw new bbapi_exception_js_1.BBApiException(result.message || 'Unknown error from barretenberg');
261
+ }
191
262
  if (variantName !== 'Blake2sResponse') {
192
- throw new Error(`Expected variant name 'Blake2sResponse' but got '${variantName}'`);
263
+ throw new bbapi_exception_js_1.BBApiException(`Expected variant name 'Blake2sResponse' but got '${variantName}'`);
193
264
  }
194
265
  return (0, api_types_js_1.toBlake2sResponse)(result);
195
266
  }
196
267
  blake2sToField(command) {
197
268
  const msgpackCommand = (0, api_types_js_1.fromBlake2sToField)(command);
198
269
  const [variantName, result] = msgpackCall(this.backend, [["Blake2sToField", msgpackCommand]]);
270
+ if (variantName === 'ErrorResponse') {
271
+ throw new bbapi_exception_js_1.BBApiException(result.message || 'Unknown error from barretenberg');
272
+ }
199
273
  if (variantName !== 'Blake2sToFieldResponse') {
200
- throw new Error(`Expected variant name 'Blake2sToFieldResponse' but got '${variantName}'`);
274
+ throw new bbapi_exception_js_1.BBApiException(`Expected variant name 'Blake2sToFieldResponse' but got '${variantName}'`);
201
275
  }
202
276
  return (0, api_types_js_1.toBlake2sToFieldResponse)(result);
203
277
  }
204
278
  aesEncrypt(command) {
205
279
  const msgpackCommand = (0, api_types_js_1.fromAesEncrypt)(command);
206
280
  const [variantName, result] = msgpackCall(this.backend, [["AesEncrypt", msgpackCommand]]);
281
+ if (variantName === 'ErrorResponse') {
282
+ throw new bbapi_exception_js_1.BBApiException(result.message || 'Unknown error from barretenberg');
283
+ }
207
284
  if (variantName !== 'AesEncryptResponse') {
208
- throw new Error(`Expected variant name 'AesEncryptResponse' but got '${variantName}'`);
285
+ throw new bbapi_exception_js_1.BBApiException(`Expected variant name 'AesEncryptResponse' but got '${variantName}'`);
209
286
  }
210
287
  return (0, api_types_js_1.toAesEncryptResponse)(result);
211
288
  }
212
289
  aesDecrypt(command) {
213
290
  const msgpackCommand = (0, api_types_js_1.fromAesDecrypt)(command);
214
291
  const [variantName, result] = msgpackCall(this.backend, [["AesDecrypt", msgpackCommand]]);
292
+ if (variantName === 'ErrorResponse') {
293
+ throw new bbapi_exception_js_1.BBApiException(result.message || 'Unknown error from barretenberg');
294
+ }
215
295
  if (variantName !== 'AesDecryptResponse') {
216
- throw new Error(`Expected variant name 'AesDecryptResponse' but got '${variantName}'`);
296
+ throw new bbapi_exception_js_1.BBApiException(`Expected variant name 'AesDecryptResponse' but got '${variantName}'`);
217
297
  }
218
298
  return (0, api_types_js_1.toAesDecryptResponse)(result);
219
299
  }
220
300
  grumpkinMul(command) {
221
301
  const msgpackCommand = (0, api_types_js_1.fromGrumpkinMul)(command);
222
302
  const [variantName, result] = msgpackCall(this.backend, [["GrumpkinMul", msgpackCommand]]);
303
+ if (variantName === 'ErrorResponse') {
304
+ throw new bbapi_exception_js_1.BBApiException(result.message || 'Unknown error from barretenberg');
305
+ }
223
306
  if (variantName !== 'GrumpkinMulResponse') {
224
- throw new Error(`Expected variant name 'GrumpkinMulResponse' but got '${variantName}'`);
307
+ throw new bbapi_exception_js_1.BBApiException(`Expected variant name 'GrumpkinMulResponse' but got '${variantName}'`);
225
308
  }
226
309
  return (0, api_types_js_1.toGrumpkinMulResponse)(result);
227
310
  }
228
311
  grumpkinAdd(command) {
229
312
  const msgpackCommand = (0, api_types_js_1.fromGrumpkinAdd)(command);
230
313
  const [variantName, result] = msgpackCall(this.backend, [["GrumpkinAdd", msgpackCommand]]);
314
+ if (variantName === 'ErrorResponse') {
315
+ throw new bbapi_exception_js_1.BBApiException(result.message || 'Unknown error from barretenberg');
316
+ }
231
317
  if (variantName !== 'GrumpkinAddResponse') {
232
- throw new Error(`Expected variant name 'GrumpkinAddResponse' but got '${variantName}'`);
318
+ throw new bbapi_exception_js_1.BBApiException(`Expected variant name 'GrumpkinAddResponse' but got '${variantName}'`);
233
319
  }
234
320
  return (0, api_types_js_1.toGrumpkinAddResponse)(result);
235
321
  }
236
322
  grumpkinBatchMul(command) {
237
323
  const msgpackCommand = (0, api_types_js_1.fromGrumpkinBatchMul)(command);
238
324
  const [variantName, result] = msgpackCall(this.backend, [["GrumpkinBatchMul", msgpackCommand]]);
325
+ if (variantName === 'ErrorResponse') {
326
+ throw new bbapi_exception_js_1.BBApiException(result.message || 'Unknown error from barretenberg');
327
+ }
239
328
  if (variantName !== 'GrumpkinBatchMulResponse') {
240
- throw new Error(`Expected variant name 'GrumpkinBatchMulResponse' but got '${variantName}'`);
329
+ throw new bbapi_exception_js_1.BBApiException(`Expected variant name 'GrumpkinBatchMulResponse' but got '${variantName}'`);
241
330
  }
242
331
  return (0, api_types_js_1.toGrumpkinBatchMulResponse)(result);
243
332
  }
244
333
  grumpkinGetRandomFr(command) {
245
334
  const msgpackCommand = (0, api_types_js_1.fromGrumpkinGetRandomFr)(command);
246
335
  const [variantName, result] = msgpackCall(this.backend, [["GrumpkinGetRandomFr", msgpackCommand]]);
336
+ if (variantName === 'ErrorResponse') {
337
+ throw new bbapi_exception_js_1.BBApiException(result.message || 'Unknown error from barretenberg');
338
+ }
247
339
  if (variantName !== 'GrumpkinGetRandomFrResponse') {
248
- throw new Error(`Expected variant name 'GrumpkinGetRandomFrResponse' but got '${variantName}'`);
340
+ throw new bbapi_exception_js_1.BBApiException(`Expected variant name 'GrumpkinGetRandomFrResponse' but got '${variantName}'`);
249
341
  }
250
342
  return (0, api_types_js_1.toGrumpkinGetRandomFrResponse)(result);
251
343
  }
252
344
  grumpkinReduce512(command) {
253
345
  const msgpackCommand = (0, api_types_js_1.fromGrumpkinReduce512)(command);
254
346
  const [variantName, result] = msgpackCall(this.backend, [["GrumpkinReduce512", msgpackCommand]]);
347
+ if (variantName === 'ErrorResponse') {
348
+ throw new bbapi_exception_js_1.BBApiException(result.message || 'Unknown error from barretenberg');
349
+ }
255
350
  if (variantName !== 'GrumpkinReduce512Response') {
256
- throw new Error(`Expected variant name 'GrumpkinReduce512Response' but got '${variantName}'`);
351
+ throw new bbapi_exception_js_1.BBApiException(`Expected variant name 'GrumpkinReduce512Response' but got '${variantName}'`);
257
352
  }
258
353
  return (0, api_types_js_1.toGrumpkinReduce512Response)(result);
259
354
  }
260
355
  secp256k1Mul(command) {
261
356
  const msgpackCommand = (0, api_types_js_1.fromSecp256k1Mul)(command);
262
357
  const [variantName, result] = msgpackCall(this.backend, [["Secp256k1Mul", msgpackCommand]]);
358
+ if (variantName === 'ErrorResponse') {
359
+ throw new bbapi_exception_js_1.BBApiException(result.message || 'Unknown error from barretenberg');
360
+ }
263
361
  if (variantName !== 'Secp256k1MulResponse') {
264
- throw new Error(`Expected variant name 'Secp256k1MulResponse' but got '${variantName}'`);
362
+ throw new bbapi_exception_js_1.BBApiException(`Expected variant name 'Secp256k1MulResponse' but got '${variantName}'`);
265
363
  }
266
364
  return (0, api_types_js_1.toSecp256k1MulResponse)(result);
267
365
  }
268
366
  secp256k1GetRandomFr(command) {
269
367
  const msgpackCommand = (0, api_types_js_1.fromSecp256k1GetRandomFr)(command);
270
368
  const [variantName, result] = msgpackCall(this.backend, [["Secp256k1GetRandomFr", msgpackCommand]]);
369
+ if (variantName === 'ErrorResponse') {
370
+ throw new bbapi_exception_js_1.BBApiException(result.message || 'Unknown error from barretenberg');
371
+ }
271
372
  if (variantName !== 'Secp256k1GetRandomFrResponse') {
272
- throw new Error(`Expected variant name 'Secp256k1GetRandomFrResponse' but got '${variantName}'`);
373
+ throw new bbapi_exception_js_1.BBApiException(`Expected variant name 'Secp256k1GetRandomFrResponse' but got '${variantName}'`);
273
374
  }
274
375
  return (0, api_types_js_1.toSecp256k1GetRandomFrResponse)(result);
275
376
  }
276
377
  secp256k1Reduce512(command) {
277
378
  const msgpackCommand = (0, api_types_js_1.fromSecp256k1Reduce512)(command);
278
379
  const [variantName, result] = msgpackCall(this.backend, [["Secp256k1Reduce512", msgpackCommand]]);
380
+ if (variantName === 'ErrorResponse') {
381
+ throw new bbapi_exception_js_1.BBApiException(result.message || 'Unknown error from barretenberg');
382
+ }
279
383
  if (variantName !== 'Secp256k1Reduce512Response') {
280
- throw new Error(`Expected variant name 'Secp256k1Reduce512Response' but got '${variantName}'`);
384
+ throw new bbapi_exception_js_1.BBApiException(`Expected variant name 'Secp256k1Reduce512Response' but got '${variantName}'`);
281
385
  }
282
386
  return (0, api_types_js_1.toSecp256k1Reduce512Response)(result);
283
387
  }
284
388
  bn254FrSqrt(command) {
285
389
  const msgpackCommand = (0, api_types_js_1.fromBn254FrSqrt)(command);
286
390
  const [variantName, result] = msgpackCall(this.backend, [["Bn254FrSqrt", msgpackCommand]]);
391
+ if (variantName === 'ErrorResponse') {
392
+ throw new bbapi_exception_js_1.BBApiException(result.message || 'Unknown error from barretenberg');
393
+ }
287
394
  if (variantName !== 'Bn254FrSqrtResponse') {
288
- throw new Error(`Expected variant name 'Bn254FrSqrtResponse' but got '${variantName}'`);
395
+ throw new bbapi_exception_js_1.BBApiException(`Expected variant name 'Bn254FrSqrtResponse' but got '${variantName}'`);
289
396
  }
290
397
  return (0, api_types_js_1.toBn254FrSqrtResponse)(result);
291
398
  }
399
+ bn254FqSqrt(command) {
400
+ const msgpackCommand = (0, api_types_js_1.fromBn254FqSqrt)(command);
401
+ const [variantName, result] = msgpackCall(this.backend, [["Bn254FqSqrt", msgpackCommand]]);
402
+ if (variantName === 'ErrorResponse') {
403
+ throw new bbapi_exception_js_1.BBApiException(result.message || 'Unknown error from barretenberg');
404
+ }
405
+ if (variantName !== 'Bn254FqSqrtResponse') {
406
+ throw new bbapi_exception_js_1.BBApiException(`Expected variant name 'Bn254FqSqrtResponse' but got '${variantName}'`);
407
+ }
408
+ return (0, api_types_js_1.toBn254FqSqrtResponse)(result);
409
+ }
410
+ bn254G1Mul(command) {
411
+ const msgpackCommand = (0, api_types_js_1.fromBn254G1Mul)(command);
412
+ const [variantName, result] = msgpackCall(this.backend, [["Bn254G1Mul", msgpackCommand]]);
413
+ if (variantName === 'ErrorResponse') {
414
+ throw new bbapi_exception_js_1.BBApiException(result.message || 'Unknown error from barretenberg');
415
+ }
416
+ if (variantName !== 'Bn254G1MulResponse') {
417
+ throw new bbapi_exception_js_1.BBApiException(`Expected variant name 'Bn254G1MulResponse' but got '${variantName}'`);
418
+ }
419
+ return (0, api_types_js_1.toBn254G1MulResponse)(result);
420
+ }
421
+ bn254G2Mul(command) {
422
+ const msgpackCommand = (0, api_types_js_1.fromBn254G2Mul)(command);
423
+ const [variantName, result] = msgpackCall(this.backend, [["Bn254G2Mul", msgpackCommand]]);
424
+ if (variantName === 'ErrorResponse') {
425
+ throw new bbapi_exception_js_1.BBApiException(result.message || 'Unknown error from barretenberg');
426
+ }
427
+ if (variantName !== 'Bn254G2MulResponse') {
428
+ throw new bbapi_exception_js_1.BBApiException(`Expected variant name 'Bn254G2MulResponse' but got '${variantName}'`);
429
+ }
430
+ return (0, api_types_js_1.toBn254G2MulResponse)(result);
431
+ }
432
+ bn254G1IsOnCurve(command) {
433
+ const msgpackCommand = (0, api_types_js_1.fromBn254G1IsOnCurve)(command);
434
+ const [variantName, result] = msgpackCall(this.backend, [["Bn254G1IsOnCurve", msgpackCommand]]);
435
+ if (variantName === 'ErrorResponse') {
436
+ throw new bbapi_exception_js_1.BBApiException(result.message || 'Unknown error from barretenberg');
437
+ }
438
+ if (variantName !== 'Bn254G1IsOnCurveResponse') {
439
+ throw new bbapi_exception_js_1.BBApiException(`Expected variant name 'Bn254G1IsOnCurveResponse' but got '${variantName}'`);
440
+ }
441
+ return (0, api_types_js_1.toBn254G1IsOnCurveResponse)(result);
442
+ }
443
+ bn254G1FromCompressed(command) {
444
+ const msgpackCommand = (0, api_types_js_1.fromBn254G1FromCompressed)(command);
445
+ const [variantName, result] = msgpackCall(this.backend, [["Bn254G1FromCompressed", msgpackCommand]]);
446
+ if (variantName === 'ErrorResponse') {
447
+ throw new bbapi_exception_js_1.BBApiException(result.message || 'Unknown error from barretenberg');
448
+ }
449
+ if (variantName !== 'Bn254G1FromCompressedResponse') {
450
+ throw new bbapi_exception_js_1.BBApiException(`Expected variant name 'Bn254G1FromCompressedResponse' but got '${variantName}'`);
451
+ }
452
+ return (0, api_types_js_1.toBn254G1FromCompressedResponse)(result);
453
+ }
292
454
  schnorrComputePublicKey(command) {
293
455
  const msgpackCommand = (0, api_types_js_1.fromSchnorrComputePublicKey)(command);
294
456
  const [variantName, result] = msgpackCall(this.backend, [["SchnorrComputePublicKey", msgpackCommand]]);
457
+ if (variantName === 'ErrorResponse') {
458
+ throw new bbapi_exception_js_1.BBApiException(result.message || 'Unknown error from barretenberg');
459
+ }
295
460
  if (variantName !== 'SchnorrComputePublicKeyResponse') {
296
- throw new Error(`Expected variant name 'SchnorrComputePublicKeyResponse' but got '${variantName}'`);
461
+ throw new bbapi_exception_js_1.BBApiException(`Expected variant name 'SchnorrComputePublicKeyResponse' but got '${variantName}'`);
297
462
  }
298
463
  return (0, api_types_js_1.toSchnorrComputePublicKeyResponse)(result);
299
464
  }
300
465
  schnorrConstructSignature(command) {
301
466
  const msgpackCommand = (0, api_types_js_1.fromSchnorrConstructSignature)(command);
302
467
  const [variantName, result] = msgpackCall(this.backend, [["SchnorrConstructSignature", msgpackCommand]]);
468
+ if (variantName === 'ErrorResponse') {
469
+ throw new bbapi_exception_js_1.BBApiException(result.message || 'Unknown error from barretenberg');
470
+ }
303
471
  if (variantName !== 'SchnorrConstructSignatureResponse') {
304
- throw new Error(`Expected variant name 'SchnorrConstructSignatureResponse' but got '${variantName}'`);
472
+ throw new bbapi_exception_js_1.BBApiException(`Expected variant name 'SchnorrConstructSignatureResponse' but got '${variantName}'`);
305
473
  }
306
474
  return (0, api_types_js_1.toSchnorrConstructSignatureResponse)(result);
307
475
  }
308
476
  schnorrVerifySignature(command) {
309
477
  const msgpackCommand = (0, api_types_js_1.fromSchnorrVerifySignature)(command);
310
478
  const [variantName, result] = msgpackCall(this.backend, [["SchnorrVerifySignature", msgpackCommand]]);
479
+ if (variantName === 'ErrorResponse') {
480
+ throw new bbapi_exception_js_1.BBApiException(result.message || 'Unknown error from barretenberg');
481
+ }
311
482
  if (variantName !== 'SchnorrVerifySignatureResponse') {
312
- throw new Error(`Expected variant name 'SchnorrVerifySignatureResponse' but got '${variantName}'`);
483
+ throw new bbapi_exception_js_1.BBApiException(`Expected variant name 'SchnorrVerifySignatureResponse' but got '${variantName}'`);
313
484
  }
314
485
  return (0, api_types_js_1.toSchnorrVerifySignatureResponse)(result);
315
486
  }
316
487
  ecdsaSecp256k1ComputePublicKey(command) {
317
488
  const msgpackCommand = (0, api_types_js_1.fromEcdsaSecp256k1ComputePublicKey)(command);
318
489
  const [variantName, result] = msgpackCall(this.backend, [["EcdsaSecp256k1ComputePublicKey", msgpackCommand]]);
490
+ if (variantName === 'ErrorResponse') {
491
+ throw new bbapi_exception_js_1.BBApiException(result.message || 'Unknown error from barretenberg');
492
+ }
319
493
  if (variantName !== 'EcdsaSecp256k1ComputePublicKeyResponse') {
320
- throw new Error(`Expected variant name 'EcdsaSecp256k1ComputePublicKeyResponse' but got '${variantName}'`);
494
+ throw new bbapi_exception_js_1.BBApiException(`Expected variant name 'EcdsaSecp256k1ComputePublicKeyResponse' but got '${variantName}'`);
321
495
  }
322
496
  return (0, api_types_js_1.toEcdsaSecp256k1ComputePublicKeyResponse)(result);
323
497
  }
324
498
  ecdsaSecp256r1ComputePublicKey(command) {
325
499
  const msgpackCommand = (0, api_types_js_1.fromEcdsaSecp256r1ComputePublicKey)(command);
326
500
  const [variantName, result] = msgpackCall(this.backend, [["EcdsaSecp256r1ComputePublicKey", msgpackCommand]]);
501
+ if (variantName === 'ErrorResponse') {
502
+ throw new bbapi_exception_js_1.BBApiException(result.message || 'Unknown error from barretenberg');
503
+ }
327
504
  if (variantName !== 'EcdsaSecp256r1ComputePublicKeyResponse') {
328
- throw new Error(`Expected variant name 'EcdsaSecp256r1ComputePublicKeyResponse' but got '${variantName}'`);
505
+ throw new bbapi_exception_js_1.BBApiException(`Expected variant name 'EcdsaSecp256r1ComputePublicKeyResponse' but got '${variantName}'`);
329
506
  }
330
507
  return (0, api_types_js_1.toEcdsaSecp256r1ComputePublicKeyResponse)(result);
331
508
  }
332
509
  ecdsaSecp256k1ConstructSignature(command) {
333
510
  const msgpackCommand = (0, api_types_js_1.fromEcdsaSecp256k1ConstructSignature)(command);
334
511
  const [variantName, result] = msgpackCall(this.backend, [["EcdsaSecp256k1ConstructSignature", msgpackCommand]]);
512
+ if (variantName === 'ErrorResponse') {
513
+ throw new bbapi_exception_js_1.BBApiException(result.message || 'Unknown error from barretenberg');
514
+ }
335
515
  if (variantName !== 'EcdsaSecp256k1ConstructSignatureResponse') {
336
- throw new Error(`Expected variant name 'EcdsaSecp256k1ConstructSignatureResponse' but got '${variantName}'`);
516
+ throw new bbapi_exception_js_1.BBApiException(`Expected variant name 'EcdsaSecp256k1ConstructSignatureResponse' but got '${variantName}'`);
337
517
  }
338
518
  return (0, api_types_js_1.toEcdsaSecp256k1ConstructSignatureResponse)(result);
339
519
  }
340
520
  ecdsaSecp256r1ConstructSignature(command) {
341
521
  const msgpackCommand = (0, api_types_js_1.fromEcdsaSecp256r1ConstructSignature)(command);
342
522
  const [variantName, result] = msgpackCall(this.backend, [["EcdsaSecp256r1ConstructSignature", msgpackCommand]]);
523
+ if (variantName === 'ErrorResponse') {
524
+ throw new bbapi_exception_js_1.BBApiException(result.message || 'Unknown error from barretenberg');
525
+ }
343
526
  if (variantName !== 'EcdsaSecp256r1ConstructSignatureResponse') {
344
- throw new Error(`Expected variant name 'EcdsaSecp256r1ConstructSignatureResponse' but got '${variantName}'`);
527
+ throw new bbapi_exception_js_1.BBApiException(`Expected variant name 'EcdsaSecp256r1ConstructSignatureResponse' but got '${variantName}'`);
345
528
  }
346
529
  return (0, api_types_js_1.toEcdsaSecp256r1ConstructSignatureResponse)(result);
347
530
  }
348
531
  ecdsaSecp256k1RecoverPublicKey(command) {
349
532
  const msgpackCommand = (0, api_types_js_1.fromEcdsaSecp256k1RecoverPublicKey)(command);
350
533
  const [variantName, result] = msgpackCall(this.backend, [["EcdsaSecp256k1RecoverPublicKey", msgpackCommand]]);
534
+ if (variantName === 'ErrorResponse') {
535
+ throw new bbapi_exception_js_1.BBApiException(result.message || 'Unknown error from barretenberg');
536
+ }
351
537
  if (variantName !== 'EcdsaSecp256k1RecoverPublicKeyResponse') {
352
- throw new Error(`Expected variant name 'EcdsaSecp256k1RecoverPublicKeyResponse' but got '${variantName}'`);
538
+ throw new bbapi_exception_js_1.BBApiException(`Expected variant name 'EcdsaSecp256k1RecoverPublicKeyResponse' but got '${variantName}'`);
353
539
  }
354
540
  return (0, api_types_js_1.toEcdsaSecp256k1RecoverPublicKeyResponse)(result);
355
541
  }
356
542
  ecdsaSecp256r1RecoverPublicKey(command) {
357
543
  const msgpackCommand = (0, api_types_js_1.fromEcdsaSecp256r1RecoverPublicKey)(command);
358
544
  const [variantName, result] = msgpackCall(this.backend, [["EcdsaSecp256r1RecoverPublicKey", msgpackCommand]]);
545
+ if (variantName === 'ErrorResponse') {
546
+ throw new bbapi_exception_js_1.BBApiException(result.message || 'Unknown error from barretenberg');
547
+ }
359
548
  if (variantName !== 'EcdsaSecp256r1RecoverPublicKeyResponse') {
360
- throw new Error(`Expected variant name 'EcdsaSecp256r1RecoverPublicKeyResponse' but got '${variantName}'`);
549
+ throw new bbapi_exception_js_1.BBApiException(`Expected variant name 'EcdsaSecp256r1RecoverPublicKeyResponse' but got '${variantName}'`);
361
550
  }
362
551
  return (0, api_types_js_1.toEcdsaSecp256r1RecoverPublicKeyResponse)(result);
363
552
  }
364
553
  ecdsaSecp256k1VerifySignature(command) {
365
554
  const msgpackCommand = (0, api_types_js_1.fromEcdsaSecp256k1VerifySignature)(command);
366
555
  const [variantName, result] = msgpackCall(this.backend, [["EcdsaSecp256k1VerifySignature", msgpackCommand]]);
556
+ if (variantName === 'ErrorResponse') {
557
+ throw new bbapi_exception_js_1.BBApiException(result.message || 'Unknown error from barretenberg');
558
+ }
367
559
  if (variantName !== 'EcdsaSecp256k1VerifySignatureResponse') {
368
- throw new Error(`Expected variant name 'EcdsaSecp256k1VerifySignatureResponse' but got '${variantName}'`);
560
+ throw new bbapi_exception_js_1.BBApiException(`Expected variant name 'EcdsaSecp256k1VerifySignatureResponse' but got '${variantName}'`);
369
561
  }
370
562
  return (0, api_types_js_1.toEcdsaSecp256k1VerifySignatureResponse)(result);
371
563
  }
372
564
  ecdsaSecp256r1VerifySignature(command) {
373
565
  const msgpackCommand = (0, api_types_js_1.fromEcdsaSecp256r1VerifySignature)(command);
374
566
  const [variantName, result] = msgpackCall(this.backend, [["EcdsaSecp256r1VerifySignature", msgpackCommand]]);
567
+ if (variantName === 'ErrorResponse') {
568
+ throw new bbapi_exception_js_1.BBApiException(result.message || 'Unknown error from barretenberg');
569
+ }
375
570
  if (variantName !== 'EcdsaSecp256r1VerifySignatureResponse') {
376
- throw new Error(`Expected variant name 'EcdsaSecp256r1VerifySignatureResponse' but got '${variantName}'`);
571
+ throw new bbapi_exception_js_1.BBApiException(`Expected variant name 'EcdsaSecp256r1VerifySignatureResponse' but got '${variantName}'`);
377
572
  }
378
573
  return (0, api_types_js_1.toEcdsaSecp256r1VerifySignatureResponse)(result);
379
574
  }
380
575
  srsInitSrs(command) {
381
576
  const msgpackCommand = (0, api_types_js_1.fromSrsInitSrs)(command);
382
577
  const [variantName, result] = msgpackCall(this.backend, [["SrsInitSrs", msgpackCommand]]);
578
+ if (variantName === 'ErrorResponse') {
579
+ throw new bbapi_exception_js_1.BBApiException(result.message || 'Unknown error from barretenberg');
580
+ }
383
581
  if (variantName !== 'SrsInitSrsResponse') {
384
- throw new Error(`Expected variant name 'SrsInitSrsResponse' but got '${variantName}'`);
582
+ throw new bbapi_exception_js_1.BBApiException(`Expected variant name 'SrsInitSrsResponse' but got '${variantName}'`);
385
583
  }
386
584
  return (0, api_types_js_1.toSrsInitSrsResponse)(result);
387
585
  }
388
586
  srsInitGrumpkinSrs(command) {
389
587
  const msgpackCommand = (0, api_types_js_1.fromSrsInitGrumpkinSrs)(command);
390
588
  const [variantName, result] = msgpackCall(this.backend, [["SrsInitGrumpkinSrs", msgpackCommand]]);
589
+ if (variantName === 'ErrorResponse') {
590
+ throw new bbapi_exception_js_1.BBApiException(result.message || 'Unknown error from barretenberg');
591
+ }
391
592
  if (variantName !== 'SrsInitGrumpkinSrsResponse') {
392
- throw new Error(`Expected variant name 'SrsInitGrumpkinSrsResponse' but got '${variantName}'`);
593
+ throw new bbapi_exception_js_1.BBApiException(`Expected variant name 'SrsInitGrumpkinSrsResponse' but got '${variantName}'`);
393
594
  }
394
595
  return (0, api_types_js_1.toSrsInitGrumpkinSrsResponse)(result);
395
596
  }
396
597
  shutdown(command) {
397
598
  const msgpackCommand = (0, api_types_js_1.fromShutdown)(command);
398
599
  const [variantName, result] = msgpackCall(this.backend, [["Shutdown", msgpackCommand]]);
600
+ if (variantName === 'ErrorResponse') {
601
+ throw new bbapi_exception_js_1.BBApiException(result.message || 'Unknown error from barretenberg');
602
+ }
399
603
  if (variantName !== 'ShutdownResponse') {
400
- throw new Error(`Expected variant name 'ShutdownResponse' but got '${variantName}'`);
604
+ throw new bbapi_exception_js_1.BBApiException(`Expected variant name 'ShutdownResponse' but got '${variantName}'`);
401
605
  }
402
606
  return (0, api_types_js_1.toShutdownResponse)(result);
403
607
  }
@@ -407,4 +611,4 @@ class SyncApi {
407
611
  }
408
612
  }
409
613
  exports.SyncApi = SyncApi;
410
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3luYy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jYmluZC9nZW5lcmF0ZWQvc3luYy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsbUNBQW1DOzs7QUFHbkMsdUNBQTRDO0FBQzVDLGlEQUF3bks7QUFFeG5LLFNBQVMsV0FBVyxDQUFDLE9BQTRCLEVBQUUsS0FBWSxJQUFLLE1BQU0sV0FBVyxHQUFHLElBQUksa0JBQU8sQ0FBQyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFFLE1BQU0sYUFBYSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBRSxPQUFPLElBQUksa0JBQU8sQ0FBQyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFBLENBQUM7QUFDNVAsTUFBYSxPQUFPO0lBQ2xCLFlBQXNCLE9BQTRCO1FBQTVCLFlBQU8sR0FBUCxPQUFPLENBQXFCO0lBQUcsQ0FBQztJQUV0RCxZQUFZLENBQUMsT0FBcUI7UUFDaEMsTUFBTSxjQUFjLEdBQUcsSUFBQSwrQkFBZ0IsRUFBQyxPQUFPLENBQUMsQ0FBQztRQUNqRCxNQUFNLENBQUMsV0FBVyxFQUFFLE1BQU0sQ0FBQyxHQUFHLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxjQUFjLEVBQUUsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzVGLElBQUksV0FBVyxLQUFLLHNCQUFzQixFQUFFLENBQUM7WUFDM0MsTUFBTSxJQUFJLEtBQUssQ0FBQyx5REFBeUQsV0FBVyxHQUFHLENBQUMsQ0FBQztRQUMzRixDQUFDO1FBQ0QsT0FBTyxJQUFBLHFDQUFzQixFQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3hDLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxPQUF5QjtRQUN4QyxNQUFN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
614
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3luYy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jYmluZC9nZW5lcmF0ZWQvc3luYy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsbUNBQW1DOzs7QUFHbkMsdUNBQTRDO0FBQzVDLGlFQUEwRDtBQUMxRCxpREFBMitLO0FBRTMrSyxTQUFTLFdBQVcsQ0FBQyxPQUE0QixFQUFFLEtBQVksRUFBRSxFQUFHLE1BQU0sV0FBVyxHQUFHLElBQUksa0JBQU8sQ0FBQyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFFLE1BQU0sYUFBYSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBRSxPQUFPLElBQUksa0JBQU8sQ0FBQyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFBLENBQUM7QUFDNVA7SUFDd0IsT0FBTztJQUE3QixZQUFzQixPQUE0QixFQUFFO3VCQUE5QixPQUFPO0lBQXdCLENBQUM7SUFFdEQsWUFBWSxDQUFDLE9BQXFCLEVBQXdCO1FBQ3hELE1BQU0sY0FBYyxHQUFHLElBQUEsK0JBQWdCLEVBQUMsT0FBTyxDQUFDLENBQUM7UUFDakQsTUFBTSxDQUFDLFdBQVcsRUFBRSxNQUFNLENBQUMsR0FBRyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsY0FBYyxFQUFFLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUM1RixJQUFJLFdBQVcsS0FBSyxlQUFlLEVBQUUsQ0FBQztZQUNwQyxNQUFNLElBQUksbUNBQWMsQ0FBQyxNQUFNLENBQUMsT0FBTyxJQUFJLGlDQUFpQyxDQUFDLENBQUM7UUFDaEYsQ0FBQztRQUNELElBQUksV0FBVyxLQUFLLHNCQUFzQixFQUFFLENBQUM7WUFDM0MsTUFBTSxJQUFJLG1DQUFjLENBQUMseURBQXlELFdBQVcsR0FBRyxDQUFDLENBQUM7UUFDcEcsQ0FBQztRQUNELE9BQU8sSUFBQSxxQ0FBc0IsRUFBQyxNQUFNLENBQUMsQ0FBQztJQUFBLENBQ3ZDO0lBRUQsZ0JBQWdCLENBQUMsT0FBeUIsRUFBNEI7UUFDcEUsTUFBTSxjQUFjLEdBQUcsSUFBQSxtQ0FBb0IsRUFBQyxPQUFPLENBQUMsQ0FBQztRQUNyRCxNQUFNLENBQUMsV0FBVyxFQUFFLE1BQU0sQ0FBQyxHQUFHLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxrQkFBa0IsRUFBRSxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDaEcsSUFBSSxXQUFXLEtBQUssZUFBZSxFQUFFLENBQUM7WUFDcEMsTUFBTSxJQUFJLG1DQUFjLENBQUMsTUFBTSxDQUFDLE9BQU8sSUFBSSxpQ0FBaUMsQ0FBQyxDQUFDO1FBQ2hGLENBQUM7UUFDRCxJQUFJLFdBQVcsS0FBSywwQkFBMEIsRUFBRSxDQUFDO1lBQy9DLE1BQU0sSUFBSSxtQ0FBYyxDQUFDLDZEQUE2RCxXQUFXLEdBQUcsQ0FBQyxDQUFDO1FBQ3hHLENBQUM7UUFDRCxPQUFPLElBQUEseUNBQTBCLEVBQUMsTUFBTSxDQUFDLENBQUM7SUFBQSxDQUMzQztJQUVELFlBQVksQ0FBQyxPQUFxQixFQUF1QjtRQUN2RCxNQUFNLGNBQWMsR0FBRyxJQUFBLCtCQUFnQixFQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2pELE1BQU0sQ0FBQyxXQUFXLEVBQUUsTUFBTSxDQUFDLEdBQUcsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLGNBQWMsRUFBRSxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDNUYsSUFBSSxXQUFXLEtBQUssZUFBZSxFQUFFLENBQUM7WUFDcEMsTUFBTSxJQUFJLG1DQUFjLENBQUMsTUFBTSxDQUFDLE9BQU8sSUFBSSxpQ0FBaUMsQ0FBQyxDQUFDO1FBQ2hGLENBQUM7UUFDRCxJQUFJLFdBQVcsS0FBSyxxQkFBcUIsRUFBRSxDQUFDO1lBQzFDLE1BQU0sSUFBSSxtQ0FBYyxDQUFDLHdEQUF3RCxXQUFXLEdBQUcsQ0FBQyxDQUFDO1FBQ25HLENBQUM7UUFDRCxPQUFPLElBQUEsb0NBQXFCLEVBQUMsTUFBTSxDQUFDLENBQUM7SUFBQSxDQUN0QztJQUVELGFBQWEsQ0FBQyxPQUFzQixFQUF5QjtRQUMzRCxNQUFNLGNBQWMsR0FBRyxJQUFBLGdDQUFpQixFQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2xELE1BQU0sQ0FBQyxXQUFXLEVBQUUsTUFBTSxDQUFDLEdBQUcsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLGVBQWUsRUFBRSxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDN0YsSUFBSSxXQUFXLEtBQUssZUFBZSxFQUFFLENBQUM7WUFDcEMsTUFBTSxJQUFJLG1DQUFjLENBQUMsTUFBTSxDQUFDLE9BQU8sSUFBSSxpQ0FBaUMsQ0FBQyxDQUFDO1FBQ2hGLENBQUM7UUFDRCxJQUFJLFdBQVcsS0FBSyx1QkFBdUIsRUFBRSxDQUFDO1lBQzVDLE1BQU0sSUFBSSxtQ0FBYyxDQUFDLDBEQUEwRCxXQUFXLEdBQUcsQ0FBQyxDQUFDO1FBQ3JHLENBQUM7UUFDRCxPQUFPLElBQUEsc0NBQXVCLEVBQUMsTUFBTSxDQUFDLENBQUM7SUFBQSxDQUN4QztJQUVELHdCQUF3QixDQUFDLE9BQWlDLEVBQW9DO1FBQzVGLE1BQU0sY0FBYyxHQUFHLElBQUEsMkNBQTRCLEVBQUMsT0FBTyxDQUFDLENBQUM7UUFDN0QsTUFBTSxDQUFDLFdBQVcsRUFBRSxNQUFNLENBQUMsR0FBRyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsMEJBQTBCLEVBQUUsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3hHLElBQUksV0FBVyxLQUFLLGVBQWUsRUFBRSxDQUFDO1lBQ3BDLE1BQU0sSUFBSSxtQ0FBYyxDQUFDLE1BQU0sQ0FBQyxPQUFPLElBQUksaUNBQWlDLENBQUMsQ0FBQztRQUNoRixDQUFDO1FBQ0QsSUFBSSxXQUFXLEtBQUssa0NBQWtDLEVBQUUsQ0FBQztZQUN2RCxNQUFNLElBQUksbUNBQWMsQ0FBQyxxRUFBcUUsV0FBVyxHQUFHLENBQUMsQ0FBQztRQUNoSCxDQUFDO1FBQ0QsT0FBTyxJQUFBLGlEQUFrQyxFQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQUEsQ0FDbkQ7SUFFRCxpQkFBaUIsQ0FBQyxPQUEwQixFQUE2QjtRQUN2RSxNQUFNLGNBQWMsR0FBRyxJQUFBLG9DQUFxQixFQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3RELE1BQU0sQ0FBQyxXQUFXLEVBQUUsTUFBTSxDQUFDLEdBQUcsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLG1CQUFtQixFQUFFLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNqRyxJQUFJLFdBQVcsS0FBSyxlQUFlLEVBQUUsQ0FBQztZQUNwQyxNQUFNLElBQUksbUNBQWMsQ0FBQyxNQUFNLENBQUMsT0FBTyxJQUFJLGlDQUFpQyxDQUFDLENBQUM7UUFDaEYsQ0FBQztRQUNELElBQUksV0FBVyxLQUFLLDJCQUEyQixFQUFFLENBQUM7WUFDaEQsTUFBTSxJQUFJLG1DQUFjLENBQUMsOERBQThELFdBQVcsR0FBRyxDQUFDLENBQUM7UUFDekcsQ0FBQztRQUNELE9BQU8sSUFBQSwwQ0FBMkIsRUFBQyxNQUFNLENBQUMsQ0FBQztJQUFBLENBQzVDO0lBRUQsVUFBVSxDQUFDLE9BQW1CLEVBQXNCO1FBQ2xELE1BQU0sY0FBYyxHQUFHLElBQUEsNkJBQWMsRUFBQyxPQUFPLENBQUMsQ0FBQztRQUMvQyxNQUFNLENBQUMsV0FBVyxFQUFFLE1BQU0sQ0FBQyxHQUFHLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxZQUFZLEVBQUUsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzFGLElBQUksV0FBVyxLQUFLLGVBQWUsRUFBRSxDQUFDO1lBQ3BDLE1BQU0sSUFBSSxtQ0FBYyxDQUFDLE1BQU0sQ0FBQyxPQUFPLElBQUksaUNBQWlDLENBQUMsQ0FBQztRQUNoRixDQUFDO1FBQ0QsSUFBSSxXQUFXLEtBQUssb0JBQW9CLEVBQUUsQ0FBQztZQUN6QyxNQUFNLElBQUksbUNBQWMsQ0FBQyx1REFBdUQsV0FBVyxHQUFHLENBQUMsQ0FBQztRQUNsRyxDQUFDO1FBQ0QsT0FBTyxJQUFBLG1DQUFvQixFQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQUEsQ0FDckM7SUFFRCxTQUFTLENBQUMsT0FBa0IsRUFBcUI7UUFDL0MsTUFBTSxjQUFjLEdBQUcsSUFBQSw0QkFBYSxFQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzlDLE1BQU0sQ0FBQyxXQUFXLEVBQUUsTUFBTSxDQUFDLEdBQUcsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLFdBQVcsRUFBRSxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDekYsSUFBSSxXQUFXLEtBQUssZUFBZSxFQUFFLENBQUM7WUFDcEMsTUFBTSxJQUFJLG1DQUFjLENBQUMsTUFBTSxDQUFDLE9BQU8sSUFBSSxpQ0FBaUMsQ0FBQyxDQUFDO1FBQ2hGLENBQUM7UUFDRCxJQUFJLFdBQVcsS0FBSyxtQkFBbUIsRUFBRSxDQUFDO1lBQ3hDLE1BQU0sSUFBSSxtQ0FBYyxDQUFDLHNEQUFzRCxXQUFXLEdBQUcsQ0FBQyxDQUFDO1FBQ2pHLENBQUM7UUFDRCxPQUFPLElBQUEsa0NBQW1CLEVBQUMsTUFBTSxDQUFDLENBQUM7SUFBQSxDQUNwQztJQUVELGVBQWUsQ0FBQyxPQUF3QixFQUEyQjtRQUNqRSxNQUFNLGNBQWMsR0FBRyxJQUFBLGtDQUFtQixFQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3BELE1BQU0sQ0FBQyxXQUFXLEVBQUUsTUFBTSxDQUFDLEdBQUcsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLGlCQUFpQixFQUFFLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUMvRixJQUFJLFdBQVcsS0FBSyxlQUFlLEVBQUUsQ0FBQztZQUNwQyxNQUFNLElBQUksbUNBQWMsQ0FBQyxNQUFNLENBQUMsT0FBTyxJQUFJLGlDQUFpQyxDQUFDLENBQUM7UUFDaEYsQ0FBQztRQUNELElBQUksV0FBVyxLQUFLLHlCQUF5QixFQUFFLENBQUM7WUFDOUMsTUFBTSxJQUFJLG1DQUFjLENBQUMsNERBQTRELFdBQVcsR0FBRyxDQUFDLENBQUM7UUFDdkcsQ0FBQztRQUNELE9BQU8sSUFBQSx3Q0FBeUIsRUFBQyxNQUFNLENBQUMsQ0FBQztJQUFBLENBQzFDO0lBRUQsVUFBVSxDQUFDLE9BQW1CLEVBQXNCO1FBQ2xELE1BQU0sY0FBYyxHQUFHLElBQUEsNkJBQWMsRUFBQyxPQUFPLENBQUMsQ0FBQztRQUMvQyxNQUFNLENBQUMsV0FBVyxFQUFFLE1BQU0sQ0FBQyxHQUFHLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxZQUFZLEVBQUUsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzFGLElBQUksV0FBVyxLQUFLLGVBQWUsRUFBRSxDQUFDO1lBQ3BDLE1BQU0sSUFBSSxtQ0FBYyxDQUFDLE1BQU0sQ0FBQyxPQUFPLElBQUksaUNBQWlDLENBQUMsQ0FBQztRQUNoRixDQUFDO1FBQ0QsSUFBSSxXQUFXLEtBQUssb0JBQW9CLEVBQUUsQ0FBQztZQUN6QyxNQUFNLElBQUksbUNBQWMsQ0FBQyx1REFBdUQsV0FBVyxHQUFHLENBQUMsQ0FBQztRQUNsRyxDQUFDO1FBQ0QsT0FBTyxJQUFBLG1DQUFvQixFQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQUEsQ0FDckM7SUFFRCxXQUFXLENBQUMsT0FBb0IsRUFBdUI7UUFDckQsTUFBTSxjQUFjLEdBQUcsSUFBQSw4QkFBZSxFQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2hELE1BQU0sQ0FBQyxXQUFXLEVBQUUsTUFBTSxDQUFDLEdBQUcsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLGFBQWEsRUFBRSxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDM0YsSUFBSSxXQUFXLEtBQUssZUFBZSxFQUFFLENBQUM7WUFDcEMsTUFBTSxJQUFJLG1DQUFjLENBQUMsTUFBTSxDQUFDLE9BQU8sSUFBSSxpQ0FBaUMsQ0FBQyxDQUFDO1FBQ2hGLENBQUM7UUFDRCxJQUFJLFdBQVcsS0FBSyxxQkFBcUIsRUFBRSxDQUFDO1lBQzFDLE1BQU0sSUFBSSxtQ0FBYyxDQUFDLHdEQUF3RCxXQUFXLEdBQUcsQ0FBQyxDQUFDO1FBQ25HLENBQUM7UUFDRCxPQUFPLElBQUEsb0NBQXFCLEVBQUMsTUFBTSxDQUFDLENBQUM7SUFBQSxDQUN0QztJQUVELFVBQVUsQ0FBQyxPQUFtQixFQUFzQjtRQUNsRCxNQUFNLGNBQWMsR0FBRyxJQUFBLDZCQUFjLEVBQUMsT0FBTyxDQUFDLENBQUM7UUFDL0MsTUFBTSxDQUFDLFdBQVcsRUFBRSxNQUFNLENBQUMsR0FBRyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsWUFBWSxFQUFFLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUMxRixJQUFJLFdBQVcsS0FBSyxlQUFlLEVBQUUsQ0FBQztZQUNwQyxNQUFNLElBQUksbUNBQWMsQ0FBQyxNQUFNLENBQUMsT0FBTyxJQUFJLGlDQUFpQyxDQUFDLENBQUM7UUFDaEYsQ0FBQztRQUNELElBQUksV0FBVyxLQUFLLG9CQUFvQixFQUFFLENBQUM7WUFDekMsTUFBTSxJQUFJLG1DQUFjLENBQUMsdURBQXVELFdBQVcsR0FBRyxDQUFDLENBQUM7UUFDbEcsQ0FBQztRQUNELE9BQU8sSUFBQSxtQ0FBb0IsRUFBQyxNQUFNLENBQUMsQ0FBQztJQUFBLENBQ3JDO0lBRUQsY0FBYyxDQUFDLE9BQXVCLEVBQTBCO1FBQzlELE1BQU0sY0FBYyxHQUFHLElBQUEsaUNBQWtCLEVBQUMsT0FBTyxDQUFDLENBQUM7UUFDbkQsTUFBTSxDQUFDLFdBQVcsRUFBRSxNQUFNLENBQUMsR0FBRyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsZ0JBQWdCLEVBQUUsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzlGLElBQUksV0FBVyxLQUFLLGVBQWUsRUFBRSxDQUFDO1lBQ3BDLE1BQU0sSUFBSSxtQ0FBYyxDQUFDLE1BQU0sQ0FBQyxPQUFPLElBQUksaUNBQWlDLENBQUMsQ0FBQztRQUNoRixDQUFDO1FBQ0QsSUFBSSxXQUFXLEtBQUssd0JBQXdCLEVBQUUsQ0FBQztZQUM3QyxNQUFNLElBQUksbUNBQWMsQ0FBQywyREFBMkQsV0FBVyxHQUFHLENBQUMsQ0FBQztRQUN0RyxDQUFDO1FBQ0QsT0FBTyxJQUFBLHVDQUF3QixFQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQUEsQ0FDekM7SUFFRCw0QkFBNEIsQ0FBQyxPQUFxQyxFQUF3QztRQUN4RyxNQUFNLGNBQWMsR0FBRyxJQUFBLCtDQUFnQyxFQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2pFLE1BQU0sQ0FBQyxXQUFXLEVBQUUsTUFBTSxDQUFDLEdBQUcsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLDhCQUE4QixFQUFFLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUM1RyxJQUFJLFdBQVcsS0FBSyxlQUFlLEVBQUUsQ0FBQztZQUNwQyxNQUFNLElBQUksbUNBQWMsQ0FBQyxNQUFNLENBQUMsT0FBTyxJQUFJLGlDQUFpQyxDQUFDLENBQUM7UUFDaEYsQ0FBQztRQUNELElBQUksV0FBVyxLQUFLLHNDQUFzQyxFQUFFLENBQUM7WUFDM0QsTUFBTSxJQUFJLG1DQUFjLENBQUMseUVBQXlFLFdBQVcsR0FBRyxDQUFDLENBQUM7UUFDcEgsQ0FBQztRQUNELE9BQU8sSUFBQSxxREFBc0MsRUFBQyxNQUFNLENBQUMsQ0FBQztJQUFBLENBQ3ZEO0lBRUQsdUJBQXVCLENBQUMsT0FBZ0MsRUFBbUM7UUFDekYsTUFBTSxjQUFjLEdBQUcsSUFBQSwwQ0FBMkIsRUFBQyxPQUFPLENBQUMsQ0FBQztRQUM1RCxNQUFNLENBQUMsV0FBVyxFQUFFLE1BQU0sQ0FBQyxHQUFHLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyx5QkFBeUIsRUFBRSxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDdkcsSUFBSSxXQUFXLEtBQUssZUFBZSxFQUFFLENBQUM7WUFDcEMsTUFBTSxJQUFJLG1DQUFjLENBQUMsTUFBTSxDQUFDLE9BQU8sSUFBSSxpQ0FBaUMsQ0FBQyxDQUFDO1FBQ2hGLENBQUM7UUFDRCxJQUFJLFdBQVcsS0FBSyxpQ0FBaUMsRUFBRSxDQUFDO1lBQ3RELE1BQU0sSUFBSSxtQ0FBYyxDQUFDLG9FQUFvRSxXQUFXLEdBQUcsQ0FBQyxDQUFDO1FBQy9HLENBQUM7UUFDRCxPQUFPLElBQUEsZ0RBQWlDLEVBQUMsTUFBTSxDQUFDLENBQUM7SUFBQSxDQUNsRDtJQUVELFVBQVUsQ0FBQyxPQUFtQixFQUFzQjtRQUNsRCxNQUFNLGNBQWMsR0FBRyxJQUFBLDZCQUFjLEVBQUMsT0FBTyxDQUFDLENBQUM7UUFDL0MsTUFBTSxDQUFDLFdBQVcsRUFBRSxNQUFNLENBQUMsR0FBRyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsWUFBWSxFQUFFLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUMxRixJQUFJLFdBQVcsS0FBSyxlQUFlLEVBQUUsQ0FBQztZQUNwQyxNQUFNLElBQUksbUNBQWMsQ0FBQyxNQUFNLENBQUMsT0FBTyxJQUFJLGlDQUFpQyxDQUFDLENBQUM7UUFDaEYsQ0FBQztRQUNELElBQUksV0FBVyxLQUFLLG9CQUFvQixFQUFFLENBQUM7WUFDekMsTUFBTSxJQUFJLG1DQUFjLENBQUMsdURBQXVELFdBQVcsR0FBRyxDQUFDLENBQUM7UUFDbEcsQ0FBQztRQUNELE9BQU8sSUFBQSxtQ0FBb0IsRUFBQyxNQUFNLENBQUMsQ0FBQztJQUFBLENBQ3JDO0lBRUQsYUFBYSxDQUFDLE9BQXNCLEVBQXlCO1FBQzNELE1BQU0sY0FBYyxHQUFHLElBQUEsZ0NBQWlCLEVBQUMsT0FBTyxDQUFDLENBQUM7UUFDbEQsTUFBTSxDQUFDLFdBQVcsRUFBRSxNQUFNLENBQUMsR0FBRyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsZUFBZSxFQUFFLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUM3RixJQUFJLFdBQVcsS0FBSyxlQUFlLEVBQUUsQ0FBQztZQUNwQyxNQUFNLElBQUksbUNBQWMsQ0FBQyxNQUFNLENBQUMsT0FBTyxJQUFJLGlDQUFpQyxDQUFDLENBQUM7UUFDaEYsQ0FBQztRQUNELElBQUksV0FBVyxLQUFLLHVCQUF1QixFQUFFLENBQUM7WUFDNUMsTUFBTSxJQUFJLG1DQUFjLENBQUMsMERBQTBELFdBQVcsR0FBRyxDQUFDLENBQUM7UUFDckcsQ0FBQztRQUNELE9BQU8sSUFBQSxzQ0FBdUIsRUFBQyxNQUFNLENBQUMsQ0FBQztJQUFBLENBQ3hDO0lBRUQsb0JBQW9CLENBQUMsT0FBNkIsRUFBZ0M7UUFDaEYsTUFBTSxjQUFjLEdBQUcsSUFBQSx1Q0FBd0IsRUFBQyxPQUFPLENBQUMsQ0FBQztRQUN6RCxNQUFNLENBQUMsV0FBVyxFQUFFLE1BQU0sQ0FBQyxHQUFHLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxzQkFBc0IsRUFBRSxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDcEcsSUFBSSxXQUFXLEtBQUssZUFBZSxFQUFFLENBQUM7WUFDcEMsTUFBTSxJQUFJLG1DQUFjLENBQUMsTUFBTSxDQUFDLE9BQU8sSUFBSSxpQ0FBaUMsQ0FBQyxDQUFDO1FBQ2hGLENBQUM7UUFDRCxJQUFJLFdBQVcsS0FBSyw4QkFBOEIsRUFBRSxDQUFDO1lBQ25ELE1BQU0sSUFBSSxtQ0FBYyxDQUFDLGlFQUFpRSxXQUFXLEdBQUcsQ0FBQyxDQUFDO1FBQzVHLENBQUM7UUFDRCxPQUFPLElBQUEsNkNBQThCLEVBQUMsTUFBTSxDQUFDLENBQUM7SUFBQSxDQUMvQztJQUVELHVCQUF1QixDQUFDLE9BQWdDLEVBQW1DO1FBQ3pGLE1BQU0sY0FBYyxHQUFHLElBQUEsMENBQTJCLEVBQUMsT0FBTyxDQUFDLENBQUM7UUFDNUQsTUFBTSxDQUFDLFdBQVcsRUFBRSxNQUFNLENBQUMsR0FBRyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMseUJBQXlCLEVBQUUsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3ZHLElBQUksV0FBVyxLQUFLLGVBQWUsRUFBRSxDQUFDO1lBQ3BDLE1BQU0sSUFBSSxtQ0FBYyxDQUFDLE1BQU0sQ0FBQyxPQUFPLElBQUksaUNBQWlDLENBQUMsQ0FBQztRQUNoRixDQUFDO1FBQ0QsSUFBSSxXQUFXLEtBQUssaUNBQWlDLEVBQUUsQ0FBQztZQUN0RCxNQUFNLElBQUksbUNBQWMsQ0FBQyxvRUFBb0UsV0FBVyxHQUFHLENBQUMsQ0FBQztRQUMvRyxDQUFDO1FBQ0QsT0FBTyxJQUFBLGdEQUFpQyxFQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQUEsQ0FDbEQ7SUFFRCxjQUFjLENBQUMsT0FBdUIsRUFBMEI7UUFDOUQsTUFBTSxjQUFjLEdBQUcsSUFBQSxpQ0FBa0IsRUFBQyxPQUFPLENBQUMsQ0FBQztRQUNuRCxNQUFNLENBQUMsV0FBVyxFQUFFLE1BQU0sQ0FBQyxHQUFHLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxnQkFBZ0IsRUFBRSxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDOUYsSUFBSSxXQUFXLEtBQUssZUFBZSxFQUFFLENBQUM7WUFDcEMsTUFBTSxJQUFJLG1DQUFjLENBQUMsTUFBTSxDQUFDLE9BQU8sSUFBSSxpQ0FBaUMsQ0FBQyxDQUFDO1FBQ2hGLENBQUM7UUFDRCxJQUFJLFdBQVcsS0FBSyx3QkFBd0IsRUFBRSxDQUFDO1lBQzdDLE1BQU0sSUFBSSxtQ0FBYyxDQUFDLDJEQUEyRCxXQUFXLEdBQUcsQ0FBQyxDQUFDO1FBQ3RHLENBQUM7UUFDRCxPQUFPLElBQUEsdUNBQXdCLEVBQUMsTUFBTSxDQUFDLENBQUM7SUFBQSxDQUN6QztJQUVELFlBQVksQ0FBQyxPQUFxQixFQUF3QjtRQUN4RCxNQUFNLGNBQWMsR0FBRyxJQUFBLCtCQUFnQixFQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2pELE1BQU0sQ0FBQyxXQUFXLEVBQUUsTUFBTSxDQUFDLEdBQUcsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLGNBQWMsRUFBRSxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDNUYsSUFBSSxXQUFXLEtBQUssZUFBZSxFQUFFLENBQUM7WUFDcEMsTUFBTSxJQUFJLG1DQUFjLENBQUMsTUFBTSxDQUFDLE9BQU8sSUFBSSxpQ0FBaUMsQ0FBQyxDQUFDO1FBQ2hGLENBQUM7UUFDRCxJQUFJLFdBQVcsS0FBSyxzQkFBc0IsRUFBRSxDQUFDO1lBQzNDLE1BQU0sSUFBSSxtQ0FBYyxDQUFDLHlEQUF5RCxXQUFXLEdBQUcsQ0FBQyxDQUFDO1FBQ3BHLENBQUM7UUFDRCxPQUFPLElBQUEscUNBQXNCLEVBQUMsTUFBTSxDQUFDLENBQUM7SUFBQSxDQUN2QztJQUVELGtCQUFrQixDQUFDLE9BQTJCLEVBQThCO1FBQzFFLE1BQU0sY0FBYyxHQUFHLElBQUEscUNBQXNCLEVBQUMsT0FBTyxDQUFDLENBQUM7UUFDdkQsTUFBTSxDQUFDLFdBQVcsRUFBRSxNQUFNLENBQUMsR0FBRyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsb0JBQW9CLEVBQUUsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2xHLElBQUksV0FBVyxLQUFLLGVBQWUsRUFBRSxDQUFDO1lBQ3BDLE1BQU0sSUFBSSxtQ0FBYyxDQUFDLE1BQU0sQ0FBQyxPQUFPLElBQUksaUNBQWlDLENBQUMsQ0FBQztRQUNoRixDQUFDO1FBQ0QsSUFBSSxXQUFXLEtBQUssNEJBQTRCLEVBQUUsQ0FBQztZQUNqRCxNQUFNLElBQUksbUNBQWMsQ0FBQywrREFBK0QsV0FBVyxHQUFHLENBQUMsQ0FBQztRQUMxRyxDQUFDO1FBQ0QsT0FBTyxJQUFBLDJDQUE0QixFQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQUEsQ0FDN0M7SUFFRCxPQUFPLENBQUMsT0FBZ0IsRUFBbUI7UUFDekMsTUFBTSxjQUFjLEdBQUcsSUFBQSwwQkFBVyxFQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzVDLE1BQU0sQ0FBQyxXQUFXLEVBQUUsTUFBTSxDQUFDLEdBQUcsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLFNBQVMsRUFBRSxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDdkYsSUFBSSxXQUFXLEtBQUssZUFBZSxFQUFFLENBQUM7WUFDcEMsTUFBTSxJQUFJLG1DQUFjLENBQUMsTUFBTSxDQUFDLE9BQU8sSUFBSSxpQ0FBaUMsQ0FBQyxDQUFDO1FBQ2hGLENBQUM7UUFDRCxJQUFJLFdBQVcsS0FBSyxpQkFBaUIsRUFBRSxDQUFDO1lBQ3RDLE1BQU0sSUFBSSxtQ0FBYyxDQUFDLG9EQUFvRCxXQUFXLEdBQUcsQ0FBQyxDQUFDO1FBQy9GLENBQUM7UUFDRCxPQUFPLElBQUEsZ0NBQWlCLEVBQUMsTUFBTSxDQUFDLENBQUM7SUFBQSxDQUNsQztJQUVELGNBQWMsQ0FBQyxPQUF1QixFQUEwQjtRQUM5RCxNQUFNLGNBQWMsR0FBRyxJQUFBLGlDQUFrQixFQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ25ELE1BQU0sQ0FBQyxXQUFXLEVBQUUsTUFBTSxDQUFDLEdBQUcsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLGdCQUFnQixFQUFFLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUM5RixJQUFJLFdBQVcsS0FBSyxlQUFlLEVBQUUsQ0FBQztZQUNwQyxNQUFNLElBQUksbUNBQWMsQ0FBQyxNQUFNLENBQUMsT0FBTyxJQUFJLGlDQUFpQyxDQUFDLENBQUM7UUFDaEYsQ0FBQztRQUNELElBQUksV0FBVyxLQUFLLHdCQUF3QixFQUFFLENBQUM7WUFDN0MsTUFBTSxJQUFJLG1DQUFjLENBQUMsMkRBQTJELFdBQVcsR0FBRyxDQUFDLENBQUM7UUFDdEcsQ0FBQztRQUNELE9BQU8sSUFBQSx1Q0FBd0IsRUFBQyxNQUFNLENBQUMsQ0FBQztJQUFBLENBQ3pDO0lBRUQsVUFBVSxDQUFDLE9BQW1CLEVBQXNCO1FBQ2xELE1BQU0sY0FBYyxHQUFHLElBQUEsNkJBQWMsRUFBQyxPQUFPLENBQUMsQ0FBQztRQUMvQyxNQUFNLENBQUMsV0FBVyxFQUFFLE1BQU0sQ0FBQyxHQUFHLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxZQUFZLEVBQUUsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzFGLElBQUksV0FBVyxLQUFLLGVBQWUsRUFBRSxDQUFDO1lBQ3BDLE1BQU0sSUFBSSxtQ0FBYyxDQUFDLE1BQU0sQ0FBQyxPQUFPLElBQUksaUNBQWlDLENBQUMsQ0FBQztRQUNoRixDQUFDO1FBQ0QsSUFBSSxXQUFXLEtBQUssb0JBQW9CLEVBQUUsQ0FBQztZQUN6QyxNQUFNLElBQUksbUNBQWMsQ0FBQyx1REFBdUQsV0FBVyxHQUFHLENBQUMsQ0FBQztRQUNsRyxDQUFDO1FBQ0QsT0FBTyxJQUFBLG1DQUFvQixFQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQUEsQ0FDckM7SUFFRCxVQUFVLENBQUMsT0FBbUIsRUFBc0I7UUFDbEQsTUFBTSxjQUFjLEdBQUcsSUFBQSw2QkFBYyxFQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQy9DLE1BQU0sQ0FBQyxXQUFXLEVBQUUsTUFBTSxDQUFDLEdBQUcsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLFlBQVksRUFBRSxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDMUYsSUFBSSxXQUFXLEtBQUssZUFBZSxFQUFFLENBQUM7WUFDcEMsTUFBTSxJQUFJLG1DQUFjLENBQUMsTUFBTSxDQUFDLE9BQU8sSUFBSSxpQ0FBaUMsQ0FBQyxDQUFDO1FBQ2hGLENBQUM7UUFDRCxJQUFJLFdBQVcsS0FBSyxvQkFBb0IsRUFBRSxDQUFDO1lBQ3pDLE1BQU0sSUFBSSxtQ0FBYyxDQUFDLHVEQUF1RCxXQUFXLEdBQUcsQ0FBQyxDQUFDO1FBQ2xHLENBQUM7UUFDRCxPQUFPLElBQUEsbUNBQW9CLEVBQUMsTUFBTSxDQUFDLENBQUM7SUFBQSxDQUNyQztJQUVELFdBQVcsQ0FBQyxPQUFvQixFQUF1QjtRQUNyRCxNQUFNLGNBQWMsR0FBRyxJQUFBLDhCQUFlLEVBQUMsT0FBTyxDQUFDLENBQUM7UUFDaEQsTUFBTSxDQUFDLFdBQVcsRUFBRSxNQUFNLENBQUMsR0FBRyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsYUFBYSxFQUFFLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUMzRixJQUFJLFdBQVcsS0FBSyxlQUFlLEVBQUUsQ0FBQztZQUNwQyxNQUFNLElBQUksbUNBQWMsQ0FBQyxNQUFNLENBQUMsT0FBTyxJQUFJLGlDQUFpQyxDQUFDLENBQUM7UUFDaEYsQ0FBQztRQUNELElBQUksV0FBVyxLQUFLLHFCQUFxQixFQUFFLENBQUM7WUFDMUMsTUFBTSxJQUFJLG1DQUFjLENBQUMsd0RBQXdELFdBQVcsR0FBRyxDQUFDLENBQUM7UUFDbkcsQ0FBQztRQUNELE9BQU8sSUFBQSxvQ0FBcUIsRUFBQyxNQUFNLENBQUMsQ0FBQztJQUFBLENBQ3RDO0lBRUQsV0FBVyxDQUFDLE9BQW9CLEVBQXVCO1FBQ3JELE1BQU0sY0FBYyxHQUFHLElBQUEsOEJBQWUsRUFBQyxPQUFPLENBQUMsQ0FBQztRQUNoRCxNQUFNLENBQUMsV0FBVyxFQUFFLE1BQU0sQ0FBQyxHQUFHLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxhQUFhLEVBQUUsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzNGLElBQUksV0FBVyxLQUFLLGVBQWUsRUFBRSxDQUFDO1lBQ3BDLE1BQU0sSUFBSSxtQ0FBYyxDQUFDLE1BQU0sQ0FBQyxPQUFPLElBQUksaUNBQWlDLENBQUMsQ0FBQztRQUNoRixDQUFDO1FBQ0QsSUFBSSxXQUFXLEtBQUsscUJBQXFCLEVBQUUsQ0FBQztZQUMxQyxNQUFNLElBQUksbUNBQWMsQ0FBQyx3REFBd0QsV0FBVyxHQUFHLENBQUMsQ0FBQztRQUNuRyxDQUFDO1FBQ0QsT0FBTyxJQUFBLG9DQUFxQixFQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQUEsQ0FDdEM7SUFFRCxnQkFBZ0IsQ0FBQyxPQUF5QixFQUE0QjtRQUNwRSxNQUFNLGNBQWMsR0FBRyxJQUFBLG1DQUFvQixFQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3JELE1BQU0sQ0FBQyxXQUFXLEVBQUUsTUFBTSxDQUFDLEdBQUcsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLGtCQUFrQixFQUFFLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNoRyxJQUFJLFdBQVcsS0FBSyxlQUFlLEVBQUUsQ0FBQztZQUNwQyxNQUFNLElBQUksbUNBQWMsQ0FBQyxNQUFNLENBQUMsT0FBTyxJQUFJLGlDQUFpQyxDQUFDLENBQUM7UUFDaEYsQ0FBQztRQUNELElBQUksV0FBVyxLQUFLLDBCQUEwQixFQUFFLENBQUM7WUFDL0MsTUFBTSxJQUFJLG1DQUFjLENBQUMsNkRBQTZELFdBQVcsR0FBRyxDQUFDLENBQUM7UUFDeEcsQ0FBQztRQUNELE9BQU8sSUFBQSx5Q0FBMEIsRUFBQyxNQUFNLENBQUMsQ0FBQztJQUFBLENBQzNDO0lBRUQsbUJBQW1CLENBQUMsT0FBNEIsRUFBK0I7UUFDN0UsTUFBTSxjQUFjLEdBQUcsSUFBQSxzQ0FBdUIsRUFBQyxPQUFPLENBQUMsQ0FBQztRQUN4RCxNQUFNLENBQUMsV0FBVyxFQUFFLE1BQU0sQ0FBQyxHQUFHLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxxQkFBcUIsRUFBRSxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDbkcsSUFBSSxXQUFXLEtBQUssZUFBZSxFQUFFLENBQUM7WUFDcEMsTUFBTSxJQUFJLG1DQUFjLENBQUMsTUFBTSxDQUFDLE9BQU8sSUFBSSxpQ0FBaUMsQ0FBQyxDQUFDO1FBQ2hGLENBQUM7UUFDRCxJQUFJLFdBQVcsS0FBSyw2QkFBNkIsRUFBRSxDQUFDO1lBQ2xELE1BQU0sSUFBSSxtQ0FBYyxDQUFDLGdFQUFnRSxXQUFXLEdBQUcsQ0FBQyxDQUFDO1FBQzNHLENBQUM7UUFDRCxPQUFPLElBQUEsNENBQTZCLEVBQUMsTUFBTSxDQUFDLENBQUM7SUFBQSxDQUM5QztJQUVELGlCQUFpQixDQUFDLE9BQTBCLEVBQTZCO1FBQ3ZFLE1BQU0sY0FBYyxHQUFHLElBQUEsb0NBQXFCLEVBQUMsT0FBTyxDQUFDLENBQUM7UUFDdEQsTUFBTSxDQUFDLFdBQVcsRUFBRSxNQUFNLENBQUMsR0FBRyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsbUJBQW1CLEVBQUUsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2pHLElBQUksV0FBVyxLQUFLLGVBQWUsRUFBRSxDQUFDO1lBQ3BDLE1BQU0sSUFBSSxtQ0FBYyxDQUFDLE1BQU0sQ0FBQyxPQUFPLElBQUksaUNBQWlDLENBQUMsQ0FBQztRQUNoRixDQUFDO1FBQ0QsSUFBSSxXQUFXLEtBQUssMkJBQTJCLEVBQUUsQ0FBQztZQUNoRCxNQUFNLElBQUksbUNBQWMsQ0FBQyw4REFBOEQsV0FBVyxHQUFHLENBQUMsQ0FBQztRQUN6RyxDQUFDO1FBQ0QsT0FBTyxJQUFBLDBDQUEyQixFQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQUEsQ0FDNUM7SUFFRCxZQUFZLENBQUMsT0FBcUIsRUFBd0I7UUFDeEQsTUFBTSxjQUFjLEdBQUcsSUFBQSwrQkFBZ0IsRUFBQyxPQUFPLENBQUMsQ0FBQztRQUNqRCxNQUFNLENBQUMsV0FBVyxFQUFFLE1BQU0sQ0FBQyxHQUFHLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxjQUFjLEVBQUUsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzVGLElBQUksV0FBVyxLQUFLLGVBQWUsRUFBRSxDQUFDO1lBQ3BDLE1BQU0sSUFBSSxtQ0FBYyxDQUFDLE1BQU0sQ0FBQyxPQUFPLElBQUksaUNBQWlDLENBQUMsQ0FBQztRQUNoRixDQUFDO1FBQ0QsSUFBSSxXQUFXLEtBQUssc0JBQXNCLEVBQUUsQ0FBQztZQUMzQyxNQUFNLElBQUksbUNBQWMsQ0FBQyx5REFBeUQsV0FBVyxHQUFHLENBQUMsQ0FBQztRQUNwRyxDQUFDO1FBQ0QsT0FBTyxJQUFBLHFDQUFzQixFQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQUEsQ0FDdkM7SUFFRCxvQkFBb0IsQ0FBQyxPQUE2QixFQUFnQztRQUNoRixNQUFNLGNBQWMsR0FBRyxJQUFBLHVDQUF3QixFQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3pELE1BQU0sQ0FBQyxXQUFXLEVBQUUsTUFBTSxDQUFDLEdBQUcsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLHNCQUFzQixFQUFFLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNwRyxJQUFJLFdBQVcsS0FBSyxlQUFlLEVBQUUsQ0FBQztZQUNwQyxNQUFNLElBQUksbUNBQWMsQ0FBQyxNQUFNLENBQUMsT0FBTyxJQUFJLGlDQUFpQyxDQUFDLENBQUM7UUFDaEYsQ0FBQztRQUNELElBQUksV0FBVyxLQUFLLDhCQUE4QixFQUFFLENBQUM7WUFDbkQsTUFBTSxJQUFJLG1DQUFjLENBQUMsaUVBQWlFLFdBQVcsR0FBRyxDQUFDLENBQUM7UUFDNUcsQ0FBQztRQUNELE9BQU8sSUFBQSw2Q0FBOEIsRUFBQyxNQUFNLENBQUMsQ0FBQztJQUFBLENBQy9DO0lBRUQsa0JBQWtCLENBQUMsT0FBMkIsRUFBOEI7UUFDMUUsTUFBTSxjQUFjLEdBQUcsSUFBQSxxQ0FBc0IsRUFBQyxPQUFPLENBQUMsQ0FBQztRQUN2RCxNQUFNLENBQUMsV0FBVyxFQUFFLE1BQU0sQ0FBQyxHQUFHLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxvQkFBb0IsRUFBRSxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDbEcsSUFBSSxXQUFXLEtBQUssZUFBZSxFQUFFLENBQUM7WUFDcEMsTUFBTSxJQUFJLG1DQUFjLENBQUMsTUFBTSxDQUFDLE9BQU8sSUFBSSxpQ0FBaUMsQ0FBQyxDQUFDO1FBQ2hGLENBQUM7UUFDRCxJQUFJLFdBQVcsS0FBSyw0QkFBNEIsRUFBRSxDQUFDO1lBQ2pELE1BQU0sSUFBSSxtQ0FBYyxDQUFDLCtEQUErRCxXQUFXLEdBQUcsQ0FBQyxDQUFDO1FBQzFHLENBQUM7UUFDRCxPQUFPLElBQUEsMkNBQTRCLEVBQUMsTUFBTSxDQUFDLENBQUM7SUFBQSxDQUM3QztJQUVELFdBQVcsQ0FBQyxPQUFvQixFQUF1QjtRQUNyRCxNQUFNLGNBQWMsR0FBRyxJQUFBLDhCQUFlLEVBQUMsT0FBTyxDQUFDLENBQUM7UUFDaEQsTUFBTSxDQUFDLFdBQVcsRUFBRSxNQUFNLENBQUMsR0FBRyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsYUFBYSxFQUFFLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUMzRixJQUFJLFdBQVcsS0FBSyxlQUFlLEVBQUUsQ0FBQztZQUNwQyxNQUFNLElBQUksbUNBQWMsQ0FBQyxNQUFNLENBQUMsT0FBTyxJQUFJLGlDQUFpQyxDQUFDLENBQUM7UUFDaEYsQ0FBQztRQUNELElBQUksV0FBVyxLQUFLLHFCQUFxQixFQUFFLENBQUM7WUFDMUMsTUFBTSxJQUFJLG1DQUFjLENBQUMsd0RBQXdELFdBQVcsR0FBRyxDQUFDLENBQUM7UUFDbkcsQ0FBQztRQUNELE9BQU8sSUFBQSxvQ0FBcUIsRUFBQyxNQUFNLENBQUMsQ0FBQztJQUFBLENBQ3RDO0lBRUQsV0FBVyxDQUFDLE9BQW9CLEVBQXVCO1FBQ3JELE1BQU0sY0FBYyxHQUFHLElBQUEsOEJBQWUsRUFBQyxPQUFPLENBQUMsQ0FBQztRQUNoRCxNQUFNLENBQUMsV0FBVyxFQUFFLE1BQU0sQ0FBQyxHQUFHLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxhQUFhLEVBQUUsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzNGLElBQUksV0FBVyxLQUFLLGVBQWUsRUFBRSxDQUFDO1lBQ3BDLE1BQU0sSUFBSSxtQ0FBYyxDQUFDLE1BQU0sQ0FBQyxPQUFPLElBQUksaUNBQWlDLENBQUMsQ0FBQztRQUNoRixDQUFDO1FBQ0QsSUFBSSxXQUFXLEtBQUsscUJBQXFCLEVBQUUsQ0FBQztZQUMxQyxNQUFNLElBQUksbUNBQWMsQ0FBQyx3REFBd0QsV0FBVyxHQUFHLENBQUMsQ0FBQztRQUNuRyxDQUFDO1FBQ0QsT0FBTyxJQUFBLG9DQUFxQixFQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQUEsQ0FDdEM7SUFFRCxVQUFVLENBQUMsT0FBbUIsRUFBc0I7UUFDbEQsTUFBTSxjQUFjLEdBQUcsSUFBQSw2QkFBYyxFQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQy9DLE1BQU0sQ0FBQyxXQUFXLEVBQUUsTUFBTSxDQUFDLEdBQUcsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLFlBQVksRUFBRSxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDMUYsSUFBSSxXQUFXLEtBQUssZUFBZSxFQUFFLENBQUM7WUFDcEMsTUFBTSxJQUFJLG1DQUFjLENBQUMsTUFBTSxDQUFDLE9BQU8sSUFBSSxpQ0FBaUMsQ0FBQyxDQUFDO1FBQ2hGLENBQUM7UUFDRCxJQUFJLFdBQVcsS0FBSyxvQkFBb0IsRUFBRSxDQUFDO1lBQ3pDLE1BQU0sSUFBSSxtQ0FBYyxDQUFDLHVEQUF1RCxXQUFXLEdBQUcsQ0FBQyxDQUFDO1FBQ2xHLENBQUM7UUFDRCxPQUFPLElBQUEsbUNBQW9CLEVBQUMsTUFBTSxDQUFDLENBQUM7SUFBQSxDQUNyQztJQUVELFVBQVUsQ0FBQyxPQUFtQixFQUFzQjtRQUNsRCxNQUFNLGNBQWMsR0FBRyxJQUFBLDZCQUFjLEVBQUMsT0FBTyxDQUFDLENBQUM7UUFDL0MsTUFBTSxDQUFDLFdBQVcsRUFBRSxNQUFNLENBQUMsR0FBRyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsWUFBWSxFQUFFLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUMxRixJQUFJLFdBQVcsS0FBSyxlQUFlLEVBQUUsQ0FBQztZQUNwQyxNQUFNLElBQUksbUNBQWMsQ0FBQyxNQUFNLENBQUMsT0FBTyxJQUFJLGlDQUFpQyxDQUFDLENBQUM7UUFDaEYsQ0FBQztRQUNELElBQUksV0FBVyxLQUFLLG9CQUFvQixFQUFFLENBQUM7WUFDekMsTUFBTSxJQUFJLG1DQUFjLENBQUMsdURBQXVELFdBQVcsR0FBRyxDQUFDLENBQUM7UUFDbEcsQ0FBQztRQUNELE9BQU8sSUFBQSxtQ0FBb0IsRUFBQyxNQUFNLENBQUMsQ0FBQztJQUFBLENBQ3JDO0lBRUQsZ0JBQWdCLENBQUMsT0FBeUIsRUFBNEI7UUFDcEUsTUFBTSxjQUFjLEdBQUcsSUFBQSxtQ0FBb0IsRUFBQyxPQUFPLENBQUMsQ0FBQztRQUNyRCxNQUFNLENBQUMsV0FBVyxFQUFFLE1BQU0sQ0FBQyxHQUFHLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxrQkFBa0IsRUFBRSxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDaEcsSUFBSSxXQUFXLEtBQUssZUFBZSxFQUFFLENBQUM7WUFDcEMsTUFBTSxJQUFJLG1DQUFjLENBQUMsTUFBTSxDQUFDLE9BQU8sSUFBSSxpQ0FBaUMsQ0FBQyxDQUFDO1FBQ2hGLENBQUM7UUFDRCxJQUFJLFdBQVcsS0FBSywwQkFBMEIsRUFBRSxDQUFDO1lBQy9DLE1BQU0sSUFBSSxtQ0FBYyxDQUFDLDZEQUE2RCxXQUFXLEdBQUcsQ0FBQyxDQUFDO1FBQ3hHLENBQUM7UUFDRCxPQUFPLElBQUEseUNBQTBCLEVBQUMsTUFBTSxDQUFDLENBQUM7SUFBQSxDQUMzQztJQUVELHFCQUFxQixDQUFDLE9BQThCLEVBQWlDO1FBQ25GLE1BQU0sY0FBYyxHQUFHLElBQUEsd0NBQXlCLEVBQUMsT0FBTyxDQUFDLENBQUM7UUFDMUQsTUFBTSxDQUFDLFdBQVcsRUFBRSxNQUFNLENBQUMsR0FBRyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsdUJBQXVCLEVBQUUsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3JHLElBQUksV0FBVyxLQUFLLGVBQWUsRUFBRSxDQUFDO1lBQ3BDLE1BQU0sSUFBSSxtQ0FBYyxDQUFDLE1BQU0sQ0FBQyxPQUFPLElBQUksaUNBQWlDLENBQUMsQ0FBQztRQUNoRixDQUFDO1FBQ0QsSUFBSSxXQUFXLEtBQUssK0JBQStCLEVBQUUsQ0FBQztZQUNwRCxNQUFNLElBQUksbUNBQWMsQ0FBQyxrRUFBa0UsV0FBVyxHQUFHLENBQUMsQ0FBQztRQUM3RyxDQUFDO1FBQ0QsT0FBTyxJQUFBLDhDQUErQixFQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQUEsQ0FDaEQ7SUFFRCx1QkFBdUIsQ0FBQyxPQUFnQyxFQUFtQztRQUN6RixNQUFNLGNBQWMsR0FBRyxJQUFBLDBDQUEyQixFQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzVELE1BQU0sQ0FBQyxXQUFXLEVBQUUsTUFBTSxDQUFDLEdBQUcsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLHlCQUF5QixFQUFFLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN2RyxJQUFJLFdBQVcsS0FBSyxlQUFlLEVBQUUsQ0FBQztZQUNwQyxNQUFNLElBQUksbUNBQWMsQ0FBQyxNQUFNLENBQUMsT0FBTyxJQUFJLGlDQUFpQyxDQUFDLENBQUM7UUFDaEYsQ0FBQztRQUNELElBQUksV0FBVyxLQUFLLGlDQUFpQyxFQUFFLENBQUM7WUFDdEQsTUFBTSxJQUFJLG1DQUFjLENBQUMsb0VBQW9FLFdBQVcsR0FBRyxDQUFDLENBQUM7UUFDL0csQ0FBQztRQUNELE9BQU8sSUFBQSxnREFBaUMsRUFBQyxNQUFNLENBQUMsQ0FBQztJQUFBLENBQ2xEO0lBRUQseUJBQXlCLENBQUMsT0FBa0MsRUFBcUM7UUFDL0YsTUFBTSxjQUFjLEdBQUcsSUFBQSw0Q0FBNkIsRUFBQyxPQUFPLENBQUMsQ0FBQztRQUM5RCxNQUFNLENBQUMsV0FBVyxFQUFFLE1BQU0sQ0FBQyxHQUFHLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQywyQkFBMkIsRUFBRSxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDekcsSUFBSSxXQUFXLEtBQUssZUFBZSxFQUFFLENBQUM7WUFDcEMsTUFBTSxJQUFJLG1DQUFjLENBQUMsTUFBTSxDQUFDLE9BQU8sSUFBSSxpQ0FBaUMsQ0FBQyxDQUFDO1FBQ2hGLENBQUM7UUFDRCxJQUFJLFdBQVcsS0FBSyxtQ0FBbUMsRUFBRSxDQUFDO1lBQ3hELE1BQU0sSUFBSSxtQ0FBYyxDQUFDLHNFQUFzRSxXQUFXLEdBQUcsQ0FBQyxDQUFDO1FBQ2pILENBQUM7UUFDRCxPQUFPLElBQUEsa0RBQW1DLEVBQUMsTUFBTSxDQUFDLENBQUM7SUFBQSxDQUNwRDtJQUVELHNCQUFzQixDQUFDLE9BQStCLEVBQWtDO1FBQ3RGLE1BQU0sY0FBYyxHQUFHLElBQUEseUNBQTBCLEVBQUMsT0FBTyxDQUFDLENBQUM7UUFDM0QsTUFBTSxDQUFDLFdBQVcsRUFBRSxNQUFNLENBQUMsR0FBRyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsd0JBQXdCLEVBQUUsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3RHLElBQUksV0FBVyxLQUFLLGVBQWUsRUFBRSxDQUFDO1lBQ3BDLE1BQU0sSUFBSSxtQ0FBYyxDQUFDLE1BQU0sQ0FBQyxPQUFPLElBQUksaUNBQWlDLENBQUMsQ0FBQztRQUNoRixDQUFDO1FBQ0QsSUFBSSxXQUFXLEtBQUssZ0NBQWdDLEVBQUUsQ0FBQztZQUNyRCxNQUFNLElBQUksbUNBQWMsQ0FBQyxtRUFBbUUsV0FBVyxHQUFHLENBQUMsQ0FBQztRQUM5RyxDQUFDO1FBQ0QsT0FBTyxJQUFBLCtDQUFnQyxFQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQUEsQ0FDakQ7SUFFRCw4QkFBOEIsQ0FBQyxPQUF1QyxFQUEwQztRQUM5RyxNQUFNLGNBQWMsR0FBRyxJQUFBLGlEQUFrQyxFQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ25FLE1BQU0sQ0FBQyxXQUFXLEVBQUUsTUFBTSxDQUFDLEdBQUcsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLGdDQUFnQyxFQUFFLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUM5RyxJQUFJLFdBQVcsS0FBSyxlQUFlLEVBQUUsQ0FBQztZQUNwQyxNQUFNLElBQUksbUNBQWMsQ0FBQyxNQUFNLENBQUMsT0FBTyxJQUFJLGlDQUFpQyxDQUFDLENBQUM7UUFDaEYsQ0FBQztRQUNELElBQUksV0FBVyxLQUFLLHdDQUF3QyxFQUFFLENBQUM7WUFDN0QsTUFBTSxJQUFJLG1DQUFjLENBQUMsMkVBQTJFLFdBQVcsR0FBRyxDQUFDLENBQUM7UUFDdEgsQ0FBQztRQUNELE9BQU8sSUFBQSx1REFBd0MsRUFBQyxNQUFNLENBQUMsQ0FBQztJQUFBLENBQ3pEO0lBRUQsOEJBQThCLENBQUMsT0FBdUMsRUFBMEM7UUFDOUcsTUFBTSxjQUFjLEdBQUcsSUFBQSxpREFBa0MsRUFBQyxPQUFPLENBQUMsQ0FBQztRQUNuRSxNQUFNLENBQUMsV0FBVyxFQUFFLE1BQU0sQ0FBQyxHQUFHLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxnQ0FBZ0MsRUFBRSxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDOUcsSUFBSSxXQUFXLEtBQUssZUFBZSxFQUFFLENBQUM7WUFDcEMsTUFBTSxJQUFJLG1DQUFjLENBQUMsTUFBTSxDQUFDLE9BQU8sSUFBSSxpQ0FBaUMsQ0FBQyxDQUFDO1FBQ2hGLENBQUM7UUFDRCxJQUFJLFdBQVcsS0FBSyx3Q0FBd0MsRUFBRSxDQUFDO1lBQzdELE1BQU0sSUFBSSxtQ0FBYyxDQUFDLDJFQUEyRSxXQUFXLEdBQUcsQ0FBQyxDQUFDO1FBQ3RILENBQUM7UUFDRCxPQUFPLElBQUEsdURBQXdDLEVBQUMsTUFBTSxDQUFDLENBQUM7SUFBQSxDQUN6RDtJQUVELGdDQUFnQyxDQUFDLE9BQXlDLEVBQTRDO1FBQ3BILE1BQU0sY0FBYyxHQUFHLElBQUEsbURBQW9DLEVBQUMsT0FBTyxDQUFDLENBQUM7UUFDckUsTUFBTSxDQUFDLFdBQVcsRUFBRSxNQUFNLENBQUMsR0FBRyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsa0NBQWtDLEVBQUUsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2hILElBQUksV0FBVyxLQUFLLGVBQWUsRUFBRSxDQUFDO1lBQ3BDLE1BQU0sSUFBSSxtQ0FBYyxDQUFDLE1BQU0sQ0FBQyxPQUFPLElBQUksaUNBQWlDLENBQUMsQ0FBQztRQUNoRixDQUFDO1FBQ0QsSUFBSSxXQUFXLEtBQUssMENBQTBDLEVBQUUsQ0FBQztZQUMvRCxNQUFNLElBQUksbUNBQWMsQ0FBQyw2RUFBNkUsV0FBVyxHQUFHLENBQUMsQ0FBQztRQUN4SCxDQUFDO1FBQ0QsT0FBTyxJQUFBLHlEQUEwQyxFQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQUEsQ0FDM0Q7SUFFRCxnQ0FBZ0MsQ0FBQyxPQUF5QyxFQUE0QztRQUNwSCxNQUFNLGNBQWMsR0FBRyxJQUFBLG1EQUFvQyxFQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3JFLE1BQU0sQ0FBQyxXQUFXLEVBQUUsTUFBTSxDQUFDLEdBQUcsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLGtDQUFrQyxFQUFFLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNoSCxJQUFJLFdBQVcsS0FBSyxlQUFlLEVBQUUsQ0FBQztZQUNwQyxNQUFNLElBQUksbUNBQWMsQ0FBQyxNQUFNLENBQUMsT0FBTyxJQUFJLGlDQUFpQyxDQUFDLENBQUM7UUFDaEYsQ0FBQztRQUNELElBQUksV0FBVyxLQUFLLDBDQUEwQyxFQUFFLENBQUM7WUFDL0QsTUFBTSxJQUFJLG1DQUFjLENBQUMsNkVBQTZFLFdBQVcsR0FBRyxDQUFDLENBQUM7UUFDeEgsQ0FBQztRQUNELE9BQU8sSUFBQSx5REFBMEMsRUFBQyxNQUFNLENBQUMsQ0FBQztJQUFBLENBQzNEO0lBRUQsOEJBQThCLENBQUMsT0FBdUMsRUFBMEM7UUFDOUcsTUFBTSxjQUFjLEdBQUcsSUFBQSxpREFBa0MsRUFBQyxPQUFPLENBQUMsQ0FBQztRQUNuRSxNQUFNLENBQUMsV0FBVyxFQUFFLE1BQU0sQ0FBQyxHQUFHLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxnQ0FBZ0MsRUFBRSxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDOUcsSUFBSSxXQUFXLEtBQUssZUFBZSxFQUFFLENBQUM7WUFDcEMsTUFBTSxJQUFJLG1DQUFjLENBQUMsTUFBTSxDQUFDLE9BQU8sSUFBSSxpQ0FBaUMsQ0FBQyxDQUFDO1FBQ2hGLENBQUM7UUFDRCxJQUFJLFdBQVcsS0FBSyx3Q0FBd0MsRUFBRSxDQUFDO1lBQzdELE1BQU0sSUFBSSxtQ0FBYyxDQUFDLDJFQUEyRSxXQUFXLEdBQUcsQ0FBQyxDQUFDO1FBQ3RILENBQUM7UUFDRCxPQUFPLElBQUEsdURBQXdDLEVBQUMsTUFBTSxDQUFDLENBQUM7SUFBQSxDQUN6RDtJQUVELDhCQUE4QixDQUFDLE9BQXVDLEVBQTBDO1FBQzlHLE1BQU0sY0FBYyxHQUFHLElBQUEsaURBQWtDLEVBQUMsT0FBTyxDQUFDLENBQUM7UUFDbkUsTUFBTSxDQUFDLFdBQVcsRUFBRSxNQUFNLENBQUMsR0FBRyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsZ0NBQWdDLEVBQUUsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzlHLElBQUksV0FBVyxLQUFLLGVBQWUsRUFBRSxDQUFDO1lBQ3BDLE1BQU0sSUFBSSxtQ0FBYyxDQUFDLE1BQU0sQ0FBQyxPQUFPLElBQUksaUNBQWlDLENBQUMsQ0FBQztRQUNoRixDQUFDO1FBQ0QsSUFBSSxXQUFXLEtBQUssd0NBQXdDLEVBQUUsQ0FBQztZQUM3RCxNQUFNLElBQUksbUNBQWMsQ0FBQywyRUFBMkUsV0FBVyxHQUFHLENBQUMsQ0FBQztRQUN0SCxDQUFDO1FBQ0QsT0FBTyxJQUFBLHVEQUF3QyxFQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQUEsQ0FDekQ7SUFFRCw2QkFBNkIsQ0FBQyxPQUFzQyxFQUF5QztRQUMzRyxNQUFNLGNBQWMsR0FBRyxJQUFBLGdEQUFpQyxFQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2xFLE1BQU0sQ0FBQyxXQUFXLEVBQUUsTUFBTSxDQUFDLEdBQUcsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLCtCQUErQixFQUFFLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUM3RyxJQUFJLFdBQVcsS0FBSyxlQUFlLEVBQUUsQ0FBQztZQUNwQyxNQUFNLElBQUksbUNBQWMsQ0FBQyxNQUFNLENBQUMsT0FBTyxJQUFJLGlDQUFpQyxDQUFDLENBQUM7UUFDaEYsQ0FBQztRQUNELElBQUksV0FBVyxLQUFLLHVDQUF1QyxFQUFFLENBQUM7WUFDNUQsTUFBTSxJQUFJLG1DQUFjLENBQUMsMEVBQTBFLFdBQVcsR0FBRyxDQUFDLENBQUM7UUFDckgsQ0FBQztRQUNELE9BQU8sSUFBQSxzREFBdUMsRUFBQyxNQUFNLENBQUMsQ0FBQztJQUFBLENBQ3hEO0lBRUQsNkJBQTZCLENBQUMsT0FBc0MsRUFBeUM7UUFDM0csTUFBTSxjQUFjLEdBQUcsSUFBQSxnREFBaUMsRUFBQyxPQUFPLENBQUMsQ0FBQztRQUNsRSxNQUFNLENBQUMsV0FBVyxFQUFFLE1BQU0sQ0FBQyxHQUFHLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQywrQkFBK0IsRUFBRSxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDN0csSUFBSSxXQUFXLEtBQUssZUFBZSxFQUFFLENBQUM7WUFDcEMsTUFBTSxJQUFJLG1DQUFjLENBQUMsTUFBTSxDQUFDLE9BQU8sSUFBSSxpQ0FBaUMsQ0FBQyxDQUFDO1FBQ2hGLENBQUM7UUFDRCxJQUFJLFdBQVcsS0FBSyx1Q0FBdUMsRUFBRSxDQUFDO1lBQzVELE1BQU0sSUFBSSxtQ0FBYyxDQUFDLDBFQUEwRSxXQUFXLEdBQUcsQ0FBQyxDQUFDO1FBQ3JILENBQUM7UUFDRCxPQUFPLElBQUEsc0RBQXVDLEVBQUMsTUFBTSxDQUFDLENBQUM7SUFBQSxDQUN4RDtJQUVELFVBQVUsQ0FBQyxPQUFtQixFQUFzQjtRQUNsRCxNQUFNLGNBQWMsR0FBRyxJQUFBLDZCQUFjLEVBQUMsT0FBTyxDQUFDLENBQUM7UUFDL0MsTUFBTSxDQUFDLFdBQVcsRUFBRSxNQUFNLENBQUMsR0FBRyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsWUFBWSxFQUFFLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUMxRixJQUFJLFdBQVcsS0FBSyxlQUFlLEVBQUUsQ0FBQztZQUNwQyxNQUFNLElBQUksbUNBQWMsQ0FBQyxNQUFNLENBQUMsT0FBTyxJQUFJLGlDQUFpQyxDQUFDLENBQUM7UUFDaEYsQ0FBQztRQUNELElBQUksV0FBVyxLQUFLLG9CQUFvQixFQUFFLENBQUM7WUFDekMsTUFBTSxJQUFJLG1DQUFjLENBQUMsdURBQXVELFdBQVcsR0FBRyxDQUFDLENBQUM7UUFDbEcsQ0FBQztRQUNELE9BQU8sSUFBQSxtQ0FBb0IsRUFBQyxNQUFNLENBQUMsQ0FBQztJQUFBLENBQ3JDO0lBRUQsa0JBQWtCLENBQUMsT0FBMkIsRUFBOEI7UUFDMUUsTUFBTSxjQUFjLEdBQUcsSUFBQSxxQ0FBc0IsRUFBQyxPQUFPLENBQUMsQ0FBQztRQUN2RCxNQUFNLENBQUMsV0FBVyxFQUFFLE1BQU0sQ0FBQyxHQUFHLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxvQkFBb0IsRUFBRSxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDbEcsSUFBSSxXQUFXLEtBQUssZUFBZSxFQUFFLENBQUM7WUFDcEMsTUFBTSxJQUFJLG1DQUFjLENBQUMsTUFBTSxDQUFDLE9BQU8sSUFBSSxpQ0FBaUMsQ0FBQyxDQUFDO1FBQ2hGLENBQUM7UUFDRCxJQUFJLFdBQVcsS0FBSyw0QkFBNEIsRUFBRSxDQUFDO1lBQ2pELE1BQU0sSUFBSSxtQ0FBYyxDQUFDLCtEQUErRCxXQUFXLEdBQUcsQ0FBQyxDQUFDO1FBQzFHLENBQUM7UUFDRCxPQUFPLElBQUEsMkNBQTRCLEVBQUMsTUFBTSxDQUFDLENBQUM7SUFBQSxDQUM3QztJQUVELFFBQVEsQ0FBQyxPQUFpQixFQUFvQjtRQUM1QyxNQUFNLGNBQWMsR0FBRyxJQUFBLDJCQUFZLEVBQUMsT0FBTyxDQUFDLENBQUM7UUFDN0MsTUFBTSxDQUFDLFdBQVcsRUFBRSxNQUFNLENBQUMsR0FBRyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsVUFBVSxFQUFFLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN4RixJQUFJLFdBQVcsS0FBSyxlQUFlLEVBQUUsQ0FBQztZQUNwQyxNQUFNLElBQUksbUNBQWMsQ0FBQyxNQUFNLENBQUMsT0FBTyxJQUFJLGlDQUFpQyxDQUFDLENBQUM7UUFDaEYsQ0FBQztRQUNELElBQUksV0FBVyxLQUFLLGtCQUFrQixFQUFFLENBQUM7WUFDdkMsTUFBTSxJQUFJLG1DQUFjLENBQUMscURBQXFELFdBQVcsR0FBRyxDQUFDLENBQUM7UUFDaEcsQ0FBQztRQUNELE9BQU8sSUFBQSxpQ0FBa0IsRUFBQyxNQUFNLENBQUMsQ0FBQztJQUFBLENBQ25DO0lBRUQsT0FBTyxHQUFTO1FBQ2QsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU87WUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQUEsQ0FDbEQ7Q0FDRiJ9