@bsv/sdk 1.3.13 → 1.3.15

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 (1251) hide show
  1. package/dist/cjs/mod.js +15 -15
  2. package/dist/cjs/mod.js.map +1 -1
  3. package/dist/cjs/package.json +8 -3
  4. package/dist/cjs/src/auth/Peer.js +71 -61
  5. package/dist/cjs/src/auth/Peer.js.map +1 -1
  6. package/dist/cjs/src/auth/SessionManager.js +10 -5
  7. package/dist/cjs/src/auth/SessionManager.js.map +1 -1
  8. package/dist/cjs/src/auth/certificates/Certificate.js +33 -30
  9. package/dist/cjs/src/auth/certificates/Certificate.js.map +1 -1
  10. package/dist/cjs/src/auth/certificates/MasterCertificate.js +36 -36
  11. package/dist/cjs/src/auth/certificates/MasterCertificate.js.map +1 -1
  12. package/dist/cjs/src/auth/certificates/VerifiableCertificate.js +9 -9
  13. package/dist/cjs/src/auth/certificates/VerifiableCertificate.js.map +1 -1
  14. package/dist/cjs/src/auth/certificates/__tests/CompletedProtoWallet.js +45 -29
  15. package/dist/cjs/src/auth/certificates/__tests/CompletedProtoWallet.js.map +1 -1
  16. package/dist/cjs/src/auth/certificates/index.js +5 -5
  17. package/dist/cjs/src/auth/certificates/index.js.map +1 -1
  18. package/dist/cjs/src/auth/clients/AuthFetch.js +65 -74
  19. package/dist/cjs/src/auth/clients/AuthFetch.js.map +1 -1
  20. package/dist/cjs/src/auth/clients/index.js +1 -1
  21. package/dist/cjs/src/auth/clients/index.js.map +1 -1
  22. package/dist/cjs/src/auth/index.js +7 -7
  23. package/dist/cjs/src/auth/index.js.map +1 -1
  24. package/dist/cjs/src/auth/transports/SimplifiedFetchTransport.js +54 -62
  25. package/dist/cjs/src/auth/transports/SimplifiedFetchTransport.js.map +1 -1
  26. package/dist/cjs/src/auth/transports/index.js +1 -1
  27. package/dist/cjs/src/auth/transports/index.js.map +1 -1
  28. package/dist/cjs/src/auth/utils/createNonce.js +6 -5
  29. package/dist/cjs/src/auth/utils/createNonce.js.map +1 -1
  30. package/dist/cjs/src/auth/utils/getVerifiableCertificates.js +2 -2
  31. package/dist/cjs/src/auth/utils/getVerifiableCertificates.js.map +1 -1
  32. package/dist/cjs/src/auth/utils/index.js +4 -4
  33. package/dist/cjs/src/auth/utils/index.js.map +1 -1
  34. package/dist/cjs/src/auth/utils/validateCertificates.js +7 -4
  35. package/dist/cjs/src/auth/utils/validateCertificates.js.map +1 -1
  36. package/dist/cjs/src/auth/utils/verifyNonce.js +5 -4
  37. package/dist/cjs/src/auth/utils/verifyNonce.js.map +1 -1
  38. package/dist/cjs/src/compat/BSM.js +16 -26
  39. package/dist/cjs/src/compat/BSM.js.map +1 -1
  40. package/dist/cjs/src/compat/ECIES.js +50 -52
  41. package/dist/cjs/src/compat/ECIES.js.map +1 -1
  42. package/dist/cjs/src/compat/HD.js +36 -46
  43. package/dist/cjs/src/compat/HD.js.map +1 -1
  44. package/dist/cjs/src/compat/Mnemonic.js +30 -39
  45. package/dist/cjs/src/compat/Mnemonic.js.map +1 -1
  46. package/dist/cjs/src/compat/Utxo.js +5 -5
  47. package/dist/cjs/src/compat/Utxo.js.map +1 -1
  48. package/dist/cjs/src/compat/index.js +16 -26
  49. package/dist/cjs/src/compat/index.js.map +1 -1
  50. package/dist/cjs/src/messages/EncryptedMessage.js +14 -14
  51. package/dist/cjs/src/messages/EncryptedMessage.js.map +1 -1
  52. package/dist/cjs/src/messages/SignedMessage.js +21 -20
  53. package/dist/cjs/src/messages/SignedMessage.js.map +1 -1
  54. package/dist/cjs/src/messages/index.js +9 -19
  55. package/dist/cjs/src/messages/index.js.map +1 -1
  56. package/dist/cjs/src/overlay-tools/LookupResolver.js +44 -32
  57. package/dist/cjs/src/overlay-tools/LookupResolver.js.map +1 -1
  58. package/dist/cjs/src/overlay-tools/OverlayAdminTokenTemplate.js +12 -12
  59. package/dist/cjs/src/overlay-tools/OverlayAdminTokenTemplate.js.map +1 -1
  60. package/dist/cjs/src/overlay-tools/SHIPBroadcaster.js +11 -10
  61. package/dist/cjs/src/overlay-tools/SHIPBroadcaster.js.map +1 -1
  62. package/dist/cjs/src/overlay-tools/index.js +8 -8
  63. package/dist/cjs/src/overlay-tools/index.js.map +1 -1
  64. package/dist/cjs/src/primitives/AESGCM.js +6 -5
  65. package/dist/cjs/src/primitives/AESGCM.js.map +1 -1
  66. package/dist/cjs/src/primitives/BasePoint.js +2 -2
  67. package/dist/cjs/src/primitives/BasePoint.js.map +1 -1
  68. package/dist/cjs/src/primitives/BigNumber.js +5 -4
  69. package/dist/cjs/src/primitives/BigNumber.js.map +1 -1
  70. package/dist/cjs/src/primitives/Curve.js +70 -36
  71. package/dist/cjs/src/primitives/Curve.js.map +1 -1
  72. package/dist/cjs/src/primitives/DRBG.js +6 -6
  73. package/dist/cjs/src/primitives/DRBG.js.map +1 -1
  74. package/dist/cjs/src/primitives/ECDSA.js +71 -55
  75. package/dist/cjs/src/primitives/ECDSA.js.map +1 -1
  76. package/dist/cjs/src/primitives/Hash.js +115 -105
  77. package/dist/cjs/src/primitives/Hash.js.map +1 -1
  78. package/dist/cjs/src/primitives/JacobianPoint.js +25 -15
  79. package/dist/cjs/src/primitives/JacobianPoint.js.map +1 -1
  80. package/dist/cjs/src/primitives/K256.js +2 -2
  81. package/dist/cjs/src/primitives/K256.js.map +1 -1
  82. package/dist/cjs/src/primitives/Mersenne.js +4 -4
  83. package/dist/cjs/src/primitives/Mersenne.js.map +1 -1
  84. package/dist/cjs/src/primitives/MontgomoryMethod.js +5 -5
  85. package/dist/cjs/src/primitives/MontgomoryMethod.js.map +1 -1
  86. package/dist/cjs/src/primitives/Point.js +114 -87
  87. package/dist/cjs/src/primitives/Point.js.map +1 -1
  88. package/dist/cjs/src/primitives/Polynomial.js +14 -14
  89. package/dist/cjs/src/primitives/Polynomial.js.map +1 -1
  90. package/dist/cjs/src/primitives/PrivateKey.js +48 -58
  91. package/dist/cjs/src/primitives/PrivateKey.js.map +1 -1
  92. package/dist/cjs/src/primitives/PublicKey.js +23 -23
  93. package/dist/cjs/src/primitives/PublicKey.js.map +1 -1
  94. package/dist/cjs/src/primitives/Random.js +2 -1
  95. package/dist/cjs/src/primitives/Random.js.map +1 -1
  96. package/dist/cjs/src/primitives/ReductionContext.js +10 -10
  97. package/dist/cjs/src/primitives/ReductionContext.js.map +1 -1
  98. package/dist/cjs/src/primitives/Schnorr.js +8 -8
  99. package/dist/cjs/src/primitives/Schnorr.js.map +1 -1
  100. package/dist/cjs/src/primitives/Signature.js +23 -23
  101. package/dist/cjs/src/primitives/Signature.js.map +1 -1
  102. package/dist/cjs/src/primitives/SymmetricKey.js +13 -13
  103. package/dist/cjs/src/primitives/SymmetricKey.js.map +1 -1
  104. package/dist/cjs/src/primitives/TransactionSignature.js +38 -38
  105. package/dist/cjs/src/primitives/TransactionSignature.js.map +1 -1
  106. package/dist/cjs/src/primitives/index.js +34 -44
  107. package/dist/cjs/src/primitives/index.js.map +1 -1
  108. package/dist/cjs/src/primitives/utils.js +38 -37
  109. package/dist/cjs/src/primitives/utils.js.map +1 -1
  110. package/dist/cjs/src/script/LockingScript.js +2 -2
  111. package/dist/cjs/src/script/LockingScript.js.map +1 -1
  112. package/dist/cjs/src/script/OP.js +3 -3
  113. package/dist/cjs/src/script/OP.js.map +1 -1
  114. package/dist/cjs/src/script/Script.js +47 -47
  115. package/dist/cjs/src/script/Script.js.map +1 -1
  116. package/dist/cjs/src/script/Spend.js +304 -311
  117. package/dist/cjs/src/script/Spend.js.map +1 -1
  118. package/dist/cjs/src/script/UnlockingScript.js +2 -2
  119. package/dist/cjs/src/script/UnlockingScript.js.map +1 -1
  120. package/dist/cjs/src/script/index.js +11 -11
  121. package/dist/cjs/src/script/index.js.map +1 -1
  122. package/dist/cjs/src/script/templates/P2PKH.js +55 -47
  123. package/dist/cjs/src/script/templates/P2PKH.js.map +1 -1
  124. package/dist/cjs/src/script/templates/PushDrop.js +57 -51
  125. package/dist/cjs/src/script/templates/PushDrop.js.map +1 -1
  126. package/dist/cjs/src/script/templates/RPuzzle.js +49 -48
  127. package/dist/cjs/src/script/templates/RPuzzle.js.map +1 -1
  128. package/dist/cjs/src/script/templates/index.js +6 -6
  129. package/dist/cjs/src/script/templates/index.js.map +1 -1
  130. package/dist/cjs/src/totp/index.js +1 -1
  131. package/dist/cjs/src/totp/index.js.map +1 -1
  132. package/dist/cjs/src/totp/totp.js +9 -8
  133. package/dist/cjs/src/totp/totp.js.map +1 -1
  134. package/dist/cjs/src/transaction/Beef.js +78 -67
  135. package/dist/cjs/src/transaction/Beef.js.map +1 -1
  136. package/dist/cjs/src/transaction/BeefParty.js +5 -5
  137. package/dist/cjs/src/transaction/BeefParty.js.map +1 -1
  138. package/dist/cjs/src/transaction/BeefTx.js +39 -33
  139. package/dist/cjs/src/transaction/BeefTx.js.map +1 -1
  140. package/dist/cjs/src/transaction/Broadcaster.js +3 -2
  141. package/dist/cjs/src/transaction/Broadcaster.js.map +1 -1
  142. package/dist/cjs/src/transaction/MerklePath.js +60 -38
  143. package/dist/cjs/src/transaction/MerklePath.js.map +1 -1
  144. package/dist/cjs/src/transaction/Transaction.js +127 -85
  145. package/dist/cjs/src/transaction/Transaction.js.map +1 -1
  146. package/dist/cjs/src/transaction/broadcasters/ARC.js +48 -43
  147. package/dist/cjs/src/transaction/broadcasters/ARC.js.map +1 -1
  148. package/dist/cjs/src/transaction/broadcasters/DefaultBroadcaster.js +4 -3
  149. package/dist/cjs/src/transaction/broadcasters/DefaultBroadcaster.js.map +1 -1
  150. package/dist/cjs/src/transaction/broadcasters/WhatsOnChainBroadcaster.js +15 -15
  151. package/dist/cjs/src/transaction/broadcasters/WhatsOnChainBroadcaster.js.map +1 -1
  152. package/dist/cjs/src/transaction/broadcasters/index.js +6 -6
  153. package/dist/cjs/src/transaction/broadcasters/index.js.map +1 -1
  154. package/dist/cjs/src/transaction/chaintrackers/DefaultChainTracker.js +4 -3
  155. package/dist/cjs/src/transaction/chaintrackers/DefaultChainTracker.js.map +1 -1
  156. package/dist/cjs/src/transaction/chaintrackers/WhatsOnChain.js +11 -11
  157. package/dist/cjs/src/transaction/chaintrackers/WhatsOnChain.js.map +1 -1
  158. package/dist/cjs/src/transaction/chaintrackers/index.js +4 -4
  159. package/dist/cjs/src/transaction/chaintrackers/index.js.map +1 -1
  160. package/dist/cjs/src/transaction/fee-models/SatoshisPerKilobyte.js +3 -3
  161. package/dist/cjs/src/transaction/fee-models/SatoshisPerKilobyte.js.map +1 -1
  162. package/dist/cjs/src/transaction/fee-models/index.js +2 -2
  163. package/dist/cjs/src/transaction/fee-models/index.js.map +1 -1
  164. package/dist/cjs/src/transaction/http/DefaultHttpClient.js +12 -10
  165. package/dist/cjs/src/transaction/http/DefaultHttpClient.js.map +1 -1
  166. package/dist/cjs/src/transaction/http/FetchHttpClient.js +2 -1
  167. package/dist/cjs/src/transaction/http/FetchHttpClient.js.map +1 -1
  168. package/dist/cjs/src/transaction/http/NodejsHttpClient.js +8 -8
  169. package/dist/cjs/src/transaction/http/NodejsHttpClient.js.map +1 -1
  170. package/dist/cjs/src/transaction/http/index.js +6 -6
  171. package/dist/cjs/src/transaction/http/index.js.map +1 -1
  172. package/dist/cjs/src/transaction/index.js +12 -12
  173. package/dist/cjs/src/transaction/index.js.map +1 -1
  174. package/dist/cjs/src/wallet/CachedKeyDeriver.js +34 -11
  175. package/dist/cjs/src/wallet/CachedKeyDeriver.js.map +1 -1
  176. package/dist/cjs/src/wallet/KeyDeriver.js +10 -9
  177. package/dist/cjs/src/wallet/KeyDeriver.js.map +1 -1
  178. package/dist/cjs/src/wallet/ProtoWallet.js +68 -31
  179. package/dist/cjs/src/wallet/ProtoWallet.js.map +1 -1
  180. package/dist/cjs/src/wallet/WalletClient.js +18 -14
  181. package/dist/cjs/src/wallet/WalletClient.js.map +1 -1
  182. package/dist/cjs/src/wallet/WalletError.js +2 -2
  183. package/dist/cjs/src/wallet/WalletError.js.map +1 -1
  184. package/dist/cjs/src/wallet/index.js +12 -12
  185. package/dist/cjs/src/wallet/index.js.map +1 -1
  186. package/dist/cjs/src/wallet/substrates/HTTPWalletJSON.js +2 -1
  187. package/dist/cjs/src/wallet/substrates/HTTPWalletJSON.js.map +1 -1
  188. package/dist/cjs/src/wallet/substrates/HTTPWalletWire.js +11 -11
  189. package/dist/cjs/src/wallet/substrates/HTTPWalletWire.js.map +1 -1
  190. package/dist/cjs/src/wallet/substrates/WalletWireCalls.js.map +1 -1
  191. package/dist/cjs/src/wallet/substrates/WalletWireProcessor.js +239 -238
  192. package/dist/cjs/src/wallet/substrates/WalletWireProcessor.js.map +1 -1
  193. package/dist/cjs/src/wallet/substrates/WalletWireTransceiver.js +311 -300
  194. package/dist/cjs/src/wallet/substrates/WalletWireTransceiver.js.map +1 -1
  195. package/dist/cjs/src/wallet/substrates/XDM.js +9 -7
  196. package/dist/cjs/src/wallet/substrates/XDM.js.map +1 -1
  197. package/dist/cjs/src/wallet/substrates/index.js +12 -12
  198. package/dist/cjs/src/wallet/substrates/index.js.map +1 -1
  199. package/dist/cjs/src/wallet/substrates/window.CWI.js +32 -32
  200. package/dist/cjs/src/wallet/substrates/window.CWI.js.map +1 -1
  201. package/dist/cjs/tsconfig.cjs.tsbuildinfo +1 -1
  202. package/dist/esm/mod.js +15 -31
  203. package/dist/esm/mod.js.map +1 -1
  204. package/dist/esm/src/auth/Peer.js +64 -63
  205. package/dist/esm/src/auth/Peer.js.map +1 -1
  206. package/dist/esm/src/auth/SessionManager.js +11 -10
  207. package/dist/esm/src/auth/SessionManager.js.map +1 -1
  208. package/dist/esm/src/auth/certificates/Certificate.js +32 -34
  209. package/dist/esm/src/auth/certificates/Certificate.js.map +1 -1
  210. package/dist/esm/src/auth/certificates/MasterCertificate.js +36 -43
  211. package/dist/esm/src/auth/certificates/MasterCertificate.js.map +1 -1
  212. package/dist/esm/src/auth/certificates/VerifiableCertificate.js +9 -16
  213. package/dist/esm/src/auth/certificates/VerifiableCertificate.js.map +1 -1
  214. package/dist/esm/src/auth/certificates/__tests/CompletedProtoWallet.js +46 -33
  215. package/dist/esm/src/auth/certificates/__tests/CompletedProtoWallet.js.map +1 -1
  216. package/dist/esm/src/auth/certificates/index.js +4 -25
  217. package/dist/esm/src/auth/certificates/index.js.map +1 -1
  218. package/dist/esm/src/auth/clients/AuthFetch.js +66 -79
  219. package/dist/esm/src/auth/clients/AuthFetch.js.map +1 -1
  220. package/dist/esm/src/auth/clients/index.js +1 -17
  221. package/dist/esm/src/auth/clients/index.js.map +1 -1
  222. package/dist/esm/src/auth/index.js +7 -23
  223. package/dist/esm/src/auth/index.js.map +1 -1
  224. package/dist/esm/src/auth/transports/SimplifiedFetchTransport.js +55 -67
  225. package/dist/esm/src/auth/transports/SimplifiedFetchTransport.js.map +1 -1
  226. package/dist/esm/src/auth/transports/index.js +1 -17
  227. package/dist/esm/src/auth/transports/index.js.map +1 -1
  228. package/dist/esm/src/auth/types.js +1 -2
  229. package/dist/esm/src/auth/utils/createNonce.js +5 -8
  230. package/dist/esm/src/auth/utils/createNonce.js.map +1 -1
  231. package/dist/esm/src/auth/utils/getVerifiableCertificates.js +3 -7
  232. package/dist/esm/src/auth/utils/getVerifiableCertificates.js.map +1 -1
  233. package/dist/esm/src/auth/utils/index.js +4 -20
  234. package/dist/esm/src/auth/utils/index.js.map +1 -1
  235. package/dist/esm/src/auth/utils/validateCertificates.js +8 -9
  236. package/dist/esm/src/auth/utils/validateCertificates.js.map +1 -1
  237. package/dist/esm/src/auth/utils/verifyNonce.js +4 -7
  238. package/dist/esm/src/auth/utils/verifyNonce.js.map +1 -1
  239. package/dist/esm/src/compat/BSM.js +14 -56
  240. package/dist/esm/src/compat/BSM.js.map +1 -1
  241. package/dist/esm/src/compat/ECIES.js +44 -75
  242. package/dist/esm/src/compat/ECIES.js.map +1 -1
  243. package/dist/esm/src/compat/HD.js +30 -69
  244. package/dist/esm/src/compat/HD.js.map +1 -1
  245. package/dist/esm/src/compat/Mnemonic.js +24 -62
  246. package/dist/esm/src/compat/Mnemonic.js.map +1 -1
  247. package/dist/esm/src/compat/Utxo.js +5 -11
  248. package/dist/esm/src/compat/Utxo.js.map +1 -1
  249. package/dist/esm/src/compat/bip-39-wordlist-en.js +1 -4
  250. package/dist/esm/src/compat/bip-39-wordlist-en.js.map +1 -1
  251. package/dist/esm/src/compat/index.js +5 -48
  252. package/dist/esm/src/compat/index.js.map +1 -1
  253. package/dist/esm/src/messages/EncryptedMessage.js +16 -24
  254. package/dist/esm/src/messages/EncryptedMessage.js.map +1 -1
  255. package/dist/esm/src/messages/SignedMessage.js +23 -30
  256. package/dist/esm/src/messages/SignedMessage.js.map +1 -1
  257. package/dist/esm/src/messages/index.js +2 -38
  258. package/dist/esm/src/messages/index.js.map +1 -1
  259. package/dist/esm/src/overlay-tools/LookupResolver.js +46 -43
  260. package/dist/esm/src/overlay-tools/LookupResolver.js.map +1 -1
  261. package/dist/esm/src/overlay-tools/OverlayAdminTokenTemplate.js +13 -19
  262. package/dist/esm/src/overlay-tools/OverlayAdminTokenTemplate.js.map +1 -1
  263. package/dist/esm/src/overlay-tools/SHIPBroadcaster.js +13 -20
  264. package/dist/esm/src/overlay-tools/SHIPBroadcaster.js.map +1 -1
  265. package/dist/esm/src/overlay-tools/index.js +5 -28
  266. package/dist/esm/src/overlay-tools/index.js.map +1 -1
  267. package/dist/esm/src/primitives/AESGCM.js +27 -39
  268. package/dist/esm/src/primitives/AESGCM.js.map +1 -1
  269. package/dist/esm/src/primitives/BasePoint.js +3 -9
  270. package/dist/esm/src/primitives/BasePoint.js.map +1 -1
  271. package/dist/esm/src/primitives/BigNumber.js +6 -8
  272. package/dist/esm/src/primitives/BigNumber.js.map +1 -1
  273. package/dist/esm/src/primitives/Curve.js +70 -43
  274. package/dist/esm/src/primitives/Curve.js.map +1 -1
  275. package/dist/esm/src/primitives/DRBG.js +7 -10
  276. package/dist/esm/src/primitives/DRBG.js.map +1 -1
  277. package/dist/esm/src/primitives/ECDSA.js +72 -65
  278. package/dist/esm/src/primitives/ECDSA.js.map +1 -1
  279. package/dist/esm/src/primitives/Hash.js +131 -141
  280. package/dist/esm/src/primitives/Hash.js.map +1 -1
  281. package/dist/esm/src/primitives/JacobianPoint.js +24 -21
  282. package/dist/esm/src/primitives/JacobianPoint.js.map +1 -1
  283. package/dist/esm/src/primitives/K256.js +2 -8
  284. package/dist/esm/src/primitives/K256.js.map +1 -1
  285. package/dist/esm/src/primitives/Mersenne.js +5 -11
  286. package/dist/esm/src/primitives/Mersenne.js.map +1 -1
  287. package/dist/esm/src/primitives/MontgomoryMethod.js +5 -11
  288. package/dist/esm/src/primitives/MontgomoryMethod.js.map +1 -1
  289. package/dist/esm/src/primitives/Point.js +104 -93
  290. package/dist/esm/src/primitives/Point.js.map +1 -1
  291. package/dist/esm/src/primitives/Polynomial.js +16 -24
  292. package/dist/esm/src/primitives/Polynomial.js.map +1 -1
  293. package/dist/esm/src/primitives/PrivateKey.js +42 -83
  294. package/dist/esm/src/primitives/PrivateKey.js.map +1 -1
  295. package/dist/esm/src/primitives/PublicKey.js +23 -29
  296. package/dist/esm/src/primitives/PublicKey.js.map +1 -1
  297. package/dist/esm/src/primitives/Random.js +4 -5
  298. package/dist/esm/src/primitives/Random.js.map +1 -1
  299. package/dist/esm/src/primitives/ReductionContext.js +11 -17
  300. package/dist/esm/src/primitives/ReductionContext.js.map +1 -1
  301. package/dist/esm/src/primitives/Schnorr.js +9 -15
  302. package/dist/esm/src/primitives/Schnorr.js.map +1 -1
  303. package/dist/esm/src/primitives/Signature.js +24 -30
  304. package/dist/esm/src/primitives/Signature.js.map +1 -1
  305. package/dist/esm/src/primitives/SymmetricKey.js +13 -19
  306. package/dist/esm/src/primitives/SymmetricKey.js.map +1 -1
  307. package/dist/esm/src/primitives/TransactionSignature.js +29 -60
  308. package/dist/esm/src/primitives/TransactionSignature.js.map +1 -1
  309. package/dist/esm/src/primitives/index.js +14 -66
  310. package/dist/esm/src/primitives/index.js.map +1 -1
  311. package/dist/esm/src/primitives/utils.js +55 -74
  312. package/dist/esm/src/primitives/utils.js.map +1 -1
  313. package/dist/esm/src/script/LockingScript.js +2 -8
  314. package/dist/esm/src/script/LockingScript.js.map +1 -1
  315. package/dist/esm/src/script/OP.js +4 -6
  316. package/dist/esm/src/script/OP.js.map +1 -1
  317. package/dist/esm/src/script/Script.js +48 -54
  318. package/dist/esm/src/script/Script.js.map +1 -1
  319. package/dist/esm/src/script/ScriptChunk.js +1 -2
  320. package/dist/esm/src/script/ScriptTemplate.js +1 -2
  321. package/dist/esm/src/script/Spend.js +297 -334
  322. package/dist/esm/src/script/Spend.js.map +1 -1
  323. package/dist/esm/src/script/UnlockingScript.js +2 -8
  324. package/dist/esm/src/script/UnlockingScript.js.map +1 -1
  325. package/dist/esm/src/script/index.js +6 -31
  326. package/dist/esm/src/script/index.js.map +1 -1
  327. package/dist/esm/src/script/templates/P2PKH.js +53 -51
  328. package/dist/esm/src/script/templates/P2PKH.js.map +1 -1
  329. package/dist/esm/src/script/templates/PushDrop.js +54 -52
  330. package/dist/esm/src/script/templates/PushDrop.js.map +1 -1
  331. package/dist/esm/src/script/templates/RPuzzle.js +51 -55
  332. package/dist/esm/src/script/templates/RPuzzle.js.map +1 -1
  333. package/dist/esm/src/script/templates/index.js +3 -12
  334. package/dist/esm/src/script/templates/index.js.map +1 -1
  335. package/dist/esm/src/totp/index.js +1 -17
  336. package/dist/esm/src/totp/index.js.map +1 -1
  337. package/dist/esm/src/totp/totp.js +10 -16
  338. package/dist/esm/src/totp/totp.js.map +1 -1
  339. package/dist/esm/src/transaction/Beef.js +89 -86
  340. package/dist/esm/src/transaction/Beef.js.map +1 -1
  341. package/dist/esm/src/transaction/BeefParty.js +6 -10
  342. package/dist/esm/src/transaction/BeefParty.js.map +1 -1
  343. package/dist/esm/src/transaction/BeefTx.js +40 -40
  344. package/dist/esm/src/transaction/BeefTx.js.map +1 -1
  345. package/dist/esm/src/transaction/Broadcaster.js +2 -6
  346. package/dist/esm/src/transaction/Broadcaster.js.map +1 -1
  347. package/dist/esm/src/transaction/ChainTracker.js +1 -2
  348. package/dist/esm/src/transaction/FeeModel.js +1 -2
  349. package/dist/esm/src/transaction/MerklePath.js +58 -41
  350. package/dist/esm/src/transaction/MerklePath.js.map +1 -1
  351. package/dist/esm/src/transaction/Transaction.js +121 -92
  352. package/dist/esm/src/transaction/Transaction.js.map +1 -1
  353. package/dist/esm/src/transaction/TransactionInput.js +1 -2
  354. package/dist/esm/src/transaction/TransactionOutput.js +1 -2
  355. package/dist/esm/src/transaction/broadcasters/ARC.js +49 -50
  356. package/dist/esm/src/transaction/broadcasters/ARC.js.map +1 -1
  357. package/dist/esm/src/transaction/broadcasters/DefaultBroadcaster.js +3 -9
  358. package/dist/esm/src/transaction/broadcasters/DefaultBroadcaster.js.map +1 -1
  359. package/dist/esm/src/transaction/broadcasters/WhatsOnChainBroadcaster.js +16 -19
  360. package/dist/esm/src/transaction/broadcasters/WhatsOnChainBroadcaster.js.map +1 -1
  361. package/dist/esm/src/transaction/broadcasters/index.js +3 -12
  362. package/dist/esm/src/transaction/broadcasters/index.js.map +1 -1
  363. package/dist/esm/src/transaction/chaintrackers/DefaultChainTracker.js +3 -9
  364. package/dist/esm/src/transaction/chaintrackers/DefaultChainTracker.js.map +1 -1
  365. package/dist/esm/src/transaction/chaintrackers/WhatsOnChain.js +12 -15
  366. package/dist/esm/src/transaction/chaintrackers/WhatsOnChain.js.map +1 -1
  367. package/dist/esm/src/transaction/chaintrackers/index.js +2 -10
  368. package/dist/esm/src/transaction/chaintrackers/index.js.map +1 -1
  369. package/dist/esm/src/transaction/fee-models/SatoshisPerKilobyte.js +4 -7
  370. package/dist/esm/src/transaction/fee-models/SatoshisPerKilobyte.js.map +1 -1
  371. package/dist/esm/src/transaction/fee-models/index.js +1 -8
  372. package/dist/esm/src/transaction/fee-models/index.js.map +1 -1
  373. package/dist/esm/src/transaction/http/DefaultHttpClient.js +11 -13
  374. package/dist/esm/src/transaction/http/DefaultHttpClient.js.map +1 -1
  375. package/dist/esm/src/transaction/http/FetchHttpClient.js +2 -6
  376. package/dist/esm/src/transaction/http/FetchHttpClient.js.map +1 -1
  377. package/dist/esm/src/transaction/http/HttpClient.js +1 -2
  378. package/dist/esm/src/transaction/http/NodejsHttpClient.js +9 -13
  379. package/dist/esm/src/transaction/http/NodejsHttpClient.js.map +1 -1
  380. package/dist/esm/src/transaction/http/index.js +3 -9
  381. package/dist/esm/src/transaction/http/index.js.map +1 -1
  382. package/dist/esm/src/transaction/index.js +6 -32
  383. package/dist/esm/src/transaction/index.js.map +1 -1
  384. package/dist/esm/src/wallet/CachedKeyDeriver.js +35 -15
  385. package/dist/esm/src/wallet/CachedKeyDeriver.js.map +1 -1
  386. package/dist/esm/src/wallet/KeyDeriver.js +11 -15
  387. package/dist/esm/src/wallet/KeyDeriver.js.map +1 -1
  388. package/dist/esm/src/wallet/ProtoWallet.js +66 -37
  389. package/dist/esm/src/wallet/ProtoWallet.js.map +1 -1
  390. package/dist/esm/src/wallet/Wallet.interfaces.js +2 -5
  391. package/dist/esm/src/wallet/Wallet.interfaces.js.map +1 -1
  392. package/dist/esm/src/wallet/WalletClient.js +19 -21
  393. package/dist/esm/src/wallet/WalletClient.js.map +1 -1
  394. package/dist/esm/src/wallet/WalletError.js +4 -8
  395. package/dist/esm/src/wallet/WalletError.js.map +1 -1
  396. package/dist/esm/src/wallet/index.js +8 -32
  397. package/dist/esm/src/wallet/index.js.map +1 -1
  398. package/dist/esm/src/wallet/substrates/HTTPWalletJSON.js +3 -6
  399. package/dist/esm/src/wallet/substrates/HTTPWalletJSON.js.map +1 -1
  400. package/dist/esm/src/wallet/substrates/HTTPWalletWire.js +12 -18
  401. package/dist/esm/src/wallet/substrates/HTTPWalletWire.js.map +1 -1
  402. package/dist/esm/src/wallet/substrates/WalletWire.js +1 -2
  403. package/dist/esm/src/wallet/substrates/WalletWireCalls.js +1 -3
  404. package/dist/esm/src/wallet/substrates/WalletWireCalls.js.map +1 -1
  405. package/dist/esm/src/wallet/substrates/WalletWireProcessor.js +240 -245
  406. package/dist/esm/src/wallet/substrates/WalletWireProcessor.js.map +1 -1
  407. package/dist/esm/src/wallet/substrates/WalletWireTransceiver.js +305 -307
  408. package/dist/esm/src/wallet/substrates/WalletWireTransceiver.js.map +1 -1
  409. package/dist/esm/src/wallet/substrates/XDM.js +10 -11
  410. package/dist/esm/src/wallet/substrates/XDM.js.map +1 -1
  411. package/dist/esm/src/wallet/substrates/index.js +7 -32
  412. package/dist/esm/src/wallet/substrates/index.js.map +1 -1
  413. package/dist/esm/src/wallet/substrates/window.CWI.js +33 -36
  414. package/dist/esm/src/wallet/substrates/window.CWI.js.map +1 -1
  415. package/dist/esm/tsconfig.esm.tsbuildinfo +1 -1
  416. package/dist/types/mod.d.ts +15 -15
  417. package/dist/types/mod.d.ts.map +1 -1
  418. package/dist/types/src/auth/Peer.d.ts +4 -4
  419. package/dist/types/src/auth/Peer.d.ts.map +1 -1
  420. package/dist/types/src/auth/SessionManager.d.ts +1 -1
  421. package/dist/types/src/auth/SessionManager.d.ts.map +1 -1
  422. package/dist/types/src/auth/certificates/Certificate.d.ts +6 -6
  423. package/dist/types/src/auth/certificates/Certificate.d.ts.map +1 -1
  424. package/dist/types/src/auth/certificates/MasterCertificate.d.ts +6 -6
  425. package/dist/types/src/auth/certificates/MasterCertificate.d.ts.map +1 -1
  426. package/dist/types/src/auth/certificates/VerifiableCertificate.d.ts +2 -2
  427. package/dist/types/src/auth/certificates/VerifiableCertificate.d.ts.map +1 -1
  428. package/dist/types/src/auth/certificates/__tests/CompletedProtoWallet.d.ts +23 -22
  429. package/dist/types/src/auth/certificates/__tests/CompletedProtoWallet.d.ts.map +1 -1
  430. package/dist/types/src/auth/certificates/index.d.ts +4 -4
  431. package/dist/types/src/auth/certificates/index.d.ts.map +1 -1
  432. package/dist/types/src/auth/clients/AuthFetch.d.ts +9 -9
  433. package/dist/types/src/auth/clients/AuthFetch.d.ts.map +1 -1
  434. package/dist/types/src/auth/clients/index.d.ts +1 -1
  435. package/dist/types/src/auth/clients/index.d.ts.map +1 -1
  436. package/dist/types/src/auth/index.d.ts +7 -7
  437. package/dist/types/src/auth/index.d.ts.map +1 -1
  438. package/dist/types/src/auth/transports/SimplifiedFetchTransport.d.ts +1 -1
  439. package/dist/types/src/auth/transports/SimplifiedFetchTransport.d.ts.map +1 -1
  440. package/dist/types/src/auth/transports/index.d.ts +1 -1
  441. package/dist/types/src/auth/transports/index.d.ts.map +1 -1
  442. package/dist/types/src/auth/types.d.ts +1 -1
  443. package/dist/types/src/auth/types.d.ts.map +1 -1
  444. package/dist/types/src/auth/utils/createNonce.d.ts +1 -1
  445. package/dist/types/src/auth/utils/createNonce.d.ts.map +1 -1
  446. package/dist/types/src/auth/utils/getVerifiableCertificates.d.ts +3 -3
  447. package/dist/types/src/auth/utils/getVerifiableCertificates.d.ts.map +1 -1
  448. package/dist/types/src/auth/utils/index.d.ts +4 -4
  449. package/dist/types/src/auth/utils/index.d.ts.map +1 -1
  450. package/dist/types/src/auth/utils/validateCertificates.d.ts +2 -2
  451. package/dist/types/src/auth/utils/validateCertificates.d.ts.map +1 -1
  452. package/dist/types/src/auth/utils/verifyNonce.d.ts +1 -1
  453. package/dist/types/src/auth/utils/verifyNonce.d.ts.map +1 -1
  454. package/dist/types/src/compat/BSM.d.ts +4 -4
  455. package/dist/types/src/compat/BSM.d.ts.map +1 -1
  456. package/dist/types/src/compat/ECIES.d.ts +2 -2
  457. package/dist/types/src/compat/ECIES.d.ts.map +1 -1
  458. package/dist/types/src/compat/HD.d.ts +2 -2
  459. package/dist/types/src/compat/HD.d.ts.map +1 -1
  460. package/dist/types/src/compat/Mnemonic.d.ts.map +1 -1
  461. package/dist/types/src/compat/Utxo.d.ts +3 -3
  462. package/dist/types/src/compat/Utxo.d.ts.map +1 -1
  463. package/dist/types/src/compat/index.d.ts +5 -5
  464. package/dist/types/src/compat/index.d.ts.map +1 -1
  465. package/dist/types/src/messages/EncryptedMessage.d.ts +2 -2
  466. package/dist/types/src/messages/EncryptedMessage.d.ts.map +1 -1
  467. package/dist/types/src/messages/SignedMessage.d.ts +2 -2
  468. package/dist/types/src/messages/SignedMessage.d.ts.map +1 -1
  469. package/dist/types/src/messages/index.d.ts +2 -2
  470. package/dist/types/src/messages/index.d.ts.map +1 -1
  471. package/dist/types/src/overlay-tools/LookupResolver.d.ts.map +1 -1
  472. package/dist/types/src/overlay-tools/OverlayAdminTokenTemplate.d.ts +4 -4
  473. package/dist/types/src/overlay-tools/OverlayAdminTokenTemplate.d.ts.map +1 -1
  474. package/dist/types/src/overlay-tools/SHIPBroadcaster.d.ts +2 -2
  475. package/dist/types/src/overlay-tools/SHIPBroadcaster.d.ts.map +1 -1
  476. package/dist/types/src/overlay-tools/index.d.ts +5 -5
  477. package/dist/types/src/overlay-tools/index.d.ts.map +1 -1
  478. package/dist/types/src/primitives/AESGCM.d.ts.map +1 -1
  479. package/dist/types/src/primitives/BasePoint.d.ts +9 -9
  480. package/dist/types/src/primitives/BasePoint.d.ts.map +1 -1
  481. package/dist/types/src/primitives/BigNumber.d.ts +1 -1
  482. package/dist/types/src/primitives/BigNumber.d.ts.map +1 -1
  483. package/dist/types/src/primitives/Curve.d.ts +17 -10
  484. package/dist/types/src/primitives/Curve.d.ts.map +1 -1
  485. package/dist/types/src/primitives/DRBG.d.ts +1 -1
  486. package/dist/types/src/primitives/DRBG.d.ts.map +1 -1
  487. package/dist/types/src/primitives/ECDSA.d.ts +4 -4
  488. package/dist/types/src/primitives/ECDSA.d.ts.map +1 -1
  489. package/dist/types/src/primitives/Hash.d.ts +11 -11
  490. package/dist/types/src/primitives/Hash.d.ts.map +1 -1
  491. package/dist/types/src/primitives/JacobianPoint.d.ts +3 -3
  492. package/dist/types/src/primitives/JacobianPoint.d.ts.map +1 -1
  493. package/dist/types/src/primitives/K256.d.ts +2 -2
  494. package/dist/types/src/primitives/K256.d.ts.map +1 -1
  495. package/dist/types/src/primitives/Mersenne.d.ts +1 -1
  496. package/dist/types/src/primitives/Mersenne.d.ts.map +1 -1
  497. package/dist/types/src/primitives/MontgomoryMethod.d.ts +2 -2
  498. package/dist/types/src/primitives/MontgomoryMethod.d.ts.map +1 -1
  499. package/dist/types/src/primitives/Point.d.ts +3 -3
  500. package/dist/types/src/primitives/Point.d.ts.map +1 -1
  501. package/dist/types/src/primitives/Polynomial.d.ts +2 -2
  502. package/dist/types/src/primitives/Polynomial.d.ts.map +1 -1
  503. package/dist/types/src/primitives/PrivateKey.d.ts +7 -7
  504. package/dist/types/src/primitives/PrivateKey.d.ts.map +1 -1
  505. package/dist/types/src/primitives/PublicKey.d.ts +4 -4
  506. package/dist/types/src/primitives/PublicKey.d.ts.map +1 -1
  507. package/dist/types/src/primitives/Random.d.ts.map +1 -1
  508. package/dist/types/src/primitives/ReductionContext.d.ts +2 -2
  509. package/dist/types/src/primitives/ReductionContext.d.ts.map +1 -1
  510. package/dist/types/src/primitives/Schnorr.d.ts +3 -3
  511. package/dist/types/src/primitives/Schnorr.d.ts.map +1 -1
  512. package/dist/types/src/primitives/Signature.d.ts +3 -3
  513. package/dist/types/src/primitives/Signature.d.ts.map +1 -1
  514. package/dist/types/src/primitives/SymmetricKey.d.ts +1 -1
  515. package/dist/types/src/primitives/SymmetricKey.d.ts.map +1 -1
  516. package/dist/types/src/primitives/TransactionSignature.d.ts +5 -5
  517. package/dist/types/src/primitives/TransactionSignature.d.ts.map +1 -1
  518. package/dist/types/src/primitives/index.d.ts +14 -14
  519. package/dist/types/src/primitives/index.d.ts.map +1 -1
  520. package/dist/types/src/primitives/utils.d.ts +4 -7
  521. package/dist/types/src/primitives/utils.d.ts.map +1 -1
  522. package/dist/types/src/script/LockingScript.d.ts +1 -1
  523. package/dist/types/src/script/LockingScript.d.ts.map +1 -1
  524. package/dist/types/src/script/Script.d.ts +2 -2
  525. package/dist/types/src/script/Script.d.ts.map +1 -1
  526. package/dist/types/src/script/ScriptTemplate.d.ts +5 -5
  527. package/dist/types/src/script/ScriptTemplate.d.ts.map +1 -1
  528. package/dist/types/src/script/Spend.d.ts +4 -4
  529. package/dist/types/src/script/Spend.d.ts.map +1 -1
  530. package/dist/types/src/script/UnlockingScript.d.ts +1 -1
  531. package/dist/types/src/script/UnlockingScript.d.ts.map +1 -1
  532. package/dist/types/src/script/index.d.ts +7 -7
  533. package/dist/types/src/script/index.d.ts.map +1 -1
  534. package/dist/types/src/script/templates/P2PKH.d.ts +7 -7
  535. package/dist/types/src/script/templates/P2PKH.d.ts.map +1 -1
  536. package/dist/types/src/script/templates/PushDrop.d.ts +6 -7
  537. package/dist/types/src/script/templates/PushDrop.d.ts.map +1 -1
  538. package/dist/types/src/script/templates/RPuzzle.d.ts +9 -9
  539. package/dist/types/src/script/templates/RPuzzle.d.ts.map +1 -1
  540. package/dist/types/src/script/templates/index.d.ts +3 -3
  541. package/dist/types/src/script/templates/index.d.ts.map +1 -1
  542. package/dist/types/src/totp/index.d.ts +1 -1
  543. package/dist/types/src/totp/index.d.ts.map +1 -1
  544. package/dist/types/src/totp/totp.d.ts.map +1 -1
  545. package/dist/types/src/transaction/Beef.d.ts +10 -10
  546. package/dist/types/src/transaction/Beef.d.ts.map +1 -1
  547. package/dist/types/src/transaction/BeefParty.d.ts +1 -1
  548. package/dist/types/src/transaction/BeefParty.d.ts.map +1 -1
  549. package/dist/types/src/transaction/BeefTx.d.ts +4 -4
  550. package/dist/types/src/transaction/BeefTx.d.ts.map +1 -1
  551. package/dist/types/src/transaction/Broadcaster.d.ts +1 -1
  552. package/dist/types/src/transaction/Broadcaster.d.ts.map +1 -1
  553. package/dist/types/src/transaction/FeeModel.d.ts +1 -1
  554. package/dist/types/src/transaction/FeeModel.d.ts.map +1 -1
  555. package/dist/types/src/transaction/MerklePath.d.ts +2 -2
  556. package/dist/types/src/transaction/MerklePath.d.ts.map +1 -1
  557. package/dist/types/src/transaction/Transaction.d.ts +7 -7
  558. package/dist/types/src/transaction/Transaction.d.ts.map +1 -1
  559. package/dist/types/src/transaction/TransactionInput.d.ts +2 -2
  560. package/dist/types/src/transaction/TransactionInput.d.ts.map +1 -1
  561. package/dist/types/src/transaction/TransactionOutput.d.ts +1 -1
  562. package/dist/types/src/transaction/TransactionOutput.d.ts.map +1 -1
  563. package/dist/types/src/transaction/broadcasters/ARC.d.ts +4 -4
  564. package/dist/types/src/transaction/broadcasters/ARC.d.ts.map +1 -1
  565. package/dist/types/src/transaction/broadcasters/DefaultBroadcaster.d.ts +2 -2
  566. package/dist/types/src/transaction/broadcasters/DefaultBroadcaster.d.ts.map +1 -1
  567. package/dist/types/src/transaction/broadcasters/WhatsOnChainBroadcaster.d.ts +4 -4
  568. package/dist/types/src/transaction/broadcasters/WhatsOnChainBroadcaster.d.ts.map +1 -1
  569. package/dist/types/src/transaction/broadcasters/index.d.ts +4 -4
  570. package/dist/types/src/transaction/broadcasters/index.d.ts.map +1 -1
  571. package/dist/types/src/transaction/chaintrackers/DefaultChainTracker.d.ts +1 -1
  572. package/dist/types/src/transaction/chaintrackers/DefaultChainTracker.d.ts.map +1 -1
  573. package/dist/types/src/transaction/chaintrackers/WhatsOnChain.d.ts +3 -3
  574. package/dist/types/src/transaction/chaintrackers/WhatsOnChain.d.ts.map +1 -1
  575. package/dist/types/src/transaction/chaintrackers/index.d.ts +3 -3
  576. package/dist/types/src/transaction/chaintrackers/index.d.ts.map +1 -1
  577. package/dist/types/src/transaction/fee-models/SatoshisPerKilobyte.d.ts +2 -2
  578. package/dist/types/src/transaction/fee-models/SatoshisPerKilobyte.d.ts.map +1 -1
  579. package/dist/types/src/transaction/fee-models/index.d.ts +1 -1
  580. package/dist/types/src/transaction/fee-models/index.d.ts.map +1 -1
  581. package/dist/types/src/transaction/http/DefaultHttpClient.d.ts +1 -1
  582. package/dist/types/src/transaction/http/DefaultHttpClient.d.ts.map +1 -1
  583. package/dist/types/src/transaction/http/FetchHttpClient.d.ts +1 -1
  584. package/dist/types/src/transaction/http/FetchHttpClient.d.ts.map +1 -1
  585. package/dist/types/src/transaction/http/HttpClient.d.ts.map +1 -1
  586. package/dist/types/src/transaction/http/NodejsHttpClient.d.ts +1 -1
  587. package/dist/types/src/transaction/http/NodejsHttpClient.d.ts.map +1 -1
  588. package/dist/types/src/transaction/http/index.d.ts +6 -6
  589. package/dist/types/src/transaction/http/index.d.ts.map +1 -1
  590. package/dist/types/src/transaction/index.d.ts +10 -10
  591. package/dist/types/src/transaction/index.d.ts.map +1 -1
  592. package/dist/types/src/wallet/CachedKeyDeriver.d.ts +3 -3
  593. package/dist/types/src/wallet/CachedKeyDeriver.d.ts.map +1 -1
  594. package/dist/types/src/wallet/KeyDeriver.d.ts +2 -2
  595. package/dist/types/src/wallet/KeyDeriver.d.ts.map +1 -1
  596. package/dist/types/src/wallet/ProtoWallet.d.ts +12 -12
  597. package/dist/types/src/wallet/ProtoWallet.d.ts.map +1 -1
  598. package/dist/types/src/wallet/Wallet.interfaces.d.ts +7 -8
  599. package/dist/types/src/wallet/Wallet.interfaces.d.ts.map +1 -1
  600. package/dist/types/src/wallet/WalletClient.d.ts +6 -6
  601. package/dist/types/src/wallet/WalletClient.d.ts.map +1 -1
  602. package/dist/types/src/wallet/index.d.ts +8 -8
  603. package/dist/types/src/wallet/index.d.ts.map +1 -1
  604. package/dist/types/src/wallet/substrates/HTTPWalletJSON.d.ts +7 -7
  605. package/dist/types/src/wallet/substrates/HTTPWalletJSON.d.ts.map +1 -1
  606. package/dist/types/src/wallet/substrates/HTTPWalletWire.d.ts +1 -1
  607. package/dist/types/src/wallet/substrates/HTTPWalletWire.d.ts.map +1 -1
  608. package/dist/types/src/wallet/substrates/WalletWire.d.ts.map +1 -1
  609. package/dist/types/src/wallet/substrates/WalletWireCalls.d.ts.map +1 -1
  610. package/dist/types/src/wallet/substrates/WalletWireProcessor.d.ts +2 -2
  611. package/dist/types/src/wallet/substrates/WalletWireProcessor.d.ts.map +1 -1
  612. package/dist/types/src/wallet/substrates/WalletWireTransceiver.d.ts +10 -10
  613. package/dist/types/src/wallet/substrates/WalletWireTransceiver.d.ts.map +1 -1
  614. package/dist/types/src/wallet/substrates/XDM.d.ts +2 -2
  615. package/dist/types/src/wallet/substrates/XDM.d.ts.map +1 -1
  616. package/dist/types/src/wallet/substrates/index.d.ts +7 -7
  617. package/dist/types/src/wallet/substrates/index.d.ts.map +1 -1
  618. package/dist/types/src/wallet/substrates/window.CWI.d.ts +25 -25
  619. package/dist/types/src/wallet/substrates/window.CWI.d.ts.map +1 -1
  620. package/dist/types/tsconfig.types.tsbuildinfo +1 -1
  621. package/dist/umd/bundle.js +1 -1
  622. package/docs/auth.md +44 -38
  623. package/docs/primitives.md +97 -73
  624. package/docs/script.md +4 -4
  625. package/docs/swagger/dist/swagger-initializer.js +7 -7
  626. package/docs/swagger/dist/swagger-ui-bundle.js +1 -1
  627. package/docs/swagger/dist/swagger-ui-es-bundle-core.js +2 -2
  628. package/docs/swagger/dist/swagger-ui-es-bundle.js +1 -1
  629. package/docs/swagger/dist/swagger-ui-standalone-preset.js +1 -1
  630. package/docs/swagger/dist/swagger-ui.js +2 -2
  631. package/docs/transaction.md +27 -27
  632. package/docs/wallet-substrates.md +13 -13
  633. package/docs/wallet.md +80 -82
  634. package/mod.ts +15 -15
  635. package/package.json +8 -3
  636. package/src/auth/Peer.ts +75 -70
  637. package/src/auth/SessionManager.ts +11 -6
  638. package/src/auth/__tests/Peer.test.ts +141 -114
  639. package/src/auth/__tests/SessionManager.test.ts +67 -19
  640. package/src/auth/__tests/build.test.ts +11 -0
  641. package/src/auth/certificates/Certificate.ts +15 -12
  642. package/src/auth/certificates/MasterCertificate.ts +24 -33
  643. package/src/auth/certificates/VerifiableCertificate.ts +6 -4
  644. package/src/auth/certificates/__tests/Certificate.test.ts +140 -139
  645. package/src/auth/certificates/__tests/CompletedProtoWallet.ts +88 -74
  646. package/src/auth/certificates/__tests/MasterCertificate.test.ts +7 -15
  647. package/src/auth/certificates/__tests/VerifiableCertificate.test.ts +1 -6
  648. package/src/auth/certificates/index.ts +4 -4
  649. package/src/auth/clients/AuthFetch.ts +232 -316
  650. package/src/auth/clients/index.ts +1 -1
  651. package/src/auth/index.ts +7 -7
  652. package/src/auth/transports/SimplifiedFetchTransport.ts +126 -166
  653. package/src/auth/transports/index.ts +1 -1
  654. package/src/auth/types.ts +1 -1
  655. package/src/auth/utils/__tests/cryptononce.test.ts +7 -5
  656. package/src/auth/utils/__tests/getVerifiableCertificates.test.ts +12 -12
  657. package/src/auth/utils/__tests/validateCertificates.test.ts +113 -103
  658. package/src/auth/utils/createNonce.ts +1 -1
  659. package/src/auth/utils/getVerifiableCertificates.ts +4 -4
  660. package/src/auth/utils/index.ts +4 -4
  661. package/src/auth/utils/validateCertificates.ts +9 -5
  662. package/src/auth/utils/verifyNonce.ts +1 -1
  663. package/src/compat/BSM.ts +7 -7
  664. package/src/compat/ECIES.ts +38 -30
  665. package/src/compat/HD.ts +12 -13
  666. package/src/compat/Mnemonic.ts +16 -14
  667. package/src/compat/Utxo.ts +4 -4
  668. package/src/compat/__tests/BSM.test.ts +5 -6
  669. package/src/compat/__tests/HD.test.ts +6 -4
  670. package/src/compat/__tests/Mnemonic.test.ts +144 -145
  671. package/src/compat/__tests/Mnemonic.vectors.ts +110 -55
  672. package/src/compat/index.ts +5 -5
  673. package/src/messages/EncryptedMessage.ts +5 -5
  674. package/src/messages/SignedMessage.ts +7 -6
  675. package/src/messages/__tests/EncryptedMessage.test.ts +39 -39
  676. package/src/messages/__tests/SignedMessage.test.ts +49 -49
  677. package/src/messages/index.ts +2 -2
  678. package/src/overlay-tools/LookupResolver.ts +52 -32
  679. package/src/overlay-tools/OverlayAdminTokenTemplate.ts +9 -5
  680. package/src/overlay-tools/SHIPBroadcaster.ts +8 -7
  681. package/src/overlay-tools/index.ts +5 -5
  682. package/src/primitives/AESGCM.ts +2 -0
  683. package/src/primitives/BasePoint.ts +5 -5
  684. package/src/primitives/BigNumber.ts +8 -6
  685. package/src/primitives/Curve.ts +79 -27
  686. package/src/primitives/DRBG.ts +3 -3
  687. package/src/primitives/ECDSA.ts +62 -42
  688. package/src/primitives/Hash.ts +215 -163
  689. package/src/primitives/JacobianPoint.ts +19 -5
  690. package/src/primitives/K256.ts +2 -2
  691. package/src/primitives/Mersenne.ts +1 -1
  692. package/src/primitives/MontgomoryMethod.ts +2 -2
  693. package/src/primitives/Point.ts +98 -76
  694. package/src/primitives/Polynomial.ts +6 -6
  695. package/src/primitives/PrivateKey.ts +24 -24
  696. package/src/primitives/PublicKey.ts +8 -8
  697. package/src/primitives/Random.ts +7 -3
  698. package/src/primitives/ReductionContext.ts +3 -3
  699. package/src/primitives/Schnorr.ts +5 -5
  700. package/src/primitives/Signature.ts +14 -12
  701. package/src/primitives/SymmetricKey.ts +5 -5
  702. package/src/primitives/TransactionSignature.ts +26 -13
  703. package/src/primitives/__tests/AESGCM.test.ts +403 -403
  704. package/src/primitives/__tests/BRC42.private.vectors.ts +30 -15
  705. package/src/primitives/__tests/BRC42.public.vectors.ts +30 -15
  706. package/src/primitives/__tests/BigNumber.arithmatic.test.ts +563 -563
  707. package/src/primitives/__tests/BigNumber.binary.test.ts +211 -211
  708. package/src/primitives/__tests/BigNumber.constructor.test.ts +8 -4
  709. package/src/primitives/__tests/BigNumber.dhGroup.test.ts +15 -15
  710. package/src/primitives/__tests/BigNumber.fixtures.ts +16 -8
  711. package/src/primitives/__tests/BigNumber.serializers.test.ts +169 -169
  712. package/src/primitives/__tests/BigNumber.utils.test.ts +328 -328
  713. package/src/primitives/__tests/Curve.unit.test.ts +152 -145
  714. package/src/primitives/__tests/DRBG.test.ts +13 -13
  715. package/src/primitives/__tests/DRBG.vectors.ts +45 -75
  716. package/src/primitives/__tests/ECDSA.test.ts +51 -51
  717. package/src/primitives/__tests/HMAC.test.ts +46 -46
  718. package/src/primitives/__tests/Hash.test.ts +83 -83
  719. package/src/primitives/__tests/PBKDF2.vectors.ts +130 -117
  720. package/src/primitives/__tests/PrivateKey.split.test.ts +6 -4
  721. package/src/primitives/__tests/PrivateKey.test.ts +53 -55
  722. package/src/primitives/__tests/PublicKey.test.ts +59 -57
  723. package/src/primitives/__tests/Random.test.ts +10 -10
  724. package/src/primitives/__tests/ReductionContext.test.ts +222 -222
  725. package/src/primitives/__tests/Schnorr.test.ts +150 -148
  726. package/src/primitives/__tests/SymmetricKey.test.ts +44 -44
  727. package/src/primitives/__tests/SymmetricKey.vectors.ts +16 -8
  728. package/src/primitives/__tests/bug-31.test.ts +23 -29
  729. package/src/primitives/__tests/utils.test.ts +1 -1
  730. package/src/primitives/index.ts +14 -14
  731. package/src/primitives/utils.ts +25 -26
  732. package/src/script/LockingScript.ts +1 -1
  733. package/src/script/Script.ts +13 -11
  734. package/src/script/ScriptTemplate.ts +5 -5
  735. package/src/script/Spend.ts +27 -25
  736. package/src/script/UnlockingScript.ts +1 -1
  737. package/src/script/__tests/Script.test.ts +7 -3
  738. package/src/script/__tests/Spend.test.ts +23 -18
  739. package/src/script/__tests/SpendComplex.test.ts +27 -31
  740. package/src/script/__tests/script.invalid.vectors.ts +428 -1796
  741. package/src/script/__tests/script.valid.vectors.ts +1064 -1064
  742. package/src/script/index.ts +7 -7
  743. package/src/script/templates/P2PKH.ts +72 -61
  744. package/src/script/templates/PushDrop.ts +101 -95
  745. package/src/script/templates/RPuzzle.ts +65 -62
  746. package/src/script/templates/__tests/PushDrop.test.ts +2 -3
  747. package/src/script/templates/index.ts +3 -3
  748. package/src/totp/__tests/totp.test.ts +12 -11
  749. package/src/totp/index.ts +1 -1
  750. package/src/totp/totp.ts +5 -4
  751. package/src/transaction/Beef.ts +84 -59
  752. package/src/transaction/BeefParty.ts +9 -7
  753. package/src/transaction/BeefTx.ts +32 -26
  754. package/src/transaction/Broadcaster.ts +1 -1
  755. package/src/transaction/FeeModel.ts +1 -2
  756. package/src/transaction/MerklePath.ts +58 -37
  757. package/src/transaction/Transaction.ts +127 -103
  758. package/src/transaction/TransactionInput.ts +2 -2
  759. package/src/transaction/TransactionOutput.ts +1 -2
  760. package/src/transaction/__tests/Beef.test.ts +109 -68
  761. package/src/transaction/__tests/MerklePath.test.ts +132 -131
  762. package/src/transaction/__tests/Transaction.benchmarks.test.ts +10 -13
  763. package/src/transaction/__tests/Transaction.test.ts +20 -31
  764. package/src/transaction/__tests/bigtx.vectors.ts +2 -1
  765. package/src/transaction/__tests/bump.invalid.vectors.ts +24 -6
  766. package/src/transaction/__tests/bump.valid.vectors.ts +6 -2
  767. package/src/transaction/__tests/tx.invalid.vectors.ts +881 -185
  768. package/src/transaction/__tests/tx.valid.vectors.ts +1210 -257
  769. package/src/transaction/broadcasters/ARC.ts +117 -112
  770. package/src/transaction/broadcasters/DefaultBroadcaster.ts +4 -4
  771. package/src/transaction/broadcasters/WhatsOnChainBroadcaster.ts +32 -32
  772. package/src/transaction/broadcasters/__tests/ARC.test.ts +63 -27
  773. package/src/transaction/broadcasters/__tests/WhatsOnChainBroadcaster.test.ts +9 -8
  774. package/src/transaction/broadcasters/index.ts +4 -4
  775. package/src/transaction/chaintrackers/DefaultChainTracker.ts +3 -3
  776. package/src/transaction/chaintrackers/WhatsOnChain.ts +39 -38
  777. package/src/transaction/chaintrackers/__tests/WhatsOnChainChainTracker.test.ts +99 -99
  778. package/src/transaction/chaintrackers/index.ts +3 -3
  779. package/src/transaction/fee-models/SatoshisPerKilobyte.ts +30 -31
  780. package/src/transaction/fee-models/index.ts +1 -1
  781. package/src/transaction/http/DefaultHttpClient.ts +14 -13
  782. package/src/transaction/http/FetchHttpClient.ts +3 -3
  783. package/src/transaction/http/HttpClient.ts +20 -20
  784. package/src/transaction/http/NodejsHttpClient.ts +27 -27
  785. package/src/transaction/http/index.ts +7 -7
  786. package/src/transaction/index.ts +10 -10
  787. package/src/wallet/CachedKeyDeriver.ts +39 -16
  788. package/src/wallet/KeyDeriver.ts +4 -4
  789. package/src/wallet/ProtoWallet.ts +77 -44
  790. package/src/wallet/Wallet.interfaces.ts +10 -8
  791. package/src/wallet/WalletClient.ts +21 -24
  792. package/src/wallet/WalletError.ts +2 -2
  793. package/src/wallet/__tests/CachedKeyDeriver.test.ts +15 -12
  794. package/src/wallet/__tests/KeyDeriver.test.ts +115 -115
  795. package/src/wallet/__tests/ProtoWallet.test.ts +320 -313
  796. package/src/wallet/index.ts +8 -8
  797. package/src/wallet/substrates/HTTPWalletJSON.ts +54 -40
  798. package/src/wallet/substrates/HTTPWalletWire.ts +27 -27
  799. package/src/wallet/substrates/WalletWire.ts +1 -1
  800. package/src/wallet/substrates/WalletWireCalls.ts +2 -2
  801. package/src/wallet/substrates/WalletWireProcessor.ts +966 -967
  802. package/src/wallet/substrates/WalletWireTransceiver.ts +1012 -1007
  803. package/src/wallet/substrates/XDM.ts +18 -19
  804. package/src/wallet/substrates/__tests/WalletWire.integration.test.ts +6 -4
  805. package/src/wallet/substrates/__tests/XDM.test.ts +343 -341
  806. package/src/wallet/substrates/index.ts +7 -7
  807. package/src/wallet/substrates/window.CWI.ts +330 -330
  808. package/dist/cjs/src/auth/__tests/Peer.test.js +0 -446
  809. package/dist/cjs/src/auth/__tests/Peer.test.js.map +0 -1
  810. package/dist/cjs/src/auth/__tests/SessionManager.test.js +0 -69
  811. package/dist/cjs/src/auth/__tests/SessionManager.test.js.map +0 -1
  812. package/dist/cjs/src/auth/certificates/__tests/Certificate.test.js +0 -182
  813. package/dist/cjs/src/auth/certificates/__tests/Certificate.test.js.map +0 -1
  814. package/dist/cjs/src/auth/certificates/__tests/MasterCertificate.test.js +0 -184
  815. package/dist/cjs/src/auth/certificates/__tests/MasterCertificate.test.js.map +0 -1
  816. package/dist/cjs/src/auth/certificates/__tests/VerifiableCertificate.test.js +0 -75
  817. package/dist/cjs/src/auth/certificates/__tests/VerifiableCertificate.test.js.map +0 -1
  818. package/dist/cjs/src/auth/utils/__tests/cryptononce.test.js +0 -101
  819. package/dist/cjs/src/auth/utils/__tests/cryptononce.test.js.map +0 -1
  820. package/dist/cjs/src/auth/utils/__tests/getVerifiableCertificates.test.js +0 -106
  821. package/dist/cjs/src/auth/utils/__tests/getVerifiableCertificates.test.js.map +0 -1
  822. package/dist/cjs/src/auth/utils/__tests/validateCertificates.test.js +0 -111
  823. package/dist/cjs/src/auth/utils/__tests/validateCertificates.test.js.map +0 -1
  824. package/dist/cjs/src/compat/__tests/BSM.test.js +0 -69
  825. package/dist/cjs/src/compat/__tests/BSM.test.js.map +0 -1
  826. package/dist/cjs/src/compat/__tests/ECIES.test.js +0 -115
  827. package/dist/cjs/src/compat/__tests/ECIES.test.js.map +0 -1
  828. package/dist/cjs/src/compat/__tests/HD.test.js +0 -336
  829. package/dist/cjs/src/compat/__tests/HD.test.js.map +0 -1
  830. package/dist/cjs/src/compat/__tests/Mnemonic.test.js +0 -150
  831. package/dist/cjs/src/compat/__tests/Mnemonic.test.js.map +0 -1
  832. package/dist/cjs/src/compat/__tests/Mnemonic.vectors.js +0 -175
  833. package/dist/cjs/src/compat/__tests/Mnemonic.vectors.js.map +0 -1
  834. package/dist/cjs/src/messages/__tests/EncryptedMessage.test.js +0 -57
  835. package/dist/cjs/src/messages/__tests/EncryptedMessage.test.js.map +0 -1
  836. package/dist/cjs/src/messages/__tests/SignedMessage.test.js +0 -52
  837. package/dist/cjs/src/messages/__tests/SignedMessage.test.js.map +0 -1
  838. package/dist/cjs/src/overlay-tools/__tests/LookupResolver.test.js +0 -1471
  839. package/dist/cjs/src/overlay-tools/__tests/LookupResolver.test.js.map +0 -1
  840. package/dist/cjs/src/overlay-tools/__tests/OverlayAdminTokenTemplate.test.js +0 -78
  841. package/dist/cjs/src/overlay-tools/__tests/OverlayAdminTokenTemplate.test.js.map +0 -1
  842. package/dist/cjs/src/overlay-tools/__tests/SHIPBroadcaster.test.js +0 -933
  843. package/dist/cjs/src/overlay-tools/__tests/SHIPBroadcaster.test.js.map +0 -1
  844. package/dist/cjs/src/primitives/__tests/AESGCM.test.js +0 -248
  845. package/dist/cjs/src/primitives/__tests/AESGCM.test.js.map +0 -1
  846. package/dist/cjs/src/primitives/__tests/BRC42.private.vectors.js +0 -36
  847. package/dist/cjs/src/primitives/__tests/BRC42.private.vectors.js.map +0 -1
  848. package/dist/cjs/src/primitives/__tests/BRC42.public.vectors.js +0 -36
  849. package/dist/cjs/src/primitives/__tests/BRC42.public.vectors.js.map +0 -1
  850. package/dist/cjs/src/primitives/__tests/BigNumber.arithmatic.test.js +0 -501
  851. package/dist/cjs/src/primitives/__tests/BigNumber.arithmatic.test.js.map +0 -1
  852. package/dist/cjs/src/primitives/__tests/BigNumber.binary.test.js +0 -185
  853. package/dist/cjs/src/primitives/__tests/BigNumber.binary.test.js.map +0 -1
  854. package/dist/cjs/src/primitives/__tests/BigNumber.constructor.test.js +0 -149
  855. package/dist/cjs/src/primitives/__tests/BigNumber.constructor.test.js.map +0 -1
  856. package/dist/cjs/src/primitives/__tests/BigNumber.dhGroup.test.js +0 -23
  857. package/dist/cjs/src/primitives/__tests/BigNumber.dhGroup.test.js.map +0 -1
  858. package/dist/cjs/src/primitives/__tests/BigNumber.fixtures.js +0 -268
  859. package/dist/cjs/src/primitives/__tests/BigNumber.fixtures.js.map +0 -1
  860. package/dist/cjs/src/primitives/__tests/BigNumber.serializers.test.js +0 -147
  861. package/dist/cjs/src/primitives/__tests/BigNumber.serializers.test.js.map +0 -1
  862. package/dist/cjs/src/primitives/__tests/BigNumber.utils.test.js +0 -322
  863. package/dist/cjs/src/primitives/__tests/BigNumber.utils.test.js.map +0 -1
  864. package/dist/cjs/src/primitives/__tests/Curve.unit.test.js +0 -145
  865. package/dist/cjs/src/primitives/__tests/Curve.unit.test.js.map +0 -1
  866. package/dist/cjs/src/primitives/__tests/DRBG.test.js +0 -22
  867. package/dist/cjs/src/primitives/__tests/DRBG.test.js.map +0 -1
  868. package/dist/cjs/src/primitives/__tests/DRBG.vectors.js +0 -170
  869. package/dist/cjs/src/primitives/__tests/DRBG.vectors.js.map +0 -1
  870. package/dist/cjs/src/primitives/__tests/ECDH.test.js +0 -34
  871. package/dist/cjs/src/primitives/__tests/ECDH.test.js.map +0 -1
  872. package/dist/cjs/src/primitives/__tests/ECDSA.test.js +0 -89
  873. package/dist/cjs/src/primitives/__tests/ECDSA.test.js.map +0 -1
  874. package/dist/cjs/src/primitives/__tests/HMAC.test.js +0 -60
  875. package/dist/cjs/src/primitives/__tests/HMAC.test.js.map +0 -1
  876. package/dist/cjs/src/primitives/__tests/Hash.test.js +0 -159
  877. package/dist/cjs/src/primitives/__tests/Hash.test.js.map +0 -1
  878. package/dist/cjs/src/primitives/__tests/PBKDF2.vectors.js +0 -122
  879. package/dist/cjs/src/primitives/__tests/PBKDF2.vectors.js.map +0 -1
  880. package/dist/cjs/src/primitives/__tests/PrivateKey.split.test.js +0 -105
  881. package/dist/cjs/src/primitives/__tests/PrivateKey.split.test.js.map +0 -1
  882. package/dist/cjs/src/primitives/__tests/PrivateKey.test.js +0 -90
  883. package/dist/cjs/src/primitives/__tests/PrivateKey.test.js.map +0 -1
  884. package/dist/cjs/src/primitives/__tests/PublicKey.test.js +0 -83
  885. package/dist/cjs/src/primitives/__tests/PublicKey.test.js.map +0 -1
  886. package/dist/cjs/src/primitives/__tests/Random.test.js +0 -19
  887. package/dist/cjs/src/primitives/__tests/Random.test.js.map +0 -1
  888. package/dist/cjs/src/primitives/__tests/Reader.test.js +0 -282
  889. package/dist/cjs/src/primitives/__tests/Reader.test.js.map +0 -1
  890. package/dist/cjs/src/primitives/__tests/ReductionContext.test.js +0 -224
  891. package/dist/cjs/src/primitives/__tests/ReductionContext.test.js.map +0 -1
  892. package/dist/cjs/src/primitives/__tests/Schnorr.test.js +0 -213
  893. package/dist/cjs/src/primitives/__tests/Schnorr.test.js.map +0 -1
  894. package/dist/cjs/src/primitives/__tests/SymmetricKey.test.js +0 -51
  895. package/dist/cjs/src/primitives/__tests/SymmetricKey.test.js.map +0 -1
  896. package/dist/cjs/src/primitives/__tests/SymmetricKey.vectors.js +0 -43
  897. package/dist/cjs/src/primitives/__tests/SymmetricKey.vectors.js.map +0 -1
  898. package/dist/cjs/src/primitives/__tests/Writer.test.js +0 -176
  899. package/dist/cjs/src/primitives/__tests/Writer.test.js.map +0 -1
  900. package/dist/cjs/src/primitives/__tests/bug-31.test.js +0 -32
  901. package/dist/cjs/src/primitives/__tests/bug-31.test.js.map +0 -1
  902. package/dist/cjs/src/primitives/__tests/sighash.vectors.js +0 -3506
  903. package/dist/cjs/src/primitives/__tests/sighash.vectors.js.map +0 -1
  904. package/dist/cjs/src/primitives/__tests/utils.test.js +0 -110
  905. package/dist/cjs/src/primitives/__tests/utils.test.js.map +0 -1
  906. package/dist/cjs/src/script/__tests/Script.test.js +0 -347
  907. package/dist/cjs/src/script/__tests/Script.test.js.map +0 -1
  908. package/dist/cjs/src/script/__tests/Spend.test.js +0 -282
  909. package/dist/cjs/src/script/__tests/Spend.test.js.map +0 -1
  910. package/dist/cjs/src/script/__tests/SpendComplex.test.js +0 -52
  911. package/dist/cjs/src/script/__tests/SpendComplex.test.js.map +0 -1
  912. package/dist/cjs/src/script/__tests/script.invalid.vectors.js +0 -2370
  913. package/dist/cjs/src/script/__tests/script.invalid.vectors.js.map +0 -1
  914. package/dist/cjs/src/script/__tests/script.valid.vectors.js +0 -1181
  915. package/dist/cjs/src/script/__tests/script.valid.vectors.js.map +0 -1
  916. package/dist/cjs/src/script/__tests/spend.valid.vectors.js +0 -2298
  917. package/dist/cjs/src/script/__tests/spend.valid.vectors.js.map +0 -1
  918. package/dist/cjs/src/script/templates/__tests/PushDrop.test.js +0 -161
  919. package/dist/cjs/src/script/templates/__tests/PushDrop.test.js.map +0 -1
  920. package/dist/cjs/src/totp/__tests/totp.test.js +0 -67
  921. package/dist/cjs/src/totp/__tests/totp.test.js.map +0 -1
  922. package/dist/cjs/src/transaction/__tests/Beef.test.js +0 -393
  923. package/dist/cjs/src/transaction/__tests/Beef.test.js.map +0 -1
  924. package/dist/cjs/src/transaction/__tests/MerklePath.test.js +0 -209
  925. package/dist/cjs/src/transaction/__tests/MerklePath.test.js.map +0 -1
  926. package/dist/cjs/src/transaction/__tests/Transaction.benchmarks.test.js +0 -219
  927. package/dist/cjs/src/transaction/__tests/Transaction.benchmarks.test.js.map +0 -1
  928. package/dist/cjs/src/transaction/__tests/Transaction.test.js +0 -1073
  929. package/dist/cjs/src/transaction/__tests/Transaction.test.js.map +0 -1
  930. package/dist/cjs/src/transaction/__tests/bigtx.vectors.js +0 -7
  931. package/dist/cjs/src/transaction/__tests/bigtx.vectors.js.map +0 -1
  932. package/dist/cjs/src/transaction/__tests/bump.invalid.vectors.js +0 -11
  933. package/dist/cjs/src/transaction/__tests/bump.invalid.vectors.js.map +0 -1
  934. package/dist/cjs/src/transaction/__tests/bump.valid.vectors.js +0 -7
  935. package/dist/cjs/src/transaction/__tests/bump.valid.vectors.js.map +0 -1
  936. package/dist/cjs/src/transaction/__tests/tx.invalid.vectors.js +0 -230
  937. package/dist/cjs/src/transaction/__tests/tx.invalid.vectors.js.map +0 -1
  938. package/dist/cjs/src/transaction/__tests/tx.valid.vectors.js +0 -296
  939. package/dist/cjs/src/transaction/__tests/tx.valid.vectors.js.map +0 -1
  940. package/dist/cjs/src/transaction/broadcasters/__tests/ARC.test.js +0 -246
  941. package/dist/cjs/src/transaction/broadcasters/__tests/ARC.test.js.map +0 -1
  942. package/dist/cjs/src/transaction/broadcasters/__tests/WhatsOnChainBroadcaster.test.js +0 -148
  943. package/dist/cjs/src/transaction/broadcasters/__tests/WhatsOnChainBroadcaster.test.js.map +0 -1
  944. package/dist/cjs/src/transaction/chaintrackers/__tests/WhatsOnChainChainTracker.test.js +0 -155
  945. package/dist/cjs/src/transaction/chaintrackers/__tests/WhatsOnChainChainTracker.test.js.map +0 -1
  946. package/dist/cjs/src/wallet/__tests/CachedKeyDeriver.test.js +0 -269
  947. package/dist/cjs/src/wallet/__tests/CachedKeyDeriver.test.js.map +0 -1
  948. package/dist/cjs/src/wallet/__tests/KeyDeriver.test.js +0 -114
  949. package/dist/cjs/src/wallet/__tests/KeyDeriver.test.js.map +0 -1
  950. package/dist/cjs/src/wallet/__tests/ProtoWallet.test.js +0 -475
  951. package/dist/cjs/src/wallet/__tests/ProtoWallet.test.js.map +0 -1
  952. package/dist/cjs/src/wallet/substrates/__tests/WalletWire.integration.test.js +0 -1962
  953. package/dist/cjs/src/wallet/substrates/__tests/WalletWire.integration.test.js.map +0 -1
  954. package/dist/cjs/src/wallet/substrates/__tests/XDM.test.js +0 -579
  955. package/dist/cjs/src/wallet/substrates/__tests/XDM.test.js.map +0 -1
  956. package/dist/esm/src/auth/__tests/Peer.test.js +0 -448
  957. package/dist/esm/src/auth/__tests/Peer.test.js.map +0 -1
  958. package/dist/esm/src/auth/__tests/SessionManager.test.js +0 -69
  959. package/dist/esm/src/auth/__tests/SessionManager.test.js.map +0 -1
  960. package/dist/esm/src/auth/certificates/__tests/Certificate.test.js +0 -182
  961. package/dist/esm/src/auth/certificates/__tests/Certificate.test.js.map +0 -1
  962. package/dist/esm/src/auth/certificates/__tests/MasterCertificate.test.js +0 -184
  963. package/dist/esm/src/auth/certificates/__tests/MasterCertificate.test.js.map +0 -1
  964. package/dist/esm/src/auth/certificates/__tests/VerifiableCertificate.test.js +0 -75
  965. package/dist/esm/src/auth/certificates/__tests/VerifiableCertificate.test.js.map +0 -1
  966. package/dist/esm/src/auth/utils/__tests/cryptononce.test.js +0 -101
  967. package/dist/esm/src/auth/utils/__tests/cryptononce.test.js.map +0 -1
  968. package/dist/esm/src/auth/utils/__tests/getVerifiableCertificates.test.js +0 -106
  969. package/dist/esm/src/auth/utils/__tests/getVerifiableCertificates.test.js.map +0 -1
  970. package/dist/esm/src/auth/utils/__tests/validateCertificates.test.js +0 -111
  971. package/dist/esm/src/auth/utils/__tests/validateCertificates.test.js.map +0 -1
  972. package/dist/esm/src/compat/__tests/BSM.test.js +0 -69
  973. package/dist/esm/src/compat/__tests/BSM.test.js.map +0 -1
  974. package/dist/esm/src/compat/__tests/ECIES.test.js +0 -115
  975. package/dist/esm/src/compat/__tests/ECIES.test.js.map +0 -1
  976. package/dist/esm/src/compat/__tests/HD.test.js +0 -336
  977. package/dist/esm/src/compat/__tests/HD.test.js.map +0 -1
  978. package/dist/esm/src/compat/__tests/Mnemonic.test.js +0 -150
  979. package/dist/esm/src/compat/__tests/Mnemonic.test.js.map +0 -1
  980. package/dist/esm/src/compat/__tests/Mnemonic.vectors.js +0 -175
  981. package/dist/esm/src/compat/__tests/Mnemonic.vectors.js.map +0 -1
  982. package/dist/esm/src/messages/__tests/EncryptedMessage.test.js +0 -57
  983. package/dist/esm/src/messages/__tests/EncryptedMessage.test.js.map +0 -1
  984. package/dist/esm/src/messages/__tests/SignedMessage.test.js +0 -52
  985. package/dist/esm/src/messages/__tests/SignedMessage.test.js.map +0 -1
  986. package/dist/esm/src/overlay-tools/__tests/LookupResolver.test.js +0 -1471
  987. package/dist/esm/src/overlay-tools/__tests/LookupResolver.test.js.map +0 -1
  988. package/dist/esm/src/overlay-tools/__tests/OverlayAdminTokenTemplate.test.js +0 -78
  989. package/dist/esm/src/overlay-tools/__tests/OverlayAdminTokenTemplate.test.js.map +0 -1
  990. package/dist/esm/src/overlay-tools/__tests/SHIPBroadcaster.test.js +0 -933
  991. package/dist/esm/src/overlay-tools/__tests/SHIPBroadcaster.test.js.map +0 -1
  992. package/dist/esm/src/primitives/__tests/AESGCM.test.js +0 -248
  993. package/dist/esm/src/primitives/__tests/AESGCM.test.js.map +0 -1
  994. package/dist/esm/src/primitives/__tests/BRC42.private.vectors.js +0 -36
  995. package/dist/esm/src/primitives/__tests/BRC42.private.vectors.js.map +0 -1
  996. package/dist/esm/src/primitives/__tests/BRC42.public.vectors.js +0 -36
  997. package/dist/esm/src/primitives/__tests/BRC42.public.vectors.js.map +0 -1
  998. package/dist/esm/src/primitives/__tests/BigNumber.arithmatic.test.js +0 -501
  999. package/dist/esm/src/primitives/__tests/BigNumber.arithmatic.test.js.map +0 -1
  1000. package/dist/esm/src/primitives/__tests/BigNumber.binary.test.js +0 -185
  1001. package/dist/esm/src/primitives/__tests/BigNumber.binary.test.js.map +0 -1
  1002. package/dist/esm/src/primitives/__tests/BigNumber.constructor.test.js +0 -149
  1003. package/dist/esm/src/primitives/__tests/BigNumber.constructor.test.js.map +0 -1
  1004. package/dist/esm/src/primitives/__tests/BigNumber.dhGroup.test.js +0 -23
  1005. package/dist/esm/src/primitives/__tests/BigNumber.dhGroup.test.js.map +0 -1
  1006. package/dist/esm/src/primitives/__tests/BigNumber.fixtures.js +0 -268
  1007. package/dist/esm/src/primitives/__tests/BigNumber.fixtures.js.map +0 -1
  1008. package/dist/esm/src/primitives/__tests/BigNumber.serializers.test.js +0 -147
  1009. package/dist/esm/src/primitives/__tests/BigNumber.serializers.test.js.map +0 -1
  1010. package/dist/esm/src/primitives/__tests/BigNumber.utils.test.js +0 -322
  1011. package/dist/esm/src/primitives/__tests/BigNumber.utils.test.js.map +0 -1
  1012. package/dist/esm/src/primitives/__tests/Curve.unit.test.js +0 -145
  1013. package/dist/esm/src/primitives/__tests/Curve.unit.test.js.map +0 -1
  1014. package/dist/esm/src/primitives/__tests/DRBG.test.js +0 -22
  1015. package/dist/esm/src/primitives/__tests/DRBG.test.js.map +0 -1
  1016. package/dist/esm/src/primitives/__tests/DRBG.vectors.js +0 -170
  1017. package/dist/esm/src/primitives/__tests/DRBG.vectors.js.map +0 -1
  1018. package/dist/esm/src/primitives/__tests/ECDH.test.js +0 -34
  1019. package/dist/esm/src/primitives/__tests/ECDH.test.js.map +0 -1
  1020. package/dist/esm/src/primitives/__tests/ECDSA.test.js +0 -89
  1021. package/dist/esm/src/primitives/__tests/ECDSA.test.js.map +0 -1
  1022. package/dist/esm/src/primitives/__tests/HMAC.test.js +0 -60
  1023. package/dist/esm/src/primitives/__tests/HMAC.test.js.map +0 -1
  1024. package/dist/esm/src/primitives/__tests/Hash.test.js +0 -159
  1025. package/dist/esm/src/primitives/__tests/Hash.test.js.map +0 -1
  1026. package/dist/esm/src/primitives/__tests/PBKDF2.vectors.js +0 -122
  1027. package/dist/esm/src/primitives/__tests/PBKDF2.vectors.js.map +0 -1
  1028. package/dist/esm/src/primitives/__tests/PrivateKey.split.test.js +0 -105
  1029. package/dist/esm/src/primitives/__tests/PrivateKey.split.test.js.map +0 -1
  1030. package/dist/esm/src/primitives/__tests/PrivateKey.test.js +0 -90
  1031. package/dist/esm/src/primitives/__tests/PrivateKey.test.js.map +0 -1
  1032. package/dist/esm/src/primitives/__tests/PublicKey.test.js +0 -83
  1033. package/dist/esm/src/primitives/__tests/PublicKey.test.js.map +0 -1
  1034. package/dist/esm/src/primitives/__tests/Random.test.js +0 -19
  1035. package/dist/esm/src/primitives/__tests/Random.test.js.map +0 -1
  1036. package/dist/esm/src/primitives/__tests/Reader.test.js +0 -282
  1037. package/dist/esm/src/primitives/__tests/Reader.test.js.map +0 -1
  1038. package/dist/esm/src/primitives/__tests/ReductionContext.test.js +0 -223
  1039. package/dist/esm/src/primitives/__tests/ReductionContext.test.js.map +0 -1
  1040. package/dist/esm/src/primitives/__tests/Schnorr.test.js +0 -213
  1041. package/dist/esm/src/primitives/__tests/Schnorr.test.js.map +0 -1
  1042. package/dist/esm/src/primitives/__tests/SymmetricKey.test.js +0 -51
  1043. package/dist/esm/src/primitives/__tests/SymmetricKey.test.js.map +0 -1
  1044. package/dist/esm/src/primitives/__tests/SymmetricKey.vectors.js +0 -43
  1045. package/dist/esm/src/primitives/__tests/SymmetricKey.vectors.js.map +0 -1
  1046. package/dist/esm/src/primitives/__tests/Writer.test.js +0 -176
  1047. package/dist/esm/src/primitives/__tests/Writer.test.js.map +0 -1
  1048. package/dist/esm/src/primitives/__tests/bug-31.test.js +0 -32
  1049. package/dist/esm/src/primitives/__tests/bug-31.test.js.map +0 -1
  1050. package/dist/esm/src/primitives/__tests/sighash.vectors.js +0 -3506
  1051. package/dist/esm/src/primitives/__tests/sighash.vectors.js.map +0 -1
  1052. package/dist/esm/src/primitives/__tests/utils.test.js +0 -110
  1053. package/dist/esm/src/primitives/__tests/utils.test.js.map +0 -1
  1054. package/dist/esm/src/script/__tests/Script.test.js +0 -347
  1055. package/dist/esm/src/script/__tests/Script.test.js.map +0 -1
  1056. package/dist/esm/src/script/__tests/Spend.test.js +0 -282
  1057. package/dist/esm/src/script/__tests/Spend.test.js.map +0 -1
  1058. package/dist/esm/src/script/__tests/SpendComplex.test.js +0 -51
  1059. package/dist/esm/src/script/__tests/SpendComplex.test.js.map +0 -1
  1060. package/dist/esm/src/script/__tests/script.invalid.vectors.js +0 -2370
  1061. package/dist/esm/src/script/__tests/script.invalid.vectors.js.map +0 -1
  1062. package/dist/esm/src/script/__tests/script.valid.vectors.js +0 -1181
  1063. package/dist/esm/src/script/__tests/script.valid.vectors.js.map +0 -1
  1064. package/dist/esm/src/script/__tests/spend.valid.vectors.js +0 -2298
  1065. package/dist/esm/src/script/__tests/spend.valid.vectors.js.map +0 -1
  1066. package/dist/esm/src/script/templates/__tests/PushDrop.test.js +0 -161
  1067. package/dist/esm/src/script/templates/__tests/PushDrop.test.js.map +0 -1
  1068. package/dist/esm/src/totp/__tests/totp.test.js +0 -67
  1069. package/dist/esm/src/totp/__tests/totp.test.js.map +0 -1
  1070. package/dist/esm/src/transaction/__tests/Beef.test.js +0 -393
  1071. package/dist/esm/src/transaction/__tests/Beef.test.js.map +0 -1
  1072. package/dist/esm/src/transaction/__tests/MerklePath.test.js +0 -209
  1073. package/dist/esm/src/transaction/__tests/MerklePath.test.js.map +0 -1
  1074. package/dist/esm/src/transaction/__tests/Transaction.benchmarks.test.js +0 -219
  1075. package/dist/esm/src/transaction/__tests/Transaction.benchmarks.test.js.map +0 -1
  1076. package/dist/esm/src/transaction/__tests/Transaction.test.js +0 -1072
  1077. package/dist/esm/src/transaction/__tests/Transaction.test.js.map +0 -1
  1078. package/dist/esm/src/transaction/__tests/bigtx.vectors.js +0 -7
  1079. package/dist/esm/src/transaction/__tests/bigtx.vectors.js.map +0 -1
  1080. package/dist/esm/src/transaction/__tests/bump.invalid.vectors.js +0 -11
  1081. package/dist/esm/src/transaction/__tests/bump.invalid.vectors.js.map +0 -1
  1082. package/dist/esm/src/transaction/__tests/bump.valid.vectors.js +0 -7
  1083. package/dist/esm/src/transaction/__tests/bump.valid.vectors.js.map +0 -1
  1084. package/dist/esm/src/transaction/__tests/tx.invalid.vectors.js +0 -230
  1085. package/dist/esm/src/transaction/__tests/tx.invalid.vectors.js.map +0 -1
  1086. package/dist/esm/src/transaction/__tests/tx.valid.vectors.js +0 -296
  1087. package/dist/esm/src/transaction/__tests/tx.valid.vectors.js.map +0 -1
  1088. package/dist/esm/src/transaction/broadcasters/__tests/ARC.test.js +0 -246
  1089. package/dist/esm/src/transaction/broadcasters/__tests/ARC.test.js.map +0 -1
  1090. package/dist/esm/src/transaction/broadcasters/__tests/WhatsOnChainBroadcaster.test.js +0 -148
  1091. package/dist/esm/src/transaction/broadcasters/__tests/WhatsOnChainBroadcaster.test.js.map +0 -1
  1092. package/dist/esm/src/transaction/chaintrackers/__tests/WhatsOnChainChainTracker.test.js +0 -155
  1093. package/dist/esm/src/transaction/chaintrackers/__tests/WhatsOnChainChainTracker.test.js.map +0 -1
  1094. package/dist/esm/src/wallet/__tests/CachedKeyDeriver.test.js +0 -269
  1095. package/dist/esm/src/wallet/__tests/CachedKeyDeriver.test.js.map +0 -1
  1096. package/dist/esm/src/wallet/__tests/KeyDeriver.test.js +0 -113
  1097. package/dist/esm/src/wallet/__tests/KeyDeriver.test.js.map +0 -1
  1098. package/dist/esm/src/wallet/__tests/ProtoWallet.test.js +0 -475
  1099. package/dist/esm/src/wallet/__tests/ProtoWallet.test.js.map +0 -1
  1100. package/dist/esm/src/wallet/substrates/__tests/WalletWire.integration.test.js +0 -1962
  1101. package/dist/esm/src/wallet/substrates/__tests/WalletWire.integration.test.js.map +0 -1
  1102. package/dist/esm/src/wallet/substrates/__tests/XDM.test.js +0 -579
  1103. package/dist/esm/src/wallet/substrates/__tests/XDM.test.js.map +0 -1
  1104. package/dist/types/src/auth/__tests/Peer.test.d.ts +0 -2
  1105. package/dist/types/src/auth/__tests/Peer.test.d.ts.map +0 -1
  1106. package/dist/types/src/auth/__tests/SessionManager.test.d.ts +0 -2
  1107. package/dist/types/src/auth/__tests/SessionManager.test.d.ts.map +0 -1
  1108. package/dist/types/src/auth/certificates/__tests/Certificate.test.d.ts +0 -2
  1109. package/dist/types/src/auth/certificates/__tests/Certificate.test.d.ts.map +0 -1
  1110. package/dist/types/src/auth/certificates/__tests/MasterCertificate.test.d.ts +0 -2
  1111. package/dist/types/src/auth/certificates/__tests/MasterCertificate.test.d.ts.map +0 -1
  1112. package/dist/types/src/auth/certificates/__tests/VerifiableCertificate.test.d.ts +0 -2
  1113. package/dist/types/src/auth/certificates/__tests/VerifiableCertificate.test.d.ts.map +0 -1
  1114. package/dist/types/src/auth/utils/__tests/cryptononce.test.d.ts +0 -2
  1115. package/dist/types/src/auth/utils/__tests/cryptononce.test.d.ts.map +0 -1
  1116. package/dist/types/src/auth/utils/__tests/getVerifiableCertificates.test.d.ts +0 -2
  1117. package/dist/types/src/auth/utils/__tests/getVerifiableCertificates.test.d.ts.map +0 -1
  1118. package/dist/types/src/auth/utils/__tests/validateCertificates.test.d.ts +0 -2
  1119. package/dist/types/src/auth/utils/__tests/validateCertificates.test.d.ts.map +0 -1
  1120. package/dist/types/src/compat/__tests/BSM.test.d.ts +0 -2
  1121. package/dist/types/src/compat/__tests/BSM.test.d.ts.map +0 -1
  1122. package/dist/types/src/compat/__tests/ECIES.test.d.ts +0 -2
  1123. package/dist/types/src/compat/__tests/ECIES.test.d.ts.map +0 -1
  1124. package/dist/types/src/compat/__tests/HD.test.d.ts +0 -2
  1125. package/dist/types/src/compat/__tests/HD.test.d.ts.map +0 -1
  1126. package/dist/types/src/compat/__tests/Mnemonic.test.d.ts +0 -2
  1127. package/dist/types/src/compat/__tests/Mnemonic.test.d.ts.map +0 -1
  1128. package/dist/types/src/compat/__tests/Mnemonic.vectors.d.ts +0 -11
  1129. package/dist/types/src/compat/__tests/Mnemonic.vectors.d.ts.map +0 -1
  1130. package/dist/types/src/messages/__tests/EncryptedMessage.test.d.ts +0 -2
  1131. package/dist/types/src/messages/__tests/EncryptedMessage.test.d.ts.map +0 -1
  1132. package/dist/types/src/messages/__tests/SignedMessage.test.d.ts +0 -2
  1133. package/dist/types/src/messages/__tests/SignedMessage.test.d.ts.map +0 -1
  1134. package/dist/types/src/overlay-tools/__tests/LookupResolver.test.d.ts +0 -2
  1135. package/dist/types/src/overlay-tools/__tests/LookupResolver.test.d.ts.map +0 -1
  1136. package/dist/types/src/overlay-tools/__tests/OverlayAdminTokenTemplate.test.d.ts +0 -2
  1137. package/dist/types/src/overlay-tools/__tests/OverlayAdminTokenTemplate.test.d.ts.map +0 -1
  1138. package/dist/types/src/overlay-tools/__tests/SHIPBroadcaster.test.d.ts +0 -2
  1139. package/dist/types/src/overlay-tools/__tests/SHIPBroadcaster.test.d.ts.map +0 -1
  1140. package/dist/types/src/primitives/__tests/AESGCM.test.d.ts +0 -2
  1141. package/dist/types/src/primitives/__tests/AESGCM.test.d.ts.map +0 -1
  1142. package/dist/types/src/primitives/__tests/BRC42.private.vectors.d.ts +0 -8
  1143. package/dist/types/src/primitives/__tests/BRC42.private.vectors.d.ts.map +0 -1
  1144. package/dist/types/src/primitives/__tests/BRC42.public.vectors.d.ts +0 -8
  1145. package/dist/types/src/primitives/__tests/BRC42.public.vectors.d.ts.map +0 -1
  1146. package/dist/types/src/primitives/__tests/BigNumber.arithmatic.test.d.ts +0 -2
  1147. package/dist/types/src/primitives/__tests/BigNumber.arithmatic.test.d.ts.map +0 -1
  1148. package/dist/types/src/primitives/__tests/BigNumber.binary.test.d.ts +0 -2
  1149. package/dist/types/src/primitives/__tests/BigNumber.binary.test.d.ts.map +0 -1
  1150. package/dist/types/src/primitives/__tests/BigNumber.constructor.test.d.ts +0 -2
  1151. package/dist/types/src/primitives/__tests/BigNumber.constructor.test.d.ts.map +0 -1
  1152. package/dist/types/src/primitives/__tests/BigNumber.dhGroup.test.d.ts +0 -2
  1153. package/dist/types/src/primitives/__tests/BigNumber.dhGroup.test.d.ts.map +0 -1
  1154. package/dist/types/src/primitives/__tests/BigNumber.fixtures.d.ts +0 -15
  1155. package/dist/types/src/primitives/__tests/BigNumber.fixtures.d.ts.map +0 -1
  1156. package/dist/types/src/primitives/__tests/BigNumber.serializers.test.d.ts +0 -2
  1157. package/dist/types/src/primitives/__tests/BigNumber.serializers.test.d.ts.map +0 -1
  1158. package/dist/types/src/primitives/__tests/BigNumber.utils.test.d.ts +0 -2
  1159. package/dist/types/src/primitives/__tests/BigNumber.utils.test.d.ts.map +0 -1
  1160. package/dist/types/src/primitives/__tests/Curve.unit.test.d.ts +0 -2
  1161. package/dist/types/src/primitives/__tests/Curve.unit.test.d.ts.map +0 -1
  1162. package/dist/types/src/primitives/__tests/DRBG.test.d.ts +0 -2
  1163. package/dist/types/src/primitives/__tests/DRBG.test.d.ts.map +0 -1
  1164. package/dist/types/src/primitives/__tests/DRBG.vectors.d.ts +0 -10
  1165. package/dist/types/src/primitives/__tests/DRBG.vectors.d.ts.map +0 -1
  1166. package/dist/types/src/primitives/__tests/ECDH.test.d.ts +0 -2
  1167. package/dist/types/src/primitives/__tests/ECDH.test.d.ts.map +0 -1
  1168. package/dist/types/src/primitives/__tests/ECDSA.test.d.ts +0 -2
  1169. package/dist/types/src/primitives/__tests/ECDSA.test.d.ts.map +0 -1
  1170. package/dist/types/src/primitives/__tests/HMAC.test.d.ts +0 -2
  1171. package/dist/types/src/primitives/__tests/HMAC.test.d.ts.map +0 -1
  1172. package/dist/types/src/primitives/__tests/Hash.test.d.ts +0 -2
  1173. package/dist/types/src/primitives/__tests/Hash.test.d.ts.map +0 -1
  1174. package/dist/types/src/primitives/__tests/PBKDF2.vectors.d.ts +0 -68
  1175. package/dist/types/src/primitives/__tests/PBKDF2.vectors.d.ts.map +0 -1
  1176. package/dist/types/src/primitives/__tests/PrivateKey.split.test.d.ts +0 -2
  1177. package/dist/types/src/primitives/__tests/PrivateKey.split.test.d.ts.map +0 -1
  1178. package/dist/types/src/primitives/__tests/PrivateKey.test.d.ts +0 -2
  1179. package/dist/types/src/primitives/__tests/PrivateKey.test.d.ts.map +0 -1
  1180. package/dist/types/src/primitives/__tests/PublicKey.test.d.ts +0 -2
  1181. package/dist/types/src/primitives/__tests/PublicKey.test.d.ts.map +0 -1
  1182. package/dist/types/src/primitives/__tests/Random.test.d.ts +0 -2
  1183. package/dist/types/src/primitives/__tests/Random.test.d.ts.map +0 -1
  1184. package/dist/types/src/primitives/__tests/Reader.test.d.ts +0 -2
  1185. package/dist/types/src/primitives/__tests/Reader.test.d.ts.map +0 -1
  1186. package/dist/types/src/primitives/__tests/ReductionContext.test.d.ts +0 -2
  1187. package/dist/types/src/primitives/__tests/ReductionContext.test.d.ts.map +0 -1
  1188. package/dist/types/src/primitives/__tests/Schnorr.test.d.ts +0 -2
  1189. package/dist/types/src/primitives/__tests/Schnorr.test.d.ts.map +0 -1
  1190. package/dist/types/src/primitives/__tests/SymmetricKey.test.d.ts +0 -2
  1191. package/dist/types/src/primitives/__tests/SymmetricKey.test.d.ts.map +0 -1
  1192. package/dist/types/src/primitives/__tests/SymmetricKey.vectors.d.ts +0 -20
  1193. package/dist/types/src/primitives/__tests/SymmetricKey.vectors.d.ts.map +0 -1
  1194. package/dist/types/src/primitives/__tests/Writer.test.d.ts +0 -2
  1195. package/dist/types/src/primitives/__tests/Writer.test.d.ts.map +0 -1
  1196. package/dist/types/src/primitives/__tests/bug-31.test.d.ts +0 -2
  1197. package/dist/types/src/primitives/__tests/bug-31.test.d.ts.map +0 -1
  1198. package/dist/types/src/primitives/__tests/sighash.vectors.d.ts +0 -3
  1199. package/dist/types/src/primitives/__tests/sighash.vectors.d.ts.map +0 -1
  1200. package/dist/types/src/primitives/__tests/utils.test.d.ts +0 -2
  1201. package/dist/types/src/primitives/__tests/utils.test.d.ts.map +0 -1
  1202. package/dist/types/src/script/__tests/Script.test.d.ts +0 -2
  1203. package/dist/types/src/script/__tests/Script.test.d.ts.map +0 -1
  1204. package/dist/types/src/script/__tests/Spend.test.d.ts +0 -2
  1205. package/dist/types/src/script/__tests/Spend.test.d.ts.map +0 -1
  1206. package/dist/types/src/script/__tests/SpendComplex.test.d.ts +0 -2
  1207. package/dist/types/src/script/__tests/SpendComplex.test.d.ts.map +0 -1
  1208. package/dist/types/src/script/__tests/script.invalid.vectors.d.ts +0 -3
  1209. package/dist/types/src/script/__tests/script.invalid.vectors.d.ts.map +0 -1
  1210. package/dist/types/src/script/__tests/script.valid.vectors.d.ts +0 -3
  1211. package/dist/types/src/script/__tests/script.valid.vectors.d.ts.map +0 -1
  1212. package/dist/types/src/script/__tests/spend.valid.vectors.d.ts +0 -3
  1213. package/dist/types/src/script/__tests/spend.valid.vectors.d.ts.map +0 -1
  1214. package/dist/types/src/script/templates/__tests/PushDrop.test.d.ts +0 -2
  1215. package/dist/types/src/script/templates/__tests/PushDrop.test.d.ts.map +0 -1
  1216. package/dist/types/src/totp/__tests/totp.test.d.ts +0 -2
  1217. package/dist/types/src/totp/__tests/totp.test.d.ts.map +0 -1
  1218. package/dist/types/src/transaction/__tests/Beef.test.d.ts +0 -2
  1219. package/dist/types/src/transaction/__tests/Beef.test.d.ts.map +0 -1
  1220. package/dist/types/src/transaction/__tests/MerklePath.test.d.ts +0 -2
  1221. package/dist/types/src/transaction/__tests/MerklePath.test.d.ts.map +0 -1
  1222. package/dist/types/src/transaction/__tests/Transaction.benchmarks.test.d.ts +0 -2
  1223. package/dist/types/src/transaction/__tests/Transaction.benchmarks.test.d.ts.map +0 -1
  1224. package/dist/types/src/transaction/__tests/Transaction.test.d.ts +0 -2
  1225. package/dist/types/src/transaction/__tests/Transaction.test.d.ts.map +0 -1
  1226. package/dist/types/src/transaction/__tests/bigtx.vectors.d.ts +0 -6
  1227. package/dist/types/src/transaction/__tests/bigtx.vectors.d.ts.map +0 -1
  1228. package/dist/types/src/transaction/__tests/bump.invalid.vectors.d.ts +0 -6
  1229. package/dist/types/src/transaction/__tests/bump.invalid.vectors.d.ts.map +0 -1
  1230. package/dist/types/src/transaction/__tests/bump.valid.vectors.d.ts +0 -5
  1231. package/dist/types/src/transaction/__tests/bump.valid.vectors.d.ts.map +0 -1
  1232. package/dist/types/src/transaction/__tests/tx.invalid.vectors.d.ts +0 -3
  1233. package/dist/types/src/transaction/__tests/tx.invalid.vectors.d.ts.map +0 -1
  1234. package/dist/types/src/transaction/__tests/tx.valid.vectors.d.ts +0 -3
  1235. package/dist/types/src/transaction/__tests/tx.valid.vectors.d.ts.map +0 -1
  1236. package/dist/types/src/transaction/broadcasters/__tests/ARC.test.d.ts +0 -2
  1237. package/dist/types/src/transaction/broadcasters/__tests/ARC.test.d.ts.map +0 -1
  1238. package/dist/types/src/transaction/broadcasters/__tests/WhatsOnChainBroadcaster.test.d.ts +0 -2
  1239. package/dist/types/src/transaction/broadcasters/__tests/WhatsOnChainBroadcaster.test.d.ts.map +0 -1
  1240. package/dist/types/src/transaction/chaintrackers/__tests/WhatsOnChainChainTracker.test.d.ts +0 -2
  1241. package/dist/types/src/transaction/chaintrackers/__tests/WhatsOnChainChainTracker.test.d.ts.map +0 -1
  1242. package/dist/types/src/wallet/__tests/CachedKeyDeriver.test.d.ts +0 -2
  1243. package/dist/types/src/wallet/__tests/CachedKeyDeriver.test.d.ts.map +0 -1
  1244. package/dist/types/src/wallet/__tests/KeyDeriver.test.d.ts +0 -2
  1245. package/dist/types/src/wallet/__tests/KeyDeriver.test.d.ts.map +0 -1
  1246. package/dist/types/src/wallet/__tests/ProtoWallet.test.d.ts +0 -2
  1247. package/dist/types/src/wallet/__tests/ProtoWallet.test.d.ts.map +0 -1
  1248. package/dist/types/src/wallet/substrates/__tests/WalletWire.integration.test.d.ts +0 -2
  1249. package/dist/types/src/wallet/substrates/__tests/WalletWire.integration.test.d.ts.map +0 -1
  1250. package/dist/types/src/wallet/substrates/__tests/XDM.test.d.ts +0 -5
  1251. package/dist/types/src/wallet/substrates/__tests/XDM.test.d.ts.map +0 -1
@@ -1,1178 +1,1178 @@
1
1
  export default [
2
- ["Format is: [scriptSig, scriptPubKey, flags, ... comments]"],
2
+ ['Format is: [scriptSig, scriptPubKey, flags, ... comments]'],
3
3
  [
4
- "It is evaluated as if there was a crediting coinbase transaction with two 0",
5
- ],
6
- ["pushes as scriptSig, and one output of 0 satoshi and given scriptPubKey,"],
4
+ 'It is evaluated as if there was a crediting coinbase transaction with two 0'
5
+ ],
6
+ ['pushes as scriptSig, and one output of 0 satoshi and given scriptPubKey,'],
7
7
  [
8
- "followed by a spending transaction which spends this output as only input (and",
8
+ 'followed by a spending transaction which spends this output as only input (and'
9
9
  ],
10
10
  [
11
- "correct prevout hash), using the given scriptSig. All nLockTimes are 0, all",
11
+ 'correct prevout hash), using the given scriptSig. All nLockTimes are 0, all'
12
12
  ],
13
- ["nSequences are max."],
13
+ ['nSequences are max.'],
14
14
  [
15
- "",
16
- "740087",
17
- "P2SH,STRICTENC",
18
- "Test the test: we should have an empty stack after scriptSig evaluation",
15
+ '',
16
+ '740087',
17
+ 'P2SH,STRICTENC',
18
+ 'Test the test: we should have an empty stack after scriptSig evaluation'
19
19
  ],
20
20
  [
21
- "",
22
- "740087",
23
- "P2SH,STRICTENC",
24
- "and multiple spaces should not change that.",
21
+ '',
22
+ '740087',
23
+ 'P2SH,STRICTENC',
24
+ 'and multiple spaces should not change that.'
25
25
  ],
26
- ["", "740087", "P2SH,STRICTENC"],
27
- ["", "740087", "P2SH,STRICTENC"],
26
+ ['', '740087', 'P2SH,STRICTENC'],
27
+ ['', '740087', 'P2SH,STRICTENC'],
28
28
  [
29
- "5152",
30
- "52885187",
31
- "P2SH,STRICTENC",
32
- "Similarly whitespace around and between symbols",
29
+ '5152',
30
+ '52885187',
31
+ 'P2SH,STRICTENC',
32
+ 'Similarly whitespace around and between symbols'
33
33
  ],
34
- ["5152", "52885187", "P2SH,STRICTENC"],
35
- ["5152", "52885187", "P2SH,STRICTENC"],
36
- ["5152", "52885187", "P2SH,STRICTENC"],
37
- ["5152", "52885187", "P2SH,STRICTENC"],
38
- ["51", "", "P2SH,STRICTENC"],
34
+ ['5152', '52885187', 'P2SH,STRICTENC'],
35
+ ['5152', '52885187', 'P2SH,STRICTENC'],
36
+ ['5152', '52885187', 'P2SH,STRICTENC'],
37
+ ['5152', '52885187', 'P2SH,STRICTENC'],
38
+ ['51', '', 'P2SH,STRICTENC'],
39
39
  [
40
- "020100",
41
- "",
42
- "P2SH,STRICTENC",
43
- "all bytes are significant, not only the last one",
40
+ '020100',
41
+ '',
42
+ 'P2SH,STRICTENC',
43
+ 'all bytes are significant, not only the last one'
44
44
  ],
45
45
  [
46
- "09000000000000000010",
47
- "",
48
- "P2SH,STRICTENC",
49
- "equals zero when cast to Int64",
46
+ '09000000000000000010',
47
+ '',
48
+ 'P2SH,STRICTENC',
49
+ 'equals zero when cast to Int64'
50
50
  ],
51
- ["010b", "5b87", "P2SH,STRICTENC", "push 1 byte"],
52
- ["02417a", "417a87", "P2SH,STRICTENC"],
51
+ ['010b', '5b87', 'P2SH,STRICTENC', 'push 1 byte'],
52
+ ['02417a', '417a87', 'P2SH,STRICTENC'],
53
53
  [
54
- "4b417a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a",
55
- "417a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a87",
56
- "P2SH,STRICTENC",
57
- "push 75 bytes",
58
- ],
59
- ["4c0107", "5787", "P2SH,STRICTENC", "0x4c is OP_PUSHDATA1"],
60
- ["4d010008", "5887", "P2SH,STRICTENC", "0x4d is OP_PUSHDATA2"],
61
- ["4e0100000009", "5987", "P2SH,STRICTENC", "0x4e is OP_PUSHDATA4"],
62
- ["4c00", "0087", "P2SH,STRICTENC"],
63
- ["4d0000", "0087", "P2SH,STRICTENC"],
64
- ["4e00000000", "0087", "P2SH,STRICTENC"],
65
- ["4f02e80393", "02e70387", "P2SH,STRICTENC"],
66
- ["00", "63506851", "P2SH,STRICTENC", "0x50 is reserved (ok if not executed)"],
67
- [
68
- "51",
69
- "5f936087",
70
- "P2SH,STRICTENC",
71
- "0x51 through 0x60 push 1 through 16 onto stack",
72
- ],
73
- ["51", "61", "P2SH,STRICTENC"],
74
- [
75
- "00",
76
- "6362675168",
77
- "P2SH,STRICTENC",
78
- "VER non-functional (ok if not executed)",
79
- ],
80
- ["00", "6350898a675168", "P2SH,STRICTENC", "RESERVED ok in un-executed IF"],
81
- ["51", "766368", "P2SH,STRICTENC"],
82
- ["51", "635168", "P2SH,STRICTENC"],
83
- ["51", "76636768", "P2SH,STRICTENC"],
84
- ["51", "63516768", "P2SH,STRICTENC"],
85
- ["00", "63675168", "P2SH,STRICTENC"],
86
- ["5151", "63635167006868", "P2SH,STRICTENC"],
87
- ["5100", "63635167006868", "P2SH,STRICTENC"],
88
- ["5151", "63635167006867630067516868", "P2SH,STRICTENC"],
89
- ["0000", "63635167006867630067516868", "P2SH,STRICTENC"],
90
- ["5100", "64635167006868", "P2SH,STRICTENC"],
91
- ["5151", "64635167006868", "P2SH,STRICTENC"],
92
- ["5100", "64635167006867630067516868", "P2SH,STRICTENC"],
93
- ["0051", "64635167006867630067516868", "P2SH,STRICTENC"],
94
- [
95
- "00",
96
- "63006751670068",
97
- "P2SH,STRICTENC",
98
- "Multiple ELSE's are valid and executed inverts on each ELSE encountered",
99
- ],
100
- ["51", "635167006768", "P2SH,STRICTENC"],
101
- ["51", "636700675168", "P2SH,STRICTENC"],
102
- ["51", "63516700675168935287", "P2SH,STRICTENC"],
103
- [
104
- "51",
105
- "63a76767a76767a76767a76767a76767a76767a76767a76767a76767a76767a76767a76767a76767a76767a76767a76767a76767a76767a76767a7681468ca4fec736264c13b859bac43d5173df687168287",
106
- "P2SH,STRICTENC",
107
- ],
108
- [
109
- "51",
110
- "64006751670068",
111
- "P2SH,STRICTENC",
112
- "Multiple ELSE's are valid and execution inverts on each ELSE encountered",
113
- ],
114
- ["00", "645167006768", "P2SH,STRICTENC"],
115
- ["00", "646700675168", "P2SH,STRICTENC"],
116
- ["00", "64516700675168935287", "P2SH,STRICTENC"],
117
- [
118
- "00",
119
- "64a76767a76767a76767a76767a76767a76767a76767a76767a76767a76767a76767a76767a76767a76767a76767a76767a76767a76767a76767a7681468ca4fec736264c13b859bac43d5173df687168287",
120
- "P2SH,STRICTENC",
121
- ],
122
- [
123
- "00",
124
- "6351636a676a676a6867516351676a675168676a68935287",
125
- "P2SH,STRICTENC",
126
- "Nested ELSE ELSE",
127
- ],
128
- ["51", "6400646a676a676a6867006451676a675168676a68935287", "P2SH,STRICTENC"],
129
- ["00", "636a6851", "P2SH,STRICTENC", "RETURN only works if executed"],
130
- ["5151", "69", "P2SH,STRICTENC"],
131
- [
132
- "51050100000000",
133
- "69",
134
- "P2SH,STRICTENC",
135
- "values >4 bytes can be cast to boolean",
136
- ],
137
- ["510180", "630068", "P2SH,STRICTENC", "negative 0 is false"],
138
- ["5a005b6b756c", "93011587", "P2SH,STRICTENC"],
139
- [
140
- "676176696e5f7761735f686572656b5b6c",
141
- "676176696e5f7761735f68657265885b87",
142
- "P2SH,STRICTENC",
143
- ],
144
- ["0073", "7451880087", "P2SH,STRICTENC"],
145
- ["5173", "74528851885187", "P2SH,STRICTENC"],
146
- [
147
- "05010000000073",
148
- "74528805010000000087",
149
- "P2SH,STRICTENC",
150
- "IFDUP dups non ints",
151
- ],
152
- ["0075", "740087", "P2SH,STRICTENC"],
153
- ["00", "76519351880087", "P2SH,STRICTENC"],
154
- ["0051", "77", "P2SH,STRICTENC"],
155
- ["5100", "78745388", "P2SH,STRICTENC"],
156
- ["011601150114", "0079011488745387", "P2SH,STRICTENC"],
157
- ["011601150114", "5179011588745387", "P2SH,STRICTENC"],
158
- ["011601150114", "5279011688745387", "P2SH,STRICTENC"],
159
- ["011601150114", "007a011488745287", "P2SH,STRICTENC"],
160
- ["011601150114", "517a011588745287", "P2SH,STRICTENC"],
161
- ["011601150114", "527a011688745287", "P2SH,STRICTENC"],
162
- ["011601150114", "7b011687", "P2SH,STRICTENC"],
163
- ["011601150114", "7b75011487", "P2SH,STRICTENC"],
164
- ["011601150114", "7b7575011587", "P2SH,STRICTENC"],
165
- ["011601150114", "7b7b011587", "P2SH,STRICTENC"],
166
- ["011601150114", "7b7b7b011487", "P2SH,STRICTENC"],
167
- ["011901180117011601150114", "71011887", "P2SH,STRICTENC"],
168
- ["011901180117011601150114", "7175011987", "P2SH,STRICTENC"],
169
- ["011901180117011601150114", "716d011487", "P2SH,STRICTENC"],
170
- ["011901180117011601150114", "716d75011587", "P2SH,STRICTENC"],
171
- ["011901180117011601150114", "716d6d011687", "P2SH,STRICTENC"],
172
- ["011901180117011601150114", "716d6d75011787", "P2SH,STRICTENC"],
173
- ["011901180117011601150114", "7171011687", "P2SH,STRICTENC"],
174
- ["011901180117011601150114", "717171011487", "P2SH,STRICTENC"],
175
- ["5100", "7c51880087", "P2SH,STRICTENC"],
176
- ["0051", "7d7453887c6d", "P2SH,STRICTENC"],
177
- ["5d5e", "6e7b8887", "P2SH,STRICTENC"],
178
- ["4f005152", "6f745788939353886d0088", "P2SH,STRICTENC"],
179
- ["51525355", "709393588893935687", "P2SH,STRICTENC"],
180
- ["51535557", "72935488935c87", "P2SH,STRICTENC"],
181
- ["00", "820087", "P2SH,STRICTENC"],
182
- ["51", "825187", "P2SH,STRICTENC"],
183
- ["017f", "825187", "P2SH,STRICTENC"],
184
- ["028000", "825287", "P2SH,STRICTENC"],
185
- ["02ff7f", "825287", "P2SH,STRICTENC"],
186
- ["03008000", "825387", "P2SH,STRICTENC"],
187
- ["03ffff7f", "825387", "P2SH,STRICTENC"],
188
- ["0400008000", "825487", "P2SH,STRICTENC"],
189
- ["04ffffff7f", "825487", "P2SH,STRICTENC"],
190
- ["050000008000", "825587", "P2SH,STRICTENC"],
191
- ["05ffffffff7f", "825587", "P2SH,STRICTENC"],
192
- ["06000000008000", "825687", "P2SH,STRICTENC"],
193
- ["08ffffffffffffff7f", "825887", "P2SH,STRICTENC"],
194
- ["4f", "825187", "P2SH,STRICTENC"],
195
- ["01ff", "825187", "P2SH,STRICTENC"],
196
- ["028080", "825287", "P2SH,STRICTENC"],
197
- ["02ffff", "825287", "P2SH,STRICTENC"],
198
- ["03008080", "825387", "P2SH,STRICTENC"],
199
- ["03ffffff", "825387", "P2SH,STRICTENC"],
200
- ["0400008080", "825487", "P2SH,STRICTENC"],
201
- ["04ffffffff", "825487", "P2SH,STRICTENC"],
202
- ["050000008080", "825587", "P2SH,STRICTENC"],
203
- ["05ffffffffff", "825587", "P2SH,STRICTENC"],
204
- ["06000000008080", "825687", "P2SH,STRICTENC"],
205
- ["08ffffffffffffffff", "825887", "P2SH,STRICTENC"],
206
- [
207
- "6162636465666768696a6b6c6d6e6f707172737475767778797a",
208
- "82011a87",
209
- "P2SH,STRICTENC",
210
- ],
211
- ["012a", "825188012a87", "P2SH,STRICTENC", "SIZE does not consume argument"],
212
- ["52018293", "0087", "P2SH,STRICTENC"],
213
- ["04ffffff7f04ffffffff93", "0087", "P2SH,STRICTENC"],
214
- ["4f4f93", "018287", "P2SH,STRICTENC"],
215
- ["0000", "87", "P2SH,STRICTENC"],
216
- ["515193", "5287", "P2SH,STRICTENC"],
217
- ["518b", "5287", "P2SH,STRICTENC"],
218
- ["016f8c", "016e87", "P2SH,STRICTENC"],
219
- ["016f51935c94", "016487", "P2SH,STRICTENC"],
220
- ["0090", "0087", "P2SH,STRICTENC"],
221
- ["6090", "6087", "P2SH,STRICTENC"],
222
- ["019090", "01908f87", "P2SH,STRICTENC"],
223
- ["0091", "61", "P2SH,STRICTENC"],
224
- ["5191", "0087", "P2SH,STRICTENC"],
225
- ["5b91", "0087", "P2SH,STRICTENC"],
226
- ["0092", "0087", "P2SH,STRICTENC"],
227
- ["5192", "5187", "P2SH,STRICTENC"],
228
- ["016f92", "5187", "P2SH,STRICTENC"],
229
- ["01ef92", "5187", "P2SH,STRICTENC"],
230
- ["51519a", "61", "P2SH,STRICTENC"],
231
- ["51009a", "91", "P2SH,STRICTENC"],
232
- ["00519a", "91", "P2SH,STRICTENC"],
233
- ["00009a", "91", "P2SH,STRICTENC"],
234
- ["6001119a", "61", "P2SH,STRICTENC"],
235
- ["51519b", "61", "P2SH,STRICTENC"],
236
- ["51009b", "61", "P2SH,STRICTENC"],
237
- ["00519b", "61", "P2SH,STRICTENC"],
238
- ["00009b", "91", "P2SH,STRICTENC"],
239
- ["6001119b", "61", "P2SH,STRICTENC"],
240
- ["5b5a5193", "9c", "P2SH,STRICTENC"],
241
- ["5b5a5193", "9d51", "P2SH,STRICTENC"],
242
- ["5b5a5193", "9e91", "P2SH,STRICTENC"],
243
- ["016f5a5193", "9e", "P2SH,STRICTENC"],
244
- ["5b5a", "9f91", "P2SH,STRICTENC"],
245
- ["5454", "9f91", "P2SH,STRICTENC"],
246
- ["5a5b", "9f", "P2SH,STRICTENC"],
247
- ["018b5b", "9f", "P2SH,STRICTENC"],
248
- ["018b018a", "9f", "P2SH,STRICTENC"],
249
- ["5b5a", "a0", "P2SH,STRICTENC"],
250
- ["5454", "a091", "P2SH,STRICTENC"],
251
- ["5a5b", "a091", "P2SH,STRICTENC"],
252
- ["018b5b", "a091", "P2SH,STRICTENC"],
253
- ["018b018a", "a091", "P2SH,STRICTENC"],
254
- ["5b5a", "a191", "P2SH,STRICTENC"],
255
- ["5454", "a1", "P2SH,STRICTENC"],
256
- ["5a5b", "a1", "P2SH,STRICTENC"],
257
- ["018b5b", "a1", "P2SH,STRICTENC"],
258
- ["018b018a", "a1", "P2SH,STRICTENC"],
259
- ["5b5a", "a2", "P2SH,STRICTENC"],
260
- ["5454", "a2", "P2SH,STRICTENC"],
261
- ["5a5b", "a291", "P2SH,STRICTENC"],
262
- ["018b5b", "a291", "P2SH,STRICTENC"],
263
- ["018b018a", "a291", "P2SH,STRICTENC"],
264
- ["5100a3", "009c", "P2SH,STRICTENC"],
265
- ["0051a3", "009c", "P2SH,STRICTENC"],
266
- ["4f00a3", "4f9c", "P2SH,STRICTENC"],
267
- ["0004ffffffffa3", "04ffffffff9c", "P2SH,STRICTENC"],
268
- ["04ffffff7f00a4", "04ffffff7f9c", "P2SH,STRICTENC"],
269
- ["000164a4", "01649c", "P2SH,STRICTENC"],
270
- ["01e400a4", "009c", "P2SH,STRICTENC"],
271
- ["0004ffffffffa4", "009c", "P2SH,STRICTENC"],
272
- ["000051", "a5", "P2SH,STRICTENC"],
273
- ["510051", "a591", "P2SH,STRICTENC"],
274
- ["0004ffffffff04ffffff7f", "a5", "P2SH,STRICTENC"],
275
- ["4f01e40164", "a5", "P2SH,STRICTENC"],
276
- ["5b01e40164", "a5", "P2SH,STRICTENC"],
277
- ["04ffffffff01e40164", "a591", "P2SH,STRICTENC"],
278
- ["04ffffff7f01e40164", "a591", "P2SH,STRICTENC"],
279
- ["04ffffff7f04ffffff7f94", "0087", "P2SH,STRICTENC"],
280
- [
281
- "04ffffff7f7693",
282
- "05feffffff0087",
283
- "P2SH,STRICTENC",
284
- ">32 bit EQUAL is valid",
285
- ],
286
- ["04ffffff7f8f7693", "05feffffff8087", "P2SH,STRICTENC"],
287
- ["", "a6149c1185a5c5e9fc54612808977ee8f548b2258d3187", "P2SH,STRICTENC"],
288
- ["61", "a6140bdc9d2d256b3ee9daae347be6f4dc835a467ffe87", "P2SH,STRICTENC"],
289
- [
290
- "6162636465666768696a6b6c6d6e6f707172737475767778797a",
291
- "a614f71c27109c692c1b56bbdceb5b9d2865b3708dbc87",
292
- "P2SH,STRICTENC",
293
- ],
294
- ["", "a714da39a3ee5e6b4b0d3255bfef95601890afd8070987", "P2SH,STRICTENC"],
295
- ["61", "a71486f7e437faa5a7fce15d1ddcb9eaeaea377667b887", "P2SH,STRICTENC"],
296
- [
297
- "6162636465666768696a6b6c6d6e6f707172737475767778797a",
298
- "a71432d10c7b8cf96570ca04ce37f2a19d84240d3a8987",
299
- "P2SH,STRICTENC",
300
- ],
301
- [
302
- "",
303
- "a820e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85587",
304
- "P2SH,STRICTENC",
305
- ],
306
- [
307
- "61",
308
- "a820ca978112ca1bbdcafac231b39a23dc4da786eff8147c4e72b9807785afee48bb87",
309
- "P2SH,STRICTENC",
310
- ],
311
- [
312
- "6162636465666768696a6b6c6d6e6f707172737475767778797a",
313
- "a82071c480df93d6ae2f1efad1447c66c9525e316218cf51fc8d9ed832f2daf18b7387",
314
- "P2SH,STRICTENC",
315
- ],
316
- ["", "76a97ca8a687", "P2SH,STRICTENC"],
317
- ["", "76aa7ca8a887", "P2SH,STRICTENC"],
318
- ["", "61a914b472a266d0bd89c13706a4132ccfb16f7c3b9fcb87", "P2SH,STRICTENC"],
319
- ["61", "a96114994355199e516ff76c4fa4aab39337b9d84cf12b87", "P2SH,STRICTENC"],
320
- [
321
- "6162636465666768696a6b6c6d6e6f707172737475767778797a",
322
- "a94c14c286a1af0947f58d1ad787385b1c2c4a976f9e7187",
323
- "P2SH,STRICTENC",
324
- ],
325
- [
326
- "",
327
- "aa205df6e0e2761359d30a8275058e299fcc0381534545f55cf43e41983f5d4c945687",
328
- "P2SH,STRICTENC",
329
- ],
330
- [
331
- "61",
332
- "aa20bf5d3affb73efd2ec6c36ad3112dd933efed63c4e1cbffcfa88e2759c144f2d887",
333
- "P2SH,STRICTENC",
334
- ],
335
- [
336
- "6162636465666768696a6b6c6d6e6f707172737475767778797a",
337
- "aa4c20ca139bc10c2f660da42666f72e89a225936fc60f193c161124a672050c43467187",
338
- "P2SH,STRICTENC",
339
- ],
340
- ["51", "b0b1b2b3b4b5b6b7b8b95187", "P2SH,STRICTENC"],
341
- [
342
- "4e060000005f746f5f3130b0b1b2b3b4b5b6b7b8b9",
343
- "4e060000005f746f5f313087",
344
- "P2SH,STRICTENC",
345
- ],
346
- [
347
- "51",
348
- "61",
349
- "P2SH,STRICTENC,DISCOURAGE_UPGRADABLE_NOPS",
350
- "Discourage NOPx flag allows OP_NOP",
351
- ],
352
- [
353
- "00",
354
- "63b96851",
355
- "P2SH,STRICTENC,DISCOURAGE_UPGRADABLE_NOPS",
356
- "Discouraged NOPs are allowed if not executed",
357
- ],
358
- [
359
- "00",
360
- "63ba675168",
361
- "P2SH,STRICTENC",
362
- "opcodes above NOP10 invalid if executed",
363
- ],
364
- ["00", "63bb675168", "P2SH,STRICTENC"],
365
- ["00", "63bc675168", "P2SH,STRICTENC"],
366
- ["00", "63bd675168", "P2SH,STRICTENC"],
367
- ["00", "63be675168", "P2SH,STRICTENC"],
368
- ["00", "63bf675168", "P2SH,STRICTENC"],
369
- ["00", "63c0675168", "P2SH,STRICTENC"],
370
- ["00", "63c1675168", "P2SH,STRICTENC"],
371
- ["00", "63c2675168", "P2SH,STRICTENC"],
372
- ["00", "63c3675168", "P2SH,STRICTENC"],
373
- ["00", "63c4675168", "P2SH,STRICTENC"],
374
- ["00", "63c5675168", "P2SH,STRICTENC"],
375
- ["00", "63c6675168", "P2SH,STRICTENC"],
376
- ["00", "63c7675168", "P2SH,STRICTENC"],
377
- ["00", "63c8675168", "P2SH,STRICTENC"],
378
- ["00", "63c9675168", "P2SH,STRICTENC"],
379
- ["00", "63ca675168", "P2SH,STRICTENC"],
380
- ["00", "63cb675168", "P2SH,STRICTENC"],
381
- ["00", "63cc675168", "P2SH,STRICTENC"],
382
- ["00", "63cd675168", "P2SH,STRICTENC"],
383
- ["00", "63ce675168", "P2SH,STRICTENC"],
384
- ["00", "63cf675168", "P2SH,STRICTENC"],
385
- ["00", "63d0675168", "P2SH,STRICTENC"],
386
- ["00", "63d1675168", "P2SH,STRICTENC"],
387
- ["00", "63d2675168", "P2SH,STRICTENC"],
388
- ["00", "63d3675168", "P2SH,STRICTENC"],
389
- ["00", "63d4675168", "P2SH,STRICTENC"],
390
- ["00", "63d5675168", "P2SH,STRICTENC"],
391
- ["00", "63d6675168", "P2SH,STRICTENC"],
392
- ["00", "63d7675168", "P2SH,STRICTENC"],
393
- ["00", "63d8675168", "P2SH,STRICTENC"],
394
- ["00", "63d9675168", "P2SH,STRICTENC"],
395
- ["00", "63da675168", "P2SH,STRICTENC"],
396
- ["00", "63db675168", "P2SH,STRICTENC"],
397
- ["00", "63dc675168", "P2SH,STRICTENC"],
398
- ["00", "63dd675168", "P2SH,STRICTENC"],
399
- ["00", "63de675168", "P2SH,STRICTENC"],
400
- ["00", "63df675168", "P2SH,STRICTENC"],
401
- ["00", "63e0675168", "P2SH,STRICTENC"],
402
- ["00", "63e1675168", "P2SH,STRICTENC"],
403
- ["00", "63e2675168", "P2SH,STRICTENC"],
404
- ["00", "63e3675168", "P2SH,STRICTENC"],
405
- ["00", "63e4675168", "P2SH,STRICTENC"],
406
- ["00", "63e5675168", "P2SH,STRICTENC"],
407
- ["00", "63e6675168", "P2SH,STRICTENC"],
408
- ["00", "63e7675168", "P2SH,STRICTENC"],
409
- ["00", "63e8675168", "P2SH,STRICTENC"],
410
- ["00", "63e9675168", "P2SH,STRICTENC"],
411
- ["00", "63ea675168", "P2SH,STRICTENC"],
412
- ["00", "63eb675168", "P2SH,STRICTENC"],
413
- ["00", "63ec675168", "P2SH,STRICTENC"],
414
- ["00", "63ed675168", "P2SH,STRICTENC"],
415
- ["00", "63ee675168", "P2SH,STRICTENC"],
416
- ["00", "63ef675168", "P2SH,STRICTENC"],
417
- ["00", "63f0675168", "P2SH,STRICTENC"],
418
- ["00", "63f1675168", "P2SH,STRICTENC"],
419
- ["00", "63f2675168", "P2SH,STRICTENC"],
420
- ["00", "63f3675168", "P2SH,STRICTENC"],
421
- ["00", "63f4675168", "P2SH,STRICTENC"],
422
- ["00", "63f5675168", "P2SH,STRICTENC"],
423
- ["00", "63f6675168", "P2SH,STRICTENC"],
424
- ["00", "63f7675168", "P2SH,STRICTENC"],
425
- ["00", "63f8675168", "P2SH,STRICTENC"],
426
- ["00", "63f9675168", "P2SH,STRICTENC"],
427
- ["00", "63fa675168", "P2SH,STRICTENC"],
428
- ["00", "63fb675168", "P2SH,STRICTENC"],
429
- ["00", "63fc675168", "P2SH,STRICTENC"],
430
- ["00", "63fd675168", "P2SH,STRICTENC"],
431
- ["00", "63fe675168", "P2SH,STRICTENC"],
432
- ["00", "63ff675168", "P2SH,STRICTENC"],
433
- [
434
- "61",
435
- "62626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262",
436
- "P2SH,STRICTENC",
437
- "520 byte push",
438
- ],
439
- [
440
- "51",
441
- "616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161",
442
- "P2SH,STRICTENC",
443
- "201 opcodes executed. 0x61 is NOP",
444
- ],
445
- [
446
- "51525354556f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f",
447
- "51525354556f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f",
448
- "P2SH,STRICTENC",
449
- "1,000 stack size (0x6f is 3DUP)",
450
- ],
451
- [
452
- "516b526b5354556f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f",
453
- "515253545556576f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f",
454
- "P2SH,STRICTENC",
455
- "1,000 stack size (altstack cleared between scriptSig/scriptPubKey)",
456
- ],
457
- [
458
- "616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f",
459
- "616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6e616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161",
460
- "P2SH,STRICTENC",
461
- "Max-size (10,000-byte), max-push(520 bytes), max-opcodes(201), max stack size(1,000 items). 0x6f is 3DUP, 0x61 is NOP",
462
- ],
463
- [
464
- "00",
465
- "6350505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050506851",
466
- "P2SH,STRICTENC",
467
- ">201 opcodes, but RESERVED (0x50) doesn't count towards opcode limit.",
468
- ],
469
- ["61", "51", "P2SH,STRICTENC"],
470
- [
471
- "51",
472
- "010187",
473
- "P2SH,STRICTENC",
474
- "The following is useful for checking implementations of BN_bn2mpi",
475
- ],
476
- ["017f", "017f87", "P2SH,STRICTENC"],
477
- ["028000", "02800087", "P2SH,STRICTENC", "Leave room for the sign bit"],
478
- ["02ff7f", "02ff7f87", "P2SH,STRICTENC"],
479
- ["03008000", "0300800087", "P2SH,STRICTENC"],
480
- ["03ffff7f", "03ffff7f87", "P2SH,STRICTENC"],
481
- ["0400008000", "040000800087", "P2SH,STRICTENC"],
482
- ["04ffffff7f", "04ffffff7f87", "P2SH,STRICTENC"],
483
- ["050000008000", "05000000800087", "P2SH,STRICTENC"],
484
- ["05ffffffff7f", "05ffffffff7f87", "P2SH,STRICTENC"],
485
- ["06000000008000", "06ffffffff7f87", "P2SH,STRICTENC"],
486
- ["08ffffffffffffff7f", "08ffffffffffffff7f87", "P2SH,STRICTENC"],
487
- [
488
- "4f",
489
- "018187",
490
- "P2SH,STRICTENC",
491
- "Numbers are little-endian with the MSB being a sign bit",
492
- ],
493
- ["01ff", "01ff87", "P2SH,STRICTENC"],
494
- ["028080", "02808087", "P2SH,STRICTENC"],
495
- ["02ffff", "02ffff87", "P2SH,STRICTENC"],
496
- ["03008080", "0300808087", "P2SH,STRICTENC"],
497
- ["03ffffff", "03ffffff87", "P2SH,STRICTENC"],
498
- ["0400008080", "040000808087", "P2SH,STRICTENC"],
499
- ["04ffffffff", "04ffffffff87", "P2SH,STRICTENC"],
500
- ["050000008080", "05000000808087", "P2SH,STRICTENC"],
501
- ["05ffffffff80", "05ffffffff8087", "P2SH,STRICTENC"],
502
- ["05ffffffffff", "05ffffffffff87", "P2SH,STRICTENC"],
503
- ["06000000008080", "0600000000808087", "P2SH,STRICTENC"],
504
- ["08ffffffffffffffff", "08ffffffffffffffff87", "P2SH,STRICTENC"],
505
- [
506
- "04ffffff7f",
507
- "8b05000000800087",
508
- "P2SH,STRICTENC",
509
- "We can do math on 4-byte integers, and compare 5-byte ones",
510
- ],
511
- ["04ffffff7f", "8b51", "P2SH,STRICTENC"],
512
- ["04ffffffff", "8b51", "P2SH,STRICTENC"],
513
- ["51", "0201008791", "P2SH,STRICTENC", "Not the same byte array..."],
514
- ["51", "0201009c", "P2SH,STRICTENC", "... but they are numerically equal"],
515
- ["5b", "4c030b00009c", "P2SH,STRICTENC"],
516
- ["00", "01808791", "P2SH,STRICTENC"],
517
- ["00", "01809c", "P2SH,STRICTENC", "Zero numerically equals negative zero"],
518
- ["00", "0200809c", "P2SH,STRICTENC"],
519
- ["03000080", "04000000809c", "P2SH,STRICTENC"],
520
- ["03100080", "04100000809c", "P2SH,STRICTENC"],
521
- ["03100000", "04100000009c", "P2SH,STRICTENC"],
522
- [
523
- "61",
524
- "6151",
525
- "P2SH,STRICTENC",
526
- "The following tests check the if(stack.size() < N) tests in each opcode",
527
- ],
528
- [
529
- "51",
530
- "635168",
531
- "P2SH,STRICTENC",
532
- "They are here to catch copy-and-paste errors",
533
- ],
534
- ["00", "645168", "P2SH,STRICTENC", "Most of them are duplicated elsewhere,"],
535
- ["51", "6951", "P2SH,STRICTENC", "but, hey, more is always better, right?"],
536
- ["00", "6b51", "P2SH,STRICTENC"],
537
- ["51", "6b6c", "P2SH,STRICTENC"],
538
- ["0000", "6d51", "P2SH,STRICTENC"],
539
- ["0051", "6e", "P2SH,STRICTENC"],
540
- ["000051", "6f", "P2SH,STRICTENC"],
541
- ["00510000", "70", "P2SH,STRICTENC"],
542
- ["005100000000", "71", "P2SH,STRICTENC"],
543
- ["00510000", "72", "P2SH,STRICTENC"],
544
- ["51", "73", "P2SH,STRICTENC"],
545
- ["61", "7451", "P2SH,STRICTENC"],
546
- ["00", "7551", "P2SH,STRICTENC"],
547
- ["51", "76", "P2SH,STRICTENC"],
548
- ["0051", "77", "P2SH,STRICTENC"],
549
- ["5100", "78", "P2SH,STRICTENC"],
550
- ["5100000053", "79", "P2SH,STRICTENC"],
551
- ["5100", "79", "P2SH,STRICTENC"],
552
- ["5100000053", "7a", "P2SH,STRICTENC"],
553
- ["5100", "7a", "P2SH,STRICTENC"],
554
- ["510000", "7b", "P2SH,STRICTENC"],
555
- ["5100", "7c", "P2SH,STRICTENC"],
556
- ["0051", "7d", "P2SH,STRICTENC"],
557
- ["51", "82", "P2SH,STRICTENC"],
558
- ["0000", "87", "P2SH,STRICTENC"],
559
- ["0000", "8851", "P2SH,STRICTENC"],
560
- [
561
- "000051",
562
- "8787",
563
- "P2SH,STRICTENC",
564
- "OP_0 and bools must have identical byte representations",
565
- ],
566
- ["00", "8b", "P2SH,STRICTENC"],
567
- ["52", "8c", "P2SH,STRICTENC"],
568
- ["4f", "8f", "P2SH,STRICTENC"],
569
- ["4f", "90", "P2SH,STRICTENC"],
570
- ["00", "91", "P2SH,STRICTENC"],
571
- ["4f", "92", "P2SH,STRICTENC"],
572
- ["5100", "93", "P2SH,STRICTENC"],
573
- ["5100", "94", "P2SH,STRICTENC"],
574
- ["4f4f", "9a", "P2SH,STRICTENC"],
575
- ["4f00", "9b", "P2SH,STRICTENC"],
576
- ["0000", "9c", "P2SH,STRICTENC"],
577
- ["0000", "9d51", "P2SH,STRICTENC"],
578
- ["4f00", "9e", "P2SH,STRICTENC"],
579
- ["4f00", "9f", "P2SH,STRICTENC"],
580
- ["5100", "a0", "P2SH,STRICTENC"],
581
- ["0000", "a1", "P2SH,STRICTENC"],
582
- ["0000", "a2", "P2SH,STRICTENC"],
583
- ["4f00", "a3", "P2SH,STRICTENC"],
584
- ["5100", "a4", "P2SH,STRICTENC"],
585
- ["4f4f00", "a5", "P2SH,STRICTENC"],
586
- ["00", "a6", "P2SH,STRICTENC"],
587
- ["00", "a7", "P2SH,STRICTENC"],
588
- ["00", "a8", "P2SH,STRICTENC"],
589
- ["00", "a9", "P2SH,STRICTENC"],
590
- ["00", "aa", "P2SH,STRICTENC"],
591
- ["61", "ab51", "P2SH,STRICTENC"],
592
- ["61", "b051", "P2SH,STRICTENC"],
593
- ["61", "b151", "P2SH,STRICTENC"],
594
- ["61", "b251", "P2SH,STRICTENC"],
595
- ["61", "b351", "P2SH,STRICTENC"],
596
- ["61", "b451", "P2SH,STRICTENC"],
597
- ["61", "b551", "P2SH,STRICTENC"],
598
- ["61", "b651", "P2SH,STRICTENC"],
599
- ["61", "b751", "P2SH,STRICTENC"],
600
- ["61", "b851", "P2SH,STRICTENC"],
601
- ["61", "b951", "P2SH,STRICTENC"],
602
- [
603
- "",
604
- "000000ae69740087",
605
- "P2SH,STRICTENC",
606
- "CHECKMULTISIG is allowed to have zero keys and/or sigs",
607
- ],
608
- ["", "000000af740087", "P2SH,STRICTENC"],
609
- [
610
- "",
611
- "00000051ae69740087",
612
- "P2SH,STRICTENC",
613
- "Zero sigs means no sigs are checked",
614
- ],
615
- ["", "00000051af740087", "P2SH,STRICTENC"],
616
- [
617
- "",
618
- "000000ae69740087",
619
- "P2SH,STRICTENC",
620
- "CHECKMULTISIG is allowed to have zero keys and/or sigs",
621
- ],
622
- ["", "000000af740087", "P2SH,STRICTENC"],
623
- [
624
- "",
625
- "00000051ae69740087",
626
- "P2SH,STRICTENC",
627
- "Zero sigs means no sigs are checked",
628
- ],
629
- ["", "00000051af740087", "P2SH,STRICTENC"],
630
- [
631
- "",
632
- "0000616252ae69740087",
633
- "P2SH,STRICTENC",
634
- "Test from up to 20 pubkeys, all not checked",
635
- ],
636
- ["", "000061626353ae69740087", "P2SH,STRICTENC"],
637
- ["", "00006162636454ae69740087", "P2SH,STRICTENC"],
638
- ["", "0000616263646555ae69740087", "P2SH,STRICTENC"],
639
- ["", "000061626364656656ae69740087", "P2SH,STRICTENC"],
640
- ["", "00006162636465666757ae69740087", "P2SH,STRICTENC"],
641
- ["", "0000616263646566676858ae69740087", "P2SH,STRICTENC"],
642
- ["", "000061626364656667686959ae69740087", "P2SH,STRICTENC"],
643
- ["", "00006162636465666768696a5aae69740087", "P2SH,STRICTENC"],
644
- ["", "00006162636465666768696a6b5bae69740087", "P2SH,STRICTENC"],
645
- ["", "00006162636465666768696a6b6c5cae69740087", "P2SH,STRICTENC"],
646
- ["", "00006162636465666768696a6b6c6d5dae69740087", "P2SH,STRICTENC"],
647
- ["", "00006162636465666768696a6b6c6d6e5eae69740087", "P2SH,STRICTENC"],
648
- ["", "00006162636465666768696a6b6c6d6e6f5fae69740087", "P2SH,STRICTENC"],
649
- ["", "00006162636465666768696a6b6c6d6e6f7060ae69740087", "P2SH,STRICTENC"],
650
- [
651
- "",
652
- "00006162636465666768696a6b6c6d6e6f70710111ae69740087",
653
- "P2SH,STRICTENC",
654
- ],
655
- [
656
- "",
657
- "00006162636465666768696a6b6c6d6e6f7071720112ae69740087",
658
- "P2SH,STRICTENC",
659
- ],
660
- [
661
- "",
662
- "00006162636465666768696a6b6c6d6e6f707172730113ae69740087",
663
- "P2SH,STRICTENC",
664
- ],
665
- [
666
- "",
667
- "00006162636465666768696a6b6c6d6e6f70717273740114ae69740087",
668
- "P2SH,STRICTENC",
669
- ],
670
- ["", "00006151af740087", "P2SH,STRICTENC"],
671
- ["", "0000616252af740087", "P2SH,STRICTENC"],
672
- ["", "000061626353af740087", "P2SH,STRICTENC"],
673
- ["", "00006162636454af740087", "P2SH,STRICTENC"],
674
- ["", "0000616263646555af740087", "P2SH,STRICTENC"],
675
- ["", "000061626364656656af740087", "P2SH,STRICTENC"],
676
- ["", "00006162636465666757af740087", "P2SH,STRICTENC"],
677
- ["", "0000616263646566676858af740087", "P2SH,STRICTENC"],
678
- ["", "000061626364656667686959af740087", "P2SH,STRICTENC"],
679
- ["", "00006162636465666768696a5aaf740087", "P2SH,STRICTENC"],
680
- ["", "00006162636465666768696a6b5baf740087", "P2SH,STRICTENC"],
681
- ["", "00006162636465666768696a6b6c5caf740087", "P2SH,STRICTENC"],
682
- ["", "00006162636465666768696a6b6c6d5daf740087", "P2SH,STRICTENC"],
683
- ["", "00006162636465666768696a6b6c6d6e5eaf740087", "P2SH,STRICTENC"],
684
- ["", "00006162636465666768696a6b6c6d6e6f5faf740087", "P2SH,STRICTENC"],
685
- ["", "00006162636465666768696a6b6c6d6e6f7060af740087", "P2SH,STRICTENC"],
686
- ["", "00006162636465666768696a6b6c6d6e6f70710111af740087", "P2SH,STRICTENC"],
687
- [
688
- "",
689
- "00006162636465666768696a6b6c6d6e6f7071720112af740087",
690
- "P2SH,STRICTENC",
691
- ],
692
- [
693
- "",
694
- "00006162636465666768696a6b6c6d6e6f707172730113af740087",
695
- "P2SH,STRICTENC",
696
- ],
697
- [
698
- "",
699
- "00006162636465666768696a6b6c6d6e6f70717273740114af740087",
700
- "P2SH,STRICTENC",
701
- ],
702
- [
703
- "",
704
- "000000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae",
705
- "P2SH,STRICTENC",
706
- "nOpCount is incremented by the number of keys evaluated in addition to the usual one op per op. In this case we have zero keys, so we can execute 201 CHECKMULTISIGS",
707
- ],
708
- [
709
- "51",
710
- "000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af",
711
- "P2SH,STRICTENC",
712
- ],
713
- [
714
- "",
715
- "61616161616161616161616100006162636465666768696a6b6c6d6e6f70717273740114ae00006162636465666768696a6b6c6d6e6f70717273740114ae00006162636465666768696a6b6c6d6e6f70717273740114ae00006162636465666768696a6b6c6d6e6f70717273740114ae00006162636465666768696a6b6c6d6e6f70717273740114ae00006162636465666768696a6b6c6d6e6f70717273740114ae00006162636465666768696a6b6c6d6e6f70717273740114ae00006162636465666768696a6b6c6d6e6f70717273740114ae00006162636465666768696a6b6c6d6e6f70717273740114ae",
716
- "P2SH,STRICTENC",
717
- "Even though there are no signatures being checked nOpCount is incremented by the number of keys.",
718
- ],
719
- [
720
- "51",
721
- "61616161616161616161616100006162636465666768696a6b6c6d6e6f70717273740114af00006162636465666768696a6b6c6d6e6f70717273740114af00006162636465666768696a6b6c6d6e6f70717273740114af00006162636465666768696a6b6c6d6e6f70717273740114af00006162636465666768696a6b6c6d6e6f70717273740114af00006162636465666768696a6b6c6d6e6f70717273740114af00006162636465666768696a6b6c6d6e6f70717273740114af00006162636465666768696a6b6c6d6e6f70717273740114af00006162636465666768696a6b6c6d6e6f70717273740114af",
722
- "P2SH,STRICTENC",
723
- ],
724
- [
725
- "000151",
726
- "a914da1745e9b549bd0bfa1a569971c77eba30cd5a4b87",
727
- "P2SH,STRICTENC",
728
- "Very basic P2SH",
729
- ],
730
- [
731
- "4c000151",
732
- "a914da1745e9b549bd0bfa1a569971c77eba30cd5a4b87",
733
- "P2SH,STRICTENC",
734
- ],
735
- [
736
- "4042424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242",
737
- "4d40004242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424287",
738
- "P2SH,STRICTENC",
739
- "Basic PUSH signedness check",
740
- ],
741
- [
742
- "4c4042424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242",
743
- "4d40004242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424287",
744
- "P2SH,STRICTENC",
745
- "Basic PUSHDATA1 signedness check",
746
- ],
747
- ["all PUSHDATA forms are equivalent"],
748
- [
749
- "4c4b111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111",
750
- "4b11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111187",
751
- "",
752
- "PUSHDATA1 of 75 bytes equals direct push of it",
753
- ],
754
- [
755
- "4dff00111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111",
756
- "4cff11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111187",
757
- "",
758
- "PUSHDATA2 of 255 bytes equals PUSHDATA1 of it",
759
- ],
760
- ["00", "820087", "P2SH,STRICTENC", "Basic OP_0 execution"],
761
- ["Numeric pushes"],
762
- ["0181", "4f87", "", "OP1_NEGATE pushes 0x81"],
763
- ["0101", "5187", "", "OP_1 pushes 0x01"],
764
- ["0102", "5287", "", "OP_2 pushes 0x02"],
765
- ["0103", "5387", "", "OP_3 pushes 0x03"],
766
- ["0104", "5487", "", "OP_4 pushes 0x04"],
767
- ["0105", "5587", "", "OP_5 pushes 0x05"],
768
- ["0106", "5687", "", "OP_6 pushes 0x06"],
769
- ["0107", "5787", "", "OP_7 pushes 0x07"],
770
- ["0108", "5887", "", "OP_8 pushes 0x08"],
771
- ["0109", "5987", "", "OP_9 pushes 0x09"],
772
- ["010a", "5a87", "", "OP_10 pushes 0x0a"],
773
- ["010b", "5b87", "", "OP_11 pushes 0x0b"],
774
- ["010c", "5c87", "", "OP_12 pushes 0x0c"],
775
- ["010d", "5d87", "", "OP_13 pushes 0x0d"],
776
- ["010e", "5e87", "", "OP_14 pushes 0x0e"],
777
- ["010f", "5f87", "", "OP_15 pushes 0x0f"],
778
- ["0110", "6087", "", "OP_16 pushes 0x10"],
779
- ["Equivalency of different numeric encodings"],
780
- ["028000", "0280009c", "", "0x8000 equals 128"],
781
- ["0100", "009c", "", "0x00 numequals 0"],
782
- ["0180", "009c", "", "0x80 (negative zero) numequals 0"],
783
- ["020080", "009c", "", "0x0080 numequals 0"],
784
- ["020500", "559c", "", "0x0500 numequals 5"],
785
- ["03ff7f80", "02ffff9c", "", ""],
786
- ["03ff7f00", "02ff7f9c", "", ""],
787
- ["04ffff7f80", "03ffffff9c", "", ""],
788
- ["04ffff7f00", "03ffff7f9c", "", ""],
789
- ["Unevaluated non-minimal pushes are ignored"],
790
- ["00634c006851", "", "MINIMALDATA", "non-minimal PUSHDATA1 ignored"],
791
- ["00634d00006851", "", "MINIMALDATA", "non-minimal PUSHDATA2 ignored"],
792
- ["00634c000000006851", "", "MINIMALDATA", "non-minimal PUSHDATA4 ignored"],
793
- ["006301816851", "", "MINIMALDATA", "1NEGATE equiv"],
794
- ["006301016851", "", "MINIMALDATA", "OP_1 equiv"],
795
- ["006301026851", "", "MINIMALDATA", "OP_2 equiv"],
796
- ["006301036851", "", "MINIMALDATA", "OP_3 equiv"],
797
- ["006301046851", "", "MINIMALDATA", "OP_4 equiv"],
798
- ["006301056851", "", "MINIMALDATA", "OP_5 equiv"],
799
- ["006301066851", "", "MINIMALDATA", "OP_6 equiv"],
800
- ["006301076851", "", "MINIMALDATA", "OP_7 equiv"],
801
- ["006301086851", "", "MINIMALDATA", "OP_8 equiv"],
802
- ["006301096851", "", "MINIMALDATA", "OP_9 equiv"],
803
- ["0063010a6851", "", "MINIMALDATA", "OP_10 equiv"],
804
- ["0063010b6851", "", "MINIMALDATA", "OP_11 equiv"],
805
- ["0063010c6851", "", "MINIMALDATA", "OP_12 equiv"],
806
- ["0063010d6851", "", "MINIMALDATA", "OP_13 equiv"],
807
- ["0063010e6851", "", "MINIMALDATA", "OP_14 equiv"],
808
- ["0063010f6851", "", "MINIMALDATA", "OP_15 equiv"],
809
- ["006301106851", "", "MINIMALDATA", "OP_16 equiv"],
810
- [
811
- "Numeric minimaldata rules are only applied when a stack item is numerically evaluated; the push itself is allowed",
812
- ],
813
- ["0100", "51", "MINIMALDATA"],
814
- ["0180", "51", "MINIMALDATA"],
815
- ["020180", "51", "MINIMALDATA"],
816
- ["020100", "51", "MINIMALDATA"],
817
- ["020200", "51", "MINIMALDATA"],
818
- ["020300", "51", "MINIMALDATA"],
819
- ["020400", "51", "MINIMALDATA"],
820
- ["020500", "51", "MINIMALDATA"],
821
- ["020600", "51", "MINIMALDATA"],
822
- ["020700", "51", "MINIMALDATA"],
823
- ["020800", "51", "MINIMALDATA"],
824
- ["020900", "51", "MINIMALDATA"],
825
- ["020a00", "51", "MINIMALDATA"],
826
- ["020b00", "51", "MINIMALDATA"],
827
- ["020c00", "51", "MINIMALDATA"],
828
- ["020d00", "51", "MINIMALDATA"],
829
- ["020e00", "51", "MINIMALDATA"],
830
- ["020f00", "51", "MINIMALDATA"],
831
- ["021000", "51", "MINIMALDATA"],
832
- [
833
- "Valid version of the 'Test every numeric-accepting opcode for correct handling of the numeric minimal encoding rule' script_invalid test",
834
- ],
835
- ["51020000", "7975", ""],
836
- ["51020000", "7a7551", ""],
837
- ["020000", "8b7551", ""],
838
- ["020000", "8c7551", ""],
839
- ["020000", "8f7551", ""],
840
- ["020000", "907551", ""],
841
- ["020000", "917551", ""],
842
- ["020000", "927551", ""],
843
- ["00020000", "937551", ""],
844
- ["02000000", "937551", ""],
845
- ["00020000", "947551", ""],
846
- ["02000000", "947551", ""],
847
- ["00020000", "9a7551", ""],
848
- ["02000000", "9a7551", ""],
849
- ["00020000", "9b7551", ""],
850
- ["02000000", "9b7551", ""],
851
- ["00020000", "9c7551", ""],
852
- ["02000051", "9c7551", ""],
853
- ["00020000", "9d51", ""],
854
- ["02000000", "9d51", ""],
855
- ["00020000", "9e7551", ""],
856
- ["02000000", "9e7551", ""],
857
- ["00020000", "9f7551", ""],
858
- ["02000000", "9f7551", ""],
859
- ["00020000", "a07551", ""],
860
- ["02000000", "a07551", ""],
861
- ["00020000", "a17551", ""],
862
- ["02000000", "a17551", ""],
863
- ["00020000", "a27551", ""],
864
- ["02000000", "a27551", ""],
865
- ["00020000", "a37551", ""],
866
- ["02000000", "a37551", ""],
867
- ["00020000", "a47551", ""],
868
- ["02000000", "a47551", ""],
869
- ["0200000000", "a57551", ""],
870
- ["0002000000", "a57551", ""],
871
- ["0000020000", "a57551", ""],
872
- ["0000020000", "ae7551", ""],
873
- ["0002000000", "ae7551", ""],
874
- ["000200000051", "ae7551", ""],
875
- ["0000020000", "af51", ""],
876
- ["0002000000", "af51", ""],
877
- ["While not really correctly DER encoded, the empty signature is allowed by"],
878
- [
879
- "STRICTENC to provide a compact way to provide a delibrately invalid signature.",
880
- ],
881
- [
882
- "00",
883
- "2102865c40293a680cb9c020e7b1e106d8c1916d3cef99aa431a56d253e69256dac0ac91",
884
- "STRICTENC",
885
- ],
886
- [
887
- "0000",
888
- "512102865c40293a680cb9c020e7b1e106d8c1916d3cef99aa431a56d253e69256dac051ae91",
889
- "STRICTENC",
890
- ],
891
- [
892
- "CHECKMULTISIG evaluation order tests. CHECKMULTISIG evaluates signatures and",
893
- ],
894
- [
895
- "pubkeys in a specific order, and will exit early if the number of signatures",
54
+ '4b417a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a',
55
+ '417a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a87',
56
+ 'P2SH,STRICTENC',
57
+ 'push 75 bytes'
58
+ ],
59
+ ['4c0107', '5787', 'P2SH,STRICTENC', '0x4c is OP_PUSHDATA1'],
60
+ ['4d010008', '5887', 'P2SH,STRICTENC', '0x4d is OP_PUSHDATA2'],
61
+ ['4e0100000009', '5987', 'P2SH,STRICTENC', '0x4e is OP_PUSHDATA4'],
62
+ ['4c00', '0087', 'P2SH,STRICTENC'],
63
+ ['4d0000', '0087', 'P2SH,STRICTENC'],
64
+ ['4e00000000', '0087', 'P2SH,STRICTENC'],
65
+ ['4f02e80393', '02e70387', 'P2SH,STRICTENC'],
66
+ ['00', '63506851', 'P2SH,STRICTENC', '0x50 is reserved (ok if not executed)'],
67
+ [
68
+ '51',
69
+ '5f936087',
70
+ 'P2SH,STRICTENC',
71
+ '0x51 through 0x60 push 1 through 16 onto stack'
72
+ ],
73
+ ['51', '61', 'P2SH,STRICTENC'],
74
+ [
75
+ '00',
76
+ '6362675168',
77
+ 'P2SH,STRICTENC',
78
+ 'VER non-functional (ok if not executed)'
79
+ ],
80
+ ['00', '6350898a675168', 'P2SH,STRICTENC', 'RESERVED ok in un-executed IF'],
81
+ ['51', '766368', 'P2SH,STRICTENC'],
82
+ ['51', '635168', 'P2SH,STRICTENC'],
83
+ ['51', '76636768', 'P2SH,STRICTENC'],
84
+ ['51', '63516768', 'P2SH,STRICTENC'],
85
+ ['00', '63675168', 'P2SH,STRICTENC'],
86
+ ['5151', '63635167006868', 'P2SH,STRICTENC'],
87
+ ['5100', '63635167006868', 'P2SH,STRICTENC'],
88
+ ['5151', '63635167006867630067516868', 'P2SH,STRICTENC'],
89
+ ['0000', '63635167006867630067516868', 'P2SH,STRICTENC'],
90
+ ['5100', '64635167006868', 'P2SH,STRICTENC'],
91
+ ['5151', '64635167006868', 'P2SH,STRICTENC'],
92
+ ['5100', '64635167006867630067516868', 'P2SH,STRICTENC'],
93
+ ['0051', '64635167006867630067516868', 'P2SH,STRICTENC'],
94
+ [
95
+ '00',
96
+ '63006751670068',
97
+ 'P2SH,STRICTENC',
98
+ "Multiple ELSE's are valid and executed inverts on each ELSE encountered"
99
+ ],
100
+ ['51', '635167006768', 'P2SH,STRICTENC'],
101
+ ['51', '636700675168', 'P2SH,STRICTENC'],
102
+ ['51', '63516700675168935287', 'P2SH,STRICTENC'],
103
+ [
104
+ '51',
105
+ '63a76767a76767a76767a76767a76767a76767a76767a76767a76767a76767a76767a76767a76767a76767a76767a76767a76767a76767a76767a7681468ca4fec736264c13b859bac43d5173df687168287',
106
+ 'P2SH,STRICTENC'
107
+ ],
108
+ [
109
+ '51',
110
+ '64006751670068',
111
+ 'P2SH,STRICTENC',
112
+ "Multiple ELSE's are valid and execution inverts on each ELSE encountered"
113
+ ],
114
+ ['00', '645167006768', 'P2SH,STRICTENC'],
115
+ ['00', '646700675168', 'P2SH,STRICTENC'],
116
+ ['00', '64516700675168935287', 'P2SH,STRICTENC'],
117
+ [
118
+ '00',
119
+ '64a76767a76767a76767a76767a76767a76767a76767a76767a76767a76767a76767a76767a76767a76767a76767a76767a76767a76767a76767a7681468ca4fec736264c13b859bac43d5173df687168287',
120
+ 'P2SH,STRICTENC'
121
+ ],
122
+ [
123
+ '00',
124
+ '6351636a676a676a6867516351676a675168676a68935287',
125
+ 'P2SH,STRICTENC',
126
+ 'Nested ELSE ELSE'
127
+ ],
128
+ ['51', '6400646a676a676a6867006451676a675168676a68935287', 'P2SH,STRICTENC'],
129
+ ['00', '636a6851', 'P2SH,STRICTENC', 'RETURN only works if executed'],
130
+ ['5151', '69', 'P2SH,STRICTENC'],
131
+ [
132
+ '51050100000000',
133
+ '69',
134
+ 'P2SH,STRICTENC',
135
+ 'values >4 bytes can be cast to boolean'
136
+ ],
137
+ ['510180', '630068', 'P2SH,STRICTENC', 'negative 0 is false'],
138
+ ['5a005b6b756c', '93011587', 'P2SH,STRICTENC'],
139
+ [
140
+ '676176696e5f7761735f686572656b5b6c',
141
+ '676176696e5f7761735f68657265885b87',
142
+ 'P2SH,STRICTENC'
143
+ ],
144
+ ['0073', '7451880087', 'P2SH,STRICTENC'],
145
+ ['5173', '74528851885187', 'P2SH,STRICTENC'],
146
+ [
147
+ '05010000000073',
148
+ '74528805010000000087',
149
+ 'P2SH,STRICTENC',
150
+ 'IFDUP dups non ints'
151
+ ],
152
+ ['0075', '740087', 'P2SH,STRICTENC'],
153
+ ['00', '76519351880087', 'P2SH,STRICTENC'],
154
+ ['0051', '77', 'P2SH,STRICTENC'],
155
+ ['5100', '78745388', 'P2SH,STRICTENC'],
156
+ ['011601150114', '0079011488745387', 'P2SH,STRICTENC'],
157
+ ['011601150114', '5179011588745387', 'P2SH,STRICTENC'],
158
+ ['011601150114', '5279011688745387', 'P2SH,STRICTENC'],
159
+ ['011601150114', '007a011488745287', 'P2SH,STRICTENC'],
160
+ ['011601150114', '517a011588745287', 'P2SH,STRICTENC'],
161
+ ['011601150114', '527a011688745287', 'P2SH,STRICTENC'],
162
+ ['011601150114', '7b011687', 'P2SH,STRICTENC'],
163
+ ['011601150114', '7b75011487', 'P2SH,STRICTENC'],
164
+ ['011601150114', '7b7575011587', 'P2SH,STRICTENC'],
165
+ ['011601150114', '7b7b011587', 'P2SH,STRICTENC'],
166
+ ['011601150114', '7b7b7b011487', 'P2SH,STRICTENC'],
167
+ ['011901180117011601150114', '71011887', 'P2SH,STRICTENC'],
168
+ ['011901180117011601150114', '7175011987', 'P2SH,STRICTENC'],
169
+ ['011901180117011601150114', '716d011487', 'P2SH,STRICTENC'],
170
+ ['011901180117011601150114', '716d75011587', 'P2SH,STRICTENC'],
171
+ ['011901180117011601150114', '716d6d011687', 'P2SH,STRICTENC'],
172
+ ['011901180117011601150114', '716d6d75011787', 'P2SH,STRICTENC'],
173
+ ['011901180117011601150114', '7171011687', 'P2SH,STRICTENC'],
174
+ ['011901180117011601150114', '717171011487', 'P2SH,STRICTENC'],
175
+ ['5100', '7c51880087', 'P2SH,STRICTENC'],
176
+ ['0051', '7d7453887c6d', 'P2SH,STRICTENC'],
177
+ ['5d5e', '6e7b8887', 'P2SH,STRICTENC'],
178
+ ['4f005152', '6f745788939353886d0088', 'P2SH,STRICTENC'],
179
+ ['51525355', '709393588893935687', 'P2SH,STRICTENC'],
180
+ ['51535557', '72935488935c87', 'P2SH,STRICTENC'],
181
+ ['00', '820087', 'P2SH,STRICTENC'],
182
+ ['51', '825187', 'P2SH,STRICTENC'],
183
+ ['017f', '825187', 'P2SH,STRICTENC'],
184
+ ['028000', '825287', 'P2SH,STRICTENC'],
185
+ ['02ff7f', '825287', 'P2SH,STRICTENC'],
186
+ ['03008000', '825387', 'P2SH,STRICTENC'],
187
+ ['03ffff7f', '825387', 'P2SH,STRICTENC'],
188
+ ['0400008000', '825487', 'P2SH,STRICTENC'],
189
+ ['04ffffff7f', '825487', 'P2SH,STRICTENC'],
190
+ ['050000008000', '825587', 'P2SH,STRICTENC'],
191
+ ['05ffffffff7f', '825587', 'P2SH,STRICTENC'],
192
+ ['06000000008000', '825687', 'P2SH,STRICTENC'],
193
+ ['08ffffffffffffff7f', '825887', 'P2SH,STRICTENC'],
194
+ ['4f', '825187', 'P2SH,STRICTENC'],
195
+ ['01ff', '825187', 'P2SH,STRICTENC'],
196
+ ['028080', '825287', 'P2SH,STRICTENC'],
197
+ ['02ffff', '825287', 'P2SH,STRICTENC'],
198
+ ['03008080', '825387', 'P2SH,STRICTENC'],
199
+ ['03ffffff', '825387', 'P2SH,STRICTENC'],
200
+ ['0400008080', '825487', 'P2SH,STRICTENC'],
201
+ ['04ffffffff', '825487', 'P2SH,STRICTENC'],
202
+ ['050000008080', '825587', 'P2SH,STRICTENC'],
203
+ ['05ffffffffff', '825587', 'P2SH,STRICTENC'],
204
+ ['06000000008080', '825687', 'P2SH,STRICTENC'],
205
+ ['08ffffffffffffffff', '825887', 'P2SH,STRICTENC'],
206
+ [
207
+ '6162636465666768696a6b6c6d6e6f707172737475767778797a',
208
+ '82011a87',
209
+ 'P2SH,STRICTENC'
210
+ ],
211
+ ['012a', '825188012a87', 'P2SH,STRICTENC', 'SIZE does not consume argument'],
212
+ ['52018293', '0087', 'P2SH,STRICTENC'],
213
+ ['04ffffff7f04ffffffff93', '0087', 'P2SH,STRICTENC'],
214
+ ['4f4f93', '018287', 'P2SH,STRICTENC'],
215
+ ['0000', '87', 'P2SH,STRICTENC'],
216
+ ['515193', '5287', 'P2SH,STRICTENC'],
217
+ ['518b', '5287', 'P2SH,STRICTENC'],
218
+ ['016f8c', '016e87', 'P2SH,STRICTENC'],
219
+ ['016f51935c94', '016487', 'P2SH,STRICTENC'],
220
+ ['0090', '0087', 'P2SH,STRICTENC'],
221
+ ['6090', '6087', 'P2SH,STRICTENC'],
222
+ ['019090', '01908f87', 'P2SH,STRICTENC'],
223
+ ['0091', '61', 'P2SH,STRICTENC'],
224
+ ['5191', '0087', 'P2SH,STRICTENC'],
225
+ ['5b91', '0087', 'P2SH,STRICTENC'],
226
+ ['0092', '0087', 'P2SH,STRICTENC'],
227
+ ['5192', '5187', 'P2SH,STRICTENC'],
228
+ ['016f92', '5187', 'P2SH,STRICTENC'],
229
+ ['01ef92', '5187', 'P2SH,STRICTENC'],
230
+ ['51519a', '61', 'P2SH,STRICTENC'],
231
+ ['51009a', '91', 'P2SH,STRICTENC'],
232
+ ['00519a', '91', 'P2SH,STRICTENC'],
233
+ ['00009a', '91', 'P2SH,STRICTENC'],
234
+ ['6001119a', '61', 'P2SH,STRICTENC'],
235
+ ['51519b', '61', 'P2SH,STRICTENC'],
236
+ ['51009b', '61', 'P2SH,STRICTENC'],
237
+ ['00519b', '61', 'P2SH,STRICTENC'],
238
+ ['00009b', '91', 'P2SH,STRICTENC'],
239
+ ['6001119b', '61', 'P2SH,STRICTENC'],
240
+ ['5b5a5193', '9c', 'P2SH,STRICTENC'],
241
+ ['5b5a5193', '9d51', 'P2SH,STRICTENC'],
242
+ ['5b5a5193', '9e91', 'P2SH,STRICTENC'],
243
+ ['016f5a5193', '9e', 'P2SH,STRICTENC'],
244
+ ['5b5a', '9f91', 'P2SH,STRICTENC'],
245
+ ['5454', '9f91', 'P2SH,STRICTENC'],
246
+ ['5a5b', '9f', 'P2SH,STRICTENC'],
247
+ ['018b5b', '9f', 'P2SH,STRICTENC'],
248
+ ['018b018a', '9f', 'P2SH,STRICTENC'],
249
+ ['5b5a', 'a0', 'P2SH,STRICTENC'],
250
+ ['5454', 'a091', 'P2SH,STRICTENC'],
251
+ ['5a5b', 'a091', 'P2SH,STRICTENC'],
252
+ ['018b5b', 'a091', 'P2SH,STRICTENC'],
253
+ ['018b018a', 'a091', 'P2SH,STRICTENC'],
254
+ ['5b5a', 'a191', 'P2SH,STRICTENC'],
255
+ ['5454', 'a1', 'P2SH,STRICTENC'],
256
+ ['5a5b', 'a1', 'P2SH,STRICTENC'],
257
+ ['018b5b', 'a1', 'P2SH,STRICTENC'],
258
+ ['018b018a', 'a1', 'P2SH,STRICTENC'],
259
+ ['5b5a', 'a2', 'P2SH,STRICTENC'],
260
+ ['5454', 'a2', 'P2SH,STRICTENC'],
261
+ ['5a5b', 'a291', 'P2SH,STRICTENC'],
262
+ ['018b5b', 'a291', 'P2SH,STRICTENC'],
263
+ ['018b018a', 'a291', 'P2SH,STRICTENC'],
264
+ ['5100a3', '009c', 'P2SH,STRICTENC'],
265
+ ['0051a3', '009c', 'P2SH,STRICTENC'],
266
+ ['4f00a3', '4f9c', 'P2SH,STRICTENC'],
267
+ ['0004ffffffffa3', '04ffffffff9c', 'P2SH,STRICTENC'],
268
+ ['04ffffff7f00a4', '04ffffff7f9c', 'P2SH,STRICTENC'],
269
+ ['000164a4', '01649c', 'P2SH,STRICTENC'],
270
+ ['01e400a4', '009c', 'P2SH,STRICTENC'],
271
+ ['0004ffffffffa4', '009c', 'P2SH,STRICTENC'],
272
+ ['000051', 'a5', 'P2SH,STRICTENC'],
273
+ ['510051', 'a591', 'P2SH,STRICTENC'],
274
+ ['0004ffffffff04ffffff7f', 'a5', 'P2SH,STRICTENC'],
275
+ ['4f01e40164', 'a5', 'P2SH,STRICTENC'],
276
+ ['5b01e40164', 'a5', 'P2SH,STRICTENC'],
277
+ ['04ffffffff01e40164', 'a591', 'P2SH,STRICTENC'],
278
+ ['04ffffff7f01e40164', 'a591', 'P2SH,STRICTENC'],
279
+ ['04ffffff7f04ffffff7f94', '0087', 'P2SH,STRICTENC'],
280
+ [
281
+ '04ffffff7f7693',
282
+ '05feffffff0087',
283
+ 'P2SH,STRICTENC',
284
+ '>32 bit EQUAL is valid'
285
+ ],
286
+ ['04ffffff7f8f7693', '05feffffff8087', 'P2SH,STRICTENC'],
287
+ ['', 'a6149c1185a5c5e9fc54612808977ee8f548b2258d3187', 'P2SH,STRICTENC'],
288
+ ['61', 'a6140bdc9d2d256b3ee9daae347be6f4dc835a467ffe87', 'P2SH,STRICTENC'],
289
+ [
290
+ '6162636465666768696a6b6c6d6e6f707172737475767778797a',
291
+ 'a614f71c27109c692c1b56bbdceb5b9d2865b3708dbc87',
292
+ 'P2SH,STRICTENC'
293
+ ],
294
+ ['', 'a714da39a3ee5e6b4b0d3255bfef95601890afd8070987', 'P2SH,STRICTENC'],
295
+ ['61', 'a71486f7e437faa5a7fce15d1ddcb9eaeaea377667b887', 'P2SH,STRICTENC'],
296
+ [
297
+ '6162636465666768696a6b6c6d6e6f707172737475767778797a',
298
+ 'a71432d10c7b8cf96570ca04ce37f2a19d84240d3a8987',
299
+ 'P2SH,STRICTENC'
300
+ ],
301
+ [
302
+ '',
303
+ 'a820e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85587',
304
+ 'P2SH,STRICTENC'
305
+ ],
306
+ [
307
+ '61',
308
+ 'a820ca978112ca1bbdcafac231b39a23dc4da786eff8147c4e72b9807785afee48bb87',
309
+ 'P2SH,STRICTENC'
310
+ ],
311
+ [
312
+ '6162636465666768696a6b6c6d6e6f707172737475767778797a',
313
+ 'a82071c480df93d6ae2f1efad1447c66c9525e316218cf51fc8d9ed832f2daf18b7387',
314
+ 'P2SH,STRICTENC'
315
+ ],
316
+ ['', '76a97ca8a687', 'P2SH,STRICTENC'],
317
+ ['', '76aa7ca8a887', 'P2SH,STRICTENC'],
318
+ ['', '61a914b472a266d0bd89c13706a4132ccfb16f7c3b9fcb87', 'P2SH,STRICTENC'],
319
+ ['61', 'a96114994355199e516ff76c4fa4aab39337b9d84cf12b87', 'P2SH,STRICTENC'],
320
+ [
321
+ '6162636465666768696a6b6c6d6e6f707172737475767778797a',
322
+ 'a94c14c286a1af0947f58d1ad787385b1c2c4a976f9e7187',
323
+ 'P2SH,STRICTENC'
324
+ ],
325
+ [
326
+ '',
327
+ 'aa205df6e0e2761359d30a8275058e299fcc0381534545f55cf43e41983f5d4c945687',
328
+ 'P2SH,STRICTENC'
329
+ ],
330
+ [
331
+ '61',
332
+ 'aa20bf5d3affb73efd2ec6c36ad3112dd933efed63c4e1cbffcfa88e2759c144f2d887',
333
+ 'P2SH,STRICTENC'
334
+ ],
335
+ [
336
+ '6162636465666768696a6b6c6d6e6f707172737475767778797a',
337
+ 'aa4c20ca139bc10c2f660da42666f72e89a225936fc60f193c161124a672050c43467187',
338
+ 'P2SH,STRICTENC'
339
+ ],
340
+ ['51', 'b0b1b2b3b4b5b6b7b8b95187', 'P2SH,STRICTENC'],
341
+ [
342
+ '4e060000005f746f5f3130b0b1b2b3b4b5b6b7b8b9',
343
+ '4e060000005f746f5f313087',
344
+ 'P2SH,STRICTENC'
345
+ ],
346
+ [
347
+ '51',
348
+ '61',
349
+ 'P2SH,STRICTENC,DISCOURAGE_UPGRADABLE_NOPS',
350
+ 'Discourage NOPx flag allows OP_NOP'
351
+ ],
352
+ [
353
+ '00',
354
+ '63b96851',
355
+ 'P2SH,STRICTENC,DISCOURAGE_UPGRADABLE_NOPS',
356
+ 'Discouraged NOPs are allowed if not executed'
357
+ ],
358
+ [
359
+ '00',
360
+ '63ba675168',
361
+ 'P2SH,STRICTENC',
362
+ 'opcodes above NOP10 invalid if executed'
363
+ ],
364
+ ['00', '63bb675168', 'P2SH,STRICTENC'],
365
+ ['00', '63bc675168', 'P2SH,STRICTENC'],
366
+ ['00', '63bd675168', 'P2SH,STRICTENC'],
367
+ ['00', '63be675168', 'P2SH,STRICTENC'],
368
+ ['00', '63bf675168', 'P2SH,STRICTENC'],
369
+ ['00', '63c0675168', 'P2SH,STRICTENC'],
370
+ ['00', '63c1675168', 'P2SH,STRICTENC'],
371
+ ['00', '63c2675168', 'P2SH,STRICTENC'],
372
+ ['00', '63c3675168', 'P2SH,STRICTENC'],
373
+ ['00', '63c4675168', 'P2SH,STRICTENC'],
374
+ ['00', '63c5675168', 'P2SH,STRICTENC'],
375
+ ['00', '63c6675168', 'P2SH,STRICTENC'],
376
+ ['00', '63c7675168', 'P2SH,STRICTENC'],
377
+ ['00', '63c8675168', 'P2SH,STRICTENC'],
378
+ ['00', '63c9675168', 'P2SH,STRICTENC'],
379
+ ['00', '63ca675168', 'P2SH,STRICTENC'],
380
+ ['00', '63cb675168', 'P2SH,STRICTENC'],
381
+ ['00', '63cc675168', 'P2SH,STRICTENC'],
382
+ ['00', '63cd675168', 'P2SH,STRICTENC'],
383
+ ['00', '63ce675168', 'P2SH,STRICTENC'],
384
+ ['00', '63cf675168', 'P2SH,STRICTENC'],
385
+ ['00', '63d0675168', 'P2SH,STRICTENC'],
386
+ ['00', '63d1675168', 'P2SH,STRICTENC'],
387
+ ['00', '63d2675168', 'P2SH,STRICTENC'],
388
+ ['00', '63d3675168', 'P2SH,STRICTENC'],
389
+ ['00', '63d4675168', 'P2SH,STRICTENC'],
390
+ ['00', '63d5675168', 'P2SH,STRICTENC'],
391
+ ['00', '63d6675168', 'P2SH,STRICTENC'],
392
+ ['00', '63d7675168', 'P2SH,STRICTENC'],
393
+ ['00', '63d8675168', 'P2SH,STRICTENC'],
394
+ ['00', '63d9675168', 'P2SH,STRICTENC'],
395
+ ['00', '63da675168', 'P2SH,STRICTENC'],
396
+ ['00', '63db675168', 'P2SH,STRICTENC'],
397
+ ['00', '63dc675168', 'P2SH,STRICTENC'],
398
+ ['00', '63dd675168', 'P2SH,STRICTENC'],
399
+ ['00', '63de675168', 'P2SH,STRICTENC'],
400
+ ['00', '63df675168', 'P2SH,STRICTENC'],
401
+ ['00', '63e0675168', 'P2SH,STRICTENC'],
402
+ ['00', '63e1675168', 'P2SH,STRICTENC'],
403
+ ['00', '63e2675168', 'P2SH,STRICTENC'],
404
+ ['00', '63e3675168', 'P2SH,STRICTENC'],
405
+ ['00', '63e4675168', 'P2SH,STRICTENC'],
406
+ ['00', '63e5675168', 'P2SH,STRICTENC'],
407
+ ['00', '63e6675168', 'P2SH,STRICTENC'],
408
+ ['00', '63e7675168', 'P2SH,STRICTENC'],
409
+ ['00', '63e8675168', 'P2SH,STRICTENC'],
410
+ ['00', '63e9675168', 'P2SH,STRICTENC'],
411
+ ['00', '63ea675168', 'P2SH,STRICTENC'],
412
+ ['00', '63eb675168', 'P2SH,STRICTENC'],
413
+ ['00', '63ec675168', 'P2SH,STRICTENC'],
414
+ ['00', '63ed675168', 'P2SH,STRICTENC'],
415
+ ['00', '63ee675168', 'P2SH,STRICTENC'],
416
+ ['00', '63ef675168', 'P2SH,STRICTENC'],
417
+ ['00', '63f0675168', 'P2SH,STRICTENC'],
418
+ ['00', '63f1675168', 'P2SH,STRICTENC'],
419
+ ['00', '63f2675168', 'P2SH,STRICTENC'],
420
+ ['00', '63f3675168', 'P2SH,STRICTENC'],
421
+ ['00', '63f4675168', 'P2SH,STRICTENC'],
422
+ ['00', '63f5675168', 'P2SH,STRICTENC'],
423
+ ['00', '63f6675168', 'P2SH,STRICTENC'],
424
+ ['00', '63f7675168', 'P2SH,STRICTENC'],
425
+ ['00', '63f8675168', 'P2SH,STRICTENC'],
426
+ ['00', '63f9675168', 'P2SH,STRICTENC'],
427
+ ['00', '63fa675168', 'P2SH,STRICTENC'],
428
+ ['00', '63fb675168', 'P2SH,STRICTENC'],
429
+ ['00', '63fc675168', 'P2SH,STRICTENC'],
430
+ ['00', '63fd675168', 'P2SH,STRICTENC'],
431
+ ['00', '63fe675168', 'P2SH,STRICTENC'],
432
+ ['00', '63ff675168', 'P2SH,STRICTENC'],
433
+ [
434
+ '61',
435
+ '62626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262',
436
+ 'P2SH,STRICTENC',
437
+ '520 byte push'
438
+ ],
439
+ [
440
+ '51',
441
+ '616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161',
442
+ 'P2SH,STRICTENC',
443
+ '201 opcodes executed. 0x61 is NOP'
444
+ ],
445
+ [
446
+ '51525354556f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f',
447
+ '51525354556f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f',
448
+ 'P2SH,STRICTENC',
449
+ '1,000 stack size (0x6f is 3DUP)'
450
+ ],
451
+ [
452
+ '516b526b5354556f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f',
453
+ '515253545556576f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f',
454
+ 'P2SH,STRICTENC',
455
+ '1,000 stack size (altstack cleared between scriptSig/scriptPubKey)'
456
+ ],
457
+ [
458
+ '616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f',
459
+ '616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6e616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161',
460
+ 'P2SH,STRICTENC',
461
+ 'Max-size (10,000-byte), max-push(520 bytes), max-opcodes(201), max stack size(1,000 items). 0x6f is 3DUP, 0x61 is NOP'
462
+ ],
463
+ [
464
+ '00',
465
+ '6350505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050506851',
466
+ 'P2SH,STRICTENC',
467
+ ">201 opcodes, but RESERVED (0x50) doesn't count towards opcode limit."
468
+ ],
469
+ ['61', '51', 'P2SH,STRICTENC'],
470
+ [
471
+ '51',
472
+ '010187',
473
+ 'P2SH,STRICTENC',
474
+ 'The following is useful for checking implementations of BN_bn2mpi'
475
+ ],
476
+ ['017f', '017f87', 'P2SH,STRICTENC'],
477
+ ['028000', '02800087', 'P2SH,STRICTENC', 'Leave room for the sign bit'],
478
+ ['02ff7f', '02ff7f87', 'P2SH,STRICTENC'],
479
+ ['03008000', '0300800087', 'P2SH,STRICTENC'],
480
+ ['03ffff7f', '03ffff7f87', 'P2SH,STRICTENC'],
481
+ ['0400008000', '040000800087', 'P2SH,STRICTENC'],
482
+ ['04ffffff7f', '04ffffff7f87', 'P2SH,STRICTENC'],
483
+ ['050000008000', '05000000800087', 'P2SH,STRICTENC'],
484
+ ['05ffffffff7f', '05ffffffff7f87', 'P2SH,STRICTENC'],
485
+ ['06000000008000', '06ffffffff7f87', 'P2SH,STRICTENC'],
486
+ ['08ffffffffffffff7f', '08ffffffffffffff7f87', 'P2SH,STRICTENC'],
487
+ [
488
+ '4f',
489
+ '018187',
490
+ 'P2SH,STRICTENC',
491
+ 'Numbers are little-endian with the MSB being a sign bit'
492
+ ],
493
+ ['01ff', '01ff87', 'P2SH,STRICTENC'],
494
+ ['028080', '02808087', 'P2SH,STRICTENC'],
495
+ ['02ffff', '02ffff87', 'P2SH,STRICTENC'],
496
+ ['03008080', '0300808087', 'P2SH,STRICTENC'],
497
+ ['03ffffff', '03ffffff87', 'P2SH,STRICTENC'],
498
+ ['0400008080', '040000808087', 'P2SH,STRICTENC'],
499
+ ['04ffffffff', '04ffffffff87', 'P2SH,STRICTENC'],
500
+ ['050000008080', '05000000808087', 'P2SH,STRICTENC'],
501
+ ['05ffffffff80', '05ffffffff8087', 'P2SH,STRICTENC'],
502
+ ['05ffffffffff', '05ffffffffff87', 'P2SH,STRICTENC'],
503
+ ['06000000008080', '0600000000808087', 'P2SH,STRICTENC'],
504
+ ['08ffffffffffffffff', '08ffffffffffffffff87', 'P2SH,STRICTENC'],
505
+ [
506
+ '04ffffff7f',
507
+ '8b05000000800087',
508
+ 'P2SH,STRICTENC',
509
+ 'We can do math on 4-byte integers, and compare 5-byte ones'
510
+ ],
511
+ ['04ffffff7f', '8b51', 'P2SH,STRICTENC'],
512
+ ['04ffffffff', '8b51', 'P2SH,STRICTENC'],
513
+ ['51', '0201008791', 'P2SH,STRICTENC', 'Not the same byte array...'],
514
+ ['51', '0201009c', 'P2SH,STRICTENC', '... but they are numerically equal'],
515
+ ['5b', '4c030b00009c', 'P2SH,STRICTENC'],
516
+ ['00', '01808791', 'P2SH,STRICTENC'],
517
+ ['00', '01809c', 'P2SH,STRICTENC', 'Zero numerically equals negative zero'],
518
+ ['00', '0200809c', 'P2SH,STRICTENC'],
519
+ ['03000080', '04000000809c', 'P2SH,STRICTENC'],
520
+ ['03100080', '04100000809c', 'P2SH,STRICTENC'],
521
+ ['03100000', '04100000009c', 'P2SH,STRICTENC'],
522
+ [
523
+ '61',
524
+ '6151',
525
+ 'P2SH,STRICTENC',
526
+ 'The following tests check the if(stack.size() < N) tests in each opcode'
527
+ ],
528
+ [
529
+ '51',
530
+ '635168',
531
+ 'P2SH,STRICTENC',
532
+ 'They are here to catch copy-and-paste errors'
533
+ ],
534
+ ['00', '645168', 'P2SH,STRICTENC', 'Most of them are duplicated elsewhere,'],
535
+ ['51', '6951', 'P2SH,STRICTENC', 'but, hey, more is always better, right?'],
536
+ ['00', '6b51', 'P2SH,STRICTENC'],
537
+ ['51', '6b6c', 'P2SH,STRICTENC'],
538
+ ['0000', '6d51', 'P2SH,STRICTENC'],
539
+ ['0051', '6e', 'P2SH,STRICTENC'],
540
+ ['000051', '6f', 'P2SH,STRICTENC'],
541
+ ['00510000', '70', 'P2SH,STRICTENC'],
542
+ ['005100000000', '71', 'P2SH,STRICTENC'],
543
+ ['00510000', '72', 'P2SH,STRICTENC'],
544
+ ['51', '73', 'P2SH,STRICTENC'],
545
+ ['61', '7451', 'P2SH,STRICTENC'],
546
+ ['00', '7551', 'P2SH,STRICTENC'],
547
+ ['51', '76', 'P2SH,STRICTENC'],
548
+ ['0051', '77', 'P2SH,STRICTENC'],
549
+ ['5100', '78', 'P2SH,STRICTENC'],
550
+ ['5100000053', '79', 'P2SH,STRICTENC'],
551
+ ['5100', '79', 'P2SH,STRICTENC'],
552
+ ['5100000053', '7a', 'P2SH,STRICTENC'],
553
+ ['5100', '7a', 'P2SH,STRICTENC'],
554
+ ['510000', '7b', 'P2SH,STRICTENC'],
555
+ ['5100', '7c', 'P2SH,STRICTENC'],
556
+ ['0051', '7d', 'P2SH,STRICTENC'],
557
+ ['51', '82', 'P2SH,STRICTENC'],
558
+ ['0000', '87', 'P2SH,STRICTENC'],
559
+ ['0000', '8851', 'P2SH,STRICTENC'],
560
+ [
561
+ '000051',
562
+ '8787',
563
+ 'P2SH,STRICTENC',
564
+ 'OP_0 and bools must have identical byte representations'
565
+ ],
566
+ ['00', '8b', 'P2SH,STRICTENC'],
567
+ ['52', '8c', 'P2SH,STRICTENC'],
568
+ ['4f', '8f', 'P2SH,STRICTENC'],
569
+ ['4f', '90', 'P2SH,STRICTENC'],
570
+ ['00', '91', 'P2SH,STRICTENC'],
571
+ ['4f', '92', 'P2SH,STRICTENC'],
572
+ ['5100', '93', 'P2SH,STRICTENC'],
573
+ ['5100', '94', 'P2SH,STRICTENC'],
574
+ ['4f4f', '9a', 'P2SH,STRICTENC'],
575
+ ['4f00', '9b', 'P2SH,STRICTENC'],
576
+ ['0000', '9c', 'P2SH,STRICTENC'],
577
+ ['0000', '9d51', 'P2SH,STRICTENC'],
578
+ ['4f00', '9e', 'P2SH,STRICTENC'],
579
+ ['4f00', '9f', 'P2SH,STRICTENC'],
580
+ ['5100', 'a0', 'P2SH,STRICTENC'],
581
+ ['0000', 'a1', 'P2SH,STRICTENC'],
582
+ ['0000', 'a2', 'P2SH,STRICTENC'],
583
+ ['4f00', 'a3', 'P2SH,STRICTENC'],
584
+ ['5100', 'a4', 'P2SH,STRICTENC'],
585
+ ['4f4f00', 'a5', 'P2SH,STRICTENC'],
586
+ ['00', 'a6', 'P2SH,STRICTENC'],
587
+ ['00', 'a7', 'P2SH,STRICTENC'],
588
+ ['00', 'a8', 'P2SH,STRICTENC'],
589
+ ['00', 'a9', 'P2SH,STRICTENC'],
590
+ ['00', 'aa', 'P2SH,STRICTENC'],
591
+ ['61', 'ab51', 'P2SH,STRICTENC'],
592
+ ['61', 'b051', 'P2SH,STRICTENC'],
593
+ ['61', 'b151', 'P2SH,STRICTENC'],
594
+ ['61', 'b251', 'P2SH,STRICTENC'],
595
+ ['61', 'b351', 'P2SH,STRICTENC'],
596
+ ['61', 'b451', 'P2SH,STRICTENC'],
597
+ ['61', 'b551', 'P2SH,STRICTENC'],
598
+ ['61', 'b651', 'P2SH,STRICTENC'],
599
+ ['61', 'b751', 'P2SH,STRICTENC'],
600
+ ['61', 'b851', 'P2SH,STRICTENC'],
601
+ ['61', 'b951', 'P2SH,STRICTENC'],
602
+ [
603
+ '',
604
+ '000000ae69740087',
605
+ 'P2SH,STRICTENC',
606
+ 'CHECKMULTISIG is allowed to have zero keys and/or sigs'
607
+ ],
608
+ ['', '000000af740087', 'P2SH,STRICTENC'],
609
+ [
610
+ '',
611
+ '00000051ae69740087',
612
+ 'P2SH,STRICTENC',
613
+ 'Zero sigs means no sigs are checked'
614
+ ],
615
+ ['', '00000051af740087', 'P2SH,STRICTENC'],
616
+ [
617
+ '',
618
+ '000000ae69740087',
619
+ 'P2SH,STRICTENC',
620
+ 'CHECKMULTISIG is allowed to have zero keys and/or sigs'
621
+ ],
622
+ ['', '000000af740087', 'P2SH,STRICTENC'],
623
+ [
624
+ '',
625
+ '00000051ae69740087',
626
+ 'P2SH,STRICTENC',
627
+ 'Zero sigs means no sigs are checked'
628
+ ],
629
+ ['', '00000051af740087', 'P2SH,STRICTENC'],
630
+ [
631
+ '',
632
+ '0000616252ae69740087',
633
+ 'P2SH,STRICTENC',
634
+ 'Test from up to 20 pubkeys, all not checked'
635
+ ],
636
+ ['', '000061626353ae69740087', 'P2SH,STRICTENC'],
637
+ ['', '00006162636454ae69740087', 'P2SH,STRICTENC'],
638
+ ['', '0000616263646555ae69740087', 'P2SH,STRICTENC'],
639
+ ['', '000061626364656656ae69740087', 'P2SH,STRICTENC'],
640
+ ['', '00006162636465666757ae69740087', 'P2SH,STRICTENC'],
641
+ ['', '0000616263646566676858ae69740087', 'P2SH,STRICTENC'],
642
+ ['', '000061626364656667686959ae69740087', 'P2SH,STRICTENC'],
643
+ ['', '00006162636465666768696a5aae69740087', 'P2SH,STRICTENC'],
644
+ ['', '00006162636465666768696a6b5bae69740087', 'P2SH,STRICTENC'],
645
+ ['', '00006162636465666768696a6b6c5cae69740087', 'P2SH,STRICTENC'],
646
+ ['', '00006162636465666768696a6b6c6d5dae69740087', 'P2SH,STRICTENC'],
647
+ ['', '00006162636465666768696a6b6c6d6e5eae69740087', 'P2SH,STRICTENC'],
648
+ ['', '00006162636465666768696a6b6c6d6e6f5fae69740087', 'P2SH,STRICTENC'],
649
+ ['', '00006162636465666768696a6b6c6d6e6f7060ae69740087', 'P2SH,STRICTENC'],
650
+ [
651
+ '',
652
+ '00006162636465666768696a6b6c6d6e6f70710111ae69740087',
653
+ 'P2SH,STRICTENC'
654
+ ],
655
+ [
656
+ '',
657
+ '00006162636465666768696a6b6c6d6e6f7071720112ae69740087',
658
+ 'P2SH,STRICTENC'
659
+ ],
660
+ [
661
+ '',
662
+ '00006162636465666768696a6b6c6d6e6f707172730113ae69740087',
663
+ 'P2SH,STRICTENC'
664
+ ],
665
+ [
666
+ '',
667
+ '00006162636465666768696a6b6c6d6e6f70717273740114ae69740087',
668
+ 'P2SH,STRICTENC'
669
+ ],
670
+ ['', '00006151af740087', 'P2SH,STRICTENC'],
671
+ ['', '0000616252af740087', 'P2SH,STRICTENC'],
672
+ ['', '000061626353af740087', 'P2SH,STRICTENC'],
673
+ ['', '00006162636454af740087', 'P2SH,STRICTENC'],
674
+ ['', '0000616263646555af740087', 'P2SH,STRICTENC'],
675
+ ['', '000061626364656656af740087', 'P2SH,STRICTENC'],
676
+ ['', '00006162636465666757af740087', 'P2SH,STRICTENC'],
677
+ ['', '0000616263646566676858af740087', 'P2SH,STRICTENC'],
678
+ ['', '000061626364656667686959af740087', 'P2SH,STRICTENC'],
679
+ ['', '00006162636465666768696a5aaf740087', 'P2SH,STRICTENC'],
680
+ ['', '00006162636465666768696a6b5baf740087', 'P2SH,STRICTENC'],
681
+ ['', '00006162636465666768696a6b6c5caf740087', 'P2SH,STRICTENC'],
682
+ ['', '00006162636465666768696a6b6c6d5daf740087', 'P2SH,STRICTENC'],
683
+ ['', '00006162636465666768696a6b6c6d6e5eaf740087', 'P2SH,STRICTENC'],
684
+ ['', '00006162636465666768696a6b6c6d6e6f5faf740087', 'P2SH,STRICTENC'],
685
+ ['', '00006162636465666768696a6b6c6d6e6f7060af740087', 'P2SH,STRICTENC'],
686
+ ['', '00006162636465666768696a6b6c6d6e6f70710111af740087', 'P2SH,STRICTENC'],
687
+ [
688
+ '',
689
+ '00006162636465666768696a6b6c6d6e6f7071720112af740087',
690
+ 'P2SH,STRICTENC'
691
+ ],
692
+ [
693
+ '',
694
+ '00006162636465666768696a6b6c6d6e6f707172730113af740087',
695
+ 'P2SH,STRICTENC'
696
+ ],
697
+ [
698
+ '',
699
+ '00006162636465666768696a6b6c6d6e6f70717273740114af740087',
700
+ 'P2SH,STRICTENC'
701
+ ],
702
+ [
703
+ '',
704
+ '000000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae0000ae',
705
+ 'P2SH,STRICTENC',
706
+ 'nOpCount is incremented by the number of keys evaluated in addition to the usual one op per op. In this case we have zero keys, so we can execute 201 CHECKMULTISIGS'
707
+ ],
708
+ [
709
+ '51',
710
+ '000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af000000af',
711
+ 'P2SH,STRICTENC'
712
+ ],
713
+ [
714
+ '',
715
+ '61616161616161616161616100006162636465666768696a6b6c6d6e6f70717273740114ae00006162636465666768696a6b6c6d6e6f70717273740114ae00006162636465666768696a6b6c6d6e6f70717273740114ae00006162636465666768696a6b6c6d6e6f70717273740114ae00006162636465666768696a6b6c6d6e6f70717273740114ae00006162636465666768696a6b6c6d6e6f70717273740114ae00006162636465666768696a6b6c6d6e6f70717273740114ae00006162636465666768696a6b6c6d6e6f70717273740114ae00006162636465666768696a6b6c6d6e6f70717273740114ae',
716
+ 'P2SH,STRICTENC',
717
+ 'Even though there are no signatures being checked nOpCount is incremented by the number of keys.'
718
+ ],
719
+ [
720
+ '51',
721
+ '61616161616161616161616100006162636465666768696a6b6c6d6e6f70717273740114af00006162636465666768696a6b6c6d6e6f70717273740114af00006162636465666768696a6b6c6d6e6f70717273740114af00006162636465666768696a6b6c6d6e6f70717273740114af00006162636465666768696a6b6c6d6e6f70717273740114af00006162636465666768696a6b6c6d6e6f70717273740114af00006162636465666768696a6b6c6d6e6f70717273740114af00006162636465666768696a6b6c6d6e6f70717273740114af00006162636465666768696a6b6c6d6e6f70717273740114af',
722
+ 'P2SH,STRICTENC'
723
+ ],
724
+ [
725
+ '000151',
726
+ 'a914da1745e9b549bd0bfa1a569971c77eba30cd5a4b87',
727
+ 'P2SH,STRICTENC',
728
+ 'Very basic P2SH'
729
+ ],
730
+ [
731
+ '4c000151',
732
+ 'a914da1745e9b549bd0bfa1a569971c77eba30cd5a4b87',
733
+ 'P2SH,STRICTENC'
734
+ ],
735
+ [
736
+ '4042424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242',
737
+ '4d40004242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424287',
738
+ 'P2SH,STRICTENC',
739
+ 'Basic PUSH signedness check'
740
+ ],
741
+ [
742
+ '4c4042424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242',
743
+ '4d40004242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424287',
744
+ 'P2SH,STRICTENC',
745
+ 'Basic PUSHDATA1 signedness check'
746
+ ],
747
+ ['all PUSHDATA forms are equivalent'],
748
+ [
749
+ '4c4b111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111',
750
+ '4b11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111187',
751
+ '',
752
+ 'PUSHDATA1 of 75 bytes equals direct push of it'
753
+ ],
754
+ [
755
+ '4dff00111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111',
756
+ '4cff11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111187',
757
+ '',
758
+ 'PUSHDATA2 of 255 bytes equals PUSHDATA1 of it'
759
+ ],
760
+ ['00', '820087', 'P2SH,STRICTENC', 'Basic OP_0 execution'],
761
+ ['Numeric pushes'],
762
+ ['0181', '4f87', '', 'OP1_NEGATE pushes 0x81'],
763
+ ['0101', '5187', '', 'OP_1 pushes 0x01'],
764
+ ['0102', '5287', '', 'OP_2 pushes 0x02'],
765
+ ['0103', '5387', '', 'OP_3 pushes 0x03'],
766
+ ['0104', '5487', '', 'OP_4 pushes 0x04'],
767
+ ['0105', '5587', '', 'OP_5 pushes 0x05'],
768
+ ['0106', '5687', '', 'OP_6 pushes 0x06'],
769
+ ['0107', '5787', '', 'OP_7 pushes 0x07'],
770
+ ['0108', '5887', '', 'OP_8 pushes 0x08'],
771
+ ['0109', '5987', '', 'OP_9 pushes 0x09'],
772
+ ['010a', '5a87', '', 'OP_10 pushes 0x0a'],
773
+ ['010b', '5b87', '', 'OP_11 pushes 0x0b'],
774
+ ['010c', '5c87', '', 'OP_12 pushes 0x0c'],
775
+ ['010d', '5d87', '', 'OP_13 pushes 0x0d'],
776
+ ['010e', '5e87', '', 'OP_14 pushes 0x0e'],
777
+ ['010f', '5f87', '', 'OP_15 pushes 0x0f'],
778
+ ['0110', '6087', '', 'OP_16 pushes 0x10'],
779
+ ['Equivalency of different numeric encodings'],
780
+ ['028000', '0280009c', '', '0x8000 equals 128'],
781
+ ['0100', '009c', '', '0x00 numequals 0'],
782
+ ['0180', '009c', '', '0x80 (negative zero) numequals 0'],
783
+ ['020080', '009c', '', '0x0080 numequals 0'],
784
+ ['020500', '559c', '', '0x0500 numequals 5'],
785
+ ['03ff7f80', '02ffff9c', '', ''],
786
+ ['03ff7f00', '02ff7f9c', '', ''],
787
+ ['04ffff7f80', '03ffffff9c', '', ''],
788
+ ['04ffff7f00', '03ffff7f9c', '', ''],
789
+ ['Unevaluated non-minimal pushes are ignored'],
790
+ ['00634c006851', '', 'MINIMALDATA', 'non-minimal PUSHDATA1 ignored'],
791
+ ['00634d00006851', '', 'MINIMALDATA', 'non-minimal PUSHDATA2 ignored'],
792
+ ['00634c000000006851', '', 'MINIMALDATA', 'non-minimal PUSHDATA4 ignored'],
793
+ ['006301816851', '', 'MINIMALDATA', '1NEGATE equiv'],
794
+ ['006301016851', '', 'MINIMALDATA', 'OP_1 equiv'],
795
+ ['006301026851', '', 'MINIMALDATA', 'OP_2 equiv'],
796
+ ['006301036851', '', 'MINIMALDATA', 'OP_3 equiv'],
797
+ ['006301046851', '', 'MINIMALDATA', 'OP_4 equiv'],
798
+ ['006301056851', '', 'MINIMALDATA', 'OP_5 equiv'],
799
+ ['006301066851', '', 'MINIMALDATA', 'OP_6 equiv'],
800
+ ['006301076851', '', 'MINIMALDATA', 'OP_7 equiv'],
801
+ ['006301086851', '', 'MINIMALDATA', 'OP_8 equiv'],
802
+ ['006301096851', '', 'MINIMALDATA', 'OP_9 equiv'],
803
+ ['0063010a6851', '', 'MINIMALDATA', 'OP_10 equiv'],
804
+ ['0063010b6851', '', 'MINIMALDATA', 'OP_11 equiv'],
805
+ ['0063010c6851', '', 'MINIMALDATA', 'OP_12 equiv'],
806
+ ['0063010d6851', '', 'MINIMALDATA', 'OP_13 equiv'],
807
+ ['0063010e6851', '', 'MINIMALDATA', 'OP_14 equiv'],
808
+ ['0063010f6851', '', 'MINIMALDATA', 'OP_15 equiv'],
809
+ ['006301106851', '', 'MINIMALDATA', 'OP_16 equiv'],
810
+ [
811
+ 'Numeric minimaldata rules are only applied when a stack item is numerically evaluated; the push itself is allowed'
812
+ ],
813
+ ['0100', '51', 'MINIMALDATA'],
814
+ ['0180', '51', 'MINIMALDATA'],
815
+ ['020180', '51', 'MINIMALDATA'],
816
+ ['020100', '51', 'MINIMALDATA'],
817
+ ['020200', '51', 'MINIMALDATA'],
818
+ ['020300', '51', 'MINIMALDATA'],
819
+ ['020400', '51', 'MINIMALDATA'],
820
+ ['020500', '51', 'MINIMALDATA'],
821
+ ['020600', '51', 'MINIMALDATA'],
822
+ ['020700', '51', 'MINIMALDATA'],
823
+ ['020800', '51', 'MINIMALDATA'],
824
+ ['020900', '51', 'MINIMALDATA'],
825
+ ['020a00', '51', 'MINIMALDATA'],
826
+ ['020b00', '51', 'MINIMALDATA'],
827
+ ['020c00', '51', 'MINIMALDATA'],
828
+ ['020d00', '51', 'MINIMALDATA'],
829
+ ['020e00', '51', 'MINIMALDATA'],
830
+ ['020f00', '51', 'MINIMALDATA'],
831
+ ['021000', '51', 'MINIMALDATA'],
832
+ [
833
+ "Valid version of the 'Test every numeric-accepting opcode for correct handling of the numeric minimal encoding rule' script_invalid test"
834
+ ],
835
+ ['51020000', '7975', ''],
836
+ ['51020000', '7a7551', ''],
837
+ ['020000', '8b7551', ''],
838
+ ['020000', '8c7551', ''],
839
+ ['020000', '8f7551', ''],
840
+ ['020000', '907551', ''],
841
+ ['020000', '917551', ''],
842
+ ['020000', '927551', ''],
843
+ ['00020000', '937551', ''],
844
+ ['02000000', '937551', ''],
845
+ ['00020000', '947551', ''],
846
+ ['02000000', '947551', ''],
847
+ ['00020000', '9a7551', ''],
848
+ ['02000000', '9a7551', ''],
849
+ ['00020000', '9b7551', ''],
850
+ ['02000000', '9b7551', ''],
851
+ ['00020000', '9c7551', ''],
852
+ ['02000051', '9c7551', ''],
853
+ ['00020000', '9d51', ''],
854
+ ['02000000', '9d51', ''],
855
+ ['00020000', '9e7551', ''],
856
+ ['02000000', '9e7551', ''],
857
+ ['00020000', '9f7551', ''],
858
+ ['02000000', '9f7551', ''],
859
+ ['00020000', 'a07551', ''],
860
+ ['02000000', 'a07551', ''],
861
+ ['00020000', 'a17551', ''],
862
+ ['02000000', 'a17551', ''],
863
+ ['00020000', 'a27551', ''],
864
+ ['02000000', 'a27551', ''],
865
+ ['00020000', 'a37551', ''],
866
+ ['02000000', 'a37551', ''],
867
+ ['00020000', 'a47551', ''],
868
+ ['02000000', 'a47551', ''],
869
+ ['0200000000', 'a57551', ''],
870
+ ['0002000000', 'a57551', ''],
871
+ ['0000020000', 'a57551', ''],
872
+ ['0000020000', 'ae7551', ''],
873
+ ['0002000000', 'ae7551', ''],
874
+ ['000200000051', 'ae7551', ''],
875
+ ['0000020000', 'af51', ''],
876
+ ['0002000000', 'af51', ''],
877
+ ['While not really correctly DER encoded, the empty signature is allowed by'],
878
+ [
879
+ 'STRICTENC to provide a compact way to provide a delibrately invalid signature.'
880
+ ],
881
+ [
882
+ '00',
883
+ '2102865c40293a680cb9c020e7b1e106d8c1916d3cef99aa431a56d253e69256dac0ac91',
884
+ 'STRICTENC'
885
+ ],
886
+ [
887
+ '0000',
888
+ '512102865c40293a680cb9c020e7b1e106d8c1916d3cef99aa431a56d253e69256dac051ae91',
889
+ 'STRICTENC'
890
+ ],
891
+ [
892
+ 'CHECKMULTISIG evaluation order tests. CHECKMULTISIG evaluates signatures and'
893
+ ],
894
+ [
895
+ 'pubkeys in a specific order, and will exit early if the number of signatures'
896
896
  ],
897
897
  [
898
- "left to check is greater than the number of keys left. As STRICTENC fails the",
898
+ 'left to check is greater than the number of keys left. As STRICTENC fails the'
899
899
  ],
900
900
  [
901
- "script when it reaches an invalidly encoded signature or pubkey, we can use it",
901
+ 'script when it reaches an invalidly encoded signature or pubkey, we can use it'
902
902
  ],
903
- ["to test the exact order in which signatures and pubkeys are evaluated by"],
903
+ ['to test the exact order in which signatures and pubkeys are evaluated by'],
904
904
  [
905
- "distinguishing CHECKMULTISIG returning false on the stack and the script as a",
905
+ 'distinguishing CHECKMULTISIG returning false on the stack and the script as a'
906
906
  ],
907
- ["whole failing."],
907
+ ['whole failing.'],
908
908
  [
909
- "See also the corresponding inverted versions of these tests in script_invalid",
909
+ 'See also the corresponding inverted versions of these tests in script_invalid'
910
910
  ],
911
911
  [
912
- "00473044022044dc17b0887c161bb67ba9635bf758735bdde503e4b0a0987f587f14a4e1143d022009a215772d49a85dae40d8ca03955af26ad3978a0ff965faa12915e9586249a501473044022044dc17b0887c161bb67ba9635bf758735bdde503e4b0a0987f587f14a4e1143d022009a215772d49a85dae40d8ca03955af26ad3978a0ff965faa12915e9586249a501",
913
- "52002102865c40293a680cb9c020e7b1e106d8c1916d3cef99aa431a56d253e69256dac052ae91",
914
- "STRICTENC",
915
- "2-of-2 CHECKMULTISIG NOT with the second pubkey invalid, and both signatures validly encoded. Valid pubkey fails, and CHECKMULTISIG exits early, prior to evaluation of second invalid pubkey.",
912
+ '00473044022044dc17b0887c161bb67ba9635bf758735bdde503e4b0a0987f587f14a4e1143d022009a215772d49a85dae40d8ca03955af26ad3978a0ff965faa12915e9586249a501473044022044dc17b0887c161bb67ba9635bf758735bdde503e4b0a0987f587f14a4e1143d022009a215772d49a85dae40d8ca03955af26ad3978a0ff965faa12915e9586249a501',
913
+ '52002102865c40293a680cb9c020e7b1e106d8c1916d3cef99aa431a56d253e69256dac052ae91',
914
+ 'STRICTENC',
915
+ '2-of-2 CHECKMULTISIG NOT with the second pubkey invalid, and both signatures validly encoded. Valid pubkey fails, and CHECKMULTISIG exits early, prior to evaluation of second invalid pubkey.'
916
916
  ],
917
917
  [
918
- "0000473044022044dc17b0887c161bb67ba9635bf758735bdde503e4b0a0987f587f14a4e1143d022009a215772d49a85dae40d8ca03955af26ad3978a0ff965faa12915e9586249a501",
919
- "522102865c40293a680cb9c020e7b1e106d8c1916d3cef99aa431a56d253e69256dac02102865c40293a680cb9c020e7b1e106d8c1916d3cef99aa431a56d253e69256dac052ae91",
920
- "STRICTENC",
921
- "2-of-2 CHECKMULTISIG NOT with both pubkeys valid, but second signature invalid. Valid pubkey fails, and CHECKMULTISIG exits early, prior to evaluation of second invalid signature.",
918
+ '0000473044022044dc17b0887c161bb67ba9635bf758735bdde503e4b0a0987f587f14a4e1143d022009a215772d49a85dae40d8ca03955af26ad3978a0ff965faa12915e9586249a501',
919
+ '522102865c40293a680cb9c020e7b1e106d8c1916d3cef99aa431a56d253e69256dac02102865c40293a680cb9c020e7b1e106d8c1916d3cef99aa431a56d253e69256dac052ae91',
920
+ 'STRICTENC',
921
+ '2-of-2 CHECKMULTISIG NOT with both pubkeys valid, but second signature invalid. Valid pubkey fails, and CHECKMULTISIG exits early, prior to evaluation of second invalid signature.'
922
922
  ],
923
- ["Increase test coverage for DERSIG"],
923
+ ['Increase test coverage for DERSIG'],
924
924
  [
925
- "4a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
926
- "00ac91",
927
- "",
928
- "Overly long signature is correctly encoded",
925
+ '4a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000',
926
+ '00ac91',
927
+ '',
928
+ 'Overly long signature is correctly encoded'
929
929
  ],
930
930
  [
931
- "2530220220000000000000000000000000000000000000000000000000000000000000000000",
932
- "00ac91",
933
- "",
934
- "Missing S is correctly encoded",
931
+ '2530220220000000000000000000000000000000000000000000000000000000000000000000',
932
+ '00ac91',
933
+ '',
934
+ 'Missing S is correctly encoded'
935
935
  ],
936
936
  [
937
- "273024021077777777777777777777777777777777020a7777777777777777777777777777777701",
938
- "00ac91",
939
- "",
940
- "S with invalid S length is correctly encoded",
937
+ '273024021077777777777777777777777777777777020a7777777777777777777777777777777701',
938
+ '00ac91',
939
+ '',
940
+ 'S with invalid S length is correctly encoded'
941
941
  ],
942
942
  [
943
- "27302403107777777777777777777777777777777702107777777777777777777777777777777701",
944
- "00ac91",
945
- "",
946
- "Non-integer R is correctly encoded",
943
+ '27302403107777777777777777777777777777777702107777777777777777777777777777777701',
944
+ '00ac91',
945
+ '',
946
+ 'Non-integer R is correctly encoded'
947
947
  ],
948
948
  [
949
- "27302402107777777777777777777777777777777703107777777777777777777777777777777701",
950
- "00ac91",
951
- "",
952
- "Non-integer S is correctly encoded",
949
+ '27302402107777777777777777777777777777777703107777777777777777777777777777777701',
950
+ '00ac91',
951
+ '',
952
+ 'Non-integer S is correctly encoded'
953
953
  ],
954
954
  [
955
- "173014020002107777777777777777777777777777777701",
956
- "00ac91",
957
- "",
958
- "Zero-length R is correctly encoded",
955
+ '173014020002107777777777777777777777777777777701',
956
+ '00ac91',
957
+ '',
958
+ 'Zero-length R is correctly encoded'
959
959
  ],
960
960
  [
961
- "173014021077777777777777777777777777777777020001",
962
- "00ac91",
963
- "",
964
- "Zero-length S is correctly encoded for DERSIG",
961
+ '173014021077777777777777777777777777777777020001',
962
+ '00ac91',
963
+ '',
964
+ 'Zero-length S is correctly encoded for DERSIG'
965
965
  ],
966
966
  [
967
- "27302402107777777777777777777777777777777702108777777777777777777777777777777701",
968
- "00ac91",
969
- "",
970
- "Negative S is correctly encoded",
967
+ '27302402107777777777777777777777777777777702108777777777777777777777777777777701',
968
+ '00ac91',
969
+ '',
970
+ 'Negative S is correctly encoded'
971
971
  ],
972
- ["Automatically generated test cases"],
972
+ ['Automatically generated test cases'],
973
973
  [
974
- "47304402200a5c6163f07b8d3b013c4d1d6dba25e780b39658d79ba37af7057a3b7f15ffa102201fd9b4eaa9943f734928b99a83592c2e7bf342ea2680f6a2bb705167966b742001",
975
- "410479be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8ac",
976
- "",
977
- "P2PK",
974
+ '47304402200a5c6163f07b8d3b013c4d1d6dba25e780b39658d79ba37af7057a3b7f15ffa102201fd9b4eaa9943f734928b99a83592c2e7bf342ea2680f6a2bb705167966b742001',
975
+ '410479be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8ac',
976
+ '',
977
+ 'P2PK'
978
978
  ],
979
979
  [
980
- "47304402206e05a6fe23c59196ffe176c9ddc31e73a9885638f9d1328d47c0c703863b8876022076feb53811aa5b04e0e79f938eb19906cc5e67548bc555a8e8b8b0fc603d840c0121038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508",
981
- "76a9141018853670f9f3b0582c5b9ee8ce93764ac32b9388ac",
982
- "",
983
- "P2PKH",
980
+ '47304402206e05a6fe23c59196ffe176c9ddc31e73a9885638f9d1328d47c0c703863b8876022076feb53811aa5b04e0e79f938eb19906cc5e67548bc555a8e8b8b0fc603d840c0121038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508',
981
+ '76a9141018853670f9f3b0582c5b9ee8ce93764ac32b9388ac',
982
+ '',
983
+ 'P2PKH'
984
984
  ],
985
985
  [
986
- "47304402204710a85181663b32d25c70ec2bbd14adff5ddfff6cb50d09e155ef5f541fc86c0220056b0cc949be9386ecc5f6c2ac0493269031dbb185781db90171b54ac127790281",
987
- "41048282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f5150811f8a8098557dfe45e8256e830b60ace62d613ac2f7b17bed31b6eaff6e26cafac",
988
- "",
989
- "P2PK anyonecanpay",
986
+ '47304402204710a85181663b32d25c70ec2bbd14adff5ddfff6cb50d09e155ef5f541fc86c0220056b0cc949be9386ecc5f6c2ac0493269031dbb185781db90171b54ac127790281',
987
+ '41048282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f5150811f8a8098557dfe45e8256e830b60ace62d613ac2f7b17bed31b6eaff6e26cafac',
988
+ '',
989
+ 'P2PK anyonecanpay'
990
990
  ],
991
991
  [
992
- "473044022003fef42ed6c7be8917441218f525a60e2431be978e28b7aca4d7a532cc413ae8022067a1f82c74e8d69291b90d148778405c6257bbcfc2353cc38a3e1f22bf4425460123210279be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798ac",
993
- "a91423b0ad3477f2178bc0b3eed26e4e6316f4e83aa187",
994
- "P2SH",
995
- "P2SH(P2PK)",
992
+ '473044022003fef42ed6c7be8917441218f525a60e2431be978e28b7aca4d7a532cc413ae8022067a1f82c74e8d69291b90d148778405c6257bbcfc2353cc38a3e1f22bf4425460123210279be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798ac',
993
+ 'a91423b0ad3477f2178bc0b3eed26e4e6316f4e83aa187',
994
+ 'P2SH',
995
+ 'P2SH(P2PK)'
996
996
  ],
997
997
  [
998
- "47304402204e2eb034be7b089534ac9e798cf6a2c79f38bcb34d1b179efd6f2de0841735db022071461beb056b5a7be1819da6a3e3ce3662831ecc298419ca101eb6887b5dd6a4011976a9147cf9c846cd4882efec4bf07e44ebdad495c94f4b88ac",
999
- "a9142df519943d5acc0ef5222091f9dfe3543f489a8287",
1000
- "",
1001
- "P2SH(P2PKH), bad sig but no VERIFY_P2SH",
998
+ '47304402204e2eb034be7b089534ac9e798cf6a2c79f38bcb34d1b179efd6f2de0841735db022071461beb056b5a7be1819da6a3e3ce3662831ecc298419ca101eb6887b5dd6a4011976a9147cf9c846cd4882efec4bf07e44ebdad495c94f4b88ac',
999
+ 'a9142df519943d5acc0ef5222091f9dfe3543f489a8287',
1000
+ '',
1001
+ 'P2SH(P2PKH), bad sig but no VERIFY_P2SH'
1002
1002
  ],
1003
1003
  [
1004
- "00473044022051254b9fb476a52d85530792b578f86fea70ec1ffb4393e661bcccb23d8d63d3022076505f94a403c86097841944e044c70c2045ce90e36de51f7e9d3828db98a0750147304402200a358f750934b3feb822f1966bfcd8bbec9eeaa3a8ca941e11ee5960e181fa01022050bf6b5a8e7750f70354ae041cb68a7bade67ec6c3ab19eb359638974410626e0147304402200955d031fff71d8653221e85e36c3c85533d2312fc3045314b19650b7ae2f81002202a6bb8505e36201909d0921f01abff390ae6b7ff97bbf959f98aedeb0a56730901",
1005
- "53210279be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f8179821038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f515082103363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff464053ae",
1006
- "",
1007
- "3-of-3",
1004
+ '00473044022051254b9fb476a52d85530792b578f86fea70ec1ffb4393e661bcccb23d8d63d3022076505f94a403c86097841944e044c70c2045ce90e36de51f7e9d3828db98a0750147304402200a358f750934b3feb822f1966bfcd8bbec9eeaa3a8ca941e11ee5960e181fa01022050bf6b5a8e7750f70354ae041cb68a7bade67ec6c3ab19eb359638974410626e0147304402200955d031fff71d8653221e85e36c3c85533d2312fc3045314b19650b7ae2f81002202a6bb8505e36201909d0921f01abff390ae6b7ff97bbf959f98aedeb0a56730901',
1005
+ '53210279be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f8179821038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f515082103363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff464053ae',
1006
+ '',
1007
+ '3-of-3'
1008
1008
  ],
1009
1009
  [
1010
- "0047304402205b7d2c2f177ae76cfbbf14d589c113b0b35db753d305d5562dd0b61cbf366cfb02202e56f93c4f08a27f986cd424ffc48a462c3202c4902104d4d0ff98ed28f4bf80014730440220563e5b3b1fc11662a84bc5ea2a32cc3819703254060ba30d639a1aaf2d5068ad0220601c1f47ddc76d93284dd9ed68f7c9974c4a0ea7cbe8a247d6bc3878567a5fca014c6952210279be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f8179821038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f515082103363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff464053ae",
1011
- "a914c9e4a896d149702d0d1695434feddd52e24ad78d87",
1012
- "P2SH",
1013
- "P2SH(2-of-3)",
1010
+ '0047304402205b7d2c2f177ae76cfbbf14d589c113b0b35db753d305d5562dd0b61cbf366cfb02202e56f93c4f08a27f986cd424ffc48a462c3202c4902104d4d0ff98ed28f4bf80014730440220563e5b3b1fc11662a84bc5ea2a32cc3819703254060ba30d639a1aaf2d5068ad0220601c1f47ddc76d93284dd9ed68f7c9974c4a0ea7cbe8a247d6bc3878567a5fca014c6952210279be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f8179821038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f515082103363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff464053ae',
1011
+ 'a914c9e4a896d149702d0d1695434feddd52e24ad78d87',
1012
+ 'P2SH',
1013
+ 'P2SH(2-of-3)'
1014
1014
  ],
1015
1015
  [
1016
- "47304402200060558477337b9022e70534f1fea71a318caf836812465a2509931c5e7c4987022078ec32bd50ac9e03a349ba953dfd9fe1c8d2dd8bdb1d38ddca844d3d5c78c11801",
1017
- "21038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508ac",
1018
- "",
1019
- "P2PK with too much R padding but no DERSIG",
1016
+ '47304402200060558477337b9022e70534f1fea71a318caf836812465a2509931c5e7c4987022078ec32bd50ac9e03a349ba953dfd9fe1c8d2dd8bdb1d38ddca844d3d5c78c11801',
1017
+ '21038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508ac',
1018
+ '',
1019
+ 'P2PK with too much R padding but no DERSIG'
1020
1020
  ],
1021
1021
  [
1022
- "48304502202de8c03fc525285c9c535631019a5f2af7c6454fa9eb392a3756a4917c420edd02210046130bf2baf7cfc065067c8b9e33a066d9c15edcea9feb0ca2d233e3597925b401",
1023
- "21038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508ac",
1024
- "",
1025
- "P2PK with too much S padding but no DERSIG",
1022
+ '48304502202de8c03fc525285c9c535631019a5f2af7c6454fa9eb392a3756a4917c420edd02210046130bf2baf7cfc065067c8b9e33a066d9c15edcea9feb0ca2d233e3597925b401',
1023
+ '21038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508ac',
1024
+ '',
1025
+ 'P2PK with too much S padding but no DERSIG'
1026
1026
  ],
1027
1027
  [
1028
- "4730440220d7a0417c3f6d1a15094d1cf2a3378ca0503eb8a57630953a9e2987e21ddd0a6502207a6266d686c99090920249991d3d42065b6d43eb70187b219c0db82e4f94d1a201",
1029
- "21038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508ac",
1030
- "",
1031
- "P2PK with too little R padding but no DERSIG",
1028
+ '4730440220d7a0417c3f6d1a15094d1cf2a3378ca0503eb8a57630953a9e2987e21ddd0a6502207a6266d686c99090920249991d3d42065b6d43eb70187b219c0db82e4f94d1a201',
1029
+ '21038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508ac',
1030
+ '',
1031
+ 'P2PK with too little R padding but no DERSIG'
1032
1032
  ],
1033
1033
  [
1034
- "4730440220005ece1335e7f757a1a1f476a7fb5bd90964e8a022489f890614a04acfb734c002206c12b8294a6513c7710e8c82d3c23d75cdbfe83200eb7efb495701958501a5d601",
1035
- "2103363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff4640ac91",
1036
- "",
1037
- "P2PK NOT with bad sig with too much R padding but no DERSIG",
1034
+ '4730440220005ece1335e7f757a1a1f476a7fb5bd90964e8a022489f890614a04acfb734c002206c12b8294a6513c7710e8c82d3c23d75cdbfe83200eb7efb495701958501a5d601',
1035
+ '2103363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff4640ac91',
1036
+ '',
1037
+ 'P2PK NOT with bad sig with too much R padding but no DERSIG'
1038
1038
  ],
1039
1039
  [
1040
- "4730440220d7a0417c3f6d1a15094d1cf2a3378ca0503eb8a57630953a9e2987e21ddd0a6502207a6266d686c99090920249991d3d42065b6d43eb70187b219c0db82e4f94d1a201",
1041
- "21038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508ac",
1042
- "",
1043
- "BIP66 example 1, without DERSIG",
1040
+ '4730440220d7a0417c3f6d1a15094d1cf2a3378ca0503eb8a57630953a9e2987e21ddd0a6502207a6266d686c99090920249991d3d42065b6d43eb70187b219c0db82e4f94d1a201',
1041
+ '21038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508ac',
1042
+ '',
1043
+ 'BIP66 example 1, without DERSIG'
1044
1044
  ],
1045
1045
  [
1046
- "00",
1047
- "21038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508ac91",
1048
- "",
1049
- "BIP66 example 4, without DERSIG",
1046
+ '00',
1047
+ '21038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508ac91',
1048
+ '',
1049
+ 'BIP66 example 4, without DERSIG'
1050
1050
  ],
1051
1051
  [
1052
- "00",
1053
- "21038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508ac91",
1054
- "DERSIG",
1055
- "BIP66 example 4, with DERSIG",
1052
+ '00',
1053
+ '21038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508ac91',
1054
+ 'DERSIG',
1055
+ 'BIP66 example 4, with DERSIG'
1056
1056
  ],
1057
1057
  [
1058
- "51",
1059
- "21038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508ac91",
1060
- "",
1061
- "BIP66 example 6, without DERSIG",
1058
+ '51',
1059
+ '21038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508ac91',
1060
+ '',
1061
+ 'BIP66 example 6, without DERSIG'
1062
1062
  ],
1063
1063
  [
1064
- "004730440220cae00b1444babfbf6071b0ba8707f6bd373da3df494d6e74119b0430c5db810502205d5231b8c5939c8ff0c82242656d6e06edb073d42af336c99fe8837c36ea39d501473044022027c2714269ca5aeecc4d70edc88ba5ee0e3da4986e9216028f489ab4f1b8efce022022bd545b4951215267e4c5ceabd4c5350331b2e4a0b6494c56f361fa5a57a1a201",
1065
- "5221038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f515082103363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff464052ae",
1066
- "",
1067
- "BIP66 example 7, without DERSIG",
1064
+ '004730440220cae00b1444babfbf6071b0ba8707f6bd373da3df494d6e74119b0430c5db810502205d5231b8c5939c8ff0c82242656d6e06edb073d42af336c99fe8837c36ea39d501473044022027c2714269ca5aeecc4d70edc88ba5ee0e3da4986e9216028f489ab4f1b8efce022022bd545b4951215267e4c5ceabd4c5350331b2e4a0b6494c56f361fa5a57a1a201',
1065
+ '5221038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f515082103363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff464052ae',
1066
+ '',
1067
+ 'BIP66 example 7, without DERSIG'
1068
1068
  ],
1069
1069
  [
1070
- "00004730440220da6f441dc3b4b2c84cfa8db0cd5b34ed92c9e01686de5a800d40498b70c0dcac02207c2cf91b0c32b860c4cd4994be36cfb84caf8bb7c3a8e4d96a31b2022c5299c501",
1071
- "5221038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f515082103363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff464052ae91",
1072
- "",
1073
- "BIP66 example 10, without DERSIG",
1070
+ '00004730440220da6f441dc3b4b2c84cfa8db0cd5b34ed92c9e01686de5a800d40498b70c0dcac02207c2cf91b0c32b860c4cd4994be36cfb84caf8bb7c3a8e4d96a31b2022c5299c501',
1071
+ '5221038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f515082103363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff464052ae91',
1072
+ '',
1073
+ 'BIP66 example 10, without DERSIG'
1074
1074
  ],
1075
1075
  [
1076
- "004730440220b119d67d389315308d1745f734a51ff3ec72e06081e84e236fdf9dc2f5d2a64802204b04e3bc38674c4422ea317231d642b56dc09d214a1ecbbf16ecca01ed996e220100",
1077
- "5221038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f515082103363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff464052ae91",
1078
- "",
1079
- "BIP66 example 12, without DERSIG",
1076
+ '004730440220b119d67d389315308d1745f734a51ff3ec72e06081e84e236fdf9dc2f5d2a64802204b04e3bc38674c4422ea317231d642b56dc09d214a1ecbbf16ecca01ed996e220100',
1077
+ '5221038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f515082103363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff464052ae91',
1078
+ '',
1079
+ 'BIP66 example 12, without DERSIG'
1080
1080
  ],
1081
1081
  [
1082
- "004730440220b119d67d389315308d1745f734a51ff3ec72e06081e84e236fdf9dc2f5d2a64802204b04e3bc38674c4422ea317231d642b56dc09d214a1ecbbf16ecca01ed996e220100",
1083
- "5221038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f515082103363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff464052ae91",
1084
- "DERSIG",
1085
- "BIP66 example 12, with DERSIG",
1082
+ '004730440220b119d67d389315308d1745f734a51ff3ec72e06081e84e236fdf9dc2f5d2a64802204b04e3bc38674c4422ea317231d642b56dc09d214a1ecbbf16ecca01ed996e220100',
1083
+ '5221038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f515082103363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff464052ae91',
1084
+ 'DERSIG',
1085
+ 'BIP66 example 12, with DERSIG'
1086
1086
  ],
1087
1087
  [
1088
- "48304402203e4516da7253cf068effec6b95c41221c0cf3a8e6ccb8cbf1725b562e9afde2c022054e1c258c2981cdfba5df1f46661fb6541c44f77ca0092f3600331abfffb12510101",
1089
- "2103363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff4640ac",
1090
- "",
1091
- "P2PK with multi-byte hashtype, without DERSIG",
1088
+ '48304402203e4516da7253cf068effec6b95c41221c0cf3a8e6ccb8cbf1725b562e9afde2c022054e1c258c2981cdfba5df1f46661fb6541c44f77ca0092f3600331abfffb12510101',
1089
+ '2103363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff4640ac',
1090
+ '',
1091
+ 'P2PK with multi-byte hashtype, without DERSIG'
1092
1092
  ],
1093
1093
  [
1094
- "48304502203e4516da7253cf068effec6b95c41221c0cf3a8e6ccb8cbf1725b562e9afde2c022100ab1e3da73d67e32045a20e0b999e049978ea8d6ee5480d485fcf2ce0d03b2ef001",
1095
- "2103363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff4640ac",
1096
- "",
1097
- "P2PK with high S but no LOW_S",
1094
+ '48304502203e4516da7253cf068effec6b95c41221c0cf3a8e6ccb8cbf1725b562e9afde2c022100ab1e3da73d67e32045a20e0b999e049978ea8d6ee5480d485fcf2ce0d03b2ef001',
1095
+ '2103363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff4640ac',
1096
+ '',
1097
+ 'P2PK with high S but no LOW_S'
1098
1098
  ],
1099
1099
  [
1100
- "473044022057292e2d4dfe775becdd0a9e6547997c728cdf35390f6a017da56d654d374e4902206b643be2fc53763b4e284845bfea2c597d2dc7759941dce937636c9d341b71ed01",
1101
- "410679be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8ac",
1102
- "",
1103
- "P2PK with hybrid pubkey but no STRICTENC",
1100
+ '473044022057292e2d4dfe775becdd0a9e6547997c728cdf35390f6a017da56d654d374e4902206b643be2fc53763b4e284845bfea2c597d2dc7759941dce937636c9d341b71ed01',
1101
+ '410679be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8ac',
1102
+ '',
1103
+ 'P2PK with hybrid pubkey but no STRICTENC'
1104
1104
  ],
1105
1105
  [
1106
- "4730440220035d554e3153c04950c9993f41c496607a8e24093db0595be7bf875cf64fcf1f02204731c8c4e5daf15e706cec19cdd8f2c5b1d05490e11dab8465ed426569b6e92101",
1107
- "410679be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8ac91",
1108
- "",
1109
- "P2PK NOT with invalid hybrid pubkey but no STRICTENC",
1106
+ '4730440220035d554e3153c04950c9993f41c496607a8e24093db0595be7bf875cf64fcf1f02204731c8c4e5daf15e706cec19cdd8f2c5b1d05490e11dab8465ed426569b6e92101',
1107
+ '410679be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8ac91',
1108
+ '',
1109
+ 'P2PK NOT with invalid hybrid pubkey but no STRICTENC'
1110
1110
  ],
1111
1111
  [
1112
- "0047304402202e79441ad1baf5a07fb86bae3753184f6717d9692680947ea8b6e8b777c69af1022079a262e13d868bb5a0964fefe3ba26942e1b0669af1afb55ef3344bc9d4fc4c401",
1113
- "51410679be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b821038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f5150852ae",
1114
- "",
1115
- "1-of-2 with the second 1 hybrid pubkey and no STRICTENC",
1112
+ '0047304402202e79441ad1baf5a07fb86bae3753184f6717d9692680947ea8b6e8b777c69af1022079a262e13d868bb5a0964fefe3ba26942e1b0669af1afb55ef3344bc9d4fc4c401',
1113
+ '51410679be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b821038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f5150852ae',
1114
+ '',
1115
+ '1-of-2 with the second 1 hybrid pubkey and no STRICTENC'
1116
1116
  ],
1117
1117
  [
1118
- "0047304402202e79441ad1baf5a07fb86bae3753184f6717d9692680947ea8b6e8b777c69af1022079a262e13d868bb5a0964fefe3ba26942e1b0669af1afb55ef3344bc9d4fc4c401",
1119
- "51410679be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b821038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f5150852ae",
1120
- "STRICTENC",
1121
- "1-of-2 with the second 1 hybrid pubkey",
1118
+ '0047304402202e79441ad1baf5a07fb86bae3753184f6717d9692680947ea8b6e8b777c69af1022079a262e13d868bb5a0964fefe3ba26942e1b0669af1afb55ef3344bc9d4fc4c401',
1119
+ '51410679be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b821038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f5150852ae',
1120
+ 'STRICTENC',
1121
+ '1-of-2 with the second 1 hybrid pubkey'
1122
1122
  ],
1123
1123
  [
1124
- "47304402206177d513ec2cda444c021a1f4f656fc4c72ba108ae063e157eb86dc3575784940220666fc66702815d0e5413bb9b1df22aed44f5f1efb8b99d41dd5dc9a5be6d205205",
1125
- "41048282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f5150811f8a8098557dfe45e8256e830b60ace62d613ac2f7b17bed31b6eaff6e26cafac",
1126
- "",
1127
- "P2PK with undefined hashtype but no STRICTENC",
1124
+ '47304402206177d513ec2cda444c021a1f4f656fc4c72ba108ae063e157eb86dc3575784940220666fc66702815d0e5413bb9b1df22aed44f5f1efb8b99d41dd5dc9a5be6d205205',
1125
+ '41048282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f5150811f8a8098557dfe45e8256e830b60ace62d613ac2f7b17bed31b6eaff6e26cafac',
1126
+ '',
1127
+ 'P2PK with undefined hashtype but no STRICTENC'
1128
1128
  ],
1129
1129
  [
1130
- "47304402207409b5b320296e5e2136a7b281a7f803028ca4ca44e2b83eebd46932677725de02202d4eea1c8d3c98e6f42614f54764e6e5e6542e213eb4d079737e9a8b6e9812ec05",
1131
- "41048282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f5150811f8a8098557dfe45e8256e830b60ace62d613ac2f7b17bed31b6eaff6e26cafac91",
1132
- "",
1133
- "P2PK NOT with invalid sig and undefined hashtype but no STRICTENC",
1130
+ '47304402207409b5b320296e5e2136a7b281a7f803028ca4ca44e2b83eebd46932677725de02202d4eea1c8d3c98e6f42614f54764e6e5e6542e213eb4d079737e9a8b6e9812ec05',
1131
+ '41048282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f5150811f8a8098557dfe45e8256e830b60ace62d613ac2f7b17bed31b6eaff6e26cafac91',
1132
+ '',
1133
+ 'P2PK NOT with invalid sig and undefined hashtype but no STRICTENC'
1134
1134
  ],
1135
1135
  [
1136
- "51473044022051254b9fb476a52d85530792b578f86fea70ec1ffb4393e661bcccb23d8d63d3022076505f94a403c86097841944e044c70c2045ce90e36de51f7e9d3828db98a0750147304402200a358f750934b3feb822f1966bfcd8bbec9eeaa3a8ca941e11ee5960e181fa01022050bf6b5a8e7750f70354ae041cb68a7bade67ec6c3ab19eb359638974410626e0147304402200955d031fff71d8653221e85e36c3c85533d2312fc3045314b19650b7ae2f81002202a6bb8505e36201909d0921f01abff390ae6b7ff97bbf959f98aedeb0a56730901",
1137
- "53210279be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f8179821038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f515082103363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff464053ae",
1138
- "",
1139
- "3-of-3 with nonzero dummy but no NULLDUMMY",
1136
+ '51473044022051254b9fb476a52d85530792b578f86fea70ec1ffb4393e661bcccb23d8d63d3022076505f94a403c86097841944e044c70c2045ce90e36de51f7e9d3828db98a0750147304402200a358f750934b3feb822f1966bfcd8bbec9eeaa3a8ca941e11ee5960e181fa01022050bf6b5a8e7750f70354ae041cb68a7bade67ec6c3ab19eb359638974410626e0147304402200955d031fff71d8653221e85e36c3c85533d2312fc3045314b19650b7ae2f81002202a6bb8505e36201909d0921f01abff390ae6b7ff97bbf959f98aedeb0a56730901',
1137
+ '53210279be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f8179821038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f515082103363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff464053ae',
1138
+ '',
1139
+ '3-of-3 with nonzero dummy but no NULLDUMMY'
1140
1140
  ],
1141
1141
  [
1142
- "5147304402201bb2edab700a5d020236df174fefed78087697143731f659bea59642c759c16d022061f42cdbae5bcd3e8790f20bf76687443436e94a634321c16a72aa54cbc7c2ea0147304402204bb4a64f2a6e5c7fb2f07fef85ee56fde5e6da234c6a984262307a20e99842d702206f8303aaba5e625d223897e2ffd3f88ef1bcffef55f38dc3768e5f2e94c923f901473044022040c2809b71fffb155ec8b82fe7a27f666bd97f941207be4e14ade85a1249dd4d02204d56c85ec525dd18e29a0533d5ddf61b6b1bb32980c2f63edf951aebf7a27bfe01",
1143
- "53210279be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f8179821038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f515082103363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff464053ae91",
1144
- "",
1145
- "3-of-3 NOT with invalid sig and nonzero dummy but no NULLDUMMY",
1142
+ '5147304402201bb2edab700a5d020236df174fefed78087697143731f659bea59642c759c16d022061f42cdbae5bcd3e8790f20bf76687443436e94a634321c16a72aa54cbc7c2ea0147304402204bb4a64f2a6e5c7fb2f07fef85ee56fde5e6da234c6a984262307a20e99842d702206f8303aaba5e625d223897e2ffd3f88ef1bcffef55f38dc3768e5f2e94c923f901473044022040c2809b71fffb155ec8b82fe7a27f666bd97f941207be4e14ade85a1249dd4d02204d56c85ec525dd18e29a0533d5ddf61b6b1bb32980c2f63edf951aebf7a27bfe01',
1143
+ '53210279be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f8179821038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f515082103363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff464053ae91',
1144
+ '',
1145
+ '3-of-3 NOT with invalid sig and nonzero dummy but no NULLDUMMY'
1146
1146
  ],
1147
1147
  [
1148
- "0047304402200abeb4bd07f84222f474aed558cfbdfc0b4e96cde3c2935ba7098b1ff0bd74c302204a04c1ca67b2a20abee210cf9a21023edccbbf8024b988812634233115c6b7390176",
1149
- "5221038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f5150821038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f5150852ae",
1150
- "",
1151
- "2-of-2 with two identical keys and sigs pushed using OP_DUP but no SIGPUSHONLY",
1148
+ '0047304402200abeb4bd07f84222f474aed558cfbdfc0b4e96cde3c2935ba7098b1ff0bd74c302204a04c1ca67b2a20abee210cf9a21023edccbbf8024b988812634233115c6b7390176',
1149
+ '5221038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f5150821038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f5150852ae',
1150
+ '',
1151
+ '2-of-2 with two identical keys and sigs pushed using OP_DUP but no SIGPUSHONLY'
1152
1152
  ],
1153
1153
  [
1154
- "0047304402200abeb4bd07f84222f474aed558cfbdfc0b4e96cde3c2935ba7098b1ff0bd74c302204a04c1ca67b2a20abee210cf9a21023edccbbf8024b988812634233115c6b7390147304402200abeb4bd07f84222f474aed558cfbdfc0b4e96cde3c2935ba7098b1ff0bd74c302204a04c1ca67b2a20abee210cf9a21023edccbbf8024b988812634233115c6b73901",
1155
- "5221038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f5150821038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f5150852ae",
1156
- "SIGPUSHONLY",
1157
- "2-of-2 with two identical keys and sigs pushed",
1154
+ '0047304402200abeb4bd07f84222f474aed558cfbdfc0b4e96cde3c2935ba7098b1ff0bd74c302204a04c1ca67b2a20abee210cf9a21023edccbbf8024b988812634233115c6b7390147304402200abeb4bd07f84222f474aed558cfbdfc0b4e96cde3c2935ba7098b1ff0bd74c302204a04c1ca67b2a20abee210cf9a21023edccbbf8024b988812634233115c6b73901',
1155
+ '5221038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f5150821038282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f5150852ae',
1156
+ 'SIGPUSHONLY',
1157
+ '2-of-2 with two identical keys and sigs pushed'
1158
1158
  ],
1159
1159
  [
1160
- "5b47304402200a5c6163f07b8d3b013c4d1d6dba25e780b39658d79ba37af7057a3b7f15ffa102201fd9b4eaa9943f734928b99a83592c2e7bf342ea2680f6a2bb705167966b742001",
1161
- "410479be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8ac",
1162
- "P2SH",
1163
- "P2PK with unnecessary input but no CLEANSTACK",
1160
+ '5b47304402200a5c6163f07b8d3b013c4d1d6dba25e780b39658d79ba37af7057a3b7f15ffa102201fd9b4eaa9943f734928b99a83592c2e7bf342ea2680f6a2bb705167966b742001',
1161
+ '410479be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8ac',
1162
+ 'P2SH',
1163
+ 'P2PK with unnecessary input but no CLEANSTACK'
1164
1164
  ],
1165
1165
  [
1166
- "5b47304402202f7505132be14872581f35d74b759212d9da40482653f1ffa3116c3294a4a51702206adbf347a2240ca41c66522b1a22a41693610b76a8e7770645dc721d1635854f0143410479be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8ac",
1167
- "a91431edc23bdafda4639e669f89ad6b2318dd79d03287",
1168
- "P2SH",
1169
- "P2SH with unnecessary input but no CLEANSTACK",
1166
+ '5b47304402202f7505132be14872581f35d74b759212d9da40482653f1ffa3116c3294a4a51702206adbf347a2240ca41c66522b1a22a41693610b76a8e7770645dc721d1635854f0143410479be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8ac',
1167
+ 'a91431edc23bdafda4639e669f89ad6b2318dd79d03287',
1168
+ 'P2SH',
1169
+ 'P2SH with unnecessary input but no CLEANSTACK'
1170
1170
  ],
1171
1171
  [
1172
- "47304402202f7505132be14872581f35d74b759212d9da40482653f1ffa3116c3294a4a51702206adbf347a2240ca41c66522b1a22a41693610b76a8e7770645dc721d1635854f0143410479be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8ac",
1173
- "a91431edc23bdafda4639e669f89ad6b2318dd79d03287",
1174
- "CLEANSTACK,P2SH",
1175
- "P2SH with CLEANSTACK",
1172
+ '47304402202f7505132be14872581f35d74b759212d9da40482653f1ffa3116c3294a4a51702206adbf347a2240ca41c66522b1a22a41693610b76a8e7770645dc721d1635854f0143410479be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8ac',
1173
+ 'a91431edc23bdafda4639e669f89ad6b2318dd79d03287',
1174
+ 'CLEANSTACK,P2SH',
1175
+ 'P2SH with CLEANSTACK'
1176
1176
  ],
1177
- ["The End"],
1178
- ];
1177
+ ['The End']
1178
+ ]