@super-protocol/sdk-js 3.16.6 → 3.17.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 (227) hide show
  1. package/dist/cjs/RIGenerator.d.ts +3 -3
  2. package/dist/cjs/RIGenerator.js +7 -6
  3. package/dist/cjs/TIIGenerator.d.ts +3 -4
  4. package/dist/cjs/TIIGenerator.js +34 -7
  5. package/dist/cjs/TeeInputGeneratorBase.d.ts +3 -3
  6. package/dist/cjs/TeeInputGeneratorBase.js +5 -5
  7. package/dist/cjs/certificates/serializer.d.ts +5 -3
  8. package/dist/cjs/certificates/serializer.js +26 -11
  9. package/dist/cjs/certificates/types.d.ts +1 -1
  10. package/dist/cjs/connectors/BaseConnector.d.ts +3 -3
  11. package/dist/cjs/connectors/BaseConnector.js +1 -1
  12. package/dist/cjs/connectors/BlockchainConnector.js +3 -3
  13. package/dist/cjs/connectors/BlockchainEventsListener.d.ts +2 -2
  14. package/dist/cjs/connectors/BlockchainEventsListener.js +3 -2
  15. package/dist/cjs/constants.d.ts +1 -3
  16. package/dist/cjs/constants.js +3 -7
  17. package/dist/cjs/contracts/abi.d.ts +1067 -1137
  18. package/dist/cjs/contracts/abi.js +1408 -1500
  19. package/dist/cjs/crypto/Crypto.d.ts +10 -13
  20. package/dist/cjs/crypto/Crypto.js +14 -17
  21. package/dist/cjs/crypto/nodejs/AES.d.ts +1 -1
  22. package/dist/cjs/crypto/nodejs/AES.js +2 -2
  23. package/dist/cjs/crypto/nodejs/ARIA.d.ts +1 -1
  24. package/dist/cjs/crypto/nodejs/ARIA.js +2 -2
  25. package/dist/cjs/errors/index.d.ts +1 -0
  26. package/dist/cjs/errors/index.js +4 -2
  27. package/dist/cjs/errors/insufficient-funds.error.d.ts +19 -0
  28. package/dist/cjs/errors/insufficient-funds.error.js +57 -0
  29. package/dist/cjs/index.d.ts +3 -6
  30. package/dist/cjs/index.js +6 -9
  31. package/dist/cjs/models/Offer.d.ts +16 -1
  32. package/dist/cjs/models/Offer.js +59 -9
  33. package/dist/cjs/models/Order.d.ts +1 -1
  34. package/dist/cjs/models/Order.js +11 -15
  35. package/dist/cjs/models/Provider.d.ts +0 -1
  36. package/dist/cjs/models/Provider.js +1 -7
  37. package/dist/cjs/models/TCB.d.ts +1 -28
  38. package/dist/cjs/models/TCB.js +1 -61
  39. package/dist/cjs/models/TeeOffer.d.ts +3 -18
  40. package/dist/cjs/models/TeeOffer.js +20 -106
  41. package/dist/cjs/providers/storage/S3StorageProvider.js +5 -5
  42. package/dist/cjs/providers/storage/StorageKeyValueAdapter.d.ts +1 -1
  43. package/dist/cjs/providers/storage/StorageKeyValueAdapter.js +7 -7
  44. package/dist/cjs/providers/storage/fs-storage-provider.js +35 -15
  45. package/dist/cjs/providers/storage/parseStorageCredentials.d.ts +1 -2
  46. package/dist/cjs/staticModels/Consensus.d.ts +5 -16
  47. package/dist/cjs/staticModels/Consensus.js +17 -86
  48. package/dist/cjs/staticModels/Offers.d.ts +4 -1
  49. package/dist/cjs/staticModels/Offers.js +9 -8
  50. package/dist/cjs/staticModels/OffersCommon.d.ts +3 -1
  51. package/dist/cjs/staticModels/OffersCommon.js +6 -2
  52. package/dist/cjs/staticModels/Orders.js +12 -11
  53. package/dist/cjs/staticModels/ProviderRewards.js +2 -2
  54. package/dist/cjs/staticModels/StaticModel.js +5 -5
  55. package/dist/cjs/staticModels/SuperproToken.d.ts +7 -7
  56. package/dist/cjs/staticModels/SuperproToken.js +3 -3
  57. package/dist/cjs/staticModels/TeeOffers.d.ts +1 -7
  58. package/dist/cjs/staticModels/TeeOffers.js +11 -20
  59. package/dist/cjs/store.d.ts +0 -1
  60. package/dist/cjs/store.js +1 -2
  61. package/dist/cjs/tee/TeeBlockVerifier.d.ts +1 -2
  62. package/dist/cjs/tee/TeeBlockVerifier.js +17 -24
  63. package/dist/cjs/tee/TeeCertificateService.d.ts +1 -1
  64. package/dist/cjs/tee/TeeCertificateService.js +6 -10
  65. package/dist/cjs/tee/statuses.d.ts +0 -7
  66. package/dist/cjs/tee/statuses.js +2 -10
  67. package/dist/cjs/types/Consensus.d.ts +10 -31
  68. package/dist/cjs/types/Consensus.js +2 -10
  69. package/dist/cjs/types/Offer.d.ts +5 -0
  70. package/dist/cjs/types/Order.d.ts +26 -21
  71. package/dist/cjs/types/Order.js +24 -17
  72. package/dist/cjs/types/index.d.ts +0 -1
  73. package/dist/cjs/types/index.js +1 -2
  74. package/dist/cjs/utils/CryptoKeysTransformer.js +5 -5
  75. package/dist/cjs/utils/TxManager.js +21 -5
  76. package/dist/cjs/utils/helper.d.ts +2 -8
  77. package/dist/cjs/utils/helper.js +6 -75
  78. package/dist/cjs/utils/helpers/OrderArgsHelper.d.ts +2 -2
  79. package/dist/cjs/utils/helpers/OrderArgsHelper.js +5 -5
  80. package/dist/cjs/utils/helpers/index.d.ts +1 -0
  81. package/dist/cjs/utils/helpers/index.js +2 -1
  82. package/dist/cjs/utils/helpers/streamToBuffer.d.ts +4 -0
  83. package/dist/cjs/utils/helpers/streamToBuffer.js +13 -0
  84. package/dist/cjs/utils/order/process-order.js +3 -4
  85. package/dist/cjs/utils/order/types.d.ts +0 -1
  86. package/dist/cjs/utils/order/versify.js +1 -7
  87. package/dist/cjs/utils/rent-calculator/rent-calculator.js +2 -3
  88. package/dist/cjs/utils/rent-calculator/types.d.ts +0 -1
  89. package/dist/cjs/utils/tcb.d.ts +2 -0
  90. package/dist/cjs/utils/tcb.js +13 -0
  91. package/dist/cjs/utils/types.d.ts +0 -5
  92. package/dist/mjs/RIGenerator.d.ts +3 -3
  93. package/dist/mjs/RIGenerator.js +8 -7
  94. package/dist/mjs/TIIGenerator.d.ts +3 -4
  95. package/dist/mjs/TIIGenerator.js +34 -7
  96. package/dist/mjs/TeeInputGeneratorBase.d.ts +3 -3
  97. package/dist/mjs/TeeInputGeneratorBase.js +5 -5
  98. package/dist/mjs/certificates/serializer.d.ts +5 -3
  99. package/dist/mjs/certificates/serializer.js +26 -11
  100. package/dist/mjs/certificates/types.d.ts +1 -1
  101. package/dist/mjs/connectors/BaseConnector.d.ts +3 -3
  102. package/dist/mjs/connectors/BaseConnector.js +1 -1
  103. package/dist/mjs/connectors/BlockchainConnector.js +3 -3
  104. package/dist/mjs/connectors/BlockchainEventsListener.d.ts +2 -2
  105. package/dist/mjs/connectors/BlockchainEventsListener.js +3 -2
  106. package/dist/mjs/constants.d.ts +1 -3
  107. package/dist/mjs/constants.js +2 -6
  108. package/dist/mjs/contracts/abi.d.ts +1067 -1137
  109. package/dist/mjs/contracts/abi.js +1406 -1498
  110. package/dist/mjs/crypto/Crypto.d.ts +10 -13
  111. package/dist/mjs/crypto/Crypto.js +14 -17
  112. package/dist/mjs/crypto/nodejs/AES.d.ts +1 -1
  113. package/dist/mjs/crypto/nodejs/AES.js +2 -2
  114. package/dist/mjs/crypto/nodejs/ARIA.d.ts +1 -1
  115. package/dist/mjs/crypto/nodejs/ARIA.js +2 -2
  116. package/dist/mjs/errors/index.d.ts +1 -0
  117. package/dist/mjs/errors/index.js +2 -1
  118. package/dist/mjs/errors/insufficient-funds.error.d.ts +19 -0
  119. package/dist/mjs/errors/insufficient-funds.error.js +53 -0
  120. package/dist/mjs/index.d.ts +3 -6
  121. package/dist/mjs/index.js +4 -7
  122. package/dist/mjs/models/Offer.d.ts +16 -1
  123. package/dist/mjs/models/Offer.js +53 -3
  124. package/dist/mjs/models/Order.d.ts +1 -1
  125. package/dist/mjs/models/Order.js +11 -15
  126. package/dist/mjs/models/Provider.d.ts +0 -1
  127. package/dist/mjs/models/Provider.js +1 -7
  128. package/dist/mjs/models/TCB.d.ts +1 -28
  129. package/dist/mjs/models/TCB.js +2 -62
  130. package/dist/mjs/models/TeeOffer.d.ts +3 -18
  131. package/dist/mjs/models/TeeOffer.js +13 -99
  132. package/dist/mjs/providers/storage/S3StorageProvider.js +5 -5
  133. package/dist/mjs/providers/storage/StorageKeyValueAdapter.d.ts +1 -1
  134. package/dist/mjs/providers/storage/StorageKeyValueAdapter.js +7 -7
  135. package/dist/mjs/providers/storage/fs-storage-provider.js +35 -15
  136. package/dist/mjs/providers/storage/parseStorageCredentials.d.ts +1 -2
  137. package/dist/mjs/staticModels/Consensus.d.ts +5 -16
  138. package/dist/mjs/staticModels/Consensus.js +18 -87
  139. package/dist/mjs/staticModels/Offers.d.ts +4 -1
  140. package/dist/mjs/staticModels/Offers.js +9 -8
  141. package/dist/mjs/staticModels/OffersCommon.d.ts +3 -1
  142. package/dist/mjs/staticModels/OffersCommon.js +6 -2
  143. package/dist/mjs/staticModels/Orders.js +12 -11
  144. package/dist/mjs/staticModels/ProviderRewards.js +3 -3
  145. package/dist/mjs/staticModels/StaticModel.js +5 -5
  146. package/dist/mjs/staticModels/SuperproToken.d.ts +7 -7
  147. package/dist/mjs/staticModels/SuperproToken.js +3 -3
  148. package/dist/mjs/staticModels/TeeOffers.d.ts +1 -7
  149. package/dist/mjs/staticModels/TeeOffers.js +12 -21
  150. package/dist/mjs/store.d.ts +0 -1
  151. package/dist/mjs/store.js +2 -3
  152. package/dist/mjs/tee/TeeBlockVerifier.d.ts +1 -2
  153. package/dist/mjs/tee/TeeBlockVerifier.js +17 -24
  154. package/dist/mjs/tee/TeeCertificateService.d.ts +1 -1
  155. package/dist/mjs/tee/TeeCertificateService.js +7 -11
  156. package/dist/mjs/tee/statuses.d.ts +0 -7
  157. package/dist/mjs/tee/statuses.js +1 -9
  158. package/dist/mjs/types/Consensus.d.ts +10 -31
  159. package/dist/mjs/types/Consensus.js +1 -9
  160. package/dist/mjs/types/Offer.d.ts +5 -0
  161. package/dist/mjs/types/Order.d.ts +26 -21
  162. package/dist/mjs/types/Order.js +21 -17
  163. package/dist/mjs/types/index.d.ts +0 -1
  164. package/dist/mjs/types/index.js +1 -2
  165. package/dist/mjs/utils/CryptoKeysTransformer.js +5 -5
  166. package/dist/mjs/utils/TxManager.js +21 -5
  167. package/dist/mjs/utils/helper.d.ts +2 -8
  168. package/dist/mjs/utils/helper.js +5 -68
  169. package/dist/mjs/utils/helpers/OrderArgsHelper.d.ts +2 -2
  170. package/dist/mjs/utils/helpers/OrderArgsHelper.js +5 -5
  171. package/dist/mjs/utils/helpers/index.d.ts +1 -0
  172. package/dist/mjs/utils/helpers/index.js +2 -1
  173. package/dist/mjs/utils/helpers/streamToBuffer.d.ts +4 -0
  174. package/dist/mjs/utils/helpers/streamToBuffer.js +9 -0
  175. package/dist/mjs/utils/order/process-order.js +3 -4
  176. package/dist/mjs/utils/order/types.d.ts +0 -1
  177. package/dist/mjs/utils/order/versify.js +1 -7
  178. package/dist/mjs/utils/rent-calculator/rent-calculator.js +2 -3
  179. package/dist/mjs/utils/rent-calculator/types.d.ts +0 -1
  180. package/dist/mjs/utils/tcb.d.ts +2 -0
  181. package/dist/mjs/utils/tcb.js +9 -0
  182. package/dist/mjs/utils/types.d.ts +0 -5
  183. package/package.json +8 -9
  184. package/dist/cjs/contracts/Campaign.d.ts +0 -1198
  185. package/dist/cjs/contracts/Campaign.js +0 -1554
  186. package/dist/cjs/contracts/CampaignTxPart.d.ts +0 -454
  187. package/dist/cjs/contracts/CampaignTxPart.js +0 -592
  188. package/dist/cjs/contracts/adminCertificateHelperAbi.d.ts +0 -316
  189. package/dist/cjs/contracts/adminCertificateHelperAbi.js +0 -410
  190. package/dist/cjs/proto/TeeDeviceInfo.d.ts +0 -292
  191. package/dist/cjs/proto/TeeDeviceInfo.js +0 -491
  192. package/dist/cjs/staticModels/AdminCertificateHelper.d.ts +0 -24
  193. package/dist/cjs/staticModels/AdminCertificateHelper.js +0 -99
  194. package/dist/cjs/staticModels/Campaign.d.ts +0 -63
  195. package/dist/cjs/staticModels/Campaign.js +0 -318
  196. package/dist/cjs/staticModels/CampaignTxPart.d.ts +0 -19
  197. package/dist/cjs/staticModels/CampaignTxPart.js +0 -58
  198. package/dist/cjs/tee/QuoteValidator.d.ts +0 -46
  199. package/dist/cjs/tee/QuoteValidator.js +0 -456
  200. package/dist/cjs/tee/TcbSerializer.d.ts +0 -20
  201. package/dist/cjs/tee/TcbSerializer.js +0 -27
  202. package/dist/cjs/types/Campaign.d.ts +0 -55
  203. package/dist/cjs/types/Campaign.js +0 -17
  204. package/dist/cjs/utils/admin-service.d.ts +0 -13
  205. package/dist/cjs/utils/admin-service.js +0 -73
  206. package/dist/mjs/contracts/Campaign.d.ts +0 -1198
  207. package/dist/mjs/contracts/Campaign.js +0 -1551
  208. package/dist/mjs/contracts/CampaignTxPart.d.ts +0 -454
  209. package/dist/mjs/contracts/CampaignTxPart.js +0 -589
  210. package/dist/mjs/contracts/adminCertificateHelperAbi.d.ts +0 -316
  211. package/dist/mjs/contracts/adminCertificateHelperAbi.js +0 -407
  212. package/dist/mjs/proto/TeeDeviceInfo.d.ts +0 -292
  213. package/dist/mjs/proto/TeeDeviceInfo.js +0 -485
  214. package/dist/mjs/staticModels/AdminCertificateHelper.d.ts +0 -24
  215. package/dist/mjs/staticModels/AdminCertificateHelper.js +0 -92
  216. package/dist/mjs/staticModels/Campaign.d.ts +0 -63
  217. package/dist/mjs/staticModels/Campaign.js +0 -313
  218. package/dist/mjs/staticModels/CampaignTxPart.d.ts +0 -19
  219. package/dist/mjs/staticModels/CampaignTxPart.js +0 -51
  220. package/dist/mjs/tee/QuoteValidator.d.ts +0 -46
  221. package/dist/mjs/tee/QuoteValidator.js +0 -449
  222. package/dist/mjs/tee/TcbSerializer.d.ts +0 -20
  223. package/dist/mjs/tee/TcbSerializer.js +0 -23
  224. package/dist/mjs/types/Campaign.d.ts +0 -55
  225. package/dist/mjs/types/Campaign.js +0 -14
  226. package/dist/mjs/utils/admin-service.d.ts +0 -13
  227. package/dist/mjs/utils/admin-service.js +0 -66
@@ -11,7 +11,7 @@ import rootLogger from '../logger.js';
11
11
  import { checkIfActionAccountInitialized, cleanWeb3Data, convertBigIntToString, convertOfferVersion, convertOptionInfoToRaw, convertOrigins, convertValueOfferInfo, formatOfferSlot, incrementMethodCall, packSlotInfo, transformComplexObject, } from '../utils/helper.js';
12
12
  import { BlockchainConnector } from '../connectors/index.js';
13
13
  import { OfferType, ValueOfferSubtype, } from '../types/index.js';
14
- import { formatBytes32String } from 'ethers/lib/utils.js';
14
+ import { encodeBytes32String } from 'ethers';
15
15
  import TeeOffers from '../staticModels/TeeOffers.js';
16
16
  import TxManager from '../utils/TxManager.js';
17
17
  import { tryWithInterval } from '../utils/helpers/index.js';
@@ -156,6 +156,28 @@ class Offer {
156
156
  throw err;
157
157
  }
158
158
  }
159
+ async getOfferVersionsIdsFiltered(params = {}) {
160
+ const from = params.from ?? 0;
161
+ const to = params.to ?? (await this.getVersionCount());
162
+ const filter = params.filter ?? { includeNew: true, includeDeleted: true };
163
+ if (from >= to) {
164
+ throw new Error(`Invalid requested range. The "from" (${from}) must be less than or equal "to" (${to}).`);
165
+ }
166
+ try {
167
+ const versionNumbers = await Offer.contract.methods
168
+ .getOfferVersionsIdsFiltered(this.id, from, to, filter)
169
+ .call();
170
+ return versionNumbers.map(Number);
171
+ }
172
+ catch (err) {
173
+ const causeMessage = getBcErrorMessage(err);
174
+ if (causeMessage.includes('Unknown offer')) {
175
+ throw new NotFoundError(`Offer ${this.id} not found`);
176
+ }
177
+ this.logger.error({ err, offerId: this.id }, 'Failed to get the offer versions list');
178
+ throw err;
179
+ }
180
+ }
159
181
  async getLastVersionInfo() {
160
182
  const lastVersionNumber = await this.getLastVersionNumber();
161
183
  if (lastVersionNumber === null) {
@@ -309,6 +331,22 @@ class Offer {
309
331
  throw err;
310
332
  }
311
333
  }
334
+ /**
335
+ * Returns the offer action account.
336
+ */
337
+ async getOfferActionAccount() {
338
+ return await Offer.contract.methods.getOfferActionAccount(this.id).call();
339
+ }
340
+ /**
341
+ * Sets the offer action account.
342
+ * @param newOfferActionAccount - New offer action account
343
+ * @param transactionOptions - object what contains alternative action account or gas limit (optional)
344
+ */
345
+ async setOfferActionAccount(newOfferActionAccount, transactionOptions) {
346
+ checkIfActionAccountInitialized(transactionOptions);
347
+ const transactionCall = Offer.contract.methods.setOfferActionAccount(this.id, newOfferActionAccount);
348
+ await TxManager.execute(transactionCall, transactionOptions);
349
+ }
312
350
  isOfferExists() {
313
351
  return Offer.contract.methods.isOfferExists(this.id).call();
314
352
  }
@@ -390,7 +428,7 @@ class Offer {
390
428
  async addSlot(slotInfo, optionInfo, slotUsage, externalId = 'default', transactionOptions, metadata) {
391
429
  checkIfActionAccountInitialized(transactionOptions);
392
430
  slotInfo = packSlotInfo(slotInfo, await TeeOffers.getDenominator());
393
- const formattedExternalId = formatBytes32String(externalId);
431
+ const formattedExternalId = encodeBytes32String(externalId);
394
432
  const newSlotId = await StaticModel.createEntity({
395
433
  txExecutorCallback: async () => {
396
434
  await TxManager.execute(Offer.contract.methods.addValueOfferSlot(this.id, formattedExternalId, slotInfo, convertOptionInfoToRaw(optionInfo), slotUsage, metadata ? JSON.stringify(metadata) : ''), transactionOptions);
@@ -606,6 +644,18 @@ __decorate([
606
644
  __metadata("design:paramtypes", []),
607
645
  __metadata("design:returntype", Promise)
608
646
  ], Offer.prototype, "getVersionCount", null);
647
+ __decorate([
648
+ incrementMethodCall(),
649
+ __metadata("design:type", Function),
650
+ __metadata("design:paramtypes", []),
651
+ __metadata("design:returntype", Promise)
652
+ ], Offer.prototype, "getOfferActionAccount", null);
653
+ __decorate([
654
+ incrementMethodCall(),
655
+ __metadata("design:type", Function),
656
+ __metadata("design:paramtypes", [String, Object]),
657
+ __metadata("design:returntype", Promise)
658
+ ], Offer.prototype, "setOfferActionAccount", null);
609
659
  __decorate([
610
660
  incrementMethodCall(),
611
661
  __metadata("design:type", Function),
@@ -661,4 +711,4 @@ __decorate([
661
711
  __metadata("design:returntype", Promise)
662
712
  ], Offer.prototype, "isRestrictedByOfferType", null);
663
713
  export default Offer;
664
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiT2ZmZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbW9kZWxzL09mZmVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUVBLE9BQU8sVUFBVSxNQUFNLGNBQWMsQ0FBQztBQUN0QyxPQUFPLEVBQ0wsK0JBQStCLEVBQy9CLGFBQWEsRUFDYixxQkFBcUIsRUFDckIsbUJBQW1CLEVBQ25CLHNCQUFzQixFQUN0QixjQUFjLEVBQ2QscUJBQXFCLEVBQ3JCLGVBQWUsRUFDZixtQkFBbUIsRUFDbkIsWUFBWSxFQUNaLHNCQUFzQixHQUN2QixNQUFNLG9CQUFvQixDQUFDO0FBQzVCLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzdELE9BQU8sRUFJTCxTQUFTLEVBZVQsaUJBQWlCLEdBQ2xCLE1BQU0sbUJBQW1CLENBQUM7QUFDM0IsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDMUQsT0FBTyxTQUFTLE1BQU0sOEJBQThCLENBQUM7QUFDckQsT0FBTyxTQUFTLE1BQU0sdUJBQXVCLENBQUM7QUFDOUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzVELE9BQU8sRUFDTCw4QkFBOEIsRUFDOUIsOEJBQThCLEVBQzlCLHFCQUFxQixHQUN0QixNQUFNLGlCQUFpQixDQUFDO0FBQ3pCLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNwRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDbkQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDdkQsT0FBTyxXQUFXLE1BQU0sZ0NBQWdDLENBQUM7QUFFekQsTUFBTSxLQUFLO0lBQ0QsTUFBTSxDQUFDLFFBQVEsQ0FBdUI7SUFDdEMs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
714
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiT2ZmZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbW9kZWxzL09mZmVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUVBLE9BQU8sVUFBVSxNQUFNLGNBQWMsQ0FBQztBQUN0QyxPQUFPLEVBQ0wsK0JBQStCLEVBQy9CLGFBQWEsRUFDYixxQkFBcUIsRUFDckIsbUJBQW1CLEVBQ25CLHNCQUFzQixFQUN0QixjQUFjLEVBQ2QscUJBQXFCLEVBQ3JCLGVBQWUsRUFDZixtQkFBbUIsRUFDbkIsWUFBWSxFQUNaLHNCQUFzQixHQUN2QixNQUFNLG9CQUFvQixDQUFDO0FBQzVCLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzdELE9BQU8sRUFJTCxTQUFTLEVBZ0JULGlCQUFpQixHQUNsQixNQUFNLG1CQUFtQixDQUFDO0FBQzNCLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUM3QyxPQUFPLFNBQVMsTUFBTSw4QkFBOEIsQ0FBQztBQUNyRCxPQUFPLFNBQVMsTUFBTSx1QkFBdUIsQ0FBQztBQUM5QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDNUQsT0FBTyxFQUNMLDhCQUE4QixFQUM5Qiw4QkFBOEIsRUFDOUIscUJBQXFCLEdBQ3RCLE1BQU0saUJBQWlCLENBQUM7QUFDekIsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDeEUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3BELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNuRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUN2RCxPQUFPLFdBQVcsTUFBTSxnQ0FBZ0MsQ0FBQztBQUV6RCxNQUFNLEtBQUs7SUFDRCxNQUFNLENBQUMsUUFBUSxDQUF1QjtJQUN0QyxNQUFNLENBQW9CO0lBRWxDLFNBQVMsQ0FBYTtJQUN0QixRQUFRLENBQVU7SUFDbEIsSUFBSSxDQUFhO0lBQ2pCLGlCQUFpQixDQUFVO0lBQzNCLE9BQU8sQ0FBVztJQUNsQixFQUFFLENBQWU7SUFDakIsVUFBVSxDQUFlO0lBRXpCLFlBQVksT0FBcUI7UUFDL0IsSUFBSSxDQUFDLEVBQUUsR0FBRyxPQUFPLENBQUM7UUFDbEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNwQixLQUFLLENBQUMsUUFBUSxHQUFHLG1CQUFtQixDQUFDLFdBQVcsRUFBRSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ25FLENBQUM7UUFDRCxJQUFJLENBQUMsTUFBTSxHQUFHLFVBQVUsQ0FBQyxLQUFLLENBQUM7WUFDN0IsU0FBUyxFQUFFLE9BQU87WUFDbEIsT0FBTyxFQUFFLElBQUksQ0FBQyxFQUFFO1NBQ2pCLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRDs7T0FFRztJQUVILFNBQVM7UUFDUCxPQUFPLEtBQUssQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDL0QsQ0FBQztJQUVEOztPQUVHO0lBRUcsQUFBTixLQUFLLENBQUMsV0FBVztRQUNmLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxTQUFTLElBQUksQ0FBQyxNQUFNLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO1FBQ3RELElBQUksSUFBSSxDQUFDLFNBQVMsS0FBSyxTQUFTLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDMUMsT0FBTyxLQUFLLENBQUM7UUFDZixDQUFDO1FBRUQsTUFBTSxzQkFBc0IsR0FBRyxJQUFJLENBQUMsU0FBUyxFQUFFLFlBQVksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUMvRixPQUFPLENBQUMsc0JBQXNCLENBQUM7SUFDakMsQ0FBQztJQUVEOztPQUVHO0lBRUcsQUFBTixLQUFLLENBQUMsYUFBYTtRQUNqQixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsU0FBUyxJQUFJLENBQUMsTUFBTSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztRQUN0RCxPQUFPLE9BQU8sQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDdEMsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxLQUFLLENBQUMsT0FBTyxDQUFDLElBQVksRUFBRSxrQkFBdUM7UUFDakUsK0JBQStCLENBQUMsa0JBQWtCLENBQUMsQ0FBQztRQUVwRCxNQUFNLFNBQVMsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsSUFBSSxDQUFDLEVBQUUsa0JBQWtCLENBQUMsQ0FBQztRQUNoRyxJQUFJLElBQUksQ0FBQyxTQUFTO1lBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO0lBQ2pELENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsS0FBSyxDQUFDLGNBQWMsQ0FDbEIsV0FBbUIsRUFDbkIsa0JBQXVDO1FBRXZDLCtCQUErQixDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFFcEQsTUFBTSxTQUFTLENBQUMsT0FBTyxDQUNyQixLQUFLLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLFdBQVcsQ0FBQyxFQUNoRSxrQkFBa0IsQ0FDbkIsQ0FBQztRQUNGLElBQUksSUFBSSxDQUFDLFNBQVM7WUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLFdBQVcsR0FBRyxXQUFXLENBQUM7SUFDL0QsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQWtCLEVBQUUsa0JBQXVDO1FBQ3ZFLCtCQUErQixDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFFcEQsTUFBTSxFQUFFLFlBQVksRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLEdBQUcsUUFBUSxFQUFFLEdBQUcsT0FBTyxDQUFDO1FBQzdGLE1BQU0sU0FBUyxDQUFDLE9BQU8sQ0FDckIsS0FBSyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRTtZQUNoRCxHQUFHLFFBQVE7WUFDWCwwQkFBMEIsRUFBRSxFQUFFO1lBQzlCLG1CQUFtQixFQUFFLEVBQUU7WUFDdkIsMkJBQTJCLEVBQUUsRUFBRTtZQUMvQixlQUFlLEVBQUUsRUFBRTtZQUNuQixPQUFPLEVBQUUsT0FBTztTQUNELENBQUMsRUFDbEIsa0JBQWtCLENBQ25CLENBQUM7UUFFRixNQUFNLFNBQVMsQ0FBQyxPQUFPLENBQ3JCLEtBQUssQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLHNDQUFzQyxDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsWUFBWSxDQUFDLEVBQ3BGLGtCQUFrQixDQUNuQixDQUFDO1FBQ0YsSUFBSSxJQUFJLENBQUMsU0FBUztZQUFFLElBQUksQ0FBQyxTQUFTLEdBQUcsT0FBTyxDQUFDO0lBQy9DLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsS0FBSyxDQUFDLGVBQWUsQ0FDbkIsWUFBaUQsRUFDakQsa0JBQXVDO1FBRXZDLCtCQUErQixDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFFcEQsTUFBTSxTQUFTLENBQUMsT0FBTyxDQUNyQixLQUFLLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxzQ0FBc0MsQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLFlBQVksQ0FBQyxFQUNwRixrQkFBa0IsQ0FDbkIsQ0FBQztRQUNGLElBQUksSUFBSSxDQUFDLFNBQVM7WUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLFlBQVksR0FBRyxZQUFZLENBQUM7SUFDakUsQ0FBQztJQUVELEtBQUssQ0FBQyxvQkFBb0I7UUFDeEIsSUFBSSxDQUFDO1lBQ0gsTUFBTSxhQUFhLEdBQUcsTUFBTSxLQUFLLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7WUFFdkYsT0FBTyxhQUFhLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1FBQ3RELENBQUM7UUFBQyxPQUFPLEdBQUcsRUFBRSxDQUFDO1lBQ2IsTUFBTSxZQUFZLEdBQUcsaUJBQWlCLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDNUMsSUFBSSxZQUFZLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxFQUFFLENBQUM7Z0JBQzNDLE1BQU0sSUFBSSxhQUFhLENBQUMsU0FBUyxJQUFJLENBQUMsRUFBRSxZQUFZLENBQUMsQ0FBQztZQUN4RCxDQUFDO2lCQUFNLElBQUksWUFBWSxDQUFDLFFBQVEsQ0FBQyxvQkFBb0IsQ0FBQyxFQUFFLENBQUM7Z0JBQ3ZELE9BQU8sSUFBSSxDQUFDO1lBQ2QsQ0FBQztZQUNELElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsR0FBRyxFQUFFLE9BQU8sRUFBRSxJQUFJLENBQUMsRUFBRSxFQUFFLEVBQUUsNENBQTRDLENBQUMsQ0FBQztZQUMzRixNQUFNLEdBQUcsQ0FBQztRQUNaLENBQUM7SUFDSCxDQUFDO0lBRUQsS0FBSyxDQUFDLG1CQUFtQixDQUFDLFNBQXlDLEVBQUU7UUFDbkUsTUFBTSxJQUFJLEdBQUcsTUFBTSxDQUFDLElBQUksSUFBSSxDQUFDLENBQUM7UUFDOUIsTUFBTSxFQUFFLEdBQUcsTUFBTSxDQUFDLEVBQUUsSUFBSSxDQUFDLE1BQU0sSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDLENBQUM7UUFFdkQsSUFBSSxJQUFJLElBQUksRUFBRSxFQUFFLENBQUM7WUFDZixNQUFNLElBQUksS0FBSyxDQUNiLHdDQUF3QyxJQUFJLHNDQUFzQyxFQUFFLElBQUksQ0FDekYsQ0FBQztRQUNKLENBQUM7UUFFRCxJQUFJLENBQUM7WUFDSCxNQUFNLGNBQWMsR0FBRyxNQUFNLEtBQUssQ0FBQyxRQUFRLENBQUMsT0FBTztpQkFDaEQsbUJBQW1CLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRSxJQUFJLEVBQUUsRUFBRSxDQUFDO2lCQUN0QyxJQUFJLEVBQUUsQ0FBQztZQUVWLE9BQU8sY0FBYyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNwQyxDQUFDO1FBQUMsT0FBTyxHQUFHLEVBQUUsQ0FBQztZQUNiLE1BQU0sWUFBWSxHQUFHLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQzVDLElBQUksWUFBWSxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsRUFBRSxDQUFDO2dCQUMzQyxNQUFNLElBQUksYUFBYSxDQUFDLFNBQVMsSUFBSSxDQUFDLEVBQUUsWUFBWSxDQUFDLENBQUM7WUFDeEQsQ0FBQztZQUNELElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsR0FBRyxFQUFFLE9BQU8sRUFBRSxJQUFJLENBQUMsRUFBRSxFQUFFLEVBQUUsNkNBQTZDLENBQUMsQ0FBQztZQUM1RixNQUFNLEdBQUcsQ0FBQztRQUNaLENBQUM7SUFDSCxDQUFDO0lBRUQsS0FBSyxDQUFDLDJCQUEyQixDQUMvQixTQUFzRSxFQUFFO1FBRXhFLE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDO1FBQzlCLE1BQU0sRUFBRSxHQUFHLE1BQU0sQ0FBQyxFQUFFLElBQUksQ0FBQyxNQUFNLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQyxDQUFDO1FBQ3ZELE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLElBQUksRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLGNBQWMsRUFBRSxJQUFJLEVBQUUsQ0FBQztRQUUzRSxJQUFJLElBQUksSUFBSSxFQUFFLEVBQUUsQ0FBQztZQUNmLE1BQU0sSUFBSSxLQUFLLENBQ2Isd0NBQXdDLElBQUksc0NBQXNDLEVBQUUsSUFBSSxDQUN6RixDQUFDO1FBQ0osQ0FBQztRQUVELElBQUksQ0FBQztZQUNILE1BQU0sY0FBYyxHQUFHLE1BQU0sS0FBSyxDQUFDLFFBQVEsQ0FBQyxPQUFPO2lCQUNoRCwyQkFBMkIsQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsTUFBTSxDQUFDO2lCQUN0RCxJQUFJLEVBQUUsQ0FBQztZQUVWLE9BQU8sY0FBYyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNwQyxDQUFDO1FBQUMsT0FBTyxHQUFHLEVBQUUsQ0FBQztZQUNiLE1BQU0sWUFBWSxHQUFHLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQzVDLElBQUksWUFBWSxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsRUFBRSxDQUFDO2dCQUMzQyxNQUFNLElBQUksYUFBYSxDQUFDLFNBQVMsSUFBSSxDQUFDLEVBQUUsWUFBWSxDQUFDLENBQUM7WUFDeEQsQ0FBQztZQUNELElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsR0FBRyxFQUFFLE9BQU8sRUFBRSxJQUFJLENBQUMsRUFBRSxFQUFFLEVBQUUsdUNBQXVDLENBQUMsQ0FBQztZQUN0RixNQUFNLEdBQUcsQ0FBQztRQUNaLENBQUM7SUFDSCxDQUFDO0lBRUQsS0FBSyxDQUFDLGtCQUFrQjtRQUN0QixNQUFNLGlCQUFpQixHQUFHLE1BQU0sSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUM7UUFFNUQsSUFBSSxpQkFBaUIsS0FBSyxJQUFJLEVBQUUsQ0FBQztZQUMvQixPQUFPLElBQUksQ0FBQztRQUNkLENBQUM7UUFFRCxNQUFNLFdBQVcsR0FBRyxNQUFNLElBQUksQ0FBQyxVQUFVLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUM3RCxPQUFPLFdBQVcsQ0FBQyxJQUFJLENBQUM7SUFDMUIsQ0FBQztJQUdLLEFBQU4sS0FBSyxDQUFDLE9BQU87UUFDWCxJQUFJLENBQUMsQ0FBQyxNQUFNLElBQUksQ0FBQyw4QkFBOEIsRUFBRSxDQUFDLEVBQUUsQ0FBQztZQUNuRCxNQUFNLEtBQUssQ0FBQyxTQUFTLElBQUksQ0FBQyxFQUFFLGlCQUFpQixDQUFDLENBQUM7UUFDakQsQ0FBQztRQUNELE1BQU0sRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLEdBQUcsTUFBTSxLQUFLLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO1FBRW5GLElBQUksQ0FBQyxTQUFTLEdBQUcscUJBQXFCLENBQUM7WUFDckMsWUFBWSxFQUFFLElBQW9CO1lBQ2xDLFNBQVMsRUFBRSxLQUFLLENBQUMsU0FBc0I7WUFDdkMsVUFBVSxFQUFFLE1BQU0sS0FBSyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUU7WUFDdEUsWUFBWSxFQUFFLE1BQU0sS0FBSyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsaUNBQWlDLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksRUFBRTtTQUM3RixDQUFDLENBQUM7UUFFSCxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDeEIsQ0FBQztJQUdLLEFBQU4sS0FBSyxDQUFDLGlCQUFpQjtRQUNyQixNQUFNLGdCQUFnQixHQUFHLE1BQU0sU0FBUyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQzFELE1BQU0saUJBQWlCLEdBQUcsTUFBTSxJQUFJLENBQUMsZ0JBQWdCLENBQ25ELEtBQUssQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLHNCQUFzQixDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FDOUQsQ0FBQztRQUNGLE1BQU0sY0FBYyxHQUFHLGFBQWEsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBRXhELE9BQU87WUFDTCxZQUFZLEVBQUUsY0FBYyxDQUFDLFlBQVk7WUFDekMsT0FBTyxFQUFFLGNBQWMsQ0FBQyxPQUFPO1lBQy9CLE9BQU8sRUFBRSxjQUFjLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQztZQUMvQyxRQUFRLEVBQUUsY0FBYyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFrQixFQUFFLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNyRixTQUFTLEVBQUUscUJBQXFCLENBQUM7Z0JBQy9CLFlBQVksRUFBRSxjQUFjLENBQUMsY0FBYztnQkFDM0MsU0FBUyxFQUFFLGNBQWMsQ0FBQyxTQUFTO2dCQUNuQyxVQUFVLEVBQUUsY0FBYyxDQUFDLFVBQVU7Z0JBQ3JDLFlBQVksRUFBRSxjQUFjLENBQUMsc0JBQXNCO2FBQ3BELENBQUM7WUFDRixVQUFVLEVBQUUsY0FBYyxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUF1QixFQUFFLEVBQUUsQ0FDekUsZUFBZSxDQUFDLElBQUksRUFBRSxnQkFBZ0IsQ0FBQyxDQUN4QztTQUNGLENBQUM7SUFDSixDQUFDO0lBRUQ7O09BRUc7SUFFRyxBQUFOLEtBQUssQ0FBQyxXQUFXO1FBQ2YsSUFBSSxDQUFDLFFBQVEsR0FBRyxNQUFNLEtBQUssQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLHlCQUF5QixDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUV2RixPQUFPLElBQUksQ0FBQyxRQUFTLENBQUM7SUFDeEIsQ0FBQztJQUVEOztPQUVHO0lBRUcsQUFBTixLQUFLLENBQUMsWUFBWTtRQUNoQixJQUFJLENBQUMsSUFBSSxHQUFHLE1BQU0sS0FBSyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUV0RSxPQUFPLElBQUksQ0FBQyxJQUFLLENBQUMsUUFBUSxFQUFlLENBQUM7SUFDNUMsQ0FBQztJQUVEOztPQUVHO0lBRUcsQUFBTixLQUFLLENBQUMscUJBQXFCLENBQUMsT0FBZTtRQUN6QyxPQUFPLE1BQU0sQ0FBQyxNQUFNLEtBQUssQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLDBCQUEwQixDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUNsRyxDQUFDO0lBRUQ7O09BRUc7SUFFRyxBQUFOLEtBQUssQ0FBQyxVQUFVO1FBQ2QsSUFBSSxDQUFDLElBQUksR0FBRyxNQUFNLEtBQUssQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUU5RSxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUF1QixDQUFDO0lBQ25ELENBQUM7SUFFRDs7T0FFRztJQUVHLEFBQU4sS0FBSyxDQUFDLG9CQUFvQjtRQUN4QixJQUFJLENBQUMsaUJBQWlCLEdBQUcsTUFBTSxLQUFLLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyx5QkFBeUIsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7UUFFaEcsT0FBTyxJQUFJLENBQUMsaUJBQWtCLENBQUM7SUFDakMsQ0FBQztJQUVEOztPQUVHO0lBRUgsd0JBQXdCO1FBQ3RCLE9BQU8sS0FBSyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsNkJBQTZCLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzlFLENBQUM7SUFFRDs7T0FFRztJQUVHLEFBQU4sS0FBSyxDQUFDLFVBQVU7UUFDZCxNQUFNLE9BQU8sR0FBWSxNQUFNLEtBQUssQ0FBQyxRQUFRLENBQUMsT0FBTzthQUNsRCxlQUFlLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQzthQUN4QixJQUFJLEVBQUU7YUFDTixJQUFJLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQVksQ0FBQyxDQUFDO1FBRXhELE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxHQUFHLGNBQWMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFFRDs7T0FFRztJQUVHLEFBQU4sS0FBSyxDQUFDLGFBQWEsQ0FBQyxNQUFvQjtRQUN0QyxNQUFNLElBQUksR0FBZTtZQUN2QixNQUFNO1lBQ04sU0FBUyxFQUFFLENBQUM7WUFDWixVQUFVLEVBQUUsRUFBRTtZQUNkLFlBQVksRUFBRSxFQUFFO1NBQ2pCLENBQUM7UUFFRixJQUFJLENBQUMsVUFBVSxHQUFHLE1BQU0sS0FBSyxDQUFDLFFBQVEsQ0FBQyxPQUFPO2FBQzNDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsSUFBSSxDQUFDO2FBQ3BDLElBQUksRUFBRTthQUNOLElBQUksQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMscUJBQXFCLENBQUMsS0FBSyxDQUFnQixDQUFDLENBQUM7UUFFaEUsT0FBTyxJQUFJLENBQUMsVUFBVyxDQUFDO0lBQzFCLENBQUM7SUFFRDs7T0FFRztJQUVILGdCQUFnQjtRQUNkLE9BQU8sS0FBSyxDQUFDLFFBQVEsQ0FBQyxPQUFPO2FBQzFCLDJCQUEyQixDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7YUFDcEMsSUFBSSxFQUFFO2FBQ04sSUFBSSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQyxLQUFLLENBQWdCLENBQUMsQ0FBQztJQUNsRSxDQUFDO0lBRUQ7O09BRUc7SUFFRyxBQUFOLEtBQUssQ0FBQyxVQUFVLENBQUMsT0FBZTtRQUM5QixJQUFJLENBQUM7WUFDSCxPQUFPLE1BQU0sS0FBSyxDQUFDLFFBQVEsQ0FBQyxPQUFPO2lCQUNoQyxlQUFlLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRSxPQUFPLENBQUM7aUJBQ2pDLElBQUksRUFBRTtpQkFDTixJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQztpQkFDN0IsSUFBSSxDQUFDLENBQUMsQ0FBa0IsRUFBRSxFQUFFLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUMxRCxDQUFDO1FBQUMsT0FBTyxHQUFHLEVBQUUsQ0FBQztZQUNiLE1BQU0sWUFBWSxHQUFHLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQzVDLElBQUksWUFBWSxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsRUFBRSxDQUFDO2dCQUMzQyxNQUFNLElBQUksYUFBYSxDQUFDLFNBQVMsSUFBSSxDQUFDLEVBQUUsWUFBWSxDQUFDLENBQUM7WUFDeEQsQ0FBQztpQkFBTSxJQUFJLFlBQVksQ0FBQyxRQUFRLENBQUMsOEJBQThCLENBQUMsRUFBRSxDQUFDO2dCQUNqRSxNQUFNLElBQUksYUFBYSxDQUFDLFNBQVMsSUFBSSxDQUFDLEVBQUUsWUFBWSxPQUFPLFlBQVksQ0FBQyxDQUFDO1lBQzNFLENBQUM7WUFDRCxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFLEdBQUcsRUFBRSxPQUFPLEVBQUUsSUFBSSxDQUFDLEVBQUUsRUFBRSxPQUFPLEVBQUUsRUFBRSxtQ0FBbUMsQ0FBQyxDQUFDO1lBQzNGLE1BQU0sR0FBRyxDQUFDO1FBQ1osQ0FBQztJQUNILENBQUM7SUFFRDs7T0FFRztJQUVHLEFBQU4sS0FBSyxDQUFDLGVBQWU7UUFDbkIsSUFBSSxDQUFDO1lBQ0gsT0FBTyxNQUFNLENBQUMsTUFBTSxLQUFLLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUNwRixDQUFDO1FBQUMsT0FBTyxHQUFHLEVBQUUsQ0FBQztZQUNiLE1BQU0sWUFBWSxHQUFHLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQzVDLElBQUksWUFBWSxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsRUFBRSxDQUFDO2dCQUMzQyxNQUFNLElBQUksYUFBYSxDQUFDLFNBQVMsSUFBSSxDQUFDLEVBQUUsWUFBWSxDQUFDLENBQUM7WUFDeEQsQ0FBQztZQUNELElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsR0FBRyxFQUFFLE9BQU8sRUFBRSxJQUFJLENBQUMsRUFBRSxFQUFFLEVBQUUseUNBQXlDLENBQUMsQ0FBQztZQUN4RixNQUFNLEdBQUcsQ0FBQztRQUNaLENBQUM7SUFDSCxDQUFDO0lBRUQ7O09BRUc7SUFFRyxBQUFOLEtBQUssQ0FBQyxxQkFBcUI7UUFDekIsT0FBTyxNQUFNLEtBQUssQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUM1RSxDQUFDO0lBRUQ7Ozs7T0FJRztJQUVHLEFBQU4sS0FBSyxDQUFDLHFCQUFxQixDQUN6QixxQkFBNkIsRUFDN0Isa0JBQXVDO1FBRXZDLCtCQUErQixDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFFcEQsTUFBTSxlQUFlLEdBQUcsS0FBSyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMscUJBQXFCLENBQ2xFLElBQUksQ0FBQyxFQUFFLEVBQ1AscUJBQXFCLENBQ3RCLENBQUM7UUFDRixNQUFNLFNBQVMsQ0FBQyxPQUFPLENBQUMsZUFBZSxFQUFFLGtCQUFrQixDQUFDLENBQUM7SUFDL0QsQ0FBQztJQUdELGFBQWE7UUFDWCxPQUFPLEtBQUssQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDOUQsQ0FBQztJQUVPLEtBQUssQ0FBQyw4QkFBOEI7UUFDMUMsTUFBTSxXQUFXLEdBQUcsTUFBTSxlQUFlLENBQUM7WUFDeEMsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUU7WUFDbkMsV0FBVyxFQUFFLENBQUMsTUFBTSxFQUFFLEVBQUU7Z0JBQ3RCLElBQUksQ0FBQyxNQUFNO29CQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLFNBQVMsSUFBSSxDQUFDLEVBQUUsWUFBWSxNQUFNLEVBQUUsQ0FBQyxDQUFDO2dCQUVyRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxDQUFDO1lBQ2hDLENBQUM7WUFDRCxhQUFhLEVBQUUsOEJBQThCO1lBQzdDLFFBQVEsRUFBRSw4QkFBOEI7U0FDekMsQ0FBQyxDQUFDO1FBRUgsT0FBTyxXQUFXLENBQUM7SUFDckIsQ0FBQztJQUVEOzs7T0FHRztJQUNILFlBQVksQ0FBQyxNQUFvQjtRQUMvQixPQUFPLEtBQUssQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLHNCQUFzQixDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDL0UsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxLQUFLLENBQUMsbUJBQW1CLENBQUMsSUFBWSxFQUFFLEVBQVU7UUFDaEQsSUFBSSxJQUFJLElBQUksRUFBRSxFQUFFLENBQUM7WUFDZixNQUFNLElBQUksS0FBSyxDQUNiLHdDQUF3QyxJQUFJLDZCQUE2QixFQUFFLElBQUksQ0FDaEYsQ0FBQztRQUNKLENBQUM7UUFDRCxPQUFPLE1BQU0sS0FBSyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsMEJBQTBCLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRSxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDM0YsQ0FBQztJQUVEOzs7T0FHRztJQUNILEtBQUssQ0FBQyxXQUFXLENBQUMsTUFBb0I7UUFDcEMsTUFBTSxJQUFJLEdBQXNCLE1BQU0sS0FBSyxDQUFDLFFBQVEsQ0FBQyxPQUFPO2FBQ3pELHFCQUFxQixDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsTUFBTSxDQUFDO2FBQ3RDLElBQUksRUFBRSxDQUFDO1FBRVYsTUFBTSxnQkFBZ0IsR0FBRyxNQUFNLFNBQVMsQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUUxRCxPQUFPLGVBQWUsQ0FBQyxJQUFJLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztJQUNqRCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxLQUFLLENBQUMsYUFBYTtRQUNqQixPQUFPLE1BQU0sQ0FBQyxNQUFNLEtBQUssQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLHVCQUF1QixDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ3RGLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsS0FBSyxDQUFDLFFBQVEsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxFQUFFLEdBQUcsR0FBRyxNQUFNO1FBQ3BDLE1BQU0sVUFBVSxHQUFHLE1BQU0sQ0FBQyxNQUFNLEtBQUssQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLHVCQUF1QixDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQ2hHLElBQUksVUFBVSxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQ3JCLE9BQU8sRUFBRSxDQUFDO1FBQ1osQ0FBQztRQUVELE1BQU0sS0FBSyxHQUF3QixNQUFNLEtBQUssQ0FBQyxRQUFRLENBQUMsT0FBTzthQUM1RCxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLEtBQUssRUFBRSxHQUFHLENBQUM7YUFDdkMsSUFBSSxFQUFFO2FBQ04sSUFBSSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFdEUsTUFBTSxnQkFBZ0IsR0FBRyxNQUFNLFNBQVMsQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUUxRCxNQUFNLFdBQVcsR0FBRyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxlQUFlLENBQUMsSUFBSSxFQUFFLGdCQUFnQixDQUFDLENBQUMsQ0FBQztRQUVqRixPQUFPLFdBQVcsQ0FBQztJQUNyQixDQUFDO0lBRUQ7Ozs7Ozs7O09BUUc7SUFFRyxBQUFOLEtBQUssQ0FBQyxPQUFPLENBQ1gsUUFBa0IsRUFDbEIsVUFBc0IsRUFDdEIsU0FBb0IsRUFDcEIsVUFBVSxHQUFHLFNBQVMsRUFDdEIsa0JBQXVDLEVBQ3ZDLFFBQWtDO1FBRWxDLCtCQUErQixDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFFcEQsUUFBUSxHQUFHLFlBQVksQ0FBQyxRQUFRLEVBQUUsTUFBTSxTQUFTLENBQUMsY0FBYyxFQUFFLENBQUMsQ0FBQztRQUNwRSxNQUFNLG1CQUFtQixHQUFHLG1CQUFtQixDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQzVELE1BQU0sU0FBUyxHQUFHLE1BQU0sV0FBVyxDQUFDLFlBQVksQ0FBQztZQUMvQyxrQkFBa0IsRUFBRSxLQUFLLElBQUksRUFBRTtnQkFDN0IsTUFBTSxTQUFTLENBQUMsT0FBTyxDQUNyQixLQUFLLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsQ0FDdEMsSUFBSSxDQUFDLEVBQUUsRUFDUCxtQkFBbUIsRUFDbkIsUUFBUSxFQUNSLHNCQUFzQixDQUFDLFVBQVUsQ0FBQyxFQUNsQyxTQUFTLEVBQ1QsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQ3pDLEVBQ0Qsa0JBQWtCLENBQ25CLENBQUM7WUFDSixDQUFDO1lBQ0QsT0FBTyxFQUFFLENBQUMsRUFBRSxVQUFVLEVBQUUsQ0FBQztZQUN6QixTQUFTLEVBQUUsZ0JBQWdCO1NBQzVCLENBQUMsQ0FBQztRQUNILE9BQU8sU0FBUyxDQUFDO0lBQ25CLENBQUM7SUFFRDs7Ozs7Ozs7T0FRRztJQUVHLEFBQU4sS0FBSyxDQUFDLFVBQVUsQ0FDZCxNQUFvQixFQUNwQixXQUFxQixFQUNyQixhQUF5QixFQUN6QixRQUFtQixFQUNuQixrQkFBdUMsRUFDdkMsV0FBcUM7UUFFckMsK0JBQStCLENBQUMsa0JBQWtCLENBQUMsQ0FBQztRQUVwRCxXQUFXLEdBQUcsWUFBWSxDQUFDLFdBQVcsRUFBRSxNQUFNLFNBQVMsQ0FBQyxjQUFjLEVBQUUsQ0FBQyxDQUFDO1FBQzFFLE1BQU0sU0FBUyxDQUFDLE9BQU8sQ0FDckIsS0FBSyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsd0JBQXdCLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRSxNQUFNLEVBQUUsV0FBVyxDQUFDLEVBQzdFLGtCQUFrQixDQUNuQixDQUFDO1FBQ0YsTUFBTSxTQUFTLENBQUMsT0FBTyxDQUNyQixLQUFLLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQywwQkFBMEIsQ0FDL0MsSUFBSSxDQUFDLEVBQUUsRUFDUCxNQUFNLEVBQ04sc0JBQXNCLENBQUMsYUFBYSxDQUFDLENBQ3RDLEVBQ0Qsa0JBQWtCLENBQ25CLENBQUM7UUFDRixNQUFNLFNBQVMsQ0FBQyxPQUFPLENBQ3JCLEtBQUssQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLHlCQUF5QixDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsTUFBTSxFQUFFLFFBQVEsQ0FBQyxFQUMzRSxrQkFBa0IsQ0FDbkIsQ0FBQztRQUNGLElBQUksV0FBVyxFQUFFLENBQUM7WUFDaEIsTUFBTSxTQUFTLENBQUMsT0FBTyxDQUNyQixLQUFLLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyw0QkFBNEIsQ0FDakQsSUFBSSxDQUFDLEVBQUUsRUFDUCxNQUFNLEVBQ04sSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsQ0FDNUIsRUFDRCxrQkFBa0IsQ0FDbkIsQ0FBQztRQUNKLENBQUM7SUFDSCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUVHLEFBQU4sS0FBSyxDQUFDLFVBQVUsQ0FBQyxNQUFvQixFQUFFLGtCQUF1QztRQUM1RSwrQkFBK0IsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBRXBELE1BQU0sU0FBUyxDQUFDLE9BQU8sQ0FDckIsS0FBSyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRSxNQUFNLENBQUMsRUFDNUQsa0JBQWtCLENBQ25CLENBQUM7SUFDSixDQUFDO0lBRUQ7Ozs7O09BS0c7SUFFRyxBQUFOLEtBQUssQ0FBQyxhQUFhLENBQ2pCLFVBQWtCLEVBQ2xCLFdBQTZCLEVBQzdCLGtCQUF1QztRQUV2QywrQkFBK0IsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBRXBELE1BQU0sZUFBZSxHQUFHLEtBQUssQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsVUFBVSxFQUFFO1lBQ3JGLElBQUksRUFBRSxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxpQkFBaUIsQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQzdFLGdCQUFnQixFQUFFLFdBQVcsQ0FBQyxnQkFBZ0I7Z0JBQzVDLENBQUMsQ0FBQyxpQkFBaUIsQ0FBQyxXQUFXLENBQUMsZ0JBQWdCLEVBQUUsVUFBVSxDQUFDO2dCQUM3RCxDQUFDLENBQUMsRUFBRTtZQUNOLFFBQVEsRUFBRSxXQUFXLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRTtTQUMzRSxDQUFDLENBQUM7UUFDSCxNQUFNLFNBQVMsQ0FBQyxPQUFPLENBQUMsZUFBZSxFQUFFLGtCQUFrQixDQUFDLENBQUM7SUFDL0QsQ0FBQztJQUVEOzs7O09BSUc7SUFFRyxBQUFOLEtBQUssQ0FBQyxhQUFhLENBQUMsT0FBZSxFQUFFLGtCQUF1QztRQUMxRSwrQkFBK0IsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBRXBELE1BQU0sZUFBZSxHQUFHLEtBQUssQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDcEYsTUFBTSxTQUFTLENBQUMsT0FBTyxDQUFDLGVBQWUsRUFBRSxrQkFBa0IsQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUFDRDs7OztPQUlHO0lBRUcsQUFBTixLQUFLLENBQUMsVUFBVSxDQUNkLFVBQTZCLEVBQzdCLGtCQUF1QztRQUV2QywrQkFBK0IsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBRXBELE1BQU0sZUFBZSxHQUFHLEtBQUssQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFDdkYsTUFBTSxTQUFTLENBQUMsT0FBTyxDQUFDLGVBQWUsRUFBRSxrQkFBa0IsQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUFFRDs7O09BR0c7SUFDSCxLQUFLLENBQUMsT0FBTyxDQUFDLGtCQUF1QztRQUNuRCwrQkFBK0IsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBRXBELE1BQU0sU0FBUyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxFQUFFLGtCQUFrQixDQUFDLENBQUM7SUFDNUYsQ0FBQztJQUVEOzs7T0FHRztJQUNILEtBQUssQ0FBQyxNQUFNLENBQUMsa0JBQXVDO1FBQ2xELCtCQUErQixDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFFcEQsTUFBTSxTQUFTLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLEVBQUUsa0JBQWtCLENBQUMsQ0FBQztJQUMzRixDQUFDO0lBRUQ7OztPQUdHO0lBRUgsNkJBQTZCLENBQzNCLE9BQXFCLEVBQ3JCLGVBQXVCLHFCQUFxQjtRQUU1QyxPQUFPLEtBQUssQ0FBQyxRQUFRLENBQUMsT0FBTzthQUMxQixtQ0FBbUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLE9BQU8sRUFBRSxZQUFZLENBQUM7YUFDbkUsSUFBSSxFQUFFLENBQUM7SUFDWixDQUFDO0lBRUQ7OztPQUdHO0lBRUgsdUJBQXVCLENBQUMsSUFBZTtRQUNyQyxPQUFPLEtBQUssQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLDRCQUE0QixDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDbkYsQ0FBQztJQUVPLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBSSxPQUFtQjtRQUNuRCxJQUFJLENBQUM7WUFDSCxPQUFPLE1BQU0sT0FBTyxDQUFDO1FBQ3ZCLENBQUM7UUFBQyxPQUFPLEdBQUcsRUFBRSxDQUFDO1lBQ2IsTUFBTSxPQUFPLEdBQUcsaUJBQWlCLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDdkMsSUFBSSxPQUFPLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQztnQkFDeEMsTUFBTSxJQUFJLGFBQWEsQ0FBQyxTQUFTLElBQUksQ0FBQyxFQUFFLFlBQVksQ0FBQyxDQUFDO1lBQ3hELENBQUM7WUFDRCxNQUFNLEdBQUcsQ0FBQztRQUNaLENBQUM7SUFDSCxDQUFDO0NBQ0Y7QUFyckJDO0lBREMsbUJBQW1CLEVBQUU7Ozs7c0NBR3JCO0FBTUs7SUFETCxtQkFBbUIsRUFBRTs7Ozt3Q0FTckI7QUFNSztJQURMLG1CQUFtQixFQUFFOzs7OzBDQUlyQjtBQWtLSztJQURMLG1CQUFtQixFQUFFOzs7O29DQWVyQjtBQUdLO0lBREwsbUJBQW1CLEVBQUU7Ozs7OENBdUJyQjtBQU1LO0lBREwsbUJBQW1CLEVBQUU7Ozs7d0NBS3JCO0FBTUs7SUFETCxtQkFBbUIsRUFBRTs7Ozt5Q0FLckI7QUFNSztJQURMLG1CQUFtQixFQUFFOzs7O2tEQUdyQjtBQU1LO0lBREwsbUJBQW1CLEVBQUU7Ozs7dUNBS3JCO0FBTUs7SUFETCxtQkFBbUIsRUFBRTs7OztpREFLckI7QUFNRDtJQURDLG1CQUFtQixFQUFFOzs7O3FEQUdyQjtBQU1LO0lBREwsbUJBQW1CLEVBQUU7Ozs7dUNBUXJCO0FBTUs7SUFETCxtQkFBbUIsRUFBRTs7OzswQ0FlckI7QUFNRDtJQURDLG1CQUFtQixFQUFFOzs7OzZDQU1yQjtBQU1LO0lBREwsbUJBQW1CLEVBQUU7Ozs7dUNBa0JyQjtBQU1LO0lBREwsbUJBQW1CLEVBQUU7Ozs7NENBWXJCO0FBTUs7SUFETCxtQkFBbUIsRUFBRTs7OztrREFHckI7QUFRSztJQURMLG1CQUFtQixFQUFFOzs7O2tEQVlyQjtBQUdEO0lBREMsbUJBQW1CLEVBQUU7Ozs7MENBR3JCO0FBNkZLO0lBREwsbUJBQW1CLEVBQUU7Ozs7b0NBK0JyQjtBQVlLO0lBREwsbUJBQW1CLEVBQUU7Ozs7dUNBc0NyQjtBQVFLO0lBREwsbUJBQW1CLEVBQUU7Ozs7dUNBUXJCO0FBU0s7SUFETCxtQkFBbUIsRUFBRTs7OzswQ0FnQnJCO0FBUUs7SUFETCxtQkFBbUIsRUFBRTs7OzswQ0FNckI7QUFPSztJQURMLG1CQUFtQixFQUFFOzs7O3VDQVNyQjtBQTJCRDtJQURDLG1CQUFtQixFQUFFOzs7OzBEQVFyQjtBQU9EO0lBREMsbUJBQW1CLEVBQUU7Ozs7b0RBR3JCO0FBZUgsZUFBZSxLQUFLLENBQUMifQ==
@@ -32,7 +32,6 @@ declare class Order {
32
32
  * Function for fetching hold deposits sum of the order and its suborders
33
33
  */
34
34
  calculateTotalOrderDeposit(): Promise<TokenAmount>;
35
- calculateOrderOutputReserve(): Promise<TokenAmount>;
36
35
  /**
37
36
  * Function for fetching spent deposits sum of the order and its suborders
38
37
  */
@@ -45,6 +44,7 @@ declare class Order {
45
44
  getAwaitingPayment(): Promise<boolean>;
46
45
  getDeposit(): Promise<TokenAmount>;
47
46
  getStartDate(): Promise<number>;
47
+ getBillingStartDate(): Promise<number>;
48
48
  calculateOrderTime(): Promise<number>;
49
49
  setAwaitingPayment(value: boolean, transactionOptions?: TransactionOptions): Promise<void>;
50
50
  updateStatus(status: OrderStatus, transactionOptions?: TransactionOptions): Promise<void>;
@@ -159,12 +159,6 @@ class Order {
159
159
  .call()
160
160
  .then((price) => price.toString());
161
161
  }
162
- calculateOrderOutputReserve() {
163
- return Order.contract.methods
164
- .calculateOrderOutputReserve(this.id)
165
- .call()
166
- .then((price) => price.toString());
167
- }
168
162
  /**
169
163
  * Function for fetching spent deposits sum of the order and its suborders
170
164
  */
@@ -202,6 +196,9 @@ class Order {
202
196
  async getStartDate() {
203
197
  return Number(await Order.contract.methods.getStartDate(this.id).call());
204
198
  }
199
+ async getBillingStartDate() {
200
+ return Number(await Order.contract.methods.getBillingStartDate(this.id).call());
201
+ }
205
202
  async calculateOrderTime() {
206
203
  return Number(await Order.contract.methods.calculateOrderTime(this.id).call());
207
204
  }
@@ -240,8 +237,7 @@ class Order {
240
237
  subOrderInfo.tokenAddress = BlockchainConnector.getInstance().getTokenAddress();
241
238
  }
242
239
  deposit = deposit ?? '0';
243
- const args = subOrderInfo.args;
244
- const preparedInfo = orderInfoToRaw(subOrderInfo);
240
+ const { args, ...preparedInfo } = orderInfoToRaw(subOrderInfo);
245
241
  const params = {
246
242
  blockParentOrder,
247
243
  deposit,
@@ -386,12 +382,6 @@ __decorate([
386
382
  __metadata("design:paramtypes", []),
387
383
  __metadata("design:returntype", Promise)
388
384
  ], Order.prototype, "calculateTotalOrderDeposit", null);
389
- __decorate([
390
- incrementMethodCall(),
391
- __metadata("design:type", Function),
392
- __metadata("design:paramtypes", []),
393
- __metadata("design:returntype", Promise)
394
- ], Order.prototype, "calculateOrderOutputReserve", null);
395
385
  __decorate([
396
386
  incrementMethodCall(),
397
387
  __metadata("design:type", Function),
@@ -428,6 +418,12 @@ __decorate([
428
418
  __metadata("design:paramtypes", []),
429
419
  __metadata("design:returntype", Promise)
430
420
  ], Order.prototype, "getStartDate", null);
421
+ __decorate([
422
+ incrementMethodCall(),
423
+ __metadata("design:type", Function),
424
+ __metadata("design:paramtypes", []),
425
+ __metadata("design:returntype", Promise)
426
+ ], Order.prototype, "getBillingStartDate", null);
431
427
  __decorate([
432
428
  incrementMethodCall(),
433
429
  __metadata("design:type", Function),
@@ -483,4 +479,4 @@ __decorate([
483
479
  __metadata("design:returntype", Promise)
484
480
  ], Order.prototype, "createSubOrders", null);
485
481
  export default Order;
486
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiT3JkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbW9kZWxzL09yZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFBLE9BQU8sRUFJTCxXQUFXLEVBWVgsZ0JBQWdCLEVBRWhCLGNBQWMsRUFFZCwwQkFBMEIsR0FDM0IsTUFBTSxtQkFBbUIsQ0FBQztBQUMzQixPQUFPLEVBQWdDLEtBQUssRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUUzRCxPQUFPLFVBQVUsTUFBTSxjQUFjLENBQUM7QUFFdEMsT0FBTyxFQUNMLCtCQUErQixFQUMvQixhQUFhLEVBQ2IsaUJBQWlCLEVBQ2pCLGNBQWMsRUFDZCxXQUFXLEVBQ1gsbUJBQW1CLEVBQ25CLGNBQWMsR0FDZixNQUFNLG9CQUFvQixDQUFDO0FBQzVCLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZGLE9BQU8sU0FBUyxNQUFNLDhCQUE4QixDQUFDO0FBQ3JELE9BQU8sU0FBUyxNQUFNLHVCQUF1QixDQUFDO0FBQzlDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsOEJBQThCLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQU1qRyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDcEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3ZELE9BQU8sV0FBVyxNQUFNLGdDQUFnQyxDQUFDO0FBRXpELE1BQU0sS0FBSztJQUNELE1BQU0sQ0FBQyxRQUFRLENBQXVCO0lBQ3RDLE1BQU0sQ0FBb0I7SUFFM0IsYUFBYSxDQUFjO0lBQzNCLFNBQVMsQ0FBYTtJQUN0QixXQUFXLENBQWU7SUFDMUIsU0FBUyxDQUFrQjtJQUMzQixXQUFXLENBQWdCO0lBQzNCLFFBQVEsQ0FBVTtJQUNsQixPQUFPLENBQVc7SUFDbEIsU0FBUyxDQUFVO0lBQ25CLEVBQUUsQ0FBZTtJQUV4QixZQUFZLE9BQXFCO1FBQy9CLElBQUksQ0FBQyxFQUFFLEdBQUcsT0FBTyxDQUFDO1FBQ2xCLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDcEIsS0FBSyxDQUFDLFFBQVEsR0FBRyxtQkFBbUIsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNuRSxDQUFDO1FBRUQsSUFBSSxDQUFDLE1BQU0sR0FBRyxVQUFVLENBQUMsS0FBSyxDQUFDLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsSUFBSSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDM0UsQ0FBQztJQUVNLE9BQU87UUFDWixPQUFPLEtBQUssQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDN0QsQ0FBQztJQUVNLGlCQUFpQjtRQUN0QixPQUFPLEtBQUssQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNsRSxDQUFDO0lBRU0sS0FBSyxDQUFDLDhCQUE4QjtRQUN6QyxPQUFPLE1BQU0sS0FBSyxDQUFDLFFBQVEsQ0FBQyxPQUFPO2FBQ2hDLDhCQUE4QixDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7YUFDdkMsSUFBSSxFQUFFO2FBQ04sSUFBSSxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBRU0scUJBQXFCO1FBQzFCLE9BQU8sS0FBSyxDQUFDLFFBQVEsQ0FBQyxPQUFPO2FBQzFCLHlCQUF5QixDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7YUFDbEMsSUFBSSxFQUFFO2FBQ04sSUFBSSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBR1ksQUFBTixLQUFLLENBQUMsWUFBWTtRQUN2QixJQUFJLENBQUMsQ0FBQyxNQUFNLElBQUksQ0FBQyw4QkFBOEIsRUFBRSxDQUFDLEVBQUUsQ0FBQztZQUNuRCxNQUFNLEtBQUssQ0FBQyxTQUFTLElBQUksQ0FBQyxFQUFFLGlCQUFpQixDQUFDLENBQUM7UUFDakQsQ0FBQztRQUNELE1BQU0sVUFBVSxHQUFHLE1BQU0sS0FBSyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUN6RSxNQUFNLFNBQVMsR0FBRyxNQUFNLEtBQUssQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDNUUsTUFBTSxnQkFBZ0IsR0FBRyxhQUFhLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRXhELE1BQU0sY0FBYyxHQUFjLGdCQUFnQixDQUNoRCxnQkFBZ0MsRUFDaEMsYUFBYSxDQUFDLFNBQVMsQ0FBYyxDQUN0QyxDQUFDO1FBRUYsT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFTLEdBQUcsY0FBYyxDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUdZLEFBQU4sS0FBSyxDQUFDLGlCQUFpQjtRQUM1QixNQUFNLGdCQUFnQixHQUFHLE1BQU0sU0FBUyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQzFELE1BQU0saUJBQWlCLEdBQUcsTUFBTSxJQUFJLENBQUMsZ0JBQWdCLENBQ25ELEtBQUssQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLHNCQUFzQixDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FDOUQsQ0FBQztRQUNGLE1BQU0sY0FBYyxHQUFHLGFBQWEsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBRXhELE9BQU8sMEJBQTBCLENBQUMsY0FBYyxFQUFFLGdCQUFnQixDQUFDLENBQUM7SUFDdEUsQ0FBQztJQUVPLEtBQUssQ0FBQyw4QkFBOEI7UUFDMUMsTUFBTSxXQUFXLEdBQUcsTUFBTSxlQUFlLENBQUM7WUFDeEMsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDN0IsV0FBVyxFQUFFLENBQUMsTUFBTSxFQUFFLEVBQUU7Z0JBQ3RCLElBQUksQ0FBQyxNQUFNO29CQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLFNBQVMsSUFBSSxDQUFDLEVBQUUsWUFBWSxNQUFNLEVBQUUsQ0FBQyxDQUFDO2dCQUVyRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxDQUFDO1lBQ2hDLENBQUM7WUFDRCxhQUFhLEVBQUUsOEJBQThCO1lBQzdDLFFBQVEsRUFBRSw4QkFBOEI7U0FDekMsQ0FBQyxDQUFDO1FBRUgsT0FBTyxXQUFXLENBQUM7SUFDckIsQ0FBQztJQUdZLEFBQU4sS0FBSyxDQUFDLFdBQVc7UUFDdEIsTUFBTSxVQUFVLEdBQUcsTUFBTSxLQUFLLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3pFLElBQUksQ0FBQyxRQUFRLEdBQUcsVUFBVSxDQUFDLFFBQVEsQ0FBQztRQUVwQyxPQUFPLElBQUksQ0FBQyxRQUFTLENBQUM7SUFDeEIsQ0FBQztJQUdZLEFBQU4sS0FBSyxDQUFDLGNBQWM7UUFDekIsTUFBTSxVQUFVLEdBQUcsTUFBTSxLQUFLLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO1FBRXpFLE9BQU8sQ0FBQyxJQUFJLENBQUMsV0FBVyxHQUFHLGFBQWEsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFnQixDQUFDLENBQUM7SUFDOUUsQ0FBQztJQUdZLEFBQU4sS0FBSyxDQUFDLFlBQVk7UUFDdkIsSUFBSSxDQUFDLFNBQVMsR0FBRyxNQUFNLEtBQUssQ0FBQyxRQUFRLENBQUMsT0FBTzthQUMxQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO2FBQzFCLElBQUksRUFBRTthQUNOLElBQUksQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUVqRCxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDeEIsQ0FBQztJQUdZLEFBQU4sS0FBSyxDQUFDLGNBQWM7UUFDekIsSUFBSSxDQUFDLFdBQVcsR0FBRyxNQUFNLEtBQUssQ0FBQyxRQUFRLENBQUMsT0FBTzthQUM1QyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO2FBQzVCLElBQUksRUFBRTthQUNOLElBQUksQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7UUFFL0IsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDO0lBQzFCLENBQUM7SUFHWSxBQUFOLEtBQUssQ0FBQyxnQkFBZ0I7UUFDM0IsTUFBTSxnQkFBZ0IsR0FBRyxNQUFNLFNBQVMsQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUUxRCxNQUFNLHFCQUFxQixHQUFHLE1BQU0sS0FBSyxDQUFDLFFBQVEsQ0FBQyxPQUFPO2FBQ3ZELDZCQUE2QixDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7YUFDdEMsSUFBSSxFQUFFO2FBQ04sSUFBSSxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUF3QixDQUFDLENBQUM7UUFFdEUsTUFBTSxzQkFBc0IsR0FBRyxNQUFNLEtBQUssQ0FBQyxRQUFRLENBQUMsT0FBTzthQUN4RCw4QkFBOEIsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO2FBQ3ZDLElBQUksRUFBRTthQUNOLElBQUksQ0FBQyxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBeUIsQ0FBQyxDQUFDO1FBRXpFLElBQUksQ0FBQyxhQUFhLEdBQUcsTUFBTSxLQUFLLENBQUMsUUFBUSxDQUFDLE9BQU87YUFDOUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQzthQUM5QixJQUFJLEVBQUU7YUFDTixJQUFJLENBQUMsQ0FBQyxhQUFhLEVBQUUsRUFBRSxDQUN0QixpQkFBaUIsQ0FDZixhQUFhLENBQUMsYUFBYSxDQUE2QixFQUN4RCxjQUFjLENBQUMscUJBQXFCLEVBQUUsZ0JBQWdCLENBQUMsRUFDdkQsV0FBVyxDQUFDLHNCQUFzQixDQUFDLENBQ3BDLENBQ0YsQ0FBQztRQUVKLElBQUksQ0FBQyxhQUFhLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDOUYsSUFBSSxDQUFDLGFBQWEsQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FDNUUsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUNuQixDQUFDO1FBRUYsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDO0lBQzVCLENBQUM7SUFHWSxBQUFOLEtBQUssQ0FBQyxjQUFjO1FBQ3pCLE1BQU0scUJBQXFCLEdBQVcsTUFBTSxLQUFLLENBQUMsUUFBUSxDQUFDLE9BQU87YUFDL0QsY0FBYyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7YUFDdkIsSUFBSSxFQUFFLENBQUM7UUFDVixNQUFNLHVCQUF1QixHQUFHLEtBQUssQ0FBQyxVQUFVLENBQUMscUJBQXFCLENBQUMsQ0FBQztRQUN4RSxJQUFJLENBQUMsdUJBQXVCLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDcEMsT0FBTztRQUNULENBQUM7UUFFRCxPQUFPLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLHVCQUF1QixDQUFDLENBQUMsQ0FBQztJQUN6RSxDQUFDO0lBR1ksQUFBTixLQUFLLENBQUMsY0FBYyxDQUN6QixXQUF3QixFQUN4QixrQkFBdUM7UUFFdkMsK0JBQStCLENBQUMsa0JBQWtCLENBQUMsQ0FBQztRQUVwRCxNQUFNLGtCQUFrQixHQUFHLE1BQU0sa0JBQWtCLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ3hFLE1BQU0sR0FBRyxHQUFHLEtBQUssQ0FBQyxVQUFVLENBQUMsa0JBQWtCLENBQUMsQ0FBQztRQUVqRCxNQUFNLFNBQVMsQ0FBQyxPQUFPLENBQ3JCLEtBQUssQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLEdBQUcsQ0FBQyxFQUNuRCxrQkFBa0IsQ0FDbkIsQ0FBQztJQUNKLENBQUM7SUFHTSxxQkFBcUIsQ0FBQyxtQkFBNEIsSUFBSTtRQUMzRCxPQUFPLEtBQUssQ0FBQyxRQUFRLENBQUMsT0FBTzthQUMxQiwwQkFBMEIsQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLGdCQUFnQixDQUFDO2FBQ3JELElBQUksRUFBRTthQUNOLElBQUksQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVEOztPQUVHO0lBRUksMEJBQTBCO1FBQy9CLE9BQU8sS0FBSyxDQUFDLFFBQVEsQ0FBQyxPQUFPO2FBQzFCLDBCQUEwQixDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7YUFDbkMsSUFBSSxFQUFFO2FBQ04sSUFBSSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBR00sMkJBQTJCO1FBQ2hDLE9BQU8sS0FBSyxDQUFDLFFBQVEsQ0FBQyxPQUFPO2FBQzFCLDJCQUEyQixDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7YUFDcEMsSUFBSSxFQUFFO2FBQ04sSUFBSSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBRUQ7O09BRUc7SUFFSSwwQkFBMEI7UUFDL0IsT0FBTyxLQUFLLENBQUMsUUFBUSxDQUFDLE9BQU87YUFDMUIsMEJBQTBCLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQzthQUNuQyxJQUFJLEVBQUU7YUFDTixJQUFJLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFRDs7T0FFRztJQUVJLDRCQUE0QjtRQUNqQyxPQUFPLEtBQUssQ0FBQyxRQUFRLENBQUMsT0FBTzthQUMxQiw0QkFBNEIsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO2FBQ3JDLElBQUksRUFBRTthQUNOLElBQUksQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUdZLEFBQU4sS0FBSyxDQUFDLFVBQVU7UUFDckIsTUFBTSxPQUFPLEdBQVksTUFBTSxLQUFLLENBQUMsUUFBUSxDQUFDLE9BQU87YUFDbEQsZUFBZSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7YUFDeEIsSUFBSSxFQUFFO2FBQ04sSUFBSSxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFZLENBQUMsQ0FBQztRQUV4RCxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sR0FBRyxjQUFjLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztJQUNsRCxDQUFDO0lBR00sa0JBQWtCO1FBQ3ZCLE9BQU8sS0FBSyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ25FLENBQUM7SUFHTSxVQUFVO1FBQ2YsT0FBTyxLQUFLLENBQUMsUUFBUSxDQUFDLE9BQU87YUFDMUIsZUFBZSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7YUFDeEIsSUFBSSxFQUFFO2FBQ04sSUFBSSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBR1ksQUFBTixLQUFLLENBQUMsWUFBWTtRQUN2QixPQUFPLE1BQU0sQ0FBQyxNQUFNLEtBQUssQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUMzRSxDQUFDO0lBR1ksQUFBTixLQUFLLENBQUMsa0JBQWtCO1FBQzdCLE9BQU8sTUFBTSxDQUFDLE1BQU0sS0FBSyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7SUFDakYsQ0FBQztJQUdZLEFBQU4sS0FBSyxDQUFDLGtCQUFrQixDQUM3QixLQUFjLEVBQ2Qsa0JBQXVDO1FBRXZDLCtCQUErQixDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFFcEQsTUFBTSxTQUFTLENBQUMsT0FBTyxDQUNyQixLQUFLLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLEtBQUssQ0FBQyxFQUN6RCxrQkFBa0IsQ0FDbkIsQ0FBQztJQUNKLENBQUM7SUFHWSxBQUFOLEtBQUssQ0FBQyxZQUFZLENBQ3ZCLE1BQW1CLEVBQ25CLGtCQUF1QztRQUV2QywrQkFBK0IsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBRXBELElBQUksTUFBTSxLQUFLLFdBQVcsQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUN0QyxNQUFNLFNBQVMsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsRUFBRSxrQkFBa0IsQ0FBQyxDQUFDO1FBQzVGLENBQUM7UUFFRCxJQUFJLElBQUksQ0FBQyxTQUFTO1lBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO0lBQ3JELENBQUM7SUFHWSxBQUFOLEtBQUssQ0FBQyxXQUFXLENBQUMsa0JBQXVDO1FBQzlELCtCQUErQixDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFFcEQsTUFBTSxTQUFTLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLEVBQUUsa0JBQWtCLENBQUMsQ0FBQztJQUMzRixDQUFDO0lBR1ksQUFBTixLQUFLLENBQUMsS0FBSyxDQUFDLGtCQUF1QztRQUN4RCwrQkFBK0IsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBRXBELE1BQU0sU0FBUyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxFQUFFLGtCQUFrQixDQUFDLENBQUM7SUFDMUYsQ0FBQztJQUdZLEFBQU4sS0FBSyxDQUFDLGlCQUFpQixDQUM1QixlQUFlLEdBQUcsRUFBRSxFQUNwQixrQkFBdUM7UUFFdkMsK0JBQStCLENBQUMsa0JBQWtCLENBQUMsQ0FBQztRQUVwRCxNQUFNLFNBQVMsQ0FBQyxPQUFPLENBQ3JCLEtBQUssQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsZUFBZSxDQUFDLEVBQ2xFLGtCQUFrQixDQUNuQixDQUFDO0lBQ0osQ0FBQztJQUdZLEFBQU4sS0FBSyxDQUFDLFFBQVEsQ0FDbkIsTUFBbUIsRUFDbkIsZUFBZSxHQUFHLEVBQUUsRUFDcEIsa0JBQXVDO1FBRXZDLCtCQUErQixDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFFcEQsTUFBTSxTQUFTLENBQUMsT0FBTyxDQUNyQixLQUFLLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRSxNQUFNLEVBQUUsZUFBZSxDQUFDLEVBQ3RFLGtCQUFrQixDQUNuQixDQUFDO0lBQ0osQ0FBQztJQUdZLEFBQU4sS0FBSyxDQUFDLGNBQWMsQ0FDekIsaUJBQTRCLEVBQzVCLEtBQWlCLEVBQ2pCLGdCQUF5QixFQUN6QixPQUFxQixFQUNyQixrQkFBdUMsRUFDdkMsaUJBQWlCLEdBQUcsS0FBSztRQUV6QiwrQkFBK0IsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBQ3BELE1BQU0sWUFBWSxHQUFHLE1BQU0sT0FBTyxDQUFDLGlCQUFpQixFQUFFLEtBQUssQ0FBQyxDQUFDO1FBRTdELElBQUksWUFBWSxDQUFDLFlBQVksS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUM1QyxZQUFZLENBQUMsWUFBWSxHQUFHLG1CQUFtQixDQUFDLFdBQVcsRUFBRSxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ2xGLENBQUM7UUFDRCxPQUFPLEdBQUcsT0FBTyxJQUFJLEdBQUcsQ0FBQztRQUN6QixNQUFNLElBQUksR0FBRyxZQUFZLENBQUMsSUFBSSxDQUFDO1FBQy9CLE1BQU0sWUFBWSxHQUFpQixjQUFjLENBQUMsWUFBWSxDQUFDLENBQUM7UUFFaEUsTUFBTSxNQUFNLEdBQW1CO1lBQzdCLGdCQUFnQjtZQUNoQixPQUFPO1NBQ1IsQ0FBQztRQUVGLElBQUksaUJBQWlCLEVBQUUsQ0FBQztZQUN0QixNQUFNLFNBQVMsQ0FBQyxNQUFNLENBQ3BCLEtBQUssQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLE1BQU0sQ0FBQyxFQUNqRixrQkFBa0IsQ0FDbkIsQ0FBQztRQUNKLENBQUM7UUFFRCxNQUFNLFVBQVUsR0FBRyxNQUFNLFdBQVcsQ0FBQyxZQUFZLENBQUM7WUFDaEQsa0JBQWtCLEVBQUUsS0FBSyxJQUFJLEVBQUU7Z0JBQzdCLE1BQU0sU0FBUyxDQUFDLE9BQU8sQ0FDckIsS0FBSyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsTUFBTSxDQUFDLEVBQ2pGLGtCQUFrQixDQUNuQixDQUFDO1lBQ0osQ0FBQztZQUNELE9BQU8sRUFBRSxDQUFDLEVBQUUsVUFBVSxFQUFFLGlCQUFpQixDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ3ZELFNBQVMsRUFBRSxjQUFjO1NBQzFCLENBQUMsQ0FBQztRQUVILE9BQU8sVUFBVSxDQUFDO0lBQ3BCLENBQUM7SUFHWSxBQUFOLEtBQUssQ0FBQyxlQUFlLENBQzFCLGFBQWtDLEVBQ2xDLGNBQTRCLEVBQzVCLGtCQUFzQztRQUV0QywrQkFBK0IsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBQ3BELElBQUksYUFBYSxDQUFDLE1BQU0sS0FBSyxjQUFjLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDbkQsTUFBTSxLQUFLLENBQ1Qsa0ZBQWtGLENBQ25GLENBQUM7UUFDSixDQUFDO1FBRUQsTUFBTSxRQUFRLEdBQWtDLEVBQUUsQ0FBQztRQUNuRCxLQUFLLElBQUksY0FBYyxHQUFHLENBQUMsRUFBRSxjQUFjLEdBQUcsYUFBYSxDQUFDLE1BQU0sRUFBRSxjQUFjLEVBQUUsRUFBRSxDQUFDO1lBQ3JGLE1BQU0sRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLEdBQUcsU0FBUyxFQUFFLEdBQUcsYUFBYSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1lBQzFFLE1BQU0sSUFBSSxHQUFHLFNBQVMsQ0FBQyxJQUFJLENBQUM7WUFDNUIsTUFBTSxZQUFZLEdBQUcsY0FBYyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQy9DLE1BQU0sTUFBTSxHQUFtQjtnQkFDN0IsZ0JBQWdCLEVBQUUsUUFBUTtnQkFDMUIsT0FBTzthQUNSLENBQUM7WUFFRixNQUFNLGVBQWUsR0FBRyxLQUFLLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQzNELElBQUksQ0FBQyxFQUFFLEVBQ1AsWUFBWSxFQUNaLGNBQWMsQ0FBQyxjQUFjLENBQUMsRUFDOUIsSUFBSSxFQUNKLE1BQU0sQ0FDUCxDQUFDO1lBRUYsUUFBUSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLGVBQWUsRUFBRSxrQkFBa0IsQ0FBQyxDQUFDLENBQUM7UUFDeEUsQ0FBQztRQUVELE1BQU0sZUFBZSxHQUFHLE1BQU0sV0FBVyxDQUFDLGNBQWMsQ0FBQztZQUN2RCxrQkFBa0IsRUFBRSxLQUFLLElBQUksRUFBRTtnQkFDN0IsTUFBTSxPQUFPLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQzlCLENBQUM7WUFDRCxPQUFPLEVBQUUsYUFBYSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO2dCQUNqQyxPQUFPLEVBQUUsVUFBVSxFQUFFLEdBQUcsQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUN4QyxDQUFDLENBQUM7WUFDRixTQUFTLEVBQUUsY0FBYztTQUMxQixDQUFDLENBQUM7UUFDSCxPQUFPLGVBQWUsQ0FBQztJQUN6QixDQUFDO0lBRU0sZUFBZSxDQUFDLFFBQXNDO1FBQzNELE1BQU0sUUFBUSxHQUFHLHdCQUF3QixDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ3hELE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsTUFBTSxFQUFFLHNCQUFzQixFQUFFLENBQUMsQ0FBQztRQUNyRSxNQUFNLE1BQU0sR0FBNEIsQ0FBQyxLQUFlLEVBQVEsRUFBRTtZQUNoRSxJQUFJLEtBQUssQ0FBQyxZQUFZLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQztnQkFDMUMsT0FBTztZQUNULENBQUM7WUFDRCxNQUFNLFNBQVMsR0FBZ0IsS0FBSyxDQUFDLFlBQVksQ0FBQyxNQUFNLEVBQUUsUUFBUSxFQUFFLENBQUM7WUFDckUsSUFBSSxJQUFJLENBQUMsU0FBUztnQkFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sR0FBRyxTQUFTLENBQUM7WUFDdEQsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ3RCLENBQUMsQ0FBQztRQUNGLE1BQU0sT0FBTyxHQUE2QixDQUFDLEtBQVksRUFBRSxFQUFFO1lBQ3pELE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDckIsQ0FBQyxDQUFDO1FBRUYsT0FBTyxRQUFRLENBQUMsY0FBYyxDQUFDO1lBQzdCLE9BQU87WUFDUCxNQUFNO1lBQ04sS0FBSyxFQUFFLG9CQUFvQjtTQUM1QixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sS0FBSyxDQUFDLGdCQUFnQixDQUFJLE9BQW1CO1FBQ25ELElBQUksQ0FBQztZQUNILE9BQU8sTUFBTSxPQUFPLENBQUM7UUFDdkIsQ0FBQztRQUFDLE9BQU8sR0FBRyxFQUFFLENBQUM7WUFDYixNQUFNLE9BQU8sR0FBRyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUN2QyxJQUFJLE9BQU8sQ0FBQyxRQUFRLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDO2dCQUN4QyxNQUFNLElBQUksYUFBYSxDQUFDLFNBQVMsSUFBSSxDQUFDLEVBQUUsWUFBWSxDQUFDLENBQUM7WUFDeEQsQ0FBQztZQUNELE1BQU0sR0FBRyxDQUFDO1FBQ1osQ0FBQztJQUNILENBQUM7Q0FDRjtBQTdaYztJQURaLG1CQUFtQixFQUFFOzs7O3lDQWVyQjtBQUdZO0lBRFosbUJBQW1CLEVBQUU7Ozs7OENBU3JCO0FBa0JZO0lBRFosbUJBQW1CLEVBQUU7Ozs7d0NBTXJCO0FBR1k7SUFEWixtQkFBbUIsRUFBRTs7OzsyQ0FLckI7QUFHWTtJQURaLG1CQUFtQixFQUFFOzs7O3lDQVFyQjtBQUdZO0lBRFosbUJBQW1CLEVBQUU7Ozs7MkNBUXJCO0FBR1k7SUFEWixtQkFBbUIsRUFBRTs7Ozs2Q0ErQnJCO0FBR1k7SUFEWixtQkFBbUIsRUFBRTs7OzsyQ0FXckI7QUFHWTtJQURaLG1CQUFtQixFQUFFOzs7OzJDQWNyQjtBQUdNO0lBRE4sbUJBQW1CLEVBQUU7Ozs7a0RBTXJCO0FBTU07SUFETixtQkFBbUIsRUFBRTs7Ozt1REFNckI7QUFHTTtJQUROLG1CQUFtQixFQUFFOzs7O3dEQU1yQjtBQU1NO0lBRE4sbUJBQW1CLEVBQUU7Ozs7dURBTXJCO0FBTU07SUFETixtQkFBbUIsRUFBRTs7Ozt5REFNckI7QUFHWTtJQURaLG1CQUFtQixFQUFFOzs7O3VDQVFyQjtBQUdNO0lBRE4sbUJBQW1CLEVBQUU7Ozs7K0NBR3JCO0FBR007SUFETixtQkFBbUIsRUFBRTs7Ozt1Q0FNckI7QUFHWTtJQURaLG1CQUFtQixFQUFFOzs7O3lDQUdyQjtBQUdZO0lBRFosbUJBQW1CLEVBQUU7Ozs7K0NBR3JCO0FBR1k7SUFEWixtQkFBbUIsRUFBRTs7OzsrQ0FXckI7QUFHWTtJQURaLG1CQUFtQixFQUFFOzs7O3lDQVlyQjtBQUdZO0lBRFosbUJBQW1CLEVBQUU7Ozs7d0NBS3JCO0FBR1k7SUFEWixtQkFBbUIsRUFBRTs7OztrQ0FLckI7QUFHWTtJQURaLG1CQUFtQixFQUFFOzs7OzhDQVdyQjtBQUdZO0lBRFosbUJBQW1CLEVBQUU7Ozs7cUNBWXJCO0FBR1k7SUFEWixtQkFBbUIsRUFBRTs7OzsyQ0EyQ3JCO0FBR1k7SUFEWixtQkFBbUIsRUFBRTs7Ozs0Q0E0Q3JCO0FBdUNILGVBQWUsS0FBSyxDQUFDIn0=
482
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiT3JkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbW9kZWxzL09yZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFBLE9BQU8sRUFJTCxXQUFXLEVBV1gsZ0JBQWdCLEVBRWhCLGNBQWMsRUFFZCwwQkFBMEIsR0FFM0IsTUFBTSxtQkFBbUIsQ0FBQztBQUMzQixPQUFPLEVBQWdDLEtBQUssRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUUzRCxPQUFPLFVBQVUsTUFBTSxjQUFjLENBQUM7QUFFdEMsT0FBTyxFQUNMLCtCQUErQixFQUMvQixhQUFhLEVBQ2IsaUJBQWlCLEVBQ2pCLGNBQWMsRUFDZCxXQUFXLEVBQ1gsbUJBQW1CLEVBQ25CLGNBQWMsR0FDZixNQUFNLG9CQUFvQixDQUFDO0FBQzVCLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZGLE9BQU8sU0FBUyxNQUFNLDhCQUE4QixDQUFDO0FBQ3JELE9BQU8sU0FBUyxNQUFNLHVCQUF1QixDQUFDO0FBQzlDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsOEJBQThCLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQU1qRyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDcEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3ZELE9BQU8sV0FBVyxNQUFNLGdDQUFnQyxDQUFDO0FBRXpELE1BQU0sS0FBSztJQUNELE1BQU0sQ0FBQyxRQUFRLENBQXVCO0lBQ3RDLE1BQU0sQ0FBb0I7SUFFM0IsYUFBYSxDQUFjO0lBQzNCLFNB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
@@ -44,7 +44,6 @@ declare class Provider {
44
44
  * Fetch provider security deposit by provider authority account
45
45
  */
46
46
  getSecurityDeposit(providerDepositToken?: string): Promise<TokenAmount>;
47
- isProviderBanned(): Promise<boolean>;
48
47
  getTcbLockedProfitList(): Promise<BlockchainId[]>;
49
48
  }
50
49
  export default Provider;
@@ -1,7 +1,6 @@
1
1
  import { checkIfActionAccountInitialized, cleanWeb3Data, convertBigIntToString, } from '../utils/helper.js';
2
2
  import { BlockchainConnector } from '../connectors/index.js';
3
3
  import TxManager from '../utils/TxManager.js';
4
- import Consensus from '../staticModels/Consensus.js';
5
4
  class Provider {
6
5
  static contract;
7
6
  providerInfo;
@@ -97,11 +96,6 @@ class Provider {
97
96
  .getProviderSecurityDeposit(this.providerId, providerDepositToken)
98
97
  .call());
99
98
  }
100
- async isProviderBanned() {
101
- const violationRate = await this.getViolationRate();
102
- const { CONSENSUS_MAX_PENALTIES } = await Consensus.getConstants();
103
- return Number(violationRate) >= Number(CONSENSUS_MAX_PENALTIES);
104
- }
105
99
  getTcbLockedProfitList() {
106
100
  return Provider.contract.methods
107
101
  .getTcbLockedProfitList(this.providerId)
@@ -110,4 +104,4 @@ class Provider {
110
104
  }
111
105
  }
112
106
  export default Provider;
113
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbW9kZWxzL1Byb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFDTCwrQkFBK0IsRUFDL0IsYUFBYSxFQUNiLHFCQUFxQixHQUN0QixNQUFNLG9CQUFvQixDQUFDO0FBUTVCLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzdELE9BQU8sU0FBUyxNQUFNLHVCQUF1QixDQUFDO0FBQzlDLE9BQU8sU0FBUyxNQUFNLDhCQUE4QixDQUFDO0FBRXJELE1BQU0sUUFBUTtJQUNKLE1BQU0sQ0FBQyxRQUFRLENBQXVCO0lBRXZDLFlBQVksQ0FBZ0I7SUFDNUIsYUFBYSxDQUFtQjtJQUNoQyxXQUFXLENBQWtCO0lBQzdCLFNBQVMsQ0FBa0I7SUFDM0IsT0FBTyxDQUFXO0lBQ2xCLFVBQVUsQ0FBUztJQUUxQixZQUFZLFVBQWtCO1FBQzVCLElBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDO1FBQzdCLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDdkIsUUFBUSxDQUFDLFFBQVEsR0FBRyxtQkFBbUIsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUN0RSxDQUFDO0lBQ0gsQ0FBQztJQUVNLEtBQUssQ0FBQyxNQUFNLENBQ2pCLFlBQTBCLEVBQzFCLGtCQUF1QztRQUV2QywrQkFBK0IsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBRXBELE1BQU0sU0FBUyxDQUFDLE9BQU8sQ0FDckIsUUFBUSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDLFlBQVksQ0FBQyxFQUN0RCxrQkFBa0IsQ0FDbkIsQ0FBQztJQUNKLENBQUM7SUFFRDs7T0FFRztJQUNJLEtBQUssQ0FBQyxPQUFPO1FBQ2xCLE1BQU0sa0JBQWtCLEdBQUcsTUFBTSxRQUFRLENBQUMsUUFBUSxDQUFDLE9B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
107
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbW9kZWxzL1Byb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFDTCwrQkFBK0IsRUFDL0IsYUFBYSxFQUNiLHFCQUFxQixHQUN0QixNQUFNLG9CQUFvQixDQUFDO0FBUTVCLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzdELE9BQU8sU0FBUyxNQUFNLHVCQUF1QixDQUFDO0FBRTlDLE1BQU0sUUFBUTtJQUNKLE1BQU0sQ0FBQyxRQUFRLENBQXVCO0lBRXZDLFlBQVksQ0FBZ0I7SUFDNUIsYUFBYSxDQUFtQjtJQUNoQyxXQUFXLENBQWtCO0lBQzdCLFNBQVMsQ0FBa0I7SUFDM0IsT0FBTyxDQUFXO0lBQ2xCLFVBQVUsQ0FBUztJQUUxQixZQUFZLFVBQWtCO1FBQzVCLElBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDO1FBQzdCLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDdkIsUUFBUSxDQUFDLFFBQVEsR0FBRyxtQkFBbUIsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUN0RSxDQUFDO0lBQ0gsQ0FBQztJQUVNLEtBQUssQ0FBQyxNQUFNLENBQ2pCLFlBQTBCLEVBQzFCLGtCQUF1QztRQUV2QywrQkFBK0IsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBRXBELE1BQU0sU0FBUyxDQUFDLE9BQU8sQ0FDckIsUUFBUSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDLFlBQVksQ0FBQyxFQUN0RCxrQkFBa0IsQ0FDbkIsQ0FBQztJQUNKLENBQUM7SUFFRDs7T0FFRztJQUNJLEtBQUssQ0FBQyxPQUFPO1FBQ2xCLE1BQU0sa0JBQWtCLEdBQUcsTUFBTSxRQUFRLENBQUMsUUFBUSxDQUFDLE9BQU87YUFDdkQsZUFBZSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUM7YUFDaEMsSUFBSSxFQUFFO2FBQ04sSUFBSSxDQUFDLENBQUMsWUFBWSxFQUFFLEVBQUUsQ0FBQyxhQUFhLENBQUMsWUFBWSxDQUFpQixDQUFDLENBQUM7UUFFdkUsT0FBTyxDQUFDLElBQUksQ0FBQyxZQUFZLEdBQUcsa0JBQWtCLENBQUMsQ0FBQztJQUNsRCxDQUFDO0lBRUQ7O09BRUc7SUFDSSxZQUFZO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUNwQyxDQUFDO0lBRUQ7O09BRUc7SUFDSSxLQUFLLENBQUMsY0FBYztRQUN6QixJQUFJLENBQUMsV0FBVyxHQUFHLE1BQU0sUUFBUSxDQUFDLFFBQVEsQ0FBQyxPQUFPO2FBQy9DLHNCQUFzQixDQUFDLElBQUksQ0FBQyxVQUFVLENBQUM7YUFDdkMsSUFBSSxFQUFFO2FBQ04sSUFBSSxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBRTdELE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQztJQUMxQixDQUFDO0lBRUQ7O09BRUc7SUFDSSxLQUFLLENBQUMsWUFBWTtRQUN2QixJQUFJLENBQUMsU0FBUyxHQUFHLE1BQU0sUUFBUSxDQUFDLFFBQVEsQ0FBQyxPQUFPO2FBQzdDLG9CQUFvQixDQUFDLElBQUksQ0FBQyxVQUFVLENBQUM7YUFDckMsSUFBSSxFQUFFO2FBQ04sSUFBSSxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBRTdELE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUN4QixDQUFDO0lBRUQ7O09BRUc7SUFDSSxLQUFLLENBQUMsZ0JBQWdCO1FBQzNCLE9BQU8scUJBQXFCLENBQzFCLE1BQU0sUUFBUSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsd0JBQXdCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUNqRixDQUFDO0lBQ0osQ0FBQztJQUVEOztPQUVHO0lBQ0ksS0FBSyxDQUFDLFVBQVU7UUFDckIsTUFBTSxPQUFPLEdBQUcsTUFBTSxRQUFRLENBQUMsUUFBUSxDQUFDLE9BQU87YUFDNUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQzthQUNuQyxJQUFJLEVBQUU7YUFDTixJQUFJLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQVksQ0FBQyxDQUFDO1FBRXhELDBEQUEwRDtRQUMxRCxPQUFPLENBQUMsV0FBVyxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLEdBQUcsSUFBSSxDQUFDO1FBQ3pELE9BQU8sQ0FBQyxZQUFZLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsR0FBRyxJQUFJLENBQUM7UUFFM0QsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0ksMEJBQTBCLENBQUMsbUJBQWdDLEdBQUc7UUFDbkUsTUFBTSxRQUFRLEdBQUcsbUJBQW1CLENBQUMsV0FBVyxFQUFFLENBQUMsV0FBVyxFQUFFLENBQUM7UUFFakUsT0FBTyxRQUFRLENBQUMsT0FBTyxDQUFDLDBCQUEwQixDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUMvRixDQUFDO0lBRUQ7O09BRUc7SUFDSSxLQUFLLENBQUMsa0JBQWtCLENBQUMsb0JBQTZCO1FBQzNELE1BQU0sUUFBUSxHQUFHLG1CQUFtQixDQUFDLFdBQVcsRUFBRSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ2pFLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO1lBQzFCLG9CQUFvQixHQUFHLG1CQUFtQixDQUFDLFdBQVcsRUFBRSxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQzdFLENBQUM7UUFFRCxPQUFPLHFCQUFxQixDQUMxQixNQUFNLFFBQVEsQ0FBQyxPQUFPO2FBQ25CLDBCQUEwQixDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsb0JBQW9CLENBQUM7YUFDakUsSUFBSSxFQUFFLENBQ1YsQ0FBQztJQUNKLENBQUM7SUFFTSxzQkFBc0I7UUFDM0IsT0FBTyxRQUFRLENBQUMsUUFBUSxDQUFDLE9BQU87YUFDN0Isc0JBQXNCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQzthQUN2QyxJQUFJLEVBQUU7YUFDTixJQUFJLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDL0QsQ0FBQztDQUNGO0FBRUQsZUFBZSxRQUFRLENBQUMifQ==
@@ -1,31 +1,8 @@
1
- import { BlockchainId, TcbData, TcbPublicData, TcbUtilityData, TransactionOptions } from '../types/index.js';
2
- import { ConsensusBenchmark } from '@super-protocol/dto-js';
1
+ import { BlockchainId, TcbData, TcbUtilityData, TransactionOptions } from '../types/index.js';
3
2
  declare class TCB {
4
- private static readonly logger;
5
3
  tcbId: BlockchainId;
6
4
  private static contract;
7
5
  constructor(tcbId: BlockchainId);
8
- private applyTcbMarks;
9
- private setTcbData;
10
- /**
11
- * Add data to TeeConfirmationBlock and push it to Consensus
12
- * @param pb - struct of 'processed' data
13
- * @param quote - data generated from Enclave
14
- * @param marks - list of marks
15
- * @param transactionOptions - object what contains alternative action account or gas limit (optional)
16
- */
17
- private addToSupply;
18
- apply(publicData: TcbPublicData, benchmark: ConsensusBenchmark, quote: string, publicKey: string, transactionOptions?: TransactionOptions): Promise<void>;
19
- /**
20
- * Assign TCB from SuspiciousBlocks table to check
21
- * @param transactionOptions - object what contains alternative action account or gas limit (optional)
22
- */
23
- assignSuspiciousBlocksToCheck(transactionOptions?: TransactionOptions): Promise<void>;
24
- /**
25
- * Assign TCB from LastBlocks table to check
26
- * @param transactionOptions - object what contains alternative action account or gas limit (optional)
27
- */
28
- assignLastBlocksToCheck(transactionOptions?: TransactionOptions): Promise<void>;
29
6
  /**
30
7
  * Function stake and lock TCB's reward
31
8
  * @param tcbId - TEE Offer's completed and valid TCB contract
@@ -43,10 +20,6 @@ declare class TCB {
43
20
  * Function for fetching all TCB data
44
21
  */
45
22
  get(): Promise<TcbData>;
46
- /**
47
- * Function for fetching Public Data from TCB
48
- */
49
- getPublicData(): Promise<TcbPublicData>;
50
23
  /**
51
24
  * Function for fetching Public Data from TCB
52
25
  */
@@ -1,11 +1,9 @@
1
1
  import TxManager from '../utils/TxManager.js';
2
2
  import { BlockchainConnector } from '../connectors/index.js';
3
- import { checkIfActionAccountInitialized, cleanWeb3Data, packDeviceId, formatBenchmarkTo, } from '../utils/helper.js';
3
+ import { checkIfActionAccountInitialized, cleanWeb3Data } from '../utils/helper.js';
4
4
  import Consensus from '../staticModels/Consensus.js';
5
- import rootLogger from '../logger.js';
6
5
  import ProviderRewards from '../staticModels/ProviderRewards.js';
7
6
  class TCB {
8
- static logger = rootLogger.child({ className: 'TCB' });
9
7
  tcbId;
10
8
  static contract;
11
9
  constructor(tcbId) {
@@ -14,57 +12,6 @@ class TCB {
14
12
  TCB.contract = BlockchainConnector.getInstance().getContract();
15
13
  }
16
14
  }
17
- applyTcbMarks(marks, transactionOptions) {
18
- return TxManager.execute(TCB.contract.methods.applyTcbMarks(marks, this.tcbId), transactionOptions);
19
- }
20
- setTcbData(publicData, benchmark, quote, publicKey, transactionOptions) {
21
- checkIfActionAccountInitialized(transactionOptions);
22
- const formattedDeviceId = packDeviceId(publicData.deviceId);
23
- return TxManager.execute(TCB.contract.methods.setTcbData(this.tcbId, formatBenchmarkTo(benchmark), publicData.properties, formattedDeviceId, quote, publicKey), transactionOptions);
24
- }
25
- /**
26
- * Add data to TeeConfirmationBlock and push it to Consensus
27
- * @param pb - struct of 'processed' data
28
- * @param quote - data generated from Enclave
29
- * @param marks - list of marks
30
- * @param transactionOptions - object what contains alternative action account or gas limit (optional)
31
- */
32
- addToSupply(transactionOptions) {
33
- checkIfActionAccountInitialized(transactionOptions);
34
- return TxManager.execute(TCB.contract.methods.addTcbToSupply(this.tcbId), transactionOptions);
35
- }
36
- async apply(publicData, benchmark, quote, publicKey, transactionOptions) {
37
- const logger = TCB.logger.child({
38
- deviceId: publicData.deviceId,
39
- method: 'apply',
40
- });
41
- try {
42
- logger.debug('apply tcb marks');
43
- await this.applyTcbMarks(publicData.checkingTcbMarks, transactionOptions);
44
- logger.debug('set tcb data');
45
- await this.setTcbData(publicData, benchmark, quote, publicKey, transactionOptions);
46
- logger.debug('add to supply');
47
- await this.addToSupply(transactionOptions);
48
- logger.debug('apply is done');
49
- }
50
- catch (err) {
51
- logger.error({ err }, 'Failed to add TCB to blockchain');
52
- }
53
- }
54
- /**
55
- * Assign TCB from SuspiciousBlocks table to check
56
- * @param transactionOptions - object what contains alternative action account or gas limit (optional)
57
- */
58
- async assignSuspiciousBlocksToCheck(transactionOptions) {
59
- await TxManager.execute(TCB.contract.methods.assignSuspiciousBlocksToCheck(this.tcbId), transactionOptions);
60
- }
61
- /**
62
- * Assign TCB from LastBlocks table to check
63
- * @param transactionOptions - object what contains alternative action account or gas limit (optional)
64
- */
65
- async assignLastBlocksToCheck(transactionOptions) {
66
- await TxManager.execute(TCB.contract.methods.assignLastBlocksToCheck(this.tcbId), transactionOptions);
67
- }
68
15
  /**
69
16
  * Function stake and lock TCB's reward
70
17
  * @param tcbId - TEE Offer's completed and valid TCB contract
@@ -98,13 +45,6 @@ class TCB {
98
45
  const tcb = cleanWeb3Data(await TCB.contract.methods.getTcbById(this.tcbId).call());
99
46
  return tcb;
100
47
  }
101
- /**
102
- * Function for fetching Public Data from TCB
103
- */
104
- async getPublicData() {
105
- const publicData = await Consensus.getTcbsPublicData([this.tcbId]);
106
- return publicData[this.tcbId];
107
- }
108
48
  /**
109
49
  * Function for fetching Public Data from TCB
110
50
  */
@@ -122,4 +62,4 @@ class TCB {
122
62
  }
123
63
  }
124
64
  export default TCB;
125
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVENCLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL21vZGVscy9UQ0IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxTQUFTLE1BQU0sdUJBQXVCLENBQUM7QUFDOUMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFVN0QsT0FBTyxFQUNMLCtCQUErQixFQUMvQixhQUFhLEVBQ2IsWUFBWSxFQUNaLGlCQUFpQixHQUNsQixNQUFNLG9CQUFvQixDQUFDO0FBQzVCLE9BQU8sU0FBUyxNQUFNLDhCQUE4QixDQUFDO0FBQ3JELE9BQU8sVUFBVSxNQUFNLGNBQWMsQ0FBQztBQUN0QyxPQUFPLGVBQWUsTUFBTSxvQ0FBb0MsQ0FBQztBQUVqRSxNQUFNLEdBQUc7SUFDQyxNQUFNLENBQVUsTUFBTSxHQUFHLFVBQVUsQ0FBQyxLQUFLLENBQUMsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUNqRSxLQUFLLENBQWU7SUFDbkIsTUFBTSxDQUFDLFFBQVEsQ0FBdUI7SUFFOUMsWUFBWSxLQUFtQjtRQUM3QixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ2xCLEdBQUcsQ0FBQyxRQUFRLEdBQUcsbUJBQW1CLENBQUMsV0FBVyxFQUFFLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDakUsQ0FBQztJQUNILENBQUM7SUFFTyxhQUFhLENBQ25CLEtBQTBCLEVBQzFCLGtCQUF1QztRQUV2QyxPQUFPLFNBQVMsQ0FBQyxPQUFPLENBQ3RCLEdBQUcsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUNyRCxrQkFBa0IsQ0FDbkIsQ0FBQztJQUNKLENBQUM7SUFFTyxVQUFVLENBQ2hCLFVBQXlCLEVBQ3pCLFNBQTZCLEVBQzdCLEtBQWEs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
65
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVENCLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL21vZGVscy9UQ0IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxTQUFTLE1BQU0sdUJBQXVCLENBQUM7QUFDOUMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFRN0QsT0FBTyxFQUFFLCtCQUErQixFQUFFLGFBQWEsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3BGLE9BQU8sU0FBUyxNQUFNLDhCQUE4QixDQUFDO0FBQ3JELE9BQU8sZUFBZSxNQUFNLG9DQUFvQyxDQUFDO0FBRWpFLE1BQU0sR0FBRztJQUNBLEtBQUssQ0FBZTtJQUNuQixNQUFNLENBQUMsUUFBUSxDQUF1QjtJQUU5QyxZQUFZLEtBQW1CO1FBQzdCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDbEIsR0FBRyxDQUFDLFFBQVEsR0FBRyxtQkFBbUIsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNqRSxDQUFDO0lBQ0gsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxLQUFLLENBQUMsWUFBWSxDQUFDLGtCQUF1QztRQUMvRCwrQkFBK0IsRUFBRSxDQUFDO1FBQ2xDLE1BQU0sRUFBRSxVQUFVLEVBQUUsR0FBRyxDQUFDLE1BQU0sU0FBUyxDQUFDLGtCQUFrQixDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDdEYsTUFBTSxFQUFFLFVBQVUsRUFBRSxHQUFHLE1BQU0sSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBQ3hDLE1BQU0sSUFBSSxHQUFxQjtZQUM3QixVQUFVLEVBQUUsVUFBVTtZQUN0QixPQUFPLEVBQUUsVUFBVTtZQUNuQiw2QkFBNkIsRUFBRSxDQUFDO1NBQ2pDLENBQUM7UUFDRixNQUFNLGVBQWUsQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLGtCQUFrQixDQUFDLENBQUM7SUFDL0QsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0ksS0FBSyxDQUFDLGFBQWEsQ0FBQyxrQkFBdUM7UUFDaEUsK0JBQStCLEVBQUUsQ0FBQztRQUVsQyxNQUFNLFNBQVMsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxrQkFBa0IsQ0FBQyxDQUFDO0lBQ2hHLENBQUM7SUFFRDs7T0FFRztJQUNJLEtBQUssQ0FBQyxHQUFHO1FBQ2QsTUFBTSxHQUFHLEdBQVksYUFBYSxDQUFDLE1BQU0sR0FBRyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBRTdGLE9BQU8sR0FBRyxDQUFDO0lBQ2IsQ0FBQztJQUVEOztPQUVHO0lBQ0ksS0FBSyxDQUFDLGNBQWM7UUFDekIsTUFBTSxXQUFXLEdBQUcsTUFBTSxTQUFTLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUVyRSxPQUFPLFdBQVcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUVEOztPQUVHO0lBQ0ksS0FBSyxDQUFDLGVBQWU7UUFDMUIsTUFBTSxFQUFFLFVBQVUsRUFBRSxHQUFHLENBQUMsTUFBTSxTQUFTLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN0RixNQUFNLEVBQUUsVUFBVSxFQUFFLEdBQUcsTUFBTSxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUM7UUFDeEMsT0FBTyxHQUFHLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsVUFBVSxFQUFFLFVBQVUsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzFFLENBQUM7Q0FDRjtBQUVELGVBQWUsR0FBRyxDQUFDIn0=
@@ -1,6 +1,5 @@
1
1
  import { TeeOfferInfo, TransactionOptions, OfferType, Origins, BlockchainId, TokenAmount, OfferVersionInfo, OfferVersion, TeeOfferSubtype, TeeOfferAggregatedInfo } from '../types/index.js';
2
- import { HardwareInfo, TeeOfferOption, TeeOfferSlot, OptionInfo, SlotUsage, SlotInfo } from '../types/index.js';
3
- import { GetTcbRequest } from '@super-protocol/dto-js';
2
+ import { TeeOfferOption, TeeOfferSlot, OptionInfo, SlotUsage, SlotInfo } from '../types/index.js';
4
3
  declare class TeeOffer {
5
4
  private static contract;
6
5
  id: BlockchainId;
@@ -69,15 +68,6 @@ declare class TeeOffer {
69
68
  * @param transactionOptions - object what contains alternative action account or gas limit (optional)
70
69
  */
71
70
  deleteOption(optionId: BlockchainId, transactionOptions?: TransactionOptions): Promise<void>;
72
- private initializeTcb;
73
- private initializeTcbAndAssignBlocks;
74
- /**
75
- * Function initialize TCB and returns list of anothers' TCB for their checking
76
- * @param deviceId - id of TEE offer
77
- * @param transactionOptions - object what contains alternative action account or gas limit (optional)
78
- * @returns tcbId and lists of anothers' TCB for their checking
79
- */
80
- getListsForVerification(deviceId: string, transactionOptions?: TransactionOptions): Promise<GetTcbRequest>;
81
71
  /**
82
72
  * Returns the offer version info.
83
73
  */
@@ -142,11 +132,7 @@ declare class TeeOffer {
142
132
  * @returns Promise<BlockchainId> Promise that resolves to the actual TCB ID
143
133
  */
144
134
  getActualTcbId(): Promise<BlockchainId>;
145
- /**
146
- * Function return last initialized TCB of TEE offer
147
- */
148
- getInitializedTcbId(): Promise<BlockchainId>;
149
- isTcbCreationAvailable(deviceId: string): Promise<boolean>;
135
+ isTcbCreationAvailable(pubKey: string): Promise<boolean>;
150
136
  /**
151
137
  * Function for fetching TEE offer provider authority account from blockchain
152
138
  */
@@ -159,7 +145,6 @@ declare class TeeOffer {
159
145
  * Fetch offer subtype from blockchain (TEE only)
160
146
  */
161
147
  getSubtype(): Promise<TeeOfferSubtype>;
162
- isTeeOfferVerifying(): Promise<boolean>;
163
148
  /**
164
149
  * Function for fetching violationRate for this TEE offer
165
150
  */
@@ -185,7 +170,7 @@ declare class TeeOffer {
185
170
  * @param newHardwareInfo - new offer hardware info
186
171
  * @param transactionOptions - object what contains alternative action account or gas limit (optional)
187
172
  */
188
- setHardwareInfo(newHardwareInfo: HardwareInfo, transactionOptions?: TransactionOptions): Promise<void>;
173
+ setTeeOfferHardwareOptionInfo(optionInfo: OptionInfo, transactionOptions?: TransactionOptions): Promise<void>;
189
174
  /**
190
175
  * Updates description in offer info
191
176
  * @param description - new description