xrpl 3.0.0-beta.1 → 3.1.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 (125) hide show
  1. package/build/xrpl-latest.js +389 -201
  2. package/build/xrpl-latest.js.map +1 -1
  3. package/dist/npm/client/index.d.ts.map +1 -1
  4. package/dist/npm/client/index.js +1 -6
  5. package/dist/npm/client/index.js.map +1 -1
  6. package/dist/npm/models/common/index.d.ts +8 -0
  7. package/dist/npm/models/common/index.d.ts.map +1 -1
  8. package/dist/npm/models/ledger/AMM.d.ts +1 -1
  9. package/dist/npm/models/ledger/AMM.d.ts.map +1 -1
  10. package/dist/npm/models/ledger/LedgerEntry.d.ts +3 -2
  11. package/dist/npm/models/ledger/LedgerEntry.d.ts.map +1 -1
  12. package/dist/npm/models/ledger/Oracle.d.ts +12 -0
  13. package/dist/npm/models/ledger/Oracle.d.ts.map +1 -0
  14. package/dist/npm/models/ledger/Oracle.js +3 -0
  15. package/dist/npm/models/ledger/Oracle.js.map +1 -0
  16. package/dist/npm/models/ledger/RippleState.d.ts +2 -1
  17. package/dist/npm/models/ledger/RippleState.d.ts.map +1 -1
  18. package/dist/npm/models/ledger/RippleState.js +1 -0
  19. package/dist/npm/models/ledger/RippleState.js.map +1 -1
  20. package/dist/npm/models/ledger/index.d.ts +2 -1
  21. package/dist/npm/models/ledger/index.d.ts.map +1 -1
  22. package/dist/npm/models/ledger/index.js.map +1 -1
  23. package/dist/npm/models/methods/accountChannels.d.ts +1 -1
  24. package/dist/npm/models/methods/accountChannels.d.ts.map +1 -1
  25. package/dist/npm/models/methods/getAggregatePrice.d.ts +31 -0
  26. package/dist/npm/models/methods/getAggregatePrice.d.ts.map +1 -0
  27. package/dist/npm/models/methods/getAggregatePrice.js +3 -0
  28. package/dist/npm/models/methods/getAggregatePrice.js.map +1 -0
  29. package/dist/npm/models/methods/index.d.ts +5 -4
  30. package/dist/npm/models/methods/index.d.ts.map +1 -1
  31. package/dist/npm/models/transactions/AMMDeposit.d.ts +3 -1
  32. package/dist/npm/models/transactions/AMMDeposit.d.ts.map +1 -1
  33. package/dist/npm/models/transactions/AMMDeposit.js +1 -0
  34. package/dist/npm/models/transactions/AMMDeposit.js.map +1 -1
  35. package/dist/npm/models/transactions/index.d.ts +2 -0
  36. package/dist/npm/models/transactions/index.d.ts.map +1 -1
  37. package/dist/npm/models/transactions/index.js.map +1 -1
  38. package/dist/npm/models/transactions/metadata.d.ts +3 -0
  39. package/dist/npm/models/transactions/metadata.d.ts.map +1 -1
  40. package/dist/npm/models/transactions/metadata.js.map +1 -1
  41. package/dist/npm/models/transactions/oracleDelete.d.ts +7 -0
  42. package/dist/npm/models/transactions/oracleDelete.d.ts.map +1 -0
  43. package/dist/npm/models/transactions/oracleDelete.js +10 -0
  44. package/dist/npm/models/transactions/oracleDelete.js.map +1 -0
  45. package/dist/npm/models/transactions/oracleSet.d.ts +13 -0
  46. package/dist/npm/models/transactions/oracleSet.d.ts.map +1 -0
  47. package/dist/npm/models/transactions/oracleSet.js +59 -0
  48. package/dist/npm/models/transactions/oracleSet.js.map +1 -0
  49. package/dist/npm/models/transactions/payment.d.ts +2 -2
  50. package/dist/npm/models/transactions/payment.js +1 -1
  51. package/dist/npm/models/transactions/transaction.d.ts +3 -1
  52. package/dist/npm/models/transactions/transaction.d.ts.map +1 -1
  53. package/dist/npm/models/transactions/transaction.js +8 -0
  54. package/dist/npm/models/transactions/transaction.js.map +1 -1
  55. package/dist/npm/snippets/tsconfig.tsbuildinfo +1 -1
  56. package/dist/npm/src/client/index.d.ts.map +1 -1
  57. package/dist/npm/src/client/index.js +1 -6
  58. package/dist/npm/src/client/index.js.map +1 -1
  59. package/dist/npm/src/models/common/index.d.ts +8 -0
  60. package/dist/npm/src/models/common/index.d.ts.map +1 -1
  61. package/dist/npm/src/models/ledger/AMM.d.ts +1 -1
  62. package/dist/npm/src/models/ledger/AMM.d.ts.map +1 -1
  63. package/dist/npm/src/models/ledger/LedgerEntry.d.ts +3 -2
  64. package/dist/npm/src/models/ledger/LedgerEntry.d.ts.map +1 -1
  65. package/dist/npm/src/models/ledger/Oracle.d.ts +12 -0
  66. package/dist/npm/src/models/ledger/Oracle.d.ts.map +1 -0
  67. package/dist/npm/src/models/ledger/Oracle.js +3 -0
  68. package/dist/npm/src/models/ledger/Oracle.js.map +1 -0
  69. package/dist/npm/src/models/ledger/RippleState.d.ts +2 -1
  70. package/dist/npm/src/models/ledger/RippleState.d.ts.map +1 -1
  71. package/dist/npm/src/models/ledger/RippleState.js +1 -0
  72. package/dist/npm/src/models/ledger/RippleState.js.map +1 -1
  73. package/dist/npm/src/models/ledger/index.d.ts +2 -1
  74. package/dist/npm/src/models/ledger/index.d.ts.map +1 -1
  75. package/dist/npm/src/models/ledger/index.js.map +1 -1
  76. package/dist/npm/src/models/methods/accountChannels.d.ts +1 -1
  77. package/dist/npm/src/models/methods/accountChannels.d.ts.map +1 -1
  78. package/dist/npm/src/models/methods/getAggregatePrice.d.ts +31 -0
  79. package/dist/npm/src/models/methods/getAggregatePrice.d.ts.map +1 -0
  80. package/dist/npm/src/models/methods/getAggregatePrice.js +3 -0
  81. package/dist/npm/src/models/methods/getAggregatePrice.js.map +1 -0
  82. package/dist/npm/src/models/methods/index.d.ts +5 -4
  83. package/dist/npm/src/models/methods/index.d.ts.map +1 -1
  84. package/dist/npm/src/models/transactions/AMMDeposit.d.ts +3 -1
  85. package/dist/npm/src/models/transactions/AMMDeposit.d.ts.map +1 -1
  86. package/dist/npm/src/models/transactions/AMMDeposit.js +1 -0
  87. package/dist/npm/src/models/transactions/AMMDeposit.js.map +1 -1
  88. package/dist/npm/src/models/transactions/index.d.ts +2 -0
  89. package/dist/npm/src/models/transactions/index.d.ts.map +1 -1
  90. package/dist/npm/src/models/transactions/index.js.map +1 -1
  91. package/dist/npm/src/models/transactions/metadata.d.ts +3 -0
  92. package/dist/npm/src/models/transactions/metadata.d.ts.map +1 -1
  93. package/dist/npm/src/models/transactions/metadata.js.map +1 -1
  94. package/dist/npm/src/models/transactions/oracleDelete.d.ts +7 -0
  95. package/dist/npm/src/models/transactions/oracleDelete.d.ts.map +1 -0
  96. package/dist/npm/src/models/transactions/oracleDelete.js +10 -0
  97. package/dist/npm/src/models/transactions/oracleDelete.js.map +1 -0
  98. package/dist/npm/src/models/transactions/oracleSet.d.ts +13 -0
  99. package/dist/npm/src/models/transactions/oracleSet.d.ts.map +1 -0
  100. package/dist/npm/src/models/transactions/oracleSet.js +59 -0
  101. package/dist/npm/src/models/transactions/oracleSet.js.map +1 -0
  102. package/dist/npm/src/models/transactions/payment.d.ts +2 -2
  103. package/dist/npm/src/models/transactions/payment.js +1 -1
  104. package/dist/npm/src/models/transactions/transaction.d.ts +3 -1
  105. package/dist/npm/src/models/transactions/transaction.d.ts.map +1 -1
  106. package/dist/npm/src/models/transactions/transaction.js +8 -0
  107. package/dist/npm/src/models/transactions/transaction.js.map +1 -1
  108. package/package.json +7 -7
  109. package/src/client/index.ts +16 -5
  110. package/src/models/common/index.ts +33 -0
  111. package/src/models/ledger/AMM.ts +1 -1
  112. package/src/models/ledger/LedgerEntry.ts +3 -0
  113. package/src/models/ledger/Oracle.ts +43 -0
  114. package/src/models/ledger/RippleState.ts +2 -0
  115. package/src/models/ledger/index.ts +2 -0
  116. package/src/models/methods/accountChannels.ts +64 -1
  117. package/src/models/methods/getAggregatePrice.ts +119 -0
  118. package/src/models/methods/index.ts +12 -0
  119. package/src/models/transactions/AMMDeposit.ts +2 -0
  120. package/src/models/transactions/index.ts +2 -0
  121. package/src/models/transactions/metadata.ts +1 -0
  122. package/src/models/transactions/oracleDelete.ts +32 -0
  123. package/src/models/transactions/oracleSet.ts +176 -0
  124. package/src/models/transactions/payment.ts +2 -2
  125. package/src/models/transactions/transaction.ts +12 -0
@@ -656,13 +656,6 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
656
656
  exports.createHasher = exports.isogenyMap = exports.hash_to_field = exports.expand_message_xof = exports.expand_message_xmd = void 0;
657
657
  const modular_js_1 = __webpack_require__(/*! ./modular.js */ "../../node_modules/@noble/curves/abstract/modular.js");
658
658
  const utils_js_1 = __webpack_require__(/*! ./utils.js */ "../../node_modules/@noble/curves/abstract/utils.js");
659
- function validateDST(dst) {
660
- if (dst instanceof Uint8Array)
661
- return dst;
662
- if (typeof dst === 'string')
663
- return (0, utils_js_1.utf8ToBytes)(dst);
664
- throw new Error('DST must be Uint8Array or string');
665
- }
666
659
  // Octet Stream to Integer. "spec" implementation of os2ip is 2.5x slower vs bytesToNumberBE.
667
660
  const os2ip = utils_js_1.bytesToNumberBE;
668
661
  // Integer to Octet Stream (numberToBytesBE)
@@ -684,20 +677,16 @@ function strxor(a, b) {
684
677
  }
685
678
  return arr;
686
679
  }
687
- function isBytes(item) {
688
- if (!(item instanceof Uint8Array))
689
- throw new Error('Uint8Array expected');
690
- }
691
- function isNum(item) {
680
+ function anum(item) {
692
681
  if (!Number.isSafeInteger(item))
693
682
  throw new Error('number expected');
694
683
  }
695
684
  // Produces a uniformly random byte string using a cryptographic hash function H that outputs b bits
696
685
  // https://www.rfc-editor.org/rfc/rfc9380#section-5.3.1
697
686
  function expand_message_xmd(msg, DST, lenInBytes, H) {
698
- isBytes(msg);
699
- isBytes(DST);
700
- isNum(lenInBytes);
687
+ (0, utils_js_1.abytes)(msg);
688
+ (0, utils_js_1.abytes)(DST);
689
+ anum(lenInBytes);
701
690
  // https://www.rfc-editor.org/rfc/rfc9380#section-5.3.3
702
691
  if (DST.length > 255)
703
692
  DST = H((0, utils_js_1.concatBytes)((0, utils_js_1.utf8ToBytes)('H2C-OVERSIZE-DST-'), DST));
@@ -725,9 +714,9 @@ exports.expand_message_xmd = expand_message_xmd;
725
714
  // a random oracle under a reasonable cryptographic assumption.
726
715
  // https://www.rfc-editor.org/rfc/rfc9380#section-5.3.2
727
716
  function expand_message_xof(msg, DST, lenInBytes, k, H) {
728
- isBytes(msg);
729
- isBytes(DST);
730
- isNum(lenInBytes);
717
+ (0, utils_js_1.abytes)(msg);
718
+ (0, utils_js_1.abytes)(DST);
719
+ anum(lenInBytes);
731
720
  // https://www.rfc-editor.org/rfc/rfc9380#section-5.3.3
732
721
  // DST = H('H2C-OVERSIZE-DST-' || a_very_long_DST, Math.ceil((lenInBytes * k) / 8));
733
722
  if (DST.length > 255) {
@@ -762,9 +751,9 @@ function hash_to_field(msg, count, options) {
762
751
  hash: 'hash',
763
752
  });
764
753
  const { p, k, m, hash, expand, DST: _DST } = options;
765
- isBytes(msg);
766
- isNum(count);
767
- const DST = validateDST(_DST);
754
+ (0, utils_js_1.abytes)(msg);
755
+ anum(count);
756
+ const DST = typeof _DST === 'string' ? (0, utils_js_1.utf8ToBytes)(_DST) : _DST;
768
757
  const log2p = p.toString(2).length;
769
758
  const L = Math.ceil((log2p + k) / 8); // section 5.1 of ietf draft link above
770
759
  const len_in_bytes = count * m * L;
@@ -1412,18 +1401,16 @@ function montgomery(curveDef) {
1412
1401
  function decodeUCoordinate(uEnc) {
1413
1402
  // Section 5: When receiving such an array, implementations of X25519
1414
1403
  // MUST mask the most significant bit in the final byte.
1415
- // This is very ugly way, but it works because fieldLen-1 is outside of bounds for X448, so this becomes NOOP
1416
- // fieldLen - scalaryBytes = 1 for X448 and = 0 for X25519
1417
1404
  const u = (0, utils_js_1.ensureBytes)('u coordinate', uEnc, montgomeryBytes);
1418
- // u[fieldLen-1] crashes QuickJS (TypeError: out-of-bound numeric index)
1419
- if (fieldLen === montgomeryBytes)
1420
- u[fieldLen - 1] &= 127; // 0b0111_1111
1405
+ if (fieldLen === 32)
1406
+ u[31] &= 127; // 0b0111_1111
1421
1407
  return (0, utils_js_1.bytesToNumberLE)(u);
1422
1408
  }
1423
1409
  function decodeScalar(n) {
1424
1410
  const bytes = (0, utils_js_1.ensureBytes)('scalar', n);
1425
- if (bytes.length !== montgomeryBytes && bytes.length !== fieldLen)
1426
- throw new Error(`Expected ${montgomeryBytes} or ${fieldLen} bytes, got ${bytes.length}`);
1411
+ const len = bytes.length;
1412
+ if (len !== montgomeryBytes && len !== fieldLen)
1413
+ throw new Error(`Expected ${montgomeryBytes} or ${fieldLen} bytes, got ${len}`);
1427
1414
  return (0, utils_js_1.bytesToNumberLE)(adjustScalarBytes(bytes));
1428
1415
  }
1429
1416
  function scalarMult(scalar, u) {
@@ -1464,7 +1451,7 @@ exports.montgomery = montgomery;
1464
1451
  "use strict";
1465
1452
 
1466
1453
  Object.defineProperty(exports, "__esModule", ({ value: true }));
1467
- exports.validateObject = exports.createHmacDrbg = exports.bitMask = exports.bitSet = exports.bitGet = exports.bitLen = exports.utf8ToBytes = exports.equalBytes = exports.concatBytes = exports.ensureBytes = exports.numberToVarBytesBE = exports.numberToBytesLE = exports.numberToBytesBE = exports.bytesToNumberLE = exports.bytesToNumberBE = exports.hexToBytes = exports.hexToNumber = exports.numberToHexUnpadded = exports.bytesToHex = void 0;
1454
+ exports.validateObject = exports.createHmacDrbg = exports.bitMask = exports.bitSet = exports.bitGet = exports.bitLen = exports.utf8ToBytes = exports.equalBytes = exports.concatBytes = exports.ensureBytes = exports.numberToVarBytesBE = exports.numberToBytesLE = exports.numberToBytesBE = exports.bytesToNumberLE = exports.bytesToNumberBE = exports.hexToBytes = exports.hexToNumber = exports.numberToHexUnpadded = exports.bytesToHex = exports.abytes = exports.isBytes = void 0;
1468
1455
  /*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */
1469
1456
  // 100 lines of code in the file are duplicated from noble-hashes (utils).
1470
1457
  // This is OK: `abstract` directory does not use noble-hashes.
@@ -1473,14 +1460,23 @@ exports.validateObject = exports.createHmacDrbg = exports.bitMask = exports.bitS
1473
1460
  const _0n = BigInt(0);
1474
1461
  const _1n = BigInt(1);
1475
1462
  const _2n = BigInt(2);
1476
- const u8a = (a) => a instanceof Uint8Array;
1463
+ function isBytes(a) {
1464
+ return (a instanceof Uint8Array ||
1465
+ (a != null && typeof a === 'object' && a.constructor.name === 'Uint8Array'));
1466
+ }
1467
+ exports.isBytes = isBytes;
1468
+ function abytes(item) {
1469
+ if (!isBytes(item))
1470
+ throw new Error('Uint8Array expected');
1471
+ }
1472
+ exports.abytes = abytes;
1473
+ // Array where index 0xf0 (240) is mapped to string 'f0'
1477
1474
  const hexes = /* @__PURE__ */ Array.from({ length: 256 }, (_, i) => i.toString(16).padStart(2, '0'));
1478
1475
  /**
1479
1476
  * @example bytesToHex(Uint8Array.from([0xca, 0xfe, 0x01, 0x23])) // 'cafe0123'
1480
1477
  */
1481
1478
  function bytesToHex(bytes) {
1482
- if (!u8a(bytes))
1483
- throw new Error('Uint8Array expected');
1479
+ abytes(bytes);
1484
1480
  // pre-caching improves the speed 6x
1485
1481
  let hex = '';
1486
1482
  for (let i = 0; i < bytes.length; i++) {
@@ -1501,23 +1497,36 @@ function hexToNumber(hex) {
1501
1497
  return BigInt(hex === '' ? '0' : `0x${hex}`);
1502
1498
  }
1503
1499
  exports.hexToNumber = hexToNumber;
1500
+ // We use optimized technique to convert hex string to byte array
1501
+ const asciis = { _0: 48, _9: 57, _A: 65, _F: 70, _a: 97, _f: 102 };
1502
+ function asciiToBase16(char) {
1503
+ if (char >= asciis._0 && char <= asciis._9)
1504
+ return char - asciis._0;
1505
+ if (char >= asciis._A && char <= asciis._F)
1506
+ return char - (asciis._A - 10);
1507
+ if (char >= asciis._a && char <= asciis._f)
1508
+ return char - (asciis._a - 10);
1509
+ return;
1510
+ }
1504
1511
  /**
1505
1512
  * @example hexToBytes('cafe0123') // Uint8Array.from([0xca, 0xfe, 0x01, 0x23])
1506
1513
  */
1507
1514
  function hexToBytes(hex) {
1508
1515
  if (typeof hex !== 'string')
1509
1516
  throw new Error('hex string expected, got ' + typeof hex);
1510
- const len = hex.length;
1511
- if (len % 2)
1512
- throw new Error('padded hex string expected, got unpadded hex of length ' + len);
1513
- const array = new Uint8Array(len / 2);
1514
- for (let i = 0; i < array.length; i++) {
1515
- const j = i * 2;
1516
- const hexByte = hex.slice(j, j + 2);
1517
- const byte = Number.parseInt(hexByte, 16);
1518
- if (Number.isNaN(byte) || byte < 0)
1519
- throw new Error('Invalid byte sequence');
1520
- array[i] = byte;
1517
+ const hl = hex.length;
1518
+ const al = hl / 2;
1519
+ if (hl % 2)
1520
+ throw new Error('padded hex string expected, got unpadded hex of length ' + hl);
1521
+ const array = new Uint8Array(al);
1522
+ for (let ai = 0, hi = 0; ai < al; ai++, hi += 2) {
1523
+ const n1 = asciiToBase16(hex.charCodeAt(hi));
1524
+ const n2 = asciiToBase16(hex.charCodeAt(hi + 1));
1525
+ if (n1 === undefined || n2 === undefined) {
1526
+ const char = hex[hi] + hex[hi + 1];
1527
+ throw new Error('hex string expected, got non-hex character "' + char + '" at index ' + hi);
1528
+ }
1529
+ array[ai] = n1 * 16 + n2;
1521
1530
  }
1522
1531
  return array;
1523
1532
  }
@@ -1528,8 +1537,7 @@ function bytesToNumberBE(bytes) {
1528
1537
  }
1529
1538
  exports.bytesToNumberBE = bytesToNumberBE;
1530
1539
  function bytesToNumberLE(bytes) {
1531
- if (!u8a(bytes))
1532
- throw new Error('Uint8Array expected');
1540
+ abytes(bytes);
1533
1541
  return hexToNumber(bytesToHex(Uint8Array.from(bytes).reverse()));
1534
1542
  }
1535
1543
  exports.bytesToNumberLE = bytesToNumberLE;
@@ -1565,7 +1573,7 @@ function ensureBytes(title, hex, expectedLength) {
1565
1573
  throw new Error(`${title} must be valid hex string, got "${hex}". Cause: ${e}`);
1566
1574
  }
1567
1575
  }
1568
- else if (u8a(hex)) {
1576
+ else if (isBytes(hex)) {
1569
1577
  // Uint8Array.from() instead of hash.slice() because node.js Buffer
1570
1578
  // is instance of Uint8Array, and its slice() creates **mutable** copy
1571
1579
  res = Uint8Array.from(hex);
@@ -1583,25 +1591,29 @@ exports.ensureBytes = ensureBytes;
1583
1591
  * Copies several Uint8Arrays into one.
1584
1592
  */
1585
1593
  function concatBytes(...arrays) {
1586
- const r = new Uint8Array(arrays.reduce((sum, a) => sum + a.length, 0));
1587
- let pad = 0; // walk through each item, ensure they have proper type
1588
- arrays.forEach((a) => {
1589
- if (!u8a(a))
1590
- throw new Error('Uint8Array expected');
1591
- r.set(a, pad);
1594
+ let sum = 0;
1595
+ for (let i = 0; i < arrays.length; i++) {
1596
+ const a = arrays[i];
1597
+ abytes(a);
1598
+ sum += a.length;
1599
+ }
1600
+ const res = new Uint8Array(sum);
1601
+ for (let i = 0, pad = 0; i < arrays.length; i++) {
1602
+ const a = arrays[i];
1603
+ res.set(a, pad);
1592
1604
  pad += a.length;
1593
- });
1594
- return r;
1605
+ }
1606
+ return res;
1595
1607
  }
1596
1608
  exports.concatBytes = concatBytes;
1597
- function equalBytes(b1, b2) {
1598
- // We don't care about timing attacks here
1599
- if (b1.length !== b2.length)
1609
+ // Compares 2 u8a-s in kinda constant time
1610
+ function equalBytes(a, b) {
1611
+ if (a.length !== b.length)
1600
1612
  return false;
1601
- for (let i = 0; i < b1.length; i++)
1602
- if (b1[i] !== b2[i])
1603
- return false;
1604
- return true;
1613
+ let diff = 0;
1614
+ for (let i = 0; i < a.length; i++)
1615
+ diff |= a[i] ^ b[i];
1616
+ return diff === 0;
1605
1617
  }
1606
1618
  exports.equalBytes = equalBytes;
1607
1619
  /**
@@ -1637,9 +1649,9 @@ exports.bitGet = bitGet;
1637
1649
  /**
1638
1650
  * Sets single bit at position.
1639
1651
  */
1640
- const bitSet = (n, pos, value) => {
1652
+ function bitSet(n, pos, value) {
1641
1653
  return n | ((value ? _1n : _0n) << BigInt(pos));
1642
- };
1654
+ }
1643
1655
  exports.bitSet = bitSet;
1644
1656
  /**
1645
1657
  * Calculate mask for N bits. Not using ** operator with bigints because of old engines.
@@ -1715,7 +1727,7 @@ const validatorFns = {
1715
1727
  function: (val) => typeof val === 'function',
1716
1728
  boolean: (val) => typeof val === 'boolean',
1717
1729
  string: (val) => typeof val === 'string',
1718
- stringOrUint8Array: (val) => typeof val === 'string' || val instanceof Uint8Array,
1730
+ stringOrUint8Array: (val) => typeof val === 'string' || isBytes(val),
1719
1731
  isSafeInteger: (val) => Number.isSafeInteger(val),
1720
1732
  array: (val) => Array.isArray(val),
1721
1733
  field: (val, object) => object.Fp.isValid(val),
@@ -1827,8 +1839,7 @@ exports.DER = {
1827
1839
  // parse DER signature
1828
1840
  const { Err: E } = exports.DER;
1829
1841
  const data = typeof hex === 'string' ? h2b(hex) : hex;
1830
- if (!(data instanceof Uint8Array))
1831
- throw new Error('ui8a expected');
1842
+ ut.abytes(data);
1832
1843
  let l = data.length;
1833
1844
  if (l < 2 || data[0] != 0x30)
1834
1845
  throw new E('Invalid signature tag');
@@ -1905,7 +1916,7 @@ function weierstrassPoints(opts) {
1905
1916
  function normPrivateKeyToScalar(key) {
1906
1917
  const { allowedPrivateKeyLengths: lengths, nByteLength, wrapPrivateKey, n } = CURVE;
1907
1918
  if (lengths && typeof key !== 'bigint') {
1908
- if (key instanceof Uint8Array)
1919
+ if (ut.isBytes(key))
1909
1920
  key = ut.bytesToHex(key);
1910
1921
  // Normalize to hex string, pad. E.g. P521 would norm 130-132 char hex to 132-char bytes
1911
1922
  if (typeof key !== 'string' || !lengths.includes(key.length))
@@ -2337,7 +2348,14 @@ function weierstrass(curveDef) {
2337
2348
  if (!isValidFieldElement(x))
2338
2349
  throw new Error('Point is not on curve');
2339
2350
  const y2 = weierstrassEquation(x); // y² = x³ + ax + b
2340
- let y = Fp.sqrt(y2); // y = y² ^ (p+1)/4
2351
+ let y;
2352
+ try {
2353
+ y = Fp.sqrt(y2); // y = y² ^ (p+1)/4
2354
+ }
2355
+ catch (sqrtError) {
2356
+ const suffix = sqrtError instanceof Error ? ': ' + sqrtError.message : '';
2357
+ throw new Error('Point is not on curve' + suffix);
2358
+ }
2341
2359
  const isYOdd = (y & _1n) === _1n;
2342
2360
  // ECDSA
2343
2361
  const isHeadOdd = (head & 1) === 1;
@@ -2484,7 +2502,7 @@ function weierstrass(curveDef) {
2484
2502
  * Quick and dirty check for item being public key. Does not validate hex, or being on-curve.
2485
2503
  */
2486
2504
  function isProbPub(item) {
2487
- const arr = item instanceof Uint8Array;
2505
+ const arr = ut.isBytes(item);
2488
2506
  const str = typeof item === 'string';
2489
2507
  const len = (arr || str) && item.length;
2490
2508
  if (arr)
@@ -2564,7 +2582,7 @@ function weierstrass(curveDef) {
2564
2582
  const d = normPrivateKeyToScalar(privateKey); // validate private key, convert to bigint
2565
2583
  const seedArgs = [int2octets(d), int2octets(h1int)];
2566
2584
  // extraEntropy. RFC6979 3.6: additional k' (optional).
2567
- if (ent != null) {
2585
+ if (ent != null && ent !== false) {
2568
2586
  // K = HMAC_K(V || 0x00 || int2octets(x) || bits2octets(h1) || k')
2569
2587
  const e = ent === true ? randomBytes(Fp.BYTES) : ent; // generate random bytes OR pass as-is
2570
2588
  seedArgs.push((0, utils_js_1.ensureBytes)('extraEntropy', e)); // check for being bytes
@@ -2645,7 +2663,7 @@ function weierstrass(curveDef) {
2645
2663
  let _sig = undefined;
2646
2664
  let P;
2647
2665
  try {
2648
- if (typeof sg === 'string' || sg instanceof Uint8Array) {
2666
+ if (typeof sg === 'string' || ut.isBytes(sg)) {
2649
2667
  // Signature can be represented in 2 ways: compact (2*nByteLength) & DER (variable-length).
2650
2668
  // Since DER can also be 2*nByteLength bytes, we check for it first.
2651
2669
  try {
@@ -2920,7 +2938,7 @@ exports.ED25519_TORSION_SUBGROUP = [
2920
2938
  const Fp = (0, modular_js_1.Field)(ED25519_P, undefined, true);
2921
2939
  const ed25519Defaults = {
2922
2940
  // Param: a
2923
- a: BigInt(-1),
2941
+ a: BigInt(-1), // Fp.create(-1) is proper; our way still works and is faster
2924
2942
  // d is equal to -121665/121666 over finite field.
2925
2943
  // Negative number is P - number, and division is invert(number, P)
2926
2944
  d: BigInt('37095705934669439343138083508754565189542113879843219016388785533085940283555'),
@@ -2960,7 +2978,7 @@ exports.ed25519ph = (0, edwards_js_1.twistedEdwards)({
2960
2978
  exports.x25519 = (() => (0, montgomery_js_1.montgomery)({
2961
2979
  P: ED25519_P,
2962
2980
  a: BigInt(486662),
2963
- montgomeryBits: 255,
2981
+ montgomeryBits: 255, // n is 253 bits
2964
2982
  nByteLength: 32,
2965
2983
  Gu: BigInt(9),
2966
2984
  powPminus2: (x) => {
@@ -3253,6 +3271,12 @@ class RistPoint {
3253
3271
  multiplyUnsafe(scalar) {
3254
3272
  return new RistPoint(this.ep.multiplyUnsafe(scalar));
3255
3273
  }
3274
+ double() {
3275
+ return new RistPoint(this.ep.double());
3276
+ }
3277
+ negate() {
3278
+ return new RistPoint(this.ep.negate());
3279
+ }
3256
3280
  }
3257
3281
  exports.RistrettoPoint = (() => {
3258
3282
  if (!RistPoint.BASE)
@@ -3328,15 +3352,15 @@ function sqrtMod(y) {
3328
3352
  }
3329
3353
  const Fp = (0, modular_js_1.Field)(secp256k1P, undefined, undefined, { sqrt: sqrtMod });
3330
3354
  exports.secp256k1 = (0, _shortw_utils_js_1.createCurve)({
3331
- a: BigInt(0),
3332
- b: BigInt(7),
3333
- Fp,
3334
- n: secp256k1N,
3355
+ a: BigInt(0), // equation params: a, b
3356
+ b: BigInt(7), // Seem to be rigid: bitcointalk.org/index.php?topic=289795.msg3183975#msg3183975
3357
+ Fp, // Field's prime: 2n**256n - 2n**32n - 2n**9n - 2n**8n - 2n**7n - 2n**6n - 2n**4n - 1n
3358
+ n: secp256k1N, // Curve order, total count of valid points in the field
3335
3359
  // Base point (x, y) aka generator point
3336
3360
  Gx: BigInt('55066263022277343669578718895168534326250603453777594175500187360389116729240'),
3337
3361
  Gy: BigInt('32670510020758816978083085130507043184471273380659243275938904335757337482424'),
3338
- h: BigInt(1),
3339
- lowS: true,
3362
+ h: BigInt(1), // Cofactor
3363
+ lowS: true, // Allow only low-S signatures by default in sign() and verify()
3340
3364
  /**
3341
3365
  * secp256k1 belongs to Koblitz curves: it has efficiently computable endomorphism.
3342
3366
  * Endomorphism uses 2x less RAM, speeds up precomputation by 2x and ECDH / key recovery by 20%.
@@ -3551,29 +3575,35 @@ exports.encodeToCurve = (() => htf.encodeToCurve)();
3551
3575
  "use strict";
3552
3576
 
3553
3577
  Object.defineProperty(exports, "__esModule", ({ value: true }));
3554
- exports.output = exports.exists = exports.hash = exports.bytes = exports.bool = exports.number = void 0;
3578
+ exports.output = exports.exists = exports.hash = exports.bytes = exports.bool = exports.number = exports.isBytes = void 0;
3555
3579
  function number(n) {
3556
3580
  if (!Number.isSafeInteger(n) || n < 0)
3557
- throw new Error(`Wrong positive integer: ${n}`);
3581
+ throw new Error(`positive integer expected, not ${n}`);
3558
3582
  }
3559
3583
  exports.number = number;
3560
3584
  function bool(b) {
3561
3585
  if (typeof b !== 'boolean')
3562
- throw new Error(`Expected boolean, not ${b}`);
3586
+ throw new Error(`boolean expected, not ${b}`);
3563
3587
  }
3564
3588
  exports.bool = bool;
3589
+ // copied from utils
3590
+ function isBytes(a) {
3591
+ return (a instanceof Uint8Array ||
3592
+ (a != null && typeof a === 'object' && a.constructor.name === 'Uint8Array'));
3593
+ }
3594
+ exports.isBytes = isBytes;
3565
3595
  function bytes(b, ...lengths) {
3566
- if (!(b instanceof Uint8Array))
3567
- throw new Error('Expected Uint8Array');
3596
+ if (!isBytes(b))
3597
+ throw new Error('Uint8Array expected');
3568
3598
  if (lengths.length > 0 && !lengths.includes(b.length))
3569
- throw new Error(`Expected Uint8Array of length ${lengths}, not of length=${b.length}`);
3599
+ throw new Error(`Uint8Array expected of length ${lengths}, not of length=${b.length}`);
3570
3600
  }
3571
3601
  exports.bytes = bytes;
3572
- function hash(hash) {
3573
- if (typeof hash !== 'function' || typeof hash.create !== 'function')
3602
+ function hash(h) {
3603
+ if (typeof h !== 'function' || typeof h.create !== 'function')
3574
3604
  throw new Error('Hash should be wrapped by utils.wrapConstructor');
3575
- number(hash.outputLen);
3576
- number(hash.blockLen);
3605
+ number(h.outputLen);
3606
+ number(h.blockLen);
3577
3607
  }
3578
3608
  exports.hash = hash;
3579
3609
  function exists(instance, checkFinished = true) {
@@ -3597,16 +3627,16 @@ exports["default"] = assert;
3597
3627
 
3598
3628
  /***/ }),
3599
3629
 
3600
- /***/ "../../node_modules/@noble/hashes/_sha2.js":
3601
- /*!*************************************************!*\
3602
- !*** ../../node_modules/@noble/hashes/_sha2.js ***!
3603
- \*************************************************/
3630
+ /***/ "../../node_modules/@noble/hashes/_md.js":
3631
+ /*!***********************************************!*\
3632
+ !*** ../../node_modules/@noble/hashes/_md.js ***!
3633
+ \***********************************************/
3604
3634
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3605
3635
 
3606
3636
  "use strict";
3607
3637
 
3608
3638
  Object.defineProperty(exports, "__esModule", ({ value: true }));
3609
- exports.SHA2 = void 0;
3639
+ exports.HashMD = exports.Maj = exports.Chi = void 0;
3610
3640
  const _assert_js_1 = __webpack_require__(/*! ./_assert.js */ "../../node_modules/@noble/hashes/_assert.js");
3611
3641
  const utils_js_1 = __webpack_require__(/*! ./utils.js */ "../../node_modules/@noble/hashes/utils.js");
3612
3642
  // Polyfill for Safari 14
@@ -3622,8 +3652,17 @@ function setBigUint64(view, byteOffset, value, isLE) {
3622
3652
  view.setUint32(byteOffset + h, wh, isLE);
3623
3653
  view.setUint32(byteOffset + l, wl, isLE);
3624
3654
  }
3625
- // Base SHA2 class (RFC 6234)
3626
- class SHA2 extends utils_js_1.Hash {
3655
+ // Choice: a ? b : c
3656
+ const Chi = (a, b, c) => (a & b) ^ (~a & c);
3657
+ exports.Chi = Chi;
3658
+ // Majority function, true if any two inpust is true
3659
+ const Maj = (a, b, c) => (a & b) ^ (a & c) ^ (b & c);
3660
+ exports.Maj = Maj;
3661
+ /**
3662
+ * Merkle-Damgard hash construction base class.
3663
+ * Could be used to create MD5, RIPEMD, SHA1, SHA2.
3664
+ */
3665
+ class HashMD extends utils_js_1.Hash {
3627
3666
  constructor(blockLen, outputLen, padOffset, isLE) {
3628
3667
  super();
3629
3668
  this.blockLen = blockLen;
@@ -3675,7 +3714,8 @@ class SHA2 extends utils_js_1.Hash {
3675
3714
  // append the bit '1' to the message
3676
3715
  buffer[pos++] = 0b10000000;
3677
3716
  this.buffer.subarray(pos).fill(0);
3678
- // we have less than padOffset left in buffer, so we cannot put length in current block, need process it and pad again
3717
+ // we have less than padOffset left in buffer, so we cannot put length in
3718
+ // current block, need process it and pad again
3679
3719
  if (this.padOffset > blockLen - pos) {
3680
3720
  this.process(view, 0);
3681
3721
  pos = 0;
@@ -3720,7 +3760,7 @@ class SHA2 extends utils_js_1.Hash {
3720
3760
  return to;
3721
3761
  }
3722
3762
  }
3723
- exports.SHA2 = SHA2;
3763
+ exports.HashMD = HashMD;
3724
3764
 
3725
3765
 
3726
3766
  /***/ }),
@@ -4038,12 +4078,12 @@ exports.pbkdf2Async = pbkdf2Async;
4038
4078
 
4039
4079
  Object.defineProperty(exports, "__esModule", ({ value: true }));
4040
4080
  exports.ripemd160 = exports.RIPEMD160 = void 0;
4041
- const _sha2_js_1 = __webpack_require__(/*! ./_sha2.js */ "../../node_modules/@noble/hashes/_sha2.js");
4081
+ const _md_js_1 = __webpack_require__(/*! ./_md.js */ "../../node_modules/@noble/hashes/_md.js");
4042
4082
  const utils_js_1 = __webpack_require__(/*! ./utils.js */ "../../node_modules/@noble/hashes/utils.js");
4043
4083
  // https://homes.esat.kuleuven.be/~bosselae/ripemd160.html
4044
4084
  // https://homes.esat.kuleuven.be/~bosselae/ripemd160/pdf/AB-9601/AB-9601.pdf
4045
4085
  const Rho = /* @__PURE__ */ new Uint8Array([7, 4, 13, 1, 10, 6, 15, 3, 12, 0, 9, 5, 2, 14, 11, 8]);
4046
- const Id = /* @__PURE__ */ Uint8Array.from({ length: 16 }, (_, i) => i);
4086
+ const Id = /* @__PURE__ */ new Uint8Array(new Array(16).fill(0).map((_, i) => i));
4047
4087
  const Pi = /* @__PURE__ */ Id.map((i) => (9 * i + 5) % 16);
4048
4088
  let idxL = [Id];
4049
4089
  let idxR = [Pi];
@@ -4065,8 +4105,6 @@ const Kl = /* @__PURE__ */ new Uint32Array([
4065
4105
  const Kr = /* @__PURE__ */ new Uint32Array([
4066
4106
  0x50a28be6, 0x5c4dd124, 0x6d703ef3, 0x7a6d76e9, 0x00000000,
4067
4107
  ]);
4068
- // The rotate left (circular left shift) operation for uint32
4069
- const rotl = (word, shift) => (word << shift) | (word >>> (32 - shift));
4070
4108
  // It's called f() in spec.
4071
4109
  function f(group, x, y, z) {
4072
4110
  if (group === 0)
@@ -4081,8 +4119,8 @@ function f(group, x, y, z) {
4081
4119
  return x ^ (y | ~z);
4082
4120
  }
4083
4121
  // Temporary buffer, not used to store anything between runs
4084
- const BUF = /* @__PURE__ */ new Uint32Array(16);
4085
- class RIPEMD160 extends _sha2_js_1.SHA2 {
4122
+ const R_BUF = /* @__PURE__ */ new Uint32Array(16);
4123
+ class RIPEMD160 extends _md_js_1.HashMD {
4086
4124
  constructor() {
4087
4125
  super(64, 20, 8, true);
4088
4126
  this.h0 = 0x67452301 | 0;
@@ -4104,7 +4142,7 @@ class RIPEMD160 extends _sha2_js_1.SHA2 {
4104
4142
  }
4105
4143
  process(view, offset) {
4106
4144
  for (let i = 0; i < 16; i++, offset += 4)
4107
- BUF[i] = view.getUint32(offset, true);
4145
+ R_BUF[i] = view.getUint32(offset, true);
4108
4146
  // prettier-ignore
4109
4147
  let al = this.h0 | 0, ar = al, bl = this.h1 | 0, br = bl, cl = this.h2 | 0, cr = cl, dl = this.h3 | 0, dr = dl, el = this.h4 | 0, er = el;
4110
4148
  // Instead of iterating 0 to 80, we split it into 5 groups
@@ -4115,20 +4153,20 @@ class RIPEMD160 extends _sha2_js_1.SHA2 {
4115
4153
  const rl = idxL[group], rr = idxR[group]; // prettier-ignore
4116
4154
  const sl = shiftsL[group], sr = shiftsR[group]; // prettier-ignore
4117
4155
  for (let i = 0; i < 16; i++) {
4118
- const tl = (rotl(al + f(group, bl, cl, dl) + BUF[rl[i]] + hbl, sl[i]) + el) | 0;
4119
- al = el, el = dl, dl = rotl(cl, 10) | 0, cl = bl, bl = tl; // prettier-ignore
4156
+ const tl = ((0, utils_js_1.rotl)(al + f(group, bl, cl, dl) + R_BUF[rl[i]] + hbl, sl[i]) + el) | 0;
4157
+ al = el, el = dl, dl = (0, utils_js_1.rotl)(cl, 10) | 0, cl = bl, bl = tl; // prettier-ignore
4120
4158
  }
4121
4159
  // 2 loops are 10% faster
4122
4160
  for (let i = 0; i < 16; i++) {
4123
- const tr = (rotl(ar + f(rGroup, br, cr, dr) + BUF[rr[i]] + hbr, sr[i]) + er) | 0;
4124
- ar = er, er = dr, dr = rotl(cr, 10) | 0, cr = br, br = tr; // prettier-ignore
4161
+ const tr = ((0, utils_js_1.rotl)(ar + f(rGroup, br, cr, dr) + R_BUF[rr[i]] + hbr, sr[i]) + er) | 0;
4162
+ ar = er, er = dr, dr = (0, utils_js_1.rotl)(cr, 10) | 0, cr = br, br = tr; // prettier-ignore
4125
4163
  }
4126
4164
  }
4127
4165
  // Add the compressed chunk to the current hash value
4128
4166
  this.set((this.h1 + cl + dr) | 0, (this.h2 + dl + er) | 0, (this.h3 + el + ar) | 0, (this.h4 + al + br) | 0, (this.h0 + bl + cr) | 0);
4129
4167
  }
4130
4168
  roundClean() {
4131
- BUF.fill(0);
4169
+ R_BUF.fill(0);
4132
4170
  }
4133
4171
  destroy() {
4134
4172
  this.destroyed = true;
@@ -4156,14 +4194,10 @@ exports.ripemd160 = (0, utils_js_1.wrapConstructor)(() => new RIPEMD160());
4156
4194
 
4157
4195
  Object.defineProperty(exports, "__esModule", ({ value: true }));
4158
4196
  exports.sha224 = exports.sha256 = void 0;
4159
- const _sha2_js_1 = __webpack_require__(/*! ./_sha2.js */ "../../node_modules/@noble/hashes/_sha2.js");
4197
+ const _md_js_1 = __webpack_require__(/*! ./_md.js */ "../../node_modules/@noble/hashes/_md.js");
4160
4198
  const utils_js_1 = __webpack_require__(/*! ./utils.js */ "../../node_modules/@noble/hashes/utils.js");
4161
4199
  // SHA2-256 need to try 2^128 hashes to execute birthday attack.
4162
4200
  // BTC network is doing 2^67 hashes/sec as per early 2023.
4163
- // Choice: a ? b : c
4164
- const Chi = (a, b, c) => (a & b) ^ (~a & c);
4165
- // Majority function, true if any two inpust is true
4166
- const Maj = (a, b, c) => (a & b) ^ (a & c) ^ (b & c);
4167
4201
  // Round constants:
4168
4202
  // first 32 bits of the fractional parts of the cube roots of the first 64 primes 2..311)
4169
4203
  // prettier-ignore
@@ -4177,27 +4211,28 @@ const SHA256_K = /* @__PURE__ */ new Uint32Array([
4177
4211
  0x19a4c116, 0x1e376c08, 0x2748774c, 0x34b0bcb5, 0x391c0cb3, 0x4ed8aa4a, 0x5b9cca4f, 0x682e6ff3,
4178
4212
  0x748f82ee, 0x78a5636f, 0x84c87814, 0x8cc70208, 0x90befffa, 0xa4506ceb, 0xbef9a3f7, 0xc67178f2
4179
4213
  ]);
4180
- // Initial state (first 32 bits of the fractional parts of the square roots of the first 8 primes 2..19):
4214
+ // Initial state:
4215
+ // first 32 bits of the fractional parts of the square roots of the first 8 primes 2..19
4181
4216
  // prettier-ignore
4182
- const IV = /* @__PURE__ */ new Uint32Array([
4217
+ const SHA256_IV = /* @__PURE__ */ new Uint32Array([
4183
4218
  0x6a09e667, 0xbb67ae85, 0x3c6ef372, 0xa54ff53a, 0x510e527f, 0x9b05688c, 0x1f83d9ab, 0x5be0cd19
4184
4219
  ]);
4185
4220
  // Temporary buffer, not used to store anything between runs
4186
4221
  // Named this way because it matches specification.
4187
4222
  const SHA256_W = /* @__PURE__ */ new Uint32Array(64);
4188
- class SHA256 extends _sha2_js_1.SHA2 {
4223
+ class SHA256 extends _md_js_1.HashMD {
4189
4224
  constructor() {
4190
4225
  super(64, 32, 8, false);
4191
4226
  // We cannot use array here since array allows indexing by variable
4192
4227
  // which means optimizer/compiler cannot use registers.
4193
- this.A = IV[0] | 0;
4194
- this.B = IV[1] | 0;
4195
- this.C = IV[2] | 0;
4196
- this.D = IV[3] | 0;
4197
- this.E = IV[4] | 0;
4198
- this.F = IV[5] | 0;
4199
- this.G = IV[6] | 0;
4200
- this.H = IV[7] | 0;
4228
+ this.A = SHA256_IV[0] | 0;
4229
+ this.B = SHA256_IV[1] | 0;
4230
+ this.C = SHA256_IV[2] | 0;
4231
+ this.D = SHA256_IV[3] | 0;
4232
+ this.E = SHA256_IV[4] | 0;
4233
+ this.F = SHA256_IV[5] | 0;
4234
+ this.G = SHA256_IV[6] | 0;
4235
+ this.H = SHA256_IV[7] | 0;
4201
4236
  }
4202
4237
  get() {
4203
4238
  const { A, B, C, D, E, F, G, H } = this;
@@ -4229,9 +4264,9 @@ class SHA256 extends _sha2_js_1.SHA2 {
4229
4264
  let { A, B, C, D, E, F, G, H } = this;
4230
4265
  for (let i = 0; i < 64; i++) {
4231
4266
  const sigma1 = (0, utils_js_1.rotr)(E, 6) ^ (0, utils_js_1.rotr)(E, 11) ^ (0, utils_js_1.rotr)(E, 25);
4232
- const T1 = (H + sigma1 + Chi(E, F, G) + SHA256_K[i] + SHA256_W[i]) | 0;
4267
+ const T1 = (H + sigma1 + (0, _md_js_1.Chi)(E, F, G) + SHA256_K[i] + SHA256_W[i]) | 0;
4233
4268
  const sigma0 = (0, utils_js_1.rotr)(A, 2) ^ (0, utils_js_1.rotr)(A, 13) ^ (0, utils_js_1.rotr)(A, 22);
4234
- const T2 = (sigma0 + Maj(A, B, C)) | 0;
4269
+ const T2 = (sigma0 + (0, _md_js_1.Maj)(A, B, C)) | 0;
4235
4270
  H = G;
4236
4271
  G = F;
4237
4272
  F = E;
@@ -4295,7 +4330,7 @@ exports.sha224 = (0, utils_js_1.wrapConstructor)(() => new SHA224());
4295
4330
 
4296
4331
  Object.defineProperty(exports, "__esModule", ({ value: true }));
4297
4332
  exports.sha384 = exports.sha512_256 = exports.sha512_224 = exports.sha512 = exports.SHA512 = void 0;
4298
- const _sha2_js_1 = __webpack_require__(/*! ./_sha2.js */ "../../node_modules/@noble/hashes/_sha2.js");
4333
+ const _md_js_1 = __webpack_require__(/*! ./_md.js */ "../../node_modules/@noble/hashes/_md.js");
4299
4334
  const _u64_js_1 = __webpack_require__(/*! ./_u64.js */ "../../node_modules/@noble/hashes/_u64.js");
4300
4335
  const utils_js_1 = __webpack_require__(/*! ./utils.js */ "../../node_modules/@noble/hashes/utils.js");
4301
4336
  // Round contants (first 32 bits of the fractional parts of the cube roots of the first 80 primes 2..409):
@@ -4325,7 +4360,7 @@ const [SHA512_Kh, SHA512_Kl] = /* @__PURE__ */ (() => _u64_js_1.default.split([
4325
4360
  // Temporary buffer, not used to store anything between runs
4326
4361
  const SHA512_W_H = /* @__PURE__ */ new Uint32Array(80);
4327
4362
  const SHA512_W_L = /* @__PURE__ */ new Uint32Array(80);
4328
- class SHA512 extends _sha2_js_1.SHA2 {
4363
+ class SHA512 extends _md_js_1.HashMD {
4329
4364
  constructor() {
4330
4365
  super(128, 64, 16, false);
4331
4366
  // We cannot use array here since array allows indexing by variable which means optimizer/compiler cannot use registers.
@@ -4540,15 +4575,22 @@ exports.sha384 = (0, utils_js_1.wrapConstructor)(() => new SHA384());
4540
4575
 
4541
4576
  /*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) */
4542
4577
  Object.defineProperty(exports, "__esModule", ({ value: true }));
4543
- exports.randomBytes = exports.wrapXOFConstructorWithOpts = exports.wrapConstructorWithOpts = exports.wrapConstructor = exports.checkOpts = exports.Hash = exports.concatBytes = exports.toBytes = exports.utf8ToBytes = exports.asyncLoop = exports.nextTick = exports.hexToBytes = exports.bytesToHex = exports.isLE = exports.rotr = exports.createView = exports.u32 = exports.u8 = void 0;
4578
+ exports.randomBytes = exports.wrapXOFConstructorWithOpts = exports.wrapConstructorWithOpts = exports.wrapConstructor = exports.checkOpts = exports.Hash = exports.concatBytes = exports.toBytes = exports.utf8ToBytes = exports.asyncLoop = exports.nextTick = exports.hexToBytes = exports.bytesToHex = exports.byteSwap32 = exports.byteSwapIfBE = exports.byteSwap = exports.isLE = exports.rotl = exports.rotr = exports.createView = exports.u32 = exports.u8 = exports.isBytes = void 0;
4544
4579
  // We use WebCrypto aka globalThis.crypto, which exists in browsers and node.js 16+.
4545
4580
  // node.js versions earlier than v19 don't declare it in global scope.
4546
4581
  // For node.js, package.json#exports field mapping rewrites import
4547
4582
  // from `crypto` to `cryptoNode`, which imports native module.
4548
4583
  // Makes the utils un-importable in browsers without a bundler.
4549
- // Once node.js 18 is deprecated, we can just drop the import.
4584
+ // Once node.js 18 is deprecated (2025-04-30), we can just drop the import.
4550
4585
  const crypto_1 = __webpack_require__(/*! @noble/hashes/crypto */ "../../node_modules/@noble/hashes/crypto.js");
4551
- const u8a = (a) => a instanceof Uint8Array;
4586
+ const _assert_js_1 = __webpack_require__(/*! ./_assert.js */ "../../node_modules/@noble/hashes/_assert.js");
4587
+ // export { isBytes } from './_assert.js';
4588
+ // We can't reuse isBytes from _assert, because somehow this causes huge perf issues
4589
+ function isBytes(a) {
4590
+ return (a instanceof Uint8Array ||
4591
+ (a != null && typeof a === 'object' && a.constructor.name === 'Uint8Array'));
4592
+ }
4593
+ exports.isBytes = isBytes;
4552
4594
  // Cast array to different type
4553
4595
  const u8 = (arr) => new Uint8Array(arr.buffer, arr.byteOffset, arr.byteLength);
4554
4596
  exports.u8 = u8;
@@ -4560,18 +4602,32 @@ exports.createView = createView;
4560
4602
  // The rotate right (circular right shift) operation for uint32
4561
4603
  const rotr = (word, shift) => (word << (32 - shift)) | (word >>> shift);
4562
4604
  exports.rotr = rotr;
4563
- // big-endian hardware is rare. Just in case someone still decides to run hashes:
4564
- // early-throw an error because we don't support BE yet.
4605
+ // The rotate left (circular left shift) operation for uint32
4606
+ const rotl = (word, shift) => (word << shift) | ((word >>> (32 - shift)) >>> 0);
4607
+ exports.rotl = rotl;
4565
4608
  exports.isLE = new Uint8Array(new Uint32Array([0x11223344]).buffer)[0] === 0x44;
4566
- if (!exports.isLE)
4567
- throw new Error('Non little-endian hardware is not supported');
4609
+ // The byte swap operation for uint32
4610
+ const byteSwap = (word) => ((word << 24) & 0xff000000) |
4611
+ ((word << 8) & 0xff0000) |
4612
+ ((word >>> 8) & 0xff00) |
4613
+ ((word >>> 24) & 0xff);
4614
+ exports.byteSwap = byteSwap;
4615
+ // Conditionally byte swap if on a big-endian platform
4616
+ exports.byteSwapIfBE = exports.isLE ? (n) => n : (n) => (0, exports.byteSwap)(n);
4617
+ // In place byte swap for Uint32Array
4618
+ function byteSwap32(arr) {
4619
+ for (let i = 0; i < arr.length; i++) {
4620
+ arr[i] = (0, exports.byteSwap)(arr[i]);
4621
+ }
4622
+ }
4623
+ exports.byteSwap32 = byteSwap32;
4624
+ // Array where index 0xf0 (240) is mapped to string 'f0'
4568
4625
  const hexes = /* @__PURE__ */ Array.from({ length: 256 }, (_, i) => i.toString(16).padStart(2, '0'));
4569
4626
  /**
4570
4627
  * @example bytesToHex(Uint8Array.from([0xca, 0xfe, 0x01, 0x23])) // 'cafe0123'
4571
4628
  */
4572
4629
  function bytesToHex(bytes) {
4573
- if (!u8a(bytes))
4574
- throw new Error('Uint8Array expected');
4630
+ (0, _assert_js_1.bytes)(bytes);
4575
4631
  // pre-caching improves the speed 6x
4576
4632
  let hex = '';
4577
4633
  for (let i = 0; i < bytes.length; i++) {
@@ -4580,23 +4636,36 @@ function bytesToHex(bytes) {
4580
4636
  return hex;
4581
4637
  }
4582
4638
  exports.bytesToHex = bytesToHex;
4639
+ // We use optimized technique to convert hex string to byte array
4640
+ const asciis = { _0: 48, _9: 57, _A: 65, _F: 70, _a: 97, _f: 102 };
4641
+ function asciiToBase16(char) {
4642
+ if (char >= asciis._0 && char <= asciis._9)
4643
+ return char - asciis._0;
4644
+ if (char >= asciis._A && char <= asciis._F)
4645
+ return char - (asciis._A - 10);
4646
+ if (char >= asciis._a && char <= asciis._f)
4647
+ return char - (asciis._a - 10);
4648
+ return;
4649
+ }
4583
4650
  /**
4584
4651
  * @example hexToBytes('cafe0123') // Uint8Array.from([0xca, 0xfe, 0x01, 0x23])
4585
4652
  */
4586
4653
  function hexToBytes(hex) {
4587
4654
  if (typeof hex !== 'string')
4588
4655
  throw new Error('hex string expected, got ' + typeof hex);
4589
- const len = hex.length;
4590
- if (len % 2)
4591
- throw new Error('padded hex string expected, got unpadded hex of length ' + len);
4592
- const array = new Uint8Array(len / 2);
4593
- for (let i = 0; i < array.length; i++) {
4594
- const j = i * 2;
4595
- const hexByte = hex.slice(j, j + 2);
4596
- const byte = Number.parseInt(hexByte, 16);
4597
- if (Number.isNaN(byte) || byte < 0)
4598
- throw new Error('Invalid byte sequence');
4599
- array[i] = byte;
4656
+ const hl = hex.length;
4657
+ const al = hl / 2;
4658
+ if (hl % 2)
4659
+ throw new Error('padded hex string expected, got unpadded hex of length ' + hl);
4660
+ const array = new Uint8Array(al);
4661
+ for (let ai = 0, hi = 0; ai < al; ai++, hi += 2) {
4662
+ const n1 = asciiToBase16(hex.charCodeAt(hi));
4663
+ const n2 = asciiToBase16(hex.charCodeAt(hi + 1));
4664
+ if (n1 === undefined || n2 === undefined) {
4665
+ const char = hex[hi] + hex[hi + 1];
4666
+ throw new Error('hex string expected, got non-hex character "' + char + '" at index ' + hi);
4667
+ }
4668
+ array[ai] = n1 * 16 + n2;
4600
4669
  }
4601
4670
  return array;
4602
4671
  }
@@ -4637,8 +4706,7 @@ exports.utf8ToBytes = utf8ToBytes;
4637
4706
  function toBytes(data) {
4638
4707
  if (typeof data === 'string')
4639
4708
  data = utf8ToBytes(data);
4640
- if (!u8a(data))
4641
- throw new Error(`expected Uint8Array, got ${typeof data}`);
4709
+ (0, _assert_js_1.bytes)(data);
4642
4710
  return data;
4643
4711
  }
4644
4712
  exports.toBytes = toBytes;
@@ -4646,15 +4714,19 @@ exports.toBytes = toBytes;
4646
4714
  * Copies several Uint8Arrays into one.
4647
4715
  */
4648
4716
  function concatBytes(...arrays) {
4649
- const r = new Uint8Array(arrays.reduce((sum, a) => sum + a.length, 0));
4650
- let pad = 0; // walk through each item, ensure they have proper type
4651
- arrays.forEach((a) => {
4652
- if (!u8a(a))
4653
- throw new Error('Uint8Array expected');
4654
- r.set(a, pad);
4717
+ let sum = 0;
4718
+ for (let i = 0; i < arrays.length; i++) {
4719
+ const a = arrays[i];
4720
+ (0, _assert_js_1.bytes)(a);
4721
+ sum += a.length;
4722
+ }
4723
+ const res = new Uint8Array(sum);
4724
+ for (let i = 0, pad = 0; i < arrays.length; i++) {
4725
+ const a = arrays[i];
4726
+ res.set(a, pad);
4655
4727
  pad += a.length;
4656
- });
4657
- return r;
4728
+ }
4729
+ return res;
4658
4730
  }
4659
4731
  exports.concatBytes = concatBytes;
4660
4732
  // For runtime check if class implements interface
@@ -4724,7 +4796,7 @@ exports.randomBytes = randomBytes;
4724
4796
 
4725
4797
  /*! scure-base - MIT License (c) 2022 Paul Miller (paulmillr.com) */
4726
4798
  Object.defineProperty(exports, "__esModule", ({ value: true }));
4727
- exports.bytes = exports.stringToBytes = exports.str = exports.bytesToString = exports.hex = exports.utf8 = exports.bech32m = exports.bech32 = exports.base58check = exports.base58xmr = exports.base58xrp = exports.base58flickr = exports.base58 = exports.base64urlnopad = exports.base64url = exports.base64 = exports.base32crockford = exports.base32hex = exports.base32 = exports.base16 = exports.utils = exports.assertNumber = void 0;
4799
+ exports.bytes = exports.stringToBytes = exports.str = exports.bytesToString = exports.hex = exports.utf8 = exports.bech32m = exports.bech32 = exports.base58check = exports.createBase58check = exports.base58xmr = exports.base58xrp = exports.base58flickr = exports.base58 = exports.base64urlnopad = exports.base64url = exports.base64nopad = exports.base64 = exports.base32crockford = exports.base32hex = exports.base32 = exports.base16 = exports.utils = exports.assertNumber = void 0;
4728
4800
  // Utilities
4729
4801
  /**
4730
4802
  * @__NO_SIDE_EFFECTS__
@@ -4734,18 +4806,21 @@ function assertNumber(n) {
4734
4806
  throw new Error(`Wrong integer: ${n}`);
4735
4807
  }
4736
4808
  exports.assertNumber = assertNumber;
4809
+ function isBytes(a) {
4810
+ return (a instanceof Uint8Array ||
4811
+ (a != null && typeof a === 'object' && a.constructor.name === 'Uint8Array'));
4812
+ }
4737
4813
  /**
4738
4814
  * @__NO_SIDE_EFFECTS__
4739
4815
  */
4740
4816
  function chain(...args) {
4817
+ const id = (a) => a;
4741
4818
  // Wrap call in closure so JIT can inline calls
4742
4819
  const wrap = (a, b) => (c) => a(b(c));
4743
4820
  // Construct chain of args[-1].encode(args[-2].encode([...]))
4744
- const encode = Array.from(args)
4745
- .reverse()
4746
- .reduce((acc, i) => (acc ? wrap(acc, i.encode) : i.encode), undefined);
4821
+ const encode = args.map((x) => x.encode).reduceRight(wrap, id);
4747
4822
  // Construct chain of args[0].decode(args[1].decode(...))
4748
- const decode = args.reduce((acc, i) => (acc ? wrap(acc, i.decode) : i.decode), undefined);
4823
+ const decode = args.map((x) => x.decode).reduce(wrap, id);
4749
4824
  return { encode, decode };
4750
4825
  }
4751
4826
  /**
@@ -4945,13 +5020,13 @@ function radix(num) {
4945
5020
  assertNumber(num);
4946
5021
  return {
4947
5022
  encode: (bytes) => {
4948
- if (!(bytes instanceof Uint8Array))
5023
+ if (!isBytes(bytes))
4949
5024
  throw new Error('radix.encode input should be Uint8Array');
4950
5025
  return convertRadix(Array.from(bytes), 2 ** 8, num);
4951
5026
  },
4952
5027
  decode: (digits) => {
4953
5028
  if (!Array.isArray(digits) || (digits.length && typeof digits[0] !== 'number'))
4954
- throw new Error('radix.decode input should be array of strings');
5029
+ throw new Error('radix.decode input should be array of numbers');
4955
5030
  return Uint8Array.from(convertRadix(digits, num, 2 ** 8));
4956
5031
  },
4957
5032
  };
@@ -4969,13 +5044,13 @@ function radix2(bits, revPadding = false) {
4969
5044
  throw new Error('radix2: carry overflow');
4970
5045
  return {
4971
5046
  encode: (bytes) => {
4972
- if (!(bytes instanceof Uint8Array))
5047
+ if (!isBytes(bytes))
4973
5048
  throw new Error('radix2.encode input should be Uint8Array');
4974
5049
  return convertRadix2(Array.from(bytes), 8, bits, !revPadding);
4975
5050
  },
4976
5051
  decode: (digits) => {
4977
5052
  if (!Array.isArray(digits) || (digits.length && typeof digits[0] !== 'number'))
4978
- throw new Error('radix2.decode input should be array of strings');
5053
+ throw new Error('radix2.decode input should be array of numbers');
4979
5054
  return Uint8Array.from(convertRadix2(digits, bits, 8, revPadding));
4980
5055
  },
4981
5056
  };
@@ -5002,7 +5077,7 @@ function checksum(len, fn) {
5002
5077
  throw new Error('checksum fn should be function');
5003
5078
  return {
5004
5079
  encode(data) {
5005
- if (!(data instanceof Uint8Array))
5080
+ if (!isBytes(data))
5006
5081
  throw new Error('checksum.encode: input should be Uint8Array');
5007
5082
  const checksum = fn(data).slice(0, len);
5008
5083
  const res = new Uint8Array(data.length + len);
@@ -5011,7 +5086,7 @@ function checksum(len, fn) {
5011
5086
  return res;
5012
5087
  },
5013
5088
  decode(data) {
5014
- if (!(data instanceof Uint8Array))
5089
+ if (!isBytes(data))
5015
5090
  throw new Error('checksum.decode: input should be Uint8Array');
5016
5091
  const payload = data.slice(0, -len);
5017
5092
  const newChecksum = fn(payload).slice(0, len);
@@ -5023,7 +5098,10 @@ function checksum(len, fn) {
5023
5098
  },
5024
5099
  };
5025
5100
  }
5026
- exports.utils = { alphabet, chain, checksum, radix, radix2, join, padding };
5101
+ // prettier-ignore
5102
+ exports.utils = {
5103
+ alphabet, chain, checksum, convertRadix, convertRadix2, radix, radix2, join, padding,
5104
+ };
5027
5105
  // RFC 4648 aka RFC 3548
5028
5106
  // ---------------------
5029
5107
  exports.base16 = chain(radix2(4), alphabet('0123456789ABCDEF'), join(''));
@@ -5031,6 +5109,7 @@ exports.base32 = chain(radix2(5), alphabet('ABCDEFGHIJKLMNOPQRSTUVWXYZ234567'),
5031
5109
  exports.base32hex = chain(radix2(5), alphabet('0123456789ABCDEFGHIJKLMNOPQRSTUV'), padding(5), join(''));
5032
5110
  exports.base32crockford = chain(radix2(5), alphabet('0123456789ABCDEFGHJKMNPQRSTVWXYZ'), join(''), normalize((s) => s.toUpperCase().replace(/O/g, '0').replace(/[IL]/g, '1')));
5033
5111
  exports.base64 = chain(radix2(6), alphabet('ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'), padding(6), join(''));
5112
+ exports.base64nopad = chain(radix2(6), alphabet('ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'), join(''));
5034
5113
  exports.base64url = chain(radix2(6), alphabet('ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_'), padding(6), join(''));
5035
5114
  exports.base64urlnopad = chain(radix2(6), alphabet('ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_'), join(''));
5036
5115
  // base58 code
@@ -5067,8 +5146,10 @@ exports.base58xmr = {
5067
5146
  return Uint8Array.from(res);
5068
5147
  },
5069
5148
  };
5070
- const base58check = (sha256) => chain(checksum(4, (data) => sha256(sha256(data))), exports.base58);
5071
- exports.base58check = base58check;
5149
+ const createBase58check = (sha256) => chain(checksum(4, (data) => sha256(sha256(data))), exports.base58);
5150
+ exports.createBase58check = createBase58check;
5151
+ // legacy export, bad name
5152
+ exports.base58check = exports.createBase58check;
5072
5153
  const BECH_ALPHABET = /* @__PURE__ */ chain(alphabet('qpzry9x8gf2tvdw0s3jn54khce6mua7l'), join(''));
5073
5154
  const POLYMOD_GENERATORS = [0x3b6a57b2, 0x26508e6d, 0x1ea119fa, 0x3d4233dd, 0x2a1462b3];
5074
5155
  /**
@@ -5119,6 +5200,8 @@ function genBech32(encoding) {
5119
5200
  throw new Error(`bech32.encode prefix should be string, not ${typeof prefix}`);
5120
5201
  if (!Array.isArray(words) || (words.length && typeof words[0] !== 'number'))
5121
5202
  throw new Error(`bech32.encode words should be array of numbers, not ${typeof words}`);
5203
+ if (prefix.length === 0)
5204
+ throw new TypeError(`Invalid prefix length ${prefix.length}`);
5122
5205
  const actualLength = prefix.length + 7 + words.length;
5123
5206
  if (limit !== false && actualLength > limit)
5124
5207
  throw new TypeError(`Length ${actualLength} exceeds limit ${limit}`);
@@ -5135,17 +5218,16 @@ function genBech32(encoding) {
5135
5218
  const lowered = str.toLowerCase();
5136
5219
  if (str !== lowered && str !== str.toUpperCase())
5137
5220
  throw new Error(`String must be lowercase or uppercase`);
5138
- str = lowered;
5139
- const sepIndex = str.lastIndexOf('1');
5221
+ const sepIndex = lowered.lastIndexOf('1');
5140
5222
  if (sepIndex === 0 || sepIndex === -1)
5141
5223
  throw new Error(`Letter "1" must be present between prefix and data only`);
5142
- const prefix = str.slice(0, sepIndex);
5143
- const _words = str.slice(sepIndex + 1);
5144
- if (_words.length < 6)
5224
+ const prefix = lowered.slice(0, sepIndex);
5225
+ const data = lowered.slice(sepIndex + 1);
5226
+ if (data.length < 6)
5145
5227
  throw new Error('Data must be at least 6 characters long');
5146
- const words = BECH_ALPHABET.decode(_words).slice(0, -6);
5228
+ const words = BECH_ALPHABET.decode(data).slice(0, -6);
5147
5229
  const sum = bechChecksum(prefix, words, ENCODING_CONST);
5148
- if (!_words.endsWith(sum))
5230
+ if (!data.endsWith(sum))
5149
5231
  throw new Error(`Invalid checksum in ${str}: expected "${sum}"`);
5150
5232
  return { prefix, words };
5151
5233
  }
@@ -5175,7 +5257,7 @@ const coderTypeError = 'Invalid encoding type. Available types: utf8, hex, base1
5175
5257
  const bytesToString = (type, bytes) => {
5176
5258
  if (typeof type !== 'string' || !CODERS.hasOwnProperty(type))
5177
5259
  throw new TypeError(coderTypeError);
5178
- if (!(bytes instanceof Uint8Array))
5260
+ if (!isBytes(bytes))
5179
5261
  throw new TypeError('bytesToString() expects Uint8Array');
5180
5262
  return CODERS[type].encode(bytes);
5181
5263
  };
@@ -5190,7 +5272,7 @@ const stringToBytes = (type, str) => {
5190
5272
  };
5191
5273
  exports.stringToBytes = stringToBytes;
5192
5274
  exports.bytes = exports.stringToBytes;
5193
-
5275
+ //# sourceMappingURL=index.js.map
5194
5276
 
5195
5277
  /***/ }),
5196
5278
 
@@ -5215,7 +5297,7 @@ const secp256k1_1 = __webpack_require__(/*! @noble/curves/secp256k1 */ "../../no
5215
5297
  const modular_1 = __webpack_require__(/*! @noble/curves/abstract/modular */ "../../node_modules/@noble/curves/abstract/modular.js");
5216
5298
  const base_1 = __webpack_require__(/*! @scure/base */ "../../node_modules/@scure/base/lib/index.js");
5217
5299
  const Point = secp256k1_1.secp256k1.ProjectivePoint;
5218
- const base58check = (0, base_1.base58check)(sha256_1.sha256);
5300
+ const base58check = (0, base_1.createBase58check)(sha256_1.sha256);
5219
5301
  function bytesToNumber(bytes) {
5220
5302
  return BigInt(`0x${(0, utils_1.bytesToHex)(bytes)}`);
5221
5303
  }
@@ -5317,7 +5399,7 @@ class HDKey {
5317
5399
  }
5318
5400
  this.versions = opt.versions || BITCOIN_VERSIONS;
5319
5401
  this.depth = opt.depth || 0;
5320
- this.chainCode = opt.chainCode;
5402
+ this.chainCode = opt.chainCode || null;
5321
5403
  this.index = opt.index || 0;
5322
5404
  this.parentFingerprint = opt.parentFingerprint || 0;
5323
5405
  if (!this.depth) {
@@ -5499,6 +5581,7 @@ const isJapanese = (wordlist) => wordlist[0] === '\u3042\u3044\u3053\u304f\u3057
5499
5581
  // Normalization replaces equivalent sequences of characters
5500
5582
  // so that any two texts that are equivalent will be reduced
5501
5583
  // to the same sequence of code points, called the normal form of the original text.
5584
+ // https://tonsky.me/blog/unicode/#why-is-a----
5502
5585
  function nfkd(str) {
5503
5586
  if (typeof str !== 'string')
5504
5587
  throw new TypeError(`Invalid mnemonic type: ${typeof str}`);
@@ -5512,7 +5595,7 @@ function normalize(str) {
5512
5595
  return { nfkd: norm, words };
5513
5596
  }
5514
5597
  function assertEntropy(entropy) {
5515
- _assert_1.default.bytes(entropy, 16, 20, 24, 28, 32);
5598
+ (0, _assert_1.bytes)(entropy, 16, 20, 24, 28, 32);
5516
5599
  }
5517
5600
  /**
5518
5601
  * Generate x random words. Uses Cryptographically-Secure Random Number Generator.
@@ -5523,7 +5606,7 @@ function assertEntropy(entropy) {
5523
5606
  * // 'legal winner thank year wave sausage worth useful legal winner thank yellow'
5524
5607
  */
5525
5608
  function generateMnemonic(wordlist, strength = 128) {
5526
- _assert_1.default.number(strength);
5609
+ (0, _assert_1.number)(strength);
5527
5610
  if (strength % 32 !== 0 || strength > 256)
5528
5611
  throw new TypeError('Invalid entropy');
5529
5612
  return entropyToMnemonic((0, utils_1.randomBytes)(strength / 8), wordlist);
@@ -5538,7 +5621,7 @@ const calcChecksum = (entropy) => {
5538
5621
  };
5539
5622
  function getCoder(wordlist) {
5540
5623
  if (!Array.isArray(wordlist) || wordlist.length !== 2048 || typeof wordlist[0] !== 'string')
5541
- throw new Error('Worlist: expected array of 2048 strings');
5624
+ throw new Error('Wordlist: expected array of 2048 strings');
5542
5625
  wordlist.forEach((i) => {
5543
5626
  if (typeof i !== 'string')
5544
5627
  throw new Error(`Wordlist: non-string element: ${i}`);
@@ -7850,6 +7933,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
7850
7933
  Object.defineProperty(exports, "__esModule", ({ value: true }));
7851
7934
  exports.randomBytes = exports.stringToHex = exports.hexToString = exports.hexToBytes = exports.bytesToHex = void 0;
7852
7935
  const utils_1 = __webpack_require__(/*! @noble/hashes/utils */ "../../node_modules/@noble/hashes/utils.js");
7936
+ const shared_1 = __webpack_require__(/*! ./shared */ "../../node_modules/@xrplf/isomorphic/dist/utils/shared.js");
7853
7937
  /* eslint-disable func-style -- Typed to ensure uniformity between node and browser implementations and docs */
7854
7938
  const bytesToHex = (bytes) => {
7855
7939
  const hex = (0, utils_1.bytesToHex)(bytes instanceof Uint8Array ? bytes : Uint8Array.from(bytes));
@@ -7860,6 +7944,9 @@ exports.bytesToHex = bytesToHex;
7860
7944
  const hexToBytes = (hex) => {
7861
7945
  const len = hex.length;
7862
7946
  const array = new Uint8Array(len / 2);
7947
+ if (!shared_1.HEX_REGEX.test(hex)) {
7948
+ throw new Error('Invalid hex string');
7949
+ }
7863
7950
  for (let i = 0; i < array.length; i++) {
7864
7951
  const j = i * 2;
7865
7952
  const hexByte = hex.slice(j, j + 2);
@@ -7896,8 +7983,9 @@ __exportStar(__webpack_require__(/*! ./shared */ "../../node_modules/@xrplf/isom
7896
7983
  "use strict";
7897
7984
 
7898
7985
  Object.defineProperty(exports, "__esModule", ({ value: true }));
7899
- exports.equal = exports.concat = void 0;
7986
+ exports.equal = exports.concat = exports.HEX_REGEX = void 0;
7900
7987
  const utils_1 = __webpack_require__(/*! @noble/hashes/utils */ "../../node_modules/@noble/hashes/utils.js");
7988
+ exports.HEX_REGEX = /^[A-F0-9]*$/iu;
7901
7989
  function concat(views) {
7902
7990
  return (0, utils_1.concatBytes)(...views);
7903
7991
  }
@@ -13637,13 +13725,13 @@ class BinaryParser {
13637
13725
  if (type === 0) {
13638
13726
  type = this.readUInt8();
13639
13727
  if (type === 0 || type < 16) {
13640
- throw new Error('Cannot read FieldOrdinal, type_code out of range');
13728
+ throw new Error(`Cannot read FieldOrdinal, type_code ${type} out of range`);
13641
13729
  }
13642
13730
  }
13643
13731
  if (nth === 0) {
13644
13732
  nth = this.readUInt8();
13645
13733
  if (nth === 0 || nth < 16) {
13646
- throw new Error('Cannot read FieldOrdinal, field_code out of range');
13734
+ throw new Error(`Cannot read FieldOrdinal, field_code ${nth} out of range`);
13647
13735
  }
13648
13736
  }
13649
13737
  return (type << 16) | nth;
@@ -14391,6 +14479,9 @@ class Blob extends serialized_type_1.SerializedType {
14391
14479
  return value;
14392
14480
  }
14393
14481
  if (typeof value === 'string') {
14482
+ if (!/^[A-F0-9]*$/iu.test(value)) {
14483
+ throw new Error('Cannot construct Blob from a non-hex string');
14484
+ }
14394
14485
  return new Blob((0, utils_1.hexToBytes)(value));
14395
14486
  }
14396
14487
  throw new Error('Cannot construct Blob from value given');
@@ -15260,7 +15351,10 @@ const OBJECT_END_MARKER = Uint8Array.from([0xe1]);
15260
15351
  * TypeGuard for Array<JsonObject>
15261
15352
  */
15262
15353
  function isObjects(args) {
15263
- return (Array.isArray(args) && (args.length === 0 || typeof args[0] === 'object'));
15354
+ return (Array.isArray(args) &&
15355
+ args.every((arg) => typeof arg === 'object' &&
15356
+ Object.keys(arg).length === 1 &&
15357
+ typeof Object.values(arg)[0] === 'object'));
15264
15358
  }
15265
15359
  /**
15266
15360
  * Class for serializing and deserializing Arrays of Objects
@@ -17924,7 +18018,6 @@ class Client extends eventemitter3_1.EventEmitter {
17924
18018
  const countTo = request.limit == null ? Infinity : request.limit;
17925
18019
  let count = 0;
17926
18020
  let marker = request.marker;
17927
- let lastBatchLength;
17928
18021
  const results = [];
17929
18022
  do {
17930
18023
  const countRemaining = clamp(countTo - count, MIN_LIMIT, MAX_LIMIT);
@@ -17939,12 +18032,8 @@ class Client extends eventemitter3_1.EventEmitter {
17939
18032
  results.push(singleResponse);
17940
18033
  if (Array.isArray(collectedData)) {
17941
18034
  count += collectedData.length;
17942
- lastBatchLength = collectedData.length;
17943
- }
17944
- else {
17945
- lastBatchLength = 0;
17946
18035
  }
17947
- } while (Boolean(marker) && count < countTo && lastBatchLength !== 0);
18036
+ } while (Boolean(marker) && count < countTo);
17948
18037
  return results;
17949
18038
  });
17950
18039
  }
@@ -18531,6 +18620,7 @@ var RippleStateFlags;
18531
18620
  RippleStateFlags[RippleStateFlags["lsfHighNoRipple"] = 2097152] = "lsfHighNoRipple";
18532
18621
  RippleStateFlags[RippleStateFlags["lsfLowFreeze"] = 4194304] = "lsfLowFreeze";
18533
18622
  RippleStateFlags[RippleStateFlags["lsfHighFreeze"] = 8388608] = "lsfHighFreeze";
18623
+ RippleStateFlags[RippleStateFlags["lsfAMMNode"] = 16777216] = "lsfAMMNode";
18534
18624
  })(RippleStateFlags || (exports.RippleStateFlags = RippleStateFlags = {}));
18535
18625
 
18536
18626
 
@@ -18754,6 +18844,7 @@ var AMMDepositFlags;
18754
18844
  AMMDepositFlags[AMMDepositFlags["tfTwoAsset"] = 1048576] = "tfTwoAsset";
18755
18845
  AMMDepositFlags[AMMDepositFlags["tfOneAssetLPToken"] = 2097152] = "tfOneAssetLPToken";
18756
18846
  AMMDepositFlags[AMMDepositFlags["tfLimitLPToken"] = 4194304] = "tfLimitLPToken";
18847
+ AMMDepositFlags[AMMDepositFlags["tfTwoAssetIfEmpty"] = 8388608] = "tfTwoAssetIfEmpty";
18757
18848
  })(AMMDepositFlags || (exports.AMMDepositFlags = AMMDepositFlags = {}));
18758
18849
  function validateAMMDeposit(tx) {
18759
18850
  (0, common_1.validateBaseTransaction)(tx);
@@ -20031,6 +20122,95 @@ function validateOfferCreate(tx) {
20031
20122
  exports.validateOfferCreate = validateOfferCreate;
20032
20123
 
20033
20124
 
20125
+ /***/ }),
20126
+
20127
+ /***/ "./dist/npm/models/transactions/oracleDelete.js":
20128
+ /*!******************************************************!*\
20129
+ !*** ./dist/npm/models/transactions/oracleDelete.js ***!
20130
+ \******************************************************/
20131
+ /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
20132
+
20133
+ "use strict";
20134
+
20135
+ Object.defineProperty(exports, "__esModule", ({ value: true }));
20136
+ exports.validateOracleDelete = void 0;
20137
+ const common_1 = __webpack_require__(/*! ./common */ "./dist/npm/models/transactions/common.js");
20138
+ function validateOracleDelete(tx) {
20139
+ (0, common_1.validateBaseTransaction)(tx);
20140
+ (0, common_1.validateRequiredField)(tx, 'OracleDocumentID', common_1.isNumber);
20141
+ }
20142
+ exports.validateOracleDelete = validateOracleDelete;
20143
+
20144
+
20145
+ /***/ }),
20146
+
20147
+ /***/ "./dist/npm/models/transactions/oracleSet.js":
20148
+ /*!***************************************************!*\
20149
+ !*** ./dist/npm/models/transactions/oracleSet.js ***!
20150
+ \***************************************************/
20151
+ /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
20152
+
20153
+ "use strict";
20154
+
20155
+ Object.defineProperty(exports, "__esModule", ({ value: true }));
20156
+ exports.validateOracleSet = void 0;
20157
+ const errors_1 = __webpack_require__(/*! ../../errors */ "./dist/npm/errors.js");
20158
+ const common_1 = __webpack_require__(/*! ./common */ "./dist/npm/models/transactions/common.js");
20159
+ const PRICE_DATA_SERIES_MAX_LENGTH = 10;
20160
+ const SCALE_MAX = 10;
20161
+ function validateOracleSet(tx) {
20162
+ (0, common_1.validateBaseTransaction)(tx);
20163
+ (0, common_1.validateRequiredField)(tx, 'OracleDocumentID', common_1.isNumber);
20164
+ (0, common_1.validateRequiredField)(tx, 'LastUpdateTime', common_1.isNumber);
20165
+ (0, common_1.validateOptionalField)(tx, 'Provider', common_1.isString);
20166
+ (0, common_1.validateOptionalField)(tx, 'URI', common_1.isString);
20167
+ (0, common_1.validateOptionalField)(tx, 'AssetClass', common_1.isString);
20168
+ (0, common_1.validateRequiredField)(tx, 'PriceDataSeries', (value) => {
20169
+ if (!Array.isArray(value)) {
20170
+ throw new errors_1.ValidationError('OracleSet: PriceDataSeries must be an array');
20171
+ }
20172
+ if (value.length > PRICE_DATA_SERIES_MAX_LENGTH) {
20173
+ throw new errors_1.ValidationError(`OracleSet: PriceDataSeries must have at most ${PRICE_DATA_SERIES_MAX_LENGTH} PriceData objects`);
20174
+ }
20175
+ for (const priceData of value) {
20176
+ if (typeof priceData !== 'object') {
20177
+ throw new errors_1.ValidationError('OracleSet: PriceDataSeries must be an array of objects');
20178
+ }
20179
+ if (priceData.PriceData == null) {
20180
+ throw new errors_1.ValidationError('OracleSet: PriceDataSeries must have a `PriceData` object');
20181
+ }
20182
+ if (Object.keys(priceData).length !== 1) {
20183
+ throw new errors_1.ValidationError('OracleSet: PriceDataSeries must only have a single PriceData object');
20184
+ }
20185
+ if (typeof priceData.PriceData.BaseAsset !== 'string') {
20186
+ throw new errors_1.ValidationError('OracleSet: PriceDataSeries must have a `BaseAsset` string');
20187
+ }
20188
+ if (typeof priceData.PriceData.QuoteAsset !== 'string') {
20189
+ throw new errors_1.ValidationError('OracleSet: PriceDataSeries must have a `QuoteAsset` string');
20190
+ }
20191
+ if ((priceData.PriceData.AssetPrice == null) !==
20192
+ (priceData.PriceData.Scale == null)) {
20193
+ throw new errors_1.ValidationError('OracleSet: PriceDataSeries must have both `AssetPrice` and `Scale` if any are present');
20194
+ }
20195
+ if ('AssetPrice' in priceData.PriceData &&
20196
+ !(0, common_1.isNumber)(priceData.PriceData.AssetPrice)) {
20197
+ throw new errors_1.ValidationError('OracleSet: invalid field AssetPrice');
20198
+ }
20199
+ if ('Scale' in priceData.PriceData &&
20200
+ !(0, common_1.isNumber)(priceData.PriceData.Scale)) {
20201
+ throw new errors_1.ValidationError('OracleSet: invalid field Scale');
20202
+ }
20203
+ if (priceData.PriceData.Scale < 0 ||
20204
+ priceData.PriceData.Scale > SCALE_MAX) {
20205
+ throw new errors_1.ValidationError(`OracleSet: Scale must be in range 0-${SCALE_MAX}`);
20206
+ }
20207
+ }
20208
+ return true;
20209
+ });
20210
+ }
20211
+ exports.validateOracleSet = validateOracleSet;
20212
+
20213
+
20034
20214
  /***/ }),
20035
20215
 
20036
20216
  /***/ "./dist/npm/models/transactions/payment.js":
@@ -20048,7 +20228,7 @@ const utils_1 = __webpack_require__(/*! ../utils */ "./dist/npm/models/utils/ind
20048
20228
  const common_1 = __webpack_require__(/*! ./common */ "./dist/npm/models/transactions/common.js");
20049
20229
  var PaymentFlags;
20050
20230
  (function (PaymentFlags) {
20051
- PaymentFlags[PaymentFlags["tfNoDirectRipple"] = 65536] = "tfNoDirectRipple";
20231
+ PaymentFlags[PaymentFlags["tfNoRippleDirect"] = 65536] = "tfNoRippleDirect";
20052
20232
  PaymentFlags[PaymentFlags["tfPartialPayment"] = 131072] = "tfPartialPayment";
20053
20233
  PaymentFlags[PaymentFlags["tfLimitQuality"] = 262144] = "tfLimitQuality";
20054
20234
  })(PaymentFlags || (exports.PaymentFlags = PaymentFlags = {}));
@@ -20407,6 +20587,8 @@ const NFTokenCreateOffer_1 = __webpack_require__(/*! ./NFTokenCreateOffer */ "./
20407
20587
  const NFTokenMint_1 = __webpack_require__(/*! ./NFTokenMint */ "./dist/npm/models/transactions/NFTokenMint.js");
20408
20588
  const offerCancel_1 = __webpack_require__(/*! ./offerCancel */ "./dist/npm/models/transactions/offerCancel.js");
20409
20589
  const offerCreate_1 = __webpack_require__(/*! ./offerCreate */ "./dist/npm/models/transactions/offerCreate.js");
20590
+ const oracleDelete_1 = __webpack_require__(/*! ./oracleDelete */ "./dist/npm/models/transactions/oracleDelete.js");
20591
+ const oracleSet_1 = __webpack_require__(/*! ./oracleSet */ "./dist/npm/models/transactions/oracleSet.js");
20410
20592
  const payment_1 = __webpack_require__(/*! ./payment */ "./dist/npm/models/transactions/payment.js");
20411
20593
  const paymentChannelClaim_1 = __webpack_require__(/*! ./paymentChannelClaim */ "./dist/npm/models/transactions/paymentChannelClaim.js");
20412
20594
  const paymentChannelCreate_1 = __webpack_require__(/*! ./paymentChannelCreate */ "./dist/npm/models/transactions/paymentChannelCreate.js");
@@ -20544,6 +20726,12 @@ function validate(transaction) {
20544
20726
  case 'OfferCreate':
20545
20727
  (0, offerCreate_1.validateOfferCreate)(tx);
20546
20728
  break;
20729
+ case 'OracleDelete':
20730
+ (0, oracleDelete_1.validateOracleDelete)(tx);
20731
+ break;
20732
+ case 'OracleSet':
20733
+ (0, oracleSet_1.validateOracleSet)(tx);
20734
+ break;
20547
20735
  case 'Payment':
20548
20736
  (0, payment_1.validatePayment)(tx);
20549
20737
  break;
@@ -22608,7 +22796,7 @@ exports.xrpToDrops = xrpToDrops;
22608
22796
  /***/ ((module) => {
22609
22797
 
22610
22798
  "use strict";
22611
- module.exports = JSON.parse('{"TYPES":{"Done":-1,"Unknown":-2,"NotPresent":0,"UInt16":1,"UInt32":2,"UInt64":3,"Hash128":4,"Hash256":5,"Amount":6,"Blob":7,"AccountID":8,"STObject":14,"STArray":15,"UInt8":16,"Hash160":17,"PathSet":18,"Vector256":19,"UInt96":20,"UInt192":21,"UInt384":22,"UInt512":23,"Issue":24,"XChainBridge":25,"Transaction":10001,"LedgerEntry":10002,"Validation":10003,"Metadata":10004},"LEDGER_ENTRY_TYPES":{"Invalid":-1,"AccountRoot":97,"DirectoryNode":100,"RippleState":114,"Ticket":84,"SignerList":83,"Offer":111,"Bridge":105,"LedgerHashes":104,"Amendments":102,"XChainOwnedClaimID":113,"XChainOwnedCreateAccountClaimID":116,"FeeSettings":115,"Escrow":117,"PayChannel":120,"Check":67,"DepositPreauth":112,"NegativeUNL":78,"NFTokenPage":80,"NFTokenOffer":55,"AMM":121,"DID":73,"Any":-3,"Child":-2,"Nickname":110,"Contract":99,"GeneratorMap":103},"FIELDS":[["Generic",{"nth":0,"isVLEncoded":false,"isSerialized":false,"isSigningField":false,"type":"Unknown"}],["Invalid",{"nth":-1,"isVLEncoded":false,"isSerialized":false,"isSigningField":false,"type":"Unknown"}],["ObjectEndMarker",{"nth":1,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["ArrayEndMarker",{"nth":1,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["hash",{"nth":257,"isVLEncoded":false,"isSerialized":false,"isSigningField":false,"type":"Hash256"}],["index",{"nth":258,"isVLEncoded":false,"isSerialized":false,"isSigningField":false,"type":"Hash256"}],["taker_gets_funded",{"nth":258,"isVLEncoded":false,"isSerialized":false,"isSigningField":false,"type":"Amount"}],["taker_pays_funded",{"nth":259,"isVLEncoded":false,"isSerialized":false,"isSigningField":false,"type":"Amount"}],["LedgerEntry",{"nth":257,"isVLEncoded":false,"isSerialized":false,"isSigningField":false,"type":"LedgerEntry"}],["Transaction",{"nth":257,"isVLEncoded":false,"isSerialized":false,"isSigningField":false,"type":"Transaction"}],["Validation",{"nth":257,"isVLEncoded":false,"isSerialized":false,"isSigningField":false,"type":"Validation"}],["Metadata",{"nth":257,"isVLEncoded":false,"isSerialized":false,"isSigningField":false,"type":"Metadata"}],["CloseResolution",{"nth":1,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt8"}],["Method",{"nth":2,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt8"}],["TransactionResult",{"nth":3,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt8"}],["TickSize",{"nth":16,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt8"}],["UNLModifyDisabling",{"nth":17,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt8"}],["HookResult",{"nth":18,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt8"}],["WasLockingChainSend",{"nth":19,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt8"}],["LedgerEntryType",{"nth":1,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt16"}],["TransactionType",{"nth":2,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt16"}],["SignerWeight",{"nth":3,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt16"}],["TransferFee",{"nth":4,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt16"}],["TradingFee",{"nth":5,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt16"}],["DiscountedFee",{"nth":6,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt16"}],["Version",{"nth":16,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt16"}],["HookStateChangeCount",{"nth":17,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt16"}],["HookEmitCount",{"nth":18,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt16"}],["HookExecutionIndex",{"nth":19,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt16"}],["HookApiVersion",{"nth":20,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt16"}],["NetworkID",{"nth":1,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["Flags",{"nth":2,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["SourceTag",{"nth":3,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["Sequence",{"nth":4,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["PreviousTxnLgrSeq",{"nth":5,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["LedgerSequence",{"nth":6,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["CloseTime",{"nth":7,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["ParentCloseTime",{"nth":8,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["SigningTime",{"nth":9,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["Expiration",{"nth":10,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["TransferRate",{"nth":11,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["WalletSize",{"nth":12,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["OwnerCount",{"nth":13,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["DestinationTag",{"nth":14,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["HighQualityIn",{"nth":16,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["HighQualityOut",{"nth":17,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["LowQualityIn",{"nth":18,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["LowQualityOut",{"nth":19,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["QualityIn",{"nth":20,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["QualityOut",{"nth":21,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["StampEscrow",{"nth":22,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["BondAmount",{"nth":23,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["LoadFee",{"nth":24,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["OfferSequence",{"nth":25,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["FirstLedgerSequence",{"nth":26,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["LastLedgerSequence",{"nth":27,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["TransactionIndex",{"nth":28,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["OperationLimit",{"nth":29,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["ReferenceFeeUnits",{"nth":30,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["ReserveBase",{"nth":31,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["ReserveIncrement",{"nth":32,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["SetFlag",{"nth":33,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["ClearFlag",{"nth":34,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["SignerQuorum",{"nth":35,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["CancelAfter",{"nth":36,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["FinishAfter",{"nth":37,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["SignerListID",{"nth":38,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["SettleDelay",{"nth":39,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["TicketCount",{"nth":40,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["TicketSequence",{"nth":41,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["NFTokenTaxon",{"nth":42,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["MintedNFTokens",{"nth":43,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["BurnedNFTokens",{"nth":44,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["HookStateCount",{"nth":45,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["EmitGeneration",{"nth":46,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["VoteWeight",{"nth":48,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["FirstNFTokenSequence",{"nth":50,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["IndexNext",{"nth":1,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["IndexPrevious",{"nth":2,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["BookNode",{"nth":3,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["OwnerNode",{"nth":4,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["BaseFee",{"nth":5,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["ExchangeRate",{"nth":6,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["LowNode",{"nth":7,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["HighNode",{"nth":8,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["DestinationNode",{"nth":9,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["Cookie",{"nth":10,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["ServerVersion",{"nth":11,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["NFTokenOfferNode",{"nth":12,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["EmitBurden",{"nth":13,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["HookOn",{"nth":16,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["HookInstructionCount",{"nth":17,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["HookReturnCode",{"nth":18,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["ReferenceCount",{"nth":19,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["XChainClaimID",{"nth":20,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["XChainAccountCreateCount",{"nth":21,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["XChainAccountClaimCount",{"nth":22,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["EmailHash",{"nth":1,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash128"}],["TakerPaysCurrency",{"nth":1,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash160"}],["TakerPaysIssuer",{"nth":2,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash160"}],["TakerGetsCurrency",{"nth":3,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash160"}],["TakerGetsIssuer",{"nth":4,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash160"}],["LedgerHash",{"nth":1,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["ParentHash",{"nth":2,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["TransactionHash",{"nth":3,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["AccountHash",{"nth":4,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["PreviousTxnID",{"nth":5,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["LedgerIndex",{"nth":6,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["WalletLocator",{"nth":7,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["RootIndex",{"nth":8,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["AccountTxnID",{"nth":9,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["NFTokenID",{"nth":10,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["EmitParentTxnID",{"nth":11,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["EmitNonce",{"nth":12,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["EmitHookHash",{"nth":13,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["AMMID",{"nth":14,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["BookDirectory",{"nth":16,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["InvoiceID",{"nth":17,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["Nickname",{"nth":18,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["Amendment",{"nth":19,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["Digest",{"nth":21,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["Channel",{"nth":22,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["ConsensusHash",{"nth":23,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["CheckID",{"nth":24,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["ValidatedHash",{"nth":25,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["PreviousPageMin",{"nth":26,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["NextPageMin",{"nth":27,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["NFTokenBuyOffer",{"nth":28,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["NFTokenSellOffer",{"nth":29,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["HookStateKey",{"nth":30,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["HookHash",{"nth":31,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["HookNamespace",{"nth":32,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["HookSetTxnID",{"nth":33,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["Amount",{"nth":1,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["Balance",{"nth":2,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["LimitAmount",{"nth":3,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["TakerPays",{"nth":4,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["TakerGets",{"nth":5,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["LowLimit",{"nth":6,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["HighLimit",{"nth":7,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["Fee",{"nth":8,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["SendMax",{"nth":9,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["DeliverMin",{"nth":10,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["Amount2",{"nth":11,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["BidMin",{"nth":12,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["BidMax",{"nth":13,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["MinimumOffer",{"nth":16,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["RippleEscrow",{"nth":17,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["DeliveredAmount",{"nth":18,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["NFTokenBrokerFee",{"nth":19,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["BaseFeeDrops",{"nth":22,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["ReserveBaseDrops",{"nth":23,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["ReserveIncrementDrops",{"nth":24,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["LPTokenOut",{"nth":25,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["LPTokenIn",{"nth":26,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["EPrice",{"nth":27,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["Price",{"nth":28,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["SignatureReward",{"nth":29,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["MinAccountCreateAmount",{"nth":30,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["LPTokenBalance",{"nth":31,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["PublicKey",{"nth":1,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["MessageKey",{"nth":2,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["SigningPubKey",{"nth":3,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["TxnSignature",{"nth":4,"isVLEncoded":true,"isSerialized":true,"isSigningField":false,"type":"Blob"}],["URI",{"nth":5,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["Signature",{"nth":6,"isVLEncoded":true,"isSerialized":true,"isSigningField":false,"type":"Blob"}],["Domain",{"nth":7,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["FundCode",{"nth":8,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["RemoveCode",{"nth":9,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["ExpireCode",{"nth":10,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["CreateCode",{"nth":11,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["MemoType",{"nth":12,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["MemoData",{"nth":13,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["MemoFormat",{"nth":14,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["Fulfillment",{"nth":16,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["Condition",{"nth":17,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["MasterSignature",{"nth":18,"isVLEncoded":true,"isSerialized":true,"isSigningField":false,"type":"Blob"}],["UNLModifyValidator",{"nth":19,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["ValidatorToDisable",{"nth":20,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["ValidatorToReEnable",{"nth":21,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["HookStateData",{"nth":22,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["HookReturnString",{"nth":23,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["HookParameterName",{"nth":24,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["HookParameterValue",{"nth":25,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["DIDDocument",{"nth":26,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["Data",{"nth":27,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["Account",{"nth":1,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["Owner",{"nth":2,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["Destination",{"nth":3,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["Issuer",{"nth":4,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["Authorize",{"nth":5,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["Unauthorize",{"nth":6,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["RegularKey",{"nth":8,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["NFTokenMinter",{"nth":9,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["EmitCallback",{"nth":10,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["HookAccount",{"nth":16,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["OtherChainSource",{"nth":18,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["OtherChainDestination",{"nth":19,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["AttestationSignerAccount",{"nth":20,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["AttestationRewardAccount",{"nth":21,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["LockingChainDoor",{"nth":22,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["IssuingChainDoor",{"nth":23,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["Indexes",{"nth":1,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Vector256"}],["Hashes",{"nth":2,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Vector256"}],["Amendments",{"nth":3,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Vector256"}],["NFTokenOffers",{"nth":4,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Vector256"}],["Paths",{"nth":1,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"PathSet"}],["LockingChainIssue",{"nth":1,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Issue"}],["IssuingChainIssue",{"nth":2,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Issue"}],["Asset",{"nth":3,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Issue"}],["Asset2",{"nth":4,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Issue"}],["XChainBridge",{"nth":1,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"XChainBridge"}],["TransactionMetaData",{"nth":2,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["CreatedNode",{"nth":3,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["DeletedNode",{"nth":4,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["ModifiedNode",{"nth":5,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["PreviousFields",{"nth":6,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["FinalFields",{"nth":7,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["NewFields",{"nth":8,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["TemplateEntry",{"nth":9,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["Memo",{"nth":10,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["SignerEntry",{"nth":11,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["NFToken",{"nth":12,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["EmitDetails",{"nth":13,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["Hook",{"nth":14,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["Signer",{"nth":16,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["Majority",{"nth":18,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["DisabledValidator",{"nth":19,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["EmittedTxn",{"nth":20,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["HookExecution",{"nth":21,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["HookDefinition",{"nth":22,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["HookParameter",{"nth":23,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["HookGrant",{"nth":24,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["VoteEntry",{"nth":25,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["AuctionSlot",{"nth":26,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["AuthAccount",{"nth":27,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["XChainClaimProofSig",{"nth":28,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["XChainCreateAccountProofSig",{"nth":29,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["XChainClaimAttestationCollectionElement",{"nth":30,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["XChainCreateAccountAttestationCollectionElement",{"nth":31,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["Signers",{"nth":3,"isVLEncoded":false,"isSerialized":true,"isSigningField":false,"type":"STArray"}],["SignerEntries",{"nth":4,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["Template",{"nth":5,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["Necessary",{"nth":6,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["Sufficient",{"nth":7,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["AffectedNodes",{"nth":8,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["Memos",{"nth":9,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["NFTokens",{"nth":10,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["Hooks",{"nth":11,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["VoteSlots",{"nth":12,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["Majorities",{"nth":16,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["DisabledValidators",{"nth":17,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["HookExecutions",{"nth":18,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["HookParameters",{"nth":19,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["HookGrants",{"nth":20,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["XChainClaimAttestations",{"nth":21,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["XChainCreateAccountAttestations",{"nth":22,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["AuthAccounts",{"nth":25,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}]],"TRANSACTION_RESULTS":{"telLOCAL_ERROR":-399,"telBAD_DOMAIN":-398,"telBAD_PATH_COUNT":-397,"telBAD_PUBLIC_KEY":-396,"telFAILED_PROCESSING":-395,"telINSUF_FEE_P":-394,"telNO_DST_PARTIAL":-393,"telCAN_NOT_QUEUE":-392,"telCAN_NOT_QUEUE_BALANCE":-391,"telCAN_NOT_QUEUE_BLOCKS":-390,"telCAN_NOT_QUEUE_BLOCKED":-389,"telCAN_NOT_QUEUE_FEE":-388,"telCAN_NOT_QUEUE_FULL":-387,"telWRONG_NETWORK":-386,"telREQUIRES_NETWORK_ID":-385,"telNETWORK_ID_MAKES_TX_NON_CANONICAL":-384,"temMALFORMED":-299,"temBAD_AMOUNT":-298,"temBAD_CURRENCY":-297,"temBAD_EXPIRATION":-296,"temBAD_FEE":-295,"temBAD_ISSUER":-294,"temBAD_LIMIT":-293,"temBAD_OFFER":-292,"temBAD_PATH":-291,"temBAD_PATH_LOOP":-290,"temBAD_REGKEY":-289,"temBAD_SEND_XRP_LIMIT":-288,"temBAD_SEND_XRP_MAX":-287,"temBAD_SEND_XRP_NO_DIRECT":-286,"temBAD_SEND_XRP_PARTIAL":-285,"temBAD_SEND_XRP_PATHS":-284,"temBAD_SEQUENCE":-283,"temBAD_SIGNATURE":-282,"temBAD_SRC_ACCOUNT":-281,"temBAD_TRANSFER_RATE":-280,"temDST_IS_SRC":-279,"temDST_NEEDED":-278,"temINVALID":-277,"temINVALID_FLAG":-276,"temREDUNDANT":-275,"temRIPPLE_EMPTY":-274,"temDISABLED":-273,"temBAD_SIGNER":-272,"temBAD_QUORUM":-271,"temBAD_WEIGHT":-270,"temBAD_TICK_SIZE":-269,"temINVALID_ACCOUNT_ID":-268,"temCANNOT_PREAUTH_SELF":-267,"temINVALID_COUNT":-266,"temUNCERTAIN":-265,"temUNKNOWN":-264,"temSEQ_AND_TICKET":-263,"temBAD_NFTOKEN_TRANSFER_FEE":-262,"temBAD_AMM_TOKENS":-261,"temXCHAIN_EQUAL_DOOR_ACCOUNTS":-260,"temXCHAIN_BAD_PROOF":-259,"temXCHAIN_BRIDGE_BAD_ISSUES":-258,"temXCHAIN_BRIDGE_NONDOOR_OWNER":-257,"temXCHAIN_BRIDGE_BAD_MIN_ACCOUNT_CREATE_AMOUNT":-256,"temXCHAIN_BRIDGE_BAD_REWARD_AMOUNT":-255,"temEMPTY_DID":-254,"tefFAILURE":-199,"tefALREADY":-198,"tefBAD_ADD_AUTH":-197,"tefBAD_AUTH":-196,"tefBAD_LEDGER":-195,"tefCREATED":-194,"tefEXCEPTION":-193,"tefINTERNAL":-192,"tefNO_AUTH_REQUIRED":-191,"tefPAST_SEQ":-190,"tefWRONG_PRIOR":-189,"tefMASTER_DISABLED":-188,"tefMAX_LEDGER":-187,"tefBAD_SIGNATURE":-186,"tefBAD_QUORUM":-185,"tefNOT_MULTI_SIGNING":-184,"tefBAD_AUTH_MASTER":-183,"tefINVARIANT_FAILED":-182,"tefTOO_BIG":-181,"tefNO_TICKET":-180,"tefNFTOKEN_IS_NOT_TRANSFERABLE":-179,"terRETRY":-99,"terFUNDS_SPENT":-98,"terINSUF_FEE_B":-97,"terNO_ACCOUNT":-96,"terNO_AUTH":-95,"terNO_LINE":-94,"terOWNERS":-93,"terPRE_SEQ":-92,"terLAST":-91,"terNO_RIPPLE":-90,"terQUEUED":-89,"terPRE_TICKET":-88,"terNO_AMM":-87,"terSUBMITTED":-86,"tesSUCCESS":0,"tecCLAIM":100,"tecPATH_PARTIAL":101,"tecUNFUNDED_ADD":102,"tecUNFUNDED_OFFER":103,"tecUNFUNDED_PAYMENT":104,"tecFAILED_PROCESSING":105,"tecDIR_FULL":121,"tecINSUF_RESERVE_LINE":122,"tecINSUF_RESERVE_OFFER":123,"tecNO_DST":124,"tecNO_DST_INSUF_XRP":125,"tecNO_LINE_INSUF_RESERVE":126,"tecNO_LINE_REDUNDANT":127,"tecPATH_DRY":128,"tecUNFUNDED":129,"tecNO_ALTERNATIVE_KEY":130,"tecNO_REGULAR_KEY":131,"tecOWNERS":132,"tecNO_ISSUER":133,"tecNO_AUTH":134,"tecNO_LINE":135,"tecINSUFF_FEE":136,"tecFROZEN":137,"tecNO_TARGET":138,"tecNO_PERMISSION":139,"tecNO_ENTRY":140,"tecINSUFFICIENT_RESERVE":141,"tecNEED_MASTER_KEY":142,"tecDST_TAG_NEEDED":143,"tecINTERNAL":144,"tecOVERSIZE":145,"tecCRYPTOCONDITION_ERROR":146,"tecINVARIANT_FAILED":147,"tecEXPIRED":148,"tecDUPLICATE":149,"tecKILLED":150,"tecHAS_OBLIGATIONS":151,"tecTOO_SOON":152,"tecHOOK_REJECTED":153,"tecMAX_SEQUENCE_REACHED":154,"tecNO_SUITABLE_NFTOKEN_PAGE":155,"tecNFTOKEN_BUY_SELL_MISMATCH":156,"tecNFTOKEN_OFFER_TYPE_MISMATCH":157,"tecCANT_ACCEPT_OWN_NFTOKEN_OFFER":158,"tecINSUFFICIENT_FUNDS":159,"tecOBJECT_NOT_FOUND":160,"tecINSUFFICIENT_PAYMENT":161,"tecUNFUNDED_AMM":162,"tecAMM_BALANCE":163,"tecAMM_FAILED":164,"tecAMM_INVALID_TOKENS":165,"tecAMM_EMPTY":166,"tecAMM_NOT_EMPTY":167,"tecAMM_ACCOUNT":168,"tecINCOMPLETE":169,"tecXCHAIN_BAD_TRANSFER_ISSUE":170,"tecXCHAIN_NO_CLAIM_ID":171,"tecXCHAIN_BAD_CLAIM_ID":172,"tecXCHAIN_CLAIM_NO_QUORUM":173,"tecXCHAIN_PROOF_UNKNOWN_KEY":174,"tecXCHAIN_CREATE_ACCOUNT_NONXRP_ISSUE":175,"tecXCHAIN_WRONG_CHAIN":176,"tecXCHAIN_REWARD_MISMATCH":177,"tecXCHAIN_NO_SIGNERS_LIST":178,"tecXCHAIN_SENDING_ACCOUNT_MISMATCH":179,"tecXCHAIN_INSUFF_CREATE_AMOUNT":180,"tecXCHAIN_ACCOUNT_CREATE_PAST":181,"tecXCHAIN_ACCOUNT_CREATE_TOO_MANY":182,"tecXCHAIN_PAYMENT_FAILED":183,"tecXCHAIN_SELF_COMMIT":184,"tecXCHAIN_BAD_PUBLIC_KEY_ACCOUNT_PAIR":185,"tecXCHAIN_CREATE_ACCOUNT_DISABLED":186,"tecEMPTY_DID":187},"TRANSACTION_TYPES":{"Invalid":-1,"Payment":0,"EscrowCreate":1,"EscrowFinish":2,"AccountSet":3,"EscrowCancel":4,"SetRegularKey":5,"NickNameSet":6,"OfferCreate":7,"OfferCancel":8,"Contract":9,"TicketCreate":10,"TicketCancel":11,"SignerListSet":12,"PaymentChannelCreate":13,"PaymentChannelFund":14,"PaymentChannelClaim":15,"CheckCreate":16,"CheckCash":17,"CheckCancel":18,"DepositPreauth":19,"TrustSet":20,"AccountDelete":21,"SetHook":22,"NFTokenMint":25,"NFTokenBurn":26,"NFTokenCreateOffer":27,"NFTokenCancelOffer":28,"NFTokenAcceptOffer":29,"Clawback":30,"AMMCreate":35,"AMMDeposit":36,"AMMWithdraw":37,"AMMVote":38,"AMMBid":39,"AMMDelete":40,"XChainCreateClaimID":41,"XChainCommit":42,"XChainClaim":43,"XChainAccountCreateCommit":44,"XChainAddClaimAttestation":45,"XChainAddAccountCreateAttestation":46,"XChainModifyBridge":47,"XChainCreateBridge":48,"DIDSet":49,"DIDDelete":50,"EnableAmendment":100,"SetFee":101,"UNLModify":102}}');
22799
+ module.exports = /*#__PURE__*/JSON.parse('{"TYPES":{"Done":-1,"Unknown":-2,"NotPresent":0,"UInt16":1,"UInt32":2,"UInt64":3,"Hash128":4,"Hash256":5,"Amount":6,"Blob":7,"AccountID":8,"STObject":14,"STArray":15,"UInt8":16,"Hash160":17,"PathSet":18,"Vector256":19,"UInt96":20,"UInt192":21,"UInt384":22,"UInt512":23,"Issue":24,"XChainBridge":25,"Currency":26,"Transaction":10001,"LedgerEntry":10002,"Validation":10003,"Metadata":10004},"LEDGER_ENTRY_TYPES":{"Invalid":-1,"AccountRoot":97,"DirectoryNode":100,"RippleState":114,"Ticket":84,"SignerList":83,"Offer":111,"Bridge":105,"LedgerHashes":104,"Amendments":102,"XChainOwnedClaimID":113,"XChainOwnedCreateAccountClaimID":116,"FeeSettings":115,"Escrow":117,"PayChannel":120,"Check":67,"DepositPreauth":112,"NegativeUNL":78,"NFTokenPage":80,"NFTokenOffer":55,"AMM":121,"DID":73,"Oracle":128,"Any":-3,"Child":-2,"Nickname":110,"Contract":99,"GeneratorMap":103},"FIELDS":[["Generic",{"nth":0,"isVLEncoded":false,"isSerialized":false,"isSigningField":false,"type":"Unknown"}],["Invalid",{"nth":-1,"isVLEncoded":false,"isSerialized":false,"isSigningField":false,"type":"Unknown"}],["ObjectEndMarker",{"nth":1,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["ArrayEndMarker",{"nth":1,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["hash",{"nth":257,"isVLEncoded":false,"isSerialized":false,"isSigningField":false,"type":"Hash256"}],["index",{"nth":258,"isVLEncoded":false,"isSerialized":false,"isSigningField":false,"type":"Hash256"}],["taker_gets_funded",{"nth":258,"isVLEncoded":false,"isSerialized":false,"isSigningField":false,"type":"Amount"}],["taker_pays_funded",{"nth":259,"isVLEncoded":false,"isSerialized":false,"isSigningField":false,"type":"Amount"}],["LedgerEntry",{"nth":257,"isVLEncoded":false,"isSerialized":false,"isSigningField":false,"type":"LedgerEntry"}],["Transaction",{"nth":257,"isVLEncoded":false,"isSerialized":false,"isSigningField":false,"type":"Transaction"}],["Validation",{"nth":257,"isVLEncoded":false,"isSerialized":false,"isSigningField":false,"type":"Validation"}],["Metadata",{"nth":257,"isVLEncoded":false,"isSerialized":false,"isSigningField":false,"type":"Metadata"}],["CloseResolution",{"nth":1,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt8"}],["Method",{"nth":2,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt8"}],["TransactionResult",{"nth":3,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt8"}],["Scale",{"nth":4,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt8"}],["TickSize",{"nth":16,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt8"}],["UNLModifyDisabling",{"nth":17,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt8"}],["HookResult",{"nth":18,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt8"}],["WasLockingChainSend",{"nth":19,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt8"}],["LedgerEntryType",{"nth":1,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt16"}],["TransactionType",{"nth":2,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt16"}],["SignerWeight",{"nth":3,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt16"}],["TransferFee",{"nth":4,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt16"}],["TradingFee",{"nth":5,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt16"}],["DiscountedFee",{"nth":6,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt16"}],["Version",{"nth":16,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt16"}],["HookStateChangeCount",{"nth":17,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt16"}],["HookEmitCount",{"nth":18,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt16"}],["HookExecutionIndex",{"nth":19,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt16"}],["HookApiVersion",{"nth":20,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt16"}],["NetworkID",{"nth":1,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["Flags",{"nth":2,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["SourceTag",{"nth":3,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["Sequence",{"nth":4,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["PreviousTxnLgrSeq",{"nth":5,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["LedgerSequence",{"nth":6,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["CloseTime",{"nth":7,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["ParentCloseTime",{"nth":8,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["SigningTime",{"nth":9,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["Expiration",{"nth":10,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["TransferRate",{"nth":11,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["WalletSize",{"nth":12,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["OwnerCount",{"nth":13,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["DestinationTag",{"nth":14,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["LastUpdateTime",{"nth":15,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["HighQualityIn",{"nth":16,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["HighQualityOut",{"nth":17,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["LowQualityIn",{"nth":18,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["LowQualityOut",{"nth":19,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["QualityIn",{"nth":20,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["QualityOut",{"nth":21,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["StampEscrow",{"nth":22,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["BondAmount",{"nth":23,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["LoadFee",{"nth":24,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["OfferSequence",{"nth":25,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["FirstLedgerSequence",{"nth":26,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["LastLedgerSequence",{"nth":27,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["TransactionIndex",{"nth":28,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["OperationLimit",{"nth":29,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["ReferenceFeeUnits",{"nth":30,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["ReserveBase",{"nth":31,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["ReserveIncrement",{"nth":32,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["SetFlag",{"nth":33,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["ClearFlag",{"nth":34,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["SignerQuorum",{"nth":35,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["CancelAfter",{"nth":36,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["FinishAfter",{"nth":37,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["SignerListID",{"nth":38,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["SettleDelay",{"nth":39,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["TicketCount",{"nth":40,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["TicketSequence",{"nth":41,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["NFTokenTaxon",{"nth":42,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["MintedNFTokens",{"nth":43,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["BurnedNFTokens",{"nth":44,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["HookStateCount",{"nth":45,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["EmitGeneration",{"nth":46,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["VoteWeight",{"nth":48,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["FirstNFTokenSequence",{"nth":50,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["OracleDocumentID",{"nth":51,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt32"}],["IndexNext",{"nth":1,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["IndexPrevious",{"nth":2,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["BookNode",{"nth":3,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["OwnerNode",{"nth":4,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["BaseFee",{"nth":5,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["ExchangeRate",{"nth":6,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["LowNode",{"nth":7,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["HighNode",{"nth":8,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["DestinationNode",{"nth":9,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["Cookie",{"nth":10,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["ServerVersion",{"nth":11,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["NFTokenOfferNode",{"nth":12,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["EmitBurden",{"nth":13,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["HookOn",{"nth":16,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["HookInstructionCount",{"nth":17,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["HookReturnCode",{"nth":18,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["ReferenceCount",{"nth":19,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["XChainClaimID",{"nth":20,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["XChainAccountCreateCount",{"nth":21,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["XChainAccountClaimCount",{"nth":22,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["AssetPrice",{"nth":23,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"UInt64"}],["EmailHash",{"nth":1,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash128"}],["TakerPaysCurrency",{"nth":1,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash160"}],["TakerPaysIssuer",{"nth":2,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash160"}],["TakerGetsCurrency",{"nth":3,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash160"}],["TakerGetsIssuer",{"nth":4,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash160"}],["LedgerHash",{"nth":1,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["ParentHash",{"nth":2,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["TransactionHash",{"nth":3,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["AccountHash",{"nth":4,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["PreviousTxnID",{"nth":5,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["LedgerIndex",{"nth":6,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["WalletLocator",{"nth":7,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["RootIndex",{"nth":8,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["AccountTxnID",{"nth":9,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["NFTokenID",{"nth":10,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["EmitParentTxnID",{"nth":11,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["EmitNonce",{"nth":12,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["EmitHookHash",{"nth":13,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["AMMID",{"nth":14,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["BookDirectory",{"nth":16,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["InvoiceID",{"nth":17,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["Nickname",{"nth":18,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["Amendment",{"nth":19,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["Digest",{"nth":21,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["Channel",{"nth":22,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["ConsensusHash",{"nth":23,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["CheckID",{"nth":24,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["ValidatedHash",{"nth":25,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["PreviousPageMin",{"nth":26,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["NextPageMin",{"nth":27,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["NFTokenBuyOffer",{"nth":28,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["NFTokenSellOffer",{"nth":29,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["HookStateKey",{"nth":30,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["HookHash",{"nth":31,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["HookNamespace",{"nth":32,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["HookSetTxnID",{"nth":33,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Hash256"}],["Amount",{"nth":1,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["Balance",{"nth":2,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["LimitAmount",{"nth":3,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["TakerPays",{"nth":4,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["TakerGets",{"nth":5,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["LowLimit",{"nth":6,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["HighLimit",{"nth":7,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["Fee",{"nth":8,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["SendMax",{"nth":9,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["DeliverMin",{"nth":10,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["Amount2",{"nth":11,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["BidMin",{"nth":12,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["BidMax",{"nth":13,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["MinimumOffer",{"nth":16,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["RippleEscrow",{"nth":17,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["DeliveredAmount",{"nth":18,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["NFTokenBrokerFee",{"nth":19,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["BaseFeeDrops",{"nth":22,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["ReserveBaseDrops",{"nth":23,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["ReserveIncrementDrops",{"nth":24,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["LPTokenOut",{"nth":25,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["LPTokenIn",{"nth":26,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["EPrice",{"nth":27,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["Price",{"nth":28,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["SignatureReward",{"nth":29,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["MinAccountCreateAmount",{"nth":30,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["LPTokenBalance",{"nth":31,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Amount"}],["PublicKey",{"nth":1,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["MessageKey",{"nth":2,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["SigningPubKey",{"nth":3,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["TxnSignature",{"nth":4,"isVLEncoded":true,"isSerialized":true,"isSigningField":false,"type":"Blob"}],["URI",{"nth":5,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["Signature",{"nth":6,"isVLEncoded":true,"isSerialized":true,"isSigningField":false,"type":"Blob"}],["Domain",{"nth":7,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["FundCode",{"nth":8,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["RemoveCode",{"nth":9,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["ExpireCode",{"nth":10,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["CreateCode",{"nth":11,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["MemoType",{"nth":12,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["MemoData",{"nth":13,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["MemoFormat",{"nth":14,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["Fulfillment",{"nth":16,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["Condition",{"nth":17,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["MasterSignature",{"nth":18,"isVLEncoded":true,"isSerialized":true,"isSigningField":false,"type":"Blob"}],["UNLModifyValidator",{"nth":19,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["ValidatorToDisable",{"nth":20,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["ValidatorToReEnable",{"nth":21,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["HookStateData",{"nth":22,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["HookReturnString",{"nth":23,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["HookParameterName",{"nth":24,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["HookParameterValue",{"nth":25,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["DIDDocument",{"nth":26,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["Data",{"nth":27,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["AssetClass",{"nth":28,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["Provider",{"nth":29,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Blob"}],["Account",{"nth":1,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["Owner",{"nth":2,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["Destination",{"nth":3,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["Issuer",{"nth":4,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["Authorize",{"nth":5,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["Unauthorize",{"nth":6,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["RegularKey",{"nth":8,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["NFTokenMinter",{"nth":9,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["EmitCallback",{"nth":10,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["HookAccount",{"nth":16,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["OtherChainSource",{"nth":18,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["OtherChainDestination",{"nth":19,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["AttestationSignerAccount",{"nth":20,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["AttestationRewardAccount",{"nth":21,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["LockingChainDoor",{"nth":22,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["IssuingChainDoor",{"nth":23,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"AccountID"}],["Indexes",{"nth":1,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Vector256"}],["Hashes",{"nth":2,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Vector256"}],["Amendments",{"nth":3,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Vector256"}],["NFTokenOffers",{"nth":4,"isVLEncoded":true,"isSerialized":true,"isSigningField":true,"type":"Vector256"}],["Paths",{"nth":1,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"PathSet"}],["BaseAsset",{"nth":1,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Currency"}],["QuoteAsset",{"nth":2,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Currency"}],["LockingChainIssue",{"nth":1,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Issue"}],["IssuingChainIssue",{"nth":2,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Issue"}],["Asset",{"nth":3,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Issue"}],["Asset2",{"nth":4,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"Issue"}],["XChainBridge",{"nth":1,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"XChainBridge"}],["TransactionMetaData",{"nth":2,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["CreatedNode",{"nth":3,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["DeletedNode",{"nth":4,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["ModifiedNode",{"nth":5,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["PreviousFields",{"nth":6,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["FinalFields",{"nth":7,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["NewFields",{"nth":8,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["TemplateEntry",{"nth":9,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["Memo",{"nth":10,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["SignerEntry",{"nth":11,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["NFToken",{"nth":12,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["EmitDetails",{"nth":13,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["Hook",{"nth":14,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["Signer",{"nth":16,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["Majority",{"nth":18,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["DisabledValidator",{"nth":19,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["EmittedTxn",{"nth":20,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["HookExecution",{"nth":21,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["HookDefinition",{"nth":22,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["HookParameter",{"nth":23,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["HookGrant",{"nth":24,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["VoteEntry",{"nth":25,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["AuctionSlot",{"nth":26,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["AuthAccount",{"nth":27,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["XChainClaimProofSig",{"nth":28,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["XChainCreateAccountProofSig",{"nth":29,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["XChainClaimAttestationCollectionElement",{"nth":30,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["XChainCreateAccountAttestationCollectionElement",{"nth":31,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["PriceData",{"nth":32,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STObject"}],["Signers",{"nth":3,"isVLEncoded":false,"isSerialized":true,"isSigningField":false,"type":"STArray"}],["SignerEntries",{"nth":4,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["Template",{"nth":5,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["Necessary",{"nth":6,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["Sufficient",{"nth":7,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["AffectedNodes",{"nth":8,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["Memos",{"nth":9,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["NFTokens",{"nth":10,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["Hooks",{"nth":11,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["VoteSlots",{"nth":12,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["Majorities",{"nth":16,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["DisabledValidators",{"nth":17,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["HookExecutions",{"nth":18,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["HookParameters",{"nth":19,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["HookGrants",{"nth":20,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["XChainClaimAttestations",{"nth":21,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["XChainCreateAccountAttestations",{"nth":22,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["PriceDataSeries",{"nth":24,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}],["AuthAccounts",{"nth":25,"isVLEncoded":false,"isSerialized":true,"isSigningField":true,"type":"STArray"}]],"TRANSACTION_RESULTS":{"telLOCAL_ERROR":-399,"telBAD_DOMAIN":-398,"telBAD_PATH_COUNT":-397,"telBAD_PUBLIC_KEY":-396,"telFAILED_PROCESSING":-395,"telINSUF_FEE_P":-394,"telNO_DST_PARTIAL":-393,"telCAN_NOT_QUEUE":-392,"telCAN_NOT_QUEUE_BALANCE":-391,"telCAN_NOT_QUEUE_BLOCKS":-390,"telCAN_NOT_QUEUE_BLOCKED":-389,"telCAN_NOT_QUEUE_FEE":-388,"telCAN_NOT_QUEUE_FULL":-387,"telWRONG_NETWORK":-386,"telREQUIRES_NETWORK_ID":-385,"telNETWORK_ID_MAKES_TX_NON_CANONICAL":-384,"telENV_RPC_FAILED":-383,"temMALFORMED":-299,"temBAD_AMOUNT":-298,"temBAD_CURRENCY":-297,"temBAD_EXPIRATION":-296,"temBAD_FEE":-295,"temBAD_ISSUER":-294,"temBAD_LIMIT":-293,"temBAD_OFFER":-292,"temBAD_PATH":-291,"temBAD_PATH_LOOP":-290,"temBAD_REGKEY":-289,"temBAD_SEND_XRP_LIMIT":-288,"temBAD_SEND_XRP_MAX":-287,"temBAD_SEND_XRP_NO_DIRECT":-286,"temBAD_SEND_XRP_PARTIAL":-285,"temBAD_SEND_XRP_PATHS":-284,"temBAD_SEQUENCE":-283,"temBAD_SIGNATURE":-282,"temBAD_SRC_ACCOUNT":-281,"temBAD_TRANSFER_RATE":-280,"temDST_IS_SRC":-279,"temDST_NEEDED":-278,"temINVALID":-277,"temINVALID_FLAG":-276,"temREDUNDANT":-275,"temRIPPLE_EMPTY":-274,"temDISABLED":-273,"temBAD_SIGNER":-272,"temBAD_QUORUM":-271,"temBAD_WEIGHT":-270,"temBAD_TICK_SIZE":-269,"temINVALID_ACCOUNT_ID":-268,"temCANNOT_PREAUTH_SELF":-267,"temINVALID_COUNT":-266,"temUNCERTAIN":-265,"temUNKNOWN":-264,"temSEQ_AND_TICKET":-263,"temBAD_NFTOKEN_TRANSFER_FEE":-262,"temBAD_AMM_TOKENS":-261,"temXCHAIN_EQUAL_DOOR_ACCOUNTS":-260,"temXCHAIN_BAD_PROOF":-259,"temXCHAIN_BRIDGE_BAD_ISSUES":-258,"temXCHAIN_BRIDGE_NONDOOR_OWNER":-257,"temXCHAIN_BRIDGE_BAD_MIN_ACCOUNT_CREATE_AMOUNT":-256,"temXCHAIN_BRIDGE_BAD_REWARD_AMOUNT":-255,"temEMPTY_DID":-254,"temARRAY_EMPTY":-253,"temARRAY_TOO_LARGE":-252,"tefFAILURE":-199,"tefALREADY":-198,"tefBAD_ADD_AUTH":-197,"tefBAD_AUTH":-196,"tefBAD_LEDGER":-195,"tefCREATED":-194,"tefEXCEPTION":-193,"tefINTERNAL":-192,"tefNO_AUTH_REQUIRED":-191,"tefPAST_SEQ":-190,"tefWRONG_PRIOR":-189,"tefMASTER_DISABLED":-188,"tefMAX_LEDGER":-187,"tefBAD_SIGNATURE":-186,"tefBAD_QUORUM":-185,"tefNOT_MULTI_SIGNING":-184,"tefBAD_AUTH_MASTER":-183,"tefINVARIANT_FAILED":-182,"tefTOO_BIG":-181,"tefNO_TICKET":-180,"tefNFTOKEN_IS_NOT_TRANSFERABLE":-179,"terRETRY":-99,"terFUNDS_SPENT":-98,"terINSUF_FEE_B":-97,"terNO_ACCOUNT":-96,"terNO_AUTH":-95,"terNO_LINE":-94,"terOWNERS":-93,"terPRE_SEQ":-92,"terLAST":-91,"terNO_RIPPLE":-90,"terQUEUED":-89,"terPRE_TICKET":-88,"terNO_AMM":-87,"tesSUCCESS":0,"tecCLAIM":100,"tecPATH_PARTIAL":101,"tecUNFUNDED_ADD":102,"tecUNFUNDED_OFFER":103,"tecUNFUNDED_PAYMENT":104,"tecFAILED_PROCESSING":105,"tecDIR_FULL":121,"tecINSUF_RESERVE_LINE":122,"tecINSUF_RESERVE_OFFER":123,"tecNO_DST":124,"tecNO_DST_INSUF_XRP":125,"tecNO_LINE_INSUF_RESERVE":126,"tecNO_LINE_REDUNDANT":127,"tecPATH_DRY":128,"tecUNFUNDED":129,"tecNO_ALTERNATIVE_KEY":130,"tecNO_REGULAR_KEY":131,"tecOWNERS":132,"tecNO_ISSUER":133,"tecNO_AUTH":134,"tecNO_LINE":135,"tecINSUFF_FEE":136,"tecFROZEN":137,"tecNO_TARGET":138,"tecNO_PERMISSION":139,"tecNO_ENTRY":140,"tecINSUFFICIENT_RESERVE":141,"tecNEED_MASTER_KEY":142,"tecDST_TAG_NEEDED":143,"tecINTERNAL":144,"tecOVERSIZE":145,"tecCRYPTOCONDITION_ERROR":146,"tecINVARIANT_FAILED":147,"tecEXPIRED":148,"tecDUPLICATE":149,"tecKILLED":150,"tecHAS_OBLIGATIONS":151,"tecTOO_SOON":152,"tecHOOK_REJECTED":153,"tecMAX_SEQUENCE_REACHED":154,"tecNO_SUITABLE_NFTOKEN_PAGE":155,"tecNFTOKEN_BUY_SELL_MISMATCH":156,"tecNFTOKEN_OFFER_TYPE_MISMATCH":157,"tecCANT_ACCEPT_OWN_NFTOKEN_OFFER":158,"tecINSUFFICIENT_FUNDS":159,"tecOBJECT_NOT_FOUND":160,"tecINSUFFICIENT_PAYMENT":161,"tecUNFUNDED_AMM":162,"tecAMM_BALANCE":163,"tecAMM_FAILED":164,"tecAMM_INVALID_TOKENS":165,"tecAMM_EMPTY":166,"tecAMM_NOT_EMPTY":167,"tecAMM_ACCOUNT":168,"tecINCOMPLETE":169,"tecXCHAIN_BAD_TRANSFER_ISSUE":170,"tecXCHAIN_NO_CLAIM_ID":171,"tecXCHAIN_BAD_CLAIM_ID":172,"tecXCHAIN_CLAIM_NO_QUORUM":173,"tecXCHAIN_PROOF_UNKNOWN_KEY":174,"tecXCHAIN_CREATE_ACCOUNT_NONXRP_ISSUE":175,"tecXCHAIN_WRONG_CHAIN":176,"tecXCHAIN_REWARD_MISMATCH":177,"tecXCHAIN_NO_SIGNERS_LIST":178,"tecXCHAIN_SENDING_ACCOUNT_MISMATCH":179,"tecXCHAIN_INSUFF_CREATE_AMOUNT":180,"tecXCHAIN_ACCOUNT_CREATE_PAST":181,"tecXCHAIN_ACCOUNT_CREATE_TOO_MANY":182,"tecXCHAIN_PAYMENT_FAILED":183,"tecXCHAIN_SELF_COMMIT":184,"tecXCHAIN_BAD_PUBLIC_KEY_ACCOUNT_PAIR":185,"tecXCHAIN_CREATE_ACCOUNT_DISABLED":186,"tecEMPTY_DID":187,"tecINVALID_UPDATE_TIME":188,"tecTOKEN_PAIR_NOT_FOUND":189,"tecARRAY_EMPTY":190,"tecARRAY_TOO_LARGE":191},"TRANSACTION_TYPES":{"Invalid":-1,"Payment":0,"EscrowCreate":1,"EscrowFinish":2,"AccountSet":3,"EscrowCancel":4,"SetRegularKey":5,"NickNameSet":6,"OfferCreate":7,"OfferCancel":8,"Contract":9,"TicketCreate":10,"TicketCancel":11,"SignerListSet":12,"PaymentChannelCreate":13,"PaymentChannelFund":14,"PaymentChannelClaim":15,"CheckCreate":16,"CheckCash":17,"CheckCancel":18,"DepositPreauth":19,"TrustSet":20,"AccountDelete":21,"SetHook":22,"NFTokenMint":25,"NFTokenBurn":26,"NFTokenCreateOffer":27,"NFTokenCancelOffer":28,"NFTokenAcceptOffer":29,"Clawback":30,"AMMCreate":35,"AMMDeposit":36,"AMMWithdraw":37,"AMMVote":38,"AMMBid":39,"AMMDelete":40,"XChainCreateClaimID":41,"XChainCommit":42,"XChainClaim":43,"XChainAccountCreateCommit":44,"XChainAddClaimAttestation":45,"XChainAddAccountCreateAttestation":46,"XChainModifyBridge":47,"XChainCreateBridge":48,"DIDSet":49,"DIDDelete":50,"OracleSet":51,"OracleDelete":52,"EnableAmendment":100,"SetFee":101,"UNLModify":102}}');
22612
22800
 
22613
22801
  /***/ }),
22614
22802
 
@@ -22619,7 +22807,7 @@ module.exports = JSON.parse('{"TYPES":{"Done":-1,"Unknown":-2,"NotPresent":0,"UI
22619
22807
  /***/ ((module) => {
22620
22808
 
22621
22809
  "use strict";
22622
- module.exports = JSON.parse('["A","ABE","ACE","ACT","AD","ADA","ADD","AGO","AID","AIM","AIR","ALL","ALP","AM","AMY","AN","ANA","AND","ANN","ANT","ANY","APE","APS","APT","ARC","ARE","ARK","ARM","ART","AS","ASH","ASK","AT","ATE","AUG","AUK","AVE","AWE","AWK","AWL","AWN","AX","AYE","BAD","BAG","BAH","BAM","BAN","BAR","BAT","BAY","BE","BED","BEE","BEG","BEN","BET","BEY","BIB","BID","BIG","BIN","BIT","BOB","BOG","BON","BOO","BOP","BOW","BOY","BUB","BUD","BUG","BUM","BUN","BUS","BUT","BUY","BY","BYE","CAB","CAL","CAM","CAN","CAP","CAR","CAT","CAW","COD","COG","COL","CON","COO","COP","COT","COW","COY","CRY","CUB","CUE","CUP","CUR","CUT","DAB","DAD","DAM","DAN","DAR","DAY","DEE","DEL","DEN","DES","DEW","DID","DIE","DIG","DIN","DIP","DO","DOE","DOG","DON","DOT","DOW","DRY","DUB","DUD","DUE","DUG","DUN","EAR","EAT","ED","EEL","EGG","EGO","ELI","ELK","ELM","ELY","EM","END","EST","ETC","EVA","EVE","EWE","EYE","FAD","FAN","FAR","FAT","FAY","FED","FEE","FEW","FIB","FIG","FIN","FIR","FIT","FLO","FLY","FOE","FOG","FOR","FRY","FUM","FUN","FUR","GAB","GAD","GAG","GAL","GAM","GAP","GAS","GAY","GEE","GEL","GEM","GET","GIG","GIL","GIN","GO","GOT","GUM","GUN","GUS","GUT","GUY","GYM","GYP","HA","HAD","HAL","HAM","HAN","HAP","HAS","HAT","HAW","HAY","HE","HEM","HEN","HER","HEW","HEY","HI","HID","HIM","HIP","HIS","HIT","HO","HOB","HOC","HOE","HOG","HOP","HOT","HOW","HUB","HUE","HUG","HUH","HUM","HUT","I","ICY","IDA","IF","IKE","ILL","INK","INN","IO","ION","IQ","IRA","IRE","IRK","IS","IT","ITS","IVY","JAB","JAG","JAM","JAN","JAR","JAW","JAY","JET","JIG","JIM","JO","JOB","JOE","JOG","JOT","JOY","JUG","JUT","KAY","KEG","KEN","KEY","KID","KIM","KIN","KIT","LA","LAB","LAC","LAD","LAG","LAM","LAP","LAW","LAY","LEA","LED","LEE","LEG","LEN","LEO","LET","LEW","LID","LIE","LIN","LIP","LIT","LO","LOB","LOG","LOP","LOS","LOT","LOU","LOW","LOY","LUG","LYE","MA","MAC","MAD","MAE","MAN","MAO","MAP","MAT","MAW","MAY","ME","MEG","MEL","MEN","MET","MEW","MID","MIN","MIT","MOB","MOD","MOE","MOO","MOP","MOS","MOT","MOW","MUD","MUG","MUM","MY","NAB","NAG","NAN","NAP","NAT","NAY","NE","NED","NEE","NET","NEW","NIB","NIL","NIP","NIT","NO","NOB","NOD","NON","NOR","NOT","NOV","NOW","NU","NUN","NUT","O","OAF","OAK","OAR","OAT","ODD","ODE","OF","OFF","OFT","OH","OIL","OK","OLD","ON","ONE","OR","ORB","ORE","ORR","OS","OTT","OUR","OUT","OVA","OW","OWE","OWL","OWN","OX","PA","PAD","PAL","PAM","PAN","PAP","PAR","PAT","PAW","PAY","PEA","PEG","PEN","PEP","PER","PET","PEW","PHI","PI","PIE","PIN","PIT","PLY","PO","POD","POE","POP","POT","POW","PRO","PRY","PUB","PUG","PUN","PUP","PUT","QUO","RAG","RAM","RAN","RAP","RAT","RAW","RAY","REB","RED","REP","RET","RIB","RID","RIG","RIM","RIO","RIP","ROB","ROD","ROE","RON","ROT","ROW","ROY","RUB","RUE","RUG","RUM","RUN","RYE","SAC","SAD","SAG","SAL","SAM","SAN","SAP","SAT","SAW","SAY","SEA","SEC","SEE","SEN","SET","SEW","SHE","SHY","SIN","SIP","SIR","SIS","SIT","SKI","SKY","SLY","SO","SOB","SOD","SON","SOP","SOW","SOY","SPA","SPY","SUB","SUD","SUE","SUM","SUN","SUP","TAB","TAD","TAG","TAN","TAP","TAR","TEA","TED","TEE","TEN","THE","THY","TIC","TIE","TIM","TIN","TIP","TO","TOE","TOG","TOM","TON","TOO","TOP","TOW","TOY","TRY","TUB","TUG","TUM","TUN","TWO","UN","UP","US","USE","VAN","VAT","VET","VIE","WAD","WAG","WAR","WAS","WAY","WE","WEB","WED","WEE","WET","WHO","WHY","WIN","WIT","WOK","WON","WOO","WOW","WRY","WU","YAM","YAP","YAW","YE","YEA","YES","YET","YOU","ABED","ABEL","ABET","ABLE","ABUT","ACHE","ACID","ACME","ACRE","ACTA","ACTS","ADAM","ADDS","ADEN","AFAR","AFRO","AGEE","AHEM","AHOY","AIDA","AIDE","AIDS","AIRY","AJAR","AKIN","ALAN","ALEC","ALGA","ALIA","ALLY","ALMA","ALOE","ALSO","ALTO","ALUM","ALVA","AMEN","AMES","AMID","AMMO","AMOK","AMOS","AMRA","ANDY","ANEW","ANNA","ANNE","ANTE","ANTI","AQUA","ARAB","ARCH","AREA","ARGO","ARID","ARMY","ARTS","ARTY","ASIA","ASKS","ATOM","AUNT","AURA","AUTO","AVER","AVID","AVIS","AVON","AVOW","AWAY","AWRY","BABE","BABY","BACH","BACK","BADE","BAIL","BAIT","BAKE","BALD","BALE","BALI","BALK","BALL","BALM","BAND","BANE","BANG","BANK","BARB","BARD","BARE","BARK","BARN","BARR","BASE","BASH","BASK","BASS","BATE","BATH","BAWD","BAWL","BEAD","BEAK","BEAM","BEAN","BEAR","BEAT","BEAU","BECK","BEEF","BEEN","BEER","BEET","BELA","BELL","BELT","BEND","BENT","BERG","BERN","BERT","BESS","BEST","BETA","BETH","BHOY","BIAS","BIDE","BIEN","BILE","BILK","BILL","BIND","BING","BIRD","BITE","BITS","BLAB","BLAT","BLED","BLEW","BLOB","BLOC","BLOT","BLOW","BLUE","BLUM","BLUR","BOAR","BOAT","BOCA","BOCK","BODE","BODY","BOGY","BOHR","BOIL","BOLD","BOLO","BOLT","BOMB","BONA","BOND","BONE","BONG","BONN","BONY","BOOK","BOOM","BOON","BOOT","BORE","BORG","BORN","BOSE","BOSS","BOTH","BOUT","BOWL","BOYD","BRAD","BRAE","BRAG","BRAN","BRAY","BRED","BREW","BRIG","BRIM","BROW","BUCK","BUDD","BUFF","BULB","BULK","BULL","BUNK","BUNT","BUOY","BURG","BURL","BURN","BURR","BURT","BURY","BUSH","BUSS","BUST","BUSY","BYTE","CADY","CAFE","CAGE","CAIN","CAKE","CALF","CALL","CALM","CAME","CANE","CANT","CARD","CARE","CARL","CARR","CART","CASE","CASH","CASK","CAST","CAVE","CEIL","CELL","CENT","CERN","CHAD","CHAR","CHAT","CHAW","CHEF","CHEN","CHEW","CHIC","CHIN","CHOU","CHOW","CHUB","CHUG","CHUM","CITE","CITY","CLAD","CLAM","CLAN","CLAW","CLAY","CLOD","CLOG","CLOT","CLUB","CLUE","COAL","COAT","COCA","COCK","COCO","CODA","CODE","CODY","COED","COIL","COIN","COKE","COLA","COLD","COLT","COMA","COMB","COME","COOK","COOL","COON","COOT","CORD","CORE","CORK","CORN","COST","COVE","COWL","CRAB","CRAG","CRAM","CRAY","CREW","CRIB","CROW","CRUD","CUBA","CUBE","CUFF","CULL","CULT","CUNY","CURB","CURD","CURE","CURL","CURT","CUTS","DADE","DALE","DAME","DANA","DANE","DANG","DANK","DARE","DARK","DARN","DART","DASH","DATA","DATE","DAVE","DAVY","DAWN","DAYS","DEAD","DEAF","DEAL","DEAN","DEAR","DEBT","DECK","DEED","DEEM","DEER","DEFT","DEFY","DELL","DENT","DENY","DESK","DIAL","DICE","DIED","DIET","DIME","DINE","DING","DINT","DIRE","DIRT","DISC","DISH","DISK","DIVE","DOCK","DOES","DOLE","DOLL","DOLT","DOME","DONE","DOOM","DOOR","DORA","DOSE","DOTE","DOUG","DOUR","DOVE","DOWN","DRAB","DRAG","DRAM","DRAW","DREW","DRUB","DRUG","DRUM","DUAL","DUCK","DUCT","DUEL","DUET","DUKE","DULL","DUMB","DUNE","DUNK","DUSK","DUST","DUTY","EACH","EARL","EARN","EASE","EAST","EASY","EBEN","ECHO","EDDY","EDEN","EDGE","EDGY","EDIT","EDNA","EGAN","ELAN","ELBA","ELLA","ELSE","EMIL","EMIT","EMMA","ENDS","ERIC","EROS","EVEN","EVER","EVIL","EYED","FACE","FACT","FADE","FAIL","FAIN","FAIR","FAKE","FALL","FAME","FANG","FARM","FAST","FATE","FAWN","FEAR","FEAT","FEED","FEEL","FEET","FELL","FELT","FEND","FERN","FEST","FEUD","FIEF","FIGS","FILE","FILL","FILM","FIND","FINE","FINK","FIRE","FIRM","FISH","FISK","FIST","FITS","FIVE","FLAG","FLAK","FLAM","FLAT","FLAW","FLEA","FLED","FLEW","FLIT","FLOC","FLOG","FLOW","FLUB","FLUE","FOAL","FOAM","FOGY","FOIL","FOLD","FOLK","FOND","FONT","FOOD","FOOL","FOOT","FORD","FORE","FORK","FORM","FORT","FOSS","FOUL","FOUR","FOWL","FRAU","FRAY","FRED","FREE","FRET","FREY","FROG","FROM","FUEL","FULL","FUME","FUND","FUNK","FURY","FUSE","FUSS","GAFF","GAGE","GAIL","GAIN","GAIT","GALA","GALE","GALL","GALT","GAME","GANG","GARB","GARY","GASH","GATE","GAUL","GAUR","GAVE","GAWK","GEAR","GELD","GENE","GENT","GERM","GETS","GIBE","GIFT","GILD","GILL","GILT","GINA","GIRD","GIRL","GIST","GIVE","GLAD","GLEE","GLEN","GLIB","GLOB","GLOM","GLOW","GLUE","GLUM","GLUT","GOAD","GOAL","GOAT","GOER","GOES","GOLD","GOLF","GONE","GONG","GOOD","GOOF","GORE","GORY","GOSH","GOUT","GOWN","GRAB","GRAD","GRAY","GREG","GREW","GREY","GRID","GRIM","GRIN","GRIT","GROW","GRUB","GULF","GULL","GUNK","GURU","GUSH","GUST","GWEN","GWYN","HAAG","HAAS","HACK","HAIL","HAIR","HALE","HALF","HALL","HALO","HALT","HAND","HANG","HANK","HANS","HARD","HARK","HARM","HART","HASH","HAST","HATE","HATH","HAUL","HAVE","HAWK","HAYS","HEAD","HEAL","HEAR","HEAT","HEBE","HECK","HEED","HEEL","HEFT","HELD","HELL","HELM","HERB","HERD","HERE","HERO","HERS","HESS","HEWN","HICK","HIDE","HIGH","HIKE","HILL","HILT","HIND","HINT","HIRE","HISS","HIVE","HOBO","HOCK","HOFF","HOLD","HOLE","HOLM","HOLT","HOME","HONE","HONK","HOOD","HOOF","HOOK","HOOT","HORN","HOSE","HOST","HOUR","HOVE","HOWE","HOWL","HOYT","HUCK","HUED","HUFF","HUGE","HUGH","HUGO","HULK","HULL","HUNK","HUNT","HURD","HURL","HURT","HUSH","HYDE","HYMN","IBIS","ICON","IDEA","IDLE","IFFY","INCA","INCH","INTO","IONS","IOTA","IOWA","IRIS","IRMA","IRON","ISLE","ITCH","ITEM","IVAN","JACK","JADE","JAIL","JAKE","JANE","JAVA","JEAN","JEFF","JERK","JESS","JEST","JIBE","JILL","JILT","JIVE","JOAN","JOBS","JOCK","JOEL","JOEY","JOHN","JOIN","JOKE","JOLT","JOVE","JUDD","JUDE","JUDO","JUDY","JUJU","JUKE","JULY","JUNE","JUNK","JUNO","JURY","JUST","JUTE","KAHN","KALE","KANE","KANT","KARL","KATE","KEEL","KEEN","KENO","KENT","KERN","KERR","KEYS","KICK","KILL","KIND","KING","KIRK","KISS","KITE","KLAN","KNEE","KNEW","KNIT","KNOB","KNOT","KNOW","KOCH","KONG","KUDO","KURD","KURT","KYLE","LACE","LACK","LACY","LADY","LAID","LAIN","LAIR","LAKE","LAMB","LAME","LAND","LANE","LANG","LARD","LARK","LASS","LAST","LATE","LAUD","LAVA","LAWN","LAWS","LAYS","LEAD","LEAF","LEAK","LEAN","LEAR","LEEK","LEER","LEFT","LEND","LENS","LENT","LEON","LESK","LESS","LEST","LETS","LIAR","LICE","LICK","LIED","LIEN","LIES","LIEU","LIFE","LIFT","LIKE","LILA","LILT","LILY","LIMA","LIMB","LIME","LIND","LINE","LINK","LINT","LION","LISA","LIST","LIVE","LOAD","LOAF","LOAM","LOAN","LOCK","LOFT","LOGE","LOIS","LOLA","LONE","LONG","LOOK","LOON","LOOT","LORD","LORE","LOSE","LOSS","LOST","LOUD","LOVE","LOWE","LUCK","LUCY","LUGE","LUKE","LULU","LUND","LUNG","LURA","LURE","LURK","LUSH","LUST","LYLE","LYNN","LYON","LYRA","MACE","MADE","MAGI","MAID","MAIL","MAIN","MAKE","MALE","MALI","MALL","MALT","MANA","MANN","MANY","MARC","MARE","MARK","MARS","MART","MARY","MASH","MASK","MASS","MAST","MATE","MATH","MAUL","MAYO","MEAD","MEAL","MEAN","MEAT","MEEK","MEET","MELD","MELT","MEMO","MEND","MENU","MERT","MESH","MESS","MICE","MIKE","MILD","MILE","MILK","MILL","MILT","MIMI","MIND","MINE","MINI","MINK","MINT","MIRE","MISS","MIST","MITE","MITT","MOAN","MOAT","MOCK","MODE","MOLD","MOLE","MOLL","MOLT","MONA","MONK","MONT","MOOD","MOON","MOOR","MOOT","MORE","MORN","MORT","MOSS","MOST","MOTH","MOVE","MUCH","MUCK","MUDD","MUFF","MULE","MULL","MURK","MUSH","MUST","MUTE","MUTT","MYRA","MYTH","NAGY","NAIL","NAIR","NAME","NARY","NASH","NAVE","NAVY","NEAL","NEAR","NEAT","NECK","NEED","NEIL","NELL","NEON","NERO","NESS","NEST","NEWS","NEWT","NIBS","NICE","NICK","NILE","NINA","NINE","NOAH","NODE","NOEL","NOLL","NONE","NOOK","NOON","NORM","NOSE","NOTE","NOUN","NOVA","NUDE","NULL","NUMB","OATH","OBEY","OBOE","ODIN","OHIO","OILY","OINT","OKAY","OLAF","OLDY","OLGA","OLIN","OMAN","OMEN","OMIT","ONCE","ONES","ONLY","ONTO","ONUS","ORAL","ORGY","OSLO","OTIS","OTTO","OUCH","OUST","OUTS","OVAL","OVEN","OVER","OWLY","OWNS","QUAD","QUIT","QUOD","RACE","RACK","RACY","RAFT","RAGE","RAID","RAIL","RAIN","RAKE","RANK","RANT","RARE","RASH","RATE","RAVE","RAYS","READ","REAL","REAM","REAR","RECK","REED","REEF","REEK","REEL","REID","REIN","RENA","REND","RENT","REST","RICE","RICH","RICK","RIDE","RIFT","RILL","RIME","RING","RINK","RISE","RISK","RITE","ROAD","ROAM","ROAR","ROBE","ROCK","RODE","ROIL","ROLL","ROME","ROOD","ROOF","ROOK","ROOM","ROOT","ROSA","ROSE","ROSS","ROSY","ROTH","ROUT","ROVE","ROWE","ROWS","RUBE","RUBY","RUDE","RUDY","RUIN","RULE","RUNG","RUNS","RUNT","RUSE","RUSH","RUSK","RUSS","RUST","RUTH","SACK","SAFE","SAGE","SAID","SAIL","SALE","SALK","SALT","SAME","SAND","SANE","SANG","SANK","SARA","SAUL","SAVE","SAYS","SCAN","SCAR","SCAT","SCOT","SEAL","SEAM","SEAR","SEAT","SEED","SEEK","SEEM","SEEN","SEES","SELF","SELL","SEND","SENT","SETS","SEWN","SHAG","SHAM","SHAW","SHAY","SHED","SHIM","SHIN","SHOD","SHOE","SHOT","SHOW","SHUN","SHUT","SICK","SIDE","SIFT","SIGH","SIGN","SILK","SILL","SILO","SILT","SINE","SING","SINK","SIRE","SITE","SITS","SITU","SKAT","SKEW","SKID","SKIM","SKIN","SKIT","SLAB","SLAM","SLAT","SLAY","SLED","SLEW","SLID","SLIM","SLIT","SLOB","SLOG","SLOT","SLOW","SLUG","SLUM","SLUR","SMOG","SMUG","SNAG","SNOB","SNOW","SNUB","SNUG","SOAK","SOAR","SOCK","SODA","SOFA","SOFT","SOIL","SOLD","SOME","SONG","SOON","SOOT","SORE","SORT","SOUL","SOUR","SOWN","STAB","STAG","STAN","STAR","STAY","STEM","STEW","STIR","STOW","STUB","STUN","SUCH","SUDS","SUIT","SULK","SUMS","SUNG","SUNK","SURE","SURF","SWAB","SWAG","SWAM","SWAN","SWAT","SWAY","SWIM","SWUM","TACK","TACT","TAIL","TAKE","TALE","TALK","TALL","TANK","TASK","TATE","TAUT","TEAL","TEAM","TEAR","TECH","TEEM","TEEN","TEET","TELL","TEND","TENT","TERM","TERN","TESS","TEST","THAN","THAT","THEE","THEM","THEN","THEY","THIN","THIS","THUD","THUG","TICK","TIDE","TIDY","TIED","TIER","TILE","TILL","TILT","TIME","TINA","TINE","TINT","TINY","TIRE","TOAD","TOGO","TOIL","TOLD","TOLL","TONE","TONG","TONY","TOOK","TOOL","TOOT","TORE","TORN","TOTE","TOUR","TOUT","TOWN","TRAG","TRAM","TRAY","TREE","TREK","TRIG","TRIM","TRIO","TROD","TROT","TROY","TRUE","TUBA","TUBE","TUCK","TUFT","TUNA","TUNE","TUNG","TURF","TURN","TUSK","TWIG","TWIN","TWIT","ULAN","UNIT","URGE","USED","USER","USES","UTAH","VAIL","VAIN","VALE","VARY","VASE","VAST","VEAL","VEDA","VEIL","VEIN","VEND","VENT","VERB","VERY","VETO","VICE","VIEW","VINE","VISE","VOID","VOLT","VOTE","WACK","WADE","WAGE","WAIL","WAIT","WAKE","WALE","WALK","WALL","WALT","WAND","WANE","WANG","WANT","WARD","WARM","WARN","WART","WASH","WAST","WATS","WATT","WAVE","WAVY","WAYS","WEAK","WEAL","WEAN","WEAR","WEED","WEEK","WEIR","WELD","WELL","WELT","WENT","WERE","WERT","WEST","WHAM","WHAT","WHEE","WHEN","WHET","WHOA","WHOM","WICK","WIFE","WILD","WILL","WIND","WINE","WING","WINK","WINO","WIRE","WISE","WISH","WITH","WOLF","WONT","WOOD","WOOL","WORD","WORE","WORK","WORM","WORN","WOVE","WRIT","WYNN","YALE","YANG","YANK","YARD","YARN","YAWL","YAWN","YEAH","YEAR","YELL","YOGA","YOKE"]');
22810
+ module.exports = /*#__PURE__*/JSON.parse('["A","ABE","ACE","ACT","AD","ADA","ADD","AGO","AID","AIM","AIR","ALL","ALP","AM","AMY","AN","ANA","AND","ANN","ANT","ANY","APE","APS","APT","ARC","ARE","ARK","ARM","ART","AS","ASH","ASK","AT","ATE","AUG","AUK","AVE","AWE","AWK","AWL","AWN","AX","AYE","BAD","BAG","BAH","BAM","BAN","BAR","BAT","BAY","BE","BED","BEE","BEG","BEN","BET","BEY","BIB","BID","BIG","BIN","BIT","BOB","BOG","BON","BOO","BOP","BOW","BOY","BUB","BUD","BUG","BUM","BUN","BUS","BUT","BUY","BY","BYE","CAB","CAL","CAM","CAN","CAP","CAR","CAT","CAW","COD","COG","COL","CON","COO","COP","COT","COW","COY","CRY","CUB","CUE","CUP","CUR","CUT","DAB","DAD","DAM","DAN","DAR","DAY","DEE","DEL","DEN","DES","DEW","DID","DIE","DIG","DIN","DIP","DO","DOE","DOG","DON","DOT","DOW","DRY","DUB","DUD","DUE","DUG","DUN","EAR","EAT","ED","EEL","EGG","EGO","ELI","ELK","ELM","ELY","EM","END","EST","ETC","EVA","EVE","EWE","EYE","FAD","FAN","FAR","FAT","FAY","FED","FEE","FEW","FIB","FIG","FIN","FIR","FIT","FLO","FLY","FOE","FOG","FOR","FRY","FUM","FUN","FUR","GAB","GAD","GAG","GAL","GAM","GAP","GAS","GAY","GEE","GEL","GEM","GET","GIG","GIL","GIN","GO","GOT","GUM","GUN","GUS","GUT","GUY","GYM","GYP","HA","HAD","HAL","HAM","HAN","HAP","HAS","HAT","HAW","HAY","HE","HEM","HEN","HER","HEW","HEY","HI","HID","HIM","HIP","HIS","HIT","HO","HOB","HOC","HOE","HOG","HOP","HOT","HOW","HUB","HUE","HUG","HUH","HUM","HUT","I","ICY","IDA","IF","IKE","ILL","INK","INN","IO","ION","IQ","IRA","IRE","IRK","IS","IT","ITS","IVY","JAB","JAG","JAM","JAN","JAR","JAW","JAY","JET","JIG","JIM","JO","JOB","JOE","JOG","JOT","JOY","JUG","JUT","KAY","KEG","KEN","KEY","KID","KIM","KIN","KIT","LA","LAB","LAC","LAD","LAG","LAM","LAP","LAW","LAY","LEA","LED","LEE","LEG","LEN","LEO","LET","LEW","LID","LIE","LIN","LIP","LIT","LO","LOB","LOG","LOP","LOS","LOT","LOU","LOW","LOY","LUG","LYE","MA","MAC","MAD","MAE","MAN","MAO","MAP","MAT","MAW","MAY","ME","MEG","MEL","MEN","MET","MEW","MID","MIN","MIT","MOB","MOD","MOE","MOO","MOP","MOS","MOT","MOW","MUD","MUG","MUM","MY","NAB","NAG","NAN","NAP","NAT","NAY","NE","NED","NEE","NET","NEW","NIB","NIL","NIP","NIT","NO","NOB","NOD","NON","NOR","NOT","NOV","NOW","NU","NUN","NUT","O","OAF","OAK","OAR","OAT","ODD","ODE","OF","OFF","OFT","OH","OIL","OK","OLD","ON","ONE","OR","ORB","ORE","ORR","OS","OTT","OUR","OUT","OVA","OW","OWE","OWL","OWN","OX","PA","PAD","PAL","PAM","PAN","PAP","PAR","PAT","PAW","PAY","PEA","PEG","PEN","PEP","PER","PET","PEW","PHI","PI","PIE","PIN","PIT","PLY","PO","POD","POE","POP","POT","POW","PRO","PRY","PUB","PUG","PUN","PUP","PUT","QUO","RAG","RAM","RAN","RAP","RAT","RAW","RAY","REB","RED","REP","RET","RIB","RID","RIG","RIM","RIO","RIP","ROB","ROD","ROE","RON","ROT","ROW","ROY","RUB","RUE","RUG","RUM","RUN","RYE","SAC","SAD","SAG","SAL","SAM","SAN","SAP","SAT","SAW","SAY","SEA","SEC","SEE","SEN","SET","SEW","SHE","SHY","SIN","SIP","SIR","SIS","SIT","SKI","SKY","SLY","SO","SOB","SOD","SON","SOP","SOW","SOY","SPA","SPY","SUB","SUD","SUE","SUM","SUN","SUP","TAB","TAD","TAG","TAN","TAP","TAR","TEA","TED","TEE","TEN","THE","THY","TIC","TIE","TIM","TIN","TIP","TO","TOE","TOG","TOM","TON","TOO","TOP","TOW","TOY","TRY","TUB","TUG","TUM","TUN","TWO","UN","UP","US","USE","VAN","VAT","VET","VIE","WAD","WAG","WAR","WAS","WAY","WE","WEB","WED","WEE","WET","WHO","WHY","WIN","WIT","WOK","WON","WOO","WOW","WRY","WU","YAM","YAP","YAW","YE","YEA","YES","YET","YOU","ABED","ABEL","ABET","ABLE","ABUT","ACHE","ACID","ACME","ACRE","ACTA","ACTS","ADAM","ADDS","ADEN","AFAR","AFRO","AGEE","AHEM","AHOY","AIDA","AIDE","AIDS","AIRY","AJAR","AKIN","ALAN","ALEC","ALGA","ALIA","ALLY","ALMA","ALOE","ALSO","ALTO","ALUM","ALVA","AMEN","AMES","AMID","AMMO","AMOK","AMOS","AMRA","ANDY","ANEW","ANNA","ANNE","ANTE","ANTI","AQUA","ARAB","ARCH","AREA","ARGO","ARID","ARMY","ARTS","ARTY","ASIA","ASKS","ATOM","AUNT","AURA","AUTO","AVER","AVID","AVIS","AVON","AVOW","AWAY","AWRY","BABE","BABY","BACH","BACK","BADE","BAIL","BAIT","BAKE","BALD","BALE","BALI","BALK","BALL","BALM","BAND","BANE","BANG","BANK","BARB","BARD","BARE","BARK","BARN","BARR","BASE","BASH","BASK","BASS","BATE","BATH","BAWD","BAWL","BEAD","BEAK","BEAM","BEAN","BEAR","BEAT","BEAU","BECK","BEEF","BEEN","BEER","BEET","BELA","BELL","BELT","BEND","BENT","BERG","BERN","BERT","BESS","BEST","BETA","BETH","BHOY","BIAS","BIDE","BIEN","BILE","BILK","BILL","BIND","BING","BIRD","BITE","BITS","BLAB","BLAT","BLED","BLEW","BLOB","BLOC","BLOT","BLOW","BLUE","BLUM","BLUR","BOAR","BOAT","BOCA","BOCK","BODE","BODY","BOGY","BOHR","BOIL","BOLD","BOLO","BOLT","BOMB","BONA","BOND","BONE","BONG","BONN","BONY","BOOK","BOOM","BOON","BOOT","BORE","BORG","BORN","BOSE","BOSS","BOTH","BOUT","BOWL","BOYD","BRAD","BRAE","BRAG","BRAN","BRAY","BRED","BREW","BRIG","BRIM","BROW","BUCK","BUDD","BUFF","BULB","BULK","BULL","BUNK","BUNT","BUOY","BURG","BURL","BURN","BURR","BURT","BURY","BUSH","BUSS","BUST","BUSY","BYTE","CADY","CAFE","CAGE","CAIN","CAKE","CALF","CALL","CALM","CAME","CANE","CANT","CARD","CARE","CARL","CARR","CART","CASE","CASH","CASK","CAST","CAVE","CEIL","CELL","CENT","CERN","CHAD","CHAR","CHAT","CHAW","CHEF","CHEN","CHEW","CHIC","CHIN","CHOU","CHOW","CHUB","CHUG","CHUM","CITE","CITY","CLAD","CLAM","CLAN","CLAW","CLAY","CLOD","CLOG","CLOT","CLUB","CLUE","COAL","COAT","COCA","COCK","COCO","CODA","CODE","CODY","COED","COIL","COIN","COKE","COLA","COLD","COLT","COMA","COMB","COME","COOK","COOL","COON","COOT","CORD","CORE","CORK","CORN","COST","COVE","COWL","CRAB","CRAG","CRAM","CRAY","CREW","CRIB","CROW","CRUD","CUBA","CUBE","CUFF","CULL","CULT","CUNY","CURB","CURD","CURE","CURL","CURT","CUTS","DADE","DALE","DAME","DANA","DANE","DANG","DANK","DARE","DARK","DARN","DART","DASH","DATA","DATE","DAVE","DAVY","DAWN","DAYS","DEAD","DEAF","DEAL","DEAN","DEAR","DEBT","DECK","DEED","DEEM","DEER","DEFT","DEFY","DELL","DENT","DENY","DESK","DIAL","DICE","DIED","DIET","DIME","DINE","DING","DINT","DIRE","DIRT","DISC","DISH","DISK","DIVE","DOCK","DOES","DOLE","DOLL","DOLT","DOME","DONE","DOOM","DOOR","DORA","DOSE","DOTE","DOUG","DOUR","DOVE","DOWN","DRAB","DRAG","DRAM","DRAW","DREW","DRUB","DRUG","DRUM","DUAL","DUCK","DUCT","DUEL","DUET","DUKE","DULL","DUMB","DUNE","DUNK","DUSK","DUST","DUTY","EACH","EARL","EARN","EASE","EAST","EASY","EBEN","ECHO","EDDY","EDEN","EDGE","EDGY","EDIT","EDNA","EGAN","ELAN","ELBA","ELLA","ELSE","EMIL","EMIT","EMMA","ENDS","ERIC","EROS","EVEN","EVER","EVIL","EYED","FACE","FACT","FADE","FAIL","FAIN","FAIR","FAKE","FALL","FAME","FANG","FARM","FAST","FATE","FAWN","FEAR","FEAT","FEED","FEEL","FEET","FELL","FELT","FEND","FERN","FEST","FEUD","FIEF","FIGS","FILE","FILL","FILM","FIND","FINE","FINK","FIRE","FIRM","FISH","FISK","FIST","FITS","FIVE","FLAG","FLAK","FLAM","FLAT","FLAW","FLEA","FLED","FLEW","FLIT","FLOC","FLOG","FLOW","FLUB","FLUE","FOAL","FOAM","FOGY","FOIL","FOLD","FOLK","FOND","FONT","FOOD","FOOL","FOOT","FORD","FORE","FORK","FORM","FORT","FOSS","FOUL","FOUR","FOWL","FRAU","FRAY","FRED","FREE","FRET","FREY","FROG","FROM","FUEL","FULL","FUME","FUND","FUNK","FURY","FUSE","FUSS","GAFF","GAGE","GAIL","GAIN","GAIT","GALA","GALE","GALL","GALT","GAME","GANG","GARB","GARY","GASH","GATE","GAUL","GAUR","GAVE","GAWK","GEAR","GELD","GENE","GENT","GERM","GETS","GIBE","GIFT","GILD","GILL","GILT","GINA","GIRD","GIRL","GIST","GIVE","GLAD","GLEE","GLEN","GLIB","GLOB","GLOM","GLOW","GLUE","GLUM","GLUT","GOAD","GOAL","GOAT","GOER","GOES","GOLD","GOLF","GONE","GONG","GOOD","GOOF","GORE","GORY","GOSH","GOUT","GOWN","GRAB","GRAD","GRAY","GREG","GREW","GREY","GRID","GRIM","GRIN","GRIT","GROW","GRUB","GULF","GULL","GUNK","GURU","GUSH","GUST","GWEN","GWYN","HAAG","HAAS","HACK","HAIL","HAIR","HALE","HALF","HALL","HALO","HALT","HAND","HANG","HANK","HANS","HARD","HARK","HARM","HART","HASH","HAST","HATE","HATH","HAUL","HAVE","HAWK","HAYS","HEAD","HEAL","HEAR","HEAT","HEBE","HECK","HEED","HEEL","HEFT","HELD","HELL","HELM","HERB","HERD","HERE","HERO","HERS","HESS","HEWN","HICK","HIDE","HIGH","HIKE","HILL","HILT","HIND","HINT","HIRE","HISS","HIVE","HOBO","HOCK","HOFF","HOLD","HOLE","HOLM","HOLT","HOME","HONE","HONK","HOOD","HOOF","HOOK","HOOT","HORN","HOSE","HOST","HOUR","HOVE","HOWE","HOWL","HOYT","HUCK","HUED","HUFF","HUGE","HUGH","HUGO","HULK","HULL","HUNK","HUNT","HURD","HURL","HURT","HUSH","HYDE","HYMN","IBIS","ICON","IDEA","IDLE","IFFY","INCA","INCH","INTO","IONS","IOTA","IOWA","IRIS","IRMA","IRON","ISLE","ITCH","ITEM","IVAN","JACK","JADE","JAIL","JAKE","JANE","JAVA","JEAN","JEFF","JERK","JESS","JEST","JIBE","JILL","JILT","JIVE","JOAN","JOBS","JOCK","JOEL","JOEY","JOHN","JOIN","JOKE","JOLT","JOVE","JUDD","JUDE","JUDO","JUDY","JUJU","JUKE","JULY","JUNE","JUNK","JUNO","JURY","JUST","JUTE","KAHN","KALE","KANE","KANT","KARL","KATE","KEEL","KEEN","KENO","KENT","KERN","KERR","KEYS","KICK","KILL","KIND","KING","KIRK","KISS","KITE","KLAN","KNEE","KNEW","KNIT","KNOB","KNOT","KNOW","KOCH","KONG","KUDO","KURD","KURT","KYLE","LACE","LACK","LACY","LADY","LAID","LAIN","LAIR","LAKE","LAMB","LAME","LAND","LANE","LANG","LARD","LARK","LASS","LAST","LATE","LAUD","LAVA","LAWN","LAWS","LAYS","LEAD","LEAF","LEAK","LEAN","LEAR","LEEK","LEER","LEFT","LEND","LENS","LENT","LEON","LESK","LESS","LEST","LETS","LIAR","LICE","LICK","LIED","LIEN","LIES","LIEU","LIFE","LIFT","LIKE","LILA","LILT","LILY","LIMA","LIMB","LIME","LIND","LINE","LINK","LINT","LION","LISA","LIST","LIVE","LOAD","LOAF","LOAM","LOAN","LOCK","LOFT","LOGE","LOIS","LOLA","LONE","LONG","LOOK","LOON","LOOT","LORD","LORE","LOSE","LOSS","LOST","LOUD","LOVE","LOWE","LUCK","LUCY","LUGE","LUKE","LULU","LUND","LUNG","LURA","LURE","LURK","LUSH","LUST","LYLE","LYNN","LYON","LYRA","MACE","MADE","MAGI","MAID","MAIL","MAIN","MAKE","MALE","MALI","MALL","MALT","MANA","MANN","MANY","MARC","MARE","MARK","MARS","MART","MARY","MASH","MASK","MASS","MAST","MATE","MATH","MAUL","MAYO","MEAD","MEAL","MEAN","MEAT","MEEK","MEET","MELD","MELT","MEMO","MEND","MENU","MERT","MESH","MESS","MICE","MIKE","MILD","MILE","MILK","MILL","MILT","MIMI","MIND","MINE","MINI","MINK","MINT","MIRE","MISS","MIST","MITE","MITT","MOAN","MOAT","MOCK","MODE","MOLD","MOLE","MOLL","MOLT","MONA","MONK","MONT","MOOD","MOON","MOOR","MOOT","MORE","MORN","MORT","MOSS","MOST","MOTH","MOVE","MUCH","MUCK","MUDD","MUFF","MULE","MULL","MURK","MUSH","MUST","MUTE","MUTT","MYRA","MYTH","NAGY","NAIL","NAIR","NAME","NARY","NASH","NAVE","NAVY","NEAL","NEAR","NEAT","NECK","NEED","NEIL","NELL","NEON","NERO","NESS","NEST","NEWS","NEWT","NIBS","NICE","NICK","NILE","NINA","NINE","NOAH","NODE","NOEL","NOLL","NONE","NOOK","NOON","NORM","NOSE","NOTE","NOUN","NOVA","NUDE","NULL","NUMB","OATH","OBEY","OBOE","ODIN","OHIO","OILY","OINT","OKAY","OLAF","OLDY","OLGA","OLIN","OMAN","OMEN","OMIT","ONCE","ONES","ONLY","ONTO","ONUS","ORAL","ORGY","OSLO","OTIS","OTTO","OUCH","OUST","OUTS","OVAL","OVEN","OVER","OWLY","OWNS","QUAD","QUIT","QUOD","RACE","RACK","RACY","RAFT","RAGE","RAID","RAIL","RAIN","RAKE","RANK","RANT","RARE","RASH","RATE","RAVE","RAYS","READ","REAL","REAM","REAR","RECK","REED","REEF","REEK","REEL","REID","REIN","RENA","REND","RENT","REST","RICE","RICH","RICK","RIDE","RIFT","RILL","RIME","RING","RINK","RISE","RISK","RITE","ROAD","ROAM","ROAR","ROBE","ROCK","RODE","ROIL","ROLL","ROME","ROOD","ROOF","ROOK","ROOM","ROOT","ROSA","ROSE","ROSS","ROSY","ROTH","ROUT","ROVE","ROWE","ROWS","RUBE","RUBY","RUDE","RUDY","RUIN","RULE","RUNG","RUNS","RUNT","RUSE","RUSH","RUSK","RUSS","RUST","RUTH","SACK","SAFE","SAGE","SAID","SAIL","SALE","SALK","SALT","SAME","SAND","SANE","SANG","SANK","SARA","SAUL","SAVE","SAYS","SCAN","SCAR","SCAT","SCOT","SEAL","SEAM","SEAR","SEAT","SEED","SEEK","SEEM","SEEN","SEES","SELF","SELL","SEND","SENT","SETS","SEWN","SHAG","SHAM","SHAW","SHAY","SHED","SHIM","SHIN","SHOD","SHOE","SHOT","SHOW","SHUN","SHUT","SICK","SIDE","SIFT","SIGH","SIGN","SILK","SILL","SILO","SILT","SINE","SING","SINK","SIRE","SITE","SITS","SITU","SKAT","SKEW","SKID","SKIM","SKIN","SKIT","SLAB","SLAM","SLAT","SLAY","SLED","SLEW","SLID","SLIM","SLIT","SLOB","SLOG","SLOT","SLOW","SLUG","SLUM","SLUR","SMOG","SMUG","SNAG","SNOB","SNOW","SNUB","SNUG","SOAK","SOAR","SOCK","SODA","SOFA","SOFT","SOIL","SOLD","SOME","SONG","SOON","SOOT","SORE","SORT","SOUL","SOUR","SOWN","STAB","STAG","STAN","STAR","STAY","STEM","STEW","STIR","STOW","STUB","STUN","SUCH","SUDS","SUIT","SULK","SUMS","SUNG","SUNK","SURE","SURF","SWAB","SWAG","SWAM","SWAN","SWAT","SWAY","SWIM","SWUM","TACK","TACT","TAIL","TAKE","TALE","TALK","TALL","TANK","TASK","TATE","TAUT","TEAL","TEAM","TEAR","TECH","TEEM","TEEN","TEET","TELL","TEND","TENT","TERM","TERN","TESS","TEST","THAN","THAT","THEE","THEM","THEN","THEY","THIN","THIS","THUD","THUG","TICK","TIDE","TIDY","TIED","TIER","TILE","TILL","TILT","TIME","TINA","TINE","TINT","TINY","TIRE","TOAD","TOGO","TOIL","TOLD","TOLL","TONE","TONG","TONY","TOOK","TOOL","TOOT","TORE","TORN","TOTE","TOUR","TOUT","TOWN","TRAG","TRAM","TRAY","TREE","TREK","TRIG","TRIM","TRIO","TROD","TROT","TROY","TRUE","TUBA","TUBE","TUCK","TUFT","TUNA","TUNE","TUNG","TURF","TURN","TUSK","TWIG","TWIN","TWIT","ULAN","UNIT","URGE","USED","USER","USES","UTAH","VAIL","VAIN","VALE","VARY","VASE","VAST","VEAL","VEDA","VEIL","VEIN","VEND","VENT","VERB","VERY","VETO","VICE","VIEW","VINE","VISE","VOID","VOLT","VOTE","WACK","WADE","WAGE","WAIL","WAIT","WAKE","WALE","WALK","WALL","WALT","WAND","WANE","WANG","WANT","WARD","WARM","WARN","WART","WASH","WAST","WATS","WATT","WAVE","WAVY","WAYS","WEAK","WEAL","WEAN","WEAR","WEED","WEEK","WEIR","WELD","WELL","WELT","WENT","WERE","WERT","WEST","WHAM","WHAT","WHEE","WHEN","WHET","WHOA","WHOM","WICK","WIFE","WILD","WILL","WIND","WINE","WING","WINK","WINO","WIRE","WISE","WISH","WITH","WOLF","WONT","WOOD","WOOL","WORD","WORE","WORK","WORM","WORN","WOVE","WRIT","WYNN","YALE","YANG","YANK","YARD","YARN","YAWL","YAWN","YEAH","YEAR","YELL","YOGA","YOKE"]');
22623
22811
 
22624
22812
  /***/ })
22625
22813