pshenmic-dpp 1.1.2-dev.8 → 2.0.0-dev.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (324) hide show
  1. package/README.md +14 -99
  2. package/dist/binaries/bindingsTypes.d.ts +1696 -0
  3. package/dist/binaries/bindingsTypes.js +98 -0
  4. package/dist/binaries/pshenmic_dpp.android.node/react-native-node-api-module +0 -0
  5. package/dist/binaries/pshenmic_dpp.android.node/x86_64/libpshenmic_dpp.so +0 -0
  6. package/dist/binaries/pshenmic_dpp.d.ts +166 -0
  7. package/dist/binaries/pshenmic_dpp.js +3 -0
  8. package/dist/binaries/wasm/wasmBytes.d.ts +2 -0
  9. package/dist/binaries/wasm/wasmBytes.js +2 -0
  10. package/dist/binaries/wasm.d.ts +166 -0
  11. package/dist/binaries/wasm.js +44 -0
  12. package/dist/src/dpp/constants.d.ts +4 -0
  13. package/dist/src/dpp/constants.js +19 -0
  14. package/dist/src/dpp/dpp.d.ts +110 -0
  15. package/dist/src/dpp/dpp.js +110 -0
  16. package/dist/src/dpp/enums.d.ts +1 -0
  17. package/dist/src/dpp/enums.js +1 -0
  18. package/dist/src/dpp/provider.d.ts +11 -0
  19. package/dist/src/dpp/provider.js +21 -0
  20. package/dist/src/dpp/structs/Address/AddressWitness.d.ts +12 -0
  21. package/dist/src/dpp/structs/Address/AddressWitness.js +23 -0
  22. package/dist/src/dpp/structs/Address/PlatformAddress.d.ts +14 -0
  23. package/dist/src/dpp/structs/Address/PlatformAddress.js +32 -0
  24. package/dist/src/dpp/structs/AddressTransitions/AddressCreditWithdrawalTransition.d.ts +38 -0
  25. package/dist/src/dpp/structs/AddressTransitions/AddressCreditWithdrawalTransition.js +95 -0
  26. package/dist/src/dpp/structs/AddressTransitions/AddressFundingFromAssetLockTransition.d.ts +35 -0
  27. package/dist/src/dpp/structs/AddressTransitions/AddressFundingFromAssetLockTransition.js +85 -0
  28. package/dist/src/dpp/structs/AddressTransitions/AddressFundsTransferTransition.d.ts +30 -0
  29. package/dist/src/dpp/structs/AddressTransitions/AddressFundsTransferTransition.js +72 -0
  30. package/dist/src/dpp/structs/AddressTransitions/IdentityCreateFromAddressesTransition.d.ts +33 -0
  31. package/dist/src/dpp/structs/AddressTransitions/IdentityCreateFromAddressesTransition.js +82 -0
  32. package/dist/src/dpp/structs/AddressTransitions/IdentityCreditTransferToAddressesTransition.d.ts +31 -0
  33. package/dist/src/dpp/structs/AddressTransitions/IdentityCreditTransferToAddressesTransition.js +77 -0
  34. package/dist/src/dpp/structs/AddressTransitions/IdentityTopUpFromAddressesTransition.d.ts +31 -0
  35. package/dist/src/dpp/structs/AddressTransitions/IdentityTopUpFromAddressesTransition.js +76 -0
  36. package/dist/src/dpp/structs/AddressTransitions/entities/AddressFundsFeeStrategyStep.d.ts +12 -0
  37. package/dist/src/dpp/structs/AddressTransitions/entities/AddressFundsFeeStrategyStep.js +26 -0
  38. package/dist/src/dpp/structs/AddressTransitions/entities/InputAddress.d.ts +14 -0
  39. package/dist/src/dpp/structs/AddressTransitions/entities/InputAddress.js +32 -0
  40. package/dist/src/dpp/structs/AddressTransitions/entities/OutputAddress.d.ts +12 -0
  41. package/dist/src/dpp/structs/AddressTransitions/entities/OutputAddress.js +26 -0
  42. package/dist/src/dpp/structs/AddressTransitions/entities/OutputAddressNullableCredits.d.ts +12 -0
  43. package/dist/src/dpp/structs/AddressTransitions/entities/OutputAddressNullableCredits.js +29 -0
  44. package/dist/src/dpp/structs/AssetLockProof/AssetLockProof.d.ts +19 -0
  45. package/dist/src/dpp/structs/AssetLockProof/AssetLockProof.js +51 -0
  46. package/dist/src/dpp/structs/AssetLockProof/ChainAssetLockProof.d.ts +17 -0
  47. package/dist/src/dpp/structs/AssetLockProof/ChainAssetLockProof.js +36 -0
  48. package/dist/src/dpp/structs/AssetLockProof/InstantAssetLockProof.d.ts +24 -0
  49. package/dist/src/dpp/structs/AssetLockProof/InstantAssetLockProof.js +48 -0
  50. package/dist/src/dpp/structs/AssetLockProof/OutPoint.d.ts +15 -0
  51. package/dist/src/dpp/structs/AssetLockProof/OutPoint.js +40 -0
  52. package/dist/src/dpp/structs/AssetLockProof/Transaction.d.ts +20 -0
  53. package/dist/src/dpp/structs/AssetLockProof/Transaction.js +49 -0
  54. package/dist/src/dpp/structs/AssetLockProof/TxIn.d.ts +17 -0
  55. package/dist/src/dpp/structs/AssetLockProof/TxIn.js +39 -0
  56. package/dist/src/dpp/structs/AssetLockProof/TxOut.d.ts +13 -0
  57. package/dist/src/dpp/structs/AssetLockProof/TxOut.js +34 -0
  58. package/dist/src/dpp/structs/AssetLockProof/Witness.d.ts +11 -0
  59. package/dist/src/dpp/structs/AssetLockProof/Witness.js +25 -0
  60. package/dist/src/dpp/structs/Batch/BatchTransition.d.ts +34 -0
  61. package/dist/src/dpp/structs/Batch/BatchTransition.js +95 -0
  62. package/dist/src/dpp/structs/Batch/BatchedTransition.d.ts +13 -0
  63. package/dist/src/dpp/structs/Batch/BatchedTransition.js +39 -0
  64. package/dist/src/dpp/structs/Batch/DocumentBaseTransition.d.ts +20 -0
  65. package/dist/src/dpp/structs/Batch/DocumentBaseTransition.js +54 -0
  66. package/dist/src/dpp/structs/Batch/DocumentTransition.d.ts +32 -0
  67. package/dist/src/dpp/structs/Batch/DocumentTransition.js +74 -0
  68. package/dist/src/dpp/structs/Batch/DocumentTransitions/DocumentCreateTransition.d.ts +23 -0
  69. package/dist/src/dpp/structs/Batch/DocumentTransitions/DocumentCreateTransition.js +58 -0
  70. package/dist/src/dpp/structs/Batch/DocumentTransitions/DocumentDeleteTransition.d.ts +14 -0
  71. package/dist/src/dpp/structs/Batch/DocumentTransitions/DocumentDeleteTransition.js +26 -0
  72. package/dist/src/dpp/structs/Batch/DocumentTransitions/DocumentPurchaseTransition.d.ts +19 -0
  73. package/dist/src/dpp/structs/Batch/DocumentTransitions/DocumentPurchaseTransition.js +39 -0
  74. package/dist/src/dpp/structs/Batch/DocumentTransitions/DocumentReplaceTransition.d.ts +19 -0
  75. package/dist/src/dpp/structs/Batch/DocumentTransitions/DocumentReplaceTransition.js +40 -0
  76. package/dist/src/dpp/structs/Batch/DocumentTransitions/DocumentTransferTransition.d.ts +19 -0
  77. package/dist/src/dpp/structs/Batch/DocumentTransitions/DocumentTransferTransition.js +35 -0
  78. package/dist/src/dpp/structs/Batch/DocumentTransitions/DocumentUpdatePriceTransition.d.ts +17 -0
  79. package/dist/src/dpp/structs/Batch/DocumentTransitions/DocumentUpdatePriceTransition.js +33 -0
  80. package/dist/src/dpp/structs/Batch/PrefundedVotingBalance.d.ts +9 -0
  81. package/dist/src/dpp/structs/Batch/PrefundedVotingBalance.js +19 -0
  82. package/dist/src/dpp/structs/Batch/TokenBaseTransition.d.ts +20 -0
  83. package/dist/src/dpp/structs/Batch/TokenBaseTransition.js +49 -0
  84. package/dist/src/dpp/structs/Batch/TokenPaymentInfo.d.ts +19 -0
  85. package/dist/src/dpp/structs/Batch/TokenPaymentInfo.js +54 -0
  86. package/dist/src/dpp/structs/Batch/TokenPricingSchedule.d.ts +17 -0
  87. package/dist/src/dpp/structs/Batch/TokenPricingSchedule.js +41 -0
  88. package/dist/src/dpp/structs/Batch/TokenTransition.d.ts +20 -0
  89. package/dist/src/dpp/structs/Batch/TokenTransition.js +92 -0
  90. package/dist/src/dpp/structs/Batch/TokenTransitions/TokenBurnTransition.d.ts +14 -0
  91. package/dist/src/dpp/structs/Batch/TokenTransitions/TokenBurnTransition.js +32 -0
  92. package/dist/src/dpp/structs/Batch/TokenTransitions/TokenClaimTransition.d.ts +15 -0
  93. package/dist/src/dpp/structs/Batch/TokenTransitions/TokenClaimTransition.js +33 -0
  94. package/dist/src/dpp/structs/Batch/TokenTransitions/TokenConfigUpdateTransition.d.ts +15 -0
  95. package/dist/src/dpp/structs/Batch/TokenTransitions/TokenConfigUpdateTransition.js +33 -0
  96. package/dist/src/dpp/structs/Batch/TokenTransitions/TokenDestroyFrozenFundsTransition.d.ts +16 -0
  97. package/dist/src/dpp/structs/Batch/TokenTransitions/TokenDestroyFrozenFundsTransition.js +34 -0
  98. package/dist/src/dpp/structs/Batch/TokenTransitions/TokenDirectPurchaseTransition.d.ts +14 -0
  99. package/dist/src/dpp/structs/Batch/TokenTransitions/TokenDirectPurchaseTransition.js +32 -0
  100. package/dist/src/dpp/structs/Batch/TokenTransitions/TokenEmergencyActionTransition.d.ts +15 -0
  101. package/dist/src/dpp/structs/Batch/TokenTransitions/TokenEmergencyActionTransition.js +33 -0
  102. package/dist/src/dpp/structs/Batch/TokenTransitions/TokenFreezeTransition.d.ts +16 -0
  103. package/dist/src/dpp/structs/Batch/TokenTransitions/TokenFreezeTransition.js +34 -0
  104. package/dist/src/dpp/structs/Batch/TokenTransitions/TokenMintTransition.d.ts +18 -0
  105. package/dist/src/dpp/structs/Batch/TokenTransitions/TokenMintTransition.js +43 -0
  106. package/dist/src/dpp/structs/Batch/TokenTransitions/TokenSetPriceForDirectPurchaseTransition.d.ts +15 -0
  107. package/dist/src/dpp/structs/Batch/TokenTransitions/TokenSetPriceForDirectPurchaseTransition.js +36 -0
  108. package/dist/src/dpp/structs/Batch/TokenTransitions/TokenTransferTransition.d.ts +21 -0
  109. package/dist/src/dpp/structs/Batch/TokenTransitions/TokenTransferTransition.js +53 -0
  110. package/dist/src/dpp/structs/Batch/TokenTransitions/TokenUnFreezeTransition.d.ts +16 -0
  111. package/dist/src/dpp/structs/Batch/TokenTransitions/TokenUnFreezeTransition.js +34 -0
  112. package/dist/src/dpp/structs/ConsensusError.d.ts +8 -0
  113. package/dist/src/dpp/structs/ConsensusError.js +22 -0
  114. package/dist/src/dpp/structs/ContractBounds.d.ts +17 -0
  115. package/dist/src/dpp/structs/ContractBounds.js +39 -0
  116. package/dist/src/dpp/structs/CoreScript.d.ts +15 -0
  117. package/dist/src/dpp/structs/CoreScript.js +37 -0
  118. package/dist/src/dpp/structs/DataContract.d.ts +35 -0
  119. package/dist/src/dpp/structs/DataContract.js +116 -0
  120. package/dist/src/dpp/structs/DataContractTransitions/DataContractCreateTransition.d.ts +23 -0
  121. package/dist/src/dpp/structs/DataContractTransitions/DataContractCreateTransition.js +55 -0
  122. package/dist/src/dpp/structs/DataContractTransitions/DataContractUpdateTransition.d.ts +23 -0
  123. package/dist/src/dpp/structs/DataContractTransitions/DataContractUpdateTransition.js +55 -0
  124. package/dist/src/dpp/structs/Document.d.ts +51 -0
  125. package/dist/src/dpp/structs/Document.js +184 -0
  126. package/dist/src/dpp/structs/EncryptedNote/PrivateEncryptedNote.d.ts +13 -0
  127. package/dist/src/dpp/structs/EncryptedNote/PrivateEncryptedNote.js +31 -0
  128. package/dist/src/dpp/structs/EncryptedNote/SharedEncryptedNote.d.ts +13 -0
  129. package/dist/src/dpp/structs/EncryptedNote/SharedEncryptedNote.js +31 -0
  130. package/dist/src/dpp/structs/GroupStateTransitionInfo.d.ts +15 -0
  131. package/dist/src/dpp/structs/GroupStateTransitionInfo.js +33 -0
  132. package/dist/src/dpp/structs/Identifier.d.ts +17 -0
  133. package/dist/src/dpp/structs/Identifier.js +50 -0
  134. package/dist/src/dpp/structs/Identity.d.ts +26 -0
  135. package/dist/src/dpp/structs/Identity.js +73 -0
  136. package/dist/src/dpp/structs/IdentityPublicKey.d.ts +43 -0
  137. package/dist/src/dpp/structs/IdentityPublicKey.js +126 -0
  138. package/dist/src/dpp/structs/IdentityPublicKeyInCreation.d.ts +30 -0
  139. package/dist/src/dpp/structs/IdentityPublicKeyInCreation.js +77 -0
  140. package/dist/src/dpp/structs/IdentityTransitions/IdentityCreateTransition.d.ts +29 -0
  141. package/dist/src/dpp/structs/IdentityTransitions/IdentityCreateTransition.js +69 -0
  142. package/dist/src/dpp/structs/IdentityTransitions/IdentityCreditTransfer.d.ts +33 -0
  143. package/dist/src/dpp/structs/IdentityTransitions/IdentityCreditTransfer.js +85 -0
  144. package/dist/src/dpp/structs/IdentityTransitions/IdentityCreditWithdrawalTransition.d.ts +42 -0
  145. package/dist/src/dpp/structs/IdentityTransitions/IdentityCreditWithdrawalTransition.js +114 -0
  146. package/dist/src/dpp/structs/IdentityTransitions/IdentityTopUpTransition.d.ts +30 -0
  147. package/dist/src/dpp/structs/IdentityTransitions/IdentityTopUpTransition.js +75 -0
  148. package/dist/src/dpp/structs/IdentityTransitions/IdentityUpdateTransition.d.ts +40 -0
  149. package/dist/src/dpp/structs/IdentityTransitions/IdentityUpdateTransition.js +108 -0
  150. package/dist/src/dpp/structs/InstantLock.d.ts +17 -0
  151. package/dist/src/dpp/structs/InstantLock.js +43 -0
  152. package/dist/src/dpp/structs/MasternodeVote/MasternodeVoteTransition.d.ts +37 -0
  153. package/dist/src/dpp/structs/MasternodeVote/MasternodeVoteTransition.js +96 -0
  154. package/dist/src/dpp/structs/MasternodeVote/ResourceVoteChoice.d.ts +14 -0
  155. package/dist/src/dpp/structs/MasternodeVote/ResourceVoteChoice.js +29 -0
  156. package/dist/src/dpp/structs/MasternodeVote/Vote.d.ts +13 -0
  157. package/dist/src/dpp/structs/MasternodeVote/Vote.js +27 -0
  158. package/dist/src/dpp/structs/MasternodeVote/VotePoll.d.ts +18 -0
  159. package/dist/src/dpp/structs/MasternodeVote/VotePoll.js +42 -0
  160. package/dist/src/dpp/structs/PartialIdentity.d.ts +26 -0
  161. package/dist/src/dpp/structs/PartialIdentity.js +69 -0
  162. package/dist/src/dpp/structs/PrivateKey.d.ts +20 -0
  163. package/dist/src/dpp/structs/PrivateKey.js +48 -0
  164. package/dist/src/dpp/structs/PublicKey.d.ts +15 -0
  165. package/dist/src/dpp/structs/PublicKey.js +37 -0
  166. package/dist/src/dpp/structs/StateTransition.d.ts +38 -0
  167. package/dist/src/dpp/structs/StateTransition.js +100 -0
  168. package/dist/src/dpp/structs/TokenConfiguration/ActionTaker.d.ts +12 -0
  169. package/dist/src/dpp/structs/TokenConfiguration/ActionTaker.js +44 -0
  170. package/dist/src/dpp/structs/TokenConfiguration/AuthorizedActionTakers.d.ts +16 -0
  171. package/dist/src/dpp/structs/TokenConfiguration/AuthorizedActionTakers.js +43 -0
  172. package/dist/src/dpp/structs/TokenConfiguration/ChangeControlRules.d.ts +23 -0
  173. package/dist/src/dpp/structs/TokenConfiguration/ChangeControlRules.js +52 -0
  174. package/dist/src/dpp/structs/TokenConfiguration/DistributionFunction.d.ts +19 -0
  175. package/dist/src/dpp/structs/TokenConfiguration/DistributionFunction.js +57 -0
  176. package/dist/src/dpp/structs/TokenConfiguration/Group.d.ts +19 -0
  177. package/dist/src/dpp/structs/TokenConfiguration/Group.js +44 -0
  178. package/dist/src/dpp/structs/TokenConfiguration/RewardDistributionType.d.ts +13 -0
  179. package/dist/src/dpp/structs/TokenConfiguration/RewardDistributionType.js +40 -0
  180. package/dist/src/dpp/structs/TokenConfiguration/TokenConfiguration.d.ts +54 -0
  181. package/dist/src/dpp/structs/TokenConfiguration/TokenConfiguration.js +139 -0
  182. package/dist/src/dpp/structs/TokenConfiguration/TokenConfigurationChangeItem.d.ts +47 -0
  183. package/dist/src/dpp/structs/TokenConfiguration/TokenConfigurationChangeItem.js +140 -0
  184. package/dist/src/dpp/structs/TokenConfiguration/TokenConfigurationConvention.d.ts +19 -0
  185. package/dist/src/dpp/structs/TokenConfiguration/TokenConfigurationConvention.js +47 -0
  186. package/dist/src/dpp/structs/TokenConfiguration/TokenConfigurationLocalization.d.ts +15 -0
  187. package/dist/src/dpp/structs/TokenConfiguration/TokenConfigurationLocalization.js +34 -0
  188. package/dist/src/dpp/structs/TokenConfiguration/TokenDistributionRecipient.d.ts +14 -0
  189. package/dist/src/dpp/structs/TokenConfiguration/TokenDistributionRecipient.js +31 -0
  190. package/dist/src/dpp/structs/TokenConfiguration/TokenDistributionRules.d.ts +28 -0
  191. package/dist/src/dpp/structs/TokenConfiguration/TokenDistributionRules.js +75 -0
  192. package/dist/src/dpp/structs/TokenConfiguration/TokenKeepsHistoryRules.d.ts +19 -0
  193. package/dist/src/dpp/structs/TokenConfiguration/TokenKeepsHistoryRules.js +49 -0
  194. package/dist/src/dpp/structs/TokenConfiguration/TokenMarketplaceRules.d.ts +13 -0
  195. package/dist/src/dpp/structs/TokenConfiguration/TokenMarketplaceRules.js +27 -0
  196. package/dist/src/dpp/structs/TokenConfiguration/TokenPerpetualDistribution.d.ts +13 -0
  197. package/dist/src/dpp/structs/TokenConfiguration/TokenPerpetualDistribution.js +27 -0
  198. package/dist/src/dpp/structs/TokenConfiguration/TokenPreProgrammedDistribution.d.ts +21 -0
  199. package/dist/src/dpp/structs/TokenConfiguration/TokenPreProgrammedDistribution.js +42 -0
  200. package/dist/src/dpp/structs/TokenConfiguration/TokenTradeMode.d.ts +9 -0
  201. package/dist/src/dpp/structs/TokenConfiguration/TokenTradeMode.js +17 -0
  202. package/dist/src/dpp/types.d.ts +274 -0
  203. package/dist/src/dpp/types.js +1 -0
  204. package/dist/src/dpp/utils.d.ts +5 -0
  205. package/dist/src/dpp/utils.js +64 -0
  206. package/dist/src/dpp/verify/Contested/verifyVotePollVoteStateProof.d.ts +3 -0
  207. package/dist/src/dpp/verify/Contested/verifyVotePollVoteStateProof.js +34 -0
  208. package/dist/src/dpp/verify/Contract/verifyContract.d.ts +2 -0
  209. package/dist/src/dpp/verify/Contract/verifyContract.js +14 -0
  210. package/dist/src/dpp/verify/Document/verifyDocumentsProof.d.ts +3 -0
  211. package/dist/src/dpp/verify/Document/verifyDocumentsProof.js +10 -0
  212. package/dist/src/dpp/verify/Identity/verifyIdentifierByNonUniquePublicKeyHashProof.d.ts +2 -0
  213. package/dist/src/dpp/verify/Identity/verifyIdentifierByNonUniquePublicKeyHashProof.js +10 -0
  214. package/dist/src/dpp/verify/Identity/verifyIdentityBalanceProof.d.ts +2 -0
  215. package/dist/src/dpp/verify/Identity/verifyIdentityBalanceProof.js +9 -0
  216. package/dist/src/dpp/verify/Identity/verifyIdentityByIdentifierProof.d.ts +2 -0
  217. package/dist/src/dpp/verify/Identity/verifyIdentityByIdentifierProof.js +10 -0
  218. package/dist/src/dpp/verify/Identity/verifyIdentityByUniqueKeyHashProof.d.ts +2 -0
  219. package/dist/src/dpp/verify/Identity/verifyIdentityByUniqueKeyHashProof.js +10 -0
  220. package/dist/src/dpp/verify/Identity/verifyIdentityContractNonceProof.d.ts +2 -0
  221. package/dist/src/dpp/verify/Identity/verifyIdentityContractNonceProof.js +9 -0
  222. package/dist/src/dpp/verify/Identity/verifyIdentityKeysByIdentifierProof.d.ts +2 -0
  223. package/dist/src/dpp/verify/Identity/verifyIdentityKeysByIdentifierProof.js +10 -0
  224. package/dist/src/dpp/verify/Identity/verifyIdentityNonceProof.d.ts +2 -0
  225. package/dist/src/dpp/verify/Identity/verifyIdentityNonceProof.js +9 -0
  226. package/dist/src/dpp/verify/StateTransition/utils.d.ts +2 -0
  227. package/dist/src/dpp/verify/StateTransition/utils.js +115 -0
  228. package/dist/src/dpp/verify/StateTransition/verifyStateTransitionResult.d.ts +4 -0
  229. package/dist/src/dpp/verify/StateTransition/verifyStateTransitionResult.js +10 -0
  230. package/dist/src/dpp/verify/System/verifyEpochsInfoProof.d.ts +2 -0
  231. package/dist/src/dpp/verify/System/verifyEpochsInfoProof.js +16 -0
  232. package/dist/src/dpp/verify/System/verifyTotalCreditsProof.d.ts +2 -0
  233. package/dist/src/dpp/verify/System/verifyTotalCreditsProof.js +9 -0
  234. package/dist/src/dpp/verify/Tokens/verifyTokenBalancesForIdentitiesProof.d.ts +2 -0
  235. package/dist/src/dpp/verify/Tokens/verifyTokenBalancesForIdentitiesProof.js +13 -0
  236. package/dist/src/dpp/verify/Tokens/verifyTokenContractInfoProof.d.ts +2 -0
  237. package/dist/src/dpp/verify/Tokens/verifyTokenContractInfoProof.js +15 -0
  238. package/dist/src/dpp/verify/Tokens/verifyTokenDirectPurchasePrices.d.ts +2 -0
  239. package/dist/src/dpp/verify/Tokens/verifyTokenDirectPurchasePrices.js +14 -0
  240. package/dist/src/dpp/verify/Tokens/verifyTokenTotalSupplyProof.d.ts +2 -0
  241. package/dist/src/dpp/verify/Tokens/verifyTokenTotalSupplyProof.js +12 -0
  242. package/dist/src/dpp/verify/Tokens/verifyTokensBalancesForIdentityProof.d.ts +2 -0
  243. package/dist/src/dpp/verify/Tokens/verifyTokensBalancesForIdentityProof.js +13 -0
  244. package/dist/src/dpp/verify/verifySignatureDigest.d.ts +1 -0
  245. package/dist/src/dpp/verify/verifySignatureDigest.js +4 -0
  246. package/dist/src/react-native.d.ts +3 -0
  247. package/dist/src/react-native.js +6 -0
  248. package/dist/src/wasm.d.ts +3 -0
  249. package/dist/src/wasm.js +6 -0
  250. package/dist/utils/base122.d.ts +7 -0
  251. package/dist/utils/base122.js +63 -0
  252. package/package.json +30 -27
  253. package/tests/unit/DynamicValue.spec.ts +86 -0
  254. package/tests/unit/Identifier.spec.ts +105 -0
  255. package/tests/unit/Identity.spec.ts +119 -0
  256. package/tests/unit/IdentityPublicKey.spec.ts +126 -0
  257. package/dist/wasm/base122.d.ts +0 -1
  258. package/dist/wasm/base122.js +0 -67
  259. package/dist/wasm/index.d.ts +0 -148
  260. package/dist/wasm/index.js +0 -13
  261. package/dist/wasm/initAsync.d.ts +0 -4
  262. package/dist/wasm/initAsync.js +0 -20
  263. package/dist/wasm/initInterface.d.ts +0 -3
  264. package/dist/wasm/initInterface.js +0 -46
  265. package/dist/wasm/initWASM.d.ts +0 -1
  266. package/dist/wasm/initWASM.js +0 -28
  267. package/dist/wasm/pshenmic_dpp.d.ts +0 -5266
  268. package/dist/wasm/pshenmic_dpp.js +0 -25608
  269. package/dist/wasm/pshenmic_dpp_bg.d.ts +0 -3
  270. package/dist/wasm/pshenmic_dpp_bg.js +0 -2
  271. package/dist/wasm/pshenmic_dpp_bg.wasm.d.ts +0 -1636
  272. package/dist/wasm/pshenmic_dpp_zipped.d.ts +0 -3
  273. package/dist/wasm/pshenmic_dpp_zipped.js +0 -2
  274. package/dist/wasm/snippets/pshenmic_dpp_utils-23ab7381b198778d/stringify.js +0 -7
  275. package/tests/AssetLockProof.spec.cjs +0 -96
  276. package/tests/AsyncImportTest.spec.cjs +0 -930
  277. package/tests/AuthorizedActionTakers.spec.cjs +0 -75
  278. package/tests/BatchTransition.spec.cjs +0 -141
  279. package/tests/ChainLockProof.spec.cjs +0 -63
  280. package/tests/ChangeControlRules.spec.cjs +0 -184
  281. package/tests/CoreScript.spec.cjs +0 -37
  282. package/tests/DataContract.spec.cjs +0 -170
  283. package/tests/DataContractCreateStateTransition.spec.cjs +0 -102
  284. package/tests/DataContractUpdateStateTransition.spec.cjs +0 -103
  285. package/tests/DistributionFunction.spec.cjs +0 -416
  286. package/tests/Document.spec.cjs +0 -227
  287. package/tests/DocumentTransition.spec.cjs +0 -94
  288. package/tests/DocumentsTransitions.spec.cjs +0 -699
  289. package/tests/Identifier.spec.cjs +0 -82
  290. package/tests/Identity.spec.cjs +0 -107
  291. package/tests/IdentityCreateTransition.spec.cjs +0 -87
  292. package/tests/IdentityCreditTransferTransition.spec.cjs +0 -140
  293. package/tests/IdentityCreditWithdrawalTransition.spec.cjs +0 -186
  294. package/tests/IdentityPublicKey.spec.cjs +0 -166
  295. package/tests/IdentityTopUpTransition.spec.cjs +0 -125
  296. package/tests/IdentityUpdateTransition.spec.cjs +0 -141
  297. package/tests/InstantLockProof.spec.cjs +0 -91
  298. package/tests/OutPoint.spec.cjs +0 -49
  299. package/tests/PrivateKey.spec.cjs +0 -67
  300. package/tests/PublicKeyInCreation.spec.cjs +0 -252
  301. package/tests/RewardDistributionType.spec.cjs +0 -90
  302. package/tests/TokenBaseTransition.spec.cjs +0 -96
  303. package/tests/TokenConfiguration.spec.cjs +0 -188
  304. package/tests/TokenConfigurationConvention.spec.cjs +0 -93
  305. package/tests/TokenConfigurationLocalization.spec.cjs +0 -59
  306. package/tests/TokenDistributionRecipient.spec.cjs +0 -49
  307. package/tests/TokenDistributionRules.spec.cjs +0 -313
  308. package/tests/TokenKeepsHistoryRules.spec.cjs +0 -67
  309. package/tests/TokenPerpetualDistribution.spec.cjs +0 -130
  310. package/tests/TokenPreProgrammedDistribution.spec.cjs +0 -61
  311. package/tests/TokensTransitions.spec.cjs +0 -509
  312. package/tests/TxOut.spec.cjs +0 -70
  313. package/tests/mocks/DataContract/DataContract.json +0 -164
  314. package/tests/mocks/DataContract/index.js +0 -6
  315. package/tests/mocks/Document/DataContract.json +0 -23
  316. package/tests/mocks/Document/document.json +0 -3
  317. package/tests/mocks/Document/document2.json +0 -3
  318. package/tests/mocks/Document/index.js +0 -13
  319. package/tests/mocks/Identity/index.js +0 -13
  320. package/tests/mocks/Locks/index.js +0 -2
  321. package/tests/mocks/PrivateKey/index.js +0 -5
  322. package/tests/mocks/PublicKey/index.js +0 -13
  323. package/tests/mocks/TokenConfiguration/index.js +0 -5
  324. package/tests/utils/hex.js +0 -14
@@ -1,3 +0,0 @@
1
- declare const binaryData: string;
2
-
3
- export default binaryData;
@@ -1,2 +0,0 @@
1
- const bytes = "ba€€€À>ouSmMVb@1OWX.qi-s):VElW}|;Dz9EWZJ}gZ^ןBDTVTRӔLU9}ow@X‰ RRHC6σ/0l4zcZ7^`|hm7Sg`G>/`lL_k#?Of`{ ?|k_dY{8wY@[y||X| KQy`1ixIY_pAp0/h_}qP׽3v~~~DOcA^Oeh|O}uxfg:]<4,SscuopfUiQjszaw ~Y7|GnkoCS|G[`p:>|F8C2}IIƳys0D`Ϝ-oO+dA=9D fmV׍? g9[kg-քk~;zq~y0VxI^JhGuU}?_Mf(3:wwNAZoOfsup>,kHCzew[ u11o(gcd][i{wl]0<%{o{[D;oO{{cu[/ý{v8>4-Y>}o rju7><_TX N~z#imp8:5U5 fAI{wh6=.t)_qO[y˵9+7 a6me `@!AV^(cO?.u#BDag)/O~~]OTZ19P:}Ek?N¯sWxCGto@,I`07O>1s%גm4#Qg.aVos O(h^be׷r2NFax)d% cMoY}˾ZrfxqhKx<{zr>}x#0oNkXǟBt^meBuJSp;__D 2`|ukzzCm]~ blqpq1c8ŽDns0{f/9snZ| yC[t 0?$1_bwgØo@~q>>Nis`{2p>C16E4dM#9(֜uGv?wqҴnph1}B]@S8z'$ Eu7{vp%_WiapbmF]pgZ[H >c xAґCja Kn?6m~X/ʳx#s;Og|t9lV<zc?`(çgӆ>#z*v?~g{;_^/s kskcnrj{}wuu nVr4NGQp|?'i A[}ez~`aÿ5gk> rp`5-lm5W)aky{vW~?^wE)lo5uF c R{;.Ρb6. rayƿ˞0:D'Z!3ES} <Pv?.  g,a8~eb=l:25C_9}~{ox8iǁb6U(h}uvpy{:ן.o/3oST-o90E3Ih^|q$T{yM~_^D¿.^e|[xQ1fepwJ[Uץ<#sOjmn<R [>,vLtGAO1l <FYS:/Eg2>*F}F, o[j5ez_@?CtxiI__Iτ ?=ZDHWGZփ^aZmM4^ Z}„Y@r/dpS?ƭk8p gO9!A[ @r'%$˃v@gJV!,^lf{XcX?ϲB?εh>:|DOZǃ3Q;G7^A}5d!>'L L1NŸH-hd~O=~BCO2{}CwkO #EFW`Bs`-8l#n@ƆM[QS|z}>XTyN_wp-Zc:q+^ T[):`02#AqGxÉe?(n<, P49%P¯G7voHNL|!sVb(eI/b[{6:r4εq˰B^hǞ ?dF<Q?2?N.a?j+AMqayƃzDE 9;0Ksn,,Ͻ)utYl>=85 pT4q<aB(*A4](yz@tƳϮ RZ9 Q%d]B.=2x1)'y4J|ǡT%ML/}r fx ? _)J%v~8>~<O<yta_.appR`uP/m*j_VEo'6*+%6XDSo55ei4:`}f;x 3CWm[ǬG#;sY$Pô`2^];?kGNl/0nr4j>  oi}va{G<g=vk²`Eh@ZC7#Ǯ0sxH~F4ʨS º=p:A+Ô~uwn^GzAf^^E{1H]L0D>9bj a?i*IX%7dubap'p[e_|uKDs5u/}Þz* }HOL_/?m6Ʃ0ϓz]BU$EH[40c-o:MT7G+8{yz@A#ʪqK/sQ2?/q{Z[3N2V<u7epfs rt>rqWvmll3Eqr77kkÈz1hk/ <K}q+<?wGyo$ιU^/~gTʐ<Ajo~}?ol--_ʿ??m}^y{{u~!5 q@`+CE,+^BWM28(=ӲJs/Bl?~U|2rʦj˜fr V,>ӏTeKr>~j^]WA/@Z8XR-ük*(w<u!5O) jΎ:(%1tE/H38z@3 m%gwk/k%~,cvHBQ$^FK$ #B>2{Γrw@yhm1hfփ5J~yxc[BzXZ_ V|E5-wk;,wNr :S<9_-8WN_-| AC6׮Vx17pd j1ChE5Bh~]תkyw:i]BopMvR /l3:?L#ibAx.PHuG go`5ypavx7-.h,1 <@P#ӽ=[~r(9+X?Oc?Qva_<KcosN}ÕD-A39+'i6l@+?N^ϵPLY/^3X_0 >Ϛwo2XEGJ';a| TfpfZ)%pamVW|fӃTp>$ O :s'# i׳Î΢S{.4Ύ,@yy(nG^*T}g)S?-eD'+2 F@|!~Fh [AHbr,}!+ *g|MLz+Lj֏RXxN=G2?ӽ5dyHP#mF`!Jv]_Av0lD(>N#6q p9srGp.S CN.G+ov)j$Z'y | mB'$` M,υfeT$]F9-sqy UL2Jc |a ’v~@]tac YndWK rAX '+UwS^nò]|Gm Dz35^2Έ1]PfKפmGl~Ӡ?'oR#d0n#HqS?@kM+ ҃: Qm8~P'3WyU$R9 M hnb0Rj2iΈV.>5O ӂG3@0DlL9üMN~M! 4%a'B9q$s%ʻ+aT=O{TsP/1V_ӎ4ӿ%IDӚ?|T-B<(0=p}7p}8s1 g|PeQkH4#up]4v!3-(u*d:_^}N}}?zlw!9ZY O*o(197,_v14l`?¾XwbAZix$3e]?F|E%aG[j EGr!hRW}N8hß?/G|oh{VUik`3[lG!?`Qˣ 'wbB7Z 8V85]xp:ooV?wn_y[787]s%bPG]SL6DAX˙g867Hb}BҶHӁh~kG8X3E.1sdBuØ}h<V37Á$PLL,Xuz~GV1e-ӧxEP7 |s ǣ@B`o br3.ǘvҜ:FdQ9(I_EʛJFLLT2?4Tֆ׌!'a*v:9%OY zƣF2?K%sH`DW1g)DDΣ!_|BrCIG[ƷӍ.bP!6EL<{_^f3]<^Pf5ggVYbY]|ÌzC>p;|!I֥4Qi*p 1Y^B^#Ld^GXDC)%ֆ'LahV6LJӠM,ӯa=>)I ~J4tN1x?<KJ}F D8Kò(y2qxV|0ph0XΎlT G7b7ʩvûGd@v3yW~K4 G7DEpqt ω{4v%86nUsBφr| 1Pw8tQ< Ǽׂϳ:8.![`G?`ZyVuΧ<ABI70F2~vdo C!uB#uQ9`#w_GzNbd] MN^O:QxHä1εp># 6 ֡k{bքp˄ғc*n<%'-5TKh#$s!6B:h%X~}(#Jַ8BVւˁWu,XLA2>cPb7F)o#j uvQg($S׸+N+a/BO.#~bFgO<Yv `S-kaΜB=lWJs=FOw-e5Fn^@VӠ8Ə#~6.5QV-#F0*{iAPWxYq s;@3)oK-Ö!1]N, fz9iKG,@xrHFp׌W[$@( )GKKK/ ^k56R6YFk.1{@27Xpz6_SdpGh8ֶbaF!7ah;My0lX6[tPfMf7 ?r}@X:Xϟ6!8gy^yRE*L8QXˆis~8xXvWÚ=5sq{MOW`x^2gY]AvA:]K2*C;/ewˌ{ 5Lu6ׇmq$6׍kX8m˱CpT?QVTDd*ASH12%`_DCFsNΔ$rpG p.c֝FTo2w j) GƉ8ׅ a 2Y¥oJkDSf=LHT/RItzu.rw>x8zFtגN6~Uvo(c |zV],fh]-1`7x u5ӁOS0be`7: xVl t1jT`wBD)<A2Ӷya' bzd !QTy#3zƨd 24Sh@T9C+ Q[p^ m_,ˮ-Ґiq? pE{7,˥T0d_θJ$K/CPiʲK,R:.E Ca)By- @(YV|l Buqµy,BBo?_]e3O5l 6yEv w2 BNV!uro8VyKǑ4Vyǜ<lBiE:}vn=p}jEB_X rox_-[SEZj2^ҡ NUTN`]skiB1'>r``gQ-ca4!22W2j|p94%zL}7'ʘuhS։n:FO ?@!mWdX?ʉ7:Z#c=?[x}ʉw-Em){eL^}ǥ`6b W 30IQRQXMʗDOT*gKsF(3m B<MN>CG{{B,i-Sr%2ǫ8~֑!;NqYhim4>K@I4alCҒdUjnMwXErisn|ǟLk1Uy}Buˍ(6ybϯִDIT)>56-!+uςF`r3c]LlqvgaDFG:fwdhv0)) Q?q/>AF@@w1lZpʫ*uV$%1=>tN7jm 2rq, FϾSEz$q>)A9d5@ZF!%}#-IH1bRfΨp%^lB:qOt9Wx'4;z< Wþ*<^/~+tJ<!|4yPWO ǮF$ ,EomgWqRc,DDmt¨-eVE1_ 1׭oe>r÷l%MD Lrm5=o QPu2Bґ8ǶgÔV11zyk7a<13^9q m|m)<G8=/Ub8i:PNa/!1qscc1#8{cvv<Mq=3 %{N/gSHnO9RMOs*+U|@+>ΐkM5'Y^Δ$kD [ixCCev'$55?_0kCT B2K%K H~,)!׊M~%77exʁ]u™|fk>־cuSMh?V3b?a `W85O;C2B~‘cGwPC;.+¿pcY~|Uqif}҉1[|`w8i1VGdgIUk}N,Z N~E3inv_:A? qL¦Iqbc<)džBE8uROVOut-je~Z#US}4Ғ[9~l|W|{ay`ׂp1}¼ck}1É?7kxV½Sm^֜S|Fi qƔ^A<d{c!~_i%SK. `/w8 :!|J-?74EOj Ʊvo. blο+%mw]<2ngMVKwD{[UFZ'4 XoLycϫ¨I<;N?_%}Go9uwbae94_u=nװLZsitxי%DgSVO|jX|~ӦSp 6Hל ?s}҇w1%(D?1sҧ b({jbra|{>^^nAtx8x7b%ü4p|KQlx< [yZp'Mysup3FκZ7{GnIf8}<<?nH}*LZ #F3iz<<eypO+=49«lbP?MJF?g]pHR%_iqJczO */ w4 x?9e/wp6_`PXDzpi83?-jk~Z3UC}5ӡ4./ |<ΔX|$d_o'7Wu]}glq~$z'?)uW[?z2vC<%=:d{~%|emG2d7s5oDURw}6+-4>Nt]TtengGkҭ_kAʷX{#kiX=Y+#qvGZ{$n,I5LEbcT1mEM`Vj+b[IOQJVuRo`G8Y6FS]Yf;bVg]ss /$na|O.:iu-~`/x'(B9mlKjvzz{=]g+E]-d_}%>y=X__}w -YO!~M{U;bQ/+5mq}w{p}5??K~%l?zpzzLxSbduq~}8]^ dGqrzw7}vǂ3_rvJ>@1$o' w`+Oc93Un ts!tM?Gtǜ`'yYcr)4|<n}_Ϡ_te{y|u98Ry|' A_z [r'ϏtF+(H(5t!V?G'+=_`^flr=5d˱`Wki7y(_UBx˾qGKmaCRcyÂ_c]lϦK%T~?t']LiV1(6!#n‹)0AN@ǕÅӥ_iR?3gM;ξ_K'F|'$%<lWfCh3.;wIo )a{NK?eb%8#Kqnϩ(Aaƥ,+΋$xl:X3_vwwcM[ˇo[.Dy]xgFL@'^_yu.%WYah^U2P6]kDáxq 8Paj]a2p9y9L.D8FL,zAMG~1(iGgʋ9xAʰ=y]])cw<יhaT3@s;^dYI)zAhh,k*rxr[ʴesET?d0k1 <֚!hf|ϭyCM3#FpXbCGH'֤{D'ACrμJnc[ʲ6%!'G}mFTStU1g%$~ƈtSJmjnBXz9a28<pO2?ֵDl3S}lMz- C)34|.]QD0b7n-kUR #MHQbϡ #1dGtJ^BW]ifAKb-΍-eǸ{u$lQU2K%6%KC0vHφcIO v0?^pֱAS#Y@K-M7U'9U’%'w()dzI:SrvONt4nϷ BίJMAgc8@ʎ4Fa I y5[` G_oKƐ;v6%e4i|)=_ziG#:1x%] n|lfTET}0s -CLym}~'vp?Nau0=:/AWh t8 gïz+nDZ#yB[2=h6֛AƘ,z[}KE[{MgE,t^vl>0 pL,֙ )HlW YCuǩ#1 _G#b4 i8Wh|x9v1O6sq6!~:iӇMz^A>=y%!Y!R]vi9nywmWSChO{:An5}'ӈiYSEϪjnƸQ1JӏX@P+~{ Q_L ~2.r8ː!I *yQXxJ[ #1(=tms=D=<z3KpSj%dӜ#j-Xnrj˽IwhwDH0lB@-P ;Gv`oEGVQ0V1'quc]Loƌ8:noxB5J%/n4;K65qh ‰ Pbm^ʍքC_H2EL#Jm`6ANkx2jG>?y˭2k 8'{fbDlKg$3`7l%@SJ˲|PoϤ |-![SB8p(iR^{D=PQgMq3Us#Q2Cv@zTP* W) _./Z 3/zeL{ Oxj?w)EurO.C(mYa+n *,] pˢ E(XJ¾‘wʿұ,{%XH#'Ϗ,%*uàR[vn}+# Ó[39DvVdZ/X6…)PEjMIzh6υ%,v@y#e#j2#z5AB98{!xˠ!!uhέNahIb*XLPp$egǁPRKMB+888G|rWa2*~qCAZIeLm*-:(C,e65bZ cp%6/#]76^En <zW,,3C]9jG-A^@ҕe|@uG!hP'z6WvdXx7R`W+d%tl@f+^lX|Jo}],IZ(.¨! ǦΨ4XW4Sƪ_cHº˂+6QOf[¥xmyf6h8@DcW;B4R}:T?lc SEüXxsy -d-p8=KP D7/>D#,TA^}oO1d>=$ d|F;jWʔrçm+|X3/]#5[U~lj{b yQʕҥ3w.gZ5F#f aNX}ӈ>-tl֝2FH3VξGX[ 4/(@r.JAj^CB59NNp<<,</ Y@Y$^7˺e*IER[h2l_1L-TKM=y@מGQP8tWTs8^{I_ a4tʫz!5hʰDDQ` 5SjxI@ 4!Ί Ҏ^p#)Ғ.Y»ibaÙ]CA6D3p@7^z|ucIIvAZ:%oDM3q+Su|W4Yc>6uTˋβhh;} #xVR4Kl։UbT:dƣ5G)}G0Uf`$ z;*>*ht@jp }:q%rE%p|w ,/[0yH9[Ob61.)^?Mp)B:xb֬[<!r[2K ;H!7^,682NVPrAH7aV2FX7b.cUN!`s0NFnEM<] mK8(k[%wL-l'D-<MBsC5,IJ+<G1Zd~qDZ65 M@:Xb+c.^0q=GםoThwHOŒϝ1v#.aZMveC C6/s]*N^_'.[v)9G3:$h5i/ F%DqZ^3 !gjh)wΒ@xsǠ. W9lt1roʛ<(HWvX!_2r6B}FACDG??'K{n{º(p%QuB)>|'YR+kֽwW7HrvKske6NXDzLϯv)6g+9?n$i>>;,@ET?1ƈLDs _(xql2d+7#ҕU[ FuI ~s $x /œ2:g9?B9Ex>*-YFO*׏Xt62`#yT<$IoZ<kg9tO^-}';R~ҍSbM^l/] XG!MSXAW9Ϡe?1N@ 4XAl7RO!!PTeQϺfÜ ?=L3({ljvOux: 5>CB0 3(UDhsIX;bwV3T9$k-qr]Ϊ8`#%eJ-rE:(PӌwI>9j҅O}Ow_k3f5D0i*fAJ Mc tYAo)!(XCSz!O΢^o`R/1ӣTOW:iWǹ5vI Y;Xv.Z3+_r).s9*EF53w9EϾc2o~4lh@,hZ+5cL=7'$c}Q]$#1TDnA;`akRMǡx]eӶs!;az1>BvDkaZi`liE'eh8wPLT'p: Fx:,lK#HL>t ]dnj4)0V3r1Ӵ…p-_%O 'tn/S(OR4l=/Z9RQe$_ӔrdxCv X5ï@,ib`p)am/O#vJ : i)YLrcxM7#q 4%0mfQ1.$/5ǜisrTeìr} .mö@NBp!@!=NMμQLjLhk+j;+a/l8Xnx`PX.[>BHe[$U]U @lXve^)4)R~z*UEA#wY˂`KPBD9I =׫A3 13Hf2Iz7k|'υ~ce nm,KV+ha!D$bc5Z1`SW1ϐKUsebc</Hn_JPw8~-`p# PX9ucY/4NϘ21*Ɓ, .$[h@dpp!s8#_/n3Ϊ`KbŒ8`OjZʮBr`3== ;EL7`.wxL/XH!y>?3J_aSEb1`# B$ O3w Ro3Ӝ55Y##DmX)IPEnr(q:# owr*˂FgÍ,Hsn|ך}e!dFaZc+]wQxv%<RHuq,y>q)Bj7:^ /^7כeI y҈~_*-Asi1ʝ01iYgpS g3Onre UR%,gpo}hʅ9S.C8fB!gq5clRrj0H}oQmQaeLb]T'$KF_! F%-yCOʳ[xZV<dstAnLτ8qHN3(0CWXODZoA#h}'sX{*7Gp$4eQ$aׄ1h)J:/4 X|JJ-T/x;!w@N4?$nb`7?ϔ} # IpӿC8KVzF֧[9FTH=#4W1lixg8{Dpk<p `<^8%tWArk 7`ZX=aZzI/L3R$<ZZp;,17 ʄYaF0+5Wo+ GSbhf)4ru2B.*kX/}OGyB<jkCP hxfLvD6pP8-9h8VGPXˬ|.zK6%2nӡE.]Nj`#x::E~;Q0~ wϘ2IW>~C%r2fE9-Ao¤-K`[w@ #+W#M]W җxnys y9T{ho3tV0qls.+:mʣFz;jWY iUsíC?K(4}G5:-,9k6YsJ>Byp:N2xZcdÌ3ja<{RMQFMTk_EEӳkcױ%O˼Fb)5F,zWIL2bgNMyzLBP89D1p4o D[OwT<εmH8lp6{!#ò*ΜU+1?w:)LB.{Bca{(jQC%YYhθ6^-ʀ`F<*h,I@A;1qϸ:s_*I36 D+ 1ҕ*6Pr6iD~G5>7Bg<yq/zrYuPb0C`q-7d]NjH F)hoA?Nuǁuu56/CA,#?#,l9fzPN_*lCUCKx]Y%17M@.-IY Ƿ_Z`i%eZzq~ ubI1Z~O?pNDx[qg}nt 9sϚdG 7op]-)TD,$gc!IK$V$Hmkb9BIBClAX1ne-_k/skz3?9+bGjIjH|?Ojf_<Bk<zOqyi_'v{z/ǜzl-.=ep=DCW#N)xOƥV'v oGb,N?ZqZf;z^uDzfn3t2X+s[DzfdKMW$q.OVֺ}?Ͽk{hwH-oL3MVrkGDJXBCvk Z?ENwky#LD>{ӵ1O'50;}gckhut@A~j+q(<+;WS һז6o4*bT}fx .~;X+-q`;P8`58';Sf^S9~ӿ=8z?K5R;$s+j9eftpDg[P8n}6}86@f4s+j[PUf0*2 l2b={kEacg9,_vw9rT ?ƣec.BgoG=?dD?B:yb@nWthδal.iJMW=-g@hU;V0}4) :zAV=|w)#k-0rfhek:;3+?s$6'Rv^(PU#4fg*N5rA8TvYD7_h#]+]ϠZ%-*ÍbaϸRX`>LoL~`>-R5+zFaUL$ T3s~ΪGazLg+PG9.<zy'PJ+vidAvq:q<~ּb{<^`Vqb| +KDǡxp#=(6aZ Z΃E:z,pZ20npFh2zC6) Z5-;>kO@'ovҙ$}eTHϓ?pU2uCMdfrlRk'j˼Z_(ӈ9kmC !ƒR2v6{N2QK ]<ʋGOU+v-6P8VSxDkoQNtw4rP5XLGXaΌ0֘AʕvNǁ-Z?q1jhp(BÛ[!=ʋzZ` A[˧RL@EP}* BeZKMsM-A(r(ҩrjQUBj 2TnA5%%$f0z ^P (rBL֊{,?MNDŽƘF,6e1@C[WU_,KJrZR|By*r)(r20:{d7ˬ6KTp)XSFIY8 <] ~ E+0n.40ҚpGl)YqPPXx/5K}u.ӽSl0r3C.% {0t073 rcǐ-+si@Khpt5#j_-PR$Z%92D;KM,rZAx0X$x:MP>^ƥk/*ӆAN|,g yYn<1JaDJP} waZD5pqG: b3i/P!~ );үE(a Dû)ZƓbS6QLVAx#AKm4 eeVa`E G5 19^(nLWDj0PLt#d5#˱eSGB/AMz~ z%q%=(_l!5 bovRXlliQSp׀oBׯ19K,~p[`qTWdr?2}zj3*UTBxAzmz3@sr*RXeVa8 f(+ =8$Q`t25; ^vv[)y{X~FQy,3|N-LC)D9!!Q!NpfQPKGxi!WR@מQI1VzcTm#hzJZCc.7~A֓ӠD, fʱi d%Xr!7<DT SpDldfʌ13LAN<00*br]5w'c5Àg_H ?#Ié|]7+^E5K39('|(k/™4kOt` B.|,0Pj{!!|5O/$sseY#{k5/RM4v)E0ViU )P!¥¹)4U*@spJZ1%(F*7HRD3 Hl#'vo$ӁEfxw q!0|_C6db`ø0m6(0bסN^4.Ӯ$ªL+w_:ME];2FNeΑ*XK--AֱîCv7k|$ OtI {9e+ R 4ϏP O1I3Ɣ[-Uc )Ʀ@-ʈgl)EXҺa4@S(#KBaPdRPRXM3E{0jtg$˨[G4-p.X#X?_* <(e|f*sbHBƱVWhǸMpA2fN_c9ǡ`KUiʈ$e#.˄2#B[Ͻa+@ǾJIWSH1!#*Lת+TyJ22k/ e P:IiF;JL.΄;+Vgׄ(_< ^|9#Q֝[g?KrYf0Y=1do$u 4*L6MJiXo Xn¤DoS!qQ#RF1ҝi(v0cuW© =/oƢ6k.`@p!b`tҢT`jh 9YUҢ+m' }H1(8[Y6KΟ,Co C Csfoƴ z@=cR^}r_æn%;U^<OuʑwςZk4YDƏb%I*HYZa#_DâZ`I`z[1ieZlcFl-5 5nǜL:_EV#6_Og9pOujr$AP8?-yF$NedD@QR(w}bFPG.mKNjl<_87=T)W T/-x[u2 PX4W0l ZLn!Íp $!(0.:zD@B_pqi<6isӡ]ˎqK0;QhR7jS`]b)lH5 +vS! BejqJEaT+pon)_=4!¤Dw;øAC}jZ;7s e[cӂ}?[MCtrh3gU-TlyVjg-4H|j0T4_҈ j3i8~o@ýACPL2`Z’aQ ,qGQlot$@2jY2] k1}7ˤMӍa2w= F@!Kuh,;Ya^ƿ/6(1 Z7¸`)sR ^Dá0-/I_p3F V*v)ZTZxA-Ll#^֡hWR4B3$ӕKjgLjZCBZ ZtǯAGmDY3KN4υ'Ύ;S,ZM]9=(ƭeI]΁^)NfVJ|(LIU+ -WjjF T+]*^w@CaDK3E i%_+#d}htE`*]i`#ps6FV00OkE'Á l L063צ1)AzKXxzqr|~SH-SFQH)H 3V;ANzS72ŠBkAM!;(uœEτ3w9)C_}jGlsJCO~b4Jjn E'6t-4,viJYV0!%׍wXI9QGÔ_x7{gcLCe<;I>Ds֖0~H-F0br}{8[:dcGΐ_UʭùӍ.R(]NO=H6 ΎRdSS1EQYnCk8S;P!JqÆS %FFʇM1ʒhw=8?nS~M{T^*<i[<>Oש%qm.3v6Ab_-ϡRA8qJ,sC{;[t4,C3OY}v+pn7~vΦ%EUd9*R|gg/p[jҙ+,!6Xfauҗ~~')syixWOA P=/)~o ~Q-0lX2BVjXzRÈ(nMFbvKǯx1ƨb OK3t6U2@A1-%BgUtWϫ.d5DӉ4jRA_?GT'/:Ϯjch+ZDPAΎS<}ƝO5Ý:Tre-QMM΀9<k54=+,:6 jK%FʴVE%R ,q5p:T~2CXy_ykc4~>b{Rx aq8_p϶|'IB7jlT#k?ΛUƒ-GQ3[W@;?;g.xUY!1se #;8T4yWֲzU8iWy@N4||o#ob!fY%]6`ImCUWG <Ҋv#@om_΀n{)n0uhdžn{{Q Vz e*1{tp9*??/ 6O$>tSni(ǘDBh!2îzeevNW-/54.ZT[g-| oKmI9ӠC(`Nh 041=Na G8ǐxS<ϙ{AG~ u;({@rxH5l#H^'ge֋+0=/^'װJJ9  vƊ!haH*>B*%%T3G]e%kr^W|/9!zE5S֦һc,ZvO,˳`{4t0Ng+S]-ro{֪ QǚmdSyױKdc:_[HZm5ːj Iz6nvmX_df60> x xmicI>dF$~P?d`<ZQZnvan`y5·~ur5δ|ˬTC;1)g3H.L8TE.sRY)[>$CcX$'<Q BQt[c>=5?#!9fa]_rROnNGRAq=on%JH A /ClS,-4rGN)1)ni~>֎Û_W׳4Y Hks=fCc, |]KawD#$+#U~1i*|z ‘fʢa2TH HI}ӒTBEvy]dA~ 1{-;:x| O. EO~Gj;Ǘ7}u=?jϜm^$)OtUu#eC>J@qR_*DŽ)yYJό=r26LJcF'4u~6rw LkǗ`9n8g*e=.cPlg#G%m>%) !4: Xƞ([ (x%gayV8}}F$=QN1ʅ.p_=QiAb2RÖ]_QF;nFfnU+csae9>֜l =*BÈg>r:ӋËjx{ )0Qq^Hnw wHr 5N'W'2ӂ*P^5P'bOtYn #=~3] R@rM[/҉0[]GJ]eׄp =]f83H=8^ûnML2H.tpq{q,t׎Opkz~-l 9_Oei {I~^Uy.cjz zm^֛KV;X$`b[<iN'W07rw*תo=_-YC{_<.BS33s[jUqi:bj/2?8retW#v#Uqv_1:9@YOkFNJwQo_MƜI 3glpCϐzn HC uOt''5Tdn7tözμu^#5nAƾ+ǴupBmv#PA _p{~.1%KfZF[[M-Ei$HMj 0ab`X+8Ρog0*7pCvR0ZHS`9Z2bxM i~}FV1p]/D=IZf-9'ZW4{j.>d0ZI_ T~,rBƞ*2jyn]N#@ /pƴ0DHbU55S5]o:$-3jASo.Obkxl6xhqugG2pO#Õ6@,}wV _]Ӏmr;QQ7'T)1cb҂fVÏ ,UV(s|7οPwQӍHH w!hAx<B'hrdJM/0SvGy8`yE^J*$]΍|]V2Mhz/SlK,hCh*`bƦ_@vÔʾcd [odybO Xk(X >^H8>C Adi[.J%B_XMaGQq],Ø-)$NF+$ S|T@8L jki8Z?GJBf!T<M1j_Ar!fƹP3$g@Q@x-(ooHxn`qkC{^@+s_'n|!l$W:S[Hyƫt .Jʹ9q:U~bVndT:'/hA{0:ςF7(ZLE}dL*TIVd8$W$׷ /uMkyMҶ 1)I$yl;d3mo;fSwXV3Ϣ)U9I'$jov0)^]ҙY$4:1LJ9]Z*pזMsOdSs׌32camr@fSֹ˓LʑLPLybAm ,dQjTf%fm5EwG5#Y=xL%Z0Ǥt=`]F3I(LGQϪ1@r*aR^{nsǒMdUhZCZ6֊hq~z֊{@`V'+1JW5,].% %+Q;HS5dQבz>%*0( DdUAy/%JMU(*Tr*]I|npת[GQRr*ShV%*ix`TGʊ.HdT|3dY(ei.E FVϷKe/%:n%*+IϷK6'm=?9g9R-$׶BcM=bdΣ=pZM3;i$!A+ Ƴq1I~=5:{{M,h(oÇ3%½0q<!%Q*rx.҄:R9S3nl: GYƔ p#x%{o-ӸcI0Ligh֊7D Iu+3bY#;2-i0Ch7$A=RYiϰ<~_zDç$ zR.x :k*lpI,bSXzӭq6|E<7dy]Y}3MwuD,Io~k_W?ωV[hYd`Sr2B%KJzfvS/-H,-@vbV.Ӕ>Z ʬpYiX77F]UK:yFl81bu7P|ǟ>ce]Hz(_B~Co%P֞˼ >'#e`FbaG$doTm'zOu~` ˨vD-GD)TppE)V|>8:FmEA3$dEk]lLQiH_D|AV'ΛrA΢Z~b-Iv~FS_Q?#T*jk$-w$sI-!0S:k˪9kWíCl4MzN1#Yfczʸ5O=K2Sl2O (Q'8gM`B6 u6ϵd-D} S, ¨VD<zt0k} wpJǮmSW@d5>JD=)xDaUǨ>Vϭ%$.Nn!2H$_.ǚ ©]*jH*_2yd:{JeƦ?x(iRLB,$cTx5li#g+1vW|>Y*jƄoL^iCrǒӹ!Q4uE)8Lp-n%y|[ӊ^}a]23%{*#D+1TaZvmLhxjM;15J>Ϙl>Gsrd`e9:RSfM6Pl+22i(!:Q-L`UZ׺H$U7jAKx3e$Hb1 u|^I-+(_m5kBFd/KxKwDd/OA~' Lyx A.jFqN0W?$%[|}3 *tDX`_*R D;T1Fq},rtPcƊPVzOBXiҩ|ƚ]ZIDҭ ~U*nto+1ZǸjK jhRAj(9oP}'uE3;zjn @7#h8U|uҧUå%$v֋:JPQ5Z1{.j*.c2i@TOsҌǍcpgJ<veLqGHxUYH/$%;vq{r9t{ ^;w>EpWL8yXcwfB< ]l[,ʰg:uG8VHy1 gr'W2ҷ$Os/'˙3;(T_;WL#4A-w2udtcav[ʰր:^{ӂo,9[>@!pu:w/Ql}$>5^;$:q;~-c.6WD)EÝ>nfjzt%*RpFHB5,5.>;;Y` P%'w5{@Y2N<,h8~ҹ>ʀDH6ms+hk,1Ntmhw,aNv5xmQf-rZ!(wҥ_6,l[9T_/12C9'_3FYטc)1F:9 ]Y320*dY0GDxc|n@G}rv4o)R˒Ad+/JQH zE}4eΣdk(7 ]X=f}x7V0{iMQ*S)1S GdS;aE1ShD?˓('/BHOI]#8h=AgCFϸLmxG6l`osKWyls Z%A2~ ?a6vi7$1;rIΟyms) I QdˬE[ Hljà)5_FY ?8H6/^+xkX4l~nh>Kn6 1Hh8wpZDad;!hlLiJhJ:!*Gd-F3% c*d2WJ#Z<)J,`Xv[1$xZEaB˿bv]5/g ˰9,PL<IfmdHWZRgn0D+0#GjFIs7XE:;ó-t ePAe#nE iJAL7$ T)S<֒c{gQx]0y;e4lLA~@_΀lcg;{`kjbl׭nVRn~lMpY 7m Yk=OSe|,4/hYKE1D@R2M>Ʊ P31eH/+gsOB0-!@3zz PRˉ tn# tY`YYʣnHӚö>d+e eQ{(?EanBow(Xt<ǤkePpAJNra,S{Ɔ,<3K#R^F˷HP3Db1^Ä%^y.t[]}GFHC@{ b1mV'/ D?VXKz/>r2[GCˬ#ezpvH(:{kdEWŽn4#VX*`5oN59M~s7o`Va֮@]ey~] x9dbgyteB‹L`8-]FΖ֫C WQ:B8:o`4'S'Iqw-WzA]9>ea s%˻75NmO.3Ͼl' [6juK#֊2TqH'%@N.rx6X#ֲkVh*QvU]~|FI5J'y[)BQff_rEO/-δ/`uI?gGAV$TF6$X!aLdAP6kšyU]Qy_$$YYtʿ+#sY0p?GRt˽fA¼;iE]^=PZn[s;!7G;po9BJPC5{7 AMVe6ΘV{=<|jp_.7sEEt3Xvj~1Kc%Wkz~ULϛo[GapGJtHB:)K,T% WU%u֧8gl>{%;H%| +c(Ǐ$}@ʻ94eu:LOqSo1.xOh5d'jSXCjQ=[6Ϥd ƊEC%Bӵ`U ST.LjA22*T.L*A:7*ai](Ӵ`G RB{jA4MJ-A$*}baY6bOZF|PT;JҬ;P-d6nl2}~z2{bFB+AbhfWϘJNmu*PaJ gs$0y$sdH #K ӊC/3e=-cSZ/P43.Nv0*'f0)G*l z4*<^ULok !ae*51*PTE%4#RB1NVa+0,҉2HDe( B,RYhQ)J PY9H֚>yhF|hGP7|l,(ϐLjSoOG=Y ucE 1W;K$37lA'=/?6##eiDbƴ{ @4 Ql҉V^Yʚt+4kQ,qS.E0FM:@N5hV8iWϘ NlthR3ƱHE ^b-eelt:1Θ{Mw0OiF>mvdsvdV6 C%V{[<{?okjD4~Q._Ji?+ǖ;B6 4Sc%¥on<oƕaǼ/qzp/6o+ϙezkA<-kw%RW0Ebhc']mWG3Wo7,%Ra*5<J$ϚKUΤ=:DUEzQ.ǠRh})CuZ+_JZΠ_MZpn-ok)5jz3XA<$wjDn~/):}4Q5_K[PW'8tvSA k31K~/3z5^5=s46;=P[΢fw{~n~G$IcD *bu !N'W%Iopr!ZOҳ,/E ¶^Έ=4F|_τR2}##24..He֞I;fFlePC$N iBמQL0g4g$0-[%yVo41i˞nA q>{ֳPZlQAJG/1Pir#6=6 9F,Vyl%Ϭ?CnPfcX (s@Jzʎ^}3Ɵ<6 tdpDʺm5 %`bQ֘`S -~zPDŽ+1Wk$2<[lB- eϼ/L;~VgE$`p2 0y._Dzό/™8xYKS NEptϟBΧR$ nf4-I,LiidmC+x)M7ƙ,Q,<7ӧ:KVdX<2ly>tƯ <W*ibSmxuQ=_Rcqy5?cuƴ`u_AMr [g`)ggK3<WYL_ Ux? >8{]qBoaI`[Ut8h(}4֔6ˈj6y8˒%]rX*. NY1ΣcoJGM{89/BUg5 Sh0LZlMOBWi`x(5 e>3`ʳksicuw?=J:]^ i,]+sƞ~xiP$FeP2j|^'77E7m2!.$makNddӅ# t6#Sj9R,Js(DUת!tBJe=Sx_%.}p|v/eGfI!1|33,E9L4j52sPw$CeQPD,Ei|rMbA)?i:1L4sBB<P6Bx! 4#-A6oD0I3|]$ww.%Ct]+!kGoDIT>0'}}I95EB^Z8mF=H;RW3SI),ZY$ZP4x3- cQ{SΎeJqP),7AUx2r?5VRfM[mR/G8-tצi9kCaeAvvbqJ--!AmʗvF7#mT=!A3tlXaP8sOU41^~wz '_)?E/3!rX=VӾkKM-wY*^ji}|VIK_Q)ӲzpW4ggpZ K^!p1lx?m.2K=ƨ[mq1a$]YK'*ExL#JAydCg^;pBwbHni~0PCNxpFKSs+#ǰ@@gTX4(:P01ul hHdZH@#ci{J @pTsÊ3 Lϕ3 c7oS..LueA885N(# uN?Dupb>5c{ AVqgrPi;(8hj;v DqgnjG<)cO`Jב<V8L;U9I:'zsJ-M<)f*f3:F0ήRY]G@/F^s39?Õ_,׿6n !dS]mϧyYǖDbvN_DA_8HcXXT/z M=T`eւSK rU9WmB hwHXUaB%M<ZE)ˢ Ϯ*v wg.D^]ij5T 9ZgƔQL@E[LhTqf,d%l#nom)TRZ+G4+`Q˗mk;ry{{rO]Tj k!zMgVDmw׶@!:mA8jmbF3j>(Zwd8ӫ5Yhb+6#M4~u#Cb5PX2~'J >md:%nQbOQ#Ú-H Mpr 6#jcұ>#q<ϊ0xE!Qʒ* (H.{z-D*r?T_A=jV @+b.:t*-|w)ΕU=4zRƒIKHE* RmoL[ L-BD1PELs4irpr=_HAhEÌF@~89.4AhD.^ vWZ˵ix8kKh:c :ʆ_Ǻ K=yNf GQbf#?Ru?0YW, kSd{J;=7iW=d%Rua@W5> ?4Xcgv[Ue=?ҝC'ARdsXmM4 kólD6)e% P;WTFlxӐe+4-$% lϭY~:+x҆<Ωd6 G+<PV?2Dl^m<cu6)^/1I;XLU( ƒYtth{ @r[N~dzzUs*U`8Uvj9T`vjK[./Plc,K,5HU=z+1(Ϙ5l5hSRut 6myHxJYV@Tҏsh>C:=%*,VcfZ<tKǢUXV!}3Z25RUM5*׼]}/;xs _ӕT1zUMϾ}Vn5=]2*{kGr;(j*.,+^%Y^5M!Cnk1+JqϿLjè>|ǫ^exfW8*a65'+3+#=2SSYE+sbOB= oY/?T{2uveףUI0_n4fΟ ư:iYdG<X{F>BFbZ4QǍS$-EF~<5.R BqƏ?q(zpSkTD~_b{LMa [nT}usy8Bʮ.ցK!ן0PҭC<!þUҽ08%[oa=43Ӳ QEOA pS[`oNd֣N)!d{v 1tu~ʥJ%qc0*iF;5]MCÎ.U/Q# =[(ƛ!EBN~!@.kq!x<]]rNnWyr9Vu~׀D IlK4v(eV¼nDʜMDcV9?$h>qς׊`c5uBNJ -.tJF?'S/I.0w;zjB~.1?Bod87o[_PUoz b5Kv DZv<ǻticeul>Ckp3Y*w]k9*|_+?]>rk+lOb$M$N5; Q-KD@o4=e;B5TdT'mDf iAn־snt<B*}ZʚyN,Nx%)ʓP,sS*'rDdo0V C5+N|{L *Ey8һӳ|Eag_ƙ׼8@#8.6Weq ?BJCFJ1@e>}3_[f?Xyme '* LA`$#f$MmR6r^+@;'a.y(BKR)Y1G<<1eΛ˾sA$zm}-RGHӔ{CIJIpG Z#Aq4B}*-:$~w5vq+()p`5SdN>Dǎ7k1?I2וGjNS4tAdNj(<Sm1(^P!O4uA;²bo0s#[:)[/n{ë2֫m¶7 ^d`GzevNV@K*inL/4 AbT:Mpw)^ T$NN0GRd92g_xPzK| PuPa2/ %.x-O.`S+'-PLs;d61) M5Y0WePnAY~d,]_|$r6RE v RFjZ=v3plzt]ʺY}Ue$pD'^ 79Nz1Ýҭ:}ӏz/..dIl7}x)o#wTRϻ|kSctc=$K0dMkדi_)fʪ;J52>I4<fJ+f52u:QBjk45Ҍ:%Y.ʯ?6]<Y--1ZUna7e.m=+4IAJjmNr?y P5y3s}FHad 5!lg~S6'[CR[ʡϒ[7W K/]la-L4gNs0-eC39FˍtwPrl_X!q}m΄+.MNV¹z`Fay/91k ~kYoV+;{ls}ut+iH)%]'8 B|`) (T­} EBCA,'^;tW%j)¤S>BfAʢf BF K8=uTS*3!ҬAVYLJG>Ï(#^%i`)n]v1ҌװL [MKe։ps!,#3)e;a)4sb]4~/?,+7uE|˪V=zR:dJ-@V{p=%Z3dM![˘X@N 680kq0N>Z~yP;<FjG[.,cG Cӊ+p[QAcsY+vTjb$J?nǧhBv,tTG?j8w' wCU=+*VSUKLsXq@%qsRr9QƉ{jE %Ƥs_ωXpS9YH$$wYY XǷ)n><FDӌʃvU=Cǽm WYzv<˛ {)i-'Yk9r]J*8Bo=OU;aTNj2]=zr*qLQ) {NOmU]*]v},ҍ3wU}6OI|Fq@}7 $u1?;[;;gxBaK CfΡP^u ]>I-5 ^ӎΐh A.mr@5`B;X`XALdPE- PPj;ӑǽ:WdbPsYuIFE:wCuw$G>yV'~%r+ZjedaAF!_)4 0?E 2Ygfs }!--4{(N.UHZx'1ʄ7v D?P._V'_3%MvSlI'JΘïtk.VU?$OEqRjh9VӿeOϋ>k= A^%?+<pYsqDZupdz=ÜqrR#%ӣHipӵ5ʺ 2* -SDtz,D^|>tXmv|h-ywX';8*#a >v<Ίlo[Cdo|(.S.#hbt> IƏBL?km[@J^ZF7 Y<¦f*Tt3´3v'0PyVax~Oʹ_;p1sa2˃2 ˢtg;; kgg7P%YyKQ,H6,d@H%uXv:!%O@RIb5CLDS7%LNUzVx^SD P-o/*NG'Frjdx ψgUK;k+-#w<=QTl<Y3b.d2a4J:$QeLOξBl)εT3h4eӧ}nJL)6oAõM$ΑFƐ64$KK>'1_ z҂ֺgNmlcjvl_C1fsIP1/vS` soE*dU+<WVb]WzJU <ZD9U:n%Krd}J7|/'˩ZL*}Uyr,f,Y^./oJҼ5ENmg6p_YFLT`-b]ƕhC*wRzUEΚKN $w(NQ2OV״N*S%/If^W1Ij*Wg/Z<wMt6ӓ-B6sJtDҤ4,iagx6|r (;OpAqe 5U$[?ҀNR)Fd9]W:-=N[u$9c5Aǩ}WM_;=U-LH$PKk_eҙj v J =z:~oƊZn |+)'ǁ HF(=L;T/3Ɩl{Ƙ.B:PL-%AUA:hBǻE$t$V:pQsb(eW|;''uIj xDǥ`]wq/7 K:9+)!E*3Fj<6S9×O%7'` |w0ǿtVqD o(5W,7~kBʘq!T{Kœe!TP%:R;Ya^Nƛi|Ëu.ejI]rbJQ'Oõ?#+pOd׹6e 6j׆zWPLut`7{5{0j+^H^V`xPi2eo_!s;gf˷O8duxP:dzQ::9?5ƙ=)#cs7S}j_l^Q4xZ5m(z=<:Ub<Hd]adW9DX8) pr0mγREΟұgCuL=):7O/Ҽ)q^TU#$jd[w[YxVYc%6j,TYHjWMdrqo>%.8PGSf9UI.+f<WbRX aMf/EHMBS_V15X!X.rbb8H^p{>1w?~U!B#s(pj1RHNG4Tʝ6@B>#0x/u^<t ~iNBQq~T qtzi/U *^z05 !*I(R5z`DEW8T4]Dʓ2$}`rUepcBfJ}q6 JX`P02ӘqjH#2qb֦V*pbϼ(GvGtEuXRpD/A+uyjJ^=31J]*/΀p y^WX-kgAzpkuZTD΀YvmJӤt55zHӚhT-'ˆ}*KDtT2mA#KWU( 0vo0C(ǝ (k@jBsE9gKb/=+*?a7tCv1ÑHz(3Xkjˀa`Ϥ g`ZEANYi,lG]-7:}uOZj,7%%rj+6S!B+[IM~!c VJ{r])h(p3,{wf0WáI 3Ny(<R<%5>Md4ҭl_Yu0#Esa{ϥ m3RϺP)RA!kd*Y+6%Tˁegqq.n qsZCp^6-:QV'hW@aEÛ7M9 YZYS(zq:C@vsZ_r=i0zA4wPMN,r~40djU0'gƺ(MDҗ3$2d$3COgU$2)<Oa!CB14z#9s`L;Ra|;JOWHXx־jNgM{@u֋QVirk3:3Se6ykF?0^A*ӳC{ZN>I'Kzpw'KZ!)MҘ2J[OmuƪF%ǂB#0L MLj97>}!@_.„ Zd~^|(.x _Z}K2vN+*}6LDSb [iX8of-.F/i ˜uuEL7q/?G)h35=d07Ys#zpW Z0MW)Jn#WC>4JrCMƈck2g6<zJA3U@#M|q[T O60 jVgH+3oUdaoϹQiRxʮhli҆V.xXDdeg +/?}aI`O1ZZAӆ->7BDƏea-CQ2Pӄ1/*]DLvJU(Cl.SY^q*sR<,?|[6Y2A7W m]ׅRQl}hXǢP`ELT$K)!vELX)a{ΦÜWP1ej%e;#z(˫`HW7~$84Mh,<g'#NkTNG_ :9! {HM֝Ah/9^Ysnx R{}d¥)!J{ulbn+7mҰ:RlJE @M)NDe#wdNnE'gP6}EW{+0xG}+O6m2 ^(Vk<=EIB,ge LRlSBJs|rk6d s3s,4ty8 ( (%<-*bUǍ<P%?pA@~LcUψ#etgD[~ $xlNe3gm*3*<3hhh`TI{Y>b324-#u2N THMc.?o1:d%xyJʻʒHV3ǴBÙ/Gd R;Ivc kӳƂysz©AQ0ÂƎ--|:,_d3/^11~{G{P^ +qu iwG.iigu(!dK PfOH/ D? _.E0m! ,EZ:W}^SEc'd~D7W_wP5‡|-'u~acǢsLM}2^EwhbCv }{aB4r.}|p4C9Z:4/ pfoD@ëUk=.D{!Ó7OyY$$qGRu7C]+w)BSʈ$2]QFZlnU.;R>+S?(+_$nיFTSa˪K^M:ӑR9JbiFG>-3_i+Ax qtk8[7>d]'2|N1fA!B{#8JJq{!xˠ!!xI $<i)tA0tf/Nk<@%6'ˁbP4Bss1*~7b ƒj2֫ Vi%4 ``T΋(Lf,znNӮytmTB'.rXƦv(;V tNuZ5~I%~Fdӳ,ECN)_uZQbGMa*X;#R/9=|7LJvMy% kҷ 7X5vl.ψ ׍@s6o7))jeEigRCvFXsƪR7Z+U֮tb$ko_^u_=dQO)DW%*sZ]BYt[*9,Y76ּkl?WŽxC>%t?+69$Ylj)<r-TU<a^8{TkfmC˃Wi=`A['Φ4ӋΫa4]ʑύ>sTBrrvC>+jFdrEd.qd5(8}V}xux9'yw(l*0C@/ve SGTUtJ)z2zV,LzW_[I0Mkm<PQǹӸ)<Ugi=P <5ևQ`]N'as=]r=qad}[1DyS=Sv]?E9ǧ>FQ_OǰZ9l<#aSU.`(I+tףCpiFJŠ% }Fev6!$*?h*dFy_;}n>A1,G*De[JZS˄cKk@$ί(<yE/˲B!|t< I_yq$!lֵh(=H3kƾJxZT(l,K9ˡrj-EAq|LAH.Z'LkY EϑV=,ng XHpׄJ 0s-K.2s!wNQaƚeZ[ǩ(E0DpF::3ˈw/Yf-+k7500_AdU] -S<wSB֪-$o@PFNvlH>7 A 9>)cNҭzV=li<)1ӳ_-Ho+jM}=>2)uDomJ,ʻ'lIH Q²6`E:4XD|dD ,F)}s`vxƸ2.OVl>WBlvegSr!K(ӂ^oj- ag7wjOwl7}3z4n3+0Ahprk +ǼqpB-v3XA dKNY8Nj3lx.=`zcLd#/AYf.=ƶ=#ad5%*G~6$#a`_}TTypH#Pr7|7Q_'Gde %PIe%.9*NcׇQGU38*SN. qasD`eAbwәL<S҃2+Z*%@gTWZTʮ1b΂*β)i#:Q JSOn )7_Z`@S%pnIp0<*3W-δ)~ǁb.512mQGh])y{PteMZF'7*!lY6YU^<k!˰u>M% @ӕgd<,^- wbVSX4b,.)V%6 uH,ҫ/fy+`4 u5)qy(תt/H0]iӔMsER;z(mˁGm!*VaFe@$k 01W'm]kӶZP|N8u#JgV=iGVV;I*7?ӐW<#f.i$4U~$HaZ->!sil/NAnkZtLZf=8z?_˼U֌V|H FSVop[EF[#4UE5`2*n'`7yMh*V;m=D9uCe^dß<@J=t,TX<}wVƟ]ӆz;A943'Prir}ppgz?K'I|B5i/9,x]sYֈ^Ҳ)i8#ӄx8U9TC6ƶq2:XOGP*R`l_6tub9!B8JhMYq0`[-BJOrNtR4^z7`֤΂Clsj]ϰy<T_@!M5/'AHn:UOA֛D+C9ʖx-,!JK yK {blá[]TBғ41YNJ=eLgMTbE`~49Âb?l2pxww4E(kζ 0h@EU8j0^.hXO'yFeVVR=U'~[Q$pq VO@Y,k%18yOvd+^$k*2OZ3#1IA:RʜZ*6 sNC%Ap<a4a*1M36^^r[-E6b`v95˃_j:- )W9Ӵ]֛O9*,גiJHƪ +k%@c)'iXG2(8o0qqiZ IhM(wOl,>6PxBQkHo`UtΓ8PqcSӴ!#75Tu*XSgvLjt3gRBZ%XqI}:ǁUJ #'D8`rμ װ!NzyH'B39adi'RPN%UINOnTJ6*bY^MX?] vWpN }0X>l[7{L`+#'n0o-1sR}uYӠOtpL_+v/[f;fHLuudVҖ:L~=yKwgƏO YzNP/X^ʥ!:|-,bJ3JfnMsu}zJv58:IiQ%6MR%4#I_mnL:bbENfEuQ*HB[iQZl~baVF}pV;) Xn9iL_/otξ^#P!/?w#xϣt)OQv2Ҧl~yC.3;7>+b%z(RQQerqs%zylʗM Tu4NLli};nK?#J?<ι/x74Eǝv8(^S R6UnxFm-4lOSC(6sl#p0d/Әbr|~=>0us9Eםm|888D<U] Ru˖igәG #(x,f33dH#K/-ER5vdD+ Ʈ1R6–iƥ;F;JHBQt=K]$%bizL$@<0 KK=`B `@B<ʪZ7aahYMqTQO1>gO<5M<oo> nr;8NehQ6A>^қDti$zFҴr@ [Ҍg6maREbM`].%.^-e$%/G+kb8=}:n!`{x{qa<0SE0֣B@4.k]ek;62si|fyz׸Ei^C} 6PύVyM¹1ץm0Dfz $q%0|_6g.^J~iR|7xn}0; 2?ҋ!t#Wm$6fY1ÄkzlH YGT.tSW ti_Y1 qG!vHqvΧǭ# ;!wVKj(n9IOvQ²DnMH<S2$Fm l124RoHMI'P|S*Z+doj8,X 4UύYH<spe+1jezh> PQ5{Q3 $s2 O(D,d gaIƙC7CDNtVGlJ h~hi[K²a%54;QOP7[3ή*iIo'uLA51?$XaZNω҅i#ʤO+ iO/},wwlkC'”|j-82147 `-%Uj^g0i`7҆$6yA 4F+x@ӹ56b.+f'MuLN:Unx#ƙ-$W2MӔ1R*.{s|u(Nj_J$s]C}72<oK$<46tuJyuZo@ ynq|9JӾRǼA3V @xwo_o[ub.Ƣdiϛy|W$%=ӀTAYҞ#ytUIGA2YʽbY@r#-%I'!kX|uTZ[9w> wuqjӪϑ1R /CǂlHZU)$$I< Ӻ_9~;X:W;dׄ3-H-HfPn8MCW֟1'Tҭy%RPEV3C]189>?(_as0xw)k)TAZwkg3f|0ʯ-xjƆX+@dITg84vu#Q=J(Mp8qeBlLU/7w#:9`ʫ%Βq hBe']]תiw/ ` B`?QivIDvBk5U`r~`DbN(Mh>ӴA*z_9!nLWXa!_++1Nֹ;g!s4]nAhR)6HZǰMVYg<oV)P305m0ӎW@4%dYBHF+)ns…@Blz™u>MW Z/0o6f)׃Ɵ,v7?S39Sge@Dʒ:;)N?QZn7e @E?-O%DvILb*r zJZ4]*]+fu(A]c!_IdʬA '1:'q%Q _7tdf10CJnn<abҘcTAM0JvzqQөiTH=c-TfoTrI vhM1?+lgeC AR%aS5u5 ZOlU%S6X|y6 eTJƆhRboa-Ƽ `.0j,LI>)#-)uC:0,P'Q_,q7mMoӔnEj: !qyBϋnξי:ҤdTjMù93{]#C2.m_ʌqPHroc@QU*VNYg[rC3' ӦnQSE.7 ^lIME-5?֝θH,o6$ ]|~U8ww֢1NfA5r )-z˴1ӲIcQ AuMBFBpXOׇTExҭ?2`zkL<Dp L4y}S<gKWYdb ,_V d>$Gt<Z*;a S''c,<tzV0)hFõӺlOV', #3Q>Ƣ,b-9;GEEesM dƥw@A,iM_;iE+dL2!OSfnyx EuAXAp wp +~tN écw?ǯ3.ItmBfa ˗ u;ZPsW5*BC# !hΟ.LlΜ X^g#Ik>j)A0' Fx:)`I'QIE#6TnLzc6cp1$().w]bQ2YU>^2ap(0DMruYN*LǨ$3T>4|Ck= ]o^AҤ |sY4;hf$8Z0{;}mMy/~$|`bϕ~2KL+? jZ^88R3*_} ;|tg4c3RSdg=hJi $+2p ~['D;OC!zbivMfW]i/3cUӊVc|HM|_}E9PhΎ pLcWN_«toHO~>0f`Ms9Cf3|ev^b:.K_;IO*}SV| Q.yu:Oқ9se]*]hG6zlSyB$?ΰҏ8w2~tQ'cV!RS`23?-7]$'Y.S=KNI_fr{<{4C=*Q]KRU/.Gj*7PQxa`km*!jWxePWϩ>ehT*V>ZU#=tSjU!D]Tϙι*T$ H~_eT~pOpLJit(iPWkv2'y-,D$qZI> a )^.3p DjAD*5Wzg[pҽ81@:''wc+:' zm_Vh]z$# + {pksa^/M]C}>{B<y2U[VƴUUp+ʙdWO/L?6!;|yJʻ JU Y0LRK2ʄOHcl#NX2y_X]¿:G- MAf‰_@ ju]iǥ)dRJB6j !!քpt1_y k-OTӇr3(moFKˆVB˳^7Gz?jz^ϸw3V(iDX$;~ebo_DtH-['$Am| exKp x]3O@Kϑf@T'dkK[zdnlO(%i3x0zoSIerkC5gN)@x hZ=6moX4UGLe]Hp|GB[Kx(NwyXΈ/@n xu @+I2~p* cS8://XDt1P[ c* `P4TB#W2p*:;BmlaÂkάqKΉAt17Bv13B@ C|ӐT:EYsKg5LfZe04'B?FMʂeu8k)[DN~ f<Dn4h]r!i|3FJrP*S2( #TP:[{z}B*[TjeG.28eLp[pFh-#2LBLr`l5Ibm!IeVpFq-Ҙ|d[w32PSQ23_vHҫ=FAr2sa4LR<B|ãi6Sr$YNNM6yJʦy׋Hӿ@L3,#ni02L 11T]#T#5ϜZ}M:dfjcpYiA-fD.5$ @[E^5.QZ1h[@[*VaBDTxCQ)]Q_TC]T G]* |^rǴS^hHƮ,E/PSXiX8ӌEqH4hU#Pʇ#HQ9tPgVH =Z l2nǖhʪn{koB6z !Rk( |4Nc3+)02}NcEzlu׫zMhRXN=30v#B;ΜuLAjOog p [T^D3DèTSbL'2ïzE*mBT|Da q'p</0%EGB,vTMz[ ,+ʚV`Wo h . 8l8P@aWπ;Vn;@E eVR-.צlaZt<2p/bz6`S@8~ҨaS,K? DTAqyx,};8Rmg?6ή R*>ΜzIa'FZy@nao6p4+|NE7 ('6mZJ}'!ϑ֋XaLVד L]0D|O'<tEA)%Y:@gb4k AU 3|YW8z3}5CwuΰR:F -7+kƇ;+pm~loj*a>'pDvXƤx^ P)j9U-*sBZz95=Q[}y˿,cpS<K΢Ms{B)|H'yu=s(%E36YK^eǜ0kO%dS:4GY}Y!fbb.^džNyj1;)mAGw}3^vDf.SF,ʘҴCүfQL_w8VӌEI:_rKm98!hӘא8> Ydpw.NQ^N5.2ZWwVOy Ω;HW%ƥUwS^=ҏLTX΢dnjt8.*ryHYKNIr6%kVңיprl!.,NiHY 79:{?3/Yqs;3A!:@.ˁBVIM9{,<>:e]t8@kbM 2@[[g'?âK׆`sXmq*3.fUǮʺ2֫$y;VM8Vpx#7QJWhӍE7y[E[ǮpQ|u@['|fgB6ULL}7gbM_?OND+jILt)4zxehBln*rKSmlS!enaGpZryX@uo`ov}p!ց}`s/G@3. 3zx(s_r׆[XuSZ3'$3mSeTR#Kf_Rkx w A1E΢HQosY2SnA)ue]ӣ 6eNôJp.j׫<+ur~ƨ3>~X}zCmʨ%Bˊ;;aN)÷ ֆ?mNeBnnlrc:-y-DDj)4/$N):FkD(tcJGVK0%54T.f #?V( B'dש!>z]G'k6v Fþ$xy=2:#R_lƣS9W>c|N UhY 7.neT+5C!z+U`DG9`P$ML.$V?2j*0eTMFd0M@uרS%) e#:}d mSQƙB3##zǴZ5AWj}:7YG}hh2ve)B(ZҜ5dl<RUF(ƆL4UCΦSY7v,tV9995 rˌӀ(x@eϬ4xfR72 VDH# {b60;hT3io=uˏEs[ ;dG@+7pqyA_jm{t2xE)8mtE?aSbVmPWXv(L,kX*j}r4L*hʫ+Pkd5ELӻӟe,Db1dzQjH@gPahvM>2;Q[6I0hiWYMSҤY JISSoeӨTr%Cqam:(ʭ4f=ViL>W3zpn=d}v8u8dDDrҜ?ghxrE :vZ yH֊*O=rmxYg'A ʣ1v.˦{ljLP4A>kh.WO $d}-Y֛RS(~%/O}Lqg8H'`8Fx,`Z*׆TD*QþK`T_˖iGYG~+_Dyd=˞{,RN0e ?sJÑ^~{trugiJF+TiLw–__;8,NSR*lt<njk<]V°,k`^ G {fNs6G6wc[2vcpnDcf^ g; gK>C$DD! Bǀ$.<.3bP45 v O.ˠER(6/BvQ0i5SPOǃ>zE({*0(D6VD^W'Ln/7uF!3˔N?dWx(zTd}{638Tx -d:QaHg}.phh XBpFZGe{>28h?@AK]E$֝2 |'|fưPXp'fc9rnH;<idzW *IvG9dM3[,-kY B/M8$p`b%+PTʥ~Sy+%vTu ]6ҼeKQe%JY2g`qDπ#oe`9+y0`HJU]Dž}x I!s7cwҗ pg) dK_+UO!AVe8 XQe)joU`q(u1Fi})g] d#dx+QU>EsʐUj pp6SA1*10Eu;Ǚ{Q%J]TH%iU7_Uk]s5@gAy7us=GTR ²@}ÆxHG##<w8Bz//-Tzb |>n9b)lxaB#GX'5Wʝ]e'V,;{j]Ψ^ױpD:qIcA9);f:Zsh0mZuxD*Rq%X)nU~-A@UEpKʺE6:,1 bo>=Dǩq1pY`^6OU‰n_j0#*BKE2Ρ91sa]a0TIq`0YCaU]'(ϓ6FWESbZlʛ3Ybq,[rz(oQS(o<@JvY<LQHq]Qfnӣ dpnl}Xw8)*a!>dg{X df0LNJ6 S(q`.RD%eҘvWe60ZΡ]Ǩ7):qw -kY`.%W`z'.%>lbƐ^ry}iӊ#U/Pe SwNS9AuH˰j$a;g-<[o;k( i;n.r(r[tu^N16-AA1˥Uבy7Nfz9:u3c7'd^wR8r~[Y-vq|ʄ^n;R{V;l[aK^dd,Us[8zqSװ|§E]9eSsO.8xƼvWal|CÆ-A02N7+?{z^3EYE4Q~}3 VRhEEqqYj)=efw5N'B34Qa_|Ӎsp#TcR;Hbpƒ8|D[6r=$InjΑ4h_oƊnl~P9@O@1nz4X!rKI<[V.L3E3#7-ÜR3lYˢny=BgC$W*i/gZ|ǟ>dztO^B(˲c^}Ƴ kguqnZ@5M^3H) 3/7sIEoºCqҎǷ(+'M)N4` 9R63_DB׺VdJDרX1@HpmӃ4k/6$64ӘC֬~<6n4a)[#5nIʩR]DL2d3CyǨ6μ;)hwt|3>{$7;Pq.##v}IgbbXN6 @@s4F˃?s?n4()BadÆƍRKj9TbaS0zʹ(r˅[il(sqi /y@Bg`6OJGq$l q t.Fr6q)IA:}u_^ XLm# MǨ{ON2zlqw~(,ξ0ghfQ1T]e/'OQg42tVllir7?ai_Q7t W/WbJ0([J-jA?Q/oKk?)NDSR2M*DcHLT=G6:;(.-rt һ/҈,-)6DAOHga}C ט] [0%Dv:-iCNa/Z^d=);b!b109c~X7ECQ%nMQ$,nMleM:U5l]sǶƱRx8% fdnBl֝{n )PƦmL÷10*s0šxR`ƕm(biZ?ϥB ~1ʁzPLfBtv2BP9*Hj}.LmVE8S>hG <FxK[bT(-E#hHq)1˅LefMJA[`r}[`1;yna7WlHSfY58һsf׍~:O4f+8D_֌=:nϦ%@ eqi<},fyfmCbc#.%R61<g !*P :N@ǜ@fƅӮERB xNnT:LWQ3֮2QkNs:װ1'M~9%_p6iu6> V4o;=K0uxTabal ƑP׏$= . V[^ʛY!Jf :6Ǐ!;t^Wn>Z?^VU[zjyqX>Dk7d:?,CfK1X.5˨2 hC~^8(-uo9|^:~yOp<Yӫ6;m3I[eg_~„K%eO4vwH׷i=:q97#VdF?s5D<ZAYIlQaVwIejrJW'$BN]~02gsӚ =R6+wNO2j<]jU9S4/.O7qDײ9(7=V,= g`w;4*ônr/NbsʯG3D[P4W^)Uy0 ohBR7t*VtHHHa*}סkKqMFeywGg4/rƱGT<3+ךhxmֻqm>Ksc?׭?9YLLwPӀ[^ËQt9,ˋQttu+cg)z<Y X2zCO,HCTךM>JSqQ=wu(8y˚5yb)QY-_?Ϭ_%d _sVR˼ZRl'ZI>awυ1 UwZWlq)s+B=wƴד;DiNrLӦ kDS=!;Yo)7AVR>Jr Z0bz[P ,: qm6(lqeӎ350 tt#P1mh5<oh{ >˵r+G]m]`Q=Ew<FWƍqF,3֋W0jtP2kK?Hj˭X)/d OG;/kׂd)%R6`vcY+e8'8<wn;>/+~מ;V$KkR$p}m>/4YeZ {:wiTdFNq%Cyrn7lv97d[<o1uaֈQj{l0bAf@j~^tD$U9Qq/=)}4?6ifI{h<)Eu::x a`+ =,2 v)?p|JnI>mELo!,z 7r|v%Bom0'0,bdwcr=z҉$!uvjV/Y)wc>ǕXkG `)u,Êk z2 QdgNU,bdgLOlIUQQrVcLIXwjlmJn ϰ{ MQx$[cwE  !E+%H#kax>g¹*dXeZ 87OO-Yqêϫ2e )΢8g5tL%5Su5Q=3%rOΊBZ1f:cJJJbp6M3*^6TUDO]+kǀERRZdbtg7-[6:X?T5d=IbGhlL~a `;hb7tRB=xOji 5'2D'dg7P}0)n ҔV;GOA4IƬ~LI/}ƚZkpeYXU.Bxjwm;yA}eKo{U< FJb;%6҆*~ H|87q:UkZP_r7Cb0S'H/ak1x*LZ#>%|'E^ ¨1Ti wÞMf f-AN 6d}.N VScfxJGDg6g65'f{oO7ʷ|rhes.XrG,֣6!cI4Qf]zN6(|h[=˸g.gp#Ǜa8+1ǸzϺǽ.Bm<כ$#}^xCx$Z9, `֊;Ja}TcQ-הvLP)UkTS/8/N6m_rB'ʢbyjoVc3Mc,[)<#{.t |:Efaײ2bjN(-uu/CZCƷ]P4Vz6HQuY`DˑA1L/ W(E^6Gwƺ DJ1W$}f_(X=[H=Ls5e%@DnC!En]<O= q S{A+q(!o_+eǠm}G`lҕxGA/7JrӾҞ|ς@EST+Ix5<Q_·x'O= w BYD;eQz1ǁtcX,}`T1h(,a(eRTRdO3) JR$OE$b6Gˏi P֍,)I΂kE`]wq/7ñ`-K5[{ F;S-$FPXvJ1agSQ`/l,EgΡym#2X4wW=MҬ|y n~El*3*CTJ_o59 cklvz:gh-|No:ҼoJ<OL;)^p2N!U@|*p>ӐKg!ezpc8)N73wR'iglG_OgM=(Xσ;~,$'EAF}x=Ӻ WSMe,ʔ(HdEFX}`UHiu]p=GN_1mjy3 )taҒG%3 ;~'e2k_^Ln[#*hv)UyI62y?^d]x}N.Q9>1q9 ׯM`:z?ҷ)L>Hq)m(q=9-MG3h~+u!R+mא-<88һg}7ʃRk4},Z$77su-y4dכ$TU| jjPU o`4ң-d*';9X^ R~ wuF|N.D=h bǜxCR(LmyJDgyxUƓSwU=j0%o$A*e*מ{jA!҉i”%;W,4w~w t4%i5 <nlҎ8 4)[ RE{czF2be_EˬnA4jE M DHj+'x׀0^0vh_d!mw2K*vRǪStS 7˥ƴYҔ[j!+ÄӛiqD9;`Z[~JB~Q4rhCKz5I*m-Mo6h]Ca4!qG#ycySaIUjXfxf;rA08!AOfO/X/HQzXC/Gxw>lMGdn:s'K8dKTmָuwc84vҍQQ%rl֢DRduiFB,,oHh6|*=Ǫl'xʢ108Xz(/{2e 3 ^2lZE}_BXfOv;Zj@<q2M B-R_`Ӂ fl'm(cjGaKjי>K=52 Q^(v+O$‰#k`@`=V0|(֎Yc'!MnjA^H$H Fh/kÚzDs=S8*ҹ.YDSPD:]^3!Us Uo,$>6<u`C[S»XD5eXJYFg'|}~I,TΗCJ ?Hq1S.Nvƴus5~)B>A[1PM2%v+}w'FtGB4)q9fC?Òˁ9@ǽIƫ'3#Y*EUoUq6oEwbl 3pmv{bJstV#?<2aif_^Yäys6LflauG=T1(M|QCj0TK%6@*69)D!uz{1h#2Pr$˃ ϱKʠeFQW`OMˌB=Ac=V- ˅ï)Mư/4VwtP^+*a>W1L7EϑyZWׁ+B*Xx׹4 *w--α(xlk,UAjDz$s o6jrvS uAO-kBŸbX4=S>KZ9hv5VKYIʶΎ!2-uCˡ9!]˾+mOqiKs9Xcd1 %-FBa}D׻H#~BKW'+mGBvo!E66!9_{wR_6ˣtstu hR'Yˣz2[Hpq:V6}bHy8fmAl]p>O7wL*N~Fvx>{?t48PqLt?c[GHΜn<z HTcAO7?Dz=hnt|> wZ i; G;(y<[c׋_k'e=lʰ{ac/A}s |IErX99nҵ+^Uj;)?8v7JFNO(RH%U9M@=X$J-{ (M5F,*NPcf?sAҨhS|E xtgAuL%g@G ksC /p (1{4<H7:!/ay_)X^*[ QjQ|8an!S3zy]8DSxu#x7}_aLbs:%R4=Pӌb~*Xs q78:lcz..FjsjA>.$DW{bʣpG`I[@¿ /Ír=<0Df|Ʊ,,~S31}s3*•/o҆ǐ1iÊ%~~)d1@F)9cI1?#Lyv,Ү.8G`Uxq!˷'>{x!m`fG`HZk2X.k]y|nZ_zZI)uAq,k^P^ $w2F,/kS0KŸmMrgKpLXo N%>WN5W;J*(B7-5p`aN4״?ƟntrG*Z3$#GN`]fY1AB hbd=,pe^RZ @K4 0nPT!![A nI(9T;(fV[f_>L˦G#.@PimGd PS PX6yz:)t)dh 9A?bbnj;3Dz;z{q | ~d~>-I_~#ΔϷqӮ{boaׄ@VQdsLaoy2 mD@gBIRux26l%IiCrӆ =/A!4~w:*~X-y/y=q}^nVVuX.R{Rkw `jƪW,Ɩ<QNUʤr*Wn#*vQ{:8ִVzynSS#˯4%9!Ǹ )%ZV/*YG]+x~Q#҉*d*CwϠϺlʦ^(Wb8LV!‘xΏp#֯>-~ˤPu%I,gdsknuc4uf`VEΌ@-7b0 ^@, ? SʮǟLb,Z@F6#8QZ-ev`3A+8(Z|b9ǫq:y |Z'0dMbS Ϗd-WT#E'o1P7<b~G'$ptG* gu'}Y@i#CEfGlBA#R-wT * pg;T$)6tƌCr'^zWֹeJ(e4>ZYgf,p i<D ,6X3nQ5J.eO`XR+YDpǎOn%MUwk21bYvZ, 1Ja3ZTƊE_ g[8P456Α=*Q7y!H{)T :M,y,lYr|T'<,TOFs@Dt:l<AzTcl[{vL<Tb'5*vRCl}#=_yì}NVo҂Dw~5e q?=hX? bNccCzu*˸e6O9RD<ZfZ3Ҭa€94fs%CʋOV;XR%l8da YuZ?KKzC}J <}mØ8O,cIӹ5Ӱ9/?!Z /w|nj95'7_Z Lu]?rj)ƖwZn[:D||(ÛdPBvVrT{D4q*GuE@ZKd~FG]=>Z7Alw{+U,Ms<VTIzo 'L7cOuCy53-67wt{jj_•:Ïg__ ƷqwyzA1o?uXw0=-ׇ-/ǀ˪!s:yO0Vw$%4Ӊ{H(E$O˝˶hEBdJa2<M$>D!}s`vx¹;U,eW_/h_zf50OB>YDy|-lo]rYiS֭!cumxN 4Q('%J?oßZ+rmFjqO2Ke`Pl31Vo{: 4I2Z9k+WNmT$fh~> /5FuNlMώ@F˘ !j35BKӢ XQˡ4G53B8cufB3pC}8o r~/_q+qC3 b5SQmI;rKlNAʠ>R hq~sAMm/1>pcSϮ1=ypt ? :Ƨ|tҼJVXp0SbYi/ K9U5~,`5…Gpd*A-Y``<dZL=è<f|633 ,QNHD3ϑqXM uӉs q -%'K mK< hkSj!d$+;xy]<7<,md2I_/˸3a+VWSK,UZ;t2 !A *;Oxj|I!^$lLp֥uvBf^1cnm{l+gϸzˎ;2{4 I-Vãu:'-f5*^e:ǢnWQ%1R%jBjuTX֚.lVJJs#ZYΫjs˘TN*BNeǓtg1]$jK~Iv ӷZSâf[ukP1s3f^;Σ0Zm,D$)k~:2@4dsMd¥/Y}G9Q@E;0swQU*WP}7:ω6JZnp !vw3=cA׍H5h-SΫ3Ɵ}9I9 {on#](eCDTƽ'aWR0,p.2L*Q<dVz8 Fʜ+p<d3$Z5Nii}2ZMq$ו$/@8OyzXhnǢo[w3QFGVr}~rt6b^G(J^D=1$I׷]]q:3W˥.#q6+EQUƲC҅XYlI+i 12{]o9^J21+jl™U4uzdXKDj2-NK sJ-U/]gtX:6EZ5J*V@<8F!:/tCwØRNgN/H O% +fuOqn.ccrר6~2/*TAbdKp6MrR—IfUN ְx54 1FHyryA7!ZƒΜR@FGpYc1Kqj?Ɖ)bϸ8Yr5$s,cZ|O?t e5#+pϰEx;Ƕ1Bsh0IǷnj2a'Uh:G^Pʡá7T [)?DuXMZ,@2$ TX/D2T,}iB>˭k!KC8E0R**sSI DeF  Z ?V9jF.)naC[mgSB9Y5 I+az#f˅0VtoqI %-ӹ=Ϸl/G+3ιYGʎ6#*KrZLj_[O=`C a]?$7VT,/QaSbj<G'$e)wQ#d( ~]DA(EG;hYCy1jMR0|V`7J?j{)eǚ(@)Gh1J6q<`ej:p=BR2J08+8Eo?/#<KYLu[3Rl )wrnQD*3-zdǐ^S6Έ5vP9X…Q6T7OzZRVi*j }hPq0]sP- 2W +FNAN{1e8yKnN+8ʉ9;A@;Xbtw17l1h^[?Rs5^:`[^IkZVI)724,:<vý %{Pul*CCyvʟUC9umT~/n]= ;[.1֍]:sM+u+R>rE?ֺׄMS_/ ZW}cWX: {TqjϑB[OoASud`AÚK9s8UJ=`INrx=ʌ;j:.D@)s@Cs>kJEaC>Ge XeˇÌ3QƜ7ҁKFq0z$LTK(]PIr ._L*6)ChB )$?ʬOVl>YBO,¿75*r$++-ƂpyrNj{È] 2d~@v}, P?C,786ZJbEϰ]j2h҄#,d;bþzFΐiZ]PpzQ(Em;<T@(E7cEEsLiW- Wg);q-)ED9:)`:rS0zH dVr.T4sdKf!Ln%0UU!z*ץ-hcGnMT@AF.*@Y Rm Sia, z`s_6GIY¨y,dP6mʌHgZlB}uΣ k;/6*!I-b 0Hs({ק6V'FQO <^l|Ro[ Ua:w=XSׁsG+_:R΁6zƚf8{OFqIv<Hi{s=-/xjJ(+ CKBrVin9#K(4.Alx^x1H]ˢ;xLSp+s6s_U>h˖O!W~vs?ai!LALE,yt<<Ǭ%`xu<R^1ƿZy~HGpKw~R{.,(jvb=p~Ax%nh!bokd)eZTCΚa_/Q!iO_<εp{2i2xc 9iXP|L{ > B9znEjBn2s1v~/7qRs `K+avC0~X!qiq0J|kk1¾s0!!QR *VVg$XViT5X}0tp4Z%bRA9*mΖhkǕVm-.TÛA;Ǎ~ $ur*XJ(rnWDCLk^YJ4c9Rӵ$U/z^+kB^rB{vjx0cOGU'jkMƶ_P*ZUn $M?U T 2{Ug1n`X9U4Vm1,J~{׎jMk[ǥ)7GQM>t1+zhM41PGz ;EezҩArx4Ҽz<N;V+{,O% )m$;+Ky_jE}igze@<>K@yn#Fn_WU~imWhz˺l~? 6NʇO;[M|,5ʷ}F~[%%`5ʇkù7IWS7$y[bMHOp8gt82_f['Xq JO9h~s7O#{x8WCg Ӂ,DleC NuvӠLvs*m6C5$xxX:^Nz!Bmg%CZb;bEk/4#~0u[֋8A>3lG6fr*~u(Yw @~o'agQ:(C^׿HmNe/O{SMoʆ-G]D<K4Jóf~{?Ǜ mG]D> ʲLvFV[@7{FguvjE7 z=LNFs#~pMM0~/s'} 9v>Ӂ6{,ebf+ LҾZqku} ,c%uʤN%;7pt~ÿ}8g= C >'(Xby=:*:%d{%/ϱ`sp×D]Exgv-^ 4->'.+3¶*MF-M7b%DMQ`U 'U™RyC9]OG;Ӓ@']; 5Z=Pˡʱ6:/Pלji]iq^2NXT[ 6IR a/s!n :֡ð%E9 TRJTWtPz$q`dym>#61yYί7^CY4oƨ1k[hGC]xe3 o<oKY5t _(aQv<wbI3S]#s)m- ֽΚDdwM.:=W2ʻ]M*X#h0wN Qpϕc`w[bǬF~Yee.5l]m>*j_ MHg~4DhA*>o$XWNy90<rN.m;%(w ;*WQ2Za<DsWP`p u6ӀT5p2_I/r+_~2tx!,0{h.:<@=tgZVl~$2oLZizX.dChIp9Q,v!p+|hqo!`dUu*ˇ>`M-roTq}v7PqDlQx=z{.#p5pA'1D9c9tMy0(+_W,=@(~Bi$jHEi89',ceaOUʃZBBaHF6~NVDqS8=u* <htmCY-S= ukӂ^6tBX<XB[A R,Ң~klå0{^'%Kbp9ǰv3zr`>XAPsVaaS2` >AM}`KG2WGT]Ǎ6à2 +)$!D=u80RzNS!ZJ/@*Ҍ/%1]gJu=R?ƭiTw1[a VXoυ;o6[8yG*c>e}v(Tl)7#Vq>,dL0(olU.gUTjzd g4s%Q{qJf%b1Itb!mʱo>v%Z3F{:p ^-q{v]%ixMtQ{T'rn@jvwNYDMKK ρn eUë0ϳ*MKõ5f2'wh}N9a6Md_ZEx?J33kJO >RXI}g*ˡCp~6%EHI'Jl_d1 #26Rf2@e' >hj$5_LF-ZZ}U5 Y}d[]o<$59!`GP`qHgm'֓zrӥJ,sEYQjT-!N,2!?FdG`owsco6ӳg+DHc*'b%t ~CENHkCl$P-o`w ^+wP)ch0)?nBnWHNˠ zʾpdžlzl>iE=OeQ6~O$Tndz37-{pQuTAheiʏx'#J(; DL6S$1#|]Cj5o@='N;S! </OG7Qdd-X.LlB(b}v?WDl6N#R%7i #*b3boοd NQ@Xr)~Ho^@x{>8rʺGo.Xt }LnEE.'  1q?3הbϣ4$b|.)I~Pvz`s{96@Etj_DaHdO7]RD78LMp#[9sAnlF6zOY@TL.`7Ɯ#K0(#c,zӨQc~ u 7VBZ yEұ4n99gqY˄P D/m3aH-=)K(aD~2$fa@rUtq n(9xn!/Ív9x@jh5c5L8qf6hZ%'։!QQ<Ew0nqcx)N!I=s1,#pwdzG84U_*^EL Q.UOL+(ʈ j$3J|(2lN>m _Tp)I56 @5B%Ggp@^|4#@#^%=~3BYr3hH9[(-h`a5ve5s>PPqLwc6 [ҭ6ΠΩY963-APzLi@V/=NN4J4|/@dY~qDm4@:`RK3m;Ǥp1 Zn?RHv;x)α Äa[3@uQz5tTnJ/bc+|=V1i319b7+hnD))9q(=@'Fghi68L6yt%5-xN־`(ҰíRAP-ej'3Xΐӌ OF5r Q2i+^D i KY+ (b¸[x*p3.a xs%S hJ.ϖhYVQ2_RsX'/*)A^VRRpË,Rj-=‰f_6N)6֠`}5`ZPar_Ӣ$r)u{F˱$[MIyyMjGFa[U7ATAnRH-}Hd'gVƽ#;9)O(+%V<i3g{:V0fr$o}[Y;O!3GU7 fPϕ(]:i!=bXnUSGlv׃x4t(>P:;[t'2}ƔƁ,%xuej; `iYj)]R,EdQo3+vQ5#]g/kFl }>LsB#NW<F@v:v:mE='|%g'4p1.iVedloW.)ï:uK^W:(J*DxK:LJXfc2~ x7kwTpWl^)k:JZ|p~9~ƵQ:ZzC GOs:]phǍ1 ʢV:<=Mֱ$(.+2](JΗÙf}=2^/*:an[Z*N+H92)E˽ Oj qJcxY{3TMj-;09yz1EPxp|ZA#J.0;qkpt*dlRaFY]QAF:0A,'vϽj{ 3PEizhk`mbyF_W`5pZϚLϒEse,)3*bVK<kjM$F(*32l N<8uB*GfECRmf4 MiZ/6KRMXW{X2vΩUD T0vlN[0:mDXDT$TKyy5:}։6DX3|^#K7 p}a֙. OS98jӰׯxBEd/TmbӇb*]f](KszIEǜ{œ};E<cK aM4]z F+U/JBJp qDMoJ_XG˽%ӌ? yqGdv}}:/mƦE[8SqTG GÒzRk+҆ץUtaCϦCʣ</ΐFrWy+@ӥeqdkV*W9ƳceB+u+-f+QceU^BZ2^-Co0vU2L`7bD!΃ )= '?xeh*s 8!UO/A[Ψ<P<MkO5-=p .i'o #!>(;pdR=TXxֿFpkm~M#rxR%Go.HXp~'9:HqtI+E~f6f[RPGJiMA$dv:;_EJ!ò=541d$X%M$0qC!#o:VZBQ7*S+a n-Ymg^˚JP5'?6TOJ^jgJt(REj//KQtzYWoY_ ; $$ (E/ ӷpҹ v_l(=l5O#vB3((7(eœ9˄:~nX<+|k~s3PÔp^nZE!lƴf/ Ni !)fSYL @ Vu^0abyu=|rHʁw}[ypdU yl# 2ZAV5HBOFDר?6D.g PPoIKP9B1f'p-wPMW(WP^I+eD*.$%.:w@YQΉSe5M=G}ӝ(E^#K1-@֡#4Y('B+ˈUfiaǘ$G6:#l8%Pʑn@,9ZpaF'COr|C!ýP~NfGZ_?Ab~—A/[H$,7fl=x@|àXFO0p7u_b|fq*vWn2mEwkQ4wln~{R{j~lϣ5GzEKfB~xh{VHj j(Ikk5ax-ϵa;HHlfPhCya N~TRF`Jj:sֲY-OW`˦/!S>MD0YfGNC2F6^G8PMdvR`}]dlSOC+!ZZ*.f*bF[XIBpy6*De9àh7dz)BQ@WD5%by([W7%j jsF06tM!q@6d6έFlPvT+#S$!pE3>֍A2p -_mÏ}iDS=T|{!15Y7(}tc:4( ,dz=YMe41ZcÁ7~$I`ƿ}xP=,hT, 5>J6eQk!'U~p~p }OvHc7x5Qn6xqX# o]ʋ*˄Y1(F-{gcA(džyT)ghH8Q1{g 2AI ~ƣ>At7U|>>hY5OcdOҤ67{Q,X5'Y(6D27d1;~;T@qfFu3,a]4/7% ]+X64a41viX t=C)'ʻYu,E+9W0i|jּl[[<atZoviK0S .YI4eW7GǛIQίƙpk+CLb e7)D5?ehV*GE-.!.C yxlY.v z[j~05=}),01b,˺ω9p AZz Mv n$TunQk; Gp-Ih76ge|SQKGoh(z;9Uך{T<Mt{d_U9+eˮ]J/8W`M 2'pZKmNVznh~^g7o_Gx_HCˣ6R :~`RLjϒ`dt3U|ooO~=v ã'VA:[+zךrGIjpz5GUAp)#!.%zq A:|҄]u4i-c66#R%6u+b+bpsWv g@QB'(bEB(FgVʭH*wJ[)8Q31Q 1-҈_xRump#[70e9+n%Ty1n!Ni !%Y>|=aq]Û'w+U]B)6co[QmDjf5KeϭW9;@d%{,Jtc#{MKKk|wVlF9WǖYƬ1XH?ǚQ9c.E7IsƔ%sQqTf#'Z^Wg7{m;##wa=6C.gM5llMgWҝFz!y{/9b[j`]Lu)ϡ|FOO2ZEM7SeQ] W$7lG:z~ΏPr>ׯ7VD*=k+V;lGϳ J TDF˚Ӆz#3™k!X6'=<ǟP9rM!tZ=K/l8(~f+-I+HƚF RLJha;+^g'hAO/ER=mpwוj(/DB7k!<4ӠljNӦb4qTB`^-7c$,¿.7;r]~(O˥I#:$y<`Nl1a-s. =Ʋ#3?0Td4iGWlv)lbJϺʧcD8ZO7V}1H :6fMflU҈WL#v9Bn{ //cq3>br^r4j>nZOKg5oқ$Y0m8PkNDK^prluDSdˀ 0+e3{C[t62_=ǫ5ZUwU HU17.lUZ=Y*ҫ; 1Rӑ2R-HgFèj5a{7m{^0P>RyI]y?VV{B5w|.)F`C*4_5q9)fwCop]d|ly;ӽZ>O#^9BwLo{CL60|Pn{AA.e.e^ng(~X#[gBD9{O%9h3? hzDIEִ73W] ǃ=<WwU 2W1T?.Lu_=Y+6;?ƱWtRrω/ʅx_B/׵yU!Aץ,(|he{`<pKM vJ'O֩ekv$$^VRLjX aW%t3KOm -dsx!p֍6|_y(X֒+dQ;{;jrFmyXIbXV=$b;ze`. F vQDdb Y}7ExJ5{BWy>jZ { Ӭè$@zeb<|Ͽ<G=6ʧq1mP 7Y)h!9PO_$b,~$LJc*2K|l~<B07ӭMϬÛ_iUTm)_T_mmL<:m7'.O8,pKVMo{`eֵ¾Ҫdny<HcKW@w$n'^XD(I:*(R?OUS2Xxsh:EeWd% vV<hם34yʼT;6L*Ye;SD֟N|8B^WgÞLey{!WX+f77(zff~ƕF6u+o.m-Ψn]Z)4Z 0FFWP8p9x/p.yNZaӳP@<c;B-7N Tz[;;T: zw cGyb1Yzd?K)E~=XlB<Ds7RqQʟƠGqTmnPmL1CW#,2*,k.eOK*B@P ӭ.A(01e!m%uӭ%ŸYi6D(aTQ'f 5/-NO -.]:q{*hHu:WN.~ORMʗjG (i׼w#΃jh|]T]ˋ=|ӎF<{L>1VhKs6;AZV?tj],zJ{j{UL9 {M,sƅSifם}_IEw9-x4=k$*E@EezUq>>{kOnJ|x??g#MHZˌM“P$dw}xo A}$@k.uQmNuF3GaDwzEp w^Z7Qd F?ϏS׫}lʶ{X_ֈwD:g]x-6AV]ΐ2#</N0@-Ip׋N/G.yY/=Mp'FQ(uECh*W @gfu9ýn/E˘ h)U;x~[/iVDʞ1I<PjlNrxo^_dQrdhV~+<mv,F,qP8x))ʣiQ=k@pb<R]o`vx  ӍJa{U#g 4ӣ {hhjpLJ)`P!.{Mqh ={EufscZISC8s+SW^o@GKF.@??n@>og@gJ*|I#.5hW8qI_=A9 :QsHD m*n 3.h(91eHGOZDW@1tu}g?smάdPEYm<;MGs>I UΔ XC9>}zoO+:n7}vS_XTTdL@8|QsaìH)K<Ä6'#~,:ǔLfv :pV6}L-ֿNNE'[rJK` [OlZ5%mpvA/cAw5$Zʍsx  qʺil.r3G JHDyZ`.19|roes֭ba r|gN:B'XK:?)PsrQ|0.bE>J7PҾVRLO-A.!h+(tBu4y'*J?ק09N)BπVN/AKECdCZ*tr'q45}:;A;4/L,%KD-46>lNi;Yǝip-wk)-q6hF1:`B(+Z|eQ]zk+Ǻ/961C9֦ogEUy.<m%(wV²Nf+:׊pK92(6C#0u[u'DhE-R./ǼL^(E; D<HOYl x/H39!X@5{[4/_PiTQ;Ydywr F;[GFico(Δ||0As`~ksM*/P2{yS7u1.)| Pq'_66wwάjg/SWm/KOrjs4wǭuÂ2lƍ#CdLpr ~wtKv>tmxaweFL'8[ʋyӤqʑר4hDZˌ0PS)G_CƉ.D[*_nk F'+6EGkƈHh :׊m*0c( SA xXJZÙA9uT{!TDZGVhX{}JU27wLy#eNsC,.r<5K ) jCN]HNMDGZA:.I5 3mriG!J7d{h7TH4#WVǍ?:ӨWiJWeU=(*˪]oeD@2kh.7P+9DCPT™=0πjT׾{1#Ƅ5{¥SVp_#@ c@ (uz)2*!QW |r+Sn](4/v+ΝtHS?1yn VU.JvBZdžfxK2FM7'xL@ t lrM3:*1H?$;ezO_Jp$0j.C7iւI'gF7* Rcjt]yT!sBbc>9- 'QD£b(×ҍA[Xp0yE>g#ni{aC_HX:0BUic yu v-2jnʳ<xž*INGn-LA9 J1։VE_VYh[!ϱd~mM{ÛABTY*.!8//^kJpˇP(pr<sm@~gf/Xa3hs_*jb+։F6FW?LJ3m Ɵ[I$E<Ӏf'Ұ b4]Kʸ9!ƩSDITX_P!>zVI<m`qaunlb) :҄]h`IIKztkI*PM ǃα+X{gCǝ)AV]µ2gו:$]nbZ~()S_k1ʳ!> 0o@Ʋ67eMAYF7k0ʴGBVWqΡ.BE?nH zpBESҠSkӀoOo h6,%s{47_4DNC#D[f1rNkOrҺw}%<.7661qlSI.*Fl2rJGB10[΢=h62QHojK-]H7҂xc?{I]#v>ar4ӾCv57iYU!Op{iEk3@{suf:%Jҍf ,¸{[Ӂ-;COûzPn1kExkhaHI.L¸BU:FJ1~StƖx} þBTGc/4yQ0sB HZN-CL+X,8~7`-[r6xʨ1S'DDfU2X/o  0{sU/ESfW_? J0//GG1cI:[:|rXp҈ҋ.F=|)Ƴ`XӞeAEw'u/pmMGX!ϣ9Fn@=D L|p1y1XcVSLxl4Hcn=hge:U(# zQTu҄rHfϩ4FIY]aGmX4#1(‚}*2#S, oDT4NkA7iTO˿x 7 G2VӂzRnn6#RpaҞC$Xd2@VYwV(P%MAteO{MD>`RefEʐMƺƚ$JW5O(ϑ |a9^΍=zJZJ3. W-CkKCE`_<B~ttUң[4njX<p4BO|Y”qi|y,,s+^9·/;yrKoLGh-0?jet7' !s*kg mXwVdb.Yk(ϚƃfaqI=Q.DL>:8m`nRpi+K!4N|Y~+rFrj,%E }m>“Q_]OrGiϊFǂPZb-k#n7w ]%%dOb ׹R`RQlˇ>SY2_YGy ׿F$H@IT^]I4baJwx]xXTϼ7}]+l^a$>qGtCTӯsƎq m8E_P}NQ2~+m=dno>Ok{~j<,t=lmgt Cq|gʖ!#WK+#%4-bJ+25;0^khxb>/U/%PnZu-m{΋@0F8E.=j?{68j?Mqc5dAf:t]2|BW^T>x-1 kGz`bRsOƅ1z4+D zY~SaXnYrϪWL* BMQ+PVj+p W;/kc#Ho79d'Cg7T42jlc# n(R4b0q4ҹp|jkYeϡx7,l5S(GGx4(6ipZz4X<> T[>64`'Z<Z>Dy2 1QL $y2ck975=?e9}8M`Fs<yTU}vFuncuv~e^/%~y?}k 'J FohK_kzy-m'oY(BuEuN=xAM2JtW,,G_:V!>nNz-giMZrU!s7E5myjF]n q<v1<'bMe$%CEq4nevpU|f;PD@dK:nNX.Q |*K|HcNuZH-;R}OOa-ctWQ .~׼;VFo/gӴ{_HeYמdtY)rN>IQDץ '.n_Lu %J/1VCzK5:eLEJSyǛ={Csc}u w_q _/ nV`cIl@s.0Zb~r9-.N Q*nwVO=85:H]mNc,G[VW7A6,>w2@0!m|!yWUvtWpLϖRHGT׍ g}@M:8ע3bhZa0$0LƗ(dqIWCcIY7 u3t,UFm|ϔƕӐ n](U45r)k>B8PI+K2-bJb44~);a [Jn B]c:1%S;'.[Esf(5l'?:$¥42I ά_A0ztCgv_Ge}=ƜtePy¿$PVӶ0[t1|_f!M<8~ǝU)i t_/ET/ 5 ms/z^^!8eE•ίzӹÔzNjl{ _zxz_<- )[ιkVM:Ia*d^C2je{!t2փ5NC-_0}R sP9*~B!zZFaOOQUQO%e%OϤ0:{_n?gn~sI΄,]Iϔ{^+%H@KIΦ>:`eA d[FnZӤjux-C>T(%T; 5i1J9hh25ʥ$Ή#u`wT*i/Is4s]{f~Le J*tf(nvdg%a,J?t jh<}bNh-|!ewW!zu/IXEQ ,5< vb<qv1qPZ[JVHVzGcP tKSE?p-![cGwF׶L>OϷnWt`j ί{JLXvUYE|b?>DC@?| Ad(9y´%?Dhh!>mEFpO7(q: ˆiҟLzCA>Bʘ`MBH-aclxyz }h/V 3ca53sq9Q/hMq4VJw#wIםMcҵB!gtYK%rҰ{4DgQ%˔q9Ǽi[RW}^/> w,!ּp$gUFҨ)3_Ҵ$D *'M!-a)H=<RL Yeu!NS [[r*l0.az 5˳U ur:'Y<GJ!MHWn5E=~ B,9yq8x%i„b0wFY{Ntq4 SU[#rm 'qX%n!aLue;%c_ L*!sRE6KYZh`z7-*0 #X$V]ǘw1U[Ƙg>bY#Q-=-i] ׊[ km*'|`b[*KǩeW]db@w5lm+ƽDn)7ה: :UHKGb'rrbawp9Oq oaIz֦ !_Fh6bӳ'^7x3֧{X> ^CX`m#*b,3Stl!4xYFJPJmc AZ];Ry}fƦ=%'IrW#j-k?4{1L+}~Ǔ'ZmG49±69o[sf5ׁ:+0)S˩jwJ֝Y]]SxtbNa+<˩ӹw:9uC7p85NP'Xoic+3F)FQmrI.$oHfR(:lDP*X`MH I;Jfo^d,iv%nEhgs^$#xX Hv~@+Q6ð.C:3R]gA([Y8}5GG>L.=x8[B.Î/ZǃQQpX9;>5+^fh;)?9v<JNOr Rh/_ˢ`.@3 OR~_%;4 2}a(]Ya~3) ˠϬ6awaYK4,A_2˃C!D7gư M0u{ï54v֯rΫ^C H'Bnj]K89 WH}hLoCoUv:u ,ǧiTT{*ejq)nhFE='Q_24%*0:ƄӁH[pr??(MhҭoW98j>by0æCvgz;#C-e*Nv*m ׸jFR;%40/}jID%8 /hpP|A'_AK+:lI;xehǴy`=?F-_tiҦb_#3+e?<?oΟap4ÜJ}Ë-(_z]<b|-C49C X`5l/1'~;A?FeQY%V@%Pt6,9 63r@@QB=yFdžbQ$)nPǀ->֐t)<z/oq_bxo/f~Ê{ʆTagόW% Rz Nw_p=}?A^y}P+^E=Q%!Q.V-y~{QaL6J$r#%2K4rtrgknw/KVFT4ʢ*!( SLzˆ;<Fc*NU$7[9yxFudby,$IrҬ%Ix</Y~z5'gToJo-<9{XG )mr[֑wWH (j!l$5Orbnr7 JAfQ7s9=%mOc;{RI8 'J 9VQBҥ:cǝOeRWi`{h=5avi*V(#>hd buƐDω'j O}Zc~4@{K9:^J yM; aPTH=jׅCS5+uw*El)$(z;'T E{I0֑ Jda[>!7J%e$Һ=Ǟ wn@{1$1h0X,i Vmt1UlN=%5 %5aW0ֳ Mh ,.TwhRe)2pX'cϘndh1ilt1hmR8S=L #{ 8!Z,tKrqN%17@gl4.IeG VP?kPN#Dmbx}wY8 z:.E1Lu)ALWbΘWXQ32#uhI<cqIWj#T lƢ<XH%!)qYR,+Op/]#nQgxmQ+d[bW5ps7KjǃZk]Ϊ:RiKM>4;T1GD!eq4A=256^ױG-f;C^joC9<^IƮ1 =+ϲ RH(LX!KhӜק>wwub}^npo/ʨg+PI_nHL;S:hc΍hoϘ3.0ri.3Mc<YN+H,<<x,.s5-|=zB8B8ALBB 6m? ?4x+sCEj% e] hPt`Z*}iCHB_(@jr>'èQ]uu4 S-`Jz~*5ңAʛ9P-p<î>CpB$u4}^<I G8gn]ʤƙA+NNt)X5.6hd+B!jF7/UwQx?Oλh;Dl|( zzʐFQ ʴPetʶkH+hM*|{:(W{w#b%Lj.5 =iYjFX (z0bfNI{W)xrR J[{XÀ29/f QDau9,E #:!4NQ3?;kTzJ'Ӄ%4,Vv'4J_lw^Tg+ϩ':!׻wF*[IZ@RW`:S2w@q2. FW 7DY}O}uYVgֻ0KOc5;sˈa@rx>%%o<Q?o΂g M֮@2z(#]i(XΆ5A3. _L|O|ϭCU/=IBZES j+T v) ת|ΣHcR'`oG_w5a˻_>z1D҈Һ0O5Ϋw#)9yjA4W-y*b)k{eUz]lVMM7/*}[s|B`%f=h^a^DoJ)CMUϬMsnM$dLdE#Z/:Dl.`jdXO7@Pz=!)yBx5RGsg0uf`H:uIjZJ%˅;>D%ƮdwAeep*JJY6a΢jMD,%mb^Q(SfE5L?Jרy U|v{mLAH*IND0I+u,.$1dlpm im^ϸ Þ •A5)(ӔGθ[Mtuq/TZjj@@5r a%X[+m5O[#/^zN>$-ϭhAD*-/w-B!F**BjI[.#3WK=#,7e )2ֽ(C95`H ϐ% RTYEzIÕjb%gSxb@ZMoΫc<Pǖ5RJN3td*9U2u<Tg?t#6ϊDljIhoQORU פô!E`_byBoADy Kp-/-|n ^~Q)0ltRI5֓u9G)T*%C,4YDr#JV% <KOǐAd$ƴ >`MvφA5XU,Ck)z9XW_Vư+bT##F2R*/h|N;p*{<B/v|FTƚ ;wHK}1ҔDtWW ,H-8%,5/2LցPnrl##5fSú_nE4n;Ӎ,UO`:`9pyϮtv!9ff1,~4tgIIr#ʐK;wZDHOD<|<ik7àMχa`|(p>6#~gWw[Ckn~{4u;8# s%1%< K46 /YVp3u}q eF1%+H SwGhEϵf6qnYxB>­d0 h=| F9hNsҟ#,{{WŽ;tWU3+pkcҗzSuSqHCzB'{Q4cok'8!ÄF^(X !%#*Pn11[R~^jE<967Άfa;f h4 2>Ak3MWax)XBtkWW?)>y44Pr<q6gCmŠQ +H}nJ>rTlh)afjPa1ƻ02xfVE+F-~Oh7dpDm:T4f-7i`ֺ} Hs@@V$ Ӛz#ϳk%?m!8(ph{Y PíϪ`I1vXPΚ0G{ *8,gb n!MEB ^B -! hETPm<!g!#~c k08K;x!<|fp_;֌/6QN/שrS)tsQO/|yFl/d8%GtKjaf [:1-r¨ma0~p T!ǼEQӇ*)= F> 7:VUx(:0E96% 2|$X Ukcmrʶ`)ew-X]Fa9Ǩ(].n^'4D<Es({Ucin(^Ұ<Nô_MRys΂;09(<_{XU2pe*i֢GL,H1zf+J{o-t.lTx6Jz8c+ .M%k2Ǜ[}s0(Oeӳs0'0LtXQ/*:`fnu~ $ï)r<1}h<Id6T7U%t~_wuI}4~#=/*7uulî<3, xΦPf);9 Pw<6gVE^3|o‡'~TM6aq.'83q *>JgnF]g YjWJp2 J *C|e><Wҕ6%Ok ;onʯf;‹!ӻ:gPO; D#z$@(iV,n_D!>;5D%ʸp( eFDN$ )1c9@V Allr{hj{'+t]_r7ʐ<v5_OyvqjZdmgsKBs<ǎa<ibM3;n]#i;2 /9A9}0m!1ûFk{4;Yk;ukxnirD4?q+$pF'WC`׃WX5 6sm4;>-/~r|zx]-./3{+Gem}w{p5^Wy=>}X3RWփDQWc|dw[,P<,A p'eeAj6U~8='ιhok ֶ~@5ƤjbWA8Qvx˭1@ mK(ChMl #μoPy k`#`ʲ[ұ*|-n6/aҍEΘ~.ÅG}st(FqW{C~zcg`abo?W3ƘaD'dp_ JlvÁ}rG/V!68x8XqP=t wqs[K8|,dLW@ay5H[ǤnNJ3SEehx(- ˎk~<ãA8#< HpzBZ CqBou`·7 |sjzrK2GY.HkCop|XOu#_J2na_Vi<*lWL`p[҆thψ@KP OJ6p(6[wcb˺vrb~YWOf)D6o.e1.q[9Y~L(K1˽4ֶo8XoV[HFEta^Nlv,` a1|6֢hǖ5@='6 j'un0B!~YrB:r$cOC}_%d aDưpI[ %AA3cmtb B*Pif`sDIPkR!|.ip=}2?y M| 38-$.TakgYt]@T8>x'wUHx+z{OW 6~<^ _r5u|E6*Ƴitxqm;#sLG au6@-j3Wg Wqdψen.`gËʉʜ^}kS>33vzG4/gyL'eQQq:CaäSy˱ne?¨=(mM h כ'Z*FFYm$f8sO`pZ<֬ʛT%א _ʵCJn|OG#Zv= rl>G#9,#k 8T>AHEHLSiluӓ{IJb'`$b@bG )!mH1^$}cn4.HP$H2kJXl*OXÙ˦@f.=49SQf6-0/G2:cxvRMwK)o7vXSQo’I!LW):Yg^6 kƒzlNFt s^PI -$#mPkq6kn- >?<CJfM*?8cs@HOG9OkitrR9ly5 FYRJcMw'jFowl7}CEYg[)-cf(ˀfMzc3IOny:KLp?aXnidXw4:3/sy?s0|:8~I~aA?m# !bn</we0 ¨rSQ?Oh|NQ?;Cq9y+B$C(BEzf5FƤCIq>OCbh~%P,(O.әbB0]ADpxZOSxCb8= c8kcG.P:MG XsONKr=]c!bC32a9jVe(<TOv˃>WBsҤ[gytr<+suh4;)`nhx9 zstnvGStv'=Qtv6k!|Pe._QN,s8 {Osdhҳylx:fiq6GmpK[-pWÔA4ydr:gCW#iz4NGSvh%Y>a+<N/g#=N`)38y[0bnzp|x/3#|2Ng'QP2;)tr=F]-?rQ*Ndk;N b,^!q>>M'cQxyGM^pbR# å wpDqz4D)FGutr/ˠ82C(al}MV- Qth7dž2=Cv:9 SA[8X8-cIq4?G3#cG9v1o1ZBҹ;5[bS'zsiE_u%mA}{OrVIDgNgcqht>eD<]GkRY^*Sƭí#B@LCG:δ..oΒ`„b8/w(CfIb.G^ph;h=4(luAM32`ӿ)`'gYu cXyהrJNtP t!5)JE_+s%1RB_bynQ@Rp0;cxOKlq[bMHOpʸ @nr!2ǬJu V4%ü u ֜=DDg}sÕ4 [D.hcjfMrRF<ChwBΙRî! 5.Sqht/Ii;NKbfC>mG_W}(RR!1:4t6nZK+|?aSIz4/G%yaCDOs2Q/K>h~b$=(Bt2D#84kϓpώ[K}sqf!MKOR)JҊBddps*¢3zz[@+gA|lv9id8Ãdoqr4JzmgUE8һtrRUiLQRzzl*#|RScq13lVH4H3f*iL_<WpV|ʛyQ@/`lsC#>~0CE+C[/>Y6l~Cuy8C+IyaB6X`L7 4L=5N;,ukoomKI]snHa8Pxw<4m _d3 0LTGEO_wSeƃkh2MKgpG9_jy=$ PT U+)RP 1~2McQj<4b=Ge~8Ij^}}pX[ϷAGPAt!Lb8Ns1lr>.gedwR{WHi6҈h:lˎkryBQk/J>Ҫt/v~*VIH‚<0[x04¹ k9OOH8Sbw]kGw:<Oa67Ch/P ˶=FXAF_EBeLKd<.3|wr|^==,SLT-%TLHCRָyKIdvv.mKV7dkvj9 z*2~,vd1NO+!p|Ez=jgӽEE<@G@x7¢u[+4c^+T,2{;@~;OCl}qQPnpW'3v}T x: S=8`A[”^{éED'rnc5%;r}_f[~Nqv>eӕgµ8$!W4* x w Q6%!:ßʷè2O`+~. ^ @3#QC% PZhҡ|zIIghKAA*4z' RH=Kr;C`gIr;dsRD3*[2CRlDCrb% ]L!dRiv'X@9%JL>$YU ^q.)f13t^28Gqz>-Ϥ}ZhBאQS8,^gPpW=:fBQJӑjÔ+vžN`dm;FaZPyasp1ց֜duN@:sCti֋GnD jBYgJ V]Dp2yGstmMGCtj>;AcxToDq7G,7X9inv7LFw=CtxunrZ(HTҎ(`k |u~ g7IQ>8BNGeq;JC(1[!O H(5`,.g#Hұ}rXzO;CXvoP;w9%xgXAv4?U@8~UXӦXF9dpaOn<:D9afgG@cs]dpts1pOQk'$!fvo@ӄN'cdx^O#;8'>A;Ϗg.Uo,ӓ{T>.GBd>y~6jA`2j!CJ@l_6<>MK}~FgOS3ZIlY҃lW(7gK,Tw`Et?LN<)PahŽau |T ~:67Op^ƛTwai3;p|<8f9G*caPf(Pck^it;ұLlæ0/s8{)*LsFjVw8҅luNK8;l H~q׻B`Kʮ 1ih|]IOtx< C*Aj#ң=!lS)Oo<$^f^æ5*aV|CNfj1^]^xǗ/5מP2W]ueb2De2rKRp2X` 6<OG%}lG i:'qin-3 +Bl Dq 1c#UNS8IP3 Q96}J׬Zq KXgơ,8F>ELngIYbPl|v>O VSúDr*RF+ϩGym{/iaoYY;Ix8_Ӂdz;ӳC7O 3KKT[jSBiw@WrQ=}{SG_ǠgXҽ TNsdt]i[׍/@Ne$GUz>a`zx;FR iCx_ңcN:Sk !ֳv;{[*-2!qciy?FCrd8Tl8M.6+T(]vhEV/ßӉpx]O'Il|$/7p<W.S8)ZYZ Tlspfp`N0DZiWkΣS,<+M]ҤoUW'Y`2dpCxtw>69N 1^΃9/|}ǡ)%jCUm>9f-J_q4O(pTO)cs.IQMcm9À>mrqyNs1p~Ctb>0@r:9EtInuq,%>PjfH~~U/3Ii73dj>NSXh^GI^ǡǠ[E|0{^ H_ [k{wo.l?Ey:at|׋ RL%x,/O;`EF?etr|P+]Ro=OIPu@v=VSar9r8awsҮ ,ΙYfTGZNg!X|Gep~t'fhO+#HӁc~*XPMq$/3;VÔǽq70E~·XN'd$N'YPxo$'Xҡ%oT ]@t0 'elxY 8|5A(UYrcyU1cIsQqtp|g<MSqp{GmDnxӻ.)pm{'`ǒf˴}tHTgEx}#l!ʂqw-`O$8cH*$)WMm=<#7hTzl<΄(hZ[,EZ= zHC6YA/A*o3qw`?HHmX'q[AwIF'FeLÿA#Vz%^OhHxʃ17'95a< <oa11Q5v@/hXtOG[H@5xE~dF{dwh/i42/gˁCy2'}O[_qP3$=X-[s7 D jgWX?IPBrxq+VQ˳FIJ:)8~#8wt 'OqntfBJ@bqF42J@F!Z!VeGháD/A֚y`41ӚBG/ҀϨ<8o-c$dz_Ef@Dx>- nײ|KC/z(4(@ӯ*t>v9 /O.)wzhC ֏%NyYwǭ3IQz'Qa|t3,~>TV.5,(FUl z>N'dN.14?ʏpR@j`ibTTkVEI˵w,%ZbpQihyfs^ӃD TH'wk/k`}-^vJr 5F,A4?ay1˘iln?<PY=;s[!4ҤQǾjbt.]iILz^#ytt:LN2Cr6LfjWwM'A !zNG4ϞVO6l/Zm53|y,lGqY>MXztS}bTl(^xFewDΟn`o λv>$w07DA?`FA'nwG+><}1vgcC@EM]l5V]hd} qtjҩ|#C#AoKd$maw) fz=cDӓqxvGgx.§h!Dh$Hn<94-0<90#qt<!5vN8(x@h:P]b`x:{[GUYi=^F g9mX!ÛfGqlv<K`t_@$ bv+ K<{0 zb5}dS,I|.v'ӓtl9F%}t@Qy]g ƿNFckO'9Y0O 8[zRCCyXrh$ Iׂ^`(cba-BzPָ64Ҫ>+?S`i~ `.WWuZt{| i oyZ1{Ƴg}|%ECҊ+3ײ<h<bҍ3ί+$mRdLynJ1B.֔m2A zG- #dpDWNֻ7fZhi|ϡz*F..[y,t7bYyo>O^ 'mB=]I6xk4[I >-Y~ B3Ң?5WY@w{-_y=4QufH<n!7Ua[AC%F{r``PQ.Bgyp!DϦv5!gsl|jEּ zV`0PHd ¸wùi֛87[w wWw~bXpAyK6qB%d(P%Q/6vΫ!0jS|­,-S3hvllO]Tˑ }nӐ=7#jou(7%1[hatp`vM=9YL5Ҫ.qFpõ2.9 ltZjLt%}rQSqdEuywGlºBfSOŽ9r9~*qe~s{FJ+VP'GDfb7%Ua^t2s`i<Gf$f7vv |ZX~p^z;S_+: DY[Ml8|?HPBp_*U;]gE,4}[JZWbL4 Yfb2M4?GTZy1|}'D|W>9q|_oUӢT1 wOlg~-2Pǭ|;EvzYhϺ88Z,?_%otSjFj!<^s-h?O`n:g?hwq.-79_yOX$MObg}˳$39zKuLl.7G9n92S`;lswp5 |mXWuLQmc>'x? zhiX%(qyD{VUJxn(a[jx(g/hҟUK0-?=ph#^_>A!5e$}2r~NEkOf;|DZX:Q-iZ9{[HE0ʲKʺ+M,ö֝5fV» tR6qϜ>K_?1<)neoN]n%mF? 6S(>ue w^/.qg~g? yajgRzXY|,~q=yDUn?r?9^QUҽjrHd`?Dr?օovifOGY; 00B@|2|2F;KLT;hWYD֗s n>~,q΄^q7SMq`@!611TJ@[GR9|4{a^_t>}=3?Ǝd,^gag/<Vk C <u#O]/:UDP4lQo(%psuFMK)~O~,Zϝ RE^dr..tV3Rpu+ByD@QS_4)r$!RO XT=33ƙgE;|'b{9>j(78__:k}1j$u2}IX0ϟui!wHFZl(j 'Bwy4B>NlG//bo^dG};u]d;B4L9~g^?.B]¡֬+?27P?B(#clb7v>{k9|Cv$/RolFieƴg7~/73 9sM|cl8o],{p-7G`B^>Fv|W~>}Ñu0YF=~WƬnO#[]L/-NK@>fhN r>Jd`<o}go֨p'ׂ:t _lkLTN<ob#i Aib<2'/|Lz>֨.Pkl8IuO<`XB7_GxNpU׽%d6SAcZ΅_yVYrp?2{ ZLOBW~+q#? NjÛx_t1<T׸R~N+WFB'X>mgD;7gI82!NXr[ ˂)(Ui.5LbDsWD!J4`[Ez,-N7}J{T<WbrW55#Ht~`-!:iOH qp,LIҶ$ =ymD3` nUs-J׮)S@7 boBwqw~D0/SʋqB}0=w w?69x 1)A1kg>ƾF/I+Ooz/i>8zT:05bcP!eʗ;~֌ I;`-vsd׬)TIr>h6WcKZ+IA.^tmZGrs{ tc.<y!<Q].Oh?B|MgpE:LLҿT9ʤ}30_D$o|_gb8c=Y4?!? _soi7wvaƈKג{{hz2TTDjm%=2qO˿Lz2YXj=__C?E{s__ˤ[>9hCIZ}eA|'[A~$nq~p***@Pel0I7F֗G!o>?6Ǣ~=rM<#pb *F r8$]˙AF#l!j,o8`yUepK}ep>5b#yy!7rb0mv5M=-vN0Hp #;'%4pcc3A-]F+ӟlRǪvL:XohkoIN'OD*z@~MӡB/j?iJ˔KtMׯOo;0:-M3Es6ד UNio|M{8A,x8V0ugN7a.iO,L;(rgSy64_.CM>rқӭfg$6YzIjs moq|@Pfqӡ 1ʱ07K`HϻY1ֳ6F'BH^{xIׂxtW02A{O~-;6cO7a?fyWQ׍ISfD>x֋+_ pn`h +>y~-Y@aYDFҎ6Cj!Bwa/bOXv3E1Ό1)?`p_tRkfT:vzSGX'Z < O_Sog| Urv1tDހ"
2
- export {bytes}
@@ -1,7 +0,0 @@
1
- let replacer_func = (key, value) => {
2
- return (value !== undefined && value?.type === 'Buffer') ? value.data : value;
3
- };
4
-
5
- export function stringify(data) {
6
- return JSON.stringify(data, replacer_func)
7
- }
@@ -1,96 +0,0 @@
1
- const assert = require('assert')
2
- const { describe, it } = require('mocha')
3
- const { instantLockBytes, transactionBytes } = require('./mocks/Locks')
4
- const { default: wasm } = require('pshenmic-dpp')
5
-
6
- describe('AssetLockProof', function () {
7
- describe('serialization / deserialization', function () {
8
- it('should allow to get instant lock proof via constructor', () => {
9
- const outpoint = new wasm.OutPointWASM('e8b43025641eea4fd21190f01bd870ef90f1a8b199d8fc3376c5b62c0b1a179d', 1)
10
- const chainlock = new wasm.ChainAssetLockProofWASM(11, outpoint)
11
- const instantLockProof = new wasm.InstantAssetLockProofWASM(instantLockBytes, transactionBytes, 0)
12
-
13
- const instantAssetLock = new wasm.AssetLockProofWASM(instantLockProof)
14
- const chainAssetLock = new wasm.AssetLockProofWASM(chainlock)
15
-
16
- assert.equal(instantAssetLock.constructor.name, 'AssetLockProofWASM')
17
- assert.notEqual(instantAssetLock.__wbg_ptr, 0)
18
- assert.equal(chainAssetLock.constructor.name, 'AssetLockProofWASM')
19
- assert.notEqual(chainAssetLock.__wbg_ptr, 0)
20
- })
21
-
22
- it('shouldn\'t allow to get chain lock proof via constructor', () => {
23
- try {
24
- // eslint-disable-next-line
25
- new wasm.AssetLockProofWASM('chain')
26
- } catch (e) {
27
- assert.ok(true)
28
- return
29
- }
30
- assert.ok()
31
- })
32
-
33
- it('should allow to create instant lock proof from values', () => {
34
- const instantLockProof = wasm.AssetLockProofWASM.createInstantAssetLockProof(instantLockBytes, transactionBytes, 0)
35
-
36
- assert.equal(instantLockProof.constructor.name, 'AssetLockProofWASM')
37
- })
38
-
39
- it('should allow to create chain lock proof from values', () => {
40
- const outpoint = new wasm.OutPointWASM('e8b43025641eea4fd21190f01bd870ef90f1a8b199d8fc3376c5b62c0b1a179d', 1)
41
-
42
- const chainLockProof = wasm.AssetLockProofWASM.createChainAssetLockProof(1, outpoint)
43
-
44
- assert.equal(chainLockProof.constructor.name, 'AssetLockProofWASM')
45
- })
46
-
47
- it('should allow to serialize and deserialize asset lock in hex', () => {
48
- const instantLockProof = wasm.AssetLockProofWASM.createInstantAssetLockProof(instantLockBytes, transactionBytes, 0)
49
-
50
- const newInstantLockProof = wasm.AssetLockProofWASM.fromHex(instantLockProof.hex())
51
-
52
- assert.equal(instantLockProof.constructor.name, 'AssetLockProofWASM')
53
- assert.equal(newInstantLockProof.constructor.name, 'AssetLockProofWASM')
54
-
55
- assert.deepEqual(newInstantLockProof.toObject(), instantLockProof.toObject())
56
- })
57
- })
58
-
59
- describe('getters', function () {
60
- it('should allow to get lock type', () => {
61
- const outpoint = new wasm.OutPointWASM('e8b43025641eea4fd21190f01bd870ef90f1a8b199d8fc3376c5b62c0b1a179d', 1)
62
- const instantLockProof = new wasm.InstantAssetLockProofWASM(instantLockBytes, transactionBytes, 0)
63
-
64
- const instantAssetLockProof = new wasm.AssetLockProofWASM(instantLockProof)
65
- const chainLockProof = wasm.AssetLockProofWASM.createChainAssetLockProof(1, outpoint)
66
-
67
- assert.equal(instantAssetLockProof.getLockType(), 'Instant')
68
- assert.equal(chainLockProof.getLockType(), 'Chain')
69
- })
70
-
71
- it('should allow to get lock instances', () => {
72
- const outpoint = new wasm.OutPointWASM('e8b43025641eea4fd21190f01bd870ef90f1a8b199d8fc3376c5b62c0b1a179d', 1)
73
- const instantLockProof = new wasm.InstantAssetLockProofWASM(instantLockBytes, transactionBytes, 0)
74
-
75
- const chainLockProof = wasm.AssetLockProofWASM.createChainAssetLockProof(1, outpoint)
76
- const instantAssetLockProof = new wasm.AssetLockProofWASM(instantLockProof)
77
-
78
- assert.equal(chainLockProof.getChainLockProof().constructor.name, 'ChainAssetLockProofWASM')
79
- assert.equal(instantAssetLockProof.getInstantLockProof().constructor.name, 'InstantAssetLockProofWASM')
80
- })
81
-
82
- it('should allow to return object of lock', () => {
83
- const instantLockProof = new wasm.InstantAssetLockProofWASM(instantLockBytes, transactionBytes, 0)
84
-
85
- const instantAssetLockProof = new wasm.AssetLockProofWASM(instantLockProof)
86
-
87
- const expected = {
88
- instantLock: instantLockBytes,
89
- transaction: transactionBytes,
90
- outputIndex: 0
91
- }
92
-
93
- assert.deepEqual(instantLockProof.toObject(), expected)
94
- })
95
- })
96
- })