@bitgo-beta/sdk-coin-flrp 1.0.0-alpha.69 → 1.0.0-alpha.70

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 (37) hide show
  1. package/dist/src/lib/ExportInCTxBuilder.d.ts +2 -3
  2. package/dist/src/lib/ExportInCTxBuilder.d.ts.map +1 -1
  3. package/dist/src/lib/ExportInCTxBuilder.js +2 -3
  4. package/dist/src/lib/ExportInPTxBuilder.d.ts.map +1 -1
  5. package/dist/src/lib/ExportInPTxBuilder.js +7 -2
  6. package/dist/src/lib/ImportInCTxBuilder.d.ts.map +1 -1
  7. package/dist/src/lib/ImportInCTxBuilder.js +6 -4
  8. package/dist/src/lib/ImportInPTxBuilder.d.ts.map +1 -1
  9. package/dist/src/lib/ImportInPTxBuilder.js +5 -4
  10. package/dist/src/lib/iface.d.ts +0 -1
  11. package/dist/src/lib/iface.d.ts.map +1 -1
  12. package/dist/src/lib/iface.js +1 -1
  13. package/dist/src/lib/transaction.d.ts +0 -1
  14. package/dist/src/lib/transaction.d.ts.map +1 -1
  15. package/dist/src/lib/transaction.js +1 -2
  16. package/dist/src/lib/transactionBuilder.d.ts +5 -5
  17. package/dist/src/lib/transactionBuilder.d.ts.map +1 -1
  18. package/dist/src/lib/transactionBuilder.js +7 -11
  19. package/dist/src/lib/utils.d.ts +9 -9
  20. package/dist/src/lib/utils.d.ts.map +1 -1
  21. package/dist/src/lib/utils.js +23 -16
  22. package/dist/test/resources/transactionData/exportInP.d.ts +9 -1
  23. package/dist/test/resources/transactionData/exportInP.d.ts.map +1 -1
  24. package/dist/test/resources/transactionData/exportInP.js +40 -4
  25. package/dist/test/resources/transactionData/importInC.d.ts +9 -1
  26. package/dist/test/resources/transactionData/importInC.d.ts.map +1 -1
  27. package/dist/test/resources/transactionData/importInC.js +66 -6
  28. package/dist/test/resources/transactionData/importInP.d.ts +9 -1
  29. package/dist/test/resources/transactionData/importInP.d.ts.map +1 -1
  30. package/dist/test/resources/transactionData/importInP.js +15 -4
  31. package/dist/test/unit/lib/exportInCTxBuilder.js +2 -2
  32. package/dist/test/unit/lib/exportInPTxBuilder.js +5 -5
  33. package/dist/test/unit/lib/importInCTxBuilder.js +8 -8
  34. package/dist/test/unit/lib/importInPTxBuilder.js +6 -6
  35. package/dist/test/unit/lib/utils.js +67 -38
  36. package/dist/tsconfig.tsbuildinfo +1 -1
  37. package/package.json +6 -6
@@ -2,7 +2,7 @@ import { TransactionType } from '@bitgo-beta/sdk-core';
2
2
  import { BaseCoin as CoinConfig } from '@bitgo-beta/statics';
3
3
  import { AtomicInCTransactionBuilder } from './atomicInCTransactionBuilder';
4
4
  import { Credential } from '@flarenetwork/flarejs';
5
- import { Tx } from './iface';
5
+ import { Tx, DecodedUtxoObj } from './iface';
6
6
  export declare class ExportInCTxBuilder extends AtomicInCTransactionBuilder {
7
7
  private _nonce;
8
8
  constructor(_coinConfig: Readonly<CoinConfig>);
@@ -10,10 +10,9 @@ export declare class ExportInCTxBuilder extends AtomicInCTransactionBuilder {
10
10
  * UTXOs are not required for Export Tx from C-Chain (uses EVM balance instead).
11
11
  * Override to prevent usage by throwing an error.
12
12
  *
13
- * @param {string[]} _utxoHexStrings - ignored, UTXOs not used for C-chain exports
14
13
  * @throws {BuildTransactionError} always throws as UTXOs are not applicable
15
14
  */
16
- utxos(_utxoHexStrings: string[]): this;
15
+ decodedUtxos(_decodedUtxos: DecodedUtxoObj[]): this;
17
16
  /**
18
17
  * Set the nonce of C-Chain sender address
19
18
  *
@@ -1 +1 @@
1
- {"version":3,"file":"ExportInCTxBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/ExportInCTxBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuC,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC5F,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAGL,UAAU,EAKX,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,EAAE,EAA0C,MAAM,SAAS,CAAC;AAErE,qBAAa,kBAAmB,SAAQ,2BAA2B;IACjE,OAAO,CAAC,MAAM,CAAS;gBAEX,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI7C;;;;;;OAMG;IACH,KAAK,CAAC,eAAe,EAAE,MAAM,EAAE,GAAG,IAAI;IAItC;;;;OAIG;IACH,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAOnC;;;;OAIG;IACH,EAAE,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI;IAMvC,SAAS,KAAK,eAAe,IAAI,eAAe,CAE/C;IAED,WAAW,CAAC,EAAE,EAAE,EAAE,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,iBAAiB,CAAC,EAAE,UAAU,EAAE,GAAG,IAAI;IAyD9E,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAI7C,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAItC;;;OAGG;IACH,SAAS,CAAC,qBAAqB,IAAI,IAAI;IAkDvC;;;OAGG;IACH,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;CAKnC"}
1
+ {"version":3,"file":"ExportInCTxBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/ExportInCTxBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuC,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC5F,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAGL,UAAU,EAKX,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,EAAE,EAA0C,cAAc,EAAE,MAAM,SAAS,CAAC;AAErF,qBAAa,kBAAmB,SAAQ,2BAA2B;IACjE,OAAO,CAAC,MAAM,CAAS;gBAEX,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI7C;;;;;OAKG;IACH,YAAY,CAAC,aAAa,EAAE,cAAc,EAAE,GAAG,IAAI;IAInD;;;;OAIG;IACH,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAOnC;;;;OAIG;IACH,EAAE,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI;IAMvC,SAAS,KAAK,eAAe,IAAI,eAAe,CAE/C;IAED,WAAW,CAAC,EAAE,EAAE,EAAE,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,iBAAiB,CAAC,EAAE,UAAU,EAAE,GAAG,IAAI;IAyD9E,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAI7C,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAItC;;;OAGG;IACH,SAAS,CAAC,qBAAqB,IAAI,IAAI;IAkDvC;;;OAGG;IACH,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;CAKnC"}
@@ -17,10 +17,9 @@ class ExportInCTxBuilder extends atomicInCTransactionBuilder_1.AtomicInCTransact
17
17
  * UTXOs are not required for Export Tx from C-Chain (uses EVM balance instead).
18
18
  * Override to prevent usage by throwing an error.
19
19
  *
20
- * @param {string[]} _utxoHexStrings - ignored, UTXOs not used for C-chain exports
21
20
  * @throws {BuildTransactionError} always throws as UTXOs are not applicable
22
21
  */
23
- utxos(_utxoHexStrings) {
22
+ decodedUtxos(_decodedUtxos) {
24
23
  throw new sdk_core_1.BuildTransactionError('UTXOs are not required for Export Tx from C-Chain');
25
24
  }
26
25
  /**
@@ -148,4 +147,4 @@ class ExportInCTxBuilder extends atomicInCTransactionBuilder_1.AtomicInCTransact
148
147
  }
149
148
  }
150
149
  exports.ExportInCTxBuilder = ExportInCTxBuilder;
151
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRXhwb3J0SW5DVHhCdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9FeHBvcnRJbkNUeEJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsbURBQTRGO0FBRTVGLCtFQUE0RTtBQUM1RSxtREFRK0I7QUFDL0Isb0RBQTRCO0FBQzVCLG1DQUFxRTtBQUVyRSxNQUFhLGtCQUFtQixTQUFRLHlEQUEyQjtJQUdqRSxZQUFZLFdBQWlDO1FBQzNDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsS0FBSyxDQUFDLGVBQXlCO1FBQzdCLE1BQU0sSUFBSSxnQ0FBcUIsQ0FBQyxtREFBbUQsQ0FBQyxDQUFDO0lBQ3ZGLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsS0FBSyxDQUFDLEtBQXNCO1FBQzFCLE1BQU0sV0FBVyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNsQyxJQUFJLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ2hDLElBQUksQ0FBQyxNQUFNLEdBQUcsV0FBVyxDQUFDO1FBQzFCLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxFQUFFLENBQUMsVUFBNkI7UUFDOUIsTUFBTSxPQUFPLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQy9FLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLGVBQUssQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUN2RSxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxJQUFjLGVBQWU7UUFDM0IsT0FBTywwQkFBZSxDQUFDLE1BQU0sQ0FBQztJQUNoQyxDQUFDO0lBRUQsV0FBVyxDQUFDLEVBQU0sRUFBRSxRQUFpQixFQUFFLGlCQUFnQztRQUNyRSxNQUFNLE1BQU0sR0FBRyxFQUF3QixDQUFDO1FBQ3hDLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQ3JDLE1BQU0sSUFBSSx1QkFBWSxDQUFDLHFFQUFxRSxDQUFDLENBQUM7UUFDaEcsQ0FBQztRQUVELE1BQU0sT0FBTyxHQUFHLE1BQU0sQ0FBQyxlQUFlLENBQUM7UUFDdkMsSUFBSSxPQUFPLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQ3pCLE1BQU0sSUFBSSxnQ0FBcUIsQ0FBQyxpQ0FBaUMsQ0FBQyxDQUFDO1FBQ3JFLENBQUM7UUFDRCxNQUFNLE1BQU0sR0FBRyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFMUIsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEtBQUssSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUN4RixNQUFNLElBQUksZ0NBQXFCLENBQUMsa0JBQWtCLENBQUMsQ0FBQztRQUN0RCxDQUFDO1FBRUQsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQztRQUMxQixJQUFJLE1BQU0sQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDeEIsTUFBTSxJQUFJLGdDQUFxQixDQUFDLGdDQUFnQyxDQUFDLENBQUM7UUFDcEUsQ0FBQztRQUNELE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUV4QixNQUFNLGNBQWMsR0FBRyxNQUFNLENBQUMsTUFBd0IsQ0FBQztRQUN2RCxNQUFNLE1BQU0sR0FBRyxjQUFjLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDMUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLEdBQUcsTUFBTSxDQUFDO1FBQzlCLE1BQU0sV0FBVyxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDekMsTUFBTSxZQUFZLEdBQUcsY0FBYyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQzdDLE1BQU0sR0FBRyxHQUFHLFdBQVcsR0FBRyxZQUFZLENBQUM7UUFDdkMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLEdBQUcsWUFBWSxDQUFDO1FBQ3hDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDM0MsSUFBSSxDQUFDLFdBQVcsQ0FBQyxjQUFjLEdBQUcsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ3pFLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxHQUFHLGNBQWMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUMxRCxJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDbEMsTUFBTSxXQUFXLEdBQUcsaUJBQWlCLElBQUksRUFBRSxDQUFDO1FBQzVDLE1BQU0sY0FBYyxHQUFHLFdBQVcsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO1FBQzlDLElBQUksY0FBYyxJQUFJLFFBQVEsRUFBRSxDQUFDO1lBQy9CLElBQUksQ0FBQyxXQUFXLENBQUMsZUFBZSxHQUFHLFFBQVEsQ0FBQztRQUM5QyxDQUFDO1FBRUQsTUFBTSxXQUFXLEdBQUcsSUFBSSxpQkFBTyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDcEUsTUFBTSxVQUFVLEdBQUcsSUFBSSxlQUFVLENBQUMsVUFBVSxDQUFDO1lBQzNDLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztZQUNoQixDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7U0FDakIsQ0FBQyxDQUFDO1FBQ0gsTUFBTSxXQUFXLEdBQUcsSUFBSSxlQUFVLENBQUMsV0FBVyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztRQUU3RCxNQUFNLFVBQVUsR0FBRyxJQUFJLG9CQUFVLENBQy9CLE1BQU0sRUFDTixFQUFFLEVBQ0YsV0FBVyxFQUNYLFdBQVcsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxvQkFBVSxDQUFDLENBQUMsZUFBSyxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FDbEYsQ0FBQztRQUVGLElBQUksQ0FBQyxXQUFXLENBQUMsY0FBYyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQzVDLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELE1BQU0sQ0FBQyxZQUFZLENBQUMsT0FBZTtRQUNqQyxPQUFPLE9BQU8sS0FBSyw0QkFBb0IsQ0FBQyxXQUFXLENBQUM7SUFDdEQsQ0FBQztJQUVELFlBQVksQ0FBQyxPQUFlO1FBQzFCLE9BQU8sa0JBQWtCLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFFRDs7O09BR0c7SUFDTyxxQkFBcUI7UUFDN0IsSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLGNBQWM7WUFBRSxPQUFPO1FBQzVDLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDM0MsTUFBTSxJQUFJLGdDQUFxQixDQUFDLG9CQUFvQixDQUFDLENBQUM7UUFDeEQsQ0FBQztRQUNELElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxjQUFjLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQ2pELE1BQU0sSUFBSSxnQ0FBcUIsQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO1FBQ2hFLENBQUM7UUFDRCxJQUFJLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUN0QyxNQUFNLElBQUksZ0NBQXFCLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUNwRCxDQUFDO1FBQ0QsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDO1lBQy9CLE1BQU0sSUFBSSxnQ0FBcUIsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO1FBQzFELENBQUM7UUFDRCxJQUFJLElBQUksQ0FBQyxNQUFNLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDOUIsTUFBTSxJQUFJLGdDQUFxQixDQUFDLG1CQUFtQixDQUFDLENBQUM7UUFDdkQsQ0FBQztRQUNELElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQy9CLE1BQU0sSUFBSSxnQ0FBcUIsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1FBQ3pELENBQUM7UUFFRCxNQUFNLEdBQUcsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDOUMsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUM1RCxNQUFNLGlCQUFpQixHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRTtZQUNoRSxNQUFNLElBQUksR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUM1QyxNQUFNLElBQUksR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUM1QyxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbEMsQ0FBQyxDQUFDLENBQUM7UUFDSCxNQUFNLFdBQVcsR0FBRyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksaUJBQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBRXZFLE1BQU0sZ0JBQWdCLEdBQXFCO1lBQ3pDLFNBQVMsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLFVBQVU7WUFDdEMsUUFBUSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUztTQUNyQyxDQUFDO1FBRUYsTUFBTSxRQUFRLEdBQUcsYUFBRyxDQUFDLHNCQUFzQixDQUN6QyxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsRUFDekIsR0FBRyxFQUNILElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxFQUN4QixJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxhQUFhLEVBQ3ZDLGdCQUFnQixFQUNoQixXQUFXLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLEVBQ3RELE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQ25CLGVBQUssQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFDekQsZ0JBQWdCLENBQ2pCLENBQUM7UUFFRixJQUFJLENBQUMsV0FBVyxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUM1QyxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsYUFBYSxDQUFDLEtBQWE7UUFDekIsSUFBSSxLQUFLLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDdEIsTUFBTSxJQUFJLGdDQUFxQixDQUFDLHVDQUF1QyxDQUFDLENBQUM7UUFDM0UsQ0FBQztJQUNILENBQUM7Q0FDRjtBQTdLRCxnREE2S0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IsIE5vdFN1cHBvcnRlZCwgVHJhbnNhY3Rpb25UeXBlIH0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvcmUnO1xuaW1wb3J0IHsgQmFzZUNvaW4gYXMgQ29pbkNvbmZpZyB9IGZyb20gJ0BiaXRnby1iZXRhL3N0YXRpY3MnO1xuaW1wb3J0IHsgQXRvbWljSW5DVHJhbnNhY3Rpb25CdWlsZGVyIH0gZnJvbSAnLi9hdG9taWNJbkNUcmFuc2FjdGlvbkJ1aWxkZXInO1xuaW1wb3J0IHtcbiAgZXZtU2VyaWFsLFxuICBVbnNpZ25lZFR4LFxuICBDcmVkZW50aWFsLFxuICBBZGRyZXNzLFxuICBUcmFuc2Zlck91dHB1dCxcbiAgdXRpbHMgYXMgRmxhcmVVdGlscyxcbiAgZXZtLFxufSBmcm9tICdAZmxhcmVuZXR3b3JrL2ZsYXJlanMnO1xuaW1wb3J0IHV0aWxzIGZyb20gJy4vdXRpbHMnO1xuaW1wb3J0IHsgVHgsIEZsYXJlVHJhbnNhY3Rpb25UeXBlLCBFeHBvcnRFVk1PcHRpb25zIH0gZnJvbSAnLi9pZmFjZSc7XG5cbmV4cG9ydCBjbGFzcyBFeHBvcnRJbkNUeEJ1aWxkZXIgZXh0ZW5kcyBBdG9taWNJbkNUcmFuc2FjdGlvbkJ1aWxkZXIge1xuICBwcml2YXRlIF9ub25jZTogYmlnaW50O1xuXG4gIGNvbnN0cnVjdG9yKF9jb2luQ29uZmlnOiBSZWFkb25seTxDb2luQ29uZmlnPikge1xuICAgIHN1cGVyKF9jb2luQ29uZmlnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBVVFhPcyBhcmUgbm90IHJlcXVpcmVkIGZvciBFeHBvcnQgVHggZnJvbSBDLUNoYWluICh1c2VzIEVWTSBiYWxhbmNlIGluc3RlYWQpLlxuICAgKiBPdmVycmlkZSB0byBwcmV2ZW50IHVzYWdlIGJ5IHRocm93aW5nIGFuIGVycm9yLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ1tdfSBfdXR4b0hleFN0cmluZ3MgLSBpZ25vcmVkLCBVVFhPcyBub3QgdXNlZCBmb3IgQy1jaGFpbiBleHBvcnRzXG4gICAqIEB0aHJvd3Mge0J1aWxkVHJhbnNhY3Rpb25FcnJvcn0gYWx3YXlzIHRocm93cyBhcyBVVFhPcyBhcmUgbm90IGFwcGxpY2FibGVcbiAgICovXG4gIHV0eG9zKF91dHhvSGV4U3RyaW5nczogc3RyaW5nW10pOiB0aGlzIHtcbiAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCdVVFhPcyBhcmUgbm90IHJlcXVpcmVkIGZvciBFeHBvcnQgVHggZnJvbSBDLUNoYWluJyk7XG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSBub25jZSBvZiBDLUNoYWluIHNlbmRlciBhZGRyZXNzXG4gICAqXG4gICAqIEBwYXJhbSB7bnVtYmVyIHwgc3RyaW5nfSBub25jZSAtIG51bWJlciB0aGF0IGNhbiBiZSBvbmx5IHVzZWQgb25jZVxuICAgKi9cbiAgbm9uY2Uobm9uY2U6IG51bWJlciB8IHN0cmluZyk6IHRoaXMge1xuICAgIGNvbnN0IG5vbmNlQmlnSW50ID0gQmlnSW50KG5vbmNlKTtcbiAgICB0aGlzLnZhbGlkYXRlTm9uY2Uobm9uY2VCaWdJbnQpO1xuICAgIHRoaXMuX25vbmNlID0gbm9uY2VCaWdJbnQ7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogRXhwb3J0IHR4IHRhcmdldCBQIHdhbGxldC5cbiAgICpcbiAgICogQHBhcmFtIHBBZGRyZXNzZXNcbiAgICovXG4gIHRvKHBBZGRyZXNzZXM6IHN0cmluZyB8IHN0cmluZ1tdKTogdGhpcyB7XG4gICAgY29uc3QgcHViS2V5cyA9IEFycmF5LmlzQXJyYXkocEFkZHJlc3NlcykgPyBwQWRkcmVzc2VzIDogcEFkZHJlc3Nlcy5zcGxpdCgnficpO1xuICAgIHRoaXMudHJhbnNhY3Rpb24uX3RvID0gcHViS2V5cy5tYXAoKGFkZHIpID0+IHV0aWxzLnBhcnNlQWRkcmVzcyhhZGRyKSk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0IHRyYW5zYWN0aW9uVHlwZSgpOiBUcmFuc2FjdGlvblR5cGUge1xuICAgIHJldHVybiBUcmFuc2FjdGlvblR5cGUuRXhwb3J0O1xuICB9XG5cbiAgaW5pdEJ1aWxkZXIodHg6IFR4LCByYXdCeXRlcz86IEJ1ZmZlciwgcGFyc2VkQ3JlZGVudGlhbHM/OiBDcmVkZW50aWFsW10pOiB0aGlzIHtcbiAgICBjb25zdCBiYXNlVHggPSB0eCBhcyBldm1TZXJpYWwuRXhwb3J0VHg7XG4gICAgaWYgKCF0aGlzLnZlcmlmeVR4VHlwZShiYXNlVHguX3R5cGUpKSB7XG4gICAgICB0aHJvdyBuZXcgTm90U3VwcG9ydGVkKCdUcmFuc2FjdGlvbiBjYW5ub3QgYmUgcGFyc2VkIG9yIGhhcyBhbiB1bnN1cHBvcnRlZCB0cmFuc2FjdGlvbiB0eXBlJyk7XG4gICAgfVxuXG4gICAgY29uc3Qgb3V0cHV0cyA9IGJhc2VUeC5leHBvcnRlZE91dHB1dHM7XG4gICAgaWYgKG91dHB1dHMubGVuZ3RoICE9PSAxKSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCdUcmFuc2FjdGlvbiBjYW4gaGF2ZSBvbmUgb3V0cHV0Jyk7XG4gICAgfVxuICAgIGNvbnN0IG91dHB1dCA9IG91dHB1dHNbMF07XG5cbiAgICBpZiAoQnVmZmVyLmZyb20ob3V0cHV0LmFzc2V0SWQudG9CeXRlcygpKS50b1N0cmluZygnaGV4JykgIT09IHRoaXMudHJhbnNhY3Rpb24uX2Fzc2V0SWQpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ0Fzc2V0SUQgbWlzbWF0Y2gnKTtcbiAgICB9XG5cbiAgICBjb25zdCBpbnB1dHMgPSBiYXNlVHguaW5zO1xuICAgIGlmIChpbnB1dHMubGVuZ3RoICE9PSAxKSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCdUcmFuc2FjdGlvbiBjYW4gaGF2ZSBvbmUgaW5wdXQnKTtcbiAgICB9XG4gICAgY29uc3QgaW5wdXQgPSBpbnB1dHNbMF07XG5cbiAgICBjb25zdCB0cmFuc2Zlck91dHB1dCA9IG91dHB1dC5vdXRwdXQgYXMgVHJhbnNmZXJPdXRwdXQ7XG4gICAgY29uc3Qgb3duZXJzID0gdHJhbnNmZXJPdXRwdXQuZ2V0T3duZXJzKCk7XG4gICAgdGhpcy50cmFuc2FjdGlvbi5fdG8gPSBvd25lcnM7XG4gICAgY29uc3QgaW5wdXRBbW91bnQgPSBpbnB1dC5hbW91bnQudmFsdWUoKTtcbiAgICBjb25zdCBvdXRwdXRBbW91bnQgPSB0cmFuc2Zlck91dHB1dC5hbW91bnQoKTtcbiAgICBjb25zdCBmZWUgPSBpbnB1dEFtb3VudCAtIG91dHB1dEFtb3VudDtcbiAgICB0aGlzLnRyYW5zYWN0aW9uLl9hbW91bnQgPSBvdXRwdXRBbW91bnQ7XG4gICAgdGhpcy50cmFuc2FjdGlvbi5fZmVlLmZlZSA9IGZlZS50b1N0cmluZygpO1xuICAgIHRoaXMudHJhbnNhY3Rpb24uX2Zyb21BZGRyZXNzZXMgPSBbQnVmZmVyLmZyb20oaW5wdXQuYWRkcmVzcy50b0J5dGVzKCkpXTtcbiAgICB0aGlzLnRyYW5zYWN0aW9uLl9sb2NrdGltZSA9IHRyYW5zZmVyT3V0cHV0LmdldExvY2t0aW1lKCk7XG4gICAgdGhpcy5fbm9uY2UgPSBpbnB1dC5ub25jZS52YWx1ZSgpO1xuICAgIGNvbnN0IGNyZWRlbnRpYWxzID0gcGFyc2VkQ3JlZGVudGlhbHMgfHwgW107XG4gICAgY29uc3QgaGFzQ3JlZGVudGlhbHMgPSBjcmVkZW50aWFscy5sZW5ndGggPiAwO1xuICAgIGlmIChoYXNDcmVkZW50aWFscyAmJiByYXdCeXRlcykge1xuICAgICAgdGhpcy50cmFuc2FjdGlvbi5fcmF3U2lnbmVkQnl0ZXMgPSByYXdCeXRlcztcbiAgICB9XG5cbiAgICBjb25zdCBmcm9tQWRkcmVzcyA9IG5ldyBBZGRyZXNzKHRoaXMudHJhbnNhY3Rpb24uX2Zyb21BZGRyZXNzZXNbMF0pO1xuICAgIGNvbnN0IGFkZHJlc3NNYXAgPSBuZXcgRmxhcmVVdGlscy5BZGRyZXNzTWFwKFtcbiAgICAgIFtmcm9tQWRkcmVzcywgMF0sXG4gICAgICBbZnJvbUFkZHJlc3MsIDFdLFxuICAgIF0pO1xuICAgIGNvbnN0IGFkZHJlc3NNYXBzID0gbmV3IEZsYXJlVXRpbHMuQWRkcmVzc01hcHMoW2FkZHJlc3NNYXBdKTtcblxuICAgIGNvbnN0IHVuc2lnbmVkVHggPSBuZXcgVW5zaWduZWRUeChcbiAgICAgIGJhc2VUeCxcbiAgICAgIFtdLFxuICAgICAgYWRkcmVzc01hcHMsXG4gICAgICBjcmVkZW50aWFscy5sZW5ndGggPiAwID8gY3JlZGVudGlhbHMgOiBbbmV3IENyZWRlbnRpYWwoW3V0aWxzLmNyZWF0ZU5ld1NpZygnJyldKV1cbiAgICApO1xuXG4gICAgdGhpcy50cmFuc2FjdGlvbi5zZXRUcmFuc2FjdGlvbih1bnNpZ25lZFR4KTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIHN0YXRpYyB2ZXJpZnlUeFR5cGUodHhuVHlwZTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHR4blR5cGUgPT09IEZsYXJlVHJhbnNhY3Rpb25UeXBlLkV2bUV4cG9ydFR4O1xuICB9XG5cbiAgdmVyaWZ5VHhUeXBlKHR4blR5cGU6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBFeHBvcnRJbkNUeEJ1aWxkZXIudmVyaWZ5VHhUeXBlKHR4blR5cGUpO1xuICB9XG5cbiAgLyoqXG4gICAqIEJ1aWxkIHRoZSBleHBvcnQgaW4gQy1jaGFpbiB0cmFuc2FjdGlvblxuICAgKiBAcHJvdGVjdGVkXG4gICAqL1xuICBwcm90ZWN0ZWQgYnVpbGRGbGFyZVRyYW5zYWN0aW9uKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnRyYW5zYWN0aW9uLmhhc0NyZWRlbnRpYWxzKSByZXR1cm47XG4gICAgaWYgKHRoaXMudHJhbnNhY3Rpb24uX2Ftb3VudCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCdhbW91bnQgaXMgcmVxdWlyZWQnKTtcbiAgICB9XG4gICAgaWYgKHRoaXMudHJhbnNhY3Rpb24uX2Zyb21BZGRyZXNzZXMubGVuZ3RoICE9PSAxKSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCdzZW5kZXIgaXMgb25lIGFuZCByZXF1aXJlZCcpO1xuICAgIH1cbiAgICBpZiAodGhpcy50cmFuc2FjdGlvbi5fdG8ubGVuZ3RoID09PSAwKSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCd0byBpcyByZXF1aXJlZCcpO1xuICAgIH1cbiAgICBpZiAoIXRoaXMudHJhbnNhY3Rpb24uX2ZlZS5mZWUpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ2ZlZSByYXRlIGlzIHJlcXVpcmVkJyk7XG4gICAgfVxuICAgIGlmICh0aGlzLl9ub25jZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCdub25jZSBpcyByZXF1aXJlZCcpO1xuICAgIH1cbiAgICBpZiAoIXRoaXMudHJhbnNhY3Rpb24uX2NvbnRleHQpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ2NvbnRleHQgaXMgcmVxdWlyZWQnKTtcbiAgICB9XG5cbiAgICBjb25zdCBmZWUgPSBCaWdJbnQodGhpcy50cmFuc2FjdGlvbi5fZmVlLmZlZSk7XG4gICAgY29uc3QgZnJvbUFkZHJlc3NCeXRlcyA9IHRoaXMudHJhbnNhY3Rpb24uX2Zyb21BZGRyZXNzZXNbMF07XG4gICAgY29uc3Qgc29ydGVkVG9BZGRyZXNzZXMgPSBbLi4udGhpcy50cmFuc2FjdGlvbi5fdG9dLnNvcnQoKGEsIGIpID0+IHtcbiAgICAgIGNvbnN0IGFIZXggPSBCdWZmZXIuZnJvbShhKS50b1N0cmluZygnaGV4Jyk7XG4gICAgICBjb25zdCBiSGV4ID0gQnVmZmVyLmZyb20oYikudG9TdHJpbmcoJ2hleCcpO1xuICAgICAgcmV0dXJuIGFIZXgubG9jYWxlQ29tcGFyZShiSGV4KTtcbiAgICB9KTtcbiAgICBjb25zdCB0b0FkZHJlc3NlcyA9IHNvcnRlZFRvQWRkcmVzc2VzLm1hcCgoYWRkcikgPT4gbmV3IEFkZHJlc3MoYWRkcikpO1xuXG4gICAgY29uc3QgZXhwb3J0RVZNT3B0aW9uczogRXhwb3J0RVZNT3B0aW9ucyA9IHtcbiAgICAgIHRocmVzaG9sZDogdGhpcy50cmFuc2FjdGlvbi5fdGhyZXNob2xkLFxuICAgICAgbG9ja3RpbWU6IHRoaXMudHJhbnNhY3Rpb24uX2xvY2t0aW1lLFxuICAgIH07XG5cbiAgICBjb25zdCBleHBvcnRUeCA9IGV2bS5uZXdFeHBvcnRUeEZyb21CYXNlRmVlKFxuICAgICAgdGhpcy50cmFuc2FjdGlvbi5fY29udGV4dCxcbiAgICAgIGZlZSxcbiAgICAgIHRoaXMudHJhbnNhY3Rpb24uX2Ftb3VudCxcbiAgICAgIHRoaXMudHJhbnNhY3Rpb24uX2NvbnRleHQucEJsb2NrY2hhaW5JRCxcbiAgICAgIGZyb21BZGRyZXNzQnl0ZXMsXG4gICAgICB0b0FkZHJlc3Nlcy5tYXAoKGFkZHIpID0+IEJ1ZmZlci5mcm9tKGFkZHIudG9CeXRlcygpKSksXG4gICAgICBCaWdJbnQodGhpcy5fbm9uY2UpLFxuICAgICAgdXRpbHMuZmxhcmVJZFN0cmluZyh0aGlzLnRyYW5zYWN0aW9uLl9hc3NldElkKS50b1N0cmluZygpLFxuICAgICAgZXhwb3J0RVZNT3B0aW9uc1xuICAgICk7XG5cbiAgICB0aGlzLnRyYW5zYWN0aW9uLnNldFRyYW5zYWN0aW9uKGV4cG9ydFR4KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVjayB0aGUgbm9uY2UgaXMgbm9uLW5lZ2F0aXZlLlxuICAgKiBAcGFyYW0gbm9uY2VcbiAgICovXG4gIHZhbGlkYXRlTm9uY2Uobm9uY2U6IGJpZ2ludCk6IHZvaWQge1xuICAgIGlmIChub25jZSA8IEJpZ0ludCgwKSkge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignTm9uY2UgbXVzdCBiZSBncmVhdGVyIG9yIGVxdWFsIHRoYW4gMCcpO1xuICAgIH1cbiAgfVxufVxuIl19
150
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRXhwb3J0SW5DVHhCdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9FeHBvcnRJbkNUeEJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsbURBQTRGO0FBRTVGLCtFQUE0RTtBQUM1RSxtREFRK0I7QUFDL0Isb0RBQTRCO0FBQzVCLG1DQUFxRjtBQUVyRixNQUFhLGtCQUFtQixTQUFRLHlEQUEyQjtJQUdqRSxZQUFZLFdBQWlDO1FBQzNDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxZQUFZLENBQUMsYUFBK0I7UUFDMUMsTUFBTSxJQUFJLGdDQUFxQixDQUFDLG1EQUFtRCxDQUFDLENBQUM7SUFDdkYsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxLQUFLLENBQUMsS0FBc0I7UUFDMUIsTUFBTSxXQUFXLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2xDLElBQUksQ0FBQyxhQUFhLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDaEMsSUFBSSxDQUFDLE1BQU0sR0FBRyxXQUFXLENBQUM7UUFDMUIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILEVBQUUsQ0FBQyxVQUE2QjtRQUM5QixNQUFNLE9BQU8sR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDL0UsSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsZUFBSyxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQ3ZFLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELElBQWMsZUFBZTtRQUMzQixPQUFPLDBCQUFlLENBQUMsTUFBTSxDQUFDO0lBQ2hDLENBQUM7SUFFRCxXQUFXLENBQUMsRUFBTSxFQUFFLFFBQWlCLEVBQUUsaUJBQWdDO1FBQ3JFLE1BQU0sTUFBTSxHQUFHLEVBQXdCLENBQUM7UUFDeEMsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDckMsTUFBTSxJQUFJLHVCQUFZLENBQUMscUVBQXFFLENBQUMsQ0FBQztRQUNoRyxDQUFDO1FBRUQsTUFBTSxPQUFPLEdBQUcsTUFBTSxDQUFDLGVBQWUsQ0FBQztRQUN2QyxJQUFJLE9BQU8sQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDekIsTUFBTSxJQUFJLGdDQUFxQixDQUFDLGlDQUFpQyxDQUFDLENBQUM7UUFDckUsQ0FBQztRQUNELE1BQU0sTUFBTSxHQUFHLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUUxQixJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsS0FBSyxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3hGLE1BQU0sSUFBSSxnQ0FBcUIsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBQ3RELENBQUM7UUFFRCxNQUFNLE1BQU0sR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDO1FBQzFCLElBQUksTUFBTSxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUN4QixNQUFNLElBQUksZ0NBQXFCLENBQUMsZ0NBQWdDLENBQUMsQ0FBQztRQUNwRSxDQUFDO1FBQ0QsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBRXhCLE1BQU0sY0FBYyxHQUFHLE1BQU0sQ0FBQyxNQUF3QixDQUFDO1FBQ3ZELE1BQU0sTUFBTSxHQUFHLGNBQWMsQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUMxQyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsR0FBRyxNQUFNLENBQUM7UUFDOUIsTUFBTSxXQUFXLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUN6QyxNQUFNLFlBQVksR0FBRyxjQUFjLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDN0MsTUFBTSxHQUFHLEdBQUcsV0FBVyxHQUFHLFlBQVksQ0FBQztRQUN2QyxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sR0FBRyxZQUFZLENBQUM7UUFDeEMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsR0FBRyxHQUFHLEdBQUcsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUMzQyxJQUFJLENBQUMsV0FBVyxDQUFDLGNBQWMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDekUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLEdBQUcsY0FBYyxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQzFELElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNsQyxNQUFNLFdBQVcsR0FBRyxpQkFBaUIsSUFBSSxFQUFFLENBQUM7UUFDNUMsTUFBTSxjQUFjLEdBQUcsV0FBVyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7UUFDOUMsSUFBSSxjQUFjLElBQUksUUFBUSxFQUFFLENBQUM7WUFDL0IsSUFBSSxDQUFDLFdBQVcsQ0FBQyxlQUFlLEdBQUcsUUFBUSxDQUFDO1FBQzlDLENBQUM7UUFFRCxNQUFNLFdBQVcsR0FBRyxJQUFJLGlCQUFPLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNwRSxNQUFNLFVBQVUsR0FBRyxJQUFJLGVBQVUsQ0FBQyxVQUFVLENBQUM7WUFDM0MsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO1lBQ2hCLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztTQUNqQixDQUFDLENBQUM7UUFDSCxNQUFNLFdBQVcsR0FBRyxJQUFJLGVBQVUsQ0FBQyxXQUFXLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO1FBRTdELE1BQU0sVUFBVSxHQUFHLElBQUksb0JBQVUsQ0FDL0IsTUFBTSxFQUNOLEVBQUUsRUFDRixXQUFXLEVBQ1gsV0FBVyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLG9CQUFVLENBQUMsQ0FBQyxlQUFLLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUNsRixDQUFDO1FBRUYsSUFBSSxDQUFDLFdBQVcsQ0FBQyxjQUFjLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDNUMsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsTUFBTSxDQUFDLFlBQVksQ0FBQyxPQUFlO1FBQ2pDLE9BQU8sT0FBTyxLQUFLLDRCQUFvQixDQUFDLFdBQVcsQ0FBQztJQUN0RCxDQUFDO0lBRUQsWUFBWSxDQUFDLE9BQWU7UUFDMUIsT0FBTyxrQkFBa0IsQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUVEOzs7T0FHRztJQUNPLHFCQUFxQjtRQUM3QixJQUFJLElBQUksQ0FBQyxXQUFXLENBQUMsY0FBYztZQUFFLE9BQU87UUFDNUMsSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUMzQyxNQUFNLElBQUksZ0NBQXFCLENBQUMsb0JBQW9CLENBQUMsQ0FBQztRQUN4RCxDQUFDO1FBQ0QsSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLGNBQWMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDakQsTUFBTSxJQUFJLGdDQUFxQixDQUFDLDRCQUE0QixDQUFDLENBQUM7UUFDaEUsQ0FBQztRQUNELElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQ3RDLE1BQU0sSUFBSSxnQ0FBcUIsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ3BELENBQUM7UUFDRCxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUM7WUFDL0IsTUFBTSxJQUFJLGdDQUFxQixDQUFDLHNCQUFzQixDQUFDLENBQUM7UUFDMUQsQ0FBQztRQUNELElBQUksSUFBSSxDQUFDLE1BQU0sS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUM5QixNQUFNLElBQUksZ0NBQXFCLENBQUMsbUJBQW1CLENBQUMsQ0FBQztRQUN2RCxDQUFDO1FBQ0QsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDL0IsTUFBTSxJQUFJLGdDQUFxQixDQUFDLHFCQUFxQixDQUFDLENBQUM7UUFDekQsQ0FBQztRQUVELE1BQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUM5QyxNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzVELE1BQU0saUJBQWlCLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQ2hFLE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQzVDLE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQzVDLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNsQyxDQUFDLENBQUMsQ0FBQztRQUNILE1BQU0sV0FBVyxHQUFHLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxpQkFBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7UUFFdkUsTUFBTSxnQkFBZ0IsR0FBcUI7WUFDekMsU0FBUyxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsVUFBVTtZQUN0QyxRQUFRLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTO1NBQ3JDLENBQUM7UUFFRixNQUFNLFFBQVEsR0FBRyxhQUFHLENBQUMsc0JBQXNCLENBQ3pDLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxFQUN6QixHQUFHLEVBQ0gsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLEVBQ3hCLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLGFBQWEsRUFDdkMsZ0JBQWdCLEVBQ2hCLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsRUFDdEQsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsRUFDbkIsZUFBSyxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUN6RCxnQkFBZ0IsQ0FDakIsQ0FBQztRQUVGLElBQUksQ0FBQyxXQUFXLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFRDs7O09BR0c7SUFDSCxhQUFhLENBQUMsS0FBYTtRQUN6QixJQUFJLEtBQUssR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUN0QixNQUFNLElBQUksZ0NBQXFCLENBQUMsdUNBQXVDLENBQUMsQ0FBQztRQUMzRSxDQUFDO0lBQ0gsQ0FBQztDQUNGO0FBNUtELGdEQTRLQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJ1aWxkVHJhbnNhY3Rpb25FcnJvciwgTm90U3VwcG9ydGVkLCBUcmFuc2FjdGlvblR5cGUgfSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5pbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvLWJldGEvc3RhdGljcyc7XG5pbXBvcnQgeyBBdG9taWNJbkNUcmFuc2FjdGlvbkJ1aWxkZXIgfSBmcm9tICcuL2F0b21pY0luQ1RyYW5zYWN0aW9uQnVpbGRlcic7XG5pbXBvcnQge1xuICBldm1TZXJpYWwsXG4gIFVuc2lnbmVkVHgsXG4gIENyZWRlbnRpYWwsXG4gIEFkZHJlc3MsXG4gIFRyYW5zZmVyT3V0cHV0LFxuICB1dGlscyBhcyBGbGFyZVV0aWxzLFxuICBldm0sXG59IGZyb20gJ0BmbGFyZW5ldHdvcmsvZmxhcmVqcyc7XG5pbXBvcnQgdXRpbHMgZnJvbSAnLi91dGlscyc7XG5pbXBvcnQgeyBUeCwgRmxhcmVUcmFuc2FjdGlvblR5cGUsIEV4cG9ydEVWTU9wdGlvbnMsIERlY29kZWRVdHhvT2JqIH0gZnJvbSAnLi9pZmFjZSc7XG5cbmV4cG9ydCBjbGFzcyBFeHBvcnRJbkNUeEJ1aWxkZXIgZXh0ZW5kcyBBdG9taWNJbkNUcmFuc2FjdGlvbkJ1aWxkZXIge1xuICBwcml2YXRlIF9ub25jZTogYmlnaW50O1xuXG4gIGNvbnN0cnVjdG9yKF9jb2luQ29uZmlnOiBSZWFkb25seTxDb2luQ29uZmlnPikge1xuICAgIHN1cGVyKF9jb2luQ29uZmlnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBVVFhPcyBhcmUgbm90IHJlcXVpcmVkIGZvciBFeHBvcnQgVHggZnJvbSBDLUNoYWluICh1c2VzIEVWTSBiYWxhbmNlIGluc3RlYWQpLlxuICAgKiBPdmVycmlkZSB0byBwcmV2ZW50IHVzYWdlIGJ5IHRocm93aW5nIGFuIGVycm9yLlxuICAgKlxuICAgKiBAdGhyb3dzIHtCdWlsZFRyYW5zYWN0aW9uRXJyb3J9IGFsd2F5cyB0aHJvd3MgYXMgVVRYT3MgYXJlIG5vdCBhcHBsaWNhYmxlXG4gICAqL1xuICBkZWNvZGVkVXR4b3MoX2RlY29kZWRVdHhvczogRGVjb2RlZFV0eG9PYmpbXSk6IHRoaXMge1xuICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ1VUWE9zIGFyZSBub3QgcmVxdWlyZWQgZm9yIEV4cG9ydCBUeCBmcm9tIEMtQ2hhaW4nKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgdGhlIG5vbmNlIG9mIEMtQ2hhaW4gc2VuZGVyIGFkZHJlc3NcbiAgICpcbiAgICogQHBhcmFtIHtudW1iZXIgfCBzdHJpbmd9IG5vbmNlIC0gbnVtYmVyIHRoYXQgY2FuIGJlIG9ubHkgdXNlZCBvbmNlXG4gICAqL1xuICBub25jZShub25jZTogbnVtYmVyIHwgc3RyaW5nKTogdGhpcyB7XG4gICAgY29uc3Qgbm9uY2VCaWdJbnQgPSBCaWdJbnQobm9uY2UpO1xuICAgIHRoaXMudmFsaWRhdGVOb25jZShub25jZUJpZ0ludCk7XG4gICAgdGhpcy5fbm9uY2UgPSBub25jZUJpZ0ludDtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBFeHBvcnQgdHggdGFyZ2V0IFAgd2FsbGV0LlxuICAgKlxuICAgKiBAcGFyYW0gcEFkZHJlc3Nlc1xuICAgKi9cbiAgdG8ocEFkZHJlc3Nlczogc3RyaW5nIHwgc3RyaW5nW10pOiB0aGlzIHtcbiAgICBjb25zdCBwdWJLZXlzID0gQXJyYXkuaXNBcnJheShwQWRkcmVzc2VzKSA/IHBBZGRyZXNzZXMgOiBwQWRkcmVzc2VzLnNwbGl0KCd+Jyk7XG4gICAgdGhpcy50cmFuc2FjdGlvbi5fdG8gPSBwdWJLZXlzLm1hcCgoYWRkcikgPT4gdXRpbHMucGFyc2VBZGRyZXNzKGFkZHIpKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXQgdHJhbnNhY3Rpb25UeXBlKCk6IFRyYW5zYWN0aW9uVHlwZSB7XG4gICAgcmV0dXJuIFRyYW5zYWN0aW9uVHlwZS5FeHBvcnQ7XG4gIH1cblxuICBpbml0QnVpbGRlcih0eDogVHgsIHJhd0J5dGVzPzogQnVmZmVyLCBwYXJzZWRDcmVkZW50aWFscz86IENyZWRlbnRpYWxbXSk6IHRoaXMge1xuICAgIGNvbnN0IGJhc2VUeCA9IHR4IGFzIGV2bVNlcmlhbC5FeHBvcnRUeDtcbiAgICBpZiAoIXRoaXMudmVyaWZ5VHhUeXBlKGJhc2VUeC5fdHlwZSkpIHtcbiAgICAgIHRocm93IG5ldyBOb3RTdXBwb3J0ZWQoJ1RyYW5zYWN0aW9uIGNhbm5vdCBiZSBwYXJzZWQgb3IgaGFzIGFuIHVuc3VwcG9ydGVkIHRyYW5zYWN0aW9uIHR5cGUnKTtcbiAgICB9XG5cbiAgICBjb25zdCBvdXRwdXRzID0gYmFzZVR4LmV4cG9ydGVkT3V0cHV0cztcbiAgICBpZiAob3V0cHV0cy5sZW5ndGggIT09IDEpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ1RyYW5zYWN0aW9uIGNhbiBoYXZlIG9uZSBvdXRwdXQnKTtcbiAgICB9XG4gICAgY29uc3Qgb3V0cHV0ID0gb3V0cHV0c1swXTtcblxuICAgIGlmIChCdWZmZXIuZnJvbShvdXRwdXQuYXNzZXRJZC50b0J5dGVzKCkpLnRvU3RyaW5nKCdoZXgnKSAhPT0gdGhpcy50cmFuc2FjdGlvbi5fYXNzZXRJZCkge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignQXNzZXRJRCBtaXNtYXRjaCcpO1xuICAgIH1cblxuICAgIGNvbnN0IGlucHV0cyA9IGJhc2VUeC5pbnM7XG4gICAgaWYgKGlucHV0cy5sZW5ndGggIT09IDEpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ1RyYW5zYWN0aW9uIGNhbiBoYXZlIG9uZSBpbnB1dCcpO1xuICAgIH1cbiAgICBjb25zdCBpbnB1dCA9IGlucHV0c1swXTtcblxuICAgIGNvbnN0IHRyYW5zZmVyT3V0cHV0ID0gb3V0cHV0Lm91dHB1dCBhcyBUcmFuc2Zlck91dHB1dDtcbiAgICBjb25zdCBvd25lcnMgPSB0cmFuc2Zlck91dHB1dC5nZXRPd25lcnMoKTtcbiAgICB0aGlzLnRyYW5zYWN0aW9uLl90byA9IG93bmVycztcbiAgICBjb25zdCBpbnB1dEFtb3VudCA9IGlucHV0LmFtb3VudC52YWx1ZSgpO1xuICAgIGNvbnN0IG91dHB1dEFtb3VudCA9IHRyYW5zZmVyT3V0cHV0LmFtb3VudCgpO1xuICAgIGNvbnN0IGZlZSA9IGlucHV0QW1vdW50IC0gb3V0cHV0QW1vdW50O1xuICAgIHRoaXMudHJhbnNhY3Rpb24uX2Ftb3VudCA9IG91dHB1dEFtb3VudDtcbiAgICB0aGlzLnRyYW5zYWN0aW9uLl9mZWUuZmVlID0gZmVlLnRvU3RyaW5nKCk7XG4gICAgdGhpcy50cmFuc2FjdGlvbi5fZnJvbUFkZHJlc3NlcyA9IFtCdWZmZXIuZnJvbShpbnB1dC5hZGRyZXNzLnRvQnl0ZXMoKSldO1xuICAgIHRoaXMudHJhbnNhY3Rpb24uX2xvY2t0aW1lID0gdHJhbnNmZXJPdXRwdXQuZ2V0TG9ja3RpbWUoKTtcbiAgICB0aGlzLl9ub25jZSA9IGlucHV0Lm5vbmNlLnZhbHVlKCk7XG4gICAgY29uc3QgY3JlZGVudGlhbHMgPSBwYXJzZWRDcmVkZW50aWFscyB8fCBbXTtcbiAgICBjb25zdCBoYXNDcmVkZW50aWFscyA9IGNyZWRlbnRpYWxzLmxlbmd0aCA+IDA7XG4gICAgaWYgKGhhc0NyZWRlbnRpYWxzICYmIHJhd0J5dGVzKSB7XG4gICAgICB0aGlzLnRyYW5zYWN0aW9uLl9yYXdTaWduZWRCeXRlcyA9IHJhd0J5dGVzO1xuICAgIH1cblxuICAgIGNvbnN0IGZyb21BZGRyZXNzID0gbmV3IEFkZHJlc3ModGhpcy50cmFuc2FjdGlvbi5fZnJvbUFkZHJlc3Nlc1swXSk7XG4gICAgY29uc3QgYWRkcmVzc01hcCA9IG5ldyBGbGFyZVV0aWxzLkFkZHJlc3NNYXAoW1xuICAgICAgW2Zyb21BZGRyZXNzLCAwXSxcbiAgICAgIFtmcm9tQWRkcmVzcywgMV0sXG4gICAgXSk7XG4gICAgY29uc3QgYWRkcmVzc01hcHMgPSBuZXcgRmxhcmVVdGlscy5BZGRyZXNzTWFwcyhbYWRkcmVzc01hcF0pO1xuXG4gICAgY29uc3QgdW5zaWduZWRUeCA9IG5ldyBVbnNpZ25lZFR4KFxuICAgICAgYmFzZVR4LFxuICAgICAgW10sXG4gICAgICBhZGRyZXNzTWFwcyxcbiAgICAgIGNyZWRlbnRpYWxzLmxlbmd0aCA+IDAgPyBjcmVkZW50aWFscyA6IFtuZXcgQ3JlZGVudGlhbChbdXRpbHMuY3JlYXRlTmV3U2lnKCcnKV0pXVxuICAgICk7XG5cbiAgICB0aGlzLnRyYW5zYWN0aW9uLnNldFRyYW5zYWN0aW9uKHVuc2lnbmVkVHgpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgc3RhdGljIHZlcmlmeVR4VHlwZSh0eG5UeXBlOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdHhuVHlwZSA9PT0gRmxhcmVUcmFuc2FjdGlvblR5cGUuRXZtRXhwb3J0VHg7XG4gIH1cblxuICB2ZXJpZnlUeFR5cGUodHhuVHlwZTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIEV4cG9ydEluQ1R4QnVpbGRlci52ZXJpZnlUeFR5cGUodHhuVHlwZSk7XG4gIH1cblxuICAvKipcbiAgICogQnVpbGQgdGhlIGV4cG9ydCBpbiBDLWNoYWluIHRyYW5zYWN0aW9uXG4gICAqIEBwcm90ZWN0ZWRcbiAgICovXG4gIHByb3RlY3RlZCBidWlsZEZsYXJlVHJhbnNhY3Rpb24oKTogdm9pZCB7XG4gICAgaWYgKHRoaXMudHJhbnNhY3Rpb24uaGFzQ3JlZGVudGlhbHMpIHJldHVybjtcbiAgICBpZiAodGhpcy50cmFuc2FjdGlvbi5fYW1vdW50ID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ2Ftb3VudCBpcyByZXF1aXJlZCcpO1xuICAgIH1cbiAgICBpZiAodGhpcy50cmFuc2FjdGlvbi5fZnJvbUFkZHJlc3Nlcy5sZW5ndGggIT09IDEpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ3NlbmRlciBpcyBvbmUgYW5kIHJlcXVpcmVkJyk7XG4gICAgfVxuICAgIGlmICh0aGlzLnRyYW5zYWN0aW9uLl90by5sZW5ndGggPT09IDApIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ3RvIGlzIHJlcXVpcmVkJyk7XG4gICAgfVxuICAgIGlmICghdGhpcy50cmFuc2FjdGlvbi5fZmVlLmZlZSkge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignZmVlIHJhdGUgaXMgcmVxdWlyZWQnKTtcbiAgICB9XG4gICAgaWYgKHRoaXMuX25vbmNlID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ25vbmNlIGlzIHJlcXVpcmVkJyk7XG4gICAgfVxuICAgIGlmICghdGhpcy50cmFuc2FjdGlvbi5fY29udGV4dCkge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignY29udGV4dCBpcyByZXF1aXJlZCcpO1xuICAgIH1cblxuICAgIGNvbnN0IGZlZSA9IEJpZ0ludCh0aGlzLnRyYW5zYWN0aW9uLl9mZWUuZmVlKTtcbiAgICBjb25zdCBmcm9tQWRkcmVzc0J5dGVzID0gdGhpcy50cmFuc2FjdGlvbi5fZnJvbUFkZHJlc3Nlc1swXTtcbiAgICBjb25zdCBzb3J0ZWRUb0FkZHJlc3NlcyA9IFsuLi50aGlzLnRyYW5zYWN0aW9uLl90b10uc29ydCgoYSwgYikgPT4ge1xuICAgICAgY29uc3QgYUhleCA9IEJ1ZmZlci5mcm9tKGEpLnRvU3RyaW5nKCdoZXgnKTtcbiAgICAgIGNvbnN0IGJIZXggPSBCdWZmZXIuZnJvbShiKS50b1N0cmluZygnaGV4Jyk7XG4gICAgICByZXR1cm4gYUhleC5sb2NhbGVDb21wYXJlKGJIZXgpO1xuICAgIH0pO1xuICAgIGNvbnN0IHRvQWRkcmVzc2VzID0gc29ydGVkVG9BZGRyZXNzZXMubWFwKChhZGRyKSA9PiBuZXcgQWRkcmVzcyhhZGRyKSk7XG5cbiAgICBjb25zdCBleHBvcnRFVk1PcHRpb25zOiBFeHBvcnRFVk1PcHRpb25zID0ge1xuICAgICAgdGhyZXNob2xkOiB0aGlzLnRyYW5zYWN0aW9uLl90aHJlc2hvbGQsXG4gICAgICBsb2NrdGltZTogdGhpcy50cmFuc2FjdGlvbi5fbG9ja3RpbWUsXG4gICAgfTtcblxuICAgIGNvbnN0IGV4cG9ydFR4ID0gZXZtLm5ld0V4cG9ydFR4RnJvbUJhc2VGZWUoXG4gICAgICB0aGlzLnRyYW5zYWN0aW9uLl9jb250ZXh0LFxuICAgICAgZmVlLFxuICAgICAgdGhpcy50cmFuc2FjdGlvbi5fYW1vdW50LFxuICAgICAgdGhpcy50cmFuc2FjdGlvbi5fY29udGV4dC5wQmxvY2tjaGFpbklELFxuICAgICAgZnJvbUFkZHJlc3NCeXRlcyxcbiAgICAgIHRvQWRkcmVzc2VzLm1hcCgoYWRkcikgPT4gQnVmZmVyLmZyb20oYWRkci50b0J5dGVzKCkpKSxcbiAgICAgIEJpZ0ludCh0aGlzLl9ub25jZSksXG4gICAgICB1dGlscy5mbGFyZUlkU3RyaW5nKHRoaXMudHJhbnNhY3Rpb24uX2Fzc2V0SWQpLnRvU3RyaW5nKCksXG4gICAgICBleHBvcnRFVk1PcHRpb25zXG4gICAgKTtcblxuICAgIHRoaXMudHJhbnNhY3Rpb24uc2V0VHJhbnNhY3Rpb24oZXhwb3J0VHgpO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrIHRoZSBub25jZSBpcyBub24tbmVnYXRpdmUuXG4gICAqIEBwYXJhbSBub25jZVxuICAgKi9cbiAgdmFsaWRhdGVOb25jZShub25jZTogYmlnaW50KTogdm9pZCB7XG4gICAgaWYgKG5vbmNlIDwgQmlnSW50KDApKSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCdOb25jZSBtdXN0IGJlIGdyZWF0ZXIgb3IgZXF1YWwgdGhhbiAwJyk7XG4gICAgfVxuICB9XG59XG4iXX0=
@@ -1 +1 @@
1
- {"version":3,"file":"ExportInPTxBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/ExportInPTxBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAuC,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC5F,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAQL,UAAU,EAEX,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAmE,EAAE,EAAE,MAAM,SAAS,CAAC;AAE9F,qBAAa,kBAAmB,SAAQ,wBAAwB;gBAClD,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAY7C,SAAS,KAAK,eAAe,IAAI,eAAe,CAE/C;IAED,WAAW,CAAC,EAAE,EAAE,EAAE,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,iBAAiB,CAAC,EAAE,UAAU,EAAE,GAAG,IAAI;IAsE9E,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAI7C,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAItC;;;OAGG;cACa,qBAAqB,IAAI,OAAO,CAAC,IAAI,CAAC;IAmDtD;;;;OAIG;IACH,OAAO,CAAC,YAAY;CAiBrB"}
1
+ {"version":3,"file":"ExportInPTxBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/ExportInPTxBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAuC,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC5F,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAQL,UAAU,EAEX,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAmE,EAAE,EAAE,MAAM,SAAS,CAAC;AAE9F,qBAAa,kBAAmB,SAAQ,wBAAwB;gBAClD,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAY7C,SAAS,KAAK,eAAe,IAAI,eAAe,CAE/C;IAED,WAAW,CAAC,EAAE,EAAE,EAAE,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,iBAAiB,CAAC,EAAE,UAAU,EAAE,GAAG,IAAI;IAsE9E,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAI7C,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAItC;;;OAGG;cACa,qBAAqB,IAAI,OAAO,CAAC,IAAI,CAAC;IAwDtD;;;;OAIG;IACH,OAAO,CAAC,YAAY;CAiBrB"}
@@ -101,7 +101,12 @@ class ExportInPTxBuilder extends atomicTransactionBuilder_1.AtomicTransactionBui
101
101
  if (this.transaction._amount === undefined) {
102
102
  throw new sdk_core_1.BuildTransactionError('amount is required');
103
103
  }
104
- const nativeUtxos = utils_1.default.parseUtxoHexArray(this.transaction._utxoHexStrings);
104
+ if (!this.transaction._utxos || this.transaction._utxos.length === 0) {
105
+ throw new sdk_core_1.BuildTransactionError('UTXOs are required');
106
+ }
107
+ // Convert decoded UTXOs to native FlareJS Utxo objects
108
+ const assetIdCb58 = utils_1.default.cb58Encode(Buffer.from(this.transaction._assetId, 'hex'));
109
+ const nativeUtxos = utils_1.default.decodedToUtxos(this.transaction._utxos, assetIdCb58);
105
110
  const totalUtxoAmount = nativeUtxos.reduce((sum, utxo) => {
106
111
  const output = utxo.output;
107
112
  return sum + output.amount();
@@ -143,4 +148,4 @@ class ExportInPTxBuilder extends atomicTransactionBuilder_1.AtomicTransactionBui
143
148
  }
144
149
  }
145
150
  exports.ExportInPTxBuilder = ExportInPTxBuilder;
146
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRXhwb3J0SW5QVHhCdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9FeHBvcnRJblBUeEJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQ0EsbURBQTRGO0FBQzVGLHlFQUFzRTtBQUN0RSxtREFVK0I7QUFDL0Isb0RBQTRCO0FBQzVCLG1DQUE4RjtBQUU5RixNQUFhLGtCQUFtQixTQUFRLG1EQUF3QjtJQUM5RCxZQUFZLFdBQWlDO1FBQzNDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNuQiwyQkFBMkI7UUFDM0IsNENBQTRDO1FBQzVDLHNDQUFzQztRQUN0QyxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsZUFBSyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBQ3ZGLHdFQUF3RTtRQUN4RSxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLGVBQUssQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQzdHLEtBQUssQ0FDTixDQUFDO0lBQ0osQ0FBQztJQUVELElBQWMsZUFBZTtRQUMzQixPQUFPLDBCQUFlLENBQUMsTUFBTSxDQUFDO0lBQ2hDLENBQUM7SUFFRCxXQUFXLENBQUMsRUFBTSxFQUFFLFFBQWlCLEVBQUUsaUJBQWdDO1FBQ3JFLE1BQU0sUUFBUSxHQUFHLEVBQXdCLENBQUM7UUFFMUMsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDdkMsTUFBTSxJQUFJLHVCQUFZLENBQUMscUVBQXFFLENBQUMsQ0FBQztRQUNoRyxDQUFDO1FBQ0QsTUFBTSxPQUFPLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQztRQUM5QixJQUFJLE9BQU8sQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDekIsTUFBTSxJQUFJLGdDQUFxQixDQUFDLDBDQUEwQyxDQUFDLENBQUM7UUFDOUUsQ0FBQztRQUVELE1BQU0sTUFBTSxHQUFHLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUMxQixNQUFNLGNBQWMsR0FBRyxNQUFNLENBQUMsTUFBd0IsQ0FBQztRQUN2RCxNQUFNLE9BQU8sR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ3pDLElBQUksTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLEVBQUUsS0FBSyxDQUFDLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUM5RixNQUFNLElBQUksS0FBSyxDQUFDLDJEQUEyRCxDQUFDLENBQUM7UUFDL0UsQ0FBQztRQUVELE1BQU0sWUFBWSxHQUFHLGNBQWMsQ0FBQyxZQUFZLENBQUM7UUFDakQsSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLEdBQUcsWUFBWSxDQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUMzRCxJQUFJLENBQUMsV0FBVyxDQUFDLFVBQVUsR0FBRyxZQUFZLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQzdELElBQUksQ0FBQyxXQUFXLENBQUMsY0FBYyxHQUFHLFlBQVksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDaEcsSUFBSSxDQUFDLGdCQUFnQixHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO1FBQ3BFLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxHQUFHLGNBQWMsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNuRCxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsR0FBRyxRQUFRLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFFekUsTUFBTSxnQkFBZ0IsR0FBRyxRQUFRLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQyxHQUFHLEdBQUcsS0FBSyxDQUFDLE1BQU0sRUFBRSxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3hHLE1BQU0sa0JBQWtCLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxFQUFFO1lBQ3JFLE1BQU0sV0FBVyxHQUFHLEdBQUcsQ0FBQyxNQUF3QixDQUFDO1lBQ2pELE9BQU8sR0FBRyxHQUFHLFdBQVcsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNwQyxDQUFDLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDZCxNQUFNLEdBQUcsR0FBRyxnQkFBZ0IsR0FBRyxrQkFBa0IsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQztRQUM3RSxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxHQUFHLEdBQUcsR0FBRyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBRTNDLE1BQU0sV0FBVyxHQUFHLGlCQUFpQixJQUFJLEVBQUUsQ0FBQztRQUM1QyxNQUFNLGNBQWMsR0FBRyxXQUFXLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztRQUU5QyxJQUFJLFFBQVEsSUFBSSxjQUFjLEVBQUUsQ0FBQztZQUMvQixJQUFJLENBQUMsV0FBVyxDQUFDLGVBQWUsR0FBRyxRQUFRLENBQUM7UUFDOUMsQ0FBQztRQUVELE1BQU0sYUFBYSxHQUNqQixXQUFXLENBQUMsTUFBTSxHQUFHLENBQUM7WUFDcEIsQ0FBQyxDQUFDLFdBQVc7WUFDYixDQUFDLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLFFBQVEsRUFBRSxFQUFFO2dCQUM3QyxNQUFNLGFBQWEsR0FBRyxLQUFLLENBQUMsS0FBc0IsQ0FBQztnQkFDbkQsTUFBTSxjQUFjLEdBQUcsYUFBYSxDQUFDLFdBQVcsRUFBRSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBQztnQkFFekYsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7Z0JBRS9DLElBQUksY0FBYyxLQUFLLElBQUksQ0FBQyxXQUFXLENBQUMsVUFBVSxFQUFFLENBQUM7b0JBQ25ELE9BQU8sSUFBSSxDQUFDLHVCQUF1QixDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBQyxDQUFDO2dCQUN6RSxDQUFDO3FCQUFNLENBQUM7b0JBQ04sTUFBTSxRQUFRLEdBQTRDLEVBQUUsQ0FBQztvQkFDN0QsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLGNBQWMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDO3dCQUN4QyxRQUFRLENBQUMsSUFBSSxDQUFDLGVBQUssQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztvQkFDeEMsQ0FBQztvQkFDRCxPQUFPLElBQUksb0JBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFDbEMsQ0FBQztZQUNILENBQUMsQ0FBQyxDQUFDO1FBRVQsTUFBTSxXQUFXLEdBQUcsYUFBYSxDQUFDLEdBQUcsQ0FBQyxDQUFDLFVBQVUsRUFBRSxPQUFPLEVBQUUsRUFBRSxDQUM1RCxJQUFJLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQUMsQ0FDNUYsQ0FBQztRQUVGLE1BQU0sVUFBVSxHQUFHLElBQUksb0JBQVUsQ0FBQyxRQUFRLEVBQUUsRUFBRSxFQUFFLElBQUksZUFBVSxDQUFDLFdBQVcsQ0FBQyxXQUFXLENBQUMsRUFBRSxhQUFhLENBQUMsQ0FBQztRQUN4RyxJQUFJLENBQUMsV0FBVyxDQUFDLGNBQWMsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUM1QyxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxNQUFNLENBQUMsWUFBWSxDQUFDLE9BQWU7UUFDakMsT0FBTyxPQUFPLEtBQUssNEJBQW9CLENBQUMsV0FBVyxDQUFDO0lBQ3RELENBQUM7SUFFRCxZQUFZLENBQUMsT0FBZTtRQUMxQixPQUFPLGtCQUFrQixDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNsRCxDQUFDO0lBRUQ7OztPQUdHO0lBQ08sS0FBSyxDQUFDLHFCQUFxQjtRQUNuQyxJQUFJLElBQUksQ0FBQyxXQUFXLENBQUMsY0FBYztZQUFFLE9BQU87UUFFNUMsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUM7UUFDNUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ2QsTUFBTSxJQUFJLGdDQUFxQixDQUFDLHVCQUF1QixDQUFDLENBQUM7UUFDM0QsQ0FBQztRQUNELElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQy9CLE1BQU0sSUFBSSxnQ0FBcUIsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1FBQ3pELENBQUM7UUFDRCxJQUFJLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQzNDLE1BQU0sSUFBSSxnQ0FBcUIsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO1FBQ3hELENBQUM7UUFFRCxNQUFNLFdBQVcsR0FBRyxlQUFLLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUU5RSxNQUFNLGVBQWUsR0FBRyxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLElBQUksRUFBRSxFQUFFO1lBQ3ZELE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxNQUF3QixDQUFDO1lBQzdDLE9BQU8sR0FBRyxHQUFHLE1BQU0sQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUMvQixDQUFDLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFZCxJQUFJLGVBQWUsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQy9DLE1BQU0sSUFBSSxnQ0FBcUIsQ0FDN0IsbUNBQW1DLGVBQWUsQ0FBQyxRQUFRLEVBQUUsd0JBQXdCLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxrQkFBa0IsQ0FDM0ksQ0FBQztRQUNKLENBQUM7UUFFRCxNQUFNLE9BQU8sR0FBRyxlQUFLLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDMUUsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDdkYsTUFBTSxrQkFBa0IsR0FBRyw0QkFBa0IsQ0FBQyxVQUFVLENBQ3RELE9BQU8sRUFDUCxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sRUFDeEIsYUFBYSxFQUNiLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxFQUMxQixJQUFJLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FDNUIsQ0FBQztRQUVGLE1BQU0sUUFBUSxHQUFHLGFBQUcsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUNoQztZQUNFLFFBQVE7WUFDUixrQkFBa0IsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDcEYsa0JBQWtCLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsa0JBQWtCO1lBQ2hFLE9BQU8sRUFBRSxDQUFDLGtCQUFrQixDQUFDO1lBQzdCLEtBQUssRUFBRSxXQUFXO1NBQ25CLEVBQ0QsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQzFCLENBQUM7UUFFRixJQUFJLENBQUMsV0FBVyxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUM1QyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNLLFlBQVksQ0FBQyxNQUEyQjtRQUM5QyxPQUFPLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtZQUMxQixNQUFNLE1BQU0sR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDO1lBQzVCLE1BQU0sYUFBYSxHQUFHLEtBQUssQ0FBQyxLQUFzQixDQUFDO1lBQ25ELE1BQU0sY0FBYyxHQUFHLGFBQWEsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxNQUFNLENBQUM7WUFDMUQsT0FBTztnQkFDTCxRQUFRLEVBQUUsaUNBQXlCO2dCQUNuQyxNQUFNLEVBQUUsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsRUFBRTtnQkFDakMsSUFBSSxFQUFFLGVBQUssQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7Z0JBQzFELFNBQVMsRUFBRSxNQUFNLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxDQUFDLFFBQVEsRUFBRTtnQkFDOUMsU0FBUyxFQUFFLGNBQWMsSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLFVBQVU7Z0JBQ3hELFNBQVMsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUN0RCxlQUFLLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUN6RzthQUNGLENBQUM7UUFDSixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRjtBQTVLRCxnREE0S0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvLWJldGEvc3RhdGljcyc7XG5pbXBvcnQgeyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IsIE5vdFN1cHBvcnRlZCwgVHJhbnNhY3Rpb25UeXBlIH0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvcmUnO1xuaW1wb3J0IHsgQXRvbWljVHJhbnNhY3Rpb25CdWlsZGVyIH0gZnJvbSAnLi9hdG9taWNUcmFuc2FjdGlvbkJ1aWxkZXInO1xuaW1wb3J0IHtcbiAgcHZtU2VyaWFsLFxuICBVbnNpZ25lZFR4LFxuICBUcmFuc2ZlcmFibGVJbnB1dCxcbiAgVHJhbnNmZXJhYmxlT3V0cHV0LFxuICBUcmFuc2ZlcklucHV0LFxuICB1dGlscyBhcyBGbGFyZVV0aWxzLFxuICBUcmFuc2Zlck91dHB1dCxcbiAgQ3JlZGVudGlhbCxcbiAgcHZtLFxufSBmcm9tICdAZmxhcmVuZXR3b3JrL2ZsYXJlanMnO1xuaW1wb3J0IHV0aWxzIGZyb20gJy4vdXRpbHMnO1xuaW1wb3J0IHsgRGVjb2RlZFV0eG9PYmosIFNFQ1AyNTZLMV9UcmFuc2Zlcl9PdXRwdXQsIEZsYXJlVHJhbnNhY3Rpb25UeXBlLCBUeCB9IGZyb20gJy4vaWZhY2UnO1xuXG5leHBvcnQgY2xhc3MgRXhwb3J0SW5QVHhCdWlsZGVyIGV4dGVuZHMgQXRvbWljVHJhbnNhY3Rpb25CdWlsZGVyIHtcbiAgY29uc3RydWN0b3IoX2NvaW5Db25maWc6IFJlYWRvbmx5PENvaW5Db25maWc+KSB7XG4gICAgc3VwZXIoX2NvaW5Db25maWcpO1xuICAgIC8vIEZvciBFeHBvcnQgRlJPTSBQLWNoYWluOlxuICAgIC8vIC0gZXh0ZXJuYWwgY2hhaW4gKGRlc3RpbmF0aW9uKSBpcyBDLWNoYWluXG4gICAgLy8gLSBibG9ja2NoYWluIElEIChzb3VyY2UpIGlzIFAtY2hhaW5cbiAgICB0aGlzLl9leHRlcm5hbENoYWluSWQgPSB1dGlscy5jYjU4RGVjb2RlKHRoaXMudHJhbnNhY3Rpb24uX25ldHdvcmsuY0NoYWluQmxvY2tjaGFpbklEKTtcbiAgICAvLyBQLWNoYWluIGJsb2NrY2hhaW4gSUQgKGZyb20gbmV0d29yayBjb25maWcgLSBkZWNvZGUgZnJvbSBjYjU4IHRvIGhleClcbiAgICB0aGlzLnRyYW5zYWN0aW9uLl9ibG9ja2NoYWluSUQgPSBCdWZmZXIuZnJvbSh1dGlscy5jYjU4RGVjb2RlKHRoaXMudHJhbnNhY3Rpb24uX25ldHdvcmsuYmxvY2tjaGFpbklEKSkudG9TdHJpbmcoXG4gICAgICAnaGV4J1xuICAgICk7XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0IHRyYW5zYWN0aW9uVHlwZSgpOiBUcmFuc2FjdGlvblR5cGUge1xuICAgIHJldHVybiBUcmFuc2FjdGlvblR5cGUuRXhwb3J0O1xuICB9XG5cbiAgaW5pdEJ1aWxkZXIodHg6IFR4LCByYXdCeXRlcz86IEJ1ZmZlciwgcGFyc2VkQ3JlZGVudGlhbHM/OiBDcmVkZW50aWFsW10pOiB0aGlzIHtcbiAgICBjb25zdCBleHBvcnRUeCA9IHR4IGFzIHB2bVNlcmlhbC5FeHBvcnRUeDtcblxuICAgIGlmICghdGhpcy52ZXJpZnlUeFR5cGUoZXhwb3J0VHguX3R5cGUpKSB7XG4gICAgICB0aHJvdyBuZXcgTm90U3VwcG9ydGVkKCdUcmFuc2FjdGlvbiBjYW5ub3QgYmUgcGFyc2VkIG9yIGhhcyBhbiB1bnN1cHBvcnRlZCB0cmFuc2FjdGlvbiB0eXBlJyk7XG4gICAgfVxuICAgIGNvbnN0IG91dHB1dHMgPSBleHBvcnRUeC5vdXRzO1xuICAgIGlmIChvdXRwdXRzLmxlbmd0aCAhPT0gMSkge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignVHJhbnNhY3Rpb24gY2FuIGhhdmUgb25lIGV4dGVybmFsIG91dHB1dCcpO1xuICAgIH1cblxuICAgIGNvbnN0IG91dHB1dCA9IG91dHB1dHNbMF07XG4gICAgY29uc3Qgb3V0cHV0VHJhbnNmZXIgPSBvdXRwdXQub3V0cHV0IGFzIFRyYW5zZmVyT3V0cHV0O1xuICAgIGNvbnN0IGFzc2V0SWQgPSBvdXRwdXQuYXNzZXRJZC50b0J5dGVzKCk7XG4gICAgaWYgKEJ1ZmZlci5jb21wYXJlKEJ1ZmZlci5mcm9tKGFzc2V0SWQpLCBCdWZmZXIuZnJvbSh0aGlzLnRyYW5zYWN0aW9uLl9hc3NldElkLCAnaGV4JykpICE9PSAwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1RoZSBBc3NldCBJRCBvZiB0aGUgb3V0cHV0IGRvZXMgbm90IG1hdGNoIHRoZSB0cmFuc2FjdGlvbicpO1xuICAgIH1cblxuICAgIGNvbnN0IG91dHB1dE93bmVycyA9IG91dHB1dFRyYW5zZmVyLm91dHB1dE93bmVycztcbiAgICB0aGlzLnRyYW5zYWN0aW9uLl9sb2NrdGltZSA9IG91dHB1dE93bmVycy5sb2NrdGltZS52YWx1ZSgpO1xuICAgIHRoaXMudHJhbnNhY3Rpb24uX3RocmVzaG9sZCA9IG91dHB1dE93bmVycy50aHJlc2hvbGQudmFsdWUoKTtcbiAgICB0aGlzLnRyYW5zYWN0aW9uLl9mcm9tQWRkcmVzc2VzID0gb3V0cHV0T3duZXJzLmFkZHJzLm1hcCgoYWRkcikgPT4gQnVmZmVyLmZyb20oYWRkci50b0J5dGVzKCkpKTtcbiAgICB0aGlzLl9leHRlcm5hbENoYWluSWQgPSBCdWZmZXIuZnJvbShleHBvcnRUeC5kZXN0aW5hdGlvbi50b0J5dGVzKCkpO1xuICAgIHRoaXMudHJhbnNhY3Rpb24uX2Ftb3VudCA9IG91dHB1dFRyYW5zZmVyLmFtb3VudCgpO1xuICAgIHRoaXMudHJhbnNhY3Rpb24uX3V0eG9zID0gdGhpcy5yZWNvdmVyVXR4b3MoWy4uLmV4cG9ydFR4LmJhc2VUeC5pbnB1dHNdKTtcblxuICAgIGNvbnN0IHRvdGFsSW5wdXRBbW91bnQgPSBleHBvcnRUeC5iYXNlVHguaW5wdXRzLnJlZHVjZSgoc3VtLCBpbnB1dCkgPT4gc3VtICsgaW5wdXQuYW1vdW50KCksIEJpZ0ludCgwKSk7XG4gICAgY29uc3QgY2hhbmdlT3V0cHV0QW1vdW50ID0gZXhwb3J0VHguYmFzZVR4Lm91dHB1dHMucmVkdWNlKChzdW0sIG91dCkgPT4ge1xuICAgICAgY29uc3QgdHJhbnNmZXJPdXQgPSBvdXQub3V0cHV0IGFzIFRyYW5zZmVyT3V0cHV0O1xuICAgICAgcmV0dXJuIHN1bSArIHRyYW5zZmVyT3V0LmFtb3VudCgpO1xuICAgIH0sIEJpZ0ludCgwKSk7XG4gICAgY29uc3QgZmVlID0gdG90YWxJbnB1dEFtb3VudCAtIGNoYW5nZU91dHB1dEFtb3VudCAtIHRoaXMudHJhbnNhY3Rpb24uX2Ftb3VudDtcbiAgICB0aGlzLnRyYW5zYWN0aW9uLl9mZWUuZmVlID0gZmVlLnRvU3RyaW5nKCk7XG5cbiAgICBjb25zdCBjcmVkZW50aWFscyA9IHBhcnNlZENyZWRlbnRpYWxzIHx8IFtdO1xuICAgIGNvbnN0IGhhc0NyZWRlbnRpYWxzID0gY3JlZGVudGlhbHMubGVuZ3RoID4gMDtcblxuICAgIGlmIChyYXdCeXRlcyAmJiBoYXNDcmVkZW50aWFscykge1xuICAgICAgdGhpcy50cmFuc2FjdGlvbi5fcmF3U2lnbmVkQnl0ZXMgPSByYXdCeXRlcztcbiAgICB9XG5cbiAgICBjb25zdCB0eENyZWRlbnRpYWxzID1cbiAgICAgIGNyZWRlbnRpYWxzLmxlbmd0aCA+IDBcbiAgICAgICAgPyBjcmVkZW50aWFsc1xuICAgICAgICA6IGV4cG9ydFR4LmJhc2VUeC5pbnB1dHMubWFwKChpbnB1dCwgaW5wdXRJZHgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHRyYW5zZmVySW5wdXQgPSBpbnB1dC5pbnB1dCBhcyBUcmFuc2ZlcklucHV0O1xuICAgICAgICAgICAgY29uc3QgaW5wdXRUaHJlc2hvbGQgPSB0cmFuc2ZlcklucHV0LnNpZ0luZGljaWVzKCkubGVuZ3RoIHx8IHRoaXMudHJhbnNhY3Rpb24uX3RocmVzaG9sZDtcblxuICAgICAgICAgICAgY29uc3QgdXR4byA9IHRoaXMudHJhbnNhY3Rpb24uX3V0eG9zW2lucHV0SWR4XTtcblxuICAgICAgICAgICAgaWYgKGlucHV0VGhyZXNob2xkID09PSB0aGlzLnRyYW5zYWN0aW9uLl90aHJlc2hvbGQpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuY3JlYXRlQ3JlZGVudGlhbEZvclV0eG8odXR4bywgdGhpcy50cmFuc2FjdGlvbi5fdGhyZXNob2xkKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIGNvbnN0IHNpZ1Nsb3RzOiBSZXR1cm5UeXBlPHR5cGVvZiB1dGlscy5jcmVhdGVOZXdTaWc+W10gPSBbXTtcbiAgICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBpbnB1dFRocmVzaG9sZDsgaSsrKSB7XG4gICAgICAgICAgICAgICAgc2lnU2xvdHMucHVzaCh1dGlscy5jcmVhdGVOZXdTaWcoJycpKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICByZXR1cm4gbmV3IENyZWRlbnRpYWwoc2lnU2xvdHMpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pO1xuXG4gICAgY29uc3QgYWRkcmVzc01hcHMgPSB0eENyZWRlbnRpYWxzLm1hcCgoY3JlZGVudGlhbCwgY3JlZElkeCkgPT5cbiAgICAgIHRoaXMuY3JlYXRlQWRkcmVzc01hcEZvclV0eG8odGhpcy50cmFuc2FjdGlvbi5fdXR4b3NbY3JlZElkeF0sIHRoaXMudHJhbnNhY3Rpb24uX3RocmVzaG9sZClcbiAgICApO1xuXG4gICAgY29uc3QgdW5zaWduZWRUeCA9IG5ldyBVbnNpZ25lZFR4KGV4cG9ydFR4LCBbXSwgbmV3IEZsYXJlVXRpbHMuQWRkcmVzc01hcHMoYWRkcmVzc01hcHMpLCB0eENyZWRlbnRpYWxzKTtcbiAgICB0aGlzLnRyYW5zYWN0aW9uLnNldFRyYW5zYWN0aW9uKHVuc2lnbmVkVHgpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgc3RhdGljIHZlcmlmeVR4VHlwZSh0eG5UeXBlOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdHhuVHlwZSA9PT0gRmxhcmVUcmFuc2FjdGlvblR5cGUuUHZtRXhwb3J0VHg7XG4gIH1cblxuICB2ZXJpZnlUeFR5cGUodHhuVHlwZTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIEV4cG9ydEluUFR4QnVpbGRlci52ZXJpZnlUeFR5cGUodHhuVHlwZSk7XG4gIH1cblxuICAvKipcbiAgICogQnVpbGQgdGhlIGV4cG9ydCB0cmFuc2FjdGlvbiBmb3IgUC1jaGFpblxuICAgKiBAcHJvdGVjdGVkXG4gICAqL1xuICBwcm90ZWN0ZWQgYXN5bmMgYnVpbGRGbGFyZVRyYW5zYWN0aW9uKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGlmICh0aGlzLnRyYW5zYWN0aW9uLmhhc0NyZWRlbnRpYWxzKSByZXR1cm47XG5cbiAgICBjb25zdCBmZWVTdGF0ZSA9IHRoaXMudHJhbnNhY3Rpb24uX2ZlZVN0YXRlO1xuICAgIGlmICghZmVlU3RhdGUpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ0ZlZSBzdGF0ZSBpcyByZXF1aXJlZCcpO1xuICAgIH1cbiAgICBpZiAoIXRoaXMudHJhbnNhY3Rpb24uX2NvbnRleHQpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ2NvbnRleHQgaXMgcmVxdWlyZWQnKTtcbiAgICB9XG4gICAgaWYgKHRoaXMudHJhbnNhY3Rpb24uX2Ftb3VudCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCdhbW91bnQgaXMgcmVxdWlyZWQnKTtcbiAgICB9XG5cbiAgICBjb25zdCBuYXRpdmVVdHhvcyA9IHV0aWxzLnBhcnNlVXR4b0hleEFycmF5KHRoaXMudHJhbnNhY3Rpb24uX3V0eG9IZXhTdHJpbmdzKTtcblxuICAgIGNvbnN0IHRvdGFsVXR4b0Ftb3VudCA9IG5hdGl2ZVV0eG9zLnJlZHVjZSgoc3VtLCB1dHhvKSA9PiB7XG4gICAgICBjb25zdCBvdXRwdXQgPSB1dHhvLm91dHB1dCBhcyBUcmFuc2Zlck91dHB1dDtcbiAgICAgIHJldHVybiBzdW0gKyBvdXRwdXQuYW1vdW50KCk7XG4gICAgfSwgQmlnSW50KDApKTtcblxuICAgIGlmICh0b3RhbFV0eG9BbW91bnQgPCB0aGlzLnRyYW5zYWN0aW9uLl9hbW91bnQpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoXG4gICAgICAgIGBJbnN1ZmZpY2llbnQgVVRYTyBiYWxhbmNlOiBoYXZlICR7dG90YWxVdHhvQW1vdW50LnRvU3RyaW5nKCl9IG5GTFIsIG5lZWQgYXQgbGVhc3QgJHt0aGlzLnRyYW5zYWN0aW9uLl9hbW91bnQudG9TdHJpbmcoKX0gbkZMUiAocGx1cyBmZWUpYFxuICAgICAgKTtcbiAgICB9XG5cbiAgICBjb25zdCBhc3NldElkID0gdXRpbHMuZmxhcmVJZFN0cmluZyh0aGlzLnRyYW5zYWN0aW9uLl9hc3NldElkKS50b1N0cmluZygpO1xuICAgIGNvbnN0IGZyb21BZGRyZXNzZXMgPSB0aGlzLnRyYW5zYWN0aW9uLl9mcm9tQWRkcmVzc2VzLm1hcCgoYWRkcikgPT4gQnVmZmVyLmZyb20oYWRkcikpO1xuICAgIGNvbnN0IHRyYW5zZmVyYWJsZU91dHB1dCA9IFRyYW5zZmVyYWJsZU91dHB1dC5mcm9tTmF0aXZlKFxuICAgICAgYXNzZXRJZCxcbiAgICAgIHRoaXMudHJhbnNhY3Rpb24uX2Ftb3VudCxcbiAgICAgIGZyb21BZGRyZXNzZXMsXG4gICAgICB0aGlzLnRyYW5zYWN0aW9uLl9sb2NrdGltZSxcbiAgICAgIHRoaXMudHJhbnNhY3Rpb24uX3RocmVzaG9sZFxuICAgICk7XG5cbiAgICBjb25zdCBleHBvcnRUeCA9IHB2bS5lLm5ld0V4cG9ydFR4KFxuICAgICAge1xuICAgICAgICBmZWVTdGF0ZSxcbiAgICAgICAgZnJvbUFkZHJlc3Nlc0J5dGVzOiB0aGlzLnRyYW5zYWN0aW9uLl9mcm9tQWRkcmVzc2VzLm1hcCgoYWRkcikgPT4gQnVmZmVyLmZyb20oYWRkcikpLFxuICAgICAgICBkZXN0aW5hdGlvbkNoYWluSWQ6IHRoaXMudHJhbnNhY3Rpb24uX25ldHdvcmsuY0NoYWluQmxvY2tjaGFpbklELFxuICAgICAgICBvdXRwdXRzOiBbdHJhbnNmZXJhYmxlT3V0cHV0XSxcbiAgICAgICAgdXR4b3M6IG5hdGl2ZVV0eG9zLFxuICAgICAgfSxcbiAgICAgIHRoaXMudHJhbnNhY3Rpb24uX2NvbnRleHRcbiAgICApO1xuXG4gICAgdGhpcy50cmFuc2FjdGlvbi5zZXRUcmFuc2FjdGlvbihleHBvcnRUeCk7XG4gIH1cblxuICAvKipcbiAgICogUmVjb3ZlciBVVFhPcyBmcm9tIGlucHV0c1xuICAgKiBAcGFyYW0gaW5wdXRzIEFycmF5IG9mIFRyYW5zZmVyYWJsZUlucHV0XG4gICAqIEByZXR1cm5zIEFycmF5IG9mIGRlY29kZWQgVVRYTyBvYmplY3RzXG4gICAqL1xuICBwcml2YXRlIHJlY292ZXJVdHhvcyhpbnB1dHM6IFRyYW5zZmVyYWJsZUlucHV0W10pOiBEZWNvZGVkVXR4b09ialtdIHtcbiAgICByZXR1cm4gaW5wdXRzLm1hcCgoaW5wdXQpID0+IHtcbiAgICAgIGNvbnN0IHV0eG9JZCA9IGlucHV0LnV0eG9JRDtcbiAgICAgIGNvbnN0IHRyYW5zZmVySW5wdXQgPSBpbnB1dC5pbnB1dCBhcyBUcmFuc2ZlcklucHV0O1xuICAgICAgY29uc3QgaW5wdXRUaHJlc2hvbGQgPSB0cmFuc2ZlcklucHV0LnNpZ0luZGljaWVzKCkubGVuZ3RoO1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgb3V0cHV0SUQ6IFNFQ1AyNTZLMV9UcmFuc2Zlcl9PdXRwdXQsXG4gICAgICAgIGFtb3VudDogaW5wdXQuYW1vdW50KCkudG9TdHJpbmcoKSxcbiAgICAgICAgdHhpZDogdXRpbHMuY2I1OEVuY29kZShCdWZmZXIuZnJvbSh1dHhvSWQudHhJRC50b0J5dGVzKCkpKSxcbiAgICAgICAgb3V0cHV0aWR4OiB1dHhvSWQub3V0cHV0SWR4LnZhbHVlKCkudG9TdHJpbmcoKSxcbiAgICAgICAgdGhyZXNob2xkOiBpbnB1dFRocmVzaG9sZCB8fCB0aGlzLnRyYW5zYWN0aW9uLl90aHJlc2hvbGQsXG4gICAgICAgIGFkZHJlc3NlczogdGhpcy50cmFuc2FjdGlvbi5fZnJvbUFkZHJlc3Nlcy5tYXAoKGFkZHIpID0+XG4gICAgICAgICAgdXRpbHMuYWRkcmVzc1RvU3RyaW5nKHRoaXMudHJhbnNhY3Rpb24uX25ldHdvcmsuaHJwLCB0aGlzLnRyYW5zYWN0aW9uLl9uZXR3b3JrLmFsaWFzLCBCdWZmZXIuZnJvbShhZGRyKSlcbiAgICAgICAgKSxcbiAgICAgIH07XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
151
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRXhwb3J0SW5QVHhCdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9FeHBvcnRJblBUeEJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQ0EsbURBQTRGO0FBQzVGLHlFQUFzRTtBQUN0RSxtREFVK0I7QUFDL0Isb0RBQTRCO0FBQzVCLG1DQUE4RjtBQUU5RixNQUFhLGtCQUFtQixTQUFRLG1EQUF3QjtJQUM5RCxZQUFZLFdBQWlDO1FBQzNDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNuQiwyQkFBMkI7UUFDM0IsNENBQTRDO1FBQzVDLHNDQUFzQztRQUN0QyxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsZUFBSyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBQ3ZGLHdFQUF3RTtRQUN4RSxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLGVBQUssQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQzdHLEtBQUssQ0FDTixDQUFDO0lBQ0osQ0FBQztJQUVELElBQWMsZUFBZTtRQUMzQixPQUFPLDBCQUFlLENBQUMsTUFBTSxDQUFDO0lBQ2hDLENBQUM7SUFFRCxXQUFXLENBQUMsRUFBTSxFQUFFLFFBQWlCLEVBQUUsaUJBQWdDO1FBQ3JFLE1BQU0sUUFBUSxHQUFHLEVBQXdCLENBQUM7UUFFMUMsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDdkMsTUFBTSxJQUFJLHVCQUFZLENBQUMscUVBQXFFLENBQUMsQ0FBQztRQUNoRyxDQUFDO1FBQ0QsTUFBTSxPQUFPLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQztRQUM5QixJQUFJLE9B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QUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7Z0JBQzFELFNBQVMsRUFBRSxNQUFNLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxDQUFDLFFBQVEsRUFBRTtnQkFDOUMsU0FBUyxFQUFFLGNBQWMsSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLFVBQVU7Z0JBQ3hELFNBQVMsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUN0RCxlQUFLLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUN6RzthQUNGLENBQUM7UUFDSixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRjtBQWpMRCxnREFpTEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvLWJldGEvc3RhdGljcyc7XG5pbXBvcnQgeyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IsIE5vdFN1cHBvcnRlZCwgVHJhbnNhY3Rpb25UeXBlIH0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvcmUnO1xuaW1wb3J0IHsgQXRvbWljVHJhbnNhY3Rpb25CdWlsZGVyIH0gZnJvbSAnLi9hdG9taWNUcmFuc2FjdGlvbkJ1aWxkZXInO1xuaW1wb3J0IHtcbiAgcHZtU2VyaWFsLFxuICBVbnNpZ25lZFR4LFxuICBUcmFuc2ZlcmFibGVJbnB1dCxcbiAgVHJhbnNmZXJhYmxlT3V0cHV0LFxuICBUcmFuc2ZlcklucHV0LFxuICB1dGlscyBhcyBGbGFyZVV0aWxzLFxuICBUcmFuc2Zlck91dHB1dCxcbiAgQ3JlZGVudGlhbCxcbiAgcHZtLFxufSBmcm9tICdAZmxhcmVuZXR3b3JrL2ZsYXJlanMnO1xuaW1wb3J0IHV0aWxzIGZyb20gJy4vdXRpbHMnO1xuaW1wb3J0IHsgRGVjb2RlZFV0eG9PYmosIFNFQ1AyNTZLMV9UcmFuc2Zlcl9PdXRwdXQsIEZsYXJlVHJhbnNhY3Rpb25UeXBlLCBUeCB9IGZyb20gJy4vaWZhY2UnO1xuXG5leHBvcnQgY2xhc3MgRXhwb3J0SW5QVHhCdWlsZGVyIGV4dGVuZHMgQXRvbWljVHJhbnNhY3Rpb25CdWlsZGVyIHtcbiAgY29uc3RydWN0b3IoX2NvaW5Db25maWc6IFJlYWRvbmx5PENvaW5Db25maWc+KSB7XG4gICAgc3VwZXIoX2NvaW5Db25maWcpO1xuICAgIC8vIEZvciBFeHBvcnQgRlJPTSBQLWNoYWluOlxuICAgIC8vIC0gZXh0ZXJuYWwgY2hhaW4gKGRlc3RpbmF0aW9uKSBpcyBDLWNoYWluXG4gICAgLy8gLSBibG9ja2NoYWluIElEIChzb3VyY2UpIGlzIFAtY2hhaW5cbiAgICB0aGlzLl9leHRlcm5hbENoYWluSWQgPSB1dGlscy5jYjU4RGVjb2RlKHRoaXMudHJhbnNhY3Rpb24uX25ldHdvcmsuY0NoYWluQmxvY2tjaGFpbklEKTtcbiAgICAvLyBQLWNoYWluIGJsb2NrY2hhaW4gSUQgKGZyb20gbmV0d29yayBjb25maWcgLSBkZWNvZGUgZnJvbSBjYjU4IHRvIGhleClcbiAgICB0aGlzLnRyYW5zYWN0aW9uLl9ibG9ja2NoYWluSUQgPSBCdWZmZXIuZnJvbSh1dGlscy5jYjU4RGVjb2RlKHRoaXMudHJhbnNhY3Rpb24uX25ldHdvcmsuYmxvY2tjaGFpbklEKSkudG9TdHJpbmcoXG4gICAgICAnaGV4J1xuICAgICk7XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0IHRyYW5zYWN0aW9uVHlwZSgpOiBUcmFuc2FjdGlvblR5cGUge1xuICAgIHJldHVybiBUcmFuc2FjdGlvblR5cGUuRXhwb3J0O1xuICB9XG5cbiAgaW5pdEJ1aWxkZXIodHg6IFR4LCByYXdCeXRlcz86IEJ1ZmZlciwgcGFyc2VkQ3JlZGVudGlhbHM/OiBDcmVkZW50aWFsW10pOiB0aGlzIHtcbiAgICBjb25zdCBleHBvcnRUeCA9IHR4IGFzIHB2bVNlcmlhbC5FeHBvcnRUeDtcblxuICAgIGlmICghdGhpcy52ZXJpZnlUeFR5cGUoZXhwb3J0VHguX3R5cGUpKSB7XG4gICAgICB0aHJvdyBuZXcgTm90U3VwcG9ydGVkKCdUcmFuc2FjdGlvbiBjYW5ub3QgYmUgcGFyc2VkIG9yIGhhcyBhbiB1bnN1cHBvcnRlZCB0cmFuc2FjdGlvbiB0eXBlJyk7XG4gICAgfVxuICAgIGNvbnN0IG91dHB1dHMgPSBleHBvcnRUeC5vdXRzO1xuICAgIGlmIChvdXRwdXRzLmxlbmd0aCAhPT0gMSkge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignVHJhbnNhY3Rpb24gY2FuIGhhdmUgb25lIGV4dGVybmFsIG91dHB1dCcpO1xuICAgIH1cblxuICAgIGNvbnN0IG91dHB1dCA9IG91dHB1dHNbMF07XG4gICAgY29uc3Qgb3V0cHV0VHJhbnNmZXIgPSBvdXRwdXQub3V0cHV0IGFzIFRyYW5zZmVyT3V0cHV0O1xuICAgIGNvbnN0IGFzc2V0SWQgPSBvdXRwdXQuYXNzZXRJZC50b0J5dGVzKCk7XG4gICAgaWYgKEJ1ZmZlci5jb21wYXJlKEJ1ZmZlci5mcm9tKGFzc2V0SWQpLCBCdWZmZXIuZnJvbSh0aGlzLnRyYW5zYWN0aW9uLl9hc3NldElkLCAnaGV4JykpICE9PSAwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1RoZSBBc3NldCBJRCBvZiB0aGUgb3V0cHV0IGRvZXMgbm90IG1hdGNoIHRoZSB0cmFuc2FjdGlvbicpO1xuICAgIH1cblxuICAgIGNvbnN0IG91dHB1dE93bmVycyA9IG91dHB1dFRyYW5zZmVyLm91dHB1dE93bmVycztcbiAgICB0aGlzLnRyYW5zYWN0aW9uLl9sb2NrdGltZSA9IG91dHB1dE93bmVycy5sb2NrdGltZS52YWx1ZSgpO1xuICAgIHRoaXMudHJhbnNhY3Rpb24uX3RocmVzaG9sZCA9IG91dHB1dE93bmVycy50aHJlc2hvbGQudmFsdWUoKTtcbiAgICB0aGlzLnRyYW5zYWN0aW9uLl9mcm9tQWRkcmVzc2VzID0gb3V0cHV0T3duZXJzLmFkZHJzLm1hcCgoYWRkcikgPT4gQnVmZmVyLmZyb20oYWRkci50b0J5dGVzKCkpKTtcbiAgICB0aGlzLl9leHRlcm5hbENoYWluSWQgPSBCdWZmZXIuZnJvbShleHBvcnRUeC5kZXN0aW5hdGlvbi50b0J5dGVzKCkpO1xuICAgIHRoaXMudHJhbnNhY3Rpb24uX2Ftb3VudCA9IG91dHB1dFRyYW5zZmVyLmFtb3VudCgpO1xuICAgIHRoaXMudHJhbnNhY3Rpb24uX3V0eG9zID0gdGhpcy5yZWNvdmVyVXR4b3MoWy4uLmV4cG9ydFR4LmJhc2VUeC5pbnB1dHNdKTtcblxuICAgIGNvbnN0IHRvdGFsSW5wdXRBbW91bnQgPSBleHBvcnRUeC5iYXNlVHguaW5wdXRzLnJlZHVjZSgoc3VtLCBpbnB1dCkgPT4gc3VtICsgaW5wdXQuYW1vdW50KCksIEJpZ0ludCgwKSk7XG4gICAgY29uc3QgY2hhbmdlT3V0cHV0QW1vdW50ID0gZXhwb3J0VHguYmFzZVR4Lm91dHB1dHMucmVkdWNlKChzdW0sIG91dCkgPT4ge1xuICAgICAgY29uc3QgdHJhbnNmZXJPdXQgPSBvdXQub3V0cHV0IGFzIFRyYW5zZmVyT3V0cHV0O1xuICAgICAgcmV0dXJuIHN1bSArIHRyYW5zZmVyT3V0LmFtb3VudCgpO1xuICAgIH0sIEJpZ0ludCgwKSk7XG4gICAgY29uc3QgZmVlID0gdG90YWxJbnB1dEFtb3VudCAtIGNoYW5nZU91dHB1dEFtb3VudCAtIHRoaXMudHJhbnNhY3Rpb24uX2Ftb3VudDtcbiAgICB0aGlzLnRyYW5zYWN0aW9uLl9mZWUuZmVlID0gZmVlLnRvU3RyaW5nKCk7XG5cbiAgICBjb25zdCBjcmVkZW50aWFscyA9IHBhcnNlZENyZWRlbnRpYWxzIHx8IFtdO1xuICAgIGNvbnN0IGhhc0NyZWRlbnRpYWxzID0gY3JlZGVudGlhbHMubGVuZ3RoID4gMDtcblxuICAgIGlmIChyYXdCeXRlcyAmJiBoYXNDcmVkZW50aWFscykge1xuICAgICAgdGhpcy50cmFuc2FjdGlvbi5fcmF3U2lnbmVkQnl0ZXMgPSByYXdCeXRlcztcbiAgICB9XG5cbiAgICBjb25zdCB0eENyZWRlbnRpYWxzID1cbiAgICAgIGNyZWRlbnRpYWxzLmxlbmd0aCA+IDBcbiAgICAgICAgPyBjcmVkZW50aWFsc1xuICAgICAgICA6IGV4cG9ydFR4LmJhc2VUeC5pbnB1dHMubWFwKChpbnB1dCwgaW5wdXRJZHgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHRyYW5zZmVySW5wdXQgPSBpbnB1dC5pbnB1dCBhcyBUcmFuc2ZlcklucHV0O1xuICAgICAgICAgICAgY29uc3QgaW5wdXRUaHJlc2hvbGQgPSB0cmFuc2ZlcklucHV0LnNpZ0luZGljaWVzKCkubGVuZ3RoIHx8IHRoaXMudHJhbnNhY3Rpb24uX3RocmVzaG9sZDtcblxuICAgICAgICAgICAgY29uc3QgdXR4byA9IHRoaXMudHJhbnNhY3Rpb24uX3V0eG9zW2lucHV0SWR4XTtcblxuICAgICAgICAgICAgaWYgKGlucHV0VGhyZXNob2xkID09PSB0aGlzLnRyYW5zYWN0aW9uLl90aHJlc2hvbGQpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuY3JlYXRlQ3JlZGVudGlhbEZvclV0eG8odXR4bywgdGhpcy50cmFuc2FjdGlvbi5fdGhyZXNob2xkKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIGNvbnN0IHNpZ1Nsb3RzOiBSZXR1cm5UeXBlPHR5cGVvZiB1dGlscy5jcmVhdGVOZXdTaWc+W10gPSBbXTtcbiAgICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBpbnB1dFRocmVzaG9sZDsgaSsrKSB7XG4gICAgICAgICAgICAgICAgc2lnU2xvdHMucHVzaCh1dGlscy5jcmVhdGVOZXdTaWcoJycpKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICByZXR1cm4gbmV3IENyZWRlbnRpYWwoc2lnU2xvdHMpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pO1xuXG4gICAgY29uc3QgYWRkcmVzc01hcHMgPSB0eENyZWRlbnRpYWxzLm1hcCgoY3JlZGVudGlhbCwgY3JlZElkeCkgPT5cbiAgICAgIHRoaXMuY3JlYXRlQWRkcmVzc01hcEZvclV0eG8odGhpcy50cmFuc2FjdGlvbi5fdXR4b3NbY3JlZElkeF0sIHRoaXMudHJhbnNhY3Rpb24uX3RocmVzaG9sZClcbiAgICApO1xuXG4gICAgY29uc3QgdW5zaWduZWRUeCA9IG5ldyBVbnNpZ25lZFR4KGV4cG9ydFR4LCBbXSwgbmV3IEZsYXJlVXRpbHMuQWRkcmVzc01hcHMoYWRkcmVzc01hcHMpLCB0eENyZWRlbnRpYWxzKTtcbiAgICB0aGlzLnRyYW5zYWN0aW9uLnNldFRyYW5zYWN0aW9uKHVuc2lnbmVkVHgpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgc3RhdGljIHZlcmlmeVR4VHlwZSh0eG5UeXBlOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdHhuVHlwZSA9PT0gRmxhcmVUcmFuc2FjdGlvblR5cGUuUHZtRXhwb3J0VHg7XG4gIH1cblxuICB2ZXJpZnlUeFR5cGUodHhuVHlwZTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIEV4cG9ydEluUFR4QnVpbGRlci52ZXJpZnlUeFR5cGUodHhuVHlwZSk7XG4gIH1cblxuICAvKipcbiAgICogQnVpbGQgdGhlIGV4cG9ydCB0cmFuc2FjdGlvbiBmb3IgUC1jaGFpblxuICAgKiBAcHJvdGVjdGVkXG4gICAqL1xuICBwcm90ZWN0ZWQgYXN5bmMgYnVpbGRGbGFyZVRyYW5zYWN0aW9uKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGlmICh0aGlzLnRyYW5zYWN0aW9uLmhhc0NyZWRlbnRpYWxzKSByZXR1cm47XG5cbiAgICBjb25zdCBmZWVTdGF0ZSA9IHRoaXMudHJhbnNhY3Rpb24uX2ZlZVN0YXRlO1xuICAgIGlmICghZmVlU3RhdGUpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ0ZlZSBzdGF0ZSBpcyByZXF1aXJlZCcpO1xuICAgIH1cbiAgICBpZiAoIXRoaXMudHJhbnNhY3Rpb24uX2NvbnRleHQpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ2NvbnRleHQgaXMgcmVxdWlyZWQnKTtcbiAgICB9XG4gICAgaWYgKHRoaXMudHJhbnNhY3Rpb24uX2Ftb3VudCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCdhbW91bnQgaXMgcmVxdWlyZWQnKTtcbiAgICB9XG4gICAgaWYgKCF0aGlzLnRyYW5zYWN0aW9uLl91dHhvcyB8fCB0aGlzLnRyYW5zYWN0aW9uLl91dHhvcy5sZW5ndGggPT09IDApIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ1VUWE9zIGFyZSByZXF1aXJlZCcpO1xuICAgIH1cblxuICAgIC8vIENvbnZlcnQgZGVjb2RlZCBVVFhPcyB0byBuYXRpdmUgRmxhcmVKUyBVdHhvIG9iamVjdHNcbiAgICBjb25zdCBhc3NldElkQ2I1OCA9IHV0aWxzLmNiNThFbmNvZGUoQnVmZmVyLmZyb20odGhpcy50cmFuc2FjdGlvbi5fYXNzZXRJZCwgJ2hleCcpKTtcbiAgICBjb25zdCBuYXRpdmVVdHhvcyA9IHV0aWxzLmRlY29kZWRUb1V0eG9zKHRoaXMudHJhbnNhY3Rpb24uX3V0eG9zLCBhc3NldElkQ2I1OCk7XG5cbiAgICBjb25zdCB0b3RhbFV0eG9BbW91bnQgPSBuYXRpdmVVdHhvcy5yZWR1Y2UoKHN1bSwgdXR4bykgPT4ge1xuICAgICAgY29uc3Qgb3V0cHV0ID0gdXR4by5vdXRwdXQgYXMgVHJhbnNmZXJPdXRwdXQ7XG4gICAgICByZXR1cm4gc3VtICsgb3V0cHV0LmFtb3VudCgpO1xuICAgIH0sIEJpZ0ludCgwKSk7XG5cbiAgICBpZiAodG90YWxVdHhvQW1vdW50IDwgdGhpcy50cmFuc2FjdGlvbi5fYW1vdW50KSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKFxuICAgICAgICBgSW5zdWZmaWNpZW50IFVUWE8gYmFsYW5jZTogaGF2ZSAke3RvdGFsVXR4b0Ftb3VudC50b1N0cmluZygpfSBuRkxSLCBuZWVkIGF0IGxlYXN0ICR7dGhpcy50cmFuc2FjdGlvbi5fYW1vdW50LnRvU3RyaW5nKCl9IG5GTFIgKHBsdXMgZmVlKWBcbiAgICAgICk7XG4gICAgfVxuXG4gICAgY29uc3QgYXNzZXRJZCA9IHV0aWxzLmZsYXJlSWRTdHJpbmcodGhpcy50cmFuc2FjdGlvbi5fYXNzZXRJZCkudG9TdHJpbmcoKTtcbiAgICBjb25zdCBmcm9tQWRkcmVzc2VzID0gdGhpcy50cmFuc2FjdGlvbi5fZnJvbUFkZHJlc3Nlcy5tYXAoKGFkZHIpID0+IEJ1ZmZlci5mcm9tKGFkZHIpKTtcbiAgICBjb25zdCB0cmFuc2ZlcmFibGVPdXRwdXQgPSBUcmFuc2ZlcmFibGVPdXRwdXQuZnJvbU5hdGl2ZShcbiAgICAgIGFzc2V0SWQsXG4gICAgICB0aGlzLnRyYW5zYWN0aW9uLl9hbW91bnQsXG4gICAgICBmcm9tQWRkcmVzc2VzLFxuICAgICAgdGhpcy50cmFuc2FjdGlvbi5fbG9ja3RpbWUsXG4gICAgICB0aGlzLnRyYW5zYWN0aW9uLl90aHJlc2hvbGRcbiAgICApO1xuXG4gICAgY29uc3QgZXhwb3J0VHggPSBwdm0uZS5uZXdFeHBvcnRUeChcbiAgICAgIHtcbiAgICAgICAgZmVlU3RhdGUsXG4gICAgICAgIGZyb21BZGRyZXNzZXNCeXRlczogdGhpcy50cmFuc2FjdGlvbi5fZnJvbUFkZHJlc3Nlcy5tYXAoKGFkZHIpID0+IEJ1ZmZlci5mcm9tKGFkZHIpKSxcbiAgICAgICAgZGVzdGluYXRpb25DaGFpbklkOiB0aGlzLnRyYW5zYWN0aW9uLl9uZXR3b3JrLmNDaGFpbkJsb2NrY2hhaW5JRCxcbiAgICAgICAgb3V0cHV0czogW3RyYW5zZmVyYWJsZU91dHB1dF0sXG4gICAgICAgIHV0eG9zOiBuYXRpdmVVdHhvcyxcbiAgICAgIH0sXG4gICAgICB0aGlzLnRyYW5zYWN0aW9uLl9jb250ZXh0XG4gICAgKTtcblxuICAgIHRoaXMudHJhbnNhY3Rpb24uc2V0VHJhbnNhY3Rpb24oZXhwb3J0VHgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlY292ZXIgVVRYT3MgZnJvbSBpbnB1dHNcbiAgICogQHBhcmFtIGlucHV0cyBBcnJheSBvZiBUcmFuc2ZlcmFibGVJbnB1dFxuICAgKiBAcmV0dXJucyBBcnJheSBvZiBkZWNvZGVkIFVUWE8gb2JqZWN0c1xuICAgKi9cbiAgcHJpdmF0ZSByZWNvdmVyVXR4b3MoaW5wdXRzOiBUcmFuc2ZlcmFibGVJbnB1dFtdKTogRGVjb2RlZFV0eG9PYmpbXSB7XG4gICAgcmV0dXJuIGlucHV0cy5tYXAoKGlucHV0KSA9PiB7XG4gICAgICBjb25zdCB1dHhvSWQgPSBpbnB1dC51dHhvSUQ7XG4gICAgICBjb25zdCB0cmFuc2ZlcklucHV0ID0gaW5wdXQuaW5wdXQgYXMgVHJhbnNmZXJJbnB1dDtcbiAgICAgIGNvbnN0IGlucHV0VGhyZXNob2xkID0gdHJhbnNmZXJJbnB1dC5zaWdJbmRpY2llcygpLmxlbmd0aDtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIG91dHB1dElEOiBTRUNQMjU2SzFfVHJhbnNmZXJfT3V0cHV0LFxuICAgICAgICBhbW91bnQ6IGlucHV0LmFtb3VudCgpLnRvU3RyaW5nKCksXG4gICAgICAgIHR4aWQ6IHV0aWxzLmNiNThFbmNvZGUoQnVmZmVyLmZyb20odXR4b0lkLnR4SUQudG9CeXRlcygpKSksXG4gICAgICAgIG91dHB1dGlkeDogdXR4b0lkLm91dHB1dElkeC52YWx1ZSgpLnRvU3RyaW5nKCksXG4gICAgICAgIHRocmVzaG9sZDogaW5wdXRUaHJlc2hvbGQgfHwgdGhpcy50cmFuc2FjdGlvbi5fdGhyZXNob2xkLFxuICAgICAgICBhZGRyZXNzZXM6IHRoaXMudHJhbnNhY3Rpb24uX2Zyb21BZGRyZXNzZXMubWFwKChhZGRyKSA9PlxuICAgICAgICAgIHV0aWxzLmFkZHJlc3NUb1N0cmluZyh0aGlzLnRyYW5zYWN0aW9uLl9uZXR3b3JrLmhycCwgdGhpcy50cmFuc2FjdGlvbi5fbmV0d29yay5hbGlhcywgQnVmZmVyLmZyb20oYWRkcikpXG4gICAgICAgICksXG4gICAgICB9O1xuICAgIH0pO1xuICB9XG59XG4iXX0=
@@ -1 +1 @@
1
- {"version":3,"file":"ImportInCTxBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/ImportInCTxBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAuC,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC5F,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAGL,UAAU,EAMX,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAmE,EAAE,EAAE,MAAM,SAAS,CAAC;AAE9F,qBAAa,kBAAmB,SAAQ,2BAA2B;gBACrD,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI7C;;;;OAIG;IACH,EAAE,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAK1B,SAAS,KAAK,eAAe,IAAI,eAAe,CAE/C;IAED,WAAW,CAAC,EAAE,EAAE,EAAE,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,iBAAiB,CAAC,EAAE,UAAU,EAAE,GAAG,IAAI;IAiF9E,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAI7C,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAItC;;;OAGG;IACH,SAAS,CAAC,qBAAqB,IAAI,IAAI;IAmDvC;;;;OAIG;IACH,OAAO,CAAC,YAAY;CAiBrB"}
1
+ {"version":3,"file":"ImportInCTxBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/ImportInCTxBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAuC,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC5F,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAGL,UAAU,EAMX,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAmE,EAAE,EAAE,MAAM,SAAS,CAAC;AAE9F,qBAAa,kBAAmB,SAAQ,2BAA2B;gBACrD,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI7C;;;;OAIG;IACH,EAAE,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAK1B,SAAS,KAAK,eAAe,IAAI,eAAe,CAE/C;IAED,WAAW,CAAC,EAAE,EAAE,EAAE,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,iBAAiB,CAAC,EAAE,UAAU,EAAE,GAAG,IAAI;IAiF9E,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAI7C,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAItC;;;OAGG;IACH,SAAS,CAAC,qBAAqB,IAAI,IAAI;IAsDvC;;;;OAIG;IACH,OAAO,CAAC,YAAY;CAiBrB"}
@@ -117,8 +117,8 @@ class ImportInCTxBuilder extends atomicInCTransactionBuilder_1.AtomicInCTransact
117
117
  if (!this.transaction._fromAddresses || this.transaction._fromAddresses.length === 0) {
118
118
  throw new sdk_core_1.BuildTransactionError('fromAddresses are required');
119
119
  }
120
- if (!this.transaction._utxoHexStrings || this.transaction._utxoHexStrings.length === 0) {
121
- throw new sdk_core_1.BuildTransactionError('utxoHexStrings are required');
120
+ if (!this.transaction._utxos || this.transaction._utxos.length === 0) {
121
+ throw new sdk_core_1.BuildTransactionError('UTXOs are required');
122
122
  }
123
123
  if (!this.transaction._threshold) {
124
124
  throw new sdk_core_1.BuildTransactionError('threshold is required');
@@ -128,7 +128,9 @@ class ImportInCTxBuilder extends atomicInCTransactionBuilder_1.AtomicInCTransact
128
128
  const baseFeeGwei = baseFeeInWei / BigInt(1e9);
129
129
  const actualFeeNFlr = baseFeeGwei * estimatedGasUnits;
130
130
  const sourceChain = 'P';
131
- const nativeUtxos = utils_1.default.parseUtxoHexArray(this.transaction._utxoHexStrings);
131
+ // Convert decoded UTXOs to native FlareJS Utxo objects
132
+ const assetId = utils_1.default.cb58Encode(Buffer.from(this.transaction._assetId, 'hex'));
133
+ const nativeUtxos = utils_1.default.decodedToUtxos(this.transaction._utxos, assetId);
132
134
  // Validate UTXO balance is sufficient to cover the import fee
133
135
  const totalUtxoAmount = nativeUtxos.reduce((sum, utxo) => {
134
136
  const output = utxo.output;
@@ -161,4 +163,4 @@ class ImportInCTxBuilder extends atomicInCTransactionBuilder_1.AtomicInCTransact
161
163
  }
162
164
  }
163
165
  exports.ImportInCTxBuilder = ImportInCTxBuilder;
164
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSW1wb3J0SW5DVHhCdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9JbXBvcnRJbkNUeEJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQ0EsbURBQTRGO0FBQzVGLCtFQUE0RTtBQUM1RSxtREFTK0I7QUFDL0Isb0RBQTRCO0FBQzVCLG1DQUE4RjtBQUU5RixNQUFhLGtCQUFtQixTQUFRLHlEQUEyQjtJQUNqRSxZQUFZLFdBQWlDO1FBQzNDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILEVBQUUsQ0FBQyxRQUFnQjtRQUNqQixJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsR0FBRyxDQUFDLGVBQUssQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztRQUN0RCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxJQUFjLGVBQWU7UUFDM0IsT0FBTywwQkFBZSxDQUFDLE1BQU0sQ0FBQztJQUNoQyxDQUFDO0lBRUQsV0FBVyxDQUFDLEVBQU0sRUFBRSxRQUFpQixFQUFFLGlCQUFnQztRQUNyRSxNQUFNLE1BQU0sR0FBRyxFQUF3QixDQUFDO1FBQ3hDLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQ3JDLE1BQU0sSUFBSSx1QkFBWSxDQUFDLHFFQUFxRSxDQUFDLENBQUM7UUFDaEcsQ0FBQztRQUVELE1BQU0sT0FBTyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUM7UUFDNUIsSUFBSSxPQUFPLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQ3pCLE1BQU0sSUFBSSxnQ0FBcUIsQ0FBQyxpQ0FBaUMsQ0FBQyxDQUFDO1FBQ3JFLENBQUM7UUFDRCxNQUFNLE1BQU0sR0FBRyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFMUIsSUFBSSxNQUFNLENB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ZW50IjpbImltcG9ydCB7IEJhc2VDb2luIGFzIENvaW5Db25maWcgfSBmcm9tICdAYml0Z28tYmV0YS9zdGF0aWNzJztcbmltcG9ydCB7IEJ1aWxkVHJhbnNhY3Rpb25FcnJvciwgTm90U3VwcG9ydGVkLCBUcmFuc2FjdGlvblR5cGUgfSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5pbXBvcnQgeyBBdG9taWNJbkNUcmFuc2FjdGlvbkJ1aWxkZXIgfSBmcm9tICcuL2F0b21pY0luQ1RyYW5zYWN0aW9uQnVpbGRlcic7XG5pbXBvcnQge1xuICBldm1TZXJpYWwsXG4gIFVuc2lnbmVkVHgsXG4gIENyZWRlbnRpYWwsXG4gIFRyYW5zZmVyYWJsZUlucHV0LFxuICBUcmFuc2Zlck91dHB1dCxcbiAgQWRkcmVzcyxcbiAgdXRpbHMgYXMgRmxhcmVVdGlscyxcbiAgZXZtLFxufSBmcm9tICdAZmxhcmVuZXR3b3JrL2ZsYXJlanMnO1xuaW1wb3J0IHV0aWxzIGZyb20gJy4vdXRpbHMnO1xuaW1wb3J0IHsgRGVjb2RlZFV0eG9PYmosIEZsYXJlVHJhbnNhY3Rpb25UeXBlLCBTRUNQMjU2SzFfVHJhbnNmZXJfT3V0cHV0LCBUeCB9IGZyb20gJy4vaWZhY2UnO1xuXG5leHBvcnQgY2xhc3MgSW1wb3J0SW5DVHhCdWlsZGVyIGV4dGVuZHMgQXRvbWljSW5DVHJhbnNhY3Rpb25CdWlsZGVyIHtcbiAgY29uc3RydWN0b3IoX2NvaW5Db25maWc6IFJlYWRvbmx5PENvaW5Db25maWc+KSB7XG4gICAgc3VwZXIoX2NvaW5Db25maWcpO1xuICB9XG5cbiAgLyoqXG4gICAqIEMtY2hhaW4gYWRkcmVzcyB3aG8gaXMgdGFyZ2V0IG9mIHRoZSBpbXBvcnQuXG4gICAqIEFkZHJlc3MgZm9ybWF0IGlzIGV0aCBsaWtlXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBjQWRkcmVzc1xuICAgKi9cbiAgdG8oY0FkZHJlc3M6IHN0cmluZyk6IHRoaXMge1xuICAgIHRoaXMudHJhbnNhY3Rpb24uX3RvID0gW3V0aWxzLnBhcnNlQWRkcmVzcyhjQWRkcmVzcyldO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgcHJvdGVjdGVkIGdldCB0cmFuc2FjdGlvblR5cGUoKTogVHJhbnNhY3Rpb25UeXBlIHtcbiAgICByZXR1cm4gVHJhbnNhY3Rpb25UeXBlLkltcG9ydDtcbiAgfVxuXG4gIGluaXRCdWlsZGVyKHR4OiBUeCwgcmF3Qnl0ZXM/OiBCdWZmZXIsIHBhcnNlZENyZWRlbnRpYWxzPzogQ3JlZGVudGlhbFtdKTogdGhpcyB7XG4gICAgY29uc3QgYmFzZVR4ID0gdHggYXMgZXZtU2VyaWFsLkltcG9ydFR4O1xuICAgIGlmICghdGhpcy52ZXJpZnlUeFR5cGUoYmFzZVR4Ll90eXBlKSkge1xuICAgICAgdGhyb3cgbmV3IE5vdFN1cHBvcnRlZCgnVHJhbnNhY3Rpb24gY2Fubm90IGJlIHBhcnNlZCBvciBoYXMgYW4gdW5zdXBwb3J0ZWQgdHJhbnNhY3Rpb24gdHlwZScpO1xuICAgIH1cblxuICAgIGNvbnN0IG91dHB1dHMgPSBiYXNlVHguT3V0cztcbiAgICBpZiAob3V0cHV0cy5sZW5ndGggIT09IDEpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ1RyYW5zYWN0aW9uIGNhbiBoYXZlIG9uZSBvdXRwdXQnKTtcbiAgICB9XG4gICAgY29uc3Qgb3V0cHV0ID0gb3V0cHV0c1swXTtcblxuICAgIGlmIChCdWZmZXIuZnJvbShvdXRwdXQuYXNzZXRJZC50b0J5dGVzKCkpLnRvU3RyaW5nKCdoZXgnKSAhPT0gdGhpcy50cmFuc2FjdGlvbi5fYXNzZXRJZCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdBc3NldElEIGFyZSBub3QgZXF1YWxzJyk7XG4gICAgfVxuICAgIHRoaXMudHJhbnNhY3Rpb24uX3RvID0gW0J1ZmZlci5mcm9tKG91dHB1dC5hZGRyZXNzLnRvQnl0ZXMoKSldO1xuXG4gICAgY29uc3QgaW5wdXRzID0gYmFzZVR4LmltcG9ydGVkSW5wdXRzO1xuICAgIHRoaXMudHJhbnNhY3Rpb24uX3V0eG9zID0gdGhpcy5yZWNvdmVyVXR4b3MoaW5wdXRzKTtcblxuICAgIGNvbnN0IHRvdGFsSW5wdXRBbW91bnQgPSBpbnB1dHMucmVkdWNlKCh0LCBpKSA9PiB0ICsgaS5hbW91bnQoKSwgQmlnSW50KDApKTtcbiAgICBjb25zdCB0b3RhbE91dHB1dEFtb3VudCA9IG91dHB1dC5hbW91bnQudmFsdWUoKTtcblxuICAgIGNvbnN0IGZlZSA9IHRvdGFsSW5wdXRBbW91bnQgLSB0b3RhbE91dHB1dEFtb3VudDtcblxuICAgIGNvbnN0IGNyZWRlbnRpYWxzID0gcGFyc2VkQ3JlZGVudGlhbHMgfHwgW107XG4gICAgY29uc3QgaGFzQ3JlZGVudGlhbHMgPSBjcmVkZW50aWFscy5sZW5ndGggPiAwO1xuXG4gICAgaWYgKGhhc0NyZWRlbnRpYWxzICYmIHJhd0J5dGVzKSB7XG4gICAgICB0aGlzLnRyYW5zYWN0aW9uLl9yYXdTaWduZWRCeXRlcyA9IHJhd0J5dGVzO1xuICAgIH1cblxuICAgIGNvbnN0IGZpcnN0SW5wdXQgPSBpbnB1dHNbMF07XG4gICAgY29uc3QgaW5wdXRUaHJlc2hvbGQgPSBmaXJzdElucHV0LnNpZ0luZGljaWVzKCkubGVuZ3RoIHx8IHRoaXMudHJhbnNhY3Rpb24uX3RocmVzaG9sZDtcbiAgICB0aGlzLnRyYW5zYWN0aW9uLl90aHJlc2hvbGQgPSBpbnB1dFRocmVzaG9sZDtcblxuICAgIHRoaXMudHJhbnNhY3Rpb24uX2ZlZSA9IHtcbiAgICAgIGZlZTogZmVlLnRvU3RyaW5nKCksXG4gICAgfTtcblxuICAgIGNvbnN0IGZpcnN0VXR4byA9IHRoaXMudHJhbnNhY3Rpb24uX3V0eG9zWzBdO1xuICAgIGxldCBhZGRyZXNzTWFwOiBGbGFyZVV0aWxzLkFkZHJlc3NNYXA7XG4gICAgaWYgKFxuICAgICAgZmlyc3RVdHhvICYmXG4gICAgICBmaXJzdFV0eG8uYWRkcmVzc2VzICYmXG4gICAgICBmaXJzdFV0eG8uYWRkcmVzc2VzLmxlbmd0aCA+IDAgJiZcbiAgICAgIHRoaXMudHJhbnNhY3Rpb24uX2Zyb21BZGRyZXNzZXMgJiZcbiAgICAgIHRoaXMudHJhbnNhY3Rpb24uX2Zyb21BZGRyZXNzZXMubGVuZ3RoID49IHRoaXMudHJhbnNhY3Rpb24uX3RocmVzaG9sZFxuICAgICkge1xuICAgICAgYWRkcmVzc01hcCA9IHRoaXMuY3JlYXRlQWRkcmVzc01hcEZvclV0eG8oZmlyc3RVdHhvLCB0aGlzLnRyYW5zYWN0aW9uLl90aHJlc2hvbGQpO1xuICAgIH0gZWxzZSB7XG4gICAgICBhZGRyZXNzTWFwID0gbmV3IEZsYXJlVXRpbHMuQWRkcmVzc01hcCgpO1xuICAgICAgaWYgKHRoaXMudHJhbnNhY3Rpb24uX2Zyb21BZGRyZXNzZXMgJiYgdGhpcy50cmFuc2FjdGlvbi5fZnJvbUFkZHJlc3Nlcy5sZW5ndGggPj0gdGhpcy50cmFuc2FjdGlvbi5fdGhyZXNob2xkKSB7XG4gICAgICAgIHRoaXMudHJhbnNhY3Rpb24uX2Zyb21BZGRyZXNzZXMuc2xpY2UoMCwgdGhpcy50cmFuc2FjdGlvbi5fdGhyZXNob2xkKS5mb3JFYWNoKChhZGRyLCBpKSA9PiB7XG4gICAgICAgICAgYWRkcmVzc01hcC5zZXQobmV3IEFkZHJlc3MoYWRkciksIGkpO1xuICAgICAgICB9KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnN0IHRvQWRkcmVzcyA9IG5ldyBBZGRyZXNzKG91dHB1dC5hZGRyZXNzLnRvQnl0ZXMoKSk7XG4gICAgICAgIGFkZHJlc3NNYXAuc2V0KHRvQWRkcmVzcywgMCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgY29uc3QgYWRkcmVzc01hcHMgPSBuZXcgRmxhcmVVdGlscy5BZGRyZXNzTWFwcyhbYWRkcmVzc01hcF0pO1xuXG4gICAgbGV0IHR4Q3JlZGVudGlhbHM6IENyZWRlbnRpYWxbXTtcbiAgICBpZiAoY3JlZGVudGlhbHMubGVuZ3RoID4gMCkge1xuICAgICAgdHhDcmVkZW50aWFscyA9IGNyZWRlbnRpYWxzO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBlbXB0eVNpZ25hdHVyZXM6IFJldHVyblR5cGU8dHlwZW9mIHV0aWxzLmNyZWF0ZU5ld1NpZz5bXSA9IFtdO1xuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBpbnB1dFRocmVzaG9sZDsgaSsrKSB7XG4gICAgICAgIGVtcHR5U2lnbmF0dXJlcy5wdXNoKHV0aWxzLmNyZWF0ZU5ld1NpZygnJykpO1xuICAgICAgfVxuICAgICAgdHhDcmVkZW50aWFscyA9IFtuZXcgQ3JlZGVudGlhbChlbXB0eVNpZ25hdHVyZXMpXTtcbiAgICB9XG5cbiAgICBjb25zdCB1bnNpZ25lZFR4ID0gbmV3IFVuc2lnbmVkVHgoYmFzZVR4LCBbXSwgYWRkcmVzc01hcHMsIHR4Q3JlZGVudGlhbHMpO1xuXG4gICAgdGhpcy50cmFuc2FjdGlvbi5zZXRUcmFuc2FjdGlvbih1bnNpZ25lZFR4KTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIHN0YXRpYyB2ZXJpZnlUeFR5cGUodHhuVHlwZTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHR4blR5cGUgPT09IEZsYXJlVHJhbnNhY3Rpb25UeXBlLkV2bUltcG9ydFR4O1xuICB9XG5cbiAgdmVyaWZ5VHhUeXBlKHR4blR5cGU6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBJbXBvcnRJbkNUeEJ1aWxkZXIudmVyaWZ5VHhUeXBlKHR4blR5cGUpO1xuICB9XG5cbiAgLyoqXG4gICAqIEJ1aWxkIHRoZSBpbXBvcnQgaW4gQy1jaGFpbiB0cmFuc2FjdGlvblxuICAgKiBAcHJvdGVjdGVkXG4gICAqL1xuICBwcm90ZWN0ZWQgYnVpbGRGbGFyZVRyYW5zYWN0aW9uKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnRyYW5zYWN0aW9uLmhhc0NyZWRlbnRpYWxzKSByZXR1cm47XG4gICAgaWYgKHRoaXMudHJhbnNhY3Rpb24uX3RvLmxlbmd0aCAhPT0gMSkge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcigndG8gaXMgcmVxdWlyZWQnKTtcbiAgICB9XG4gICAgaWYgKCF0aGlzLnRyYW5zYWN0aW9uLl9mZWUuZmVlKSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCdmZWUgaXMgcmVxdWlyZWQnKTtcbiAgICB9XG4gICAgaWYgKCF0aGlzLnRyYW5zYWN0aW9uLl9jb250ZXh0KSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCdjb250ZXh0IGlzIHJlcXVpcmVkJyk7XG4gICAgfVxuICAgIGlmICghdGhpcy50cmFuc2FjdGlvbi5fZnJvbUFkZHJlc3NlcyB8fCB0aGlzLnRyYW5zYWN0aW9uLl9mcm9tQWRkcmVzc2VzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignZnJvbUFkZHJlc3NlcyBhcmUgcmVxdWlyZWQnKTtcbiAgICB9XG4gICAgaWYgKCF0aGlzLnRyYW5zYWN0aW9uLl91dHhvSGV4U3RyaW5ncyB8fCB0aGlzLnRyYW5zYWN0aW9uLl91dHhvSGV4U3RyaW5ncy5sZW5ndGggPT09IDApIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ3V0eG9IZXhTdHJpbmdzIGFyZSByZXF1aXJlZCcpO1xuICAgIH1cbiAgICBpZiAoIXRoaXMudHJhbnNhY3Rpb24uX3RocmVzaG9sZCkge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcigndGhyZXNob2xkIGlzIHJlcXVpcmVkJyk7XG4gICAgfVxuXG4gICAgY29uc3QgZXN0aW1hdGVkR2FzVW5pdHMgPSBCaWdJbnQodGhpcy50cmFuc2FjdGlvbi5fbmV0d29yay50eEZlZSkgfHwgMjAwMDAwbjtcbiAgICBjb25zdCBiYXNlRmVlSW5XZWkgPSBCaWdJbnQodGhpcy50cmFuc2FjdGlvbi5fZmVlLmZlZSk7XG4gICAgY29uc3QgYmFzZUZlZUd3ZWkgPSBiYXNlRmVlSW5XZWkgLyBCaWdJbnQoMWU5KTtcbiAgICBjb25zdCBhY3R1YWxGZWVORmxyID0gYmFzZUZlZUd3ZWkgKiBlc3RpbWF0ZWRHYXNVbml0cztcbiAgICBjb25zdCBzb3VyY2VDaGFpbiA9ICdQJztcbiAgICBjb25zdCBuYXRpdmVVdHhvcyA9IHV0aWxzLnBhcnNlVXR4b0hleEFycmF5KHRoaXMudHJhbnNhY3Rpb24uX3V0eG9IZXhTdHJpbmdzKTtcblxuICAgIC8vIFZhbGlkYXRlIFVUWE8gYmFsYW5jZSBpcyBzdWZmaWNpZW50IHRvIGNvdmVyIHRoZSBpbXBvcnQgZmVlXG4gICAgY29uc3QgdG90YWxVdHhvQW1vdW50ID0gbmF0aXZlVXR4b3MucmVkdWNlKChzdW0sIHV0eG8pID0+IHtcbiAgICAgIGNvbnN0IG91dHB1dCA9IHV0eG8ub3V0cHV0IGFzIFRyYW5zZmVyT3V0cHV0O1xuICAgICAgcmV0dXJuIHN1bSArIG91dHB1dC5hbW91bnQoKTtcbiAgICB9LCBCaWdJbnQoMCkpO1xuXG4gICAgaWYgKHRvdGFsVXR4b0Ftb3VudCA8PSBhY3R1YWxGZWVORmxyKSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKFxuICAgICAgICBgSW5zdWZmaWNpZW50IFVUWE8gYmFsYW5jZTogaGF2ZSAke3RvdGFsVXR4b0Ftb3VudC50b1N0cmluZygpfSBuRkxSLCBuZWVkIG1vcmUgdGhhbiAke2FjdHVhbEZlZU5GbHIudG9TdHJpbmcoKX0gbkZMUiB0byBjb3ZlciBpbXBvcnQgZmVlYFxuICAgICAgKTtcbiAgICB9XG4gICAgY29uc3QgaW1wb3J0VHggPSBldm0ubmV3SW1wb3J0VHgoXG4gICAgICB0aGlzLnRyYW5zYWN0aW9uLl9jb250ZXh0LFxuICAgICAgdGhpcy50cmFuc2FjdGlvbi5fdG9bMF0sXG4gICAgICB0aGlzLnRyYW5zYWN0aW9uLl9mcm9tQWRkcmVzc2VzLm1hcCgoYWRkcikgPT4gQnVmZmVyLmZyb20oYWRkcikpLFxuICAgICAgbmF0aXZlVXR4b3MsXG4gICAgICBzb3VyY2VDaGFpbixcbiAgICAgIGFjdHVhbEZlZU5GbHJcbiAgICApO1xuXG4gICAgdGhpcy50cmFuc2FjdGlvbi5zZXRUcmFuc2FjdGlvbihpbXBvcnRUeCk7XG4gIH1cblxuICAvKipcbiAgICogUmVjb3ZlciBVVFhPcyBmcm9tIGltcG9ydGVkIGlucHV0c1xuICAgKiBAcGFyYW0gaW1wb3J0ZWRJbnB1dHMgQXJyYXkgb2YgdHJhbnNmZXJhYmxlIGlucHV0c1xuICAgKiBAcmV0dXJucyBBcnJheSBvZiBkZWNvZGVkIFVUWE8gb2JqZWN0c1xuICAgKi9cbiAgcHJpdmF0ZSByZWNvdmVyVXR4b3MoaW1wb3J0ZWRJbnB1dHM6IFRyYW5zZmVyYWJsZUlucHV0W10pOiBEZWNvZGVkVXR4b09ialtdIHtcbiAgICByZXR1cm4gaW1wb3J0ZWRJbnB1dHMubWFwKChpbnB1dCkgPT4ge1xuICAgICAgY29uc3QgdHhpZCA9IGlucHV0LnV0eG9JRC50b1N0cmluZygpO1xuICAgICAgY29uc3Qgb3V0cHV0aWR4ID0gaW5wdXQudXR4b0lELm91dHB1dElkeC50b1N0cmluZygpO1xuXG4gICAgICByZXR1cm4ge1xuICAgICAgICBvdXRwdXRJRDogU0VDUDI1NksxX1RyYW5zZmVyX091dHB1dCxcbiAgICAgICAgYW1vdW50OiBpbnB1dC5hbW91bnQoKS50b1N0cmluZygpLFxuICAgICAgICB0eGlkOiB1dGlscy5jYjU4RW5jb2RlKEJ1ZmZlci5mcm9tKHR4aWQsICdoZXgnKSksXG4gICAgICAgIG91dHB1dGlkeDogb3V0cHV0aWR4LFxuICAgICAgICB0aHJlc2hvbGQ6IHRoaXMudHJhbnNhY3Rpb24uX3RocmVzaG9sZCxcbiAgICAgICAgYWRkcmVzc2VzOiB0aGlzLnRyYW5zYWN0aW9uLl9mcm9tQWRkcmVzc2VzLm1hcCgoYWRkcikgPT5cbiAgICAgICAgICB1dGlscy5hZGRyZXNzVG9TdHJpbmcodGhpcy50cmFuc2FjdGlvbi5fbmV0d29yay5ocnAsIHRoaXMudHJhbnNhY3Rpb24uX25ldHdvcmsuYWxpYXMsIEJ1ZmZlci5mcm9tKGFkZHIpKVxuICAgICAgICApLFxuICAgICAgfTtcbiAgICB9KTtcbiAgfVxufVxuIl19
166
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSW1wb3J0SW5DVHhCdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9JbXBvcnRJbkNUeEJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQ0EsbURBQTRGO0FBQzVGLCtFQUE0RTtBQUM1RSxtREFTK0I7QUFDL0Isb0RBQTRCO0FBQzVCLG1DQUE4RjtBQUU5RixNQUFhLGtCQUFtQixTQUFRLHlEQUEyQjtJQUNqRSxZQUFZLFdBQWlDO1FBQzNDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILEVBQUUsQ0FBQyxRQUFnQjtRQUNqQixJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsR0FBRyxDQUFDLGVBQUssQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztRQUN0RCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxJQUFjLGVBQWU7UUFDM0IsT0FBTywwQkFBZSxDQUFDLE1BQU0sQ0FBQztJQUNoQyxDQUFDO0lBRUQsV0FBVyxDQUFDLEVBQU0sRUFBRSxRQUFpQixFQUFFLGlCQUFnQztRQUNyRSxNQUFNLE1BQU0sR0FBRyxFQUF3QixDQUFDO1FBQ3hDLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQ3JDLE1BQU0sSUFBSSx1QkFBWSxDQUFDLHFFQUFxRSxDQUFDLENBQUM7UUFDaEcsQ0FBQztRQUVELE1BQU0sT0FBTyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUM7UUFDNUIsSUFBSSxPQUFPLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQ3pCLE1BQU0sSUFBSSxnQ0FBcUIsQ0FBQyxpQ0FBaUMsQ0FBQyxDQUFDO1FBQ3JFLENBQUM7UUFDRCxNQUFNLE1BQU0sR0FBRyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFMUIsSUFBSSxNQUFNLENB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UUFBUSxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQ3pHO2FBQ0YsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztDQUNGO0FBNUxELGdEQTRMQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VDb2luIGFzIENvaW5Db25maWcgfSBmcm9tICdAYml0Z28tYmV0YS9zdGF0aWNzJztcbmltcG9ydCB7IEJ1aWxkVHJhbnNhY3Rpb25FcnJvciwgTm90U3VwcG9ydGVkLCBUcmFuc2FjdGlvblR5cGUgfSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5pbXBvcnQgeyBBdG9taWNJbkNUcmFuc2FjdGlvbkJ1aWxkZXIgfSBmcm9tICcuL2F0b21pY0luQ1RyYW5zYWN0aW9uQnVpbGRlcic7XG5pbXBvcnQge1xuICBldm1TZXJpYWwsXG4gIFVuc2lnbmVkVHgsXG4gIENyZWRlbnRpYWwsXG4gIFRyYW5zZmVyYWJsZUlucHV0LFxuICBUcmFuc2Zlck91dHB1dCxcbiAgQWRkcmVzcyxcbiAgdXRpbHMgYXMgRmxhcmVVdGlscyxcbiAgZXZtLFxufSBmcm9tICdAZmxhcmVuZXR3b3JrL2ZsYXJlanMnO1xuaW1wb3J0IHV0aWxzIGZyb20gJy4vdXRpbHMnO1xuaW1wb3J0IHsgRGVjb2RlZFV0eG9PYmosIEZsYXJlVHJhbnNhY3Rpb25UeXBlLCBTRUNQMjU2SzFfVHJhbnNmZXJfT3V0cHV0LCBUeCB9IGZyb20gJy4vaWZhY2UnO1xuXG5leHBvcnQgY2xhc3MgSW1wb3J0SW5DVHhCdWlsZGVyIGV4dGVuZHMgQXRvbWljSW5DVHJhbnNhY3Rpb25CdWlsZGVyIHtcbiAgY29uc3RydWN0b3IoX2NvaW5Db25maWc6IFJlYWRvbmx5PENvaW5Db25maWc+KSB7XG4gICAgc3VwZXIoX2NvaW5Db25maWcpO1xuICB9XG5cbiAgLyoqXG4gICAqIEMtY2hhaW4gYWRkcmVzcyB3aG8gaXMgdGFyZ2V0IG9mIHRoZSBpbXBvcnQuXG4gICAqIEFkZHJlc3MgZm9ybWF0IGlzIGV0aCBsaWtlXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBjQWRkcmVzc1xuICAgKi9cbiAgdG8oY0FkZHJlc3M6IHN0cmluZyk6IHRoaXMge1xuICAgIHRoaXMudHJhbnNhY3Rpb24uX3RvID0gW3V0aWxzLnBhcnNlQWRkcmVzcyhjQWRkcmVzcyldO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgcHJvdGVjdGVkIGdldCB0cmFuc2FjdGlvblR5cGUoKTogVHJhbnNhY3Rpb25UeXBlIHtcbiAgICByZXR1cm4gVHJhbnNhY3Rpb25UeXBlLkltcG9ydDtcbiAgfVxuXG4gIGluaXRCdWlsZGVyKHR4OiBUeCwgcmF3Qnl0ZXM/OiBCdWZmZXIsIHBhcnNlZENyZWRlbnRpYWxzPzogQ3JlZGVudGlhbFtdKTogdGhpcyB7XG4gICAgY29uc3QgYmFzZVR4ID0gdHggYXMgZXZtU2VyaWFsLkltcG9ydFR4O1xuICAgIGlmICghdGhpcy52ZXJpZnlUeFR5cGUoYmFzZVR4Ll90eXBlKSkge1xuICAgICAgdGhyb3cgbmV3IE5vdFN1cHBvcnRlZCgnVHJhbnNhY3Rpb24gY2Fubm90IGJlIHBhcnNlZCBvciBoYXMgYW4gdW5zdXBwb3J0ZWQgdHJhbnNhY3Rpb24gdHlwZScpO1xuICAgIH1cblxuICAgIGNvbnN0IG91dHB1dHMgPSBiYXNlVHguT3V0cztcbiAgICBpZiAob3V0cHV0cy5sZW5ndGggIT09IDEpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ1RyYW5zYWN0aW9uIGNhbiBoYXZlIG9uZSBvdXRwdXQnKTtcbiAgICB9XG4gICAgY29uc3Qgb3V0cHV0ID0gb3V0cHV0c1swXTtcblxuICAgIGlmIChCdWZmZXIuZnJvbShvdXRwdXQuYXNzZXRJZC50b0J5dGVzKCkpLnRvU3RyaW5nKCdoZXgnKSAhPT0gdGhpcy50cmFuc2FjdGlvbi5fYXNzZXRJZCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdBc3NldElEIGFyZSBub3QgZXF1YWxzJyk7XG4gICAgfVxuICAgIHRoaXMudHJhbnNhY3Rpb24uX3RvID0gW0J1ZmZlci5mcm9tKG91dHB1dC5hZGRyZXNzLnRvQnl0ZXMoKSldO1xuXG4gICAgY29uc3QgaW5wdXRzID0gYmFzZVR4LmltcG9ydGVkSW5wdXRzO1xuICAgIHRoaXMudHJhbnNhY3Rpb24uX3V0eG9zID0gdGhpcy5yZWNvdmVyVXR4b3MoaW5wdXRzKTtcblxuICAgIGNvbnN0IHRvdGFsSW5wdXRBbW91bnQgPSBpbnB1dHMucmVkdWNlKCh0LCBpKSA9PiB0ICsgaS5hbW91bnQoKSwgQmlnSW50KDApKTtcbiAgICBjb25zdCB0b3RhbE91dHB1dEFtb3VudCA9IG91dHB1dC5hbW91bnQudmFsdWUoKTtcblxuICAgIGNvbnN0IGZlZSA9IHRvdGFsSW5wdXRBbW91bnQgLSB0b3RhbE91dHB1dEFtb3VudDtcblxuICAgIGNvbnN0IGNyZWRlbnRpYWxzID0gcGFyc2VkQ3JlZGVudGlhbHMgfHwgW107XG4gICAgY29uc3QgaGFzQ3JlZGVudGlhbHMgPSBjcmVkZW50aWFscy5sZW5ndGggPiAwO1xuXG4gICAgaWYgKGhhc0NyZWRlbnRpYWxzICYmIHJhd0J5dGVzKSB7XG4gICAgICB0aGlzLnRyYW5zYWN0aW9uLl9yYXdTaWduZWRCeXRlcyA9IHJhd0J5dGVzO1xuICAgIH1cblxuICAgIGNvbnN0IGZpcnN0SW5wdXQgPSBpbnB1dHNbMF07XG4gICAgY29uc3QgaW5wdXRUaHJlc2hvbGQgPSBmaXJzdElucHV0LnNpZ0luZGljaWVzKCkubGVuZ3RoIHx8IHRoaXMudHJhbnNhY3Rpb24uX3RocmVzaG9sZDtcbiAgICB0aGlzLnRyYW5zYWN0aW9uLl90aHJlc2hvbGQgPSBpbnB1dFRocmVzaG9sZDtcblxuICAgIHRoaXMudHJhbnNhY3Rpb24uX2ZlZSA9IHtcbiAgICAgIGZlZTogZmVlLnRvU3RyaW5nKCksXG4gICAgfTtcblxuICAgIGNvbnN0IGZpcnN0VXR4byA9IHRoaXMudHJhbnNhY3Rpb24uX3V0eG9zWzBdO1xuICAgIGxldCBhZGRyZXNzTWFwOiBGbGFyZVV0aWxzLkFkZHJlc3NNYXA7XG4gICAgaWYgKFxuICAgICAgZmlyc3RVdHhvICYmXG4gICAgICBmaXJzdFV0eG8uYWRkcmVzc2VzICYmXG4gICAgICBmaXJzdFV0eG8uYWRkcmVzc2VzLmxlbmd0aCA+IDAgJiZcbiAgICAgIHRoaXMudHJhbnNhY3Rpb24uX2Zyb21BZGRyZXNzZXMgJiZcbiAgICAgIHRoaXMudHJhbnNhY3Rpb24uX2Zyb21BZGRyZXNzZXMubGVuZ3RoID49IHRoaXMudHJhbnNhY3Rpb24uX3RocmVzaG9sZFxuICAgICkge1xuICAgICAgYWRkcmVzc01hcCA9IHRoaXMuY3JlYXRlQWRkcmVzc01hcEZvclV0eG8oZmlyc3RVdHhvLCB0aGlzLnRyYW5zYWN0aW9uLl90aHJlc2hvbGQpO1xuICAgIH0gZWxzZSB7XG4gICAgICBhZGRyZXNzTWFwID0gbmV3IEZsYXJlVXRpbHMuQWRkcmVzc01hcCgpO1xuICAgICAgaWYgKHRoaXMudHJhbnNhY3Rpb24uX2Zyb21BZGRyZXNzZXMgJiYgdGhpcy50cmFuc2FjdGlvbi5fZnJvbUFkZHJlc3Nlcy5sZW5ndGggPj0gdGhpcy50cmFuc2FjdGlvbi5fdGhyZXNob2xkKSB7XG4gICAgICAgIHRoaXMudHJhbnNhY3Rpb24uX2Zyb21BZGRyZXNzZXMuc2xpY2UoMCwgdGhpcy50cmFuc2FjdGlvbi5fdGhyZXNob2xkKS5mb3JFYWNoKChhZGRyLCBpKSA9PiB7XG4gICAgICAgICAgYWRkcmVzc01hcC5zZXQobmV3IEFkZHJlc3MoYWRkciksIGkpO1xuICAgICAgICB9KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnN0IHRvQWRkcmVzcyA9IG5ldyBBZGRyZXNzKG91dHB1dC5hZGRyZXNzLnRvQnl0ZXMoKSk7XG4gICAgICAgIGFkZHJlc3NNYXAuc2V0KHRvQWRkcmVzcywgMCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgY29uc3QgYWRkcmVzc01hcHMgPSBuZXcgRmxhcmVVdGlscy5BZGRyZXNzTWFwcyhbYWRkcmVzc01hcF0pO1xuXG4gICAgbGV0IHR4Q3JlZGVudGlhbHM6IENyZWRlbnRpYWxbXTtcbiAgICBpZiAoY3JlZGVudGlhbHMubGVuZ3RoID4gMCkge1xuICAgICAgdHhDcmVkZW50aWFscyA9IGNyZWRlbnRpYWxzO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBlbXB0eVNpZ25hdHVyZXM6IFJldHVyblR5cGU8dHlwZW9mIHV0aWxzLmNyZWF0ZU5ld1NpZz5bXSA9IFtdO1xuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBpbnB1dFRocmVzaG9sZDsgaSsrKSB7XG4gICAgICAgIGVtcHR5U2lnbmF0dXJlcy5wdXNoKHV0aWxzLmNyZWF0ZU5ld1NpZygnJykpO1xuICAgICAgfVxuICAgICAgdHhDcmVkZW50aWFscyA9IFtuZXcgQ3JlZGVudGlhbChlbXB0eVNpZ25hdHVyZXMpXTtcbiAgICB9XG5cbiAgICBjb25zdCB1bnNpZ25lZFR4ID0gbmV3IFVuc2lnbmVkVHgoYmFzZVR4LCBbXSwgYWRkcmVzc01hcHMsIHR4Q3JlZGVudGlhbHMpO1xuXG4gICAgdGhpcy50cmFuc2FjdGlvbi5zZXRUcmFuc2FjdGlvbih1bnNpZ25lZFR4KTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIHN0YXRpYyB2ZXJpZnlUeFR5cGUodHhuVHlwZTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHR4blR5cGUgPT09IEZsYXJlVHJhbnNhY3Rpb25UeXBlLkV2bUltcG9ydFR4O1xuICB9XG5cbiAgdmVyaWZ5VHhUeXBlKHR4blR5cGU6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBJbXBvcnRJbkNUeEJ1aWxkZXIudmVyaWZ5VHhUeXBlKHR4blR5cGUpO1xuICB9XG5cbiAgLyoqXG4gICAqIEJ1aWxkIHRoZSBpbXBvcnQgaW4gQy1jaGFpbiB0cmFuc2FjdGlvblxuICAgKiBAcHJvdGVjdGVkXG4gICAqL1xuICBwcm90ZWN0ZWQgYnVpbGRGbGFyZVRyYW5zYWN0aW9uKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnRyYW5zYWN0aW9uLmhhc0NyZWRlbnRpYWxzKSByZXR1cm47XG4gICAgaWYgKHRoaXMudHJhbnNhY3Rpb24uX3RvLmxlbmd0aCAhPT0gMSkge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcigndG8gaXMgcmVxdWlyZWQnKTtcbiAgICB9XG4gICAgaWYgKCF0aGlzLnRyYW5zYWN0aW9uLl9mZWUuZmVlKSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCdmZWUgaXMgcmVxdWlyZWQnKTtcbiAgICB9XG4gICAgaWYgKCF0aGlzLnRyYW5zYWN0aW9uLl9jb250ZXh0KSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCdjb250ZXh0IGlzIHJlcXVpcmVkJyk7XG4gICAgfVxuICAgIGlmICghdGhpcy50cmFuc2FjdGlvbi5fZnJvbUFkZHJlc3NlcyB8fCB0aGlzLnRyYW5zYWN0aW9uLl9mcm9tQWRkcmVzc2VzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignZnJvbUFkZHJlc3NlcyBhcmUgcmVxdWlyZWQnKTtcbiAgICB9XG4gICAgaWYgKCF0aGlzLnRyYW5zYWN0aW9uLl91dHhvcyB8fCB0aGlzLnRyYW5zYWN0aW9uLl91dHhvcy5sZW5ndGggPT09IDApIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ1VUWE9zIGFyZSByZXF1aXJlZCcpO1xuICAgIH1cbiAgICBpZiAoIXRoaXMudHJhbnNhY3Rpb24uX3RocmVzaG9sZCkge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcigndGhyZXNob2xkIGlzIHJlcXVpcmVkJyk7XG4gICAgfVxuXG4gICAgY29uc3QgZXN0aW1hdGVkR2FzVW5pdHMgPSBCaWdJbnQodGhpcy50cmFuc2FjdGlvbi5fbmV0d29yay50eEZlZSkgfHwgMjAwMDAwbjtcbiAgICBjb25zdCBiYXNlRmVlSW5XZWkgPSBCaWdJbnQodGhpcy50cmFuc2FjdGlvbi5fZmVlLmZlZSk7XG4gICAgY29uc3QgYmFzZUZlZUd3ZWkgPSBiYXNlRmVlSW5XZWkgLyBCaWdJbnQoMWU5KTtcbiAgICBjb25zdCBhY3R1YWxGZWVORmxyID0gYmFzZUZlZUd3ZWkgKiBlc3RpbWF0ZWRHYXNVbml0cztcbiAgICBjb25zdCBzb3VyY2VDaGFpbiA9ICdQJztcblxuICAgIC8vIENvbnZlcnQgZGVjb2RlZCBVVFhPcyB0byBuYXRpdmUgRmxhcmVKUyBVdHhvIG9iamVjdHNcbiAgICBjb25zdCBhc3NldElkID0gdXRpbHMuY2I1OEVuY29kZShCdWZmZXIuZnJvbSh0aGlzLnRyYW5zYWN0aW9uLl9hc3NldElkLCAnaGV4JykpO1xuICAgIGNvbnN0IG5hdGl2ZVV0eG9zID0gdXRpbHMuZGVjb2RlZFRvVXR4b3ModGhpcy50cmFuc2FjdGlvbi5fdXR4b3MsIGFzc2V0SWQpO1xuXG4gICAgLy8gVmFsaWRhdGUgVVRYTyBiYWxhbmNlIGlzIHN1ZmZpY2llbnQgdG8gY292ZXIgdGhlIGltcG9ydCBmZWVcbiAgICBjb25zdCB0b3RhbFV0eG9BbW91bnQgPSBuYXRpdmVVdHhvcy5yZWR1Y2UoKHN1bSwgdXR4bykgPT4ge1xuICAgICAgY29uc3Qgb3V0cHV0ID0gdXR4by5vdXRwdXQgYXMgVHJhbnNmZXJPdXRwdXQ7XG4gICAgICByZXR1cm4gc3VtICsgb3V0cHV0LmFtb3VudCgpO1xuICAgIH0sIEJpZ0ludCgwKSk7XG5cbiAgICBpZiAodG90YWxVdHhvQW1vdW50IDw9IGFjdHVhbEZlZU5GbHIpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoXG4gICAgICAgIGBJbnN1ZmZpY2llbnQgVVRYTyBiYWxhbmNlOiBoYXZlICR7dG90YWxVdHhvQW1vdW50LnRvU3RyaW5nKCl9IG5GTFIsIG5lZWQgbW9yZSB0aGFuICR7YWN0dWFsRmVlTkZsci50b1N0cmluZygpfSBuRkxSIHRvIGNvdmVyIGltcG9ydCBmZWVgXG4gICAgICApO1xuICAgIH1cbiAgICBjb25zdCBpbXBvcnRUeCA9IGV2bS5uZXdJbXBvcnRUeChcbiAgICAgIHRoaXMudHJhbnNhY3Rpb24uX2NvbnRleHQsXG4gICAgICB0aGlzLnRyYW5zYWN0aW9uLl90b1swXSxcbiAgICAgIHRoaXMudHJhbnNhY3Rpb24uX2Zyb21BZGRyZXNzZXMubWFwKChhZGRyKSA9PiBCdWZmZXIuZnJvbShhZGRyKSksXG4gICAgICBuYXRpdmVVdHhvcyxcbiAgICAgIHNvdXJjZUNoYWluLFxuICAgICAgYWN0dWFsRmVlTkZsclxuICAgICk7XG5cbiAgICB0aGlzLnRyYW5zYWN0aW9uLnNldFRyYW5zYWN0aW9uKGltcG9ydFR4KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZWNvdmVyIFVUWE9zIGZyb20gaW1wb3J0ZWQgaW5wdXRzXG4gICAqIEBwYXJhbSBpbXBvcnRlZElucHV0cyBBcnJheSBvZiB0cmFuc2ZlcmFibGUgaW5wdXRzXG4gICAqIEByZXR1cm5zIEFycmF5IG9mIGRlY29kZWQgVVRYTyBvYmplY3RzXG4gICAqL1xuICBwcml2YXRlIHJlY292ZXJVdHhvcyhpbXBvcnRlZElucHV0czogVHJhbnNmZXJhYmxlSW5wdXRbXSk6IERlY29kZWRVdHhvT2JqW10ge1xuICAgIHJldHVybiBpbXBvcnRlZElucHV0cy5tYXAoKGlucHV0KSA9PiB7XG4gICAgICBjb25zdCB0eGlkID0gaW5wdXQudXR4b0lELnRvU3RyaW5nKCk7XG4gICAgICBjb25zdCBvdXRwdXRpZHggPSBpbnB1dC51dHhvSUQub3V0cHV0SWR4LnRvU3RyaW5nKCk7XG5cbiAgICAgIHJldHVybiB7XG4gICAgICAgIG91dHB1dElEOiBTRUNQMjU2SzFfVHJhbnNmZXJfT3V0cHV0LFxuICAgICAgICBhbW91bnQ6IGlucHV0LmFtb3VudCgpLnRvU3RyaW5nKCksXG4gICAgICAgIHR4aWQ6IHV0aWxzLmNiNThFbmNvZGUoQnVmZmVyLmZyb20odHhpZCwgJ2hleCcpKSxcbiAgICAgICAgb3V0cHV0aWR4OiBvdXRwdXRpZHgsXG4gICAgICAgIHRocmVzaG9sZDogdGhpcy50cmFuc2FjdGlvbi5fdGhyZXNob2xkLFxuICAgICAgICBhZGRyZXNzZXM6IHRoaXMudHJhbnNhY3Rpb24uX2Zyb21BZGRyZXNzZXMubWFwKChhZGRyKSA9PlxuICAgICAgICAgIHV0aWxzLmFkZHJlc3NUb1N0cmluZyh0aGlzLnRyYW5zYWN0aW9uLl9uZXR3b3JrLmhycCwgdGhpcy50cmFuc2FjdGlvbi5fbmV0d29yay5hbGlhcywgQnVmZmVyLmZyb20oYWRkcikpXG4gICAgICAgICksXG4gICAgICB9O1xuICAgIH0pO1xuICB9XG59XG4iXX0=
@@ -1 +1 @@
1
- {"version":3,"file":"ImportInPTxBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/ImportInPTxBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAuC,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC5F,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAOL,UAAU,EAEX,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAmE,EAAE,EAAE,MAAM,SAAS,CAAC;AAE9F,qBAAa,kBAAmB,SAAQ,wBAAwB;gBAClD,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAQ7C,SAAS,KAAK,eAAe,IAAI,eAAe,CAE/C;IAED;;;OAGG;IACH,UAAU,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI;IAUjD;;;OAGG;IACH,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,IAAI;IAS7B,WAAW,CAAC,EAAE,EAAE,EAAE,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,iBAAiB,CAAC,EAAE,UAAU,EAAE,GAAG,IAAI;IAqD9E,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAI7C,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAItC;;;OAGG;cACa,qBAAqB,IAAI,OAAO,CAAC,IAAI,CAAC;IAqEtD;;;;OAIG;IACH,OAAO,CAAC,YAAY;CAiBrB"}
1
+ {"version":3,"file":"ImportInPTxBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/ImportInPTxBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAuC,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC5F,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAOL,UAAU,EAEX,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAmE,EAAE,EAAE,MAAM,SAAS,CAAC;AAE9F,qBAAa,kBAAmB,SAAQ,wBAAwB;gBAClD,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAQ7C,SAAS,KAAK,eAAe,IAAI,eAAe,CAE/C;IAED;;;OAGG;IACH,UAAU,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI;IAUjD;;;OAGG;IACH,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,IAAI;IAS7B,WAAW,CAAC,EAAE,EAAE,EAAE,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,iBAAiB,CAAC,EAAE,UAAU,EAAE,GAAG,IAAI;IAqD9E,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAI7C,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAItC;;;OAGG;cACa,qBAAqB,IAAI,OAAO,CAAC,IAAI,CAAC;IAsEtD;;;;OAIG;IACH,OAAO,CAAC,YAAY;CAiBrB"}
@@ -94,7 +94,7 @@ class ImportInPTxBuilder extends atomicTransactionBuilder_1.AtomicTransactionBui
94
94
  async buildFlareTransaction() {
95
95
  if (this.transaction.hasCredentials)
96
96
  return;
97
- if (this.transaction._utxoHexStrings.length === 0) {
97
+ if (!this.transaction._utxos || this.transaction._utxos.length === 0) {
98
98
  throw new sdk_core_1.BuildTransactionError('UTXOs are required');
99
99
  }
100
100
  if (!this.transaction._feeState) {
@@ -115,8 +115,9 @@ class ImportInPTxBuilder extends atomicTransactionBuilder_1.AtomicTransactionBui
115
115
  if (this.transaction._locktime === undefined) {
116
116
  throw new sdk_core_1.BuildTransactionError('locktime is required');
117
117
  }
118
- // Convert hex strings to native UTXOs for FlareJS API
119
- const nativeUtxos = utils_1.default.parseUtxoHexArray(this.transaction._utxoHexStrings);
118
+ // Convert decoded UTXOs to native FlareJS Utxo objects
119
+ const assetId = utils_1.default.cb58Encode(Buffer.from(this.transaction._assetId, 'hex'));
120
+ const nativeUtxos = utils_1.default.decodedToUtxos(this.transaction._utxos, assetId);
120
121
  // Validate UTXO balance is non-zero (fee will be deducted during import)
121
122
  const totalUtxoAmount = nativeUtxos.reduce((sum, utxo) => {
122
123
  const output = utxo.output;
@@ -169,4 +170,4 @@ class ImportInPTxBuilder extends atomicTransactionBuilder_1.AtomicTransactionBui
169
170
  }
170
171
  }
171
172
  exports.ImportInPTxBuilder = ImportInPTxBuilder;
172
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSW1wb3J0SW5QVHhCdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9JbXBvcnRJblBUeEJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQ0EsbURBQTRGO0FBQzVGLHlFQUFzRTtBQUN0RSxtREFTK0I7QUFDL0Isb0RBQTRCO0FBQzVCLG1DQUE4RjtBQUU5RixNQUFhLGtCQUFtQixTQUFRLG1EQUF3QjtJQUM5RCxZQUFZLFdBQWlDO1FBQzNDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNuQixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsZUFBSyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBQ3ZGLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsZUFBSyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FDN0csS0FBSyxDQUNOLENBQUM7SUFDSixDQUFDO0lBRUQsSUFBYyxlQUFlO1FBQzNCLE9BQU8sMEJBQWUsQ0FBQyxNQUFNLENBQUM7SUFDaEMsQ0FBQztJQUVEOzs7T0FHRztJQUNILFVBQVUsQ0FBQyxZQUErQjtRQUN4QyxNQUFNLE9BQU8sR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDNUUsTUFBTSxjQUFjLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDdEUsSUFBSSxjQUFjLEVBQUUsQ0FBQztZQUNuQixNQUFNLElBQUksZ0NBQXFCLENB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LENBQUMsQ0FBQztJQUM1QyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNLLFlBQVksQ0FBQyxjQUFtQztRQUN0RCxPQUFPLGNBQWMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtZQUNsQyxNQUFNLE1BQU0sR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDO1lBQzVCLE1BQU0sYUFBYSxHQUFHLEtBQUssQ0FBQyxLQUFzQixDQUFDO1lBQ25ELE1BQU0sSUFBSSxHQUFtQjtnQkFDM0IsUUFBUSxFQUFFLGlDQUF5QjtnQkFDbkMsTUFBTSxFQUFFLGFBQWEsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7Z0JBQ3pDLElBQUksRUFBRSxlQUFLLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO2dCQUMxRCxTQUFTLEVBQUUsTUFBTSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxRQUFRLEVBQUU7Z0JBQzlDLFNBQVMsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLFVBQVU7Z0JBQ3RDLFNBQVMsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUN0RCxlQUFLLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUN6RzthQUNGLENBQUM7WUFDRixPQUFPLElBQUksQ0FBQztRQUNkLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztDQUNGO0FBcE1ELGdEQW9NQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VDb2luIGFzIENvaW5Db25maWcgfSBmcm9tICdAYml0Z28tYmV0YS9zdGF0aWNzJztcbmltcG9ydCB7IEJ1aWxkVHJhbnNhY3Rpb25FcnJvciwgTm90U3VwcG9ydGVkLCBUcmFuc2FjdGlvblR5cGUgfSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5pbXBvcnQgeyBBdG9taWNUcmFuc2FjdGlvbkJ1aWxkZXIgfSBmcm9tICcuL2F0b21pY1RyYW5zYWN0aW9uQnVpbGRlcic7XG5pbXBvcnQge1xuICBwdm1TZXJpYWwsXG4gIFVuc2lnbmVkVHgsXG4gIFRyYW5zZmVyYWJsZUlucHV0LFxuICBUcmFuc2Zlck91dHB1dCxcbiAgVHJhbnNmZXJJbnB1dCxcbiAgdXRpbHMgYXMgRmxhcmVVdGlscyxcbiAgQ3JlZGVudGlhbCxcbiAgcHZtLFxufSBmcm9tICdAZmxhcmVuZXR3b3JrL2ZsYXJlanMnO1xuaW1wb3J0IHV0aWxzIGZyb20gJy4vdXRpbHMnO1xuaW1wb3J0IHsgRGVjb2RlZFV0eG9PYmosIEZsYXJlVHJhbnNhY3Rpb25UeXBlLCBTRUNQMjU2SzFfVHJhbnNmZXJfT3V0cHV0LCBUeCB9IGZyb20gJy4vaWZhY2UnO1xuXG5leHBvcnQgY2xhc3MgSW1wb3J0SW5QVHhCdWlsZGVyIGV4dGVuZHMgQXRvbWljVHJhbnNhY3Rpb25CdWlsZGVyIHtcbiAgY29uc3RydWN0b3IoX2NvaW5Db25maWc6IFJlYWRvbmx5PENvaW5Db25maWc+KSB7XG4gICAgc3VwZXIoX2NvaW5Db25maWcpO1xuICAgIHRoaXMuX2V4dGVybmFsQ2hhaW5JZCA9IHV0aWxzLmNiNThEZWNvZGUodGhpcy50cmFuc2FjdGlvbi5fbmV0d29yay5jQ2hhaW5CbG9ja2NoYWluSUQpO1xuICAgIHRoaXMudHJhbnNhY3Rpb24uX2Jsb2NrY2hhaW5JRCA9IEJ1ZmZlci5mcm9tKHV0aWxzLmNiNThEZWNvZGUodGhpcy50cmFuc2FjdGlvbi5fbmV0d29yay5ibG9ja2NoYWluSUQpKS50b1N0cmluZyhcbiAgICAgICdoZXgnXG4gICAgKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXQgdHJhbnNhY3Rpb25UeXBlKCk6IFRyYW5zYWN0aW9uVHlwZSB7XG4gICAgcmV0dXJuIFRyYW5zYWN0aW9uVHlwZS5JbXBvcnQ7XG4gIH1cblxuICAvKipcbiAgICogQHBhcmFtIHtzdHJpbmcgfCBzdHJpbmdbXX0gc2VuZGVyUHViS2V5IC0gQy1jaGFpbiBhZGRyZXNzKGVzKSB3aXRoIEMtIHByZWZpeFxuICAgKiBAdGhyb3dzIHtCdWlsZFRyYW5zYWN0aW9uRXJyb3J9IGlmIGFueSBhZGRyZXNzIGlzIG5vdCBhIEMtY2hhaW4gYWRkcmVzc1xuICAgKi9cbiAgZnJvbVB1YktleShzZW5kZXJQdWJLZXk6IHN0cmluZyB8IHN0cmluZ1tdKTogdGhpcyB7XG4gICAgY29uc3QgcHViS2V5cyA9IEFycmF5LmlzQXJyYXkoc2VuZGVyUHViS2V5KSA/IHNlbmRlclB1YktleSA6IFtzZW5kZXJQdWJLZXldO1xuICAgIGNvbnN0IGludmFsaWRBZGRyZXNzID0gcHViS2V5cy5maW5kKChhZGRyKSA9PiAhYWRkci5zdGFydHNXaXRoKCdDLScpKTtcbiAgICBpZiAoaW52YWxpZEFkZHJlc3MpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoYEludmFsaWQgZnJvbUFkZHJlc3M6IGV4cGVjdGVkIEMtY2hhaW4gYWRkcmVzcyAoQy0uLi4pLCBnb3QgJHtpbnZhbGlkQWRkcmVzc31gKTtcbiAgICB9XG4gICAgdGhpcy50cmFuc2FjdGlvbi5fZnJvbUFkZHJlc3NlcyA9IHB1YktleXMubWFwKChhZGRyKSA9PiB1dGlscy5wYXJzZUFkZHJlc3MoYWRkcikpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSB7c3RyaW5nW119IGFkZHJlc3NlcyAtIEFycmF5IG9mIFAtY2hhaW4gYWRkcmVzc2VzIChiZWNoMzIgZm9ybWF0IHdpdGggUC0gcHJlZml4KVxuICAgKiBAdGhyb3dzIHtCdWlsZFRyYW5zYWN0aW9uRXJyb3J9IGlmIGFueSBhZGRyZXNzIGlzIG5vdCBhIFAtY2hhaW4gYWRkcmVzc1xuICAgKi9cbiAgdG8oYWRkcmVzc2VzOiBzdHJpbmdbXSk6IHRoaXMge1xuICAgIGNvbnN0IGludmFsaWRBZGRyZXNzID0gYWRkcmVzc2VzLmZpbmQoKGFkZHIpID0+ICFhZGRyLnN0YXJ0c1dpdGgoJ1AtJykpO1xuICAgIGlmIChpbnZhbGlkQWRkcmVzcykge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcihgSW52YWxpZCB0b0FkZHJlc3M6IGV4cGVjdGVkIFAtY2hhaW4gYWRkcmVzcyAoUC0uLi4pLCBnb3QgJHtpbnZhbGlkQWRkcmVzc31gKTtcbiAgICB9XG4gICAgdGhpcy50cmFuc2FjdGlvbi5fdG8gPSBhZGRyZXNzZXMubWFwKChhZGRyKSA9PiB1dGlscy5wYXJzZUFkZHJlc3MoYWRkcikpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgaW5pdEJ1aWxkZXIodHg6IFR4LCByYXdCeXRlcz86IEJ1ZmZlciwgcGFyc2VkQ3JlZGVudGlhbHM/OiBDcmVkZW50aWFsW10pOiB0aGlzIHtcbiAgICBjb25zdCBpbXBvcnRUeCA9IHR4IGFzIHB2bVNlcmlhbC5JbXBvcnRUeDtcblxuICAgIGlmICghdGhpcy52ZXJpZnlUeFR5cGUoaW1wb3J0VHguX3R5cGUpKSB7XG4gICAgICB0aHJvdyBuZXcgTm90U3VwcG9ydGVkKCdUcmFuc2FjdGlvbiBjYW5ub3QgYmUgcGFyc2VkIG9yIGhhcyBhbiB1bnN1cHBvcnRlZCB0cmFuc2FjdGlvbiB0eXBlJyk7XG4gICAgfVxuXG4gICAgY29uc3Qgb3V0cHV0cyA9IGltcG9ydFR4LmJhc2VUeC5vdXRwdXRzO1xuICAgIGlmIChvdXRwdXRzLmxlbmd0aCAhPT0gMSkge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignVHJhbnNhY3Rpb24gY2FuIGhhdmUgb25lIGV4dGVybmFsIG91dHB1dCcpO1xuICAgIH1cblxuICAgIGNvbnN0IG91dHB1dCA9IG91dHB1dHNbMF07XG4gICAgY29uc3QgYXNzZXRJZCA9IG91dHB1dC5hc3NldElkLnRvQnl0ZXMoKTtcbiAgICBpZiAoQnVmZmVyLmNvbXBhcmUoYXNzZXRJZCwgQnVmZmVyLmZyb20odGhpcy50cmFuc2FjdGlvbi5fYXNzZXRJZCwgJ2hleCcpKSAhPT0gMCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdUaGUgQXNzZXQgSUQgb2YgdGhlIG91dHB1dCBkb2VzIG5vdCBtYXRjaCB0aGUgdHJhbnNhY3Rpb24nKTtcbiAgICB9XG5cbiAgICBjb25zdCB0cmFuc2Zlck91dHB1dCA9IG91dHB1dC5vdXRwdXQgYXMgVHJhbnNmZXJPdXRwdXQ7XG4gICAgY29uc3Qgb3V0cHV0T3duZXJzID0gdHJhbnNmZXJPdXRwdXQub3V0cHV0T3duZXJzO1xuICAgIHRoaXMudHJhbnNhY3Rpb24uX2xvY2t0aW1lID0gb3V0cHV0T3duZXJzLmxvY2t0aW1lLnZhbHVlKCk7XG4gICAgdGhpcy50cmFuc2FjdGlvbi5fdGhyZXNob2xkID0gb3V0cHV0T3duZXJzLnRocmVzaG9sZC52YWx1ZSgpO1xuICAgIHRoaXMudHJhbnNhY3Rpb24uX2Zyb21BZGRyZXNzZXMgPSBvdXRwdXRPd25lcnMuYWRkcnMubWFwKChhZGRyKSA9PiBCdWZmZXIuZnJvbShhZGRyLnRvQnl0ZXMoKSkpO1xuICAgIHRoaXMuX2V4dGVybmFsQ2hhaW5JZCA9IEJ1ZmZlci5mcm9tKGltcG9ydFR4LnNvdXJjZUNoYWluLnRvQnl0ZXMoKSk7XG4gICAgdGhpcy50cmFuc2FjdGlvbi5fdXR4b3MgPSB0aGlzLnJlY292ZXJVdHhvcyhpbXBvcnRUeC5pbnMpO1xuXG4gICAgY29uc3QgdG90YWxJbnB1dEFtb3VudCA9IGltcG9ydFR4Lmlucy5yZWR1Y2UoKHN1bSwgaW5wdXQpID0+IHN1bSArIGlucHV0LmFtb3VudCgpLCBCaWdJbnQoMCkpO1xuICAgIGNvbnN0IG91dHB1dEFtb3VudCA9IHRyYW5zZmVyT3V0cHV0LmFtb3VudCgpO1xuICAgIGNvbnN0IGZlZSA9IHRvdGFsSW5wdXRBbW91bnQgLSBvdXRwdXRBbW91bnQ7XG4gICAgdGhpcy50cmFuc2FjdGlvbi5fZmVlLmZlZSA9IGZlZS50b1N0cmluZygpO1xuXG4gICAgY29uc3QgY3JlZGVudGlhbHMgPSBwYXJzZWRDcmVkZW50aWFscyB8fCBbXTtcbiAgICBjb25zdCBoYXNDcmVkZW50aWFscyA9IGNyZWRlbnRpYWxzLmxlbmd0aCA+IDA7XG5cbiAgICBpZiAocmF3Qnl0ZXMgJiYgaGFzQ3JlZGVudGlhbHMpIHtcbiAgICAgIHRoaXMudHJhbnNhY3Rpb24uX3Jhd1NpZ25lZEJ5dGVzID0gcmF3Qnl0ZXM7XG4gICAgfVxuXG4gICAgY29uc3QgdHhDcmVkZW50aWFscyA9XG4gICAgICBjcmVkZW50aWFscy5sZW5ndGggPiAwXG4gICAgICAgID8gY3JlZGVudGlhbHNcbiAgICAgICAgOiB0aGlzLnRyYW5zYWN0aW9uLl91dHhvcy5tYXAoKHV0eG8pID0+IHRoaXMuY3JlYXRlQ3JlZGVudGlhbEZvclV0eG8odXR4bywgdGhpcy50cmFuc2FjdGlvbi5fdGhyZXNob2xkKSk7XG5cbiAgICBjb25zdCBhZGRyZXNzTWFwcyA9IHRoaXMudHJhbnNhY3Rpb24uX3V0eG9zLm1hcCgodXR4bykgPT5cbiAgICAgIHRoaXMuY3JlYXRlQWRkcmVzc01hcEZvclV0eG8odXR4bywgdGhpcy50cmFuc2FjdGlvbi5fdGhyZXNob2xkKVxuICAgICk7XG5cbiAgICBjb25zdCB1bnNpZ25lZFR4ID0gbmV3IFVuc2lnbmVkVHgoaW1wb3J0VHgsIFtdLCBuZXcgRmxhcmVVdGlscy5BZGRyZXNzTWFwcyhhZGRyZXNzTWFwcyksIHR4Q3JlZGVudGlhbHMpO1xuXG4gICAgdGhpcy50cmFuc2FjdGlvbi5zZXRUcmFuc2FjdGlvbih1bnNpZ25lZFR4KTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIHN0YXRpYyB2ZXJpZnlUeFR5cGUodHhuVHlwZTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHR4blR5cGUgPT09IEZsYXJlVHJhbnNhY3Rpb25UeXBlLlB2bUltcG9ydFR4O1xuICB9XG5cbiAgdmVyaWZ5VHhUeXBlKHR4blR5cGU6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBJbXBvcnRJblBUeEJ1aWxkZXIudmVyaWZ5VHhUeXBlKHR4blR5cGUpO1xuICB9XG5cbiAgLyoqXG4gICAqIEJ1aWxkIHRoZSBpbXBvcnQgdHJhbnNhY3Rpb24gZm9yIFAtY2hhaW4gKGltcG9ydGluZyBGUk9NIEMtY2hhaW4pXG4gICAqIEBwcm90ZWN0ZWRcbiAgICovXG4gIHByb3RlY3RlZCBhc3luYyBidWlsZEZsYXJlVHJhbnNhY3Rpb24oKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgaWYgKHRoaXMudHJhbnNhY3Rpb24uaGFzQ3JlZGVudGlhbHMpIHJldHVybjtcbiAgICBpZiAodGhpcy50cmFuc2FjdGlvbi5fdXR4b0hleFN0cmluZ3MubGVuZ3RoID09PSAwKSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCdVVFhPcyBhcmUgcmVxdWlyZWQnKTtcbiAgICB9XG4gICAgaWYgKCF0aGlzLnRyYW5zYWN0aW9uLl9mZWVTdGF0ZSkge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignRmVlIHN0YXRlIGlzIHJlcXVpcmVkJyk7XG4gICAgfVxuICAgIGlmICghdGhpcy50cmFuc2FjdGlvbi5fY29udGV4dCkge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignY29udGV4dCBpcyByZXF1aXJlZCcpO1xuICAgIH1cbiAgICBpZiAoIXRoaXMudHJhbnNhY3Rpb24uX2Zyb21BZGRyZXNzZXMgfHwgdGhpcy50cmFuc2FjdGlvbi5fZnJvbUFkZHJlc3Nlcy5sZW5ndGggPT09IDApIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ2Zyb21BZGRyZXNzZXMgYXJlIHJlcXVpcmVkJyk7XG4gICAgfVxuICAgIGlmICghdGhpcy50cmFuc2FjdGlvbi5fdG8gfHwgdGhpcy50cmFuc2FjdGlvbi5fdG8ubGVuZ3RoID09PSAwKSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCd0b0FkZHJlc3NlcyBhcmUgcmVxdWlyZWQnKTtcbiAgICB9XG4gICAgaWYgKCF0aGlzLnRyYW5zYWN0aW9uLl90aHJlc2hvbGQpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ3RocmVzaG9sZCBpcyByZXF1aXJlZCcpO1xuICAgIH1cbiAgICBpZiAodGhpcy50cmFuc2FjdGlvbi5fbG9ja3RpbWUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignbG9ja3RpbWUgaXMgcmVxdWlyZWQnKTtcbiAgICB9XG5cbiAgICAvLyBDb252ZXJ0IGhleCBzdHJpbmdzIHRvIG5hdGl2ZSBVVFhPcyBmb3IgRmxhcmVKUyBBUElcbiAgICBjb25zdCBuYXRpdmVVdHhvcyA9IHV0aWxzLnBhcnNlVXR4b0hleEFycmF5KHRoaXMudHJhbnNhY3Rpb24uX3V0eG9IZXhTdHJpbmdzKTtcblxuICAgIC8vIFZhbGlkYXRlIFVUWE8gYmFsYW5jZSBpcyBub24temVybyAoZmVlIHdpbGwgYmUgZGVkdWN0ZWQgZHVyaW5nIGltcG9ydClcbiAgICBjb25zdCB0b3RhbFV0eG9BbW91bnQgPSBuYXRpdmVVdHhvcy5yZWR1Y2UoKHN1bSwgdXR4bykgPT4ge1xuICAgICAgY29uc3Qgb3V0cHV0ID0gdXR4by5vdXRwdXQgYXMgVHJhbnNmZXJPdXRwdXQ7XG4gICAgICByZXR1cm4gc3VtICsgb3V0cHV0LmFtb3VudCgpO1xuICAgIH0sIEJpZ0ludCgwKSk7XG5cbiAgICBpZiAodG90YWxVdHhvQW1vdW50ID09PSBCaWdJbnQoMCkpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ1VUWE9zIGhhdmUgemVybyB0b3RhbCBiYWxhbmNlJyk7XG4gICAgfVxuXG4gICAgY29uc3QgdG9BZGRyZXNzZXMgPSB0aGlzLnRyYW5zYWN0aW9uLl90by5tYXAoKGFkZHIpID0+IEJ1ZmZlci5mcm9tKGFkZHIpKTtcbiAgICBjb25zdCBmcm9tQWRkcmVzc2VzID0gdGhpcy50cmFuc2FjdGlvbi5fZnJvbUFkZHJlc3Nlcy5tYXAoKGFkZHIpID0+IEJ1ZmZlci5mcm9tKGFkZHIpKTtcblxuICAgIC8vIFZhbGlkYXRlIGFkZHJlc3MgbGVuZ3RocyAoUC1jaGFpbiBhZGRyZXNzZXMgYXJlIDIwIGJ5dGVzKVxuICAgIGNvbnN0IGludmFsaWRUb0FkZHJlc3MgPSB0b0FkZHJlc3Nlcy5maW5kKChhZGRyKSA9PiBhZGRyLmxlbmd0aCAhPT0gMjApO1xuICAgIGlmIChpbnZhbGlkVG9BZGRyZXNzKSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKGBJbnZhbGlkIHRvQWRkcmVzcyBsZW5ndGg6IGV4cGVjdGVkIDIwIGJ5dGVzLCBnb3QgJHtpbnZhbGlkVG9BZGRyZXNzLmxlbmd0aH1gKTtcbiAgICB9XG5cbiAgICBjb25zdCBpbnZhbGlkRnJvbUFkZHJlc3MgPSBmcm9tQWRkcmVzc2VzLmZpbmQoKGFkZHIpID0+IGFkZHIubGVuZ3RoICE9PSAyMCk7XG4gICAgaWYgKGludmFsaWRGcm9tQWRkcmVzcykge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcihcbiAgICAgICAgYEludmFsaWQgZnJvbUFkZHJlc3MgbGVuZ3RoOiBleHBlY3RlZCAyMCBieXRlcywgZ290ICR7aW52YWxpZEZyb21BZGRyZXNzLmxlbmd0aH1gXG4gICAgICApO1xuICAgIH1cblxuICAgIGNvbnN0IGltcG9ydFR4ID0gcHZtLmUubmV3SW1wb3J0VHgoXG4gICAgICB7XG4gICAgICAgIGZlZVN0YXRlOiB0aGlzLnRyYW5zYWN0aW9uLl9mZWVTdGF0ZSxcbiAgICAgICAgZnJvbUFkZHJlc3Nlc0J5dGVzOiBmcm9tQWRkcmVzc2VzLFxuICAgICAgICBzb3VyY2VDaGFpbklkOiB0aGlzLnRyYW5zYWN0aW9uLl9uZXR3b3JrLmNDaGFpbkJsb2NrY2hhaW5JRCxcbiAgICAgICAgdG9BZGRyZXNzZXNCeXRlczogdG9BZGRyZXNzZXMsXG4gICAgICAgIHV0eG9zOiBuYXRpdmVVdHhvcyxcbiAgICAgICAgdGhyZXNob2xkOiB0aGlzLnRyYW5zYWN0aW9uLl90aHJlc2hvbGQsXG4gICAgICAgIGxvY2t0aW1lOiB0aGlzLnRyYW5zYWN0aW9uLl9sb2NrdGltZSxcbiAgICAgIH0sXG4gICAgICB0aGlzLnRyYW5zYWN0aW9uLl9jb250ZXh0XG4gICAgKTtcblxuICAgIHRoaXMudHJhbnNhY3Rpb24uc2V0VHJhbnNhY3Rpb24oaW1wb3J0VHgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlY292ZXIgVVRYT3MgZnJvbSBpbXBvcnRlZCBpbnB1dHNcbiAgICogQHBhcmFtIGltcG9ydGVkSW5wdXRzIEFycmF5IG9mIHRyYW5zZmVyYWJsZSBpbnB1dHNcbiAgICogQHJldHVybnMgQXJyYXkgb2YgZGVjb2RlZCBVVFhPIG9iamVjdHNcbiAgICovXG4gIHByaXZhdGUgcmVjb3ZlclV0eG9zKGltcG9ydGVkSW5wdXRzOiBUcmFuc2ZlcmFibGVJbnB1dFtdKTogRGVjb2RlZFV0eG9PYmpbXSB7XG4gICAgcmV0dXJuIGltcG9ydGVkSW5wdXRzLm1hcCgoaW5wdXQpID0+IHtcbiAgICAgIGNvbnN0IHV0eG9JZCA9IGlucHV0LnV0eG9JRDtcbiAgICAgIGNvbnN0IHRyYW5zZmVySW5wdXQgPSBpbnB1dC5pbnB1dCBhcyBUcmFuc2ZlcklucHV0O1xuICAgICAgY29uc3QgdXR4bzogRGVjb2RlZFV0eG9PYmogPSB7XG4gICAgICAgIG91dHB1dElEOiBTRUNQMjU2SzFfVHJhbnNmZXJfT3V0cHV0LFxuICAgICAgICBhbW91bnQ6IHRyYW5zZmVySW5wdXQuYW1vdW50KCkudG9TdHJpbmcoKSxcbiAgICAgICAgdHhpZDogdXRpbHMuY2I1OEVuY29kZShCdWZmZXIuZnJvbSh1dHhvSWQudHhJRC50b0J5dGVzKCkpKSxcbiAgICAgICAgb3V0cHV0aWR4OiB1dHhvSWQub3V0cHV0SWR4LnZhbHVlKCkudG9TdHJpbmcoKSxcbiAgICAgICAgdGhyZXNob2xkOiB0aGlzLnRyYW5zYWN0aW9uLl90aHJlc2hvbGQsXG4gICAgICAgIGFkZHJlc3NlczogdGhpcy50cmFuc2FjdGlvbi5fZnJvbUFkZHJlc3Nlcy5tYXAoKGFkZHIpID0+XG4gICAgICAgICAgdXRpbHMuYWRkcmVzc1RvU3RyaW5nKHRoaXMudHJhbnNhY3Rpb24uX25ldHdvcmsuaHJwLCB0aGlzLnRyYW5zYWN0aW9uLl9uZXR3b3JrLmFsaWFzLCBCdWZmZXIuZnJvbShhZGRyKSlcbiAgICAgICAgKSxcbiAgICAgIH07XG4gICAgICByZXR1cm4gdXR4bztcbiAgICB9KTtcbiAgfVxufVxuIl19
173
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSW1wb3J0SW5QVHhCdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9JbXBvcnRJblBUeEJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQ0EsbURBQTRGO0FBQzVGLHlFQUFzRTtBQUN0RSxtREFTK0I7QUFDL0Isb0RBQTRCO0FBQzVCLG1DQUE4RjtBQUU5RixNQUFhLGtCQUFtQixTQUFRLG1EQUF3QjtJQUM5RCxZQUFZLFdBQWlDO1FBQzNDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNuQixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsZUFBSyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBQ3ZGLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsZUFBSyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FDN0csS0FBSyxDQUNOLENBQUM7SUFDSixDQUFDO0lBRUQsSUFBYyxlQUFlO1FBQzNCLE9BQU8sMEJBQWUsQ0FBQyxNQUFNLENBQUM7SUFDaEMsQ0FBQztJQUVEOzs7T0FHRztJQUNILFVBQVUsQ0FBQyxZQUErQjtRQUN4QyxNQUFNLE9BQU8sR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDNUUsTUFBTSxjQUFjLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDdEUsSUFBSSxjQUFjLEVBQUUsQ0FBQztZQUNuQixNQUFNLElBQUksZ0NBQXFCLENB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ZCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRjtBQXJNRCxnREFxTUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvLWJldGEvc3RhdGljcyc7XG5pbXBvcnQgeyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IsIE5vdFN1cHBvcnRlZCwgVHJhbnNhY3Rpb25UeXBlIH0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvcmUnO1xuaW1wb3J0IHsgQXRvbWljVHJhbnNhY3Rpb25CdWlsZGVyIH0gZnJvbSAnLi9hdG9taWNUcmFuc2FjdGlvbkJ1aWxkZXInO1xuaW1wb3J0IHtcbiAgcHZtU2VyaWFsLFxuICBVbnNpZ25lZFR4LFxuICBUcmFuc2ZlcmFibGVJbnB1dCxcbiAgVHJhbnNmZXJPdXRwdXQsXG4gIFRyYW5zZmVySW5wdXQsXG4gIHV0aWxzIGFzIEZsYXJlVXRpbHMsXG4gIENyZWRlbnRpYWwsXG4gIHB2bSxcbn0gZnJvbSAnQGZsYXJlbmV0d29yay9mbGFyZWpzJztcbmltcG9ydCB1dGlscyBmcm9tICcuL3V0aWxzJztcbmltcG9ydCB7IERlY29kZWRVdHhvT2JqLCBGbGFyZVRyYW5zYWN0aW9uVHlwZSwgU0VDUDI1NksxX1RyYW5zZmVyX091dHB1dCwgVHggfSBmcm9tICcuL2lmYWNlJztcblxuZXhwb3J0IGNsYXNzIEltcG9ydEluUFR4QnVpbGRlciBleHRlbmRzIEF0b21pY1RyYW5zYWN0aW9uQnVpbGRlciB7XG4gIGNvbnN0cnVjdG9yKF9jb2luQ29uZmlnOiBSZWFkb25seTxDb2luQ29uZmlnPikge1xuICAgIHN1cGVyKF9jb2luQ29uZmlnKTtcbiAgICB0aGlzLl9leHRlcm5hbENoYWluSWQgPSB1dGlscy5jYjU4RGVjb2RlKHRoaXMudHJhbnNhY3Rpb24uX25ldHdvcmsuY0NoYWluQmxvY2tjaGFpbklEKTtcbiAgICB0aGlzLnRyYW5zYWN0aW9uLl9ibG9ja2NoYWluSUQgPSBCdWZmZXIuZnJvbSh1dGlscy5jYjU4RGVjb2RlKHRoaXMudHJhbnNhY3Rpb24uX25ldHdvcmsuYmxvY2tjaGFpbklEKSkudG9TdHJpbmcoXG4gICAgICAnaGV4J1xuICAgICk7XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0IHRyYW5zYWN0aW9uVHlwZSgpOiBUcmFuc2FjdGlvblR5cGUge1xuICAgIHJldHVybiBUcmFuc2FjdGlvblR5cGUuSW1wb3J0O1xuICB9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSB7c3RyaW5nIHwgc3RyaW5nW119IHNlbmRlclB1YktleSAtIEMtY2hhaW4gYWRkcmVzcyhlcykgd2l0aCBDLSBwcmVmaXhcbiAgICogQHRocm93cyB7QnVpbGRUcmFuc2FjdGlvbkVycm9yfSBpZiBhbnkgYWRkcmVzcyBpcyBub3QgYSBDLWNoYWluIGFkZHJlc3NcbiAgICovXG4gIGZyb21QdWJLZXkoc2VuZGVyUHViS2V5OiBzdHJpbmcgfCBzdHJpbmdbXSk6IHRoaXMge1xuICAgIGNvbnN0IHB1YktleXMgPSBBcnJheS5pc0FycmF5KHNlbmRlclB1YktleSkgPyBzZW5kZXJQdWJLZXkgOiBbc2VuZGVyUHViS2V5XTtcbiAgICBjb25zdCBpbnZhbGlkQWRkcmVzcyA9IHB1YktleXMuZmluZCgoYWRkcikgPT4gIWFkZHIuc3RhcnRzV2l0aCgnQy0nKSk7XG4gICAgaWYgKGludmFsaWRBZGRyZXNzKSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKGBJbnZhbGlkIGZyb21BZGRyZXNzOiBleHBlY3RlZCBDLWNoYWluIGFkZHJlc3MgKEMtLi4uKSwgZ290ICR7aW52YWxpZEFkZHJlc3N9YCk7XG4gICAgfVxuICAgIHRoaXMudHJhbnNhY3Rpb24uX2Zyb21BZGRyZXNzZXMgPSBwdWJLZXlzLm1hcCgoYWRkcikgPT4gdXRpbHMucGFyc2VBZGRyZXNzKGFkZHIpKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0ge3N0cmluZ1tdfSBhZGRyZXNzZXMgLSBBcnJheSBvZiBQLWNoYWluIGFkZHJlc3NlcyAoYmVjaDMyIGZvcm1hdCB3aXRoIFAtIHByZWZpeClcbiAgICogQHRocm93cyB7QnVpbGRUcmFuc2FjdGlvbkVycm9yfSBpZiBhbnkgYWRkcmVzcyBpcyBub3QgYSBQLWNoYWluIGFkZHJlc3NcbiAgICovXG4gIHRvKGFkZHJlc3Nlczogc3RyaW5nW10pOiB0aGlzIHtcbiAgICBjb25zdCBpbnZhbGlkQWRkcmVzcyA9IGFkZHJlc3Nlcy5maW5kKChhZGRyKSA9PiAhYWRkci5zdGFydHNXaXRoKCdQLScpKTtcbiAgICBpZiAoaW52YWxpZEFkZHJlc3MpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoYEludmFsaWQgdG9BZGRyZXNzOiBleHBlY3RlZCBQLWNoYWluIGFkZHJlc3MgKFAtLi4uKSwgZ290ICR7aW52YWxpZEFkZHJlc3N9YCk7XG4gICAgfVxuICAgIHRoaXMudHJhbnNhY3Rpb24uX3RvID0gYWRkcmVzc2VzLm1hcCgoYWRkcikgPT4gdXRpbHMucGFyc2VBZGRyZXNzKGFkZHIpKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIGluaXRCdWlsZGVyKHR4OiBUeCwgcmF3Qnl0ZXM/OiBCdWZmZXIsIHBhcnNlZENyZWRlbnRpYWxzPzogQ3JlZGVudGlhbFtdKTogdGhpcyB7XG4gICAgY29uc3QgaW1wb3J0VHggPSB0eCBhcyBwdm1TZXJpYWwuSW1wb3J0VHg7XG5cbiAgICBpZiAoIXRoaXMudmVyaWZ5VHhUeXBlKGltcG9ydFR4Ll90eXBlKSkge1xuICAgICAgdGhyb3cgbmV3IE5vdFN1cHBvcnRlZCgnVHJhbnNhY3Rpb24gY2Fubm90IGJlIHBhcnNlZCBvciBoYXMgYW4gdW5zdXBwb3J0ZWQgdHJhbnNhY3Rpb24gdHlwZScpO1xuICAgIH1cblxuICAgIGNvbnN0IG91dHB1dHMgPSBpbXBvcnRUeC5iYXNlVHgub3V0cHV0cztcbiAgICBpZiAob3V0cHV0cy5sZW5ndGggIT09IDEpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ1RyYW5zYWN0aW9uIGNhbiBoYXZlIG9uZSBleHRlcm5hbCBvdXRwdXQnKTtcbiAgICB9XG5cbiAgICBjb25zdCBvdXRwdXQgPSBvdXRwdXRzWzBdO1xuICAgIGNvbnN0IGFzc2V0SWQgPSBvdXRwdXQuYXNzZXRJZC50b0J5dGVzKCk7XG4gICAgaWYgKEJ1ZmZlci5jb21wYXJlKGFzc2V0SWQsIEJ1ZmZlci5mcm9tKHRoaXMudHJhbnNhY3Rpb24uX2Fzc2V0SWQsICdoZXgnKSkgIT09IDApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignVGhlIEFzc2V0IElEIG9mIHRoZSBvdXRwdXQgZG9lcyBub3QgbWF0Y2ggdGhlIHRyYW5zYWN0aW9uJyk7XG4gICAgfVxuXG4gICAgY29uc3QgdHJhbnNmZXJPdXRwdXQgPSBvdXRwdXQub3V0cHV0IGFzIFRyYW5zZmVyT3V0cHV0O1xuICAgIGNvbnN0IG91dHB1dE93bmVycyA9IHRyYW5zZmVyT3V0cHV0Lm91dHB1dE93bmVycztcbiAgICB0aGlzLnRyYW5zYWN0aW9uLl9sb2NrdGltZSA9IG91dHB1dE93bmVycy5sb2NrdGltZS52YWx1ZSgpO1xuICAgIHRoaXMudHJhbnNhY3Rpb24uX3RocmVzaG9sZCA9IG91dHB1dE93bmVycy50aHJlc2hvbGQudmFsdWUoKTtcbiAgICB0aGlzLnRyYW5zYWN0aW9uLl9mcm9tQWRkcmVzc2VzID0gb3V0cHV0T3duZXJzLmFkZHJzLm1hcCgoYWRkcikgPT4gQnVmZmVyLmZyb20oYWRkci50b0J5dGVzKCkpKTtcbiAgICB0aGlzLl9leHRlcm5hbENoYWluSWQgPSBCdWZmZXIuZnJvbShpbXBvcnRUeC5zb3VyY2VDaGFpbi50b0J5dGVzKCkpO1xuICAgIHRoaXMudHJhbnNhY3Rpb24uX3V0eG9zID0gdGhpcy5yZWNvdmVyVXR4b3MoaW1wb3J0VHguaW5zKTtcblxuICAgIGNvbnN0IHRvdGFsSW5wdXRBbW91bnQgPSBpbXBvcnRUeC5pbnMucmVkdWNlKChzdW0sIGlucHV0KSA9PiBzdW0gKyBpbnB1dC5hbW91bnQoKSwgQmlnSW50KDApKTtcbiAgICBjb25zdCBvdXRwdXRBbW91bnQgPSB0cmFuc2Zlck91dHB1dC5hbW91bnQoKTtcbiAgICBjb25zdCBmZWUgPSB0b3RhbElucHV0QW1vdW50IC0gb3V0cHV0QW1vdW50O1xuICAgIHRoaXMudHJhbnNhY3Rpb24uX2ZlZS5mZWUgPSBmZWUudG9TdHJpbmcoKTtcblxuICAgIGNvbnN0IGNyZWRlbnRpYWxzID0gcGFyc2VkQ3JlZGVudGlhbHMgfHwgW107XG4gICAgY29uc3QgaGFzQ3JlZGVudGlhbHMgPSBjcmVkZW50aWFscy5sZW5ndGggPiAwO1xuXG4gICAgaWYgKHJhd0J5dGVzICYmIGhhc0NyZWRlbnRpYWxzKSB7XG4gICAgICB0aGlzLnRyYW5zYWN0aW9uLl9yYXdTaWduZWRCeXRlcyA9IHJhd0J5dGVzO1xuICAgIH1cblxuICAgIGNvbnN0IHR4Q3JlZGVudGlhbHMgPVxuICAgICAgY3JlZGVudGlhbHMubGVuZ3RoID4gMFxuICAgICAgICA/IGNyZWRlbnRpYWxzXG4gICAgICAgIDogdGhpcy50cmFuc2FjdGlvbi5fdXR4b3MubWFwKCh1dHhvKSA9PiB0aGlzLmNyZWF0ZUNyZWRlbnRpYWxGb3JVdHhvKHV0eG8sIHRoaXMudHJhbnNhY3Rpb24uX3RocmVzaG9sZCkpO1xuXG4gICAgY29uc3QgYWRkcmVzc01hcHMgPSB0aGlzLnRyYW5zYWN0aW9uLl91dHhvcy5tYXAoKHV0eG8pID0+XG4gICAgICB0aGlzLmNyZWF0ZUFkZHJlc3NNYXBGb3JVdHhvKHV0eG8sIHRoaXMudHJhbnNhY3Rpb24uX3RocmVzaG9sZClcbiAgICApO1xuXG4gICAgY29uc3QgdW5zaWduZWRUeCA9IG5ldyBVbnNpZ25lZFR4KGltcG9ydFR4LCBbXSwgbmV3IEZsYXJlVXRpbHMuQWRkcmVzc01hcHMoYWRkcmVzc01hcHMpLCB0eENyZWRlbnRpYWxzKTtcblxuICAgIHRoaXMudHJhbnNhY3Rpb24uc2V0VHJhbnNhY3Rpb24odW5zaWduZWRUeCk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBzdGF0aWMgdmVyaWZ5VHhUeXBlKHR4blR5cGU6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0eG5UeXBlID09PSBGbGFyZVRyYW5zYWN0aW9uVHlwZS5Qdm1JbXBvcnRUeDtcbiAgfVxuXG4gIHZlcmlmeVR4VHlwZSh0eG5UeXBlOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICByZXR1cm4gSW1wb3J0SW5QVHhCdWlsZGVyLnZlcmlmeVR4VHlwZSh0eG5UeXBlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBCdWlsZCB0aGUgaW1wb3J0IHRyYW5zYWN0aW9uIGZvciBQLWNoYWluIChpbXBvcnRpbmcgRlJPTSBDLWNoYWluKVxuICAgKiBAcHJvdGVjdGVkXG4gICAqL1xuICBwcm90ZWN0ZWQgYXN5bmMgYnVpbGRGbGFyZVRyYW5zYWN0aW9uKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGlmICh0aGlzLnRyYW5zYWN0aW9uLmhhc0NyZWRlbnRpYWxzKSByZXR1cm47XG4gICAgaWYgKCF0aGlzLnRyYW5zYWN0aW9uLl91dHhvcyB8fCB0aGlzLnRyYW5zYWN0aW9uLl91dHhvcy5sZW5ndGggPT09IDApIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ1VUWE9zIGFyZSByZXF1aXJlZCcpO1xuICAgIH1cbiAgICBpZiAoIXRoaXMudHJhbnNhY3Rpb24uX2ZlZVN0YXRlKSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCdGZWUgc3RhdGUgaXMgcmVxdWlyZWQnKTtcbiAgICB9XG4gICAgaWYgKCF0aGlzLnRyYW5zYWN0aW9uLl9jb250ZXh0KSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCdjb250ZXh0IGlzIHJlcXVpcmVkJyk7XG4gICAgfVxuICAgIGlmICghdGhpcy50cmFuc2FjdGlvbi5fZnJvbUFkZHJlc3NlcyB8fCB0aGlzLnRyYW5zYWN0aW9uLl9mcm9tQWRkcmVzc2VzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignZnJvbUFkZHJlc3NlcyBhcmUgcmVxdWlyZWQnKTtcbiAgICB9XG4gICAgaWYgKCF0aGlzLnRyYW5zYWN0aW9uLl90byB8fCB0aGlzLnRyYW5zYWN0aW9uLl90by5sZW5ndGggPT09IDApIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ3RvQWRkcmVzc2VzIGFyZSByZXF1aXJlZCcpO1xuICAgIH1cbiAgICBpZiAoIXRoaXMudHJhbnNhY3Rpb24uX3RocmVzaG9sZCkge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcigndGhyZXNob2xkIGlzIHJlcXVpcmVkJyk7XG4gICAgfVxuICAgIGlmICh0aGlzLnRyYW5zYWN0aW9uLl9sb2NrdGltZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCdsb2NrdGltZSBpcyByZXF1aXJlZCcpO1xuICAgIH1cblxuICAgIC8vIENvbnZlcnQgZGVjb2RlZCBVVFhPcyB0byBuYXRpdmUgRmxhcmVKUyBVdHhvIG9iamVjdHNcbiAgICBjb25zdCBhc3NldElkID0gdXRpbHMuY2I1OEVuY29kZShCdWZmZXIuZnJvbSh0aGlzLnRyYW5zYWN0aW9uLl9hc3NldElkLCAnaGV4JykpO1xuICAgIGNvbnN0IG5hdGl2ZVV0eG9zID0gdXRpbHMuZGVjb2RlZFRvVXR4b3ModGhpcy50cmFuc2FjdGlvbi5fdXR4b3MsIGFzc2V0SWQpO1xuXG4gICAgLy8gVmFsaWRhdGUgVVRYTyBiYWxhbmNlIGlzIG5vbi16ZXJvIChmZWUgd2lsbCBiZSBkZWR1Y3RlZCBkdXJpbmcgaW1wb3J0KVxuICAgIGNvbnN0IHRvdGFsVXR4b0Ftb3VudCA9IG5hdGl2ZVV0eG9zLnJlZHVjZSgoc3VtLCB1dHhvKSA9PiB7XG4gICAgICBjb25zdCBvdXRwdXQgPSB1dHhvLm91dHB1dCBhcyBUcmFuc2Zlck91dHB1dDtcbiAgICAgIHJldHVybiBzdW0gKyBvdXRwdXQuYW1vdW50KCk7XG4gICAgfSwgQmlnSW50KDApKTtcblxuICAgIGlmICh0b3RhbFV0eG9BbW91bnQgPT09IEJpZ0ludCgwKSkge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignVVRYT3MgaGF2ZSB6ZXJvIHRvdGFsIGJhbGFuY2UnKTtcbiAgICB9XG5cbiAgICBjb25zdCB0b0FkZHJlc3NlcyA9IHRoaXMudHJhbnNhY3Rpb24uX3RvLm1hcCgoYWRkcikgPT4gQnVmZmVyLmZyb20oYWRkcikpO1xuICAgIGNvbnN0IGZyb21BZGRyZXNzZXMgPSB0aGlzLnRyYW5zYWN0aW9uLl9mcm9tQWRkcmVzc2VzLm1hcCgoYWRkcikgPT4gQnVmZmVyLmZyb20oYWRkcikpO1xuXG4gICAgLy8gVmFsaWRhdGUgYWRkcmVzcyBsZW5ndGhzIChQLWNoYWluIGFkZHJlc3NlcyBhcmUgMjAgYnl0ZXMpXG4gICAgY29uc3QgaW52YWxpZFRvQWRkcmVzcyA9IHRvQWRkcmVzc2VzLmZpbmQoKGFkZHIpID0+IGFkZHIubGVuZ3RoICE9PSAyMCk7XG4gICAgaWYgKGludmFsaWRUb0FkZHJlc3MpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoYEludmFsaWQgdG9BZGRyZXNzIGxlbmd0aDogZXhwZWN0ZWQgMjAgYnl0ZXMsIGdvdCAke2ludmFsaWRUb0FkZHJlc3MubGVuZ3RofWApO1xuICAgIH1cblxuICAgIGNvbnN0IGludmFsaWRGcm9tQWRkcmVzcyA9IGZyb21BZGRyZXNzZXMuZmluZCgoYWRkcikgPT4gYWRkci5sZW5ndGggIT09IDIwKTtcbiAgICBpZiAoaW52YWxpZEZyb21BZGRyZXNzKSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKFxuICAgICAgICBgSW52YWxpZCBmcm9tQWRkcmVzcyBsZW5ndGg6IGV4cGVjdGVkIDIwIGJ5dGVzLCBnb3QgJHtpbnZhbGlkRnJvbUFkZHJlc3MubGVuZ3RofWBcbiAgICAgICk7XG4gICAgfVxuXG4gICAgY29uc3QgaW1wb3J0VHggPSBwdm0uZS5uZXdJbXBvcnRUeChcbiAgICAgIHtcbiAgICAgICAgZmVlU3RhdGU6IHRoaXMudHJhbnNhY3Rpb24uX2ZlZVN0YXRlLFxuICAgICAgICBmcm9tQWRkcmVzc2VzQnl0ZXM6IGZyb21BZGRyZXNzZXMsXG4gICAgICAgIHNvdXJjZUNoYWluSWQ6IHRoaXMudHJhbnNhY3Rpb24uX25ldHdvcmsuY0NoYWluQmxvY2tjaGFpbklELFxuICAgICAgICB0b0FkZHJlc3Nlc0J5dGVzOiB0b0FkZHJlc3NlcyxcbiAgICAgICAgdXR4b3M6IG5hdGl2ZVV0eG9zLFxuICAgICAgICB0aHJlc2hvbGQ6IHRoaXMudHJhbnNhY3Rpb24uX3RocmVzaG9sZCxcbiAgICAgICAgbG9ja3RpbWU6IHRoaXMudHJhbnNhY3Rpb24uX2xvY2t0aW1lLFxuICAgICAgfSxcbiAgICAgIHRoaXMudHJhbnNhY3Rpb24uX2NvbnRleHRcbiAgICApO1xuXG4gICAgdGhpcy50cmFuc2FjdGlvbi5zZXRUcmFuc2FjdGlvbihpbXBvcnRUeCk7XG4gIH1cblxuICAvKipcbiAgICogUmVjb3ZlciBVVFhPcyBmcm9tIGltcG9ydGVkIGlucHV0c1xuICAgKiBAcGFyYW0gaW1wb3J0ZWRJbnB1dHMgQXJyYXkgb2YgdHJhbnNmZXJhYmxlIGlucHV0c1xuICAgKiBAcmV0dXJucyBBcnJheSBvZiBkZWNvZGVkIFVUWE8gb2JqZWN0c1xuICAgKi9cbiAgcHJpdmF0ZSByZWNvdmVyVXR4b3MoaW1wb3J0ZWRJbnB1dHM6IFRyYW5zZmVyYWJsZUlucHV0W10pOiBEZWNvZGVkVXR4b09ialtdIHtcbiAgICByZXR1cm4gaW1wb3J0ZWRJbnB1dHMubWFwKChpbnB1dCkgPT4ge1xuICAgICAgY29uc3QgdXR4b0lkID0gaW5wdXQudXR4b0lEO1xuICAgICAgY29uc3QgdHJhbnNmZXJJbnB1dCA9IGlucHV0LmlucHV0IGFzIFRyYW5zZmVySW5wdXQ7XG4gICAgICBjb25zdCB1dHhvOiBEZWNvZGVkVXR4b09iaiA9IHtcbiAgICAgICAgb3V0cHV0SUQ6IFNFQ1AyNTZLMV9UcmFuc2Zlcl9PdXRwdXQsXG4gICAgICAgIGFtb3VudDogdHJhbnNmZXJJbnB1dC5hbW91bnQoKS50b1N0cmluZygpLFxuICAgICAgICB0eGlkOiB1dGlscy5jYjU4RW5jb2RlKEJ1ZmZlci5mcm9tKHV0eG9JZC50eElELnRvQnl0ZXMoKSkpLFxuICAgICAgICBvdXRwdXRpZHg6IHV0eG9JZC5vdXRwdXRJZHgudmFsdWUoKS50b1N0cmluZygpLFxuICAgICAgICB0aHJlc2hvbGQ6IHRoaXMudHJhbnNhY3Rpb24uX3RocmVzaG9sZCxcbiAgICAgICAgYWRkcmVzc2VzOiB0aGlzLnRyYW5zYWN0aW9uLl9mcm9tQWRkcmVzc2VzLm1hcCgoYWRkcikgPT5cbiAgICAgICAgICB1dGlscy5hZGRyZXNzVG9TdHJpbmcodGhpcy50cmFuc2FjdGlvbi5fbmV0d29yay5ocnAsIHRoaXMudHJhbnNhY3Rpb24uX25ldHdvcmsuYWxpYXMsIEJ1ZmZlci5mcm9tKGFkZHIpKVxuICAgICAgICApLFxuICAgICAgfTtcbiAgICAgIHJldHVybiB1dHhvO1xuICAgIH0pO1xuICB9XG59XG4iXX0=
@@ -47,7 +47,6 @@ export type DecodedUtxoObj = {
47
47
  outputidx: string;
48
48
  threshold: number;
49
49
  addresses: string[];
50
- utxoHex?: string;
51
50
  addressesIndex?: number[];
52
51
  };
53
52
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"iface.d.ts","sourceRoot":"","sources":["../../../src/lib/iface.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,IAAI,0BAA0B,EACpD,KAAK,EACL,sBAAsB,EACtB,iBAAiB,EACjB,mBAAmB,IAAI,uBAAuB,EAC9C,eAAe,EACf,wBAAwB,EACxB,oBAAoB,EACrB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAE7F;;GAEG;AACH,oBAAY,oBAAoB;IAC9B,WAAW,iBAAiB;IAC5B,WAAW,iBAAiB;IAC5B,WAAW,iBAAiB;IAC5B,WAAW,iBAAiB;CAC7B;AAED,MAAM,WAAW,sBAAuB,SAAQ,0BAA0B;IACxE,IAAI,EAAE,eAAe,CAAC;IACtB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,MAAM,EAAE,KAAK,EAAE,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,MAAM;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,IAAI,EAAE,eAAe,CAAC;IACtB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,OAAO,EAAE,KAAK,EAAE,CAAC;IACjB,aAAa,EAAE,KAAK,EAAE,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;;;;;;GAOG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;CAC3B,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,yBAAyB,IAAI,CAAC;AAE3C,eAAO,MAAM,iBAAiB,MAAM,CAAC;AAGrC,MAAM,MAAM,EAAE,GACV,SAAS,CAAC,MAAM,GAChB,UAAU,GACV,SAAS,CAAC,QAAQ,GAClB,SAAS,CAAC,QAAQ,GAClB,SAAS,CAAC,QAAQ,GAClB,SAAS,CAAC,QAAQ,CAAC;AAEvB,MAAM,MAAM,YAAY,GAAG,SAAS,CAAC,QAAQ,GAAG,SAAS,CAAC,QAAQ,GAAG,SAAS,CAAC,QAAQ,GAAG,SAAS,CAAC,QAAQ,CAAC;AAC7G,MAAM,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC;AACtC,MAAM,MAAM,MAAM,GAAG,kBAAkB,CAAC;AACxC,MAAM,WAAW,4BAA6B,SAAQ,wBAAwB;IAC5E,QAAQ,EAAE,qBAAqB,CAAC;CACjC;AAED,MAAM,WAAW,qBAAsB,SAAQ,iBAAiB;IAC9D,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,SAAU,SAAQ,KAAK;IACtC,EAAE,EAAE,MAAM,CAAC;CACZ;AAED,MAAM,WAAW,0BAA2B,SAAQ,sBAAsB;IACxE,UAAU,EAAE,mBAAmB,CAAC;IAChC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,mBAAoB,SAAQ,uBAAuB;IAClE,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,MAAM;IACrB,UAAU,EAAE,oBAAoB,EAAE,CAAC;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,6BAA6B;IAC5C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE;QACX,KAAK,EAAE,MAAM,CAAC;KACf,CAAC;IACF,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,UAAU,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;IACxB,wBAAwB;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,wBAAwB,EAAE,MAAM,CAAC;CAClC;AAED,oBAAY,aAAa;IACvB,SAAS,IAAI;IACb,MAAM,IAAI;IACV,OAAO,IAAI;IACX,OAAO,IAAI;CACZ;AAED,MAAM,WAAW,kBAAkB;IACjC,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,YAAY,CAAC;CACzB;AAED,KAAK,cAAc,GAAG,MAAM,CAAC;AAE7B,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC;AAE/D;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;CAClB"}
1
+ {"version":3,"file":"iface.d.ts","sourceRoot":"","sources":["../../../src/lib/iface.ts"],"names":[],"mappings":"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"}
@@ -25,4 +25,4 @@ var FeeDimensions;
25
25
  FeeDimensions[FeeDimensions["DBWrite"] = 2] = "DBWrite";
26
26
  FeeDimensions[FeeDimensions["Compute"] = 3] = "Compute";
27
27
  })(FeeDimensions || (exports.FeeDimensions = FeeDimensions = {}));
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2lmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQWFBOztHQUVHO0FBQ0gsSUFBWSxvQkFLWDtBQUxELFdBQVksb0JBQW9CO0lBQzlCLG9EQUE0QixDQUFBO0lBQzVCLG9EQUE0QixDQUFBO0lBQzVCLG9EQUE0QixDQUFBO0lBQzVCLG9EQUE0QixDQUFBO0FBQzlCLENBQUMsRUFMVyxvQkFBb0Isb0NBQXBCLG9CQUFvQixRQUsvQjtBQTZDRDs7OztHQUlHO0FBQ1UsUUFBQSx5QkFBeUIsR0FBRyxDQUFDLENBQUM7QUFFOUIsUUFBQSxpQkFBaUIsR0FBRyxHQUFHLENBQUM7QUFpRXJDLElBQVksYUFLWDtBQUxELFdBQVksYUFBYTtJQUN2QiwyREFBYSxDQUFBO0lBQ2IscURBQVUsQ0FBQTtJQUNWLHVEQUFXLENBQUE7SUFDWCx1REFBVyxDQUFBO0FBQ2IsQ0FBQyxFQUxXLGFBQWEsNkJBQWIsYUFBYSxRQUt4QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIFRyYW5zYWN0aW9uRXhwbGFuYXRpb24gYXMgQmFzZVRyYW5zYWN0aW9uRXhwbGFuYXRpb24sXG4gIEVudHJ5LFxuICBTaWduVHJhbnNhY3Rpb25PcHRpb25zLFxuICBUcmFuc2FjdGlvblBhcmFtcyxcbiAgVHJhbnNhY3Rpb25QcmVidWlsZCBhcyBCYXNlVHJhbnNhY3Rpb25QcmVidWlsZCxcbiAgVHJhbnNhY3Rpb25UeXBlLFxuICBWZXJpZnlUcmFuc2FjdGlvbk9wdGlvbnMsXG4gIFRyYW5zYWN0aW9uUmVjaXBpZW50LFxufSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5pbXBvcnQgeyBGbHJwRmVlU3RhdGUgfSBmcm9tICdAYml0Z28vcHVibGljLXR5cGVzJztcbmltcG9ydCB7IHB2bVNlcmlhbCwgVW5zaWduZWRUeCwgVHJhbnNmZXJhYmxlT3V0cHV0LCBldm1TZXJpYWwgfSBmcm9tICdAZmxhcmVuZXR3b3JrL2ZsYXJlanMnO1xuXG4vKipcbiAqIEVudW0gZm9yIEZsYXJlIHRyYW5zYWN0aW9uIHR5cGVzXG4gKi9cbmV4cG9ydCBlbnVtIEZsYXJlVHJhbnNhY3Rpb25UeXBlIHtcbiAgRXZtRXhwb3J0VHggPSAnZXZtLkV4cG9ydFR4JyxcbiAgRXZtSW1wb3J0VHggPSAnZXZtLkltcG9ydFR4JyxcbiAgUHZtRXhwb3J0VHggPSAncHZtLkV4cG9ydFR4JyxcbiAgUHZtSW1wb3J0VHggPSAncHZtLkltcG9ydFR4Jyxcbn1cblxuZXhwb3J0IGludGVyZmFjZSBUcmFuc2FjdGlvbkV4cGxhbmF0aW9uIGV4dGVuZHMgQmFzZVRyYW5zYWN0aW9uRXhwbGFuYXRpb24ge1xuICB0eXBlOiBUcmFuc2FjdGlvblR5cGU7XG4gIHJld2FyZEFkZHJlc3Nlczogc3RyaW5nW107XG4gIGlucHV0czogRW50cnlbXTtcbn1cblxuLyoqXG4gKiBUaGUgdHJhbnNhY3Rpb24gZGF0YSByZXR1cm5lZCBmcm9tIHRoZSB0b0pzb24oKSBmdW5jdGlvbiBvZiBhIHRyYW5zYWN0aW9uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVHhEYXRhIHtcbiAgaWQ6IHN0cmluZztcbiAgaW5wdXRzOiBFbnRyeVtdO1xuICB0eXBlOiBUcmFuc2FjdGlvblR5cGU7XG4gIGZyb21BZGRyZXNzZXM6IHN0cmluZ1tdO1xuICB0aHJlc2hvbGQ6IG51bWJlcjtcbiAgbG9ja3RpbWU6IHN0cmluZztcbiAgc2lnbmF0dXJlczogc3RyaW5nW107XG4gIG91dHB1dHM6IEVudHJ5W107XG4gIGNoYW5nZU91dHB1dHM6IEVudHJ5W107XG4gIHNvdXJjZUNoYWluPzogc3RyaW5nO1xuICBkZXN0aW5hdGlvbkNoYWluPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIERlY29kZWQgVVRYTyBvYmplY3QuIFRoaXMgaXMgZm9yIGEgc2luZ2xlIHV0eG9cbiAqXG4gKiBAcGFyYW0ge251bWJlcn0gb3V0cHV0SURcbiAqIEBwYXJhbSB7c3RyaW5nfSBhbW91bnQgQW1vdW50IGFzIGEgQmlnIE51bWJlciBzdHJpbmdcbiAqIEBwYXJhbSB7c3RyaW5nfSB0eGlkIFRyYW5zYWN0aW9uIElEIGVuY29kZWQgYXMgY2I1OFxuICogQHBhcmFtIHtzdHJpbmd9IG91dHB1dGlkeCBPdXRwdXQgaW5kZXggYXMgYSBzdHJpbmdcbiAqL1xuZXhwb3J0IHR5cGUgRGVjb2RlZFV0eG9PYmogPSB7XG4gIG91dHB1dElEOiBudW1iZXI7XG4gIGxvY2t0aW1lPzogc3RyaW5nO1xuICBhbW91bnQ6IHN0cmluZztcbiAgdHhpZDogc3RyaW5nO1xuICBvdXRwdXRpZHg6IHN0cmluZztcbiAgdGhyZXNob2xkOiBudW1iZXI7XG4gIGFkZHJlc3Nlczogc3RyaW5nW107XG4gIHV0eG9IZXg/OiBzdHJpbmc7XG4gIGFkZHJlc3Nlc0luZGV4PzogbnVtYmVyW107XG59O1xuXG4vKipcbiAqIFR5cGVJZCB2YWx1ZSBmb3IgU0VDUDI1NksxIFRyYW5zZmVyIE91dHB1dFxuICpcbiAqIFNpbWlsYXIgdG8gQXZhbGFuY2hlIFAtQ2hhaW4ncyBTRUNQMjU2SzEgVHJhbnNmZXIgT3V0cHV0XG4gKi9cbmV4cG9ydCBjb25zdCBTRUNQMjU2SzFfVHJhbnNmZXJfT3V0cHV0ID0gNztcblxuZXhwb3J0IGNvbnN0IEFERFJFU1NfU0VQQVJBVE9SID0gJ34nO1xuXG4vLyBTaW1wbGlmaWVkIHR5cGUgZGVmaW5pdGlvbnMgZm9yIEZsYXJlXG5leHBvcnQgdHlwZSBUeCA9XG4gIHwgcHZtU2VyaWFsLkJhc2VUeFxuICB8IFVuc2lnbmVkVHhcbiAgfCBldm1TZXJpYWwuRXhwb3J0VHhcbiAgfCBldm1TZXJpYWwuSW1wb3J0VHhcbiAgfCBwdm1TZXJpYWwuRXhwb3J0VHhcbiAgfCBwdm1TZXJpYWwuSW1wb3J0VHg7XG5cbmV4cG9ydCB0eXBlIFNlcmlhbGl6ZWRUeCA9IGV2bVNlcmlhbC5FeHBvcnRUeCB8IGV2bVNlcmlhbC5JbXBvcnRUeCB8IHB2bVNlcmlhbC5FeHBvcnRUeCB8IHB2bVNlcmlhbC5JbXBvcnRUeDtcbmV4cG9ydCB0eXBlIEJhc2VUeCA9IHB2bVNlcmlhbC5CYXNlVHg7XG5leHBvcnQgdHlwZSBPdXRwdXQgPSBUcmFuc2ZlcmFibGVPdXRwdXQ7XG5leHBvcnQgaW50ZXJmYWNlIEZscnBWZXJpZnlUcmFuc2FjdGlvbk9wdGlvbnMgZXh0ZW5kcyBWZXJpZnlUcmFuc2FjdGlvbk9wdGlvbnMge1xuICB0eFBhcmFtczogRmxycFRyYW5zYWN0aW9uUGFyYW1zO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZscnBUcmFuc2FjdGlvblBhcmFtcyBleHRlbmRzIFRyYW5zYWN0aW9uUGFyYW1zIHtcbiAgdHlwZTogc3RyaW5nO1xuICBsb2NrdGltZT86IG51bWJlcjtcbiAgdW5zcGVudHM/OiBzdHJpbmdbXTtcbiAgc291cmNlQ2hhaW4/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRmxycEVudHJ5IGV4dGVuZHMgRW50cnkge1xuICBpZDogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZscnBTaWduVHJhbnNhY3Rpb25PcHRpb25zIGV4dGVuZHMgU2lnblRyYW5zYWN0aW9uT3B0aW9ucyB7XG4gIHR4UHJlYnVpbGQ6IFRyYW5zYWN0aW9uUHJlYnVpbGQ7XG4gIHBydjogc3RyaW5nIHwgc3RyaW5nW107XG4gIHB1YktleXM/OiBzdHJpbmdbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBUcmFuc2FjdGlvblByZWJ1aWxkIGV4dGVuZHMgQmFzZVRyYW5zYWN0aW9uUHJlYnVpbGQge1xuICB0eEhleDogc3RyaW5nO1xuICB0eEluZm86IFR4SW5mbztcbiAgc291cmNlOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHhJbmZvIHtcbiAgcmVjaXBpZW50czogVHJhbnNhY3Rpb25SZWNpcGllbnRbXTtcbiAgZnJvbTogc3RyaW5nO1xuICB0eGlkOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRmxycEV4cGxhaW5UcmFuc2FjdGlvbk9wdGlvbnMge1xuICB0eEhleD86IHN0cmluZztcbiAgaGFsZlNpZ25lZD86IHtcbiAgICB0eEhleDogc3RyaW5nO1xuICB9O1xuICBwdWJsaWNLZXlzPzogc3RyaW5nW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRmVlQ29uZmlnIHtcbiAgd2VpZ2h0czogRGltZW5zaW9ucztcbiAgbWF4Q2FwYWNpdHk6IGJpZ2ludDtcbiAgbWF4UGVyU2Vjb25kOiBiaWdpbnQ7XG4gIHRhcmdldFBlclNlY29uZDogYmlnaW50O1xuICAvKiogTWluaW11bSBnYXMgcHJpY2UgKi9cbiAgbWluUHJpY2U6IGJpZ2ludDtcbiAgZXhjZXNzQ29udmVyc2lvbkNvbnN0YW50OiBiaWdpbnQ7XG59XG5cbmV4cG9ydCBlbnVtIEZlZURpbWVuc2lvbnMge1xuICBCYW5kd2lkdGggPSAwLFxuICBEQlJlYWQgPSAxLFxuICBEQldyaXRlID0gMixcbiAgQ29tcHV0ZSA9IDMsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRmxycFRyYW5zYWN0aW9uRmVlIHtcbiAgZmVlOiBzdHJpbmc7XG4gIHR5cGU/OiBzdHJpbmc7XG4gIGZlZVN0YXRlPzogRmxycEZlZVN0YXRlO1xufVxuXG50eXBlIERpbWVuc2lvblZhbHVlID0gbnVtYmVyO1xuXG5leHBvcnQgdHlwZSBEaW1lbnNpb25zID0gUmVjb3JkPEZlZURpbWVuc2lvbnMsIERpbWVuc2lvblZhbHVlPjtcblxuLyoqXG4gKiBPcHRpb25zIGZvciBFVk0gZXhwb3J0IHRyYW5zYWN0aW9uc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIEV4cG9ydEVWTU9wdGlvbnMge1xuICB0aHJlc2hvbGQ6IG51bWJlcjtcbiAgbG9ja3RpbWU6IGJpZ2ludDtcbn1cbiJdfQ==
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2lmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQWFBOztHQUVHO0FBQ0gsSUFBWSxvQkFLWDtBQUxELFdBQVksb0JBQW9CO0lBQzlCLG9EQUE0QixDQUFBO0lBQzVCLG9EQUE0QixDQUFBO0lBQzVCLG9EQUE0QixDQUFBO0lBQzVCLG9EQUE0QixDQUFBO0FBQzlCLENBQUMsRUFMVyxvQkFBb0Isb0NBQXBCLG9CQUFvQixRQUsvQjtBQTRDRDs7OztHQUlHO0FBQ1UsUUFBQSx5QkFBeUIsR0FBRyxDQUFDLENBQUM7QUFFOUIsUUFBQSxpQkFBaUIsR0FBRyxHQUFHLENBQUM7QUFpRXJDLElBQVksYUFLWDtBQUxELFdBQVksYUFBYTtJQUN2QiwyREFBYSxDQUFBO0lBQ2IscURBQVUsQ0FBQTtJQUNWLHVEQUFXLENBQUE7SUFDWCx1REFBVyxDQUFBO0FBQ2IsQ0FBQyxFQUxXLGFBQWEsNkJBQWIsYUFBYSxRQUt4QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIFRyYW5zYWN0aW9uRXhwbGFuYXRpb24gYXMgQmFzZVRyYW5zYWN0aW9uRXhwbGFuYXRpb24sXG4gIEVudHJ5LFxuICBTaWduVHJhbnNhY3Rpb25PcHRpb25zLFxuICBUcmFuc2FjdGlvblBhcmFtcyxcbiAgVHJhbnNhY3Rpb25QcmVidWlsZCBhcyBCYXNlVHJhbnNhY3Rpb25QcmVidWlsZCxcbiAgVHJhbnNhY3Rpb25UeXBlLFxuICBWZXJpZnlUcmFuc2FjdGlvbk9wdGlvbnMsXG4gIFRyYW5zYWN0aW9uUmVjaXBpZW50LFxufSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5pbXBvcnQgeyBGbHJwRmVlU3RhdGUgfSBmcm9tICdAYml0Z28vcHVibGljLXR5cGVzJztcbmltcG9ydCB7IHB2bVNlcmlhbCwgVW5zaWduZWRUeCwgVHJhbnNmZXJhYmxlT3V0cHV0LCBldm1TZXJpYWwgfSBmcm9tICdAZmxhcmVuZXR3b3JrL2ZsYXJlanMnO1xuXG4vKipcbiAqIEVudW0gZm9yIEZsYXJlIHRyYW5zYWN0aW9uIHR5cGVzXG4gKi9cbmV4cG9ydCBlbnVtIEZsYXJlVHJhbnNhY3Rpb25UeXBlIHtcbiAgRXZtRXhwb3J0VHggPSAnZXZtLkV4cG9ydFR4JyxcbiAgRXZtSW1wb3J0VHggPSAnZXZtLkltcG9ydFR4JyxcbiAgUHZtRXhwb3J0VHggPSAncHZtLkV4cG9ydFR4JyxcbiAgUHZtSW1wb3J0VHggPSAncHZtLkltcG9ydFR4Jyxcbn1cblxuZXhwb3J0IGludGVyZmFjZSBUcmFuc2FjdGlvbkV4cGxhbmF0aW9uIGV4dGVuZHMgQmFzZVRyYW5zYWN0aW9uRXhwbGFuYXRpb24ge1xuICB0eXBlOiBUcmFuc2FjdGlvblR5cGU7XG4gIHJld2FyZEFkZHJlc3Nlczogc3RyaW5nW107XG4gIGlucHV0czogRW50cnlbXTtcbn1cblxuLyoqXG4gKiBUaGUgdHJhbnNhY3Rpb24gZGF0YSByZXR1cm5lZCBmcm9tIHRoZSB0b0pzb24oKSBmdW5jdGlvbiBvZiBhIHRyYW5zYWN0aW9uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVHhEYXRhIHtcbiAgaWQ6IHN0cmluZztcbiAgaW5wdXRzOiBFbnRyeVtdO1xuICB0eXBlOiBUcmFuc2FjdGlvblR5cGU7XG4gIGZyb21BZGRyZXNzZXM6IHN0cmluZ1tdO1xuICB0aHJlc2hvbGQ6IG51bWJlcjtcbiAgbG9ja3RpbWU6IHN0cmluZztcbiAgc2lnbmF0dXJlczogc3RyaW5nW107XG4gIG91dHB1dHM6IEVudHJ5W107XG4gIGNoYW5nZU91dHB1dHM6IEVudHJ5W107XG4gIHNvdXJjZUNoYWluPzogc3RyaW5nO1xuICBkZXN0aW5hdGlvbkNoYWluPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIERlY29kZWQgVVRYTyBvYmplY3QuIFRoaXMgaXMgZm9yIGEgc2luZ2xlIHV0eG9cbiAqXG4gKiBAcGFyYW0ge251bWJlcn0gb3V0cHV0SURcbiAqIEBwYXJhbSB7c3RyaW5nfSBhbW91bnQgQW1vdW50IGFzIGEgQmlnIE51bWJlciBzdHJpbmdcbiAqIEBwYXJhbSB7c3RyaW5nfSB0eGlkIFRyYW5zYWN0aW9uIElEIGVuY29kZWQgYXMgY2I1OFxuICogQHBhcmFtIHtzdHJpbmd9IG91dHB1dGlkeCBPdXRwdXQgaW5kZXggYXMgYSBzdHJpbmdcbiAqL1xuZXhwb3J0IHR5cGUgRGVjb2RlZFV0eG9PYmogPSB7XG4gIG91dHB1dElEOiBudW1iZXI7XG4gIGxvY2t0aW1lPzogc3RyaW5nO1xuICBhbW91bnQ6IHN0cmluZztcbiAgdHhpZDogc3RyaW5nO1xuICBvdXRwdXRpZHg6IHN0cmluZztcbiAgdGhyZXNob2xkOiBudW1iZXI7XG4gIGFkZHJlc3Nlczogc3RyaW5nW107XG4gIGFkZHJlc3Nlc0luZGV4PzogbnVtYmVyW107XG59O1xuXG4vKipcbiAqIFR5cGVJZCB2YWx1ZSBmb3IgU0VDUDI1NksxIFRyYW5zZmVyIE91dHB1dFxuICpcbiAqIFNpbWlsYXIgdG8gQXZhbGFuY2hlIFAtQ2hhaW4ncyBTRUNQMjU2SzEgVHJhbnNmZXIgT3V0cHV0XG4gKi9cbmV4cG9ydCBjb25zdCBTRUNQMjU2SzFfVHJhbnNmZXJfT3V0cHV0ID0gNztcblxuZXhwb3J0IGNvbnN0IEFERFJFU1NfU0VQQVJBVE9SID0gJ34nO1xuXG4vLyBTaW1wbGlmaWVkIHR5cGUgZGVmaW5pdGlvbnMgZm9yIEZsYXJlXG5leHBvcnQgdHlwZSBUeCA9XG4gIHwgcHZtU2VyaWFsLkJhc2VUeFxuICB8IFVuc2lnbmVkVHhcbiAgfCBldm1TZXJpYWwuRXhwb3J0VHhcbiAgfCBldm1TZXJpYWwuSW1wb3J0VHhcbiAgfCBwdm1TZXJpYWwuRXhwb3J0VHhcbiAgfCBwdm1TZXJpYWwuSW1wb3J0VHg7XG5cbmV4cG9ydCB0eXBlIFNlcmlhbGl6ZWRUeCA9IGV2bVNlcmlhbC5FeHBvcnRUeCB8IGV2bVNlcmlhbC5JbXBvcnRUeCB8IHB2bVNlcmlhbC5FeHBvcnRUeCB8IHB2bVNlcmlhbC5JbXBvcnRUeDtcbmV4cG9ydCB0eXBlIEJhc2VUeCA9IHB2bVNlcmlhbC5CYXNlVHg7XG5leHBvcnQgdHlwZSBPdXRwdXQgPSBUcmFuc2ZlcmFibGVPdXRwdXQ7XG5leHBvcnQgaW50ZXJmYWNlIEZscnBWZXJpZnlUcmFuc2FjdGlvbk9wdGlvbnMgZXh0ZW5kcyBWZXJpZnlUcmFuc2FjdGlvbk9wdGlvbnMge1xuICB0eFBhcmFtczogRmxycFRyYW5zYWN0aW9uUGFyYW1zO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZscnBUcmFuc2FjdGlvblBhcmFtcyBleHRlbmRzIFRyYW5zYWN0aW9uUGFyYW1zIHtcbiAgdHlwZTogc3RyaW5nO1xuICBsb2NrdGltZT86IG51bWJlcjtcbiAgdW5zcGVudHM/OiBzdHJpbmdbXTtcbiAgc291cmNlQ2hhaW4/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRmxycEVudHJ5IGV4dGVuZHMgRW50cnkge1xuICBpZDogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZscnBTaWduVHJhbnNhY3Rpb25PcHRpb25zIGV4dGVuZHMgU2lnblRyYW5zYWN0aW9uT3B0aW9ucyB7XG4gIHR4UHJlYnVpbGQ6IFRyYW5zYWN0aW9uUHJlYnVpbGQ7XG4gIHBydjogc3RyaW5nIHwgc3RyaW5nW107XG4gIHB1YktleXM/OiBzdHJpbmdbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBUcmFuc2FjdGlvblByZWJ1aWxkIGV4dGVuZHMgQmFzZVRyYW5zYWN0aW9uUHJlYnVpbGQge1xuICB0eEhleDogc3RyaW5nO1xuICB0eEluZm86IFR4SW5mbztcbiAgc291cmNlOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHhJbmZvIHtcbiAgcmVjaXBpZW50czogVHJhbnNhY3Rpb25SZWNpcGllbnRbXTtcbiAgZnJvbTogc3RyaW5nO1xuICB0eGlkOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRmxycEV4cGxhaW5UcmFuc2FjdGlvbk9wdGlvbnMge1xuICB0eEhleD86IHN0cmluZztcbiAgaGFsZlNpZ25lZD86IHtcbiAgICB0eEhleDogc3RyaW5nO1xuICB9O1xuICBwdWJsaWNLZXlzPzogc3RyaW5nW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRmVlQ29uZmlnIHtcbiAgd2VpZ2h0czogRGltZW5zaW9ucztcbiAgbWF4Q2FwYWNpdHk6IGJpZ2ludDtcbiAgbWF4UGVyU2Vjb25kOiBiaWdpbnQ7XG4gIHRhcmdldFBlclNlY29uZDogYmlnaW50O1xuICAvKiogTWluaW11bSBnYXMgcHJpY2UgKi9cbiAgbWluUHJpY2U6IGJpZ2ludDtcbiAgZXhjZXNzQ29udmVyc2lvbkNvbnN0YW50OiBiaWdpbnQ7XG59XG5cbmV4cG9ydCBlbnVtIEZlZURpbWVuc2lvbnMge1xuICBCYW5kd2lkdGggPSAwLFxuICBEQlJlYWQgPSAxLFxuICBEQldyaXRlID0gMixcbiAgQ29tcHV0ZSA9IDMsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRmxycFRyYW5zYWN0aW9uRmVlIHtcbiAgZmVlOiBzdHJpbmc7XG4gIHR5cGU/OiBzdHJpbmc7XG4gIGZlZVN0YXRlPzogRmxycEZlZVN0YXRlO1xufVxuXG50eXBlIERpbWVuc2lvblZhbHVlID0gbnVtYmVyO1xuXG5leHBvcnQgdHlwZSBEaW1lbnNpb25zID0gUmVjb3JkPEZlZURpbWVuc2lvbnMsIERpbWVuc2lvblZhbHVlPjtcblxuLyoqXG4gKiBPcHRpb25zIGZvciBFVk0gZXhwb3J0IHRyYW5zYWN0aW9uc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIEV4cG9ydEVWTU9wdGlvbnMge1xuICB0aHJlc2hvbGQ6IG51bWJlcjtcbiAgbG9ja3RpbWU6IGJpZ2ludDtcbn1cbiJdfQ==
@@ -22,7 +22,6 @@ export declare class Transaction extends BaseTransaction {
22
22
  _to: Uint8Array[];
23
23
  _rewardAddresses: Uint8Array[];
24
24
  _utxos: DecodedUtxoObj[];
25
- _utxoHexStrings: string[];
26
25
  _context: Context.Context;
27
26
  _fee: FlrpTransactionFee;
28
27
  _feeState: FlrpFeeState;
@@ -1 +1 @@
1
- {"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../../src/lib/transaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC3E,OAAO,EACL,OAAO,EACP,eAAe,EACf,KAAK,EAGL,eAAe,EAChB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAEL,UAAU,EAOV,OAAO,EACR,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EACL,sBAAsB,EACtB,EAAE,EACF,MAAM,EAGN,kBAAkB,EAClB,cAAc,EACf,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA+DpC,qBAAa,WAAY,SAAQ,eAAe;IAC9C,SAAS,CAAC,iBAAiB,EAAE,EAAE,CAAC;IACzB,KAAK,EAAE,eAAe,CAAC;IACvB,QAAQ,EAAE,YAAY,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,SAAK;IACf,SAAS,SAAa;IACtB,cAAc,EAAE,UAAU,EAAE,CAAM;IAClC,GAAG,EAAE,UAAU,EAAE,CAAM;IACvB,gBAAgB,EAAE,UAAU,EAAE,CAAM;IACpC,MAAM,EAAE,cAAc,EAAE,CAAM;IAC9B,eAAe,EAAE,MAAM,EAAE,CAAM;IAC/B,QAAQ,EAAE,OAAO,CAAC,OAAO,CAAC;IAC1B,IAAI,EAAE,kBAAkB,CAAgB;IACxC,SAAS,EAAE,YAAY,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,MAAM,GAAG,SAAS,CAAC;gBAE/B,UAAU,EAAE,QAAQ,CAAC,UAAU,CAAC;IAS5C,IAAI,SAAS,IAAI,MAAM,EAAE,CAKxB;IAED,IAAI,WAAW,IAAI,UAAU,EAAE,CAE9B;IAED,IAAI,cAAc,IAAI,OAAO,CAE5B;IAED,kBAAkB;IAClB,OAAO,CAAC,EAAE,GAAG,EAAE,EAAE,OAAO,GAAG,OAAO;IAI5B,IAAI,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAsF3C,iBAAiB,IAAI,MAAM;IAkB3B,MAAM,IAAI,MAAM;IAmBhB;;OAEG;IACH,IAAI,WAAW,IAAI,MAAM,GAAG,SAAS,CA6BpC;IAED;;OAEG;IACH,IAAI,gBAAgB,IAAI,MAAM,GAAG,SAAS,CA6BzC;IAED;;;;;OAKG;IACH,mBAAmB,CAAC,kBAAkB,EAAE,MAAM,GAAG,MAAM;IAWvD,cAAc,CAAC,EAAE,EAAE,EAAE,GAAG,IAAI;IAI5B;;;OAGG;IACH,mBAAmB,IAAI,EAAE;IAIzB,kBAAkB,CAAC,eAAe,EAAE,eAAe,GAAG,IAAI;IAO1D,IAAI,eAAe,IAAI,MAAM,CAE5B;IAED,IAAI,EAAE,IAAI,MAAM,CAKf;IAED,IAAI,aAAa,IAAI,MAAM,EAAE,CAE5B;IAED,IAAI,eAAe,IAAI,MAAM,EAAE,CAE9B;IAED,IAAI,GAAG,IAAI,kBAAkB,CAE5B;IAED;;OAEG;IACH,IAAI,sBAAsB,IAAI,OAAO,CAIpC;IAED,IAAI,OAAO,IAAI,KAAK,EAAE,CAwCrB;IAED,IAAI,aAAa,IAAI,KAAK,EAAE,CAmB3B;IAED,IAAI,MAAM,IAAI,KAAK,EAAE,CAsDpB;IAED,kBAAkB,IAAI,sBAAsB;CA0B7C"}
1
+ {"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../../src/lib/transaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC3E,OAAO,EACL,OAAO,EACP,eAAe,EACf,KAAK,EAGL,eAAe,EAChB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAEL,UAAU,EAOV,OAAO,EACR,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EACL,sBAAsB,EACtB,EAAE,EACF,MAAM,EAGN,kBAAkB,EAClB,cAAc,EACf,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA+DpC,qBAAa,WAAY,SAAQ,eAAe;IAC9C,SAAS,CAAC,iBAAiB,EAAE,EAAE,CAAC;IACzB,KAAK,EAAE,eAAe,CAAC;IACvB,QAAQ,EAAE,YAAY,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,SAAK;IACf,SAAS,SAAa;IACtB,cAAc,EAAE,UAAU,EAAE,CAAM;IAClC,GAAG,EAAE,UAAU,EAAE,CAAM;IACvB,gBAAgB,EAAE,UAAU,EAAE,CAAM;IACpC,MAAM,EAAE,cAAc,EAAE,CAAM;IAC9B,QAAQ,EAAE,OAAO,CAAC,OAAO,CAAC;IAC1B,IAAI,EAAE,kBAAkB,CAAgB;IACxC,SAAS,EAAE,YAAY,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,MAAM,GAAG,SAAS,CAAC;gBAE/B,UAAU,EAAE,QAAQ,CAAC,UAAU,CAAC;IAS5C,IAAI,SAAS,IAAI,MAAM,EAAE,CAKxB;IAED,IAAI,WAAW,IAAI,UAAU,EAAE,CAE9B;IAED,IAAI,cAAc,IAAI,OAAO,CAE5B;IAED,kBAAkB;IAClB,OAAO,CAAC,EAAE,GAAG,EAAE,EAAE,OAAO,GAAG,OAAO;IAI5B,IAAI,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAsF3C,iBAAiB,IAAI,MAAM;IAkB3B,MAAM,IAAI,MAAM;IAmBhB;;OAEG;IACH,IAAI,WAAW,IAAI,MAAM,GAAG,SAAS,CA6BpC;IAED;;OAEG;IACH,IAAI,gBAAgB,IAAI,MAAM,GAAG,SAAS,CA6BzC;IAED;;;;;OAKG;IACH,mBAAmB,CAAC,kBAAkB,EAAE,MAAM,GAAG,MAAM;IAWvD,cAAc,CAAC,EAAE,EAAE,EAAE,GAAG,IAAI;IAI5B;;;OAGG;IACH,mBAAmB,IAAI,EAAE;IAIzB,kBAAkB,CAAC,eAAe,EAAE,eAAe,GAAG,IAAI;IAO1D,IAAI,eAAe,IAAI,MAAM,CAE5B;IAED,IAAI,EAAE,IAAI,MAAM,CAKf;IAED,IAAI,aAAa,IAAI,MAAM,EAAE,CAE5B;IAED,IAAI,eAAe,IAAI,MAAM,EAAE,CAE9B;IAED,IAAI,GAAG,IAAI,kBAAkB,CAE5B;IAED;;OAEG;IACH,IAAI,sBAAsB,IAAI,OAAO,CAIpC;IAED,IAAI,OAAO,IAAI,KAAK,EAAE,CAwCrB;IAED,IAAI,aAAa,IAAI,KAAK,EAAE,CAmB3B;IAED,IAAI,MAAM,IAAI,KAAK,EAAE,CAsDpB;IAED,kBAAkB,IAAI,sBAAsB;CA0B7C"}