@bitgo-beta/sdk-coin-vet 1.0.0-alpha.21 → 1.0.0-alpha.22

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.
@@ -27,5 +27,6 @@ export declare class AddressInitializationTransaction extends Transaction {
27
27
  toJson(): VetTransactionData;
28
28
  /** @inheritdoc */
29
29
  fromDeserializedSignedTransaction(signedTx: VetTransaction): void;
30
+ loadInputsAndOutputs(): void;
30
31
  }
31
32
  //# sourceMappingURL=addressInitializationTransaction.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"addressInitializationTransaction.d.ts","sourceRoot":"","sources":["../../../../src/lib/transaction/addressInitializationTransaction.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAG7D,OAAO,EAAE,WAAW,IAAI,cAAc,EAAa,MAAM,mBAAmB,CAAC;AAC7E,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAE9C,qBAAa,gCAAiC,SAAQ,WAAW;IAC/D,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,gBAAgB,CAAS;gBAErB,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAK7C,IAAI,WAAW,IAAI,MAAM,CAExB;IAED,IAAI,WAAW,CAAC,OAAO,EAAE,MAAM,EAE9B;IAED,IAAI,UAAU,IAAI,MAAM,CAEvB;IAED,IAAI,UAAU,CAAC,OAAO,EAAE,MAAM,EAE7B;IAED,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,IAAI,CAAC,IAAI,EAAE,MAAM,EAEpB;IAED,IAAI,QAAQ,IAAI,MAAM,CAErB;IAED,IAAI,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAE5B;IAED,IAAI,eAAe,IAAI,MAAM,CAE5B;IAED,IAAI,eAAe,CAAC,OAAO,EAAE,MAAM,EAElC;IAED,kBAAkB;IACZ,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAoB5B,kBAAkB;IAClB,YAAY,IAAI,IAAI;IAUpB,kBAAkB;IAClB,MAAM,IAAI,kBAAkB;IAmB5B,kBAAkB;IAClB,iCAAiC,CAAC,QAAQ,EAAE,cAAc,GAAG,IAAI;CA0ClE"}
1
+ {"version":3,"file":"addressInitializationTransaction.d.ts","sourceRoot":"","sources":["../../../../src/lib/transaction/addressInitializationTransaction.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAmB,MAAM,qBAAqB,CAAC;AAG9E,OAAO,EAAE,WAAW,IAAI,cAAc,EAAa,MAAM,mBAAmB,CAAC;AAC7E,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAE9C,qBAAa,gCAAiC,SAAQ,WAAW;IAC/D,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,gBAAgB,CAAS;gBAErB,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAK7C,IAAI,WAAW,IAAI,MAAM,CAExB;IAED,IAAI,WAAW,CAAC,OAAO,EAAE,MAAM,EAE9B;IAED,IAAI,UAAU,IAAI,MAAM,CAEvB;IAED,IAAI,UAAU,CAAC,OAAO,EAAE,MAAM,EAE7B;IAED,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,IAAI,CAAC,IAAI,EAAE,MAAM,EAEpB;IAED,IAAI,QAAQ,IAAI,MAAM,CAErB;IAED,IAAI,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAE5B;IAED,IAAI,eAAe,IAAI,MAAM,CAE5B;IAED,IAAI,eAAe,CAAC,OAAO,EAAE,MAAM,EAElC;IAED,kBAAkB;IACZ,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAoB5B,kBAAkB;IAClB,YAAY,IAAI,IAAI;IAUpB,kBAAkB;IAClB,MAAM,IAAI,kBAAkB;IAmB5B,kBAAkB;IAClB,iCAAiC,CAAC,QAAQ,EAAE,cAAc,GAAG,IAAI;IA2CjE,oBAAoB,IAAI,IAAI;CAW7B"}
@@ -139,6 +139,7 @@ class AddressInitializationTransaction extends transaction_1.Transaction {
139
139
  // Set data from clauses
140
140
  this.contract = body.clauses[0]?.to || '0x0';
141
141
  this.transactionData = body.clauses[0]?.data || '0x0';
142
+ this.loadInputsAndOutputs();
142
143
  // Set sender address
143
144
  if (signedTx.origin) {
144
145
  this.sender = signedTx.origin.toString().toLowerCase();
@@ -157,6 +158,16 @@ class AddressInitializationTransaction extends transaction_1.Transaction {
157
158
  throw new sdk_core_1.InvalidTransactionError(`Failed to deserialize transaction: ${e.message}`);
158
159
  }
159
160
  }
161
+ loadInputsAndOutputs() {
162
+ this._type = sdk_core_1.TransactionType.AddressInitialization;
163
+ const { baseAddress, addressCreationSalt, feeAddress } = (0, abstract_eth_1.decodeForwarderCreationData)(this.transactionData);
164
+ this._baseAddress = baseAddress;
165
+ this._salt = addressCreationSalt;
166
+ this._feeAddress = feeAddress;
167
+ const forwarderImplementationAddress = this._coinConfig.network
168
+ .forwarderImplementationAddress;
169
+ this._initCode = (0, abstract_eth_1.getProxyInitcode)(forwarderImplementationAddress);
170
+ }
160
171
  }
161
172
  exports.AddressInitializationTransaction = AddressInitializationTransaction;
162
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkcmVzc0luaXRpYWxpemF0aW9uVHJhbnNhY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL3RyYW5zYWN0aW9uL2FkZHJlc3NJbml0aWFsaXphdGlvblRyYW5zYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLG1EQUFnRjtBQUNoRiwyREFBeUc7QUFFekcseURBQTJDO0FBQzNDLG9FQUF5QztBQUN6QyxnREFBNkU7QUFDN0UsK0NBQTRDO0FBRzVDLE1BQWEsZ0NBQWlDLFNBQVEseUJBQVc7SUFPL0QsWUFBWSxXQUFpQztRQUMzQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDbkIsSUFBSSxDQUFDLEtBQUssR0FBRywwQkFBZSxDQUFDLHFCQUFxQixDQUFDO0lBQ3JELENBQUM7SUFFRCxJQUFJLFdBQVc7UUFDYixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUM7SUFDM0IsQ0FBQztJQUVELElBQUksV0FBVyxDQUFDLE9BQWU7UUFDN0IsSUFBSSxDQUFDLFlBQVksR0FBRyxPQUFPLENBQUM7SUFDOUIsQ0FBQztJQUVELElBQUksVUFBVTtRQUNaLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQztJQUMxQixDQUFDO0lBRUQsSUFBSSxVQUFVLENBQUMsT0FBZTtRQUM1QixJQUFJLENBQUMsV0FBVyxHQUFHLE9BQU8sQ0FBQztJQUM3QixDQUFDO0lBRUQsSUFBSSxJQUFJO1FBQ04sT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFFRCxJQUFJLElBQUksQ0FBQyxJQUFZO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDO0lBQ3BCLENBQUM7SUFFRCxJQUFJLFFBQVE7UUFDVixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDeEIsQ0FBQztJQUVELElBQUksUUFBUSxDQUFDLFFBQWdCO1FB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Q0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDekQsQ0FBQztZQUVELDRCQUE0QjtZQUM1QixJQUFJLFFBQVEsQ0FBQyxTQUFTLEVBQUUsQ0FBQztnQkFDdkIsd0NBQXdDO2dCQUN4QyxJQUFJLENBQUMsZUFBZSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLG9CQUFTLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDO2dCQUU1Rix1RUFBdUU7Z0JBQ3ZFLElBQUksUUFBUSxDQUFDLFNBQVMsQ0FBQyxNQUFNLEdBQUcsb0JBQVMsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO29CQUMzRCxJQUFJLENBQUMsaUJBQWlCLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxvQkFBUyxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQztnQkFDN0YsQ0FBQztZQUNILENBQUM7UUFDSCxDQUFDO1FBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztZQUNYLE1BQU0sSUFBSSxrQ0FBdUIsQ0FBQyxzQ0FBc0MsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7UUFDdkYsQ0FBQztJQUNILENBQUM7Q0FDRjtBQW5KRCw0RUFtSkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUcmFuc2FjdGlvblR5cGUsIEludmFsaWRUcmFuc2FjdGlvbkVycm9yIH0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvcmUnO1xuaW1wb3J0IHsgZ2V0Q3JlYXRlRm9yd2FyZGVyUGFyYW1zQW5kVHlwZXMsIGNhbGN1bGF0ZUZvcndhcmRlclYxQWRkcmVzcyB9IGZyb20gJ0BiaXRnby1iZXRhL2Fic3RyYWN0LWV0aCc7XG5pbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvLWJldGEvc3RhdGljcyc7XG5pbXBvcnQgKiBhcyBldGhVdGlsIGZyb20gJ2V0aGVyZXVtanMtdXRpbCc7XG5pbXBvcnQgRXRoZXJldW1BYmkgZnJvbSAnZXRoZXJldW1qcy1hYmknO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb24gYXMgVmV0VHJhbnNhY3Rpb24sIFNlY3AyNTZrMSB9IGZyb20gJ0B2ZWNoYWluL3Nkay1jb3JlJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uIH0gZnJvbSAnLi90cmFuc2FjdGlvbic7XG5pbXBvcnQgeyBWZXRUcmFuc2FjdGlvbkRhdGEgfSBmcm9tICcuLi9pZmFjZSc7XG5cbmV4cG9ydCBjbGFzcyBBZGRyZXNzSW5pdGlhbGl6YXRpb25UcmFuc2FjdGlvbiBleHRlbmRzIFRyYW5zYWN0aW9uIHtcbiAgcHJpdmF0ZSBfYmFzZUFkZHJlc3M6IHN0cmluZztcbiAgcHJpdmF0ZSBfZmVlQWRkcmVzczogc3RyaW5nO1xuICBwcml2YXRlIF9zYWx0OiBzdHJpbmc7XG4gIHByaXZhdGUgX2luaXRDb2RlOiBzdHJpbmc7XG4gIHByaXZhdGUgX2RlcGxveWVkQWRkcmVzczogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKF9jb2luQ29uZmlnOiBSZWFkb25seTxDb2luQ29uZmlnPikge1xuICAgIHN1cGVyKF9jb2luQ29uZmlnKTtcbiAgICB0aGlzLl90eXBlID0gVHJhbnNhY3Rpb25UeXBlLkFkZHJlc3NJbml0aWFsaXphdGlvbjtcbiAgfVxuXG4gIGdldCBiYXNlQWRkcmVzcygpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9iYXNlQWRkcmVzcztcbiAgfVxuXG4gIHNldCBiYXNlQWRkcmVzcyhhZGRyZXNzOiBzdHJpbmcpIHtcbiAgICB0aGlzLl9iYXNlQWRkcmVzcyA9IGFkZHJlc3M7XG4gIH1cblxuICBnZXQgZmVlQWRkcmVzcygpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9mZWVBZGRyZXNzO1xuICB9XG5cbiAgc2V0IGZlZUFkZHJlc3MoYWRkcmVzczogc3RyaW5nKSB7XG4gICAgdGhpcy5fZmVlQWRkcmVzcyA9IGFkZHJlc3M7XG4gIH1cblxuICBnZXQgc2FsdCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9zYWx0O1xuICB9XG5cbiAgc2V0IHNhbHQoc2FsdDogc3RyaW5nKSB7XG4gICAgdGhpcy5fc2FsdCA9IHNhbHQ7XG4gIH1cblxuICBnZXQgaW5pdENvZGUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5faW5pdENvZGU7XG4gIH1cblxuICBzZXQgaW5pdENvZGUoaW5pdENvZGU6IHN0cmluZykge1xuICAgIHRoaXMuX2luaXRDb2RlID0gaW5pdENvZGU7XG4gIH1cblxuICBnZXQgZGVwbG95ZWRBZGRyZXNzKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX2RlcGxveWVkQWRkcmVzcztcbiAgfVxuXG4gIHNldCBkZXBsb3llZEFkZHJlc3MoYWRkcmVzczogc3RyaW5nKSB7XG4gICAgdGhpcy5fZGVwbG95ZWRBZGRyZXNzID0gYWRkcmVzcztcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBhc3luYyBidWlsZCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBzdXBlci5idWlsZCgpO1xuXG4gICAgaWYgKHRoaXMuX3NhbHQgJiYgdGhpcy5faW5pdENvZGUpIHtcbiAgICAgIGNvbnN0IHNhbHRCdWZmZXIgPSBldGhVdGlsLnNldExlbmd0aExlZnQoZXRoVXRpbC50b0J1ZmZlcih0aGlzLl9zYWx0KSwgMzIpO1xuXG4gICAgICBjb25zdCB7IGNyZWF0ZUZvcndhcmRlclBhcmFtcywgY3JlYXRlRm9yd2FyZGVyVHlwZXMgfSA9IGdldENyZWF0ZUZvcndhcmRlclBhcmFtc0FuZFR5cGVzKFxuICAgICAgICB0aGlzLl9iYXNlQWRkcmVzcyxcbiAgICAgICAgc2FsdEJ1ZmZlcixcbiAgICAgICAgdGhpcy5fZmVlQWRkcmVzc1xuICAgICAgKTtcblxuICAgICAgLy8gSGFzaCB0aGUgd2FsbGV0IGJhc2UgYWRkcmVzcyBhbmQgZmVlIGFkZHJlc3MgaWYgcHJlc2VudCB3aXRoIHRoZSBnaXZlbiBzYWx0LCBzbyB0aGUgYWRkcmVzcyBkaXJlY3RseSByZWxpZXMgb24gdGhlIGJhc2UgYWRkcmVzcyBhbmQgZmVlIGFkZHJlc3NcbiAgICAgIGNvbnN0IGNhbGN1bGF0aW9uU2FsdCA9IGV0aFV0aWwuYnVmZmVyVG9IZXgoXG4gICAgICAgIEV0aGVyZXVtQWJpLnNvbGlkaXR5U0hBMyhjcmVhdGVGb3J3YXJkZXJUeXBlcywgY3JlYXRlRm9yd2FyZGVyUGFyYW1zKVxuICAgICAgKTtcbiAgICAgIHRoaXMuZGVwbG95ZWRBZGRyZXNzID0gY2FsY3VsYXRlRm9yd2FyZGVyVjFBZGRyZXNzKHRoaXMuX2NvbnRyYWN0LCBjYWxjdWxhdGlvblNhbHQsIHRoaXMuX2luaXRDb2RlKTtcbiAgICB9XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgYnVpbGRDbGF1c2VzKCk6IHZvaWQge1xuICAgIHRoaXMuX2NsYXVzZXMgPSBbXG4gICAgICB7XG4gICAgICAgIHRvOiB0aGlzLl9jb250cmFjdCxcbiAgICAgICAgdmFsdWU6ICcweDAnLFxuICAgICAgICBkYXRhOiB0aGlzLl90cmFuc2FjdGlvbkRhdGEsXG4gICAgICB9LFxuICAgIF07XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgdG9Kc29uKCk6IFZldFRyYW5zYWN0aW9uRGF0YSB7XG4gICAgY29uc3QganNvbjogVmV0VHJhbnNhY3Rpb25EYXRhID0ge1xuICAgICAgaWQ6IHRoaXMuaWQsXG4gICAgICBjaGFpblRhZzogdGhpcy5jaGFpblRhZyxcbiAgICAgIGJsb2NrUmVmOiB0aGlzLmJsb2NrUmVmLFxuICAgICAgZXhwaXJhdGlvbjogdGhpcy5leHBpcmF0aW9uLFxuICAgICAgZ2FzUHJpY2VDb2VmOiB0aGlzLmdhc1ByaWNlQ29lZixcbiAgICAgIGdhczogdGhpcy5nYXMsXG4gICAgICBkZXBlbmRzT246IHRoaXMuZGVwZW5kc09uLFxuICAgICAgbm9uY2U6IHRoaXMubm9uY2UsXG4gICAgICBkYXRhOiB0aGlzLnRyYW5zYWN0aW9uRGF0YSxcbiAgICAgIHZhbHVlOiAnMCcsXG4gICAgICBzZW5kZXI6IHRoaXMuc2VuZGVyLFxuICAgICAgdG86IHRoaXMuY29udHJhY3QsXG4gICAgICBkZXBsb3llZEFkZHJlc3M6IHRoaXMuZGVwbG95ZWRBZGRyZXNzLFxuICAgIH07XG4gICAgcmV0dXJuIGpzb247XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgZnJvbURlc2VyaWFsaXplZFNpZ25lZFRyYW5zYWN0aW9uKHNpZ25lZFR4OiBWZXRUcmFuc2FjdGlvbik6IHZvaWQge1xuICAgIHRyeSB7XG4gICAgICBpZiAoIXNpZ25lZFR4IHx8ICFzaWduZWRUeC5ib2R5KSB7XG4gICAgICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcignSW52YWxpZCB0cmFuc2FjdGlvbjogbWlzc2luZyB0cmFuc2FjdGlvbiBib2R5Jyk7XG4gICAgICB9XG5cbiAgICAgIC8vIFN0b3JlIHRoZSByYXcgdHJhbnNhY3Rpb25cbiAgICAgIHRoaXMucmF3VHJhbnNhY3Rpb24gPSBzaWduZWRUeDtcblxuICAgICAgLy8gU2V0IHRyYW5zYWN0aW9uIGJvZHkgcHJvcGVydGllc1xuICAgICAgY29uc3QgYm9keSA9IHNpZ25lZFR4LmJvZHk7XG4gICAgICB0aGlzLmNoYWluVGFnID0gdHlwZW9mIGJvZHkuY2hhaW5UYWcgPT09ICdudW1iZXInID8gYm9keS5jaGFpblRhZyA6IDA7XG4gICAgICB0aGlzLmJsb2NrUmVmID0gYm9keS5ibG9ja1JlZiB8fCAnMHgwJztcbiAgICAgIHRoaXMuZXhwaXJhdGlvbiA9IHR5cGVvZiBib2R5LmV4cGlyYXRpb24gPT09ICdudW1iZXInID8gYm9keS5leHBpcmF0aW9uIDogNjQ7XG4gICAgICB0aGlzLmNsYXVzZXMgPSBib2R5LmNsYXVzZXMgfHwgW107XG4gICAgICB0aGlzLmdhc1ByaWNlQ29lZiA9IHR5cGVvZiBib2R5Lmdhc1ByaWNlQ29lZiA9PT0gJ251bWJlcicgPyBib2R5Lmdhc1ByaWNlQ29lZiA6IDEyODtcbiAgICAgIHRoaXMuZ2FzID0gdHlwZW9mIGJvZHkuZ2FzID09PSAnbnVtYmVyJyA/IGJvZHkuZ2FzIDogTnVtYmVyKGJvZHkuZ2FzKSB8fCAwO1xuICAgICAgdGhpcy5kZXBlbmRzT24gPSBib2R5LmRlcGVuZHNPbiB8fCBudWxsO1xuICAgICAgdGhpcy5ub25jZSA9IHR5cGVvZiBib2R5Lm5vbmNlID09PSAnbnVtYmVyJyA/IGJvZHkubm9uY2UgOiBOdW1iZXIoYm9keS5ub25jZSkgfHwgMDtcbiAgICAgIC8vIFNldCBkYXRhIGZyb20gY2xhdXNlc1xuICAgICAgdGhpcy5jb250cmFjdCA9IGJvZHkuY2xhdXNlc1swXT8udG8gfHwgJzB4MCc7XG4gICAgICB0aGlzLnRyYW5zYWN0aW9uRGF0YSA9IGJvZHkuY2xhdXNlc1swXT8uZGF0YSB8fCAnMHgwJztcblxuICAgICAgLy8gU2V0IHNlbmRlciBhZGRyZXNzXG4gICAgICBpZiAoc2lnbmVkVHgub3JpZ2luKSB7XG4gICAgICAgIHRoaXMuc2VuZGVyID0gc2lnbmVkVHgub3JpZ2luLnRvU3RyaW5nKCkudG9Mb3dlckNhc2UoKTtcbiAgICAgIH1cblxuICAgICAgLy8gU2V0IHNpZ25hdHVyZXMgaWYgcHJlc2VudFxuICAgICAgaWYgKHNpZ25lZFR4LnNpZ25hdHVyZSkge1xuICAgICAgICAvLyBGaXJzdCBzaWduYXR1cmUgaXMgc2VuZGVyJ3Mgc2lnbmF0dXJlXG4gICAgICAgIHRoaXMuc2VuZGVyU2lnbmF0dXJlID0gQnVmZmVyLmZyb20oc2lnbmVkVHguc2lnbmF0dXJlLnNsaWNlKDAsIFNlY3AyNTZrMS5TSUdOQVRVUkVfTEVOR1RIKSk7XG5cbiAgICAgICAgLy8gSWYgdGhlcmUncyBhZGRpdGlvbmFsIHNpZ25hdHVyZSBkYXRhLCBpdCdzIHRoZSBmZWUgcGF5ZXIncyBzaWduYXR1cmVcbiAgICAgICAgaWYgKHNpZ25lZFR4LnNpZ25hdHVyZS5sZW5ndGggPiBTZWNwMjU2azEuU0lHTkFUVVJFX0xFTkdUSCkge1xuICAgICAgICAgIHRoaXMuZmVlUGF5ZXJTaWduYXR1cmUgPSBCdWZmZXIuZnJvbShzaWduZWRUeC5zaWduYXR1cmUuc2xpY2UoU2VjcDI1NmsxLlNJR05BVFVSRV9MRU5HVEgpKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcihgRmFpbGVkIHRvIGRlc2VyaWFsaXplIHRyYW5zYWN0aW9uOiAke2UubWVzc2FnZX1gKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
173
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkcmVzc0luaXRpYWxpemF0aW9uVHJhbnNhY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL3RyYW5zYWN0aW9uL2FkZHJlc3NJbml0aWFsaXphdGlvblRyYW5zYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLG1EQUFnRjtBQUNoRiwyREFLa0M7QUFFbEMseURBQTJDO0FBQzNDLG9FQUF5QztBQUN6QyxnREFBNkU7QUFDN0UsK0NBQTRDO0FBRzVDLE1BQWEsZ0NBQWlDLFNBQVEseUJBQVc7SUFPL0QsWUFBWSxXQUFpQztRQUMzQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDbkIsSUFBSSxDQUFDLEtBQUssR0FBRywwQkFBZSxDQUFDLHFCQUFxQixDQUFDO0lBQ3JELENBQUM7SUFFRCxJQUFJLFdBQVc7UUFDYixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUM7SUFDM0IsQ0FBQztJQUVELElBQUksV0FBVyxDQUFDLE9BQWU7UUFDN0IsSUFBSSxDQUFDLFlBQVksR0FBRyxPQUFPLENBQUM7SUFDOUIsQ0FBQztJQUVELElBQUksVUFBVTtRQUNaLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQztJQUMxQixDQUFDO0lBRUQsSUFBSSxVQUFVLENBQUMsT0FBZTtRQUM1QixJQUFJLENBQUMsV0FBVyxHQUFHLE9BQU8sQ0FBQztJQUM3QixDQUFDO0lBRUQsSUFBSSxJQUFJO1FBQ04sT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFFRCxJQUFJLElBQUksQ0FBQyxJQUFZO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDO0lBQ3BCLENBQUM7SUFFRCxJQUFJLFFBQVE7UUFDVixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDeEIsQ0FBQztJQUVELElBQUksUUFBUSxDQUFDLFFBQWdCO1FBQzNCLElBQUksQ0FBQyxTQUFTLEdBQUcsUUFBUSxDQUFDO0lBQzVCLENBQUM7SUFFRCxJQUFJLGVBQWU7UUFDakIsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7SUFDL0IsQ0FBQztJQUVELElBQUksZUFBZSxDQUFDLE9BQWU7UUFDakMsSUFBSSxDQUFDLGdCQUFnQixHQUFHLE9BQU8sQ0FBQztJQUNsQyxDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLEtBQUssQ0FBQyxLQUFLO1FBQ1QsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBRWQsSUFBSSxJQUFJLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNqQyxNQUFNLFVBQVUsR0FBRyxPQUFPLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBRTNFLE1BQU0sRUFBRSxxQkFBcUIsRUFBRSxvQkFBb0IsRUFBRSxHQUFHLElBQUEsK0NBQWdDLEVBQ3RGLElBQUksQ0FBQyxZQUFZLEVBQ2pCLFVBQVUsRUFDVixJQUFJLENBQUMsV0FBVyxDQUNqQixDQUFDO1lBRUYsa0pBQWtKO1lBQ2xKLE1BQU0sZUFBZSxHQUFHLE9BQU8sQ0FBQyxXQUFXLENBQ3pDLHdCQUFXLENBQUMsWUFBWSxDQUFDLG9CQUFvQixFQUFFLHFCQUFxQixDQUFDLENBQ3RFLENBQUM7WUFDRixJQUFJLENBQUMsZUFBZSxHQUFHLElBQUEsMENBQTJCLEVBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxlQUFlLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ3RHLENBQUM7SUFDSCxDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLFlBQVk7UUFDVixJQUFJLENBQUMsUUFBUSxHQUFHO1lBQ2Q7Z0JBQ0UsRUFBRSxFQUFFLElBQUksQ0FBQyxTQUFTO2dCQUNsQixLQUFLLEVBQUUsS0FBSztnQkFDWixJQUFJLEVBQUUsSUFBSSxDQUFDLGdCQUFnQjthQUM1QjtTQUNGLENBQUM7SUFDSixDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLE1BQU07UUFDSixNQUFNLElBQUksR0FBdUI7WUFDL0IsRUFBRSxFQUFFLElBQUksQ0FBQyxFQUFFO1lBQ1gsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRO1lBQ3ZCLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUTtZQUN2QixVQUFVLEVBQUUsSUFBSSxDQUFDLFVBQVU7WUFDM0IsWUFBWSxFQUFFLElBQUksQ0FBQyxZQUFZO1lBQy9CLEdBQUcsRUFBRSxJQUFJLENBQUMsR0FBRztZQUNiLFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUztZQUN6QixLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUs7WUFDakIsSUFBSSxFQUFFLElBQUksQ0FBQyxlQUFlO1lBQzFCLEtBQUssRUFBRSxHQUFHO1lBQ1YsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNO1lBQ25CLEVBQUUsRUFBRSxJQUFJLENBQUMsUUFBUTtZQUNqQixlQUFlLEVBQUUsSUFBSSxDQUFDLGVBQWU7U0FDdEMsQ0FBQztRQUNGLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELGtCQUFrQjtJQUNsQixpQ0FBaUMsQ0FBQyxRQUF3QjtRQUN4RCxJQUFJLENBQUM7WUFDSCxJQUFJLENBQUMsUUFBUSxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO2dCQUNoQyxNQUFNLElBQUksa0NBQXVCLENBQUMsK0NBQStDLENBQUMsQ0FBQztZQUNyRixDQUFDO1lBRUQsNEJBQTRCO1lBQzVCLElBQUksQ0FBQyxjQUFjLEdBQUcsUUFBUSxDQUFDO1lBRS9CLGtDQUFrQztZQUNsQyxNQUFNLElBQUksR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDO1lBQzNCLElBQUksQ0FBQyxRQUFRLEdBQUcsT0FBTyxJQUFJLENBQUMsUUFBUSxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3RFLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFFBQVEsSUFBSSxLQUFLLENBQUM7WUFDdkMsSUFBSSxDQUFDLFVBQVUsR0FBRyxPQUFPLElBQUksQ0FBQyxVQUFVLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDN0UsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxJQUFJLEVBQUUsQ0FBQztZQUNsQyxJQUFJLENBQUMsWUFBWSxHQUFHLE9BQU8sSUFBSSxDQUFDLFlBQVksS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQztZQUNwRixJQUFJLENBQUMsR0FBRyxHQUFHLE9BQU8sSUFBSSxDQUFDLEdBQUcsS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQzNFLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFNBQVMsSUFBSSxJQUFJLENBQUM7WUFDeEMsSUFBSSxDQUFDLEtBQUssR0FBRyxPQUFPLElBQUksQ0FBQyxLQUFLLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNuRix3QkFBd0I7WUFDeEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsSUFBSSxLQUFLLENBQUM7WUFDN0MsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLElBQUksSUFBSSxLQUFLLENBQUM7WUFDdEQsSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUM7WUFDNUIscUJBQXFCO1lBQ3JCLElBQUksUUFBUSxDQUFDLE1BQU0sRUFBRSxDQUFDO2dCQUNwQixJQUFJLENBQUMsTUFBTSxHQUFHLFFBQVEsQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDekQsQ0FBQztZQUVELDRCQUE0QjtZQUM1QixJQUFJLFFBQVEsQ0FBQyxTQUFTLEVBQUUsQ0FBQztnQkFDdkIsd0NBQXdDO2dCQUN4QyxJQUFJLENBQUMsZUFBZSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLG9CQUFTLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDO2dCQUU1Rix1RUFBdUU7Z0JBQ3ZFLElBQUksUUFBUSxDQUFDLFNBQVMsQ0FBQyxNQUFNLEdBQUcsb0JBQVMsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO29CQUMzRCxJQUFJLENBQUMsaUJBQWlCLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxvQkFBUyxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQztnQkFDN0YsQ0FBQztZQUNILENBQUM7UUFDSCxDQUFDO1FBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztZQUNYLE1BQU0sSUFBSSxrQ0FBdUIsQ0FBQyxzQ0FBc0MsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7UUFDdkYsQ0FBQztJQUNILENBQUM7SUFFRCxvQkFBb0I7UUFDbEIsSUFBSSxDQUFDLEtBQUssR0FBRywwQkFBZSxDQUFDLHFCQUFxQixDQUFDO1FBQ25ELE1BQU0sRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsVUFBVSxFQUFFLEdBQUcsSUFBQSwwQ0FBMkIsRUFBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7UUFFM0csSUFBSSxDQUFDLFlBQVksR0FBRyxXQUFxQixDQUFDO1FBQzFDLElBQUksQ0FBQyxLQUFLLEdBQUcsbUJBQTZCLENBQUM7UUFDM0MsSUFBSSxDQUFDLFdBQVcsR0FBRyxVQUFvQixDQUFDO1FBQ3hDLE1BQU0sOEJBQThCLEdBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUEyQjthQUNqRiw4QkFBd0MsQ0FBQztRQUM1QyxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUEsK0JBQWdCLEVBQUMsOEJBQThCLENBQUMsQ0FBQztJQUNwRSxDQUFDO0NBQ0Y7QUEvSkQsNEVBK0pDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHJhbnNhY3Rpb25UeXBlLCBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvciB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb3JlJztcbmltcG9ydCB7XG4gIGdldENyZWF0ZUZvcndhcmRlclBhcmFtc0FuZFR5cGVzLFxuICBjYWxjdWxhdGVGb3J3YXJkZXJWMUFkZHJlc3MsXG4gIGRlY29kZUZvcndhcmRlckNyZWF0aW9uRGF0YSxcbiAgZ2V0UHJveHlJbml0Y29kZSxcbn0gZnJvbSAnQGJpdGdvLWJldGEvYWJzdHJhY3QtZXRoJztcbmltcG9ydCB7IEJhc2VDb2luIGFzIENvaW5Db25maWcsIEV0aGVyZXVtTmV0d29yayB9IGZyb20gJ0BiaXRnby1iZXRhL3N0YXRpY3MnO1xuaW1wb3J0ICogYXMgZXRoVXRpbCBmcm9tICdldGhlcmV1bWpzLXV0aWwnO1xuaW1wb3J0IEV0aGVyZXVtQWJpIGZyb20gJ2V0aGVyZXVtanMtYWJpJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uIGFzIFZldFRyYW5zYWN0aW9uLCBTZWNwMjU2azEgfSBmcm9tICdAdmVjaGFpbi9zZGstY29yZSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbiB9IGZyb20gJy4vdHJhbnNhY3Rpb24nO1xuaW1wb3J0IHsgVmV0VHJhbnNhY3Rpb25EYXRhIH0gZnJvbSAnLi4vaWZhY2UnO1xuXG5leHBvcnQgY2xhc3MgQWRkcmVzc0luaXRpYWxpemF0aW9uVHJhbnNhY3Rpb24gZXh0ZW5kcyBUcmFuc2FjdGlvbiB7XG4gIHByaXZhdGUgX2Jhc2VBZGRyZXNzOiBzdHJpbmc7XG4gIHByaXZhdGUgX2ZlZUFkZHJlc3M6IHN0cmluZztcbiAgcHJpdmF0ZSBfc2FsdDogc3RyaW5nO1xuICBwcml2YXRlIF9pbml0Q29kZTogc3RyaW5nO1xuICBwcml2YXRlIF9kZXBsb3llZEFkZHJlc3M6IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcihfY29pbkNvbmZpZzogUmVhZG9ubHk8Q29pbkNvbmZpZz4pIHtcbiAgICBzdXBlcihfY29pbkNvbmZpZyk7XG4gICAgdGhpcy5fdHlwZSA9IFRyYW5zYWN0aW9uVHlwZS5BZGRyZXNzSW5pdGlhbGl6YXRpb247XG4gIH1cblxuICBnZXQgYmFzZUFkZHJlc3MoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fYmFzZUFkZHJlc3M7XG4gIH1cblxuICBzZXQgYmFzZUFkZHJlc3MoYWRkcmVzczogc3RyaW5nKSB7XG4gICAgdGhpcy5fYmFzZUFkZHJlc3MgPSBhZGRyZXNzO1xuICB9XG5cbiAgZ2V0IGZlZUFkZHJlc3MoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fZmVlQWRkcmVzcztcbiAgfVxuXG4gIHNldCBmZWVBZGRyZXNzKGFkZHJlc3M6IHN0cmluZykge1xuICAgIHRoaXMuX2ZlZUFkZHJlc3MgPSBhZGRyZXNzO1xuICB9XG5cbiAgZ2V0IHNhbHQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fc2FsdDtcbiAgfVxuXG4gIHNldCBzYWx0KHNhbHQ6IHN0cmluZykge1xuICAgIHRoaXMuX3NhbHQgPSBzYWx0O1xuICB9XG5cbiAgZ2V0IGluaXRDb2RlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX2luaXRDb2RlO1xuICB9XG5cbiAgc2V0IGluaXRDb2RlKGluaXRDb2RlOiBzdHJpbmcpIHtcbiAgICB0aGlzLl9pbml0Q29kZSA9IGluaXRDb2RlO1xuICB9XG5cbiAgZ2V0IGRlcGxveWVkQWRkcmVzcygpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9kZXBsb3llZEFkZHJlc3M7XG4gIH1cblxuICBzZXQgZGVwbG95ZWRBZGRyZXNzKGFkZHJlc3M6IHN0cmluZykge1xuICAgIHRoaXMuX2RlcGxveWVkQWRkcmVzcyA9IGFkZHJlc3M7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgYXN5bmMgYnVpbGQoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgc3VwZXIuYnVpbGQoKTtcblxuICAgIGlmICh0aGlzLl9zYWx0ICYmIHRoaXMuX2luaXRDb2RlKSB7XG4gICAgICBjb25zdCBzYWx0QnVmZmVyID0gZXRoVXRpbC5zZXRMZW5ndGhMZWZ0KGV0aFV0aWwudG9CdWZmZXIodGhpcy5fc2FsdCksIDMyKTtcblxuICAgICAgY29uc3QgeyBjcmVhdGVGb3J3YXJkZXJQYXJhbXMsIGNyZWF0ZUZvcndhcmRlclR5cGVzIH0gPSBnZXRDcmVhdGVGb3J3YXJkZXJQYXJhbXNBbmRUeXBlcyhcbiAgICAgICAgdGhpcy5fYmFzZUFkZHJlc3MsXG4gICAgICAgIHNhbHRCdWZmZXIsXG4gICAgICAgIHRoaXMuX2ZlZUFkZHJlc3NcbiAgICAgICk7XG5cbiAgICAgIC8vIEhhc2ggdGhlIHdhbGxldCBiYXNlIGFkZHJlc3MgYW5kIGZlZSBhZGRyZXNzIGlmIHByZXNlbnQgd2l0aCB0aGUgZ2l2ZW4gc2FsdCwgc28gdGhlIGFkZHJlc3MgZGlyZWN0bHkgcmVsaWVzIG9uIHRoZSBiYXNlIGFkZHJlc3MgYW5kIGZlZSBhZGRyZXNzXG4gICAgICBjb25zdCBjYWxjdWxhdGlvblNhbHQgPSBldGhVdGlsLmJ1ZmZlclRvSGV4KFxuICAgICAgICBFdGhlcmV1bUFiaS5zb2xpZGl0eVNIQTMoY3JlYXRlRm9yd2FyZGVyVHlwZXMsIGNyZWF0ZUZvcndhcmRlclBhcmFtcylcbiAgICAgICk7XG4gICAgICB0aGlzLmRlcGxveWVkQWRkcmVzcyA9IGNhbGN1bGF0ZUZvcndhcmRlclYxQWRkcmVzcyh0aGlzLl9jb250cmFjdCwgY2FsY3VsYXRpb25TYWx0LCB0aGlzLl9pbml0Q29kZSk7XG4gICAgfVxuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGJ1aWxkQ2xhdXNlcygpOiB2b2lkIHtcbiAgICB0aGlzLl9jbGF1c2VzID0gW1xuICAgICAge1xuICAgICAgICB0bzogdGhpcy5fY29udHJhY3QsXG4gICAgICAgIHZhbHVlOiAnMHgwJyxcbiAgICAgICAgZGF0YTogdGhpcy5fdHJhbnNhY3Rpb25EYXRhLFxuICAgICAgfSxcbiAgICBdO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHRvSnNvbigpOiBWZXRUcmFuc2FjdGlvbkRhdGEge1xuICAgIGNvbnN0IGpzb246IFZldFRyYW5zYWN0aW9uRGF0YSA9IHtcbiAgICAgIGlkOiB0aGlzLmlkLFxuICAgICAgY2hhaW5UYWc6IHRoaXMuY2hhaW5UYWcsXG4gICAgICBibG9ja1JlZjogdGhpcy5ibG9ja1JlZixcbiAgICAgIGV4cGlyYXRpb246IHRoaXMuZXhwaXJhdGlvbixcbiAgICAgIGdhc1ByaWNlQ29lZjogdGhpcy5nYXNQcmljZUNvZWYsXG4gICAgICBnYXM6IHRoaXMuZ2FzLFxuICAgICAgZGVwZW5kc09uOiB0aGlzLmRlcGVuZHNPbixcbiAgICAgIG5vbmNlOiB0aGlzLm5vbmNlLFxuICAgICAgZGF0YTogdGhpcy50cmFuc2FjdGlvbkRhdGEsXG4gICAgICB2YWx1ZTogJzAnLFxuICAgICAgc2VuZGVyOiB0aGlzLnNlbmRlcixcbiAgICAgIHRvOiB0aGlzLmNvbnRyYWN0LFxuICAgICAgZGVwbG95ZWRBZGRyZXNzOiB0aGlzLmRlcGxveWVkQWRkcmVzcyxcbiAgICB9O1xuICAgIHJldHVybiBqc29uO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGZyb21EZXNlcmlhbGl6ZWRTaWduZWRUcmFuc2FjdGlvbihzaWduZWRUeDogVmV0VHJhbnNhY3Rpb24pOiB2b2lkIHtcbiAgICB0cnkge1xuICAgICAgaWYgKCFzaWduZWRUeCB8fCAhc2lnbmVkVHguYm9keSkge1xuICAgICAgICB0aHJvdyBuZXcgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IoJ0ludmFsaWQgdHJhbnNhY3Rpb246IG1pc3NpbmcgdHJhbnNhY3Rpb24gYm9keScpO1xuICAgICAgfVxuXG4gICAgICAvLyBTdG9yZSB0aGUgcmF3IHRyYW5zYWN0aW9uXG4gICAgICB0aGlzLnJhd1RyYW5zYWN0aW9uID0gc2lnbmVkVHg7XG5cbiAgICAgIC8vIFNldCB0cmFuc2FjdGlvbiBib2R5IHByb3BlcnRpZXNcbiAgICAgIGNvbnN0IGJvZHkgPSBzaWduZWRUeC5ib2R5O1xuICAgICAgdGhpcy5jaGFpblRhZyA9IHR5cGVvZiBib2R5LmNoYWluVGFnID09PSAnbnVtYmVyJyA/IGJvZHkuY2hhaW5UYWcgOiAwO1xuICAgICAgdGhpcy5ibG9ja1JlZiA9IGJvZHkuYmxvY2tSZWYgfHwgJzB4MCc7XG4gICAgICB0aGlzLmV4cGlyYXRpb24gPSB0eXBlb2YgYm9keS5leHBpcmF0aW9uID09PSAnbnVtYmVyJyA/IGJvZHkuZXhwaXJhdGlvbiA6IDY0O1xuICAgICAgdGhpcy5jbGF1c2VzID0gYm9keS5jbGF1c2VzIHx8IFtdO1xuICAgICAgdGhpcy5nYXNQcmljZUNvZWYgPSB0eXBlb2YgYm9keS5nYXNQcmljZUNvZWYgPT09ICdudW1iZXInID8gYm9keS5nYXNQcmljZUNvZWYgOiAxMjg7XG4gICAgICB0aGlzLmdhcyA9IHR5cGVvZiBib2R5LmdhcyA9PT0gJ251bWJlcicgPyBib2R5LmdhcyA6IE51bWJlcihib2R5LmdhcykgfHwgMDtcbiAgICAgIHRoaXMuZGVwZW5kc09uID0gYm9keS5kZXBlbmRzT24gfHwgbnVsbDtcbiAgICAgIHRoaXMubm9uY2UgPSB0eXBlb2YgYm9keS5ub25jZSA9PT0gJ251bWJlcicgPyBib2R5Lm5vbmNlIDogTnVtYmVyKGJvZHkubm9uY2UpIHx8IDA7XG4gICAgICAvLyBTZXQgZGF0YSBmcm9tIGNsYXVzZXNcbiAgICAgIHRoaXMuY29udHJhY3QgPSBib2R5LmNsYXVzZXNbMF0/LnRvIHx8ICcweDAnO1xuICAgICAgdGhpcy50cmFuc2FjdGlvbkRhdGEgPSBib2R5LmNsYXVzZXNbMF0/LmRhdGEgfHwgJzB4MCc7XG4gICAgICB0aGlzLmxvYWRJbnB1dHNBbmRPdXRwdXRzKCk7XG4gICAgICAvLyBTZXQgc2VuZGVyIGFkZHJlc3NcbiAgICAgIGlmIChzaWduZWRUeC5vcmlnaW4pIHtcbiAgICAgICAgdGhpcy5zZW5kZXIgPSBzaWduZWRUeC5vcmlnaW4udG9TdHJpbmcoKS50b0xvd2VyQ2FzZSgpO1xuICAgICAgfVxuXG4gICAgICAvLyBTZXQgc2lnbmF0dXJlcyBpZiBwcmVzZW50XG4gICAgICBpZiAoc2lnbmVkVHguc2lnbmF0dXJlKSB7XG4gICAgICAgIC8vIEZpcnN0IHNpZ25hdHVyZSBpcyBzZW5kZXIncyBzaWduYXR1cmVcbiAgICAgICAgdGhpcy5zZW5kZXJTaWduYXR1cmUgPSBCdWZmZXIuZnJvbShzaWduZWRUeC5zaWduYXR1cmUuc2xpY2UoMCwgU2VjcDI1NmsxLlNJR05BVFVSRV9MRU5HVEgpKTtcblxuICAgICAgICAvLyBJZiB0aGVyZSdzIGFkZGl0aW9uYWwgc2lnbmF0dXJlIGRhdGEsIGl0J3MgdGhlIGZlZSBwYXllcidzIHNpZ25hdHVyZVxuICAgICAgICBpZiAoc2lnbmVkVHguc2lnbmF0dXJlLmxlbmd0aCA+IFNlY3AyNTZrMS5TSUdOQVRVUkVfTEVOR1RIKSB7XG4gICAgICAgICAgdGhpcy5mZWVQYXllclNpZ25hdHVyZSA9IEJ1ZmZlci5mcm9tKHNpZ25lZFR4LnNpZ25hdHVyZS5zbGljZShTZWNwMjU2azEuU0lHTkFUVVJFX0xFTkdUSCkpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKGBGYWlsZWQgdG8gZGVzZXJpYWxpemUgdHJhbnNhY3Rpb246ICR7ZS5tZXNzYWdlfWApO1xuICAgIH1cbiAgfVxuXG4gIGxvYWRJbnB1dHNBbmRPdXRwdXRzKCk6IHZvaWQge1xuICAgIHRoaXMuX3R5cGUgPSBUcmFuc2FjdGlvblR5cGUuQWRkcmVzc0luaXRpYWxpemF0aW9uO1xuICAgIGNvbnN0IHsgYmFzZUFkZHJlc3MsIGFkZHJlc3NDcmVhdGlvblNhbHQsIGZlZUFkZHJlc3MgfSA9IGRlY29kZUZvcndhcmRlckNyZWF0aW9uRGF0YSh0aGlzLnRyYW5zYWN0aW9uRGF0YSk7XG5cbiAgICB0aGlzLl9iYXNlQWRkcmVzcyA9IGJhc2VBZGRyZXNzIGFzIHN0cmluZztcbiAgICB0aGlzLl9zYWx0ID0gYWRkcmVzc0NyZWF0aW9uU2FsdCBhcyBzdHJpbmc7XG4gICAgdGhpcy5fZmVlQWRkcmVzcyA9IGZlZUFkZHJlc3MgYXMgc3RyaW5nO1xuICAgIGNvbnN0IGZvcndhcmRlckltcGxlbWVudGF0aW9uQWRkcmVzcyA9ICh0aGlzLl9jb2luQ29uZmlnLm5ldHdvcmsgYXMgRXRoZXJldW1OZXR3b3JrKVxuICAgICAgLmZvcndhcmRlckltcGxlbWVudGF0aW9uQWRkcmVzcyBhcyBzdHJpbmc7XG4gICAgdGhpcy5faW5pdENvZGUgPSBnZXRQcm94eUluaXRjb2RlKGZvcndhcmRlckltcGxlbWVudGF0aW9uQWRkcmVzcyk7XG4gIH1cbn1cbiJdfQ==
@@ -16,5 +16,6 @@ export declare class FlushTokenTransaction extends Transaction {
16
16
  toJson(): VetTransactionData;
17
17
  /** @inheritdoc */
18
18
  fromDeserializedSignedTransaction(signedTx: VetTransaction): void;
19
+ loadInputsAndOutputs(): void;
19
20
  }
20
21
  //# sourceMappingURL=flushTokenTransaction.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"flushTokenTransaction.d.ts","sourceRoot":"","sources":["../../../../src/lib/transaction/flushTokenTransaction.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,WAAW,IAAI,cAAc,EAAa,MAAM,mBAAmB,CAAC;AAE7E,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAE9C,qBAAa,qBAAsB,SAAQ,WAAW;IACpD,OAAO,CAAC,iBAAiB,CAAS;IAClC,OAAO,CAAC,aAAa,CAAS;gBAElB,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAK7C,IAAI,gBAAgB,IAAI,MAAM,CAE7B;IAED,IAAI,gBAAgB,CAAC,gBAAgB,EAAE,MAAM,EAE5C;IAED,IAAI,YAAY,IAAI,MAAM,CAEzB;IAED,IAAI,YAAY,CAAC,OAAO,EAAE,MAAM,EAE/B;IAED,kBAAkB;IAClB,YAAY,IAAI,IAAI;IAUpB,kBAAkB;IAClB,MAAM,IAAI,kBAAkB;IAmB5B,kBAAkB;IAClB,iCAAiC,CAAC,QAAQ,EAAE,cAAc,GAAG,IAAI;CA0ClE"}
1
+ {"version":3,"file":"flushTokenTransaction.d.ts","sourceRoot":"","sources":["../../../../src/lib/transaction/flushTokenTransaction.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,WAAW,IAAI,cAAc,EAAa,MAAM,mBAAmB,CAAC;AAG7E,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAE9C,qBAAa,qBAAsB,SAAQ,WAAW;IACpD,OAAO,CAAC,iBAAiB,CAAS;IAClC,OAAO,CAAC,aAAa,CAAS;gBAElB,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAK7C,IAAI,gBAAgB,IAAI,MAAM,CAE7B;IAED,IAAI,gBAAgB,CAAC,gBAAgB,EAAE,MAAM,EAE5C;IAED,IAAI,YAAY,IAAI,MAAM,CAEzB;IAED,IAAI,YAAY,CAAC,OAAO,EAAE,MAAM,EAE/B;IAED,kBAAkB;IAClB,YAAY,IAAI,IAAI;IAUpB,kBAAkB;IAClB,MAAM,IAAI,kBAAkB;IAmB5B,kBAAkB;IAClB,iCAAiC,CAAC,QAAQ,EAAE,cAAc,GAAG,IAAI;IA2CjE,oBAAoB,IAAI,IAAI;CAM7B"}
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.FlushTokenTransaction = void 0;
4
4
  const sdk_core_1 = require("@bitgo-beta/sdk-core");
5
5
  const sdk_core_2 = require("@vechain/sdk-core");
6
+ const abstract_eth_1 = require("@bitgo-beta/abstract-eth");
6
7
  const transaction_1 = require("./transaction");
7
8
  class FlushTokenTransaction extends transaction_1.Transaction {
8
9
  constructor(_coinConfig) {
@@ -71,6 +72,7 @@ class FlushTokenTransaction extends transaction_1.Transaction {
71
72
  // Set data from clauses
72
73
  this.contract = body.clauses[0]?.to || '0x0';
73
74
  this.transactionData = body.clauses[0]?.data || '0x0';
75
+ this.loadInputsAndOutputs();
74
76
  // Set sender address
75
77
  if (signedTx.origin) {
76
78
  this.sender = signedTx.origin.toString().toLowerCase();
@@ -89,6 +91,11 @@ class FlushTokenTransaction extends transaction_1.Transaction {
89
91
  throw new sdk_core_1.InvalidTransactionError(`Failed to deserialize transaction: ${e.message}`);
90
92
  }
91
93
  }
94
+ loadInputsAndOutputs() {
95
+ this._type = sdk_core_1.TransactionType.FlushTokens;
96
+ const { tokenAddress } = (0, abstract_eth_1.decodeFlushTokensData)(this.transactionData, this.contract);
97
+ this._tokenAddress = tokenAddress;
98
+ }
92
99
  }
93
100
  exports.FlushTokenTransaction = FlushTokenTransaction;
94
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmx1c2hUb2tlblRyYW5zYWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi90cmFuc2FjdGlvbi9mbHVzaFRva2VuVHJhbnNhY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsbURBQWdGO0FBRWhGLGdEQUE2RTtBQUU3RSwrQ0FBNEM7QUFHNUMsTUFBYSxxQkFBc0IsU0FBUSx5QkFBVztJQUlwRCxZQUFZLFdBQWlDO1FBQzNDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLDBCQUFlLENBQUMsV0FBVyxDQUFDO0lBQzNDLENBQUM7SUFFRCxJQUFJLGdCQUFnQjtRQUNsQixPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQztJQUNoQyxDQUFDO0lBRUQsSUFBSSxnQkFBZ0IsQ0FBQyxnQkFBd0I7UUFDM0MsSUFBSSxDQUFDLGlCQUFpQixHQUFHLGdCQUFnQixDQUFDO0lBQzVDLENBQUM7SUFFRCxJQUFJLFlBQVk7UUFDZCxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUM7SUFDNUIsQ0FBQztJQUVELElBQUksWUFBWSxDQUFDLE9BQWU7UUFDOUIsSUFBSSxDQUFDLGFBQWEsR0FBRyxPQUFPLENBQUM7SUFDL0IsQ0FBQztJQUVELGtCQUFrQjtJQUNsQixZQUFZO1FBQ1YsSUFBSSxDQUFDLFFBQVEsR0FBRztZQUNkO2dCQUNFLEVBQUUsRUFBRSxJQUFJLENBQUMsU0FBUztnQkFDbEIsS0FBSyxFQUFFLEtBQUs7Z0JBQ1osSUFBSSxFQUFFLElBQUksQ0FBQyxnQkFBZ0I7YUFDNUI7U0FDRixDQUFDO0lBQ0osQ0FBQztJQUVELGtCQUFrQjtJQUNsQixNQUFNO1FBQ0osTUFBTSxJQUFJLEdBQXVCO1lBQy9CLEVBQUUsRUFBRSxJQUFJLENBQUMsRUFBRTtZQUNYLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUTtZQUN2QixRQUFRLEVBQUUsSUFBSSxDQUFDLFFB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RyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxvQkFBUyxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQztnQkFFNUYsdUVBQXVFO2dCQUN2RSxJQUFJLFFBQVEsQ0FBQyxTQUFTLENBQUMsTUFBTSxHQUFHLG9CQUFTLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztvQkFDM0QsSUFBSSxDQUFDLGlCQUFpQixHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsb0JBQVMsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUM7Z0JBQzdGLENBQUM7WUFDSCxDQUFDO1FBQ0gsQ0FBQztRQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7WUFDWCxNQUFNLElBQUksa0NBQXVCLENBQUMsc0NBQXNDLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO1FBQ3ZGLENBQUM7SUFDSCxDQUFDO0NBQ0Y7QUFuR0Qsc0RBbUdDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHJhbnNhY3Rpb25UeXBlLCBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvciB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb3JlJztcbmltcG9ydCB7IEJhc2VDb2luIGFzIENvaW5Db25maWcgfSBmcm9tICdAYml0Z28tYmV0YS9zdGF0aWNzJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uIGFzIFZldFRyYW5zYWN0aW9uLCBTZWNwMjU2azEgfSBmcm9tICdAdmVjaGFpbi9zZGstY29yZSc7XG5cbmltcG9ydCB7IFRyYW5zYWN0aW9uIH0gZnJvbSAnLi90cmFuc2FjdGlvbic7XG5pbXBvcnQgeyBWZXRUcmFuc2FjdGlvbkRhdGEgfSBmcm9tICcuLi9pZmFjZSc7XG5cbmV4cG9ydCBjbGFzcyBGbHVzaFRva2VuVHJhbnNhY3Rpb24gZXh0ZW5kcyBUcmFuc2FjdGlvbiB7XG4gIHByaXZhdGUgX2ZvcndhcmRlclZlcnNpb246IG51bWJlcjtcbiAgcHJpdmF0ZSBfdG9rZW5BZGRyZXNzOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IoX2NvaW5Db25maWc6IFJlYWRvbmx5PENvaW5Db25maWc+KSB7XG4gICAgc3VwZXIoX2NvaW5Db25maWcpO1xuICAgIHRoaXMuX3R5cGUgPSBUcmFuc2FjdGlvblR5cGUuRmx1c2hUb2tlbnM7XG4gIH1cblxuICBnZXQgZm9yd2FyZGVyVmVyc2lvbigpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLl9mb3J3YXJkZXJWZXJzaW9uO1xuICB9XG5cbiAgc2V0IGZvcndhcmRlclZlcnNpb24oZm9yd2FyZGVyVmVyc2lvbjogbnVtYmVyKSB7XG4gICAgdGhpcy5fZm9yd2FyZGVyVmVyc2lvbiA9IGZvcndhcmRlclZlcnNpb247XG4gIH1cblxuICBnZXQgdG9rZW5BZGRyZXNzKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX3Rva2VuQWRkcmVzcztcbiAgfVxuXG4gIHNldCB0b2tlbkFkZHJlc3MoYWRkcmVzczogc3RyaW5nKSB7XG4gICAgdGhpcy5fdG9rZW5BZGRyZXNzID0gYWRkcmVzcztcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBidWlsZENsYXVzZXMoKTogdm9pZCB7XG4gICAgdGhpcy5fY2xhdXNlcyA9IFtcbiAgICAgIHtcbiAgICAgICAgdG86IHRoaXMuX2NvbnRyYWN0LFxuICAgICAgICB2YWx1ZTogJzB4MCcsXG4gICAgICAgIGRhdGE6IHRoaXMuX3RyYW5zYWN0aW9uRGF0YSxcbiAgICAgIH0sXG4gICAgXTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB0b0pzb24oKTogVmV0VHJhbnNhY3Rpb25EYXRhIHtcbiAgICBjb25zdCBqc29uOiBWZXRUcmFuc2FjdGlvbkRhdGEgPSB7XG4gICAgICBpZDogdGhpcy5pZCxcbiAgICAgIGNoYWluVGFnOiB0aGlzLmNoYWluVGFnLFxuICAgICAgYmxvY2tSZWY6IHRoaXMuYmxvY2tSZWYsXG4gICAgICBleHBpcmF0aW9uOiB0aGlzLmV4cGlyYXRpb24sXG4gICAgICBnYXNQcmljZUNvZWY6IHRoaXMuZ2FzUHJpY2VDb2VmLFxuICAgICAgZ2FzOiB0aGlzLmdhcyxcbiAgICAgIGRlcGVuZHNPbjogdGhpcy5kZXBlbmRzT24sXG4gICAgICBub25jZTogdGhpcy5ub25jZSxcbiAgICAgIGRhdGE6IHRoaXMudHJhbnNhY3Rpb25EYXRhLFxuICAgICAgdmFsdWU6ICcwJyxcbiAgICAgIHNlbmRlcjogdGhpcy5zZW5kZXIsXG4gICAgICB0bzogdGhpcy5jb250cmFjdCxcbiAgICAgIHRva2VuQWRkcmVzczogdGhpcy50b2tlbkFkZHJlc3MsXG4gICAgfTtcbiAgICByZXR1cm4ganNvbjtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBmcm9tRGVzZXJpYWxpemVkU2lnbmVkVHJhbnNhY3Rpb24oc2lnbmVkVHg6IFZldFRyYW5zYWN0aW9uKTogdm9pZCB7XG4gICAgdHJ5IHtcbiAgICAgIGlmICghc2lnbmVkVHggfHwgIXNpZ25lZFR4LmJvZHkpIHtcbiAgICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKCdJbnZhbGlkIHRyYW5zYWN0aW9uOiBtaXNzaW5nIHRyYW5zYWN0aW9uIGJvZHknKTtcbiAgICAgIH1cblxuICAgICAgLy8gU3RvcmUgdGhlIHJhdyB0cmFuc2FjdGlvblxuICAgICAgdGhpcy5yYXdUcmFuc2FjdGlvbiA9IHNpZ25lZFR4O1xuXG4gICAgICAvLyBTZXQgdHJhbnNhY3Rpb24gYm9keSBwcm9wZXJ0aWVzXG4gICAgICBjb25zdCBib2R5ID0gc2lnbmVkVHguYm9keTtcbiAgICAgIHRoaXMuY2hhaW5UYWcgPSB0eXBlb2YgYm9keS5jaGFpblRhZyA9PT0gJ251bWJlcicgPyBib2R5LmNoYWluVGFnIDogMDtcbiAgICAgIHRoaXMuYmxvY2tSZWYgPSBib2R5LmJsb2NrUmVmIHx8ICcweDAnO1xuICAgICAgdGhpcy5leHBpcmF0aW9uID0gdHlwZW9mIGJvZHkuZXhwaXJhdGlvbiA9PT0gJ251bWJlcicgPyBib2R5LmV4cGlyYXRpb24gOiA2NDtcbiAgICAgIHRoaXMuY2xhdXNlcyA9IGJvZHkuY2xhdXNlcyB8fCBbXTtcbiAgICAgIHRoaXMuZ2FzUHJpY2VDb2VmID0gdHlwZW9mIGJvZHkuZ2FzUHJpY2VDb2VmID09PSAnbnVtYmVyJyA/IGJvZHkuZ2FzUHJpY2VDb2VmIDogMTI4O1xuICAgICAgdGhpcy5nYXMgPSB0eXBlb2YgYm9keS5nYXMgPT09ICdudW1iZXInID8gYm9keS5nYXMgOiBOdW1iZXIoYm9keS5nYXMpIHx8IDA7XG4gICAgICB0aGlzLmRlcGVuZHNPbiA9IGJvZHkuZGVwZW5kc09uIHx8IG51bGw7XG4gICAgICB0aGlzLm5vbmNlID0gdHlwZW9mIGJvZHkubm9uY2UgPT09ICdudW1iZXInID8gYm9keS5ub25jZSA6IE51bWJlcihib2R5Lm5vbmNlKSB8fCAwO1xuICAgICAgLy8gU2V0IGRhdGEgZnJvbSBjbGF1c2VzXG4gICAgICB0aGlzLmNvbnRyYWN0ID0gYm9keS5jbGF1c2VzWzBdPy50byB8fCAnMHgwJztcbiAgICAgIHRoaXMudHJhbnNhY3Rpb25EYXRhID0gYm9keS5jbGF1c2VzWzBdPy5kYXRhIHx8ICcweDAnO1xuXG4gICAgICAvLyBTZXQgc2VuZGVyIGFkZHJlc3NcbiAgICAgIGlmIChzaWduZWRUeC5vcmlnaW4pIHtcbiAgICAgICAgdGhpcy5zZW5kZXIgPSBzaWduZWRUeC5vcmlnaW4udG9TdHJpbmcoKS50b0xvd2VyQ2FzZSgpO1xuICAgICAgfVxuXG4gICAgICAvLyBTZXQgc2lnbmF0dXJlcyBpZiBwcmVzZW50XG4gICAgICBpZiAoc2lnbmVkVHguc2lnbmF0dXJlKSB7XG4gICAgICAgIC8vIEZpcnN0IHNpZ25hdHVyZSBpcyBzZW5kZXIncyBzaWduYXR1cmVcbiAgICAgICAgdGhpcy5zZW5kZXJTaWduYXR1cmUgPSBCdWZmZXIuZnJvbShzaWduZWRUeC5zaWduYXR1cmUuc2xpY2UoMCwgU2VjcDI1NmsxLlNJR05BVFVSRV9MRU5HVEgpKTtcblxuICAgICAgICAvLyBJZiB0aGVyZSdzIGFkZGl0aW9uYWwgc2lnbmF0dXJlIGRhdGEsIGl0J3MgdGhlIGZlZSBwYXllcidzIHNpZ25hdHVyZVxuICAgICAgICBpZiAoc2lnbmVkVHguc2lnbmF0dXJlLmxlbmd0aCA+IFNlY3AyNTZrMS5TSUdOQVRVUkVfTEVOR1RIKSB7XG4gICAgICAgICAgdGhpcy5mZWVQYXllclNpZ25hdHVyZSA9IEJ1ZmZlci5mcm9tKHNpZ25lZFR4LnNpZ25hdHVyZS5zbGljZShTZWNwMjU2azEuU0lHTkFUVVJFX0xFTkdUSCkpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKGBGYWlsZWQgdG8gZGVzZXJpYWxpemUgdHJhbnNhY3Rpb246ICR7ZS5tZXNzYWdlfWApO1xuICAgIH1cbiAgfVxufVxuIl19
101
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmx1c2hUb2tlblRyYW5zYWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi90cmFuc2FjdGlvbi9mbHVzaFRva2VuVHJhbnNhY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsbURBQWdGO0FBRWhGLGdEQUE2RTtBQUM3RSwyREFBaUU7QUFFakUsK0NBQTRDO0FBRzVDLE1BQWEscUJBQXNCLFNBQVEseUJBQVc7SUFJcEQsWUFBWSxXQUFpQztRQUMzQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDbkIsSUFBSSxDQUFDLEtBQUssR0FBRywwQkFBZSxDQUFDLFdBQVcsQ0FBQztJQUMzQyxDQUFDO0lBRUQsSUFBSSxnQkFBZ0I7UUFDbEIsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUM7SUFDaEMsQ0FBQztJQUVELElBQUksZ0JBQWdCLENBQUMsZ0JBQXdCO1FBQzNDLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxnQkFBZ0IsQ0FBQztJQUM1QyxDQUFDO0lBRUQsSUFBSSxZQUFZO1FBQ2QsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDO0lBQzVCLENBQUM7SUFFRCxJQUFJLFlBQVksQ0FBQyxPQUFlO1FBQzlCLElBQUksQ0FBQyxhQUFhLEdBQUcsT0FBTyxDQUFDO0lBQy9CLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsWUFBWTtRQUNWLElBQUksQ0FBQyxRQUFRLEdBQUc7WUFDZDtnQkFDRSxFQUFFLEVBQUUsSUFBSSxDQUFDLFNBQVM7Z0JBQ2xCLEtBQUssRUFBRSxLQUFLO2dCQUNaLElBQUksRUFBRSxJQUFJLENBQUMsZ0JBQWdCO2FBQzVCO1NBQ0YsQ0FBQztJQUNKLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsTUFBTTtRQUNKLE1BQU0sSUFBSSxHQUF1QjtZQUMvQixFQUFFLEVBQUUsSUFBSSxDQUFDLEVBQUU7WUFDWCxRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVE7WUFDdkIsUUFBUSxFQUFF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RSxDQUFDO2dCQUN2Qix3Q0FBd0M7Z0JBQ3hDLElBQUksQ0FBQyxlQUFlLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsb0JBQVMsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUM7Z0JBRTVGLHVFQUF1RTtnQkFDdkUsSUFBSSxRQUFRLENBQUMsU0FBUyxDQUFDLE1BQU0sR0FBRyxvQkFBUyxDQUFDLGdCQUFnQixFQUFFLENBQUM7b0JBQzNELElBQUksQ0FBQyxpQkFBaUIsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLG9CQUFTLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDO2dCQUM3RixDQUFDO1lBQ0gsQ0FBQztRQUNILENBQUM7UUFBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1lBQ1gsTUFBTSxJQUFJLGtDQUF1QixDQUFDLHNDQUFzQyxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztRQUN2RixDQUFDO0lBQ0gsQ0FBQztJQUVELG9CQUFvQjtRQUNsQixJQUFJLENBQUMsS0FBSyxHQUFHLDBCQUFlLENBQUMsV0FBVyxDQUFDO1FBQ3pDLE1BQU0sRUFBRSxZQUFZLEVBQUUsR0FBRyxJQUFBLG9DQUFxQixFQUFDLElBQUksQ0FBQyxlQUFlLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRXBGLElBQUksQ0FBQyxhQUFhLEdBQUcsWUFBWSxDQUFDO0lBQ3BDLENBQUM7Q0FDRjtBQTFHRCxzREEwR0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUcmFuc2FjdGlvblR5cGUsIEludmFsaWRUcmFuc2FjdGlvbkVycm9yIH0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvcmUnO1xuaW1wb3J0IHsgQmFzZUNvaW4gYXMgQ29pbkNvbmZpZyB9IGZyb20gJ0BiaXRnby1iZXRhL3N0YXRpY3MnO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb24gYXMgVmV0VHJhbnNhY3Rpb24sIFNlY3AyNTZrMSB9IGZyb20gJ0B2ZWNoYWluL3Nkay1jb3JlJztcbmltcG9ydCB7IGRlY29kZUZsdXNoVG9rZW5zRGF0YSB9IGZyb20gJ0BiaXRnby1iZXRhL2Fic3RyYWN0LWV0aCc7XG5cbmltcG9ydCB7IFRyYW5zYWN0aW9uIH0gZnJvbSAnLi90cmFuc2FjdGlvbic7XG5pbXBvcnQgeyBWZXRUcmFuc2FjdGlvbkRhdGEgfSBmcm9tICcuLi9pZmFjZSc7XG5cbmV4cG9ydCBjbGFzcyBGbHVzaFRva2VuVHJhbnNhY3Rpb24gZXh0ZW5kcyBUcmFuc2FjdGlvbiB7XG4gIHByaXZhdGUgX2ZvcndhcmRlclZlcnNpb246IG51bWJlcjtcbiAgcHJpdmF0ZSBfdG9rZW5BZGRyZXNzOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IoX2NvaW5Db25maWc6IFJlYWRvbmx5PENvaW5Db25maWc+KSB7XG4gICAgc3VwZXIoX2NvaW5Db25maWcpO1xuICAgIHRoaXMuX3R5cGUgPSBUcmFuc2FjdGlvblR5cGUuRmx1c2hUb2tlbnM7XG4gIH1cblxuICBnZXQgZm9yd2FyZGVyVmVyc2lvbigpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLl9mb3J3YXJkZXJWZXJzaW9uO1xuICB9XG5cbiAgc2V0IGZvcndhcmRlclZlcnNpb24oZm9yd2FyZGVyVmVyc2lvbjogbnVtYmVyKSB7XG4gICAgdGhpcy5fZm9yd2FyZGVyVmVyc2lvbiA9IGZvcndhcmRlclZlcnNpb247XG4gIH1cblxuICBnZXQgdG9rZW5BZGRyZXNzKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX3Rva2VuQWRkcmVzcztcbiAgfVxuXG4gIHNldCB0b2tlbkFkZHJlc3MoYWRkcmVzczogc3RyaW5nKSB7XG4gICAgdGhpcy5fdG9rZW5BZGRyZXNzID0gYWRkcmVzcztcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBidWlsZENsYXVzZXMoKTogdm9pZCB7XG4gICAgdGhpcy5fY2xhdXNlcyA9IFtcbiAgICAgIHtcbiAgICAgICAgdG86IHRoaXMuX2NvbnRyYWN0LFxuICAgICAgICB2YWx1ZTogJzB4MCcsXG4gICAgICAgIGRhdGE6IHRoaXMuX3RyYW5zYWN0aW9uRGF0YSxcbiAgICAgIH0sXG4gICAgXTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB0b0pzb24oKTogVmV0VHJhbnNhY3Rpb25EYXRhIHtcbiAgICBjb25zdCBqc29uOiBWZXRUcmFuc2FjdGlvbkRhdGEgPSB7XG4gICAgICBpZDogdGhpcy5pZCxcbiAgICAgIGNoYWluVGFnOiB0aGlzLmNoYWluVGFnLFxuICAgICAgYmxvY2tSZWY6IHRoaXMuYmxvY2tSZWYsXG4gICAgICBleHBpcmF0aW9uOiB0aGlzLmV4cGlyYXRpb24sXG4gICAgICBnYXNQcmljZUNvZWY6IHRoaXMuZ2FzUHJpY2VDb2VmLFxuICAgICAgZ2FzOiB0aGlzLmdhcyxcbiAgICAgIGRlcGVuZHNPbjogdGhpcy5kZXBlbmRzT24sXG4gICAgICBub25jZTogdGhpcy5ub25jZSxcbiAgICAgIGRhdGE6IHRoaXMudHJhbnNhY3Rpb25EYXRhLFxuICAgICAgdmFsdWU6ICcwJyxcbiAgICAgIHNlbmRlcjogdGhpcy5zZW5kZXIsXG4gICAgICB0bzogdGhpcy5jb250cmFjdCxcbiAgICAgIHRva2VuQWRkcmVzczogdGhpcy50b2tlbkFkZHJlc3MsXG4gICAgfTtcbiAgICByZXR1cm4ganNvbjtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBmcm9tRGVzZXJpYWxpemVkU2lnbmVkVHJhbnNhY3Rpb24oc2lnbmVkVHg6IFZldFRyYW5zYWN0aW9uKTogdm9pZCB7XG4gICAgdHJ5IHtcbiAgICAgIGlmICghc2lnbmVkVHggfHwgIXNpZ25lZFR4LmJvZHkpIHtcbiAgICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKCdJbnZhbGlkIHRyYW5zYWN0aW9uOiBtaXNzaW5nIHRyYW5zYWN0aW9uIGJvZHknKTtcbiAgICAgIH1cblxuICAgICAgLy8gU3RvcmUgdGhlIHJhdyB0cmFuc2FjdGlvblxuICAgICAgdGhpcy5yYXdUcmFuc2FjdGlvbiA9IHNpZ25lZFR4O1xuXG4gICAgICAvLyBTZXQgdHJhbnNhY3Rpb24gYm9keSBwcm9wZXJ0aWVzXG4gICAgICBjb25zdCBib2R5ID0gc2lnbmVkVHguYm9keTtcbiAgICAgIHRoaXMuY2hhaW5UYWcgPSB0eXBlb2YgYm9keS5jaGFpblRhZyA9PT0gJ251bWJlcicgPyBib2R5LmNoYWluVGFnIDogMDtcbiAgICAgIHRoaXMuYmxvY2tSZWYgPSBib2R5LmJsb2NrUmVmIHx8ICcweDAnO1xuICAgICAgdGhpcy5leHBpcmF0aW9uID0gdHlwZW9mIGJvZHkuZXhwaXJhdGlvbiA9PT0gJ251bWJlcicgPyBib2R5LmV4cGlyYXRpb24gOiA2NDtcbiAgICAgIHRoaXMuY2xhdXNlcyA9IGJvZHkuY2xhdXNlcyB8fCBbXTtcbiAgICAgIHRoaXMuZ2FzUHJpY2VDb2VmID0gdHlwZW9mIGJvZHkuZ2FzUHJpY2VDb2VmID09PSAnbnVtYmVyJyA/IGJvZHkuZ2FzUHJpY2VDb2VmIDogMTI4O1xuICAgICAgdGhpcy5nYXMgPSB0eXBlb2YgYm9keS5nYXMgPT09ICdudW1iZXInID8gYm9keS5nYXMgOiBOdW1iZXIoYm9keS5nYXMpIHx8IDA7XG4gICAgICB0aGlzLmRlcGVuZHNPbiA9IGJvZHkuZGVwZW5kc09uIHx8IG51bGw7XG4gICAgICB0aGlzLm5vbmNlID0gdHlwZW9mIGJvZHkubm9uY2UgPT09ICdudW1iZXInID8gYm9keS5ub25jZSA6IE51bWJlcihib2R5Lm5vbmNlKSB8fCAwO1xuICAgICAgLy8gU2V0IGRhdGEgZnJvbSBjbGF1c2VzXG4gICAgICB0aGlzLmNvbnRyYWN0ID0gYm9keS5jbGF1c2VzWzBdPy50byB8fCAnMHgwJztcbiAgICAgIHRoaXMudHJhbnNhY3Rpb25EYXRhID0gYm9keS5jbGF1c2VzWzBdPy5kYXRhIHx8ICcweDAnO1xuICAgICAgdGhpcy5sb2FkSW5wdXRzQW5kT3V0cHV0cygpO1xuICAgICAgLy8gU2V0IHNlbmRlciBhZGRyZXNzXG4gICAgICBpZiAoc2lnbmVkVHgub3JpZ2luKSB7XG4gICAgICAgIHRoaXMuc2VuZGVyID0gc2lnbmVkVHgub3JpZ2luLnRvU3RyaW5nKCkudG9Mb3dlckNhc2UoKTtcbiAgICAgIH1cblxuICAgICAgLy8gU2V0IHNpZ25hdHVyZXMgaWYgcHJlc2VudFxuICAgICAgaWYgKHNpZ25lZFR4LnNpZ25hdHVyZSkge1xuICAgICAgICAvLyBGaXJzdCBzaWduYXR1cmUgaXMgc2VuZGVyJ3Mgc2lnbmF0dXJlXG4gICAgICAgIHRoaXMuc2VuZGVyU2lnbmF0dXJlID0gQnVmZmVyLmZyb20oc2lnbmVkVHguc2lnbmF0dXJlLnNsaWNlKDAsIFNlY3AyNTZrMS5TSUdOQVRVUkVfTEVOR1RIKSk7XG5cbiAgICAgICAgLy8gSWYgdGhlcmUncyBhZGRpdGlvbmFsIHNpZ25hdHVyZSBkYXRhLCBpdCdzIHRoZSBmZWUgcGF5ZXIncyBzaWduYXR1cmVcbiAgICAgICAgaWYgKHNpZ25lZFR4LnNpZ25hdHVyZS5sZW5ndGggPiBTZWNwMjU2azEuU0lHTkFUVVJFX0xFTkdUSCkge1xuICAgICAgICAgIHRoaXMuZmVlUGF5ZXJTaWduYXR1cmUgPSBCdWZmZXIuZnJvbShzaWduZWRUeC5zaWduYXR1cmUuc2xpY2UoU2VjcDI1NmsxLlNJR05BVFVSRV9MRU5HVEgpKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcihgRmFpbGVkIHRvIGRlc2VyaWFsaXplIHRyYW5zYWN0aW9uOiAke2UubWVzc2FnZX1gKTtcbiAgICB9XG4gIH1cblxuICBsb2FkSW5wdXRzQW5kT3V0cHV0cygpOiB2b2lkIHtcbiAgICB0aGlzLl90eXBlID0gVHJhbnNhY3Rpb25UeXBlLkZsdXNoVG9rZW5zO1xuICAgIGNvbnN0IHsgdG9rZW5BZGRyZXNzIH0gPSBkZWNvZGVGbHVzaFRva2Vuc0RhdGEodGhpcy50cmFuc2FjdGlvbkRhdGEsIHRoaXMuY29udHJhY3QpO1xuXG4gICAgdGhpcy5fdG9rZW5BZGRyZXNzID0gdG9rZW5BZGRyZXNzO1xuICB9XG59XG4iXX0=
@@ -1 +1 @@
1
- {"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../../../src/lib/transaction/transaction.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../../../src/lib/transaction/transaction.ts"],"names":[],"mappings":"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"}
@@ -336,34 +336,22 @@ class Transaction extends sdk_core_1.BaseTransaction {
336
336
  this.rawTransaction = sdk_core_2.Transaction.of(transactionBody);
337
337
  }
338
338
  loadInputsAndOutputs() {
339
- switch (this.type) {
340
- case sdk_core_1.TransactionType.AddressInitialization:
341
- this._type = sdk_core_1.TransactionType.AddressInitialization;
342
- break;
343
- case sdk_core_1.TransactionType.FlushTokens:
344
- this._type = sdk_core_1.TransactionType.FlushTokens;
345
- break;
346
- case sdk_core_1.TransactionType.Send:
347
- this._type = sdk_core_1.TransactionType.Send;
348
- const totalAmount = this._recipients.reduce((accumulator, current) => accumulator.plus(current.amount), new bignumber_js_1.default('0'));
349
- this._inputs = [
350
- {
351
- address: this.sender,
352
- value: totalAmount.toString(),
353
- coin: this._coinConfig.name,
354
- },
355
- ];
356
- this._outputs = this._recipients.map((recipient) => {
357
- return {
358
- address: recipient.address,
359
- value: recipient.amount,
360
- coin: this._coinConfig.name,
361
- };
362
- });
363
- break;
364
- default:
365
- throw new sdk_core_1.InvalidTransactionError(`Unsupported transaction type: ${this.type}`);
366
- }
339
+ this._type = sdk_core_1.TransactionType.Send;
340
+ const totalAmount = this._recipients.reduce((accumulator, current) => accumulator.plus(current.amount), new bignumber_js_1.default('0'));
341
+ this._inputs = [
342
+ {
343
+ address: this.sender,
344
+ value: totalAmount.toString(),
345
+ coin: this._coinConfig.name,
346
+ },
347
+ ];
348
+ this._outputs = this._recipients.map((recipient) => {
349
+ return {
350
+ address: recipient.address,
351
+ value: recipient.amount,
352
+ coin: this._coinConfig.name,
353
+ };
354
+ });
367
355
  }
368
356
  fromRawTransaction(rawTransaction) {
369
357
  let signedTxn;
@@ -468,4 +456,4 @@ class Transaction extends sdk_core_1.BaseTransaction {
468
456
  exports.Transaction = Transaction;
469
457
  Transaction.EMPTY_PUBLIC_KEY = Buffer.alloc(32);
470
458
  Transaction.EMPTY_SIGNATURE = Buffer.alloc(64);
471
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL3RyYW5zYWN0aW9uL3RyYW5zYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLGdFQUFxQztBQUNyQyxtREFNOEI7QUFFOUIsZ0RBTTJCO0FBQzNCLHVFQUF5RDtBQUN6RCxxREFBNkI7QUFHN0IsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDO0FBRXRCLE1BQWEsV0FBWSxTQUFRLDBCQUFlO0lBdUI5QyxZQUFZLFdBQWlDO1FBQzNDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLDBCQUFlLENBQUMsSUFBSSxDQUFDO1FBQ2xDLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLENBQUMsMEJBQTBCO1FBQ2pELElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxXQUFXLEdBQUcsRUFBRSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFDO1FBQ25CLElBQUksQ0FBQyxhQUFhLEdBQUcsR0FBRyxDQUFDO1FBQ3pCLElBQUksQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDO1FBQ2QsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUM7UUFDdkIsSUFBSSxDQUFDLE1BQU0sR0FBRyxHQUFHLENBQUM7UUFDbEIsSUFBSSxDQUFDLFdBQVcsR0FBRyxFQUFFLENBQUM7UUFDdEIsSUFBSSxDQUFDLGVBQWUsR0FBRztZQUNyQixHQUFHLEVBQUUsa0JBQU8sQ0FBQyxFQUFFLENBQUMsV0FBVyxDQUFDLGdCQUFnQixDQUFDLENBQUMsUUFBUSxFQUFFO1NBQ3pELENBQUM7UUFDRixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsV0FBVyxDQUFDLGVBQWUsQ0FBQztRQUNwRCxJQUFJLENB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SSxDQUFDLFdBQVcsQ0FBQztRQUN6RCxNQUFNLFlBQVksR0FBRyxPQUFPO2FBQ3pCLE1BQU0sQ0FBQyxDQUFDLFdBQVcsRUFBRSxPQUFPLEVBQUUsRUFBRSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFLElBQUksc0JBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQzthQUN0RixRQUFRLEVBQUUsQ0FBQztRQUNkLE9BQU87WUFDTCxZQUFZO1lBQ1osRUFBRSxFQUFFLElBQUksQ0FBQyxFQUFFO1lBQ1gsT0FBTztZQUNQLFlBQVk7WUFDWixhQUFhLEVBQUUsRUFBRTtZQUNqQixZQUFZLEVBQUUsR0FBRztZQUNqQixHQUFHLEVBQUUsRUFBRSxHQUFHLEVBQUUsSUFBSSxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQzNCLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTTtZQUNuQixJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUk7U0FDaEIsQ0FBQztJQUNKLENBQUM7O0FBemdCSCxrQ0EwZ0JDO0FBdGZRLDRCQUFnQixHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7QUFDcEMsMkJBQWUsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IEJpZ051bWJlciBmcm9tICdiaWdudW1iZXIuanMnO1xuaW1wb3J0IHtcbiAgQmFzZVRyYW5zYWN0aW9uLFxuICBUcmFuc2FjdGlvblR5cGUsXG4gIEludmFsaWRUcmFuc2FjdGlvbkVycm9yLFxuICBUcmFuc2FjdGlvblJlY2lwaWVudCxcbiAgUHVibGljS2V5LFxufSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5pbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvLWJldGEvc3RhdGljcyc7XG5pbXBvcnQge1xuICBUcmFuc2FjdGlvbkJvZHksXG4gIFRyYW5zYWN0aW9uQ2xhdXNlLFxuICBUcmFuc2FjdGlvbiBhcyBWZXRUcmFuc2FjdGlvbixcbiAgU2VjcDI1NmsxLFxuICBIZXhVSW50LFxufSBmcm9tICdAdmVjaGFpbi9zZGstY29yZSc7XG5pbXBvcnQgKiBhcyBuY191dGlscyBmcm9tICdAbm9ibGUvY3VydmVzL2Fic3RyYWN0L3V0aWxzJztcbmltcG9ydCB1dGlscyBmcm9tICcuLi91dGlscyc7XG5pbXBvcnQgeyBWZXRUcmFuc2FjdGlvbkV4cGxhbmF0aW9uLCBWZXRUcmFuc2FjdGlvbkRhdGEgfSBmcm9tICcuLi9pZmFjZSc7XG5cbmNvbnN0IGdhc1ByaWNlID0gMWUxMztcblxuZXhwb3J0IGNsYXNzIFRyYW5zYWN0aW9uIGV4dGVuZHMgQmFzZVRyYW5zYWN0aW9uIHtcbiAgcHJvdGVjdGVkIF9yYXdUcmFuc2FjdGlvbjogVmV0VHJhbnNhY3Rpb247XG4gIHByb3RlY3RlZCBfdHlwZTogVHJhbnNhY3Rpb25UeXBlO1xuICBwcm90ZWN0ZWQgX3JlY2lwaWVudHM6IFRyYW5zYWN0aW9uUmVjaXBpZW50W107XG4gIHByb3RlY3RlZCBfY2xhdXNlczogVHJhbnNhY3Rpb25DbGF1c2VbXTtcbiAgcHJvdGVjdGVkIF9jb250cmFjdDogc3RyaW5nO1xuICBwcm90ZWN0ZWQgX3RyYW5zYWN0aW9uRGF0YTogc3RyaW5nO1xuICBwcml2YXRlIF9jaGFpblRhZzogbnVtYmVyO1xuICBwcml2YXRlIF9ibG9ja1JlZjogc3RyaW5nO1xuICBwcml2YXRlIF9leHBpcmF0aW9uOiBudW1iZXI7XG4gIHByaXZhdGUgX2dhc1ByaWNlQ29lZjogbnVtYmVyO1xuICBwcml2YXRlIF9nYXM6IG51bWJlcjtcbiAgcHJpdmF0ZSBfZGVwZW5kc09uOiBzdHJpbmcgfCBudWxsO1xuICBwcml2YXRlIF9ub25jZTogbnVtYmVyO1xuICBwcml2YXRlIF9zZW5kZXI6IHN0cmluZztcbiAgcHJpdmF0ZSBfc2VuZGVyU2lnbmF0dXJlOiBCdWZmZXI7XG4gIHByaXZhdGUgX2ZlZVBheWVyQWRkcmVzczogc3RyaW5nO1xuICBwcml2YXRlIF9mZWVQYXllclNpZ25hdHVyZTogQnVmZmVyO1xuICBwcml2YXRlIF9mZWVQYXllclB1YktleTogUHVibGljS2V5O1xuXG4gIHN0YXRpYyBFTVBUWV9QVUJMSUNfS0VZID0gQnVmZmVyLmFsbG9jKDMyKTtcbiAgc3RhdGljIEVNUFRZX1NJR05BVFVSRSA9IEJ1ZmZlci5hbGxvYyg2NCk7XG5cbiAgY29uc3RydWN0b3IoX2NvaW5Db25maWc6IFJlYWRvbmx5PENvaW5Db25maWc+KSB7XG4gICAgc3VwZXIoX2NvaW5Db25maWcpO1xuICAgIHRoaXMuX3R5cGUgPSBUcmFuc2FjdGlvblR5cGUuU2VuZDtcbiAgICB0aGlzLl9jaGFpblRhZyA9IDB4Mjc7IC8vIEluaXRpYWxpemUgdG8gMzkgKDB4MjcpXG4gICAgdGhpcy5fYmxvY2tSZWYgPSAnMHgwJztcbiAgICB0aGlzLl9leHBpcmF0aW9uID0gNjQ7XG4gICAgdGhpcy5fY2xhdXNlcyA9IFtdO1xuICAgIHRoaXMuX2dhc1ByaWNlQ29lZiA9IDEyODtcbiAgICB0aGlzLl9nYXMgPSAwO1xuICAgIHRoaXMuX2RlcGVuZHNPbiA9IG51bGw7XG4gICAgdGhpcy5fbm9uY2UgPSAweDA7XG4gICAgdGhpcy5fcmVjaXBpZW50cyA9IFtdO1xuICAgIHRoaXMuX2ZlZVBheWVyUHViS2V5ID0ge1xuICAgICAgcHViOiBIZXhVSW50Lm9mKFRyYW5zYWN0aW9uLkVNUFRZX1BVQkxJQ19LRVkpLnRvU3RyaW5nKCksXG4gICAgfTtcbiAgICB0aGlzLl9zZW5kZXJTaWduYXR1cmUgPSBUcmFuc2FjdGlvbi5FTVBUWV9TSUdOQVRVUkU7XG4gICAgdGhpcy5fZmVlUGF5ZXJTaWduYXR1cmUgPSBUcmFuc2FjdGlvbi5FTVBUWV9TSUdOQVRVUkU7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGlkKCk6IHN0cmluZyB7XG4gICAgdGhpcy5nZW5lcmF0ZVR4bklkKCk7XG4gICAgcmV0dXJuIHRoaXMuX2lkID8/ICdVTkFWQUlMQUJMRSc7XG4gIH1cblxuICBnZXQgcmF3VHJhbnNhY3Rpb24oKTogVmV0VHJhbnNhY3Rpb24ge1xuICAgIHJldHVybiB0aGlzLl9yYXdUcmFuc2FjdGlvbjtcbiAgfVxuXG4gIHNldCByYXdUcmFuc2FjdGlvbihyYXdUeDogVmV0VHJhbnNhY3Rpb24pIHtcbiAgICB0aGlzLl9yYXdUcmFuc2FjdGlvbiA9IHJhd1R4O1xuICB9XG5cbiAgZ2V0IHR5cGUoKTogVHJhbnNhY3Rpb25UeXBlIHtcbiAgICByZXR1cm4gdGhpcy5fdHlwZTtcbiAgfVxuXG4gIHNldCB0eXBlKHR5cGU6IFRyYW5zYWN0aW9uVHlwZSkge1xuICAgIHRoaXMuX3R5cGUgPSB0eXBlO1xuICB9XG5cbiAgZ2V0IHNlbmRlcigpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9zZW5kZXI7XG4gIH1cblxuICBzZXQgc2VuZGVyKGFkZHJlc3M6IHN0cmluZykge1xuICAgIHRoaXMuX3NlbmRlciA9IGFkZHJlc3M7XG4gIH1cblxuICBnZXQgc2VuZGVyU2lnbmF0dXJlKCk6IFVpbnQ4QXJyYXkgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLl9zZW5kZXJTaWduYXR1cmU7XG4gIH1cblxuICBzZXQgc2VuZGVyU2lnbmF0dXJlKHNpZzogQnVmZmVyKSB7XG4gICAgdGhpcy5fc2VuZGVyU2lnbmF0dXJlID0gc2lnO1xuICB9XG5cbiAgZ2V0IGZlZVBheWVyQWRkcmVzcygpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9mZWVQYXllckFkZHJlc3M7XG4gIH1cblxuICBzZXQgZmVlUGF5ZXJBZGRyZXNzKGFkZHJlc3M6IHN0cmluZykge1xuICAgIHRoaXMuX2ZlZVBheWVyQWRkcmVzcyA9IGFkZHJlc3M7XG4gIH1cblxuICBnZXQgZmVlUGF5ZXJTaWduYXR1cmUoKTogVWludDhBcnJheSB7XG4gICAgcmV0dXJuIHRoaXMuX2ZlZVBheWVyU2lnbmF0dXJlO1xuICB9XG5cbiAgc2V0IGZlZVBheWVyU2lnbmF0dXJlKHNpZzogQnVmZmVyKSB7XG4gICAgdGhpcy5fZmVlUGF5ZXJTaWduYXR1cmUgPSBzaWc7XG4gIH1cblxuICBnZXQgY2hhaW5UYWcoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5fY2hhaW5UYWc7XG4gIH1cblxuICBzZXQgY2hhaW5UYWcodGFnOiBudW1iZXIpIHtcbiAgICB0aGlzLl9jaGFpblRhZyA9IHRhZztcbiAgfVxuXG4gIGdldCBibG9ja1JlZigpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9ibG9ja1JlZjtcbiAgfVxuXG4gIHNldCBibG9ja1JlZihyZWY6IHN0cmluZykge1xuICAgIHRoaXMuX2Jsb2NrUmVmID0gcmVmO1xuICB9XG5cbiAgZ2V0IGV4cGlyYXRpb24oKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5fZXhwaXJhdGlvbjtcbiAgfVxuXG4gIHNldCBleHBpcmF0aW9uKGV4cDogbnVtYmVyKSB7XG4gICAgdGhpcy5fZXhwaXJhdGlvbiA9IGV4cDtcbiAgfVxuXG4gIGdldCByZWNpcGllbnRzKCk6IFRyYW5zYWN0aW9uUmVjaXBpZW50W10ge1xuICAgIHJldHVybiB0aGlzLl9yZWNpcGllbnRzO1xuICB9XG5cbiAgc2V0IHJlY2lwaWVudHMocmVjaXBpZW50czogVHJhbnNhY3Rpb25SZWNpcGllbnRbXSkge1xuICAgIHRoaXMuX3JlY2lwaWVudHMgPSByZWNpcGllbnRzO1xuICB9XG5cbiAgZ2V0IGNsYXVzZXMoKTogVHJhbnNhY3Rpb25DbGF1c2VbXSB7XG4gICAgcmV0dXJuIHRoaXMuX2NsYXVzZXM7XG4gIH1cblxuICBzZXQgY2xhdXNlcyhjbGF1c2VzOiBUcmFuc2FjdGlvbkNsYXVzZVtdKSB7XG4gICAgdGhpcy5fY2xhdXNlcyA9IGNsYXVzZXM7XG4gIH1cblxuICBnZXQgZ2FzUHJpY2VDb2VmKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX2dhc1ByaWNlQ29lZjtcbiAgfVxuXG4gIHNldCBnYXNQcmljZUNvZWYoY29lZjogbnVtYmVyKSB7XG4gICAgdGhpcy5fZ2FzUHJpY2VDb2VmID0gY29lZjtcbiAgfVxuXG4gIGdldCBnYXMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5fZ2FzO1xuICB9XG5cbiAgc2V0IGdhcyhnOiBudW1iZXIpIHtcbiAgICB0aGlzLl9nYXMgPSBnO1xuICB9XG5cbiAgZ2V0IGRlcGVuZHNPbigpOiBzdHJpbmcgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5fZGVwZW5kc09uO1xuICB9XG5cbiAgc2V0IGRlcGVuZHNPbihkZXA6IHN0cmluZyB8IG51bGwpIHtcbiAgICB0aGlzLl9kZXBlbmRzT24gPSBkZXA7XG4gIH1cblxuICBnZXQgbm9uY2UoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5fbm9uY2U7XG4gIH1cblxuICBzZXQgbm9uY2UobjogbnVtYmVyKSB7XG4gICAgdGhpcy5fbm9uY2UgPSBuO1xuICB9XG5cbiAgZ2V0IGZlZVBheWVyUHViS2V5KCk6IFB1YmxpY0tleSB7XG4gICAgcmV0dXJuIHRoaXMuX2ZlZVBheWVyUHViS2V5O1xuICB9XG5cbiAgc2V0IGZlZVBheWVyUHViS2V5KHB1YktleTogUHVibGljS2V5KSB7XG4gICAgdGhpcy5fZmVlUGF5ZXJQdWJLZXkgPSBwdWJLZXk7XG4gIH1cblxuICBnZXQgY29udHJhY3QoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fY29udHJhY3Q7XG4gIH1cblxuICBzZXQgY29udHJhY3QoYWRkcmVzczogc3RyaW5nKSB7XG4gICAgdGhpcy5fY29udHJhY3QgPSBhZGRyZXNzO1xuICB9XG5cbiAgZ2V0IHRyYW5zYWN0aW9uRGF0YSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl90cmFuc2FjdGlvbkRhdGE7XG4gIH1cblxuICBzZXQgdHJhbnNhY3Rpb25EYXRhKHRyYW5zYWN0aW9uRGF0YTogc3RyaW5nKSB7XG4gICAgdGhpcy5fdHJhbnNhY3Rpb25EYXRhID0gdHJhbnNhY3Rpb25EYXRhO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBhbGwgc2lnbmF0dXJlcyBhc3NvY2lhdGVkIHdpdGggdGhpcyB0cmFuc2FjdGlvblxuICAgKiBSZXF1aXJlZCBieSBCYXNlVHJhbnNhY3Rpb25cbiAgICovXG4gIGdldCBzaWduYXR1cmUoKTogc3RyaW5nW10ge1xuICAgIGNvbnN0IHNpZ3M6IHN0cmluZ1tdID0gW107XG4gICAgaWYgKHRoaXMuX3NlbmRlclNpZ25hdHVyZSkge1xuICAgICAgc2lncy5wdXNoKEJ1ZmZlci5mcm9tKHRoaXMuX3NlbmRlclNpZ25hdHVyZSkudG9TdHJpbmcoJ2hleCcpKTtcbiAgICB9XG4gICAgaWYgKHRoaXMuX2ZlZVBheWVyU2lnbmF0dXJlKSB7XG4gICAgICBzaWdzLnB1c2goQnVmZmVyLmZyb20odGhpcy5fZmVlUGF5ZXJTaWduYXR1cmUpLnRvU3RyaW5nKCdoZXgnKSk7XG4gICAgfVxuICAgIHJldHVybiBzaWdzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCBzaWduYXR1cmVzIGZvciB0aGlzIHRyYW5zYWN0aW9uXG4gICAqIFJlcXVpcmVkIGJ5IEJhc2VUcmFuc2FjdGlvblxuICAgKiBOb3RlOiBUaGlzIGlzIG1haW5seSBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIHRoZSBiYXNlIGNsYXNzLlxuICAgKiBQcmVmZXIgdXNpbmcgc2VuZGVyU2lnbmF0dXJlIGFuZCBmZWVQYXllclNpZ25hdHVyZSBkaXJlY3RseS5cbiAgICovXG4gIHNldCBzaWduYXR1cmUoc2lnczogc3RyaW5nW10pIHtcbiAgICBpZiAoc2lncy5sZW5ndGggPiAwKSB7XG4gICAgICB0aGlzLl9zZW5kZXJTaWduYXR1cmUgPSBCdWZmZXIuZnJvbShzaWdzWzBdLCAnaGV4Jyk7XG4gICAgfVxuICAgIGlmIChzaWdzLmxlbmd0aCA+IDEpIHtcbiAgICAgIHRoaXMuX2ZlZVBheWVyU2lnbmF0dXJlID0gQnVmZmVyLmZyb20oc2lnc1sxXSwgJ2hleCcpO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBjYW5TaWduKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrIGlmIHRoaXMgaXMgYSBmZWUgZGVsZWdhdGVkIHRyYW5zYWN0aW9uXG4gICAqL1xuICBpc0ZlZURlbGVnYXRlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISF0aGlzLl9mZWVQYXllckFkZHJlc3M7XG4gIH1cblxuICBhZGRSZWNpcGllbnRzKGNsYXVzZXM6IFRyYW5zYWN0aW9uQ2xhdXNlW10pOiB2b2lkIHtcbiAgICB0aGlzLl9yZWNpcGllbnRzID0gY2xhdXNlcy5tYXAoKGNsYXVzZSkgPT4gKHtcbiAgICAgIGFkZHJlc3M6IChjbGF1c2UudG8gfHwgJzB4MCcpLnRvU3RyaW5nKCkudG9Mb3dlckNhc2UoKSxcbiAgICAgIGFtb3VudDogKGNsYXVzZS52YWx1ZSB8fCAnMCcpLnRvU3RyaW5nKCksXG4gICAgfSkpO1xuICB9XG5cbiAgYnVpbGRDbGF1c2VzKCk6IHZvaWQge1xuICAgIHRoaXMuX2NsYXVzZXMgPSB0aGlzLl9yZWNpcGllbnRzLm1hcCgocmVjaXBpZW50KSA9PiAoe1xuICAgICAgdG86IHJlY2lwaWVudC5hZGRyZXNzLFxuICAgICAgdmFsdWU6IHJlY2lwaWVudC5hbW91bnQsXG4gICAgICBkYXRhOiAnMHgnLFxuICAgIH0pKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBQb3B1bGF0ZXMgdGhlIHRyYW5zYWN0aW9uIG9iamVjdCB3aXRoIGRhdGEgZnJvbSBhIGRlc2VyaWFsaXplZCBWZUNoYWluIHRyYW5zYWN0aW9uXG4gICAqIEBwYXJhbSBzaWduZWRUeCAtIFRoZSBkZXNlcmlhbGl6ZWQgVmVDaGFpbiB0cmFuc2FjdGlvbiBjb250YWluaW5nIGJvZHksIHNpZ25hdHVyZXMsIGFuZCBvdGhlciB0cmFuc2FjdGlvbiBkYXRhXG4gICAqIEB0aHJvd3Mge0ludmFsaWRUcmFuc2FjdGlvbkVycm9yfSBXaGVuIHRoZSB0cmFuc2FjdGlvbiBpcyBpbnZhbGlkIG9yIG1pc3NpbmcgcmVxdWlyZWQgZGF0YVxuICAgKi9cbiAgZnJvbURlc2VyaWFsaXplZFNpZ25lZFRyYW5zYWN0aW9uKHNpZ25lZFR4OiBWZXRUcmFuc2FjdGlvbik6IHZvaWQge1xuICAgIHRyeSB7XG4gICAgICBpZiAoIXNpZ25lZFR4IHx8ICFzaWduZWRUeC5ib2R5KSB7XG4gICAgICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcignSW52YWxpZCB0cmFuc2FjdGlvbjogbWlzc2luZyB0cmFuc2FjdGlvbiBib2R5Jyk7XG4gICAgICB9XG5cbiAgICAgIC8vIFN0b3JlIHRoZSByYXcgdHJhbnNhY3Rpb25cbiAgICAgIHRoaXMucmF3VHJhbnNhY3Rpb24gPSBzaWduZWRUeDtcblxuICAgICAgLy8gU2V0IHRyYW5zYWN0aW9uIGJvZHkgcHJvcGVydGllc1xuICAgICAgY29uc3QgYm9keSA9IHNpZ25lZFR4LmJvZHk7XG4gICAgICB0aGlzLmNoYWluVGFnID0gdHlwZW9mIGJvZHkuY2hhaW5UYWcgPT09ICdudW1iZXInID8gYm9keS5jaGFpblRhZyA6IDA7XG4gICAgICB0aGlzLmJsb2NrUmVmID0gYm9keS5ibG9ja1JlZiB8fCAnMHgwJztcbiAgICAgIHRoaXMuZXhwaXJhdGlvbiA9IHR5cGVvZiBib2R5LmV4cGlyYXRpb24gPT09ICdudW1iZXInID8gYm9keS5leHBpcmF0aW9uIDogNjQ7XG4gICAgICB0aGlzLmNsYXVzZXMgPSBib2R5LmNsYXVzZXMgfHwgW107XG4gICAgICB0aGlzLmdhc1ByaWNlQ29lZiA9IHR5cGVvZiBib2R5Lmdhc1ByaWNlQ29lZiA9PT0gJ251bWJlcicgPyBib2R5Lmdhc1ByaWNlQ29lZiA6IDEyODtcbiAgICAgIHRoaXMuZ2FzID0gdHlwZW9mIGJvZHkuZ2FzID09PSAnbnVtYmVyJyA/IGJvZHkuZ2FzIDogTnVtYmVyKGJvZHkuZ2FzKSB8fCAwO1xuICAgICAgdGhpcy5kZXBlbmRzT24gPSBib2R5LmRlcGVuZHNPbiB8fCBudWxsO1xuICAgICAgdGhpcy5ub25jZSA9IHR5cGVvZiBib2R5Lm5vbmNlID09PSAnbnVtYmVyJyA/IGJvZHkubm9uY2UgOiBOdW1iZXIoYm9keS5ub25jZSkgfHwgMDtcbiAgICAgIC8vIFNldCByZWNpcGllbnRzIGZyb20gY2xhdXNlc1xuICAgICAgdGhpcy5yZWNpcGllbnRzID0gYm9keS5jbGF1c2VzLm1hcCgoY2xhdXNlKSA9PiAoe1xuICAgICAgICBhZGRyZXNzOiAoY2xhdXNlLnRvIHx8ICcweDAnKS50b1N0cmluZygpLnRvTG93ZXJDYXNlKCksXG4gICAgICAgIGFtb3VudDogTnVtYmVyKGNsYXVzZS52YWx1ZSkudG9TdHJpbmcoKSxcbiAgICAgIH0pKTtcbiAgICAgIHRoaXMubG9hZElucHV0c0FuZE91dHB1dHMoKTtcblxuICAgICAgLy8gU2V0IHNlbmRlciBhZGRyZXNzXG4gICAgICBpZiAoc2lnbmVkVHgub3JpZ2luKSB7XG4gICAgICAgIHRoaXMuc2VuZGVyID0gc2lnbmVkVHgub3JpZ2luLnRvU3RyaW5nKCkudG9Mb3dlckNhc2UoKTtcbiAgICAgIH1cblxuICAgICAgLy8gU2V0IHNpZ25hdHVyZXMgaWYgcHJlc2VudFxuICAgICAgaWYgKHNpZ25lZFR4LnNpZ25hdHVyZSkge1xuICAgICAgICAvLyBGaXJzdCBzaWduYXR1cmUgaXMgc2VuZGVyJ3Mgc2lnbmF0dXJlXG4gICAgICAgIHRoaXMuc2VuZGVyU2lnbmF0dXJlID0gQnVmZmVyLmZyb20oc2lnbmVkVHguc2lnbmF0dXJlLnNsaWNlKDAsIFNlY3AyNTZrMS5TSUdOQVRVUkVfTEVOR1RIKSk7XG5cbiAgICAgICAgLy8gSWYgdGhlcmUncyBhZGRpdGlvbmFsIHNpZ25hdHVyZSBkYXRhLCBpdCdzIHRoZSBmZWUgcGF5ZXIncyBzaWduYXR1cmVcbiAgICAgICAgaWYgKHNpZ25lZFR4LnNpZ25hdHVyZS5sZW5ndGggPiBTZWNwMjU2azEuU0lHTkFUVVJFX0xFTkdUSCkge1xuICAgICAgICAgIHRoaXMuZmVlUGF5ZXJTaWduYXR1cmUgPSBCdWZmZXIuZnJvbShzaWduZWRUeC5zaWduYXR1cmUuc2xpY2UoU2VjcDI1NmsxLlNJR05BVFVSRV9MRU5HVEgpKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcihgRmFpbGVkIHRvIGRlc2VyaWFsaXplIHRyYW5zYWN0aW9uOiAke2UubWVzc2FnZX1gKTtcbiAgICB9XG4gIH1cblxuICBhZGRTZW5kZXJTaWduYXR1cmUoc2lnbmF0dXJlOiBCdWZmZXIpOiB2b2lkIHtcbiAgICB0aGlzLnNlbmRlclNpZ25hdHVyZSA9IHNpZ25hdHVyZTtcbiAgfVxuXG4gIGdldEZlZVBheWVyUHViS2V5KCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuZmVlUGF5ZXJQdWJLZXkucHViO1xuICB9XG5cbiAgYWRkRmVlUGF5ZXJTaWduYXR1cmUocHVibGljS2V5OiBQdWJsaWNLZXksIHNpZ25hdHVyZTogQnVmZmVyKTogdm9pZCB7XG4gICAgdGhpcy5mZWVQYXllclB1YktleSA9IHB1YmxpY0tleTtcbiAgICB0aGlzLmZlZVBheWVyU2lnbmF0dXJlID0gc2lnbmF0dXJlO1xuICB9XG5cbiAgYXN5bmMgYnVpbGQoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdGhpcy5idWlsZENsYXVzZXMoKTtcbiAgICBhd2FpdCB0aGlzLmJ1aWxkUmF3VHJhbnNhY3Rpb24oKTtcbiAgICB0aGlzLmdlbmVyYXRlVHhuSWQoKTtcbiAgICB0aGlzLmxvYWRJbnB1dHNBbmRPdXRwdXRzKCk7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgdHJhbnNhY3Rpb24gSUQgZnJvbSB0aGUgcmF3IHRyYW5zYWN0aW9uIGlmIGl0IGlzIHNpZ25lZFxuICAgKiBAcHJvdGVjdGVkXG4gICAqL1xuICBwcm90ZWN0ZWQgZ2VuZXJhdGVUeG5JZCgpOiB2b2lkIHtcbiAgICAvLyBDaGVjayBpZiB3ZSBoYXZlIGEgcmF3IHRyYW5zYWN0aW9uXG4gICAgaWYgKCF0aGlzLnJhd1RyYW5zYWN0aW9uKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgLy8gQ2hlY2sgaWYgdGhlIHRyYW5zYWN0aW9uIGlzIHNpZ25lZCBieSB2ZXJpZnlpbmcgc2lnbmF0dXJlIGV4aXN0c1xuICAgIGlmICghdGhpcy5zZW5kZXJTaWduYXR1cmUgfHwgIXRoaXMuZmVlUGF5ZXJTaWduYXR1cmUpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBoYWxmU2lnbmVkVHJhbnNhY3Rpb246IFZldFRyYW5zYWN0aW9uID0gVmV0VHJhbnNhY3Rpb24ub2YodGhpcy5yYXdUcmFuc2FjdGlvbi5ib2R5LCB0aGlzLnNlbmRlclNpZ25hdHVyZSk7XG4gICAgaWYgKCFoYWxmU2lnbmVkVHJhbnNhY3Rpb24uc2lnbmF0dXJlKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IGZ1bGxTaWduZWRUcmFuc2FjdGlvbjogVmV0VHJhbnNhY3Rpb24gPSBWZXRUcmFuc2FjdGlvbi5vZihcbiAgICAgIGhhbGZTaWduZWRUcmFuc2FjdGlvbi5ib2R5LFxuICAgICAgbmNfdXRpbHMuY29uY2F0Qnl0ZXMoXG4gICAgICAgIC8vIERyb3AgYW55IHByZXZpb3VzIGdhcyBwYXllciBzaWduYXR1cmUuXG4gICAgICAgIGhhbGZTaWduZWRUcmFuc2FjdGlvbi5zaWduYXR1cmUuc2xpY2UoMCwgU2VjcDI1NmsxLlNJR05BVFVSRV9MRU5HVEgpLFxuICAgICAgICB0aGlzLmZlZVBheWVyU2lnbmF0dXJlXG4gICAgICApXG4gICAgKTtcbiAgICBpZiAoIWZ1bGxTaWduZWRUcmFuc2FjdGlvbi5zaWduYXR1cmUpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdHJ5IHtcbiAgICAgIHRoaXMuX2lkID0gZnVsbFNpZ25lZFRyYW5zYWN0aW9uLmlkLnRvU3RyaW5nKCk7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBhc3luYyBidWlsZFJhd1RyYW5zYWN0aW9uKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IHRyYW5zYWN0aW9uQm9keTogVHJhbnNhY3Rpb25Cb2R5ID0ge1xuICAgICAgY2hhaW5UYWc6IHRoaXMuY2hhaW5UYWcsXG4gICAgICBibG9ja1JlZjogdGhpcy5ibG9ja1JlZixcbiAgICAgIGV4cGlyYXRpb246IDY0LCAvL21vdmUgdGhpcyB2YWx1ZSB0byBjb25zdGFudHNcbiAgICAgIGNsYXVzZXM6IHRoaXMuY2xhdXNlcyxcbiAgICAgIGdhc1ByaWNlQ29lZjogdGhpcy5nYXNQcmljZUNvZWYsXG4gICAgICBnYXM6IHRoaXMuZ2FzLFxuICAgICAgZGVwZW5kc09uOiBudWxsLFxuICAgICAgbm9uY2U6IHRoaXMubm9uY2UsXG4gICAgfTtcblxuICAgIGlmICh0aGlzLnR5cGUgPT09IFRyYW5zYWN0aW9uVHlwZS5TZW5kKSB7XG4gICAgICB0cmFuc2FjdGlvbkJvZHkucmVzZXJ2ZWQgPSB7XG4gICAgICAgIGZlYXR1cmVzOiAxLCAvLyBtYXJrIHRyYW5zYWN0aW9uIGFzIGRlbGVnYXRlZCBpLmUuIHdpbGwgdXNlIGdhcyBwYXllclxuICAgICAgfTtcbiAgICB9XG5cbiAgICB0aGlzLnJhd1RyYW5zYWN0aW9uID0gVmV0VHJhbnNhY3Rpb24ub2YodHJhbnNhY3Rpb25Cb2R5KTtcbiAgfVxuXG4gIGxvYWRJbnB1dHNBbmRPdXRwdXRzKCk6IHZvaWQge1xuICAgIHN3aXRjaCAodGhpcy50eXBlKSB7XG4gICAgICBjYXNlIFRyYW5zYWN0aW9uVHlwZS5BZGRyZXNzSW5pdGlhbGl6YXRpb246XG4gICAgICAgIHRoaXMuX3R5cGUgPSBUcmFuc2FjdGlvblR5cGUuQWRkcmVzc0luaXRpYWxpemF0aW9uO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgVHJhbnNhY3Rpb25UeXBlLkZsdXNoVG9rZW5zOlxuICAgICAgICB0aGlzLl90eXBlID0gVHJhbnNhY3Rpb25UeXBlLkZsdXNoVG9rZW5zO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgVHJhbnNhY3Rpb25UeXBlLlNlbmQ6XG4gICAgICAgIHRoaXMuX3R5cGUgPSBUcmFuc2FjdGlvblR5cGUuU2VuZDtcbiAgICAgICAgY29uc3QgdG90YWxBbW91bnQgPSB0aGlzLl9yZWNpcGllbnRzLnJlZHVjZShcbiAgICAgICAgICAoYWNjdW11bGF0b3IsIGN1cnJlbnQpID0+IGFjY3VtdWxhdG9yLnBsdXMoY3VycmVudC5hbW91bnQpLFxuICAgICAgICAgIG5ldyBCaWdOdW1iZXIoJzAnKVxuICAgICAgICApO1xuICAgICAgICB0aGlzLl9pbnB1dHMgPSBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgYWRkcmVzczogdGhpcy5zZW5kZXIsXG4gICAgICAgICAgICB2YWx1ZTogdG90YWxBbW91bnQudG9TdHJpbmcoKSxcbiAgICAgICAgICAgIGNvaW46IHRoaXMuX2NvaW5Db25maWcubmFtZSxcbiAgICAgICAgICB9LFxuICAgICAgICBdO1xuICAgICAgICB0aGlzLl9vdXRwdXRzID0gdGhpcy5fcmVjaXBpZW50cy5tYXAoKHJlY2lwaWVudCkgPT4ge1xuICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBhZGRyZXNzOiByZWNpcGllbnQuYWRkcmVzcyxcbiAgICAgICAgICAgIHZhbHVlOiByZWNpcGllbnQuYW1vdW50IGFzIHN0cmluZyxcbiAgICAgICAgICAgIGNvaW46IHRoaXMuX2NvaW5Db25maWcubmFtZSxcbiAgICAgICAgICB9O1xuICAgICAgICB9KTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICB0aHJvdyBuZXcgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IoYFVuc3VwcG9ydGVkIHRyYW5zYWN0aW9uIHR5cGU6ICR7dGhpcy50eXBlfWApO1xuICAgIH1cbiAgfVxuXG4gIGZyb21SYXdUcmFuc2FjdGlvbihyYXdUcmFuc2FjdGlvbjogc3RyaW5nKTogdm9pZCB7XG4gICAgbGV0IHNpZ25lZFR4bjogVmV0VHJhbnNhY3Rpb247XG4gICAgdHJ5IHtcbiAgICAgIHNpZ25lZFR4biA9IHV0aWxzLmRlc2VyaWFsaXplVHJhbnNhY3Rpb24ocmF3VHJhbnNhY3Rpb24pO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignaW52YWxpZCByYXcgdHJhbnNhY3Rpb24nKTtcbiAgICB9XG4gICAgdGhpcy5mcm9tRGVzZXJpYWxpemVkU2lnbmVkVHJhbnNhY3Rpb24oc2lnbmVkVHhuKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB0b0pzb24oKTogVmV0VHJhbnNhY3Rpb25EYXRhIHtcbiAgICBjb25zdCBqc29uOiBWZXRUcmFuc2FjdGlvbkRhdGEgPSB7XG4gICAgICBpZDogdGhpcy5pZCxcbiAgICAgIGNoYWluVGFnOiB0aGlzLmNoYWluVGFnLFxuICAgICAgYmxvY2tSZWY6IHRoaXMuYmxvY2tSZWYsXG4gICAgICBleHBpcmF0aW9uOiB0aGlzLmV4cGlyYXRpb24sXG4gICAgICByZWNpcGllbnRzOiB0aGlzLnJlY2lwaWVudHMsXG4gICAgICBnYXNQcmljZUNvZWY6IHRoaXMuZ2FzUHJpY2VDb2VmLFxuICAgICAgZ2FzOiB0aGlzLmdhcyxcbiAgICAgIGRlcGVuZHNPbjogdGhpcy5kZXBlbmRzT24sXG4gICAgICBub25jZTogdGhpcy5ub25jZSxcbiAgICAgIHNlbmRlcjogdGhpcy5zZW5kZXIsXG4gICAgICBmZWVQYXllcjogdGhpcy5mZWVQYXllckFkZHJlc3MsXG4gICAgfTtcblxuICAgIHJldHVybiBqc29uO1xuICB9XG5cbiAgcHVibGljIGdldEZlZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiBuZXcgQmlnTnVtYmVyKHRoaXMuZ2FzKVxuICAgICAgLm11bHRpcGxpZWRCeShnYXNQcmljZSlcbiAgICAgIC5tdWx0aXBsaWVkQnkobmV3IEJpZ051bWJlcih0aGlzLmdhc1ByaWNlQ29lZikuZGl2aWRlZEJ5KDI1NSkucGx1cygxKSlcbiAgICAgIC50b1N0cmluZygpXG4gICAgICAuc2xpY2UoMCwgMTgpO1xuICB9XG5cbiAgcHVibGljIGdldCBzaWduYWJsZVBheWxvYWQoKTogQnVmZmVyIHtcbiAgICByZXR1cm4gQnVmZmVyLmZyb20odGhpcy5yYXdUcmFuc2FjdGlvbi5lbmNvZGVkKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB0b0Jyb2FkY2FzdEZvcm1hdCgpOiBzdHJpbmcge1xuICAgIGlmICghdGhpcy5yYXdUcmFuc2FjdGlvbikge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKCdFbXB0eSBUcmFuc2FjdGlvbicpO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5zZXJpYWxpemUoKTtcbiAgfVxuXG4gIHNlcmlhbGl6ZSgpOiBzdHJpbmcge1xuICAgIGNvbnN0IGhhbGZTaWduZWRUcmFuc2FjdGlvbjogVmV0VHJhbnNhY3Rpb24gPSBWZXRUcmFuc2FjdGlvbi5vZih0aGlzLnJhd1RyYW5zYWN0aW9uLmJvZHksIHRoaXMuc2VuZGVyU2lnbmF0dXJlKTtcbiAgICBpZiAoIWhhbGZTaWduZWRUcmFuc2FjdGlvbi5zaWduYXR1cmUpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcignSW52YWxpZCBzZW5kZXIgc2lnbmF0dXJlIGluIGhhbGYtc2lnbmVkIHRyYW5zYWN0aW9uJyk7XG4gICAgfVxuICAgIGlmICghdGhpcy5mZWVQYXllclNpZ25hdHVyZSkge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKCdNaXNzaW5nIGZlZSBwYXllciBzaWduYXR1cmUnKTtcbiAgICB9XG4gICAgY29uc3QgZnVsbFNpZ25lZFRyYW5zYWN0aW9uOiBWZXRUcmFuc2FjdGlvbiA9IFZldFRyYW5zYWN0aW9uLm9mKFxuICAgICAgaGFsZlNpZ25lZFRyYW5zYWN0aW9uLmJvZHksXG4gICAgICBuY191dGlscy5jb25jYXRCeXRlcyhcbiAgICAgICAgLy8gRHJvcCBhbnkgcHJldmlvdXMgZ2FzIHBheWVyIHNpZ25hdHVyZS5cbiAgICAgICAgaGFsZlNpZ25lZFRyYW5zYWN0aW9uLnNpZ25hdHVyZS5zbGljZSgwLCBTZWNwMjU2azEuU0lHTkFUVVJFX0xFTkdUSCksXG4gICAgICAgIHRoaXMuZmVlUGF5ZXJTaWduYXR1cmVcbiAgICAgIClcbiAgICApO1xuICAgIHJldHVybiBIZXhVSW50Lm9mKGZ1bGxTaWduZWRUcmFuc2FjdGlvbi5lbmNvZGVkKS50b1N0cmluZygpO1xuICB9XG5cbiAgc3RhdGljIGRlc2VyaWFsaXplVHJhbnNhY3Rpb24ocmF3VHg6IHN0cmluZyk6IFZldFRyYW5zYWN0aW9uIHtcbiAgICB0cnkge1xuICAgICAgaWYgKCFyYXdUeCkge1xuICAgICAgICB0aHJvdyBuZXcgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IoJ1JhdyB0cmFuc2FjdGlvbiBzdHJpbmcgY2Fubm90IGJlIGVtcHR5Jyk7XG4gICAgICB9XG4gICAgICByZXR1cm4gdXRpbHMuZGVzZXJpYWxpemVUcmFuc2FjdGlvbihyYXdUeCk7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgaWYgKGUgaW5zdGFuY2VvZiBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcikge1xuICAgICAgICB0aHJvdyBlO1xuICAgICAgfVxuICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKGBGYWlsZWQgdG8gZGVzZXJpYWxpemUgdHJhbnNhY3Rpb246ICR7ZS5tZXNzYWdlfWApO1xuICAgIH1cbiAgfVxuXG4gIGV4cGxhaW5UcmFuc2FjdGlvbigpOiBWZXRUcmFuc2FjdGlvbkV4cGxhbmF0aW9uIHtcbiAgICBjb25zdCBkaXNwbGF5T3JkZXIgPSBbXG4gICAgICAnaWQnLFxuICAgICAgJ291dHB1dHMnLFxuICAgICAgJ291dHB1dEFtb3VudCcsXG4gICAgICAnY2hhbmdlT3V0cHV0cycsXG4gICAgICAnY2hhbmdlQW1vdW50JyxcbiAgICAgICdmZWUnLFxuICAgICAgJ3dpdGhkcmF3QW1vdW50JyxcbiAgICAgICdzZW5kZXInLFxuICAgICAgJ3R5cGUnLFxuICAgIF07XG5cbiAgICBjb25zdCBvdXRwdXRzOiBUcmFuc2FjdGlvblJlY2lwaWVudFtdID0gdGhpcy5fcmVjaXBpZW50cztcbiAgICBjb25zdCBvdXRwdXRBbW91bnQgPSBvdXRwdXRzXG4gICAgICAucmVkdWNlKChhY2N1bXVsYXRvciwgY3VycmVudCkgPT4gYWNjdW11bGF0b3IucGx1cyhjdXJyZW50LmFtb3VudCksIG5ldyBCaWdOdW1iZXIoJzAnKSlcbiAgICAgIC50b1N0cmluZygpO1xuICAgIHJldHVybiB7XG4gICAgICBkaXNwbGF5T3JkZXIsXG4gICAgICBpZDogdGhpcy5pZCxcbiAgICAgIG91dHB1dHMsXG4gICAgICBvdXRwdXRBbW91bnQsXG4gICAgICBjaGFuZ2VPdXRwdXRzOiBbXSxcbiAgICAgIGNoYW5nZUFtb3VudDogJzAnLFxuICAgICAgZmVlOiB7IGZlZTogdGhpcy5nZXRGZWUoKSB9LFxuICAgICAgc2VuZGVyOiB0aGlzLnNlbmRlcixcbiAgICAgIHR5cGU6IHRoaXMudHlwZSxcbiAgICB9O1xuICB9XG59XG4iXX0=
459
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL3RyYW5zYWN0aW9uL3RyYW5zYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLGdFQUFxQztBQUNyQyxtREFNOEI7QUFFOUIsZ0RBTTJCO0FBQzNCLHVFQUF5RDtBQUN6RCxxREFBNkI7QUFHN0IsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDO0FBRXRCLE1BQWEsV0FBWSxTQUFRLDBCQUFlO0lBdUI5QyxZQUFZLFdBQWlDO1FBQzNDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLDBCQUFlLENBQUMsSUFBSSxDQUFDO1FBQ2xDLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLENBQUMsMEJBQTBCO1FBQ2pELElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxXQUFXLEdBQUcsRUFBRSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFDO1FBQ25CLElBQUksQ0FBQyxhQUFhLEdBQUcsR0FBRyxDQUFDO1FBQ3pCLElBQUksQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDO1FBQ2QsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUM7UUFDdkIsSUFBSSxDQUFDLE1BQU0sR0FBRyxHQUFHLENBQUM7UUFDbEIsSUFBSSxDQUFDLFdBQVcsR0FBRyxFQUFFLENBQUM7UUFDdEIsSUFBSSxDQUFDLGVBQWUsR0FBRztZQUNyQixHQUFHLEVBQUUsa0JBQU8sQ0FBQyxFQUFFLENBQUMsV0FBVyxDQUFDLGdCQUFnQixDQUFDLENBQUMsUUFBUSxFQUFFO1NBQ3pELENBQUM7UUFDRixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsV0FBVyxDQUFDLGVBQWUsQ0FBQztRQUNwRCxJQUFJLENB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QyxNQUFNLEVBQUUsRUFBRTtZQUMzQixNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU07WUFDbkIsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO1NBQ2hCLENBQUM7SUFDSixDQUFDOztBQTdmSCxrQ0E4ZkM7QUExZVEsNEJBQWdCLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztBQUNwQywyQkFBZSxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgQmlnTnVtYmVyIGZyb20gJ2JpZ251bWJlci5qcyc7XG5pbXBvcnQge1xuICBCYXNlVHJhbnNhY3Rpb24sXG4gIFRyYW5zYWN0aW9uVHlwZSxcbiAgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IsXG4gIFRyYW5zYWN0aW9uUmVjaXBpZW50LFxuICBQdWJsaWNLZXksXG59IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb3JlJztcbmltcG9ydCB7IEJhc2VDb2luIGFzIENvaW5Db25maWcgfSBmcm9tICdAYml0Z28tYmV0YS9zdGF0aWNzJztcbmltcG9ydCB7XG4gIFRyYW5zYWN0aW9uQm9keSxcbiAgVHJhbnNhY3Rpb25DbGF1c2UsXG4gIFRyYW5zYWN0aW9uIGFzIFZldFRyYW5zYWN0aW9uLFxuICBTZWNwMjU2azEsXG4gIEhleFVJbnQsXG59IGZyb20gJ0B2ZWNoYWluL3Nkay1jb3JlJztcbmltcG9ydCAqIGFzIG5jX3V0aWxzIGZyb20gJ0Bub2JsZS9jdXJ2ZXMvYWJzdHJhY3QvdXRpbHMnO1xuaW1wb3J0IHV0aWxzIGZyb20gJy4uL3V0aWxzJztcbmltcG9ydCB7IFZldFRyYW5zYWN0aW9uRXhwbGFuYXRpb24sIFZldFRyYW5zYWN0aW9uRGF0YSB9IGZyb20gJy4uL2lmYWNlJztcblxuY29uc3QgZ2FzUHJpY2UgPSAxZTEzO1xuXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb24gZXh0ZW5kcyBCYXNlVHJhbnNhY3Rpb24ge1xuICBwcm90ZWN0ZWQgX3Jhd1RyYW5zYWN0aW9uOiBWZXRUcmFuc2FjdGlvbjtcbiAgcHJvdGVjdGVkIF90eXBlOiBUcmFuc2FjdGlvblR5cGU7XG4gIHByb3RlY3RlZCBfcmVjaXBpZW50czogVHJhbnNhY3Rpb25SZWNpcGllbnRbXTtcbiAgcHJvdGVjdGVkIF9jbGF1c2VzOiBUcmFuc2FjdGlvbkNsYXVzZVtdO1xuICBwcm90ZWN0ZWQgX2NvbnRyYWN0OiBzdHJpbmc7XG4gIHByb3RlY3RlZCBfdHJhbnNhY3Rpb25EYXRhOiBzdHJpbmc7XG4gIHByaXZhdGUgX2NoYWluVGFnOiBudW1iZXI7XG4gIHByaXZhdGUgX2Jsb2NrUmVmOiBzdHJpbmc7XG4gIHByaXZhdGUgX2V4cGlyYXRpb246IG51bWJlcjtcbiAgcHJpdmF0ZSBfZ2FzUHJpY2VDb2VmOiBudW1iZXI7XG4gIHByaXZhdGUgX2dhczogbnVtYmVyO1xuICBwcml2YXRlIF9kZXBlbmRzT246IHN0cmluZyB8IG51bGw7XG4gIHByaXZhdGUgX25vbmNlOiBudW1iZXI7XG4gIHByaXZhdGUgX3NlbmRlcjogc3RyaW5nO1xuICBwcml2YXRlIF9zZW5kZXJTaWduYXR1cmU6IEJ1ZmZlcjtcbiAgcHJpdmF0ZSBfZmVlUGF5ZXJBZGRyZXNzOiBzdHJpbmc7XG4gIHByaXZhdGUgX2ZlZVBheWVyU2lnbmF0dXJlOiBCdWZmZXI7XG4gIHByaXZhdGUgX2ZlZVBheWVyUHViS2V5OiBQdWJsaWNLZXk7XG5cbiAgc3RhdGljIEVNUFRZX1BVQkxJQ19LRVkgPSBCdWZmZXIuYWxsb2MoMzIpO1xuICBzdGF0aWMgRU1QVFlfU0lHTkFUVVJFID0gQnVmZmVyLmFsbG9jKDY0KTtcblxuICBjb25zdHJ1Y3RvcihfY29pbkNvbmZpZzogUmVhZG9ubHk8Q29pbkNvbmZpZz4pIHtcbiAgICBzdXBlcihfY29pbkNvbmZpZyk7XG4gICAgdGhpcy5fdHlwZSA9IFRyYW5zYWN0aW9uVHlwZS5TZW5kO1xuICAgIHRoaXMuX2NoYWluVGFnID0gMHgyNzsgLy8gSW5pdGlhbGl6ZSB0byAzOSAoMHgyNylcbiAgICB0aGlzLl9ibG9ja1JlZiA9ICcweDAnO1xuICAgIHRoaXMuX2V4cGlyYXRpb24gPSA2NDtcbiAgICB0aGlzLl9jbGF1c2VzID0gW107XG4gICAgdGhpcy5fZ2FzUHJpY2VDb2VmID0gMTI4O1xuICAgIHRoaXMuX2dhcyA9IDA7XG4gICAgdGhpcy5fZGVwZW5kc09uID0gbnVsbDtcbiAgICB0aGlzLl9ub25jZSA9IDB4MDtcbiAgICB0aGlzLl9yZWNpcGllbnRzID0gW107XG4gICAgdGhpcy5fZmVlUGF5ZXJQdWJLZXkgPSB7XG4gICAgICBwdWI6IEhleFVJbnQub2YoVHJhbnNhY3Rpb24uRU1QVFlfUFVCTElDX0tFWSkudG9TdHJpbmcoKSxcbiAgICB9O1xuICAgIHRoaXMuX3NlbmRlclNpZ25hdHVyZSA9IFRyYW5zYWN0aW9uLkVNUFRZX1NJR05BVFVSRTtcbiAgICB0aGlzLl9mZWVQYXllclNpZ25hdHVyZSA9IFRyYW5zYWN0aW9uLkVNUFRZX1NJR05BVFVSRTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaWQoKTogc3RyaW5nIHtcbiAgICB0aGlzLmdlbmVyYXRlVHhuSWQoKTtcbiAgICByZXR1cm4gdGhpcy5faWQgPz8gJ1VOQVZBSUxBQkxFJztcbiAgfVxuXG4gIGdldCByYXdUcmFuc2FjdGlvbigpOiBWZXRUcmFuc2FjdGlvbiB7XG4gICAgcmV0dXJuIHRoaXMuX3Jhd1RyYW5zYWN0aW9uO1xuICB9XG5cbiAgc2V0IHJhd1RyYW5zYWN0aW9uKHJhd1R4OiBWZXRUcmFuc2FjdGlvbikge1xuICAgIHRoaXMuX3Jhd1RyYW5zYWN0aW9uID0gcmF3VHg7XG4gIH1cblxuICBnZXQgdHlwZSgpOiBUcmFuc2FjdGlvblR5cGUge1xuICAgIHJldHVybiB0aGlzLl90eXBlO1xuICB9XG5cbiAgc2V0IHR5cGUodHlwZTogVHJhbnNhY3Rpb25UeXBlKSB7XG4gICAgdGhpcy5fdHlwZSA9IHR5cGU7XG4gIH1cblxuICBnZXQgc2VuZGVyKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX3NlbmRlcjtcbiAgfVxuXG4gIHNldCBzZW5kZXIoYWRkcmVzczogc3RyaW5nKSB7XG4gICAgdGhpcy5fc2VuZGVyID0gYWRkcmVzcztcbiAgfVxuXG4gIGdldCBzZW5kZXJTaWduYXR1cmUoKTogVWludDhBcnJheSB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuX3NlbmRlclNpZ25hdHVyZTtcbiAgfVxuXG4gIHNldCBzZW5kZXJTaWduYXR1cmUoc2lnOiBCdWZmZXIpIHtcbiAgICB0aGlzLl9zZW5kZXJTaWduYXR1cmUgPSBzaWc7XG4gIH1cblxuICBnZXQgZmVlUGF5ZXJBZGRyZXNzKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX2ZlZVBheWVyQWRkcmVzcztcbiAgfVxuXG4gIHNldCBmZWVQYXllckFkZHJlc3MoYWRkcmVzczogc3RyaW5nKSB7XG4gICAgdGhpcy5fZmVlUGF5ZXJBZGRyZXNzID0gYWRkcmVzcztcbiAgfVxuXG4gIGdldCBmZWVQYXllclNpZ25hdHVyZSgpOiBVaW50OEFycmF5IHtcbiAgICByZXR1cm4gdGhpcy5fZmVlUGF5ZXJTaWduYXR1cmU7XG4gIH1cblxuICBzZXQgZmVlUGF5ZXJTaWduYXR1cmUoc2lnOiBCdWZmZXIpIHtcbiAgICB0aGlzLl9mZWVQYXllclNpZ25hdHVyZSA9IHNpZztcbiAgfVxuXG4gIGdldCBjaGFpblRhZygpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLl9jaGFpblRhZztcbiAgfVxuXG4gIHNldCBjaGFpblRhZyh0YWc6IG51bWJlcikge1xuICAgIHRoaXMuX2NoYWluVGFnID0gdGFnO1xuICB9XG5cbiAgZ2V0IGJsb2NrUmVmKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX2Jsb2NrUmVmO1xuICB9XG5cbiAgc2V0IGJsb2NrUmVmKHJlZjogc3RyaW5nKSB7XG4gICAgdGhpcy5fYmxvY2tSZWYgPSByZWY7XG4gIH1cblxuICBnZXQgZXhwaXJhdGlvbigpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLl9leHBpcmF0aW9uO1xuICB9XG5cbiAgc2V0IGV4cGlyYXRpb24oZXhwOiBudW1iZXIpIHtcbiAgICB0aGlzLl9leHBpcmF0aW9uID0gZXhwO1xuICB9XG5cbiAgZ2V0IHJlY2lwaWVudHMoKTogVHJhbnNhY3Rpb25SZWNpcGllbnRbXSB7XG4gICAgcmV0dXJuIHRoaXMuX3JlY2lwaWVudHM7XG4gIH1cblxuICBzZXQgcmVjaXBpZW50cyhyZWNpcGllbnRzOiBUcmFuc2FjdGlvblJlY2lwaWVudFtdKSB7XG4gICAgdGhpcy5fcmVjaXBpZW50cyA9IHJlY2lwaWVudHM7XG4gIH1cblxuICBnZXQgY2xhdXNlcygpOiBUcmFuc2FjdGlvbkNsYXVzZVtdIHtcbiAgICByZXR1cm4gdGhpcy5fY2xhdXNlcztcbiAgfVxuXG4gIHNldCBjbGF1c2VzKGNsYXVzZXM6IFRyYW5zYWN0aW9uQ2xhdXNlW10pIHtcbiAgICB0aGlzLl9jbGF1c2VzID0gY2xhdXNlcztcbiAgfVxuXG4gIGdldCBnYXNQcmljZUNvZWYoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5fZ2FzUHJpY2VDb2VmO1xuICB9XG5cbiAgc2V0IGdhc1ByaWNlQ29lZihjb2VmOiBudW1iZXIpIHtcbiAgICB0aGlzLl9nYXNQcmljZUNvZWYgPSBjb2VmO1xuICB9XG5cbiAgZ2V0IGdhcygpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLl9nYXM7XG4gIH1cblxuICBzZXQgZ2FzKGc6IG51bWJlcikge1xuICAgIHRoaXMuX2dhcyA9IGc7XG4gIH1cblxuICBnZXQgZGVwZW5kc09uKCk6IHN0cmluZyB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLl9kZXBlbmRzT247XG4gIH1cblxuICBzZXQgZGVwZW5kc09uKGRlcDogc3RyaW5nIHwgbnVsbCkge1xuICAgIHRoaXMuX2RlcGVuZHNPbiA9IGRlcDtcbiAgfVxuXG4gIGdldCBub25jZSgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLl9ub25jZTtcbiAgfVxuXG4gIHNldCBub25jZShuOiBudW1iZXIpIHtcbiAgICB0aGlzLl9ub25jZSA9IG47XG4gIH1cblxuICBnZXQgZmVlUGF5ZXJQdWJLZXkoKTogUHVibGljS2V5IHtcbiAgICByZXR1cm4gdGhpcy5fZmVlUGF5ZXJQdWJLZXk7XG4gIH1cblxuICBzZXQgZmVlUGF5ZXJQdWJLZXkocHViS2V5OiBQdWJsaWNLZXkpIHtcbiAgICB0aGlzLl9mZWVQYXllclB1YktleSA9IHB1YktleTtcbiAgfVxuXG4gIGdldCBjb250cmFjdCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9jb250cmFjdDtcbiAgfVxuXG4gIHNldCBjb250cmFjdChhZGRyZXNzOiBzdHJpbmcpIHtcbiAgICB0aGlzLl9jb250cmFjdCA9IGFkZHJlc3M7XG4gIH1cblxuICBnZXQgdHJhbnNhY3Rpb25EYXRhKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX3RyYW5zYWN0aW9uRGF0YTtcbiAgfVxuXG4gIHNldCB0cmFuc2FjdGlvbkRhdGEodHJhbnNhY3Rpb25EYXRhOiBzdHJpbmcpIHtcbiAgICB0aGlzLl90cmFuc2FjdGlvbkRhdGEgPSB0cmFuc2FjdGlvbkRhdGE7XG4gIH1cblxuICAvKipcbiAgICogR2V0IGFsbCBzaWduYXR1cmVzIGFzc29jaWF0ZWQgd2l0aCB0aGlzIHRyYW5zYWN0aW9uXG4gICAqIFJlcXVpcmVkIGJ5IEJhc2VUcmFuc2FjdGlvblxuICAgKi9cbiAgZ2V0IHNpZ25hdHVyZSgpOiBzdHJpbmdbXSB7XG4gICAgY29uc3Qgc2lnczogc3RyaW5nW10gPSBbXTtcbiAgICBpZiAodGhpcy5fc2VuZGVyU2lnbmF0dXJlKSB7XG4gICAgICBzaWdzLnB1c2goQnVmZmVyLmZyb20odGhpcy5fc2VuZGVyU2lnbmF0dXJlKS50b1N0cmluZygnaGV4JykpO1xuICAgIH1cbiAgICBpZiAodGhpcy5fZmVlUGF5ZXJTaWduYXR1cmUpIHtcbiAgICAgIHNpZ3MucHVzaChCdWZmZXIuZnJvbSh0aGlzLl9mZWVQYXllclNpZ25hdHVyZSkudG9TdHJpbmcoJ2hleCcpKTtcbiAgICB9XG4gICAgcmV0dXJuIHNpZ3M7XG4gIH1cblxuICAvKipcbiAgICogU2V0IHNpZ25hdHVyZXMgZm9yIHRoaXMgdHJhbnNhY3Rpb25cbiAgICogUmVxdWlyZWQgYnkgQmFzZVRyYW5zYWN0aW9uXG4gICAqIE5vdGU6IFRoaXMgaXMgbWFpbmx5IGZvciBjb21wYXRpYmlsaXR5IHdpdGggdGhlIGJhc2UgY2xhc3MuXG4gICAqIFByZWZlciB1c2luZyBzZW5kZXJTaWduYXR1cmUgYW5kIGZlZVBheWVyU2lnbmF0dXJlIGRpcmVjdGx5LlxuICAgKi9cbiAgc2V0IHNpZ25hdHVyZShzaWdzOiBzdHJpbmdbXSkge1xuICAgIGlmIChzaWdzLmxlbmd0aCA+IDApIHtcbiAgICAgIHRoaXMuX3NlbmRlclNpZ25hdHVyZSA9IEJ1ZmZlci5mcm9tKHNpZ3NbMF0sICdoZXgnKTtcbiAgICB9XG4gICAgaWYgKHNpZ3MubGVuZ3RoID4gMSkge1xuICAgICAgdGhpcy5fZmVlUGF5ZXJTaWduYXR1cmUgPSBCdWZmZXIuZnJvbShzaWdzWzFdLCAnaGV4Jyk7XG4gICAgfVxuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGNhblNpZ24oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2sgaWYgdGhpcyBpcyBhIGZlZSBkZWxlZ2F0ZWQgdHJhbnNhY3Rpb25cbiAgICovXG4gIGlzRmVlRGVsZWdhdGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhIXRoaXMuX2ZlZVBheWVyQWRkcmVzcztcbiAgfVxuXG4gIGFkZFJlY2lwaWVudHMoY2xhdXNlczogVHJhbnNhY3Rpb25DbGF1c2VbXSk6IHZvaWQge1xuICAgIHRoaXMuX3JlY2lwaWVudHMgPSBjbGF1c2VzLm1hcCgoY2xhdXNlKSA9PiAoe1xuICAgICAgYWRkcmVzczogKGNsYXVzZS50byB8fCAnMHgwJykudG9TdHJpbmcoKS50b0xvd2VyQ2FzZSgpLFxuICAgICAgYW1vdW50OiAoY2xhdXNlLnZhbHVlIHx8ICcwJykudG9TdHJpbmcoKSxcbiAgICB9KSk7XG4gIH1cblxuICBidWlsZENsYXVzZXMoKTogdm9pZCB7XG4gICAgdGhpcy5fY2xhdXNlcyA9IHRoaXMuX3JlY2lwaWVudHMubWFwKChyZWNpcGllbnQpID0+ICh7XG4gICAgICB0bzogcmVjaXBpZW50LmFkZHJlc3MsXG4gICAgICB2YWx1ZTogcmVjaXBpZW50LmFtb3VudCxcbiAgICAgIGRhdGE6ICcweCcsXG4gICAgfSkpO1xuICB9XG5cbiAgLyoqXG4gICAqIFBvcHVsYXRlcyB0aGUgdHJhbnNhY3Rpb24gb2JqZWN0IHdpdGggZGF0YSBmcm9tIGEgZGVzZXJpYWxpemVkIFZlQ2hhaW4gdHJhbnNhY3Rpb25cbiAgICogQHBhcmFtIHNpZ25lZFR4IC0gVGhlIGRlc2VyaWFsaXplZCBWZUNoYWluIHRyYW5zYWN0aW9uIGNvbnRhaW5pbmcgYm9keSwgc2lnbmF0dXJlcywgYW5kIG90aGVyIHRyYW5zYWN0aW9uIGRhdGFcbiAgICogQHRocm93cyB7SW52YWxpZFRyYW5zYWN0aW9uRXJyb3J9IFdoZW4gdGhlIHRyYW5zYWN0aW9uIGlzIGludmFsaWQgb3IgbWlzc2luZyByZXF1aXJlZCBkYXRhXG4gICAqL1xuICBmcm9tRGVzZXJpYWxpemVkU2lnbmVkVHJhbnNhY3Rpb24oc2lnbmVkVHg6IFZldFRyYW5zYWN0aW9uKTogdm9pZCB7XG4gICAgdHJ5IHtcbiAgICAgIGlmICghc2lnbmVkVHggfHwgIXNpZ25lZFR4LmJvZHkpIHtcbiAgICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKCdJbnZhbGlkIHRyYW5zYWN0aW9uOiBtaXNzaW5nIHRyYW5zYWN0aW9uIGJvZHknKTtcbiAgICAgIH1cblxuICAgICAgLy8gU3RvcmUgdGhlIHJhdyB0cmFuc2FjdGlvblxuICAgICAgdGhpcy5yYXdUcmFuc2FjdGlvbiA9IHNpZ25lZFR4O1xuXG4gICAgICAvLyBTZXQgdHJhbnNhY3Rpb24gYm9keSBwcm9wZXJ0aWVzXG4gICAgICBjb25zdCBib2R5ID0gc2lnbmVkVHguYm9keTtcbiAgICAgIHRoaXMuY2hhaW5UYWcgPSB0eXBlb2YgYm9keS5jaGFpblRhZyA9PT0gJ251bWJlcicgPyBib2R5LmNoYWluVGFnIDogMDtcbiAgICAgIHRoaXMuYmxvY2tSZWYgPSBib2R5LmJsb2NrUmVmIHx8ICcweDAnO1xuICAgICAgdGhpcy5leHBpcmF0aW9uID0gdHlwZW9mIGJvZHkuZXhwaXJhdGlvbiA9PT0gJ251bWJlcicgPyBib2R5LmV4cGlyYXRpb24gOiA2NDtcbiAgICAgIHRoaXMuY2xhdXNlcyA9IGJvZHkuY2xhdXNlcyB8fCBbXTtcbiAgICAgIHRoaXMuZ2FzUHJpY2VDb2VmID0gdHlwZW9mIGJvZHkuZ2FzUHJpY2VDb2VmID09PSAnbnVtYmVyJyA/IGJvZHkuZ2FzUHJpY2VDb2VmIDogMTI4O1xuICAgICAgdGhpcy5nYXMgPSB0eXBlb2YgYm9keS5nYXMgPT09ICdudW1iZXInID8gYm9keS5nYXMgOiBOdW1iZXIoYm9keS5nYXMpIHx8IDA7XG4gICAgICB0aGlzLmRlcGVuZHNPbiA9IGJvZHkuZGVwZW5kc09uIHx8IG51bGw7XG4gICAgICB0aGlzLm5vbmNlID0gdHlwZW9mIGJvZHkubm9uY2UgPT09ICdudW1iZXInID8gYm9keS5ub25jZSA6IE51bWJlcihib2R5Lm5vbmNlKSB8fCAwO1xuICAgICAgLy8gU2V0IHJlY2lwaWVudHMgZnJvbSBjbGF1c2VzXG4gICAgICB0aGlzLnJlY2lwaWVudHMgPSBib2R5LmNsYXVzZXMubWFwKChjbGF1c2UpID0+ICh7XG4gICAgICAgIGFkZHJlc3M6IChjbGF1c2UudG8gfHwgJzB4MCcpLnRvU3RyaW5nKCkudG9Mb3dlckNhc2UoKSxcbiAgICAgICAgYW1vdW50OiBOdW1iZXIoY2xhdXNlLnZhbHVlKS50b1N0cmluZygpLFxuICAgICAgfSkpO1xuICAgICAgdGhpcy5sb2FkSW5wdXRzQW5kT3V0cHV0cygpO1xuXG4gICAgICAvLyBTZXQgc2VuZGVyIGFkZHJlc3NcbiAgICAgIGlmIChzaWduZWRUeC5vcmlnaW4pIHtcbiAgICAgICAgdGhpcy5zZW5kZXIgPSBzaWduZWRUeC5vcmlnaW4udG9TdHJpbmcoKS50b0xvd2VyQ2FzZSgpO1xuICAgICAgfVxuXG4gICAgICAvLyBTZXQgc2lnbmF0dXJlcyBpZiBwcmVzZW50XG4gICAgICBpZiAoc2lnbmVkVHguc2lnbmF0dXJlKSB7XG4gICAgICAgIC8vIEZpcnN0IHNpZ25hdHVyZSBpcyBzZW5kZXIncyBzaWduYXR1cmVcbiAgICAgICAgdGhpcy5zZW5kZXJTaWduYXR1cmUgPSBCdWZmZXIuZnJvbShzaWduZWRUeC5zaWduYXR1cmUuc2xpY2UoMCwgU2VjcDI1NmsxLlNJR05BVFVSRV9MRU5HVEgpKTtcblxuICAgICAgICAvLyBJZiB0aGVyZSdzIGFkZGl0aW9uYWwgc2lnbmF0dXJlIGRhdGEsIGl0J3MgdGhlIGZlZSBwYXllcidzIHNpZ25hdHVyZVxuICAgICAgICBpZiAoc2lnbmVkVHguc2lnbmF0dXJlLmxlbmd0aCA+IFNlY3AyNTZrMS5TSUdOQVRVUkVfTEVOR1RIKSB7XG4gICAgICAgICAgdGhpcy5mZWVQYXllclNpZ25hdHVyZSA9IEJ1ZmZlci5mcm9tKHNpZ25lZFR4LnNpZ25hdHVyZS5zbGljZShTZWNwMjU2azEuU0lHTkFUVVJFX0xFTkdUSCkpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKGBGYWlsZWQgdG8gZGVzZXJpYWxpemUgdHJhbnNhY3Rpb246ICR7ZS5tZXNzYWdlfWApO1xuICAgIH1cbiAgfVxuXG4gIGFkZFNlbmRlclNpZ25hdHVyZShzaWduYXR1cmU6IEJ1ZmZlcik6IHZvaWQge1xuICAgIHRoaXMuc2VuZGVyU2lnbmF0dXJlID0gc2lnbmF0dXJlO1xuICB9XG5cbiAgZ2V0RmVlUGF5ZXJQdWJLZXkoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5mZWVQYXllclB1YktleS5wdWI7XG4gIH1cblxuICBhZGRGZWVQYXllclNpZ25hdHVyZShwdWJsaWNLZXk6IFB1YmxpY0tleSwgc2lnbmF0dXJlOiBCdWZmZXIpOiB2b2lkIHtcbiAgICB0aGlzLmZlZVBheWVyUHViS2V5ID0gcHVibGljS2V5O1xuICAgIHRoaXMuZmVlUGF5ZXJTaWduYXR1cmUgPSBzaWduYXR1cmU7XG4gIH1cblxuICBhc3luYyBidWlsZCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICB0aGlzLmJ1aWxkQ2xhdXNlcygpO1xuICAgIGF3YWl0IHRoaXMuYnVpbGRSYXdUcmFuc2FjdGlvbigpO1xuICAgIHRoaXMuZ2VuZXJhdGVUeG5JZCgpO1xuICAgIHRoaXMubG9hZElucHV0c0FuZE91dHB1dHMoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSB0cmFuc2FjdGlvbiBJRCBmcm9tIHRoZSByYXcgdHJhbnNhY3Rpb24gaWYgaXQgaXMgc2lnbmVkXG4gICAqIEBwcm90ZWN0ZWRcbiAgICovXG4gIHByb3RlY3RlZCBnZW5lcmF0ZVR4bklkKCk6IHZvaWQge1xuICAgIC8vIENoZWNrIGlmIHdlIGhhdmUgYSByYXcgdHJhbnNhY3Rpb25cbiAgICBpZiAoIXRoaXMucmF3VHJhbnNhY3Rpb24pIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICAvLyBDaGVjayBpZiB0aGUgdHJhbnNhY3Rpb24gaXMgc2lnbmVkIGJ5IHZlcmlmeWluZyBzaWduYXR1cmUgZXhpc3RzXG4gICAgaWYgKCF0aGlzLnNlbmRlclNpZ25hdHVyZSB8fCAhdGhpcy5mZWVQYXllclNpZ25hdHVyZSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IGhhbGZTaWduZWRUcmFuc2FjdGlvbjogVmV0VHJhbnNhY3Rpb24gPSBWZXRUcmFuc2FjdGlvbi5vZih0aGlzLnJhd1RyYW5zYWN0aW9uLmJvZHksIHRoaXMuc2VuZGVyU2lnbmF0dXJlKTtcbiAgICBpZiAoIWhhbGZTaWduZWRUcmFuc2FjdGlvbi5zaWduYXR1cmUpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3QgZnVsbFNpZ25lZFRyYW5zYWN0aW9uOiBWZXRUcmFuc2FjdGlvbiA9IFZldFRyYW5zYWN0aW9uLm9mKFxuICAgICAgaGFsZlNpZ25lZFRyYW5zYWN0aW9uLmJvZHksXG4gICAgICBuY191dGlscy5jb25jYXRCeXRlcyhcbiAgICAgICAgLy8gRHJvcCBhbnkgcHJldmlvdXMgZ2FzIHBheWVyIHNpZ25hdHVyZS5cbiAgICAgICAgaGFsZlNpZ25lZFRyYW5zYWN0aW9uLnNpZ25hdHVyZS5zbGljZSgwLCBTZWNwMjU2azEuU0lHTkFUVVJFX0xFTkdUSCksXG4gICAgICAgIHRoaXMuZmVlUGF5ZXJTaWduYXR1cmVcbiAgICAgIClcbiAgICApO1xuICAgIGlmICghZnVsbFNpZ25lZFRyYW5zYWN0aW9uLnNpZ25hdHVyZSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0cnkge1xuICAgICAgdGhpcy5faWQgPSBmdWxsU2lnbmVkVHJhbnNhY3Rpb24uaWQudG9TdHJpbmcoKTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIGFzeW5jIGJ1aWxkUmF3VHJhbnNhY3Rpb24oKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgdHJhbnNhY3Rpb25Cb2R5OiBUcmFuc2FjdGlvbkJvZHkgPSB7XG4gICAgICBjaGFpblRhZzogdGhpcy5jaGFpblRhZyxcbiAgICAgIGJsb2NrUmVmOiB0aGlzLmJsb2NrUmVmLFxuICAgICAgZXhwaXJhdGlvbjogNjQsIC8vbW92ZSB0aGlzIHZhbHVlIHRvIGNvbnN0YW50c1xuICAgICAgY2xhdXNlczogdGhpcy5jbGF1c2VzLFxuICAgICAgZ2FzUHJpY2VDb2VmOiB0aGlzLmdhc1ByaWNlQ29lZixcbiAgICAgIGdhczogdGhpcy5nYXMsXG4gICAgICBkZXBlbmRzT246IG51bGwsXG4gICAgICBub25jZTogdGhpcy5ub25jZSxcbiAgICB9O1xuXG4gICAgaWYgKHRoaXMudHlwZSA9PT0gVHJhbnNhY3Rpb25UeXBlLlNlbmQpIHtcbiAgICAgIHRyYW5zYWN0aW9uQm9keS5yZXNlcnZlZCA9IHtcbiAgICAgICAgZmVhdHVyZXM6IDEsIC8vIG1hcmsgdHJhbnNhY3Rpb24gYXMgZGVsZWdhdGVkIGkuZS4gd2lsbCB1c2UgZ2FzIHBheWVyXG4gICAgICB9O1xuICAgIH1cblxuICAgIHRoaXMucmF3VHJhbnNhY3Rpb24gPSBWZXRUcmFuc2FjdGlvbi5vZih0cmFuc2FjdGlvbkJvZHkpO1xuICB9XG5cbiAgbG9hZElucHV0c0FuZE91dHB1dHMoKTogdm9pZCB7XG4gICAgdGhpcy5fdHlwZSA9IFRyYW5zYWN0aW9uVHlwZS5TZW5kO1xuICAgIGNvbnN0IHRvdGFsQW1vdW50ID0gdGhpcy5fcmVjaXBpZW50cy5yZWR1Y2UoXG4gICAgICAoYWNjdW11bGF0b3IsIGN1cnJlbnQpID0+IGFjY3VtdWxhdG9yLnBsdXMoY3VycmVudC5hbW91bnQpLFxuICAgICAgbmV3IEJpZ051bWJlcignMCcpXG4gICAgKTtcbiAgICB0aGlzLl9pbnB1dHMgPSBbXG4gICAgICB7XG4gICAgICAgIGFkZHJlc3M6IHRoaXMuc2VuZGVyLFxuICAgICAgICB2YWx1ZTogdG90YWxBbW91bnQudG9TdHJpbmcoKSxcbiAgICAgICAgY29pbjogdGhpcy5fY29pbkNvbmZpZy5uYW1lLFxuICAgICAgfSxcbiAgICBdO1xuICAgIHRoaXMuX291dHB1dHMgPSB0aGlzLl9yZWNpcGllbnRzLm1hcCgocmVjaXBpZW50KSA9PiB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBhZGRyZXNzOiByZWNpcGllbnQuYWRkcmVzcyxcbiAgICAgICAgdmFsdWU6IHJlY2lwaWVudC5hbW91bnQgYXMgc3RyaW5nLFxuICAgICAgICBjb2luOiB0aGlzLl9jb2luQ29uZmlnLm5hbWUsXG4gICAgICB9O1xuICAgIH0pO1xuICB9XG5cbiAgZnJvbVJhd1RyYW5zYWN0aW9uKHJhd1RyYW5zYWN0aW9uOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBsZXQgc2lnbmVkVHhuOiBWZXRUcmFuc2FjdGlvbjtcbiAgICB0cnkge1xuICAgICAgc2lnbmVkVHhuID0gdXRpbHMuZGVzZXJpYWxpemVUcmFuc2FjdGlvbihyYXdUcmFuc2FjdGlvbik7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdpbnZhbGlkIHJhdyB0cmFuc2FjdGlvbicpO1xuICAgIH1cbiAgICB0aGlzLmZyb21EZXNlcmlhbGl6ZWRTaWduZWRUcmFuc2FjdGlvbihzaWduZWRUeG4pO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHRvSnNvbigpOiBWZXRUcmFuc2FjdGlvbkRhdGEge1xuICAgIGNvbnN0IGpzb246IFZldFRyYW5zYWN0aW9uRGF0YSA9IHtcbiAgICAgIGlkOiB0aGlzLmlkLFxuICAgICAgY2hhaW5UYWc6IHRoaXMuY2hhaW5UYWcsXG4gICAgICBibG9ja1JlZjogdGhpcy5ibG9ja1JlZixcbiAgICAgIGV4cGlyYXRpb246IHRoaXMuZXhwaXJhdGlvbixcbiAgICAgIHJlY2lwaWVudHM6IHRoaXMucmVjaXBpZW50cyxcbiAgICAgIGdhc1ByaWNlQ29lZjogdGhpcy5nYXNQcmljZUNvZWYsXG4gICAgICBnYXM6IHRoaXMuZ2FzLFxuICAgICAgZGVwZW5kc09uOiB0aGlzLmRlcGVuZHNPbixcbiAgICAgIG5vbmNlOiB0aGlzLm5vbmNlLFxuICAgICAgc2VuZGVyOiB0aGlzLnNlbmRlcixcbiAgICAgIGZlZVBheWVyOiB0aGlzLmZlZVBheWVyQWRkcmVzcyxcbiAgICB9O1xuXG4gICAgcmV0dXJuIGpzb247XG4gIH1cblxuICBwdWJsaWMgZ2V0RmVlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIG5ldyBCaWdOdW1iZXIodGhpcy5nYXMpXG4gICAgICAubXVsdGlwbGllZEJ5KGdhc1ByaWNlKVxuICAgICAgLm11bHRpcGxpZWRCeShuZXcgQmlnTnVtYmVyKHRoaXMuZ2FzUHJpY2VDb2VmKS5kaXZpZGVkQnkoMjU1KS5wbHVzKDEpKVxuICAgICAgLnRvU3RyaW5nKClcbiAgICAgIC5zbGljZSgwLCAxOCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHNpZ25hYmxlUGF5bG9hZCgpOiBCdWZmZXIge1xuICAgIHJldHVybiBCdWZmZXIuZnJvbSh0aGlzLnJhd1RyYW5zYWN0aW9uLmVuY29kZWQpO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHRvQnJvYWRjYXN0Rm9ybWF0KCk6IHN0cmluZyB7XG4gICAgaWYgKCF0aGlzLnJhd1RyYW5zYWN0aW9uKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IoJ0VtcHR5IFRyYW5zYWN0aW9uJyk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLnNlcmlhbGl6ZSgpO1xuICB9XG5cbiAgc2VyaWFsaXplKCk6IHN0cmluZyB7XG4gICAgY29uc3QgaGFsZlNpZ25lZFRyYW5zYWN0aW9uOiBWZXRUcmFuc2FjdGlvbiA9IFZldFRyYW5zYWN0aW9uLm9mKHRoaXMucmF3VHJhbnNhY3Rpb24uYm9keSwgdGhpcy5zZW5kZXJTaWduYXR1cmUpO1xuICAgIGlmICghaGFsZlNpZ25lZFRyYW5zYWN0aW9uLnNpZ25hdHVyZSkge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKCdJbnZhbGlkIHNlbmRlciBzaWduYXR1cmUgaW4gaGFsZi1zaWduZWQgdHJhbnNhY3Rpb24nKTtcbiAgICB9XG4gICAgaWYgKCF0aGlzLmZlZVBheWVyU2lnbmF0dXJlKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IoJ01pc3NpbmcgZmVlIHBheWVyIHNpZ25hdHVyZScpO1xuICAgIH1cbiAgICBjb25zdCBmdWxsU2lnbmVkVHJhbnNhY3Rpb246IFZldFRyYW5zYWN0aW9uID0gVmV0VHJhbnNhY3Rpb24ub2YoXG4gICAgICBoYWxmU2lnbmVkVHJhbnNhY3Rpb24uYm9keSxcbiAgICAgIG5jX3V0aWxzLmNvbmNhdEJ5dGVzKFxuICAgICAgICAvLyBEcm9wIGFueSBwcmV2aW91cyBnYXMgcGF5ZXIgc2lnbmF0dXJlLlxuICAgICAgICBoYWxmU2lnbmVkVHJhbnNhY3Rpb24uc2lnbmF0dXJlLnNsaWNlKDAsIFNlY3AyNTZrMS5TSUdOQVRVUkVfTEVOR1RIKSxcbiAgICAgICAgdGhpcy5mZWVQYXllclNpZ25hdHVyZVxuICAgICAgKVxuICAgICk7XG4gICAgcmV0dXJuIEhleFVJbnQub2YoZnVsbFNpZ25lZFRyYW5zYWN0aW9uLmVuY29kZWQpLnRvU3RyaW5nKCk7XG4gIH1cblxuICBzdGF0aWMgZGVzZXJpYWxpemVUcmFuc2FjdGlvbihyYXdUeDogc3RyaW5nKTogVmV0VHJhbnNhY3Rpb24ge1xuICAgIHRyeSB7XG4gICAgICBpZiAoIXJhd1R4KSB7XG4gICAgICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcignUmF3IHRyYW5zYWN0aW9uIHN0cmluZyBjYW5ub3QgYmUgZW1wdHknKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiB1dGlscy5kZXNlcmlhbGl6ZVRyYW5zYWN0aW9uKHJhd1R4KTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICBpZiAoZSBpbnN0YW5jZW9mIEludmFsaWRUcmFuc2FjdGlvbkVycm9yKSB7XG4gICAgICAgIHRocm93IGU7XG4gICAgICB9XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IoYEZhaWxlZCB0byBkZXNlcmlhbGl6ZSB0cmFuc2FjdGlvbjogJHtlLm1lc3NhZ2V9YCk7XG4gICAgfVxuICB9XG5cbiAgZXhwbGFpblRyYW5zYWN0aW9uKCk6IFZldFRyYW5zYWN0aW9uRXhwbGFuYXRpb24ge1xuICAgIGNvbnN0IGRpc3BsYXlPcmRlciA9IFtcbiAgICAgICdpZCcsXG4gICAgICAnb3V0cHV0cycsXG4gICAgICAnb3V0cHV0QW1vdW50JyxcbiAgICAgICdjaGFuZ2VPdXRwdXRzJyxcbiAgICAgICdjaGFuZ2VBbW91bnQnLFxuICAgICAgJ2ZlZScsXG4gICAgICAnd2l0aGRyYXdBbW91bnQnLFxuICAgICAgJ3NlbmRlcicsXG4gICAgICAndHlwZScsXG4gICAgXTtcblxuICAgIGNvbnN0IG91dHB1dHM6IFRyYW5zYWN0aW9uUmVjaXBpZW50W10gPSB0aGlzLl9yZWNpcGllbnRzO1xuICAgIGNvbnN0IG91dHB1dEFtb3VudCA9IG91dHB1dHNcbiAgICAgIC5yZWR1Y2UoKGFjY3VtdWxhdG9yLCBjdXJyZW50KSA9PiBhY2N1bXVsYXRvci5wbHVzKGN1cnJlbnQuYW1vdW50KSwgbmV3IEJpZ051bWJlcignMCcpKVxuICAgICAgLnRvU3RyaW5nKCk7XG4gICAgcmV0dXJuIHtcbiAgICAgIGRpc3BsYXlPcmRlcixcbiAgICAgIGlkOiB0aGlzLmlkLFxuICAgICAgb3V0cHV0cyxcbiAgICAgIG91dHB1dEFtb3VudCxcbiAgICAgIGNoYW5nZU91dHB1dHM6IFtdLFxuICAgICAgY2hhbmdlQW1vdW50OiAnMCcsXG4gICAgICBmZWU6IHsgZmVlOiB0aGlzLmdldEZlZSgpIH0sXG4gICAgICBzZW5kZXI6IHRoaXMuc2VuZGVyLFxuICAgICAgdHlwZTogdGhpcy50eXBlLFxuICAgIH07XG4gIH1cbn1cbiJdfQ==
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bitgo-beta/sdk-coin-vet",
3
- "version": "1.0.0-alpha.21",
3
+ "version": "1.0.0-alpha.22",
4
4
  "description": "BitGo SDK coin library for VeChain",
5
5
  "main": "./dist/src/index.js",
6
6
  "types": "./dist/src/index.d.ts",
@@ -40,10 +40,10 @@
40
40
  ]
41
41
  },
42
42
  "dependencies": {
43
- "@bitgo-beta/abstract-eth": "1.2.3-alpha.343",
44
- "@bitgo-beta/sdk-core": "2.4.1-alpha.343",
45
- "@bitgo-beta/secp256k1": "1.0.1-alpha.301",
46
- "@bitgo-beta/statics": "10.0.1-alpha.343",
43
+ "@bitgo-beta/abstract-eth": "1.2.3-alpha.344",
44
+ "@bitgo-beta/sdk-core": "2.4.1-alpha.344",
45
+ "@bitgo-beta/secp256k1": "1.0.1-alpha.302",
46
+ "@bitgo-beta/statics": "10.0.1-alpha.344",
47
47
  "@noble/curves": "1.8.1",
48
48
  "@vechain/sdk-core": "^1.2.0-rc.3",
49
49
  "bignumber.js": "^9.1.1",
@@ -53,8 +53,8 @@
53
53
  "tweetnacl": "^1.0.3"
54
54
  },
55
55
  "devDependencies": {
56
- "@bitgo-beta/sdk-api": "1.6.1-alpha.343",
56
+ "@bitgo-beta/sdk-api": "1.6.1-alpha.344",
57
57
  "@bitgo-beta/sdk-test": "^8.0.94"
58
58
  },
59
- "gitHead": "b8e3c994a48b341a4516603cec0eb6fb3048523f"
59
+ "gitHead": "924616ca1c9521587de1543854a6a0c9a04f7072"
60
60
  }