@atomicfinance/types 4.1.0 → 4.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (659) hide show
  1. package/.turbo/turbo-build.log +4 -5
  2. package/CHANGELOG.md +7 -0
  3. package/dist/ddk.d.ts +8 -2
  4. package/lib/ddk.ts +25 -2
  5. package/package.json +1 -1
  6. package/.turbo/turbo-lint$colon$fix.log +0 -5
  7. package/.turbo/turbo-lint.log +0 -5
  8. package/.turbo/turbo-test.log +0 -0
  9. package/.yalc/@node-dlc/bitcoin/.nyc_output/982e80bf-a70c-452f-b63d-d749ae385531.json +0 -1
  10. package/.yalc/@node-dlc/bitcoin/.nyc_output/processinfo/982e80bf-a70c-452f-b63d-d749ae385531.json +0 -1
  11. package/.yalc/@node-dlc/bitcoin/.nyc_output/processinfo/index.json +0 -1
  12. package/.yalc/@node-dlc/bitcoin/README.md +0 -11
  13. package/.yalc/@node-dlc/bitcoin/__tests__/bitcoin/amount.spec.ts +0 -330
  14. package/.yalc/@node-dlc/bitcoin/__tests__/bitcoin/value.spec.ts +0 -320
  15. package/.yalc/@node-dlc/bitcoin/__tests__/tsconfig.json +0 -8
  16. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/Amount.ts.html +0 -290
  17. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/Base58.ts.html +0 -269
  18. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/Base58Check.ts.html +0 -182
  19. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/BitcoinError.ts.html +0 -173
  20. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/BitcoinErrorCode.ts.html +0 -110
  21. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/HashByteOrder.ts.html +0 -143
  22. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/HashValue.ts.html +0 -350
  23. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/LexicographicalSorters.ts.html +0 -191
  24. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/LockTime.ts.html +0 -386
  25. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/OpCodes.ts.html +0 -437
  26. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/OutPoint.ts.html +0 -383
  27. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/Script.ts.html +0 -1607
  28. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/Sequence.ts.html +0 -713
  29. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/SigHashType.ts.html +0 -137
  30. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/Stack.ts.html +0 -323
  31. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/TimeLockMode.ts.html +0 -128
  32. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/Tx.ts.html +0 -1520
  33. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/TxBuilder.ts.html +0 -971
  34. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/TxIn.ts.html +0 -425
  35. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/TxOut.ts.html +0 -341
  36. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/Value.ts.html +0 -683
  37. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/Wif.ts.html +0 -311
  38. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/Witness.ts.html +0 -275
  39. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/base.css +0 -224
  40. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/block-navigation.js +0 -79
  41. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/favicon.png +0 -0
  42. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/index.html +0 -126
  43. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/index.ts.html +0 -164
  44. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/prettify.css +0 -1
  45. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/prettify.js +0 -2
  46. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  47. package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/sorter.js +0 -170
  48. package/.yalc/@node-dlc/bitcoin/coverage/lcov.info +0 -123
  49. package/.yalc/@node-dlc/bitcoin/dist/Amount.d.ts +0 -48
  50. package/.yalc/@node-dlc/bitcoin/dist/Amount.js +0 -68
  51. package/.yalc/@node-dlc/bitcoin/dist/Amount.js.map +0 -1
  52. package/.yalc/@node-dlc/bitcoin/dist/Base58.d.ts +0 -22
  53. package/.yalc/@node-dlc/bitcoin/dist/Base58.js +0 -62
  54. package/.yalc/@node-dlc/bitcoin/dist/Base58.js.map +0 -1
  55. package/.yalc/@node-dlc/bitcoin/dist/Base58Check.d.ts +0 -14
  56. package/.yalc/@node-dlc/bitcoin/dist/Base58Check.js +0 -36
  57. package/.yalc/@node-dlc/bitcoin/dist/Base58Check.js.map +0 -1
  58. package/.yalc/@node-dlc/bitcoin/dist/BitcoinError.d.ts +0 -6
  59. package/.yalc/@node-dlc/bitcoin/dist/BitcoinError.js +0 -36
  60. package/.yalc/@node-dlc/bitcoin/dist/BitcoinError.js.map +0 -1
  61. package/.yalc/@node-dlc/bitcoin/dist/BitcoinErrorCode.d.ts +0 -10
  62. package/.yalc/@node-dlc/bitcoin/dist/BitcoinErrorCode.js +0 -15
  63. package/.yalc/@node-dlc/bitcoin/dist/BitcoinErrorCode.js.map +0 -1
  64. package/.yalc/@node-dlc/bitcoin/dist/Block.d.ts +0 -19
  65. package/.yalc/@node-dlc/bitcoin/dist/Block.js +0 -3
  66. package/.yalc/@node-dlc/bitcoin/dist/Block.js.map +0 -1
  67. package/.yalc/@node-dlc/bitcoin/dist/HashByteOrder.d.ts +0 -20
  68. package/.yalc/@node-dlc/bitcoin/dist/HashByteOrder.js +0 -25
  69. package/.yalc/@node-dlc/bitcoin/dist/HashByteOrder.js.map +0 -1
  70. package/.yalc/@node-dlc/bitcoin/dist/HashValue.d.ts +0 -55
  71. package/.yalc/@node-dlc/bitcoin/dist/HashValue.js +0 -82
  72. package/.yalc/@node-dlc/bitcoin/dist/HashValue.js.map +0 -1
  73. package/.yalc/@node-dlc/bitcoin/dist/ICloneable.d.ts +0 -3
  74. package/.yalc/@node-dlc/bitcoin/dist/ICloneable.js +0 -3
  75. package/.yalc/@node-dlc/bitcoin/dist/ICloneable.js.map +0 -1
  76. package/.yalc/@node-dlc/bitcoin/dist/LexicographicalSorters.d.ts +0 -18
  77. package/.yalc/@node-dlc/bitcoin/dist/LexicographicalSorters.js +0 -41
  78. package/.yalc/@node-dlc/bitcoin/dist/LexicographicalSorters.js.map +0 -1
  79. package/.yalc/@node-dlc/bitcoin/dist/LockTime.d.ts +0 -61
  80. package/.yalc/@node-dlc/bitcoin/dist/LockTime.js +0 -94
  81. package/.yalc/@node-dlc/bitcoin/dist/LockTime.js.map +0 -1
  82. package/.yalc/@node-dlc/bitcoin/dist/OpCodes.d.ts +0 -102
  83. package/.yalc/@node-dlc/bitcoin/dist/OpCodes.js +0 -116
  84. package/.yalc/@node-dlc/bitcoin/dist/OpCodes.js.map +0 -1
  85. package/.yalc/@node-dlc/bitcoin/dist/OutPoint.d.ts +0 -57
  86. package/.yalc/@node-dlc/bitcoin/dist/OutPoint.js +0 -88
  87. package/.yalc/@node-dlc/bitcoin/dist/OutPoint.js.map +0 -1
  88. package/.yalc/@node-dlc/bitcoin/dist/Script.d.ts +0 -185
  89. package/.yalc/@node-dlc/bitcoin/dist/Script.js +0 -404
  90. package/.yalc/@node-dlc/bitcoin/dist/Script.js.map +0 -1
  91. package/.yalc/@node-dlc/bitcoin/dist/ScriptCmd.d.ts +0 -3
  92. package/.yalc/@node-dlc/bitcoin/dist/ScriptCmd.js +0 -3
  93. package/.yalc/@node-dlc/bitcoin/dist/ScriptCmd.js.map +0 -1
  94. package/.yalc/@node-dlc/bitcoin/dist/Sequence.d.ts +0 -116
  95. package/.yalc/@node-dlc/bitcoin/dist/Sequence.js +0 -187
  96. package/.yalc/@node-dlc/bitcoin/dist/Sequence.js.map +0 -1
  97. package/.yalc/@node-dlc/bitcoin/dist/SigHashType.d.ts +0 -7
  98. package/.yalc/@node-dlc/bitcoin/dist/SigHashType.js +0 -27
  99. package/.yalc/@node-dlc/bitcoin/dist/SigHashType.js.map +0 -1
  100. package/.yalc/@node-dlc/bitcoin/dist/SizeResult.d.ts +0 -5
  101. package/.yalc/@node-dlc/bitcoin/dist/SizeResult.js +0 -3
  102. package/.yalc/@node-dlc/bitcoin/dist/SizeResult.js.map +0 -1
  103. package/.yalc/@node-dlc/bitcoin/dist/Sorter.d.ts +0 -1
  104. package/.yalc/@node-dlc/bitcoin/dist/Sorter.js +0 -3
  105. package/.yalc/@node-dlc/bitcoin/dist/Sorter.js.map +0 -1
  106. package/.yalc/@node-dlc/bitcoin/dist/Stack.d.ts +0 -15
  107. package/.yalc/@node-dlc/bitcoin/dist/Stack.js +0 -77
  108. package/.yalc/@node-dlc/bitcoin/dist/Stack.js.map +0 -1
  109. package/.yalc/@node-dlc/bitcoin/dist/TimeLockMode.d.ts +0 -15
  110. package/.yalc/@node-dlc/bitcoin/dist/TimeLockMode.js +0 -20
  111. package/.yalc/@node-dlc/bitcoin/dist/TimeLockMode.js.map +0 -1
  112. package/.yalc/@node-dlc/bitcoin/dist/Tx.d.ts +0 -150
  113. package/.yalc/@node-dlc/bitcoin/dist/Tx.js +0 -408
  114. package/.yalc/@node-dlc/bitcoin/dist/Tx.js.map +0 -1
  115. package/.yalc/@node-dlc/bitcoin/dist/TxBuilder.d.ts +0 -110
  116. package/.yalc/@node-dlc/bitcoin/dist/TxBuilder.js +0 -238
  117. package/.yalc/@node-dlc/bitcoin/dist/TxBuilder.js.map +0 -1
  118. package/.yalc/@node-dlc/bitcoin/dist/TxIn.d.ts +0 -71
  119. package/.yalc/@node-dlc/bitcoin/dist/TxIn.js +0 -79
  120. package/.yalc/@node-dlc/bitcoin/dist/TxIn.js.map +0 -1
  121. package/.yalc/@node-dlc/bitcoin/dist/TxOut.d.ts +0 -57
  122. package/.yalc/@node-dlc/bitcoin/dist/TxOut.js +0 -68
  123. package/.yalc/@node-dlc/bitcoin/dist/TxOut.js.map +0 -1
  124. package/.yalc/@node-dlc/bitcoin/dist/Value.d.ts +0 -122
  125. package/.yalc/@node-dlc/bitcoin/dist/Value.js +0 -180
  126. package/.yalc/@node-dlc/bitcoin/dist/Value.js.map +0 -1
  127. package/.yalc/@node-dlc/bitcoin/dist/Wif.d.ts +0 -41
  128. package/.yalc/@node-dlc/bitcoin/dist/Wif.js +0 -62
  129. package/.yalc/@node-dlc/bitcoin/dist/Wif.js.map +0 -1
  130. package/.yalc/@node-dlc/bitcoin/dist/Witness.d.ts +0 -41
  131. package/.yalc/@node-dlc/bitcoin/dist/Witness.js +0 -63
  132. package/.yalc/@node-dlc/bitcoin/dist/Witness.js.map +0 -1
  133. package/.yalc/@node-dlc/bitcoin/dist/index.d.ts +0 -28
  134. package/.yalc/@node-dlc/bitcoin/dist/index.js +0 -45
  135. package/.yalc/@node-dlc/bitcoin/dist/index.js.map +0 -1
  136. package/.yalc/@node-dlc/bitcoin/lib/Amount.ts +0 -70
  137. package/.yalc/@node-dlc/bitcoin/lib/Base58.ts +0 -63
  138. package/.yalc/@node-dlc/bitcoin/lib/Base58Check.ts +0 -34
  139. package/.yalc/@node-dlc/bitcoin/lib/BitcoinError.ts +0 -31
  140. package/.yalc/@node-dlc/bitcoin/lib/BitcoinErrorCode.ts +0 -10
  141. package/.yalc/@node-dlc/bitcoin/lib/Block.ts +0 -20
  142. package/.yalc/@node-dlc/bitcoin/lib/HashByteOrder.ts +0 -21
  143. package/.yalc/@node-dlc/bitcoin/lib/HashValue.ts +0 -90
  144. package/.yalc/@node-dlc/bitcoin/lib/ICloneable.ts +0 -3
  145. package/.yalc/@node-dlc/bitcoin/lib/LexicographicalSorters.ts +0 -37
  146. package/.yalc/@node-dlc/bitcoin/lib/LockTime.ts +0 -102
  147. package/.yalc/@node-dlc/bitcoin/lib/OpCodes.ts +0 -119
  148. package/.yalc/@node-dlc/bitcoin/lib/OutPoint.ts +0 -101
  149. package/.yalc/@node-dlc/bitcoin/lib/Script.ts +0 -509
  150. package/.yalc/@node-dlc/bitcoin/lib/ScriptCmd.ts +0 -3
  151. package/.yalc/@node-dlc/bitcoin/lib/Sequence.ts +0 -211
  152. package/.yalc/@node-dlc/bitcoin/lib/SigHashType.ts +0 -19
  153. package/.yalc/@node-dlc/bitcoin/lib/SizeResult.ts +0 -5
  154. package/.yalc/@node-dlc/bitcoin/lib/Sorter.ts +0 -1
  155. package/.yalc/@node-dlc/bitcoin/lib/Stack.ts +0 -81
  156. package/.yalc/@node-dlc/bitcoin/lib/TimeLockMode.ts +0 -16
  157. package/.yalc/@node-dlc/bitcoin/lib/Tx.ts +0 -480
  158. package/.yalc/@node-dlc/bitcoin/lib/TxBuilder.ts +0 -297
  159. package/.yalc/@node-dlc/bitcoin/lib/TxIn.ts +0 -115
  160. package/.yalc/@node-dlc/bitcoin/lib/TxOut.ts +0 -87
  161. package/.yalc/@node-dlc/bitcoin/lib/Value.ts +0 -201
  162. package/.yalc/@node-dlc/bitcoin/lib/Wif.ts +0 -77
  163. package/.yalc/@node-dlc/bitcoin/lib/Witness.ts +0 -65
  164. package/.yalc/@node-dlc/bitcoin/lib/index.ts +0 -28
  165. package/.yalc/@node-dlc/bitcoin/package.json +0 -31
  166. package/.yalc/@node-dlc/bitcoin/tsconfig.json +0 -8
  167. package/.yalc/@node-dlc/bitcoin/yalc.sig +0 -1
  168. package/.yalc/@node-dlc/messaging/.nyc_output/83d37f9d-cecf-4c52-a753-115ff80bbca0.json +0 -1
  169. package/.yalc/@node-dlc/messaging/.nyc_output/processinfo/83d37f9d-cecf-4c52-a753-115ff80bbca0.json +0 -1
  170. package/.yalc/@node-dlc/messaging/.nyc_output/processinfo/index.json +0 -1
  171. package/.yalc/@node-dlc/messaging/README.md +0 -24
  172. package/.yalc/@node-dlc/messaging/__tests__/_test-utils.ts +0 -13
  173. package/.yalc/@node-dlc/messaging/__tests__/chain/ChainManager.spec.ts +0 -178
  174. package/.yalc/@node-dlc/messaging/__tests__/compatibility/dlcspecs-compatibility.spec.ts +0 -439
  175. package/.yalc/@node-dlc/messaging/__tests__/compatibility/rust-dlc-cross-language.spec.ts +0 -255
  176. package/.yalc/@node-dlc/messaging/__tests__/compatibility/true-serialization-compatibility.spec.ts +0 -342
  177. package/.yalc/@node-dlc/messaging/__tests__/dlc_message_test.json +0 -155
  178. package/.yalc/@node-dlc/messaging/__tests__/irc/IrcMessage.spec.ts +0 -94
  179. package/.yalc/@node-dlc/messaging/__tests__/messages/AddressCache.spec.ts +0 -79
  180. package/.yalc/@node-dlc/messaging/__tests__/messages/BatchFundingGroup.spec.ts +0 -72
  181. package/.yalc/@node-dlc/messaging/__tests__/messages/CetAdaptorSignatures.spec.ts +0 -57
  182. package/.yalc/@node-dlc/messaging/__tests__/messages/ContractDescriptor.spec.ts +0 -266
  183. package/.yalc/@node-dlc/messaging/__tests__/messages/ContractInfo.spec.ts +0 -419
  184. package/.yalc/@node-dlc/messaging/__tests__/messages/DigitDecompositionEventDescriptor.spec.ts +0 -59
  185. package/.yalc/@node-dlc/messaging/__tests__/messages/DlcAccept.spec.ts +0 -314
  186. package/.yalc/@node-dlc/messaging/__tests__/messages/DlcCancel.spec.ts +0 -42
  187. package/.yalc/@node-dlc/messaging/__tests__/messages/DlcClose.spec.ts +0 -315
  188. package/.yalc/@node-dlc/messaging/__tests__/messages/DlcInput.spec.ts +0 -111
  189. package/.yalc/@node-dlc/messaging/__tests__/messages/DlcOffer.spec.ts +0 -589
  190. package/.yalc/@node-dlc/messaging/__tests__/messages/DlcSign.spec.ts +0 -118
  191. package/.yalc/@node-dlc/messaging/__tests__/messages/DlcTransactions.spec.ts +0 -157
  192. package/.yalc/@node-dlc/messaging/__tests__/messages/EnumEventDescriptor.spec.ts +0 -50
  193. package/.yalc/@node-dlc/messaging/__tests__/messages/EventDescriptor.spec.ts +0 -93
  194. package/.yalc/@node-dlc/messaging/__tests__/messages/FundingInput.spec.ts +0 -169
  195. package/.yalc/@node-dlc/messaging/__tests__/messages/FundingSignatures.spec.ts +0 -83
  196. package/.yalc/@node-dlc/messaging/__tests__/messages/NegotiationFields.spec.ts +0 -328
  197. package/.yalc/@node-dlc/messaging/__tests__/messages/NodeAnnouncementMessage.spec.ts +0 -115
  198. package/.yalc/@node-dlc/messaging/__tests__/messages/OracleAnnouncement.spec.ts +0 -415
  199. package/.yalc/@node-dlc/messaging/__tests__/messages/OracleAttestation.spec.ts +0 -324
  200. package/.yalc/@node-dlc/messaging/__tests__/messages/OracleEvent.spec.ts +0 -143
  201. package/.yalc/@node-dlc/messaging/__tests__/messages/OracleEventContainer.spec.ts +0 -95
  202. package/.yalc/@node-dlc/messaging/__tests__/messages/OracleIdentifier.spec.ts +0 -48
  203. package/.yalc/@node-dlc/messaging/__tests__/messages/OracleInfo.spec.ts +0 -116
  204. package/.yalc/@node-dlc/messaging/__tests__/messages/OrderAccept.spec.ts +0 -75
  205. package/.yalc/@node-dlc/messaging/__tests__/messages/OrderNegotiationFields.spec.ts +0 -299
  206. package/.yalc/@node-dlc/messaging/__tests__/messages/OrderOffer.spec.ts +0 -121
  207. package/.yalc/@node-dlc/messaging/__tests__/messages/OrderPositionInfo.spec.ts +0 -75
  208. package/.yalc/@node-dlc/messaging/__tests__/messages/PayoutCurvePiece.spec.ts +0 -220
  209. package/.yalc/@node-dlc/messaging/__tests__/messages/PayoutFunction.spec.ts +0 -101
  210. package/.yalc/@node-dlc/messaging/__tests__/messages/RoundingIntervals.spec.ts +0 -75
  211. package/.yalc/@node-dlc/messaging/__tests__/serialize/F64.spec.ts +0 -261
  212. package/.yalc/@node-dlc/messaging/__tests__/tsconfig.json +0 -8
  213. package/.yalc/@node-dlc/messaging/coverage/lcov-report/base.css +0 -224
  214. package/.yalc/@node-dlc/messaging/coverage/lcov-report/block-navigation.js +0 -79
  215. package/.yalc/@node-dlc/messaging/coverage/lcov-report/favicon.png +0 -0
  216. package/.yalc/@node-dlc/messaging/coverage/lcov-report/index.html +0 -201
  217. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/MessageType.ts.html +0 -500
  218. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/chain/ChainManager.ts.html +0 -1061
  219. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/chain/ChainMemoryStore.ts.html +0 -182
  220. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/chain/index.html +0 -126
  221. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/domain/Address.ts.html +0 -272
  222. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/domain/index.html +0 -111
  223. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/index.html +0 -141
  224. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/index.ts.html +0 -215
  225. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/irc/IrcMessage.ts.html +0 -563
  226. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/irc/index.html +0 -111
  227. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/AddressCache.ts.html +0 -302
  228. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/BatchFundingGroup.ts.html +0 -503
  229. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/CetAdaptorSignatures.ts.html +0 -347
  230. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/CetAdaptorSignaturesV0.ts.html +0 -356
  231. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/CloseTLV.ts.html +0 -344
  232. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/ContractDescriptor.ts.html +0 -1031
  233. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/ContractInfo.ts.html +0 -1397
  234. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/DlcAccept.ts.html +0 -1997
  235. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/DlcCancel.ts.html +0 -251
  236. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/DlcClose.ts.html +0 -995
  237. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/DlcCloseMetadata.ts.html +0 -434
  238. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/DlcIds.ts.html +0 -281
  239. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/DlcInfo.ts.html +0 -323
  240. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/DlcInput.ts.html +0 -581
  241. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/DlcMessage.ts.html +0 -341
  242. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/DlcOffer.ts.html +0 -2075
  243. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/DlcSign.ts.html +0 -1157
  244. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/DlcTransactions.ts.html +0 -719
  245. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/EventDescriptor.ts.html +0 -962
  246. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/FundingInput.ts.html +0 -860
  247. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/FundingSignatures.ts.html +0 -374
  248. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/FundingSignaturesV0.ts.html +0 -344
  249. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/NegotiationFields.ts.html +0 -848
  250. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/NodeAnnouncementMessage.ts.html +0 -515
  251. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/OracleAnnouncement.ts.html +0 -608
  252. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/OracleAnnouncementV0.ts.html +0 -383
  253. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/OracleAttestation.ts.html +0 -956
  254. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/OracleAttestationV0.ts.html +0 -479
  255. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/OracleEvent.ts.html +0 -830
  256. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/OracleEventContainer.ts.html +0 -347
  257. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/OracleEventContainerV0.ts.html +0 -347
  258. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/OracleEventV0.ts.html +0 -503
  259. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/OracleIdentifier.ts.html +0 -314
  260. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/OracleIdentifierV0.ts.html +0 -314
  261. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/OracleInfo.ts.html +0 -1658
  262. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/OracleInfoV0.ts.html +0 -308
  263. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/OrderAccept.ts.html +0 -602
  264. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/OrderIrcInfo.ts.html +0 -380
  265. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/OrderMetadata.ts.html +0 -437
  266. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/OrderNegotiationFields.ts.html +0 -710
  267. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/OrderOffer.ts.html +0 -1334
  268. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/OrderPositionInfo.ts.html +0 -521
  269. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/PayoutCurvePiece.ts.html +0 -1442
  270. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/PayoutFunction.ts.html +0 -806
  271. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/RoundingIntervals.ts.html +0 -464
  272. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/RoundingIntervalsV0.ts.html +0 -428
  273. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/ScriptWitnessV0.ts.html +0 -269
  274. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/index.html +0 -651
  275. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/serialize/F64.ts.html +0 -1091
  276. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/serialize/deserializeTlv.ts.html +0 -125
  277. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/serialize/getTlv.ts.html +0 -143
  278. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/serialize/index.html +0 -141
  279. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/util.ts.html +0 -191
  280. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/validation/index.html +0 -111
  281. package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/validation/validate.ts.html +0 -182
  282. package/.yalc/@node-dlc/messaging/coverage/lcov-report/prettify.css +0 -1
  283. package/.yalc/@node-dlc/messaging/coverage/lcov-report/prettify.js +0 -2
  284. package/.yalc/@node-dlc/messaging/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  285. package/.yalc/@node-dlc/messaging/coverage/lcov-report/sorter.js +0 -170
  286. package/.yalc/@node-dlc/messaging/coverage/lcov.info +0 -5617
  287. package/.yalc/@node-dlc/messaging/dist/MessageType.d.ts +0 -101
  288. package/.yalc/@node-dlc/messaging/dist/MessageType.js +0 -118
  289. package/.yalc/@node-dlc/messaging/dist/MessageType.js.map +0 -1
  290. package/.yalc/@node-dlc/messaging/dist/chain/ChainManager.d.ts +0 -50
  291. package/.yalc/@node-dlc/messaging/dist/chain/ChainManager.js +0 -212
  292. package/.yalc/@node-dlc/messaging/dist/chain/ChainManager.js.map +0 -1
  293. package/.yalc/@node-dlc/messaging/dist/chain/ChainMemoryStore.d.ts +0 -14
  294. package/.yalc/@node-dlc/messaging/dist/chain/ChainMemoryStore.js +0 -28
  295. package/.yalc/@node-dlc/messaging/dist/chain/ChainMemoryStore.js.map +0 -1
  296. package/.yalc/@node-dlc/messaging/dist/chain/DlcStore.d.ts +0 -11
  297. package/.yalc/@node-dlc/messaging/dist/chain/DlcStore.js +0 -3
  298. package/.yalc/@node-dlc/messaging/dist/chain/DlcStore.js.map +0 -1
  299. package/.yalc/@node-dlc/messaging/dist/chain/IChainFilterChainClient.d.ts +0 -48
  300. package/.yalc/@node-dlc/messaging/dist/chain/IChainFilterChainClient.js +0 -3
  301. package/.yalc/@node-dlc/messaging/dist/chain/IChainFilterChainClient.js.map +0 -1
  302. package/.yalc/@node-dlc/messaging/dist/domain/Address.d.ts +0 -24
  303. package/.yalc/@node-dlc/messaging/dist/domain/Address.js +0 -46
  304. package/.yalc/@node-dlc/messaging/dist/domain/Address.js.map +0 -1
  305. package/.yalc/@node-dlc/messaging/dist/index.d.ts +0 -45
  306. package/.yalc/@node-dlc/messaging/dist/index.js +0 -64
  307. package/.yalc/@node-dlc/messaging/dist/index.js.map +0 -1
  308. package/.yalc/@node-dlc/messaging/dist/irc/IrcMessage.d.ts +0 -43
  309. package/.yalc/@node-dlc/messaging/dist/irc/IrcMessage.js +0 -116
  310. package/.yalc/@node-dlc/messaging/dist/irc/IrcMessage.js.map +0 -1
  311. package/.yalc/@node-dlc/messaging/dist/messages/AddressCache.d.ts +0 -15
  312. package/.yalc/@node-dlc/messaging/dist/messages/AddressCache.js +0 -51
  313. package/.yalc/@node-dlc/messaging/dist/messages/AddressCache.js.map +0 -1
  314. package/.yalc/@node-dlc/messaging/dist/messages/BatchFundingGroup.d.ts +0 -61
  315. package/.yalc/@node-dlc/messaging/dist/messages/BatchFundingGroup.js +0 -113
  316. package/.yalc/@node-dlc/messaging/dist/messages/BatchFundingGroup.js.map +0 -1
  317. package/.yalc/@node-dlc/messaging/dist/messages/CetAdaptorSignatures.d.ts +0 -40
  318. package/.yalc/@node-dlc/messaging/dist/messages/CetAdaptorSignatures.js +0 -67
  319. package/.yalc/@node-dlc/messaging/dist/messages/CetAdaptorSignatures.js.map +0 -1
  320. package/.yalc/@node-dlc/messaging/dist/messages/CetAdaptorSignaturesV0.d.ts +0 -42
  321. package/.yalc/@node-dlc/messaging/dist/messages/CetAdaptorSignaturesV0.js +0 -68
  322. package/.yalc/@node-dlc/messaging/dist/messages/CetAdaptorSignaturesV0.js.map +0 -1
  323. package/.yalc/@node-dlc/messaging/dist/messages/CloseTLV.d.ts +0 -38
  324. package/.yalc/@node-dlc/messaging/dist/messages/CloseTLV.js +0 -59
  325. package/.yalc/@node-dlc/messaging/dist/messages/CloseTLV.js.map +0 -1
  326. package/.yalc/@node-dlc/messaging/dist/messages/ContractDescriptor.d.ts +0 -121
  327. package/.yalc/@node-dlc/messaging/dist/messages/ContractDescriptor.js +0 -221
  328. package/.yalc/@node-dlc/messaging/dist/messages/ContractDescriptor.js.map +0 -1
  329. package/.yalc/@node-dlc/messaging/dist/messages/ContractInfo.d.ts +0 -135
  330. package/.yalc/@node-dlc/messaging/dist/messages/ContractInfo.js +0 -308
  331. package/.yalc/@node-dlc/messaging/dist/messages/ContractInfo.js.map +0 -1
  332. package/.yalc/@node-dlc/messaging/dist/messages/DlcAccept.d.ts +0 -160
  333. package/.yalc/@node-dlc/messaging/dist/messages/DlcAccept.js +0 -469
  334. package/.yalc/@node-dlc/messaging/dist/messages/DlcAccept.js.map +0 -1
  335. package/.yalc/@node-dlc/messaging/dist/messages/DlcCancel.d.ts +0 -31
  336. package/.yalc/@node-dlc/messaging/dist/messages/DlcCancel.js +0 -51
  337. package/.yalc/@node-dlc/messaging/dist/messages/DlcCancel.js.map +0 -1
  338. package/.yalc/@node-dlc/messaging/dist/messages/DlcClose.d.ts +0 -68
  339. package/.yalc/@node-dlc/messaging/dist/messages/DlcClose.js +0 -214
  340. package/.yalc/@node-dlc/messaging/dist/messages/DlcClose.js.map +0 -1
  341. package/.yalc/@node-dlc/messaging/dist/messages/DlcCloseMetadata.d.ts +0 -44
  342. package/.yalc/@node-dlc/messaging/dist/messages/DlcCloseMetadata.js +0 -74
  343. package/.yalc/@node-dlc/messaging/dist/messages/DlcCloseMetadata.js.map +0 -1
  344. package/.yalc/@node-dlc/messaging/dist/messages/DlcIds.d.ts +0 -26
  345. package/.yalc/@node-dlc/messaging/dist/messages/DlcIds.js +0 -58
  346. package/.yalc/@node-dlc/messaging/dist/messages/DlcIds.js.map +0 -1
  347. package/.yalc/@node-dlc/messaging/dist/messages/DlcInfo.d.ts +0 -31
  348. package/.yalc/@node-dlc/messaging/dist/messages/DlcInfo.js +0 -61
  349. package/.yalc/@node-dlc/messaging/dist/messages/DlcInfo.js.map +0 -1
  350. package/.yalc/@node-dlc/messaging/dist/messages/DlcInput.d.ts +0 -56
  351. package/.yalc/@node-dlc/messaging/dist/messages/DlcInput.js +0 -135
  352. package/.yalc/@node-dlc/messaging/dist/messages/DlcInput.js.map +0 -1
  353. package/.yalc/@node-dlc/messaging/dist/messages/DlcMessage.d.ts +0 -23
  354. package/.yalc/@node-dlc/messaging/dist/messages/DlcMessage.js +0 -54
  355. package/.yalc/@node-dlc/messaging/dist/messages/DlcMessage.js.map +0 -1
  356. package/.yalc/@node-dlc/messaging/dist/messages/DlcOffer.d.ts +0 -146
  357. package/.yalc/@node-dlc/messaging/dist/messages/DlcOffer.js +0 -463
  358. package/.yalc/@node-dlc/messaging/dist/messages/DlcOffer.js.map +0 -1
  359. package/.yalc/@node-dlc/messaging/dist/messages/DlcSign.d.ts +0 -96
  360. package/.yalc/@node-dlc/messaging/dist/messages/DlcSign.js +0 -275
  361. package/.yalc/@node-dlc/messaging/dist/messages/DlcSign.js.map +0 -1
  362. package/.yalc/@node-dlc/messaging/dist/messages/DlcTransactions.d.ts +0 -69
  363. package/.yalc/@node-dlc/messaging/dist/messages/DlcTransactions.js +0 -149
  364. package/.yalc/@node-dlc/messaging/dist/messages/DlcTransactions.js.map +0 -1
  365. package/.yalc/@node-dlc/messaging/dist/messages/EventDescriptor.d.ts +0 -107
  366. package/.yalc/@node-dlc/messaging/dist/messages/EventDescriptor.js +0 -212
  367. package/.yalc/@node-dlc/messaging/dist/messages/EventDescriptor.js.map +0 -1
  368. package/.yalc/@node-dlc/messaging/dist/messages/FundingInput.d.ts +0 -69
  369. package/.yalc/@node-dlc/messaging/dist/messages/FundingInput.js +0 -193
  370. package/.yalc/@node-dlc/messaging/dist/messages/FundingInput.js.map +0 -1
  371. package/.yalc/@node-dlc/messaging/dist/messages/FundingSignatures.d.ts +0 -36
  372. package/.yalc/@node-dlc/messaging/dist/messages/FundingSignatures.js +0 -78
  373. package/.yalc/@node-dlc/messaging/dist/messages/FundingSignatures.js.map +0 -1
  374. package/.yalc/@node-dlc/messaging/dist/messages/FundingSignaturesV0.d.ts +0 -34
  375. package/.yalc/@node-dlc/messaging/dist/messages/FundingSignaturesV0.js +0 -72
  376. package/.yalc/@node-dlc/messaging/dist/messages/FundingSignaturesV0.js.map +0 -1
  377. package/.yalc/@node-dlc/messaging/dist/messages/IWireMessage.d.ts +0 -6
  378. package/.yalc/@node-dlc/messaging/dist/messages/IWireMessage.js +0 -3
  379. package/.yalc/@node-dlc/messaging/dist/messages/IWireMessage.js.map +0 -1
  380. package/.yalc/@node-dlc/messaging/dist/messages/NegotiationFields.d.ts +0 -86
  381. package/.yalc/@node-dlc/messaging/dist/messages/NegotiationFields.js +0 -189
  382. package/.yalc/@node-dlc/messaging/dist/messages/NegotiationFields.js.map +0 -1
  383. package/.yalc/@node-dlc/messaging/dist/messages/NodeAnnouncementMessage.d.ts +0 -57
  384. package/.yalc/@node-dlc/messaging/dist/messages/NodeAnnouncementMessage.js +0 -127
  385. package/.yalc/@node-dlc/messaging/dist/messages/NodeAnnouncementMessage.js.map +0 -1
  386. package/.yalc/@node-dlc/messaging/dist/messages/OracleAnnouncement.d.ts +0 -76
  387. package/.yalc/@node-dlc/messaging/dist/messages/OracleAnnouncement.js +0 -131
  388. package/.yalc/@node-dlc/messaging/dist/messages/OracleAnnouncement.js.map +0 -1
  389. package/.yalc/@node-dlc/messaging/dist/messages/OracleAnnouncementV0.d.ts +0 -47
  390. package/.yalc/@node-dlc/messaging/dist/messages/OracleAnnouncementV0.js +0 -76
  391. package/.yalc/@node-dlc/messaging/dist/messages/OracleAnnouncementV0.js.map +0 -1
  392. package/.yalc/@node-dlc/messaging/dist/messages/OracleAttestation.d.ts +0 -68
  393. package/.yalc/@node-dlc/messaging/dist/messages/OracleAttestation.js +0 -239
  394. package/.yalc/@node-dlc/messaging/dist/messages/OracleAttestation.js.map +0 -1
  395. package/.yalc/@node-dlc/messaging/dist/messages/OracleAttestationV0.d.ts +0 -48
  396. package/.yalc/@node-dlc/messaging/dist/messages/OracleAttestationV0.js +0 -100
  397. package/.yalc/@node-dlc/messaging/dist/messages/OracleAttestationV0.js.map +0 -1
  398. package/.yalc/@node-dlc/messaging/dist/messages/OracleEvent.d.ts +0 -90
  399. package/.yalc/@node-dlc/messaging/dist/messages/OracleEvent.js +0 -189
  400. package/.yalc/@node-dlc/messaging/dist/messages/OracleEvent.js.map +0 -1
  401. package/.yalc/@node-dlc/messaging/dist/messages/OracleEventContainer.d.ts +0 -32
  402. package/.yalc/@node-dlc/messaging/dist/messages/OracleEventContainer.js +0 -67
  403. package/.yalc/@node-dlc/messaging/dist/messages/OracleEventContainer.js.map +0 -1
  404. package/.yalc/@node-dlc/messaging/dist/messages/OracleEventContainerV0.d.ts +0 -32
  405. package/.yalc/@node-dlc/messaging/dist/messages/OracleEventContainerV0.js +0 -67
  406. package/.yalc/@node-dlc/messaging/dist/messages/OracleEventContainerV0.js.map +0 -1
  407. package/.yalc/@node-dlc/messaging/dist/messages/OracleEventV0.d.ts +0 -54
  408. package/.yalc/@node-dlc/messaging/dist/messages/OracleEventV0.js +0 -100
  409. package/.yalc/@node-dlc/messaging/dist/messages/OracleEventV0.js.map +0 -1
  410. package/.yalc/@node-dlc/messaging/dist/messages/OracleIdentifier.d.ts +0 -32
  411. package/.yalc/@node-dlc/messaging/dist/messages/OracleIdentifier.js +0 -58
  412. package/.yalc/@node-dlc/messaging/dist/messages/OracleIdentifier.js.map +0 -1
  413. package/.yalc/@node-dlc/messaging/dist/messages/OracleIdentifierV0.d.ts +0 -32
  414. package/.yalc/@node-dlc/messaging/dist/messages/OracleIdentifierV0.js +0 -58
  415. package/.yalc/@node-dlc/messaging/dist/messages/OracleIdentifierV0.js.map +0 -1
  416. package/.yalc/@node-dlc/messaging/dist/messages/OracleInfo.d.ts +0 -163
  417. package/.yalc/@node-dlc/messaging/dist/messages/OracleInfo.js +0 -393
  418. package/.yalc/@node-dlc/messaging/dist/messages/OracleInfo.js.map +0 -1
  419. package/.yalc/@node-dlc/messaging/dist/messages/OracleInfoV0.d.ts +0 -35
  420. package/.yalc/@node-dlc/messaging/dist/messages/OracleInfoV0.js +0 -58
  421. package/.yalc/@node-dlc/messaging/dist/messages/OracleInfoV0.js.map +0 -1
  422. package/.yalc/@node-dlc/messaging/dist/messages/OrderAccept.d.ts +0 -66
  423. package/.yalc/@node-dlc/messaging/dist/messages/OrderAccept.js +0 -140
  424. package/.yalc/@node-dlc/messaging/dist/messages/OrderAccept.js.map +0 -1
  425. package/.yalc/@node-dlc/messaging/dist/messages/OrderIrcInfo.d.ts +0 -42
  426. package/.yalc/@node-dlc/messaging/dist/messages/OrderIrcInfo.js +0 -74
  427. package/.yalc/@node-dlc/messaging/dist/messages/OrderIrcInfo.js.map +0 -1
  428. package/.yalc/@node-dlc/messaging/dist/messages/OrderMetadata.d.ts +0 -56
  429. package/.yalc/@node-dlc/messaging/dist/messages/OrderMetadata.js +0 -87
  430. package/.yalc/@node-dlc/messaging/dist/messages/OrderMetadata.js.map +0 -1
  431. package/.yalc/@node-dlc/messaging/dist/messages/OrderNegotiationFields.d.ts +0 -81
  432. package/.yalc/@node-dlc/messaging/dist/messages/OrderNegotiationFields.js +0 -161
  433. package/.yalc/@node-dlc/messaging/dist/messages/OrderNegotiationFields.js.map +0 -1
  434. package/.yalc/@node-dlc/messaging/dist/messages/OrderOffer.d.ts +0 -97
  435. package/.yalc/@node-dlc/messaging/dist/messages/OrderOffer.js +0 -296
  436. package/.yalc/@node-dlc/messaging/dist/messages/OrderOffer.js.map +0 -1
  437. package/.yalc/@node-dlc/messaging/dist/messages/OrderPositionInfo.d.ts +0 -44
  438. package/.yalc/@node-dlc/messaging/dist/messages/OrderPositionInfo.js +0 -111
  439. package/.yalc/@node-dlc/messaging/dist/messages/OrderPositionInfo.js.map +0 -1
  440. package/.yalc/@node-dlc/messaging/dist/messages/PayoutCurvePiece.d.ts +0 -129
  441. package/.yalc/@node-dlc/messaging/dist/messages/PayoutCurvePiece.js +0 -332
  442. package/.yalc/@node-dlc/messaging/dist/messages/PayoutCurvePiece.js.map +0 -1
  443. package/.yalc/@node-dlc/messaging/dist/messages/PayoutFunction.d.ts +0 -66
  444. package/.yalc/@node-dlc/messaging/dist/messages/PayoutFunction.js +0 -173
  445. package/.yalc/@node-dlc/messaging/dist/messages/PayoutFunction.js.map +0 -1
  446. package/.yalc/@node-dlc/messaging/dist/messages/RoundingIntervals.d.ts +0 -52
  447. package/.yalc/@node-dlc/messaging/dist/messages/RoundingIntervals.js +0 -96
  448. package/.yalc/@node-dlc/messaging/dist/messages/RoundingIntervals.js.map +0 -1
  449. package/.yalc/@node-dlc/messaging/dist/messages/RoundingIntervalsV0.d.ts +0 -47
  450. package/.yalc/@node-dlc/messaging/dist/messages/RoundingIntervalsV0.js +0 -86
  451. package/.yalc/@node-dlc/messaging/dist/messages/RoundingIntervalsV0.js.map +0 -1
  452. package/.yalc/@node-dlc/messaging/dist/messages/ScriptWitnessV0.d.ts +0 -29
  453. package/.yalc/@node-dlc/messaging/dist/messages/ScriptWitnessV0.js +0 -50
  454. package/.yalc/@node-dlc/messaging/dist/messages/ScriptWitnessV0.js.map +0 -1
  455. package/.yalc/@node-dlc/messaging/dist/messages/Tlv.d.ts +0 -15
  456. package/.yalc/@node-dlc/messaging/dist/messages/Tlv.js +0 -32
  457. package/.yalc/@node-dlc/messaging/dist/messages/Tlv.js.map +0 -1
  458. package/.yalc/@node-dlc/messaging/dist/serialize/F64.d.ts +0 -146
  459. package/.yalc/@node-dlc/messaging/dist/serialize/F64.js +0 -294
  460. package/.yalc/@node-dlc/messaging/dist/serialize/F64.js.map +0 -1
  461. package/.yalc/@node-dlc/messaging/dist/serialize/deserializeTlv.d.ts +0 -9
  462. package/.yalc/@node-dlc/messaging/dist/serialize/deserializeTlv.js +0 -11
  463. package/.yalc/@node-dlc/messaging/dist/serialize/deserializeTlv.js.map +0 -1
  464. package/.yalc/@node-dlc/messaging/dist/serialize/getTlv.d.ts +0 -4
  465. package/.yalc/@node-dlc/messaging/dist/serialize/getTlv.js +0 -23
  466. package/.yalc/@node-dlc/messaging/dist/serialize/getTlv.js.map +0 -1
  467. package/.yalc/@node-dlc/messaging/dist/serialize/readTlvs.d.ts +0 -8
  468. package/.yalc/@node-dlc/messaging/dist/serialize/readTlvs.js +0 -33
  469. package/.yalc/@node-dlc/messaging/dist/serialize/readTlvs.js.map +0 -1
  470. package/.yalc/@node-dlc/messaging/dist/util.d.ts +0 -13
  471. package/.yalc/@node-dlc/messaging/dist/util.js +0 -42
  472. package/.yalc/@node-dlc/messaging/dist/util.js.map +0 -1
  473. package/.yalc/@node-dlc/messaging/dist/validation/validate.d.ts +0 -4
  474. package/.yalc/@node-dlc/messaging/dist/validation/validate.js +0 -31
  475. package/.yalc/@node-dlc/messaging/dist/validation/validate.js.map +0 -1
  476. package/.yalc/@node-dlc/messaging/lib/MessageType.ts +0 -140
  477. package/.yalc/@node-dlc/messaging/lib/chain/ChainManager.ts +0 -327
  478. package/.yalc/@node-dlc/messaging/lib/chain/ChainMemoryStore.ts +0 -34
  479. package/.yalc/@node-dlc/messaging/lib/chain/DlcStore.ts +0 -11
  480. package/.yalc/@node-dlc/messaging/lib/chain/IChainFilterChainClient.ts +0 -57
  481. package/.yalc/@node-dlc/messaging/lib/domain/Address.ts +0 -64
  482. package/.yalc/@node-dlc/messaging/lib/index.ts +0 -45
  483. package/.yalc/@node-dlc/messaging/lib/irc/IrcMessage.ts +0 -161
  484. package/.yalc/@node-dlc/messaging/lib/messages/AddressCache.ts +0 -74
  485. package/.yalc/@node-dlc/messaging/lib/messages/BatchFundingGroup.ts +0 -141
  486. package/.yalc/@node-dlc/messaging/lib/messages/CetAdaptorSignatures.ts +0 -89
  487. package/.yalc/@node-dlc/messaging/lib/messages/ContractDescriptor.ts +0 -317
  488. package/.yalc/@node-dlc/messaging/lib/messages/ContractInfo.ts +0 -439
  489. package/.yalc/@node-dlc/messaging/lib/messages/DlcAccept.ts +0 -639
  490. package/.yalc/@node-dlc/messaging/lib/messages/DlcCancel.ts +0 -57
  491. package/.yalc/@node-dlc/messaging/lib/messages/DlcClose.ts +0 -305
  492. package/.yalc/@node-dlc/messaging/lib/messages/DlcCloseMetadata.ts +0 -118
  493. package/.yalc/@node-dlc/messaging/lib/messages/DlcIds.ts +0 -67
  494. package/.yalc/@node-dlc/messaging/lib/messages/DlcInfo.ts +0 -81
  495. package/.yalc/@node-dlc/messaging/lib/messages/DlcInput.ts +0 -167
  496. package/.yalc/@node-dlc/messaging/lib/messages/DlcMessage.ts +0 -87
  497. package/.yalc/@node-dlc/messaging/lib/messages/DlcOffer.ts +0 -665
  498. package/.yalc/@node-dlc/messaging/lib/messages/DlcSign.ts +0 -359
  499. package/.yalc/@node-dlc/messaging/lib/messages/DlcTransactions.ts +0 -213
  500. package/.yalc/@node-dlc/messaging/lib/messages/EventDescriptor.ts +0 -294
  501. package/.yalc/@node-dlc/messaging/lib/messages/FundingInput.ts +0 -260
  502. package/.yalc/@node-dlc/messaging/lib/messages/FundingSignatures.ts +0 -98
  503. package/.yalc/@node-dlc/messaging/lib/messages/IWireMessage.ts +0 -6
  504. package/.yalc/@node-dlc/messaging/lib/messages/NegotiationFields.ts +0 -256
  505. package/.yalc/@node-dlc/messaging/lib/messages/NodeAnnouncementMessage.ts +0 -145
  506. package/.yalc/@node-dlc/messaging/lib/messages/OracleAnnouncement.ts +0 -176
  507. package/.yalc/@node-dlc/messaging/lib/messages/OracleAttestation.ts +0 -292
  508. package/.yalc/@node-dlc/messaging/lib/messages/OracleEvent.ts +0 -250
  509. package/.yalc/@node-dlc/messaging/lib/messages/OracleEventContainer.ts +0 -89
  510. package/.yalc/@node-dlc/messaging/lib/messages/OracleIdentifier.ts +0 -78
  511. package/.yalc/@node-dlc/messaging/lib/messages/OracleInfo.ts +0 -526
  512. package/.yalc/@node-dlc/messaging/lib/messages/OrderAccept.ts +0 -174
  513. package/.yalc/@node-dlc/messaging/lib/messages/OrderIrcInfo.ts +0 -100
  514. package/.yalc/@node-dlc/messaging/lib/messages/OrderMetadata.ts +0 -119
  515. package/.yalc/@node-dlc/messaging/lib/messages/OrderNegotiationFields.ts +0 -210
  516. package/.yalc/@node-dlc/messaging/lib/messages/OrderOffer.ts +0 -418
  517. package/.yalc/@node-dlc/messaging/lib/messages/OrderPositionInfo.ts +0 -147
  518. package/.yalc/@node-dlc/messaging/lib/messages/PayoutCurvePiece.ts +0 -454
  519. package/.yalc/@node-dlc/messaging/lib/messages/PayoutFunction.ts +0 -242
  520. package/.yalc/@node-dlc/messaging/lib/messages/RoundingIntervals.ts +0 -128
  521. package/.yalc/@node-dlc/messaging/lib/messages/ScriptWitnessV0.ts +0 -63
  522. package/.yalc/@node-dlc/messaging/lib/messages/Tlv.ts +0 -40
  523. package/.yalc/@node-dlc/messaging/lib/serialize/F64.ts +0 -337
  524. package/.yalc/@node-dlc/messaging/lib/serialize/deserializeTlv.ts +0 -15
  525. package/.yalc/@node-dlc/messaging/lib/serialize/getTlv.ts +0 -21
  526. package/.yalc/@node-dlc/messaging/lib/serialize/readTlvs.ts +0 -37
  527. package/.yalc/@node-dlc/messaging/lib/util.ts +0 -37
  528. package/.yalc/@node-dlc/messaging/lib/validation/validate.ts +0 -34
  529. package/.yalc/@node-dlc/messaging/package.json +0 -42
  530. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs/enum_3_of_3_test.json +0 -212
  531. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs/enum_3_of_5_test.json +0 -470
  532. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs/enum_and_numerical_3_of_5_test.json +0 -1519
  533. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs/enum_and_numerical_5_of_5_test.json +0 -547
  534. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs/enum_and_numerical_with_diff_3_of_5_test.json +0 -4763
  535. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs/enum_and_numerical_with_diff_5_of_5_test.json +0 -2171
  536. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs/enum_single_oracle_test.json +0 -166
  537. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs/single_oracle_numerical_hyperbola_test.json +0 -504
  538. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs/single_oracle_numerical_test.json +0 -264
  539. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs/three_of_five_oracle_numerical_with_diff_test.json +0 -4384
  540. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs/three_of_three_oracle_numerical_test.json +0 -326
  541. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs/three_of_three_oracle_numerical_with_diff_test.json +0 -654
  542. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs/two_of_five_oracle_numerical_test.json +0 -1140
  543. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs/two_of_five_oracle_numerical_with_diff_test.json +0 -2224
  544. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250718_132453/enum_3_of_3_test.json +0 -210
  545. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250718_132453/enum_3_of_5_test.json +0 -468
  546. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250718_132453/enum_and_numerical_3_of_5_test.json +0 -1517
  547. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250718_132453/enum_and_numerical_5_of_5_test.json +0 -545
  548. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250718_132453/enum_and_numerical_with_diff_3_of_5_test.json +0 -4761
  549. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250718_132453/enum_and_numerical_with_diff_5_of_5_test.json +0 -2169
  550. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250718_132453/enum_single_oracle_test.json +0 -164
  551. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250718_132453/single_oracle_numerical_hyperbola_test.json +0 -502
  552. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250718_132453/single_oracle_numerical_test.json +0 -262
  553. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250718_132453/three_of_five_oracle_numerical_with_diff_test.json +0 -4382
  554. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250718_132453/three_of_three_oracle_numerical_test.json +0 -324
  555. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250718_132453/three_of_three_oracle_numerical_with_diff_test.json +0 -652
  556. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250718_132453/two_of_five_oracle_numerical_test.json +0 -1138
  557. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250718_132453/two_of_five_oracle_numerical_with_diff_test.json +0 -2222
  558. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250719_185952/enum_3_of_3_test.json +0 -212
  559. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250719_185952/enum_3_of_5_test.json +0 -470
  560. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250719_185952/enum_and_numerical_3_of_5_test.json +0 -1519
  561. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250719_185952/enum_and_numerical_5_of_5_test.json +0 -547
  562. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250719_185952/enum_and_numerical_with_diff_3_of_5_test.json +0 -4763
  563. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250719_185952/enum_and_numerical_with_diff_5_of_5_test.json +0 -2171
  564. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250719_185952/enum_single_oracle_test.json +0 -166
  565. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250719_185952/single_oracle_numerical_hyperbola_test.json +0 -504
  566. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250719_185952/single_oracle_numerical_test.json +0 -264
  567. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250719_185952/three_of_five_oracle_numerical_with_diff_test.json +0 -4384
  568. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250719_185952/three_of_three_oracle_numerical_test.json +0 -326
  569. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250719_185952/three_of_three_oracle_numerical_with_diff_test.json +0 -654
  570. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250719_185952/two_of_five_oracle_numerical_test.json +0 -1140
  571. package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250719_185952/two_of_five_oracle_numerical_with_diff_test.json +0 -2224
  572. package/.yalc/@node-dlc/messaging/test_vectors/oracle/external_oracle_announcements.json +0 -0
  573. package/.yalc/@node-dlc/messaging/test_vectors/oracle/oracle_message_test_vectors.json +0 -115
  574. package/.yalc/@node-dlc/messaging/test_vectors/rust-dlc/accept_msg.json +0 -1465
  575. package/.yalc/@node-dlc/messaging/test_vectors/rust-dlc/dlc_fee_test.json +0 -12362
  576. package/.yalc/@node-dlc/messaging/test_vectors/rust-dlc/dlc_fee_test_scripts.json +0 -57
  577. package/.yalc/@node-dlc/messaging/test_vectors/rust-dlc/dlc_test.json +0 -2766
  578. package/.yalc/@node-dlc/messaging/test_vectors/rust-dlc/dlc_tx_test.json +0 -2899
  579. package/.yalc/@node-dlc/messaging/test_vectors/rust-dlc/offer_msg.json +0 -163
  580. package/.yalc/@node-dlc/messaging/test_vectors/rust-dlc/offer_msg_disjoint.json +0 -352
  581. package/.yalc/@node-dlc/messaging/test_vectors/rust-dlc/segment_chunk_msg.json +0 -12635
  582. package/.yalc/@node-dlc/messaging/test_vectors/rust-dlc/segment_start_msg.json +0 -4022
  583. package/.yalc/@node-dlc/messaging/test_vectors/rust-dlc/sign_msg.json +0 -383
  584. package/.yalc/@node-dlc/messaging/tsconfig.json +0 -7
  585. package/.yalc/@node-dlc/messaging/yalc.sig +0 -1
  586. package/.yalc/@node-dlc/noise/.eslintrc +0 -6
  587. package/.yalc/@node-dlc/noise/.nyc_output/cce169d2-1730-4a39-9e05-4edcd8b14961.json +0 -1
  588. package/.yalc/@node-dlc/noise/.nyc_output/processinfo/cce169d2-1730-4a39-9e05-4edcd8b14961.json +0 -1
  589. package/.yalc/@node-dlc/noise/.nyc_output/processinfo/index.json +0 -1
  590. package/.yalc/@node-dlc/noise/README.md +0 -165
  591. package/.yalc/@node-dlc/noise/__integration__/ping-pong.spec.ts +0 -85
  592. package/.yalc/@node-dlc/noise/__tests__/noise-server.spec.ts +0 -82
  593. package/.yalc/@node-dlc/noise/__tests__/noise-socket.spec.ts +0 -574
  594. package/.yalc/@node-dlc/noise/__tests__/noise-state.spec.ts +0 -485
  595. package/.yalc/@node-dlc/noise/coverage/lcov-report/base.css +0 -224
  596. package/.yalc/@node-dlc/noise/coverage/lcov-report/block-navigation.js +0 -79
  597. package/.yalc/@node-dlc/noise/coverage/lcov-report/favicon.png +0 -0
  598. package/.yalc/@node-dlc/noise/coverage/lcov-report/handshake-state.ts.html +0 -230
  599. package/.yalc/@node-dlc/noise/coverage/lcov-report/index.html +0 -201
  600. package/.yalc/@node-dlc/noise/coverage/lcov-report/index.ts.html +0 -344
  601. package/.yalc/@node-dlc/noise/coverage/lcov-report/noise-error.ts.html +0 -89
  602. package/.yalc/@node-dlc/noise/coverage/lcov-report/noise-server.ts.html +0 -485
  603. package/.yalc/@node-dlc/noise/coverage/lcov-report/noise-socket.ts.html +0 -1223
  604. package/.yalc/@node-dlc/noise/coverage/lcov-report/noise-state.ts.html +0 -1523
  605. package/.yalc/@node-dlc/noise/coverage/lcov-report/prettify.css +0 -1
  606. package/.yalc/@node-dlc/noise/coverage/lcov-report/prettify.js +0 -2
  607. package/.yalc/@node-dlc/noise/coverage/lcov-report/read-state.ts.html +0 -95
  608. package/.yalc/@node-dlc/noise/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  609. package/.yalc/@node-dlc/noise/coverage/lcov-report/sorter.js +0 -170
  610. package/.yalc/@node-dlc/noise/coverage/lcov.info +0 -565
  611. package/.yalc/@node-dlc/noise/dist/handshake-state.d.ts +0 -46
  612. package/.yalc/@node-dlc/noise/dist/handshake-state.js +0 -51
  613. package/.yalc/@node-dlc/noise/dist/handshake-state.js.map +0 -1
  614. package/.yalc/@node-dlc/noise/dist/index.d.ts +0 -46
  615. package/.yalc/@node-dlc/noise/dist/index.js +0 -69
  616. package/.yalc/@node-dlc/noise/dist/index.js.map +0 -1
  617. package/.yalc/@node-dlc/noise/dist/noise-error.d.ts +0 -3
  618. package/.yalc/@node-dlc/noise/dist/noise-error.js +0 -11
  619. package/.yalc/@node-dlc/noise/dist/noise-error.js.map +0 -1
  620. package/.yalc/@node-dlc/noise/dist/noise-server-listen-options.d.ts +0 -23
  621. package/.yalc/@node-dlc/noise/dist/noise-server-listen-options.js +0 -3
  622. package/.yalc/@node-dlc/noise/dist/noise-server-listen-options.js.map +0 -1
  623. package/.yalc/@node-dlc/noise/dist/noise-server-options.d.ts +0 -13
  624. package/.yalc/@node-dlc/noise/dist/noise-server-options.js +0 -3
  625. package/.yalc/@node-dlc/noise/dist/noise-server-options.js.map +0 -1
  626. package/.yalc/@node-dlc/noise/dist/noise-server.d.ts +0 -71
  627. package/.yalc/@node-dlc/noise/dist/noise-server.js +0 -125
  628. package/.yalc/@node-dlc/noise/dist/noise-server.js.map +0 -1
  629. package/.yalc/@node-dlc/noise/dist/noise-socket-options.d.ts +0 -28
  630. package/.yalc/@node-dlc/noise/dist/noise-socket-options.js +0 -3
  631. package/.yalc/@node-dlc/noise/dist/noise-socket-options.js.map +0 -1
  632. package/.yalc/@node-dlc/noise/dist/noise-socket.d.ts +0 -98
  633. package/.yalc/@node-dlc/noise/dist/noise-socket.js +0 -278
  634. package/.yalc/@node-dlc/noise/dist/noise-socket.js.map +0 -1
  635. package/.yalc/@node-dlc/noise/dist/noise-state-options.d.ts +0 -16
  636. package/.yalc/@node-dlc/noise/dist/noise-state-options.js +0 -3
  637. package/.yalc/@node-dlc/noise/dist/noise-state-options.js.map +0 -1
  638. package/.yalc/@node-dlc/noise/dist/noise-state.d.ts +0 -164
  639. package/.yalc/@node-dlc/noise/dist/noise-state.js +0 -304
  640. package/.yalc/@node-dlc/noise/dist/noise-state.js.map +0 -1
  641. package/.yalc/@node-dlc/noise/dist/read-state.d.ts +0 -5
  642. package/.yalc/@node-dlc/noise/dist/read-state.js +0 -10
  643. package/.yalc/@node-dlc/noise/dist/read-state.js.map +0 -1
  644. package/.yalc/@node-dlc/noise/lib/handshake-state.ts +0 -50
  645. package/.yalc/@node-dlc/noise/lib/index.ts +0 -88
  646. package/.yalc/@node-dlc/noise/lib/noise-error.ts +0 -3
  647. package/.yalc/@node-dlc/noise/lib/noise-server-listen-options.ts +0 -25
  648. package/.yalc/@node-dlc/noise/lib/noise-server-options.ts +0 -13
  649. package/.yalc/@node-dlc/noise/lib/noise-server.ts +0 -135
  650. package/.yalc/@node-dlc/noise/lib/noise-socket-options.ts +0 -32
  651. package/.yalc/@node-dlc/noise/lib/noise-socket.ts +0 -381
  652. package/.yalc/@node-dlc/noise/lib/noise-state-options.ts +0 -18
  653. package/.yalc/@node-dlc/noise/lib/noise-state.ts +0 -481
  654. package/.yalc/@node-dlc/noise/lib/read-state.ts +0 -5
  655. package/.yalc/@node-dlc/noise/package.json +0 -35
  656. package/.yalc/@node-dlc/noise/tsconfig-build.json +0 -7
  657. package/.yalc/@node-dlc/noise/tsconfig.json +0 -4
  658. package/.yalc/@node-dlc/noise/yalc.sig +0 -1
  659. package/yalc.lock +0 -20
@@ -1,2075 +0,0 @@
1
-
2
- <!doctype html>
3
- <html lang="en">
4
-
5
- <head>
6
- <title>Code coverage report for lib/messages/DlcOffer.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/messages</a> DlcOffer.ts</h1>
23
- <div class='clearfix'>
24
-
25
- <div class='fl pad1y space-right2'>
26
- <span class="strong">94.25% </span>
27
- <span class="quiet">Statements</span>
28
- <span class='fraction'>213/226</span>
29
- </div>
30
-
31
-
32
- <div class='fl pad1y space-right2'>
33
- <span class="strong">74.4% </span>
34
- <span class="quiet">Branches</span>
35
- <span class='fraction'>93/125</span>
36
- </div>
37
-
38
-
39
- <div class='fl pad1y space-right2'>
40
- <span class="strong">86.96% </span>
41
- <span class="quiet">Functions</span>
42
- <span class='fraction'>20/23</span>
43
- </div>
44
-
45
-
46
- <div class='fl pad1y space-right2'>
47
- <span class="strong">94.04% </span>
48
- <span class="quiet">Lines</span>
49
- <span class='fraction'>205/218</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>
511
- <a name='L452'></a><a href='#L452'>452</a>
512
- <a name='L453'></a><a href='#L453'>453</a>
513
- <a name='L454'></a><a href='#L454'>454</a>
514
- <a name='L455'></a><a href='#L455'>455</a>
515
- <a name='L456'></a><a href='#L456'>456</a>
516
- <a name='L457'></a><a href='#L457'>457</a>
517
- <a name='L458'></a><a href='#L458'>458</a>
518
- <a name='L459'></a><a href='#L459'>459</a>
519
- <a name='L460'></a><a href='#L460'>460</a>
520
- <a name='L461'></a><a href='#L461'>461</a>
521
- <a name='L462'></a><a href='#L462'>462</a>
522
- <a name='L463'></a><a href='#L463'>463</a>
523
- <a name='L464'></a><a href='#L464'>464</a>
524
- <a name='L465'></a><a href='#L465'>465</a>
525
- <a name='L466'></a><a href='#L466'>466</a>
526
- <a name='L467'></a><a href='#L467'>467</a>
527
- <a name='L468'></a><a href='#L468'>468</a>
528
- <a name='L469'></a><a href='#L469'>469</a>
529
- <a name='L470'></a><a href='#L470'>470</a>
530
- <a name='L471'></a><a href='#L471'>471</a>
531
- <a name='L472'></a><a href='#L472'>472</a>
532
- <a name='L473'></a><a href='#L473'>473</a>
533
- <a name='L474'></a><a href='#L474'>474</a>
534
- <a name='L475'></a><a href='#L475'>475</a>
535
- <a name='L476'></a><a href='#L476'>476</a>
536
- <a name='L477'></a><a href='#L477'>477</a>
537
- <a name='L478'></a><a href='#L478'>478</a>
538
- <a name='L479'></a><a href='#L479'>479</a>
539
- <a name='L480'></a><a href='#L480'>480</a>
540
- <a name='L481'></a><a href='#L481'>481</a>
541
- <a name='L482'></a><a href='#L482'>482</a>
542
- <a name='L483'></a><a href='#L483'>483</a>
543
- <a name='L484'></a><a href='#L484'>484</a>
544
- <a name='L485'></a><a href='#L485'>485</a>
545
- <a name='L486'></a><a href='#L486'>486</a>
546
- <a name='L487'></a><a href='#L487'>487</a>
547
- <a name='L488'></a><a href='#L488'>488</a>
548
- <a name='L489'></a><a href='#L489'>489</a>
549
- <a name='L490'></a><a href='#L490'>490</a>
550
- <a name='L491'></a><a href='#L491'>491</a>
551
- <a name='L492'></a><a href='#L492'>492</a>
552
- <a name='L493'></a><a href='#L493'>493</a>
553
- <a name='L494'></a><a href='#L494'>494</a>
554
- <a name='L495'></a><a href='#L495'>495</a>
555
- <a name='L496'></a><a href='#L496'>496</a>
556
- <a name='L497'></a><a href='#L497'>497</a>
557
- <a name='L498'></a><a href='#L498'>498</a>
558
- <a name='L499'></a><a href='#L499'>499</a>
559
- <a name='L500'></a><a href='#L500'>500</a>
560
- <a name='L501'></a><a href='#L501'>501</a>
561
- <a name='L502'></a><a href='#L502'>502</a>
562
- <a name='L503'></a><a href='#L503'>503</a>
563
- <a name='L504'></a><a href='#L504'>504</a>
564
- <a name='L505'></a><a href='#L505'>505</a>
565
- <a name='L506'></a><a href='#L506'>506</a>
566
- <a name='L507'></a><a href='#L507'>507</a>
567
- <a name='L508'></a><a href='#L508'>508</a>
568
- <a name='L509'></a><a href='#L509'>509</a>
569
- <a name='L510'></a><a href='#L510'>510</a>
570
- <a name='L511'></a><a href='#L511'>511</a>
571
- <a name='L512'></a><a href='#L512'>512</a>
572
- <a name='L513'></a><a href='#L513'>513</a>
573
- <a name='L514'></a><a href='#L514'>514</a>
574
- <a name='L515'></a><a href='#L515'>515</a>
575
- <a name='L516'></a><a href='#L516'>516</a>
576
- <a name='L517'></a><a href='#L517'>517</a>
577
- <a name='L518'></a><a href='#L518'>518</a>
578
- <a name='L519'></a><a href='#L519'>519</a>
579
- <a name='L520'></a><a href='#L520'>520</a>
580
- <a name='L521'></a><a href='#L521'>521</a>
581
- <a name='L522'></a><a href='#L522'>522</a>
582
- <a name='L523'></a><a href='#L523'>523</a>
583
- <a name='L524'></a><a href='#L524'>524</a>
584
- <a name='L525'></a><a href='#L525'>525</a>
585
- <a name='L526'></a><a href='#L526'>526</a>
586
- <a name='L527'></a><a href='#L527'>527</a>
587
- <a name='L528'></a><a href='#L528'>528</a>
588
- <a name='L529'></a><a href='#L529'>529</a>
589
- <a name='L530'></a><a href='#L530'>530</a>
590
- <a name='L531'></a><a href='#L531'>531</a>
591
- <a name='L532'></a><a href='#L532'>532</a>
592
- <a name='L533'></a><a href='#L533'>533</a>
593
- <a name='L534'></a><a href='#L534'>534</a>
594
- <a name='L535'></a><a href='#L535'>535</a>
595
- <a name='L536'></a><a href='#L536'>536</a>
596
- <a name='L537'></a><a href='#L537'>537</a>
597
- <a name='L538'></a><a href='#L538'>538</a>
598
- <a name='L539'></a><a href='#L539'>539</a>
599
- <a name='L540'></a><a href='#L540'>540</a>
600
- <a name='L541'></a><a href='#L541'>541</a>
601
- <a name='L542'></a><a href='#L542'>542</a>
602
- <a name='L543'></a><a href='#L543'>543</a>
603
- <a name='L544'></a><a href='#L544'>544</a>
604
- <a name='L545'></a><a href='#L545'>545</a>
605
- <a name='L546'></a><a href='#L546'>546</a>
606
- <a name='L547'></a><a href='#L547'>547</a>
607
- <a name='L548'></a><a href='#L548'>548</a>
608
- <a name='L549'></a><a href='#L549'>549</a>
609
- <a name='L550'></a><a href='#L550'>550</a>
610
- <a name='L551'></a><a href='#L551'>551</a>
611
- <a name='L552'></a><a href='#L552'>552</a>
612
- <a name='L553'></a><a href='#L553'>553</a>
613
- <a name='L554'></a><a href='#L554'>554</a>
614
- <a name='L555'></a><a href='#L555'>555</a>
615
- <a name='L556'></a><a href='#L556'>556</a>
616
- <a name='L557'></a><a href='#L557'>557</a>
617
- <a name='L558'></a><a href='#L558'>558</a>
618
- <a name='L559'></a><a href='#L559'>559</a>
619
- <a name='L560'></a><a href='#L560'>560</a>
620
- <a name='L561'></a><a href='#L561'>561</a>
621
- <a name='L562'></a><a href='#L562'>562</a>
622
- <a name='L563'></a><a href='#L563'>563</a>
623
- <a name='L564'></a><a href='#L564'>564</a>
624
- <a name='L565'></a><a href='#L565'>565</a>
625
- <a name='L566'></a><a href='#L566'>566</a>
626
- <a name='L567'></a><a href='#L567'>567</a>
627
- <a name='L568'></a><a href='#L568'>568</a>
628
- <a name='L569'></a><a href='#L569'>569</a>
629
- <a name='L570'></a><a href='#L570'>570</a>
630
- <a name='L571'></a><a href='#L571'>571</a>
631
- <a name='L572'></a><a href='#L572'>572</a>
632
- <a name='L573'></a><a href='#L573'>573</a>
633
- <a name='L574'></a><a href='#L574'>574</a>
634
- <a name='L575'></a><a href='#L575'>575</a>
635
- <a name='L576'></a><a href='#L576'>576</a>
636
- <a name='L577'></a><a href='#L577'>577</a>
637
- <a name='L578'></a><a href='#L578'>578</a>
638
- <a name='L579'></a><a href='#L579'>579</a>
639
- <a name='L580'></a><a href='#L580'>580</a>
640
- <a name='L581'></a><a href='#L581'>581</a>
641
- <a name='L582'></a><a href='#L582'>582</a>
642
- <a name='L583'></a><a href='#L583'>583</a>
643
- <a name='L584'></a><a href='#L584'>584</a>
644
- <a name='L585'></a><a href='#L585'>585</a>
645
- <a name='L586'></a><a href='#L586'>586</a>
646
- <a name='L587'></a><a href='#L587'>587</a>
647
- <a name='L588'></a><a href='#L588'>588</a>
648
- <a name='L589'></a><a href='#L589'>589</a>
649
- <a name='L590'></a><a href='#L590'>590</a>
650
- <a name='L591'></a><a href='#L591'>591</a>
651
- <a name='L592'></a><a href='#L592'>592</a>
652
- <a name='L593'></a><a href='#L593'>593</a>
653
- <a name='L594'></a><a href='#L594'>594</a>
654
- <a name='L595'></a><a href='#L595'>595</a>
655
- <a name='L596'></a><a href='#L596'>596</a>
656
- <a name='L597'></a><a href='#L597'>597</a>
657
- <a name='L598'></a><a href='#L598'>598</a>
658
- <a name='L599'></a><a href='#L599'>599</a>
659
- <a name='L600'></a><a href='#L600'>600</a>
660
- <a name='L601'></a><a href='#L601'>601</a>
661
- <a name='L602'></a><a href='#L602'>602</a>
662
- <a name='L603'></a><a href='#L603'>603</a>
663
- <a name='L604'></a><a href='#L604'>604</a>
664
- <a name='L605'></a><a href='#L605'>605</a>
665
- <a name='L606'></a><a href='#L606'>606</a>
666
- <a name='L607'></a><a href='#L607'>607</a>
667
- <a name='L608'></a><a href='#L608'>608</a>
668
- <a name='L609'></a><a href='#L609'>609</a>
669
- <a name='L610'></a><a href='#L610'>610</a>
670
- <a name='L611'></a><a href='#L611'>611</a>
671
- <a name='L612'></a><a href='#L612'>612</a>
672
- <a name='L613'></a><a href='#L613'>613</a>
673
- <a name='L614'></a><a href='#L614'>614</a>
674
- <a name='L615'></a><a href='#L615'>615</a>
675
- <a name='L616'></a><a href='#L616'>616</a>
676
- <a name='L617'></a><a href='#L617'>617</a>
677
- <a name='L618'></a><a href='#L618'>618</a>
678
- <a name='L619'></a><a href='#L619'>619</a>
679
- <a name='L620'></a><a href='#L620'>620</a>
680
- <a name='L621'></a><a href='#L621'>621</a>
681
- <a name='L622'></a><a href='#L622'>622</a>
682
- <a name='L623'></a><a href='#L623'>623</a>
683
- <a name='L624'></a><a href='#L624'>624</a>
684
- <a name='L625'></a><a href='#L625'>625</a>
685
- <a name='L626'></a><a href='#L626'>626</a>
686
- <a name='L627'></a><a href='#L627'>627</a>
687
- <a name='L628'></a><a href='#L628'>628</a>
688
- <a name='L629'></a><a href='#L629'>629</a>
689
- <a name='L630'></a><a href='#L630'>630</a>
690
- <a name='L631'></a><a href='#L631'>631</a>
691
- <a name='L632'></a><a href='#L632'>632</a>
692
- <a name='L633'></a><a href='#L633'>633</a>
693
- <a name='L634'></a><a href='#L634'>634</a>
694
- <a name='L635'></a><a href='#L635'>635</a>
695
- <a name='L636'></a><a href='#L636'>636</a>
696
- <a name='L637'></a><a href='#L637'>637</a>
697
- <a name='L638'></a><a href='#L638'>638</a>
698
- <a name='L639'></a><a href='#L639'>639</a>
699
- <a name='L640'></a><a href='#L640'>640</a>
700
- <a name='L641'></a><a href='#L641'>641</a>
701
- <a name='L642'></a><a href='#L642'>642</a>
702
- <a name='L643'></a><a href='#L643'>643</a>
703
- <a name='L644'></a><a href='#L644'>644</a>
704
- <a name='L645'></a><a href='#L645'>645</a>
705
- <a name='L646'></a><a href='#L646'>646</a>
706
- <a name='L647'></a><a href='#L647'>647</a>
707
- <a name='L648'></a><a href='#L648'>648</a>
708
- <a name='L649'></a><a href='#L649'>649</a>
709
- <a name='L650'></a><a href='#L650'>650</a>
710
- <a name='L651'></a><a href='#L651'>651</a>
711
- <a name='L652'></a><a href='#L652'>652</a>
712
- <a name='L653'></a><a href='#L653'>653</a>
713
- <a name='L654'></a><a href='#L654'>654</a>
714
- <a name='L655'></a><a href='#L655'>655</a>
715
- <a name='L656'></a><a href='#L656'>656</a>
716
- <a name='L657'></a><a href='#L657'>657</a>
717
- <a name='L658'></a><a href='#L658'>658</a>
718
- <a name='L659'></a><a href='#L659'>659</a>
719
- <a name='L660'></a><a href='#L660'>660</a>
720
- <a name='L661'></a><a href='#L661'>661</a>
721
- <a name='L662'></a><a href='#L662'>662</a>
722
- <a name='L663'></a><a href='#L663'>663</a>
723
- <a name='L664'></a><a href='#L664'>664</a>
724
- <a name='L665'></a><a href='#L665'>665</a>
725
- <a name='L666'></a><a href='#L666'>666</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
726
- <span class="cline-any cline-yes">1x</span>
727
- <span class="cline-any cline-yes">1x</span>
728
- <span class="cline-any cline-neutral">&nbsp;</span>
729
- <span class="cline-any cline-yes">1x</span>
730
- <span class="cline-any cline-yes">1x</span>
731
- <span class="cline-any cline-neutral">&nbsp;</span>
732
- <span class="cline-any cline-yes">1x</span>
733
- <span class="cline-any cline-yes">1x</span>
734
- <span class="cline-any cline-yes">1x</span>
735
- <span class="cline-any cline-yes">1x</span>
736
- <span class="cline-any cline-yes">1x</span>
737
- <span class="cline-any cline-yes">1x</span>
738
- <span class="cline-any cline-neutral">&nbsp;</span>
739
- <span class="cline-any cline-neutral">&nbsp;</span>
740
- <span class="cline-any cline-neutral">&nbsp;</span>
741
- <span class="cline-any cline-neutral">&nbsp;</span>
742
- <span class="cline-any cline-neutral">&nbsp;</span>
743
- <span class="cline-any cline-yes">1x</span>
744
- <span class="cline-any cline-yes">1x</span>
745
- <span class="cline-any cline-neutral">&nbsp;</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-neutral">&nbsp;</span>
749
- <span class="cline-any cline-yes">1x</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-yes">1x</span>
755
- <span class="cline-any cline-neutral">&nbsp;</span>
756
- <span class="cline-any cline-yes">1x</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-neutral">&nbsp;</span>
763
- <span class="cline-any cline-neutral">&nbsp;</span>
764
- <span class="cline-any cline-yes">1x</span>
765
- <span class="cline-any cline-yes">1x</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-neutral">&nbsp;</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-neutral">&nbsp;</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">30x</span>
775
- <span class="cline-any cline-neutral">&nbsp;</span>
776
- <span class="cline-any cline-neutral">&nbsp;</span>
777
- <span class="cline-any cline-yes">30x</span>
778
- <span class="cline-any cline-neutral">&nbsp;</span>
779
- <span class="cline-any cline-yes">30x</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-neutral">&nbsp;</span>
783
- <span class="cline-any cline-yes">30x</span>
784
- <span class="cline-any cline-yes">30x</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">30x</span>
790
- <span class="cline-any cline-neutral">&nbsp;</span>
791
- <span class="cline-any cline-neutral">&nbsp;</span>
792
- <span class="cline-any cline-neutral">&nbsp;</span>
793
- <span class="cline-any cline-yes">30x</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-neutral">&nbsp;</span>
797
- <span class="cline-any cline-neutral">&nbsp;</span>
798
- <span class="cline-any cline-neutral">&nbsp;</span>
799
- <span class="cline-any cline-yes">30x</span>
800
- <span class="cline-any cline-neutral">&nbsp;</span>
801
- <span class="cline-any cline-neutral">&nbsp;</span>
802
- <span class="cline-any cline-neutral">&nbsp;</span>
803
- <span class="cline-any cline-yes">30x</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-neutral">&nbsp;</span>
809
- <span class="cline-any cline-yes">30x</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-neutral">&nbsp;</span>
813
- <span class="cline-any cline-yes">30x</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">30x</span>
817
- <span class="cline-any cline-neutral">&nbsp;</span>
818
- <span class="cline-any cline-neutral">&nbsp;</span>
819
- <span class="cline-any cline-yes">30x</span>
820
- <span class="cline-any cline-yes">30x</span>
821
- <span class="cline-any cline-yes">30x</span>
822
- <span class="cline-any cline-neutral">&nbsp;</span>
823
- <span class="cline-any cline-neutral">&nbsp;</span>
824
- <span class="cline-any cline-yes">30x</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-neutral">&nbsp;</span>
828
- <span class="cline-any cline-neutral">&nbsp;</span>
829
- <span class="cline-any cline-yes">30x</span>
830
- <span class="cline-any cline-neutral">&nbsp;</span>
831
- <span class="cline-any cline-yes">30x</span>
832
- <span class="cline-any cline-neutral">&nbsp;</span>
833
- <span class="cline-any cline-yes">30x</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-neutral">&nbsp;</span>
841
- <span class="cline-any cline-neutral">&nbsp;</span>
842
- <span class="cline-any cline-yes">52x</span>
843
- <span class="cline-any cline-yes">52x</span>
844
- <span class="cline-any cline-neutral">&nbsp;</span>
845
- <span class="cline-any cline-yes">52x</span>
846
- <span class="cline-any cline-neutral">&nbsp;</span>
847
- <span class="cline-any cline-neutral">&nbsp;</span>
848
- <span class="cline-any cline-yes">52x</span>
849
- <span class="cline-any cline-yes">1x</span>
850
- <span class="cline-any cline-neutral">&nbsp;</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-neutral">&nbsp;</span>
857
- <span class="cline-any cline-neutral">&nbsp;</span>
858
- <span class="cline-any cline-yes">51x</span>
859
- <span class="cline-any cline-neutral">&nbsp;</span>
860
- <span class="cline-any cline-neutral">&nbsp;</span>
861
- <span class="cline-any cline-neutral">&nbsp;</span>
862
- <span class="cline-any cline-yes">51x</span>
863
- <span class="cline-any cline-yes">51x</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-neutral">&nbsp;</span>
867
- <span class="cline-any cline-neutral">&nbsp;</span>
868
- <span class="cline-any cline-yes">51x</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-yes">51x</span>
873
- <span class="cline-any cline-neutral">&nbsp;</span>
874
- <span class="cline-any cline-yes">51x</span>
875
- <span class="cline-any cline-yes">51x</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-no">&nbsp;</span>
879
- <span class="cline-any cline-no">&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-yes">51x</span>
883
- <span class="cline-any cline-yes">51x</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-yes">51x</span>
887
- <span class="cline-any cline-neutral">&nbsp;</span>
888
- <span class="cline-any cline-neutral">&nbsp;</span>
889
- <span class="cline-any cline-neutral">&nbsp;</span>
890
- <span class="cline-any cline-yes">51x</span>
891
- <span class="cline-any cline-yes">51x</span>
892
- <span class="cline-any cline-yes">51x</span>
893
- <span class="cline-any cline-yes">51x</span>
894
- <span class="cline-any cline-yes">51x</span>
895
- <span class="cline-any cline-yes">51x</span>
896
- <span class="cline-any cline-yes">51x</span>
897
- <span class="cline-any cline-neutral">&nbsp;</span>
898
- <span class="cline-any cline-neutral">&nbsp;</span>
899
- <span class="cline-any cline-yes">51x</span>
900
- <span class="cline-any cline-neutral">&nbsp;</span>
901
- <span class="cline-any cline-yes">51x</span>
902
- <span class="cline-any cline-neutral">&nbsp;</span>
903
- <span class="cline-any cline-yes">51x</span>
904
- <span class="cline-any cline-neutral">&nbsp;</span>
905
- <span class="cline-any cline-neutral">&nbsp;</span>
906
- <span class="cline-any cline-yes">51x</span>
907
- <span class="cline-any cline-neutral">&nbsp;</span>
908
- <span class="cline-any cline-neutral">&nbsp;</span>
909
- <span class="cline-any cline-yes">51x</span>
910
- <span class="cline-any cline-yes">51x</span>
911
- <span class="cline-any cline-neutral">&nbsp;</span>
912
- <span class="cline-any cline-neutral">&nbsp;</span>
913
- <span class="cline-any cline-yes">51x</span>
914
- <span class="cline-any cline-yes">51x</span>
915
- <span class="cline-any cline-yes">51x</span>
916
- <span class="cline-any cline-yes">51x</span>
917
- <span class="cline-any cline-yes">51x</span>
918
- <span class="cline-any cline-yes">51x</span>
919
- <span class="cline-any cline-yes">51x</span>
920
- <span class="cline-any cline-neutral">&nbsp;</span>
921
- <span class="cline-any cline-neutral">&nbsp;</span>
922
- <span class="cline-any cline-yes">51x</span>
923
- <span class="cline-any cline-yes">5x</span>
924
- <span class="cline-any cline-yes">5x</span>
925
- <span class="cline-any cline-yes">5x</span>
926
- <span class="cline-any cline-neutral">&nbsp;</span>
927
- <span class="cline-any cline-yes">5x</span>
928
- <span class="cline-any cline-neutral">&nbsp;</span>
929
- <span class="cline-any cline-yes">1x</span>
930
- <span class="cline-any cline-yes">1x</span>
931
- <span class="cline-any cline-neutral">&nbsp;</span>
932
- <span class="cline-any cline-yes">1x</span>
933
- <span class="cline-any cline-yes">1x</span>
934
- <span class="cline-any cline-neutral">&nbsp;</span>
935
- <span class="cline-any cline-yes">2x</span>
936
- <span class="cline-any cline-yes">2x</span>
937
- <span class="cline-any cline-neutral">&nbsp;</span>
938
- <span class="cline-any cline-yes">1x</span>
939
- <span class="cline-any cline-yes">1x</span>
940
- <span class="cline-any cline-neutral">&nbsp;</span>
941
- <span class="cline-any cline-yes">1x</span>
942
- <span class="cline-any cline-yes">1x</span>
943
- <span class="cline-any cline-neutral">&nbsp;</span>
944
- <span class="cline-any cline-neutral">&nbsp;</span>
945
- <span class="cline-any cline-no">&nbsp;</span>
946
- <span class="cline-any cline-no">&nbsp;</span>
947
- <span class="cline-any cline-neutral">&nbsp;</span>
948
- <span class="cline-any cline-no">&nbsp;</span>
949
- <span class="cline-any cline-no">&nbsp;</span>
950
- <span class="cline-any cline-neutral">&nbsp;</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">51x</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-yes">1x</span>
958
- <span class="cline-any cline-neutral">&nbsp;</span>
959
- <span class="cline-any cline-neutral">&nbsp;</span>
960
- <span class="cline-any cline-yes">51x</span>
961
- <span class="cline-any cline-neutral">&nbsp;</span>
962
- <span class="cline-any cline-neutral">&nbsp;</span>
963
- <span class="cline-any cline-neutral">&nbsp;</span>
964
- <span class="cline-any cline-neutral">&nbsp;</span>
965
- <span class="cline-any cline-neutral">&nbsp;</span>
966
- <span class="cline-any cline-yes">120x</span>
967
- <span class="cline-any cline-neutral">&nbsp;</span>
968
- <span class="cline-any cline-neutral">&nbsp;</span>
969
- <span class="cline-any cline-yes">120x</span>
970
- <span class="cline-any cline-neutral">&nbsp;</span>
971
- <span class="cline-any cline-neutral">&nbsp;</span>
972
- <span class="cline-any cline-neutral">&nbsp;</span>
973
- <span class="cline-any cline-neutral">&nbsp;</span>
974
- <span class="cline-any cline-neutral">&nbsp;</span>
975
- <span class="cline-any cline-neutral">&nbsp;</span>
976
- <span class="cline-any cline-neutral">&nbsp;</span>
977
- <span class="cline-any cline-neutral">&nbsp;</span>
978
- <span class="cline-any cline-neutral">&nbsp;</span>
979
- <span class="cline-any cline-neutral">&nbsp;</span>
980
- <span class="cline-any cline-neutral">&nbsp;</span>
981
- <span class="cline-any cline-neutral">&nbsp;</span>
982
- <span class="cline-any cline-neutral">&nbsp;</span>
983
- <span class="cline-any cline-neutral">&nbsp;</span>
984
- <span class="cline-any cline-neutral">&nbsp;</span>
985
- <span class="cline-any cline-neutral">&nbsp;</span>
986
- <span class="cline-any cline-neutral">&nbsp;</span>
987
- <span class="cline-any cline-neutral">&nbsp;</span>
988
- <span class="cline-any cline-yes">120x</span>
989
- <span class="cline-any cline-neutral">&nbsp;</span>
990
- <span class="cline-any cline-neutral">&nbsp;</span>
991
- <span class="cline-any cline-neutral">&nbsp;</span>
992
- <span class="cline-any cline-neutral">&nbsp;</span>
993
- <span class="cline-any cline-neutral">&nbsp;</span>
994
- <span class="cline-any cline-neutral">&nbsp;</span>
995
- <span class="cline-any cline-neutral">&nbsp;</span>
996
- <span class="cline-any cline-neutral">&nbsp;</span>
997
- <span class="cline-any cline-neutral">&nbsp;</span>
998
- <span class="cline-any cline-neutral">&nbsp;</span>
999
- <span class="cline-any cline-neutral">&nbsp;</span>
1000
- <span class="cline-any cline-neutral">&nbsp;</span>
1001
- <span class="cline-any cline-neutral">&nbsp;</span>
1002
- <span class="cline-any cline-neutral">&nbsp;</span>
1003
- <span class="cline-any cline-neutral">&nbsp;</span>
1004
- <span class="cline-any cline-neutral">&nbsp;</span>
1005
- <span class="cline-any cline-neutral">&nbsp;</span>
1006
- <span class="cline-any cline-neutral">&nbsp;</span>
1007
- <span class="cline-any cline-neutral">&nbsp;</span>
1008
- <span class="cline-any cline-neutral">&nbsp;</span>
1009
- <span class="cline-any cline-neutral">&nbsp;</span>
1010
- <span class="cline-any cline-neutral">&nbsp;</span>
1011
- <span class="cline-any cline-neutral">&nbsp;</span>
1012
- <span class="cline-any cline-neutral">&nbsp;</span>
1013
- <span class="cline-any cline-neutral">&nbsp;</span>
1014
- <span class="cline-any cline-neutral">&nbsp;</span>
1015
- <span class="cline-any cline-neutral">&nbsp;</span>
1016
- <span class="cline-any cline-neutral">&nbsp;</span>
1017
- <span class="cline-any cline-yes">120x</span>
1018
- <span class="cline-any cline-neutral">&nbsp;</span>
1019
- <span class="cline-any cline-neutral">&nbsp;</span>
1020
- <span class="cline-any cline-neutral">&nbsp;</span>
1021
- <span class="cline-any cline-neutral">&nbsp;</span>
1022
- <span class="cline-any cline-neutral">&nbsp;</span>
1023
- <span class="cline-any cline-neutral">&nbsp;</span>
1024
- <span class="cline-any cline-yes">6x</span>
1025
- <span class="cline-any cline-yes">6x</span>
1026
- <span class="cline-any cline-yes">1x</span>
1027
- <span class="cline-any cline-neutral">&nbsp;</span>
1028
- <span class="cline-any cline-neutral">&nbsp;</span>
1029
- <span class="cline-any cline-neutral">&nbsp;</span>
1030
- <span class="cline-any cline-yes">5x</span>
1031
- <span class="cline-any cline-neutral">&nbsp;</span>
1032
- <span class="cline-any cline-neutral">&nbsp;</span>
1033
- <span class="cline-any cline-neutral">&nbsp;</span>
1034
- <span class="cline-any cline-neutral">&nbsp;</span>
1035
- <span class="cline-any cline-neutral">&nbsp;</span>
1036
- <span class="cline-any cline-neutral">&nbsp;</span>
1037
- <span class="cline-any cline-neutral">&nbsp;</span>
1038
- <span class="cline-any cline-yes">18x</span>
1039
- <span class="cline-any cline-neutral">&nbsp;</span>
1040
- <span class="cline-any cline-neutral">&nbsp;</span>
1041
- <span class="cline-any cline-neutral">&nbsp;</span>
1042
- <span class="cline-any cline-neutral">&nbsp;</span>
1043
- <span class="cline-any cline-neutral">&nbsp;</span>
1044
- <span class="cline-any cline-neutral">&nbsp;</span>
1045
- <span class="cline-any cline-neutral">&nbsp;</span>
1046
- <span class="cline-any cline-neutral">&nbsp;</span>
1047
- <span class="cline-any cline-neutral">&nbsp;</span>
1048
- <span class="cline-any cline-neutral">&nbsp;</span>
1049
- <span class="cline-any cline-neutral">&nbsp;</span>
1050
- <span class="cline-any cline-yes">1x</span>
1051
- <span class="cline-any cline-neutral">&nbsp;</span>
1052
- <span class="cline-any cline-neutral">&nbsp;</span>
1053
- <span class="cline-any cline-yes">1x</span>
1054
- <span class="cline-any cline-yes">1x</span>
1055
- <span class="cline-any cline-yes">1x</span>
1056
- <span class="cline-any cline-neutral">&nbsp;</span>
1057
- <span class="cline-any cline-yes">1x</span>
1058
- <span class="cline-any cline-neutral">&nbsp;</span>
1059
- <span class="cline-any cline-neutral">&nbsp;</span>
1060
- <span class="cline-any cline-neutral">&nbsp;</span>
1061
- <span class="cline-any cline-neutral">&nbsp;</span>
1062
- <span class="cline-any cline-neutral">&nbsp;</span>
1063
- <span class="cline-any cline-neutral">&nbsp;</span>
1064
- <span class="cline-any cline-neutral">&nbsp;</span>
1065
- <span class="cline-any cline-neutral">&nbsp;</span>
1066
- <span class="cline-any cline-neutral">&nbsp;</span>
1067
- <span class="cline-any cline-neutral">&nbsp;</span>
1068
- <span class="cline-any cline-neutral">&nbsp;</span>
1069
- <span class="cline-any cline-neutral">&nbsp;</span>
1070
- <span class="cline-any cline-neutral">&nbsp;</span>
1071
- <span class="cline-any cline-neutral">&nbsp;</span>
1072
- <span class="cline-any cline-yes">21x</span>
1073
- <span class="cline-any cline-yes">1x</span>
1074
- <span class="cline-any cline-neutral">&nbsp;</span>
1075
- <span class="cline-any cline-neutral">&nbsp;</span>
1076
- <span class="cline-any cline-neutral">&nbsp;</span>
1077
- <span class="cline-any cline-neutral">&nbsp;</span>
1078
- <span class="cline-any cline-neutral">&nbsp;</span>
1079
- <span class="cline-any cline-yes">20x</span>
1080
- <span class="cline-any cline-yes">1x</span>
1081
- <span class="cline-any cline-neutral">&nbsp;</span>
1082
- <span class="cline-any cline-neutral">&nbsp;</span>
1083
- <span class="cline-any cline-neutral">&nbsp;</span>
1084
- <span class="cline-any cline-neutral">&nbsp;</span>
1085
- <span class="cline-any cline-neutral">&nbsp;</span>
1086
- <span class="cline-any cline-neutral">&nbsp;</span>
1087
- <span class="cline-any cline-yes">19x</span>
1088
- <span class="cline-any cline-yes">19x</span>
1089
- <span class="cline-any cline-neutral">&nbsp;</span>
1090
- <span class="cline-any cline-yes">1x</span>
1091
- <span class="cline-any cline-neutral">&nbsp;</span>
1092
- <span class="cline-any cline-neutral">&nbsp;</span>
1093
- <span class="cline-any cline-yes">18x</span>
1094
- <span class="cline-any cline-yes">18x</span>
1095
- <span class="cline-any cline-neutral">&nbsp;</span>
1096
- <span class="cline-any cline-yes">1x</span>
1097
- <span class="cline-any cline-neutral">&nbsp;</span>
1098
- <span class="cline-any cline-neutral">&nbsp;</span>
1099
- <span class="cline-any cline-neutral">&nbsp;</span>
1100
- <span class="cline-any cline-neutral">&nbsp;</span>
1101
- <span class="cline-any cline-neutral">&nbsp;</span>
1102
- <span class="cline-any cline-yes">17x</span>
1103
- <span class="cline-any cline-yes">16x</span>
1104
- <span class="cline-any cline-yes">1x</span>
1105
- <span class="cline-any cline-neutral">&nbsp;</span>
1106
- <span class="cline-any cline-neutral">&nbsp;</span>
1107
- <span class="cline-any cline-yes">1x</span>
1108
- <span class="cline-any cline-neutral">&nbsp;</span>
1109
- <span class="cline-any cline-neutral">&nbsp;</span>
1110
- <span class="cline-any cline-neutral">&nbsp;</span>
1111
- <span class="cline-any cline-yes">15x</span>
1112
- <span class="cline-any cline-yes">1x</span>
1113
- <span class="cline-any cline-neutral">&nbsp;</span>
1114
- <span class="cline-any cline-neutral">&nbsp;</span>
1115
- <span class="cline-any cline-yes">14x</span>
1116
- <span class="cline-any cline-yes">1x</span>
1117
- <span class="cline-any cline-neutral">&nbsp;</span>
1118
- <span class="cline-any cline-neutral">&nbsp;</span>
1119
- <span class="cline-any cline-yes">13x</span>
1120
- <span class="cline-any cline-yes">1x</span>
1121
- <span class="cline-any cline-neutral">&nbsp;</span>
1122
- <span class="cline-any cline-neutral">&nbsp;</span>
1123
- <span class="cline-any cline-neutral">&nbsp;</span>
1124
- <span class="cline-any cline-neutral">&nbsp;</span>
1125
- <span class="cline-any cline-neutral">&nbsp;</span>
1126
- <span class="cline-any cline-neutral">&nbsp;</span>
1127
- <span class="cline-any cline-yes">12x</span>
1128
- <span class="cline-any cline-neutral">&nbsp;</span>
1129
- <span class="cline-any cline-neutral">&nbsp;</span>
1130
- <span class="cline-any cline-neutral">&nbsp;</span>
1131
- <span class="cline-any cline-neutral">&nbsp;</span>
1132
- <span class="cline-any cline-neutral">&nbsp;</span>
1133
- <span class="cline-any cline-neutral">&nbsp;</span>
1134
- <span class="cline-any cline-neutral">&nbsp;</span>
1135
- <span class="cline-any cline-yes">1x</span>
1136
- <span class="cline-any cline-neutral">&nbsp;</span>
1137
- <span class="cline-any cline-neutral">&nbsp;</span>
1138
- <span class="cline-any cline-neutral">&nbsp;</span>
1139
- <span class="cline-any cline-yes">11x</span>
1140
- <span class="cline-any cline-yes">2x</span>
1141
- <span class="cline-any cline-neutral">&nbsp;</span>
1142
- <span class="cline-any cline-neutral">&nbsp;</span>
1143
- <span class="cline-any cline-neutral">&nbsp;</span>
1144
- <span class="cline-any cline-neutral">&nbsp;</span>
1145
- <span class="cline-any cline-yes">9x</span>
1146
- <span class="cline-any cline-yes">10x</span>
1147
- <span class="cline-any cline-neutral">&nbsp;</span>
1148
- <span class="cline-any cline-neutral">&nbsp;</span>
1149
- <span class="cline-any cline-yes">9x</span>
1150
- <span class="cline-any cline-yes">1x</span>
1151
- <span class="cline-any cline-neutral">&nbsp;</span>
1152
- <span class="cline-any cline-neutral">&nbsp;</span>
1153
- <span class="cline-any cline-neutral">&nbsp;</span>
1154
- <span class="cline-any cline-neutral">&nbsp;</span>
1155
- <span class="cline-any cline-yes">8x</span>
1156
- <span class="cline-any cline-yes">1x</span>
1157
- <span class="cline-any cline-neutral">&nbsp;</span>
1158
- <span class="cline-any cline-neutral">&nbsp;</span>
1159
- <span class="cline-any cline-neutral">&nbsp;</span>
1160
- <span class="cline-any cline-neutral">&nbsp;</span>
1161
- <span class="cline-any cline-neutral">&nbsp;</span>
1162
- <span class="cline-any cline-yes">7x</span>
1163
- <span class="cline-any cline-neutral">&nbsp;</span>
1164
- <span class="cline-any cline-neutral">&nbsp;</span>
1165
- <span class="cline-any cline-neutral">&nbsp;</span>
1166
- <span class="cline-any cline-yes">7x</span>
1167
- <span class="cline-any cline-yes">3x</span>
1168
- <span class="cline-any cline-no">&nbsp;</span>
1169
- <span class="cline-any cline-neutral">&nbsp;</span>
1170
- <span class="cline-any cline-neutral">&nbsp;</span>
1171
- <span class="cline-any cline-neutral">&nbsp;</span>
1172
- <span class="cline-any cline-neutral">&nbsp;</span>
1173
- <span class="cline-any cline-yes">4x</span>
1174
- <span class="cline-any cline-yes">1x</span>
1175
- <span class="cline-any cline-neutral">&nbsp;</span>
1176
- <span class="cline-any cline-neutral">&nbsp;</span>
1177
- <span class="cline-any cline-neutral">&nbsp;</span>
1178
- <span class="cline-any cline-neutral">&nbsp;</span>
1179
- <span class="cline-any cline-neutral">&nbsp;</span>
1180
- <span class="cline-any cline-neutral">&nbsp;</span>
1181
- <span class="cline-any cline-yes">6x</span>
1182
- <span class="cline-any cline-yes">6x</span>
1183
- <span class="cline-any cline-yes">6x</span>
1184
- <span class="cline-any cline-neutral">&nbsp;</span>
1185
- <span class="cline-any cline-neutral">&nbsp;</span>
1186
- <span class="cline-any cline-yes">6x</span>
1187
- <span class="cline-any cline-neutral">&nbsp;</span>
1188
- <span class="cline-any cline-yes">3x</span>
1189
- <span class="cline-any cline-yes">1x</span>
1190
- <span class="cline-any cline-neutral">&nbsp;</span>
1191
- <span class="cline-any cline-neutral">&nbsp;</span>
1192
- <span class="cline-any cline-neutral">&nbsp;</span>
1193
- <span class="cline-any cline-neutral">&nbsp;</span>
1194
- <span class="cline-any cline-neutral">&nbsp;</span>
1195
- <span class="cline-any cline-yes">3x</span>
1196
- <span class="cline-any cline-no">&nbsp;</span>
1197
- <span class="cline-any cline-neutral">&nbsp;</span>
1198
- <span class="cline-any cline-neutral">&nbsp;</span>
1199
- <span class="cline-any cline-neutral">&nbsp;</span>
1200
- <span class="cline-any cline-neutral">&nbsp;</span>
1201
- <span class="cline-any cline-neutral">&nbsp;</span>
1202
- <span class="cline-any cline-neutral">&nbsp;</span>
1203
- <span class="cline-any cline-neutral">&nbsp;</span>
1204
- <span class="cline-any cline-neutral">&nbsp;</span>
1205
- <span class="cline-any cline-yes">19x</span>
1206
- <span class="cline-any cline-neutral">&nbsp;</span>
1207
- <span class="cline-any cline-yes">19x</span>
1208
- <span class="cline-any cline-yes">19x</span>
1209
- <span class="cline-any cline-yes">19x</span>
1210
- <span class="cline-any cline-yes">19x</span>
1211
- <span class="cline-any cline-yes">2x</span>
1212
- <span class="cline-any cline-yes">2x</span>
1213
- <span class="cline-any cline-neutral">&nbsp;</span>
1214
- <span class="cline-any cline-neutral">&nbsp;</span>
1215
- <span class="cline-any cline-neutral">&nbsp;</span>
1216
- <span class="cline-any cline-yes">19x</span>
1217
- <span class="cline-any cline-no">&nbsp;</span>
1218
- <span class="cline-any cline-no">&nbsp;</span>
1219
- <span class="cline-any cline-neutral">&nbsp;</span>
1220
- <span class="cline-any cline-neutral">&nbsp;</span>
1221
- <span class="cline-any cline-neutral">&nbsp;</span>
1222
- <span class="cline-any cline-neutral">&nbsp;</span>
1223
- <span class="cline-any cline-yes">19x</span>
1224
- <span class="cline-any cline-neutral">&nbsp;</span>
1225
- <span class="cline-any cline-neutral">&nbsp;</span>
1226
- <span class="cline-any cline-neutral">&nbsp;</span>
1227
- <span class="cline-any cline-neutral">&nbsp;</span>
1228
- <span class="cline-any cline-neutral">&nbsp;</span>
1229
- <span class="cline-any cline-neutral">&nbsp;</span>
1230
- <span class="cline-any cline-neutral">&nbsp;</span>
1231
- <span class="cline-any cline-neutral">&nbsp;</span>
1232
- <span class="cline-any cline-neutral">&nbsp;</span>
1233
- <span class="cline-any cline-yes">19x</span>
1234
- <span class="cline-any cline-neutral">&nbsp;</span>
1235
- <span class="cline-any cline-neutral">&nbsp;</span>
1236
- <span class="cline-any cline-neutral">&nbsp;</span>
1237
- <span class="cline-any cline-neutral">&nbsp;</span>
1238
- <span class="cline-any cline-neutral">&nbsp;</span>
1239
- <span class="cline-any cline-neutral">&nbsp;</span>
1240
- <span class="cline-any cline-neutral">&nbsp;</span>
1241
- <span class="cline-any cline-neutral">&nbsp;</span>
1242
- <span class="cline-any cline-neutral">&nbsp;</span>
1243
- <span class="cline-any cline-neutral">&nbsp;</span>
1244
- <span class="cline-any cline-neutral">&nbsp;</span>
1245
- <span class="cline-any cline-neutral">&nbsp;</span>
1246
- <span class="cline-any cline-neutral">&nbsp;</span>
1247
- <span class="cline-any cline-neutral">&nbsp;</span>
1248
- <span class="cline-any cline-yes">74x</span>
1249
- <span class="cline-any cline-yes">74x</span>
1250
- <span class="cline-any cline-neutral">&nbsp;</span>
1251
- <span class="cline-any cline-neutral">&nbsp;</span>
1252
- <span class="cline-any cline-yes">74x</span>
1253
- <span class="cline-any cline-yes">74x</span>
1254
- <span class="cline-any cline-yes">74x</span>
1255
- <span class="cline-any cline-yes">74x</span>
1256
- <span class="cline-any cline-neutral">&nbsp;</span>
1257
- <span class="cline-any cline-yes">74x</span>
1258
- <span class="cline-any cline-yes">74x</span>
1259
- <span class="cline-any cline-yes">74x</span>
1260
- <span class="cline-any cline-yes">74x</span>
1261
- <span class="cline-any cline-yes">74x</span>
1262
- <span class="cline-any cline-yes">74x</span>
1263
- <span class="cline-any cline-neutral">&nbsp;</span>
1264
- <span class="cline-any cline-neutral">&nbsp;</span>
1265
- <span class="cline-any cline-yes">74x</span>
1266
- <span class="cline-any cline-neutral">&nbsp;</span>
1267
- <span class="cline-any cline-yes">74x</span>
1268
- <span class="cline-any cline-neutral">&nbsp;</span>
1269
- <span class="cline-any cline-yes">74x</span>
1270
- <span class="cline-any cline-neutral">&nbsp;</span>
1271
- <span class="cline-any cline-neutral">&nbsp;</span>
1272
- <span class="cline-any cline-yes">74x</span>
1273
- <span class="cline-any cline-yes">74x</span>
1274
- <span class="cline-any cline-yes">74x</span>
1275
- <span class="cline-any cline-yes">74x</span>
1276
- <span class="cline-any cline-yes">74x</span>
1277
- <span class="cline-any cline-yes">74x</span>
1278
- <span class="cline-any cline-yes">74x</span>
1279
- <span class="cline-any cline-neutral">&nbsp;</span>
1280
- <span class="cline-any cline-neutral">&nbsp;</span>
1281
- <span class="cline-any cline-yes">74x</span>
1282
- <span class="cline-any cline-yes">74x</span>
1283
- <span class="cline-any cline-yes">74x</span>
1284
- <span class="cline-any cline-yes">74x</span>
1285
- <span class="cline-any cline-yes">1x</span>
1286
- <span class="cline-any cline-yes">1x</span>
1287
- <span class="cline-any cline-neutral">&nbsp;</span>
1288
- <span class="cline-any cline-neutral">&nbsp;</span>
1289
- <span class="cline-any cline-neutral">&nbsp;</span>
1290
- <span class="cline-any cline-yes">74x</span>
1291
- <span class="cline-any cline-no">&nbsp;</span>
1292
- <span class="cline-any cline-no">&nbsp;</span>
1293
- <span class="cline-any cline-neutral">&nbsp;</span>
1294
- <span class="cline-any cline-neutral">&nbsp;</span>
1295
- <span class="cline-any cline-neutral">&nbsp;</span>
1296
- <span class="cline-any cline-yes">74x</span>
1297
- <span class="cline-any cline-neutral">&nbsp;</span>
1298
- <span class="cline-any cline-neutral">&nbsp;</span>
1299
- <span class="cline-any cline-neutral">&nbsp;</span>
1300
- <span class="cline-any cline-neutral">&nbsp;</span>
1301
- <span class="cline-any cline-neutral">&nbsp;</span>
1302
- <span class="cline-any cline-neutral">&nbsp;</span>
1303
- <span class="cline-any cline-neutral">&nbsp;</span>
1304
- <span class="cline-any cline-neutral">&nbsp;</span>
1305
- <span class="cline-any cline-neutral">&nbsp;</span>
1306
- <span class="cline-any cline-neutral">&nbsp;</span>
1307
- <span class="cline-any cline-neutral">&nbsp;</span>
1308
- <span class="cline-any cline-neutral">&nbsp;</span>
1309
- <span class="cline-any cline-neutral">&nbsp;</span>
1310
- <span class="cline-any cline-neutral">&nbsp;</span>
1311
- <span class="cline-any cline-neutral">&nbsp;</span>
1312
- <span class="cline-any cline-neutral">&nbsp;</span>
1313
- <span class="cline-any cline-neutral">&nbsp;</span>
1314
- <span class="cline-any cline-neutral">&nbsp;</span>
1315
- <span class="cline-any cline-neutral">&nbsp;</span>
1316
- <span class="cline-any cline-neutral">&nbsp;</span>
1317
- <span class="cline-any cline-neutral">&nbsp;</span>
1318
- <span class="cline-any cline-neutral">&nbsp;</span>
1319
- <span class="cline-any cline-neutral">&nbsp;</span>
1320
- <span class="cline-any cline-neutral">&nbsp;</span>
1321
- <span class="cline-any cline-neutral">&nbsp;</span>
1322
- <span class="cline-any cline-neutral">&nbsp;</span>
1323
- <span class="cline-any cline-neutral">&nbsp;</span>
1324
- <span class="cline-any cline-neutral">&nbsp;</span>
1325
- <span class="cline-any cline-neutral">&nbsp;</span>
1326
- <span class="cline-any cline-neutral">&nbsp;</span>
1327
- <span class="cline-any cline-neutral">&nbsp;</span>
1328
- <span class="cline-any cline-neutral">&nbsp;</span>
1329
- <span class="cline-any cline-neutral">&nbsp;</span>
1330
- <span class="cline-any cline-neutral">&nbsp;</span>
1331
- <span class="cline-any cline-neutral">&nbsp;</span>
1332
- <span class="cline-any cline-neutral">&nbsp;</span>
1333
- <span class="cline-any cline-neutral">&nbsp;</span>
1334
- <span class="cline-any cline-yes">1x</span>
1335
- <span class="cline-any cline-yes">2x</span>
1336
- <span class="cline-any cline-neutral">&nbsp;</span>
1337
- <span class="cline-any cline-neutral">&nbsp;</span>
1338
- <span class="cline-any cline-neutral">&nbsp;</span>
1339
- <span class="cline-any cline-neutral">&nbsp;</span>
1340
- <span class="cline-any cline-neutral">&nbsp;</span>
1341
- <span class="cline-any cline-neutral">&nbsp;</span>
1342
- <span class="cline-any cline-yes">4x</span>
1343
- <span class="cline-any cline-neutral">&nbsp;</span>
1344
- <span class="cline-any cline-neutral">&nbsp;</span>
1345
- <span class="cline-any cline-neutral">&nbsp;</span>
1346
- <span class="cline-any cline-neutral">&nbsp;</span>
1347
- <span class="cline-any cline-neutral">&nbsp;</span>
1348
- <span class="cline-any cline-neutral">&nbsp;</span>
1349
- <span class="cline-any cline-neutral">&nbsp;</span>
1350
- <span class="cline-any cline-no">&nbsp;</span>
1351
- <span class="cline-any cline-neutral">&nbsp;</span>
1352
- <span class="cline-any cline-neutral">&nbsp;</span>
1353
- <span class="cline-any cline-neutral">&nbsp;</span>
1354
- <span class="cline-any cline-neutral">&nbsp;</span>
1355
- <span class="cline-any cline-neutral">&nbsp;</span>
1356
- <span class="cline-any cline-neutral">&nbsp;</span>
1357
- <span class="cline-any cline-neutral">&nbsp;</span>
1358
- <span class="cline-any cline-yes">3x</span>
1359
- <span class="cline-any cline-neutral">&nbsp;</span>
1360
- <span class="cline-any cline-yes">3x</span>
1361
- <span class="cline-any cline-neutral">&nbsp;</span>
1362
- <span class="cline-any cline-yes">3x</span>
1363
- <span class="cline-any cline-yes">6x</span>
1364
- <span class="cline-any cline-neutral">&nbsp;</span>
1365
- <span class="cline-any cline-yes">6x</span>
1366
- <span class="cline-any cline-yes">6x</span>
1367
- <span class="cline-any cline-neutral">&nbsp;</span>
1368
- <span class="cline-any cline-yes">3x</span>
1369
- <span class="cline-any cline-neutral">&nbsp;</span>
1370
- <span class="cline-any cline-neutral">&nbsp;</span>
1371
- <span class="cline-any cline-neutral">&nbsp;</span>
1372
- <span class="cline-any cline-neutral">&nbsp;</span>
1373
- <span class="cline-any cline-neutral">&nbsp;</span>
1374
- <span class="cline-any cline-neutral">&nbsp;</span>
1375
- <span class="cline-any cline-neutral">&nbsp;</span>
1376
- <span class="cline-any cline-neutral">&nbsp;</span>
1377
- <span class="cline-any cline-yes">1x</span>
1378
- <span class="cline-any cline-yes">1x</span>
1379
- <span class="cline-any cline-yes">1x</span>
1380
- <span class="cline-any cline-yes">1x</span>
1381
- <span class="cline-any cline-neutral">&nbsp;</span>
1382
- <span class="cline-any cline-yes">2x</span>
1383
- <span class="cline-any cline-yes">2x</span>
1384
- <span class="cline-any cline-yes">2x</span>
1385
- <span class="cline-any cline-yes">2x</span>
1386
- <span class="cline-any cline-neutral">&nbsp;</span>
1387
- <span class="cline-any cline-yes">1x</span>
1388
- <span class="cline-any cline-neutral">&nbsp;</span>
1389
- <span class="cline-any cline-neutral">&nbsp;</span>
1390
- <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import { Script } from '@node-dlc/bitcoin';
1391
- import { BufferReader, BufferWriter } from '@node-dlc/bufio';
1392
- import { hash160 } from '@node-dlc/crypto';
1393
- import { BitcoinNetwork } from 'bitcoin-networks';
1394
- import { address } from 'bitcoinjs-lib';
1395
- import secp256k1 from 'secp256k1';
1396
- &nbsp;
1397
- import { MessageType, PROTOCOL_VERSION } from '../MessageType';
1398
- import { deserializeTlv } from '../serialize/deserializeTlv';
1399
- import { getTlv } from '../serialize/getTlv';
1400
- import { bigIntToNumber, toBigInt } from '../util';
1401
- import { BatchFundingGroup, IBatchFundingGroupJSON } from './BatchFundingGroup';
1402
- import {
1403
- ContractInfo,
1404
- IDisjointContractInfoJSON,
1405
- ISingleContractInfoJSON,
1406
- } from './ContractInfo';
1407
- import { IDlcMessage } from './DlcMessage';
1408
- import { FundingInput, IFundingInputJSON } from './FundingInput';
1409
- import {
1410
- IOrderIrcInfoJSON,
1411
- OrderIrcInfo,
1412
- OrderIrcInfoV0,
1413
- } from './OrderIrcInfo';
1414
- import {
1415
- IOrderMetadataJSON,
1416
- OrderMetadata,
1417
- OrderMetadataV0,
1418
- } from './OrderMetadata';
1419
- import { IOrderPositionInfoJSON, OrderPositionInfo } from './OrderPositionInfo';
1420
- &nbsp;
1421
- export const LOCKTIME_THRESHOLD = 500000000;
1422
- &nbsp;
1423
- /**
1424
- * DlcOffer message contains information about a node and indicates its
1425
- * desire to enter into a new contract. This is the first step toward
1426
- * creating the funding transaction and CETs.
1427
- * Updated to support dlcspecs PR #163 format.
1428
- */
1429
- export class DlcOffer implements IDlcMessage {
1430
- public static type = MessageType.DlcOffer;
1431
- &nbsp;
1432
- /**
1433
- * Creates a DlcOffer from JSON data (e.g., from test vectors)
1434
- * Handles both our internal format and external test vector formats
1435
- * @param json JSON object representing a DLC offer
1436
- */
1437
- // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types, @typescript-eslint/no-explicit-any
1438
- public static fromJSON(json: any): DlcOffer {
1439
- const instance = new DlcOffer();
1440
- &nbsp;
1441
- // Basic fields with field name variations
1442
- instance.protocolVersion =
1443
- json.protocolVersion || <span class="branch-1 cbranch-no" title="branch not covered" >json.protocol_version </span>|| <span class="branch-2 cbranch-no" title="branch not covered" >PROTOCOL_VERSION;</span>
1444
- instance.contractFlags = Buffer.from(
1445
- json.contractFlags || json.contract_flags || '00',
1446
- 'hex',
1447
- );
1448
- instance.chainHash = Buffer.from(json.chainHash || <span class="branch-1 cbranch-no" title="branch not covered" >json.chain_hash,</span> 'hex');
1449
- instance.temporaryContractId = Buffer.from(
1450
- json.temporaryContractId || <span class="branch-1 cbranch-no" title="branch not covered" >json.temporary_contract_id,</span>
1451
- 'hex',
1452
- );
1453
- &nbsp;
1454
- instance.fundingPubkey = Buffer.from(
1455
- json.fundingPubkey || <span class="branch-1 cbranch-no" title="branch not covered" >json.fundingPubKey </span>|| <span class="branch-2 cbranch-no" title="branch not covered" >json.funding_pubkey,</span>
1456
- 'hex',
1457
- );
1458
- instance.payoutSpk = Buffer.from(
1459
- json.payoutSpk || <span class="branch-1 cbranch-no" title="branch not covered" >json.payoutSPK </span>|| <span class="branch-2 cbranch-no" title="branch not covered" >json.payout_spk,</span>
1460
- 'hex',
1461
- );
1462
- &nbsp;
1463
- // Use toBigInt helper to handle BigInt values from json-bigint
1464
- instance.payoutSerialId = toBigInt(
1465
- json.payoutSerialId || <span class="branch-1 cbranch-no" title="branch not covered" >json.payout_serial_id,</span>
1466
- );
1467
- &nbsp;
1468
- instance.offerCollateral = toBigInt(
1469
- json.offerCollateral ||
1470
- <span class="branch-1 cbranch-no" title="branch not covered" > json.offerCollateralSatoshis </span>||
1471
- <span class="branch-2 cbranch-no" title="branch not covered" > json.offer_collateral,</span>
1472
- );
1473
- &nbsp;
1474
- instance.changeSpk = Buffer.from(
1475
- json.changeSpk || <span class="branch-1 cbranch-no" title="branch not covered" >json.changeSPK </span>|| <span class="branch-2 cbranch-no" title="branch not covered" >json.change_spk,</span>
1476
- 'hex',
1477
- );
1478
- instance.changeSerialId = toBigInt(
1479
- json.changeSerialId || <span class="branch-1 cbranch-no" title="branch not covered" >json.change_serial_id,</span>
1480
- );
1481
- instance.fundOutputSerialId = toBigInt(
1482
- json.fundOutputSerialId || <span class="branch-1 cbranch-no" title="branch not covered" >json.fund_output_serial_id,</span>
1483
- );
1484
- instance.feeRatePerVb = toBigInt(json.feeRatePerVb || <span class="branch-1 cbranch-no" title="branch not covered" >json.fee_rate_per_vb)</span>;
1485
- instance.cetLocktime = json.cetLocktime || <span class="branch-1 cbranch-no" title="branch not covered" >json.cet_locktime </span>|| <span class="branch-2 cbranch-no" title="branch not covered" >0;</span>
1486
- instance.refundLocktime = json.refundLocktime || <span class="branch-1 cbranch-no" title="branch not covered" >json.refund_locktime </span>|| <span class="branch-2 cbranch-no" title="branch not covered" >0;</span>
1487
- &nbsp;
1488
- // Use ContractInfo.fromJSON() - proper delegation
1489
- instance.contractInfo = ContractInfo.fromJSON(
1490
- json.contractInfo || <span class="branch-1 cbranch-no" title="branch not covered" >json.contract_info,</span>
1491
- );
1492
- &nbsp;
1493
- // Use FundingInput.fromJSON() for each funding input - proper delegation
1494
- instance.fundingInputs = (json.fundingInputs || <span class="branch-1 cbranch-no" title="branch not covered" >json.funding_inputs </span>|| <span class="branch-2 cbranch-no" title="branch not covered" >[])</span>
1495
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
1496
- .map((inputJson: any) =&gt; FundingInput.fromJSON(inputJson));
1497
- &nbsp;
1498
- return instance;
1499
- }
1500
- &nbsp;
1501
- /**
1502
- * Deserializes an offer_dlc message with backward compatibility
1503
- * Detects old format (without protocol_version) vs new format (with protocol_version)
1504
- * @param buf
1505
- */
1506
- public static deserialize(buf: Buffer): DlcOffer {
1507
- const instance = new DlcOffer();
1508
- const reader = new BufferReader(buf);
1509
- &nbsp;
1510
- const type = reader.readUInt16BE(); // read type
1511
- &nbsp;
1512
- // Validate type matches expected DlcOffer type
1513
- if (type !== MessageType.DlcOffer) {
1514
- throw new Error(
1515
- `Invalid message type. Expected ${MessageType.DlcOffer}, got ${type}`,
1516
- );
1517
- }
1518
- &nbsp;
1519
- // BACKWARD COMPATIBILITY: Detect old vs new format
1520
- // New format: [type][protocol_version: 4 bytes][contract_flags: 1 byte][chain_hash: 32 bytes]
1521
- // Old format: [type][contract_flags: 1 byte][chain_hash: 32 bytes]
1522
- &nbsp;
1523
- const nextBytes = reader.buffer.subarray(
1524
- reader.position,
1525
- reader.position + 5,
1526
- );
1527
- const possibleProtocolVersion = nextBytes.readUInt32BE(0);
1528
- const possibleContractFlags = nextBytes.readUInt8(4);
1529
- &nbsp;
1530
- // Heuristic: protocol_version should be 1, contract_flags should be 0
1531
- // If first 4 bytes are reasonable protocol version (1-10) and next byte is 0, assume new format
1532
- const isNewFormat =
1533
- possibleProtocolVersion &gt;= 1 &amp;&amp;
1534
- possibleProtocolVersion &lt;= 10 &amp;&amp;
1535
- possibleContractFlags === 0;
1536
- &nbsp;
1537
- <span class="missing-if-branch" title="else path not taken" >E</span>if (isNewFormat) {
1538
- // New format with protocol_version
1539
- instance.protocolVersion = reader.readUInt32BE();
1540
- instance.contractFlags = reader.readBytes(1);
1541
- } else {
1542
- // Old format without protocol_version
1543
- <span class="cstat-no" title="statement not covered" > instance.protocolVersion = 1; </span>// Default to version 1
1544
- <span class="cstat-no" title="statement not covered" > instance.contractFlags = reader.readBytes(1);</span>
1545
- }
1546
- &nbsp;
1547
- instance.chainHash = reader.readBytes(32);
1548
- instance.temporaryContractId = reader.readBytes(32);
1549
- &nbsp;
1550
- // ContractInfo is serialized as sibling type in dlcspecs PR #163 format
1551
- instance.contractInfo = ContractInfo.deserialize(
1552
- reader.buffer.subarray(reader.position),
1553
- );
1554
- // Skip past the ContractInfo we just read
1555
- const contractInfoLength = instance.contractInfo.serialize().length;
1556
- reader.position += contractInfoLength;
1557
- instance.fundingPubkey = reader.readBytes(33);
1558
- const payoutSpkLen = reader.readUInt16BE();
1559
- instance.payoutSpk = reader.readBytes(payoutSpkLen);
1560
- instance.payoutSerialId = reader.readUInt64BE();
1561
- instance.offerCollateral = reader.readUInt64BE();
1562
- &nbsp;
1563
- // Changed from u16 to bigsize as per dlcspecs PR #163
1564
- const fundingInputsLen = Number(reader.readBigSize());
1565
- &nbsp;
1566
- for (let i = 0; i &lt; fundingInputsLen; i++) {
1567
- // FundingInput body is serialized directly without TLV wrapper in rust-dlc format
1568
- const fundingInput = FundingInput.deserializeBody(
1569
- reader.buffer.subarray(reader.position),
1570
- );
1571
- instance.fundingInputs.push(fundingInput);
1572
- &nbsp;
1573
- // Skip past the FundingInput we just read
1574
- const fundingInputLength = fundingInput.serializeBody().length;
1575
- reader.position += fundingInputLength;
1576
- }
1577
- &nbsp;
1578
- const changeSpkLen = reader.readUInt16BE();
1579
- instance.changeSpk = reader.readBytes(changeSpkLen);
1580
- instance.changeSerialId = reader.readUInt64BE();
1581
- instance.fundOutputSerialId = reader.readUInt64BE();
1582
- instance.feeRatePerVb = reader.readUInt64BE();
1583
- instance.cetLocktime = reader.readUInt32BE();
1584
- instance.refundLocktime = reader.readUInt32BE();
1585
- &nbsp;
1586
- // Parse TLV stream as per dlcspecs PR #163
1587
- while (!reader.eof) {
1588
- const buf = getTlv(reader);
1589
- const tlvReader = new BufferReader(buf);
1590
- const { type } = deserializeTlv(tlvReader);
1591
- &nbsp;
1592
- switch (Number(type)) {
1593
- case MessageType.OrderMetadataV0:
1594
- instance.metadata = OrderMetadataV0.deserialize(buf);
1595
- break;
1596
- case MessageType.OrderIrcInfoV0:
1597
- instance.ircInfo = OrderIrcInfoV0.deserialize(buf);
1598
- break;
1599
- case MessageType.OrderPositionInfo:
1600
- instance.positionInfo = OrderPositionInfo.deserialize(buf);
1601
- break;
1602
- case MessageType.BatchFundingGroup:
1603
- <span class="missing-if-branch" title="else path not taken" >E</span>if (!instance.batchFundingGroups) {
1604
- instance.batchFundingGroups = [];
1605
- }
1606
- instance.batchFundingGroups.push(BatchFundingGroup.deserialize(buf));
1607
- break;
1608
- <span class="branch-4 cbranch-no" title="branch not covered" > default:</span>
1609
- // Store unknown TLVs for future compatibility
1610
- <span class="cstat-no" title="statement not covered" > if (!instance.unknownTlvs) {</span>
1611
- <span class="cstat-no" title="statement not covered" > instance.unknownTlvs = [];</span>
1612
- }
1613
- <span class="cstat-no" title="statement not covered" > instance.unknownTlvs.push({ type: Number(type), data: buf });</span>
1614
- <span class="cstat-no" title="statement not covered" > break;</span>
1615
- }
1616
- }
1617
- &nbsp;
1618
- // Auto-detect single funded DLCs
1619
- if (
1620
- instance.contractInfo.getTotalCollateral() === instance.offerCollateral
1621
- ) {
1622
- instance.singleFunded = true;
1623
- }
1624
- &nbsp;
1625
- return instance;
1626
- }
1627
- &nbsp;
1628
- /**
1629
- * The type for offer_dlc message. offer_dlc = 42778
1630
- */
1631
- public type = DlcOffer.type;
1632
- &nbsp;
1633
- // New fields as per dlcspecs PR #163
1634
- public protocolVersion: number = PROTOCOL_VERSION; // Default to current protocol version
1635
- &nbsp;
1636
- public temporaryContractId: Buffer; // New field for contract identification
1637
- &nbsp;
1638
- // Existing fields
1639
- public contractFlags: Buffer;
1640
- &nbsp;
1641
- public chainHash: Buffer;
1642
- &nbsp;
1643
- public contractInfo: ContractInfo;
1644
- &nbsp;
1645
- public fundingPubkey: Buffer;
1646
- &nbsp;
1647
- public payoutSpk: Buffer;
1648
- &nbsp;
1649
- public payoutSerialId: bigint;
1650
- &nbsp;
1651
- public offerCollateral: bigint;
1652
- &nbsp;
1653
- public fundingInputs: FundingInput[] = [];
1654
- &nbsp;
1655
- public changeSpk: Buffer;
1656
- &nbsp;
1657
- public changeSerialId: bigint;
1658
- &nbsp;
1659
- public fundOutputSerialId: bigint;
1660
- &nbsp;
1661
- public feeRatePerVb: bigint;
1662
- &nbsp;
1663
- public cetLocktime: number;
1664
- &nbsp;
1665
- public refundLocktime: number;
1666
- &nbsp;
1667
- public metadata?: OrderMetadata;
1668
- &nbsp;
1669
- public ircInfo?: OrderIrcInfo;
1670
- &nbsp;
1671
- public positionInfo?: OrderPositionInfo;
1672
- &nbsp;
1673
- public batchFundingGroups?: BatchFundingGroup[];
1674
- &nbsp;
1675
- // Store unknown TLVs for forward compatibility
1676
- public unknownTlvs?: Array&lt;{ type: number; data: Buffer }&gt;;
1677
- &nbsp;
1678
- /**
1679
- * Flag to indicate if this is a single funded DLC
1680
- * In single funded DLCs, totalCollateral equals offerCollateral
1681
- */
1682
- public singleFunded = false;
1683
- &nbsp;
1684
- /**
1685
- * Marks this DLC offer as single funded and validates that collateral amounts are correct
1686
- * @throws Will throw an error if totalCollateral doesn't equal offerCollateral
1687
- */
1688
- public markAsSingleFunded(): void {
1689
- const totalCollateral = this.contractInfo.getTotalCollateral();
1690
- if (totalCollateral !== this.offerCollateral) {
1691
- throw new Error(
1692
- `Cannot mark as single funded: totalCollateral (${totalCollateral}) must equal offerCollateral (${this.offerCollateral})`,
1693
- );
1694
- }
1695
- this.singleFunded = true;
1696
- }
1697
- &nbsp;
1698
- /**
1699
- * Checks if this DLC offer is single funded (totalCollateral == offerCollateral)
1700
- * @returns True if this is a single funded DLC
1701
- */
1702
- public isSingleFunded(): boolean {
1703
- return (
1704
- this.singleFunded ||
1705
- this.contractInfo.getTotalCollateral() === this.offerCollateral
1706
- );
1707
- }
1708
- &nbsp;
1709
- /**
1710
- * Get funding, change and payout address from DlcOffer
1711
- * @param network Bitcoin Network
1712
- * @returns {IDlcOfferAddresses}
1713
- */
1714
- public getAddresses(network: BitcoinNetwork): IDlcOfferAddresses {
1715
- const fundingSPK = Script.p2wpkhLock(hash160(this.fundingPubkey))
1716
- .serialize()
1717
- .slice(1);
1718
- const fundingAddress = address.fromOutputScript(fundingSPK, network);
1719
- const changeAddress = address.fromOutputScript(this.changeSpk, network);
1720
- const payoutAddress = address.fromOutputScript(this.payoutSpk, network);
1721
- &nbsp;
1722
- return {
1723
- fundingAddress,
1724
- changeAddress,
1725
- payoutAddress,
1726
- };
1727
- }
1728
- &nbsp;
1729
- /**
1730
- * Validates correctness of all fields in DlcOffer
1731
- * Updated validation rules as per dlcspecs PR #163
1732
- * @throws Will throw an error if validation fails
1733
- */
1734
- public validate(): void {
1735
- // 1. Type is set automatically in class
1736
- // 2. protocol_version validation
1737
- if (this.protocolVersion !== PROTOCOL_VERSION) {
1738
- throw new Error(
1739
- `Unsupported protocol version: ${this.protocolVersion}, expected: ${PROTOCOL_VERSION}`,
1740
- );
1741
- }
1742
- &nbsp;
1743
- // 3. temporary_contract_id validation
1744
- if (!this.temporaryContractId || this.temporaryContractId.length !== 32) {
1745
- throw new Error('temporaryContractId must be 32 bytes');
1746
- }
1747
- &nbsp;
1748
- // 4. contract_flags field is ignored
1749
- // 5. chain_hash must be validated as input by end user
1750
- // 6. payout_spk and change_spk must be standard script pubkeys
1751
- &nbsp;
1752
- try {
1753
- address.fromOutputScript(this.payoutSpk);
1754
- } catch (e) {
1755
- throw new Error('DlcOffer payoutSpk is invalid');
1756
- }
1757
- &nbsp;
1758
- try {
1759
- address.fromOutputScript(this.changeSpk);
1760
- } catch (e) {
1761
- throw new Error('DlcOffer changeSpk is invalid');
1762
- }
1763
- &nbsp;
1764
- // 7. funding_pubkey must be a valid secp256k1 pubkey in compressed format
1765
- // https://github.com/bitcoin/bips/blob/master/bip-0137.mediawiki#background-on-ecdsa-signatures
1766
- &nbsp;
1767
- if (secp256k1.publicKeyVerify(Buffer.from(this.fundingPubkey))) {
1768
- if (this.fundingPubkey[0] != 0x02 &amp;&amp; this.fundingPubkey[0] != 0x03) {
1769
- throw new Error('fundingPubkey must be in compressed format');
1770
- }
1771
- } else {
1772
- throw new Error('fundingPubkey is not a valid secp256k1 key');
1773
- }
1774
- &nbsp;
1775
- // 8. offer_collateral must be greater than or equal to 1000
1776
- if (this.offerCollateral &lt; 1000) {
1777
- throw new Error('offer_collateral must be greater than or equal to 1000');
1778
- }
1779
- &nbsp;
1780
- if (this.cetLocktime &lt; 0) {
1781
- throw new Error('cet_locktime must be greater than or equal to 0');
1782
- }
1783
- &nbsp;
1784
- if (this.refundLocktime &lt; 0) {
1785
- throw new Error('refund_locktime must be greater than or equal to 0');
1786
- }
1787
- &nbsp;
1788
- // 9. cet_locktime and refund_locktime must either both be unix timestamps, or both be block heights.
1789
- // https://en.bitcoin.it/wiki/NLockTime
1790
- // https://github.com/bitcoin/bips/blob/master/bip-0065.mediawiki#detailed-specification
1791
- // https://github.com/bitcoin/bitcoin/blob/master/src/script/script.h#L39
1792
- if (
1793
- !(
1794
- (this.cetLocktime &lt; LOCKTIME_THRESHOLD &amp;&amp;
1795
- this.refundLocktime &lt; LOCKTIME_THRESHOLD) ||
1796
- (this.cetLocktime &gt;= LOCKTIME_THRESHOLD &amp;&amp;
1797
- this.refundLocktime &gt;= LOCKTIME_THRESHOLD)
1798
- )
1799
- ) {
1800
- throw new Error('cetLocktime and refundLocktime must be in same units');
1801
- }
1802
- &nbsp;
1803
- // 10. cetLocktime must be less than refundLocktime
1804
- if (this.cetLocktime &gt;= this.refundLocktime) {
1805
- throw new Error('cetLocktime must be less than refundLocktime');
1806
- }
1807
- &nbsp;
1808
- // 11. inputSerialId must be unique for each input
1809
- &nbsp;
1810
- const inputSerialIds = this.fundingInputs.map(
1811
- (input: FundingInput) =&gt; input.inputSerialId,
1812
- );
1813
- &nbsp;
1814
- if (new Set(inputSerialIds).size !== inputSerialIds.length) {
1815
- throw new Error('inputSerialIds must be unique');
1816
- }
1817
- &nbsp;
1818
- // 12. changeSerialId and fundOutputSerialID must be different
1819
- &nbsp;
1820
- if (this.changeSerialId === this.fundOutputSerialId) {
1821
- throw new Error(
1822
- 'changeSerialId and fundOutputSerialId must be different',
1823
- );
1824
- }
1825
- &nbsp;
1826
- // validate contractInfo
1827
- this.contractInfo.validate();
1828
- &nbsp;
1829
- // totalCollateral should be &gt; offerCollateral (logical validation)
1830
- // Exception: for single funded DLCs, totalCollateral == offerCollateral is allowed
1831
- if (this.isSingleFunded()) {
1832
- <span class="missing-if-branch" title="if path not taken" >I</span>if (this.contractInfo.getTotalCollateral() !== this.offerCollateral) {
1833
- <span class="cstat-no" title="statement not covered" > throw new Error(</span>
1834
- 'For single funded DLCs, totalCollateral must equal offerCollateral',
1835
- );
1836
- }
1837
- } else {
1838
- if (this.contractInfo.getTotalCollateral() &lt;= this.offerCollateral) {
1839
- throw new Error(
1840
- 'totalCollateral should be greater than offerCollateral',
1841
- );
1842
- }
1843
- }
1844
- &nbsp;
1845
- // validate funding amount
1846
- const fundingAmount = this.fundingInputs.reduce((acc, fundingInput) =&gt; {
1847
- const input = fundingInput as FundingInput;
1848
- return acc + input.prevTx.outputs[input.prevTxVout].value.sats;
1849
- }, BigInt(0));
1850
- &nbsp;
1851
- if (this.isSingleFunded()) {
1852
- // For single funded DLCs, funding amount must cover the full total collateral plus fees
1853
- if (fundingAmount &lt; this.contractInfo.getTotalCollateral()) {
1854
- throw new Error(
1855
- 'For single funded DLCs, fundingAmount must be at least totalCollateral',
1856
- );
1857
- }
1858
- } else {
1859
- // For regular DLCs, funding amount must be greater than offer collateral
1860
- <span class="missing-if-branch" title="if path not taken" >I</span>if (this.offerCollateral &gt;= fundingAmount) {
1861
- <span class="cstat-no" title="statement not covered" > throw new Error('fundingAmount must be greater than offerCollateral');</span>
1862
- }
1863
- }
1864
- }
1865
- &nbsp;
1866
- /**
1867
- * Converts dlc_offer to JSON (canonical rust-dlc format)
1868
- */
1869
- public toJSON(): IDlcOfferJSON {
1870
- const tlvs = [];
1871
- &nbsp;
1872
- if (this.metadata) tlvs.push(this.metadata.toJSON());
1873
- if (this.ircInfo) tlvs.push(this.ircInfo.toJSON());
1874
- if (this.positionInfo) tlvs.push(this.positionInfo.toJSON());
1875
- if (this.batchFundingGroups)
1876
- this.batchFundingGroups.forEach((fundingInfo) =&gt;
1877
- tlvs.push(fundingInfo.toJSON()),
1878
- );
1879
- &nbsp;
1880
- // Include unknown TLVs for debugging
1881
- <span class="missing-if-branch" title="if path not taken" >I</span>if (this.unknownTlvs) {
1882
- <span class="cstat-no" title="statement not covered" > this.unknownTlvs.forEach(<span class="fstat-no" title="function not covered" >(t</span>lv) =&gt;</span>
1883
- <span class="cstat-no" title="statement not covered" > tlvs.push({ type: tlv.type, data: tlv.data.toString('hex') }),</span>
1884
- );
1885
- }
1886
- &nbsp;
1887
- // Return canonical rust-dlc format only
1888
- return {
1889
- protocolVersion: this.protocolVersion,
1890
- temporaryContractId: this.temporaryContractId.toString('hex'),
1891
- contractFlags: Number(this.contractFlags[0]),
1892
- chainHash: this.chainHash.toString('hex'),
1893
- contractInfo: this.contractInfo.toJSON(),
1894
- fundingPubkey: this.fundingPubkey.toString('hex'), // lowercase 'k'
1895
- payoutSpk: this.payoutSpk.toString('hex'), // lowercase
1896
- payoutSerialId: bigIntToNumber(this.payoutSerialId),
1897
- offerCollateral: bigIntToNumber(this.offerCollateral), // no "Satoshis"
1898
- fundingInputs: this.fundingInputs.map((input) =&gt; input.toJSON()),
1899
- changeSpk: this.changeSpk.toString('hex'), // lowercase
1900
- changeSerialId: bigIntToNumber(this.changeSerialId),
1901
- fundOutputSerialId: bigIntToNumber(this.fundOutputSerialId),
1902
- feeRatePerVb: bigIntToNumber(this.feeRatePerVb),
1903
- cetLocktime: this.cetLocktime,
1904
- refundLocktime: this.refundLocktime,
1905
- }; // Allow different field names from interface
1906
- }
1907
- &nbsp;
1908
- /**
1909
- * Serializes the offer_dlc message into a Buffer
1910
- * Updated serialization format as per dlcspecs PR #163
1911
- */
1912
- public serialize(): Buffer {
1913
- const writer = new BufferWriter();
1914
- writer.writeUInt16BE(this.type);
1915
- &nbsp;
1916
- // New fields as per dlcspecs PR #163
1917
- writer.writeUInt32BE(this.protocolVersion);
1918
- writer.writeBytes(this.contractFlags);
1919
- writer.writeBytes(this.chainHash);
1920
- writer.writeBytes(this.temporaryContractId); // New field
1921
- &nbsp;
1922
- writer.writeBytes(this.contractInfo.serialize());
1923
- writer.writeBytes(this.fundingPubkey);
1924
- writer.writeUInt16BE(this.payoutSpk.length);
1925
- writer.writeBytes(this.payoutSpk);
1926
- writer.writeUInt64BE(this.payoutSerialId);
1927
- writer.writeUInt64BE(this.offerCollateral);
1928
- &nbsp;
1929
- // Changed from u16 to bigsize as per dlcspecs PR #163
1930
- writer.writeBigSize(this.fundingInputs.length);
1931
- &nbsp;
1932
- for (const fundingInput of this.fundingInputs) {
1933
- // Use serializeBody() to match rust-dlc behavior - funding inputs in vec are serialized without TLV wrapper
1934
- writer.writeBytes(fundingInput.serializeBody());
1935
- }
1936
- &nbsp;
1937
- writer.writeUInt16BE(this.changeSpk.length);
1938
- writer.writeBytes(this.changeSpk);
1939
- writer.writeUInt64BE(this.changeSerialId);
1940
- writer.writeUInt64BE(this.fundOutputSerialId);
1941
- writer.writeUInt64BE(this.feeRatePerVb);
1942
- writer.writeUInt32BE(this.cetLocktime);
1943
- writer.writeUInt32BE(this.refundLocktime);
1944
- &nbsp;
1945
- // TLV stream as per dlcspecs PR #163
1946
- if (this.metadata) writer.writeBytes(this.metadata.serialize());
1947
- if (this.ircInfo) writer.writeBytes(this.ircInfo.serialize());
1948
- if (this.positionInfo) writer.writeBytes(this.positionInfo.serialize());
1949
- if (this.batchFundingGroups)
1950
- this.batchFundingGroups.forEach((fundingInfo) =&gt;
1951
- writer.writeBytes(fundingInfo.serialize()),
1952
- );
1953
- &nbsp;
1954
- // Write unknown TLVs for forward compatibility
1955
- <span class="missing-if-branch" title="if path not taken" >I</span>if (this.unknownTlvs) {
1956
- <span class="cstat-no" title="statement not covered" > this.unknownTlvs.forEach(<span class="fstat-no" title="function not covered" >(t</span>lv) =&gt; {</span>
1957
- <span class="cstat-no" title="statement not covered" > writer.writeBytes(tlv.data);</span>
1958
- });
1959
- }
1960
- &nbsp;
1961
- return writer.toBuffer();
1962
- }
1963
- }
1964
- &nbsp;
1965
- export interface IDlcOfferJSON {
1966
- type?: number; // Made optional for rust-dlc compatibility
1967
- protocolVersion: number;
1968
- temporaryContractId: string;
1969
- contractFlags: number;
1970
- chainHash: string;
1971
- contractInfo: ISingleContractInfoJSON | IDisjointContractInfoJSON;
1972
- fundingPubkey: string;
1973
- payoutSpk: string;
1974
- payoutSerialId: number;
1975
- offerCollateral: number;
1976
- fundingInputs: IFundingInputJSON[];
1977
- changeSpk: string;
1978
- changeSerialId: number;
1979
- fundOutputSerialId: number;
1980
- feeRatePerVb: number;
1981
- cetLocktime: number;
1982
- refundLocktime: number;
1983
- serialized?: string; // Made optional - hex serialization for compatibility testing
1984
- tlvs?: (
1985
- | IOrderMetadataJSON
1986
- | IOrderIrcInfoJSON
1987
- | IOrderPositionInfoJSON
1988
- | IBatchFundingGroupJSON
1989
- | unknown
1990
- )[]; // Made optional - for unknown TLVs
1991
- }
1992
- &nbsp;
1993
- export interface IDlcOfferAddresses {
1994
- fundingAddress: string;
1995
- changeAddress: string;
1996
- payoutAddress: string;
1997
- }
1998
- &nbsp;
1999
- export class DlcOfferContainer {
2000
- private offers: DlcOffer[] = [];
2001
- &nbsp;
2002
- /**
2003
- * Adds a DlcOffer to the container.
2004
- * @param offer The DlcOffer to add.
2005
- */
2006
- public addOffer(offer: DlcOffer): void {
2007
- this.offers.push(offer);
2008
- }
2009
- &nbsp;
2010
- /**
2011
- * Returns all DlcOffers in the container.
2012
- * @returns An array of DlcOffer instances.
2013
- */
2014
- public <span class="fstat-no" title="function not covered" >getOffers(</span>): DlcOffer[] {
2015
- <span class="cstat-no" title="statement not covered" > return this.offers;</span>
2016
- }
2017
- &nbsp;
2018
- /**
2019
- * Serializes all DlcOffers in the container to a Buffer.
2020
- * @returns A Buffer containing the serialized DlcOffers.
2021
- */
2022
- public serialize(): Buffer {
2023
- const writer = new BufferWriter();
2024
- // Write the number of offers in the container first.
2025
- writer.writeBigSize(this.offers.length);
2026
- // Serialize each offer and write it.
2027
- this.offers.forEach((offer) =&gt; {
2028
- const serializedOffer = offer.serialize();
2029
- // Optionally, write the length of the serialized offer for easier deserialization.
2030
- writer.writeBigSize(serializedOffer.length);
2031
- writer.writeBytes(serializedOffer);
2032
- });
2033
- return writer.toBuffer();
2034
- }
2035
- &nbsp;
2036
- /**
2037
- * Deserializes a Buffer into a DlcOfferContainer with DlcOffers.
2038
- * @param buf The Buffer to deserialize.
2039
- * @returns A DlcOfferContainer instance.
2040
- */
2041
- public static deserialize(buf: Buffer): DlcOfferContainer {
2042
- const reader = new BufferReader(buf);
2043
- const container = new DlcOfferContainer();
2044
- const offersCount = reader.readBigSize();
2045
- for (let i = 0; i &lt; offersCount; i++) {
2046
- // Optionally, read the length of the serialized offer if it was written during serialization.
2047
- const offerLength = reader.readBigSize();
2048
- const offerBuf = reader.readBytes(Number(offerLength));
2049
- const offer = DlcOffer.deserialize(offerBuf);
2050
- container.addOffer(offer);
2051
- }
2052
- return container;
2053
- }
2054
- }
2055
- &nbsp;</pre></td></tr></table></pre>
2056
-
2057
- <div class='push'></div><!-- for sticky footer -->
2058
- </div><!-- /wrapper -->
2059
- <div class='footer quiet pad2 space-top1 center small'>
2060
- Code coverage generated by
2061
- <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
2062
- at Sat Jul 19 2025 20:06:33 GMT-0700 (Pacific Daylight Saving Time)
2063
- </div>
2064
- </div>
2065
- <script src="../../prettify.js"></script>
2066
- <script>
2067
- window.onload = function () {
2068
- prettyPrint();
2069
- };
2070
- </script>
2071
- <script src="../../sorter.js"></script>
2072
- <script src="../../block-navigation.js"></script>
2073
- </body>
2074
- </html>
2075
-