@bitgo-beta/sdk-coin-flrp 1.0.0-alpha.6 → 1.0.0-alpha.61

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 (119) hide show
  1. package/dist/src/flrp.d.ts +10 -17
  2. package/dist/src/flrp.d.ts.map +1 -1
  3. package/dist/src/flrp.js +51 -77
  4. package/dist/src/index.d.ts +0 -1
  5. package/dist/src/index.d.ts.map +1 -1
  6. package/dist/src/index.js +1 -2
  7. package/dist/src/lib/ExportInCTxBuilder.d.ts +44 -0
  8. package/dist/src/lib/ExportInCTxBuilder.d.ts.map +1 -0
  9. package/dist/src/lib/ExportInCTxBuilder.js +151 -0
  10. package/dist/src/lib/ExportInPTxBuilder.d.ts +24 -0
  11. package/dist/src/lib/ExportInPTxBuilder.d.ts.map +1 -0
  12. package/dist/src/lib/ExportInPTxBuilder.js +146 -0
  13. package/dist/src/lib/ImportInCTxBuilder.d.ts +30 -0
  14. package/dist/src/lib/ImportInCTxBuilder.d.ts.map +1 -0
  15. package/dist/src/lib/ImportInCTxBuilder.js +164 -0
  16. package/dist/src/lib/ImportInPTxBuilder.d.ts +31 -0
  17. package/dist/src/lib/ImportInPTxBuilder.d.ts.map +1 -0
  18. package/dist/src/lib/ImportInPTxBuilder.js +147 -0
  19. package/dist/src/lib/atomicInCTransactionBuilder.d.ts +12 -16
  20. package/dist/src/lib/atomicInCTransactionBuilder.d.ts.map +1 -1
  21. package/dist/src/lib/atomicInCTransactionBuilder.js +30 -41
  22. package/dist/src/lib/atomicTransactionBuilder.d.ts +54 -70
  23. package/dist/src/lib/atomicTransactionBuilder.d.ts.map +1 -1
  24. package/dist/src/lib/atomicTransactionBuilder.js +134 -213
  25. package/dist/src/lib/iface.d.ts +65 -57
  26. package/dist/src/lib/iface.d.ts.map +1 -1
  27. package/dist/src/lib/iface.js +20 -14
  28. package/dist/src/lib/index.d.ts +5 -0
  29. package/dist/src/lib/index.d.ts.map +1 -1
  30. package/dist/src/lib/index.js +12 -2
  31. package/dist/src/lib/keyPair.d.ts +5 -5
  32. package/dist/src/lib/keyPair.d.ts.map +1 -1
  33. package/dist/src/lib/keyPair.js +17 -9
  34. package/dist/src/lib/permissionlessValidatorTxBuilder.d.ts +41 -0
  35. package/dist/src/lib/permissionlessValidatorTxBuilder.d.ts.map +1 -0
  36. package/dist/src/lib/permissionlessValidatorTxBuilder.js +126 -0
  37. package/dist/src/lib/transaction.d.ts +31 -66
  38. package/dist/src/lib/transaction.d.ts.map +1 -1
  39. package/dist/src/lib/transaction.js +339 -199
  40. package/dist/src/lib/transactionBuilder.d.ts +115 -0
  41. package/dist/src/lib/transactionBuilder.d.ts.map +1 -0
  42. package/dist/src/lib/transactionBuilder.js +232 -0
  43. package/dist/src/lib/transactionBuilderFactory.d.ts +50 -30
  44. package/dist/src/lib/transactionBuilderFactory.d.ts.map +1 -1
  45. package/dist/src/lib/transactionBuilderFactory.js +129 -72
  46. package/dist/src/lib/utils.d.ts +106 -146
  47. package/dist/src/lib/utils.d.ts.map +1 -1
  48. package/dist/src/lib/utils.js +298 -321
  49. package/dist/test/resources/account.d.ts +81 -0
  50. package/dist/test/resources/account.d.ts.map +1 -0
  51. package/dist/test/resources/account.js +79 -0
  52. package/dist/test/resources/transactionData/exportInC.d.ts +50 -0
  53. package/dist/test/resources/transactionData/exportInC.d.ts.map +1 -0
  54. package/dist/test/resources/transactionData/exportInC.js +58 -0
  55. package/dist/test/resources/transactionData/exportInP.d.ts +52 -0
  56. package/dist/test/resources/transactionData/exportInP.d.ts.map +1 -0
  57. package/dist/test/resources/transactionData/exportInP.js +65 -0
  58. package/dist/test/resources/transactionData/importInC.d.ts +48 -0
  59. package/dist/test/resources/transactionData/importInC.d.ts.map +1 -0
  60. package/dist/test/resources/transactionData/importInC.js +61 -0
  61. package/dist/test/resources/transactionData/importInP.d.ts +58 -0
  62. package/dist/test/resources/transactionData/importInP.d.ts.map +1 -0
  63. package/dist/test/resources/transactionData/importInP.js +73 -0
  64. package/dist/test/unit/flrp.js +449 -68
  65. package/dist/test/unit/lib/exportInCTxBuilder.d.ts +2 -0
  66. package/dist/test/unit/lib/exportInCTxBuilder.d.ts.map +1 -0
  67. package/dist/test/unit/lib/exportInCTxBuilder.js +193 -0
  68. package/dist/test/unit/lib/exportInPTxBuilder.d.ts +2 -0
  69. package/dist/test/unit/lib/exportInPTxBuilder.d.ts.map +1 -0
  70. package/dist/test/unit/lib/exportInPTxBuilder.js +122 -0
  71. package/dist/test/unit/lib/importInCTxBuilder.d.ts +2 -0
  72. package/dist/test/unit/lib/importInCTxBuilder.d.ts.map +1 -0
  73. package/dist/test/unit/lib/importInCTxBuilder.js +507 -0
  74. package/dist/test/unit/lib/importInPTxBuilder.d.ts +2 -0
  75. package/dist/test/unit/lib/importInPTxBuilder.d.ts.map +1 -0
  76. package/dist/test/unit/lib/importInPTxBuilder.js +126 -0
  77. package/dist/test/unit/lib/keyPair.d.ts +2 -0
  78. package/dist/test/unit/lib/keyPair.d.ts.map +1 -0
  79. package/dist/test/unit/lib/keyPair.js +158 -0
  80. package/dist/test/unit/lib/signFlowTestSuit.d.ts +20 -0
  81. package/dist/test/unit/lib/signFlowTestSuit.d.ts.map +1 -0
  82. package/dist/test/unit/lib/signFlowTestSuit.js +83 -0
  83. package/dist/test/unit/lib/transactionBuilderFactory.d.ts +2 -0
  84. package/dist/test/unit/lib/transactionBuilderFactory.d.ts.map +1 -0
  85. package/dist/test/unit/lib/transactionBuilderFactory.js +60 -0
  86. package/dist/test/unit/lib/utils.js +572 -207
  87. package/dist/tsconfig.tsbuildinfo +1 -1
  88. package/package.json +19 -10
  89. package/.eslintignore +0 -5
  90. package/.eslintrc.json +0 -7
  91. package/.mocharc.yml +0 -8
  92. package/CHANGELOG.md +0 -0
  93. package/dist/src/iface.d.ts +0 -25
  94. package/dist/src/iface.d.ts.map +0 -1
  95. package/dist/src/iface.js +0 -3
  96. package/dist/src/lib/constants.d.ts +0 -11
  97. package/dist/src/lib/constants.d.ts.map +0 -1
  98. package/dist/src/lib/constants.js +0 -17
  99. package/dist/src/lib/errors.d.ts +0 -8
  100. package/dist/src/lib/errors.d.ts.map +0 -1
  101. package/dist/src/lib/errors.js +0 -19
  102. package/dist/src/lib/exportInCTxBuilder.d.ts +0 -77
  103. package/dist/src/lib/exportInCTxBuilder.d.ts.map +0 -1
  104. package/dist/src/lib/exportInCTxBuilder.js +0 -170
  105. package/dist/src/lib/exportInPTxBuilder.d.ts +0 -30
  106. package/dist/src/lib/exportInPTxBuilder.d.ts.map +0 -1
  107. package/dist/src/lib/exportInPTxBuilder.js +0 -56
  108. package/dist/test/unit/lib/atomicTransactionBuilder.d.ts +0 -2
  109. package/dist/test/unit/lib/atomicTransactionBuilder.d.ts.map +0 -1
  110. package/dist/test/unit/lib/atomicTransactionBuilder.js +0 -222
  111. package/dist/test/unit/lib/exportTxBuilder.d.ts +0 -2
  112. package/dist/test/unit/lib/exportTxBuilder.d.ts.map +0 -1
  113. package/dist/test/unit/lib/exportTxBuilder.js +0 -45
  114. package/dist/test/unit/lib/transaction.d.ts +0 -2
  115. package/dist/test/unit/lib/transaction.d.ts.map +0 -1
  116. package/dist/test/unit/lib/transaction.js +0 -460
  117. package/dist/test/unit/smoke.d.ts +0 -2
  118. package/dist/test/unit/smoke.d.ts.map +0 -1
  119. package/dist/test/unit/smoke.js +0 -23
@@ -0,0 +1,58 @@
1
+ export declare const IMPORT_IN_P: {
2
+ txhash: string;
3
+ unsignedHex: string;
4
+ signedHex: string;
5
+ halfSigntxHex: string;
6
+ cAddressPrivateKey: string;
7
+ cAddressPublicKey: string;
8
+ amount: string;
9
+ cHexAddress: string;
10
+ pAddresses: string[];
11
+ corethAddresses: string[];
12
+ privateKeys: string[];
13
+ sourceChainId: string;
14
+ nonce: number;
15
+ threshold: number;
16
+ fee: string;
17
+ locktime: number;
18
+ INVALID_CHAIN_ID: string;
19
+ VALID_C_CHAIN_ID: string;
20
+ utxoHex: string[];
21
+ feeState: {
22
+ capacity: bigint;
23
+ excess: bigint;
24
+ price: bigint;
25
+ timestamp: string;
26
+ };
27
+ context: {
28
+ xBlockchainID: string;
29
+ pBlockchainID: string;
30
+ cBlockchainID: string;
31
+ avaxAssetID: string;
32
+ baseTxFee: bigint;
33
+ createAssetTxFee: bigint;
34
+ createSubnetTxFee: bigint;
35
+ transformSubnetTxFee: bigint;
36
+ createBlockchainTxFee: bigint;
37
+ addPrimaryNetworkValidatorFee: bigint;
38
+ addPrimaryNetworkDelegatorFee: bigint;
39
+ addSubnetValidatorFee: bigint;
40
+ addSubnetDelegatorFee: bigint;
41
+ networkID: number;
42
+ hrp: string;
43
+ platformFeeConfig: {
44
+ weights: {
45
+ 0: number;
46
+ 1: number;
47
+ 2: number;
48
+ 3: number;
49
+ };
50
+ maxCapacity: bigint;
51
+ maxPerSecond: bigint;
52
+ targetPerSecond: bigint;
53
+ minPrice: bigint;
54
+ excessConversionConstant: bigint;
55
+ };
56
+ };
57
+ };
58
+ //# sourceMappingURL=importInP.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"importInP.d.ts","sourceRoot":"","sources":["../../../../test/resources/transactionData/importInP.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2EvB,CAAC"}
@@ -0,0 +1,73 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.IMPORT_IN_P = void 0;
4
+ exports.IMPORT_IN_P = {
5
+ txhash: '8c2JV9dBWaUXqQBgmWg6PWnRXcLvFgM5xgBaKVqC9L15csCtg',
6
+ unsignedHex: '0x0000000000110000007200000000000000000000000000000000000000000000000000000000000000000000000158734f94af871c3d131b56131b6fb7a0291eacadd261e69dfb42a9cdf6f7fddd000000070000000002e7b2b8000000000000000000000002000000033329be7d01cd3ebaae6654d7327dd9f17a2e15817e918a5e8083ae4c9f2f0ed77055c24bf3665001c7324437c96c7c8a6a152da2385c1db5c3ab1f91000000000000000078db5c30bed04c05ce209179812850bbb3fe6d46d7eef3744d814c0da5552479000000014bb60d547249da44959e410165c296bbe449f50d84b42f50950de1f3ed4214900000000058734f94af871c3d131b56131b6fb7a0291eacadd261e69dfb42a9cdf6f7fddd000000050000000002faf080000000020000000000000001000000010000000900000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008472ea3a',
7
+ signedHex: '0x0000000000110000007200000000000000000000000000000000000000000000000000000000000000000000000158734f94af871c3d131b56131b6fb7a0291eacadd261e69dfb42a9cdf6f7fddd000000070000000002e7b2b8000000000000000000000002000000033329be7d01cd3ebaae6654d7327dd9f17a2e15817e918a5e8083ae4c9f2f0ed77055c24bf3665001c7324437c96c7c8a6a152da2385c1db5c3ab1f91000000000000000078db5c30bed04c05ce209179812850bbb3fe6d46d7eef3744d814c0da5552479000000014bb60d547249da44959e410165c296bbe449f50d84b42f50950de1f3ed4214900000000058734f94af871c3d131b56131b6fb7a0291eacadd261e69dfb42a9cdf6f7fddd000000050000000002faf080000000020000000000000001000000010000000900000002b55278276e7d712d6896247ddc9298600a4b4e87088842edb444149e71665fef6318b69d35baeb684e197e12ebc2b9881af36d5d5b8af08cf2aaefdcf385384600c59a868ee3007a2a3d8ab44408a2f4f19a848e4bfdffe1e25d725651d53a77de433490f92fa0337042abcea24daa978f0d0725c6c2ada11e6b45a56433f82a0b0065c41625',
8
+ halfSigntxHex: '0x0000000000110000007200000000000000000000000000000000000000000000000000000000000000000000000158734f94af871c3d131b56131b6fb7a0291eacadd261e69dfb42a9cdf6f7fddd000000070000000002e7b2b8000000000000000000000002000000033329be7d01cd3ebaae6654d7327dd9f17a2e15817e918a5e8083ae4c9f2f0ed77055c24bf3665001c7324437c96c7c8a6a152da2385c1db5c3ab1f91000000000000000078db5c30bed04c05ce209179812850bbb3fe6d46d7eef3744d814c0da5552479000000014bb60d547249da44959e410165c296bbe449f50d84b42f50950de1f3ed4214900000000058734f94af871c3d131b56131b6fb7a0291eacadd261e69dfb42a9cdf6f7fddd000000050000000002faf080000000020000000000000001000000010000000900000002b55278276e7d712d6896247ddc9298600a4b4e87088842edb444149e71665fef6318b69d35baeb684e197e12ebc2b9881af36d5d5b8af08cf2aaefdcf385384600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000083c15074',
9
+ cAddressPrivateKey: 'ef576892dd582d93914a3dba3b77cc4e32e470c32f4127817345473aae719d14',
10
+ cAddressPublicKey: '033ca1801f51484063f3bce093413ca06f7d91c44c3883f642eb103eda5e0eaed3',
11
+ amount: '50000000', // 0.05 FLR
12
+ cHexAddress: '0x28A05933dC76e4e6c25f35D5c9b2A58769700E76',
13
+ pAddresses: [
14
+ 'P-costwo106gc5h5qswhye8e0pmthq4wzf0ekv5qppsrvpu',
15
+ 'P-costwo1cueygd7fd37g56s49k3rshqakhp6k8u3adzt6m',
16
+ 'P-costwo1xv5mulgpe5lt4tnx2ntnylwe79azu9vpja6lut',
17
+ ],
18
+ corethAddresses: [
19
+ 'C-costwo106gc5h5qswhye8e0pmthq4wzf0ekv5qppsrvpu',
20
+ 'C-costwo1cueygd7fd37g56s49k3rshqakhp6k8u3adzt6m',
21
+ 'C-costwo1xv5mulgpe5lt4tnx2ntnylwe79azu9vpja6lut',
22
+ ],
23
+ privateKeys: [
24
+ 'ef576892dd582d93914a3dba3b77cc4e32e470c32f4127817345473aae719d14',
25
+ 'a408583e8ba09bc619c2cdd8f89f09839fddf6f3929def25251f1aa266ff7d24',
26
+ '26a38e543bcb6cfa52d2b78d4c31330d38f5e84dcdb0be1df72722d33e4c1940',
27
+ ],
28
+ sourceChainId: 'vE8M98mEQH6wk56sStD1ML8HApTgSqfJZLk9gQ3Fsd4i6m3Bi',
29
+ nonce: 9,
30
+ threshold: 2,
31
+ fee: '1261000', // Fee derived from expected hex (input - output = 50000000 - 48739000)
32
+ locktime: 0,
33
+ INVALID_CHAIN_ID: 'wrong chain id',
34
+ VALID_C_CHAIN_ID: 'yH8D7ThNJkxmtkuv2jgBa4P1Rn3Qpr4pPr7QYNfcdoS6k6HWp',
35
+ // UTXO hex strings from getUTXOs API response
36
+ utxoHex: [
37
+ '0x00004bb60d547249da44959e410165c296bbe449f50d84b42f50950de1f3ed4214900000000058734f94af871c3d131b56131b6fb7a0291eacadd261e69dfb42a9cdf6f7fddd000000070000000002faf080000000000000000000000002000000033329be7d01cd3ebaae6654d7327dd9f17a2e15817e918a5e8083ae4c9f2f0ed77055c24bf3665001c7324437c96c7c8a6a152da2385c1db5c3ab1f913b7ab5fb',
38
+ ],
39
+ // Fee state from pvmapi.getFeeState()
40
+ feeState: {
41
+ capacity: BigInt(994956),
42
+ excess: BigInt(5044),
43
+ price: BigInt(250),
44
+ timestamp: '2026-01-03T16:14:57Z',
45
+ },
46
+ // Context from Context.getContextFromURI()
47
+ context: {
48
+ xBlockchainID: 'FJuSwZuP85eyBpuBrKECnpPedGyXoDy2hP9q4JD8qBTZGxYbJ',
49
+ pBlockchainID: '11111111111111111111111111111111LpoYY',
50
+ cBlockchainID: 'vE8M98mEQH6wk56sStD1ML8HApTgSqfJZLk9gQ3Fsd4i6m3Bi',
51
+ avaxAssetID: 'fxMAKpBQQpFedrUhWMsDYfCUJxdUw4mneTczKBzNg3rc2JUub',
52
+ baseTxFee: 1000000n,
53
+ createAssetTxFee: 1000000n,
54
+ createSubnetTxFee: 100000000n,
55
+ transformSubnetTxFee: 100000000n,
56
+ createBlockchainTxFee: 100000000n,
57
+ addPrimaryNetworkValidatorFee: 0n,
58
+ addPrimaryNetworkDelegatorFee: 0n,
59
+ addSubnetValidatorFee: 1000000n,
60
+ addSubnetDelegatorFee: 1000000n,
61
+ networkID: 114,
62
+ hrp: 'costwo',
63
+ platformFeeConfig: {
64
+ weights: { 0: 1, 1: 1000, 2: 1000, 3: 4 },
65
+ maxCapacity: 1000000n,
66
+ maxPerSecond: 100000n,
67
+ targetPerSecond: 50000n,
68
+ minPrice: 250n,
69
+ excessConversionConstant: 2164043n,
70
+ },
71
+ },
72
+ };
73
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1wb3J0SW5QLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vdGVzdC9yZXNvdXJjZXMvdHJhbnNhY3Rpb25EYXRhL2ltcG9ydEluUC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBYSxRQUFBLFdBQVcsR0FBRztJQUN6QixNQUFNLEVBQUUsbURBQW1EO0lBQzNELFdBQVcsRUFDVCxvNEJBQW80QjtJQUN0NEIsU0FBUyxFQUNQLG80QkFBbzRCO0lBQ3Q0QixhQUFhLEVBQ1gsbzRCQUFvNEI7SUFFdDRCLGtCQUFrQixFQUFFLGtFQUFrRTtJQUN0RixpQkFBaUIsRUFBRSxvRUFBb0U7SUFDdkYsTUFBTSxFQUFFLFVBQVUsRUFBRSxXQUFXO0lBQy9CLFdBQVcsRUFBRSw0Q0FBNEM7SUFDekQsVUFBVSxFQUFFO1FBQ1YsaURBQWlEO1FBQ2pELGlEQUFpRDtRQUNqRCxpREFBaUQ7S0FDbEQ7SUFDRCxlQUFlLEVBQUU7UUFDZixpREFBaUQ7UUFDakQsaURBQWlEO1FBQ2pELGlEQUFpRDtLQUNsRDtJQUNELFdBQVcsRUFBRTtRQUNYLGtFQUFrRTtRQUNsRSxrRUFBa0U7UUFDbEUsa0VBQWtFO0tBQ25FO0lBQ0QsYUFBYSxFQUFFLG1EQUFtRDtJQUNsRSxLQUFLLEVBQUUsQ0FBQztJQUNSLFNBQVMsRUFBRSxDQUFDO0lBQ1osR0FBRyxFQUFFLFNBQVMsRUFBRSx1RUFBdUU7SUFDdkYsUUFBUSxFQUFFLENBQUM7SUFDWCxnQkFBZ0IsRUFBRSxnQkFBZ0I7SUFDbEMsZ0JBQWdCLEVBQUUsbURBQW1EO0lBRXJFLDhDQUE4QztJQUM5QyxPQUFPLEVBQUU7UUFDUCx3VUFBd1U7S0FDelU7SUFFRCxzQ0FBc0M7SUFDdEMsUUFBUSxFQUFFO1FBQ1IsUUFBUSxFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUM7UUFDeEIsTUFBTSxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUM7UUFDcEIsS0FBSyxFQUFFLE1BQU0sQ0FBQyxHQUFHLENBQUM7UUFDbEIsU0FBUyxFQUFFLHNCQUFzQjtLQUNsQztJQUVELDJDQUEyQztJQUMzQyxPQUFPLEVBQUU7UUFDUCxhQUFhLEVBQUUsbURBQW1EO1FBQ2xFLGFBQWEsRUFBRSx1Q0FBdUM7UUFDdEQsYUFBYSxFQUFFLG1EQUFtRDtRQUNsRSxXQUFXLEVBQUUsbURBQW1EO1FBQ2hFLFNBQVMsRUFBRSxRQUFRO1FBQ25CLGdCQUFnQixFQUFFLFFBQVE7UUFDMUIsaUJBQWlCLEVBQUUsVUFBVTtRQUM3QixvQkFBb0IsRUFBRSxVQUFVO1FBQ2hDLHFCQUFxQixFQUFFLFVBQVU7UUFDakMsNkJBQTZCLEVBQUUsRUFBRTtRQUNqQyw2QkFBNkIsRUFBRSxFQUFFO1FBQ2pDLHFCQUFxQixFQUFFLFFBQVE7UUFDL0IscUJBQXFCLEVBQUUsUUFBUTtRQUMvQixTQUFTLEVBQUUsR0FBRztRQUNkLEdBQUcsRUFBRSxRQUFRO1FBQ2IsaUJBQWlCLEVBQUU7WUFDakIsT0FBTyxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRTtZQUN6QyxXQUFXLEVBQUUsUUFBUTtZQUNyQixZQUFZLEVBQUUsT0FBTztZQUNyQixlQUFlLEVBQUUsTUFBTTtZQUN2QixRQUFRLEVBQUUsSUFBSTtZQUNkLHdCQUF3QixFQUFFLFFBQVE7U0FDbkM7S0FDRjtDQUNGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgSU1QT1JUX0lOX1AgPSB7XG4gIHR4aGFzaDogJzhjMkpWOWRCV2FVWHFRQmdtV2c2UFduUlhjTHZGZ001eGdCYUtWcUM5TDE1Y3NDdGcnLFxuICB1bnNpZ25lZEhleDpcbiAgICAnMHgwMDAwMDAwMDAwMTEwMDAwMDA3MjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMTU4NzM0Zjk0YWY4NzFjM2QxMzFiNTYxMzFiNmZiN2EwMjkxZWFjYWRkMjYxZTY5ZGZiNDJhOWNkZjZmN2ZkZGQwMDAwMDAwNzAwMDAwMDAwMDJlN2IyYjgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDIwMDAwMDAwMzMzMjliZTdkMDFjZDNlYmFhZTY2NTRkNzMyN2RkOWYxN2EyZTE1ODE3ZTkxOGE1ZTgwODNhZTRjOWYyZjBlZDc3MDU1YzI0YmYzNjY1MDAxYzczMjQ0MzdjOTZjN2M4YTZhMTUyZGEyMzg1YzFkYjVjM2FiMWY5MTAwMDAwMDAwMDAwMDAwMDA3OGRiNWMzMGJlZDA0YzA1Y2UyMDkxNzk4MTI4NTBiYmIzZmU2ZDQ2ZDdlZWYzNzQ0ZDgxNGMwZGE1NTUyNDc5MDAwMDAwMDE0YmI2MGQ1NDcyNDlkYTQ0OTU5ZTQxMDE2NWMyOTZiYmU0NDlmNTBkODRiNDJmNTA5NTBkZTFmM2VkNDIxNDkwMDAwMDAwMDA1ODczNGY5NGFmODcxYzNkMTMxYjU2MTMxYjZmYjdhMDI5MWVhY2FkZDI2MWU2OWRmYjQyYTljZGY2ZjdmZGRkMDAwMDAwMDUwMDAwMDAwMDAyZmFmMDgwMDAwMDAwMDIwMDAwMDAwMDAwMDAwMDAxMDAwMDAwMDEwMDAwMDAwOTAwMDAwMDAyMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA4NDcyZWEzYScsXG4gIHNpZ25lZEhleDpcbiAgICAnMHgwMDAwMDAwMDAwMTEwMDAwMDA3MjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMTU4NzM0Zjk0YWY4NzFjM2QxMzFiNTYxMzFiNmZiN2EwMjkxZWFjYWRkMjYxZTY5ZGZiNDJhOWNkZjZmN2ZkZGQwMDAwMDAwNzAwMDAwMDAwMDJlN2IyYjgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDIwMDAwMDAwMzMzMjliZTdkMDFjZDNlYmFhZTY2NTRkNzMyN2RkOWYxN2EyZTE1ODE3ZTkxOGE1ZTgwODNhZTRjOWYyZjBlZDc3MDU1YzI0YmYzNjY1MDAxYzczMjQ0MzdjOTZjN2M4YTZhMTUyZGEyMzg1YzFkYjVjM2FiMWY5MTAwMDAwMDAwMDAwMDAwMDA3OGRiNWMzMGJlZDA0YzA1Y2UyMDkxNzk4MTI4NTBiYmIzZmU2ZDQ2ZDdlZWYzNzQ0ZDgxNGMwZGE1NTUyNDc5MDAwMDAwMDE0YmI2MGQ1NDcyNDlkYTQ0OTU5ZTQxMDE2NWMyOTZiYmU0NDlmNTBkODRiNDJmNTA5NTBkZTFmM2VkNDIxNDkwMDAwMDAwMDA1ODczNGY5NGFmODcxYzNkMTMxYjU2MTMxYjZmYjdhMDI5MWVhY2FkZDI2MWU2OWRmYjQyYTljZGY2ZjdmZGRkMDAwMDAwMDUwMDAwMDAwMDAyZmFmMDgwMDAwMDAwMDIwMDAwMDAwMDAwMDAwMDAxMDAwMDAwMDEwMDAwMDAwOTAwMDAwMDAyYjU1Mjc4Mjc2ZTdkNzEyZDY4OTYyNDdkZGM5Mjk4NjAwYTRiNGU4NzA4ODg0MmVkYjQ0NDE0OWU3MTY2NWZlZjYzMThiNjlkMzViYWViNjg0ZTE5N2UxMmViYzJiOTg4MWFmMzZkNWQ1YjhhZjA4Y2YyYWFlZmRjZjM4NTM4NDYwMGM1OWE4NjhlZTMwMDdhMmEzZDhhYjQ0NDA4YTJmNGYxOWE4NDhlNGJmZGZmZTFlMjVkNzI1NjUxZDUzYTc3ZGU0MzM0OTBmOTJmYTAzMzcwNDJhYmNlYTI0ZGFhOTc4ZjBkMDcyNWM2YzJhZGExMWU2YjQ1YTU2NDMzZjgyYTBiMDA2NWM0MTYyNScsXG4gIGhhbGZTaWdudHhIZXg6XG4gICAgJzB4MDAwMDAwMDAwMDExMDAwMDAwNzIwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDE1ODczNGY5NGFmODcxYzNkMTMxYjU2MTMxYjZmYjdhMDI5MWVhY2FkZDI2MWU2OWRmYjQyYTljZGY2ZjdmZGRkMDAwMDAwMDcwMDAwMDAwMDAyZTdiMmI4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAyMDAwMDAwMDMzMzI5YmU3ZDAxY2QzZWJhYWU2NjU0ZDczMjdkZDlmMTdhMmUxNTgxN2U5MThhNWU4MDgzYWU0YzlmMmYwZWQ3NzA1NWMyNGJmMzY2NTAwMWM3MzI0NDM3Yzk2YzdjOGE2YTE1MmRhMjM4NWMxZGI1YzNhYjFmOTEwMDAwMDAwMDAwMDAwMDAwNzhkYjVjMzBiZWQwNGMwNWNlMjA5MTc5ODEyODUwYmJiM2ZlNmQ0NmQ3ZWVmMzc0NGQ4MTRjMGRhNTU1MjQ3OTAwMDAwMDAxNGJiNjBkNTQ3MjQ5ZGE0NDk1OWU0MTAxNjVjMjk2YmJlNDQ5ZjUwZDg0YjQyZjUwOTUwZGUxZjNlZDQyMTQ5MDAwMDAwMDAwNTg3MzRmOTRhZjg3MWMzZDEzMWI1NjEzMWI2ZmI3YTAyOTFlYWNhZGQyNjFlNjlkZmI0MmE5Y2RmNmY3ZmRkZDAwMDAwMDA1MDAwMDAwMDAwMmZhZjA4MDAwMDAwMDAyMDAwMDAwMDAwMDAwMDAwMTAwMDAwMDAxMDAwMDAwMDkwMDAwMDAwMmI1NTI3ODI3NmU3ZDcxMmQ2ODk2MjQ3ZGRjOTI5ODYwMGE0YjRlODcwODg4NDJlZGI0NDQxNDllNzE2NjVmZWY2MzE4YjY5ZDM1YmFlYjY4NGUxOTdlMTJlYmMyYjk4ODFhZjM2ZDVkNWI4YWYwOGNmMmFhZWZkY2YzODUzODQ2MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwODNjMTUwNzQnLFxuXG4gIGNBZGRyZXNzUHJpdmF0ZUtleTogJ2VmNTc2ODkyZGQ1ODJkOTM5MTRhM2RiYTNiNzdjYzRlMzJlNDcwYzMyZjQxMjc4MTczNDU0NzNhYWU3MTlkMTQnLFxuICBjQWRkcmVzc1B1YmxpY0tleTogJzAzM2NhMTgwMWY1MTQ4NDA2M2YzYmNlMDkzNDEzY2EwNmY3ZDkxYzQ0YzM4ODNmNjQyZWIxMDNlZGE1ZTBlYWVkMycsXG4gIGFtb3VudDogJzUwMDAwMDAwJywgLy8gMC4wNSBGTFJcbiAgY0hleEFkZHJlc3M6ICcweDI4QTA1OTMzZEM3NmU0ZTZjMjVmMzVENWM5YjJBNTg3Njk3MDBFNzYnLFxuICBwQWRkcmVzc2VzOiBbXG4gICAgJ1AtY29zdHdvMTA2Z2M1aDVxc3doeWU4ZTBwbXRocTR3emYwZWt2NXFwcHNydnB1JyxcbiAgICAnUC1jb3N0d28xY3VleWdkN2ZkMzdnNTZzNDlrM3JzaHFha2hwNms4dTNhZHp0Nm0nLFxuICAgICdQLWNvc3R3bzF4djVtdWxncGU1bHQ0dG54Mm50bnlsd2U3OWF6dTl2cGphNmx1dCcsXG4gIF0sXG4gIGNvcmV0aEFkZHJlc3NlczogW1xuICAgICdDLWNvc3R3bzEwNmdjNWg1cXN3aHllOGUwcG10aHE0d3pmMGVrdjVxcHBzcnZwdScsXG4gICAgJ0MtY29zdHdvMWN1ZXlnZDdmZDM3ZzU2czQ5azNyc2hxYWtocDZrOHUzYWR6dDZtJyxcbiAgICAnQy1jb3N0d28xeHY1bXVsZ3BlNWx0NHRueDJudG55bHdlNzlhenU5dnBqYTZsdXQnLFxuICBdLFxuICBwcml2YXRlS2V5czogW1xuICAgICdlZjU3Njg5MmRkNTgyZDkzOTE0YTNkYmEzYjc3Y2M0ZTMyZTQ3MGMzMmY0MTI3ODE3MzQ1NDczYWFlNzE5ZDE0JyxcbiAgICAnYTQwODU4M2U4YmEwOWJjNjE5YzJjZGQ4Zjg5ZjA5ODM5ZmRkZjZmMzkyOWRlZjI1MjUxZjFhYTI2NmZmN2QyNCcsXG4gICAgJzI2YTM4ZTU0M2JjYjZjZmE1MmQyYjc4ZDRjMzEzMzBkMzhmNWU4NGRjZGIwYmUxZGY3MjcyMmQzM2U0YzE5NDAnLFxuICBdLFxuICBzb3VyY2VDaGFpbklkOiAndkU4TTk4bUVRSDZ3azU2c1N0RDFNTDhIQXBUZ1NxZkpaTGs5Z1EzRnNkNGk2bTNCaScsXG4gIG5vbmNlOiA5LFxuICB0aHJlc2hvbGQ6IDIsXG4gIGZlZTogJzEyNjEwMDAnLCAvLyBGZWUgZGVyaXZlZCBmcm9tIGV4cGVjdGVkIGhleCAoaW5wdXQgLSBvdXRwdXQgPSA1MDAwMDAwMCAtIDQ4NzM5MDAwKVxuICBsb2NrdGltZTogMCxcbiAgSU5WQUxJRF9DSEFJTl9JRDogJ3dyb25nIGNoYWluIGlkJyxcbiAgVkFMSURfQ19DSEFJTl9JRDogJ3lIOEQ3VGhOSmt4bXRrdXYyamdCYTRQMVJuM1FwcjRwUHI3UVlOZmNkb1M2azZIV3AnLFxuXG4gIC8vIFVUWE8gaGV4IHN0cmluZ3MgZnJvbSBnZXRVVFhPcyBBUEkgcmVzcG9uc2VcbiAgdXR4b0hleDogW1xuICAgICcweDAwMDA0YmI2MGQ1NDcyNDlkYTQ0OTU5ZTQxMDE2NWMyOTZiYmU0NDlmNTBkODRiNDJmNTA5NTBkZTFmM2VkNDIxNDkwMDAwMDAwMDA1ODczNGY5NGFmODcxYzNkMTMxYjU2MTMxYjZmYjdhMDI5MWVhY2FkZDI2MWU2OWRmYjQyYTljZGY2ZjdmZGRkMDAwMDAwMDcwMDAwMDAwMDAyZmFmMDgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAyMDAwMDAwMDMzMzI5YmU3ZDAxY2QzZWJhYWU2NjU0ZDczMjdkZDlmMTdhMmUxNTgxN2U5MThhNWU4MDgzYWU0YzlmMmYwZWQ3NzA1NWMyNGJmMzY2NTAwMWM3MzI0NDM3Yzk2YzdjOGE2YTE1MmRhMjM4NWMxZGI1YzNhYjFmOTEzYjdhYjVmYicsXG4gIF0sXG5cbiAgLy8gRmVlIHN0YXRlIGZyb20gcHZtYXBpLmdldEZlZVN0YXRlKClcbiAgZmVlU3RhdGU6IHtcbiAgICBjYXBhY2l0eTogQmlnSW50KDk5NDk1NiksXG4gICAgZXhjZXNzOiBCaWdJbnQoNTA0NCksXG4gICAgcHJpY2U6IEJpZ0ludCgyNTApLFxuICAgIHRpbWVzdGFtcDogJzIwMjYtMDEtMDNUMTY6MTQ6NTdaJyxcbiAgfSxcblxuICAvLyBDb250ZXh0IGZyb20gQ29udGV4dC5nZXRDb250ZXh0RnJvbVVSSSgpXG4gIGNvbnRleHQ6IHtcbiAgICB4QmxvY2tjaGFpbklEOiAnRkp1U3dadVA4NWV5QnB1QnJLRUNucFBlZEd5WG9EeTJoUDlxNEpEOHFCVFpHeFliSicsXG4gICAgcEJsb2NrY2hhaW5JRDogJzExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExTHBvWVknLFxuICAgIGNCbG9ja2NoYWluSUQ6ICd2RThNOThtRVFINndrNTZzU3REMU1MOEhBcFRnU3FmSlpMazlnUTNGc2Q0aTZtM0JpJyxcbiAgICBhdmF4QXNzZXRJRDogJ2Z4TUFLcEJRUXBGZWRyVWhXTXNEWWZDVUp4ZFV3NG1uZVRjektCek5nM3JjMkpVdWInLFxuICAgIGJhc2VUeEZlZTogMTAwMDAwMG4sXG4gICAgY3JlYXRlQXNzZXRUeEZlZTogMTAwMDAwMG4sXG4gICAgY3JlYXRlU3VibmV0VHhGZWU6IDEwMDAwMDAwMG4sXG4gICAgdHJhbnNmb3JtU3VibmV0VHhGZWU6IDEwMDAwMDAwMG4sXG4gICAgY3JlYXRlQmxvY2tjaGFpblR4RmVlOiAxMDAwMDAwMDBuLFxuICAgIGFkZFByaW1hcnlOZXR3b3JrVmFsaWRhdG9yRmVlOiAwbixcbiAgICBhZGRQcmltYXJ5TmV0d29ya0RlbGVnYXRvckZlZTogMG4sXG4gICAgYWRkU3VibmV0VmFsaWRhdG9yRmVlOiAxMDAwMDAwbixcbiAgICBhZGRTdWJuZXREZWxlZ2F0b3JGZWU6IDEwMDAwMDBuLFxuICAgIG5ldHdvcmtJRDogMTE0LFxuICAgIGhycDogJ2Nvc3R3bycsXG4gICAgcGxhdGZvcm1GZWVDb25maWc6IHtcbiAgICAgIHdlaWdodHM6IHsgMDogMSwgMTogMTAwMCwgMjogMTAwMCwgMzogNCB9LFxuICAgICAgbWF4Q2FwYWNpdHk6IDEwMDAwMDBuLFxuICAgICAgbWF4UGVyU2Vjb25kOiAxMDAwMDBuLFxuICAgICAgdGFyZ2V0UGVyU2Vjb25kOiA1MDAwMG4sXG4gICAgICBtaW5QcmljZTogMjUwbixcbiAgICAgIGV4Y2Vzc0NvbnZlcnNpb25Db25zdGFudDogMjE2NDA0M24sXG4gICAgfSxcbiAgfSxcbn07XG4iXX0=