@bitgo-beta/utxo-staking 1.1.1-beta.91 → 1.1.1-beta.911

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 (137) hide show
  1. package/dist/cjs/scripts/babylon-sync.d.ts +2 -0
  2. package/dist/cjs/scripts/babylon-sync.d.ts.map +1 -0
  3. package/dist/cjs/scripts/babylon-sync.js +126 -0
  4. package/dist/cjs/src/babylon/delegationMessage.d.ts +38 -0
  5. package/dist/cjs/src/babylon/delegationMessage.d.ts.map +1 -0
  6. package/dist/cjs/src/babylon/delegationMessage.js +285 -0
  7. package/dist/cjs/src/babylon/descriptor.d.ts +48 -0
  8. package/dist/cjs/src/babylon/descriptor.d.ts.map +1 -0
  9. package/dist/cjs/src/babylon/descriptor.js +97 -0
  10. package/dist/cjs/src/babylon/index.d.ts +8 -0
  11. package/dist/cjs/src/babylon/index.d.ts.map +1 -0
  12. package/dist/cjs/src/babylon/index.js +51 -0
  13. package/dist/cjs/src/babylon/network.d.ts +7 -0
  14. package/dist/cjs/src/babylon/network.d.ts.map +1 -0
  15. package/dist/cjs/src/babylon/network.js +66 -0
  16. package/dist/cjs/src/babylon/params.mainnet.json +152 -0
  17. package/dist/cjs/src/babylon/params.testnet.json +212 -0
  18. package/dist/cjs/src/babylon/parseDescriptor.d.ts +26 -0
  19. package/dist/cjs/src/babylon/parseDescriptor.d.ts.map +1 -0
  20. package/dist/cjs/src/babylon/parseDescriptor.js +159 -0
  21. package/dist/cjs/src/babylon/stakingManager.d.ts +6 -0
  22. package/dist/cjs/src/babylon/stakingManager.d.ts.map +1 -0
  23. package/dist/cjs/src/babylon/stakingManager.js +120 -0
  24. package/dist/cjs/src/babylon/stakingParams.d.ts +40 -0
  25. package/dist/cjs/src/babylon/stakingParams.d.ts.map +1 -0
  26. package/dist/cjs/src/babylon/stakingParams.js +132 -0
  27. package/dist/cjs/src/babylon/undelegation/UndelegationResponse.d.ts +24 -0
  28. package/dist/cjs/src/babylon/undelegation/UndelegationResponse.d.ts.map +1 -0
  29. package/dist/cjs/src/babylon/undelegation/UndelegationResponse.js +55 -0
  30. package/dist/cjs/src/babylon/undelegation/index.d.ts +3 -0
  31. package/dist/cjs/src/babylon/undelegation/index.d.ts.map +1 -0
  32. package/dist/{src → cjs/src/babylon/undelegation}/index.js +3 -4
  33. package/dist/cjs/src/babylon/undelegation/unbonding.d.ts +16 -0
  34. package/dist/cjs/src/babylon/undelegation/unbonding.d.ts.map +1 -0
  35. package/dist/cjs/src/babylon/undelegation/unbonding.js +111 -0
  36. package/dist/cjs/src/coreDao/descriptor.d.ts.map +1 -0
  37. package/dist/cjs/src/coreDao/descriptor.js +38 -0
  38. package/dist/cjs/src/coreDao/index.d.ts.map +1 -0
  39. package/dist/{src → cjs/src}/coreDao/index.js +1 -1
  40. package/dist/cjs/src/coreDao/opReturn.d.ts.map +1 -0
  41. package/dist/cjs/src/coreDao/opReturn.js +183 -0
  42. package/dist/{src → cjs/src}/coreDao/transaction.d.ts +16 -7
  43. package/dist/cjs/src/coreDao/transaction.d.ts.map +1 -0
  44. package/dist/cjs/src/coreDao/transaction.js +34 -0
  45. package/dist/cjs/src/index.d.ts +3 -0
  46. package/dist/cjs/src/index.d.ts.map +1 -0
  47. package/dist/cjs/src/index.js +39 -0
  48. package/dist/cjs/test/unit/babylon/bug71.d.ts +2 -0
  49. package/dist/cjs/test/unit/babylon/bug71.d.ts.map +1 -0
  50. package/dist/cjs/test/unit/babylon/bug71.js +108 -0
  51. package/dist/cjs/test/unit/babylon/key.utils.d.ts +6 -0
  52. package/dist/cjs/test/unit/babylon/key.utils.d.ts.map +1 -0
  53. package/dist/cjs/test/unit/babylon/key.utils.js +68 -0
  54. package/dist/cjs/test/unit/babylon/transactions.d.ts +2 -0
  55. package/dist/cjs/test/unit/babylon/transactions.d.ts.map +1 -0
  56. package/dist/cjs/test/unit/babylon/transactions.js +338 -0
  57. package/dist/cjs/test/unit/babylon/undelegation.d.ts +2 -0
  58. package/dist/cjs/test/unit/babylon/undelegation.d.ts.map +1 -0
  59. package/dist/cjs/test/unit/babylon/undelegation.js +156 -0
  60. package/dist/cjs/test/unit/babylon/vendor.utils.d.ts +13 -0
  61. package/dist/cjs/test/unit/babylon/vendor.utils.d.ts.map +1 -0
  62. package/dist/cjs/test/unit/babylon/vendor.utils.js +78 -0
  63. package/dist/cjs/test/unit/coreDao/descriptor.d.ts +2 -0
  64. package/dist/cjs/test/unit/coreDao/descriptor.d.ts.map +1 -0
  65. package/dist/cjs/test/unit/coreDao/descriptor.js +144 -0
  66. package/dist/cjs/test/unit/coreDao/opReturn.d.ts +2 -0
  67. package/dist/cjs/test/unit/coreDao/opReturn.d.ts.map +1 -0
  68. package/dist/cjs/test/unit/coreDao/opReturn.js +275 -0
  69. package/dist/cjs/test/unit/coreDao/utils.d.ts +5 -0
  70. package/dist/cjs/test/unit/coreDao/utils.d.ts.map +1 -0
  71. package/dist/cjs/test/unit/coreDao/utils.js +54 -0
  72. package/dist/cjs/test/unit/fixtures.utils.d.ts +9 -0
  73. package/dist/cjs/test/unit/fixtures.utils.d.ts.map +1 -0
  74. package/dist/cjs/test/unit/fixtures.utils.js +91 -0
  75. package/dist/cjs/tsconfig.tsbuildinfo +1 -0
  76. package/dist/esm/babylon/delegationMessage.d.ts +38 -0
  77. package/dist/esm/babylon/delegationMessage.d.ts.map +1 -0
  78. package/dist/esm/babylon/delegationMessage.js +239 -0
  79. package/dist/esm/babylon/descriptor.d.ts +48 -0
  80. package/dist/esm/babylon/descriptor.d.ts.map +1 -0
  81. package/dist/esm/babylon/descriptor.js +91 -0
  82. package/dist/esm/babylon/index.d.ts +8 -0
  83. package/dist/esm/babylon/index.d.ts.map +1 -0
  84. package/dist/esm/babylon/index.js +13 -0
  85. package/dist/esm/babylon/network.d.ts +7 -0
  86. package/dist/esm/babylon/network.d.ts.map +1 -0
  87. package/dist/esm/babylon/network.js +29 -0
  88. package/dist/esm/babylon/params.mainnet.json +152 -0
  89. package/dist/esm/babylon/params.testnet.json +212 -0
  90. package/dist/esm/babylon/parseDescriptor.d.ts +26 -0
  91. package/dist/esm/babylon/parseDescriptor.d.ts.map +1 -0
  92. package/dist/esm/babylon/parseDescriptor.js +155 -0
  93. package/dist/esm/babylon/stakingManager.d.ts +6 -0
  94. package/dist/esm/babylon/stakingManager.d.ts.map +1 -0
  95. package/dist/esm/babylon/stakingManager.js +83 -0
  96. package/dist/esm/babylon/stakingParams.d.ts +40 -0
  97. package/dist/esm/babylon/stakingParams.d.ts.map +1 -0
  98. package/dist/esm/babylon/stakingParams.js +86 -0
  99. package/dist/esm/babylon/undelegation/UndelegationResponse.d.ts +24 -0
  100. package/dist/esm/babylon/undelegation/UndelegationResponse.d.ts.map +1 -0
  101. package/dist/esm/babylon/undelegation/UndelegationResponse.js +18 -0
  102. package/dist/esm/babylon/undelegation/index.d.ts +3 -0
  103. package/dist/esm/babylon/undelegation/index.d.ts.map +1 -0
  104. package/dist/esm/babylon/undelegation/index.js +3 -0
  105. package/dist/esm/babylon/undelegation/unbonding.d.ts +16 -0
  106. package/dist/esm/babylon/undelegation/unbonding.d.ts.map +1 -0
  107. package/dist/esm/babylon/undelegation/unbonding.js +70 -0
  108. package/dist/esm/coreDao/descriptor.d.ts +18 -0
  109. package/dist/{src → esm}/coreDao/descriptor.d.ts.map +1 -1
  110. package/dist/esm/coreDao/descriptor.js +35 -0
  111. package/dist/esm/coreDao/index.d.ts +4 -0
  112. package/dist/esm/coreDao/index.js +4 -0
  113. package/dist/esm/coreDao/opReturn.d.ts +41 -0
  114. package/dist/esm/coreDao/opReturn.js +175 -0
  115. package/dist/esm/coreDao/transaction.d.ts +28 -0
  116. package/dist/esm/coreDao/transaction.d.ts.map +1 -0
  117. package/dist/esm/coreDao/transaction.js +30 -0
  118. package/dist/esm/index.d.ts +3 -0
  119. package/dist/{src → esm}/index.d.ts.map +1 -1
  120. package/dist/esm/index.js +3 -0
  121. package/package.json +42 -12
  122. package/.eslintignore +0 -5
  123. package/.mocharc.yml +0 -8
  124. package/CHANGELOG.md +0 -63
  125. package/dist/src/coreDao/descriptor.js +0 -37
  126. package/dist/src/coreDao/opReturn.js +0 -183
  127. package/dist/src/coreDao/transaction.d.ts.map +0 -1
  128. package/dist/src/coreDao/transaction.js +0 -26
  129. package/dist/src/index.d.ts +0 -3
  130. package/dist/src/transaction.d.ts +0 -32
  131. package/dist/src/transaction.d.ts.map +0 -1
  132. package/dist/src/transaction.js +0 -54
  133. /package/dist/{src → cjs/src}/coreDao/descriptor.d.ts +0 -0
  134. /package/dist/{src → cjs/src}/coreDao/index.d.ts +0 -0
  135. /package/dist/{src → cjs/src}/coreDao/opReturn.d.ts +0 -0
  136. /package/dist/{src → esm}/coreDao/index.d.ts.map +0 -0
  137. /package/dist/{src → esm}/coreDao/opReturn.d.ts.map +0 -0
@@ -0,0 +1,97 @@
1
+ "use strict";
2
+ /**
3
+ * https://github.com/babylonlabs-io/babylon/tree/main/docs
4
+ * https://github.com/babylonlabs-io/babylon/blob/main/docs/staking-script.md
5
+ * https://github.com/babylonlabs-io/babylon/blob/v1.99.0-snapshot.250211/btcstaking/staking.go
6
+ */
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ exports.BabylonDescriptorBuilder = void 0;
9
+ exports.getUnspendableKey = getUnspendableKey;
10
+ exports.sortedKeys = sortedKeys;
11
+ const wasm_utxo_1 = require("@bitgo/wasm-utxo");
12
+ function getUnspendableKey() {
13
+ // https://github.com/babylonlabs-io/btc-staking-ts/blob/v0.4.0-rc.2/src/constants/internalPubkey.ts
14
+ return '50929b74c1a04954b78b4b6035e97a5e078a5a0f28ec96d547bfee9ace803ac0';
15
+ }
16
+ // Helper functions for creating miniscript nodes
17
+ function pk(b) {
18
+ return { 'v:pk': b.toString('hex') };
19
+ }
20
+ function sortedKeys(keys) {
21
+ return [...keys].sort((a, b) => a.compare(b));
22
+ }
23
+ function multiArgs(threshold, keys) {
24
+ return [threshold, ...sortedKeys(keys).map((k) => k.toString('hex'))];
25
+ }
26
+ function taprootScriptOnlyFromAst(n) {
27
+ return wasm_utxo_1.Descriptor.fromString(wasm_utxo_1.ast.formatNode({ tr: [getUnspendableKey(), n] }), 'definite');
28
+ }
29
+ class BabylonDescriptorBuilder {
30
+ constructor(stakerKey, finalityProviderKeys, covenantKeys, covenantThreshold, stakingTimeLock, unbondingTimeLock) {
31
+ this.stakerKey = stakerKey;
32
+ this.finalityProviderKeys = finalityProviderKeys;
33
+ this.covenantKeys = covenantKeys;
34
+ this.covenantThreshold = covenantThreshold;
35
+ this.stakingTimeLock = stakingTimeLock;
36
+ this.unbondingTimeLock = unbondingTimeLock;
37
+ }
38
+ static fromParams(params) {
39
+ return new BabylonDescriptorBuilder(params.stakerKey, params.finalityProviderKeys, params.covenantNoCoordPks.map((k) => Buffer.from(k, 'hex')), params.covenantQuorum, params.minStakingTimeBlocks, params.unbondingTime);
40
+ }
41
+ /** Spend path with the staker key and the staking timelock */
42
+ getStakingTimelockMiniscriptNode() {
43
+ return { and_v: [pk(this.stakerKey), { older: this.stakingTimeLock }] };
44
+ }
45
+ /** Spend path with the staker key and the unbonding timelock */
46
+ getUnbondingTimelockMiniscriptNode() {
47
+ return { and_v: [pk(this.stakerKey), { older: this.unbondingTimeLock }] };
48
+ }
49
+ /** Spend path with the staker key and the covenant keys */
50
+ getUnbondingMiniscriptNode() {
51
+ return { and_v: [pk(this.stakerKey), { multi_a: multiArgs(this.covenantThreshold, this.covenantKeys) }] };
52
+ }
53
+ /** Spend path with the finality provider keys and the covenant keys */
54
+ getSlashingMiniscriptNode() {
55
+ return {
56
+ and_v: [
57
+ {
58
+ and_v: [
59
+ pk(this.stakerKey),
60
+ this.finalityProviderKeys.length === 1
61
+ ? { 'v:pk': this.finalityProviderKeys[0].toString('hex') }
62
+ : { 'v:multi_a': multiArgs(1, this.finalityProviderKeys) },
63
+ ],
64
+ },
65
+ { multi_a: multiArgs(this.covenantThreshold, this.covenantKeys) },
66
+ ],
67
+ };
68
+ }
69
+ /**
70
+ * Creates a descriptor for a staking output.
71
+ *
72
+ * Three spend paths:
73
+ * - the slashing script,
74
+ * - the unbonding script,
75
+ * - the timelocked unstaking script.
76
+ */
77
+ getStakingDescriptor() {
78
+ return taprootScriptOnlyFromAst([
79
+ this.getSlashingMiniscriptNode(),
80
+ [this.getUnbondingMiniscriptNode(), this.getStakingTimelockMiniscriptNode()],
81
+ ]);
82
+ }
83
+ /**
84
+ * Creates a descriptor for the timelocked unbonding script.
85
+ */
86
+ getUnbondingTimelockDescriptor() {
87
+ return taprootScriptOnlyFromAst(this.getUnbondingTimelockMiniscriptNode());
88
+ }
89
+ /**
90
+ * Creates a descriptor with two script paths: the slashing script and the timelocked unbonding script.
91
+ */
92
+ getUnbondingDescriptor() {
93
+ return taprootScriptOnlyFromAst([this.getSlashingMiniscriptNode(), this.getUnbondingTimelockMiniscriptNode()]);
94
+ }
95
+ }
96
+ exports.BabylonDescriptorBuilder = BabylonDescriptorBuilder;
97
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVzY3JpcHRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9iYWJ5bG9uL2Rlc2NyaXB0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7O0dBSUc7OztBQUtILDhDQUdDO0FBT0QsZ0NBRUM7QUFmRCxnREFBbUQ7QUFHbkQsU0FBZ0IsaUJBQWlCO0lBQy9CLG9HQUFvRztJQUNwRyxPQUFPLGtFQUFrRSxDQUFDO0FBQzVFLENBQUM7QUFFRCxpREFBaUQ7QUFDakQsU0FBUyxFQUFFLENBQUMsQ0FBUztJQUNuQixPQUFPLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztBQUN2QyxDQUFDO0FBRUQsU0FBZ0IsVUFBVSxDQUFDLElBQWM7SUFDdkMsT0FBTyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ2hELENBQUM7QUFFRCxTQUFTLFNBQVMsQ0FBQyxTQUFpQixFQUFFLElBQWM7SUFDbEQsT0FBTyxDQUFDLFNBQVMsRUFBRSxHQUFHLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ3hFLENBQUM7QUFFRCxTQUFTLHdCQUF3QixDQUFDLENBQWtCO0lBQ2xELE9BQU8sc0JBQVUsQ0FBQyxVQUFVLENBQUMsZUFBRyxDQUFDLFVBQVUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLGlCQUFpQixFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLFVBQVUsQ0FBQyxDQUFDO0FBQzdGLENBQUM7QUFFRCxNQUFhLHdCQUF3QjtJQUNuQyxZQUNTLFNBQWlCLEVBQ2pCLG9CQUE4QixFQUM5QixZQUFzQixFQUN0QixpQkFBeUIsRUFDekIsZUFBdUIsRUFDdkIsaUJBQXlCO1FBTHpCLGNBQVMsR0FBVCxTQUFTLENBQVE7UUFDakIseUJBQW9CLEdBQXBCLG9CQUFvQixDQUFVO1FBQzlCLGlCQUFZLEdBQVosWUFBWSxDQUFVO1FBQ3RCLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBUTtRQUN6QixvQkFBZSxHQUFmLGVBQWUsQ0FBUTtRQUN2QixzQkFBaUIsR0FBakIsaUJBQWlCLENBQVE7SUFDL0IsQ0FBQztJQUVKLE1BQU0sQ0FBQyxVQUFVLENBQ2YsTUFHaUI7UUFFakIsT0FBTyxJQUFJLHdCQUF3QixDQUNqQyxNQUFNLENBQUMsU0FBUyxFQUNoQixNQUFNLENBQUMsb0JBQW9CLEVBQzNCLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDLEVBQzNELE1BQU0sQ0FBQyxjQUFjLEVBQ3JCLE1BQU0sQ0FBQyxvQkFBb0IsRUFDM0IsTUFBTSxDQUFDLGFBQWEsQ0FDckIsQ0FBQztJQUNKLENBQUM7SUFFRCw4REFBOEQ7SUFDOUQsZ0NBQWdDO1FBQzlCLE9BQU8sRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQyxFQUFFLENBQUM7SUFDMUUsQ0FBQztJQUVELGdFQUFnRTtJQUNoRSxrQ0FBa0M7UUFDaEMsT0FBTyxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEVBQUUsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUMsRUFBRSxDQUFDO0lBQzVFLENBQUM7SUFFRCwyREFBMkQ7SUFDM0QsMEJBQTBCO1FBQ3hCLE9BQU8sRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxFQUFFLEVBQUUsT0FBTyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDO0lBQzVHLENBQUM7SUFFRCx1RUFBdUU7SUFDdkUseUJBQXlCO1FBQ3ZCLE9BQU87WUFDTCxLQUFLLEVBQUU7Z0JBQ0w7b0JBQ0UsS0FBSyxFQUFFO3dCQUNMLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDO3dCQUNsQixJQUFJLENBQUMsb0JBQW9CLENBQUMsTUFBTSxLQUFLLENBQUM7NEJBQ3BDLENBQUMsQ0FBQyxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUFFOzRCQUMxRCxDQUFDLENBQUMsRUFBRSxXQUFXLEVBQUUsU0FBUyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsb0JBQW9CLENBQUMsRUFBRTtxQkFDN0Q7aUJBQ0Y7Z0JBQ0QsRUFBRSxPQUFPLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDLEVBQUU7YUFDbEU7U0FDRixDQUFDO0lBQ0osQ0FBQztJQUVEOzs7Ozs7O09BT0c7SUFDSCxvQkFBb0I7UUFDbEIsT0FBTyx3QkFBd0IsQ0FBQztZQUM5QixJQUFJLENBQUMseUJBQXlCLEVBQUU7WUFDaEMsQ0FBQyxJQUFJLENBQUMsMEJBQTBCLEVBQUUsRUFBRSxJQUFJLENBQUMsZ0NBQWdDLEVBQUUsQ0FBQztTQUM3RSxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQ7O09BRUc7SUFDSCw4QkFBOEI7UUFDNUIsT0FBTyx3QkFBd0IsQ0FBQyxJQUFJLENBQUMsa0NBQWtDLEVBQUUsQ0FBQyxDQUFDO0lBQzdFLENBQUM7SUFFRDs7T0FFRztJQUNILHNCQUFzQjtRQUNwQixPQUFPLHdCQUF3QixDQUFDLENBQUMsSUFBSSxDQUFDLHlCQUF5QixFQUFFLEVBQUUsSUFBSSxDQUFDLGtDQUFrQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ2pILENBQUM7Q0FDRjtBQXRGRCw0REFzRkMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIGh0dHBzOi8vZ2l0aHViLmNvbS9iYWJ5bG9ubGFicy1pby9iYWJ5bG9uL3RyZWUvbWFpbi9kb2NzXG4gKiBodHRwczovL2dpdGh1Yi5jb20vYmFieWxvbmxhYnMtaW8vYmFieWxvbi9ibG9iL21haW4vZG9jcy9zdGFraW5nLXNjcmlwdC5tZFxuICogaHR0cHM6Ly9naXRodWIuY29tL2JhYnlsb25sYWJzLWlvL2JhYnlsb24vYmxvYi92MS45OS4wLXNuYXBzaG90LjI1MDIxMS9idGNzdGFraW5nL3N0YWtpbmcuZ29cbiAqL1xuXG5pbXBvcnQgeyBEZXNjcmlwdG9yLCBhc3QgfSBmcm9tICdAYml0Z28vd2FzbS11dHhvJztcbmltcG9ydCB7IFN0YWtpbmdQYXJhbXMgfSBmcm9tICdAYml0Z28tYmV0YS9iYWJ5bG9ubGFicy1pby1idGMtc3Rha2luZy10cyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRVbnNwZW5kYWJsZUtleSgpOiBzdHJpbmcge1xuICAvLyBodHRwczovL2dpdGh1Yi5jb20vYmFieWxvbmxhYnMtaW8vYnRjLXN0YWtpbmctdHMvYmxvYi92MC40LjAtcmMuMi9zcmMvY29uc3RhbnRzL2ludGVybmFsUHVia2V5LnRzXG4gIHJldHVybiAnNTA5MjliNzRjMWEwNDk1NGI3OGI0YjYwMzVlOTdhNWUwNzhhNWEwZjI4ZWM5NmQ1NDdiZmVlOWFjZTgwM2FjMCc7XG59XG5cbi8vIEhlbHBlciBmdW5jdGlvbnMgZm9yIGNyZWF0aW5nIG1pbmlzY3JpcHQgbm9kZXNcbmZ1bmN0aW9uIHBrKGI6IEJ1ZmZlcik6IGFzdC5NaW5pc2NyaXB0Tm9kZSB7XG4gIHJldHVybiB7ICd2OnBrJzogYi50b1N0cmluZygnaGV4JykgfTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHNvcnRlZEtleXMoa2V5czogQnVmZmVyW10pOiBCdWZmZXJbXSB7XG4gIHJldHVybiBbLi4ua2V5c10uc29ydCgoYSwgYikgPT4gYS5jb21wYXJlKGIpKTtcbn1cblxuZnVuY3Rpb24gbXVsdGlBcmdzKHRocmVzaG9sZDogbnVtYmVyLCBrZXlzOiBCdWZmZXJbXSk6IFtudW1iZXIsIC4uLnN0cmluZ1tdXSB7XG4gIHJldHVybiBbdGhyZXNob2xkLCAuLi5zb3J0ZWRLZXlzKGtleXMpLm1hcCgoaykgPT4gay50b1N0cmluZygnaGV4JykpXTtcbn1cblxuZnVuY3Rpb24gdGFwcm9vdFNjcmlwdE9ubHlGcm9tQXN0KG46IGFzdC5UYXBUcmVlTm9kZSk6IERlc2NyaXB0b3Ige1xuICByZXR1cm4gRGVzY3JpcHRvci5mcm9tU3RyaW5nKGFzdC5mb3JtYXROb2RlKHsgdHI6IFtnZXRVbnNwZW5kYWJsZUtleSgpLCBuXSB9KSwgJ2RlZmluaXRlJyk7XG59XG5cbmV4cG9ydCBjbGFzcyBCYWJ5bG9uRGVzY3JpcHRvckJ1aWxkZXIge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgc3Rha2VyS2V5OiBCdWZmZXIsXG4gICAgcHVibGljIGZpbmFsaXR5UHJvdmlkZXJLZXlzOiBCdWZmZXJbXSxcbiAgICBwdWJsaWMgY292ZW5hbnRLZXlzOiBCdWZmZXJbXSxcbiAgICBwdWJsaWMgY292ZW5hbnRUaHJlc2hvbGQ6IG51bWJlcixcbiAgICBwdWJsaWMgc3Rha2luZ1RpbWVMb2NrOiBudW1iZXIsXG4gICAgcHVibGljIHVuYm9uZGluZ1RpbWVMb2NrOiBudW1iZXJcbiAgKSB7fVxuXG4gIHN0YXRpYyBmcm9tUGFyYW1zKFxuICAgIHBhcmFtczoge1xuICAgICAgc3Rha2VyS2V5OiBCdWZmZXI7XG4gICAgICBmaW5hbGl0eVByb3ZpZGVyS2V5czogQnVmZmVyW107XG4gICAgfSAmIFN0YWtpbmdQYXJhbXNcbiAgKTogQmFieWxvbkRlc2NyaXB0b3JCdWlsZGVyIHtcbiAgICByZXR1cm4gbmV3IEJhYnlsb25EZXNjcmlwdG9yQnVpbGRlcihcbiAgICAgIHBhcmFtcy5zdGFrZXJLZXksXG4gICAgICBwYXJhbXMuZmluYWxpdHlQcm92aWRlcktleXMsXG4gICAgICBwYXJhbXMuY292ZW5hbnROb0Nvb3JkUGtzLm1hcCgoaykgPT4gQnVmZmVyLmZyb20oaywgJ2hleCcpKSxcbiAgICAgIHBhcmFtcy5jb3ZlbmFudFF1b3J1bSxcbiAgICAgIHBhcmFtcy5taW5TdGFraW5nVGltZUJsb2NrcyxcbiAgICAgIHBhcmFtcy51bmJvbmRpbmdUaW1lXG4gICAgKTtcbiAgfVxuXG4gIC8qKiBTcGVuZCBwYXRoIHdpdGggdGhlIHN0YWtlciBrZXkgYW5kIHRoZSBzdGFraW5nIHRpbWVsb2NrICovXG4gIGdldFN0YWtpbmdUaW1lbG9ja01pbmlzY3JpcHROb2RlKCk6IGFzdC5NaW5pc2NyaXB0Tm9kZSB7XG4gICAgcmV0dXJuIHsgYW5kX3Y6IFtwayh0aGlzLnN0YWtlcktleSksIHsgb2xkZXI6IHRoaXMuc3Rha2luZ1RpbWVMb2NrIH1dIH07XG4gIH1cblxuICAvKiogU3BlbmQgcGF0aCB3aXRoIHRoZSBzdGFrZXIga2V5IGFuZCB0aGUgdW5ib25kaW5nIHRpbWVsb2NrICovXG4gIGdldFVuYm9uZGluZ1RpbWVsb2NrTWluaXNjcmlwdE5vZGUoKTogYXN0Lk1pbmlzY3JpcHROb2RlIHtcbiAgICByZXR1cm4geyBhbmRfdjogW3BrKHRoaXMuc3Rha2VyS2V5KSwgeyBvbGRlcjogdGhpcy51bmJvbmRpbmdUaW1lTG9jayB9XSB9O1xuICB9XG5cbiAgLyoqIFNwZW5kIHBhdGggd2l0aCB0aGUgc3Rha2VyIGtleSBhbmQgdGhlIGNvdmVuYW50IGtleXMgKi9cbiAgZ2V0VW5ib25kaW5nTWluaXNjcmlwdE5vZGUoKTogYXN0Lk1pbmlzY3JpcHROb2RlIHtcbiAgICByZXR1cm4geyBhbmRfdjogW3BrKHRoaXMuc3Rha2VyS2V5KSwgeyBtdWx0aV9hOiBtdWx0aUFyZ3ModGhpcy5jb3ZlbmFudFRocmVzaG9sZCwgdGhpcy5jb3ZlbmFudEtleXMpIH1dIH07XG4gIH1cblxuICAvKiogU3BlbmQgcGF0aCB3aXRoIHRoZSBmaW5hbGl0eSBwcm92aWRlciBrZXlzIGFuZCB0aGUgY292ZW5hbnQga2V5cyAqL1xuICBnZXRTbGFzaGluZ01pbmlzY3JpcHROb2RlKCk6IGFzdC5NaW5pc2NyaXB0Tm9kZSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGFuZF92OiBbXG4gICAgICAgIHtcbiAgICAgICAgICBhbmRfdjogW1xuICAgICAgICAgICAgcGsodGhpcy5zdGFrZXJLZXkpLFxuICAgICAgICAgICAgdGhpcy5maW5hbGl0eVByb3ZpZGVyS2V5cy5sZW5ndGggPT09IDFcbiAgICAgICAgICAgICAgPyB7ICd2OnBrJzogdGhpcy5maW5hbGl0eVByb3ZpZGVyS2V5c1swXS50b1N0cmluZygnaGV4JykgfVxuICAgICAgICAgICAgICA6IHsgJ3Y6bXVsdGlfYSc6IG11bHRpQXJncygxLCB0aGlzLmZpbmFsaXR5UHJvdmlkZXJLZXlzKSB9LFxuICAgICAgICAgIF0sXG4gICAgICAgIH0sXG4gICAgICAgIHsgbXVsdGlfYTogbXVsdGlBcmdzKHRoaXMuY292ZW5hbnRUaHJlc2hvbGQsIHRoaXMuY292ZW5hbnRLZXlzKSB9LFxuICAgICAgXSxcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBkZXNjcmlwdG9yIGZvciBhIHN0YWtpbmcgb3V0cHV0LlxuICAgKlxuICAgKiBUaHJlZSBzcGVuZCBwYXRoczpcbiAgICogLSB0aGUgc2xhc2hpbmcgc2NyaXB0LFxuICAgKiAtIHRoZSB1bmJvbmRpbmcgc2NyaXB0LFxuICAgKiAtIHRoZSB0aW1lbG9ja2VkIHVuc3Rha2luZyBzY3JpcHQuXG4gICAqL1xuICBnZXRTdGFraW5nRGVzY3JpcHRvcigpOiBEZXNjcmlwdG9yIHtcbiAgICByZXR1cm4gdGFwcm9vdFNjcmlwdE9ubHlGcm9tQXN0KFtcbiAgICAgIHRoaXMuZ2V0U2xhc2hpbmdNaW5pc2NyaXB0Tm9kZSgpLFxuICAgICAgW3RoaXMuZ2V0VW5ib25kaW5nTWluaXNjcmlwdE5vZGUoKSwgdGhpcy5nZXRTdGFraW5nVGltZWxvY2tNaW5pc2NyaXB0Tm9kZSgpXSxcbiAgICBdKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgZGVzY3JpcHRvciBmb3IgdGhlIHRpbWVsb2NrZWQgdW5ib25kaW5nIHNjcmlwdC5cbiAgICovXG4gIGdldFVuYm9uZGluZ1RpbWVsb2NrRGVzY3JpcHRvcigpOiBEZXNjcmlwdG9yIHtcbiAgICByZXR1cm4gdGFwcm9vdFNjcmlwdE9ubHlGcm9tQXN0KHRoaXMuZ2V0VW5ib25kaW5nVGltZWxvY2tNaW5pc2NyaXB0Tm9kZSgpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgZGVzY3JpcHRvciB3aXRoIHR3byBzY3JpcHQgcGF0aHM6IHRoZSBzbGFzaGluZyBzY3JpcHQgYW5kIHRoZSB0aW1lbG9ja2VkIHVuYm9uZGluZyBzY3JpcHQuXG4gICAqL1xuICBnZXRVbmJvbmRpbmdEZXNjcmlwdG9yKCk6IERlc2NyaXB0b3Ige1xuICAgIHJldHVybiB0YXByb290U2NyaXB0T25seUZyb21Bc3QoW3RoaXMuZ2V0U2xhc2hpbmdNaW5pc2NyaXB0Tm9kZSgpLCB0aGlzLmdldFVuYm9uZGluZ1RpbWVsb2NrTWluaXNjcmlwdE5vZGUoKV0pO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,8 @@
1
+ export * from './delegationMessage';
2
+ export * from './descriptor';
3
+ export * from './network';
4
+ export * from './parseDescriptor';
5
+ export * from './stakingParams';
6
+ export * from './stakingManager';
7
+ export * from './undelegation';
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/babylon/index.ts"],"names":[],"mappings":"AAOA,cAAc,qBAAqB,CAAC;AACpC,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC"}
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
36
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ const babylonlabs_io_btc_staking_ts_1 = require("@bitgo-beta/babylonlabs-io-btc-staking-ts");
40
+ const bitcoinjslib = __importStar(require("bitcoinjs-lib"));
41
+ const utxolib = __importStar(require("@bitgo-beta/utxo-lib"));
42
+ (0, babylonlabs_io_btc_staking_ts_1.initBTCCurve)();
43
+ bitcoinjslib.initEccLib(utxolib.ecc);
44
+ __exportStar(require("./delegationMessage"), exports);
45
+ __exportStar(require("./descriptor"), exports);
46
+ __exportStar(require("./network"), exports);
47
+ __exportStar(require("./parseDescriptor"), exports);
48
+ __exportStar(require("./stakingParams"), exports);
49
+ __exportStar(require("./stakingManager"), exports);
50
+ __exportStar(require("./undelegation"), exports);
51
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYmFieWxvbi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDZGQUF5RTtBQUN6RSw0REFBOEM7QUFDOUMsOERBQWdEO0FBRWhELElBQUEsNENBQVksR0FBRSxDQUFDO0FBQ2YsWUFBWSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7QUFFckMsc0RBQW9DO0FBQ3BDLCtDQUE2QjtBQUM3Qiw0Q0FBMEI7QUFDMUIsb0RBQWtDO0FBQ2xDLGtEQUFnQztBQUNoQyxtREFBaUM7QUFDakMsaURBQStCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5pdEJUQ0N1cnZlIH0gZnJvbSAnQGJpdGdvLWJldGEvYmFieWxvbmxhYnMtaW8tYnRjLXN0YWtpbmctdHMnO1xuaW1wb3J0ICogYXMgYml0Y29pbmpzbGliIGZyb20gJ2JpdGNvaW5qcy1saWInO1xuaW1wb3J0ICogYXMgdXR4b2xpYiBmcm9tICdAYml0Z28tYmV0YS91dHhvLWxpYic7XG5cbmluaXRCVENDdXJ2ZSgpO1xuYml0Y29pbmpzbGliLmluaXRFY2NMaWIodXR4b2xpYi5lY2MpO1xuXG5leHBvcnQgKiBmcm9tICcuL2RlbGVnYXRpb25NZXNzYWdlJztcbmV4cG9ydCAqIGZyb20gJy4vZGVzY3JpcHRvcic7XG5leHBvcnQgKiBmcm9tICcuL25ldHdvcmsnO1xuZXhwb3J0ICogZnJvbSAnLi9wYXJzZURlc2NyaXB0b3InO1xuZXhwb3J0ICogZnJvbSAnLi9zdGFraW5nUGFyYW1zJztcbmV4cG9ydCAqIGZyb20gJy4vc3Rha2luZ01hbmFnZXInO1xuZXhwb3J0ICogZnJvbSAnLi91bmRlbGVnYXRpb24nO1xuIl19
@@ -0,0 +1,7 @@
1
+ import * as bitcoinjslib from 'bitcoinjs-lib';
2
+ import * as utxolib from '@bitgo-beta/utxo-lib';
3
+ export type BabylonNetwork = 'mainnet' | 'testnet';
4
+ export type BabylonNetworkLike = bitcoinjslib.Network | utxolib.Network | BabylonNetwork;
5
+ export declare function toBabylonNetwork(n: BabylonNetworkLike): BabylonNetwork;
6
+ export declare function toBitcoinJsNetwork(n: BabylonNetworkLike): bitcoinjslib.Network;
7
+ //# sourceMappingURL=network.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"network.d.ts","sourceRoot":"","sources":["../../../../src/babylon/network.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,YAAY,MAAM,eAAe,CAAC;AAC9C,OAAO,KAAK,OAAO,MAAM,sBAAsB,CAAC;AAEhD,MAAM,MAAM,cAAc,GAAG,SAAS,GAAG,SAAS,CAAC;AAEnD,MAAM,MAAM,kBAAkB,GAAG,YAAY,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,GAAG,cAAc,CAAC;AAEzF,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,kBAAkB,GAAG,cAAc,CAetE;AAED,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,kBAAkB,GAAG,YAAY,CAAC,OAAO,CAS9E"}
@@ -0,0 +1,66 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.toBabylonNetwork = toBabylonNetwork;
37
+ exports.toBitcoinJsNetwork = toBitcoinJsNetwork;
38
+ const bitcoinjslib = __importStar(require("bitcoinjs-lib"));
39
+ const utxolib = __importStar(require("@bitgo-beta/utxo-lib"));
40
+ function toBabylonNetwork(n) {
41
+ switch (n) {
42
+ case bitcoinjslib.networks.bitcoin:
43
+ case utxolib.networks.bitcoin:
44
+ return 'mainnet';
45
+ case bitcoinjslib.networks.testnet:
46
+ case utxolib.networks.testnet:
47
+ case utxolib.networks.bitcoinPublicSignet:
48
+ return 'testnet';
49
+ case 'mainnet':
50
+ case 'testnet':
51
+ return n;
52
+ default:
53
+ throw new Error('Unsupported network');
54
+ }
55
+ }
56
+ function toBitcoinJsNetwork(n) {
57
+ switch (toBabylonNetwork(n)) {
58
+ case 'mainnet':
59
+ return bitcoinjslib.networks.bitcoin;
60
+ case 'testnet':
61
+ return bitcoinjslib.networks.testnet;
62
+ default:
63
+ throw new Error('Unsupported network');
64
+ }
65
+ }
66
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmV0d29yay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9iYWJ5bG9uL25ldHdvcmsudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFPQSw0Q0FlQztBQUVELGdEQVNDO0FBakNELDREQUE4QztBQUM5Qyw4REFBZ0Q7QUFNaEQsU0FBZ0IsZ0JBQWdCLENBQUMsQ0FBcUI7SUFDcEQsUUFBUSxDQUFDLEVBQUUsQ0FBQztRQUNWLEtBQUssWUFBWSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUM7UUFDbkMsS0FBSyxPQUFPLENBQUMsUUFBUSxDQUFDLE9BQU87WUFDM0IsT0FBTyxTQUFTLENBQUM7UUFDbkIsS0FBSyxZQUFZLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQztRQUNuQyxLQUFLLE9BQU8sQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDO1FBQzlCLEtBQUssT0FBTyxDQUFDLFFBQVEsQ0FBQyxtQkFBbUI7WUFDdkMsT0FBTyxTQUFTLENBQUM7UUFDbkIsS0FBSyxTQUFTLENBQUM7UUFDZixLQUFLLFNBQVM7WUFDWixPQUFPLENBQUMsQ0FBQztRQUNYO1lBQ0UsTUFBTSxJQUFJLEtBQUssQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0lBQzNDLENBQUM7QUFDSCxDQUFDO0FBRUQsU0FBZ0Isa0JBQWtCLENBQUMsQ0FBcUI7SUFDdEQsUUFBUSxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQzVCLEtBQUssU0FBUztZQUNaLE9BQU8sWUFBWSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUM7UUFDdkMsS0FBSyxTQUFTO1lBQ1osT0FBTyxZQUFZLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQztRQUN2QztZQUNFLE1BQU0sSUFBSSxLQUFLLENBQUMscUJBQXFCLENBQUMsQ0FBQztJQUMzQyxDQUFDO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGJpdGNvaW5qc2xpYiBmcm9tICdiaXRjb2luanMtbGliJztcbmltcG9ydCAqIGFzIHV0eG9saWIgZnJvbSAnQGJpdGdvLWJldGEvdXR4by1saWInO1xuXG5leHBvcnQgdHlwZSBCYWJ5bG9uTmV0d29yayA9ICdtYWlubmV0JyB8ICd0ZXN0bmV0JztcblxuZXhwb3J0IHR5cGUgQmFieWxvbk5ldHdvcmtMaWtlID0gYml0Y29pbmpzbGliLk5ldHdvcmsgfCB1dHhvbGliLk5ldHdvcmsgfCBCYWJ5bG9uTmV0d29yaztcblxuZXhwb3J0IGZ1bmN0aW9uIHRvQmFieWxvbk5ldHdvcmsobjogQmFieWxvbk5ldHdvcmtMaWtlKTogQmFieWxvbk5ldHdvcmsge1xuICBzd2l0Y2ggKG4pIHtcbiAgICBjYXNlIGJpdGNvaW5qc2xpYi5uZXR3b3Jrcy5iaXRjb2luOlxuICAgIGNhc2UgdXR4b2xpYi5uZXR3b3Jrcy5iaXRjb2luOlxuICAgICAgcmV0dXJuICdtYWlubmV0JztcbiAgICBjYXNlIGJpdGNvaW5qc2xpYi5uZXR3b3Jrcy50ZXN0bmV0OlxuICAgIGNhc2UgdXR4b2xpYi5uZXR3b3Jrcy50ZXN0bmV0OlxuICAgIGNhc2UgdXR4b2xpYi5uZXR3b3Jrcy5iaXRjb2luUHVibGljU2lnbmV0OlxuICAgICAgcmV0dXJuICd0ZXN0bmV0JztcbiAgICBjYXNlICdtYWlubmV0JzpcbiAgICBjYXNlICd0ZXN0bmV0JzpcbiAgICAgIHJldHVybiBuO1xuICAgIGRlZmF1bHQ6XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1Vuc3VwcG9ydGVkIG5ldHdvcmsnKTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdG9CaXRjb2luSnNOZXR3b3JrKG46IEJhYnlsb25OZXR3b3JrTGlrZSk6IGJpdGNvaW5qc2xpYi5OZXR3b3JrIHtcbiAgc3dpdGNoICh0b0JhYnlsb25OZXR3b3JrKG4pKSB7XG4gICAgY2FzZSAnbWFpbm5ldCc6XG4gICAgICByZXR1cm4gYml0Y29pbmpzbGliLm5ldHdvcmtzLmJpdGNvaW47XG4gICAgY2FzZSAndGVzdG5ldCc6XG4gICAgICByZXR1cm4gYml0Y29pbmpzbGliLm5ldHdvcmtzLnRlc3RuZXQ7XG4gICAgZGVmYXVsdDpcbiAgICAgIHRocm93IG5ldyBFcnJvcignVW5zdXBwb3J0ZWQgbmV0d29yaycpO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,152 @@
1
+ [
2
+ {
3
+ "version": 0,
4
+ "params": {
5
+ "covenant_pks": [
6
+ "d45c70d28f169e1f0c7f4a78e2bc73497afe585b70aa897955989068f3350aaa",
7
+ "4b15848e495a3a62283daaadb3f458a00859fe48e321f0121ebabbdd6698f9fa",
8
+ "23b29f89b45f4af41588dcaf0ca572ada32872a88224f311373917f1b37d08d1",
9
+ "d3c79b99ac4d265c2f97ac11e3232c07a598b020cf56c6f055472c893c0967ae",
10
+ "8242640732773249312c47ca7bdb50ca79f15f2ecc32b9c83ceebba44fb74df7",
11
+ "e36200aaa8dce9453567bba108bdc51f7f1174b97a65e4dc4402fc5de779d41c",
12
+ "cbdd028cfe32c1c1f2d84bfec71e19f92df509bba7b8ad31ca6c1a134fe09204",
13
+ "f178fcce82f95c524b53b077e6180bd2d779a9057fdff4255a0af95af918cee0",
14
+ "de13fc96ea6899acbdc5db3afaa683f62fe35b60ff6eb723dad28a11d2b12f8c"
15
+ ],
16
+ "covenant_quorum": 6,
17
+ "min_staking_value_sat": "500000",
18
+ "max_staking_value_sat": "5000000",
19
+ "min_staking_time_blocks": 64000,
20
+ "max_staking_time_blocks": 64000,
21
+ "slashing_pk_script": "agdiYWJ5bG9u",
22
+ "min_slashing_tx_fee_sat": "100000",
23
+ "slashing_rate": "0.001000000000000000",
24
+ "unbonding_time_blocks": 1008,
25
+ "unbonding_fee_sat": "64000",
26
+ "min_commission_rate": "0.030000000000000000",
27
+ "delegation_creation_base_gas_fee": "1095000",
28
+ "allow_list_expiration_height": "139920",
29
+ "btc_activation_height": 857910
30
+ }
31
+ },
32
+ {
33
+ "version": 1,
34
+ "params": {
35
+ "covenant_pks": [
36
+ "d45c70d28f169e1f0c7f4a78e2bc73497afe585b70aa897955989068f3350aaa",
37
+ "4b15848e495a3a62283daaadb3f458a00859fe48e321f0121ebabbdd6698f9fa",
38
+ "23b29f89b45f4af41588dcaf0ca572ada32872a88224f311373917f1b37d08d1",
39
+ "d3c79b99ac4d265c2f97ac11e3232c07a598b020cf56c6f055472c893c0967ae",
40
+ "8242640732773249312c47ca7bdb50ca79f15f2ecc32b9c83ceebba44fb74df7",
41
+ "e36200aaa8dce9453567bba108bdc51f7f1174b97a65e4dc4402fc5de779d41c",
42
+ "cbdd028cfe32c1c1f2d84bfec71e19f92df509bba7b8ad31ca6c1a134fe09204",
43
+ "f178fcce82f95c524b53b077e6180bd2d779a9057fdff4255a0af95af918cee0",
44
+ "de13fc96ea6899acbdc5db3afaa683f62fe35b60ff6eb723dad28a11d2b12f8c"
45
+ ],
46
+ "covenant_quorum": 6,
47
+ "min_staking_value_sat": "500000",
48
+ "max_staking_value_sat": "50000000000",
49
+ "min_staking_time_blocks": 64000,
50
+ "max_staking_time_blocks": 64000,
51
+ "slashing_pk_script": "agdiYWJ5bG9u",
52
+ "min_slashing_tx_fee_sat": "100000",
53
+ "slashing_rate": "0.001000000000000000",
54
+ "unbonding_time_blocks": 1008,
55
+ "unbonding_fee_sat": "32000",
56
+ "min_commission_rate": "0.030000000000000000",
57
+ "delegation_creation_base_gas_fee": "1095000",
58
+ "allow_list_expiration_height": "139920",
59
+ "btc_activation_height": 864790
60
+ }
61
+ },
62
+ {
63
+ "version": 2,
64
+ "params": {
65
+ "covenant_pks": [
66
+ "d45c70d28f169e1f0c7f4a78e2bc73497afe585b70aa897955989068f3350aaa",
67
+ "4b15848e495a3a62283daaadb3f458a00859fe48e321f0121ebabbdd6698f9fa",
68
+ "23b29f89b45f4af41588dcaf0ca572ada32872a88224f311373917f1b37d08d1",
69
+ "d3c79b99ac4d265c2f97ac11e3232c07a598b020cf56c6f055472c893c0967ae",
70
+ "8242640732773249312c47ca7bdb50ca79f15f2ecc32b9c83ceebba44fb74df7",
71
+ "e36200aaa8dce9453567bba108bdc51f7f1174b97a65e4dc4402fc5de779d41c",
72
+ "cbdd028cfe32c1c1f2d84bfec71e19f92df509bba7b8ad31ca6c1a134fe09204",
73
+ "f178fcce82f95c524b53b077e6180bd2d779a9057fdff4255a0af95af918cee0",
74
+ "de13fc96ea6899acbdc5db3afaa683f62fe35b60ff6eb723dad28a11d2b12f8c"
75
+ ],
76
+ "covenant_quorum": 6,
77
+ "min_staking_value_sat": "500000",
78
+ "max_staking_value_sat": "500000000000",
79
+ "min_staking_time_blocks": 64000,
80
+ "max_staking_time_blocks": 64000,
81
+ "slashing_pk_script": "agdiYWJ5bG9u",
82
+ "min_slashing_tx_fee_sat": "100000",
83
+ "slashing_rate": "0.001000000000000000",
84
+ "unbonding_time_blocks": 1008,
85
+ "unbonding_fee_sat": "32000",
86
+ "min_commission_rate": "0.030000000000000000",
87
+ "delegation_creation_base_gas_fee": "1095000",
88
+ "allow_list_expiration_height": "139920",
89
+ "btc_activation_height": 874088
90
+ }
91
+ },
92
+ {
93
+ "version": 3,
94
+ "params": {
95
+ "covenant_pks": [
96
+ "d45c70d28f169e1f0c7f4a78e2bc73497afe585b70aa897955989068f3350aaa",
97
+ "4b15848e495a3a62283daaadb3f458a00859fe48e321f0121ebabbdd6698f9fa",
98
+ "23b29f89b45f4af41588dcaf0ca572ada32872a88224f311373917f1b37d08d1",
99
+ "d3c79b99ac4d265c2f97ac11e3232c07a598b020cf56c6f055472c893c0967ae",
100
+ "8242640732773249312c47ca7bdb50ca79f15f2ecc32b9c83ceebba44fb74df7",
101
+ "e36200aaa8dce9453567bba108bdc51f7f1174b97a65e4dc4402fc5de779d41c",
102
+ "f178fcce82f95c524b53b077e6180bd2d779a9057fdff4255a0af95af918cee0",
103
+ "de13fc96ea6899acbdc5db3afaa683f62fe35b60ff6eb723dad28a11d2b12f8c",
104
+ "cbdd028cfe32c1c1f2d84bfec71e19f92df509bba7b8ad31ca6c1a134fe09204"
105
+ ],
106
+ "covenant_quorum": 6,
107
+ "min_staking_value_sat": "500000",
108
+ "max_staking_value_sat": "500000000000",
109
+ "min_staking_time_blocks": 64000,
110
+ "max_staking_time_blocks": 64000,
111
+ "slashing_pk_script": "agdiYWJ5bG9u",
112
+ "min_slashing_tx_fee_sat": "100000",
113
+ "slashing_rate": "0.001000000000000000",
114
+ "unbonding_time_blocks": 1008,
115
+ "unbonding_fee_sat": "32000",
116
+ "min_commission_rate": "0.030000000000000000",
117
+ "delegation_creation_base_gas_fee": "1095000",
118
+ "allow_list_expiration_height": "139920",
119
+ "btc_activation_height": 891425
120
+ }
121
+ },
122
+ {
123
+ "version": 4,
124
+ "params": {
125
+ "covenant_pks": [
126
+ "d45c70d28f169e1f0c7f4a78e2bc73497afe585b70aa897955989068f3350aaa",
127
+ "4b15848e495a3a62283daaadb3f458a00859fe48e321f0121ebabbdd6698f9fa",
128
+ "23b29f89b45f4af41588dcaf0ca572ada32872a88224f311373917f1b37d08d1",
129
+ "d3c79b99ac4d265c2f97ac11e3232c07a598b020cf56c6f055472c893c0967ae",
130
+ "8242640732773249312c47ca7bdb50ca79f15f2ecc32b9c83ceebba44fb74df7",
131
+ "e36200aaa8dce9453567bba108bdc51f7f1174b97a65e4dc4402fc5de779d41c",
132
+ "f178fcce82f95c524b53b077e6180bd2d779a9057fdff4255a0af95af918cee0",
133
+ "de13fc96ea6899acbdc5db3afaa683f62fe35b60ff6eb723dad28a11d2b12f8c",
134
+ "cbdd028cfe32c1c1f2d84bfec71e19f92df509bba7b8ad31ca6c1a134fe09204"
135
+ ],
136
+ "covenant_quorum": 6,
137
+ "min_staking_value_sat": "500000",
138
+ "max_staking_value_sat": "500000000000",
139
+ "min_staking_time_blocks": 64000,
140
+ "max_staking_time_blocks": 64000,
141
+ "slashing_pk_script": "agdiYWJ5bG9u",
142
+ "min_slashing_tx_fee_sat": "100000",
143
+ "slashing_rate": "0.001000000000000000",
144
+ "unbonding_time_blocks": 1008,
145
+ "unbonding_fee_sat": "9600",
146
+ "min_commission_rate": "0.030000000000000000",
147
+ "delegation_creation_base_gas_fee": "1095000",
148
+ "allow_list_expiration_height": "139920",
149
+ "btc_activation_height": 893362
150
+ }
151
+ }
152
+ ]
@@ -0,0 +1,212 @@
1
+ [
2
+ {
3
+ "version": 0,
4
+ "params": {
5
+ "covenant_pks": [
6
+ "49766ccd9e3cd94343e2040474a77fb37cdfd30530d05f9f1e96ae1e2102c86e",
7
+ "76d1ae01f8fb6bf30108731c884cddcf57ef6eef2d9d9559e130894e0e40c62c",
8
+ "17921cf156ccb4e73d428f996ed11b245313e37e27c978ac4d2cc21eca4672e4",
9
+ "113c3a32a9d320b72190a04a020a0db3976ef36972673258e9a38a364f3dc3b0",
10
+ "79a71ffd71c503ef2e2f91bccfc8fcda7946f4653cef0d9f3dde20795ef3b9f0",
11
+ "3bb93dfc8b61887d771f3630e9a63e97cbafcfcc78556a474df83a31a0ef899c",
12
+ "d21faf78c6751a0d38e6bd8028b907ff07e9a869a43fc837d6b3f8dff6119a36",
13
+ "40afaf47c4ffa56de86410d8e47baa2bb6f04b604f4ea24323737ddc3fe092df",
14
+ "f5199efae3f28bb82476163a7e458c7ad445d9bffb0682d10d3bdb2cb41f8e8e"
15
+ ],
16
+ "covenant_quorum": 6,
17
+ "min_staking_value_sat": "50000",
18
+ "max_staking_value_sat": "5000000",
19
+ "min_staking_time_blocks": 64000,
20
+ "max_staking_time_blocks": 64000,
21
+ "slashing_pk_script": "dqkUAQEBAQEBAQEBAQEBAQEBAQEBAQGIrA==",
22
+ "min_slashing_tx_fee_sat": "1000",
23
+ "slashing_rate": "0.100000000000000000",
24
+ "unbonding_time_blocks": 1008,
25
+ "unbonding_fee_sat": "2000",
26
+ "min_commission_rate": "0.030000000000000000",
27
+ "delegation_creation_base_gas_fee": "1000",
28
+ "allow_list_expiration_height": "26120",
29
+ "btc_activation_height": 197535
30
+ }
31
+ },
32
+ {
33
+ "version": 1,
34
+ "params": {
35
+ "covenant_pks": [
36
+ "09585ab55a971a231c945790a0a81df754e5a07263a5c20829931cc24683bbb7",
37
+ "76d1ae01f8fb6bf30108731c884cddcf57ef6eef2d9d9559e130894e0e40c62c",
38
+ "17921cf156ccb4e73d428f996ed11b245313e37e27c978ac4d2cc21eca4672e4",
39
+ "113c3a32a9d320b72190a04a020a0db3976ef36972673258e9a38a364f3dc3b0",
40
+ "79a71ffd71c503ef2e2f91bccfc8fcda7946f4653cef0d9f3dde20795ef3b9f0",
41
+ "3bb93dfc8b61887d771f3630e9a63e97cbafcfcc78556a474df83a31a0ef899c",
42
+ "d21faf78c6751a0d38e6bd8028b907ff07e9a869a43fc837d6b3f8dff6119a36",
43
+ "40afaf47c4ffa56de86410d8e47baa2bb6f04b604f4ea24323737ddc3fe092df",
44
+ "f5199efae3f28bb82476163a7e458c7ad445d9bffb0682d10d3bdb2cb41f8e8e"
45
+ ],
46
+ "covenant_quorum": 6,
47
+ "min_staking_value_sat": "50000",
48
+ "max_staking_value_sat": "5000000",
49
+ "min_staking_time_blocks": 64000,
50
+ "max_staking_time_blocks": 64000,
51
+ "slashing_pk_script": "dqkUAQEBAQEBAQEBAQEBAQEBAQEBAQGIrA==",
52
+ "min_slashing_tx_fee_sat": "1000",
53
+ "slashing_rate": "0.100000000000000000",
54
+ "unbonding_time_blocks": 1008,
55
+ "unbonding_fee_sat": "10000",
56
+ "min_commission_rate": "0.030000000000000000",
57
+ "delegation_creation_base_gas_fee": "1000",
58
+ "allow_list_expiration_height": "26120",
59
+ "btc_activation_height": 198665
60
+ }
61
+ },
62
+ {
63
+ "version": 2,
64
+ "params": {
65
+ "covenant_pks": [
66
+ "fa9d882d45f4060bdb8042183828cd87544f1ea997380e586cab77d5fd698737",
67
+ "0aee0509b16db71c999238a4827db945526859b13c95487ab46725357c9a9f25",
68
+ "17921cf156ccb4e73d428f996ed11b245313e37e27c978ac4d2cc21eca4672e4",
69
+ "113c3a32a9d320b72190a04a020a0db3976ef36972673258e9a38a364f3dc3b0",
70
+ "79a71ffd71c503ef2e2f91bccfc8fcda7946f4653cef0d9f3dde20795ef3b9f0",
71
+ "3bb93dfc8b61887d771f3630e9a63e97cbafcfcc78556a474df83a31a0ef899c",
72
+ "d21faf78c6751a0d38e6bd8028b907ff07e9a869a43fc837d6b3f8dff6119a36",
73
+ "40afaf47c4ffa56de86410d8e47baa2bb6f04b604f4ea24323737ddc3fe092df",
74
+ "f5199efae3f28bb82476163a7e458c7ad445d9bffb0682d10d3bdb2cb41f8e8e"
75
+ ],
76
+ "covenant_quorum": 6,
77
+ "min_staking_value_sat": "50000",
78
+ "max_staking_value_sat": "5000000",
79
+ "min_staking_time_blocks": 64000,
80
+ "max_staking_time_blocks": 64000,
81
+ "slashing_pk_script": "dqkUAQEBAQEBAQEBAQEBAQEBAQEBAQGIrA==",
82
+ "min_slashing_tx_fee_sat": "1000",
83
+ "slashing_rate": "0.100000000000000000",
84
+ "unbonding_time_blocks": 1008,
85
+ "unbonding_fee_sat": "10000",
86
+ "min_commission_rate": "0.030000000000000000",
87
+ "delegation_creation_base_gas_fee": "1000",
88
+ "allow_list_expiration_height": "26120",
89
+ "btc_activation_height": 200665
90
+ }
91
+ },
92
+ {
93
+ "version": 3,
94
+ "params": {
95
+ "covenant_pks": [
96
+ "fa9d882d45f4060bdb8042183828cd87544f1ea997380e586cab77d5fd698737",
97
+ "0aee0509b16db71c999238a4827db945526859b13c95487ab46725357c9a9f25",
98
+ "17921cf156ccb4e73d428f996ed11b245313e37e27c978ac4d2cc21eca4672e4",
99
+ "113c3a32a9d320b72190a04a020a0db3976ef36972673258e9a38a364f3dc3b0",
100
+ "79a71ffd71c503ef2e2f91bccfc8fcda7946f4653cef0d9f3dde20795ef3b9f0",
101
+ "3bb93dfc8b61887d771f3630e9a63e97cbafcfcc78556a474df83a31a0ef899c",
102
+ "d21faf78c6751a0d38e6bd8028b907ff07e9a869a43fc837d6b3f8dff6119a36",
103
+ "40afaf47c4ffa56de86410d8e47baa2bb6f04b604f4ea24323737ddc3fe092df",
104
+ "f5199efae3f28bb82476163a7e458c7ad445d9bffb0682d10d3bdb2cb41f8e8e"
105
+ ],
106
+ "covenant_quorum": 6,
107
+ "min_staking_value_sat": "50000",
108
+ "max_staking_value_sat": "50000000",
109
+ "min_staking_time_blocks": 64000,
110
+ "max_staking_time_blocks": 64000,
111
+ "slashing_pk_script": "dqkUAQEBAQEBAQEBAQEBAQEBAQEBAQGIrA==",
112
+ "min_slashing_tx_fee_sat": "1000",
113
+ "slashing_rate": "0.100000000000000000",
114
+ "unbonding_time_blocks": 1008,
115
+ "unbonding_fee_sat": "5000",
116
+ "min_commission_rate": "0.030000000000000000",
117
+ "delegation_creation_base_gas_fee": "1000",
118
+ "allow_list_expiration_height": "26120",
119
+ "btc_activation_height": 215968
120
+ }
121
+ },
122
+ {
123
+ "version": 4,
124
+ "params": {
125
+ "covenant_pks": [
126
+ "fa9d882d45f4060bdb8042183828cd87544f1ea997380e586cab77d5fd698737",
127
+ "0aee0509b16db71c999238a4827db945526859b13c95487ab46725357c9a9f25",
128
+ "17921cf156ccb4e73d428f996ed11b245313e37e27c978ac4d2cc21eca4672e4",
129
+ "113c3a32a9d320b72190a04a020a0db3976ef36972673258e9a38a364f3dc3b0",
130
+ "79a71ffd71c503ef2e2f91bccfc8fcda7946f4653cef0d9f3dde20795ef3b9f0",
131
+ "3bb93dfc8b61887d771f3630e9a63e97cbafcfcc78556a474df83a31a0ef899c",
132
+ "d21faf78c6751a0d38e6bd8028b907ff07e9a869a43fc837d6b3f8dff6119a36",
133
+ "40afaf47c4ffa56de86410d8e47baa2bb6f04b604f4ea24323737ddc3fe092df",
134
+ "f5199efae3f28bb82476163a7e458c7ad445d9bffb0682d10d3bdb2cb41f8e8e"
135
+ ],
136
+ "covenant_quorum": 6,
137
+ "min_staking_value_sat": "50000",
138
+ "max_staking_value_sat": "50000000",
139
+ "min_staking_time_blocks": 64000,
140
+ "max_staking_time_blocks": 64000,
141
+ "slashing_pk_script": "dqkUAQEBAQEBAQEBAQEBAQEBAQEBAQGIrA==",
142
+ "min_slashing_tx_fee_sat": "1000",
143
+ "slashing_rate": "0.100000000000000000",
144
+ "unbonding_time_blocks": 1008,
145
+ "unbonding_fee_sat": "5000",
146
+ "min_commission_rate": "0.030000000000000000",
147
+ "delegation_creation_base_gas_fee": "1000",
148
+ "allow_list_expiration_height": "26120",
149
+ "btc_activation_height": 220637
150
+ }
151
+ },
152
+ {
153
+ "version": 5,
154
+ "params": {
155
+ "covenant_pks": [
156
+ "fa9d882d45f4060bdb8042183828cd87544f1ea997380e586cab77d5fd698737",
157
+ "0aee0509b16db71c999238a4827db945526859b13c95487ab46725357c9a9f25",
158
+ "17921cf156ccb4e73d428f996ed11b245313e37e27c978ac4d2cc21eca4672e4",
159
+ "113c3a32a9d320b72190a04a020a0db3976ef36972673258e9a38a364f3dc3b0",
160
+ "79a71ffd71c503ef2e2f91bccfc8fcda7946f4653cef0d9f3dde20795ef3b9f0",
161
+ "3bb93dfc8b61887d771f3630e9a63e97cbafcfcc78556a474df83a31a0ef899c",
162
+ "d21faf78c6751a0d38e6bd8028b907ff07e9a869a43fc837d6b3f8dff6119a36",
163
+ "40afaf47c4ffa56de86410d8e47baa2bb6f04b604f4ea24323737ddc3fe092df",
164
+ "f5199efae3f28bb82476163a7e458c7ad445d9bffb0682d10d3bdb2cb41f8e8e"
165
+ ],
166
+ "covenant_quorum": 6,
167
+ "min_staking_value_sat": "50000",
168
+ "max_staking_value_sat": "35000000000",
169
+ "min_staking_time_blocks": 10000,
170
+ "max_staking_time_blocks": 64000,
171
+ "slashing_pk_script": "ABRb4SYk0IorQkCV18ByIcM0UNFL8Q==",
172
+ "min_slashing_tx_fee_sat": "5000",
173
+ "slashing_rate": "0.050000000000000000",
174
+ "unbonding_time_blocks": 1008,
175
+ "unbonding_fee_sat": "2000",
176
+ "min_commission_rate": "0.030000000000000000",
177
+ "delegation_creation_base_gas_fee": "1095000",
178
+ "allow_list_expiration_height": "26124",
179
+ "btc_activation_height": 227174
180
+ }
181
+ },
182
+ {
183
+ "version": 6,
184
+ "params": {
185
+ "covenant_pks": [
186
+ "fa9d882d45f4060bdb8042183828cd87544f1ea997380e586cab77d5fd698737",
187
+ "0aee0509b16db71c999238a4827db945526859b13c95487ab46725357c9a9f25",
188
+ "17921cf156ccb4e73d428f996ed11b245313e37e27c978ac4d2cc21eca4672e4",
189
+ "113c3a32a9d320b72190a04a020a0db3976ef36972673258e9a38a364f3dc3b0",
190
+ "79a71ffd71c503ef2e2f91bccfc8fcda7946f4653cef0d9f3dde20795ef3b9f0",
191
+ "3bb93dfc8b61887d771f3630e9a63e97cbafcfcc78556a474df83a31a0ef899c",
192
+ "d21faf78c6751a0d38e6bd8028b907ff07e9a869a43fc837d6b3f8dff6119a36",
193
+ "40afaf47c4ffa56de86410d8e47baa2bb6f04b604f4ea24323737ddc3fe092df",
194
+ "f5199efae3f28bb82476163a7e458c7ad445d9bffb0682d10d3bdb2cb41f8e8e"
195
+ ],
196
+ "covenant_quorum": 6,
197
+ "min_staking_value_sat": "50000",
198
+ "max_staking_value_sat": "35000000000",
199
+ "min_staking_time_blocks": 10000,
200
+ "max_staking_time_blocks": 64000,
201
+ "slashing_pk_script": "ABRb4SYk0IorQkCV18ByIcM0UNFL8Q==",
202
+ "min_slashing_tx_fee_sat": "6000",
203
+ "slashing_rate": "0.050000000000000000",
204
+ "unbonding_time_blocks": 1008,
205
+ "unbonding_fee_sat": "2000",
206
+ "min_commission_rate": "0.030000000000000000",
207
+ "delegation_creation_base_gas_fee": "1095000",
208
+ "allow_list_expiration_height": "26124",
209
+ "btc_activation_height": 235952
210
+ }
211
+ }
212
+ ]