@atomicfinance/bitcoin-dlc-provider 4.0.0 → 4.0.2

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 (802) hide show
  1. package/.turbo/turbo-lint.log +1 -0
  2. package/.yalc/@node-dlc/bitcoin/.nyc_output/982e80bf-a70c-452f-b63d-d749ae385531.json +1 -0
  3. package/.yalc/@node-dlc/bitcoin/.nyc_output/processinfo/982e80bf-a70c-452f-b63d-d749ae385531.json +1 -0
  4. package/.yalc/@node-dlc/bitcoin/.nyc_output/processinfo/index.json +1 -0
  5. package/.yalc/@node-dlc/bitcoin/README.md +11 -0
  6. package/.yalc/@node-dlc/bitcoin/__tests__/bitcoin/amount.spec.ts +330 -0
  7. package/.yalc/@node-dlc/bitcoin/__tests__/bitcoin/value.spec.ts +320 -0
  8. package/.yalc/@node-dlc/bitcoin/__tests__/tsconfig.json +8 -0
  9. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/Amount.ts.html +290 -0
  10. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/Base58.ts.html +269 -0
  11. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/Base58Check.ts.html +182 -0
  12. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/BitcoinError.ts.html +173 -0
  13. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/BitcoinErrorCode.ts.html +110 -0
  14. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/HashByteOrder.ts.html +143 -0
  15. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/HashValue.ts.html +350 -0
  16. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/LexicographicalSorters.ts.html +191 -0
  17. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/LockTime.ts.html +386 -0
  18. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/OpCodes.ts.html +437 -0
  19. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/OutPoint.ts.html +383 -0
  20. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/Script.ts.html +1607 -0
  21. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/Sequence.ts.html +713 -0
  22. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/SigHashType.ts.html +137 -0
  23. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/Stack.ts.html +323 -0
  24. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/TimeLockMode.ts.html +128 -0
  25. package/.yalc/@node-dlc/{messaging/coverage/lcov-report/lib/serde/SerdeUtils.ts.html → bitcoin/coverage/lcov-report/Tx.ts.html} +617 -491
  26. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/TxBuilder.ts.html +971 -0
  27. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/TxIn.ts.html +425 -0
  28. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/TxOut.ts.html +341 -0
  29. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/Value.ts.html +683 -0
  30. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/Wif.ts.html +311 -0
  31. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/Witness.ts.html +275 -0
  32. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/base.css +224 -0
  33. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/block-navigation.js +79 -0
  34. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/favicon.png +0 -0
  35. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/index.html +126 -0
  36. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/index.ts.html +164 -0
  37. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/prettify.css +1 -0
  38. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/prettify.js +2 -0
  39. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  40. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/sorter.js +170 -0
  41. package/.yalc/@node-dlc/bitcoin/coverage/lcov.info +123 -0
  42. package/.yalc/@node-dlc/bitcoin/dist/Amount.d.ts +48 -0
  43. package/.yalc/@node-dlc/bitcoin/dist/Amount.js +68 -0
  44. package/.yalc/@node-dlc/bitcoin/dist/Amount.js.map +1 -0
  45. package/.yalc/@node-dlc/bitcoin/dist/Base58.d.ts +22 -0
  46. package/.yalc/@node-dlc/bitcoin/dist/Base58.js +62 -0
  47. package/.yalc/@node-dlc/bitcoin/dist/Base58.js.map +1 -0
  48. package/.yalc/@node-dlc/bitcoin/dist/Base58Check.d.ts +14 -0
  49. package/.yalc/@node-dlc/bitcoin/dist/Base58Check.js +36 -0
  50. package/.yalc/@node-dlc/bitcoin/dist/Base58Check.js.map +1 -0
  51. package/.yalc/@node-dlc/bitcoin/dist/BitcoinError.d.ts +6 -0
  52. package/.yalc/@node-dlc/bitcoin/dist/BitcoinError.js +36 -0
  53. package/.yalc/@node-dlc/bitcoin/dist/BitcoinError.js.map +1 -0
  54. package/.yalc/@node-dlc/bitcoin/dist/BitcoinErrorCode.d.ts +10 -0
  55. package/.yalc/@node-dlc/bitcoin/dist/BitcoinErrorCode.js +15 -0
  56. package/.yalc/@node-dlc/bitcoin/dist/BitcoinErrorCode.js.map +1 -0
  57. package/.yalc/@node-dlc/bitcoin/dist/Block.d.ts +19 -0
  58. package/.yalc/@node-dlc/bitcoin/dist/Block.js +3 -0
  59. package/.yalc/@node-dlc/bitcoin/dist/Block.js.map +1 -0
  60. package/.yalc/@node-dlc/bitcoin/dist/HashByteOrder.d.ts +20 -0
  61. package/.yalc/@node-dlc/bitcoin/dist/HashByteOrder.js +25 -0
  62. package/.yalc/@node-dlc/bitcoin/dist/HashByteOrder.js.map +1 -0
  63. package/.yalc/@node-dlc/bitcoin/dist/HashValue.d.ts +55 -0
  64. package/.yalc/@node-dlc/bitcoin/dist/HashValue.js +82 -0
  65. package/.yalc/@node-dlc/bitcoin/dist/HashValue.js.map +1 -0
  66. package/.yalc/@node-dlc/bitcoin/dist/ICloneable.d.ts +3 -0
  67. package/.yalc/@node-dlc/bitcoin/dist/ICloneable.js +3 -0
  68. package/.yalc/@node-dlc/bitcoin/dist/ICloneable.js.map +1 -0
  69. package/.yalc/@node-dlc/bitcoin/dist/LexicographicalSorters.d.ts +18 -0
  70. package/.yalc/@node-dlc/bitcoin/dist/LexicographicalSorters.js +41 -0
  71. package/.yalc/@node-dlc/bitcoin/dist/LexicographicalSorters.js.map +1 -0
  72. package/.yalc/@node-dlc/bitcoin/dist/LockTime.d.ts +61 -0
  73. package/.yalc/@node-dlc/bitcoin/dist/LockTime.js +94 -0
  74. package/.yalc/@node-dlc/bitcoin/dist/LockTime.js.map +1 -0
  75. package/.yalc/@node-dlc/bitcoin/dist/OpCodes.d.ts +102 -0
  76. package/.yalc/@node-dlc/bitcoin/dist/OpCodes.js +116 -0
  77. package/.yalc/@node-dlc/bitcoin/dist/OpCodes.js.map +1 -0
  78. package/.yalc/@node-dlc/bitcoin/dist/OutPoint.d.ts +57 -0
  79. package/.yalc/@node-dlc/bitcoin/dist/OutPoint.js +88 -0
  80. package/.yalc/@node-dlc/bitcoin/dist/OutPoint.js.map +1 -0
  81. package/.yalc/@node-dlc/bitcoin/dist/Script.d.ts +185 -0
  82. package/.yalc/@node-dlc/bitcoin/dist/Script.js +404 -0
  83. package/.yalc/@node-dlc/bitcoin/dist/Script.js.map +1 -0
  84. package/.yalc/@node-dlc/bitcoin/dist/ScriptCmd.d.ts +3 -0
  85. package/.yalc/@node-dlc/bitcoin/dist/ScriptCmd.js +3 -0
  86. package/.yalc/@node-dlc/bitcoin/dist/ScriptCmd.js.map +1 -0
  87. package/.yalc/@node-dlc/bitcoin/dist/Sequence.d.ts +116 -0
  88. package/.yalc/@node-dlc/bitcoin/dist/Sequence.js +187 -0
  89. package/.yalc/@node-dlc/bitcoin/dist/Sequence.js.map +1 -0
  90. package/.yalc/@node-dlc/bitcoin/dist/SigHashType.d.ts +7 -0
  91. package/.yalc/@node-dlc/bitcoin/dist/SigHashType.js +27 -0
  92. package/.yalc/@node-dlc/bitcoin/dist/SigHashType.js.map +1 -0
  93. package/.yalc/@node-dlc/bitcoin/dist/SizeResult.d.ts +5 -0
  94. package/.yalc/@node-dlc/bitcoin/dist/SizeResult.js +3 -0
  95. package/.yalc/@node-dlc/bitcoin/dist/SizeResult.js.map +1 -0
  96. package/.yalc/@node-dlc/bitcoin/dist/Sorter.d.ts +1 -0
  97. package/.yalc/@node-dlc/bitcoin/dist/Sorter.js +3 -0
  98. package/.yalc/@node-dlc/bitcoin/dist/Sorter.js.map +1 -0
  99. package/.yalc/@node-dlc/bitcoin/dist/Stack.d.ts +15 -0
  100. package/.yalc/@node-dlc/bitcoin/dist/Stack.js +77 -0
  101. package/.yalc/@node-dlc/bitcoin/dist/Stack.js.map +1 -0
  102. package/.yalc/@node-dlc/bitcoin/dist/TimeLockMode.d.ts +15 -0
  103. package/.yalc/@node-dlc/bitcoin/dist/TimeLockMode.js +20 -0
  104. package/.yalc/@node-dlc/bitcoin/dist/TimeLockMode.js.map +1 -0
  105. package/.yalc/@node-dlc/bitcoin/dist/Tx.d.ts +150 -0
  106. package/.yalc/@node-dlc/bitcoin/dist/Tx.js +408 -0
  107. package/.yalc/@node-dlc/bitcoin/dist/Tx.js.map +1 -0
  108. package/.yalc/@node-dlc/bitcoin/dist/TxBuilder.d.ts +110 -0
  109. package/.yalc/@node-dlc/bitcoin/dist/TxBuilder.js +238 -0
  110. package/.yalc/@node-dlc/bitcoin/dist/TxBuilder.js.map +1 -0
  111. package/.yalc/@node-dlc/bitcoin/dist/TxIn.d.ts +71 -0
  112. package/.yalc/@node-dlc/bitcoin/dist/TxIn.js +79 -0
  113. package/.yalc/@node-dlc/bitcoin/dist/TxIn.js.map +1 -0
  114. package/.yalc/@node-dlc/bitcoin/dist/TxOut.d.ts +57 -0
  115. package/.yalc/@node-dlc/bitcoin/dist/TxOut.js +68 -0
  116. package/.yalc/@node-dlc/bitcoin/dist/TxOut.js.map +1 -0
  117. package/.yalc/@node-dlc/bitcoin/dist/Value.d.ts +122 -0
  118. package/.yalc/@node-dlc/bitcoin/dist/Value.js +180 -0
  119. package/.yalc/@node-dlc/bitcoin/dist/Value.js.map +1 -0
  120. package/.yalc/@node-dlc/bitcoin/dist/Wif.d.ts +41 -0
  121. package/.yalc/@node-dlc/bitcoin/dist/Wif.js +62 -0
  122. package/.yalc/@node-dlc/bitcoin/dist/Wif.js.map +1 -0
  123. package/.yalc/@node-dlc/bitcoin/dist/Witness.d.ts +41 -0
  124. package/.yalc/@node-dlc/bitcoin/dist/Witness.js +63 -0
  125. package/.yalc/@node-dlc/bitcoin/dist/Witness.js.map +1 -0
  126. package/.yalc/@node-dlc/bitcoin/dist/index.d.ts +28 -0
  127. package/.yalc/@node-dlc/bitcoin/dist/index.js +45 -0
  128. package/.yalc/@node-dlc/bitcoin/dist/index.js.map +1 -0
  129. package/.yalc/@node-dlc/bitcoin/lib/Amount.ts +70 -0
  130. package/.yalc/@node-dlc/bitcoin/lib/Base58.ts +63 -0
  131. package/.yalc/@node-dlc/bitcoin/lib/Base58Check.ts +34 -0
  132. package/.yalc/@node-dlc/bitcoin/lib/BitcoinError.ts +31 -0
  133. package/.yalc/@node-dlc/bitcoin/lib/BitcoinErrorCode.ts +10 -0
  134. package/.yalc/@node-dlc/bitcoin/lib/Block.ts +20 -0
  135. package/.yalc/@node-dlc/bitcoin/lib/HashByteOrder.ts +21 -0
  136. package/.yalc/@node-dlc/bitcoin/lib/HashValue.ts +90 -0
  137. package/.yalc/@node-dlc/bitcoin/lib/ICloneable.ts +3 -0
  138. package/.yalc/@node-dlc/bitcoin/lib/LexicographicalSorters.ts +37 -0
  139. package/.yalc/@node-dlc/bitcoin/lib/LockTime.ts +102 -0
  140. package/.yalc/@node-dlc/bitcoin/lib/OpCodes.ts +119 -0
  141. package/.yalc/@node-dlc/bitcoin/lib/OutPoint.ts +101 -0
  142. package/.yalc/@node-dlc/bitcoin/lib/Script.ts +509 -0
  143. package/.yalc/@node-dlc/bitcoin/lib/ScriptCmd.ts +3 -0
  144. package/.yalc/@node-dlc/bitcoin/lib/Sequence.ts +211 -0
  145. package/.yalc/@node-dlc/bitcoin/lib/SigHashType.ts +19 -0
  146. package/.yalc/@node-dlc/bitcoin/lib/SizeResult.ts +5 -0
  147. package/.yalc/@node-dlc/bitcoin/lib/Sorter.ts +1 -0
  148. package/.yalc/@node-dlc/bitcoin/lib/Stack.ts +81 -0
  149. package/.yalc/@node-dlc/bitcoin/lib/TimeLockMode.ts +16 -0
  150. package/.yalc/@node-dlc/bitcoin/lib/Tx.ts +480 -0
  151. package/.yalc/@node-dlc/bitcoin/lib/TxBuilder.ts +297 -0
  152. package/.yalc/@node-dlc/bitcoin/lib/TxIn.ts +115 -0
  153. package/.yalc/@node-dlc/bitcoin/lib/TxOut.ts +87 -0
  154. package/.yalc/@node-dlc/bitcoin/lib/Value.ts +201 -0
  155. package/.yalc/@node-dlc/bitcoin/lib/Wif.ts +77 -0
  156. package/.yalc/@node-dlc/bitcoin/lib/Witness.ts +65 -0
  157. package/.yalc/@node-dlc/bitcoin/lib/index.ts +28 -0
  158. package/.yalc/@node-dlc/bitcoin/package.json +31 -0
  159. package/.yalc/@node-dlc/bitcoin/tsconfig.json +8 -0
  160. package/.yalc/@node-dlc/bitcoin/yalc.sig +1 -0
  161. package/.yalc/@node-dlc/bufio/.eslintrc +6 -0
  162. package/.yalc/@node-dlc/bufio/.nyc_output/3c26c5b3-2a5e-4a53-88d4-06f4a5c339f7.json +1 -0
  163. package/.yalc/@node-dlc/bufio/.nyc_output/processinfo/3c26c5b3-2a5e-4a53-88d4-06f4a5c339f7.json +1 -0
  164. package/.yalc/@node-dlc/bufio/.nyc_output/processinfo/index.json +1 -0
  165. package/.yalc/@node-dlc/bufio/README.md +68 -0
  166. package/.yalc/@node-dlc/bufio/__tests__/BufferReader.spec.ts +548 -0
  167. package/.yalc/@node-dlc/bufio/__tests__/BufferWriter.spec.ts +530 -0
  168. package/.yalc/@node-dlc/bufio/__tests__/Hex.spec.ts +51 -0
  169. package/.yalc/@node-dlc/bufio/__tests__/StreamReader.spec.ts +133 -0
  170. package/.yalc/@node-dlc/bufio/__tests__/bigFromBufBE.spec.ts +14 -0
  171. package/.yalc/@node-dlc/bufio/__tests__/bigFromBufLE.spec.ts +14 -0
  172. package/.yalc/@node-dlc/bufio/__tests__/bigToBufBE.spec.ts +15 -0
  173. package/.yalc/@node-dlc/bufio/__tests__/bigToBufLE.spec.ts +14 -0
  174. package/.yalc/@node-dlc/bufio/__tests__/encodeVarInt.spec.ts +25 -0
  175. package/.yalc/@node-dlc/bufio/__tests__/tsconfig.json +7 -0
  176. package/.yalc/@node-dlc/bufio/__tests__/varIntBytes.spec.ts +34 -0
  177. package/.yalc/@node-dlc/bufio/coverage/lcov-report/BufferReader.ts.html +1142 -0
  178. package/.yalc/@node-dlc/bufio/coverage/lcov-report/BufferWriter.ts.html +953 -0
  179. package/.yalc/@node-dlc/bufio/coverage/lcov-report/Hex.ts.html +323 -0
  180. package/.yalc/@node-dlc/bufio/coverage/lcov-report/StreamReader.ts.html +620 -0
  181. package/.yalc/@node-dlc/bufio/coverage/lcov-report/base.css +224 -0
  182. package/.yalc/@node-dlc/bufio/coverage/lcov-report/bigFromBufBE.ts.html +89 -0
  183. package/.yalc/@node-dlc/bufio/coverage/lcov-report/bigFromBufLE.ts.html +95 -0
  184. package/.yalc/@node-dlc/bufio/coverage/lcov-report/bigToBufBE.ts.html +98 -0
  185. package/.yalc/@node-dlc/bufio/coverage/lcov-report/bigToBufLE.ts.html +95 -0
  186. package/.yalc/@node-dlc/bufio/coverage/lcov-report/block-navigation.js +79 -0
  187. package/.yalc/@node-dlc/bufio/coverage/lcov-report/bufToStream.ts.html +113 -0
  188. package/.yalc/@node-dlc/bufio/coverage/lcov-report/encodeVarInt.ts.html +203 -0
  189. package/.yalc/@node-dlc/bufio/coverage/lcov-report/favicon.png +0 -0
  190. package/.yalc/@node-dlc/bufio/coverage/lcov-report/index.html +261 -0
  191. package/.yalc/@node-dlc/bufio/coverage/lcov-report/prettify.css +1 -0
  192. package/.yalc/@node-dlc/bufio/coverage/lcov-report/prettify.js +2 -0
  193. package/.yalc/@node-dlc/bufio/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  194. package/.yalc/@node-dlc/bufio/coverage/lcov-report/sorter.js +170 -0
  195. package/.yalc/@node-dlc/bufio/coverage/lcov-report/varIntBytes.ts.html +116 -0
  196. package/.yalc/@node-dlc/bufio/coverage/lcov.info +747 -0
  197. package/.yalc/@node-dlc/bufio/dist/BufferReader.d.ts +155 -0
  198. package/.yalc/@node-dlc/bufio/dist/BufferReader.js +346 -0
  199. package/.yalc/@node-dlc/bufio/dist/BufferReader.js.map +1 -0
  200. package/.yalc/@node-dlc/bufio/dist/BufferWriter.d.ts +143 -0
  201. package/.yalc/@node-dlc/bufio/dist/BufferWriter.js +279 -0
  202. package/.yalc/@node-dlc/bufio/dist/BufferWriter.js.map +1 -0
  203. package/.yalc/@node-dlc/bufio/dist/Hex.d.ts +13 -0
  204. package/.yalc/@node-dlc/bufio/dist/Hex.js +78 -0
  205. package/.yalc/@node-dlc/bufio/dist/Hex.js.map +1 -0
  206. package/.yalc/@node-dlc/bufio/dist/StreamReader.d.ts +111 -0
  207. package/.yalc/@node-dlc/bufio/dist/StreamReader.js +180 -0
  208. package/.yalc/@node-dlc/bufio/dist/StreamReader.js.map +1 -0
  209. package/.yalc/@node-dlc/bufio/dist/bigFromBufBE.d.ts +2 -0
  210. package/.yalc/@node-dlc/bufio/dist/bigFromBufBE.js +8 -0
  211. package/.yalc/@node-dlc/bufio/dist/bigFromBufBE.js.map +1 -0
  212. package/.yalc/@node-dlc/bufio/dist/bigFromBufLE.d.ts +2 -0
  213. package/.yalc/@node-dlc/bufio/dist/bigFromBufLE.js +9 -0
  214. package/.yalc/@node-dlc/bufio/dist/bigFromBufLE.js.map +1 -0
  215. package/.yalc/@node-dlc/bufio/dist/bigToBufBE.d.ts +2 -0
  216. package/.yalc/@node-dlc/bufio/dist/bigToBufBE.js +13 -0
  217. package/.yalc/@node-dlc/bufio/dist/bigToBufBE.js.map +1 -0
  218. package/.yalc/@node-dlc/bufio/dist/bigToBufLE.d.ts +2 -0
  219. package/.yalc/@node-dlc/bufio/dist/bigToBufLE.js +9 -0
  220. package/.yalc/@node-dlc/bufio/dist/bigToBufLE.js.map +1 -0
  221. package/.yalc/@node-dlc/bufio/dist/bufToStream.d.ts +7 -0
  222. package/.yalc/@node-dlc/bufio/dist/bufToStream.js +15 -0
  223. package/.yalc/@node-dlc/bufio/dist/bufToStream.js.map +1 -0
  224. package/.yalc/@node-dlc/bufio/dist/encodeVarInt.d.ts +12 -0
  225. package/.yalc/@node-dlc/bufio/dist/encodeVarInt.js +46 -0
  226. package/.yalc/@node-dlc/bufio/dist/encodeVarInt.js.map +1 -0
  227. package/.yalc/@node-dlc/bufio/dist/index.d.ts +11 -0
  228. package/.yalc/@node-dlc/bufio/dist/index.js +28 -0
  229. package/.yalc/@node-dlc/bufio/dist/index.js.map +1 -0
  230. package/.yalc/@node-dlc/bufio/dist/varIntBytes.d.ts +5 -0
  231. package/.yalc/@node-dlc/bufio/dist/varIntBytes.js +22 -0
  232. package/.yalc/@node-dlc/bufio/dist/varIntBytes.js.map +1 -0
  233. package/.yalc/@node-dlc/bufio/lib/BufferReader.ts +354 -0
  234. package/.yalc/@node-dlc/bufio/lib/BufferWriter.ts +291 -0
  235. package/.yalc/@node-dlc/bufio/lib/Hex.ts +81 -0
  236. package/.yalc/@node-dlc/bufio/lib/StreamReader.ts +180 -0
  237. package/.yalc/@node-dlc/bufio/lib/bigFromBufBE.ts +3 -0
  238. package/.yalc/@node-dlc/bufio/lib/bigFromBufLE.ts +5 -0
  239. package/.yalc/@node-dlc/bufio/lib/bigToBufBE.ts +6 -0
  240. package/.yalc/@node-dlc/bufio/lib/bigToBufLE.ts +5 -0
  241. package/.yalc/@node-dlc/bufio/lib/bufToStream.ts +11 -0
  242. package/.yalc/@node-dlc/bufio/lib/encodeVarInt.ts +41 -0
  243. package/.yalc/@node-dlc/bufio/lib/index.ts +11 -0
  244. package/.yalc/@node-dlc/bufio/lib/varIntBytes.ts +12 -0
  245. package/.yalc/@node-dlc/bufio/package.json +27 -0
  246. package/.yalc/@node-dlc/bufio/tsconfig-build.json +7 -0
  247. package/.yalc/@node-dlc/bufio/tsconfig.json +7 -0
  248. package/.yalc/@node-dlc/bufio/yalc.sig +1 -0
  249. package/.yalc/@node-dlc/core/.nyc_output/687a3c14-9765-45fd-a1fe-f7db3d56fee4.json +1 -0
  250. package/.yalc/@node-dlc/core/.nyc_output/processinfo/687a3c14-9765-45fd-a1fe-f7db3d56fee4.json +1 -0
  251. package/.yalc/@node-dlc/core/.nyc_output/processinfo/index.json +1 -0
  252. package/.yalc/@node-dlc/core/README.md +11 -0
  253. package/.yalc/@node-dlc/core/__tests__/core.spec.ts +7 -0
  254. package/.yalc/@node-dlc/core/__tests__/dlc/CETCalculator.spec.ts +1029 -0
  255. package/.yalc/@node-dlc/core/__tests__/dlc/CoinSelect.spec.ts +179 -0
  256. package/.yalc/@node-dlc/core/__tests__/dlc/PolynomialPayoutCurve.spec.ts +345 -0
  257. package/.yalc/@node-dlc/core/__tests__/dlc/TxBuilder.spec.ts +424 -0
  258. package/.yalc/@node-dlc/core/__tests__/dlc/finance/Builder.spec.ts +492 -0
  259. package/.yalc/@node-dlc/core/__tests__/dlc/finance/CoveredCall.spec.ts +112 -0
  260. package/.yalc/@node-dlc/core/__tests__/dlc/finance/CsoInfo.spec.ts +1124 -0
  261. package/.yalc/@node-dlc/core/__tests__/dlc/finance/LongCall.spec.ts +55 -0
  262. package/.yalc/@node-dlc/core/__tests__/dlc/finance/LongPut.spec.ts +55 -0
  263. package/.yalc/@node-dlc/core/__tests__/dlc/finance/OptionInfo.spec.ts +226 -0
  264. package/.yalc/@node-dlc/core/__tests__/dlc/finance/ShortPut.spec.ts +62 -0
  265. package/.yalc/@node-dlc/core/__tests__/tsconfig.json +8 -0
  266. package/.yalc/@node-dlc/core/__tests__/utils/precision.spec.ts +40 -0
  267. package/.yalc/@node-dlc/core/coverage/lcov-report/base.css +224 -0
  268. package/.yalc/@node-dlc/core/coverage/lcov-report/block-navigation.js +79 -0
  269. package/.yalc/@node-dlc/core/coverage/lcov-report/favicon.png +0 -0
  270. package/.yalc/@node-dlc/core/coverage/lcov-report/index.html +171 -0
  271. package/.yalc/@node-dlc/core/coverage/lcov-report/lib/AsyncProcessingQueue.ts.html +269 -0
  272. package/.yalc/@node-dlc/core/coverage/lcov-report/lib/Base32.ts.html +86 -0
  273. package/.yalc/@node-dlc/core/coverage/lcov-report/lib/BigIntUtils.ts.html +86 -0
  274. package/.yalc/@node-dlc/core/coverage/lcov-report/lib/BitField.ts.html +86 -0
  275. package/.yalc/@node-dlc/core/coverage/lcov-report/lib/ChannelId.ts.html +86 -0
  276. package/.yalc/@node-dlc/core/coverage/lcov-report/lib/LinkedList.ts.html +413 -0
  277. package/.yalc/@node-dlc/core/coverage/lcov-report/lib/LinkedListNode.ts.html +122 -0
  278. package/.yalc/@node-dlc/core/coverage/lcov-report/lib/Queue.ts.html +188 -0
  279. package/.yalc/@node-dlc/core/coverage/lcov-report/lib/ShortChannelId.ts.html +86 -0
  280. package/.yalc/@node-dlc/core/coverage/lcov-report/lib/ShortChannelIdUtils.ts.html +107 -0
  281. package/.yalc/@node-dlc/core/coverage/lcov-report/lib/dlc/CETCalculator.ts.html +1430 -0
  282. package/.yalc/@node-dlc/core/coverage/lcov-report/lib/dlc/CoinSelect.ts.html +431 -0
  283. package/.yalc/@node-dlc/core/coverage/lcov-report/lib/dlc/HyperbolaPayoutCurve.ts.html +644 -0
  284. package/.yalc/@node-dlc/core/coverage/lcov-report/lib/dlc/PolynomialPayoutCurve.ts.html +878 -0
  285. package/.yalc/@node-dlc/core/coverage/lcov-report/lib/dlc/TxBuilder.ts.html +1088 -0
  286. package/.yalc/@node-dlc/core/coverage/lcov-report/lib/dlc/TxFinalizer.ts.html +731 -0
  287. package/.yalc/@node-dlc/core/coverage/lcov-report/lib/dlc/finance/Builder.ts.html +2270 -0
  288. package/.yalc/@node-dlc/core/coverage/lcov-report/lib/dlc/finance/CoveredCall.ts.html +410 -0
  289. package/.yalc/@node-dlc/core/coverage/lcov-report/lib/dlc/finance/CsoInfo.ts.html +1574 -0
  290. package/.yalc/@node-dlc/core/coverage/lcov-report/lib/dlc/finance/LinearPayout.ts.html +362 -0
  291. package/.yalc/@node-dlc/core/coverage/lcov-report/lib/dlc/finance/LongCall.ts.html +302 -0
  292. package/.yalc/@node-dlc/core/coverage/lcov-report/lib/dlc/finance/LongPut.ts.html +302 -0
  293. package/.yalc/@node-dlc/core/coverage/lcov-report/lib/dlc/finance/OptionInfo.ts.html +626 -0
  294. package/.yalc/@node-dlc/core/coverage/lcov-report/lib/dlc/finance/ShortPut.ts.html +305 -0
  295. package/.yalc/@node-dlc/core/coverage/lcov-report/lib/dlc/finance/index.html +216 -0
  296. package/.yalc/@node-dlc/core/coverage/lcov-report/lib/dlc/index.html +186 -0
  297. package/.yalc/@node-dlc/core/coverage/lcov-report/lib/index.html +261 -0
  298. package/.yalc/@node-dlc/core/coverage/lcov-report/lib/index.ts.html +278 -0
  299. package/.yalc/@node-dlc/core/coverage/lcov-report/lib/lightning/ChannelId.ts.html +242 -0
  300. package/.yalc/@node-dlc/core/coverage/lcov-report/lib/lightning/ChannelKeys.ts.html +407 -0
  301. package/.yalc/@node-dlc/core/coverage/lcov-report/lib/lightning/CommitmentNumber.ts.html +362 -0
  302. package/.yalc/@node-dlc/core/coverage/lcov-report/lib/lightning/CommitmentSecret.ts.html +203 -0
  303. package/.yalc/@node-dlc/core/coverage/lcov-report/lib/lightning/CommitmentSecretStore.ts.html +332 -0
  304. package/.yalc/@node-dlc/core/coverage/lcov-report/lib/lightning/Htlc.ts.html +236 -0
  305. package/.yalc/@node-dlc/core/coverage/lcov-report/lib/lightning/HtlcDirection.ts.html +131 -0
  306. package/.yalc/@node-dlc/core/coverage/lcov-report/lib/lightning/ScriptFactory.ts.html +530 -0
  307. package/.yalc/@node-dlc/core/coverage/lcov-report/lib/lightning/TxFactory.ts.html +1094 -0
  308. package/.yalc/@node-dlc/core/coverage/lcov-report/lib/lightning/index.html +231 -0
  309. package/.yalc/@node-dlc/core/coverage/lcov-report/lib/utils/BigIntUtils.ts.html +272 -0
  310. package/.yalc/@node-dlc/core/coverage/lcov-report/lib/utils/Precision.ts.html +149 -0
  311. package/.yalc/@node-dlc/{messaging/coverage/lcov-report/lib/serde → core/coverage/lcov-report/lib/utils}/index.html +37 -22
  312. package/.yalc/@node-dlc/core/coverage/lcov-report/prettify.css +1 -0
  313. package/.yalc/@node-dlc/core/coverage/lcov-report/prettify.js +2 -0
  314. package/.yalc/@node-dlc/core/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  315. package/.yalc/@node-dlc/core/coverage/lcov-report/sorter.js +170 -0
  316. package/.yalc/@node-dlc/core/coverage/lcov.info +2426 -0
  317. package/.yalc/@node-dlc/core/dist/AsyncProcessingQueue.d.ts +22 -0
  318. package/.yalc/@node-dlc/core/dist/AsyncProcessingQueue.js +55 -0
  319. package/.yalc/@node-dlc/core/dist/AsyncProcessingQueue.js.map +1 -0
  320. package/.yalc/@node-dlc/core/dist/Base32.d.ts +1 -0
  321. package/.yalc/@node-dlc/core/dist/Base32.js +7 -0
  322. package/.yalc/@node-dlc/core/dist/Base32.js.map +1 -0
  323. package/.yalc/@node-dlc/core/dist/BigIntUtils.d.ts +1 -0
  324. package/.yalc/@node-dlc/core/dist/BigIntUtils.js +8 -0
  325. package/.yalc/@node-dlc/core/dist/BigIntUtils.js.map +1 -0
  326. package/.yalc/@node-dlc/core/dist/BitField.d.ts +1 -0
  327. package/.yalc/@node-dlc/core/dist/BitField.js +7 -0
  328. package/.yalc/@node-dlc/core/dist/BitField.js.map +1 -0
  329. package/.yalc/@node-dlc/core/dist/ChannelId.d.ts +1 -0
  330. package/.yalc/@node-dlc/core/dist/ChannelId.js +7 -0
  331. package/.yalc/@node-dlc/core/dist/ChannelId.js.map +1 -0
  332. package/.yalc/@node-dlc/core/dist/LinkedList.d.ts +30 -0
  333. package/.yalc/@node-dlc/core/dist/LinkedList.js +104 -0
  334. package/.yalc/@node-dlc/core/dist/LinkedList.js.map +1 -0
  335. package/.yalc/@node-dlc/core/dist/LinkedListNode.d.ts +9 -0
  336. package/.yalc/@node-dlc/core/dist/LinkedListNode.js +15 -0
  337. package/.yalc/@node-dlc/core/dist/LinkedListNode.js.map +1 -0
  338. package/.yalc/@node-dlc/core/dist/Queue.d.ts +22 -0
  339. package/.yalc/@node-dlc/core/dist/Queue.js +38 -0
  340. package/.yalc/@node-dlc/core/dist/Queue.js.map +1 -0
  341. package/.yalc/@node-dlc/core/dist/ShortChannelId.d.ts +1 -0
  342. package/.yalc/@node-dlc/core/dist/ShortChannelId.js +7 -0
  343. package/.yalc/@node-dlc/core/dist/ShortChannelId.js.map +1 -0
  344. package/.yalc/@node-dlc/core/dist/ShortChannelIdUtils.d.ts +1 -0
  345. package/.yalc/@node-dlc/core/dist/ShortChannelIdUtils.js +12 -0
  346. package/.yalc/@node-dlc/core/dist/ShortChannelIdUtils.js.map +1 -0
  347. package/.yalc/@node-dlc/core/dist/dlc/CETCalculator.d.ts +50 -0
  348. package/.yalc/@node-dlc/core/dist/dlc/CETCalculator.js +332 -0
  349. package/.yalc/@node-dlc/core/dist/dlc/CETCalculator.js.map +1 -0
  350. package/.yalc/@node-dlc/core/dist/dlc/CoinSelect.d.ts +23 -0
  351. package/.yalc/@node-dlc/core/dist/dlc/CoinSelect.js +77 -0
  352. package/.yalc/@node-dlc/core/dist/dlc/CoinSelect.js.map +1 -0
  353. package/.yalc/@node-dlc/core/dist/dlc/HyperbolaPayoutCurve.d.ts +20 -0
  354. package/.yalc/@node-dlc/core/dist/dlc/HyperbolaPayoutCurve.js +117 -0
  355. package/.yalc/@node-dlc/core/dist/dlc/HyperbolaPayoutCurve.js.map +1 -0
  356. package/.yalc/@node-dlc/core/dist/dlc/PayoutCurve.d.ts +5 -0
  357. package/.yalc/@node-dlc/core/dist/dlc/PayoutCurve.js +3 -0
  358. package/.yalc/@node-dlc/core/dist/dlc/PayoutCurve.js.map +1 -0
  359. package/.yalc/@node-dlc/core/dist/dlc/PolynomialPayoutCurve.d.ts +52 -0
  360. package/.yalc/@node-dlc/core/dist/dlc/PolynomialPayoutCurve.js +173 -0
  361. package/.yalc/@node-dlc/core/dist/dlc/PolynomialPayoutCurve.js.map +1 -0
  362. package/.yalc/@node-dlc/core/dist/dlc/TxBuilder.d.ts +55 -0
  363. package/.yalc/@node-dlc/core/dist/dlc/TxBuilder.js +217 -0
  364. package/.yalc/@node-dlc/core/dist/dlc/TxBuilder.js.map +1 -0
  365. package/.yalc/@node-dlc/core/dist/dlc/TxFinalizer.d.ts +40 -0
  366. package/.yalc/@node-dlc/core/dist/dlc/TxFinalizer.js +146 -0
  367. package/.yalc/@node-dlc/core/dist/dlc/TxFinalizer.js.map +1 -0
  368. package/.yalc/@node-dlc/core/dist/dlc/finance/Builder.d.ts +193 -0
  369. package/.yalc/@node-dlc/core/dist/dlc/finance/Builder.js +422 -0
  370. package/.yalc/@node-dlc/core/dist/dlc/finance/Builder.js.map +1 -0
  371. package/.yalc/@node-dlc/core/dist/dlc/finance/CoveredCall.d.ts +13 -0
  372. package/.yalc/@node-dlc/core/dist/dlc/finance/CoveredCall.js +67 -0
  373. package/.yalc/@node-dlc/core/dist/dlc/finance/CoveredCall.js.map +1 -0
  374. package/.yalc/@node-dlc/core/dist/dlc/finance/CsoInfo.d.ts +114 -0
  375. package/.yalc/@node-dlc/core/dist/dlc/finance/CsoInfo.js +290 -0
  376. package/.yalc/@node-dlc/core/dist/dlc/finance/CsoInfo.js.map +1 -0
  377. package/.yalc/@node-dlc/core/dist/dlc/finance/LinearPayout.d.ts +6 -0
  378. package/.yalc/@node-dlc/core/dist/dlc/finance/LinearPayout.js +79 -0
  379. package/.yalc/@node-dlc/core/dist/dlc/finance/LinearPayout.js.map +1 -0
  380. package/.yalc/@node-dlc/core/dist/dlc/finance/LongCall.d.ts +13 -0
  381. package/.yalc/@node-dlc/core/dist/dlc/finance/LongCall.js +47 -0
  382. package/.yalc/@node-dlc/core/dist/dlc/finance/LongCall.js.map +1 -0
  383. package/.yalc/@node-dlc/core/dist/dlc/finance/LongPut.d.ts +13 -0
  384. package/.yalc/@node-dlc/core/dist/dlc/finance/LongPut.js +47 -0
  385. package/.yalc/@node-dlc/core/dist/dlc/finance/LongPut.js.map +1 -0
  386. package/.yalc/@node-dlc/core/dist/dlc/finance/OptionInfo.d.ts +20 -0
  387. package/.yalc/@node-dlc/core/dist/dlc/finance/OptionInfo.js +101 -0
  388. package/.yalc/@node-dlc/core/dist/dlc/finance/OptionInfo.js.map +1 -0
  389. package/.yalc/@node-dlc/core/dist/dlc/finance/ShortPut.d.ts +12 -0
  390. package/.yalc/@node-dlc/core/dist/dlc/finance/ShortPut.js +46 -0
  391. package/.yalc/@node-dlc/core/dist/dlc/finance/ShortPut.js.map +1 -0
  392. package/.yalc/@node-dlc/core/dist/index.d.ts +39 -0
  393. package/.yalc/@node-dlc/core/dist/index.js +78 -0
  394. package/.yalc/@node-dlc/core/dist/index.js.map +1 -0
  395. package/.yalc/@node-dlc/core/dist/lightning/ChannelId.d.ts +31 -0
  396. package/.yalc/@node-dlc/core/dist/lightning/ChannelId.js +52 -0
  397. package/.yalc/@node-dlc/core/dist/lightning/ChannelId.js.map +1 -0
  398. package/.yalc/@node-dlc/core/dist/lightning/ChannelKeys.d.ts +55 -0
  399. package/.yalc/@node-dlc/core/dist/lightning/ChannelKeys.js +105 -0
  400. package/.yalc/@node-dlc/core/dist/lightning/ChannelKeys.js.map +1 -0
  401. package/.yalc/@node-dlc/core/dist/lightning/CommitmentNumber.d.ts +55 -0
  402. package/.yalc/@node-dlc/core/dist/lightning/CommitmentNumber.js +76 -0
  403. package/.yalc/@node-dlc/core/dist/lightning/CommitmentNumber.js.map +1 -0
  404. package/.yalc/@node-dlc/core/dist/lightning/CommitmentSecret.d.ts +26 -0
  405. package/.yalc/@node-dlc/core/dist/lightning/CommitmentSecret.js +44 -0
  406. package/.yalc/@node-dlc/core/dist/lightning/CommitmentSecret.js.map +1 -0
  407. package/.yalc/@node-dlc/core/dist/lightning/CommitmentSecretStore.d.ts +41 -0
  408. package/.yalc/@node-dlc/core/dist/lightning/CommitmentSecretStore.js +79 -0
  409. package/.yalc/@node-dlc/core/dist/lightning/CommitmentSecretStore.js.map +1 -0
  410. package/.yalc/@node-dlc/core/dist/lightning/Htlc.d.ts +46 -0
  411. package/.yalc/@node-dlc/core/dist/lightning/Htlc.js +46 -0
  412. package/.yalc/@node-dlc/core/dist/lightning/Htlc.js.map +1 -0
  413. package/.yalc/@node-dlc/core/dist/lightning/HtlcDirection.d.ts +16 -0
  414. package/.yalc/@node-dlc/core/dist/lightning/HtlcDirection.js +21 -0
  415. package/.yalc/@node-dlc/core/dist/lightning/HtlcDirection.js.map +1 -0
  416. package/.yalc/@node-dlc/core/dist/lightning/ScriptFactory.d.ts +76 -0
  417. package/.yalc/@node-dlc/core/dist/lightning/ScriptFactory.js +102 -0
  418. package/.yalc/@node-dlc/core/dist/lightning/ScriptFactory.js.map +1 -0
  419. package/.yalc/@node-dlc/core/dist/lightning/TxFactory.d.ts +83 -0
  420. package/.yalc/@node-dlc/core/dist/lightning/TxFactory.js +222 -0
  421. package/.yalc/@node-dlc/core/dist/lightning/TxFactory.js.map +1 -0
  422. package/.yalc/@node-dlc/core/dist/utils/BigIntUtils.d.ts +9 -0
  423. package/.yalc/@node-dlc/core/dist/utils/BigIntUtils.js +59 -0
  424. package/.yalc/@node-dlc/core/dist/utils/BigIntUtils.js.map +1 -0
  425. package/.yalc/@node-dlc/core/dist/utils/Precision.d.ts +13 -0
  426. package/.yalc/@node-dlc/core/dist/utils/Precision.js +28 -0
  427. package/.yalc/@node-dlc/core/dist/utils/Precision.js.map +1 -0
  428. package/.yalc/@node-dlc/core/lib/AsyncProcessingQueue.ts +63 -0
  429. package/.yalc/@node-dlc/core/lib/Base32.ts +2 -0
  430. package/.yalc/@node-dlc/core/lib/BigIntUtils.ts +2 -0
  431. package/.yalc/@node-dlc/core/lib/BitField.ts +2 -0
  432. package/.yalc/@node-dlc/core/lib/ChannelId.ts +2 -0
  433. package/.yalc/@node-dlc/core/lib/LinkedList.ts +111 -0
  434. package/.yalc/@node-dlc/core/lib/LinkedListNode.ts +14 -0
  435. package/.yalc/@node-dlc/core/lib/Queue.ts +36 -0
  436. package/.yalc/@node-dlc/core/lib/ShortChannelId.ts +2 -0
  437. package/.yalc/@node-dlc/core/lib/ShortChannelIdUtils.ts +9 -0
  438. package/.yalc/@node-dlc/core/lib/dlc/CETCalculator.ts +450 -0
  439. package/.yalc/@node-dlc/core/lib/dlc/CoinSelect.ts +117 -0
  440. package/.yalc/@node-dlc/core/lib/dlc/HyperbolaPayoutCurve.ts +188 -0
  441. package/.yalc/@node-dlc/core/lib/dlc/PayoutCurve.ts +6 -0
  442. package/.yalc/@node-dlc/core/lib/dlc/PolynomialPayoutCurve.ts +266 -0
  443. package/.yalc/@node-dlc/core/lib/dlc/TxBuilder.ts +336 -0
  444. package/.yalc/@node-dlc/core/lib/dlc/TxFinalizer.ts +217 -0
  445. package/.yalc/@node-dlc/core/lib/dlc/finance/Builder.ts +730 -0
  446. package/.yalc/@node-dlc/core/lib/dlc/finance/CoveredCall.ts +110 -0
  447. package/.yalc/@node-dlc/core/lib/dlc/finance/CsoInfo.ts +498 -0
  448. package/.yalc/@node-dlc/core/lib/dlc/finance/LinearPayout.ts +94 -0
  449. package/.yalc/@node-dlc/core/lib/dlc/finance/LongCall.ts +74 -0
  450. package/.yalc/@node-dlc/core/lib/dlc/finance/LongPut.ts +74 -0
  451. package/.yalc/@node-dlc/core/lib/dlc/finance/OptionInfo.ts +182 -0
  452. package/.yalc/@node-dlc/core/lib/dlc/finance/ShortPut.ts +75 -0
  453. package/.yalc/@node-dlc/core/lib/index.ts +66 -0
  454. package/.yalc/@node-dlc/core/lib/lightning/ChannelId.ts +54 -0
  455. package/.yalc/@node-dlc/core/lib/lightning/ChannelKeys.ts +109 -0
  456. package/.yalc/@node-dlc/core/lib/lightning/CommitmentNumber.ts +94 -0
  457. package/.yalc/@node-dlc/core/lib/lightning/CommitmentSecret.ts +41 -0
  458. package/.yalc/@node-dlc/core/lib/lightning/CommitmentSecretStore.ts +84 -0
  459. package/.yalc/@node-dlc/core/lib/lightning/Htlc.ts +52 -0
  460. package/.yalc/@node-dlc/core/lib/lightning/HtlcDirection.ts +17 -0
  461. package/.yalc/@node-dlc/core/lib/lightning/ScriptFactory.ts +150 -0
  462. package/.yalc/@node-dlc/core/lib/lightning/TxFactory.ts +338 -0
  463. package/.yalc/@node-dlc/core/lib/utils/BigIntUtils.ts +64 -0
  464. package/.yalc/@node-dlc/core/lib/utils/Precision.ts +23 -0
  465. package/.yalc/@node-dlc/core/package.json +38 -0
  466. package/.yalc/@node-dlc/core/tsconfig.json +8 -0
  467. package/.yalc/@node-dlc/core/yalc.sig +1 -0
  468. package/.yalc/@node-dlc/crypto/.eslintrc +6 -0
  469. package/.yalc/@node-dlc/crypto/.nyc_output/de03e0b4-d482-4f61-b680-59411360f56e.json +1 -0
  470. package/.yalc/@node-dlc/crypto/.nyc_output/processinfo/de03e0b4-d482-4f61-b680-59411360f56e.json +1 -0
  471. package/.yalc/@node-dlc/crypto/.nyc_output/processinfo/index.json +1 -0
  472. package/.yalc/@node-dlc/crypto/README.md +13 -0
  473. package/.yalc/@node-dlc/crypto/__tests__/chacha.spec.ts +29 -0
  474. package/.yalc/@node-dlc/crypto/__tests__/chachapoly.spec.ts +78 -0
  475. package/.yalc/@node-dlc/crypto/__tests__/hkdf.spec.ts +131 -0
  476. package/.yalc/@node-dlc/crypto/__tests__/key.spec.ts +125 -0
  477. package/.yalc/@node-dlc/crypto/__tests__/secp256k1.spec.ts +194 -0
  478. package/.yalc/@node-dlc/crypto/__tests__/xor.spec.ts +28 -0
  479. package/.yalc/@node-dlc/crypto/coverage/lcov-report/base.css +224 -0
  480. package/.yalc/@node-dlc/crypto/coverage/lcov-report/block-navigation.js +79 -0
  481. package/.yalc/@node-dlc/crypto/coverage/lcov-report/chacha.ts.html +119 -0
  482. package/.yalc/@node-dlc/crypto/coverage/lcov-report/chachapoly.ts.html +275 -0
  483. package/.yalc/@node-dlc/crypto/coverage/lcov-report/favicon.png +0 -0
  484. package/.yalc/@node-dlc/crypto/coverage/lcov-report/hkdf.ts.html +236 -0
  485. package/.yalc/@node-dlc/crypto/coverage/lcov-report/index.html +186 -0
  486. package/.yalc/@node-dlc/crypto/coverage/lcov-report/key.ts.html +272 -0
  487. package/.yalc/@node-dlc/crypto/coverage/lcov-report/prettify.css +1 -0
  488. package/.yalc/@node-dlc/crypto/coverage/lcov-report/prettify.js +2 -0
  489. package/.yalc/@node-dlc/crypto/coverage/lcov-report/secp256k1.ts.html +680 -0
  490. package/.yalc/@node-dlc/crypto/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  491. package/.yalc/@node-dlc/crypto/coverage/lcov-report/sorter.js +170 -0
  492. package/.yalc/@node-dlc/crypto/coverage/lcov-report/xor.ts.html +116 -0
  493. package/.yalc/@node-dlc/crypto/coverage/lcov.info +221 -0
  494. package/.yalc/@node-dlc/crypto/dist/aes-key.d.ts +6 -0
  495. package/.yalc/@node-dlc/crypto/dist/aes-key.js +3 -0
  496. package/.yalc/@node-dlc/crypto/dist/aes-key.js.map +1 -0
  497. package/.yalc/@node-dlc/crypto/dist/aes.d.ts +34 -0
  498. package/.yalc/@node-dlc/crypto/dist/aes.js +62 -0
  499. package/.yalc/@node-dlc/crypto/dist/aes.js.map +1 -0
  500. package/.yalc/@node-dlc/crypto/dist/chacha.d.ts +4 -0
  501. package/.yalc/@node-dlc/crypto/dist/chacha.js +40 -0
  502. package/.yalc/@node-dlc/crypto/dist/chacha.js.map +1 -0
  503. package/.yalc/@node-dlc/crypto/dist/chachapoly.d.ts +24 -0
  504. package/.yalc/@node-dlc/crypto/dist/chachapoly.js +61 -0
  505. package/.yalc/@node-dlc/crypto/dist/chachapoly.js.map +1 -0
  506. package/.yalc/@node-dlc/crypto/dist/hash.d.ts +29 -0
  507. package/.yalc/@node-dlc/crypto/dist/hash.js +51 -0
  508. package/.yalc/@node-dlc/crypto/dist/hash.js.map +1 -0
  509. package/.yalc/@node-dlc/crypto/dist/hkdf.d.ts +20 -0
  510. package/.yalc/@node-dlc/crypto/dist/hkdf.js +50 -0
  511. package/.yalc/@node-dlc/crypto/dist/hkdf.js.map +1 -0
  512. package/.yalc/@node-dlc/crypto/dist/hmac.d.ts +3 -0
  513. package/.yalc/@node-dlc/crypto/dist/hmac.js +14 -0
  514. package/.yalc/@node-dlc/crypto/dist/hmac.js.map +1 -0
  515. package/.yalc/@node-dlc/crypto/dist/index.d.ts +11 -0
  516. package/.yalc/@node-dlc/crypto/dist/index.js +30 -0
  517. package/.yalc/@node-dlc/crypto/dist/index.js.map +1 -0
  518. package/.yalc/@node-dlc/crypto/dist/key.d.ts +37 -0
  519. package/.yalc/@node-dlc/crypto/dist/key.js +72 -0
  520. package/.yalc/@node-dlc/crypto/dist/key.js.map +1 -0
  521. package/.yalc/@node-dlc/crypto/dist/secp256k1.d.ts +120 -0
  522. package/.yalc/@node-dlc/crypto/dist/secp256k1.js +184 -0
  523. package/.yalc/@node-dlc/crypto/dist/secp256k1.js.map +1 -0
  524. package/.yalc/@node-dlc/crypto/dist/xor.d.ts +8 -0
  525. package/.yalc/@node-dlc/crypto/dist/xor.js +17 -0
  526. package/.yalc/@node-dlc/crypto/dist/xor.js.map +1 -0
  527. package/.yalc/@node-dlc/crypto/lib/aes-key.ts +4 -0
  528. package/.yalc/@node-dlc/crypto/lib/aes.ts +81 -0
  529. package/.yalc/@node-dlc/crypto/lib/chacha.ts +13 -0
  530. package/.yalc/@node-dlc/crypto/lib/chachapoly.ts +65 -0
  531. package/.yalc/@node-dlc/crypto/lib/hash.ts +44 -0
  532. package/.yalc/@node-dlc/crypto/lib/hkdf.ts +52 -0
  533. package/.yalc/@node-dlc/crypto/lib/hmac.ts +7 -0
  534. package/.yalc/@node-dlc/crypto/lib/index.ts +11 -0
  535. package/.yalc/@node-dlc/crypto/lib/key.ts +64 -0
  536. package/.yalc/@node-dlc/crypto/lib/secp256k1.ts +200 -0
  537. package/.yalc/@node-dlc/crypto/lib/xor.ts +12 -0
  538. package/.yalc/@node-dlc/crypto/package.json +34 -0
  539. package/.yalc/@node-dlc/crypto/tsconfig-build.json +7 -0
  540. package/.yalc/@node-dlc/crypto/tsconfig.json +4 -0
  541. package/.yalc/@node-dlc/crypto/yalc.sig +1 -0
  542. package/.yalc/@node-dlc/messaging/.nyc_output/83d37f9d-cecf-4c52-a753-115ff80bbca0.json +1 -0
  543. package/.yalc/@node-dlc/messaging/.nyc_output/processinfo/83d37f9d-cecf-4c52-a753-115ff80bbca0.json +1 -0
  544. package/.yalc/@node-dlc/messaging/.nyc_output/processinfo/index.json +1 -1
  545. package/.yalc/@node-dlc/messaging/__tests__/_test-utils.ts +1 -0
  546. package/.yalc/@node-dlc/messaging/__tests__/compatibility/dlcspecs-compatibility.spec.ts +13 -47
  547. package/.yalc/@node-dlc/messaging/__tests__/compatibility/rust-dlc-cross-language.spec.ts +166 -253
  548. package/.yalc/@node-dlc/messaging/__tests__/compatibility/true-serialization-compatibility.spec.ts +214 -483
  549. package/.yalc/@node-dlc/messaging/__tests__/messages/ContractDescriptor.spec.ts +3 -1
  550. package/.yalc/@node-dlc/messaging/__tests__/messages/ContractInfo.spec.ts +1 -1
  551. package/.yalc/@node-dlc/messaging/__tests__/messages/DlcAccept.spec.ts +72 -0
  552. package/.yalc/@node-dlc/messaging/__tests__/messages/DlcInput.spec.ts +111 -0
  553. package/.yalc/@node-dlc/messaging/__tests__/messages/DlcOffer.spec.ts +99 -37
  554. package/.yalc/@node-dlc/messaging/__tests__/messages/FundingInput.spec.ts +148 -63
  555. package/.yalc/@node-dlc/messaging/__tests__/messages/OracleAttestation.spec.ts +2 -4
  556. package/.yalc/@node-dlc/messaging/__tests__/messages/OrderAccept.spec.ts +7 -9
  557. package/.yalc/@node-dlc/messaging/__tests__/messages/OrderNegotiationFields.spec.ts +135 -52
  558. package/.yalc/@node-dlc/messaging/__tests__/messages/OrderPositionInfo.spec.ts +6 -6
  559. package/.yalc/@node-dlc/messaging/__tests__/messages/PayoutCurvePiece.spec.ts +1 -1
  560. package/.yalc/@node-dlc/messaging/__tests__/messages/PayoutFunction.spec.ts +1 -1
  561. package/.yalc/@node-dlc/messaging/__tests__/serialize/F64.spec.ts +1 -0
  562. package/.yalc/@node-dlc/messaging/coverage/lcov-report/index.html +31 -31
  563. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/MessageType.ts.html +11 -5
  564. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/chain/ChainManager.ts.html +6 -3
  565. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/chain/ChainMemoryStore.ts.html +1 -1
  566. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/chain/index.html +1 -1
  567. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/domain/Address.ts.html +1 -1
  568. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/domain/index.html +1 -1
  569. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/index.html +9 -9
  570. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/index.ts.html +11 -8
  571. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/irc/IrcMessage.ts.html +1 -1
  572. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/irc/index.html +1 -1
  573. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/AddressCache.ts.html +1 -1
  574. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/BatchFundingGroup.ts.html +1 -1
  575. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/CetAdaptorSignatures.ts.html +22 -22
  576. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/CetAdaptorSignaturesV0.ts.html +46 -37
  577. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/CloseTLV.ts.html +344 -0
  578. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/ContractDescriptor.ts.html +61 -70
  579. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/ContractInfo.ts.html +59 -44
  580. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/DlcAccept.ts.html +251 -119
  581. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/DlcCancel.ts.html +1 -1
  582. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/DlcClose.ts.html +12 -3
  583. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/DlcCloseMetadata.ts.html +2 -11
  584. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/DlcIds.ts.html +1 -1
  585. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/DlcInfo.ts.html +1 -1
  586. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/DlcInput.ts.html +581 -0
  587. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/DlcMessage.ts.html +1 -1
  588. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/DlcOffer.ts.html +307 -127
  589. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/DlcSign.ts.html +61 -46
  590. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/DlcTransactions.ts.html +1 -1
  591. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/EventDescriptor.ts.html +67 -52
  592. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/FundingInput.ts.html +202 -70
  593. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/FundingSignatures.ts.html +15 -15
  594. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/FundingSignaturesV0.ts.html +47 -77
  595. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/NegotiationFields.ts.html +16 -4
  596. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/NodeAnnouncementMessage.ts.html +3 -3
  597. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/OracleAnnouncement.ts.html +22 -22
  598. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/OracleAnnouncementV0.ts.html +48 -270
  599. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/OracleAttestation.ts.html +1 -1
  600. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/OracleAttestationV0.ts.html +113 -404
  601. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/OracleEvent.ts.html +49 -49
  602. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/OracleEventContainer.ts.html +1 -1
  603. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/OracleEventContainerV0.ts.html +22 -22
  604. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/OracleEventV0.ts.html +61 -385
  605. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/OracleIdentifier.ts.html +1 -1
  606. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/OracleIdentifierV0.ts.html +1 -1
  607. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/OracleInfo.ts.html +46 -25
  608. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/OracleInfoV0.ts.html +55 -1378
  609. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/OrderAccept.ts.html +68 -23
  610. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/OrderIrcInfo.ts.html +1 -1
  611. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/OrderMetadata.ts.html +1 -1
  612. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/OrderNegotiationFields.ts.html +266 -107
  613. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/OrderOffer.ts.html +31 -34
  614. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/OrderPositionInfo.ts.html +19 -88
  615. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/PayoutCurvePiece.ts.html +36 -21
  616. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/PayoutFunction.ts.html +34 -28
  617. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/RoundingIntervals.ts.html +18 -15
  618. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/RoundingIntervalsV0.ts.html +75 -129
  619. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/ScriptWitnessV0.ts.html +6 -6
  620. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/index.html +84 -69
  621. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/serialize/F64.ts.html +8 -53
  622. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/serialize/deserializeTlv.ts.html +1 -1
  623. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/serialize/getTlv.ts.html +9 -9
  624. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/serialize/index.html +15 -15
  625. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/util.ts.html +22 -10
  626. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/validation/index.html +1 -1
  627. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/validation/validate.ts.html +1 -1
  628. package/.yalc/@node-dlc/messaging/coverage/lcov.info +3049 -2826
  629. package/.yalc/@node-dlc/messaging/dist/MessageType.d.ts +2 -1
  630. package/.yalc/@node-dlc/messaging/dist/MessageType.js +2 -1
  631. package/.yalc/@node-dlc/messaging/dist/MessageType.js.map +1 -1
  632. package/.yalc/@node-dlc/messaging/dist/chain/ChainManager.js +1 -0
  633. package/.yalc/@node-dlc/messaging/dist/chain/ChainManager.js.map +1 -1
  634. package/.yalc/@node-dlc/messaging/dist/index.d.ts +5 -4
  635. package/.yalc/@node-dlc/messaging/dist/index.js +5 -4
  636. package/.yalc/@node-dlc/messaging/dist/index.js.map +1 -1
  637. package/.yalc/@node-dlc/messaging/dist/messages/CetAdaptorSignaturesV0.d.ts +42 -0
  638. package/.yalc/@node-dlc/messaging/dist/messages/CetAdaptorSignaturesV0.js +68 -0
  639. package/.yalc/@node-dlc/messaging/dist/messages/CetAdaptorSignaturesV0.js.map +1 -0
  640. package/.yalc/@node-dlc/messaging/dist/messages/CloseTLV.d.ts +38 -0
  641. package/.yalc/@node-dlc/messaging/dist/messages/CloseTLV.js +59 -0
  642. package/.yalc/@node-dlc/messaging/dist/messages/CloseTLV.js.map +1 -0
  643. package/.yalc/@node-dlc/messaging/dist/messages/ContractDescriptor.d.ts +11 -12
  644. package/.yalc/@node-dlc/messaging/dist/messages/ContractDescriptor.js +0 -1
  645. package/.yalc/@node-dlc/messaging/dist/messages/ContractDescriptor.js.map +1 -1
  646. package/.yalc/@node-dlc/messaging/dist/messages/ContractInfo.d.ts +10 -10
  647. package/.yalc/@node-dlc/messaging/dist/messages/ContractInfo.js +5 -1
  648. package/.yalc/@node-dlc/messaging/dist/messages/ContractInfo.js.map +1 -1
  649. package/.yalc/@node-dlc/messaging/dist/messages/DlcAccept.d.ts +15 -0
  650. package/.yalc/@node-dlc/messaging/dist/messages/DlcAccept.js +46 -5
  651. package/.yalc/@node-dlc/messaging/dist/messages/DlcAccept.js.map +1 -1
  652. package/.yalc/@node-dlc/messaging/dist/messages/DlcClose.js +6 -2
  653. package/.yalc/@node-dlc/messaging/dist/messages/DlcClose.js.map +1 -1
  654. package/.yalc/@node-dlc/messaging/dist/messages/DlcCloseMetadata.js.map +1 -1
  655. package/.yalc/@node-dlc/messaging/dist/messages/DlcInput.d.ts +56 -0
  656. package/.yalc/@node-dlc/messaging/dist/messages/DlcInput.js +135 -0
  657. package/.yalc/@node-dlc/messaging/dist/messages/DlcInput.js.map +1 -0
  658. package/.yalc/@node-dlc/messaging/dist/messages/DlcOffer.d.ts +16 -1
  659. package/.yalc/@node-dlc/messaging/dist/messages/DlcOffer.js +50 -5
  660. package/.yalc/@node-dlc/messaging/dist/messages/DlcOffer.js.map +1 -1
  661. package/.yalc/@node-dlc/messaging/dist/messages/DlcSign.js +11 -3
  662. package/.yalc/@node-dlc/messaging/dist/messages/DlcSign.js.map +1 -1
  663. package/.yalc/@node-dlc/messaging/dist/messages/EventDescriptor.d.ts +7 -6
  664. package/.yalc/@node-dlc/messaging/dist/messages/EventDescriptor.js +3 -0
  665. package/.yalc/@node-dlc/messaging/dist/messages/EventDescriptor.js.map +1 -1
  666. package/.yalc/@node-dlc/messaging/dist/messages/FundingInput.d.ts +7 -0
  667. package/.yalc/@node-dlc/messaging/dist/messages/FundingInput.js +31 -1
  668. package/.yalc/@node-dlc/messaging/dist/messages/FundingInput.js.map +1 -1
  669. package/.yalc/@node-dlc/messaging/dist/messages/FundingSignaturesV0.d.ts +34 -0
  670. package/.yalc/@node-dlc/messaging/dist/messages/FundingSignaturesV0.js +72 -0
  671. package/.yalc/@node-dlc/messaging/dist/messages/FundingSignaturesV0.js.map +1 -0
  672. package/.yalc/@node-dlc/messaging/dist/messages/NegotiationFields.d.ts +2 -2
  673. package/.yalc/@node-dlc/messaging/dist/messages/NegotiationFields.js +4 -0
  674. package/.yalc/@node-dlc/messaging/dist/messages/NegotiationFields.js.map +1 -1
  675. package/.yalc/@node-dlc/messaging/dist/messages/OracleAnnouncementV0.d.ts +47 -0
  676. package/.yalc/@node-dlc/messaging/dist/messages/OracleAnnouncementV0.js +76 -0
  677. package/.yalc/@node-dlc/messaging/dist/messages/OracleAnnouncementV0.js.map +1 -0
  678. package/.yalc/@node-dlc/messaging/dist/messages/OracleAttestationV0.d.ts +48 -0
  679. package/.yalc/@node-dlc/messaging/dist/messages/OracleAttestationV0.js +100 -0
  680. package/.yalc/@node-dlc/messaging/dist/messages/OracleAttestationV0.js.map +1 -0
  681. package/.yalc/@node-dlc/messaging/dist/messages/OracleEventContainerV0.d.ts +32 -0
  682. package/.yalc/@node-dlc/messaging/dist/messages/OracleEventContainerV0.js +67 -0
  683. package/.yalc/@node-dlc/messaging/dist/messages/OracleEventContainerV0.js.map +1 -0
  684. package/.yalc/@node-dlc/messaging/dist/messages/OracleEventV0.d.ts +54 -0
  685. package/.yalc/@node-dlc/messaging/dist/messages/OracleEventV0.js +100 -0
  686. package/.yalc/@node-dlc/messaging/dist/messages/OracleEventV0.js.map +1 -0
  687. package/.yalc/@node-dlc/messaging/dist/messages/OracleInfo.d.ts +8 -6
  688. package/.yalc/@node-dlc/messaging/dist/messages/OracleInfo.js +3 -0
  689. package/.yalc/@node-dlc/messaging/dist/messages/OracleInfo.js.map +1 -1
  690. package/.yalc/@node-dlc/messaging/dist/messages/OracleInfoV0.d.ts +15 -141
  691. package/.yalc/@node-dlc/messaging/dist/messages/OracleInfoV0.js +21 -350
  692. package/.yalc/@node-dlc/messaging/dist/messages/OracleInfoV0.js.map +1 -1
  693. package/.yalc/@node-dlc/messaging/dist/messages/OrderAccept.d.ts +3 -2
  694. package/.yalc/@node-dlc/messaging/dist/messages/OrderAccept.js +22 -7
  695. package/.yalc/@node-dlc/messaging/dist/messages/OrderAccept.js.map +1 -1
  696. package/.yalc/@node-dlc/messaging/dist/messages/OrderNegotiationFields.d.ts +48 -36
  697. package/.yalc/@node-dlc/messaging/dist/messages/OrderNegotiationFields.js +97 -50
  698. package/.yalc/@node-dlc/messaging/dist/messages/OrderNegotiationFields.js.map +1 -1
  699. package/.yalc/@node-dlc/messaging/dist/messages/OrderOffer.d.ts +1 -1
  700. package/.yalc/@node-dlc/messaging/dist/messages/OrderOffer.js +1 -1
  701. package/.yalc/@node-dlc/messaging/dist/messages/OrderOffer.js.map +1 -1
  702. package/.yalc/@node-dlc/messaging/dist/messages/OrderPositionInfo.d.ts +7 -13
  703. package/.yalc/@node-dlc/messaging/dist/messages/OrderPositionInfo.js +11 -25
  704. package/.yalc/@node-dlc/messaging/dist/messages/OrderPositionInfo.js.map +1 -1
  705. package/.yalc/@node-dlc/messaging/dist/messages/PayoutCurvePiece.js +5 -0
  706. package/.yalc/@node-dlc/messaging/dist/messages/PayoutCurvePiece.js.map +1 -1
  707. package/.yalc/@node-dlc/messaging/dist/messages/PayoutFunction.js +4 -1
  708. package/.yalc/@node-dlc/messaging/dist/messages/PayoutFunction.js.map +1 -1
  709. package/.yalc/@node-dlc/messaging/dist/messages/RoundingIntervals.js +1 -0
  710. package/.yalc/@node-dlc/messaging/dist/messages/RoundingIntervals.js.map +1 -1
  711. package/.yalc/@node-dlc/messaging/dist/messages/RoundingIntervalsV0.d.ts +47 -0
  712. package/.yalc/@node-dlc/messaging/dist/messages/RoundingIntervalsV0.js +86 -0
  713. package/.yalc/@node-dlc/messaging/dist/messages/RoundingIntervalsV0.js.map +1 -0
  714. package/.yalc/@node-dlc/messaging/dist/serialize/F64.d.ts +0 -8
  715. package/.yalc/@node-dlc/messaging/dist/serialize/F64.js +0 -13
  716. package/.yalc/@node-dlc/messaging/dist/serialize/F64.js.map +1 -1
  717. package/.yalc/@node-dlc/messaging/dist/util.d.ts +1 -1
  718. package/.yalc/@node-dlc/messaging/dist/util.js +2 -0
  719. package/.yalc/@node-dlc/messaging/dist/util.js.map +1 -1
  720. package/.yalc/@node-dlc/messaging/lib/MessageType.ts +3 -1
  721. package/.yalc/@node-dlc/messaging/lib/chain/ChainManager.ts +1 -0
  722. package/.yalc/@node-dlc/messaging/lib/index.ts +5 -4
  723. package/.yalc/@node-dlc/messaging/lib/messages/ContractDescriptor.ts +15 -16
  724. package/.yalc/@node-dlc/messaging/lib/messages/ContractInfo.ts +17 -12
  725. package/.yalc/@node-dlc/messaging/lib/messages/DlcAccept.ts +50 -6
  726. package/.yalc/@node-dlc/messaging/lib/messages/DlcClose.ts +4 -1
  727. package/.yalc/@node-dlc/messaging/lib/messages/DlcCloseMetadata.ts +0 -3
  728. package/.yalc/@node-dlc/messaging/lib/messages/DlcInput.ts +167 -0
  729. package/.yalc/@node-dlc/messaging/lib/messages/DlcOffer.ts +67 -7
  730. package/.yalc/@node-dlc/messaging/lib/messages/DlcSign.ts +5 -0
  731. package/.yalc/@node-dlc/messaging/lib/messages/EventDescriptor.ts +12 -7
  732. package/.yalc/@node-dlc/messaging/lib/messages/FundingInput.ts +45 -1
  733. package/.yalc/@node-dlc/messaging/lib/messages/NegotiationFields.ts +6 -2
  734. package/.yalc/@node-dlc/messaging/lib/messages/NodeAnnouncementMessage.ts +2 -2
  735. package/.yalc/@node-dlc/messaging/lib/messages/OracleInfo.ts +15 -8
  736. package/.yalc/@node-dlc/messaging/lib/messages/OrderAccept.ts +28 -13
  737. package/.yalc/@node-dlc/messaging/lib/messages/OrderNegotiationFields.ts +127 -74
  738. package/.yalc/@node-dlc/messaging/lib/messages/OrderOffer.ts +2 -3
  739. package/.yalc/@node-dlc/messaging/lib/messages/OrderPositionInfo.ts +10 -33
  740. package/.yalc/@node-dlc/messaging/lib/messages/PayoutCurvePiece.ts +5 -0
  741. package/.yalc/@node-dlc/messaging/lib/messages/PayoutFunction.ts +2 -0
  742. package/.yalc/@node-dlc/messaging/lib/messages/RoundingIntervals.ts +1 -0
  743. package/.yalc/@node-dlc/messaging/lib/serialize/F64.ts +0 -15
  744. package/.yalc/@node-dlc/messaging/lib/serialize/readTlvs.ts +1 -1
  745. package/.yalc/@node-dlc/messaging/lib/util.ts +5 -1
  746. package/.yalc/@node-dlc/messaging/package.json +8 -8
  747. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs/enum_3_of_3_test.json +76 -74
  748. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs/enum_3_of_5_test.json +90 -88
  749. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs/enum_and_numerical_3_of_5_test.json +162 -160
  750. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs/enum_and_numerical_5_of_5_test.json +162 -160
  751. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs/enum_and_numerical_with_diff_3_of_5_test.json +164 -162
  752. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs/enum_and_numerical_with_diff_5_of_5_test.json +164 -162
  753. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs/enum_single_oracle_test.json +60 -58
  754. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs/single_oracle_numerical_hyperbola_test.json +71 -69
  755. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs/single_oracle_numerical_test.json +71 -69
  756. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs/three_of_five_oracle_numerical_with_diff_test.json +119 -117
  757. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs/three_of_three_oracle_numerical_test.json +95 -93
  758. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs/three_of_three_oracle_numerical_with_diff_test.json +97 -95
  759. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs/two_of_five_oracle_numerical_test.json +117 -115
  760. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs/two_of_five_oracle_numerical_with_diff_test.json +119 -117
  761. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250718_132453/enum_3_of_3_test.json +210 -0
  762. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250718_132453/enum_3_of_5_test.json +468 -0
  763. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250718_132453/enum_and_numerical_3_of_5_test.json +1517 -0
  764. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250718_132453/enum_and_numerical_5_of_5_test.json +545 -0
  765. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250718_132453/enum_and_numerical_with_diff_3_of_5_test.json +4761 -0
  766. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250718_132453/enum_and_numerical_with_diff_5_of_5_test.json +2169 -0
  767. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250718_132453/enum_single_oracle_test.json +164 -0
  768. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250718_132453/single_oracle_numerical_hyperbola_test.json +502 -0
  769. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250718_132453/single_oracle_numerical_test.json +262 -0
  770. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250718_132453/three_of_five_oracle_numerical_with_diff_test.json +4382 -0
  771. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250718_132453/three_of_three_oracle_numerical_test.json +324 -0
  772. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250718_132453/three_of_three_oracle_numerical_with_diff_test.json +652 -0
  773. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250718_132453/two_of_five_oracle_numerical_test.json +1138 -0
  774. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250718_132453/two_of_five_oracle_numerical_with_diff_test.json +2222 -0
  775. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250719_185952/enum_3_of_3_test.json +212 -0
  776. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250719_185952/enum_3_of_5_test.json +470 -0
  777. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250719_185952/enum_and_numerical_3_of_5_test.json +1519 -0
  778. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250719_185952/enum_and_numerical_5_of_5_test.json +547 -0
  779. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250719_185952/enum_and_numerical_with_diff_3_of_5_test.json +4763 -0
  780. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250719_185952/enum_and_numerical_with_diff_5_of_5_test.json +2171 -0
  781. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250719_185952/enum_single_oracle_test.json +166 -0
  782. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250719_185952/single_oracle_numerical_hyperbola_test.json +504 -0
  783. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250719_185952/single_oracle_numerical_test.json +264 -0
  784. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250719_185952/three_of_five_oracle_numerical_with_diff_test.json +4384 -0
  785. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250719_185952/three_of_three_oracle_numerical_test.json +326 -0
  786. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250719_185952/three_of_three_oracle_numerical_with_diff_test.json +654 -0
  787. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250719_185952/two_of_five_oracle_numerical_test.json +1140 -0
  788. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250719_185952/two_of_five_oracle_numerical_with_diff_test.json +2224 -0
  789. package/.yalc/@node-dlc/messaging/yalc.sig +1 -1
  790. package/CHANGELOG.md +58 -5
  791. package/README.md +48 -0
  792. package/dist/BitcoinDlcProvider.d.ts +34 -5
  793. package/dist/BitcoinDlcProvider.js +622 -155
  794. package/dist/BitcoinDlcProvider.js.map +1 -1
  795. package/dist/utils/Utils.js +5 -1
  796. package/dist/utils/Utils.js.map +1 -1
  797. package/lib/BitcoinDlcProvider.ts +899 -204
  798. package/lib/utils/Utils.ts +2 -0
  799. package/package.json +10 -10
  800. package/yalc.lock +22 -2
  801. package/.yalc/@node-dlc/messaging/.nyc_output/2cf48009-1094-4275-bb91-c164c932feb6.json +0 -1
  802. package/.yalc/@node-dlc/messaging/.nyc_output/processinfo/2cf48009-1094-4275-bb91-c164c932feb6.json +0 -1
@@ -0,0 +1,1430 @@
1
+
2
+ <!doctype html>
3
+ <html lang="en">
4
+
5
+ <head>
6
+ <title>Code coverage report for lib/dlc/CETCalculator.ts</title>
7
+ <meta charset="utf-8" />
8
+ <link rel="stylesheet" href="../../prettify.css" />
9
+ <link rel="stylesheet" href="../../base.css" />
10
+ <link rel="shortcut icon" type="image/x-icon" href="../../favicon.png" />
11
+ <meta name="viewport" content="width=device-width, initial-scale=1" />
12
+ <style type='text/css'>
13
+ .coverage-summary .sorter {
14
+ background-image: url(../../sort-arrow-sprite.png);
15
+ }
16
+ </style>
17
+ </head>
18
+
19
+ <body>
20
+ <div class='wrapper'>
21
+ <div class='pad1'>
22
+ <h1><a href="../../index.html">All files</a> / <a href="index.html">lib/dlc</a> CETCalculator.ts</h1>
23
+ <div class='clearfix'>
24
+
25
+ <div class='fl pad1y space-right2'>
26
+ <span class="strong">93.98% </span>
27
+ <span class="quiet">Statements</span>
28
+ <span class='fraction'>156/166</span>
29
+ </div>
30
+
31
+
32
+ <div class='fl pad1y space-right2'>
33
+ <span class="strong">86.96% </span>
34
+ <span class="quiet">Branches</span>
35
+ <span class='fraction'>60/69</span>
36
+ </div>
37
+
38
+
39
+ <div class='fl pad1y space-right2'>
40
+ <span class="strong">100% </span>
41
+ <span class="quiet">Functions</span>
42
+ <span class='fraction'>28/28</span>
43
+ </div>
44
+
45
+
46
+ <div class='fl pad1y space-right2'>
47
+ <span class="strong">93.63% </span>
48
+ <span class="quiet">Lines</span>
49
+ <span class='fraction'>147/157</span>
50
+ </div>
51
+
52
+
53
+ </div>
54
+ <p class="quiet">
55
+ Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
56
+ </p>
57
+ </div>
58
+ <div class='status-line high'></div>
59
+ <pre><table class="coverage">
60
+ <tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
61
+ <a name='L2'></a><a href='#L2'>2</a>
62
+ <a name='L3'></a><a href='#L3'>3</a>
63
+ <a name='L4'></a><a href='#L4'>4</a>
64
+ <a name='L5'></a><a href='#L5'>5</a>
65
+ <a name='L6'></a><a href='#L6'>6</a>
66
+ <a name='L7'></a><a href='#L7'>7</a>
67
+ <a name='L8'></a><a href='#L8'>8</a>
68
+ <a name='L9'></a><a href='#L9'>9</a>
69
+ <a name='L10'></a><a href='#L10'>10</a>
70
+ <a name='L11'></a><a href='#L11'>11</a>
71
+ <a name='L12'></a><a href='#L12'>12</a>
72
+ <a name='L13'></a><a href='#L13'>13</a>
73
+ <a name='L14'></a><a href='#L14'>14</a>
74
+ <a name='L15'></a><a href='#L15'>15</a>
75
+ <a name='L16'></a><a href='#L16'>16</a>
76
+ <a name='L17'></a><a href='#L17'>17</a>
77
+ <a name='L18'></a><a href='#L18'>18</a>
78
+ <a name='L19'></a><a href='#L19'>19</a>
79
+ <a name='L20'></a><a href='#L20'>20</a>
80
+ <a name='L21'></a><a href='#L21'>21</a>
81
+ <a name='L22'></a><a href='#L22'>22</a>
82
+ <a name='L23'></a><a href='#L23'>23</a>
83
+ <a name='L24'></a><a href='#L24'>24</a>
84
+ <a name='L25'></a><a href='#L25'>25</a>
85
+ <a name='L26'></a><a href='#L26'>26</a>
86
+ <a name='L27'></a><a href='#L27'>27</a>
87
+ <a name='L28'></a><a href='#L28'>28</a>
88
+ <a name='L29'></a><a href='#L29'>29</a>
89
+ <a name='L30'></a><a href='#L30'>30</a>
90
+ <a name='L31'></a><a href='#L31'>31</a>
91
+ <a name='L32'></a><a href='#L32'>32</a>
92
+ <a name='L33'></a><a href='#L33'>33</a>
93
+ <a name='L34'></a><a href='#L34'>34</a>
94
+ <a name='L35'></a><a href='#L35'>35</a>
95
+ <a name='L36'></a><a href='#L36'>36</a>
96
+ <a name='L37'></a><a href='#L37'>37</a>
97
+ <a name='L38'></a><a href='#L38'>38</a>
98
+ <a name='L39'></a><a href='#L39'>39</a>
99
+ <a name='L40'></a><a href='#L40'>40</a>
100
+ <a name='L41'></a><a href='#L41'>41</a>
101
+ <a name='L42'></a><a href='#L42'>42</a>
102
+ <a name='L43'></a><a href='#L43'>43</a>
103
+ <a name='L44'></a><a href='#L44'>44</a>
104
+ <a name='L45'></a><a href='#L45'>45</a>
105
+ <a name='L46'></a><a href='#L46'>46</a>
106
+ <a name='L47'></a><a href='#L47'>47</a>
107
+ <a name='L48'></a><a href='#L48'>48</a>
108
+ <a name='L49'></a><a href='#L49'>49</a>
109
+ <a name='L50'></a><a href='#L50'>50</a>
110
+ <a name='L51'></a><a href='#L51'>51</a>
111
+ <a name='L52'></a><a href='#L52'>52</a>
112
+ <a name='L53'></a><a href='#L53'>53</a>
113
+ <a name='L54'></a><a href='#L54'>54</a>
114
+ <a name='L55'></a><a href='#L55'>55</a>
115
+ <a name='L56'></a><a href='#L56'>56</a>
116
+ <a name='L57'></a><a href='#L57'>57</a>
117
+ <a name='L58'></a><a href='#L58'>58</a>
118
+ <a name='L59'></a><a href='#L59'>59</a>
119
+ <a name='L60'></a><a href='#L60'>60</a>
120
+ <a name='L61'></a><a href='#L61'>61</a>
121
+ <a name='L62'></a><a href='#L62'>62</a>
122
+ <a name='L63'></a><a href='#L63'>63</a>
123
+ <a name='L64'></a><a href='#L64'>64</a>
124
+ <a name='L65'></a><a href='#L65'>65</a>
125
+ <a name='L66'></a><a href='#L66'>66</a>
126
+ <a name='L67'></a><a href='#L67'>67</a>
127
+ <a name='L68'></a><a href='#L68'>68</a>
128
+ <a name='L69'></a><a href='#L69'>69</a>
129
+ <a name='L70'></a><a href='#L70'>70</a>
130
+ <a name='L71'></a><a href='#L71'>71</a>
131
+ <a name='L72'></a><a href='#L72'>72</a>
132
+ <a name='L73'></a><a href='#L73'>73</a>
133
+ <a name='L74'></a><a href='#L74'>74</a>
134
+ <a name='L75'></a><a href='#L75'>75</a>
135
+ <a name='L76'></a><a href='#L76'>76</a>
136
+ <a name='L77'></a><a href='#L77'>77</a>
137
+ <a name='L78'></a><a href='#L78'>78</a>
138
+ <a name='L79'></a><a href='#L79'>79</a>
139
+ <a name='L80'></a><a href='#L80'>80</a>
140
+ <a name='L81'></a><a href='#L81'>81</a>
141
+ <a name='L82'></a><a href='#L82'>82</a>
142
+ <a name='L83'></a><a href='#L83'>83</a>
143
+ <a name='L84'></a><a href='#L84'>84</a>
144
+ <a name='L85'></a><a href='#L85'>85</a>
145
+ <a name='L86'></a><a href='#L86'>86</a>
146
+ <a name='L87'></a><a href='#L87'>87</a>
147
+ <a name='L88'></a><a href='#L88'>88</a>
148
+ <a name='L89'></a><a href='#L89'>89</a>
149
+ <a name='L90'></a><a href='#L90'>90</a>
150
+ <a name='L91'></a><a href='#L91'>91</a>
151
+ <a name='L92'></a><a href='#L92'>92</a>
152
+ <a name='L93'></a><a href='#L93'>93</a>
153
+ <a name='L94'></a><a href='#L94'>94</a>
154
+ <a name='L95'></a><a href='#L95'>95</a>
155
+ <a name='L96'></a><a href='#L96'>96</a>
156
+ <a name='L97'></a><a href='#L97'>97</a>
157
+ <a name='L98'></a><a href='#L98'>98</a>
158
+ <a name='L99'></a><a href='#L99'>99</a>
159
+ <a name='L100'></a><a href='#L100'>100</a>
160
+ <a name='L101'></a><a href='#L101'>101</a>
161
+ <a name='L102'></a><a href='#L102'>102</a>
162
+ <a name='L103'></a><a href='#L103'>103</a>
163
+ <a name='L104'></a><a href='#L104'>104</a>
164
+ <a name='L105'></a><a href='#L105'>105</a>
165
+ <a name='L106'></a><a href='#L106'>106</a>
166
+ <a name='L107'></a><a href='#L107'>107</a>
167
+ <a name='L108'></a><a href='#L108'>108</a>
168
+ <a name='L109'></a><a href='#L109'>109</a>
169
+ <a name='L110'></a><a href='#L110'>110</a>
170
+ <a name='L111'></a><a href='#L111'>111</a>
171
+ <a name='L112'></a><a href='#L112'>112</a>
172
+ <a name='L113'></a><a href='#L113'>113</a>
173
+ <a name='L114'></a><a href='#L114'>114</a>
174
+ <a name='L115'></a><a href='#L115'>115</a>
175
+ <a name='L116'></a><a href='#L116'>116</a>
176
+ <a name='L117'></a><a href='#L117'>117</a>
177
+ <a name='L118'></a><a href='#L118'>118</a>
178
+ <a name='L119'></a><a href='#L119'>119</a>
179
+ <a name='L120'></a><a href='#L120'>120</a>
180
+ <a name='L121'></a><a href='#L121'>121</a>
181
+ <a name='L122'></a><a href='#L122'>122</a>
182
+ <a name='L123'></a><a href='#L123'>123</a>
183
+ <a name='L124'></a><a href='#L124'>124</a>
184
+ <a name='L125'></a><a href='#L125'>125</a>
185
+ <a name='L126'></a><a href='#L126'>126</a>
186
+ <a name='L127'></a><a href='#L127'>127</a>
187
+ <a name='L128'></a><a href='#L128'>128</a>
188
+ <a name='L129'></a><a href='#L129'>129</a>
189
+ <a name='L130'></a><a href='#L130'>130</a>
190
+ <a name='L131'></a><a href='#L131'>131</a>
191
+ <a name='L132'></a><a href='#L132'>132</a>
192
+ <a name='L133'></a><a href='#L133'>133</a>
193
+ <a name='L134'></a><a href='#L134'>134</a>
194
+ <a name='L135'></a><a href='#L135'>135</a>
195
+ <a name='L136'></a><a href='#L136'>136</a>
196
+ <a name='L137'></a><a href='#L137'>137</a>
197
+ <a name='L138'></a><a href='#L138'>138</a>
198
+ <a name='L139'></a><a href='#L139'>139</a>
199
+ <a name='L140'></a><a href='#L140'>140</a>
200
+ <a name='L141'></a><a href='#L141'>141</a>
201
+ <a name='L142'></a><a href='#L142'>142</a>
202
+ <a name='L143'></a><a href='#L143'>143</a>
203
+ <a name='L144'></a><a href='#L144'>144</a>
204
+ <a name='L145'></a><a href='#L145'>145</a>
205
+ <a name='L146'></a><a href='#L146'>146</a>
206
+ <a name='L147'></a><a href='#L147'>147</a>
207
+ <a name='L148'></a><a href='#L148'>148</a>
208
+ <a name='L149'></a><a href='#L149'>149</a>
209
+ <a name='L150'></a><a href='#L150'>150</a>
210
+ <a name='L151'></a><a href='#L151'>151</a>
211
+ <a name='L152'></a><a href='#L152'>152</a>
212
+ <a name='L153'></a><a href='#L153'>153</a>
213
+ <a name='L154'></a><a href='#L154'>154</a>
214
+ <a name='L155'></a><a href='#L155'>155</a>
215
+ <a name='L156'></a><a href='#L156'>156</a>
216
+ <a name='L157'></a><a href='#L157'>157</a>
217
+ <a name='L158'></a><a href='#L158'>158</a>
218
+ <a name='L159'></a><a href='#L159'>159</a>
219
+ <a name='L160'></a><a href='#L160'>160</a>
220
+ <a name='L161'></a><a href='#L161'>161</a>
221
+ <a name='L162'></a><a href='#L162'>162</a>
222
+ <a name='L163'></a><a href='#L163'>163</a>
223
+ <a name='L164'></a><a href='#L164'>164</a>
224
+ <a name='L165'></a><a href='#L165'>165</a>
225
+ <a name='L166'></a><a href='#L166'>166</a>
226
+ <a name='L167'></a><a href='#L167'>167</a>
227
+ <a name='L168'></a><a href='#L168'>168</a>
228
+ <a name='L169'></a><a href='#L169'>169</a>
229
+ <a name='L170'></a><a href='#L170'>170</a>
230
+ <a name='L171'></a><a href='#L171'>171</a>
231
+ <a name='L172'></a><a href='#L172'>172</a>
232
+ <a name='L173'></a><a href='#L173'>173</a>
233
+ <a name='L174'></a><a href='#L174'>174</a>
234
+ <a name='L175'></a><a href='#L175'>175</a>
235
+ <a name='L176'></a><a href='#L176'>176</a>
236
+ <a name='L177'></a><a href='#L177'>177</a>
237
+ <a name='L178'></a><a href='#L178'>178</a>
238
+ <a name='L179'></a><a href='#L179'>179</a>
239
+ <a name='L180'></a><a href='#L180'>180</a>
240
+ <a name='L181'></a><a href='#L181'>181</a>
241
+ <a name='L182'></a><a href='#L182'>182</a>
242
+ <a name='L183'></a><a href='#L183'>183</a>
243
+ <a name='L184'></a><a href='#L184'>184</a>
244
+ <a name='L185'></a><a href='#L185'>185</a>
245
+ <a name='L186'></a><a href='#L186'>186</a>
246
+ <a name='L187'></a><a href='#L187'>187</a>
247
+ <a name='L188'></a><a href='#L188'>188</a>
248
+ <a name='L189'></a><a href='#L189'>189</a>
249
+ <a name='L190'></a><a href='#L190'>190</a>
250
+ <a name='L191'></a><a href='#L191'>191</a>
251
+ <a name='L192'></a><a href='#L192'>192</a>
252
+ <a name='L193'></a><a href='#L193'>193</a>
253
+ <a name='L194'></a><a href='#L194'>194</a>
254
+ <a name='L195'></a><a href='#L195'>195</a>
255
+ <a name='L196'></a><a href='#L196'>196</a>
256
+ <a name='L197'></a><a href='#L197'>197</a>
257
+ <a name='L198'></a><a href='#L198'>198</a>
258
+ <a name='L199'></a><a href='#L199'>199</a>
259
+ <a name='L200'></a><a href='#L200'>200</a>
260
+ <a name='L201'></a><a href='#L201'>201</a>
261
+ <a name='L202'></a><a href='#L202'>202</a>
262
+ <a name='L203'></a><a href='#L203'>203</a>
263
+ <a name='L204'></a><a href='#L204'>204</a>
264
+ <a name='L205'></a><a href='#L205'>205</a>
265
+ <a name='L206'></a><a href='#L206'>206</a>
266
+ <a name='L207'></a><a href='#L207'>207</a>
267
+ <a name='L208'></a><a href='#L208'>208</a>
268
+ <a name='L209'></a><a href='#L209'>209</a>
269
+ <a name='L210'></a><a href='#L210'>210</a>
270
+ <a name='L211'></a><a href='#L211'>211</a>
271
+ <a name='L212'></a><a href='#L212'>212</a>
272
+ <a name='L213'></a><a href='#L213'>213</a>
273
+ <a name='L214'></a><a href='#L214'>214</a>
274
+ <a name='L215'></a><a href='#L215'>215</a>
275
+ <a name='L216'></a><a href='#L216'>216</a>
276
+ <a name='L217'></a><a href='#L217'>217</a>
277
+ <a name='L218'></a><a href='#L218'>218</a>
278
+ <a name='L219'></a><a href='#L219'>219</a>
279
+ <a name='L220'></a><a href='#L220'>220</a>
280
+ <a name='L221'></a><a href='#L221'>221</a>
281
+ <a name='L222'></a><a href='#L222'>222</a>
282
+ <a name='L223'></a><a href='#L223'>223</a>
283
+ <a name='L224'></a><a href='#L224'>224</a>
284
+ <a name='L225'></a><a href='#L225'>225</a>
285
+ <a name='L226'></a><a href='#L226'>226</a>
286
+ <a name='L227'></a><a href='#L227'>227</a>
287
+ <a name='L228'></a><a href='#L228'>228</a>
288
+ <a name='L229'></a><a href='#L229'>229</a>
289
+ <a name='L230'></a><a href='#L230'>230</a>
290
+ <a name='L231'></a><a href='#L231'>231</a>
291
+ <a name='L232'></a><a href='#L232'>232</a>
292
+ <a name='L233'></a><a href='#L233'>233</a>
293
+ <a name='L234'></a><a href='#L234'>234</a>
294
+ <a name='L235'></a><a href='#L235'>235</a>
295
+ <a name='L236'></a><a href='#L236'>236</a>
296
+ <a name='L237'></a><a href='#L237'>237</a>
297
+ <a name='L238'></a><a href='#L238'>238</a>
298
+ <a name='L239'></a><a href='#L239'>239</a>
299
+ <a name='L240'></a><a href='#L240'>240</a>
300
+ <a name='L241'></a><a href='#L241'>241</a>
301
+ <a name='L242'></a><a href='#L242'>242</a>
302
+ <a name='L243'></a><a href='#L243'>243</a>
303
+ <a name='L244'></a><a href='#L244'>244</a>
304
+ <a name='L245'></a><a href='#L245'>245</a>
305
+ <a name='L246'></a><a href='#L246'>246</a>
306
+ <a name='L247'></a><a href='#L247'>247</a>
307
+ <a name='L248'></a><a href='#L248'>248</a>
308
+ <a name='L249'></a><a href='#L249'>249</a>
309
+ <a name='L250'></a><a href='#L250'>250</a>
310
+ <a name='L251'></a><a href='#L251'>251</a>
311
+ <a name='L252'></a><a href='#L252'>252</a>
312
+ <a name='L253'></a><a href='#L253'>253</a>
313
+ <a name='L254'></a><a href='#L254'>254</a>
314
+ <a name='L255'></a><a href='#L255'>255</a>
315
+ <a name='L256'></a><a href='#L256'>256</a>
316
+ <a name='L257'></a><a href='#L257'>257</a>
317
+ <a name='L258'></a><a href='#L258'>258</a>
318
+ <a name='L259'></a><a href='#L259'>259</a>
319
+ <a name='L260'></a><a href='#L260'>260</a>
320
+ <a name='L261'></a><a href='#L261'>261</a>
321
+ <a name='L262'></a><a href='#L262'>262</a>
322
+ <a name='L263'></a><a href='#L263'>263</a>
323
+ <a name='L264'></a><a href='#L264'>264</a>
324
+ <a name='L265'></a><a href='#L265'>265</a>
325
+ <a name='L266'></a><a href='#L266'>266</a>
326
+ <a name='L267'></a><a href='#L267'>267</a>
327
+ <a name='L268'></a><a href='#L268'>268</a>
328
+ <a name='L269'></a><a href='#L269'>269</a>
329
+ <a name='L270'></a><a href='#L270'>270</a>
330
+ <a name='L271'></a><a href='#L271'>271</a>
331
+ <a name='L272'></a><a href='#L272'>272</a>
332
+ <a name='L273'></a><a href='#L273'>273</a>
333
+ <a name='L274'></a><a href='#L274'>274</a>
334
+ <a name='L275'></a><a href='#L275'>275</a>
335
+ <a name='L276'></a><a href='#L276'>276</a>
336
+ <a name='L277'></a><a href='#L277'>277</a>
337
+ <a name='L278'></a><a href='#L278'>278</a>
338
+ <a name='L279'></a><a href='#L279'>279</a>
339
+ <a name='L280'></a><a href='#L280'>280</a>
340
+ <a name='L281'></a><a href='#L281'>281</a>
341
+ <a name='L282'></a><a href='#L282'>282</a>
342
+ <a name='L283'></a><a href='#L283'>283</a>
343
+ <a name='L284'></a><a href='#L284'>284</a>
344
+ <a name='L285'></a><a href='#L285'>285</a>
345
+ <a name='L286'></a><a href='#L286'>286</a>
346
+ <a name='L287'></a><a href='#L287'>287</a>
347
+ <a name='L288'></a><a href='#L288'>288</a>
348
+ <a name='L289'></a><a href='#L289'>289</a>
349
+ <a name='L290'></a><a href='#L290'>290</a>
350
+ <a name='L291'></a><a href='#L291'>291</a>
351
+ <a name='L292'></a><a href='#L292'>292</a>
352
+ <a name='L293'></a><a href='#L293'>293</a>
353
+ <a name='L294'></a><a href='#L294'>294</a>
354
+ <a name='L295'></a><a href='#L295'>295</a>
355
+ <a name='L296'></a><a href='#L296'>296</a>
356
+ <a name='L297'></a><a href='#L297'>297</a>
357
+ <a name='L298'></a><a href='#L298'>298</a>
358
+ <a name='L299'></a><a href='#L299'>299</a>
359
+ <a name='L300'></a><a href='#L300'>300</a>
360
+ <a name='L301'></a><a href='#L301'>301</a>
361
+ <a name='L302'></a><a href='#L302'>302</a>
362
+ <a name='L303'></a><a href='#L303'>303</a>
363
+ <a name='L304'></a><a href='#L304'>304</a>
364
+ <a name='L305'></a><a href='#L305'>305</a>
365
+ <a name='L306'></a><a href='#L306'>306</a>
366
+ <a name='L307'></a><a href='#L307'>307</a>
367
+ <a name='L308'></a><a href='#L308'>308</a>
368
+ <a name='L309'></a><a href='#L309'>309</a>
369
+ <a name='L310'></a><a href='#L310'>310</a>
370
+ <a name='L311'></a><a href='#L311'>311</a>
371
+ <a name='L312'></a><a href='#L312'>312</a>
372
+ <a name='L313'></a><a href='#L313'>313</a>
373
+ <a name='L314'></a><a href='#L314'>314</a>
374
+ <a name='L315'></a><a href='#L315'>315</a>
375
+ <a name='L316'></a><a href='#L316'>316</a>
376
+ <a name='L317'></a><a href='#L317'>317</a>
377
+ <a name='L318'></a><a href='#L318'>318</a>
378
+ <a name='L319'></a><a href='#L319'>319</a>
379
+ <a name='L320'></a><a href='#L320'>320</a>
380
+ <a name='L321'></a><a href='#L321'>321</a>
381
+ <a name='L322'></a><a href='#L322'>322</a>
382
+ <a name='L323'></a><a href='#L323'>323</a>
383
+ <a name='L324'></a><a href='#L324'>324</a>
384
+ <a name='L325'></a><a href='#L325'>325</a>
385
+ <a name='L326'></a><a href='#L326'>326</a>
386
+ <a name='L327'></a><a href='#L327'>327</a>
387
+ <a name='L328'></a><a href='#L328'>328</a>
388
+ <a name='L329'></a><a href='#L329'>329</a>
389
+ <a name='L330'></a><a href='#L330'>330</a>
390
+ <a name='L331'></a><a href='#L331'>331</a>
391
+ <a name='L332'></a><a href='#L332'>332</a>
392
+ <a name='L333'></a><a href='#L333'>333</a>
393
+ <a name='L334'></a><a href='#L334'>334</a>
394
+ <a name='L335'></a><a href='#L335'>335</a>
395
+ <a name='L336'></a><a href='#L336'>336</a>
396
+ <a name='L337'></a><a href='#L337'>337</a>
397
+ <a name='L338'></a><a href='#L338'>338</a>
398
+ <a name='L339'></a><a href='#L339'>339</a>
399
+ <a name='L340'></a><a href='#L340'>340</a>
400
+ <a name='L341'></a><a href='#L341'>341</a>
401
+ <a name='L342'></a><a href='#L342'>342</a>
402
+ <a name='L343'></a><a href='#L343'>343</a>
403
+ <a name='L344'></a><a href='#L344'>344</a>
404
+ <a name='L345'></a><a href='#L345'>345</a>
405
+ <a name='L346'></a><a href='#L346'>346</a>
406
+ <a name='L347'></a><a href='#L347'>347</a>
407
+ <a name='L348'></a><a href='#L348'>348</a>
408
+ <a name='L349'></a><a href='#L349'>349</a>
409
+ <a name='L350'></a><a href='#L350'>350</a>
410
+ <a name='L351'></a><a href='#L351'>351</a>
411
+ <a name='L352'></a><a href='#L352'>352</a>
412
+ <a name='L353'></a><a href='#L353'>353</a>
413
+ <a name='L354'></a><a href='#L354'>354</a>
414
+ <a name='L355'></a><a href='#L355'>355</a>
415
+ <a name='L356'></a><a href='#L356'>356</a>
416
+ <a name='L357'></a><a href='#L357'>357</a>
417
+ <a name='L358'></a><a href='#L358'>358</a>
418
+ <a name='L359'></a><a href='#L359'>359</a>
419
+ <a name='L360'></a><a href='#L360'>360</a>
420
+ <a name='L361'></a><a href='#L361'>361</a>
421
+ <a name='L362'></a><a href='#L362'>362</a>
422
+ <a name='L363'></a><a href='#L363'>363</a>
423
+ <a name='L364'></a><a href='#L364'>364</a>
424
+ <a name='L365'></a><a href='#L365'>365</a>
425
+ <a name='L366'></a><a href='#L366'>366</a>
426
+ <a name='L367'></a><a href='#L367'>367</a>
427
+ <a name='L368'></a><a href='#L368'>368</a>
428
+ <a name='L369'></a><a href='#L369'>369</a>
429
+ <a name='L370'></a><a href='#L370'>370</a>
430
+ <a name='L371'></a><a href='#L371'>371</a>
431
+ <a name='L372'></a><a href='#L372'>372</a>
432
+ <a name='L373'></a><a href='#L373'>373</a>
433
+ <a name='L374'></a><a href='#L374'>374</a>
434
+ <a name='L375'></a><a href='#L375'>375</a>
435
+ <a name='L376'></a><a href='#L376'>376</a>
436
+ <a name='L377'></a><a href='#L377'>377</a>
437
+ <a name='L378'></a><a href='#L378'>378</a>
438
+ <a name='L379'></a><a href='#L379'>379</a>
439
+ <a name='L380'></a><a href='#L380'>380</a>
440
+ <a name='L381'></a><a href='#L381'>381</a>
441
+ <a name='L382'></a><a href='#L382'>382</a>
442
+ <a name='L383'></a><a href='#L383'>383</a>
443
+ <a name='L384'></a><a href='#L384'>384</a>
444
+ <a name='L385'></a><a href='#L385'>385</a>
445
+ <a name='L386'></a><a href='#L386'>386</a>
446
+ <a name='L387'></a><a href='#L387'>387</a>
447
+ <a name='L388'></a><a href='#L388'>388</a>
448
+ <a name='L389'></a><a href='#L389'>389</a>
449
+ <a name='L390'></a><a href='#L390'>390</a>
450
+ <a name='L391'></a><a href='#L391'>391</a>
451
+ <a name='L392'></a><a href='#L392'>392</a>
452
+ <a name='L393'></a><a href='#L393'>393</a>
453
+ <a name='L394'></a><a href='#L394'>394</a>
454
+ <a name='L395'></a><a href='#L395'>395</a>
455
+ <a name='L396'></a><a href='#L396'>396</a>
456
+ <a name='L397'></a><a href='#L397'>397</a>
457
+ <a name='L398'></a><a href='#L398'>398</a>
458
+ <a name='L399'></a><a href='#L399'>399</a>
459
+ <a name='L400'></a><a href='#L400'>400</a>
460
+ <a name='L401'></a><a href='#L401'>401</a>
461
+ <a name='L402'></a><a href='#L402'>402</a>
462
+ <a name='L403'></a><a href='#L403'>403</a>
463
+ <a name='L404'></a><a href='#L404'>404</a>
464
+ <a name='L405'></a><a href='#L405'>405</a>
465
+ <a name='L406'></a><a href='#L406'>406</a>
466
+ <a name='L407'></a><a href='#L407'>407</a>
467
+ <a name='L408'></a><a href='#L408'>408</a>
468
+ <a name='L409'></a><a href='#L409'>409</a>
469
+ <a name='L410'></a><a href='#L410'>410</a>
470
+ <a name='L411'></a><a href='#L411'>411</a>
471
+ <a name='L412'></a><a href='#L412'>412</a>
472
+ <a name='L413'></a><a href='#L413'>413</a>
473
+ <a name='L414'></a><a href='#L414'>414</a>
474
+ <a name='L415'></a><a href='#L415'>415</a>
475
+ <a name='L416'></a><a href='#L416'>416</a>
476
+ <a name='L417'></a><a href='#L417'>417</a>
477
+ <a name='L418'></a><a href='#L418'>418</a>
478
+ <a name='L419'></a><a href='#L419'>419</a>
479
+ <a name='L420'></a><a href='#L420'>420</a>
480
+ <a name='L421'></a><a href='#L421'>421</a>
481
+ <a name='L422'></a><a href='#L422'>422</a>
482
+ <a name='L423'></a><a href='#L423'>423</a>
483
+ <a name='L424'></a><a href='#L424'>424</a>
484
+ <a name='L425'></a><a href='#L425'>425</a>
485
+ <a name='L426'></a><a href='#L426'>426</a>
486
+ <a name='L427'></a><a href='#L427'>427</a>
487
+ <a name='L428'></a><a href='#L428'>428</a>
488
+ <a name='L429'></a><a href='#L429'>429</a>
489
+ <a name='L430'></a><a href='#L430'>430</a>
490
+ <a name='L431'></a><a href='#L431'>431</a>
491
+ <a name='L432'></a><a href='#L432'>432</a>
492
+ <a name='L433'></a><a href='#L433'>433</a>
493
+ <a name='L434'></a><a href='#L434'>434</a>
494
+ <a name='L435'></a><a href='#L435'>435</a>
495
+ <a name='L436'></a><a href='#L436'>436</a>
496
+ <a name='L437'></a><a href='#L437'>437</a>
497
+ <a name='L438'></a><a href='#L438'>438</a>
498
+ <a name='L439'></a><a href='#L439'>439</a>
499
+ <a name='L440'></a><a href='#L440'>440</a>
500
+ <a name='L441'></a><a href='#L441'>441</a>
501
+ <a name='L442'></a><a href='#L442'>442</a>
502
+ <a name='L443'></a><a href='#L443'>443</a>
503
+ <a name='L444'></a><a href='#L444'>444</a>
504
+ <a name='L445'></a><a href='#L445'>445</a>
505
+ <a name='L446'></a><a href='#L446'>446</a>
506
+ <a name='L447'></a><a href='#L447'>447</a>
507
+ <a name='L448'></a><a href='#L448'>448</a>
508
+ <a name='L449'></a><a href='#L449'>449</a>
509
+ <a name='L450'></a><a href='#L450'>450</a>
510
+ <a name='L451'></a><a href='#L451'>451</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
511
+ <span class="cline-any cline-neutral">&nbsp;</span>
512
+ <span class="cline-any cline-yes">1x</span>
513
+ <span class="cline-any cline-neutral">&nbsp;</span>
514
+ <span class="cline-any cline-neutral">&nbsp;</span>
515
+ <span class="cline-any cline-neutral">&nbsp;</span>
516
+ <span class="cline-any cline-yes">1x</span>
517
+ <span class="cline-any cline-yes">80x</span>
518
+ <span class="cline-any cline-neutral">&nbsp;</span>
519
+ <span class="cline-any cline-neutral">&nbsp;</span>
520
+ <span class="cline-any cline-yes">1x</span>
521
+ <span class="cline-any cline-yes">18x</span>
522
+ <span class="cline-any cline-yes">31x</span>
523
+ <span class="cline-any cline-yes">16x</span>
524
+ <span class="cline-any cline-neutral">&nbsp;</span>
525
+ <span class="cline-any cline-neutral">&nbsp;</span>
526
+ <span class="cline-any cline-yes">2x</span>
527
+ <span class="cline-any cline-neutral">&nbsp;</span>
528
+ <span class="cline-any cline-neutral">&nbsp;</span>
529
+ <span class="cline-any cline-yes">1x</span>
530
+ <span class="cline-any cline-neutral">&nbsp;</span>
531
+ <span class="cline-any cline-neutral">&nbsp;</span>
532
+ <span class="cline-any cline-neutral">&nbsp;</span>
533
+ <span class="cline-any cline-neutral">&nbsp;</span>
534
+ <span class="cline-any cline-yes">29x</span>
535
+ <span class="cline-any cline-yes">29x</span>
536
+ <span class="cline-any cline-yes">29x</span>
537
+ <span class="cline-any cline-yes">141x</span>
538
+ <span class="cline-any cline-yes">141x</span>
539
+ <span class="cline-any cline-yes">141x</span>
540
+ <span class="cline-any cline-neutral">&nbsp;</span>
541
+ <span class="cline-any cline-yes">29x</span>
542
+ <span class="cline-any cline-neutral">&nbsp;</span>
543
+ <span class="cline-any cline-neutral">&nbsp;</span>
544
+ <span class="cline-any cline-yes">1x</span>
545
+ <span class="cline-any cline-neutral">&nbsp;</span>
546
+ <span class="cline-any cline-neutral">&nbsp;</span>
547
+ <span class="cline-any cline-neutral">&nbsp;</span>
548
+ <span class="cline-any cline-neutral">&nbsp;</span>
549
+ <span class="cline-any cline-neutral">&nbsp;</span>
550
+ <span class="cline-any cline-neutral">&nbsp;</span>
551
+ <span class="cline-any cline-neutral">&nbsp;</span>
552
+ <span class="cline-any cline-neutral">&nbsp;</span>
553
+ <span class="cline-any cline-neutral">&nbsp;</span>
554
+ <span class="cline-any cline-yes">12x</span>
555
+ <span class="cline-any cline-yes">12x</span>
556
+ <span class="cline-any cline-neutral">&nbsp;</span>
557
+ <span class="cline-any cline-yes">12x</span>
558
+ <span class="cline-any cline-yes">12x</span>
559
+ <span class="cline-any cline-yes">24x</span>
560
+ <span class="cline-any cline-yes">13x</span>
561
+ <span class="cline-any cline-yes">11x</span>
562
+ <span class="cline-any cline-neutral">&nbsp;</span>
563
+ <span class="cline-any cline-neutral">&nbsp;</span>
564
+ <span class="cline-any cline-yes">12x</span>
565
+ <span class="cline-any cline-neutral">&nbsp;</span>
566
+ <span class="cline-any cline-neutral">&nbsp;</span>
567
+ <span class="cline-any cline-neutral">&nbsp;</span>
568
+ <span class="cline-any cline-neutral">&nbsp;</span>
569
+ <span class="cline-any cline-neutral">&nbsp;</span>
570
+ <span class="cline-any cline-neutral">&nbsp;</span>
571
+ <span class="cline-any cline-yes">1x</span>
572
+ <span class="cline-any cline-yes">9x</span>
573
+ <span class="cline-any cline-yes">9x</span>
574
+ <span class="cline-any cline-neutral">&nbsp;</span>
575
+ <span class="cline-any cline-yes">14x</span>
576
+ <span class="cline-any cline-neutral">&nbsp;</span>
577
+ <span class="cline-any cline-neutral">&nbsp;</span>
578
+ <span class="cline-any cline-yes">9x</span>
579
+ <span class="cline-any cline-yes">1x</span>
580
+ <span class="cline-any cline-neutral">&nbsp;</span>
581
+ <span class="cline-any cline-yes">8x</span>
582
+ <span class="cline-any cline-yes">34x</span>
583
+ <span class="cline-any cline-neutral">&nbsp;</span>
584
+ <span class="cline-any cline-yes">26x</span>
585
+ <span class="cline-any cline-yes">26x</span>
586
+ <span class="cline-any cline-neutral">&nbsp;</span>
587
+ <span class="cline-any cline-yes">26x</span>
588
+ <span class="cline-any cline-yes">26x</span>
589
+ <span class="cline-any cline-yes">58x</span>
590
+ <span class="cline-any cline-neutral">&nbsp;</span>
591
+ <span class="cline-any cline-yes">26x</span>
592
+ <span class="cline-any cline-neutral">&nbsp;</span>
593
+ <span class="cline-any cline-neutral">&nbsp;</span>
594
+ <span class="cline-any cline-yes">34x</span>
595
+ <span class="cline-any cline-neutral">&nbsp;</span>
596
+ <span class="cline-any cline-neutral">&nbsp;</span>
597
+ <span class="cline-any cline-yes">1x</span>
598
+ <span class="cline-any cline-yes">9x</span>
599
+ <span class="cline-any cline-yes">9x</span>
600
+ <span class="cline-any cline-neutral">&nbsp;</span>
601
+ <span class="cline-any cline-yes">17x</span>
602
+ <span class="cline-any cline-neutral">&nbsp;</span>
603
+ <span class="cline-any cline-neutral">&nbsp;</span>
604
+ <span class="cline-any cline-yes">9x</span>
605
+ <span class="cline-any cline-yes">1x</span>
606
+ <span class="cline-any cline-neutral">&nbsp;</span>
607
+ <span class="cline-any cline-neutral">&nbsp;</span>
608
+ <span class="cline-any cline-yes">8x</span>
609
+ <span class="cline-any cline-yes">31x</span>
610
+ <span class="cline-any cline-neutral">&nbsp;</span>
611
+ <span class="cline-any cline-yes">23x</span>
612
+ <span class="cline-any cline-yes">23x</span>
613
+ <span class="cline-any cline-neutral">&nbsp;</span>
614
+ <span class="cline-any cline-yes">23x</span>
615
+ <span class="cline-any cline-yes">23x</span>
616
+ <span class="cline-any cline-yes">21x</span>
617
+ <span class="cline-any cline-neutral">&nbsp;</span>
618
+ <span class="cline-any cline-neutral">&nbsp;</span>
619
+ <span class="cline-any cline-yes">23x</span>
620
+ <span class="cline-any cline-neutral">&nbsp;</span>
621
+ <span class="cline-any cline-neutral">&nbsp;</span>
622
+ <span class="cline-any cline-yes">31x</span>
623
+ <span class="cline-any cline-neutral">&nbsp;</span>
624
+ <span class="cline-any cline-neutral">&nbsp;</span>
625
+ <span class="cline-any cline-yes">1x</span>
626
+ <span class="cline-any cline-neutral">&nbsp;</span>
627
+ <span class="cline-any cline-neutral">&nbsp;</span>
628
+ <span class="cline-any cline-neutral">&nbsp;</span>
629
+ <span class="cline-any cline-yes">9x</span>
630
+ <span class="cline-any cline-yes">9x</span>
631
+ <span class="cline-any cline-yes">17x</span>
632
+ <span class="cline-any cline-neutral">&nbsp;</span>
633
+ <span class="cline-any cline-yes">9x</span>
634
+ <span class="cline-any cline-neutral">&nbsp;</span>
635
+ <span class="cline-any cline-neutral">&nbsp;</span>
636
+ <span class="cline-any cline-yes">1x</span>
637
+ <span class="cline-any cline-neutral">&nbsp;</span>
638
+ <span class="cline-any cline-neutral">&nbsp;</span>
639
+ <span class="cline-any cline-neutral">&nbsp;</span>
640
+ <span class="cline-any cline-neutral">&nbsp;</span>
641
+ <span class="cline-any cline-neutral">&nbsp;</span>
642
+ <span class="cline-any cline-yes">12x</span>
643
+ <span class="cline-any cline-neutral">&nbsp;</span>
644
+ <span class="cline-any cline-neutral">&nbsp;</span>
645
+ <span class="cline-any cline-neutral">&nbsp;</span>
646
+ <span class="cline-any cline-neutral">&nbsp;</span>
647
+ <span class="cline-any cline-neutral">&nbsp;</span>
648
+ <span class="cline-any cline-neutral">&nbsp;</span>
649
+ <span class="cline-any cline-yes">12x</span>
650
+ <span class="cline-any cline-neutral">&nbsp;</span>
651
+ <span class="cline-any cline-yes">15x</span>
652
+ <span class="cline-any cline-yes">4x</span>
653
+ <span class="cline-any cline-neutral">&nbsp;</span>
654
+ <span class="cline-any cline-neutral">&nbsp;</span>
655
+ <span class="cline-any cline-yes">2x</span>
656
+ <span class="cline-any cline-yes">10x</span>
657
+ <span class="cline-any cline-yes">1x</span>
658
+ <span class="cline-any cline-yes">1x</span>
659
+ <span class="cline-any cline-yes">1x</span>
660
+ <span class="cline-any cline-neutral">&nbsp;</span>
661
+ <span class="cline-any cline-neutral">&nbsp;</span>
662
+ <span class="cline-any cline-neutral">&nbsp;</span>
663
+ <span class="cline-any cline-yes">8x</span>
664
+ <span class="cline-any cline-neutral">&nbsp;</span>
665
+ <span class="cline-any cline-neutral">&nbsp;</span>
666
+ <span class="cline-any cline-yes">1x</span>
667
+ <span class="cline-any cline-neutral">&nbsp;</span>
668
+ <span class="cline-any cline-yes">9x</span>
669
+ <span class="cline-any cline-yes">9x</span>
670
+ <span class="cline-any cline-yes">9x</span>
671
+ <span class="cline-any cline-neutral">&nbsp;</span>
672
+ <span class="cline-any cline-yes">9x</span>
673
+ <span class="cline-any cline-neutral">&nbsp;</span>
674
+ <span class="cline-any cline-yes">114x</span>
675
+ <span class="cline-any cline-neutral">&nbsp;</span>
676
+ <span class="cline-any cline-neutral">&nbsp;</span>
677
+ <span class="cline-any cline-neutral">&nbsp;</span>
678
+ <span class="cline-any cline-neutral">&nbsp;</span>
679
+ <span class="cline-any cline-neutral">&nbsp;</span>
680
+ <span class="cline-any cline-neutral">&nbsp;</span>
681
+ <span class="cline-any cline-neutral">&nbsp;</span>
682
+ <span class="cline-any cline-neutral">&nbsp;</span>
683
+ <span class="cline-any cline-neutral">&nbsp;</span>
684
+ <span class="cline-any cline-neutral">&nbsp;</span>
685
+ <span class="cline-any cline-neutral">&nbsp;</span>
686
+ <span class="cline-any cline-neutral">&nbsp;</span>
687
+ <span class="cline-any cline-neutral">&nbsp;</span>
688
+ <span class="cline-any cline-neutral">&nbsp;</span>
689
+ <span class="cline-any cline-neutral">&nbsp;</span>
690
+ <span class="cline-any cline-neutral">&nbsp;</span>
691
+ <span class="cline-any cline-neutral">&nbsp;</span>
692
+ <span class="cline-any cline-neutral">&nbsp;</span>
693
+ <span class="cline-any cline-neutral">&nbsp;</span>
694
+ <span class="cline-any cline-neutral">&nbsp;</span>
695
+ <span class="cline-any cline-neutral">&nbsp;</span>
696
+ <span class="cline-any cline-neutral">&nbsp;</span>
697
+ <span class="cline-any cline-neutral">&nbsp;</span>
698
+ <span class="cline-any cline-neutral">&nbsp;</span>
699
+ <span class="cline-any cline-neutral">&nbsp;</span>
700
+ <span class="cline-any cline-neutral">&nbsp;</span>
701
+ <span class="cline-any cline-neutral">&nbsp;</span>
702
+ <span class="cline-any cline-neutral">&nbsp;</span>
703
+ <span class="cline-any cline-neutral">&nbsp;</span>
704
+ <span class="cline-any cline-neutral">&nbsp;</span>
705
+ <span class="cline-any cline-neutral">&nbsp;</span>
706
+ <span class="cline-any cline-neutral">&nbsp;</span>
707
+ <span class="cline-any cline-neutral">&nbsp;</span>
708
+ <span class="cline-any cline-neutral">&nbsp;</span>
709
+ <span class="cline-any cline-neutral">&nbsp;</span>
710
+ <span class="cline-any cline-yes">1x</span>
711
+ <span class="cline-any cline-neutral">&nbsp;</span>
712
+ <span class="cline-any cline-neutral">&nbsp;</span>
713
+ <span class="cline-any cline-neutral">&nbsp;</span>
714
+ <span class="cline-any cline-neutral">&nbsp;</span>
715
+ <span class="cline-any cline-neutral">&nbsp;</span>
716
+ <span class="cline-any cline-neutral">&nbsp;</span>
717
+ <span class="cline-any cline-neutral">&nbsp;</span>
718
+ <span class="cline-any cline-neutral">&nbsp;</span>
719
+ <span class="cline-any cline-yes">18x</span>
720
+ <span class="cline-any cline-no">&nbsp;</span>
721
+ <span class="cline-any cline-neutral">&nbsp;</span>
722
+ <span class="cline-any cline-neutral">&nbsp;</span>
723
+ <span class="cline-any cline-yes">18x</span>
724
+ <span class="cline-any cline-neutral">&nbsp;</span>
725
+ <span class="cline-any cline-yes">18x</span>
726
+ <span class="cline-any cline-yes">21x</span>
727
+ <span class="cline-any cline-yes">34x</span>
728
+ <span class="cline-any cline-neutral">&nbsp;</span>
729
+ <span class="cline-any cline-neutral">&nbsp;</span>
730
+ <span class="cline-any cline-yes">21x</span>
731
+ <span class="cline-any cline-neutral">&nbsp;</span>
732
+ <span class="cline-any cline-neutral">&nbsp;</span>
733
+ <span class="cline-any cline-neutral">&nbsp;</span>
734
+ <span class="cline-any cline-neutral">&nbsp;</span>
735
+ <span class="cline-any cline-neutral">&nbsp;</span>
736
+ <span class="cline-any cline-neutral">&nbsp;</span>
737
+ <span class="cline-any cline-neutral">&nbsp;</span>
738
+ <span class="cline-any cline-yes">18x</span>
739
+ <span class="cline-any cline-yes">4999x</span>
740
+ <span class="cline-any cline-neutral">&nbsp;</span>
741
+ <span class="cline-any cline-yes">18x</span>
742
+ <span class="cline-any cline-yes">18x</span>
743
+ <span class="cline-any cline-yes">21x</span>
744
+ <span class="cline-any cline-neutral">&nbsp;</span>
745
+ <span class="cline-any cline-yes">18x</span>
746
+ <span class="cline-any cline-neutral">&nbsp;</span>
747
+ <span class="cline-any cline-neutral">&nbsp;</span>
748
+ <span class="cline-any cline-yes">18x</span>
749
+ <span class="cline-any cline-neutral">&nbsp;</span>
750
+ <span class="cline-any cline-neutral">&nbsp;</span>
751
+ <span class="cline-any cline-neutral">&nbsp;</span>
752
+ <span class="cline-any cline-neutral">&nbsp;</span>
753
+ <span class="cline-any cline-neutral">&nbsp;</span>
754
+ <span class="cline-any cline-neutral">&nbsp;</span>
755
+ <span class="cline-any cline-yes">18x</span>
756
+ <span class="cline-any cline-yes">4x</span>
757
+ <span class="cline-any cline-neutral">&nbsp;</span>
758
+ <span class="cline-any cline-neutral">&nbsp;</span>
759
+ <span class="cline-any cline-neutral">&nbsp;</span>
760
+ <span class="cline-any cline-neutral">&nbsp;</span>
761
+ <span class="cline-any cline-neutral">&nbsp;</span>
762
+ <span class="cline-any cline-yes">4x</span>
763
+ <span class="cline-any cline-neutral">&nbsp;</span>
764
+ <span class="cline-any cline-neutral">&nbsp;</span>
765
+ <span class="cline-any cline-neutral">&nbsp;</span>
766
+ <span class="cline-any cline-neutral">&nbsp;</span>
767
+ <span class="cline-any cline-neutral">&nbsp;</span>
768
+ <span class="cline-any cline-yes">4x</span>
769
+ <span class="cline-any cline-neutral">&nbsp;</span>
770
+ <span class="cline-any cline-neutral">&nbsp;</span>
771
+ <span class="cline-any cline-yes">14x</span>
772
+ <span class="cline-any cline-neutral">&nbsp;</span>
773
+ <span class="cline-any cline-neutral">&nbsp;</span>
774
+ <span class="cline-any cline-yes">14x</span>
775
+ <span class="cline-any cline-yes">21x</span>
776
+ <span class="cline-any cline-neutral">&nbsp;</span>
777
+ <span class="cline-any cline-neutral">&nbsp;</span>
778
+ <span class="cline-any cline-neutral">&nbsp;</span>
779
+ <span class="cline-any cline-yes">21x</span>
780
+ <span class="cline-any cline-neutral">&nbsp;</span>
781
+ <span class="cline-any cline-neutral">&nbsp;</span>
782
+ <span class="cline-any cline-yes">21x</span>
783
+ <span class="cline-any cline-neutral">&nbsp;</span>
784
+ <span class="cline-any cline-neutral">&nbsp;</span>
785
+ <span class="cline-any cline-neutral">&nbsp;</span>
786
+ <span class="cline-any cline-neutral">&nbsp;</span>
787
+ <span class="cline-any cline-neutral">&nbsp;</span>
788
+ <span class="cline-any cline-neutral">&nbsp;</span>
789
+ <span class="cline-any cline-yes">21x</span>
790
+ <span class="cline-any cline-neutral">&nbsp;</span>
791
+ <span class="cline-any cline-yes">21x</span>
792
+ <span class="cline-any cline-neutral">&nbsp;</span>
793
+ <span class="cline-any cline-neutral">&nbsp;</span>
794
+ <span class="cline-any cline-neutral">&nbsp;</span>
795
+ <span class="cline-any cline-neutral">&nbsp;</span>
796
+ <span class="cline-any cline-yes">21x</span>
797
+ <span class="cline-any cline-yes">21x</span>
798
+ <span class="cline-any cline-neutral">&nbsp;</span>
799
+ <span class="cline-any cline-yes">21x</span>
800
+ <span class="cline-any cline-neutral">&nbsp;</span>
801
+ <span class="cline-any cline-yes">4985x</span>
802
+ <span class="cline-any cline-neutral">&nbsp;</span>
803
+ <span class="cline-any cline-no">&nbsp;</span>
804
+ <span class="cline-any cline-neutral">&nbsp;</span>
805
+ <span class="cline-any cline-neutral">&nbsp;</span>
806
+ <span class="cline-any cline-neutral">&nbsp;</span>
807
+ <span class="cline-any cline-neutral">&nbsp;</span>
808
+ <span class="cline-any cline-no">&nbsp;</span>
809
+ <span class="cline-any cline-no">&nbsp;</span>
810
+ <span class="cline-any cline-neutral">&nbsp;</span>
811
+ <span class="cline-any cline-neutral">&nbsp;</span>
812
+ <span class="cline-any cline-yes">4985x</span>
813
+ <span class="cline-any cline-neutral">&nbsp;</span>
814
+ <span class="cline-any cline-neutral">&nbsp;</span>
815
+ <span class="cline-any cline-neutral">&nbsp;</span>
816
+ <span class="cline-any cline-yes">4985x</span>
817
+ <span class="cline-any cline-neutral">&nbsp;</span>
818
+ <span class="cline-any cline-yes">4985x</span>
819
+ <span class="cline-any cline-neutral">&nbsp;</span>
820
+ <span class="cline-any cline-neutral">&nbsp;</span>
821
+ <span class="cline-any cline-neutral">&nbsp;</span>
822
+ <span class="cline-any cline-yes">4985x</span>
823
+ <span class="cline-any cline-neutral">&nbsp;</span>
824
+ <span class="cline-any cline-neutral">&nbsp;</span>
825
+ <span class="cline-any cline-neutral">&nbsp;</span>
826
+ <span class="cline-any cline-neutral">&nbsp;</span>
827
+ <span class="cline-any cline-yes">4985x</span>
828
+ <span class="cline-any cline-neutral">&nbsp;</span>
829
+ <span class="cline-any cline-no">&nbsp;</span>
830
+ <span class="cline-any cline-neutral">&nbsp;</span>
831
+ <span class="cline-any cline-neutral">&nbsp;</span>
832
+ <span class="cline-any cline-yes">4985x</span>
833
+ <span class="cline-any cline-neutral">&nbsp;</span>
834
+ <span class="cline-any cline-neutral">&nbsp;</span>
835
+ <span class="cline-any cline-neutral">&nbsp;</span>
836
+ <span class="cline-any cline-neutral">&nbsp;</span>
837
+ <span class="cline-any cline-neutral">&nbsp;</span>
838
+ <span class="cline-any cline-neutral">&nbsp;</span>
839
+ <span class="cline-any cline-neutral">&nbsp;</span>
840
+ <span class="cline-any cline-yes">2472x</span>
841
+ <span class="cline-any cline-neutral">&nbsp;</span>
842
+ <span class="cline-any cline-yes">2472x</span>
843
+ <span class="cline-any cline-no">&nbsp;</span>
844
+ <span class="cline-any cline-neutral">&nbsp;</span>
845
+ <span class="cline-any cline-neutral">&nbsp;</span>
846
+ <span class="cline-any cline-neutral">&nbsp;</span>
847
+ <span class="cline-any cline-yes">4985x</span>
848
+ <span class="cline-any cline-neutral">&nbsp;</span>
849
+ <span class="cline-any cline-yes">4985x</span>
850
+ <span class="cline-any cline-yes">6x</span>
851
+ <span class="cline-any cline-neutral">&nbsp;</span>
852
+ <span class="cline-any cline-neutral">&nbsp;</span>
853
+ <span class="cline-any cline-neutral">&nbsp;</span>
854
+ <span class="cline-any cline-neutral">&nbsp;</span>
855
+ <span class="cline-any cline-neutral">&nbsp;</span>
856
+ <span class="cline-any cline-yes">6x</span>
857
+ <span class="cline-any cline-yes">6x</span>
858
+ <span class="cline-any cline-neutral">&nbsp;</span>
859
+ <span class="cline-any cline-neutral">&nbsp;</span>
860
+ <span class="cline-any cline-yes">4979x</span>
861
+ <span class="cline-any cline-neutral">&nbsp;</span>
862
+ <span class="cline-any cline-neutral">&nbsp;</span>
863
+ <span class="cline-any cline-neutral">&nbsp;</span>
864
+ <span class="cline-any cline-neutral">&nbsp;</span>
865
+ <span class="cline-any cline-neutral">&nbsp;</span>
866
+ <span class="cline-any cline-yes">14x</span>
867
+ <span class="cline-any cline-no">&nbsp;</span>
868
+ <span class="cline-any cline-neutral">&nbsp;</span>
869
+ <span class="cline-any cline-neutral">&nbsp;</span>
870
+ <span class="cline-any cline-neutral">&nbsp;</span>
871
+ <span class="cline-any cline-neutral">&nbsp;</span>
872
+ <span class="cline-any cline-neutral">&nbsp;</span>
873
+ <span class="cline-any cline-yes">14x</span>
874
+ <span class="cline-any cline-neutral">&nbsp;</span>
875
+ <span class="cline-any cline-neutral">&nbsp;</span>
876
+ <span class="cline-any cline-neutral">&nbsp;</span>
877
+ <span class="cline-any cline-neutral">&nbsp;</span>
878
+ <span class="cline-any cline-neutral">&nbsp;</span>
879
+ <span class="cline-any cline-neutral">&nbsp;</span>
880
+ <span class="cline-any cline-neutral">&nbsp;</span>
881
+ <span class="cline-any cline-neutral">&nbsp;</span>
882
+ <span class="cline-any cline-neutral">&nbsp;</span>
883
+ <span class="cline-any cline-neutral">&nbsp;</span>
884
+ <span class="cline-any cline-neutral">&nbsp;</span>
885
+ <span class="cline-any cline-neutral">&nbsp;</span>
886
+ <span class="cline-any cline-neutral">&nbsp;</span>
887
+ <span class="cline-any cline-yes">14x</span>
888
+ <span class="cline-any cline-yes">14x</span>
889
+ <span class="cline-any cline-neutral">&nbsp;</span>
890
+ <span class="cline-any cline-neutral">&nbsp;</span>
891
+ <span class="cline-any cline-yes">4965x</span>
892
+ <span class="cline-any cline-neutral">&nbsp;</span>
893
+ <span class="cline-any cline-neutral">&nbsp;</span>
894
+ <span class="cline-any cline-neutral">&nbsp;</span>
895
+ <span class="cline-any cline-neutral">&nbsp;</span>
896
+ <span class="cline-any cline-neutral">&nbsp;</span>
897
+ <span class="cline-any cline-neutral">&nbsp;</span>
898
+ <span class="cline-any cline-yes">4965x</span>
899
+ <span class="cline-any cline-neutral">&nbsp;</span>
900
+ <span class="cline-any cline-no">&nbsp;</span>
901
+ <span class="cline-any cline-neutral">&nbsp;</span>
902
+ <span class="cline-any cline-yes">4965x</span>
903
+ <span class="cline-any cline-neutral">&nbsp;</span>
904
+ <span class="cline-any cline-neutral">&nbsp;</span>
905
+ <span class="cline-any cline-yes">4965x</span>
906
+ <span class="cline-any cline-neutral">&nbsp;</span>
907
+ <span class="cline-any cline-neutral">&nbsp;</span>
908
+ <span class="cline-any cline-yes">4965x</span>
909
+ <span class="cline-any cline-yes">4965x</span>
910
+ <span class="cline-any cline-neutral">&nbsp;</span>
911
+ <span class="cline-any cline-yes">4965x</span>
912
+ <span class="cline-any cline-neutral">&nbsp;</span>
913
+ <span class="cline-any cline-no">&nbsp;</span>
914
+ <span class="cline-any cline-no">&nbsp;</span>
915
+ <span class="cline-any cline-neutral">&nbsp;</span>
916
+ <span class="cline-any cline-neutral">&nbsp;</span>
917
+ <span class="cline-any cline-neutral">&nbsp;</span>
918
+ <span class="cline-any cline-neutral">&nbsp;</span>
919
+ <span class="cline-any cline-neutral">&nbsp;</span>
920
+ <span class="cline-any cline-yes">14x</span>
921
+ <span class="cline-any cline-neutral">&nbsp;</span>
922
+ <span class="cline-any cline-neutral">&nbsp;</span>
923
+ <span class="cline-any cline-neutral">&nbsp;</span>
924
+ <span class="cline-any cline-neutral">&nbsp;</span>
925
+ <span class="cline-any cline-neutral">&nbsp;</span>
926
+ <span class="cline-any cline-neutral">&nbsp;</span>
927
+ <span class="cline-any cline-yes">14x</span>
928
+ <span class="cline-any cline-neutral">&nbsp;</span>
929
+ <span class="cline-any cline-neutral">&nbsp;</span>
930
+ <span class="cline-any cline-yes">1x</span>
931
+ <span class="cline-any cline-yes">20x</span>
932
+ <span class="cline-any cline-yes">5075x</span>
933
+ <span class="cline-any cline-yes">5075x</span>
934
+ <span class="cline-any cline-yes">5055x</span>
935
+ <span class="cline-any cline-neutral">&nbsp;</span>
936
+ <span class="cline-any cline-neutral">&nbsp;</span>
937
+ <span class="cline-any cline-neutral">&nbsp;</span>
938
+ <span class="cline-any cline-neutral">&nbsp;</span>
939
+ <span class="cline-any cline-yes">39x</span>
940
+ <span class="cline-any cline-yes">39x</span>
941
+ <span class="cline-any cline-neutral">&nbsp;</span>
942
+ <span class="cline-any cline-neutral">&nbsp;</span>
943
+ <span class="cline-any cline-neutral">&nbsp;</span>
944
+ <span class="cline-any cline-yes">5036x</span>
945
+ <span class="cline-any cline-neutral">&nbsp;</span>
946
+ <span class="cline-any cline-neutral">&nbsp;</span>
947
+ <span class="cline-any cline-neutral">&nbsp;</span>
948
+ <span class="cline-any cline-yes">1x</span>
949
+ <span class="cline-any cline-yes">9909x</span>
950
+ <span class="cline-any cline-yes">9909x</span>
951
+ <span class="cline-any cline-neutral">&nbsp;</span>
952
+ <span class="cline-any cline-neutral">&nbsp;</span>
953
+ <span class="cline-any cline-neutral">&nbsp;</span>
954
+ <span class="cline-any cline-yes">9909x</span>
955
+ <span class="cline-any cline-neutral">&nbsp;</span>
956
+ <span class="cline-any cline-neutral">&nbsp;</span>
957
+ <span class="cline-any cline-neutral">&nbsp;</span>
958
+ <span class="cline-any cline-yes">9909x</span>
959
+ <span class="cline-any cline-neutral">&nbsp;</span>
960
+ <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import BigNumber from 'bignumber.js';
961
+ &nbsp;
962
+ import { BigIntMath, toBigInt } from '../utils/BigIntUtils';
963
+ import { HyperbolaPayoutCurve } from './HyperbolaPayoutCurve';
964
+ import { PolynomialPayoutCurve } from './PolynomialPayoutCurve';
965
+ &nbsp;
966
+ export function zipWithIndex&lt;T&gt;(arr: T[]): [T, number][] {
967
+ return arr.map((a, i) =&gt; [a, i]);
968
+ }
969
+ &nbsp;
970
+ export function dropUntil&lt;T&gt;(data: T[], check: (_: T) =&gt; boolean): T[] {
971
+ for (let i = 0; i &lt; data.length; i++) {
972
+ if (check(data[i])) {
973
+ return data.slice(i);
974
+ }
975
+ }
976
+ return [];
977
+ }
978
+ &nbsp;
979
+ export function decompose(
980
+ num: bigint,
981
+ base: number,
982
+ numDigits: number,
983
+ ): number[] {
984
+ let currentNumber = num;
985
+ const digits = [];
986
+ while (numDigits &gt; 0) {
987
+ digits.push(Number(currentNumber % BigInt(base)));
988
+ currentNumber = currentNumber / BigInt(base);
989
+ numDigits--;
990
+ }
991
+ return digits.reverse();
992
+ }
993
+ &nbsp;
994
+ export function separatePrefix(
995
+ start: bigint,
996
+ end: bigint,
997
+ base: number,
998
+ numDigits: number,
999
+ ): {
1000
+ prefixDigits: number[];
1001
+ startDigits: number[];
1002
+ endDigits: number[];
1003
+ } {
1004
+ const startDigits = decompose(start, base, numDigits);
1005
+ const endDigits = decompose(end, base, numDigits);
1006
+ &nbsp;
1007
+ const prefixDigits: number[] = [];
1008
+ for (let i = 0; i &lt; startDigits.length; i++) {
1009
+ if (startDigits[i] === endDigits[i]) {
1010
+ prefixDigits.push(startDigits[i]);
1011
+ } else break;
1012
+ }
1013
+ &nbsp;
1014
+ return {
1015
+ prefixDigits,
1016
+ startDigits: startDigits.splice(prefixDigits.length),
1017
+ endDigits: endDigits.splice(prefixDigits.length),
1018
+ };
1019
+ }
1020
+ &nbsp;
1021
+ export function frontGroupings(digits: number[], base: number): number[][] {
1022
+ const digitsReversed = Array.from(digits).reverse();
1023
+ const nonZeroDigits = dropUntil(
1024
+ zipWithIndex(digitsReversed),
1025
+ (a) =&gt; a[0] !== 0,
1026
+ );
1027
+ &nbsp;
1028
+ if (nonZeroDigits.length === 0) {
1029
+ return [[0]];
1030
+ }
1031
+ const fromFront = nonZeroDigits
1032
+ .filter((_, i) =&gt; i !== nonZeroDigits.length - 1)
1033
+ .flatMap(([d, i]) =&gt; {
1034
+ const fixedDigits = Array.from(digits);
1035
+ fixedDigits.length = fixedDigits.length - (i + 1);
1036
+ &nbsp;
1037
+ const result: number[][] = [];
1038
+ for (let n = d + 1; n &lt; base; n++) {
1039
+ result.push([...Array.from(fixedDigits), n]);
1040
+ }
1041
+ return result;
1042
+ });
1043
+ &nbsp;
1044
+ return [nonZeroDigits.map((a) =&gt; a[0]).reverse(), ...fromFront];
1045
+ }
1046
+ &nbsp;
1047
+ export function backGroupings(digits: number[], base: number): number[][] {
1048
+ const digitsReversed = Array.from(digits).reverse();
1049
+ const nonMaxDigits = dropUntil(
1050
+ zipWithIndex(digitsReversed),
1051
+ (a) =&gt; a[0] !== base - 1,
1052
+ );
1053
+ &nbsp;
1054
+ if (nonMaxDigits.length === 0) {
1055
+ return [[base - 1]];
1056
+ }
1057
+ &nbsp;
1058
+ const fromBack = nonMaxDigits
1059
+ .filter((_, i) =&gt; i !== nonMaxDigits.length - 1)
1060
+ .flatMap(([d, i]) =&gt; {
1061
+ const fixedDigits = Array.from(digits);
1062
+ fixedDigits.length = fixedDigits.length - (i + 1);
1063
+ &nbsp;
1064
+ const result: number[][] = [];
1065
+ for (let n = d - 1; n &gt;= 0; n--) {
1066
+ result.push([...Array.from(fixedDigits), n]);
1067
+ }
1068
+ &nbsp;
1069
+ return result;
1070
+ });
1071
+ &nbsp;
1072
+ return [...fromBack.reverse(), nonMaxDigits.map((a) =&gt; a[0]).reverse()];
1073
+ }
1074
+ &nbsp;
1075
+ export function middleGroupings(
1076
+ firstDigitStart: number,
1077
+ firstDigitEnd: number,
1078
+ ): number[][] {
1079
+ const result = [];
1080
+ while (++firstDigitStart &lt; firstDigitEnd) {
1081
+ result.push([firstDigitStart]);
1082
+ }
1083
+ return result;
1084
+ }
1085
+ &nbsp;
1086
+ export function groupByIgnoringDigits(
1087
+ start: bigint,
1088
+ end: bigint,
1089
+ base: number,
1090
+ numDigits: number,
1091
+ ): number[][] {
1092
+ const { prefixDigits, startDigits, endDigits } = separatePrefix(
1093
+ start,
1094
+ end,
1095
+ base,
1096
+ numDigits,
1097
+ );
1098
+ &nbsp;
1099
+ if (
1100
+ start === end ||
1101
+ (startDigits.every((n) =&gt; n === 0) &amp;&amp;
1102
+ endDigits.every((n) =&gt; n === base - 1) &amp;&amp;
1103
+ prefixDigits.length !== 0)
1104
+ ) {
1105
+ return [prefixDigits];
1106
+ } else if (prefixDigits.length === numDigits - 1) {
1107
+ const result = [];
1108
+ for (
1109
+ let i = startDigits[startDigits.length - 1];
1110
+ i &lt;= endDigits[endDigits.length - 1];
1111
+ i++
1112
+ ) {
1113
+ result.push([...prefixDigits, i]);
1114
+ }
1115
+ &nbsp;
1116
+ return result;
1117
+ } else {
1118
+ const front = frontGroupings(startDigits, base);
1119
+ const middle = middleGroupings(startDigits[0], endDigits[0]);
1120
+ const back = backGroupings(endDigits, base);
1121
+ &nbsp;
1122
+ const groupings = [...front, ...middle, ...back];
1123
+ &nbsp;
1124
+ return groupings.map((g) =&gt; [...prefixDigits, ...g]);
1125
+ }
1126
+ }
1127
+ &nbsp;
1128
+ export interface RoundingInterval {
1129
+ beginInterval: bigint;
1130
+ roundingMod: bigint;
1131
+ }
1132
+ &nbsp;
1133
+ export type CETPayout = {
1134
+ indexFrom: bigint;
1135
+ indexTo: bigint;
1136
+ payout: bigint;
1137
+ };
1138
+ &nbsp;
1139
+ /**
1140
+ * Performs optimized evaluation and rounding for strictly monotonic hyperbolas on intervals (from, to)
1141
+ * e.g. hyperbolas with the form b = c = 0
1142
+ *
1143
+ * The next start of a payout range is determined by finding the outcome at the next mid-rounding payout.
1144
+ * Uses an inverse function of the hyperbola to find the outcome.
1145
+ *
1146
+ * Optimizes rounding from O(to - from) to O(totalCollateral / rounding)
1147
+ *
1148
+ *
1149
+ * Evaluates and rounds a payout_function equivalent to:
1150
+ *
1151
+ * payout_function_v0
1152
+ * num_pieces: 1
1153
+ * endpoint_0: from
1154
+ * endpoint_payout_0: fromPayout
1155
+ * extra_precision_0: 0
1156
+ * payout_curve_piece: HyperbolaPayoutCurve
1157
+ * endpoint_1: to
1158
+ * endpoint_payout_1: toPayout
1159
+ */
1160
+ export function splitIntoRanges(
1161
+ from: bigint,
1162
+ to: bigint,
1163
+ fromPayout: bigint, // endpoint_payout
1164
+ toPayout: bigint, // endpoint_payout
1165
+ totalCollateral: bigint,
1166
+ curve: HyperbolaPayoutCurve | PolynomialPayoutCurve,
1167
+ roundingIntervals: RoundingInterval[],
1168
+ ): CETPayout[] {
1169
+ <span class="missing-if-branch" title="if path not taken" >I</span>if (to - from &lt;= 0) {
1170
+ <span class="cstat-no" title="statement not covered" > throw new Error('`to` must be strictly greater than `from`');</span>
1171
+ }
1172
+ &nbsp;
1173
+ const reversedIntervals = [...roundingIntervals].reverse();
1174
+ &nbsp;
1175
+ const getRoundingForOutcome = (outcome: bigint): [bigint, number] =&gt; {
1176
+ const roundingIndex = reversedIntervals.findIndex(
1177
+ (interval) =&gt; interval.beginInterval &lt;= outcome,
1178
+ );
1179
+ &nbsp;
1180
+ return [
1181
+ roundingIndex !== -1
1182
+ ? reversedIntervals[roundingIndex].roundingMod
1183
+ : <span class="branch-1 cbranch-no" title="branch not covered" >BigInt(1),</span>
1184
+ roundingIndex,
1185
+ ];
1186
+ };
1187
+ &nbsp;
1188
+ const clamp = (val: bigint) =&gt;
1189
+ BigIntMath.clamp(BigInt(0), val, totalCollateral);
1190
+ &nbsp;
1191
+ const totalCollateralBN = new BigNumber(totalCollateral.toString());
1192
+ const clampBN = (val: BigNumber) =&gt;
1193
+ BigNumber.max(0, BigNumber.min(val, totalCollateralBN));
1194
+ &nbsp;
1195
+ const result: CETPayout[] = [];
1196
+ &nbsp;
1197
+ // outcome = endpoint_0
1198
+ result.push({
1199
+ payout: fromPayout,
1200
+ indexFrom: from,
1201
+ indexTo: from,
1202
+ });
1203
+ &nbsp;
1204
+ // In the case of a constant payout curve (fromPayout === toPayout), we can skip the range evaluation
1205
+ if (fromPayout === toPayout) {
1206
+ result.push({
1207
+ payout: toPayout,
1208
+ indexFrom: from,
1209
+ indexTo: to,
1210
+ });
1211
+ // outcome = endpoint_1
1212
+ result.push({
1213
+ payout: toPayout,
1214
+ indexFrom: to,
1215
+ indexTo: to,
1216
+ });
1217
+ // merge neighbouring ranges with same payout
1218
+ return mergePayouts(result);
1219
+ }
1220
+ &nbsp;
1221
+ let currentOutcome = from + BigInt(1);
1222
+ &nbsp;
1223
+ // iterate over entire range of outcomes from [from, to]
1224
+ while (currentOutcome &lt; to) {
1225
+ const [rounding, roundingIndex] = getRoundingForOutcome(currentOutcome);
1226
+ &nbsp;
1227
+ // either the next rounding interval, or the end of the range
1228
+ const nextFirstRoundingOutcome =
1229
+ reversedIntervals[roundingIndex - 1]?.beginInterval || to;
1230
+ &nbsp;
1231
+ // temporary variable to hold the current payout
1232
+ let currentPayout = new BigNumber(
1233
+ roundPayout(
1234
+ clampBN(curve.getPayout(currentOutcome)),
1235
+ rounding,
1236
+ ).toString(),
1237
+ );
1238
+ &nbsp;
1239
+ let currentMidRoundedOutcome = currentOutcome;
1240
+ &nbsp;
1241
+ const isAscending = curve
1242
+ .getPayout(nextFirstRoundingOutcome)
1243
+ .gt(currentPayout);
1244
+ &nbsp;
1245
+ // Add loop counter to prevent infinite loops
1246
+ let loopCounter = 0;
1247
+ const maxIterations = Number(to - from) + 1000; // Allow some extra iterations
1248
+ &nbsp;
1249
+ while (currentMidRoundedOutcome &lt; nextFirstRoundingOutcome) {
1250
+ // Prevent infinite loops
1251
+ <span class="missing-if-branch" title="if path not taken" >I</span>if (++loopCounter &gt; maxIterations) {
1252
+ // Breaking out of potential infinite loop - add remaining range and exit
1253
+ <span class="cstat-no" title="statement not covered" > result.push({</span>
1254
+ payout: clamp(toBigInt(currentPayout)),
1255
+ indexFrom: currentMidRoundedOutcome,
1256
+ indexTo: to - BigInt(1),
1257
+ });
1258
+ <span class="cstat-no" title="statement not covered" > currentOutcome = to;</span>
1259
+ <span class="cstat-no" title="statement not covered" > break;</span>
1260
+ }
1261
+ &nbsp;
1262
+ const nextRoundedPayout = currentPayout
1263
+ .integerValue()
1264
+ .plus(isAscending ? Number(rounding) : -Number(rounding));
1265
+ &nbsp;
1266
+ const nextRoundedPayoutBigInt = toBigInt(nextRoundedPayout);
1267
+ &nbsp;
1268
+ const nextMidRoundedPayout = currentPayout.plus(
1269
+ isAscending ? Number(rounding) / 2 : -Number(rounding) / 2,
1270
+ );
1271
+ &nbsp;
1272
+ let nextMidRoundedOutcome = curve.getOutcomeForPayout(
1273
+ nextMidRoundedPayout,
1274
+ );
1275
+ &nbsp;
1276
+ // Handle invalid outcomes from getOutcomeForPayout
1277
+ <span class="missing-if-branch" title="if path not taken" >I</span>if (nextMidRoundedOutcome &lt; 0) {
1278
+ // If getOutcomeForPayout returns invalid value, advance manually
1279
+ <span class="cstat-no" title="statement not covered" > nextMidRoundedOutcome = currentMidRoundedOutcome + BigInt(1);</span>
1280
+ }
1281
+ &nbsp;
1282
+ if (
1283
+ (!isAscending &amp;&amp;
1284
+ nextMidRoundedOutcome &gt;= 0 &amp;&amp;
1285
+ curve.getPayout(nextMidRoundedOutcome).lt(nextMidRoundedPayout)) ||
1286
+ (isAscending &amp;&amp;
1287
+ nextMidRoundedOutcome &gt;= 0 &amp;&amp;
1288
+ curve.getPayout(nextMidRoundedOutcome).gte(nextMidRoundedPayout))
1289
+ ) {
1290
+ nextMidRoundedOutcome = nextMidRoundedOutcome - BigInt(1);
1291
+ // Ensure we don't go negative
1292
+ <span class="missing-if-branch" title="if path not taken" >I</span>if (nextMidRoundedOutcome &lt; 0) {
1293
+ <span class="cstat-no" title="statement not covered" > nextMidRoundedOutcome = currentMidRoundedOutcome;</span>
1294
+ }
1295
+ }
1296
+ &nbsp;
1297
+ const nextOutcome = curve.getOutcomeForPayout(nextRoundedPayout);
1298
+ &nbsp;
1299
+ if (nextMidRoundedOutcome &gt;= nextFirstRoundingOutcome) {
1300
+ result.push({
1301
+ payout: clamp(toBigInt(currentPayout)),
1302
+ indexFrom: currentMidRoundedOutcome,
1303
+ indexTo: nextFirstRoundingOutcome - BigInt(1),
1304
+ });
1305
+ &nbsp;
1306
+ currentOutcome = nextFirstRoundingOutcome;
1307
+ break;
1308
+ }
1309
+ &nbsp;
1310
+ if (
1311
+ nextRoundedPayoutBigInt &gt; totalCollateral ||
1312
+ nextRoundedPayoutBigInt &lt; 0 ||
1313
+ nextOutcome &gt;= to ||
1314
+ nextOutcome &lt; 0 // undefined on curve
1315
+ ) {
1316
+ <span class="missing-if-branch" title="if path not taken" >I</span>if (nextMidRoundedOutcome &lt; from || nextMidRoundedOutcome &gt; to) {
1317
+ <span class="cstat-no" title="statement not covered" > result.push({</span>
1318
+ payout: clamp(toBigInt(currentPayout)),
1319
+ indexFrom: currentMidRoundedOutcome,
1320
+ indexTo: to,
1321
+ });
1322
+ } else {
1323
+ result.push(
1324
+ {
1325
+ payout: clamp(toBigInt(currentPayout)),
1326
+ indexFrom: currentMidRoundedOutcome,
1327
+ indexTo: nextMidRoundedOutcome,
1328
+ },
1329
+ {
1330
+ payout: clamp(nextRoundedPayoutBigInt),
1331
+ indexFrom: nextMidRoundedOutcome + BigInt(1),
1332
+ indexTo: to - BigInt(1),
1333
+ },
1334
+ );
1335
+ }
1336
+ &nbsp;
1337
+ currentOutcome = to;
1338
+ break;
1339
+ }
1340
+ &nbsp;
1341
+ result.push({
1342
+ payout: clamp(toBigInt(currentPayout)),
1343
+ indexFrom: currentMidRoundedOutcome,
1344
+ indexTo: nextMidRoundedOutcome,
1345
+ });
1346
+ &nbsp;
1347
+ // Handle case where nextOutcome is invalid
1348
+ <span class="missing-if-branch" title="if path not taken" >I</span>if (nextOutcome &lt; 0) {
1349
+ // Advance manually if getOutcomeForPayout returns invalid value
1350
+ <span class="cstat-no" title="statement not covered" > currentOutcome = currentMidRoundedOutcome + BigInt(1);</span>
1351
+ } else {
1352
+ currentOutcome = nextOutcome + BigInt(1);
1353
+ }
1354
+ &nbsp;
1355
+ currentPayout = nextRoundedPayout;
1356
+ &nbsp;
1357
+ // Additional safety check: ensure we're making progress
1358
+ const previousMidRoundedOutcome = currentMidRoundedOutcome;
1359
+ currentMidRoundedOutcome = nextMidRoundedOutcome + BigInt(1);
1360
+ &nbsp;
1361
+ <span class="missing-if-branch" title="if path not taken" >I</span>if (currentMidRoundedOutcome &lt;= previousMidRoundedOutcome) {
1362
+ // No progress detected in splitIntoRanges loop, breaking
1363
+ <span class="cstat-no" title="statement not covered" > currentOutcome = nextFirstRoundingOutcome;</span>
1364
+ <span class="cstat-no" title="statement not covered" > break;</span>
1365
+ }
1366
+ }
1367
+ }
1368
+ &nbsp;
1369
+ // outcome = endpoint_1
1370
+ result.push({
1371
+ payout: toPayout,
1372
+ indexFrom: to,
1373
+ indexTo: to,
1374
+ });
1375
+ &nbsp;
1376
+ // merge neighbouring ranges with same payout
1377
+ return mergePayouts(result);
1378
+ }
1379
+ &nbsp;
1380
+ export const mergePayouts = (payouts: CETPayout[]): CETPayout[] =&gt; {
1381
+ return payouts.reduce((acc: CETPayout[], range) =&gt; {
1382
+ const prev = acc[acc.length - 1];
1383
+ if (prev) {
1384
+ if (
1385
+ (prev.indexTo === range.indexFrom ||
1386
+ prev.indexTo + BigInt(1) === range.indexFrom) &amp;&amp;
1387
+ prev.payout === range.payout
1388
+ ) {
1389
+ prev.indexTo = range.indexTo;
1390
+ return acc;
1391
+ }
1392
+ }
1393
+ &nbsp;
1394
+ return [...acc, range];
1395
+ }, []);
1396
+ };
1397
+ &nbsp;
1398
+ export function roundPayout(payout: BigNumber, rounding: bigint): bigint {
1399
+ const roundingBN = new BigNumber(rounding.toString());
1400
+ const mod = payout.gte(0)
1401
+ ? payout.mod(roundingBN)
1402
+ : <span class="branch-1 cbranch-no" title="branch not covered" >payout.mod(roundingBN).plus(roundingBN);</span>
1403
+ &nbsp;
1404
+ const roundedPayout = mod.gte(roundingBN.dividedBy(2))
1405
+ ? payout.plus(roundingBN).minus(mod)
1406
+ : payout.minus(mod);
1407
+ &nbsp;
1408
+ return toBigInt(roundedPayout);
1409
+ }
1410
+ &nbsp;</pre></td></tr></table></pre>
1411
+
1412
+ <div class='push'></div><!-- for sticky footer -->
1413
+ </div><!-- /wrapper -->
1414
+ <div class='footer quiet pad2 space-top1 center small'>
1415
+ Code coverage generated by
1416
+ <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
1417
+ at Sun Jul 20 2025 21:18:12 GMT-0700 (Pacific Daylight Saving Time)
1418
+ </div>
1419
+ </div>
1420
+ <script src="../../prettify.js"></script>
1421
+ <script>
1422
+ window.onload = function () {
1423
+ prettyPrint();
1424
+ };
1425
+ </script>
1426
+ <script src="../../sorter.js"></script>
1427
+ <script src="../../block-navigation.js"></script>
1428
+ </body>
1429
+ </html>
1430
+