@opcat-labs/scrypt-ts-opcat 3.2.0 → 3.3.0

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 (38) hide show
  1. package/assets/.templates/smart-contract/types/structs.scrypt.tpl +7 -1
  2. package/assets/smart-contract/builtin-libs/backtrace.scrypt +13 -13
  3. package/assets/smart-contract/builtin-libs/byteStringReader.scrypt +5 -5
  4. package/assets/smart-contract/builtin-libs/byteStringWriter.scrypt +6 -6
  5. package/assets/smart-contract/builtin-libs/contextUtils.scrypt +16 -16
  6. package/assets/smart-contract/builtin-libs/genesis.scrypt +8 -8
  7. package/assets/smart-contract/builtin-libs/p2pk.scrypt +1 -1
  8. package/assets/smart-contract/builtin-libs/p2pkh.scrypt +1 -1
  9. package/assets/smart-contract/builtin-libs/stateLib.scrypt +1 -1
  10. package/assets/smart-contract/builtin-libs/stateUtils.scrypt +1 -1
  11. package/assets/smart-contract/builtin-libs/stdUtils.scrypt +12 -12
  12. package/assets/smart-contract/builtin-libs/txHashPreimageUtils.scrypt +7 -7
  13. package/assets/smart-contract/builtin-libs/txUtils.scrypt +12 -12
  14. package/assets/smart-contract/types/structs.scrypt +8 -8
  15. package/dist/cjs/psbt/extPsbt.cjs +14 -4
  16. package/dist/cjs/psbt/extPsbt.js.map +1 -1
  17. package/dist/cjs/smart-contract/methods/buildOutput.cjs +3 -1
  18. package/dist/cjs/smart-contract/methods/buildOutput.js.map +1 -1
  19. package/dist/cjs/smart-contract/types/index.js.map +1 -1
  20. package/dist/esm/psbt/extPsbt.js +15 -5
  21. package/dist/esm/psbt/extPsbt.js.map +1 -1
  22. package/dist/esm/smart-contract/methods/buildOutput.js +3 -1
  23. package/dist/esm/smart-contract/methods/buildOutput.js.map +1 -1
  24. package/dist/esm/smart-contract/types/index.js.map +1 -1
  25. package/dist/types/psbt/extPsbt.d.ts +5 -4
  26. package/dist/types/psbt/extPsbt.d.ts.map +1 -1
  27. package/dist/types/smart-contract/methods/buildOutput.d.ts.map +1 -1
  28. package/dist/types/smart-contract/smartContract.d.ts +1 -1
  29. package/dist/types/smart-contract/smartContract.d.ts.map +1 -1
  30. package/dist/types/smart-contract/types/context.d.ts +2 -2
  31. package/dist/types/smart-contract/types/context.d.ts.map +1 -1
  32. package/dist/types/smart-contract/types/index.d.ts +1 -1
  33. package/dist/types/smart-contract/types/index.d.ts.map +1 -1
  34. package/dist/types/smart-contract/types/structs.d.ts +20 -1
  35. package/dist/types/smart-contract/types/structs.d.ts.map +1 -1
  36. package/package.json +2 -2
  37. package/scrypt.index.json +4 -0
  38. package/src/smart-contract/types/structs.ts +21 -1
@@ -45,4 +45,10 @@ struct SHPreimage {
45
45
  struct Outpoint {
46
46
  bytes txHash;
47
47
  int outputIndex;
48
- }
48
+ }
49
+
50
+ struct ChangeInfo {
51
+ Ripemd160 pubkeyhash;
52
+ int satoshis;
53
+ Sha256 dataHash;
54
+ }
@@ -6,37 +6,37 @@ import "stdUtils.scrypt";
6
6
 
7
7
 
8
8
 
9
- struct _opcat_labs_scrypt_ts_opcat_3_2_0__rs__ChainTxVerifyResponse {
9
+ struct _opcat_labs_scrypt_ts_opcat_3_3_0__rs__ChainTxVerifyResponse {
10
10
  bytes prevPrevScript;
11
11
  bytes prevPrevOutpoint;
12
12
  }
13
13
 
14
- library _opcat_labs_scrypt_ts_opcat_3_2_0__rs__Backtrace {
14
+ library _opcat_labs_scrypt_ts_opcat_3_3_0__rs__Backtrace {
15
15
  static const bytes GENESIS_SCRIPT_HASH = b'836c4b45ab7a625549ca7c799b02d3304adf996557929ee809613e602d26c1f8';
16
- static function checkPrevTxHashPreimage(_opcat_labs_scrypt_ts_opcat_3_2_0__rs__TxHashPreimage txHashPreimage, bytes t_prevouts, int t_inputIndex) : bool {
17
- bytes txHash = _opcat_labs_scrypt_ts_opcat_3_2_0__rs__TxHashPreimageUtils.getTxHashFromTxHashPreimage(txHashPreimage);
16
+ static function checkPrevTxHashPreimage(_opcat_labs_scrypt_ts_opcat_3_3_0__rs__TxHashPreimage txHashPreimage, bytes t_prevouts, int t_inputIndex) : bool {
17
+ bytes txHash = _opcat_labs_scrypt_ts_opcat_3_3_0__rs__TxHashPreimageUtils.getTxHashFromTxHashPreimage(txHashPreimage);
18
18
  require(txHash == t_prevouts[t_inputIndex * 36 : t_inputIndex * 36 + 32]);
19
19
  return true;
20
20
  }
21
- static function verifyFromOutpoint(_opcat_labs_scrypt_ts_opcat_3_2_0__rs__BacktraceInfo backtraceInfo, bytes t_genesisOutpoint, bytes t_selfScript, bytes t_prevTxInputList) : bool {
22
- _opcat_labs_scrypt_ts_opcat_3_2_0__rs__ChainTxVerifyResponse res = _opcat_labs_scrypt_ts_opcat_3_2_0__rs__Backtrace.verifyChainTxs(backtraceInfo, t_prevTxInputList);
21
+ static function verifyFromOutpoint(_opcat_labs_scrypt_ts_opcat_3_3_0__rs__BacktraceInfo backtraceInfo, bytes t_genesisOutpoint, bytes t_selfScript, bytes t_prevTxInputList) : bool {
22
+ _opcat_labs_scrypt_ts_opcat_3_3_0__rs__ChainTxVerifyResponse res = _opcat_labs_scrypt_ts_opcat_3_3_0__rs__Backtrace.verifyChainTxs(backtraceInfo, t_prevTxInputList);
23
23
  if(res.prevPrevOutpoint == t_genesisOutpoint) {
24
- require(res.prevPrevScript == _opcat_labs_scrypt_ts_opcat_3_2_0__rs__Backtrace.GENESIS_SCRIPT_HASH);
24
+ require(res.prevPrevScript == _opcat_labs_scrypt_ts_opcat_3_3_0__rs__Backtrace.GENESIS_SCRIPT_HASH);
25
25
  }
26
26
  require(res.prevPrevOutpoint == t_genesisOutpoint || res.prevPrevScript == t_selfScript);
27
27
  return true;
28
28
  }
29
- static function verifyFromScript(_opcat_labs_scrypt_ts_opcat_3_2_0__rs__BacktraceInfo backtraceInfo, bytes t_genesisScript, bytes t_selfScript, bytes t_prevTxInputList) : bool {
30
- _opcat_labs_scrypt_ts_opcat_3_2_0__rs__ChainTxVerifyResponse res = _opcat_labs_scrypt_ts_opcat_3_2_0__rs__Backtrace.verifyChainTxs(backtraceInfo, t_prevTxInputList);
29
+ static function verifyFromScript(_opcat_labs_scrypt_ts_opcat_3_3_0__rs__BacktraceInfo backtraceInfo, bytes t_genesisScript, bytes t_selfScript, bytes t_prevTxInputList) : bool {
30
+ _opcat_labs_scrypt_ts_opcat_3_3_0__rs__ChainTxVerifyResponse res = _opcat_labs_scrypt_ts_opcat_3_3_0__rs__Backtrace.verifyChainTxs(backtraceInfo, t_prevTxInputList);
31
31
  require(res.prevPrevScript == t_genesisScript || res.prevPrevScript == t_selfScript);
32
32
  return true;
33
33
  }
34
- static function verifyChainTxs(_opcat_labs_scrypt_ts_opcat_3_2_0__rs__BacktraceInfo backtraceInfo, bytes t_prevTxInputList) : _opcat_labs_scrypt_ts_opcat_3_2_0__rs__ChainTxVerifyResponse {
35
- require(t_prevTxInputList[backtraceInfo.prevTxInputIndex * 72 : (backtraceInfo.prevTxInputIndex + 1) * 72] == _opcat_labs_scrypt_ts_opcat_3_2_0__rs__TxUtils.mergeInput(backtraceInfo.prevTxInput));
34
+ static function verifyChainTxs(_opcat_labs_scrypt_ts_opcat_3_3_0__rs__BacktraceInfo backtraceInfo, bytes t_prevTxInputList) : _opcat_labs_scrypt_ts_opcat_3_3_0__rs__ChainTxVerifyResponse {
35
+ require(t_prevTxInputList[backtraceInfo.prevTxInputIndex * 72 : (backtraceInfo.prevTxInputIndex + 1) * 72] == _opcat_labs_scrypt_ts_opcat_3_3_0__rs__TxUtils.mergeInput(backtraceInfo.prevTxInput));
36
36
  bytes prevPrevTxHash = backtraceInfo.prevTxInput.prevTxHash;
37
- require(prevPrevTxHash == _opcat_labs_scrypt_ts_opcat_3_2_0__rs__TxHashPreimageUtils.getTxHashFromTxHashPreimage(backtraceInfo.prevPrevTxPreimage));
37
+ require(prevPrevTxHash == _opcat_labs_scrypt_ts_opcat_3_3_0__rs__TxHashPreimageUtils.getTxHashFromTxHashPreimage(backtraceInfo.prevPrevTxPreimage));
38
38
  bytes prevPrevScript = backtraceInfo.prevPrevTxPreimage.outputList[backtraceInfo.prevTxInput.prevOutputIndex * 72 + 8 : (backtraceInfo.prevTxInput.prevOutputIndex) * 72 + 8 + 32];
39
- bytes prevPrevOutpoint = prevPrevTxHash + _opcat_labs_scrypt_ts_opcat_3_2_0__rs__StdUtils.uint32ToByteString(backtraceInfo.prevTxInput.prevOutputIndex);
39
+ bytes prevPrevOutpoint = prevPrevTxHash + _opcat_labs_scrypt_ts_opcat_3_3_0__rs__StdUtils.uint32ToByteString(backtraceInfo.prevTxInput.prevOutputIndex);
40
40
  return {prevPrevScript, prevPrevOutpoint};
41
41
  }
42
42
  }
@@ -3,7 +3,7 @@ import "stdUtils.scrypt";
3
3
 
4
4
 
5
5
 
6
- library _opcat_labs_scrypt_ts_opcat_3_2_0__rs__ByteStringReader {
6
+ library _opcat_labs_scrypt_ts_opcat_3_3_0__rs__ByteStringReader {
7
7
  bytes buf;
8
8
  int pos;
9
9
  constructor(bytes buf) {
@@ -23,15 +23,15 @@ library _opcat_labs_scrypt_ts_opcat_3_2_0__rs__ByteStringReader {
23
23
  l = header;
24
24
  ret = buf[this.pos : this.pos + l];
25
25
  } else if(header == 0x4c) {
26
- l = _opcat_labs_scrypt_ts_opcat_3_2_0__rs__StdUtils.fromLEUnsigned(buf[this.pos : this.pos + 1]);
26
+ l = _opcat_labs_scrypt_ts_opcat_3_3_0__rs__StdUtils.fromLEUnsigned(buf[this.pos : this.pos + 1]);
27
27
  this.pos += 1;
28
28
  ret = this.buf[this.pos : this.pos + l];
29
29
  } else if(header == 0x4d) {
30
- l = _opcat_labs_scrypt_ts_opcat_3_2_0__rs__StdUtils.fromLEUnsigned(this.buf[this.pos : this.pos + 2]);
30
+ l = _opcat_labs_scrypt_ts_opcat_3_3_0__rs__StdUtils.fromLEUnsigned(this.buf[this.pos : this.pos + 2]);
31
31
  this.pos += 2;
32
32
  ret = this.buf[this.pos : this.pos + l];
33
33
  } else if(header == 0x4e) {
34
- l = _opcat_labs_scrypt_ts_opcat_3_2_0__rs__StdUtils.fromLEUnsigned(this.buf[this.pos : this.pos + 4]);
34
+ l = _opcat_labs_scrypt_ts_opcat_3_3_0__rs__StdUtils.fromLEUnsigned(this.buf[this.pos : this.pos + 4]);
35
35
  this.pos += 4;
36
36
  ret = this.buf[this.pos : this.pos + l];
37
37
  } else {
@@ -61,6 +61,6 @@ library _opcat_labs_scrypt_ts_opcat_3_2_0__rs__ByteStringReader {
61
61
  } else {
62
62
  ret = header;
63
63
  }
64
- return _opcat_labs_scrypt_ts_opcat_3_2_0__rs__StdUtils.fromLEUnsigned(ret);
64
+ return _opcat_labs_scrypt_ts_opcat_3_3_0__rs__StdUtils.fromLEUnsigned(ret);
65
65
  }
66
66
  }
@@ -3,7 +3,7 @@ import "stdUtils.scrypt";
3
3
 
4
4
 
5
5
 
6
- library _opcat_labs_scrypt_ts_opcat_3_2_0__rs__ByteStringWriter {
6
+ library _opcat_labs_scrypt_ts_opcat_3_3_0__rs__ByteStringWriter {
7
7
  bytes buf;
8
8
  constructor() {
9
9
  this.buf = b'';
@@ -12,13 +12,13 @@ library _opcat_labs_scrypt_ts_opcat_3_2_0__rs__ByteStringWriter {
12
12
  int n = len(buf);
13
13
  bytes header = b'';
14
14
  if(n < 0x4c) {
15
- header = _opcat_labs_scrypt_ts_opcat_3_2_0__rs__StdUtils.toLEUnsigned(n, 1);
15
+ header = _opcat_labs_scrypt_ts_opcat_3_3_0__rs__StdUtils.toLEUnsigned(n, 1);
16
16
  } else if(n < 0x100) {
17
- header = b'4c' + _opcat_labs_scrypt_ts_opcat_3_2_0__rs__StdUtils.toLEUnsigned(n, 1);
17
+ header = b'4c' + _opcat_labs_scrypt_ts_opcat_3_3_0__rs__StdUtils.toLEUnsigned(n, 1);
18
18
  } else if(n < 0x10000) {
19
- header = b'4d' + _opcat_labs_scrypt_ts_opcat_3_2_0__rs__StdUtils.toLEUnsigned(n, 2);
19
+ header = b'4d' + _opcat_labs_scrypt_ts_opcat_3_3_0__rs__StdUtils.toLEUnsigned(n, 2);
20
20
  } else if(n < 0x100000000) {
21
- header = b'4e' + _opcat_labs_scrypt_ts_opcat_3_2_0__rs__StdUtils.toLEUnsigned(n, 4);
21
+ header = b'4e' + _opcat_labs_scrypt_ts_opcat_3_3_0__rs__StdUtils.toLEUnsigned(n, 4);
22
22
  } else {
23
23
  require(false);
24
24
  }
@@ -44,7 +44,7 @@ library _opcat_labs_scrypt_ts_opcat_3_2_0__rs__ByteStringWriter {
44
44
  size = 8;
45
45
  this.buf += b'ff';
46
46
  }
47
- this.buf += _opcat_labs_scrypt_ts_opcat_3_2_0__rs__StdUtils.toLEUnsigned(x, size);
47
+ this.buf += _opcat_labs_scrypt_ts_opcat_3_3_0__rs__StdUtils.toLEUnsigned(x, size);
48
48
  return true;
49
49
  }
50
50
  }
@@ -5,7 +5,7 @@ import "stdUtils.scrypt";
5
5
 
6
6
 
7
7
 
8
- library _opcat_labs_scrypt_ts_opcat_3_2_0__rs__ContextUtils {
8
+ library _opcat_labs_scrypt_ts_opcat_3_3_0__rs__ContextUtils {
9
9
  static const PrivKey privKey = PrivKey(0x26f00fe2340a84335ebdf30f57e9bb58487117b29355718f5e46bf5168d7df97);
10
10
  static const PubKey pubKey = PubKey(b'02ba79df5f8ae7604a9830f03c7933028186aede0675a16f025dc4f8be8eec0382');
11
11
  static const int invK = 0xc8ffdbaa05d93aa4ede79ec58f06a72562048b775a3507c2bf44bde4f007c40a;
@@ -18,7 +18,7 @@ library _opcat_labs_scrypt_ts_opcat_3_2_0__rs__ContextUtils {
18
18
  static function sign(int h, PrivKey privKey, int inverseK, int r, bytes rBigEndian, bytes sigHashType) : Sig {
19
19
  int s = inverseK * (h + r * privKey);
20
20
 
21
- s = _opcat_labs_scrypt_ts_opcat_3_2_0__rs__ContextUtils.normalize(s, 115792089237316195423570985008687907852837564279074904382605163141518161494337);
21
+ s = _opcat_labs_scrypt_ts_opcat_3_3_0__rs__ContextUtils.normalize(s, 115792089237316195423570985008687907852837564279074904382605163141518161494337);
22
22
  if(s > 115792089237316195423570985008687907852837564279074904382605163141518161494337 / 2) {
23
23
  s = 115792089237316195423570985008687907852837564279074904382605163141518161494337 - s;
24
24
  }
@@ -32,13 +32,13 @@ library _opcat_labs_scrypt_ts_opcat_3_2_0__rs__ContextUtils {
32
32
  static function fromBEUnsigned(bytes b) : int {
33
33
  return unpack(reverseBytes(b, 32) + b'00');
34
34
  }
35
- static function checkSHPreimage(_opcat_labs_scrypt_ts_opcat_3_2_0__rs__SHPreimage shPreimage, bytes sigHashType) : Sig {
36
- SigHashPreimage preimage = _opcat_labs_scrypt_ts_opcat_3_2_0__rs__ContextUtils.serializeSHPreimage(shPreimage);
35
+ static function checkSHPreimage(_opcat_labs_scrypt_ts_opcat_3_3_0__rs__SHPreimage shPreimage, bytes sigHashType) : Sig {
36
+ SigHashPreimage preimage = _opcat_labs_scrypt_ts_opcat_3_3_0__rs__ContextUtils.serializeSHPreimage(shPreimage);
37
37
  bytes h = hash256(preimage);
38
- Sig sig = _opcat_labs_scrypt_ts_opcat_3_2_0__rs__ContextUtils.sign(_opcat_labs_scrypt_ts_opcat_3_2_0__rs__ContextUtils.fromBEUnsigned(h), _opcat_labs_scrypt_ts_opcat_3_2_0__rs__ContextUtils.privKey, 90914631784428570546048907090666684794265392153046400654824470772421497439242, 7252565254521500021189571868467740368187828957595681190666767817830690399852, _opcat_labs_scrypt_ts_opcat_3_2_0__rs__ContextUtils.rBigEndian, sigHashType);
38
+ Sig sig = _opcat_labs_scrypt_ts_opcat_3_3_0__rs__ContextUtils.sign(_opcat_labs_scrypt_ts_opcat_3_3_0__rs__ContextUtils.fromBEUnsigned(h), _opcat_labs_scrypt_ts_opcat_3_3_0__rs__ContextUtils.privKey, 90914631784428570546048907090666684794265392153046400654824470772421497439242, 7252565254521500021189571868467740368187828957595681190666767817830690399852, _opcat_labs_scrypt_ts_opcat_3_3_0__rs__ContextUtils.rBigEndian, sigHashType);
39
39
  return sig;
40
40
  }
41
- static function serializeSHPreimage(_opcat_labs_scrypt_ts_opcat_3_2_0__rs__SHPreimage shPreimage) : SigHashPreimage {
41
+ static function serializeSHPreimage(_opcat_labs_scrypt_ts_opcat_3_3_0__rs__SHPreimage shPreimage) : SigHashPreimage {
42
42
  require(len(shPreimage.nVersion) == 4);
43
43
  require(len(shPreimage.hashPrevouts) == 32);
44
44
  require(len(shPreimage.spentScriptHash) == 32);
@@ -53,41 +53,41 @@ library _opcat_labs_scrypt_ts_opcat_3_2_0__rs__ContextUtils {
53
53
  require(shPreimage.inputIndex >= 0);
54
54
  require(shPreimage.nLockTime >= 0);
55
55
  require(shPreimage.sigHashType == 1 || shPreimage.sigHashType == 2 || shPreimage.sigHashType == 3 || shPreimage.sigHashType == 0x81 || shPreimage.sigHashType == 0x82 || shPreimage.sigHashType == 0x83);
56
- bytes preimage = shPreimage.nVersion + shPreimage.hashPrevouts + shPreimage.spentScriptHash + shPreimage.spentDataHash + _opcat_labs_scrypt_ts_opcat_3_2_0__rs__TxUtils.satoshisToByteString(shPreimage.value) + shPreimage.nSequence + shPreimage.hashSpentAmounts + shPreimage.hashSpentScriptHashes + shPreimage.hashSpentDataHashes + shPreimage.hashSequences + shPreimage.hashOutputs + _opcat_labs_scrypt_ts_opcat_3_2_0__rs__StdUtils.toLEUnsigned(shPreimage.inputIndex, 4) + _opcat_labs_scrypt_ts_opcat_3_2_0__rs__StdUtils.toLEUnsigned(shPreimage.nLockTime, 4) + num2bin(shPreimage.sigHashType, 4);
56
+ bytes preimage = shPreimage.nVersion + shPreimage.hashPrevouts + shPreimage.spentScriptHash + shPreimage.spentDataHash + _opcat_labs_scrypt_ts_opcat_3_3_0__rs__TxUtils.satoshisToByteString(shPreimage.value) + shPreimage.nSequence + shPreimage.hashSpentAmounts + shPreimage.hashSpentScriptHashes + shPreimage.hashSpentDataHashes + shPreimage.hashSequences + shPreimage.hashOutputs + _opcat_labs_scrypt_ts_opcat_3_3_0__rs__StdUtils.toLEUnsigned(shPreimage.inputIndex, 4) + _opcat_labs_scrypt_ts_opcat_3_3_0__rs__StdUtils.toLEUnsigned(shPreimage.nLockTime, 4) + num2bin(shPreimage.sigHashType, 4);
57
57
  return SigHashPreimage(preimage);
58
58
  }
59
- static function checkPrevouts(bytes prevouts, bytes t_hashPrevouts, int t_inputIndex, int t_inputCount) : _opcat_labs_scrypt_ts_opcat_3_2_0__rs__Outpoint {
59
+ static function checkPrevouts(bytes prevouts, bytes t_hashPrevouts, int t_inputIndex, int t_inputCount) : _opcat_labs_scrypt_ts_opcat_3_3_0__rs__Outpoint {
60
60
  require(hash256(prevouts) == t_hashPrevouts);
61
61
  require(t_inputIndex < t_inputCount);
62
- require(t_inputCount == _opcat_labs_scrypt_ts_opcat_3_2_0__rs__StdUtils.checkLenDivisibleBy(prevouts, 36));
62
+ require(t_inputCount == _opcat_labs_scrypt_ts_opcat_3_3_0__rs__StdUtils.checkLenDivisibleBy(prevouts, 36));
63
63
  bytes b = prevouts[t_inputIndex * 36 : (t_inputIndex + 1) * 36];
64
- return {b[0 : 32], _opcat_labs_scrypt_ts_opcat_3_2_0__rs__StdUtils.byteStringToUInt32(b[32 : 36])};
64
+ return {b[0 : 32], _opcat_labs_scrypt_ts_opcat_3_3_0__rs__StdUtils.byteStringToUInt32(b[32 : 36])};
65
65
  }
66
66
  static function checkSpentScripts(bytes spentScriptHashes, bytes t_hashSpentScripts, int t_inputCount) : bool {
67
67
  require(hash256(spentScriptHashes) == t_hashSpentScripts);
68
- require(t_inputCount == _opcat_labs_scrypt_ts_opcat_3_2_0__rs__StdUtils.checkLenDivisibleBy(spentScriptHashes, 32));
68
+ require(t_inputCount == _opcat_labs_scrypt_ts_opcat_3_3_0__rs__StdUtils.checkLenDivisibleBy(spentScriptHashes, 32));
69
69
  return true;
70
70
  }
71
71
  static function checkSpentAmounts(bytes spentAmounts, bytes hashSpentAmounts) : int {
72
72
  require(hash256(spentAmounts) == hashSpentAmounts);
73
- return _opcat_labs_scrypt_ts_opcat_3_2_0__rs__StdUtils.checkLenDivisibleBy(spentAmounts, 8);
73
+ return _opcat_labs_scrypt_ts_opcat_3_3_0__rs__StdUtils.checkLenDivisibleBy(spentAmounts, 8);
74
74
  }
75
75
  static function checkSpentDataHashes(bytes spentDataHashes, bytes hashSpentDataHashes, int inputCount) : bool {
76
76
  require(hash256(spentDataHashes) == hashSpentDataHashes);
77
- require(inputCount == _opcat_labs_scrypt_ts_opcat_3_2_0__rs__StdUtils.checkLenDivisibleBy(spentDataHashes, 32));
77
+ require(inputCount == _opcat_labs_scrypt_ts_opcat_3_3_0__rs__StdUtils.checkLenDivisibleBy(spentDataHashes, 32));
78
78
  return true;
79
79
  }
80
80
  static function getSpentScriptHash(bytes spentScriptHashes, int inputIndex) : bytes {
81
81
  return spentScriptHashes[inputIndex * 32 : (inputIndex + 1) * 32];
82
82
  }
83
83
  static function getSpentAmount(bytes spentAmounts, int inputIndex) : int {
84
- return _opcat_labs_scrypt_ts_opcat_3_2_0__rs__StdUtils.fromLEUnsigned(spentAmounts[inputIndex * 8 : (inputIndex + 1) * 8]);
84
+ return _opcat_labs_scrypt_ts_opcat_3_3_0__rs__StdUtils.fromLEUnsigned(spentAmounts[inputIndex * 8 : (inputIndex + 1) * 8]);
85
85
  }
86
86
  static function getSpentDataHash(bytes spentDataHashes, int inputIndex) : bytes {
87
87
  return spentDataHashes[inputIndex * 32 : (inputIndex + 1) * 32];
88
88
  }
89
- static function checknLockTime(_opcat_labs_scrypt_ts_opcat_3_2_0__rs__SHPreimage shPreimage, int nlockTime) : bool {
90
- int nSequence = _opcat_labs_scrypt_ts_opcat_3_2_0__rs__StdUtils.fromLEUnsigned(shPreimage.nSequence);
89
+ static function checknLockTime(_opcat_labs_scrypt_ts_opcat_3_3_0__rs__SHPreimage shPreimage, int nlockTime) : bool {
90
+ int nSequence = _opcat_labs_scrypt_ts_opcat_3_3_0__rs__StdUtils.fromLEUnsigned(shPreimage.nSequence);
91
91
  return (nSequence < 4294967295 && (nlockTime < 500000000 ? shPreimage.nLockTime < 500000000 : true) && shPreimage.nLockTime >= nlockTime);
92
92
  }
93
93
  }
@@ -8,15 +8,15 @@ import "contextUtils.scrypt";
8
8
 
9
9
 
10
10
 
11
- contract _opcat_labs_scrypt_ts_opcat_3_2_0__rs__Genesis {
11
+ contract _opcat_labs_scrypt_ts_opcat_3_3_0__rs__Genesis {
12
12
  constructor() {
13
13
  }
14
- public function checkDeploy(_opcat_labs_scrypt_ts_opcat_3_2_0__rs__TxOut[6] outputs, int outputCount, _opcat_labs_scrypt_ts_opcat_3_2_0__rs__SHPreimage __scrypt_ts_shPreimage, Sig __scrypt_ts_preimageSig, bytes __scrypt_ts_spentAmounts, bytes __scrypt_ts_spentScriptHashes) {
15
- require(checkDataSig(Sig(__scrypt_ts_preimageSig[0 : len(__scrypt_ts_preimageSig) - 1]), sha256(_opcat_labs_scrypt_ts_opcat_3_2_0__rs__ContextUtils.serializeSHPreimage(__scrypt_ts_shPreimage)), _opcat_labs_scrypt_ts_opcat_3_2_0__rs__ContextUtils.pubKey) && checkSig(__scrypt_ts_preimageSig, _opcat_labs_scrypt_ts_opcat_3_2_0__rs__ContextUtils.pubKey));
14
+ public function checkDeploy(_opcat_labs_scrypt_ts_opcat_3_3_0__rs__TxOut[6] outputs, int outputCount, _opcat_labs_scrypt_ts_opcat_3_3_0__rs__SHPreimage __scrypt_ts_shPreimage, Sig __scrypt_ts_preimageSig, bytes __scrypt_ts_spentAmounts, bytes __scrypt_ts_spentScriptHashes) {
15
+ require(checkDataSig(Sig(__scrypt_ts_preimageSig[0 : len(__scrypt_ts_preimageSig) - 1]), sha256(_opcat_labs_scrypt_ts_opcat_3_3_0__rs__ContextUtils.serializeSHPreimage(__scrypt_ts_shPreimage)), _opcat_labs_scrypt_ts_opcat_3_3_0__rs__ContextUtils.pubKey) && checkSig(__scrypt_ts_preimageSig, _opcat_labs_scrypt_ts_opcat_3_3_0__rs__ContextUtils.pubKey));
16
16
 
17
- int __scrypt_ts_inputCount = _opcat_labs_scrypt_ts_opcat_3_2_0__rs__ContextUtils.checkSpentAmounts(__scrypt_ts_spentAmounts, __scrypt_ts_shPreimage.hashSpentAmounts);
17
+ int __scrypt_ts_inputCount = _opcat_labs_scrypt_ts_opcat_3_3_0__rs__ContextUtils.checkSpentAmounts(__scrypt_ts_spentAmounts, __scrypt_ts_shPreimage.hashSpentAmounts);
18
18
 
19
- _opcat_labs_scrypt_ts_opcat_3_2_0__rs__ContextUtils.checkSpentScripts(__scrypt_ts_spentScriptHashes, __scrypt_ts_shPreimage.hashSpentScriptHashes, __scrypt_ts_inputCount);
19
+ _opcat_labs_scrypt_ts_opcat_3_3_0__rs__ContextUtils.checkSpentScripts(__scrypt_ts_spentScriptHashes, __scrypt_ts_shPreimage.hashSpentScriptHashes, __scrypt_ts_inputCount);
20
20
 
21
21
  require(__scrypt_ts_shPreimage.inputIndex == 0);
22
22
  require(__scrypt_ts_inputCount <= (6));
@@ -24,10 +24,10 @@ contract _opcat_labs_scrypt_ts_opcat_3_2_0__rs__Genesis {
24
24
  bytes output0ScriptHash = outputs[0].scriptHash;
25
25
  bytes outputBytes = b'';
26
26
  loop (6) : index {
27
- _opcat_labs_scrypt_ts_opcat_3_2_0__rs__TxOut _output = outputs[index];
27
+ _opcat_labs_scrypt_ts_opcat_3_3_0__rs__TxOut _output = outputs[index];
28
28
  if(index < outputCount) {
29
29
  require(len(_output.scriptHash) > 0);
30
- outputBytes += _opcat_labs_scrypt_ts_opcat_3_2_0__rs__TxUtils.buildDataOutput(_output.scriptHash, _output.satoshis, _output.dataHash);
30
+ outputBytes += _opcat_labs_scrypt_ts_opcat_3_3_0__rs__TxUtils.buildDataOutput(_output.scriptHash, _output.satoshis, _output.dataHash);
31
31
  if(index > 0) {
32
32
  require(output0ScriptHash != _output.scriptHash);
33
33
  }
@@ -35,7 +35,7 @@ contract _opcat_labs_scrypt_ts_opcat_3_2_0__rs__Genesis {
35
35
  }
36
36
  loop (6) : index {
37
37
  if(index < __scrypt_ts_inputCount) {
38
- bytes inputScriptHash = _opcat_labs_scrypt_ts_opcat_3_2_0__rs__ContextUtils.getSpentScriptHash(__scrypt_ts_spentScriptHashes, (index));
38
+ bytes inputScriptHash = _opcat_labs_scrypt_ts_opcat_3_3_0__rs__ContextUtils.getSpentScriptHash(__scrypt_ts_spentScriptHashes, (index));
39
39
  require(output0ScriptHash != inputScriptHash);
40
40
  }
41
41
  }
@@ -4,7 +4,7 @@ import "contextUtils.scrypt";
4
4
 
5
5
 
6
6
 
7
- contract _opcat_labs_scrypt_ts_opcat_3_2_0__rs__P2PK {
7
+ contract _opcat_labs_scrypt_ts_opcat_3_3_0__rs__P2PK {
8
8
  const PubKey pubKey;
9
9
  public function unlock(Sig sig) {
10
10
  require(checkSig(sig, this.pubKey));
@@ -4,7 +4,7 @@ import "contextUtils.scrypt";
4
4
 
5
5
 
6
6
 
7
- contract _opcat_labs_scrypt_ts_opcat_3_2_0__rs__P2PKH {
7
+ contract _opcat_labs_scrypt_ts_opcat_3_3_0__rs__P2PKH {
8
8
  const Ripemd160 addr;
9
9
  public function unlock(Sig sig, PubKey pubkey) {
10
10
  require(hash160(pubkey) == this.addr);
@@ -1,5 +1,5 @@
1
1
 
2
2
 
3
3
 
4
- library _opcat_labs_scrypt_ts_opcat_3_2_0__rs__StateLib {
4
+ library _opcat_labs_scrypt_ts_opcat_3_3_0__rs__StateLib {
5
5
  }
@@ -1,7 +1,7 @@
1
1
 
2
2
 
3
3
 
4
- library _opcat_labs_scrypt_ts_opcat_3_2_0__rs__StateUtils {
4
+ library _opcat_labs_scrypt_ts_opcat_3_3_0__rs__StateUtils {
5
5
  static function checkInputState(int t_inputIndex, bytes stateHash, bytes t_spentDataHashes) : bool {
6
6
  require(t_spentDataHashes[t_inputIndex * 32 : (t_inputIndex + 1) * 32] == stateHash);
7
7
  return true;
@@ -1,12 +1,12 @@
1
1
 
2
2
 
3
3
 
4
- struct _opcat_labs_scrypt_ts_opcat_3_2_0__rs__ReadVarintResult {
4
+ struct _opcat_labs_scrypt_ts_opcat_3_3_0__rs__ReadVarintResult {
5
5
  bytes data;
6
6
  int nextPos;
7
7
  }
8
8
 
9
- library _opcat_labs_scrypt_ts_opcat_3_2_0__rs__StdUtils {
9
+ library _opcat_labs_scrypt_ts_opcat_3_3_0__rs__StdUtils {
10
10
  static function checkLenDivisibleBy(bytes b, int n) : int {
11
11
  int l = len(b);
12
12
  require(l % n == 0);
@@ -14,15 +14,15 @@ library _opcat_labs_scrypt_ts_opcat_3_2_0__rs__StdUtils {
14
14
  }
15
15
  static function uint64ToByteString(int n) : bytes {
16
16
  require(n >= 0 && n <= 18446744073709551615);
17
- return _opcat_labs_scrypt_ts_opcat_3_2_0__rs__StdUtils.toLEUnsigned(n, 8);
17
+ return _opcat_labs_scrypt_ts_opcat_3_3_0__rs__StdUtils.toLEUnsigned(n, 8);
18
18
  }
19
19
  static function uint32ToByteString(int n) : bytes {
20
20
  require(n >= 0 && n <= 4294967295);
21
- return _opcat_labs_scrypt_ts_opcat_3_2_0__rs__StdUtils.toLEUnsigned(n, 4);
21
+ return _opcat_labs_scrypt_ts_opcat_3_3_0__rs__StdUtils.toLEUnsigned(n, 4);
22
22
  }
23
23
  static function byteStringToUInt32(bytes b) : int {
24
24
  require(len(b) == 4);
25
- return _opcat_labs_scrypt_ts_opcat_3_2_0__rs__StdUtils.fromLEUnsigned(b);
25
+ return _opcat_labs_scrypt_ts_opcat_3_3_0__rs__StdUtils.fromLEUnsigned(b);
26
26
  }
27
27
  static function toLEUnsigned(int n, int l) : bytes {
28
28
  bytes m = num2bin(n, l + 1);
@@ -46,7 +46,7 @@ library _opcat_labs_scrypt_ts_opcat_3_2_0__rs__StdUtils {
46
46
  b = b'ff';
47
47
  size = 8;
48
48
  }
49
- return b + _opcat_labs_scrypt_ts_opcat_3_2_0__rs__StdUtils.toLEUnsigned(n, size);
49
+ return b + _opcat_labs_scrypt_ts_opcat_3_3_0__rs__StdUtils.toLEUnsigned(n, size);
50
50
  }
51
51
  static function pushData(bytes buf) : bytes {
52
52
  int n = len(buf);
@@ -67,27 +67,27 @@ library _opcat_labs_scrypt_ts_opcat_3_2_0__rs__StdUtils {
67
67
  } else {
68
68
  require(false);
69
69
  }
70
- return header + _opcat_labs_scrypt_ts_opcat_3_2_0__rs__StdUtils.toLEUnsigned(n, size);
70
+ return header + _opcat_labs_scrypt_ts_opcat_3_3_0__rs__StdUtils.toLEUnsigned(n, size);
71
71
  }
72
- static function readVarint(bytes buf, int pos) : _opcat_labs_scrypt_ts_opcat_3_2_0__rs__ReadVarintResult {
72
+ static function readVarint(bytes buf, int pos) : _opcat_labs_scrypt_ts_opcat_3_3_0__rs__ReadVarintResult {
73
73
  int l = 0;
74
74
  bytes ret = b'';
75
75
  int nextPos = pos;
76
76
  bytes header = buf[pos : pos + 1];
77
77
  if(header == b'fd') {
78
- l = _opcat_labs_scrypt_ts_opcat_3_2_0__rs__StdUtils.fromLEUnsigned(buf[pos + 1 : pos + 3]);
78
+ l = _opcat_labs_scrypt_ts_opcat_3_3_0__rs__StdUtils.fromLEUnsigned(buf[pos + 1 : pos + 3]);
79
79
  ret = buf[3 : 3 + l];
80
80
  nextPos = pos + 3 + l;
81
81
  } else if(header == b'fe') {
82
- l = _opcat_labs_scrypt_ts_opcat_3_2_0__rs__StdUtils.fromLEUnsigned(buf[pos + 1 : pos + 5]);
82
+ l = _opcat_labs_scrypt_ts_opcat_3_3_0__rs__StdUtils.fromLEUnsigned(buf[pos + 1 : pos + 5]);
83
83
  ret = buf[pos + 5 : pos + 5 + l];
84
84
  nextPos = pos + 5 + l;
85
85
  } else if(header == b'ff') {
86
- l = _opcat_labs_scrypt_ts_opcat_3_2_0__rs__StdUtils.fromLEUnsigned(buf[pos + 1 : pos + 9]);
86
+ l = _opcat_labs_scrypt_ts_opcat_3_3_0__rs__StdUtils.fromLEUnsigned(buf[pos + 1 : pos + 9]);
87
87
  ret = buf[pos + 9 : pos + 9 + l];
88
88
  nextPos = pos + 9 + l;
89
89
  } else {
90
- l = _opcat_labs_scrypt_ts_opcat_3_2_0__rs__StdUtils.fromLEUnsigned(buf[pos : pos + 1]);
90
+ l = _opcat_labs_scrypt_ts_opcat_3_3_0__rs__StdUtils.fromLEUnsigned(buf[pos : pos + 1]);
91
91
  ret = buf[pos + 1 : pos + 1 + l];
92
92
  nextPos = pos + 1 + l;
93
93
  }
@@ -4,17 +4,17 @@ import "stdUtils.scrypt";
4
4
 
5
5
 
6
6
 
7
- library _opcat_labs_scrypt_ts_opcat_3_2_0__rs__TxHashPreimageUtils {
8
- static function getTxHashFromTxHashPreimage(_opcat_labs_scrypt_ts_opcat_3_2_0__rs__TxHashPreimage txHashPreimage) : bytes {
7
+ library _opcat_labs_scrypt_ts_opcat_3_3_0__rs__TxHashPreimageUtils {
8
+ static function getTxHashFromTxHashPreimage(_opcat_labs_scrypt_ts_opcat_3_3_0__rs__TxHashPreimage txHashPreimage) : bytes {
9
9
  require(len(txHashPreimage.version) == 4);
10
- int inputCount = _opcat_labs_scrypt_ts_opcat_3_2_0__rs__StdUtils.checkLenDivisibleBy(txHashPreimage.inputList, 72);
11
- int outputCount = _opcat_labs_scrypt_ts_opcat_3_2_0__rs__StdUtils.checkLenDivisibleBy(txHashPreimage.outputList, 72);
12
- return hash256(txHashPreimage.version + _opcat_labs_scrypt_ts_opcat_3_2_0__rs__StdUtils.writeVarInt(inputCount) + txHashPreimage.inputList + _opcat_labs_scrypt_ts_opcat_3_2_0__rs__StdUtils.writeVarInt(outputCount) + txHashPreimage.outputList + txHashPreimage.nLockTime);
10
+ int inputCount = _opcat_labs_scrypt_ts_opcat_3_3_0__rs__StdUtils.checkLenDivisibleBy(txHashPreimage.inputList, 72);
11
+ int outputCount = _opcat_labs_scrypt_ts_opcat_3_3_0__rs__StdUtils.checkLenDivisibleBy(txHashPreimage.outputList, 72);
12
+ return hash256(txHashPreimage.version + _opcat_labs_scrypt_ts_opcat_3_3_0__rs__StdUtils.writeVarInt(inputCount) + txHashPreimage.inputList + _opcat_labs_scrypt_ts_opcat_3_3_0__rs__StdUtils.writeVarInt(outputCount) + txHashPreimage.outputList + txHashPreimage.nLockTime);
13
13
  }
14
- static function getInputByteString(_opcat_labs_scrypt_ts_opcat_3_2_0__rs__TxHashPreimage txHashPreimage, int inputIndex) : bytes {
14
+ static function getInputByteString(_opcat_labs_scrypt_ts_opcat_3_3_0__rs__TxHashPreimage txHashPreimage, int inputIndex) : bytes {
15
15
  return txHashPreimage.inputList[inputIndex * 72 : (inputIndex + 1) * 72];
16
16
  }
17
- static function getOutputByteString(_opcat_labs_scrypt_ts_opcat_3_2_0__rs__TxHashPreimage txHashPreimage, int outputIndex) : bytes {
17
+ static function getOutputByteString(_opcat_labs_scrypt_ts_opcat_3_3_0__rs__TxHashPreimage txHashPreimage, int outputIndex) : bytes {
18
18
  return txHashPreimage.outputList[outputIndex * 72 : (outputIndex + 1) * 72];
19
19
  }
20
20
  }
@@ -4,10 +4,10 @@ import "stdUtils.scrypt";
4
4
 
5
5
 
6
6
 
7
- library _opcat_labs_scrypt_ts_opcat_3_2_0__rs__TxUtils {
7
+ library _opcat_labs_scrypt_ts_opcat_3_3_0__rs__TxUtils {
8
8
  static const int ZERO_SATS = 0;
9
9
  static function buildOutput(bytes scriptHash, int satoshis) : bytes {
10
- return _opcat_labs_scrypt_ts_opcat_3_2_0__rs__TxUtils.buildDataOutput(scriptHash, satoshis, sha256(b''));
10
+ return _opcat_labs_scrypt_ts_opcat_3_3_0__rs__TxUtils.buildDataOutput(scriptHash, satoshis, sha256(b''));
11
11
  }
12
12
  static function buildDataOutput(bytes scriptHash, int satoshis, bytes dataHash) : bytes {
13
13
  int scriptHashLen = len(scriptHash);
@@ -15,34 +15,34 @@ library _opcat_labs_scrypt_ts_opcat_3_2_0__rs__TxUtils {
15
15
  require(scriptHashLen == 32);
16
16
  require(dataHashLen == 32);
17
17
  require(satoshis >= 0);
18
- return _opcat_labs_scrypt_ts_opcat_3_2_0__rs__TxUtils.satoshisToByteString(satoshis) + scriptHash + dataHash;
18
+ return _opcat_labs_scrypt_ts_opcat_3_3_0__rs__TxUtils.satoshisToByteString(satoshis) + scriptHash + dataHash;
19
19
  }
20
- static function buildChangeOutput(_opcat_labs_scrypt_ts_opcat_3_2_0__rs__TxOut change) : bytes {
21
- return change.satoshis > 0 ? _opcat_labs_scrypt_ts_opcat_3_2_0__rs__TxUtils.buildDataOutput(change.scriptHash, change.satoshis, change.dataHash) : b'';
20
+ static function buildChangeOutput(_opcat_labs_scrypt_ts_opcat_3_3_0__rs__TxOut change) : bytes {
21
+ return change.satoshis > 0 ? _opcat_labs_scrypt_ts_opcat_3_3_0__rs__TxUtils.buildDataOutput(change.scriptHash, change.satoshis, change.dataHash) : b'';
22
22
  }
23
- static function mergeInput(_opcat_labs_scrypt_ts_opcat_3_2_0__rs__TxIn txInput) : bytes {
23
+ static function mergeInput(_opcat_labs_scrypt_ts_opcat_3_3_0__rs__TxIn txInput) : bytes {
24
24
  require(len(txInput.prevTxHash) == 32);
25
25
  require(len(txInput.scriptHash) == 32);
26
- return (txInput.prevTxHash + _opcat_labs_scrypt_ts_opcat_3_2_0__rs__StdUtils.uint32ToByteString(txInput.prevOutputIndex) + txInput.scriptHash + _opcat_labs_scrypt_ts_opcat_3_2_0__rs__StdUtils.uint32ToByteString(txInput.sequence));
26
+ return (txInput.prevTxHash + _opcat_labs_scrypt_ts_opcat_3_3_0__rs__StdUtils.uint32ToByteString(txInput.prevOutputIndex) + txInput.scriptHash + _opcat_labs_scrypt_ts_opcat_3_3_0__rs__StdUtils.uint32ToByteString(txInput.sequence));
27
27
  }
28
28
  static function buildOpReturnOutput(bytes data) : bytes {
29
29
  bytes script = b'6a' + pack(len(data)) + data;
30
- return _opcat_labs_scrypt_ts_opcat_3_2_0__rs__TxUtils.satoshisToByteString(0) + sha256(script) + sha256(b'');
30
+ return _opcat_labs_scrypt_ts_opcat_3_3_0__rs__TxUtils.satoshisToByteString(0) + sha256(script) + sha256(b'');
31
31
  }
32
32
  static function buildP2PKHScript(Ripemd160 addr) : bytes {
33
33
  return (OpCode.OP_DUP + OpCode.OP_HASH160 + pack(20) + addr + OpCode.OP_EQUALVERIFY + OpCode.OP_CHECKSIG);
34
34
  }
35
35
  static function buildP2PKHOutput(int amount, Ripemd160 addr) : bytes {
36
- return _opcat_labs_scrypt_ts_opcat_3_2_0__rs__TxUtils.buildDataOutput(sha256(_opcat_labs_scrypt_ts_opcat_3_2_0__rs__TxUtils.buildP2PKHScript(addr)), amount, sha256(b''));
36
+ return _opcat_labs_scrypt_ts_opcat_3_3_0__rs__TxUtils.buildDataOutput(sha256(_opcat_labs_scrypt_ts_opcat_3_3_0__rs__TxUtils.buildP2PKHScript(addr)), amount, sha256(b''));
37
37
  }
38
38
  static function buildOpreturnScript(bytes data) : bytes {
39
- return OpCode.OP_FALSE + OpCode.OP_RETURN + _opcat_labs_scrypt_ts_opcat_3_2_0__rs__StdUtils.pushData(data);
39
+ return OpCode.OP_FALSE + OpCode.OP_RETURN + _opcat_labs_scrypt_ts_opcat_3_3_0__rs__StdUtils.pushData(data);
40
40
  }
41
41
  static function satoshisToByteString(int n) : bytes {
42
- return _opcat_labs_scrypt_ts_opcat_3_2_0__rs__StdUtils.uint64ToByteString(n);
42
+ return _opcat_labs_scrypt_ts_opcat_3_3_0__rs__StdUtils.uint64ToByteString(n);
43
43
  }
44
44
  static function byteStringToSatoshis(bytes bs) : int {
45
45
  require(len(bs) == 8);
46
- return _opcat_labs_scrypt_ts_opcat_3_2_0__rs__StdUtils.fromLEUnsigned(bs);
46
+ return _opcat_labs_scrypt_ts_opcat_3_3_0__rs__StdUtils.fromLEUnsigned(bs);
47
47
  }
48
48
  }
@@ -1,33 +1,33 @@
1
1
 
2
2
 
3
3
 
4
- struct _opcat_labs_scrypt_ts_opcat_3_2_0__rs__TxOut {
4
+ struct _opcat_labs_scrypt_ts_opcat_3_3_0__rs__TxOut {
5
5
  bytes scriptHash;
6
6
  bytes dataHash;
7
7
  int satoshis;
8
8
  }
9
9
 
10
- struct _opcat_labs_scrypt_ts_opcat_3_2_0__rs__TxIn {
10
+ struct _opcat_labs_scrypt_ts_opcat_3_3_0__rs__TxIn {
11
11
  bytes prevTxHash;
12
12
  int prevOutputIndex;
13
13
  int sequence;
14
14
  bytes scriptHash;
15
15
  }
16
16
 
17
- struct _opcat_labs_scrypt_ts_opcat_3_2_0__rs__TxHashPreimage {
17
+ struct _opcat_labs_scrypt_ts_opcat_3_3_0__rs__TxHashPreimage {
18
18
  bytes version;
19
19
  bytes inputList;
20
20
  bytes outputList;
21
21
  bytes nLockTime;
22
22
  }
23
23
 
24
- struct _opcat_labs_scrypt_ts_opcat_3_2_0__rs__BacktraceInfo {
25
- _opcat_labs_scrypt_ts_opcat_3_2_0__rs__TxIn prevTxInput;
24
+ struct _opcat_labs_scrypt_ts_opcat_3_3_0__rs__BacktraceInfo {
25
+ _opcat_labs_scrypt_ts_opcat_3_3_0__rs__TxIn prevTxInput;
26
26
  int prevTxInputIndex;
27
- _opcat_labs_scrypt_ts_opcat_3_2_0__rs__TxHashPreimage prevPrevTxPreimage;
27
+ _opcat_labs_scrypt_ts_opcat_3_3_0__rs__TxHashPreimage prevPrevTxPreimage;
28
28
  }
29
29
 
30
- struct _opcat_labs_scrypt_ts_opcat_3_2_0__rs__SHPreimage {
30
+ struct _opcat_labs_scrypt_ts_opcat_3_3_0__rs__SHPreimage {
31
31
  bytes nVersion;
32
32
  bytes hashPrevouts;
33
33
  bytes spentScriptHash;
@@ -44,7 +44,7 @@ struct _opcat_labs_scrypt_ts_opcat_3_2_0__rs__SHPreimage {
44
44
  int sigHashType;
45
45
  }
46
46
 
47
- struct _opcat_labs_scrypt_ts_opcat_3_2_0__rs__Outpoint {
47
+ struct _opcat_labs_scrypt_ts_opcat_3_3_0__rs__Outpoint {
48
48
  bytes txHash;
49
49
  int outputIndex;
50
50
  }
@@ -480,9 +480,10 @@ class ExtPsbt extends psbt_js_1.Psbt {
480
480
  }
481
481
  /**
482
482
  * Gets the change output information from the PSBT transaction.
483
- * @returns {TxOut} An object containing the script hash, satoshis value, and data hash of the change output.
484
- * If no change output exists, returns an empty TxOut with default values (empty script/data hash and 0 satoshis).
483
+ * @returns {ChangeInfo} An object containing the pubkeyhash, satoshis value, and data hash of the change output.
484
+ * If no change output exists, returns an empty ChangeInfo with default values (zero pubkeyhash/data hash and 0 satoshis).
485
485
  * @throws {Error} If the change output index is set but the output is not found at that index.
486
+ * @throws {Error} If the change output script is not a valid P2PKH script.
486
487
  */
487
488
  getChangeInfo() {
488
489
  if (this._changeOutputIndex !== null) {
@@ -490,15 +491,24 @@ class ExtPsbt extends psbt_js_1.Psbt {
490
491
  if (!changeOutput) {
491
492
  throw new Error(`Change output is not found at index ${this._changeOutputIndex}`);
492
493
  }
494
+ // Extract pubkeyhash from P2PKH script (skip 76a914 prefix, take 20 bytes)
495
+ // P2PKH script format: 76a914 + pubkeyhash(20 bytes) + 88ac
496
+ const scriptHex = tools.toHex(changeOutput.script);
497
+ // Validate P2PKH script format: must be exactly 25 bytes (50 hex chars)
498
+ // and have correct prefix (76a914) and suffix (88ac)
499
+ if (scriptHex.length !== 50 || !scriptHex.startsWith('76a914') || !scriptHex.endsWith('88ac')) {
500
+ throw new Error(`Change output script is not a valid P2PKH script: ${scriptHex}`);
501
+ }
502
+ const pubkeyhash = scriptHex.slice(6, 46); // 76a914 = 6 chars, 20 bytes = 40 chars
493
503
  return {
494
- scriptHash: (0, index_js_2.sha256)(tools.toHex(changeOutput.script)),
504
+ pubkeyhash: (0, index_js_1.Ripemd160)(pubkeyhash),
495
505
  satoshis: changeOutput.value,
496
506
  dataHash: (0, index_js_2.sha256)(tools.toHex(changeOutput.data)),
497
507
  };
498
508
  }
499
509
  else {
500
510
  return {
501
- scriptHash: (0, index_js_2.sha256)((0, byteString_js_1.toByteString)('')),
511
+ pubkeyhash: (0, index_js_1.Ripemd160)((0, byteString_js_1.toByteString)('').padEnd(40, '0')), // 20 bytes of zeros
502
512
  satoshis: 0n,
503
513
  dataHash: (0, index_js_2.sha256)((0, byteString_js_1.toByteString)('')),
504
514
  };
@@ -1 +1 @@
1
- {"version":3,"file":"extPsbt.js","sourceRoot":"","sources":["../../../src/psbt/extPsbt.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"extPsbt.js","sourceRoot":"","sources":["../../../src/psbt/extPsbt.ts"],"names":[],"mappings":"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"}
@@ -17,7 +17,9 @@ function buildChangeOutputImpl(psbt) {
17
17
  if (changeInfo.satoshis === 0n) {
18
18
  return (0, byteString_js_1.toByteString)('');
19
19
  }
20
- return txUtils_js_1.TxUtils.buildOutput(changeInfo.scriptHash, changeInfo.satoshis);
20
+ // Build P2PKH script from pubkeyhash, then hash to get scriptHash
21
+ const p2pkhScript = txUtils_js_1.TxUtils.buildP2PKHScript(changeInfo.pubkeyhash);
22
+ return txUtils_js_1.TxUtils.buildDataOutput((0, hashes_js_1.sha256)(p2pkhScript), changeInfo.satoshis, changeInfo.dataHash);
21
23
  }
22
24
  exports.buildChangeOutputImpl = buildChangeOutputImpl;
23
25
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"buildOutput.js","sourceRoot":"","sources":["../../../../src/smart-contract/methods/buildOutput.ts"],"names":[],"mappings":";;;AAAA,gDAA0C;AAC1C,wDAAyD;AAGzD,2DAAoD;AAGpD,gDAA0C;AAG1C;;;;;;GAMG;AACH,SAAgB,qBAAqB,CAAC,IAAgB;IACpD,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;IACxC,IAAI,UAAU,CAAC,QAAQ,KAAK,EAAE,EAAE,CAAC;QAC/B,OAAO,IAAA,4BAAY,EAAC,EAAE,CAAC,CAAC;IAC1B,CAAC;IAED,OAAO,oBAAO,CAAC,WAAW,CAAC,UAAU,CAAC,UAAU,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC;AACzE,CAAC;AAPD,sDAOC;AAGD;;;;;;;;;;GAUG;AACH,SAAgB,oBAAoB,CAClC,IAAsB,EACtB,KAAQ,EACR,QAAe,EACf,UAAsB;IAEtB,MAAM,aAAa,GAAG,IAAA,mBAAG,EAAC,UAAU,CAAC,CAAC;IACtC,IAAA,kBAAM,EAAC,aAAa,KAAK,GAAG,EAAE,oBAAoB,CAAC,CAAC;IACpD,MAAM,KAAK,GAAG,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,WAAsC,CAAC;IACjF,OAAO,oBAAO,CAAC,eAAe,CAAC,UAAU,EAAE,QAAQ,EAAE,IAAA,kBAAM,EAAC,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;AAC3F,CAAC;AAVD,oDAUC"}
1
+ {"version":3,"file":"buildOutput.js","sourceRoot":"","sources":["../../../../src/smart-contract/methods/buildOutput.ts"],"names":[],"mappings":";;;AAAA,gDAA0C;AAC1C,wDAAyD;AAGzD,2DAAoD;AAGpD,gDAA0C;AAG1C;;;;;;GAMG;AACH,SAAgB,qBAAqB,CAAC,IAAgB;IACpD,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;IACxC,IAAI,UAAU,CAAC,QAAQ,KAAK,EAAE,EAAE,CAAC;QAC/B,OAAO,IAAA,4BAAY,EAAC,EAAE,CAAC,CAAC;IAC1B,CAAC;IACD,kEAAkE;IAClE,MAAM,WAAW,GAAG,oBAAO,CAAC,gBAAgB,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;IACpE,OAAO,oBAAO,CAAC,eAAe,CAAC,IAAA,kBAAM,EAAC,WAAW,CAAC,EAAE,UAAU,CAAC,QAAQ,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC;AAChG,CAAC;AARD,sDAQC;AAGD;;;;;;;;;;GAUG;AACH,SAAgB,oBAAoB,CAClC,IAAsB,EACtB,KAAQ,EACR,QAAe,EACf,UAAsB;IAEtB,MAAM,aAAa,GAAG,IAAA,mBAAG,EAAC,UAAU,CAAC,CAAC;IACtC,IAAA,kBAAM,EAAC,aAAa,KAAK,GAAG,EAAE,oBAAoB,CAAC,CAAC;IACpD,MAAM,KAAK,GAAG,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,WAAsC,CAAC;IACjF,OAAO,oBAAO,CAAC,eAAe,CAAC,UAAU,EAAE,QAAQ,EAAE,IAAA,kBAAM,EAAC,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;AAC3F,CAAC;AAVD,oDAUC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/smart-contract/types/index.ts"],"names":[],"mappings":";;;AAAA,iDAmByB;AAXvB,wGAAA,OAAO,OAAA;AACP,uGAAA,MAAM,OAAA;AACN,oGAAA,GAAG,OAAA;AACH,0GAAA,SAAS,OAAA;AACT,2GAAA,UAAU,OAAA;AACV,qGAAA,IAAI,OAAA;AACJ,qGAAA,IAAI,OAAA;AACJ,uGAAA,MAAM,OAAA;AAEN,2GAAA,UAAU,OAAA;AACV,gHAAA,eAAe,OAAA;AAgBjB,yCAAqC;AAA5B,mGAAA,MAAM,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/smart-contract/types/index.ts"],"names":[],"mappings":";;;AAAA,iDAmByB;AAXvB,wGAAA,OAAO,OAAA;AACP,uGAAA,MAAM,OAAA;AACN,oGAAA,GAAG,OAAA;AACH,0GAAA,SAAS,OAAA;AACT,2GAAA,UAAU,OAAA;AACV,qGAAA,IAAI,OAAA;AACJ,qGAAA,IAAI,OAAA;AACJ,uGAAA,MAAM,OAAA;AAEN,2GAAA,UAAU,OAAA;AACV,gHAAA,eAAe,OAAA;AAiBjB,yCAAqC;AAA5B,mGAAA,MAAM,OAAA"}
@@ -1,4 +1,4 @@
1
- import { Sig } from '../smart-contract/types/index.js';
1
+ import { Sig, Ripemd160 } from '../smart-contract/types/index.js';
2
2
  import { DUST_LIMIT } from '../smart-contract/consts.js';
3
3
  import { Script } from '../smart-contract/types/script.js';
4
4
  import { ContextProvider } from './contextProvider.js';
@@ -454,9 +454,10 @@ export class ExtPsbt extends Psbt {
454
454
  }
455
455
  /**
456
456
  * Gets the change output information from the PSBT transaction.
457
- * @returns {TxOut} An object containing the script hash, satoshis value, and data hash of the change output.
458
- * If no change output exists, returns an empty TxOut with default values (empty script/data hash and 0 satoshis).
457
+ * @returns {ChangeInfo} An object containing the pubkeyhash, satoshis value, and data hash of the change output.
458
+ * If no change output exists, returns an empty ChangeInfo with default values (zero pubkeyhash/data hash and 0 satoshis).
459
459
  * @throws {Error} If the change output index is set but the output is not found at that index.
460
+ * @throws {Error} If the change output script is not a valid P2PKH script.
460
461
  */
461
462
  getChangeInfo() {
462
463
  if (this._changeOutputIndex !== null) {
@@ -464,15 +465,24 @@ export class ExtPsbt extends Psbt {
464
465
  if (!changeOutput) {
465
466
  throw new Error(`Change output is not found at index ${this._changeOutputIndex}`);
466
467
  }
468
+ // Extract pubkeyhash from P2PKH script (skip 76a914 prefix, take 20 bytes)
469
+ // P2PKH script format: 76a914 + pubkeyhash(20 bytes) + 88ac
470
+ const scriptHex = tools.toHex(changeOutput.script);
471
+ // Validate P2PKH script format: must be exactly 25 bytes (50 hex chars)
472
+ // and have correct prefix (76a914) and suffix (88ac)
473
+ if (scriptHex.length !== 50 || !scriptHex.startsWith('76a914') || !scriptHex.endsWith('88ac')) {
474
+ throw new Error(`Change output script is not a valid P2PKH script: ${scriptHex}`);
475
+ }
476
+ const pubkeyhash = scriptHex.slice(6, 46); // 76a914 = 6 chars, 20 bytes = 40 chars
467
477
  return {
468
- scriptHash: sha256(tools.toHex(changeOutput.script)),
478
+ pubkeyhash: Ripemd160(pubkeyhash),
469
479
  satoshis: changeOutput.value,
470
480
  dataHash: sha256(tools.toHex(changeOutput.data)),
471
481
  };
472
482
  }
473
483
  else {
474
484
  return {
475
- scriptHash: sha256(toByteString('')),
485
+ pubkeyhash: Ripemd160(toByteString('').padEnd(40, '0')), // 20 bytes of zeros
476
486
  satoshis: 0n,
477
487
  dataHash: sha256(toByteString('')),
478
488
  };
@@ -1 +1 @@
1
- {"version":3,"file":"extPsbt.js","sourceRoot":"","sources":["../../../src/psbt/extPsbt.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"extPsbt.js","sourceRoot":"","sources":["../../../src/psbt/extPsbt.ts"],"names":[],"mappings":"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"}
@@ -14,7 +14,9 @@ export function buildChangeOutputImpl(psbt) {
14
14
  if (changeInfo.satoshis === 0n) {
15
15
  return toByteString('');
16
16
  }
17
- return TxUtils.buildOutput(changeInfo.scriptHash, changeInfo.satoshis);
17
+ // Build P2PKH script from pubkeyhash, then hash to get scriptHash
18
+ const p2pkhScript = TxUtils.buildP2PKHScript(changeInfo.pubkeyhash);
19
+ return TxUtils.buildDataOutput(sha256(p2pkhScript), changeInfo.satoshis, changeInfo.dataHash);
18
20
  }
19
21
  /**
20
22
  * @ignore
@@ -1 +1 @@
1
- {"version":3,"file":"buildOutput.js","sourceRoot":"","sources":["../../../../src/smart-contract/methods/buildOutput.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,GAAG,EAAE,MAAM,sBAAsB,CAAC;AAGzD,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AAGpD,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAG1C;;;;;;GAMG;AACH,MAAM,UAAU,qBAAqB,CAAC,IAAgB;IACpD,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;IACxC,IAAI,UAAU,CAAC,QAAQ,KAAK,EAAE,EAAE,CAAC;QAC/B,OAAO,YAAY,CAAC,EAAE,CAAC,CAAC;IAC1B,CAAC;IAED,OAAO,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,UAAU,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC;AACzE,CAAC;AAGD;;;;;;;;;;GAUG;AACH,MAAM,UAAU,oBAAoB,CAClC,IAAsB,EACtB,KAAQ,EACR,QAAe,EACf,UAAsB;IAEtB,MAAM,aAAa,GAAG,GAAG,CAAC,UAAU,CAAC,CAAC;IACtC,MAAM,CAAC,aAAa,KAAK,GAAG,EAAE,oBAAoB,CAAC,CAAC;IACpD,MAAM,KAAK,GAAG,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,WAAsC,CAAC;IACjF,OAAO,OAAO,CAAC,eAAe,CAAC,UAAU,EAAE,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;AAC3F,CAAC"}
1
+ {"version":3,"file":"buildOutput.js","sourceRoot":"","sources":["../../../../src/smart-contract/methods/buildOutput.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,GAAG,EAAE,MAAM,sBAAsB,CAAC;AAGzD,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AAGpD,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAG1C;;;;;;GAMG;AACH,MAAM,UAAU,qBAAqB,CAAC,IAAgB;IACpD,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;IACxC,IAAI,UAAU,CAAC,QAAQ,KAAK,EAAE,EAAE,CAAC;QAC/B,OAAO,YAAY,CAAC,EAAE,CAAC,CAAC;IAC1B,CAAC;IACD,kEAAkE;IAClE,MAAM,WAAW,GAAG,OAAO,CAAC,gBAAgB,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;IACpE,OAAO,OAAO,CAAC,eAAe,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,UAAU,CAAC,QAAQ,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC;AAChG,CAAC;AAGD;;;;;;;;;;GAUG;AACH,MAAM,UAAU,oBAAoB,CAClC,IAAsB,EACtB,KAAQ,EACR,QAAe,EACf,UAAsB;IAEtB,MAAM,aAAa,GAAG,GAAG,CAAC,UAAU,CAAC,CAAC;IACtC,MAAM,CAAC,aAAa,KAAK,GAAG,EAAE,oBAAoB,CAAC,CAAC;IACpD,MAAM,KAAK,GAAG,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,WAAsC,CAAC;IACjF,OAAO,OAAO,CAAC,eAAe,CAAC,UAAU,EAAE,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;AAC3F,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/smart-contract/types/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAQL,OAAO,EACP,MAAM,EACN,GAAG,EACH,SAAS,EACT,UAAU,EACV,IAAI,EACJ,IAAI,EACJ,MAAM,EAEN,UAAU,EACV,eAAe,EAChB,MAAM,iBAAiB,CAAC;AAezB,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/smart-contract/types/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAQL,OAAO,EACP,MAAM,EACN,GAAG,EACH,SAAS,EACT,UAAU,EACV,IAAI,EACJ,IAAI,EACJ,MAAM,EAEN,UAAU,EACV,eAAe,EAChB,MAAM,iBAAiB,CAAC;AAgBzB,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { PsbtInput, Psbt as PsbtBase } from 'bip174';
2
- import { ByteString, Sig, SigHashType, TxOut } from '../smart-contract/types/index.js';
2
+ import { ByteString, Sig, SigHashType, ChangeInfo } from '../smart-contract/types/index.js';
3
3
  import { InputIndex, SupportedNetwork, ExtUtxo, B2GUTXO, UTXO } from '../globalTypes.js';
4
4
  import { ToSignInput, SignOptions, Signer } from '../signer.js';
5
5
  import { Script } from '../smart-contract/types/script.js';
@@ -253,11 +253,12 @@ export declare class ExtPsbt extends Psbt implements IExtPsbt {
253
253
  private finalizeChangeOutput;
254
254
  /**
255
255
  * Gets the change output information from the PSBT transaction.
256
- * @returns {TxOut} An object containing the script hash, satoshis value, and data hash of the change output.
257
- * If no change output exists, returns an empty TxOut with default values (empty script/data hash and 0 satoshis).
256
+ * @returns {ChangeInfo} An object containing the pubkeyhash, satoshis value, and data hash of the change output.
257
+ * If no change output exists, returns an empty ChangeInfo with default values (zero pubkeyhash/data hash and 0 satoshis).
258
258
  * @throws {Error} If the change output index is set but the output is not found at that index.
259
+ * @throws {Error} If the change output script is not a valid P2PKH script.
259
260
  */
260
- getChangeInfo(): TxOut;
261
+ getChangeInfo(): ChangeInfo;
261
262
  /**
262
263
  * Gets the unsigned transaction from the PSBT's internal cache.
263
264
  * @returns The raw unsigned transaction object.
@@ -1 +1 @@
1
- {"version":3,"file":"extPsbt.d.ts","sourceRoot":"","sources":["../../../src/psbt/extPsbt.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,IAAI,IAAI,QAAQ,EAAE,MAAM,QAAQ,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,kCAAkC,CAAC;AACvF,OAAO,EACL,UAAU,EAAe,gBAAgB,EACzC,OAAO,EACP,OAAO,EACP,IAAI,EACL,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEhE,OAAO,EAAE,MAAM,EAAE,MAAM,mCAAmC,CAAC;AAM3D,OAAO,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAClE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAKpD,OAAO,EAAiC,IAAI,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAExH,OAAO,EAAE,WAAW,EAAuB,OAAO,EAAY,MAAM,mBAAmB,CAAC;AACxF,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AACnE,OAAO,EAAE,UAAU,EAAE,MAAM,uCAAuC,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AACpF,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAE9D,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAQ/C,KAAK,SAAS,GAAG,CACf,IAAI,EAAE,OAAO,EACb,UAAU,EAAE,MAAM,EAAE,qBAAqB;AACzC,KAAK,EAAE,SAAS,KACb,MAAM,CAAC;AAGZ;;;;;;;GAOG;AACH,MAAM,WAAW,iBAAkB,SAAQ,SAAS,EAAE,gBAAgB;IACpE,SAAS,EAAE,SAAS,CAAC;IACrB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,WAAW,CAAC,EAAE;QACZ,UAAU,EAAE,UAAU,CAAC;QACvB,OAAO,EAAE,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;KACrC,EAAE,CAAC;CACL;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,WAAY,SAAQ,IAAI,CAAC,gBAAgB,EAAE,SAAS,CAAC;IACpE;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,OAAO,GAAG,gBAAgB,CAAC;CACtC;AAGD;;;;;;;;;;;;GAYG;AACH,qBAAa,OAAQ,SAAQ,IAAK,YAAW,QAAQ;gBACvC,IAAI,GAAE,WAAgB,EAAE,IAAI,CAAC,EAAE,QAAQ;IAUnD;;;;OAIG;IACG,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKpD;;;;OAIG;IACH,WAAW,CAAC,UAAU,EAAE,UAAU,GAAG,MAAM;IAG3C;;;OAGG;IACH,WAAW,IAAI,MAAM;IAIrB;;;;;OAKG;IACH,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,WAAgB,GAAG,OAAO;IAKhE;;;;;OAKG;IACH,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,WAAgB,GAAG,OAAO;IAK7D;;;;;OAKG;IACH,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,GAAE,WAAgB,GAAG,OAAO;IAStE,OAAO,CAAC,YAAY,CAAkB;IAEtC,OAAO,CAAC,aAAa,CAAuC;IAE5D;;;;;;OAMG;IACH,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,GAAG,IAAI;IAYlE;;;;OAIG;IACH,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,WAAW;IAI/C;;;;OAIG;IACH,WAAW,CAAC,UAAU,EAAE,UAAU,GAAG,YAAY;IAIjD;;;;OAIG;IACH,kBAAkB,IAAI,eAAe;IAWrC;;;;OAIG;IACH,IAAI,cAAc,IAAI,UAAU,CAW/B;IAGD,OAAO,CAAC,YAAY,CAA4D;IAChF,OAAO,CAAC,WAAW,CAAyC;IAE5D,OAAO,CAAC,eAAe,CAAyD;IAChF,OAAO,CAAC,SAAS,CAAuC;IAExD,OAAO,CAAC,SAAS,CAA6C;IAE9D,OAAO,CAAC,gBAAgB,CAA0D;IAElF,OAAO,CAAC,mBAAmB,CAAsC;IAEjE,OAAO,CAAC,kBAAkB,CAAuB;IACjD,OAAO,CAAC,aAAa,CAAS;IAE9B,OAAO,CAAC,cAAc,CAAS;IAE/B;;;;;;;;OAQG;IACM,QAAQ,CAAC,SAAS,EAAE,iBAAiB,GAAG,IAAI;IAsBrD;;;;OAIG;IACH,SAAS,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,OAAO,GAAG,IAAI;IAqC3C;;;;;OAKG;IACM,SAAS,CAAC,UAAU,EAAE,kBAAkB,GAAG,IAAI;IAMxD;;;;;OAKG;IACM,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAK1C;;;;;OAKG;IACM,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAK5C;;;;;;OAMG;IACM,gBAAgB,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;IAKrE;;;;;;;OAOG;IACH,gBAAgB,CAAC,QAAQ,SAAS,aAAa,CAAC,UAAU,CAAC,EACzD,QAAQ,EAAE,QAAQ,EAClB,YAAY,EAAE,YAAY,CAAC,QAAQ,CAAC,GACnC,IAAI;IA+BP;;;;;;OAMG;IACH,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI;IAUrC;;;;OAIG;IACH,eAAe,IAAI,IAAI;IASvB;;;;;;;OAOG;IACH,OAAO,CAAC,mBAAmB;IA4B3B;;;;;;;OAOG;IACH,iBAAiB,CAAC,QAAQ,SAAS,aAAa,CAAC,UAAU,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;IAyBzG;;;OAGG;IACH,IAAI,WAAW,IAAI,MAAM,CAKxB;IAED;;;OAGG;IACH,IAAI,YAAY,IAAI,MAAM,CAEzB;IAGD;;;;;;OAMG;IACH,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,UAAU,GAAG,MAAM,GAAG,IAAI;IAqBzE,OAAO,CAAC,oBAAoB;IA0B5B;;;;;OAKG;IACH,aAAa,IAAI,KAAK;IAoBtB;;;OAGG;IACH,IAAI,UAAU,IAAI,WAAW,CAI5B;IAED;;;;;OAKG;IACH,OAAO,KAAK,OAAO,GAKlB;IAED;;;;OAIG;IACH,YAAY,IAAI,MAAM;IAItB;;;;OAIG;IACH,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAIpC,OAAO,CAAC,kBAAkB;IAK1B,OAAO,CAAC,WAAW,CAAS;IAE5B,OAAO,CAAC,SAAS,CAAS;IAE1B;;;OAGG;IACH,IAAI,YAAY,IAAI,OAAO,CAE1B;IAED;;;OAGG;IACH,IAAI,QAAQ,IAAI,OAAO,CAEtB;IAED;;;;;;;OAOG;IACM,iBAAiB,IAAI,IAAI;IA6BlC,OAAO,CAAC,kBAAkB;IAc1B;;;OAGG;IACH,IAAI,WAAW,IAAI,OAAO,CAQzB;IAED,OAAO,CAAC,uBAAuB;IAI/B,OAAO,CAAC,qBAAqB;IAI7B,OAAO,CAAC,qBAAqB;IAI7B;;;;OAIG;IACH,eAAe,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO;IAIhD,OAAO,CAAC,wBAAwB;IA+BhC,OAAO,CAAC,YAAY;IAKpB,OAAO,CAAC,qBAAqB;IAQ7B,OAAO,CAAC,kBAAkB;IAQ1B,OAAO,CAAC,cAAc;IAMtB;;;;;OAKG;IACH,WAAW,CAAC,aAAa,UAAQ,GAAG,WAAW,GAAG,SAAS;IAkB3D;;;;;;;OAOG;IACH,MAAM,CAAC,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,GAAG,GAAG;IAmBxE;;;;;OAKG;IACH,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,aAAa,CAAC,UAAU,CAAC,GAAG,SAAS;IAI3E;;;;OAIG;IACH,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS;IAIxD;;;;OAIG;IACH,aAAa,IAAI,IAAI,GAAG,IAAI;IAY5B;;;;;;OAMG;IACH,OAAO,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO;IAwBrC;;;;;;;;;;OAUG;IACG,gBAAgB,CAAC,QAAQ,EAAE,YAAY,GAAG,aAAa,EAAE,UAAU,EAAE,UAAU,EAAE,gBAAgB,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,YAAY,GAAG,aAAa,EAAE,UAAU,EAAE,UAAU,KAAK,OAAO,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,aAAa,CAAC;IAqB1O;;;;;;;;;OASG;IACG,sBAAsB,CAAC,QAAQ,EAAE,YAAY,GAAG,aAAa,EAAE,gBAAgB,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,YAAY,GAAG,aAAa,EAAE,UAAU,EAAE,UAAU,KAAK,OAAO,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAahN;;;;;;OAMG;IACH,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAQhC;;;;OAIG;IACH,cAAc,IAAI,MAAM;IAQxB;;;;;OAKG;IACH,IAAI,IAAI,IAAI;IAeZ;;;;OAIG;IACH,QAAQ,IAAI,UAAU;IAOtB;;;;OAIG;IACH,KAAK,IAAI,MAAM;IAKf;;;;OAIG;IACH,QAAQ,IAAI,MAAM;CAInB"}
1
+ {"version":3,"file":"extPsbt.d.ts","sourceRoot":"","sources":["../../../src/psbt/extPsbt.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"buildOutput.d.ts","sourceRoot":"","sources":["../../../../src/smart-contract/methods/buildOutput.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAEtD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAI1D;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,UAAU,GAAG,UAAU,CAOlE;AAGD;;;;;;;;;;GAUG;AACH,wBAAgB,oBAAoB,CAAC,CAAC,SAAS,UAAU,EACvD,IAAI,EAAE,gBAAgB,EACtB,KAAK,EAAE,CAAC,EACR,QAAQ,EAAE,KAAK,EACf,UAAU,EAAE,UAAU,GACrB,UAAU,CAKZ"}
1
+ {"version":3,"file":"buildOutput.d.ts","sourceRoot":"","sources":["../../../../src/smart-contract/methods/buildOutput.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAEtD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAI1D;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,UAAU,GAAG,UAAU,CAQlE;AAGD;;;;;;;;;;GAUG;AACH,wBAAgB,oBAAoB,CAAC,CAAC,SAAS,UAAU,EACvD,IAAI,EAAE,gBAAgB,EACtB,KAAK,EAAE,CAAC,EACR,QAAQ,EAAE,KAAK,EACf,UAAU,EAAE,UAAU,GACrB,UAAU,CAKZ"}
@@ -259,7 +259,7 @@ export declare class SmartContract<StateT extends OpcatState = undefined> extend
259
259
  * @onchain
260
260
  * @returns the change info of current psbt
261
261
  */
262
- get changeInfo(): import("./types/structs.js").TxOut;
262
+ get changeInfo(): import("./types/structs.js").ChangeInfo;
263
263
  /**
264
264
  * A set of functions for debugging contracts, which can only be called in `@method` methods.
265
265
  * @onchain
@@ -1 +1 @@
1
- {"version":3,"file":"smartContract.d.ts","sourceRoot":"","sources":["../../../src/smart-contract/smartContract.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"smartContract.d.ts","sourceRoot":"","sources":["../../../src/smart-contract/smartContract.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { PsbtTxInput, PsbtTxOutput } from '../../psbt/psbt.js';
2
2
  import { B2GUTXO, InputIndex } from '../../globalTypes.js';
3
3
  import { SigHashType, UInt32 } from './primitives.js';
4
- import { SHPreimage, SpentAmounts, Prevouts, Outpoint, TxOut, SpentDataHashes, SpentScriptHashes } from './structs.js';
4
+ import { SHPreimage, SpentAmounts, Prevouts, Outpoint, SpentDataHashes, SpentScriptHashes, ChangeInfo } from './structs.js';
5
5
  /**
6
6
  * The context of the current contract, can be accessed by `this.ctx` in the contract.
7
7
  */
@@ -99,7 +99,7 @@ export interface Contextual {
99
99
  /**
100
100
  * Get the change output information.
101
101
  */
102
- getChangeInfo(): TxOut;
102
+ getChangeInfo(): ChangeInfo;
103
103
  /**
104
104
  * Whether the PSBT starts finalizing.
105
105
  */
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../../src/smart-contract/types/context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EACL,UAAU,EACV,YAAY,EACZ,QAAQ,EACR,QAAQ,EACR,KAAK,EACL,eAAe,EACf,iBAAiB,EAClB,MAAM,cAAc,CAAC;AAEtB;;GAEG;AACH,MAAM,WAAW,QAAS,SAAQ,UAAU,EAAE,UAAU;IAEtD;;;OAGG;IACH,QAAQ,EAAE,QAAQ,CAAC;IAEnB;;;OAGG;IACH,iBAAiB,EAAE,iBAAiB,CAAC;IAErC;;;OAGG;IACH,YAAY,EAAE,YAAY,CAAC;IAE3B;;OAEG;IACH,eAAe,EAAE,eAAe,CAAC;CAClC;AAED,MAAM,MAAM,YAAY,GAAG,QAAQ,GAAG,UAAU,CAAC;AAEjD;;GAEG;AACH,KAAK,QAAQ,GAAG;IACd,UAAU,EAAE,UAAU,CAAC;IACvB,QAAQ,EAAE,QAAQ,CAAC;IACnB,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,YAAY,EAAE,YAAY,CAAC;IAC3B,eAAe,EAAE,eAAe,CAAC;CAClC,CAAC;AAEF;;;GAGG;AACH,KAAK,UAAU,GAAG;IAChB;;;OAGG;IACH,UAAU,EAAE,MAAM,CAAC;IAEnB;;;OAGG;IACH,OAAO,EAAE,QAAQ,CAAC;CACnB,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB;;OAEG;IACH,IAAI,QAAQ,IAAI,WAAW,EAAE,CAAC;IAE9B;;OAEG;IACH,IAAI,SAAS,IAAI,YAAY,EAAE,CAAC;IAEhC;;;;OAIG;IACH,WAAW,CAAC,UAAU,EAAE,UAAU,GAAG,YAAY,CAAC;IAElD;;;OAGG;IACH,WAAW,IAAI,MAAM,CAAC;IAEtB;;;;OAIG;IACH,WAAW,CAAC,UAAU,EAAE,UAAU,GAAG,MAAM,CAAC;IAE5C;;;;;;OAMG;IACH,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,GAAG,IAAI,CAAC;IAEnE;;;;OAIG;IACH,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,WAAW,CAAC;IAEhD;;OAEG;IACH,aAAa,IAAI,KAAK,CAAC;IAEvB;;OAEG;IACH,YAAY,EAAE,OAAO,CAAC;IAEtB;;OAEG;IACH,WAAW,EAAE,OAAO,CAAC;IAErB;;;OAGG;IACH,kBAAkB,IAAI,eAAe,CAAC;IAEtC;;;;OAIG;IACH,eAAe,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO,GAAG,SAAS,CAAC;CAC9D"}
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../../src/smart-contract/types/context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EACL,UAAU,EACV,YAAY,EACZ,QAAQ,EACR,QAAQ,EACR,eAAe,EACf,iBAAiB,EACjB,UAAU,EACX,MAAM,cAAc,CAAC;AAEtB;;GAEG;AACH,MAAM,WAAW,QAAS,SAAQ,UAAU,EAAE,UAAU;IAEtD;;;OAGG;IACH,QAAQ,EAAE,QAAQ,CAAC;IAEnB;;;OAGG;IACH,iBAAiB,EAAE,iBAAiB,CAAC;IAErC;;;OAGG;IACH,YAAY,EAAE,YAAY,CAAC;IAE3B;;OAEG;IACH,eAAe,EAAE,eAAe,CAAC;CAClC;AAED,MAAM,MAAM,YAAY,GAAG,QAAQ,GAAG,UAAU,CAAC;AAEjD;;GAEG;AACH,KAAK,QAAQ,GAAG;IACd,UAAU,EAAE,UAAU,CAAC;IACvB,QAAQ,EAAE,QAAQ,CAAC;IACnB,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,YAAY,EAAE,YAAY,CAAC;IAC3B,eAAe,EAAE,eAAe,CAAC;CAClC,CAAC;AAEF;;;GAGG;AACH,KAAK,UAAU,GAAG;IAChB;;;OAGG;IACH,UAAU,EAAE,MAAM,CAAC;IAEnB;;;OAGG;IACH,OAAO,EAAE,QAAQ,CAAC;CACnB,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB;;OAEG;IACH,IAAI,QAAQ,IAAI,WAAW,EAAE,CAAC;IAE9B;;OAEG;IACH,IAAI,SAAS,IAAI,YAAY,EAAE,CAAC;IAEhC;;;;OAIG;IACH,WAAW,CAAC,UAAU,EAAE,UAAU,GAAG,YAAY,CAAC;IAElD;;;OAGG;IACH,WAAW,IAAI,MAAM,CAAC;IAEtB;;;;OAIG;IACH,WAAW,CAAC,UAAU,EAAE,UAAU,GAAG,MAAM,CAAC;IAE5C;;;;;;OAMG;IACH,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,GAAG,IAAI,CAAC;IAEnE;;;;OAIG;IACH,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,WAAW,CAAC;IAEhD;;OAEG;IACH,aAAa,IAAI,UAAU,CAAC;IAE5B;;OAEG;IACH,YAAY,EAAE,OAAO,CAAC;IAEtB;;OAEG;IACH,WAAW,EAAE,OAAO,CAAC;IAErB;;;OAGG;IACH,kBAAkB,IAAI,eAAe,CAAC;IAEtC;;;;OAIG;IACH,eAAe,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO,GAAG,SAAS,CAAC;CAC9D"}
@@ -1,4 +1,4 @@
1
1
  export { type ByteString, type Int32, type UInt64, type Bool, type FixedArray, type StructObject, type OpcatState, PrivKey, PubKey, Sig, Ripemd160, PubKeyHash, Addr, Sha1, Sha256, SigHashType, OpCodeType, SigHashPreimage } from './primitives.js';
2
- export { type TxIn, type TxOut, type Outpoint, type Prevouts, type SHPreimage, type SpentAmounts, type TxHashPreimage, type BacktraceInfo, type SpentScriptHashes, type SpentDataHashes } from './structs.js';
2
+ export { type TxIn, type TxOut, type Outpoint, type Prevouts, type SHPreimage, type SpentAmounts, type TxHashPreimage, type BacktraceInfo, type SpentScriptHashes, type SpentDataHashes, type ChangeInfo } from './structs.js';
3
3
  export { OpCode } from './opCode.js';
4
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/smart-contract/types/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,UAAU,EACf,KAAK,KAAK,EACV,KAAK,MAAM,EACX,KAAK,IAAI,EACT,KAAK,UAAU,EACf,KAAK,YAAY,EACjB,KAAK,UAAU,EACf,OAAO,EACP,MAAM,EACN,GAAG,EACH,SAAS,EACT,UAAU,EACV,IAAI,EACJ,IAAI,EACJ,MAAM,EACN,WAAW,EACX,UAAU,EACV,eAAe,EAChB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,KAAK,IAAI,EACT,KAAK,KAAK,EACV,KAAK,QAAQ,EACb,KAAK,QAAQ,EACb,KAAK,UAAU,EACf,KAAK,YAAY,EACjB,KAAK,cAAc,EACnB,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACtB,KAAK,eAAe,EACrB,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/smart-contract/types/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,UAAU,EACf,KAAK,KAAK,EACV,KAAK,MAAM,EACX,KAAK,IAAI,EACT,KAAK,UAAU,EACf,KAAK,YAAY,EACjB,KAAK,UAAU,EACf,OAAO,EACP,MAAM,EACN,GAAG,EACH,SAAS,EACT,UAAU,EACV,IAAI,EACJ,IAAI,EACJ,MAAM,EACN,WAAW,EACX,UAAU,EACV,eAAe,EAChB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,KAAK,IAAI,EACT,KAAK,KAAK,EACV,KAAK,QAAQ,EACb,KAAK,QAAQ,EACb,KAAK,UAAU,EACf,KAAK,YAAY,EACjB,KAAK,cAAc,EACnB,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACtB,KAAK,eAAe,EACpB,KAAK,UAAU,EAChB,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC"}
@@ -1,4 +1,4 @@
1
- import { ByteString, Int32, UInt32, UInt64 } from './primitives.js';
1
+ import { ByteString, Int32, UInt32, UInt64, Ripemd160, Sha256 } from './primitives.js';
2
2
  /**
3
3
  * The structure used to refer to a particular transaction output
4
4
  * @category Types
@@ -203,4 +203,23 @@ export type BacktraceInfo = {
203
203
  */
204
204
  prevPrevTxPreimage: TxHashPreimage;
205
205
  };
206
+ /**
207
+ * A structure representing the change output information
208
+ * @category Types
209
+ * @onchain
210
+ */
211
+ export type ChangeInfo = {
212
+ /**
213
+ * 20 bytes. The public key hash (hash160 of public key) for P2PKH output
214
+ */
215
+ pubkeyhash: Ripemd160;
216
+ /**
217
+ * 8 bytes. The satoshi amount for the change output
218
+ */
219
+ satoshis: UInt64;
220
+ /**
221
+ * 32 bytes. The SHA256 hash of the output data
222
+ */
223
+ dataHash: Sha256;
224
+ };
206
225
  //# sourceMappingURL=structs.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"structs.d.ts","sourceRoot":"","sources":["../../../../src/smart-contract/types/structs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAEpE;;;;GAIG;AACH,MAAM,MAAM,QAAQ,GAAG;IACrB;;OAEG;IACH,MAAM,EAAE,UAAU,CAAC;IAEnB;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,KAAK,GAAG;IAClB,UAAU,EAAE,UAAU,CAAC;IACvB,QAAQ,EAAE,UAAU,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,IAAI,GAAG;IACjB;;;OAGG;IACH,UAAU,EAAE,UAAU,CAAC;IAEvB;;;OAGG;IACH,eAAe,EAAE,MAAM,CAAC;IAExB;;;OAGG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;;OAGG;IACH,UAAU,EAAE,UAAU,CAAC;CACxB,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,UAAU,GAAG;IACvB;;;OAGG;IACH,QAAQ,EAAE,UAAU,CAAC;IAErB;;;OAGG;IACH,YAAY,EAAE,UAAU,CAAC;IAEzB;;;OAGG;IACH,eAAe,EAAE,UAAU,CAAA;IAE3B;;;OAGG;IACH,aAAa,EAAE,UAAU,CAAC;IAE1B;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,SAAS,EAAE,UAAU,CAAC;IAEtB;;;OAGG;IACH,gBAAgB,EAAE,UAAU,CAAC;IAE7B;;;OAGG;IACH,qBAAqB,EAAE,UAAU,CAAC;IAElC;;;OAGG;IACH,mBAAmB,EAAE,UAAU,CAAC;IAEhC;;;OAGG;IACH,aAAa,EAAE,UAAU,CAAC;IAE1B;;;OAGG;IACH,WAAW,EAAE,UAAU,CAAC;IAExB;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;IAGnB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,WAAW,EAAE,MAAM,CAAA;CACpB,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,MAAM,QAAQ,GAAG,UAAU,CAAC;AAElC;;;;;;GAMG;AACH,MAAM,MAAM,iBAAiB,GAAG,UAAU,CAAC;AAE3C;;;;;;GAMG;AACH,MAAM,MAAM,eAAe,GAAG,UAAU,CAAC;AAEzC;;;;;;GAMG;AACH,MAAM,MAAM,YAAY,GAAG,UAAU,CAAC;AAItC;;;;;GAKG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B;;OAEG;IACH,OAAO,EAAE,UAAU,CAAC;IAEpB;;;OAGG;IACH,SAAS,EAAE,UAAU,CAAC;IAEtB;;;OAGG;IACH,UAAU,EAAE,UAAU,CAAC;IAEvB;;OAEG;IACH,SAAS,EAAE,UAAU,CAAC;CACvB,CAAC;AAIF;;;;GAIG;AACH,MAAM,MAAM,aAAa,GAAG;IAC1B;;;OAGG;IACH,WAAW,EAAE,IAAI,CAAC;IAElB;;;OAGG;IACH,gBAAgB,EAAE,KAAK,CAAC;IAExB;;;OAGG;IACH,kBAAkB,EAAE,cAAc,CAAC;CACpC,CAAC"}
1
+ {"version":3,"file":"structs.d.ts","sourceRoot":"","sources":["../../../../src/smart-contract/types/structs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAEvF;;;;GAIG;AACH,MAAM,MAAM,QAAQ,GAAG;IACrB;;OAEG;IACH,MAAM,EAAE,UAAU,CAAC;IAEnB;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,KAAK,GAAG;IAClB,UAAU,EAAE,UAAU,CAAC;IACvB,QAAQ,EAAE,UAAU,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,IAAI,GAAG;IACjB;;;OAGG;IACH,UAAU,EAAE,UAAU,CAAC;IAEvB;;;OAGG;IACH,eAAe,EAAE,MAAM,CAAC;IAExB;;;OAGG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;;OAGG;IACH,UAAU,EAAE,UAAU,CAAC;CACxB,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,UAAU,GAAG;IACvB;;;OAGG;IACH,QAAQ,EAAE,UAAU,CAAC;IAErB;;;OAGG;IACH,YAAY,EAAE,UAAU,CAAC;IAEzB;;;OAGG;IACH,eAAe,EAAE,UAAU,CAAA;IAE3B;;;OAGG;IACH,aAAa,EAAE,UAAU,CAAC;IAE1B;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,SAAS,EAAE,UAAU,CAAC;IAEtB;;;OAGG;IACH,gBAAgB,EAAE,UAAU,CAAC;IAE7B;;;OAGG;IACH,qBAAqB,EAAE,UAAU,CAAC;IAElC;;;OAGG;IACH,mBAAmB,EAAE,UAAU,CAAC;IAEhC;;;OAGG;IACH,aAAa,EAAE,UAAU,CAAC;IAE1B;;;OAGG;IACH,WAAW,EAAE,UAAU,CAAC;IAExB;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;IAGnB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,WAAW,EAAE,MAAM,CAAA;CACpB,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,MAAM,QAAQ,GAAG,UAAU,CAAC;AAElC;;;;;;GAMG;AACH,MAAM,MAAM,iBAAiB,GAAG,UAAU,CAAC;AAE3C;;;;;;GAMG;AACH,MAAM,MAAM,eAAe,GAAG,UAAU,CAAC;AAEzC;;;;;;GAMG;AACH,MAAM,MAAM,YAAY,GAAG,UAAU,CAAC;AAItC;;;;;GAKG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B;;OAEG;IACH,OAAO,EAAE,UAAU,CAAC;IAEpB;;;OAGG;IACH,SAAS,EAAE,UAAU,CAAC;IAEtB;;;OAGG;IACH,UAAU,EAAE,UAAU,CAAC;IAEvB;;OAEG;IACH,SAAS,EAAE,UAAU,CAAC;CACvB,CAAC;AAIF;;;;GAIG;AACH,MAAM,MAAM,aAAa,GAAG;IAC1B;;;OAGG;IACH,WAAW,EAAE,IAAI,CAAC;IAElB;;;OAGG;IACH,gBAAgB,EAAE,KAAK,CAAC;IAExB;;;OAGG;IACH,kBAAkB,EAAE,cAAc,CAAC;CACpC,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,UAAU,GAAG;IACvB;;OAEG;IACH,UAAU,EAAE,SAAS,CAAC;IACtB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IACjB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@opcat-labs/scrypt-ts-opcat",
3
3
  "description": "A TypeScript library for building OPCAT smart contracts with sCrypt.",
4
- "version": "3.2.0",
4
+ "version": "3.3.0",
5
5
  "author": "OP_CAT Labs",
6
6
  "main": "./dist/cjs/index.cjs",
7
7
  "module": "./dist/esm/index.js",
@@ -68,7 +68,7 @@
68
68
  },
69
69
  "dependencies": {
70
70
  "@noble/curves": "^1.8.1",
71
- "@opcat-labs/opcat": "3.2.0",
71
+ "@opcat-labs/opcat": "3.3.0",
72
72
  "bip174": "^3.0.0-rc.1",
73
73
  "cbor2": "^2.0.1",
74
74
  "cross-fetch": "^4.1.0",
package/scrypt.index.json CHANGED
@@ -84,6 +84,10 @@
84
84
  {
85
85
  "symbol": "__scrypt_ASM",
86
86
  "path": "asm.scrypt.tpl"
87
+ },
88
+ {
89
+ "symbol": "ChangeInfo",
90
+ "path": "smart-contract/types/structs.scrypt.tpl"
87
91
  }
88
92
  ]
89
93
  }
@@ -1,4 +1,4 @@
1
- import { ByteString, Int32, UInt32, UInt64 } from './primitives.js';
1
+ import { ByteString, Int32, UInt32, UInt64, Ripemd160, Sha256 } from './primitives.js';
2
2
 
3
3
  /**
4
4
  * The structure used to refer to a particular transaction output
@@ -241,4 +241,24 @@ export type BacktraceInfo = {
241
241
  prevPrevTxPreimage: TxHashPreimage;
242
242
  };
243
243
 
244
+ /**
245
+ * A structure representing the change output information
246
+ * @category Types
247
+ * @onchain
248
+ */
249
+ export type ChangeInfo = {
250
+ /**
251
+ * 20 bytes. The public key hash (hash160 of public key) for P2PKH output
252
+ */
253
+ pubkeyhash: Ripemd160;
254
+ /**
255
+ * 8 bytes. The satoshi amount for the change output
256
+ */
257
+ satoshis: UInt64;
258
+ /**
259
+ * 32 bytes. The SHA256 hash of the output data
260
+ */
261
+ dataHash: Sha256;
262
+ };
263
+
244
264