@bitgo-beta/sdk-coin-canton 1.0.1-beta.847 → 1.0.1-beta.849

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.
@@ -21,11 +21,13 @@ export declare class AllocationRequestBuilder extends TransactionBuilder {
21
21
  private _receiverPartyId;
22
22
  private _amount;
23
23
  private _token;
24
- private _receiveToken;
25
- private _receiveAmount;
24
+ private _receiveToken?;
25
+ private _receiveAmount?;
26
26
  private _allocateBefore;
27
27
  private _settleBefore;
28
28
  private _comment?;
29
+ private _legType?;
30
+ private _parentTradeId?;
29
31
  constructor(_coinConfig: Readonly<CoinConfig>);
30
32
  initBuilder(tx: Transaction): void;
31
33
  get transactionType(): TransactionType;
@@ -89,6 +91,17 @@ export declare class AllocationRequestBuilder extends TransactionBuilder {
89
91
  * @param amount - receive amount. Use a string or bigint above Number.MAX_SAFE_INTEGER.
90
92
  */
91
93
  receiveAmount(amount: CantonAmountInput): this;
94
+ /**
95
+ * Sets the leg category: "trade" for a DvP delivery leg, "fee" for a
96
+ * payment-only operator-fee leg.
97
+ * @param type - leg type
98
+ */
99
+ legType(type: 'trade' | 'fee'): this;
100
+ /**
101
+ * Sets the trade identifier of the parent trade this fee leg belongs to.
102
+ * @param id - parent trade id
103
+ */
104
+ parentTradeId(id: string): this;
92
105
  /**
93
106
  * Sets the ISO 8601 deadline by which allocation must be submitted.
94
107
  * @param deadline - allocate-before timestamp
@@ -1 +1 @@
1
- {"version":3,"file":"allocationRequestBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/allocationRequestBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAClE,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAgB,iBAAiB,EAAE,4BAA4B,EAAE,MAAM,SAAS,CAAC;AAC3G,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAGxD;;;;;;;GAOG;AACH,qBAAa,wBAAyB,SAAQ,kBAAkB;IAC9D,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,WAAW,CAA4B;IAC/C,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,gBAAgB,CAAS;IACjC,OAAO,CAAC,OAAO,CAAe;IAC9B,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,cAAc,CAAe;IACrC,OAAO,CAAC,eAAe,CAAS;IAChC,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,QAAQ,CAAC,CAAS;gBAEd,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI7C,WAAW,CAAC,EAAE,EAAE,WAAW,GAAG,IAAI;IAKlC,IAAI,eAAe,IAAI,eAAe,CAErC;IAED,kBAAkB,IAAI,IAAI;IAI1B,cAAc,CAAC,WAAW,EAAE,4BAA4B,GAAG,IAAI;IAI/D,kBAAkB;IAClB,YAAY,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI;IAI3D;;;;OAIG;IACH,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAS1B;;;OAGG;IACH,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAQ5B;;;OAGG;IACH,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAQnC;;;OAGG;IACH,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAQzB;;;OAGG;IACH,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAQ/B;;;OAGG;IACH,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAQ/B;;;OAGG;IACH,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAQjC;;;OAGG;IACH,MAAM,CAAC,MAAM,EAAE,iBAAiB,GAAG,IAAI;IAKvC;;;OAGG;IACH,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAQ1B;;;OAGG;IACH,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAQjC;;;OAGG;IACH,aAAa,CAAC,MAAM,EAAE,iBAAiB,GAAG,IAAI;IAK9C;;;OAGG;IACH,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAQtC;;;OAGG;IACH,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAQpC;;;OAGG;IACH,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAK9B;;;;;OAKG;IACH,eAAe,IAAI,iBAAiB;IAyBpC,OAAO,CAAC,QAAQ;CAejB"}
1
+ {"version":3,"file":"allocationRequestBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/allocationRequestBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAClE,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAgB,iBAAiB,EAAE,4BAA4B,EAAE,MAAM,SAAS,CAAC;AAC3G,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAGxD;;;;;;;GAOG;AACH,qBAAa,wBAAyB,SAAQ,kBAAkB;IAC9D,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,WAAW,CAA4B;IAC/C,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,gBAAgB,CAAS;IACjC,OAAO,CAAC,OAAO,CAAe;IAC9B,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,aAAa,CAAC,CAAS;IAC/B,OAAO,CAAC,cAAc,CAAC,CAAe;IACtC,OAAO,CAAC,eAAe,CAAS;IAChC,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,QAAQ,CAAC,CAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,CAAkB;IACnC,OAAO,CAAC,cAAc,CAAC,CAAS;gBAEpB,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI7C,WAAW,CAAC,EAAE,EAAE,WAAW,GAAG,IAAI;IAKlC,IAAI,eAAe,IAAI,eAAe,CAErC;IAED,kBAAkB,IAAI,IAAI;IAI1B,cAAc,CAAC,WAAW,EAAE,4BAA4B,GAAG,IAAI;IAI/D,kBAAkB;IAClB,YAAY,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI;IAI3D;;;;OAIG;IACH,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAS1B;;;OAGG;IACH,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAQ5B;;;OAGG;IACH,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAQnC;;;OAGG;IACH,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAQzB;;;OAGG;IACH,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAQ/B;;;OAGG;IACH,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAQ/B;;;OAGG;IACH,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAQjC;;;OAGG;IACH,MAAM,CAAC,MAAM,EAAE,iBAAiB,GAAG,IAAI;IAKvC;;;OAGG;IACH,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAQ1B;;;OAGG;IACH,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAQjC;;;OAGG;IACH,aAAa,CAAC,MAAM,EAAE,iBAAiB,GAAG,IAAI;IAK9C;;;;OAIG;IACH,OAAO,CAAC,IAAI,EAAE,OAAO,GAAG,KAAK,GAAG,IAAI;IAQpC;;;OAGG;IACH,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAQ/B;;;OAGG;IACH,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAQtC;;;OAGG;IACH,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAQpC;;;OAGG;IACH,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAK9B;;;;;OAKG;IACH,eAAe,IAAI,iBAAiB;IAmCpC,OAAO,CAAC,QAAQ;CAoBjB"}
@@ -150,6 +150,29 @@ class AllocationRequestBuilder extends transactionBuilder_1.TransactionBuilder {
150
150
  this._receiveAmount = (0, amount_1.normalizeCantonAmount)(amount, 'receiveAmount must be a positive number');
151
151
  return this;
152
152
  }
153
+ /**
154
+ * Sets the leg category: "trade" for a DvP delivery leg, "fee" for a
155
+ * payment-only operator-fee leg.
156
+ * @param type - leg type
157
+ */
158
+ legType(type) {
159
+ if (type !== 'trade' && type !== 'fee') {
160
+ throw new Error('legType must be either "trade" or "fee"');
161
+ }
162
+ this._legType = type;
163
+ return this;
164
+ }
165
+ /**
166
+ * Sets the trade identifier of the parent trade this fee leg belongs to.
167
+ * @param id - parent trade id
168
+ */
169
+ parentTradeId(id) {
170
+ if (!id || !id.trim()) {
171
+ throw new Error('parentTradeId must be a non-empty string');
172
+ }
173
+ this._parentTradeId = id.trim();
174
+ return this;
175
+ }
153
176
  /**
154
177
  * Sets the ISO 8601 deadline by which allocation must be submitted.
155
178
  * @param deadline - allocate-before timestamp
@@ -197,14 +220,24 @@ class AllocationRequestBuilder extends transactionBuilder_1.TransactionBuilder {
197
220
  receiverPartyId: this._receiverPartyId,
198
221
  amount: this._amount,
199
222
  token: this._token,
200
- receiveToken: this._receiveToken,
201
- receiveAmount: this._receiveAmount,
202
223
  allocateBefore: this._allocateBefore,
203
224
  settleBefore: this._settleBefore,
204
225
  };
205
226
  if (this._contractId !== null && this._contractId !== undefined) {
206
227
  result.contractId = this._contractId;
207
228
  }
229
+ if (this._receiveToken !== undefined) {
230
+ result.receiveToken = this._receiveToken;
231
+ }
232
+ if (this._receiveAmount !== undefined) {
233
+ result.receiveAmount = this._receiveAmount;
234
+ }
235
+ if (this._legType !== undefined) {
236
+ result.legType = this._legType;
237
+ }
238
+ if (this._parentTradeId !== undefined) {
239
+ result.parentTradeId = this._parentTradeId;
240
+ }
208
241
  if (this._comment !== undefined) {
209
242
  result.comment = this._comment;
210
243
  }
@@ -229,10 +262,14 @@ class AllocationRequestBuilder extends transactionBuilder_1.TransactionBuilder {
229
262
  throw new Error('amount is missing');
230
263
  if (!this._token)
231
264
  throw new Error('token is missing');
232
- if (!this._receiveToken)
233
- throw new Error('receiveToken is missing');
234
- if (this._receiveAmount === undefined || this._receiveAmount === null)
235
- throw new Error('receiveAmount is missing');
265
+ if (this._legType !== 'fee') {
266
+ // Trade legs (explicit or legacy) always carry the receive side of the settlement;
267
+ // fee legs are payment-only — the fee payer receives nothing — so the receive fields are omitted.
268
+ if (!this._receiveToken)
269
+ throw new Error('receiveToken is missing');
270
+ if (this._receiveAmount === undefined || this._receiveAmount === null)
271
+ throw new Error('receiveAmount is missing');
272
+ }
236
273
  if (!this._allocateBefore)
237
274
  throw new Error('allocateBefore is missing');
238
275
  if (!this._settleBefore)
@@ -240,4 +277,4 @@ class AllocationRequestBuilder extends transactionBuilder_1.TransactionBuilder {
240
277
  }
241
278
  }
242
279
  exports.AllocationRequestBuilder = AllocationRequestBuilder;
243
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxsb2NhdGlvblJlcXVlc3RCdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9hbGxvY2F0aW9uUmVxdWVzdEJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsbURBQWtFO0FBR2xFLDZEQUEwRDtBQUUxRCxxQ0FBaUQ7QUFFakQ7Ozs7Ozs7R0FPRztBQUNILE1BQWEsd0JBQXlCLFNBQVEsdUNBQWtCO0lBZ0I5RCxZQUFZLFdBQWlDO1FBQzNDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBRUQsV0FBVyxDQUFDLEVBQWU7UUFDekIsS0FBSyxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUN0QixJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBRUQsSUFBSSxlQUFlO1FBQ2pCLE9BQU8sMEJBQWUsQ0FBQyxpQkFBaUIsQ0FBQztJQUMzQyxDQUFDO0lBRUQsa0JBQWtCO1FBQ2hCLElBQUksQ0FBQyxXQUFXLENBQUMsZUFBZSxHQUFHLDBCQUFlLENBQUMsaUJBQWlCLENBQUM7SUFDdkUsQ0FBQztJQUVELGNBQWMsQ0FBQyxXQUF5QztRQUN0RCxNQUFNLElBQUksS0FBSyxDQUFDLGtCQUFrQixDQUFDLENBQUM7SUFDdEMsQ0FBQztJQUVELGtCQUFrQjtJQUNsQixZQUFZLENBQUMsU0FBb0IsRUFBRSxTQUFpQjtRQUNsRCxNQUFNLElBQUksS0FBSyxDQUFDLGtCQUFrQixDQUFDLENBQUM7SUFDdEMsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxRQUFRLENBQUMsRUFBVTtRQUNqQixJQUFJLENBQUMsRUFBRSxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksRUFBRSxFQUFFLENBQUM7WUFDdEIsTUFBTSxJQUFJLEtBQUssQ0FBQyxxQ0FBcUMsQ0FBQyxDQUFDO1FBQ3pELENBQUM7UUFDRCxJQUFJLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQyxJ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QUFLLENBQUMsMkJBQTJCLENBQUMsQ0FBQztRQUN4RSxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWE7WUFBRSxNQUFNLElBQUksS0FBSyxDQUFDLHlCQUF5QixDQUFDLENBQUM7SUFDdEUsQ0FBQztDQUNGO0FBelBELDREQXlQQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFB1YmxpY0tleSwgVHJhbnNhY3Rpb25UeXBlIH0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvcmUnO1xuaW1wb3J0IHsgQmFzZUNvaW4gYXMgQ29pbkNvbmZpZyB9IGZyb20gJ0BiaXRnby1iZXRhL3N0YXRpY3MnO1xuaW1wb3J0IHsgQWxsb2NhdGlvblJlcXVlc3QsIENhbnRvbkFtb3VudCwgQ2FudG9uQW1vdW50SW5wdXQsIENhbnRvblByZXBhcmVDb21tYW5kUmVzcG9uc2UgfSBmcm9tICcuL2lmYWNlJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uQnVpbGRlciB9IGZyb20gJy4vdHJhbnNhY3Rpb25CdWlsZGVyJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uIH0gZnJvbSAnLi90cmFuc2FjdGlvbi90cmFuc2FjdGlvbic7XG5pbXBvcnQgeyBub3JtYWxpemVDYW50b25BbW91bnQgfSBmcm9tICcuL2Ftb3VudCc7XG5cbi8qKlxuICogQnVpbGRlciBmb3IgYW4gQWxsb2NhdGlvblJlcXVlc3QgdHhSZXF1ZXN0IOKAlCBhbiBpbnRlcm5hbCwgbm9uLXNpZ25hYmxlIHRyYW5zYWN0aW9uXG4gKiB0aGF0IHN1cmZhY2VzIHRoZSBEdlAgdHJhZGUgbGVnIGRldGFpbHMgdG8gdGhlIGFsbG9jYXRpbmcgcGFydHkuIFRoZSBwYXJ0eSByZXZpZXdzXG4gKiB0aGlzIHJlcXVlc3QgYW5kIHRoZW4gc3VibWl0cyBhIHNlcGFyYXRlIEFsbG9jYXRpb25BbGxvY2F0ZSB0byBsb2NrIHRoZWlyIGFzc2V0LlxuICpcbiAqIHNldFRyYW5zYWN0aW9uIGFuZCBhZGRTaWduYXR1cmUgYXJlIGludGVudGlvbmFsbHkgbm90IGltcGxlbWVudGVkIGJlY2F1c2UgdGhpc1xuICogdHJhbnNhY3Rpb24gdHlwZSBpcyBuZXZlciBzaWduZWQgb3IgYnJvYWRjYXN0IGRpcmVjdGx5LlxuICovXG5leHBvcnQgY2xhc3MgQWxsb2NhdGlvblJlcXVlc3RCdWlsZGVyIGV4dGVuZHMgVHJhbnNhY3Rpb25CdWlsZGVyIHtcbiAgcHJpdmF0ZSBfdXBkYXRlSWQ6IHN0cmluZztcbiAgcHJpdmF0ZSBfb3BlcmF0b3JJZDogc3RyaW5nO1xuICBwcml2YXRlIF9jb250cmFjdElkOiBzdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkO1xuICBwcml2YXRlIF90cmFkZUlkOiBzdHJpbmc7XG4gIHByaXZhdGUgX3RyYW5zZmVyTGVnSWQ6IHN0cmluZztcbiAgcHJpdmF0ZSBfc2VuZGVyUGFydHlJZDogc3RyaW5nO1xuICBwcml2YXRlIF9yZWNlaXZlclBhcnR5SWQ6IHN0cmluZztcbiAgcHJpdmF0ZSBfYW1vdW50OiBDYW50b25BbW91bnQ7XG4gIHByaXZhdGUgX3Rva2VuOiBzdHJpbmc7XG4gIHByaXZhdGUgX3JlY2VpdmVUb2tlbjogc3RyaW5nO1xuICBwcml2YXRlIF9yZWNlaXZlQW1vdW50OiBDYW50b25BbW91bnQ7XG4gIHByaXZhdGUgX2FsbG9jYXRlQmVmb3JlOiBzdHJpbmc7XG4gIHByaXZhdGUgX3NldHRsZUJlZm9yZTogc3RyaW5nO1xuICBwcml2YXRlIF9jb21tZW50Pzogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKF9jb2luQ29uZmlnOiBSZWFkb25seTxDb2luQ29uZmlnPikge1xuICAgIHN1cGVyKF9jb2luQ29uZmlnKTtcbiAgfVxuXG4gIGluaXRCdWlsZGVyKHR4OiBUcmFuc2FjdGlvbik6IHZvaWQge1xuICAgIHN1cGVyLmluaXRCdWlsZGVyKHR4KTtcbiAgICB0aGlzLnNldFRyYW5zYWN0aW9uVHlwZSgpO1xuICB9XG5cbiAgZ2V0IHRyYW5zYWN0aW9uVHlwZSgpOiBUcmFuc2FjdGlvblR5cGUge1xuICAgIHJldHVybiBUcmFuc2FjdGlvblR5cGUuQWxsb2NhdGlvblJlcXVlc3Q7XG4gIH1cblxuICBzZXRUcmFuc2FjdGlvblR5cGUoKTogdm9pZCB7XG4gICAgdGhpcy50cmFuc2FjdGlvbi50cmFuc2FjdGlvblR5cGUgPSBUcmFuc2FjdGlvblR5cGUuQWxsb2NhdGlvblJlcXVlc3Q7XG4gIH1cblxuICBzZXRUcmFuc2FjdGlvbih0cmFuc2FjdGlvbjogQ2FudG9uUHJlcGFyZUNvbW1hbmRSZXNwb25zZSk6IHZvaWQge1xuICAgIHRocm93IG5ldyBFcnJvcignTm90IGltcGxlbWVudGVkIScpO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0RG9jICovXG4gIGFkZFNpZ25hdHVyZShwdWJsaWNLZXk6IFB1YmxpY0tleSwgc2lnbmF0dXJlOiBCdWZmZXIpOiB2b2lkIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ05vdCBpbXBsZW1lbnRlZCEnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBsZWRnZXIgdXBkYXRlIGlkIG9mIHRoZSBBbGxvY2F0aW9uUmVxdWVzdCBldmVudC5cbiAgICogQWxzbyBzZXRzIHRoZSB0cmFuc2FjdGlvbiBpZC5cbiAgICogQHBhcmFtIGlkIC0gbGVkZ2VyIHVwZGF0ZSBpZCAodHhIYXNoKVxuICAgKi9cbiAgdXBkYXRlSWQoaWQ6IHN0cmluZyk6IHRoaXMge1xuICAgIGlmICghaWQgfHwgIWlkLnRyaW0oKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCd1cGRhdGVJZCBtdXN0IGJlIGEgbm9uLWVtcHR5IHN0cmluZycpO1xuICAgIH1cbiAgICB0aGlzLl91cGRhdGVJZCA9IGlkLnRyaW0oKTtcbiAgICB0aGlzLnRyYW5zYWN0aW9uLmlkID0gaWQudHJpbSgpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIG9wZXJhdG9yIHBhcnR5IGlkIChzZXR0bGVtZW50IGV4ZWN1dG9yKS5cbiAgICogQHBhcmFtIGlkIC0gb3BlcmF0b3IgcGFydHkgaWRcbiAgICovXG4gIG9wZXJhdG9ySWQoaWQ6IHN0cmluZyk6IHRoaXMge1xuICAgIGlmICghaWQgfHwgIWlkLnRyaW0oKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdvcGVyYXRvcklkIG11c3QgYmUgYSBub24tZW1wdHkgc3RyaW5nJyk7XG4gICAgfVxuICAgIHRoaXMuX29wZXJhdG9ySWQgPSBpZC50cmltKCk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgc2V0dGxlbWVudCBiYXRjaCBjb250cmFjdCBpZC5cbiAgICogQHBhcmFtIGlkIC0gc2V0dGxlbWVudCBiYXRjaCBjb250cmFjdCBpZFxuICAgKi9cbiAgY29udHJhY3RJZChpZDogc3RyaW5nIHwgbnVsbCk6IHRoaXMge1xuICAgIGlmIChpZCAhPT0gbnVsbCAmJiAoIWlkIHx8ICFpZC50cmltKCkpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ2NvbnRyYWN0SWQgbXVzdCBiZSBhIG5vbi1lbXB0eSBzdHJpbmcnKTtcbiAgICB9XG4gICAgdGhpcy5fY29udHJhY3RJZCA9IGlkID09PSBudWxsID8gbnVsbCA6IGlkLnRyaW0oKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSB0cmFkZSBpZGVudGlmaWVyLlxuICAgKiBAcGFyYW0gaWQgLSB0cmFkZSBpZFxuICAgKi9cbiAgdHJhZGVJZChpZDogc3RyaW5nKTogdGhpcyB7XG4gICAgaWYgKCFpZCB8fCAhaWQudHJpbSgpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ3RyYWRlSWQgbXVzdCBiZSBhIG5vbi1lbXB0eSBzdHJpbmcnKTtcbiAgICB9XG4gICAgdGhpcy5fdHJhZGVJZCA9IGlkLnRyaW0oKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBzcGVjaWZpYyBsZWcgaWQgYmVpbmcgYWxsb2NhdGVkIChlLmcuIGAke3RyYWRlSWR9LXNlY3VyaXR5LWxlZ2ApLlxuICAgKiBAcGFyYW0gaWQgLSB0cmFuc2ZlciBsZWcgaWRcbiAgICovXG4gIHRyYW5zZmVyTGVnSWQoaWQ6IHN0cmluZyk6IHRoaXMge1xuICAgIGlmICghaWQgfHwgIWlkLnRyaW0oKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCd0cmFuc2ZlckxlZ0lkIG11c3QgYmUgYSBub24tZW1wdHkgc3RyaW5nJyk7XG4gICAgfVxuICAgIHRoaXMuX3RyYW5zZmVyTGVnSWQgPSBpZC50cmltKCk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgcGFydHkgcGVyZm9ybWluZyB0aGlzIGFsbG9jYXRpb24gKHNlbmRlciBvZiB0aGlzIGxlZykuXG4gICAqIEBwYXJhbSBpZCAtIHNlbmRlciBwYXJ0eSBpZFxuICAgKi9cbiAgc2VuZGVyUGFydHlJZChpZDogc3RyaW5nKTogdGhpcyB7XG4gICAgaWYgKCFpZCB8fCAhaWQudHJpbSgpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ3NlbmRlclBhcnR5SWQgbXVzdCBiZSBhIG5vbi1lbXB0eSBzdHJpbmcnKTtcbiAgICB9XG4gICAgdGhpcy5fc2VuZGVyUGFydHlJZCA9IGlkLnRyaW0oKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBjb3VudGVycGFydHkgcmVjZWl2aW5nIHRoZSBhbGxvY2F0ZWQgYXNzZXQuXG4gICAqIEBwYXJhbSBpZCAtIHJlY2VpdmVyIHBhcnR5IGlkXG4gICAqL1xuICByZWNlaXZlclBhcnR5SWQoaWQ6IHN0cmluZyk6IHRoaXMge1xuICAgIGlmICghaWQgfHwgIWlkLnRyaW0oKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdyZWNlaXZlclBhcnR5SWQgbXVzdCBiZSBhIG5vbi1lbXB0eSBzdHJpbmcnKTtcbiAgICB9XG4gICAgdGhpcy5fcmVjZWl2ZXJQYXJ0eUlkID0gaWQudHJpbSgpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIHF1YW50aXR5IHRvIGFsbG9jYXRlLlxuICAgKiBAcGFyYW0gYW1vdW50IC0gYWxsb2NhdGlvbiBhbW91bnQuIFVzZSBhIHN0cmluZyBvciBiaWdpbnQgYWJvdmUgTnVtYmVyLk1BWF9TQUZFX0lOVEVHRVIuXG4gICAqL1xuICBhbW91bnQoYW1vdW50OiBDYW50b25BbW91bnRJbnB1dCk6IHRoaXMge1xuICAgIHRoaXMuX2Ftb3VudCA9IG5vcm1hbGl6ZUNhbnRvbkFtb3VudChhbW91bnQsICdhbW91bnQgbXVzdCBiZSBhIHBvc2l0aXZlIG51bWJlcicpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIEJpdEdvIHRva2VuIGlkZW50aWZpZXIgZm9yIHRoZSBhc3NldCBiZWluZyBhbGxvY2F0ZWQuXG4gICAqIEBwYXJhbSB0b2tlbiAtIHRva2VuIGlkZW50aWZpZXJcbiAgICovXG4gIHRva2VuKHRva2VuOiBzdHJpbmcpOiB0aGlzIHtcbiAgICBpZiAoIXRva2VuIHx8ICF0b2tlbi50cmltKCkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcigndG9rZW4gbXVzdCBiZSBhIG5vbi1lbXB0eSBzdHJpbmcnKTtcbiAgICB9XG4gICAgdGhpcy5fdG9rZW4gPSB0b2tlbi50cmltKCk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgQml0R28gdG9rZW4gaWRlbnRpZmllciB0aGUgYWxsb2NhdGluZyBwYXJ0eSB3aWxsIHJlY2VpdmUgb24gc2V0dGxlbWVudC5cbiAgICogQHBhcmFtIHRva2VuIC0gcmVjZWl2ZSB0b2tlbiBpZGVudGlmaWVyXG4gICAqL1xuICByZWNlaXZlVG9rZW4odG9rZW46IHN0cmluZyk6IHRoaXMge1xuICAgIGlmICghdG9rZW4gfHwgIXRva2VuLnRyaW0oKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdyZWNlaXZlVG9rZW4gbXVzdCBiZSBhIG5vbi1lbXB0eSBzdHJpbmcnKTtcbiAgICB9XG4gICAgdGhpcy5fcmVjZWl2ZVRva2VuID0gdG9rZW4udHJpbSgpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIHF1YW50aXR5IHRoZSBhbGxvY2F0aW5nIHBhcnR5IHdpbGwgcmVjZWl2ZSBvbiBzZXR0bGVtZW50LlxuICAgKiBAcGFyYW0gYW1vdW50IC0gcmVjZWl2ZSBhbW91bnQuIFVzZSBhIHN0cmluZyBvciBiaWdpbnQgYWJvdmUgTnVtYmVyLk1BWF9TQUZFX0lOVEVHRVIuXG4gICAqL1xuICByZWNlaXZlQW1vdW50KGFtb3VudDogQ2FudG9uQW1vdW50SW5wdXQpOiB0aGlzIHtcbiAgICB0aGlzLl9yZWNlaXZlQW1vdW50ID0gbm9ybWFsaXplQ2FudG9uQW1vdW50KGFtb3VudCwgJ3JlY2VpdmVBbW91bnQgbXVzdCBiZSBhIHBvc2l0aXZlIG51bWJlcicpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIElTTyA4NjAxIGRlYWRsaW5lIGJ5IHdoaWNoIGFsbG9jYXRpb24gbXVzdCBiZSBzdWJtaXR0ZWQuXG4gICAqIEBwYXJhbSBkZWFkbGluZSAtIGFsbG9jYXRlLWJlZm9yZSB0aW1lc3RhbXBcbiAgICovXG4gIGFsbG9jYXRlQmVmb3JlKGRlYWRsaW5lOiBzdHJpbmcpOiB0aGlzIHtcbiAgICBpZiAoIWRlYWRsaW5lIHx8ICFkZWFkbGluZS50cmltKCkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignYWxsb2NhdGVCZWZvcmUgbXVzdCBiZSBhIG5vbi1lbXB0eSBzdHJpbmcnKTtcbiAgICB9XG4gICAgdGhpcy5fYWxsb2NhdGVCZWZvcmUgPSBkZWFkbGluZS50cmltKCk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgSVNPIDg2MDEgZGVhZGxpbmUgYnkgd2hpY2ggc2V0dGxlbWVudCBtdXN0IGNvbXBsZXRlLlxuICAgKiBAcGFyYW0gZGVhZGxpbmUgLSBzZXR0bGUtYmVmb3JlIHRpbWVzdGFtcFxuICAgKi9cbiAgc2V0dGxlQmVmb3JlKGRlYWRsaW5lOiBzdHJpbmcpOiB0aGlzIHtcbiAgICBpZiAoIWRlYWRsaW5lIHx8ICFkZWFkbGluZS50cmltKCkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignc2V0dGxlQmVmb3JlIG11c3QgYmUgYSBub24tZW1wdHkgc3RyaW5nJyk7XG4gICAgfVxuICAgIHRoaXMuX3NldHRsZUJlZm9yZSA9IGRlYWRsaW5lLnRyaW0oKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIGFuIG9wdGlvbmFsIGZyZWUtZm9ybSBjb21tZW50LlxuICAgKiBAcGFyYW0gY29tbWVudCAtIGNvbW1lbnQgc3RyaW5nXG4gICAqL1xuICBjb21tZW50KGNvbW1lbnQ6IHN0cmluZyk6IHRoaXMge1xuICAgIHRoaXMuX2NvbW1lbnQgPSBjb21tZW50O1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIEJ1aWxkcyBhbmQgcmV0dXJucyB0aGUgQWxsb2NhdGlvblJlcXVlc3Qgb2JqZWN0IGZyb20gdGhlIGJ1aWxkZXIncyBpbnRlcm5hbCBzdGF0ZS5cbiAgICpcbiAgICogQHJldHVybnMge0FsbG9jYXRpb25SZXF1ZXN0fSAtIEEgZnVsbHkgY29uc3RydWN0ZWQgYW5kIHZhbGlkYXRlZCByZXF1ZXN0IG9iamVjdC5cbiAgICogQHRocm93cyB7RXJyb3J9IElmIGFueSByZXF1aXJlZCBmaWVsZCBpcyBtaXNzaW5nIG9yIGZhaWxzIHZhbGlkYXRpb24uXG4gICAqL1xuICB0b1JlcXVlc3RPYmplY3QoKTogQWxsb2NhdGlvblJlcXVlc3Qge1xuICAgIHRoaXMudmFsaWRhdGUoKTtcbiAgICBjb25zdCByZXN1bHQ6IEFsbG9jYXRpb25SZXF1ZXN0ID0ge1xuICAgICAgdXBkYXRlSWQ6IHRoaXMuX3VwZGF0ZUlkLFxuICAgICAgb3BlcmF0b3JJZDogdGhpcy5fb3BlcmF0b3JJZCxcbiAgICAgIHRyYWRlSWQ6IHRoaXMuX3RyYWRlSWQsXG4gICAgICB0cmFuc2ZlckxlZ0lkOiB0aGlzLl90cmFuc2ZlckxlZ0lkLFxuICAgICAgc2VuZGVyUGFydHlJZDogdGhpcy5fc2VuZGVyUGFydHlJZCxcbiAgICAgIHJlY2VpdmVyUGFydHlJZDogdGhpcy5fcmVjZWl2ZXJQYXJ0eUlkLFxuICAgICAgYW1vdW50OiB0aGlzLl9hbW91bnQsXG4gICAgICB0b2tlbjogdGhpcy5fdG9rZW4sXG4gICAgICByZWNlaXZlVG9rZW46IHRoaXMuX3JlY2VpdmVUb2tlbixcbiAgICAgIHJlY2VpdmVBbW91bnQ6IHRoaXMuX3JlY2VpdmVBbW91bnQsXG4gICAgICBhbGxvY2F0ZUJlZm9yZTogdGhpcy5fYWxsb2NhdGVCZWZvcmUsXG4gICAgICBzZXR0bGVCZWZvcmU6IHRoaXMuX3NldHRsZUJlZm9yZSxcbiAgICB9O1xuICAgIGlmICh0aGlzLl9jb250cmFjdElkICE9PSBudWxsICYmIHRoaXMuX2NvbnRyYWN0SWQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgcmVzdWx0LmNvbnRyYWN0SWQgPSB0aGlzLl9jb250cmFjdElkO1xuICAgIH1cbiAgICBpZiAodGhpcy5fY29tbWVudCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICByZXN1bHQuY29tbWVudCA9IHRoaXMuX2NvbW1lbnQ7XG4gICAgfVxuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICBwcml2YXRlIHZhbGlkYXRlKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5fdXBkYXRlSWQpIHRocm93IG5ldyBFcnJvcigndXBkYXRlSWQgaXMgbWlzc2luZycpO1xuICAgIGlmICghdGhpcy5fb3BlcmF0b3JJZCkgdGhyb3cgbmV3IEVycm9yKCdvcGVyYXRvcklkIGlzIG1pc3NpbmcnKTtcbiAgICBpZiAodGhpcy5fY29udHJhY3RJZCA9PT0gdW5kZWZpbmVkKSB0aHJvdyBuZXcgRXJyb3IoJ2NvbnRyYWN0SWQgaXMgbWlzc2luZycpO1xuICAgIGlmICghdGhpcy5fdHJhZGVJZCkgdGhyb3cgbmV3IEVycm9yKCd0cmFkZUlkIGlzIG1pc3NpbmcnKTtcbiAgICBpZiAoIXRoaXMuX3RyYW5zZmVyTGVnSWQpIHRocm93IG5ldyBFcnJvcigndHJhbnNmZXJMZWdJZCBpcyBtaXNzaW5nJyk7XG4gICAgaWYgKCF0aGlzLl9zZW5kZXJQYXJ0eUlkKSB0aHJvdyBuZXcgRXJyb3IoJ3NlbmRlclBhcnR5SWQgaXMgbWlzc2luZycpO1xuICAgIGlmICghdGhpcy5fcmVjZWl2ZXJQYXJ0eUlkKSB0aHJvdyBuZXcgRXJyb3IoJ3JlY2VpdmVyUGFydHlJZCBpcyBtaXNzaW5nJyk7XG4gICAgaWYgKHRoaXMuX2Ftb3VudCA9PT0gdW5kZWZpbmVkIHx8IHRoaXMuX2Ftb3VudCA9PT0gbnVsbCkgdGhyb3cgbmV3IEVycm9yKCdhbW91bnQgaXMgbWlzc2luZycpO1xuICAgIGlmICghdGhpcy5fdG9rZW4pIHRocm93IG5ldyBFcnJvcigndG9rZW4gaXMgbWlzc2luZycpO1xuICAgIGlmICghdGhpcy5fcmVjZWl2ZVRva2VuKSB0aHJvdyBuZXcgRXJyb3IoJ3JlY2VpdmVUb2tlbiBpcyBtaXNzaW5nJyk7XG4gICAgaWYgKHRoaXMuX3JlY2VpdmVBbW91bnQgPT09IHVuZGVmaW5lZCB8fCB0aGlzLl9yZWNlaXZlQW1vdW50ID09PSBudWxsKSB0aHJvdyBuZXcgRXJyb3IoJ3JlY2VpdmVBbW91bnQgaXMgbWlzc2luZycpO1xuICAgIGlmICghdGhpcy5fYWxsb2NhdGVCZWZvcmUpIHRocm93IG5ldyBFcnJvcignYWxsb2NhdGVCZWZvcmUgaXMgbWlzc2luZycpO1xuICAgIGlmICghdGhpcy5fc2V0dGxlQmVmb3JlKSB0aHJvdyBuZXcgRXJyb3IoJ3NldHRsZUJlZm9yZSBpcyBtaXNzaW5nJyk7XG4gIH1cbn1cbiJdfQ==
280
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxsb2NhdGlvblJlcXVlc3RCdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9hbGxvY2F0aW9uUmVxdWVzdEJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsbURBQWtFO0FBR2xFLDZEQUEwRDtBQUUxRCxxQ0FBaUQ7QUFFakQ7Ozs7Ozs7R0FPRztBQUNILE1BQWEsd0JBQXlCLFNBQVEsdUNBQWtCO0lBa0I5RCxZQUFZLFdBQWlDO1FBQzNDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBRUQsV0FBVyxDQUFDLEVBQWU7UUFDekIsS0FBSyxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUN0QixJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBRUQsSUFBSSxlQUFlO1FBQ2pCLE9BQU8sMEJBQWUsQ0FBQyxpQkFBaUIsQ0FBQztJQUMzQyxDQUFDO0lBRUQsa0JBQWtCO1FBQ2hCLElBQUksQ0FBQyxXQUFXLENBQUMsZUFBZSxHQUFHLDBCQUFlLENBQUMsaUJBQWlCLENBQUM7SUFDdkUsQ0FBQztJQUVELGNBQWMsQ0FBQyxXQUF5QztRQUN0RCxNQUFNLElBQUksS0FBSyxDQUFDLGtCQUFrQixDQUFDLENBQUM7SUFDdEMsQ0FBQztJQUVELGtCQUFrQjtJQUNsQixZQUFZLENBQUMsU0FBb0IsRUFBRSxTQUFpQjtRQUNsRCxNQUFNLElBQUksS0FBSyxDQUFDLGtCQUFrQixDQUFDLENBQUM7SUFDdEMsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxRQUFRLENBQUMsRUFBVTtRQUNqQixJQUFJLENBQUMsRUFBRSxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksRUFBRSxFQUFFLENBQUM7WUFDdEIsTUFBTSxJQUFJLEtBQUssQ0FBQyxxQ0FBcUMsQ0FBQyxDQUFDO1FBQ3pELENBQUM7UUFDRCxJQUFJLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQyxJ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LElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYTtZQUFFLE1BQU0sSUFBSSxLQUFLLENBQUMseUJBQXlCLENBQUMsQ0FBQztJQUN0RSxDQUFDO0NBQ0Y7QUFuU0QsNERBbVNDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUHVibGljS2V5LCBUcmFuc2FjdGlvblR5cGUgfSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5pbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvLWJldGEvc3RhdGljcyc7XG5pbXBvcnQgeyBBbGxvY2F0aW9uUmVxdWVzdCwgQ2FudG9uQW1vdW50LCBDYW50b25BbW91bnRJbnB1dCwgQ2FudG9uUHJlcGFyZUNvbW1hbmRSZXNwb25zZSB9IGZyb20gJy4vaWZhY2UnO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25CdWlsZGVyIH0gZnJvbSAnLi90cmFuc2FjdGlvbkJ1aWxkZXInO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb24gfSBmcm9tICcuL3RyYW5zYWN0aW9uL3RyYW5zYWN0aW9uJztcbmltcG9ydCB7IG5vcm1hbGl6ZUNhbnRvbkFtb3VudCB9IGZyb20gJy4vYW1vdW50JztcblxuLyoqXG4gKiBCdWlsZGVyIGZvciBhbiBBbGxvY2F0aW9uUmVxdWVzdCB0eFJlcXVlc3Qg4oCUIGFuIGludGVybmFsLCBub24tc2lnbmFibGUgdHJhbnNhY3Rpb25cbiAqIHRoYXQgc3VyZmFjZXMgdGhlIER2UCB0cmFkZSBsZWcgZGV0YWlscyB0byB0aGUgYWxsb2NhdGluZyBwYXJ0eS4gVGhlIHBhcnR5IHJldmlld3NcbiAqIHRoaXMgcmVxdWVzdCBhbmQgdGhlbiBzdWJtaXRzIGEgc2VwYXJhdGUgQWxsb2NhdGlvbkFsbG9jYXRlIHRvIGxvY2sgdGhlaXIgYXNzZXQuXG4gKlxuICogc2V0VHJhbnNhY3Rpb24gYW5kIGFkZFNpZ25hdHVyZSBhcmUgaW50ZW50aW9uYWxseSBub3QgaW1wbGVtZW50ZWQgYmVjYXVzZSB0aGlzXG4gKiB0cmFuc2FjdGlvbiB0eXBlIGlzIG5ldmVyIHNpZ25lZCBvciBicm9hZGNhc3QgZGlyZWN0bHkuXG4gKi9cbmV4cG9ydCBjbGFzcyBBbGxvY2F0aW9uUmVxdWVzdEJ1aWxkZXIgZXh0ZW5kcyBUcmFuc2FjdGlvbkJ1aWxkZXIge1xuICBwcml2YXRlIF91cGRhdGVJZDogc3RyaW5nO1xuICBwcml2YXRlIF9vcGVyYXRvcklkOiBzdHJpbmc7XG4gIHByaXZhdGUgX2NvbnRyYWN0SWQ6IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQ7XG4gIHByaXZhdGUgX3RyYWRlSWQ6IHN0cmluZztcbiAgcHJpdmF0ZSBfdHJhbnNmZXJMZWdJZDogc3RyaW5nO1xuICBwcml2YXRlIF9zZW5kZXJQYXJ0eUlkOiBzdHJpbmc7XG4gIHByaXZhdGUgX3JlY2VpdmVyUGFydHlJZDogc3RyaW5nO1xuICBwcml2YXRlIF9hbW91bnQ6IENhbnRvbkFtb3VudDtcbiAgcHJpdmF0ZSBfdG9rZW46IHN0cmluZztcbiAgcHJpdmF0ZSBfcmVjZWl2ZVRva2VuPzogc3RyaW5nO1xuICBwcml2YXRlIF9yZWNlaXZlQW1vdW50PzogQ2FudG9uQW1vdW50O1xuICBwcml2YXRlIF9hbGxvY2F0ZUJlZm9yZTogc3RyaW5nO1xuICBwcml2YXRlIF9zZXR0bGVCZWZvcmU6IHN0cmluZztcbiAgcHJpdmF0ZSBfY29tbWVudD86IHN0cmluZztcbiAgcHJpdmF0ZSBfbGVnVHlwZT86ICd0cmFkZScgfCAnZmVlJztcbiAgcHJpdmF0ZSBfcGFyZW50VHJhZGVJZD86IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcihfY29pbkNvbmZpZzogUmVhZG9ubHk8Q29pbkNvbmZpZz4pIHtcbiAgICBzdXBlcihfY29pbkNvbmZpZyk7XG4gIH1cblxuICBpbml0QnVpbGRlcih0eDogVHJhbnNhY3Rpb24pOiB2b2lkIHtcbiAgICBzdXBlci5pbml0QnVpbGRlcih0eCk7XG4gICAgdGhpcy5zZXRUcmFuc2FjdGlvblR5cGUoKTtcbiAgfVxuXG4gIGdldCB0cmFuc2FjdGlvblR5cGUoKTogVHJhbnNhY3Rpb25UeXBlIHtcbiAgICByZXR1cm4gVHJhbnNhY3Rpb25UeXBlLkFsbG9jYXRpb25SZXF1ZXN0O1xuICB9XG5cbiAgc2V0VHJhbnNhY3Rpb25UeXBlKCk6IHZvaWQge1xuICAgIHRoaXMudHJhbnNhY3Rpb24udHJhbnNhY3Rpb25UeXBlID0gVHJhbnNhY3Rpb25UeXBlLkFsbG9jYXRpb25SZXF1ZXN0O1xuICB9XG5cbiAgc2V0VHJhbnNhY3Rpb24odHJhbnNhY3Rpb246IENhbnRvblByZXBhcmVDb21tYW5kUmVzcG9uc2UpOiB2b2lkIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ05vdCBpbXBsZW1lbnRlZCEnKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdERvYyAqL1xuICBhZGRTaWduYXR1cmUocHVibGljS2V5OiBQdWJsaWNLZXksIHNpZ25hdHVyZTogQnVmZmVyKTogdm9pZCB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdOb3QgaW1wbGVtZW50ZWQhJyk7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgbGVkZ2VyIHVwZGF0ZSBpZCBvZiB0aGUgQWxsb2NhdGlvblJlcXVlc3QgZXZlbnQuXG4gICAqIEFsc28gc2V0cyB0aGUgdHJhbnNhY3Rpb24gaWQuXG4gICAqIEBwYXJhbSBpZCAtIGxlZGdlciB1cGRhdGUgaWQgKHR4SGFzaClcbiAgICovXG4gIHVwZGF0ZUlkKGlkOiBzdHJpbmcpOiB0aGlzIHtcbiAgICBpZiAoIWlkIHx8ICFpZC50cmltKCkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcigndXBkYXRlSWQgbXVzdCBiZSBhIG5vbi1lbXB0eSBzdHJpbmcnKTtcbiAgICB9XG4gICAgdGhpcy5fdXBkYXRlSWQgPSBpZC50cmltKCk7XG4gICAgdGhpcy50cmFuc2FjdGlvbi5pZCA9IGlkLnRyaW0oKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBvcGVyYXRvciBwYXJ0eSBpZCAoc2V0dGxlbWVudCBleGVjdXRvcikuXG4gICAqIEBwYXJhbSBpZCAtIG9wZXJhdG9yIHBhcnR5IGlkXG4gICAqL1xuICBvcGVyYXRvcklkKGlkOiBzdHJpbmcpOiB0aGlzIHtcbiAgICBpZiAoIWlkIHx8ICFpZC50cmltKCkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignb3BlcmF0b3JJZCBtdXN0IGJlIGEgbm9uLWVtcHR5IHN0cmluZycpO1xuICAgIH1cbiAgICB0aGlzLl9vcGVyYXRvcklkID0gaWQudHJpbSgpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIHNldHRsZW1lbnQgYmF0Y2ggY29udHJhY3QgaWQuXG4gICAqIEBwYXJhbSBpZCAtIHNldHRsZW1lbnQgYmF0Y2ggY29udHJhY3QgaWRcbiAgICovXG4gIGNvbnRyYWN0SWQoaWQ6IHN0cmluZyB8IG51bGwpOiB0aGlzIHtcbiAgICBpZiAoaWQgIT09IG51bGwgJiYgKCFpZCB8fCAhaWQudHJpbSgpKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdjb250cmFjdElkIG11c3QgYmUgYSBub24tZW1wdHkgc3RyaW5nJyk7XG4gICAgfVxuICAgIHRoaXMuX2NvbnRyYWN0SWQgPSBpZCA9PT0gbnVsbCA/IG51bGwgOiBpZC50cmltKCk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgdHJhZGUgaWRlbnRpZmllci5cbiAgICogQHBhcmFtIGlkIC0gdHJhZGUgaWRcbiAgICovXG4gIHRyYWRlSWQoaWQ6IHN0cmluZyk6IHRoaXMge1xuICAgIGlmICghaWQgfHwgIWlkLnRyaW0oKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCd0cmFkZUlkIG11c3QgYmUgYSBub24tZW1wdHkgc3RyaW5nJyk7XG4gICAgfVxuICAgIHRoaXMuX3RyYWRlSWQgPSBpZC50cmltKCk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgc3BlY2lmaWMgbGVnIGlkIGJlaW5nIGFsbG9jYXRlZCAoZS5nLiBgJHt0cmFkZUlkfS1zZWN1cml0eS1sZWdgKS5cbiAgICogQHBhcmFtIGlkIC0gdHJhbnNmZXIgbGVnIGlkXG4gICAqL1xuICB0cmFuc2ZlckxlZ0lkKGlkOiBzdHJpbmcpOiB0aGlzIHtcbiAgICBpZiAoIWlkIHx8ICFpZC50cmltKCkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcigndHJhbnNmZXJMZWdJZCBtdXN0IGJlIGEgbm9uLWVtcHR5IHN0cmluZycpO1xuICAgIH1cbiAgICB0aGlzLl90cmFuc2ZlckxlZ0lkID0gaWQudHJpbSgpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIHBhcnR5IHBlcmZvcm1pbmcgdGhpcyBhbGxvY2F0aW9uIChzZW5kZXIgb2YgdGhpcyBsZWcpLlxuICAgKiBAcGFyYW0gaWQgLSBzZW5kZXIgcGFydHkgaWRcbiAgICovXG4gIHNlbmRlclBhcnR5SWQoaWQ6IHN0cmluZyk6IHRoaXMge1xuICAgIGlmICghaWQgfHwgIWlkLnRyaW0oKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdzZW5kZXJQYXJ0eUlkIG11c3QgYmUgYSBub24tZW1wdHkgc3RyaW5nJyk7XG4gICAgfVxuICAgIHRoaXMuX3NlbmRlclBhcnR5SWQgPSBpZC50cmltKCk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgY291bnRlcnBhcnR5IHJlY2VpdmluZyB0aGUgYWxsb2NhdGVkIGFzc2V0LlxuICAgKiBAcGFyYW0gaWQgLSByZWNlaXZlciBwYXJ0eSBpZFxuICAgKi9cbiAgcmVjZWl2ZXJQYXJ0eUlkKGlkOiBzdHJpbmcpOiB0aGlzIHtcbiAgICBpZiAoIWlkIHx8ICFpZC50cmltKCkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcigncmVjZWl2ZXJQYXJ0eUlkIG11c3QgYmUgYSBub24tZW1wdHkgc3RyaW5nJyk7XG4gICAgfVxuICAgIHRoaXMuX3JlY2VpdmVyUGFydHlJZCA9IGlkLnRyaW0oKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBxdWFudGl0eSB0byBhbGxvY2F0ZS5cbiAgICogQHBhcmFtIGFtb3VudCAtIGFsbG9jYXRpb24gYW1vdW50LiBVc2UgYSBzdHJpbmcgb3IgYmlnaW50IGFib3ZlIE51bWJlci5NQVhfU0FGRV9JTlRFR0VSLlxuICAgKi9cbiAgYW1vdW50KGFtb3VudDogQ2FudG9uQW1vdW50SW5wdXQpOiB0aGlzIHtcbiAgICB0aGlzLl9hbW91bnQgPSBub3JtYWxpemVDYW50b25BbW91bnQoYW1vdW50LCAnYW1vdW50IG11c3QgYmUgYSBwb3NpdGl2ZSBudW1iZXInKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBCaXRHbyB0b2tlbiBpZGVudGlmaWVyIGZvciB0aGUgYXNzZXQgYmVpbmcgYWxsb2NhdGVkLlxuICAgKiBAcGFyYW0gdG9rZW4gLSB0b2tlbiBpZGVudGlmaWVyXG4gICAqL1xuICB0b2tlbih0b2tlbjogc3RyaW5nKTogdGhpcyB7XG4gICAgaWYgKCF0b2tlbiB8fCAhdG9rZW4udHJpbSgpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ3Rva2VuIG11c3QgYmUgYSBub24tZW1wdHkgc3RyaW5nJyk7XG4gICAgfVxuICAgIHRoaXMuX3Rva2VuID0gdG9rZW4udHJpbSgpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIEJpdEdvIHRva2VuIGlkZW50aWZpZXIgdGhlIGFsbG9jYXRpbmcgcGFydHkgd2lsbCByZWNlaXZlIG9uIHNldHRsZW1lbnQuXG4gICAqIEBwYXJhbSB0b2tlbiAtIHJlY2VpdmUgdG9rZW4gaWRlbnRpZmllclxuICAgKi9cbiAgcmVjZWl2ZVRva2VuKHRva2VuOiBzdHJpbmcpOiB0aGlzIHtcbiAgICBpZiAoIXRva2VuIHx8ICF0b2tlbi50cmltKCkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcigncmVjZWl2ZVRva2VuIG11c3QgYmUgYSBub24tZW1wdHkgc3RyaW5nJyk7XG4gICAgfVxuICAgIHRoaXMuX3JlY2VpdmVUb2tlbiA9IHRva2VuLnRyaW0oKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBxdWFudGl0eSB0aGUgYWxsb2NhdGluZyBwYXJ0eSB3aWxsIHJlY2VpdmUgb24gc2V0dGxlbWVudC5cbiAgICogQHBhcmFtIGFtb3VudCAtIHJlY2VpdmUgYW1vdW50LiBVc2UgYSBzdHJpbmcgb3IgYmlnaW50IGFib3ZlIE51bWJlci5NQVhfU0FGRV9JTlRFR0VSLlxuICAgKi9cbiAgcmVjZWl2ZUFtb3VudChhbW91bnQ6IENhbnRvbkFtb3VudElucHV0KTogdGhpcyB7XG4gICAgdGhpcy5fcmVjZWl2ZUFtb3VudCA9IG5vcm1hbGl6ZUNhbnRvbkFtb3VudChhbW91bnQsICdyZWNlaXZlQW1vdW50IG11c3QgYmUgYSBwb3NpdGl2ZSBudW1iZXInKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBsZWcgY2F0ZWdvcnk6IFwidHJhZGVcIiBmb3IgYSBEdlAgZGVsaXZlcnkgbGVnLCBcImZlZVwiIGZvciBhXG4gICAqIHBheW1lbnQtb25seSBvcGVyYXRvci1mZWUgbGVnLlxuICAgKiBAcGFyYW0gdHlwZSAtIGxlZyB0eXBlXG4gICAqL1xuICBsZWdUeXBlKHR5cGU6ICd0cmFkZScgfCAnZmVlJyk6IHRoaXMge1xuICAgIGlmICh0eXBlICE9PSAndHJhZGUnICYmIHR5cGUgIT09ICdmZWUnKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ2xlZ1R5cGUgbXVzdCBiZSBlaXRoZXIgXCJ0cmFkZVwiIG9yIFwiZmVlXCInKTtcbiAgICB9XG4gICAgdGhpcy5fbGVnVHlwZSA9IHR5cGU7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgdHJhZGUgaWRlbnRpZmllciBvZiB0aGUgcGFyZW50IHRyYWRlIHRoaXMgZmVlIGxlZyBiZWxvbmdzIHRvLlxuICAgKiBAcGFyYW0gaWQgLSBwYXJlbnQgdHJhZGUgaWRcbiAgICovXG4gIHBhcmVudFRyYWRlSWQoaWQ6IHN0cmluZyk6IHRoaXMge1xuICAgIGlmICghaWQgfHwgIWlkLnRyaW0oKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdwYXJlbnRUcmFkZUlkIG11c3QgYmUgYSBub24tZW1wdHkgc3RyaW5nJyk7XG4gICAgfVxuICAgIHRoaXMuX3BhcmVudFRyYWRlSWQgPSBpZC50cmltKCk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgSVNPIDg2MDEgZGVhZGxpbmUgYnkgd2hpY2ggYWxsb2NhdGlvbiBtdXN0IGJlIHN1Ym1pdHRlZC5cbiAgICogQHBhcmFtIGRlYWRsaW5lIC0gYWxsb2NhdGUtYmVmb3JlIHRpbWVzdGFtcFxuICAgKi9cbiAgYWxsb2NhdGVCZWZvcmUoZGVhZGxpbmU6IHN0cmluZyk6IHRoaXMge1xuICAgIGlmICghZGVhZGxpbmUgfHwgIWRlYWRsaW5lLnRyaW0oKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdhbGxvY2F0ZUJlZm9yZSBtdXN0IGJlIGEgbm9uLWVtcHR5IHN0cmluZycpO1xuICAgIH1cbiAgICB0aGlzLl9hbGxvY2F0ZUJlZm9yZSA9IGRlYWRsaW5lLnRyaW0oKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBJU08gODYwMSBkZWFkbGluZSBieSB3aGljaCBzZXR0bGVtZW50IG11c3QgY29tcGxldGUuXG4gICAqIEBwYXJhbSBkZWFkbGluZSAtIHNldHRsZS1iZWZvcmUgdGltZXN0YW1wXG4gICAqL1xuICBzZXR0bGVCZWZvcmUoZGVhZGxpbmU6IHN0cmluZyk6IHRoaXMge1xuICAgIGlmICghZGVhZGxpbmUgfHwgIWRlYWRsaW5lLnRyaW0oKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdzZXR0bGVCZWZvcmUgbXVzdCBiZSBhIG5vbi1lbXB0eSBzdHJpbmcnKTtcbiAgICB9XG4gICAgdGhpcy5fc2V0dGxlQmVmb3JlID0gZGVhZGxpbmUudHJpbSgpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgYW4gb3B0aW9uYWwgZnJlZS1mb3JtIGNvbW1lbnQuXG4gICAqIEBwYXJhbSBjb21tZW50IC0gY29tbWVudCBzdHJpbmdcbiAgICovXG4gIGNvbW1lbnQoY29tbWVudDogc3RyaW5nKTogdGhpcyB7XG4gICAgdGhpcy5fY29tbWVudCA9IGNvbW1lbnQ7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogQnVpbGRzIGFuZCByZXR1cm5zIHRoZSBBbGxvY2F0aW9uUmVxdWVzdCBvYmplY3QgZnJvbSB0aGUgYnVpbGRlcidzIGludGVybmFsIHN0YXRlLlxuICAgKlxuICAgKiBAcmV0dXJucyB7QWxsb2NhdGlvblJlcXVlc3R9IC0gQSBmdWxseSBjb25zdHJ1Y3RlZCBhbmQgdmFsaWRhdGVkIHJlcXVlc3Qgb2JqZWN0LlxuICAgKiBAdGhyb3dzIHtFcnJvcn0gSWYgYW55IHJlcXVpcmVkIGZpZWxkIGlzIG1pc3Npbmcgb3IgZmFpbHMgdmFsaWRhdGlvbi5cbiAgICovXG4gIHRvUmVxdWVzdE9iamVjdCgpOiBBbGxvY2F0aW9uUmVxdWVzdCB7XG4gICAgdGhpcy52YWxpZGF0ZSgpO1xuICAgIGNvbnN0IHJlc3VsdDogQWxsb2NhdGlvblJlcXVlc3QgPSB7XG4gICAgICB1cGRhdGVJZDogdGhpcy5fdXBkYXRlSWQsXG4gICAgICBvcGVyYXRvcklkOiB0aGlzLl9vcGVyYXRvcklkLFxuICAgICAgdHJhZGVJZDogdGhpcy5fdHJhZGVJZCxcbiAgICAgIHRyYW5zZmVyTGVnSWQ6IHRoaXMuX3RyYW5zZmVyTGVnSWQsXG4gICAgICBzZW5kZXJQYXJ0eUlkOiB0aGlzLl9zZW5kZXJQYXJ0eUlkLFxuICAgICAgcmVjZWl2ZXJQYXJ0eUlkOiB0aGlzLl9yZWNlaXZlclBhcnR5SWQsXG4gICAgICBhbW91bnQ6IHRoaXMuX2Ftb3VudCxcbiAgICAgIHRva2VuOiB0aGlzLl90b2tlbixcbiAgICAgIGFsbG9jYXRlQmVmb3JlOiB0aGlzLl9hbGxvY2F0ZUJlZm9yZSxcbiAgICAgIHNldHRsZUJlZm9yZTogdGhpcy5fc2V0dGxlQmVmb3JlLFxuICAgIH07XG4gICAgaWYgKHRoaXMuX2NvbnRyYWN0SWQgIT09IG51bGwgJiYgdGhpcy5fY29udHJhY3RJZCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICByZXN1bHQuY29udHJhY3RJZCA9IHRoaXMuX2NvbnRyYWN0SWQ7XG4gICAgfVxuICAgIGlmICh0aGlzLl9yZWNlaXZlVG9rZW4gIT09IHVuZGVmaW5lZCkge1xuICAgICAgcmVzdWx0LnJlY2VpdmVUb2tlbiA9IHRoaXMuX3JlY2VpdmVUb2tlbjtcbiAgICB9XG4gICAgaWYgKHRoaXMuX3JlY2VpdmVBbW91bnQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgcmVzdWx0LnJlY2VpdmVBbW91bnQgPSB0aGlzLl9yZWNlaXZlQW1vdW50O1xuICAgIH1cbiAgICBpZiAodGhpcy5fbGVnVHlwZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICByZXN1bHQubGVnVHlwZSA9IHRoaXMuX2xlZ1R5cGU7XG4gICAgfVxuICAgIGlmICh0aGlzLl9wYXJlbnRUcmFkZUlkICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHJlc3VsdC5wYXJlbnRUcmFkZUlkID0gdGhpcy5fcGFyZW50VHJhZGVJZDtcbiAgICB9XG4gICAgaWYgKHRoaXMuX2NvbW1lbnQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgcmVzdWx0LmNvbW1lbnQgPSB0aGlzLl9jb21tZW50O1xuICAgIH1cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgcHJpdmF0ZSB2YWxpZGF0ZSgpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuX3VwZGF0ZUlkKSB0aHJvdyBuZXcgRXJyb3IoJ3VwZGF0ZUlkIGlzIG1pc3NpbmcnKTtcbiAgICBpZiAoIXRoaXMuX29wZXJhdG9ySWQpIHRocm93IG5ldyBFcnJvcignb3BlcmF0b3JJZCBpcyBtaXNzaW5nJyk7XG4gICAgaWYgKHRoaXMuX2NvbnRyYWN0SWQgPT09IHVuZGVmaW5lZCkgdGhyb3cgbmV3IEVycm9yKCdjb250cmFjdElkIGlzIG1pc3NpbmcnKTtcbiAgICBpZiAoIXRoaXMuX3RyYWRlSWQpIHRocm93IG5ldyBFcnJvcigndHJhZGVJZCBpcyBtaXNzaW5nJyk7XG4gICAgaWYgKCF0aGlzLl90cmFuc2ZlckxlZ0lkKSB0aHJvdyBuZXcgRXJyb3IoJ3RyYW5zZmVyTGVnSWQgaXMgbWlzc2luZycpO1xuICAgIGlmICghdGhpcy5fc2VuZGVyUGFydHlJZCkgdGhyb3cgbmV3IEVycm9yKCdzZW5kZXJQYXJ0eUlkIGlzIG1pc3NpbmcnKTtcbiAgICBpZiAoIXRoaXMuX3JlY2VpdmVyUGFydHlJZCkgdGhyb3cgbmV3IEVycm9yKCdyZWNlaXZlclBhcnR5SWQgaXMgbWlzc2luZycpO1xuICAgIGlmICh0aGlzLl9hbW91bnQgPT09IHVuZGVmaW5lZCB8fCB0aGlzLl9hbW91bnQgPT09IG51bGwpIHRocm93IG5ldyBFcnJvcignYW1vdW50IGlzIG1pc3NpbmcnKTtcbiAgICBpZiAoIXRoaXMuX3Rva2VuKSB0aHJvdyBuZXcgRXJyb3IoJ3Rva2VuIGlzIG1pc3NpbmcnKTtcbiAgICBpZiAodGhpcy5fbGVnVHlwZSAhPT0gJ2ZlZScpIHtcbiAgICAgIC8vIFRyYWRlIGxlZ3MgKGV4cGxpY2l0IG9yIGxlZ2FjeSkgYWx3YXlzIGNhcnJ5IHRoZSByZWNlaXZlIHNpZGUgb2YgdGhlIHNldHRsZW1lbnQ7XG4gICAgICAvLyBmZWUgbGVncyBhcmUgcGF5bWVudC1vbmx5IOKAlCB0aGUgZmVlIHBheWVyIHJlY2VpdmVzIG5vdGhpbmcg4oCUIHNvIHRoZSByZWNlaXZlIGZpZWxkcyBhcmUgb21pdHRlZC5cbiAgICAgIGlmICghdGhpcy5fcmVjZWl2ZVRva2VuKSB0aHJvdyBuZXcgRXJyb3IoJ3JlY2VpdmVUb2tlbiBpcyBtaXNzaW5nJyk7XG4gICAgICBpZiAodGhpcy5fcmVjZWl2ZUFtb3VudCA9PT0gdW5kZWZpbmVkIHx8IHRoaXMuX3JlY2VpdmVBbW91bnQgPT09IG51bGwpXG4gICAgICAgIHRocm93IG5ldyBFcnJvcigncmVjZWl2ZUFtb3VudCBpcyBtaXNzaW5nJyk7XG4gICAgfVxuICAgIGlmICghdGhpcy5fYWxsb2NhdGVCZWZvcmUpIHRocm93IG5ldyBFcnJvcignYWxsb2NhdGVCZWZvcmUgaXMgbWlzc2luZycpO1xuICAgIGlmICghdGhpcy5fc2V0dGxlQmVmb3JlKSB0aHJvdyBuZXcgRXJyb3IoJ3NldHRsZUJlZm9yZSBpcyBtaXNzaW5nJyk7XG4gIH1cbn1cbiJdfQ==
@@ -189,6 +189,13 @@ export interface CantonAllocationAllocateRequest {
189
189
  * Internal (non-signable) data for an AllocationRequest txRequest.
190
190
  * Surfaces the full DvP trade leg to the allocating party so they can
191
191
  * review and then submit an AllocationAllocate.
192
+ *
193
+ * For a trade leg (`legType` "trade", or absent for legacy requests),
194
+ * `receiveToken`/`receiveAmount` show what the allocating party will receive
195
+ * upon successful settlement. A fee leg (`legType` "fee") is payment-only —
196
+ * the fee payer sends the operator fee and receives nothing — so the receive
197
+ * fields are absent and `parentTradeId` carries the trade identifier of the
198
+ * parent trade the fee belongs to.
192
199
  */
193
200
  export interface AllocationRequest {
194
201
  updateId: string;
@@ -200,8 +207,10 @@ export interface AllocationRequest {
200
207
  receiverPartyId: string;
201
208
  amount: CantonAmount;
202
209
  token: string;
203
- receiveToken: string;
204
- receiveAmount: CantonAmount;
210
+ receiveToken?: string;
211
+ receiveAmount?: CantonAmount;
212
+ legType?: 'trade' | 'fee';
213
+ parentTradeId?: string;
205
214
  allocateBefore: string;
206
215
  settleBefore: string;
207
216
  comment?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"iface.d.ts","sourceRoot":"","sources":["../../../src/lib/iface.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"iface.d.ts","sourceRoot":"","sources":["../../../src/lib/iface.ts"],"names":[],"mappings":"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"}
@@ -2,4 +2,4 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.CANTON_COMMAND_KEYS = void 0;
4
4
  exports.CANTON_COMMAND_KEYS = ['CreateCommand', 'ExerciseCommand'];
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2lmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQW9RYSxRQUFBLG1CQUFtQixHQUFHLENBQUMsZUFBZSxFQUFFLGlCQUFpQixDQUFVLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBUcmFuc2FjdGlvblR5cGUsXG4gIFRyYW5zYWN0aW9uRXhwbGFuYXRpb24gYXMgQmFzZVRyYW5zYWN0aW9uRXhwbGFuYXRpb24sXG4gIElUcmFuc2FjdGlvblJlY2lwaWVudCxcbiAgQ2FudG9uQ29tbWFuZCxcbiAgQ2FudG9uQ29tbWFuZFJlc29sdmVDb250cmFjdFNwZWMsXG59IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb3JlJztcbmltcG9ydCB7IERhbWxUcmFuc2FjdGlvbiwgTWV0YWRhdGEgfSBmcm9tICcuL3Jlc291cmNlc0ludGVyZmFjZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHJhbnNhY3Rpb25FeHBsYW5hdGlvbiBleHRlbmRzIEJhc2VUcmFuc2FjdGlvbkV4cGxhbmF0aW9uIHtcbiAgdHlwZTogVHJhbnNhY3Rpb25UeXBlO1xuICBpbnB1dHM/OiBJVHJhbnNhY3Rpb25SZWNpcGllbnRbXTtcbiAgaW5wdXRBbW91bnQ/OiBzdHJpbmc7XG4gIGNhbnRvbkNvbW1hbmQ/OiBDYW50b25Db21tYW5kRXhwbGFpbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDYW50b25Db21tYW5kRXhwbGFpbiB7XG4gIGtpbmQ6IENhbnRvbkNvbW1hbmRLaW5kO1xuICB0ZW1wbGF0ZUlkOiBzdHJpbmc7XG4gIGFjdEFzOiBzdHJpbmdbXTtcbiAgY2hvaWNlPzogc3RyaW5nO1xuICBjb250cmFjdElkPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFRoZSB0cmFuc2FjdGlvbiBkYXRhIHJldHVybmVkIGZyb20gdGhlIHRvSnNvbigpIGZ1bmN0aW9uIG9mIGEgdHJhbnNhY3Rpb25cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBUeERhdGEge1xuICBpZDogc3RyaW5nO1xuICB0eXBlOiBUcmFuc2FjdGlvblR5cGU7XG4gIHNlbmRlcjogc3RyaW5nO1xuICByZWNlaXZlcjogc3RyaW5nO1xuICBhbW91bnQ6IHN0cmluZztcbiAgYWNrbm93bGVkZ2VEYXRhPzogVHJhbnNmZXJBY2tub3dsZWRnZTtcbiAgY29zaWduRGVsZWdhdGlvblByb3Bvc2FsRGF0YT86IENvc2lnbkRlbGVnYXRpb25Qcm9wb3NhbDtcbiAgYWxsb2NhdGlvblJlcXVlc3REYXRhPzogQWxsb2NhdGlvblJlcXVlc3Q7XG4gIGVuZEludmVzdG9yT25ib2FyZGluZ09mZmVyRGF0YT86IEVuZEludmVzdG9yT25ib2FyZGluZ09mZmVyRGF0YTtcbiAgbWVtb0lkPzogc3RyaW5nO1xuICB0b2tlbj86IHN0cmluZztcbiAgY2FudG9uQ29tbWFuZD86IENhbnRvbkNvbW1hbmRFeHBsYWluO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFByZXBhcmVkVHhuUGFyc2VkSW5mbyB7XG4gIHNlbmRlcjogc3RyaW5nO1xuICByZWNlaXZlcjogc3RyaW5nO1xuICBhbW91bnQ6IHN0cmluZztcbiAgbWVtb0lkPzogc3RyaW5nO1xuICB0b2tlbj86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBXYWxsZXRJbml0VHhEYXRhIHtcbiAgaWQ6IHN0cmluZztcbiAgdHlwZTogVHJhbnNhY3Rpb25UeXBlO1xuICBwcmVwYXJlZFBhcnR5OiBQcmVwYXJlZFBhcnR5O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFVUWE9JbmZvIHtcbiAgY29udHJhY3RJZDogc3RyaW5nO1xuICB2YWx1ZTogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENhbnRvblByZXBhcmVDb21tYW5kUmVzcG9uc2Uge1xuICBwcmVwYXJlZFRyYW5zYWN0aW9uPzogc3RyaW5nO1xuICBwcmVwYXJlZFRyYW5zYWN0aW9uSGFzaDogc3RyaW5nO1xuICBoYXNoaW5nU2NoZW1lVmVyc2lvbjogc3RyaW5nO1xuICBoYXNoaW5nRGV0YWlscz86IHN0cmluZyB8IG51bGw7XG4gIHV0eG9JbmZvPzogVVRYT0luZm9bXTtcbiAgaXNPbmVTdGVwVHJhbnNmZXI/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFByZXBhcmVkUGFydHkge1xuICBwYXJ0eUlkOiBzdHJpbmc7XG4gIHB1YmxpY0tleUZpbmdlcnByaW50OiBzdHJpbmc7XG4gIHRvcG9sb2d5VHJhbnNhY3Rpb25zOiBzdHJpbmdbXTtcbiAgbXVsdGlIYXNoOiBzdHJpbmc7XG4gIHNob3VsZEluY2x1ZGVUeG5UeXBlPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQcmVwYXJlZFRyYW5zYWN0aW9uIHtcbiAgdHJhbnNhY3Rpb24/OiBEYW1sVHJhbnNhY3Rpb247XG4gIG1ldGFkYXRhPzogTWV0YWRhdGE7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVB1YmxpY0tleSB7XG4gIGZvcm1hdDogc3RyaW5nO1xuICBrZXlEYXRhOiBzdHJpbmc7XG4gIGtleVNwZWM6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBXYWxsZXRJbml0UmVxdWVzdCB7XG4gIHBhcnR5SGludDogc3RyaW5nO1xuICBwdWJsaWNLZXk6IElQdWJsaWNLZXk7XG4gIGxvY2FsUGFydGljaXBhbnRPYnNlcnZhdGlvbk9ubHk6IGJvb2xlYW47XG4gIG90aGVyQ29uZmlybWluZ1BhcnRpY2lwYW50VWlkczogc3RyaW5nW107XG4gIGNvbmZpcm1hdGlvblRocmVzaG9sZDogbnVtYmVyO1xuICBvYnNlcnZpbmdQYXJ0aWNpcGFudFVpZHM6IHN0cmluZ1tdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENhbnRvblByZXBhcmVDb21tYW5kUmVxdWVzdCB7XG4gIGNvbW1hbmRJZDogc3RyaW5nO1xuICB2ZXJib3NlSGFzaGluZzogYm9vbGVhbjtcbiAgYWN0QXM6IHN0cmluZ1tdO1xuICByZWFkQXM6IHN0cmluZ1tdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE9uYm9hcmRpbmdUcmFuc2FjdGlvbiB7XG4gIHRyYW5zYWN0aW9uOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTXVsdGlIYXNoU2lnbmF0dXJlIHtcbiAgZm9ybWF0OiBzdHJpbmc7XG4gIHNpZ25hdHVyZTogc3RyaW5nO1xuICBzaWduZWRCeTogc3RyaW5nO1xuICBzaWduaW5nQWxnb3JpdGhtU3BlYzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFdhbGxldEluaXRCcm9hZGNhc3REYXRhIHtcbiAgcHJlcGFyZWRQYXJ0eTogUHJlcGFyZWRQYXJ0eTtcbiAgb25ib2FyZGluZ1RyYW5zYWN0aW9uczogT25ib2FyZGluZ1RyYW5zYWN0aW9uW107XG4gIG11bHRpSGFzaFNpZ25hdHVyZXM6IE11bHRpSGFzaFNpZ25hdHVyZVtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBhcnR5U2lnbmF0dXJlIHtcbiAgcGFydHk6IHN0cmluZztcbiAgc2lnbmF0dXJlczogTXVsdGlIYXNoU2lnbmF0dXJlW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHJhbnNhY3Rpb25Ccm9hZGNhc3REYXRhIHtcbiAgYWNrbm93bGVkZ2VEYXRhPzogVHJhbnNmZXJBY2tub3dsZWRnZTtcbiAgY29zaWduRGVsZWdhdGlvblByb3Bvc2FsRGF0YT86IENvc2lnbkRlbGVnYXRpb25Qcm9wb3NhbDtcbiAgYWxsb2NhdGlvblJlcXVlc3REYXRhPzogQWxsb2NhdGlvblJlcXVlc3Q7XG4gIGVuZEludmVzdG9yT25ib2FyZGluZ09mZmVyRGF0YT86IEVuZEludmVzdG9yT25ib2FyZGluZ09mZmVyRGF0YTtcbiAgcHJlcGFyZUNvbW1hbmRSZXNwb25zZT86IENhbnRvblByZXBhcmVDb21tYW5kUmVzcG9uc2U7XG4gIHR4VHlwZTogc3RyaW5nO1xuICBwcmVwYXJlZFRyYW5zYWN0aW9uPzogc3RyaW5nO1xuICBwYXJ0eVNpZ25hdHVyZXM/OiB7XG4gICAgc2lnbmF0dXJlczogUGFydHlTaWduYXR1cmVbXTtcbiAgfTtcbiAgZGVkdXBsaWNhdGlvblBlcmlvZD86IHtcbiAgICBFbXB0eTogUmVjb3JkPHN0cmluZywgbmV2ZXI+O1xuICB9O1xuICBzdWJtaXNzaW9uSWQ6IHN0cmluZztcbiAgaGFzaGluZ1NjaGVtZVZlcnNpb24/OiBzdHJpbmc7XG4gIG1pbkxlZGdlclRpbWU/OiB7XG4gICAgdGltZToge1xuICAgICAgRW1wdHk6IFJlY29yZDxzdHJpbmcsIG5ldmVyPjtcbiAgICB9O1xuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENhbnRvbk9uZVN0ZXBFbmFibGVtZW50UmVxdWVzdCBleHRlbmRzIENhbnRvblByZXBhcmVDb21tYW5kUmVxdWVzdCB7XG4gIHJlY2VpdmVySWQ6IHN0cmluZztcbiAgdG9rZW5OYW1lPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFJlcXVlc3QgdG8gcmV2ZXJ0IGFuIGFjdGl2ZSAxLXN0ZXAgVHJhbnNmZXJQcmVhcHByb3ZhbCBiYWNrIHRvIDItc3RlcCBhcHByb3ZhbCAoZXhlcmNpc2VzXG4gKiBUcmFuc2ZlclByZWFwcHJvdmFsX0NhbmNlbCBvbiBTcGxpY2UuQW11bGV0UnVsZXM6VHJhbnNmZXJQcmVhcHByb3ZhbCkuIE1pcnJvcnNcbiAqIENhbnRvbk9uZVN0ZXBFbmFibGVtZW50UmVxdWVzdCdzIHNoYXBlIOKAlCBzYW1lIHJlY2VpdmVySWQvdG9rZW5OYW1lIGZpZWxkcywgb3Bwb3NpdGUgZGlyZWN0aW9uLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIENhbnRvblRyYW5zZmVyUHJlYXBwcm92YWxDYW5jZWxSZXF1ZXN0IGV4dGVuZHMgQ2FudG9uUHJlcGFyZUNvbW1hbmRSZXF1ZXN0IHtcbiAgcmVjZWl2ZXJJZDogc3RyaW5nO1xuICB0b2tlbk5hbWU/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ2FudG9uVHJhbnNmZXJBY2NlcHRSZWplY3RSZXF1ZXN0IGV4dGVuZHMgQ2FudG9uUHJlcGFyZUNvbW1hbmRSZXF1ZXN0IHtcbiAgY29udHJhY3RJZDogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENhbnRvblRyYW5zZmVyT2ZmZXJXaXRoZHJhd25SZXF1ZXN0IGV4dGVuZHMgQ2FudG9uVHJhbnNmZXJBY2NlcHRSZWplY3RSZXF1ZXN0IHtcbiAgdG9rZW5OYW1lPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENhbnRvbkFsbG9jYXRpb25BbGxvY2F0ZVdpdGhkcmF3blJlcXVlc3QgZXh0ZW5kcyBDYW50b25UcmFuc2ZlckFjY2VwdFJlamVjdFJlcXVlc3Qge1xuICB0b2tlbk5hbWU/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCB0eXBlIENhbnRvbkFtb3VudCA9IG51bWJlciB8IHN0cmluZztcbmV4cG9ydCB0eXBlIENhbnRvbkFtb3VudElucHV0ID0gQ2FudG9uQW1vdW50IHwgYmlnaW50O1xuXG5leHBvcnQgaW50ZXJmYWNlIFRyYW5zZmVyQWNrbm93bGVkZ2Uge1xuICBjb250cmFjdElkOiBzdHJpbmc7XG4gIHNlbmRlclBhcnR5SWQ6IHN0cmluZztcbiAgYW1vdW50OiBDYW50b25BbW91bnQ7XG4gIGV4cGlyeUVwb2NoOiBudW1iZXI7XG4gIHVwZGF0ZUlkOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29zaWduRGVsZWdhdGlvblByb3Bvc2FsIHtcbiAgY29udHJhY3RJZDogc3RyaW5nO1xuICBvcGVyYXRvcklkOiBzdHJpbmc7XG4gIHVwZGF0ZUlkOiBzdHJpbmc7XG4gIHBhY2thZ2VOYW1lPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENhbnRvblRyYW5zZmVyUmVxdWVzdCB7XG4gIGNvbW1hbmRJZDogc3RyaW5nO1xuICBzZW5kZXJQYXJ0eUlkOiBzdHJpbmc7XG4gIHJlY2VpdmVyUGFydHlJZDogc3RyaW5nO1xuICBhbW91bnQ6IENhbnRvbkFtb3VudDtcbiAgZXhwaXJ5RXBvY2g6IG51bWJlcjtcbiAgc2VuZFZpYU9uZVN0ZXA6IGJvb2xlYW47XG4gIG1lbW9JZD86IHN0cmluZztcbiAgdG9rZW5OYW1lPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENhbnRvbkFsbG9jYXRpb25BbGxvY2F0ZVJlcXVlc3Qge1xuICBjb21tYW5kSWQ6IHN0cmluZztcbiAgYW1vdW50OiBDYW50b25BbW91bnQ7XG4gIHRva2VuOiBzdHJpbmc7XG4gIG9wZXJhdG9ySWQ6IHN0cmluZztcbiAgY29udHJhY3RJZD86IHN0cmluZztcbiAgdHJhZGVJZDogc3RyaW5nO1xuICB0cmFuc2ZlckxlZ0lkOiBzdHJpbmc7XG4gIGFsbG9jYXRlQmVmb3JlOiBzdHJpbmc7XG4gIHNldHRsZUJlZm9yZTogc3RyaW5nO1xuICByZWNlaXZlclBhcnR5SWQ6IHN0cmluZztcbiAgc2VuZGVyUGFydHlJZDogc3RyaW5nO1xuICBjb21tZW50Pzogc3RyaW5nO1xufVxuXG4vKipcbiAqIEludGVybmFsIChub24tc2lnbmFibGUpIGRhdGEgZm9yIGFuIEFsbG9jYXRpb25SZXF1ZXN0IHR4UmVxdWVzdC5cbiAqIFN1cmZhY2VzIHRoZSBmdWxsIER2UCB0cmFkZSBsZWcgdG8gdGhlIGFsbG9jYXRpbmcgcGFydHkgc28gdGhleSBjYW5cbiAqIHJldmlldyBhbmQgdGhlbiBzdWJtaXQgYW4gQWxsb2NhdGlvbkFsbG9jYXRlLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEFsbG9jYXRpb25SZXF1ZXN0IHtcbiAgdXBkYXRlSWQ6IHN0cmluZztcbiAgb3BlcmF0b3JJZDogc3RyaW5nO1xuICBjb250cmFjdElkPzogc3RyaW5nO1xuICB0cmFkZUlkOiBzdHJpbmc7XG4gIHRyYW5zZmVyTGVnSWQ6IHN0cmluZztcbiAgc2VuZGVyUGFydHlJZDogc3RyaW5nO1xuICByZWNlaXZlclBhcnR5SWQ6IHN0cmluZztcbiAgYW1vdW50OiBDYW50b25BbW91bnQ7XG4gIHRva2VuOiBzdHJpbmc7XG4gIHJlY2VpdmVUb2tlbjogc3RyaW5nO1xuICByZWNlaXZlQW1vdW50OiBDYW50b25BbW91bnQ7XG4gIGFsbG9jYXRlQmVmb3JlOiBzdHJpbmc7XG4gIHNldHRsZUJlZm9yZTogc3RyaW5nO1xuICBjb21tZW50Pzogc3RyaW5nO1xufVxuXG4vKipcbiAqIEludGVybmFsIChub24tc2lnbmFibGUpIGRhdGEgZm9yIGFuIEVuZEludmVzdG9yT25ib2FyZGluZ09mZmVyIHR4UmVxdWVzdC5cbiAqIFJlY29yZHMgYW4gb24tY2hhaW4gRW5kSW52ZXN0b3JPbmJvYXJkaW5nT2ZmZXIgY29udHJhY3Qgb24gdGhlIGVuZCBpbnZlc3RvcidzIHdhbGxldFxuICogc28gdGhleSBjYW4gYWNjZXB0IG9yIHJlamVjdC4gQnVpbHQgbG9jYWxseSB3aXRob3V0IGFuIElNUyBjYWxsIOKAlCB0aGUgcGFydGljaXBhbnRcbiAqIHBhcnR5IG1heSBiZSBleHRlcm5hbCAobm9uLUJpdEdvKSBhbmQgdGhlcmVmb3JlIG5vdCByZWdpc3RlcmVkIGluIEJpdEdvJ3MgSU1TLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEVuZEludmVzdG9yT25ib2FyZGluZ09mZmVyRGF0YSB7XG4gIC8qKiBUaGUgb24tY2hhaW4gY29udHJhY3RJZCBvZiB0aGUgRW5kSW52ZXN0b3JPbmJvYXJkaW5nT2ZmZXIgKGZyb20gcGVuZGluZ0NvbnRyYWN0SWQpLiAqL1xuICBjb250cmFjdElkOiBzdHJpbmc7XG4gIC8qKiBDYW50b24gcGFydHkgSUQgb2YgdGhlIGVuZCBpbnZlc3RvciBiZWluZyBvbmJvYXJkZWQuICovXG4gIGVuZEludmVzdG9yUGFydHlJZDogc3RyaW5nO1xuICAvKiogQ2FudG9uIHBhcnR5IElEIG9mIHRoZSBwYXJ0aWNpcGFudCB0aGF0IGNyZWF0ZWQgdGhlIG9mZmVyIChtYXkgYmUgZXh0ZXJuYWwgdG8gQml0R28pLiAqL1xuICBwYXJ0aWNpcGFudFBhcnR5SWQ6IHN0cmluZztcbiAgLyoqIE9wdGlvbmFsIGNvbW1lbnQgZnJvbSB0aGUgcGFydGljaXBhbnQuICovXG4gIGNvbW1lbnQ/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBjb25zdCBDQU5UT05fQ09NTUFORF9LRVlTID0gWydDcmVhdGVDb21tYW5kJywgJ0V4ZXJjaXNlQ29tbWFuZCddIGFzIGNvbnN0O1xuZXhwb3J0IHR5cGUgQ2FudG9uQ29tbWFuZEtpbmQgPSAodHlwZW9mIENBTlRPTl9DT01NQU5EX0tFWVMpW251bWJlcl07XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ2FudG9uQ29tbWFuZFJlcXVlc3Qge1xuICBjb21tYW5kSWQ6IHN0cmluZztcbiAgYWN0QXM6IHN0cmluZ1tdO1xuICByZWFkQXM/OiBzdHJpbmdbXTtcbiAgY29tbWFuZDogQ2FudG9uQ29tbWFuZDtcbiAgcmVzb2x2ZUNvbnRyYWN0cz86IENhbnRvbkNvbW1hbmRSZXNvbHZlQ29udHJhY3RTcGVjW107XG4gIHRva2VuPzogc3RyaW5nO1xufVxuXG4vLyBSb290IGNvbW1hbmQgZGVjb2RlZCBmcm9tIHRoZSBwcmVwYXJlZCBDYW50b24gdHJhbnNhY3Rpb24gcHJvdG9idWYsIHVzZWQgZHVyaW5nIHZlcmlmeVRyYW5zYWN0aW9uLlxuZXhwb3J0IGludGVyZmFjZSBDYW50b25Db21tYW5kSW5mbyB7XG4gIGtpbmQ6IENhbnRvbkNvbW1hbmRLaW5kO1xuICB0ZW1wbGF0ZUlkOiB7XG4gICAgcGFja2FnZUlkOiBzdHJpbmc7XG4gICAgbW9kdWxlTmFtZTogc3RyaW5nO1xuICAgIGVudGl0eU5hbWU6IHN0cmluZztcbiAgfTtcbiAgYXJndW1lbnQ6IHVua25vd247XG4gIGNob2ljZT86IHN0cmluZzsgLy8gRXhlcmNpc2VDb21tYW5kIG9ubHlcbiAgY29udHJhY3RJZD86IHN0cmluZzsgLy8gRXhlcmNpc2VDb21tYW5kIG9ubHlcbiAgYWN0aW5nUGFydGllcz86IHN0cmluZ1tdOyAvLyBFeGVyY2lzZUNvbW1hbmQgb25seVxufVxuIl19
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2lmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQTZRYSxRQUFBLG1CQUFtQixHQUFHLENBQUMsZUFBZSxFQUFFLGlCQUFpQixDQUFVLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBUcmFuc2FjdGlvblR5cGUsXG4gIFRyYW5zYWN0aW9uRXhwbGFuYXRpb24gYXMgQmFzZVRyYW5zYWN0aW9uRXhwbGFuYXRpb24sXG4gIElUcmFuc2FjdGlvblJlY2lwaWVudCxcbiAgQ2FudG9uQ29tbWFuZCxcbiAgQ2FudG9uQ29tbWFuZFJlc29sdmVDb250cmFjdFNwZWMsXG59IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb3JlJztcbmltcG9ydCB7IERhbWxUcmFuc2FjdGlvbiwgTWV0YWRhdGEgfSBmcm9tICcuL3Jlc291cmNlc0ludGVyZmFjZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHJhbnNhY3Rpb25FeHBsYW5hdGlvbiBleHRlbmRzIEJhc2VUcmFuc2FjdGlvbkV4cGxhbmF0aW9uIHtcbiAgdHlwZTogVHJhbnNhY3Rpb25UeXBlO1xuICBpbnB1dHM/OiBJVHJhbnNhY3Rpb25SZWNpcGllbnRbXTtcbiAgaW5wdXRBbW91bnQ/OiBzdHJpbmc7XG4gIGNhbnRvbkNvbW1hbmQ/OiBDYW50b25Db21tYW5kRXhwbGFpbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDYW50b25Db21tYW5kRXhwbGFpbiB7XG4gIGtpbmQ6IENhbnRvbkNvbW1hbmRLaW5kO1xuICB0ZW1wbGF0ZUlkOiBzdHJpbmc7XG4gIGFjdEFzOiBzdHJpbmdbXTtcbiAgY2hvaWNlPzogc3RyaW5nO1xuICBjb250cmFjdElkPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFRoZSB0cmFuc2FjdGlvbiBkYXRhIHJldHVybmVkIGZyb20gdGhlIHRvSnNvbigpIGZ1bmN0aW9uIG9mIGEgdHJhbnNhY3Rpb25cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBUeERhdGEge1xuICBpZDogc3RyaW5nO1xuICB0eXBlOiBUcmFuc2FjdGlvblR5cGU7XG4gIHNlbmRlcjogc3RyaW5nO1xuICByZWNlaXZlcjogc3RyaW5nO1xuICBhbW91bnQ6IHN0cmluZztcbiAgYWNrbm93bGVkZ2VEYXRhPzogVHJhbnNmZXJBY2tub3dsZWRnZTtcbiAgY29zaWduRGVsZWdhdGlvblByb3Bvc2FsRGF0YT86IENvc2lnbkRlbGVnYXRpb25Qcm9wb3NhbDtcbiAgYWxsb2NhdGlvblJlcXVlc3REYXRhPzogQWxsb2NhdGlvblJlcXVlc3Q7XG4gIGVuZEludmVzdG9yT25ib2FyZGluZ09mZmVyRGF0YT86IEVuZEludmVzdG9yT25ib2FyZGluZ09mZmVyRGF0YTtcbiAgbWVtb0lkPzogc3RyaW5nO1xuICB0b2tlbj86IHN0cmluZztcbiAgY2FudG9uQ29tbWFuZD86IENhbnRvbkNvbW1hbmRFeHBsYWluO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFByZXBhcmVkVHhuUGFyc2VkSW5mbyB7XG4gIHNlbmRlcjogc3RyaW5nO1xuICByZWNlaXZlcjogc3RyaW5nO1xuICBhbW91bnQ6IHN0cmluZztcbiAgbWVtb0lkPzogc3RyaW5nO1xuICB0b2tlbj86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBXYWxsZXRJbml0VHhEYXRhIHtcbiAgaWQ6IHN0cmluZztcbiAgdHlwZTogVHJhbnNhY3Rpb25UeXBlO1xuICBwcmVwYXJlZFBhcnR5OiBQcmVwYXJlZFBhcnR5O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFVUWE9JbmZvIHtcbiAgY29udHJhY3RJZDogc3RyaW5nO1xuICB2YWx1ZTogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENhbnRvblByZXBhcmVDb21tYW5kUmVzcG9uc2Uge1xuICBwcmVwYXJlZFRyYW5zYWN0aW9uPzogc3RyaW5nO1xuICBwcmVwYXJlZFRyYW5zYWN0aW9uSGFzaDogc3RyaW5nO1xuICBoYXNoaW5nU2NoZW1lVmVyc2lvbjogc3RyaW5nO1xuICBoYXNoaW5nRGV0YWlscz86IHN0cmluZyB8IG51bGw7XG4gIHV0eG9JbmZvPzogVVRYT0luZm9bXTtcbiAgaXNPbmVTdGVwVHJhbnNmZXI/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFByZXBhcmVkUGFydHkge1xuICBwYXJ0eUlkOiBzdHJpbmc7XG4gIHB1YmxpY0tleUZpbmdlcnByaW50OiBzdHJpbmc7XG4gIHRvcG9sb2d5VHJhbnNhY3Rpb25zOiBzdHJpbmdbXTtcbiAgbXVsdGlIYXNoOiBzdHJpbmc7XG4gIHNob3VsZEluY2x1ZGVUeG5UeXBlPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQcmVwYXJlZFRyYW5zYWN0aW9uIHtcbiAgdHJhbnNhY3Rpb24/OiBEYW1sVHJhbnNhY3Rpb247XG4gIG1ldGFkYXRhPzogTWV0YWRhdGE7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVB1YmxpY0tleSB7XG4gIGZvcm1hdDogc3RyaW5nO1xuICBrZXlEYXRhOiBzdHJpbmc7XG4gIGtleVNwZWM6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBXYWxsZXRJbml0UmVxdWVzdCB7XG4gIHBhcnR5SGludDogc3RyaW5nO1xuICBwdWJsaWNLZXk6IElQdWJsaWNLZXk7XG4gIGxvY2FsUGFydGljaXBhbnRPYnNlcnZhdGlvbk9ubHk6IGJvb2xlYW47XG4gIG90aGVyQ29uZmlybWluZ1BhcnRpY2lwYW50VWlkczogc3RyaW5nW107XG4gIGNvbmZpcm1hdGlvblRocmVzaG9sZDogbnVtYmVyO1xuICBvYnNlcnZpbmdQYXJ0aWNpcGFudFVpZHM6IHN0cmluZ1tdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENhbnRvblByZXBhcmVDb21tYW5kUmVxdWVzdCB7XG4gIGNvbW1hbmRJZDogc3RyaW5nO1xuICB2ZXJib3NlSGFzaGluZzogYm9vbGVhbjtcbiAgYWN0QXM6IHN0cmluZ1tdO1xuICByZWFkQXM6IHN0cmluZ1tdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE9uYm9hcmRpbmdUcmFuc2FjdGlvbiB7XG4gIHRyYW5zYWN0aW9uOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTXVsdGlIYXNoU2lnbmF0dXJlIHtcbiAgZm9ybWF0OiBzdHJpbmc7XG4gIHNpZ25hdHVyZTogc3RyaW5nO1xuICBzaWduZWRCeTogc3RyaW5nO1xuICBzaWduaW5nQWxnb3JpdGhtU3BlYzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFdhbGxldEluaXRCcm9hZGNhc3REYXRhIHtcbiAgcHJlcGFyZWRQYXJ0eTogUHJlcGFyZWRQYXJ0eTtcbiAgb25ib2FyZGluZ1RyYW5zYWN0aW9uczogT25ib2FyZGluZ1RyYW5zYWN0aW9uW107XG4gIG11bHRpSGFzaFNpZ25hdHVyZXM6IE11bHRpSGFzaFNpZ25hdHVyZVtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBhcnR5U2lnbmF0dXJlIHtcbiAgcGFydHk6IHN0cmluZztcbiAgc2lnbmF0dXJlczogTXVsdGlIYXNoU2lnbmF0dXJlW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHJhbnNhY3Rpb25Ccm9hZGNhc3REYXRhIHtcbiAgYWNrbm93bGVkZ2VEYXRhPzogVHJhbnNmZXJBY2tub3dsZWRnZTtcbiAgY29zaWduRGVsZWdhdGlvblByb3Bvc2FsRGF0YT86IENvc2lnbkRlbGVnYXRpb25Qcm9wb3NhbDtcbiAgYWxsb2NhdGlvblJlcXVlc3REYXRhPzogQWxsb2NhdGlvblJlcXVlc3Q7XG4gIGVuZEludmVzdG9yT25ib2FyZGluZ09mZmVyRGF0YT86IEVuZEludmVzdG9yT25ib2FyZGluZ09mZmVyRGF0YTtcbiAgcHJlcGFyZUNvbW1hbmRSZXNwb25zZT86IENhbnRvblByZXBhcmVDb21tYW5kUmVzcG9uc2U7XG4gIHR4VHlwZTogc3RyaW5nO1xuICBwcmVwYXJlZFRyYW5zYWN0aW9uPzogc3RyaW5nO1xuICBwYXJ0eVNpZ25hdHVyZXM/OiB7XG4gICAgc2lnbmF0dXJlczogUGFydHlTaWduYXR1cmVbXTtcbiAgfTtcbiAgZGVkdXBsaWNhdGlvblBlcmlvZD86IHtcbiAgICBFbXB0eTogUmVjb3JkPHN0cmluZywgbmV2ZXI+O1xuICB9O1xuICBzdWJtaXNzaW9uSWQ6IHN0cmluZztcbiAgaGFzaGluZ1NjaGVtZVZlcnNpb24/OiBzdHJpbmc7XG4gIG1pbkxlZGdlclRpbWU/OiB7XG4gICAgdGltZToge1xuICAgICAgRW1wdHk6IFJlY29yZDxzdHJpbmcsIG5ldmVyPjtcbiAgICB9O1xuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENhbnRvbk9uZVN0ZXBFbmFibGVtZW50UmVxdWVzdCBleHRlbmRzIENhbnRvblByZXBhcmVDb21tYW5kUmVxdWVzdCB7XG4gIHJlY2VpdmVySWQ6IHN0cmluZztcbiAgdG9rZW5OYW1lPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFJlcXVlc3QgdG8gcmV2ZXJ0IGFuIGFjdGl2ZSAxLXN0ZXAgVHJhbnNmZXJQcmVhcHByb3ZhbCBiYWNrIHRvIDItc3RlcCBhcHByb3ZhbCAoZXhlcmNpc2VzXG4gKiBUcmFuc2ZlclByZWFwcHJvdmFsX0NhbmNlbCBvbiBTcGxpY2UuQW11bGV0UnVsZXM6VHJhbnNmZXJQcmVhcHByb3ZhbCkuIE1pcnJvcnNcbiAqIENhbnRvbk9uZVN0ZXBFbmFibGVtZW50UmVxdWVzdCdzIHNoYXBlIOKAlCBzYW1lIHJlY2VpdmVySWQvdG9rZW5OYW1lIGZpZWxkcywgb3Bwb3NpdGUgZGlyZWN0aW9uLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIENhbnRvblRyYW5zZmVyUHJlYXBwcm92YWxDYW5jZWxSZXF1ZXN0IGV4dGVuZHMgQ2FudG9uUHJlcGFyZUNvbW1hbmRSZXF1ZXN0IHtcbiAgcmVjZWl2ZXJJZDogc3RyaW5nO1xuICB0b2tlbk5hbWU/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ2FudG9uVHJhbnNmZXJBY2NlcHRSZWplY3RSZXF1ZXN0IGV4dGVuZHMgQ2FudG9uUHJlcGFyZUNvbW1hbmRSZXF1ZXN0IHtcbiAgY29udHJhY3RJZDogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENhbnRvblRyYW5zZmVyT2ZmZXJXaXRoZHJhd25SZXF1ZXN0IGV4dGVuZHMgQ2FudG9uVHJhbnNmZXJBY2NlcHRSZWplY3RSZXF1ZXN0IHtcbiAgdG9rZW5OYW1lPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENhbnRvbkFsbG9jYXRpb25BbGxvY2F0ZVdpdGhkcmF3blJlcXVlc3QgZXh0ZW5kcyBDYW50b25UcmFuc2ZlckFjY2VwdFJlamVjdFJlcXVlc3Qge1xuICB0b2tlbk5hbWU/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCB0eXBlIENhbnRvbkFtb3VudCA9IG51bWJlciB8IHN0cmluZztcbmV4cG9ydCB0eXBlIENhbnRvbkFtb3VudElucHV0ID0gQ2FudG9uQW1vdW50IHwgYmlnaW50O1xuXG5leHBvcnQgaW50ZXJmYWNlIFRyYW5zZmVyQWNrbm93bGVkZ2Uge1xuICBjb250cmFjdElkOiBzdHJpbmc7XG4gIHNlbmRlclBhcnR5SWQ6IHN0cmluZztcbiAgYW1vdW50OiBDYW50b25BbW91bnQ7XG4gIGV4cGlyeUVwb2NoOiBudW1iZXI7XG4gIHVwZGF0ZUlkOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29zaWduRGVsZWdhdGlvblByb3Bvc2FsIHtcbiAgY29udHJhY3RJZDogc3RyaW5nO1xuICBvcGVyYXRvcklkOiBzdHJpbmc7XG4gIHVwZGF0ZUlkOiBzdHJpbmc7XG4gIHBhY2thZ2VOYW1lPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENhbnRvblRyYW5zZmVyUmVxdWVzdCB7XG4gIGNvbW1hbmRJZDogc3RyaW5nO1xuICBzZW5kZXJQYXJ0eUlkOiBzdHJpbmc7XG4gIHJlY2VpdmVyUGFydHlJZDogc3RyaW5nO1xuICBhbW91bnQ6IENhbnRvbkFtb3VudDtcbiAgZXhwaXJ5RXBvY2g6IG51bWJlcjtcbiAgc2VuZFZpYU9uZVN0ZXA6IGJvb2xlYW47XG4gIG1lbW9JZD86IHN0cmluZztcbiAgdG9rZW5OYW1lPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENhbnRvbkFsbG9jYXRpb25BbGxvY2F0ZVJlcXVlc3Qge1xuICBjb21tYW5kSWQ6IHN0cmluZztcbiAgYW1vdW50OiBDYW50b25BbW91bnQ7XG4gIHRva2VuOiBzdHJpbmc7XG4gIG9wZXJhdG9ySWQ6IHN0cmluZztcbiAgY29udHJhY3RJZD86IHN0cmluZztcbiAgdHJhZGVJZDogc3RyaW5nO1xuICB0cmFuc2ZlckxlZ0lkOiBzdHJpbmc7XG4gIGFsbG9jYXRlQmVmb3JlOiBzdHJpbmc7XG4gIHNldHRsZUJlZm9yZTogc3RyaW5nO1xuICByZWNlaXZlclBhcnR5SWQ6IHN0cmluZztcbiAgc2VuZGVyUGFydHlJZDogc3RyaW5nO1xuICBjb21tZW50Pzogc3RyaW5nO1xufVxuXG4vKipcbiAqIEludGVybmFsIChub24tc2lnbmFibGUpIGRhdGEgZm9yIGFuIEFsbG9jYXRpb25SZXF1ZXN0IHR4UmVxdWVzdC5cbiAqIFN1cmZhY2VzIHRoZSBmdWxsIER2UCB0cmFkZSBsZWcgdG8gdGhlIGFsbG9jYXRpbmcgcGFydHkgc28gdGhleSBjYW5cbiAqIHJldmlldyBhbmQgdGhlbiBzdWJtaXQgYW4gQWxsb2NhdGlvbkFsbG9jYXRlLlxuICpcbiAqIEZvciBhIHRyYWRlIGxlZyAoYGxlZ1R5cGVgIFwidHJhZGVcIiwgb3IgYWJzZW50IGZvciBsZWdhY3kgcmVxdWVzdHMpLFxuICogYHJlY2VpdmVUb2tlbmAvYHJlY2VpdmVBbW91bnRgIHNob3cgd2hhdCB0aGUgYWxsb2NhdGluZyBwYXJ0eSB3aWxsIHJlY2VpdmVcbiAqIHVwb24gc3VjY2Vzc2Z1bCBzZXR0bGVtZW50LiBBIGZlZSBsZWcgKGBsZWdUeXBlYCBcImZlZVwiKSBpcyBwYXltZW50LW9ubHkg4oCUXG4gKiB0aGUgZmVlIHBheWVyIHNlbmRzIHRoZSBvcGVyYXRvciBmZWUgYW5kIHJlY2VpdmVzIG5vdGhpbmcg4oCUIHNvIHRoZSByZWNlaXZlXG4gKiBmaWVsZHMgYXJlIGFic2VudCBhbmQgYHBhcmVudFRyYWRlSWRgIGNhcnJpZXMgdGhlIHRyYWRlIGlkZW50aWZpZXIgb2YgdGhlXG4gKiBwYXJlbnQgdHJhZGUgdGhlIGZlZSBiZWxvbmdzIHRvLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEFsbG9jYXRpb25SZXF1ZXN0IHtcbiAgdXBkYXRlSWQ6IHN0cmluZztcbiAgb3BlcmF0b3JJZDogc3RyaW5nO1xuICBjb250cmFjdElkPzogc3RyaW5nO1xuICB0cmFkZUlkOiBzdHJpbmc7XG4gIHRyYW5zZmVyTGVnSWQ6IHN0cmluZztcbiAgc2VuZGVyUGFydHlJZDogc3RyaW5nO1xuICByZWNlaXZlclBhcnR5SWQ6IHN0cmluZztcbiAgYW1vdW50OiBDYW50b25BbW91bnQ7XG4gIHRva2VuOiBzdHJpbmc7XG4gIHJlY2VpdmVUb2tlbj86IHN0cmluZztcbiAgcmVjZWl2ZUFtb3VudD86IENhbnRvbkFtb3VudDtcbiAgbGVnVHlwZT86ICd0cmFkZScgfCAnZmVlJztcbiAgcGFyZW50VHJhZGVJZD86IHN0cmluZztcbiAgYWxsb2NhdGVCZWZvcmU6IHN0cmluZztcbiAgc2V0dGxlQmVmb3JlOiBzdHJpbmc7XG4gIGNvbW1lbnQ/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogSW50ZXJuYWwgKG5vbi1zaWduYWJsZSkgZGF0YSBmb3IgYW4gRW5kSW52ZXN0b3JPbmJvYXJkaW5nT2ZmZXIgdHhSZXF1ZXN0LlxuICogUmVjb3JkcyBhbiBvbi1jaGFpbiBFbmRJbnZlc3Rvck9uYm9hcmRpbmdPZmZlciBjb250cmFjdCBvbiB0aGUgZW5kIGludmVzdG9yJ3Mgd2FsbGV0XG4gKiBzbyB0aGV5IGNhbiBhY2NlcHQgb3IgcmVqZWN0LiBCdWlsdCBsb2NhbGx5IHdpdGhvdXQgYW4gSU1TIGNhbGwg4oCUIHRoZSBwYXJ0aWNpcGFudFxuICogcGFydHkgbWF5IGJlIGV4dGVybmFsIChub24tQml0R28pIGFuZCB0aGVyZWZvcmUgbm90IHJlZ2lzdGVyZWQgaW4gQml0R28ncyBJTVMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRW5kSW52ZXN0b3JPbmJvYXJkaW5nT2ZmZXJEYXRhIHtcbiAgLyoqIFRoZSBvbi1jaGFpbiBjb250cmFjdElkIG9mIHRoZSBFbmRJbnZlc3Rvck9uYm9hcmRpbmdPZmZlciAoZnJvbSBwZW5kaW5nQ29udHJhY3RJZCkuICovXG4gIGNvbnRyYWN0SWQ6IHN0cmluZztcbiAgLyoqIENhbnRvbiBwYXJ0eSBJRCBvZiB0aGUgZW5kIGludmVzdG9yIGJlaW5nIG9uYm9hcmRlZC4gKi9cbiAgZW5kSW52ZXN0b3JQYXJ0eUlkOiBzdHJpbmc7XG4gIC8qKiBDYW50b24gcGFydHkgSUQgb2YgdGhlIHBhcnRpY2lwYW50IHRoYXQgY3JlYXRlZCB0aGUgb2ZmZXIgKG1heSBiZSBleHRlcm5hbCB0byBCaXRHbykuICovXG4gIHBhcnRpY2lwYW50UGFydHlJZDogc3RyaW5nO1xuICAvKiogT3B0aW9uYWwgY29tbWVudCBmcm9tIHRoZSBwYXJ0aWNpcGFudC4gKi9cbiAgY29tbWVudD86IHN0cmluZztcbn1cblxuZXhwb3J0IGNvbnN0IENBTlRPTl9DT01NQU5EX0tFWVMgPSBbJ0NyZWF0ZUNvbW1hbmQnLCAnRXhlcmNpc2VDb21tYW5kJ10gYXMgY29uc3Q7XG5leHBvcnQgdHlwZSBDYW50b25Db21tYW5kS2luZCA9ICh0eXBlb2YgQ0FOVE9OX0NPTU1BTkRfS0VZUylbbnVtYmVyXTtcblxuZXhwb3J0IGludGVyZmFjZSBDYW50b25Db21tYW5kUmVxdWVzdCB7XG4gIGNvbW1hbmRJZDogc3RyaW5nO1xuICBhY3RBczogc3RyaW5nW107XG4gIHJlYWRBcz86IHN0cmluZ1tdO1xuICBjb21tYW5kOiBDYW50b25Db21tYW5kO1xuICByZXNvbHZlQ29udHJhY3RzPzogQ2FudG9uQ29tbWFuZFJlc29sdmVDb250cmFjdFNwZWNbXTtcbiAgdG9rZW4/OiBzdHJpbmc7XG59XG5cbi8vIFJvb3QgY29tbWFuZCBkZWNvZGVkIGZyb20gdGhlIHByZXBhcmVkIENhbnRvbiB0cmFuc2FjdGlvbiBwcm90b2J1ZiwgdXNlZCBkdXJpbmcgdmVyaWZ5VHJhbnNhY3Rpb24uXG5leHBvcnQgaW50ZXJmYWNlIENhbnRvbkNvbW1hbmRJbmZvIHtcbiAga2luZDogQ2FudG9uQ29tbWFuZEtpbmQ7XG4gIHRlbXBsYXRlSWQ6IHtcbiAgICBwYWNrYWdlSWQ6IHN0cmluZztcbiAgICBtb2R1bGVOYW1lOiBzdHJpbmc7XG4gICAgZW50aXR5TmFtZTogc3RyaW5nO1xuICB9O1xuICBhcmd1bWVudDogdW5rbm93bjtcbiAgY2hvaWNlPzogc3RyaW5nOyAvLyBFeGVyY2lzZUNvbW1hbmQgb25seVxuICBjb250cmFjdElkPzogc3RyaW5nOyAvLyBFeGVyY2lzZUNvbW1hbmQgb25seVxuICBhY3RpbmdQYXJ0aWVzPzogc3RyaW5nW107IC8vIEV4ZXJjaXNlQ29tbWFuZCBvbmx5XG59XG4iXX0=