@bitgo-beta/sdk-coin-vet 1.0.0-alpha.13 → 1.0.0-alpha.15
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.
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,14 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
## [1.6.2](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-vet@1.6.1...@bitgo/sdk-coin-vet@1.6.2) (2025-07-03)
|
|
7
|
+
|
|
8
|
+
**Note:** Version bump only for package @bitgo/sdk-coin-vet
|
|
9
|
+
|
|
10
|
+
## [1.6.1](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-vet@1.6.0...@bitgo/sdk-coin-vet@1.6.1) (2025-06-25)
|
|
11
|
+
|
|
12
|
+
**Note:** Version bump only for package @bitgo/sdk-coin-vet
|
|
13
|
+
|
|
6
14
|
# [1.6.0](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-vet@1.5.0...@bitgo/sdk-coin-vet@1.6.0) (2025-06-24)
|
|
7
15
|
|
|
8
16
|
### Features
|
|
@@ -373,7 +373,7 @@ class Transaction extends sdk_core_1.BaseTransaction {
|
|
|
373
373
|
.slice(0, 18);
|
|
374
374
|
}
|
|
375
375
|
get signablePayload() {
|
|
376
|
-
return Buffer.from(this.rawTransaction.
|
|
376
|
+
return Buffer.from(this.rawTransaction.encoded);
|
|
377
377
|
}
|
|
378
378
|
/** @inheritdoc */
|
|
379
379
|
toBroadcastFormat() {
|
|
@@ -441,4 +441,4 @@ class Transaction extends sdk_core_1.BaseTransaction {
|
|
|
441
441
|
exports.Transaction = Transaction;
|
|
442
442
|
Transaction.EMPTY_PUBLIC_KEY = Buffer.alloc(32);
|
|
443
443
|
Transaction.EMPTY_SIGNATURE = Buffer.alloc(64);
|
|
444
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL3RyYW5zYWN0aW9uL3RyYW5zYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLGdFQUFxQztBQUNyQyxtREFNOEI7QUFFOUIsZ0RBTTJCO0FBQzNCLHVFQUF5RDtBQUN6RCxxREFBNkI7QUFpQjdCLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQztBQUV0QixNQUFhLFdBQVksU0FBUSwwQkFBZTtJQXFCOUMsWUFBWSxXQUFpQztRQUMzQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDbkIsSUFBSSxDQUFDLEtBQUssR0FBRywwQkFBZSxDQUFDLElBQUksQ0FBQztRQUNsQyxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxDQUFDLDBCQUEwQjtRQUNqRCxJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztRQUN2QixJQUFJLENBQUMsV0FBVyxHQUFHLEVBQUUsQ0FBQztRQUN0QixJQUFJLENBQUMsUUFBUSxHQUFHLEVBQUUsQ0FBQztRQUNuQixJQUFJLENBQUMsYUFBYSxHQUFHLEdBQUcsQ0FBQztRQUN6QixJQUFJLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQztRQUNkLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxNQUFNLEdBQUcsR0FBRyxDQUFDO1FBQ2xCLElBQUksQ0FBQyxXQUFXLEdBQUcsRUFBRSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxlQUFlLEdBQUc7WUFDckIsR0FBRyxFQUFFLGtCQUFPLENBQUMsRUFBRSxDQUFDLFdBQVcsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLFFBQVEsRUFBRTtTQUN6RCxDQUFDO1FBQ0YsSUFBSSxDQUFDLGdCQUFnQixHQUFHLFdBQVcsQ0FBQyxlQUFlLENBQUM7UUFDcEQsSUFBSSxD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QUM7UUFDdkYsQ0FBQztJQUNILENBQUM7SUFFRCxrQkFBa0I7UUFDaEIsTUFBTSxZQUFZLEdBQUc7WUFDbkIsSUFBSTtZQUNKLFNBQVM7WUFDVCxjQUFjO1lBQ2QsZUFBZTtZQUNmLGNBQWM7WUFDZCxLQUFLO1lBQ0wsZ0JBQWdCO1lBQ2hCLFFBQVE7WUFDUixNQUFNO1NBQ1AsQ0FBQztRQUVGLE1BQU0sT0FBTyxHQUEyQixJQUFJLENBQUMsV0FBVyxDQUFDO1FBQ3pELE1BQU0sWUFBWSxHQUFHLE9BQU87YUFDekIsTUFBTSxDQUFDLENBQUMsV0FBVyxFQUFFLE9BQU8sRUFBRSxFQUFFLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUUsSUFBSSxzQkFBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDO2FBQ3RGLFFBQVEsRUFBRSxDQUFDO1FBQ2QsT0FBTztZQUNMLFlBQVk7WUFDWixFQUFFLEVBQUUsSUFBSSxDQUFDLEVBQUU7WUFDWCxPQUFPO1lBQ1AsWUFBWTtZQUNaLGFBQWEsRUFBRSxFQUFFO1lBQ2pCLFlBQVksRUFBRSxHQUFHO1lBQ2pCLEdBQUcsRUFBRSxFQUFFLEdBQUcsRUFBRSxJQUFJLENBQUMsTUFBTSxFQUFFLEVBQUU7WUFDM0IsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNO1lBQ25CLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSTtTQUNoQixDQUFDO0lBQ0osQ0FBQzs7QUF2ZUgsa0NBd2VDO0FBdGRRLDRCQUFnQixHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7QUFDcEMsMkJBQWUsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IEJpZ051bWJlciBmcm9tICdiaWdudW1iZXIuanMnO1xuaW1wb3J0IHtcbiAgQmFzZVRyYW5zYWN0aW9uLFxuICBUcmFuc2FjdGlvblR5cGUsXG4gIEludmFsaWRUcmFuc2FjdGlvbkVycm9yLFxuICBUcmFuc2FjdGlvblJlY2lwaWVudCxcbiAgUHVibGljS2V5LFxufSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5pbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvLWJldGEvc3RhdGljcyc7XG5pbXBvcnQge1xuICBUcmFuc2FjdGlvbkJvZHksXG4gIFRyYW5zYWN0aW9uQ2xhdXNlLFxuICBUcmFuc2FjdGlvbiBhcyBWZXRUcmFuc2FjdGlvbixcbiAgU2VjcDI1NmsxLFxuICBIZXhVSW50LFxufSBmcm9tICdAdmVjaGFpbi9zZGstY29yZSc7XG5pbXBvcnQgKiBhcyBuY191dGlscyBmcm9tICdAbm9ibGUvY3VydmVzL2Fic3RyYWN0L3V0aWxzJztcbmltcG9ydCB1dGlscyBmcm9tICcuLi91dGlscyc7XG5pbXBvcnQgeyBWZXRUcmFuc2FjdGlvbkV4cGxhbmF0aW9uIH0gZnJvbSAnLi4vaWZhY2UnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFZldFRyYW5zYWN0aW9uRGF0YSB7XG4gIGlkOiBzdHJpbmc7XG4gIGNoYWluVGFnOiBudW1iZXI7XG4gIGJsb2NrUmVmOiBzdHJpbmc7XG4gIGV4cGlyYXRpb246IG51bWJlcjtcbiAgZ2FzUHJpY2VDb2VmOiBudW1iZXI7XG4gIGdhczogbnVtYmVyO1xuICBkZXBlbmRzT246IHN0cmluZyB8IG51bGw7XG4gIG5vbmNlOiBudW1iZXI7XG4gIHNlbmRlcjogc3RyaW5nO1xuICBmZWVQYXllcjogc3RyaW5nO1xuICByZWNpcGllbnRzOiBUcmFuc2FjdGlvblJlY2lwaWVudFtdO1xufVxuXG5jb25zdCBnYXNQcmljZSA9IDFlMTM7XG5cbmV4cG9ydCBjbGFzcyBUcmFuc2FjdGlvbiBleHRlbmRzIEJhc2VUcmFuc2FjdGlvbiB7XG4gIHByb3RlY3RlZCBfcmF3VHJhbnNhY3Rpb246IFZldFRyYW5zYWN0aW9uO1xuICBwcm90ZWN0ZWQgX3R5cGU6IFRyYW5zYWN0aW9uVHlwZTtcbiAgcHJvdGVjdGVkIF9yZWNpcGllbnRzOiBUcmFuc2FjdGlvblJlY2lwaWVudFtdO1xuICBwcml2YXRlIF9jaGFpblRhZzogbnVtYmVyO1xuICBwcml2YXRlIF9ibG9ja1JlZjogc3RyaW5nO1xuICBwcml2YXRlIF9leHBpcmF0aW9uOiBudW1iZXI7XG4gIHByaXZhdGUgX2NsYXVzZXM6IFRyYW5zYWN0aW9uQ2xhdXNlW107XG4gIHByaXZhdGUgX2dhc1ByaWNlQ29lZjogbnVtYmVyO1xuICBwcml2YXRlIF9nYXM6IG51bWJlcjtcbiAgcHJpdmF0ZSBfZGVwZW5kc09uOiBzdHJpbmcgfCBudWxsO1xuICBwcml2YXRlIF9ub25jZTogbnVtYmVyO1xuICBwcml2YXRlIF9zZW5kZXI6IHN0cmluZztcbiAgcHJpdmF0ZSBfc2VuZGVyU2lnbmF0dXJlOiBCdWZmZXI7XG4gIHByaXZhdGUgX2ZlZVBheWVyQWRkcmVzczogc3RyaW5nO1xuICBwcml2YXRlIF9mZWVQYXllclNpZ25hdHVyZTogQnVmZmVyO1xuICBwcml2YXRlIF9mZWVQYXllclB1YktleTogUHVibGljS2V5O1xuXG4gIHN0YXRpYyBFTVBUWV9QVUJMSUNfS0VZID0gQnVmZmVyLmFsbG9jKDMyKTtcbiAgc3RhdGljIEVNUFRZX1NJR05BVFVSRSA9IEJ1ZmZlci5hbGxvYyg2NCk7XG5cbiAgY29uc3RydWN0b3IoX2NvaW5Db25maWc6IFJlYWRvbmx5PENvaW5Db25maWc+KSB7XG4gICAgc3VwZXIoX2NvaW5Db25maWcpO1xuICAgIHRoaXMuX3R5cGUgPSBUcmFuc2FjdGlvblR5cGUuU2VuZDtcbiAgICB0aGlzLl9jaGFpblRhZyA9IDB4Mjc7IC8vIEluaXRpYWxpemUgdG8gMzkgKDB4MjcpXG4gICAgdGhpcy5fYmxvY2tSZWYgPSAnMHgwJztcbiAgICB0aGlzLl9leHBpcmF0aW9uID0gNjQ7XG4gICAgdGhpcy5fY2xhdXNlcyA9IFtdO1xuICAgIHRoaXMuX2dhc1ByaWNlQ29lZiA9IDEyODtcbiAgICB0aGlzLl9nYXMgPSAwO1xuICAgIHRoaXMuX2RlcGVuZHNPbiA9IG51bGw7XG4gICAgdGhpcy5fbm9uY2UgPSAweDA7XG4gICAgdGhpcy5fcmVjaXBpZW50cyA9IFtdO1xuICAgIHRoaXMuX2ZlZVBheWVyUHViS2V5ID0ge1xuICAgICAgcHViOiBIZXhVSW50Lm9mKFRyYW5zYWN0aW9uLkVNUFRZX1BVQkxJQ19LRVkpLnRvU3RyaW5nKCksXG4gICAgfTtcbiAgICB0aGlzLl9zZW5kZXJTaWduYXR1cmUgPSBUcmFuc2FjdGlvbi5FTVBUWV9TSUdOQVRVUkU7XG4gICAgdGhpcy5fZmVlUGF5ZXJTaWduYXR1cmUgPSBUcmFuc2FjdGlvbi5FTVBUWV9TSUdOQVRVUkU7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGlkKCk6IHN0cmluZyB7XG4gICAgdGhpcy5nZW5lcmF0ZVR4bklkKCk7XG4gICAgcmV0dXJuIHRoaXMuX2lkID8/ICdVTkFWQUlMQUJMRSc7XG4gIH1cblxuICBnZXQgcmF3VHJhbnNhY3Rpb24oKTogVmV0VHJhbnNhY3Rpb24ge1xuICAgIHJldHVybiB0aGlzLl9yYXdUcmFuc2FjdGlvbjtcbiAgfVxuXG4gIHNldCByYXdUcmFuc2FjdGlvbihyYXdUeDogVmV0VHJhbnNhY3Rpb24pIHtcbiAgICB0aGlzLl9yYXdUcmFuc2FjdGlvbiA9IHJhd1R4O1xuICB9XG5cbiAgZ2V0IHR5cGUoKTogVHJhbnNhY3Rpb25UeXBlIHtcbiAgICByZXR1cm4gdGhpcy5fdHlwZTtcbiAgfVxuXG4gIHNldCB0eXBlKHR5cGU6IFRyYW5zYWN0aW9uVHlwZSkge1xuICAgIHRoaXMuX3R5cGUgPSB0eXBlO1xuICB9XG5cbiAgZ2V0IHNlbmRlcigpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9zZW5kZXI7XG4gIH1cblxuICBzZXQgc2VuZGVyKGFkZHJlc3M6IHN0cmluZykge1xuICAgIHRoaXMuX3NlbmRlciA9IGFkZHJlc3M7XG4gIH1cblxuICBnZXQgc2VuZGVyU2lnbmF0dXJlKCk6IFVpbnQ4QXJyYXkgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLl9zZW5kZXJTaWduYXR1cmU7XG4gIH1cblxuICBzZXQgc2VuZGVyU2lnbmF0dXJlKHNpZzogQnVmZmVyKSB7XG4gICAgdGhpcy5fc2VuZGVyU2lnbmF0dXJlID0gc2lnO1xuICB9XG5cbiAgZ2V0IGZlZVBheWVyQWRkcmVzcygpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9mZWVQYXllckFkZHJlc3M7XG4gIH1cblxuICBzZXQgZmVlUGF5ZXJBZGRyZXNzKGFkZHJlc3M6IHN0cmluZykge1xuICAgIHRoaXMuX2ZlZVBheWVyQWRkcmVzcyA9IGFkZHJlc3M7XG4gIH1cblxuICBnZXQgZmVlUGF5ZXJTaWduYXR1cmUoKTogVWludDhBcnJheSB7XG4gICAgcmV0dXJuIHRoaXMuX2ZlZVBheWVyU2lnbmF0dXJlO1xuICB9XG5cbiAgc2V0IGZlZVBheWVyU2lnbmF0dXJlKHNpZzogQnVmZmVyKSB7XG4gICAgdGhpcy5fZmVlUGF5ZXJTaWduYXR1cmUgPSBzaWc7XG4gIH1cblxuICBnZXQgY2hhaW5UYWcoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5fY2hhaW5UYWc7XG4gIH1cblxuICBzZXQgY2hhaW5UYWcodGFnOiBudW1iZXIpIHtcbiAgICB0aGlzLl9jaGFpblRhZyA9IHRhZztcbiAgfVxuXG4gIGdldCBibG9ja1JlZigpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9ibG9ja1JlZjtcbiAgfVxuXG4gIHNldCBibG9ja1JlZihyZWY6IHN0cmluZykge1xuICAgIHRoaXMuX2Jsb2NrUmVmID0gcmVmO1xuICB9XG5cbiAgZ2V0IGV4cGlyYXRpb24oKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5fZXhwaXJhdGlvbjtcbiAgfVxuXG4gIHNldCBleHBpcmF0aW9uKGV4cDogbnVtYmVyKSB7XG4gICAgdGhpcy5fZXhwaXJhdGlvbiA9IGV4cDtcbiAgfVxuXG4gIGdldCByZWNpcGllbnRzKCk6IFRyYW5zYWN0aW9uUmVjaXBpZW50W10ge1xuICAgIHJldHVybiB0aGlzLl9yZWNpcGllbnRzO1xuICB9XG5cbiAgc2V0IHJlY2lwaWVudHMocmVjaXBpZW50czogVHJhbnNhY3Rpb25SZWNpcGllbnRbXSkge1xuICAgIHRoaXMuX3JlY2lwaWVudHMgPSByZWNpcGllbnRzO1xuICB9XG5cbiAgZ2V0IGNsYXVzZXMoKTogVHJhbnNhY3Rpb25DbGF1c2VbXSB7XG4gICAgcmV0dXJuIHRoaXMuX2NsYXVzZXM7XG4gIH1cblxuICBzZXQgY2xhdXNlcyhjbGF1c2VzOiBUcmFuc2FjdGlvbkNsYXVzZVtdKSB7XG4gICAgdGhpcy5fY2xhdXNlcyA9IGNsYXVzZXM7XG4gIH1cblxuICBnZXQgZ2FzUHJpY2VDb2VmKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX2dhc1ByaWNlQ29lZjtcbiAgfVxuXG4gIHNldCBnYXNQcmljZUNvZWYoY29lZjogbnVtYmVyKSB7XG4gICAgdGhpcy5fZ2FzUHJpY2VDb2VmID0gY29lZjtcbiAgfVxuXG4gIGdldCBnYXMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5fZ2FzO1xuICB9XG5cbiAgc2V0IGdhcyhnOiBudW1iZXIpIHtcbiAgICB0aGlzLl9nYXMgPSBnO1xuICB9XG5cbiAgZ2V0IGRlcGVuZHNPbigpOiBzdHJpbmcgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5fZGVwZW5kc09uO1xuICB9XG5cbiAgc2V0IGRlcGVuZHNPbihkZXA6IHN0cmluZyB8IG51bGwpIHtcbiAgICB0aGlzLl9kZXBlbmRzT24gPSBkZXA7XG4gIH1cblxuICBnZXQgbm9uY2UoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5fbm9uY2U7XG4gIH1cblxuICBzZXQgbm9uY2UobjogbnVtYmVyKSB7XG4gICAgdGhpcy5fbm9uY2UgPSBuO1xuICB9XG5cbiAgZ2V0IGZlZVBheWVyUHViS2V5KCk6IFB1YmxpY0tleSB7XG4gICAgcmV0dXJuIHRoaXMuX2ZlZVBheWVyUHViS2V5O1xuICB9XG5cbiAgc2V0IGZlZVBheWVyUHViS2V5KHB1YktleTogUHVibGljS2V5KSB7XG4gICAgdGhpcy5fZmVlUGF5ZXJQdWJLZXkgPSBwdWJLZXk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IGFsbCBzaWduYXR1cmVzIGFzc29jaWF0ZWQgd2l0aCB0aGlzIHRyYW5zYWN0aW9uXG4gICAqIFJlcXVpcmVkIGJ5IEJhc2VUcmFuc2FjdGlvblxuICAgKi9cbiAgZ2V0IHNpZ25hdHVyZSgpOiBzdHJpbmdbXSB7XG4gICAgY29uc3Qgc2lnczogc3RyaW5nW10gPSBbXTtcbiAgICBpZiAodGhpcy5fc2VuZGVyU2lnbmF0dXJlKSB7XG4gICAgICBzaWdzLnB1c2goQnVmZmVyLmZyb20odGhpcy5fc2VuZGVyU2lnbmF0dXJlKS50b1N0cmluZygnaGV4JykpO1xuICAgIH1cbiAgICBpZiAodGhpcy5fZmVlUGF5ZXJTaWduYXR1cmUpIHtcbiAgICAgIHNpZ3MucHVzaChCdWZmZXIuZnJvbSh0aGlzLl9mZWVQYXllclNpZ25hdHVyZSkudG9TdHJpbmcoJ2hleCcpKTtcbiAgICB9XG4gICAgcmV0dXJuIHNpZ3M7XG4gIH1cblxuICAvKipcbiAgICogU2V0IHNpZ25hdHVyZXMgZm9yIHRoaXMgdHJhbnNhY3Rpb25cbiAgICogUmVxdWlyZWQgYnkgQmFzZVRyYW5zYWN0aW9uXG4gICAqIE5vdGU6IFRoaXMgaXMgbWFpbmx5IGZvciBjb21wYXRpYmlsaXR5IHdpdGggdGhlIGJhc2UgY2xhc3MuXG4gICAqIFByZWZlciB1c2luZyBzZW5kZXJTaWduYXR1cmUgYW5kIGZlZVBheWVyU2lnbmF0dXJlIGRpcmVjdGx5LlxuICAgKi9cbiAgc2V0IHNpZ25hdHVyZShzaWdzOiBzdHJpbmdbXSkge1xuICAgIGlmIChzaWdzLmxlbmd0aCA+IDApIHtcbiAgICAgIHRoaXMuX3NlbmRlclNpZ25hdHVyZSA9IEJ1ZmZlci5mcm9tKHNpZ3NbMF0sICdoZXgnKTtcbiAgICB9XG4gICAgaWYgKHNpZ3MubGVuZ3RoID4gMSkge1xuICAgICAgdGhpcy5fZmVlUGF5ZXJTaWduYXR1cmUgPSBCdWZmZXIuZnJvbShzaWdzWzFdLCAnaGV4Jyk7XG4gICAgfVxuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGNhblNpZ24oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2sgaWYgdGhpcyBpcyBhIGZlZSBkZWxlZ2F0ZWQgdHJhbnNhY3Rpb25cbiAgICovXG4gIGlzRmVlRGVsZWdhdGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhIXRoaXMuX2ZlZVBheWVyQWRkcmVzcztcbiAgfVxuXG4gIGFkZFJlY2lwaWVudHMoY2xhdXNlczogVHJhbnNhY3Rpb25DbGF1c2VbXSk6IHZvaWQge1xuICAgIHRoaXMuX3JlY2lwaWVudHMgPSBjbGF1c2VzLm1hcCgoY2xhdXNlKSA9PiAoe1xuICAgICAgYWRkcmVzczogKGNsYXVzZS50byB8fCAnMHgwJykudG9TdHJpbmcoKS50b0xvd2VyQ2FzZSgpLFxuICAgICAgYW1vdW50OiAoY2xhdXNlLnZhbHVlIHx8ICcwJykudG9TdHJpbmcoKSxcbiAgICB9KSk7XG4gIH1cblxuICBidWlsZENsYXVzZXMoKTogdm9pZCB7XG4gICAgdGhpcy5fY2xhdXNlcyA9IHRoaXMuX3JlY2lwaWVudHMubWFwKChyZWNpcGllbnQpID0+ICh7XG4gICAgICB0bzogcmVjaXBpZW50LmFkZHJlc3MsXG4gICAgICB2YWx1ZTogcmVjaXBpZW50LmFtb3VudCxcbiAgICAgIGRhdGE6ICcweCcsXG4gICAgfSkpO1xuICB9XG5cbiAgLyoqXG4gICAqIFBvcHVsYXRlcyB0aGUgdHJhbnNhY3Rpb24gb2JqZWN0IHdpdGggZGF0YSBmcm9tIGEgZGVzZXJpYWxpemVkIFZlQ2hhaW4gdHJhbnNhY3Rpb25cbiAgICogQHBhcmFtIHNpZ25lZFR4IC0gVGhlIGRlc2VyaWFsaXplZCBWZUNoYWluIHRyYW5zYWN0aW9uIGNvbnRhaW5pbmcgYm9keSwgc2lnbmF0dXJlcywgYW5kIG90aGVyIHRyYW5zYWN0aW9uIGRhdGFcbiAgICogQHRocm93cyB7SW52YWxpZFRyYW5zYWN0aW9uRXJyb3J9IFdoZW4gdGhlIHRyYW5zYWN0aW9uIGlzIGludmFsaWQgb3IgbWlzc2luZyByZXF1aXJlZCBkYXRhXG4gICAqL1xuICBmcm9tRGVzZXJpYWxpemVkU2lnbmVkVHJhbnNhY3Rpb24oc2lnbmVkVHg6IFZldFRyYW5zYWN0aW9uKTogdm9pZCB7XG4gICAgdHJ5IHtcbiAgICAgIGlmICghc2lnbmVkVHggfHwgIXNpZ25lZFR4LmJvZHkpIHtcbiAgICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKCdJbnZhbGlkIHRyYW5zYWN0aW9uOiBtaXNzaW5nIHRyYW5zYWN0aW9uIGJvZHknKTtcbiAgICAgIH1cblxuICAgICAgLy8gU3RvcmUgdGhlIHJhdyB0cmFuc2FjdGlvblxuICAgICAgdGhpcy5yYXdUcmFuc2FjdGlvbiA9IHNpZ25lZFR4O1xuXG4gICAgICAvLyBTZXQgdHJhbnNhY3Rpb24gYm9keSBwcm9wZXJ0aWVzXG4gICAgICBjb25zdCBib2R5ID0gc2lnbmVkVHguYm9keTtcbiAgICAgIHRoaXMuY2hhaW5UYWcgPSB0eXBlb2YgYm9keS5jaGFpblRhZyA9PT0gJ251bWJlcicgPyBib2R5LmNoYWluVGFnIDogMDtcbiAgICAgIHRoaXMuYmxvY2tSZWYgPSBib2R5LmJsb2NrUmVmIHx8ICcweDAnO1xuICAgICAgdGhpcy5leHBpcmF0aW9uID0gdHlwZW9mIGJvZHkuZXhwaXJhdGlvbiA9PT0gJ251bWJlcicgPyBib2R5LmV4cGlyYXRpb24gOiA2NDtcbiAgICAgIHRoaXMuY2xhdXNlcyA9IGJvZHkuY2xhdXNlcyB8fCBbXTtcbiAgICAgIHRoaXMuZ2FzUHJpY2VDb2VmID0gdHlwZW9mIGJvZHkuZ2FzUHJpY2VDb2VmID09PSAnbnVtYmVyJyA/IGJvZHkuZ2FzUHJpY2VDb2VmIDogMTI4O1xuICAgICAgdGhpcy5nYXMgPSB0eXBlb2YgYm9keS5nYXMgPT09ICdudW1iZXInID8gYm9keS5nYXMgOiBOdW1iZXIoYm9keS5nYXMpIHx8IDA7XG4gICAgICB0aGlzLmRlcGVuZHNPbiA9IGJvZHkuZGVwZW5kc09uIHx8IG51bGw7XG4gICAgICB0aGlzLm5vbmNlID0gdHlwZW9mIGJvZHkubm9uY2UgPT09ICdudW1iZXInID8gYm9keS5ub25jZSA6IE51bWJlcihib2R5Lm5vbmNlKSB8fCAwO1xuICAgICAgLy8gU2V0IHJlY2lwaWVudHMgZnJvbSBjbGF1c2VzXG4gICAgICB0aGlzLnJlY2lwaWVudHMgPSBib2R5LmNsYXVzZXMubWFwKChjbGF1c2UpID0+ICh7XG4gICAgICAgIGFkZHJlc3M6IChjbGF1c2UudG8gfHwgJzB4MCcpLnRvU3RyaW5nKCkudG9Mb3dlckNhc2UoKSxcbiAgICAgICAgYW1vdW50OiBOdW1iZXIoY2xhdXNlLnZhbHVlKS50b1N0cmluZygpLFxuICAgICAgfSkpO1xuICAgICAgdGhpcy5sb2FkSW5wdXRzQW5kT3V0cHV0cygpO1xuXG4gICAgICAvLyBTZXQgc2VuZGVyIGFkZHJlc3NcbiAgICAgIGlmIChzaWduZWRUeC5vcmlnaW4pIHtcbiAgICAgICAgdGhpcy5zZW5kZXIgPSBzaWduZWRUeC5vcmlnaW4udG9TdHJpbmcoKS50b0xvd2VyQ2FzZSgpO1xuICAgICAgfVxuXG4gICAgICAvLyBTZXQgc2lnbmF0dXJlcyBpZiBwcmVzZW50XG4gICAgICBpZiAoc2lnbmVkVHguc2lnbmF0dXJlKSB7XG4gICAgICAgIC8vIEZpcnN0IHNpZ25hdHVyZSBpcyBzZW5kZXIncyBzaWduYXR1cmVcbiAgICAgICAgdGhpcy5zZW5kZXJTaWduYXR1cmUgPSBCdWZmZXIuZnJvbShzaWduZWRUeC5zaWduYXR1cmUuc2xpY2UoMCwgU2VjcDI1NmsxLlNJR05BVFVSRV9MRU5HVEgpKTtcblxuICAgICAgICAvLyBJZiB0aGVyZSdzIGFkZGl0aW9uYWwgc2lnbmF0dXJlIGRhdGEsIGl0J3MgdGhlIGZlZSBwYXllcidzIHNpZ25hdHVyZVxuICAgICAgICBpZiAoc2lnbmVkVHguc2lnbmF0dXJlLmxlbmd0aCA+IFNlY3AyNTZrMS5TSUdOQVRVUkVfTEVOR1RIKSB7XG4gICAgICAgICAgdGhpcy5mZWVQYXllclNpZ25hdHVyZSA9IEJ1ZmZlci5mcm9tKHNpZ25lZFR4LnNpZ25hdHVyZS5zbGljZShTZWNwMjU2azEuU0lHTkFUVVJFX0xFTkdUSCkpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKGBGYWlsZWQgdG8gZGVzZXJpYWxpemUgdHJhbnNhY3Rpb246ICR7ZS5tZXNzYWdlfWApO1xuICAgIH1cbiAgfVxuXG4gIGFkZFNlbmRlclNpZ25hdHVyZShzaWduYXR1cmU6IEJ1ZmZlcik6IHZvaWQge1xuICAgIHRoaXMuc2VuZGVyU2lnbmF0dXJlID0gc2lnbmF0dXJlO1xuICB9XG5cbiAgZ2V0RmVlUGF5ZXJQdWJLZXkoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5mZWVQYXllclB1YktleS5wdWI7XG4gIH1cblxuICBhZGRGZWVQYXllclNpZ25hdHVyZShwdWJsaWNLZXk6IFB1YmxpY0tleSwgc2lnbmF0dXJlOiBCdWZmZXIpOiB2b2lkIHtcbiAgICB0aGlzLmZlZVBheWVyUHViS2V5ID0gcHVibGljS2V5O1xuICAgIHRoaXMuZmVlUGF5ZXJTaWduYXR1cmUgPSBzaWduYXR1cmU7XG4gIH1cblxuICBhc3luYyBidWlsZCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICB0aGlzLmJ1aWxkQ2xhdXNlcygpO1xuICAgIGF3YWl0IHRoaXMuYnVpbGRSYXdUcmFuc2FjdGlvbigpO1xuICAgIHRoaXMuZ2VuZXJhdGVUeG5JZCgpO1xuICAgIHRoaXMubG9hZElucHV0c0FuZE91dHB1dHMoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSB0cmFuc2FjdGlvbiBJRCBmcm9tIHRoZSByYXcgdHJhbnNhY3Rpb24gaWYgaXQgaXMgc2lnbmVkXG4gICAqIEBwcml2YXRlXG4gICAqL1xuICBwcml2YXRlIGdlbmVyYXRlVHhuSWQoKTogdm9pZCB7XG4gICAgLy8gQ2hlY2sgaWYgd2UgaGF2ZSBhIHJhdyB0cmFuc2FjdGlvblxuICAgIGlmICghdGhpcy5yYXdUcmFuc2FjdGlvbikge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIC8vIENoZWNrIGlmIHRoZSB0cmFuc2FjdGlvbiBpcyBzaWduZWQgYnkgdmVyaWZ5aW5nIHNpZ25hdHVyZSBleGlzdHNcbiAgICBpZiAoIXRoaXMuc2VuZGVyU2lnbmF0dXJlIHx8ICF0aGlzLmZlZVBheWVyU2lnbmF0dXJlKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgaGFsZlNpZ25lZFRyYW5zYWN0aW9uOiBWZXRUcmFuc2FjdGlvbiA9IFZldFRyYW5zYWN0aW9uLm9mKHRoaXMucmF3VHJhbnNhY3Rpb24uYm9keSwgdGhpcy5zZW5kZXJTaWduYXR1cmUpO1xuICAgIGlmICghaGFsZlNpZ25lZFRyYW5zYWN0aW9uLnNpZ25hdHVyZSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBmdWxsU2lnbmVkVHJhbnNhY3Rpb246IFZldFRyYW5zYWN0aW9uID0gVmV0VHJhbnNhY3Rpb24ub2YoXG4gICAgICBoYWxmU2lnbmVkVHJhbnNhY3Rpb24uYm9keSxcbiAgICAgIG5jX3V0aWxzLmNvbmNhdEJ5dGVzKFxuICAgICAgICAvLyBEcm9wIGFueSBwcmV2aW91cyBnYXMgcGF5ZXIgc2lnbmF0dXJlLlxuICAgICAgICBoYWxmU2lnbmVkVHJhbnNhY3Rpb24uc2lnbmF0dXJlLnNsaWNlKDAsIFNlY3AyNTZrMS5TSUdOQVRVUkVfTEVOR1RIKSxcbiAgICAgICAgdGhpcy5mZWVQYXllclNpZ25hdHVyZVxuICAgICAgKVxuICAgICk7XG4gICAgaWYgKCFmdWxsU2lnbmVkVHJhbnNhY3Rpb24uc2lnbmF0dXJlKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRyeSB7XG4gICAgICB0aGlzLl9pZCA9IGZ1bGxTaWduZWRUcmFuc2FjdGlvbi5pZC50b1N0cmluZygpO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgYXN5bmMgYnVpbGRSYXdUcmFuc2FjdGlvbigpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCB0cmFuc2FjdGlvbkJvZHk6IFRyYW5zYWN0aW9uQm9keSA9IHtcbiAgICAgIGNoYWluVGFnOiB0aGlzLmNoYWluVGFnLFxuICAgICAgYmxvY2tSZWY6IHRoaXMuYmxvY2tSZWYsXG4gICAgICBleHBpcmF0aW9uOiA2NCwgLy9tb3ZlIHRoaXMgdmFsdWUgdG8gY29uc3RhbnRzXG4gICAgICBjbGF1c2VzOiB0aGlzLmNsYXVzZXMsXG4gICAgICBnYXNQcmljZUNvZWY6IHRoaXMuZ2FzUHJpY2VDb2VmLFxuICAgICAgZ2FzOiB0aGlzLmdhcyxcbiAgICAgIGRlcGVuZHNPbjogbnVsbCxcbiAgICAgIG5vbmNlOiB0aGlzLm5vbmNlLFxuICAgICAgcmVzZXJ2ZWQ6IHtcbiAgICAgICAgZmVhdHVyZXM6IDEsIC8vIG1hcmsgdHJhbnNhY3Rpb24gYXMgZGVsZWdhdGVkIGkuZS4gd2lsbCB1c2UgZ2FzIHBheWVyXG4gICAgICB9LFxuICAgIH07XG5cbiAgICB0aGlzLnJhd1RyYW5zYWN0aW9uID0gVmV0VHJhbnNhY3Rpb24ub2YodHJhbnNhY3Rpb25Cb2R5KTtcbiAgfVxuXG4gIGxvYWRJbnB1dHNBbmRPdXRwdXRzKCk6IHZvaWQge1xuICAgIGNvbnN0IHRvdGFsQW1vdW50ID0gdGhpcy5fcmVjaXBpZW50cy5yZWR1Y2UoXG4gICAgICAoYWNjdW11bGF0b3IsIGN1cnJlbnQpID0+IGFjY3VtdWxhdG9yLnBsdXMoY3VycmVudC5hbW91bnQpLFxuICAgICAgbmV3IEJpZ051bWJlcignMCcpXG4gICAgKTtcbiAgICB0aGlzLl9pbnB1dHMgPSBbXG4gICAgICB7XG4gICAgICAgIGFkZHJlc3M6IHRoaXMuc2VuZGVyLFxuICAgICAgICB2YWx1ZTogdG90YWxBbW91bnQudG9TdHJpbmcoKSxcbiAgICAgICAgY29pbjogdGhpcy5fY29pbkNvbmZpZy5uYW1lLFxuICAgICAgfSxcbiAgICBdO1xuICAgIHRoaXMuX291dHB1dHMgPSB0aGlzLl9yZWNpcGllbnRzLm1hcCgocmVjaXBpZW50KSA9PiB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBhZGRyZXNzOiByZWNpcGllbnQuYWRkcmVzcyxcbiAgICAgICAgdmFsdWU6IHJlY2lwaWVudC5hbW91bnQgYXMgc3RyaW5nLFxuICAgICAgICBjb2luOiB0aGlzLl9jb2luQ29uZmlnLm5hbWUsXG4gICAgICB9O1xuICAgIH0pO1xuICB9XG5cbiAgZnJvbVJhd1RyYW5zYWN0aW9uKHJhd1RyYW5zYWN0aW9uOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBsZXQgc2lnbmVkVHhuOiBWZXRUcmFuc2FjdGlvbjtcbiAgICB0cnkge1xuICAgICAgc2lnbmVkVHhuID0gdXRpbHMuZGVzZXJpYWxpemVUcmFuc2FjdGlvbihyYXdUcmFuc2FjdGlvbik7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdpbnZhbGlkIHJhdyB0cmFuc2FjdGlvbicpO1xuICAgIH1cbiAgICB0aGlzLmZyb21EZXNlcmlhbGl6ZWRTaWduZWRUcmFuc2FjdGlvbihzaWduZWRUeG4pO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHRvSnNvbigpOiBWZXRUcmFuc2FjdGlvbkRhdGEge1xuICAgIGNvbnN0IGpzb246IFZldFRyYW5zYWN0aW9uRGF0YSA9IHtcbiAgICAgIGlkOiB0aGlzLmlkLFxuICAgICAgY2hhaW5UYWc6IHRoaXMuY2hhaW5UYWcsXG4gICAgICBibG9ja1JlZjogdGhpcy5ibG9ja1JlZixcbiAgICAgIGV4cGlyYXRpb246IHRoaXMuZXhwaXJhdGlvbixcbiAgICAgIHJlY2lwaWVudHM6IHRoaXMucmVjaXBpZW50cyxcbiAgICAgIGdhc1ByaWNlQ29lZjogdGhpcy5nYXNQcmljZUNvZWYsXG4gICAgICBnYXM6IHRoaXMuZ2FzLFxuICAgICAgZGVwZW5kc09uOiB0aGlzLmRlcGVuZHNPbixcbiAgICAgIG5vbmNlOiB0aGlzLm5vbmNlLFxuICAgICAgc2VuZGVyOiB0aGlzLnNlbmRlcixcbiAgICAgIGZlZVBheWVyOiB0aGlzLmZlZVBheWVyQWRkcmVzcyxcbiAgICB9O1xuXG4gICAgcmV0dXJuIGpzb247XG4gIH1cblxuICBwdWJsaWMgZ2V0RmVlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIG5ldyBCaWdOdW1iZXIodGhpcy5nYXMpXG4gICAgICAubXVsdGlwbGllZEJ5KGdhc1ByaWNlKVxuICAgICAgLm11bHRpcGxpZWRCeShuZXcgQmlnTnVtYmVyKHRoaXMuZ2FzUHJpY2VDb2VmKS5kaXZpZGVkQnkoMjU1KS5wbHVzKDEpKVxuICAgICAgLnRvU3RyaW5nKClcbiAgICAgIC5zbGljZSgwLCAxOCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHNpZ25hYmxlUGF5bG9hZCgpOiBCdWZmZXIge1xuICAgIHJldHVybiBCdWZmZXIuZnJvbSh0aGlzLnJhd1RyYW5zYWN0aW9uLmdldFRyYW5zYWN0aW9uSGFzaCgpLmJ5dGVzKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB0b0Jyb2FkY2FzdEZvcm1hdCgpOiBzdHJpbmcge1xuICAgIGlmICghdGhpcy5yYXdUcmFuc2FjdGlvbikge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKCdFbXB0eSBUcmFuc2FjdGlvbicpO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5zZXJpYWxpemUoKTtcbiAgfVxuXG4gIHNlcmlhbGl6ZSgpOiBzdHJpbmcge1xuICAgIGNvbnN0IGhhbGZTaWduZWRUcmFuc2FjdGlvbjogVmV0VHJhbnNhY3Rpb24gPSBWZXRUcmFuc2FjdGlvbi5vZih0aGlzLnJhd1RyYW5zYWN0aW9uLmJvZHksIHRoaXMuc2VuZGVyU2lnbmF0dXJlKTtcbiAgICBpZiAoIWhhbGZTaWduZWRUcmFuc2FjdGlvbi5zaWduYXR1cmUpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcignSW52YWxpZCBzZW5kZXIgc2lnbmF0dXJlIGluIGhhbGYtc2lnbmVkIHRyYW5zYWN0aW9uJyk7XG4gICAgfVxuICAgIGlmICghdGhpcy5mZWVQYXllclNpZ25hdHVyZSkge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKCdNaXNzaW5nIGZlZSBwYXllciBzaWduYXR1cmUnKTtcbiAgICB9XG4gICAgY29uc3QgZnVsbFNpZ25lZFRyYW5zYWN0aW9uOiBWZXRUcmFuc2FjdGlvbiA9IFZldFRyYW5zYWN0aW9uLm9mKFxuICAgICAgaGFsZlNpZ25lZFRyYW5zYWN0aW9uLmJvZHksXG4gICAgICBuY191dGlscy5jb25jYXRCeXRlcyhcbiAgICAgICAgLy8gRHJvcCBhbnkgcHJldmlvdXMgZ2FzIHBheWVyIHNpZ25hdHVyZS5cbiAgICAgICAgaGFsZlNpZ25lZFRyYW5zYWN0aW9uLnNpZ25hdHVyZS5zbGljZSgwLCBTZWNwMjU2azEuU0lHTkFUVVJFX0xFTkdUSCksXG4gICAgICAgIHRoaXMuZmVlUGF5ZXJTaWduYXR1cmVcbiAgICAgIClcbiAgICApO1xuICAgIHJldHVybiBIZXhVSW50Lm9mKGZ1bGxTaWduZWRUcmFuc2FjdGlvbi5lbmNvZGVkKS50b1N0cmluZygpO1xuICB9XG5cbiAgc3RhdGljIGRlc2VyaWFsaXplVHJhbnNhY3Rpb24ocmF3VHg6IHN0cmluZyk6IFZldFRyYW5zYWN0aW9uIHtcbiAgICB0cnkge1xuICAgICAgaWYgKCFyYXdUeCkge1xuICAgICAgICB0aHJvdyBuZXcgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IoJ1JhdyB0cmFuc2FjdGlvbiBzdHJpbmcgY2Fubm90IGJlIGVtcHR5Jyk7XG4gICAgICB9XG4gICAgICByZXR1cm4gdXRpbHMuZGVzZXJpYWxpemVUcmFuc2FjdGlvbihyYXdUeCk7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgaWYgKGUgaW5zdGFuY2VvZiBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcikge1xuICAgICAgICB0aHJvdyBlO1xuICAgICAgfVxuICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKGBGYWlsZWQgdG8gZGVzZXJpYWxpemUgdHJhbnNhY3Rpb246ICR7ZS5tZXNzYWdlfWApO1xuICAgIH1cbiAgfVxuXG4gIGV4cGxhaW5UcmFuc2FjdGlvbigpOiBWZXRUcmFuc2FjdGlvbkV4cGxhbmF0aW9uIHtcbiAgICBjb25zdCBkaXNwbGF5T3JkZXIgPSBbXG4gICAgICAnaWQnLFxuICAgICAgJ291dHB1dHMnLFxuICAgICAgJ291dHB1dEFtb3VudCcsXG4gICAgICAnY2hhbmdlT3V0cHV0cycsXG4gICAgICAnY2hhbmdlQW1vdW50JyxcbiAgICAgICdmZWUnLFxuICAgICAgJ3dpdGhkcmF3QW1vdW50JyxcbiAgICAgICdzZW5kZXInLFxuICAgICAgJ3R5cGUnLFxuICAgIF07XG5cbiAgICBjb25zdCBvdXRwdXRzOiBUcmFuc2FjdGlvblJlY2lwaWVudFtdID0gdGhpcy5fcmVjaXBpZW50cztcbiAgICBjb25zdCBvdXRwdXRBbW91bnQgPSBvdXRwdXRzXG4gICAgICAucmVkdWNlKChhY2N1bXVsYXRvciwgY3VycmVudCkgPT4gYWNjdW11bGF0b3IucGx1cyhjdXJyZW50LmFtb3VudCksIG5ldyBCaWdOdW1iZXIoJzAnKSlcbiAgICAgIC50b1N0cmluZygpO1xuICAgIHJldHVybiB7XG4gICAgICBkaXNwbGF5T3JkZXIsXG4gICAgICBpZDogdGhpcy5pZCxcbiAgICAgIG91dHB1dHMsXG4gICAgICBvdXRwdXRBbW91bnQsXG4gICAgICBjaGFuZ2VPdXRwdXRzOiBbXSxcbiAgICAgIGNoYW5nZUFtb3VudDogJzAnLFxuICAgICAgZmVlOiB7IGZlZTogdGhpcy5nZXRGZWUoKSB9LFxuICAgICAgc2VuZGVyOiB0aGlzLnNlbmRlcixcbiAgICAgIHR5cGU6IHRoaXMudHlwZSxcbiAgICB9O1xuICB9XG59XG4iXX0=
|
|
444
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL3RyYW5zYWN0aW9uL3RyYW5zYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLGdFQUFxQztBQUNyQyxtREFNOEI7QUFFOUIsZ0RBTTJCO0FBQzNCLHVFQUF5RDtBQUN6RCxxREFBNkI7QUFpQjdCLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQztBQUV0QixNQUFhLFdBQVksU0FBUSwwQkFBZTtJQXFCOUMsWUFBWSxXQUFpQztRQUMzQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDbkIsSUFBSSxDQUFDLEtBQUssR0FBRywwQkFBZSxDQUFDLElBQUksQ0FBQztRQUNsQyxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxDQUFDLDBCQUEwQjtRQUNqRCxJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztRQUN2QixJQUFJLENBQUMsV0FBVyxHQUFHLEVBQUUsQ0FBQztRQUN0QixJQUFJLENBQUMsUUFBUSxHQUFHLEVBQUUsQ0FBQztRQUNuQixJQUFJLENBQUMsYUFBYSxHQUFHLEdBQUcsQ0FBQztRQUN6QixJQUFJLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQztRQUNkLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxNQUFNLEdBQUcsR0FBRyxDQUFDO1FBQ2xCLElBQUksQ0FBQyxXQUFXLEdBQUcsRUFBRSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxlQUFlLEdBQUc7WUFDckIsR0FBRyxFQUFFLGtCQUFPLENBQUMsRUFBRSxDQUFDLFdBQVcsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLFFBQVEsRUFBRTtTQUN6RCxDQUFDO1FBQ0YsSUFBSSxDQUFDLGdCQUFnQixHQUFHLFdBQVcsQ0FBQyxlQUFlLENBQUM7UUFDcEQsSUFBSSxD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SCxDQUFDO0lBRUQsa0JBQWtCO1FBQ2hCLE1BQU0sWUFBWSxHQUFHO1lBQ25CLElBQUk7WUFDSixTQUFTO1lBQ1QsY0FBYztZQUNkLGVBQWU7WUFDZixjQUFjO1lBQ2QsS0FBSztZQUNMLGdCQUFnQjtZQUNoQixRQUFRO1lBQ1IsTUFBTTtTQUNQLENBQUM7UUFFRixNQUFNLE9BQU8sR0FBMkIsSUFBSSxDQUFDLFdBQVcsQ0FBQztRQUN6RCxNQUFNLFlBQVksR0FBRyxPQUFPO2FBQ3pCLE1BQU0sQ0FBQyxDQUFDLFdBQVcsRUFBRSxPQUFPLEVBQUUsRUFBRSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFLElBQUksc0JBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQzthQUN0RixRQUFRLEVBQUUsQ0FBQztRQUNkLE9BQU87WUFDTCxZQUFZO1lBQ1osRUFBRSxFQUFFLElBQUksQ0FBQyxFQUFFO1lBQ1gsT0FBTztZQUNQLFlBQVk7WUFDWixhQUFhLEVBQUUsRUFBRTtZQUNqQixZQUFZLEVBQUUsR0FBRztZQUNqQixHQUFHLEVBQUUsRUFBRSxHQUFHLEVBQUUsSUFBSSxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQzNCLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTTtZQUNuQixJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUk7U0FDaEIsQ0FBQztJQUNKLENBQUM7O0FBdmVILGtDQXdlQztBQXRkUSw0QkFBZ0IsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0FBQ3BDLDJCQUFlLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBCaWdOdW1iZXIgZnJvbSAnYmlnbnVtYmVyLmpzJztcbmltcG9ydCB7XG4gIEJhc2VUcmFuc2FjdGlvbixcbiAgVHJhbnNhY3Rpb25UeXBlLFxuICBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcixcbiAgVHJhbnNhY3Rpb25SZWNpcGllbnQsXG4gIFB1YmxpY0tleSxcbn0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvcmUnO1xuaW1wb3J0IHsgQmFzZUNvaW4gYXMgQ29pbkNvbmZpZyB9IGZyb20gJ0BiaXRnby1iZXRhL3N0YXRpY3MnO1xuaW1wb3J0IHtcbiAgVHJhbnNhY3Rpb25Cb2R5LFxuICBUcmFuc2FjdGlvbkNsYXVzZSxcbiAgVHJhbnNhY3Rpb24gYXMgVmV0VHJhbnNhY3Rpb24sXG4gIFNlY3AyNTZrMSxcbiAgSGV4VUludCxcbn0gZnJvbSAnQHZlY2hhaW4vc2RrLWNvcmUnO1xuaW1wb3J0ICogYXMgbmNfdXRpbHMgZnJvbSAnQG5vYmxlL2N1cnZlcy9hYnN0cmFjdC91dGlscyc7XG5pbXBvcnQgdXRpbHMgZnJvbSAnLi4vdXRpbHMnO1xuaW1wb3J0IHsgVmV0VHJhbnNhY3Rpb25FeHBsYW5hdGlvbiB9IGZyb20gJy4uL2lmYWNlJztcblxuZXhwb3J0IGludGVyZmFjZSBWZXRUcmFuc2FjdGlvbkRhdGEge1xuICBpZDogc3RyaW5nO1xuICBjaGFpblRhZzogbnVtYmVyO1xuICBibG9ja1JlZjogc3RyaW5nO1xuICBleHBpcmF0aW9uOiBudW1iZXI7XG4gIGdhc1ByaWNlQ29lZjogbnVtYmVyO1xuICBnYXM6IG51bWJlcjtcbiAgZGVwZW5kc09uOiBzdHJpbmcgfCBudWxsO1xuICBub25jZTogbnVtYmVyO1xuICBzZW5kZXI6IHN0cmluZztcbiAgZmVlUGF5ZXI6IHN0cmluZztcbiAgcmVjaXBpZW50czogVHJhbnNhY3Rpb25SZWNpcGllbnRbXTtcbn1cblxuY29uc3QgZ2FzUHJpY2UgPSAxZTEzO1xuXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb24gZXh0ZW5kcyBCYXNlVHJhbnNhY3Rpb24ge1xuICBwcm90ZWN0ZWQgX3Jhd1RyYW5zYWN0aW9uOiBWZXRUcmFuc2FjdGlvbjtcbiAgcHJvdGVjdGVkIF90eXBlOiBUcmFuc2FjdGlvblR5cGU7XG4gIHByb3RlY3RlZCBfcmVjaXBpZW50czogVHJhbnNhY3Rpb25SZWNpcGllbnRbXTtcbiAgcHJpdmF0ZSBfY2hhaW5UYWc6IG51bWJlcjtcbiAgcHJpdmF0ZSBfYmxvY2tSZWY6IHN0cmluZztcbiAgcHJpdmF0ZSBfZXhwaXJhdGlvbjogbnVtYmVyO1xuICBwcml2YXRlIF9jbGF1c2VzOiBUcmFuc2FjdGlvbkNsYXVzZVtdO1xuICBwcml2YXRlIF9nYXNQcmljZUNvZWY6IG51bWJlcjtcbiAgcHJpdmF0ZSBfZ2FzOiBudW1iZXI7XG4gIHByaXZhdGUgX2RlcGVuZHNPbjogc3RyaW5nIHwgbnVsbDtcbiAgcHJpdmF0ZSBfbm9uY2U6IG51bWJlcjtcbiAgcHJpdmF0ZSBfc2VuZGVyOiBzdHJpbmc7XG4gIHByaXZhdGUgX3NlbmRlclNpZ25hdHVyZTogQnVmZmVyO1xuICBwcml2YXRlIF9mZWVQYXllckFkZHJlc3M6IHN0cmluZztcbiAgcHJpdmF0ZSBfZmVlUGF5ZXJTaWduYXR1cmU6IEJ1ZmZlcjtcbiAgcHJpdmF0ZSBfZmVlUGF5ZXJQdWJLZXk6IFB1YmxpY0tleTtcblxuICBzdGF0aWMgRU1QVFlfUFVCTElDX0tFWSA9IEJ1ZmZlci5hbGxvYygzMik7XG4gIHN0YXRpYyBFTVBUWV9TSUdOQVRVUkUgPSBCdWZmZXIuYWxsb2MoNjQpO1xuXG4gIGNvbnN0cnVjdG9yKF9jb2luQ29uZmlnOiBSZWFkb25seTxDb2luQ29uZmlnPikge1xuICAgIHN1cGVyKF9jb2luQ29uZmlnKTtcbiAgICB0aGlzLl90eXBlID0gVHJhbnNhY3Rpb25UeXBlLlNlbmQ7XG4gICAgdGhpcy5fY2hhaW5UYWcgPSAweDI3OyAvLyBJbml0aWFsaXplIHRvIDM5ICgweDI3KVxuICAgIHRoaXMuX2Jsb2NrUmVmID0gJzB4MCc7XG4gICAgdGhpcy5fZXhwaXJhdGlvbiA9IDY0O1xuICAgIHRoaXMuX2NsYXVzZXMgPSBbXTtcbiAgICB0aGlzLl9nYXNQcmljZUNvZWYgPSAxMjg7XG4gICAgdGhpcy5fZ2FzID0gMDtcbiAgICB0aGlzLl9kZXBlbmRzT24gPSBudWxsO1xuICAgIHRoaXMuX25vbmNlID0gMHgwO1xuICAgIHRoaXMuX3JlY2lwaWVudHMgPSBbXTtcbiAgICB0aGlzLl9mZWVQYXllclB1YktleSA9IHtcbiAgICAgIHB1YjogSGV4VUludC5vZihUcmFuc2FjdGlvbi5FTVBUWV9QVUJMSUNfS0VZKS50b1N0cmluZygpLFxuICAgIH07XG4gICAgdGhpcy5fc2VuZGVyU2lnbmF0dXJlID0gVHJhbnNhY3Rpb24uRU1QVFlfU0lHTkFUVVJFO1xuICAgIHRoaXMuX2ZlZVBheWVyU2lnbmF0dXJlID0gVHJhbnNhY3Rpb24uRU1QVFlfU0lHTkFUVVJFO1xuICB9XG5cbiAgcHVibGljIGdldCBpZCgpOiBzdHJpbmcge1xuICAgIHRoaXMuZ2VuZXJhdGVUeG5JZCgpO1xuICAgIHJldHVybiB0aGlzLl9pZCA/PyAnVU5BVkFJTEFCTEUnO1xuICB9XG5cbiAgZ2V0IHJhd1RyYW5zYWN0aW9uKCk6IFZldFRyYW5zYWN0aW9uIHtcbiAgICByZXR1cm4gdGhpcy5fcmF3VHJhbnNhY3Rpb247XG4gIH1cblxuICBzZXQgcmF3VHJhbnNhY3Rpb24ocmF3VHg6IFZldFRyYW5zYWN0aW9uKSB7XG4gICAgdGhpcy5fcmF3VHJhbnNhY3Rpb24gPSByYXdUeDtcbiAgfVxuXG4gIGdldCB0eXBlKCk6IFRyYW5zYWN0aW9uVHlwZSB7XG4gICAgcmV0dXJuIHRoaXMuX3R5cGU7XG4gIH1cblxuICBzZXQgdHlwZSh0eXBlOiBUcmFuc2FjdGlvblR5cGUpIHtcbiAgICB0aGlzLl90eXBlID0gdHlwZTtcbiAgfVxuXG4gIGdldCBzZW5kZXIoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fc2VuZGVyO1xuICB9XG5cbiAgc2V0IHNlbmRlcihhZGRyZXNzOiBzdHJpbmcpIHtcbiAgICB0aGlzLl9zZW5kZXIgPSBhZGRyZXNzO1xuICB9XG5cbiAgZ2V0IHNlbmRlclNpZ25hdHVyZSgpOiBVaW50OEFycmF5IHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5fc2VuZGVyU2lnbmF0dXJlO1xuICB9XG5cbiAgc2V0IHNlbmRlclNpZ25hdHVyZShzaWc6IEJ1ZmZlcikge1xuICAgIHRoaXMuX3NlbmRlclNpZ25hdHVyZSA9IHNpZztcbiAgfVxuXG4gIGdldCBmZWVQYXllckFkZHJlc3MoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fZmVlUGF5ZXJBZGRyZXNzO1xuICB9XG5cbiAgc2V0IGZlZVBheWVyQWRkcmVzcyhhZGRyZXNzOiBzdHJpbmcpIHtcbiAgICB0aGlzLl9mZWVQYXllckFkZHJlc3MgPSBhZGRyZXNzO1xuICB9XG5cbiAgZ2V0IGZlZVBheWVyU2lnbmF0dXJlKCk6IFVpbnQ4QXJyYXkge1xuICAgIHJldHVybiB0aGlzLl9mZWVQYXllclNpZ25hdHVyZTtcbiAgfVxuXG4gIHNldCBmZWVQYXllclNpZ25hdHVyZShzaWc6IEJ1ZmZlcikge1xuICAgIHRoaXMuX2ZlZVBheWVyU2lnbmF0dXJlID0gc2lnO1xuICB9XG5cbiAgZ2V0IGNoYWluVGFnKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX2NoYWluVGFnO1xuICB9XG5cbiAgc2V0IGNoYWluVGFnKHRhZzogbnVtYmVyKSB7XG4gICAgdGhpcy5fY2hhaW5UYWcgPSB0YWc7XG4gIH1cblxuICBnZXQgYmxvY2tSZWYoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fYmxvY2tSZWY7XG4gIH1cblxuICBzZXQgYmxvY2tSZWYocmVmOiBzdHJpbmcpIHtcbiAgICB0aGlzLl9ibG9ja1JlZiA9IHJlZjtcbiAgfVxuXG4gIGdldCBleHBpcmF0aW9uKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX2V4cGlyYXRpb247XG4gIH1cblxuICBzZXQgZXhwaXJhdGlvbihleHA6IG51bWJlcikge1xuICAgIHRoaXMuX2V4cGlyYXRpb24gPSBleHA7XG4gIH1cblxuICBnZXQgcmVjaXBpZW50cygpOiBUcmFuc2FjdGlvblJlY2lwaWVudFtdIHtcbiAgICByZXR1cm4gdGhpcy5fcmVjaXBpZW50cztcbiAgfVxuXG4gIHNldCByZWNpcGllbnRzKHJlY2lwaWVudHM6IFRyYW5zYWN0aW9uUmVjaXBpZW50W10pIHtcbiAgICB0aGlzLl9yZWNpcGllbnRzID0gcmVjaXBpZW50cztcbiAgfVxuXG4gIGdldCBjbGF1c2VzKCk6IFRyYW5zYWN0aW9uQ2xhdXNlW10ge1xuICAgIHJldHVybiB0aGlzLl9jbGF1c2VzO1xuICB9XG5cbiAgc2V0IGNsYXVzZXMoY2xhdXNlczogVHJhbnNhY3Rpb25DbGF1c2VbXSkge1xuICAgIHRoaXMuX2NsYXVzZXMgPSBjbGF1c2VzO1xuICB9XG5cbiAgZ2V0IGdhc1ByaWNlQ29lZigpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLl9nYXNQcmljZUNvZWY7XG4gIH1cblxuICBzZXQgZ2FzUHJpY2VDb2VmKGNvZWY6IG51bWJlcikge1xuICAgIHRoaXMuX2dhc1ByaWNlQ29lZiA9IGNvZWY7XG4gIH1cblxuICBnZXQgZ2FzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX2dhcztcbiAgfVxuXG4gIHNldCBnYXMoZzogbnVtYmVyKSB7XG4gICAgdGhpcy5fZ2FzID0gZztcbiAgfVxuXG4gIGdldCBkZXBlbmRzT24oKTogc3RyaW5nIHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuX2RlcGVuZHNPbjtcbiAgfVxuXG4gIHNldCBkZXBlbmRzT24oZGVwOiBzdHJpbmcgfCBudWxsKSB7XG4gICAgdGhpcy5fZGVwZW5kc09uID0gZGVwO1xuICB9XG5cbiAgZ2V0IG5vbmNlKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX25vbmNlO1xuICB9XG5cbiAgc2V0IG5vbmNlKG46IG51bWJlcikge1xuICAgIHRoaXMuX25vbmNlID0gbjtcbiAgfVxuXG4gIGdldCBmZWVQYXllclB1YktleSgpOiBQdWJsaWNLZXkge1xuICAgIHJldHVybiB0aGlzLl9mZWVQYXllclB1YktleTtcbiAgfVxuXG4gIHNldCBmZWVQYXllclB1YktleShwdWJLZXk6IFB1YmxpY0tleSkge1xuICAgIHRoaXMuX2ZlZVBheWVyUHViS2V5ID0gcHViS2V5O1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBhbGwgc2lnbmF0dXJlcyBhc3NvY2lhdGVkIHdpdGggdGhpcyB0cmFuc2FjdGlvblxuICAgKiBSZXF1aXJlZCBieSBCYXNlVHJhbnNhY3Rpb25cbiAgICovXG4gIGdldCBzaWduYXR1cmUoKTogc3RyaW5nW10ge1xuICAgIGNvbnN0IHNpZ3M6IHN0cmluZ1tdID0gW107XG4gICAgaWYgKHRoaXMuX3NlbmRlclNpZ25hdHVyZSkge1xuICAgICAgc2lncy5wdXNoKEJ1ZmZlci5mcm9tKHRoaXMuX3NlbmRlclNpZ25hdHVyZSkudG9TdHJpbmcoJ2hleCcpKTtcbiAgICB9XG4gICAgaWYgKHRoaXMuX2ZlZVBheWVyU2lnbmF0dXJlKSB7XG4gICAgICBzaWdzLnB1c2goQnVmZmVyLmZyb20odGhpcy5fZmVlUGF5ZXJTaWduYXR1cmUpLnRvU3RyaW5nKCdoZXgnKSk7XG4gICAgfVxuICAgIHJldHVybiBzaWdzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCBzaWduYXR1cmVzIGZvciB0aGlzIHRyYW5zYWN0aW9uXG4gICAqIFJlcXVpcmVkIGJ5IEJhc2VUcmFuc2FjdGlvblxuICAgKiBOb3RlOiBUaGlzIGlzIG1haW5seSBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIHRoZSBiYXNlIGNsYXNzLlxuICAgKiBQcmVmZXIgdXNpbmcgc2VuZGVyU2lnbmF0dXJlIGFuZCBmZWVQYXllclNpZ25hdHVyZSBkaXJlY3RseS5cbiAgICovXG4gIHNldCBzaWduYXR1cmUoc2lnczogc3RyaW5nW10pIHtcbiAgICBpZiAoc2lncy5sZW5ndGggPiAwKSB7XG4gICAgICB0aGlzLl9zZW5kZXJTaWduYXR1cmUgPSBCdWZmZXIuZnJvbShzaWdzWzBdLCAnaGV4Jyk7XG4gICAgfVxuICAgIGlmIChzaWdzLmxlbmd0aCA+IDEpIHtcbiAgICAgIHRoaXMuX2ZlZVBheWVyU2lnbmF0dXJlID0gQnVmZmVyLmZyb20oc2lnc1sxXSwgJ2hleCcpO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBjYW5TaWduKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrIGlmIHRoaXMgaXMgYSBmZWUgZGVsZWdhdGVkIHRyYW5zYWN0aW9uXG4gICAqL1xuICBpc0ZlZURlbGVnYXRlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISF0aGlzLl9mZWVQYXllckFkZHJlc3M7XG4gIH1cblxuICBhZGRSZWNpcGllbnRzKGNsYXVzZXM6IFRyYW5zYWN0aW9uQ2xhdXNlW10pOiB2b2lkIHtcbiAgICB0aGlzLl9yZWNpcGllbnRzID0gY2xhdXNlcy5tYXAoKGNsYXVzZSkgPT4gKHtcbiAgICAgIGFkZHJlc3M6IChjbGF1c2UudG8gfHwgJzB4MCcpLnRvU3RyaW5nKCkudG9Mb3dlckNhc2UoKSxcbiAgICAgIGFtb3VudDogKGNsYXVzZS52YWx1ZSB8fCAnMCcpLnRvU3RyaW5nKCksXG4gICAgfSkpO1xuICB9XG5cbiAgYnVpbGRDbGF1c2VzKCk6IHZvaWQge1xuICAgIHRoaXMuX2NsYXVzZXMgPSB0aGlzLl9yZWNpcGllbnRzLm1hcCgocmVjaXBpZW50KSA9PiAoe1xuICAgICAgdG86IHJlY2lwaWVudC5hZGRyZXNzLFxuICAgICAgdmFsdWU6IHJlY2lwaWVudC5hbW91bnQsXG4gICAgICBkYXRhOiAnMHgnLFxuICAgIH0pKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBQb3B1bGF0ZXMgdGhlIHRyYW5zYWN0aW9uIG9iamVjdCB3aXRoIGRhdGEgZnJvbSBhIGRlc2VyaWFsaXplZCBWZUNoYWluIHRyYW5zYWN0aW9uXG4gICAqIEBwYXJhbSBzaWduZWRUeCAtIFRoZSBkZXNlcmlhbGl6ZWQgVmVDaGFpbiB0cmFuc2FjdGlvbiBjb250YWluaW5nIGJvZHksIHNpZ25hdHVyZXMsIGFuZCBvdGhlciB0cmFuc2FjdGlvbiBkYXRhXG4gICAqIEB0aHJvd3Mge0ludmFsaWRUcmFuc2FjdGlvbkVycm9yfSBXaGVuIHRoZSB0cmFuc2FjdGlvbiBpcyBpbnZhbGlkIG9yIG1pc3NpbmcgcmVxdWlyZWQgZGF0YVxuICAgKi9cbiAgZnJvbURlc2VyaWFsaXplZFNpZ25lZFRyYW5zYWN0aW9uKHNpZ25lZFR4OiBWZXRUcmFuc2FjdGlvbik6IHZvaWQge1xuICAgIHRyeSB7XG4gICAgICBpZiAoIXNpZ25lZFR4IHx8ICFzaWduZWRUeC5ib2R5KSB7XG4gICAgICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcignSW52YWxpZCB0cmFuc2FjdGlvbjogbWlzc2luZyB0cmFuc2FjdGlvbiBib2R5Jyk7XG4gICAgICB9XG5cbiAgICAgIC8vIFN0b3JlIHRoZSByYXcgdHJhbnNhY3Rpb25cbiAgICAgIHRoaXMucmF3VHJhbnNhY3Rpb24gPSBzaWduZWRUeDtcblxuICAgICAgLy8gU2V0IHRyYW5zYWN0aW9uIGJvZHkgcHJvcGVydGllc1xuICAgICAgY29uc3QgYm9keSA9IHNpZ25lZFR4LmJvZHk7XG4gICAgICB0aGlzLmNoYWluVGFnID0gdHlwZW9mIGJvZHkuY2hhaW5UYWcgPT09ICdudW1iZXInID8gYm9keS5jaGFpblRhZyA6IDA7XG4gICAgICB0aGlzLmJsb2NrUmVmID0gYm9keS5ibG9ja1JlZiB8fCAnMHgwJztcbiAgICAgIHRoaXMuZXhwaXJhdGlvbiA9IHR5cGVvZiBib2R5LmV4cGlyYXRpb24gPT09ICdudW1iZXInID8gYm9keS5leHBpcmF0aW9uIDogNjQ7XG4gICAgICB0aGlzLmNsYXVzZXMgPSBib2R5LmNsYXVzZXMgfHwgW107XG4gICAgICB0aGlzLmdhc1ByaWNlQ29lZiA9IHR5cGVvZiBib2R5Lmdhc1ByaWNlQ29lZiA9PT0gJ251bWJlcicgPyBib2R5Lmdhc1ByaWNlQ29lZiA6IDEyODtcbiAgICAgIHRoaXMuZ2FzID0gdHlwZW9mIGJvZHkuZ2FzID09PSAnbnVtYmVyJyA/IGJvZHkuZ2FzIDogTnVtYmVyKGJvZHkuZ2FzKSB8fCAwO1xuICAgICAgdGhpcy5kZXBlbmRzT24gPSBib2R5LmRlcGVuZHNPbiB8fCBudWxsO1xuICAgICAgdGhpcy5ub25jZSA9IHR5cGVvZiBib2R5Lm5vbmNlID09PSAnbnVtYmVyJyA/IGJvZHkubm9uY2UgOiBOdW1iZXIoYm9keS5ub25jZSkgfHwgMDtcbiAgICAgIC8vIFNldCByZWNpcGllbnRzIGZyb20gY2xhdXNlc1xuICAgICAgdGhpcy5yZWNpcGllbnRzID0gYm9keS5jbGF1c2VzLm1hcCgoY2xhdXNlKSA9PiAoe1xuICAgICAgICBhZGRyZXNzOiAoY2xhdXNlLnRvIHx8ICcweDAnKS50b1N0cmluZygpLnRvTG93ZXJDYXNlKCksXG4gICAgICAgIGFtb3VudDogTnVtYmVyKGNsYXVzZS52YWx1ZSkudG9TdHJpbmcoKSxcbiAgICAgIH0pKTtcbiAgICAgIHRoaXMubG9hZElucHV0c0FuZE91dHB1dHMoKTtcblxuICAgICAgLy8gU2V0IHNlbmRlciBhZGRyZXNzXG4gICAgICBpZiAoc2lnbmVkVHgub3JpZ2luKSB7XG4gICAgICAgIHRoaXMuc2VuZGVyID0gc2lnbmVkVHgub3JpZ2luLnRvU3RyaW5nKCkudG9Mb3dlckNhc2UoKTtcbiAgICAgIH1cblxuICAgICAgLy8gU2V0IHNpZ25hdHVyZXMgaWYgcHJlc2VudFxuICAgICAgaWYgKHNpZ25lZFR4LnNpZ25hdHVyZSkge1xuICAgICAgICAvLyBGaXJzdCBzaWduYXR1cmUgaXMgc2VuZGVyJ3Mgc2lnbmF0dXJlXG4gICAgICAgIHRoaXMuc2VuZGVyU2lnbmF0dXJlID0gQnVmZmVyLmZyb20oc2lnbmVkVHguc2lnbmF0dXJlLnNsaWNlKDAsIFNlY3AyNTZrMS5TSUdOQVRVUkVfTEVOR1RIKSk7XG5cbiAgICAgICAgLy8gSWYgdGhlcmUncyBhZGRpdGlvbmFsIHNpZ25hdHVyZSBkYXRhLCBpdCdzIHRoZSBmZWUgcGF5ZXIncyBzaWduYXR1cmVcbiAgICAgICAgaWYgKHNpZ25lZFR4LnNpZ25hdHVyZS5sZW5ndGggPiBTZWNwMjU2azEuU0lHTkFUVVJFX0xFTkdUSCkge1xuICAgICAgICAgIHRoaXMuZmVlUGF5ZXJTaWduYXR1cmUgPSBCdWZmZXIuZnJvbShzaWduZWRUeC5zaWduYXR1cmUuc2xpY2UoU2VjcDI1NmsxLlNJR05BVFVSRV9MRU5HVEgpKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcihgRmFpbGVkIHRvIGRlc2VyaWFsaXplIHRyYW5zYWN0aW9uOiAke2UubWVzc2FnZX1gKTtcbiAgICB9XG4gIH1cblxuICBhZGRTZW5kZXJTaWduYXR1cmUoc2lnbmF0dXJlOiBCdWZmZXIpOiB2b2lkIHtcbiAgICB0aGlzLnNlbmRlclNpZ25hdHVyZSA9IHNpZ25hdHVyZTtcbiAgfVxuXG4gIGdldEZlZVBheWVyUHViS2V5KCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuZmVlUGF5ZXJQdWJLZXkucHViO1xuICB9XG5cbiAgYWRkRmVlUGF5ZXJTaWduYXR1cmUocHVibGljS2V5OiBQdWJsaWNLZXksIHNpZ25hdHVyZTogQnVmZmVyKTogdm9pZCB7XG4gICAgdGhpcy5mZWVQYXllclB1YktleSA9IHB1YmxpY0tleTtcbiAgICB0aGlzLmZlZVBheWVyU2lnbmF0dXJlID0gc2lnbmF0dXJlO1xuICB9XG5cbiAgYXN5bmMgYnVpbGQoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdGhpcy5idWlsZENsYXVzZXMoKTtcbiAgICBhd2FpdCB0aGlzLmJ1aWxkUmF3VHJhbnNhY3Rpb24oKTtcbiAgICB0aGlzLmdlbmVyYXRlVHhuSWQoKTtcbiAgICB0aGlzLmxvYWRJbnB1dHNBbmRPdXRwdXRzKCk7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgdHJhbnNhY3Rpb24gSUQgZnJvbSB0aGUgcmF3IHRyYW5zYWN0aW9uIGlmIGl0IGlzIHNpZ25lZFxuICAgKiBAcHJpdmF0ZVxuICAgKi9cbiAgcHJpdmF0ZSBnZW5lcmF0ZVR4bklkKCk6IHZvaWQge1xuICAgIC8vIENoZWNrIGlmIHdlIGhhdmUgYSByYXcgdHJhbnNhY3Rpb25cbiAgICBpZiAoIXRoaXMucmF3VHJhbnNhY3Rpb24pIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICAvLyBDaGVjayBpZiB0aGUgdHJhbnNhY3Rpb24gaXMgc2lnbmVkIGJ5IHZlcmlmeWluZyBzaWduYXR1cmUgZXhpc3RzXG4gICAgaWYgKCF0aGlzLnNlbmRlclNpZ25hdHVyZSB8fCAhdGhpcy5mZWVQYXllclNpZ25hdHVyZSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IGhhbGZTaWduZWRUcmFuc2FjdGlvbjogVmV0VHJhbnNhY3Rpb24gPSBWZXRUcmFuc2FjdGlvbi5vZih0aGlzLnJhd1RyYW5zYWN0aW9uLmJvZHksIHRoaXMuc2VuZGVyU2lnbmF0dXJlKTtcbiAgICBpZiAoIWhhbGZTaWduZWRUcmFuc2FjdGlvbi5zaWduYXR1cmUpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3QgZnVsbFNpZ25lZFRyYW5zYWN0aW9uOiBWZXRUcmFuc2FjdGlvbiA9IFZldFRyYW5zYWN0aW9uLm9mKFxuICAgICAgaGFsZlNpZ25lZFRyYW5zYWN0aW9uLmJvZHksXG4gICAgICBuY191dGlscy5jb25jYXRCeXRlcyhcbiAgICAgICAgLy8gRHJvcCBhbnkgcHJldmlvdXMgZ2FzIHBheWVyIHNpZ25hdHVyZS5cbiAgICAgICAgaGFsZlNpZ25lZFRyYW5zYWN0aW9uLnNpZ25hdHVyZS5zbGljZSgwLCBTZWNwMjU2azEuU0lHTkFUVVJFX0xFTkdUSCksXG4gICAgICAgIHRoaXMuZmVlUGF5ZXJTaWduYXR1cmVcbiAgICAgIClcbiAgICApO1xuICAgIGlmICghZnVsbFNpZ25lZFRyYW5zYWN0aW9uLnNpZ25hdHVyZSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0cnkge1xuICAgICAgdGhpcy5faWQgPSBmdWxsU2lnbmVkVHJhbnNhY3Rpb24uaWQudG9TdHJpbmcoKTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIGFzeW5jIGJ1aWxkUmF3VHJhbnNhY3Rpb24oKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgdHJhbnNhY3Rpb25Cb2R5OiBUcmFuc2FjdGlvbkJvZHkgPSB7XG4gICAgICBjaGFpblRhZzogdGhpcy5jaGFpblRhZyxcbiAgICAgIGJsb2NrUmVmOiB0aGlzLmJsb2NrUmVmLFxuICAgICAgZXhwaXJhdGlvbjogNjQsIC8vbW92ZSB0aGlzIHZhbHVlIHRvIGNvbnN0YW50c1xuICAgICAgY2xhdXNlczogdGhpcy5jbGF1c2VzLFxuICAgICAgZ2FzUHJpY2VDb2VmOiB0aGlzLmdhc1ByaWNlQ29lZixcbiAgICAgIGdhczogdGhpcy5nYXMsXG4gICAgICBkZXBlbmRzT246IG51bGwsXG4gICAgICBub25jZTogdGhpcy5ub25jZSxcbiAgICAgIHJlc2VydmVkOiB7XG4gICAgICAgIGZlYXR1cmVzOiAxLCAvLyBtYXJrIHRyYW5zYWN0aW9uIGFzIGRlbGVnYXRlZCBpLmUuIHdpbGwgdXNlIGdhcyBwYXllclxuICAgICAgfSxcbiAgICB9O1xuXG4gICAgdGhpcy5yYXdUcmFuc2FjdGlvbiA9IFZldFRyYW5zYWN0aW9uLm9mKHRyYW5zYWN0aW9uQm9keSk7XG4gIH1cblxuICBsb2FkSW5wdXRzQW5kT3V0cHV0cygpOiB2b2lkIHtcbiAgICBjb25zdCB0b3RhbEFtb3VudCA9IHRoaXMuX3JlY2lwaWVudHMucmVkdWNlKFxuICAgICAgKGFjY3VtdWxhdG9yLCBjdXJyZW50KSA9PiBhY2N1bXVsYXRvci5wbHVzKGN1cnJlbnQuYW1vdW50KSxcbiAgICAgIG5ldyBCaWdOdW1iZXIoJzAnKVxuICAgICk7XG4gICAgdGhpcy5faW5wdXRzID0gW1xuICAgICAge1xuICAgICAgICBhZGRyZXNzOiB0aGlzLnNlbmRlcixcbiAgICAgICAgdmFsdWU6IHRvdGFsQW1vdW50LnRvU3RyaW5nKCksXG4gICAgICAgIGNvaW46IHRoaXMuX2NvaW5Db25maWcubmFtZSxcbiAgICAgIH0sXG4gICAgXTtcbiAgICB0aGlzLl9vdXRwdXRzID0gdGhpcy5fcmVjaXBpZW50cy5tYXAoKHJlY2lwaWVudCkgPT4ge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgYWRkcmVzczogcmVjaXBpZW50LmFkZHJlc3MsXG4gICAgICAgIHZhbHVlOiByZWNpcGllbnQuYW1vdW50IGFzIHN0cmluZyxcbiAgICAgICAgY29pbjogdGhpcy5fY29pbkNvbmZpZy5uYW1lLFxuICAgICAgfTtcbiAgICB9KTtcbiAgfVxuXG4gIGZyb21SYXdUcmFuc2FjdGlvbihyYXdUcmFuc2FjdGlvbjogc3RyaW5nKTogdm9pZCB7XG4gICAgbGV0IHNpZ25lZFR4bjogVmV0VHJhbnNhY3Rpb247XG4gICAgdHJ5IHtcbiAgICAgIHNpZ25lZFR4biA9IHV0aWxzLmRlc2VyaWFsaXplVHJhbnNhY3Rpb24ocmF3VHJhbnNhY3Rpb24pO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignaW52YWxpZCByYXcgdHJhbnNhY3Rpb24nKTtcbiAgICB9XG4gICAgdGhpcy5mcm9tRGVzZXJpYWxpemVkU2lnbmVkVHJhbnNhY3Rpb24oc2lnbmVkVHhuKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB0b0pzb24oKTogVmV0VHJhbnNhY3Rpb25EYXRhIHtcbiAgICBjb25zdCBqc29uOiBWZXRUcmFuc2FjdGlvbkRhdGEgPSB7XG4gICAgICBpZDogdGhpcy5pZCxcbiAgICAgIGNoYWluVGFnOiB0aGlzLmNoYWluVGFnLFxuICAgICAgYmxvY2tSZWY6IHRoaXMuYmxvY2tSZWYsXG4gICAgICBleHBpcmF0aW9uOiB0aGlzLmV4cGlyYXRpb24sXG4gICAgICByZWNpcGllbnRzOiB0aGlzLnJlY2lwaWVudHMsXG4gICAgICBnYXNQcmljZUNvZWY6IHRoaXMuZ2FzUHJpY2VDb2VmLFxuICAgICAgZ2FzOiB0aGlzLmdhcyxcbiAgICAgIGRlcGVuZHNPbjogdGhpcy5kZXBlbmRzT24sXG4gICAgICBub25jZTogdGhpcy5ub25jZSxcbiAgICAgIHNlbmRlcjogdGhpcy5zZW5kZXIsXG4gICAgICBmZWVQYXllcjogdGhpcy5mZWVQYXllckFkZHJlc3MsXG4gICAgfTtcblxuICAgIHJldHVybiBqc29uO1xuICB9XG5cbiAgcHVibGljIGdldEZlZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiBuZXcgQmlnTnVtYmVyKHRoaXMuZ2FzKVxuICAgICAgLm11bHRpcGxpZWRCeShnYXNQcmljZSlcbiAgICAgIC5tdWx0aXBsaWVkQnkobmV3IEJpZ051bWJlcih0aGlzLmdhc1ByaWNlQ29lZikuZGl2aWRlZEJ5KDI1NSkucGx1cygxKSlcbiAgICAgIC50b1N0cmluZygpXG4gICAgICAuc2xpY2UoMCwgMTgpO1xuICB9XG5cbiAgcHVibGljIGdldCBzaWduYWJsZVBheWxvYWQoKTogQnVmZmVyIHtcbiAgICByZXR1cm4gQnVmZmVyLmZyb20odGhpcy5yYXdUcmFuc2FjdGlvbi5lbmNvZGVkKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB0b0Jyb2FkY2FzdEZvcm1hdCgpOiBzdHJpbmcge1xuICAgIGlmICghdGhpcy5yYXdUcmFuc2FjdGlvbikge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKCdFbXB0eSBUcmFuc2FjdGlvbicpO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5zZXJpYWxpemUoKTtcbiAgfVxuXG4gIHNlcmlhbGl6ZSgpOiBzdHJpbmcge1xuICAgIGNvbnN0IGhhbGZTaWduZWRUcmFuc2FjdGlvbjogVmV0VHJhbnNhY3Rpb24gPSBWZXRUcmFuc2FjdGlvbi5vZih0aGlzLnJhd1RyYW5zYWN0aW9uLmJvZHksIHRoaXMuc2VuZGVyU2lnbmF0dXJlKTtcbiAgICBpZiAoIWhhbGZTaWduZWRUcmFuc2FjdGlvbi5zaWduYXR1cmUpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcignSW52YWxpZCBzZW5kZXIgc2lnbmF0dXJlIGluIGhhbGYtc2lnbmVkIHRyYW5zYWN0aW9uJyk7XG4gICAgfVxuICAgIGlmICghdGhpcy5mZWVQYXllclNpZ25hdHVyZSkge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKCdNaXNzaW5nIGZlZSBwYXllciBzaWduYXR1cmUnKTtcbiAgICB9XG4gICAgY29uc3QgZnVsbFNpZ25lZFRyYW5zYWN0aW9uOiBWZXRUcmFuc2FjdGlvbiA9IFZldFRyYW5zYWN0aW9uLm9mKFxuICAgICAgaGFsZlNpZ25lZFRyYW5zYWN0aW9uLmJvZHksXG4gICAgICBuY191dGlscy5jb25jYXRCeXRlcyhcbiAgICAgICAgLy8gRHJvcCBhbnkgcHJldmlvdXMgZ2FzIHBheWVyIHNpZ25hdHVyZS5cbiAgICAgICAgaGFsZlNpZ25lZFRyYW5zYWN0aW9uLnNpZ25hdHVyZS5zbGljZSgwLCBTZWNwMjU2azEuU0lHTkFUVVJFX0xFTkdUSCksXG4gICAgICAgIHRoaXMuZmVlUGF5ZXJTaWduYXR1cmVcbiAgICAgIClcbiAgICApO1xuICAgIHJldHVybiBIZXhVSW50Lm9mKGZ1bGxTaWduZWRUcmFuc2FjdGlvbi5lbmNvZGVkKS50b1N0cmluZygpO1xuICB9XG5cbiAgc3RhdGljIGRlc2VyaWFsaXplVHJhbnNhY3Rpb24ocmF3VHg6IHN0cmluZyk6IFZldFRyYW5zYWN0aW9uIHtcbiAgICB0cnkge1xuICAgICAgaWYgKCFyYXdUeCkge1xuICAgICAgICB0aHJvdyBuZXcgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IoJ1JhdyB0cmFuc2FjdGlvbiBzdHJpbmcgY2Fubm90IGJlIGVtcHR5Jyk7XG4gICAgICB9XG4gICAgICByZXR1cm4gdXRpbHMuZGVzZXJpYWxpemVUcmFuc2FjdGlvbihyYXdUeCk7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgaWYgKGUgaW5zdGFuY2VvZiBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcikge1xuICAgICAgICB0aHJvdyBlO1xuICAgICAgfVxuICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKGBGYWlsZWQgdG8gZGVzZXJpYWxpemUgdHJhbnNhY3Rpb246ICR7ZS5tZXNzYWdlfWApO1xuICAgIH1cbiAgfVxuXG4gIGV4cGxhaW5UcmFuc2FjdGlvbigpOiBWZXRUcmFuc2FjdGlvbkV4cGxhbmF0aW9uIHtcbiAgICBjb25zdCBkaXNwbGF5T3JkZXIgPSBbXG4gICAgICAnaWQnLFxuICAgICAgJ291dHB1dHMnLFxuICAgICAgJ291dHB1dEFtb3VudCcsXG4gICAgICAnY2hhbmdlT3V0cHV0cycsXG4gICAgICAnY2hhbmdlQW1vdW50JyxcbiAgICAgICdmZWUnLFxuICAgICAgJ3dpdGhkcmF3QW1vdW50JyxcbiAgICAgICdzZW5kZXInLFxuICAgICAgJ3R5cGUnLFxuICAgIF07XG5cbiAgICBjb25zdCBvdXRwdXRzOiBUcmFuc2FjdGlvblJlY2lwaWVudFtdID0gdGhpcy5fcmVjaXBpZW50cztcbiAgICBjb25zdCBvdXRwdXRBbW91bnQgPSBvdXRwdXRzXG4gICAgICAucmVkdWNlKChhY2N1bXVsYXRvciwgY3VycmVudCkgPT4gYWNjdW11bGF0b3IucGx1cyhjdXJyZW50LmFtb3VudCksIG5ldyBCaWdOdW1iZXIoJzAnKSlcbiAgICAgIC50b1N0cmluZygpO1xuICAgIHJldHVybiB7XG4gICAgICBkaXNwbGF5T3JkZXIsXG4gICAgICBpZDogdGhpcy5pZCxcbiAgICAgIG91dHB1dHMsXG4gICAgICBvdXRwdXRBbW91bnQsXG4gICAgICBjaGFuZ2VPdXRwdXRzOiBbXSxcbiAgICAgIGNoYW5nZUFtb3VudDogJzAnLFxuICAgICAgZmVlOiB7IGZlZTogdGhpcy5nZXRGZWUoKSB9LFxuICAgICAgc2VuZGVyOiB0aGlzLnNlbmRlcixcbiAgICAgIHR5cGU6IHRoaXMudHlwZSxcbiAgICB9O1xuICB9XG59XG4iXX0=
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bitgo-beta/sdk-coin-vet",
|
|
3
|
-
"version": "1.0.0-alpha.
|
|
3
|
+
"version": "1.0.0-alpha.15",
|
|
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.
|
|
44
|
-
"@bitgo-beta/sdk-core": "2.4.1-alpha.
|
|
45
|
-
"@bitgo-beta/secp256k1": "1.0.1-alpha.
|
|
46
|
-
"@bitgo-beta/statics": "10.0.1-alpha.
|
|
43
|
+
"@bitgo-beta/abstract-eth": "1.2.3-alpha.337",
|
|
44
|
+
"@bitgo-beta/sdk-core": "2.4.1-alpha.337",
|
|
45
|
+
"@bitgo-beta/secp256k1": "1.0.1-alpha.295",
|
|
46
|
+
"@bitgo-beta/statics": "10.0.1-alpha.337",
|
|
47
47
|
"@noble/curves": "1.8.1",
|
|
48
48
|
"@vechain/sdk-core": "^1.2.0-rc.3",
|
|
49
49
|
"bignumber.js": "^9.1.1",
|
|
@@ -52,8 +52,8 @@
|
|
|
52
52
|
"tweetnacl": "^1.0.3"
|
|
53
53
|
},
|
|
54
54
|
"devDependencies": {
|
|
55
|
-
"@bitgo-beta/sdk-api": "1.6.1-alpha.
|
|
56
|
-
"@bitgo-beta/sdk-test": "^8.0.
|
|
55
|
+
"@bitgo-beta/sdk-api": "1.6.1-alpha.337",
|
|
56
|
+
"@bitgo-beta/sdk-test": "^8.0.94"
|
|
57
57
|
},
|
|
58
|
-
"gitHead": "
|
|
58
|
+
"gitHead": "bed2b9ec12bf72afffbcab9aa0d5fd85034822bc"
|
|
59
59
|
}
|