@chocbite/ts-lib-form 1.0.0 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.mts +4 -197
- package/dist/index.mjs +6 -2577
- package/dist/style.css +0 -6
- package/package.json +24 -21
package/dist/index.d.mts
CHANGED
|
@@ -1,178 +1,11 @@
|
|
|
1
1
|
|
|
2
2
|
import { AccessTypes, Base } from "@chocbite/ts-lib-base";
|
|
3
|
+
import { IPAddress, IPVersion, Prettify } from "@chocbite/ts-lib-common";
|
|
4
|
+
import { Option, Result } from "@chocbite/ts-lib-result";
|
|
3
5
|
import { ListField } from "@chocbite/ts-lib-list";
|
|
4
6
|
import { State, StateEnumRelated, StateNumberRelated, StateStringRelated } from "@chocbite/ts-lib-state";
|
|
7
|
+
import { SVGFunc } from "@chocbite/ts-lib-svg";
|
|
5
8
|
|
|
6
|
-
//#region node_modules/@chocbite/ts-lib-result/dist/index.d.ts
|
|
7
|
-
/**Symbol used to identify Result objects, can be used to create result compliant objects */
|
|
8
|
-
declare const RESULT_KEY: unique symbol;
|
|
9
|
-
/**Symbol used to identify Option objects, can be used to create option compliant objects */
|
|
10
|
-
declare const OPTION_KEY: unique symbol;
|
|
11
|
-
interface OptionBase<T> {
|
|
12
|
-
/**Unique symbol to identify Option objects */
|
|
13
|
-
readonly [OPTION_KEY]: true;
|
|
14
|
-
/**Is true when a value is available*/
|
|
15
|
-
readonly some: boolean;
|
|
16
|
-
/**Is true when no value is available*/
|
|
17
|
-
readonly none: boolean;
|
|
18
|
-
/**The value*/
|
|
19
|
-
readonly value?: T;
|
|
20
|
-
/**Returns the contained value, if exists. Throws an error if not.
|
|
21
|
-
* @param msg the message to throw if no value exists.*/
|
|
22
|
-
expect(msg: string): T;
|
|
23
|
-
/**Returns the contained value, if exists. Throws an error if not.*/
|
|
24
|
-
unwrap(): T;
|
|
25
|
-
/**Returns the contained value or a provided default.
|
|
26
|
-
* @param value value to use as default*/
|
|
27
|
-
unwrap_or<T2>(value: T2): T | T2;
|
|
28
|
-
/**Calls mapper if the Option is `Some`, otherwise returns `None`.
|
|
29
|
-
* This function can be used for control flow based on `Optional` values.*/
|
|
30
|
-
and_then<T2>(mapper: (value: T) => OptionSome<T2>): Option<T2>;
|
|
31
|
-
and_then(mapper: (value: T) => OptionNone): Option<T>;
|
|
32
|
-
and_then<T2>(mapper: (value: T) => Option<T2>): Option<T2>;
|
|
33
|
-
/**Calls mapper if the Option is `None`, otherwise returns `Some`.
|
|
34
|
-
* This function can be used for control flow based on `Optional` values.*/
|
|
35
|
-
or_else<T2>(mapper: () => OptionSome<T2>): Option<T2>;
|
|
36
|
-
or_else(mapper: () => OptionNone): Option<T>;
|
|
37
|
-
or_else<T2>(mapper: () => Option<T2>): Option<T2>;
|
|
38
|
-
/**Maps an `Optional<T>` to `Optional<U>` by applying a function to a contained `Some` value, leaving a `None` value untouched.
|
|
39
|
-
* This function can be used to compose the Options of two functions.*/
|
|
40
|
-
map<U>(mapper: (value: T) => U): Option<U>;
|
|
41
|
-
/**Compares two `Optional<T>` values for equality.
|
|
42
|
-
* @returns true if equal, false otherwise. */
|
|
43
|
-
compare(other: Option<T>): boolean;
|
|
44
|
-
/**Maps an `Optional<T>` to a `Result<T, E>`.*/
|
|
45
|
-
to_result<E>(error: E): Result<T, E>;
|
|
46
|
-
}
|
|
47
|
-
declare class OptionSome<T> implements OptionBase<T> {
|
|
48
|
-
get [OPTION_KEY](): true;
|
|
49
|
-
readonly value: T;
|
|
50
|
-
constructor(value: T);
|
|
51
|
-
get some(): true;
|
|
52
|
-
get none(): false;
|
|
53
|
-
expect(): T;
|
|
54
|
-
unwrap(): T;
|
|
55
|
-
unwrap_or(): T;
|
|
56
|
-
and_then<T2>(mapper: (value: T) => OptionSome<T2>): OptionSome<T2>;
|
|
57
|
-
and_then(mapper: (value: T) => OptionNone): OptionNone;
|
|
58
|
-
and_then<T2>(mapper: (value: T) => Option<T2>): Option<T2>;
|
|
59
|
-
or_else(): OptionSome<T>;
|
|
60
|
-
map<U>(mapper: (value: T) => U): OptionSome<U>;
|
|
61
|
-
compare(other: Option<T>): boolean;
|
|
62
|
-
to_result(): ResultOk<T>;
|
|
63
|
-
}
|
|
64
|
-
declare class OptionNone implements OptionBase<never> {
|
|
65
|
-
get [OPTION_KEY](): true;
|
|
66
|
-
get some(): false;
|
|
67
|
-
get none(): true;
|
|
68
|
-
expect(msg: string): never;
|
|
69
|
-
unwrap(): never;
|
|
70
|
-
unwrap_or<T2>(val: T2): T2;
|
|
71
|
-
and_then(): OptionNone;
|
|
72
|
-
or_else<T2>(mapper: () => OptionSome<T2>): OptionSome<T2>;
|
|
73
|
-
or_else(mapper: () => OptionNone): OptionNone;
|
|
74
|
-
or_else<T2>(mapper: () => Option<T2>): Option<T2>;
|
|
75
|
-
map(): OptionNone;
|
|
76
|
-
compare(other: Option<never>): boolean;
|
|
77
|
-
to_result<E>(error: E): ResultErr<E>;
|
|
78
|
-
}
|
|
79
|
-
interface ResultBase<T, E> {
|
|
80
|
-
/**Unique symbol to identify Result objects */
|
|
81
|
-
readonly [RESULT_KEY]: true;
|
|
82
|
-
/**Is true when the result is valid and false when it is invalid*/
|
|
83
|
-
readonly ok: boolean;
|
|
84
|
-
/**Is false when the result is valid and true when it is invalid*/
|
|
85
|
-
readonly err: boolean;
|
|
86
|
-
/**The value for the result, only exists when it is valid*/
|
|
87
|
-
readonly value?: T;
|
|
88
|
-
/**The error for the result, only exists when it is invalid*/
|
|
89
|
-
readonly error?: E;
|
|
90
|
-
/**Returns the contained valid value, if exists. Throws an error if not.
|
|
91
|
-
* @param msg the message to throw if the value is invalid.*/
|
|
92
|
-
expect(msg: string): T;
|
|
93
|
-
/**Returns the contained valid value, if does not exist. Throws an error if it does.
|
|
94
|
-
* @param msg the message to throw if the value is valid.*/
|
|
95
|
-
expect_err(msg: string): E;
|
|
96
|
-
/**Returns the contained valid value.
|
|
97
|
-
* Throws if the value is invalid, with a message provided by the error's value.*/
|
|
98
|
-
unwrap(): T;
|
|
99
|
-
/**Returns the contained valid value or a provided default.*/
|
|
100
|
-
unwrap_or<T2>(value: T2): T | T2;
|
|
101
|
-
/**Returns the contained error value.
|
|
102
|
-
* Throws if the value is valid, with the value.*/
|
|
103
|
-
unwrap_err(): E;
|
|
104
|
-
unwrap_err_or<E2>(error: E2): E | E2;
|
|
105
|
-
/**Calls mapper function if the result is valid, otherwise returns the error value of self.
|
|
106
|
-
* This function can be used for control flow based on `Result` values.*/
|
|
107
|
-
and_then<T2>(mapper: (value: T) => ResultOk<T2>): Result<T2, E>;
|
|
108
|
-
and_then<E2>(mapper: (value: T) => ResultErr<E2>): Result<T, E2>;
|
|
109
|
-
and_then<T2, E2>(mapper: (value: T) => Result<T2, E2>): Result<T2, E2>;
|
|
110
|
-
/**Calls mapper function if the result is an error, otherwise returns the value self.
|
|
111
|
-
* This function can be used for control flow based on `Result` values.*/
|
|
112
|
-
or_else<T2>(mapper: (error: E) => ResultOk<T2>): Result<T2, E>;
|
|
113
|
-
or_else<E2>(mapper: (error: E) => ResultErr<E2>): Result<T, E2>;
|
|
114
|
-
or_else<T2, E2>(mapper: (error: E) => Result<T2, E2>): Result<T2, E2>;
|
|
115
|
-
/**Maps a `Result<T, E>` to `Result<U, E>` by applying a function to a contained valid value, leaving an error value untouched.
|
|
116
|
-
* This function can be used to compose the results of two functions.*/
|
|
117
|
-
map<U>(mapper: (value: T) => U): Result<U, E>;
|
|
118
|
-
/**Maps a `Result<T, E>` to `Result<T, F>` by applying a function to a contained error value, leaving a valid value untouched.
|
|
119
|
-
* This function can be used to pass through a successful result while handling an error.*/
|
|
120
|
-
map_err<F>(mapper: (error: E) => F): Result<T, F>;
|
|
121
|
-
/**Compares two `Result<T, E>` values for equality.
|
|
122
|
-
* @returns true if equal, false otherwise. */
|
|
123
|
-
compare(other: Result<T, E>): boolean;
|
|
124
|
-
/**Converts from `Result<T, E>` to `Optional<T>`, discarding the error if any*/
|
|
125
|
-
to_option(): Option<T>;
|
|
126
|
-
}
|
|
127
|
-
declare class ResultOk<T> implements ResultBase<T, never> {
|
|
128
|
-
get [RESULT_KEY](): true;
|
|
129
|
-
readonly value: T;
|
|
130
|
-
constructor(value: T);
|
|
131
|
-
get ok(): true;
|
|
132
|
-
get err(): false;
|
|
133
|
-
expect(): T;
|
|
134
|
-
expect_err(msg: string): never;
|
|
135
|
-
unwrap(): T;
|
|
136
|
-
unwrap_or(): T;
|
|
137
|
-
unwrap_err(): never;
|
|
138
|
-
unwrap_err_or<E2>(error: E2): E2;
|
|
139
|
-
and_then<T2>(mapper: (value: T) => ResultOk<T2>): ResultOk<T2>;
|
|
140
|
-
and_then<E2>(mapper: (value: T) => ResultErr<E2>): ResultErr<E2>;
|
|
141
|
-
and_then<T2, E2>(mapper: (value: T) => Result<T2, E2>): Result<T2, E2>;
|
|
142
|
-
or_else(): ResultOk<T>;
|
|
143
|
-
map<U>(func: (value: T) => U): ResultOk<U>;
|
|
144
|
-
map_err(): ResultOk<T>;
|
|
145
|
-
compare(other: Result<T, any>): boolean;
|
|
146
|
-
to_option(): OptionSome<T>;
|
|
147
|
-
}
|
|
148
|
-
declare class ResultErr<E> implements ResultBase<never, E> {
|
|
149
|
-
get [RESULT_KEY](): true;
|
|
150
|
-
readonly error: E;
|
|
151
|
-
constructor(error: E);
|
|
152
|
-
get valid(): false;
|
|
153
|
-
get ok(): false;
|
|
154
|
-
get err(): true;
|
|
155
|
-
expect(msg: string): never;
|
|
156
|
-
expect_err(): E;
|
|
157
|
-
unwrap(): never;
|
|
158
|
-
unwrap_or<T2>(val: T2): T2;
|
|
159
|
-
unwrap_err(): E;
|
|
160
|
-
unwrap_err_or(): E;
|
|
161
|
-
and_then(): ResultErr<E>;
|
|
162
|
-
or_else<T2>(mapper: (error: E) => ResultOk<T2>): ResultOk<T2>;
|
|
163
|
-
or_else<E2>(mapper: (error: E) => ResultErr<E2>): ResultErr<E2>;
|
|
164
|
-
or_else<T2, E2>(mapper: (error: E) => Result<T2, E2>): Result<T2, E2>;
|
|
165
|
-
map(): ResultErr<E>;
|
|
166
|
-
map_err<F>(mapper: (error: E) => F): ResultErr<F>;
|
|
167
|
-
compare(other: Result<any, E>): boolean;
|
|
168
|
-
to_option(): OptionNone;
|
|
169
|
-
}
|
|
170
|
-
type Result<T, E> = ResultOk<T> | ResultErr<E>;
|
|
171
|
-
type Option<T> = OptionSome<T> | OptionNone;
|
|
172
|
-
//#endregion
|
|
173
|
-
//#region node_modules/@chocbite/ts-lib-svg/dist/index.d.mts
|
|
174
|
-
type SVGFunc = () => SVGSVGElement; //#endregion
|
|
175
|
-
//#endregion
|
|
176
9
|
//#region src/base.d.ts
|
|
177
10
|
/**Colors for form elements that have selectable colors*/
|
|
178
11
|
declare const FormColors: {
|
|
@@ -353,32 +186,6 @@ declare class FormSwitch<ID extends string | undefined> extends FormValueWrite<b
|
|
|
353
186
|
/**Creates a switch form element */
|
|
354
187
|
declare function form_switch<ID extends string | undefined>(options?: FormSwitchOptions<ID>): FormSwitch<ID>;
|
|
355
188
|
//#endregion
|
|
356
|
-
//#region node_modules/@chocbite/ts-lib-common/dist/index.d.ts
|
|
357
|
-
/**Event types for base*/
|
|
358
|
-
declare const IPVersion: {
|
|
359
|
-
readonly V4: 4;
|
|
360
|
-
readonly V6: 6;
|
|
361
|
-
};
|
|
362
|
-
type IPVersion = (typeof IPVersion)[keyof typeof IPVersion];
|
|
363
|
-
declare class IPAddress {
|
|
364
|
-
private readonly value;
|
|
365
|
-
readonly version: IPVersion;
|
|
366
|
-
constructor(input: string | number | bigint | number[]);
|
|
367
|
-
private parse_v4_string;
|
|
368
|
-
private parse_v6_string;
|
|
369
|
-
private from_array;
|
|
370
|
-
get is_v4(): boolean;
|
|
371
|
-
get is_v6(): boolean;
|
|
372
|
-
get as_big_int(): bigint;
|
|
373
|
-
get as_array(): number[];
|
|
374
|
-
to_string(): string;
|
|
375
|
-
}
|
|
376
|
-
/*** Gets the current cursor position (offset) within the contenteditable element.
|
|
377
|
-
* @param element The contenteditable HTML element.
|
|
378
|
-
* @returns The offset number, or -1 if the element is not focused or no selection exists.*/
|
|
379
|
-
type Prettify<T> = { [K in keyof T]: T[K] } & {};
|
|
380
|
-
/**Checks of the given object is empty only checks for objects own properties*/
|
|
381
|
-
//#endregion
|
|
382
189
|
//#region src/group/group.d.ts
|
|
383
190
|
/**Different border styles for the component group*/
|
|
384
191
|
declare const FormGroupBorderStyle: {
|
|
@@ -898,4 +705,4 @@ declare const form: {
|
|
|
898
705
|
};
|
|
899
706
|
//#endregion
|
|
900
707
|
export { FormColors, FormDateTimeType, form as default, form };
|
|
901
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC5tdHMiLCJuYW1lcyI6WyJSRVNVTFRfS0VZIiwiT1BUSU9OX0tFWSIsIk9wdGlvbkJhc2UiLCJUMiIsIlUiLCJFIiwiVCIsIk9wdGlvblNvbWUiLCJPcHRpb24iLCJPcHRpb25Ob25lIiwiUmVzdWx0Iiwic29tZSIsIm5vbmUiLCJ2YWx1ZSIsImV4cGVjdCIsIm1zZyIsInVud3JhcCIsInVud3JhcF9vciIsImFuZF90aGVuIiwibWFwcGVyIiwib3JfZWxzZSIsIm1hcCIsImNvbXBhcmUiLCJvdGhlciIsInRvX3Jlc3VsdCIsImVycm9yIiwiUmVzdWx0T2siLCJjb25zdHJ1Y3RvciIsIlJlc3VsdEVyciIsInZhbCIsIlJlc3VsdEJhc2UiLCJFMiIsIkYiLCJvayIsImVyciIsImV4cGVjdF9lcnIiLCJ1bndyYXBfZXJyIiwidW53cmFwX2Vycl9vciIsIm1hcF9lcnIiLCJ0b19vcHRpb24iLCJmdW5jIiwidmFsaWQiLCJSZXN1bHRJbmZlck9rIiwiUlQiLCJSZXN1bHRJbmZlckVyciIsIlJFIiwiT3B0aW9uSW5mZXIiLCJPVCIsInJlc3VsdCIsImlzX3Jlc3VsdCIsInIiLCJpc19vcHRpb24iLCJkZWZhdWx0IiwiU1ZHQXR0cmlidXRlcyIsIlQiLCJTVkdFbGVtZW50IiwicHJpdmF0ZSIsImNvbnN0cnVjdG9yIiwiZWxlbSIsInN0cm9rZSIsInMiLCJmaWxsIiwiZiIsInN0cm9rZV93aWR0aCIsIndpZHRoIiwic3ciLCJjbGFzc19saXN0IiwiY2xhc3NfbmFtZSIsImNsIiwiYXR0cmlidXRlIiwibmFtZSIsInZhbHVlIiwiYSIsInRyYW5zbGF0ZSIsIngiLCJ5Iiwicm90YXRlIiwiYW5nbGUiLCJjeCIsImN5Iiwic2NhbGUiLCJzeCIsInN5Iiwic2tld1giLCJza2V3WSIsInRyYW5zZm9ybSIsImNpcmNsZSIsIlNWR0NpcmNsZUVsZW1lbnQiLCJjZW50ZXJfeCIsImNlbnRlcl95IiwicmFkaXVzIiwiY2lyY2xlX2FyYyIsIlNWR1BhdGhFbGVtZW50Iiwic3RhcnRfYW5nbGUiLCJlbmRfYW5nbGUiLCJlbGxpcHNlIiwiU1ZHRWxsaXBzZUVsZW1lbnQiLCJyYWRpdXNfeCIsInJhZGl1c195IiwiZWxsaXBzZV9hcmMiLCJncm91cCIsIlNWR0dFbGVtZW50IiwibGluZSIsIlNWR0xpbmVFbGVtZW50Iiwic3RhcnRfeCIsInN0YXJ0X3kiLCJlbmRfeCIsImVuZF95IiwicGF0aCIsInJlY3RhbmdsZV9mcm9tX2NlbnRlciIsIlNWR1JlY3RFbGVtZW50IiwiaGVpZ2h0IiwiY29ybmVyX3JhZGl1cyIsInJlY3RhbmdsZV9mcm9tX2Nvcm5lciIsIlNWR0VsZW1lbnRzIiwiU1ZHVGV4dEVsZW1lbnQiLCJTVkdTVkdFbGVtZW50IiwiU1ZHRm9yZWlnbk9iamVjdEVsZW1lbnQiLCJyZWN0IiwidGV4dCIsImciLCJzdmciLCJmb3JlaWduT2JqZWN0IiwiY3JlYXRlX3N2Z19lbGVtZW50IiwiSyIsInN2ZyQxIiwidmlld2JveCIsIlNWR0FuY2hvclBvaW50IiwiYm90dG9tTGVmdCIsIm1pZGRsZUxlZnQiLCJ0b3BMZWZ0IiwidG9wQ2VudGVyIiwidG9wUmlnaHQiLCJtaWRkbGVSaWdodCIsImJvdHRvbVJpZ2h0IiwiYm90dG9tQ2VudGVyIiwibWlkZGxlQ2VudGVyIiwic2l6ZSIsImFuY2hvciIsIm11bHRpX2xpbmVfdGV4dCIsImlzb3NjZWxlc190cmlhbmdsZSIsImNyZWF0ZSIsImF0dHIiLCJhbmdsZV90b19hbmNob3JfcG9pbnQiLCJTVkdGdW5jIiwiYXJyYXlfZnJvbV9yYW5nZSIsIlQiLCJzdGFydCIsImVuZCIsImkiLCJpbml0IiwiYXJyYXlfZnJvbV9yYW5nZV9pbmNsdXNpdmUiLCJhcnJheV9mcm9tX2xlbmd0aCIsImxlbiIsInByZXBlbmQiLCJhcHBlbmQiLCJpc19wcm9taXNlX2xpa2UiLCJQcm9taXNlTGlrZSIsInZhbHVlIiwic2xlZXAiLCJQcm9taXNlIiwibXMiLCJhcmciLCJzbGVlcF9sYXp5Iiwic3luY19yZXNvbHZlIiwic3luY19yZWplY3QiLCJlcnJvciIsImRlYm91bmNlIiwiUGFyYW1ldGVycyIsImFyZ3MiLCJmdW5jIiwid2FpdCIsImxlYWRpbmciLCJhbnlfZXF1YWxzX2RlZXAiLCJhbnkxIiwiYW55MiIsIm9iamVjdF9lcXVhbHNfZGVlcCIsIm9iamVjdDEiLCJvYmplY3QyIiwiYXJyYXlfZXF1YWxzX2RlZXAiLCJhcnJheTEiLCJhcnJheTIiLCJJUFZlcnNpb24iLCJWNCIsIlY2IiwiSVBBZGRyZXNzIiwidmVyc2lvbiIsImNvbnN0cnVjdG9yIiwiaW5wdXQiLCJwYXJzZV92NF9zdHJpbmciLCJwYXJzZV92Nl9zdHJpbmciLCJmcm9tX2FycmF5IiwiaXNfdjQiLCJpc192NiIsImFzX2JpZ19pbnQiLCJhc19hcnJheSIsInRvX3N0cmluZyIsImdldF9jdXJzb3JfcG9zaXRpb24iLCJIVE1MRWxlbWVudCIsImVsZW1lbnQiLCJzZXRfY3Vyc29yX3Bvc2l0aW9uIiwib2Zmc2V0Iiwic2V0X2N1cnNvcl9lbmQiLCJzZXRfc2VsZWN0aW9uX2FsbCIsInRocm90dGxlIiwibm9kZV9jbG9uZSIsIk5vZGUiLCJub2RlIiwiUHJldHRpZnkiLCJLIiwib2JqZWN0X2VtcHR5Iiwib2JqIiwiYXJyYXlfZGlmZiIsIm1haW4iLCJzZWNvbmQiLCJhZGRlZCIsInJlbW92ZWQiLCJvYmplY3Rfa2V5X2RpZmYiLCJUMSIsIlQyIl0sInNvdXJjZXMiOlsiLi4vbm9kZV9tb2R1bGVzL0BjaG9jYml0ZS90cy1saWItcmVzdWx0L2Rpc3QvaW5kZXguZC50cyIsIi4uL25vZGVfbW9kdWxlcy9AY2hvY2JpdGUvdHMtbGliLXN2Zy9kaXN0L2luZGV4LmQubXRzIiwiLi4vc3JjL2Jhc2UudHMiLCIuLi9zcmMvYm9vbGVhbi9sYW1wL2xhbXAudHMiLCIuLi9zcmMvYm9vbGVhbi9idXR0b24vYnV0dG9uLnRzIiwiLi4vc3JjL2Jvb2xlYW4vc3dpdGNoL3N3aXRjaC50cyIsIi4uL25vZGVfbW9kdWxlcy9AY2hvY2JpdGUvdHMtbGliLWNvbW1vbi9kaXN0L2luZGV4LmQudHMiLCIuLi9zcmMvZ3JvdXAvZ3JvdXAudHMiLCIuLi9zcmMvbGlzdC9saXN0X2ZpZWxkLnRzIiwiLi4vc3JjL251bWJlci9udW1iZXJfYmFzZS50cyIsIi4uL3NyYy9udW1iZXIvbnVtYmVySW5wdXQvbnVtYmVyX2lucHV0LnRzIiwiLi4vc3JjL251bWJlci9wcm9ncmVzcy9wcm9ncmVzcy50cyIsIi4uL3NyYy9udW1iZXIvc2xpZGVyL3NsaWRlci50cyIsIi4uL3NyYy9udW1iZXIvc3RlcHBlci9zdGVwcGVyLnRzIiwiLi4vc3JjL3NlbGVjdG9ycy9zZWxlY3Rvcl9iYXNlLnRzIiwiLi4vc3JjL3NlbGVjdG9ycy9kcm9wX2Rvd24vZHJvcF9kb3duLnRzIiwiLi4vc3JjL3NlbGVjdG9ycy90b2dnbGVfYnV0dG9uL3RvZ2dsZV9idXR0b24udHMiLCIuLi9zcmMvc3BhY2luZy9zcGFjZXIudHMiLCIuLi9zcmMvc3BlY2lhbC9jb2xvci9jb2xvcl9pbnB1dC50cyIsIi4uL3NyYy9zcGVjaWFsL2RhdGVfdGltZS9kYXRlX3RpbWVfaW5wdXQudHMiLCIuLi9zcmMvc3BlY2lhbC9pcC9pcF9pbnB1dC50cyIsIi4uL3NyYy9zcGVjaWFsL3Bhc3N3b3JkL3Bhc3N3b3JkX2lucHV0LnRzIiwiLi4vc3JjL3RleHQvaW5wdXQvdGV4dF9pbnB1dC50cyIsIi4uL3NyYy90ZXh0L211bHRpTGluZS90ZXh0X211bHRpX2xpbmUudHMiLCIuLi9zcmMvdGV4dC90ZXh0L3RleHQudHMiLCIuLi9zcmMvaW5kZXgudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqU3ltYm9sIHVzZWQgdG8gaWRlbnRpZnkgUmVzdWx0IG9iamVjdHMsIGNhbiBiZSB1c2VkIHRvIGNyZWF0ZSByZXN1bHQgY29tcGxpYW50IG9iamVjdHMgKi9cbmRlY2xhcmUgY29uc3QgUkVTVUxUX0tFWTogdW5pcXVlIHN5bWJvbDtcbi8qKlN5bWJvbCB1c2VkIHRvIGlkZW50aWZ5IE9wdGlvbiBvYmplY3RzLCBjYW4gYmUgdXNlZCB0byBjcmVhdGUgb3B0aW9uIGNvbXBsaWFudCBvYmplY3RzICovXG5kZWNsYXJlIGNvbnN0IE9QVElPTl9LRVk6IHVuaXF1ZSBzeW1ib2w7XG5pbnRlcmZhY2UgT3B0aW9uQmFzZTxUPiB7XG4gICAgLyoqVW5pcXVlIHN5bWJvbCB0byBpZGVudGlmeSBPcHRpb24gb2JqZWN0cyAqL1xuICAgIHJlYWRvbmx5IFtPUFRJT05fS0VZXTogdHJ1ZTtcbiAgICAvKipJcyB0cnVlIHdoZW4gYSB2YWx1ZSBpcyBhdmFpbGFibGUqL1xuICAgIHJlYWRvbmx5IHNvbWU6IGJvb2xlYW47XG4gICAgLyoqSXMgdHJ1ZSB3aGVuIG5vIHZhbHVlIGlzIGF2YWlsYWJsZSovXG4gICAgcmVhZG9ubHkgbm9uZTogYm9vbGVhbjtcbiAgICAvKipUaGUgdmFsdWUqL1xuICAgIHJlYWRvbmx5IHZhbHVlPzogVDtcbiAgICAvKipSZXR1cm5zIHRoZSBjb250YWluZWQgdmFsdWUsIGlmIGV4aXN0cy4gVGhyb3dzIGFuIGVycm9yIGlmIG5vdC5cbiAgICAgKiBAcGFyYW0gbXNnIHRoZSBtZXNzYWdlIHRvIHRocm93IGlmIG5vIHZhbHVlIGV4aXN0cy4qL1xuICAgIGV4cGVjdChtc2c6IHN0cmluZyk6IFQ7XG4gICAgLyoqUmV0dXJucyB0aGUgY29udGFpbmVkIHZhbHVlLCBpZiBleGlzdHMuIFRocm93cyBhbiBlcnJvciBpZiBub3QuKi9cbiAgICB1bndyYXAoKTogVDtcbiAgICAvKipSZXR1cm5zIHRoZSBjb250YWluZWQgdmFsdWUgb3IgYSBwcm92aWRlZCBkZWZhdWx0LlxuICAgICAqIEBwYXJhbSB2YWx1ZSB2YWx1ZSB0byB1c2UgYXMgZGVmYXVsdCovXG4gICAgdW53cmFwX29yPFQyPih2YWx1ZTogVDIpOiBUIHwgVDI7XG4gICAgLyoqQ2FsbHMgbWFwcGVyIGlmIHRoZSBPcHRpb24gaXMgYFNvbWVgLCBvdGhlcndpc2UgcmV0dXJucyBgTm9uZWAuXG4gICAgICogVGhpcyBmdW5jdGlvbiBjYW4gYmUgdXNlZCBmb3IgY29udHJvbCBmbG93IGJhc2VkIG9uIGBPcHRpb25hbGAgdmFsdWVzLiovXG4gICAgYW5kX3RoZW48VDI+KG1hcHBlcjogKHZhbHVlOiBUKSA9PiBPcHRpb25Tb21lPFQyPik6IE9wdGlvbjxUMj47XG4gICAgYW5kX3RoZW4obWFwcGVyOiAodmFsdWU6IFQpID0+IE9wdGlvbk5vbmUpOiBPcHRpb248VD47XG4gICAgYW5kX3RoZW48VDI+KG1hcHBlcjogKHZhbHVlOiBUKSA9PiBPcHRpb248VDI+KTogT3B0aW9uPFQyPjtcbiAgICAvKipDYWxscyBtYXBwZXIgaWYgdGhlIE9wdGlvbiBpcyBgTm9uZWAsIG90aGVyd2lzZSByZXR1cm5zIGBTb21lYC5cbiAgICAgKiBUaGlzIGZ1bmN0aW9uIGNhbiBiZSB1c2VkIGZvciBjb250cm9sIGZsb3cgYmFzZWQgb24gYE9wdGlvbmFsYCB2YWx1ZXMuKi9cbiAgICBvcl9lbHNlPFQyPihtYXBwZXI6ICgpID0+IE9wdGlvblNvbWU8VDI+KTogT3B0aW9uPFQyPjtcbiAgICBvcl9lbHNlKG1hcHBlcjogKCkgPT4gT3B0aW9uTm9uZSk6IE9wdGlvbjxUPjtcbiAgICBvcl9lbHNlPFQyPihtYXBwZXI6ICgpID0+IE9wdGlvbjxUMj4pOiBPcHRpb248VDI+O1xuICAgIC8qKk1hcHMgYW4gYE9wdGlvbmFsPFQ+YCB0byBgT3B0aW9uYWw8VT5gIGJ5IGFwcGx5aW5nIGEgZnVuY3Rpb24gdG8gYSBjb250YWluZWQgYFNvbWVgIHZhbHVlLCBsZWF2aW5nIGEgYE5vbmVgIHZhbHVlIHVudG91Y2hlZC5cbiAgICAgKiBUaGlzIGZ1bmN0aW9uIGNhbiBiZSB1c2VkIHRvIGNvbXBvc2UgdGhlIE9wdGlvbnMgb2YgdHdvIGZ1bmN0aW9ucy4qL1xuICAgIG1hcDxVPihtYXBwZXI6ICh2YWx1ZTogVCkgPT4gVSk6IE9wdGlvbjxVPjtcbiAgICAvKipDb21wYXJlcyB0d28gYE9wdGlvbmFsPFQ+YCB2YWx1ZXMgZm9yIGVxdWFsaXR5LlxuICAgICAqIEByZXR1cm5zIHRydWUgaWYgZXF1YWwsIGZhbHNlIG90aGVyd2lzZS4gKi9cbiAgICBjb21wYXJlKG90aGVyOiBPcHRpb248VD4pOiBib29sZWFuO1xuICAgIC8qKk1hcHMgYW4gYE9wdGlvbmFsPFQ+YCB0byBhIGBSZXN1bHQ8VCwgRT5gLiovXG4gICAgdG9fcmVzdWx0PEU+KGVycm9yOiBFKTogUmVzdWx0PFQsIEU+O1xufVxuZGVjbGFyZSBjbGFzcyBPcHRpb25Tb21lPFQ+IGltcGxlbWVudHMgT3B0aW9uQmFzZTxUPiB7XG4gICAgZ2V0IFtPUFRJT05fS0VZXSgpOiB0cnVlO1xuICAgIHJlYWRvbmx5IHZhbHVlOiBUO1xuICAgIGNvbnN0cnVjdG9yKHZhbHVlOiBUKTtcbiAgICBnZXQgc29tZSgpOiB0cnVlO1xuICAgIGdldCBub25lKCk6IGZhbHNlO1xuICAgIGV4cGVjdCgpOiBUO1xuICAgIHVud3JhcCgpOiBUO1xuICAgIHVud3JhcF9vcigpOiBUO1xuICAgIGFuZF90aGVuPFQyPihtYXBwZXI6ICh2YWx1ZTogVCkgPT4gT3B0aW9uU29tZTxUMj4pOiBPcHRpb25Tb21lPFQyPjtcbiAgICBhbmRfdGhlbihtYXBwZXI6ICh2YWx1ZTogVCkgPT4gT3B0aW9uTm9uZSk6IE9wdGlvbk5vbmU7XG4gICAgYW5kX3RoZW48VDI+KG1hcHBlcjogKHZhbHVlOiBUKSA9PiBPcHRpb248VDI+KTogT3B0aW9uPFQyPjtcbiAgICBvcl9lbHNlKCk6IE9wdGlvblNvbWU8VD47XG4gICAgbWFwPFU+KG1hcHBlcjogKHZhbHVlOiBUKSA9PiBVKTogT3B0aW9uU29tZTxVPjtcbiAgICBjb21wYXJlKG90aGVyOiBPcHRpb248VD4pOiBib29sZWFuO1xuICAgIHRvX3Jlc3VsdCgpOiBSZXN1bHRPazxUPjtcbn1cbmRlY2xhcmUgY2xhc3MgT3B0aW9uTm9uZSBpbXBsZW1lbnRzIE9wdGlvbkJhc2U8bmV2ZXI+IHtcbiAgICBnZXQgW09QVElPTl9LRVldKCk6IHRydWU7XG4gICAgZ2V0IHNvbWUoKTogZmFsc2U7XG4gICAgZ2V0IG5vbmUoKTogdHJ1ZTtcbiAgICBleHBlY3QobXNnOiBzdHJpbmcpOiBuZXZlcjtcbiAgICB1bndyYXAoKTogbmV2ZXI7XG4gICAgdW53cmFwX29yPFQyPih2YWw6IFQyKTogVDI7XG4gICAgYW5kX3RoZW4oKTogT3B0aW9uTm9uZTtcbiAgICBvcl9lbHNlPFQyPihtYXBwZXI6ICgpID0+IE9wdGlvblNvbWU8VDI+KTogT3B0aW9uU29tZTxUMj47XG4gICAgb3JfZWxzZShtYXBwZXI6ICgpID0+IE9wdGlvbk5vbmUpOiBPcHRpb25Ob25lO1xuICAgIG9yX2Vsc2U8VDI+KG1hcHBlcjogKCkgPT4gT3B0aW9uPFQyPik6IE9wdGlvbjxUMj47XG4gICAgbWFwKCk6IE9wdGlvbk5vbmU7XG4gICAgY29tcGFyZShvdGhlcjogT3B0aW9uPG5ldmVyPik6IGJvb2xlYW47XG4gICAgdG9fcmVzdWx0PEU+KGVycm9yOiBFKTogUmVzdWx0RXJyPEU+O1xufVxuaW50ZXJmYWNlIFJlc3VsdEJhc2U8VCwgRT4ge1xuICAgIC8qKlVuaXF1ZSBzeW1ib2wgdG8gaWRlbnRpZnkgUmVzdWx0IG9iamVjdHMgKi9cbiAgICByZWFkb25seSBbUkVTVUxUX0tFWV06IHRydWU7XG4gICAgLyoqSXMgdHJ1ZSB3aGVuIHRoZSByZXN1bHQgaXMgdmFsaWQgYW5kIGZhbHNlIHdoZW4gaXQgaXMgaW52YWxpZCovXG4gICAgcmVhZG9ubHkgb2s6IGJvb2xlYW47XG4gICAgLyoqSXMgZmFsc2Ugd2hlbiB0aGUgcmVzdWx0IGlzIHZhbGlkIGFuZCB0cnVlIHdoZW4gaXQgaXMgaW52YWxpZCovXG4gICAgcmVhZG9ubHkgZXJyOiBib29sZWFuO1xuICAgIC8qKlRoZSB2YWx1ZSBmb3IgdGhlIHJlc3VsdCwgb25seSBleGlzdHMgd2hlbiBpdCBpcyB2YWxpZCovXG4gICAgcmVhZG9ubHkgdmFsdWU/OiBUO1xuICAgIC8qKlRoZSBlcnJvciBmb3IgdGhlIHJlc3VsdCwgb25seSBleGlzdHMgd2hlbiBpdCBpcyBpbnZhbGlkKi9cbiAgICByZWFkb25seSBlcnJvcj86IEU7XG4gICAgLyoqUmV0dXJucyB0aGUgY29udGFpbmVkIHZhbGlkIHZhbHVlLCBpZiBleGlzdHMuIFRocm93cyBhbiBlcnJvciBpZiBub3QuXG4gICAgICogQHBhcmFtIG1zZyB0aGUgbWVzc2FnZSB0byB0aHJvdyBpZiB0aGUgdmFsdWUgaXMgaW52YWxpZC4qL1xuICAgIGV4cGVjdChtc2c6IHN0cmluZyk6IFQ7XG4gICAgLyoqUmV0dXJucyB0aGUgY29udGFpbmVkIHZhbGlkIHZhbHVlLCBpZiBkb2VzIG5vdCBleGlzdC4gVGhyb3dzIGFuIGVycm9yIGlmIGl0IGRvZXMuXG4gICAgICogQHBhcmFtIG1zZyB0aGUgbWVzc2FnZSB0byB0aHJvdyBpZiB0aGUgdmFsdWUgaXMgdmFsaWQuKi9cbiAgICBleHBlY3RfZXJyKG1zZzogc3RyaW5nKTogRTtcbiAgICAvKipSZXR1cm5zIHRoZSBjb250YWluZWQgdmFsaWQgdmFsdWUuXG4gICAgICogVGhyb3dzIGlmIHRoZSB2YWx1ZSBpcyBpbnZhbGlkLCB3aXRoIGEgbWVzc2FnZSBwcm92aWRlZCBieSB0aGUgZXJyb3IncyB2YWx1ZS4qL1xuICAgIHVud3JhcCgpOiBUO1xuICAgIC8qKlJldHVybnMgdGhlIGNvbnRhaW5lZCB2YWxpZCB2YWx1ZSBvciBhIHByb3ZpZGVkIGRlZmF1bHQuKi9cbiAgICB1bndyYXBfb3I8VDI+KHZhbHVlOiBUMik6IFQgfCBUMjtcbiAgICAvKipSZXR1cm5zIHRoZSBjb250YWluZWQgZXJyb3IgdmFsdWUuXG4gICAgICogVGhyb3dzIGlmIHRoZSB2YWx1ZSBpcyB2YWxpZCwgd2l0aCB0aGUgdmFsdWUuKi9cbiAgICB1bndyYXBfZXJyKCk6IEU7XG4gICAgdW53cmFwX2Vycl9vcjxFMj4oZXJyb3I6IEUyKTogRSB8IEUyO1xuICAgIC8qKkNhbGxzIG1hcHBlciBmdW5jdGlvbiBpZiB0aGUgcmVzdWx0IGlzIHZhbGlkLCBvdGhlcndpc2UgcmV0dXJucyB0aGUgZXJyb3IgdmFsdWUgb2Ygc2VsZi5cbiAgICAgKiBUaGlzIGZ1bmN0aW9uIGNhbiBiZSB1c2VkIGZvciBjb250cm9sIGZsb3cgYmFzZWQgb24gYFJlc3VsdGAgdmFsdWVzLiovXG4gICAgYW5kX3RoZW48VDI+KG1hcHBlcjogKHZhbHVlOiBUKSA9PiBSZXN1bHRPazxUMj4pOiBSZXN1bHQ8VDIsIEU+O1xuICAgIGFuZF90aGVuPEUyPihtYXBwZXI6ICh2YWx1ZTogVCkgPT4gUmVzdWx0RXJyPEUyPik6IFJlc3VsdDxULCBFMj47XG4gICAgYW5kX3RoZW48VDIsIEUyPihtYXBwZXI6ICh2YWx1ZTogVCkgPT4gUmVzdWx0PFQyLCBFMj4pOiBSZXN1bHQ8VDIsIEUyPjtcbiAgICAvKipDYWxscyBtYXBwZXIgZnVuY3Rpb24gaWYgdGhlIHJlc3VsdCBpcyBhbiBlcnJvciwgb3RoZXJ3aXNlIHJldHVybnMgdGhlIHZhbHVlIHNlbGYuXG4gICAgICogVGhpcyBmdW5jdGlvbiBjYW4gYmUgdXNlZCBmb3IgY29udHJvbCBmbG93IGJhc2VkIG9uIGBSZXN1bHRgIHZhbHVlcy4qL1xuICAgIG9yX2Vsc2U8VDI+KG1hcHBlcjogKGVycm9yOiBFKSA9PiBSZXN1bHRPazxUMj4pOiBSZXN1bHQ8VDIsIEU+O1xuICAgIG9yX2Vsc2U8RTI+KG1hcHBlcjogKGVycm9yOiBFKSA9PiBSZXN1bHRFcnI8RTI+KTogUmVzdWx0PFQsIEUyPjtcbiAgICBvcl9lbHNlPFQyLCBFMj4obWFwcGVyOiAoZXJyb3I6IEUpID0+IFJlc3VsdDxUMiwgRTI+KTogUmVzdWx0PFQyLCBFMj47XG4gICAgLyoqTWFwcyBhIGBSZXN1bHQ8VCwgRT5gIHRvIGBSZXN1bHQ8VSwgRT5gIGJ5IGFwcGx5aW5nIGEgZnVuY3Rpb24gdG8gYSBjb250YWluZWQgdmFsaWQgdmFsdWUsIGxlYXZpbmcgYW4gZXJyb3IgdmFsdWUgdW50b3VjaGVkLlxuICAgICAqIFRoaXMgZnVuY3Rpb24gY2FuIGJlIHVzZWQgdG8gY29tcG9zZSB0aGUgcmVzdWx0cyBvZiB0d28gZnVuY3Rpb25zLiovXG4gICAgbWFwPFU+KG1hcHBlcjogKHZhbHVlOiBUKSA9PiBVKTogUmVzdWx0PFUsIEU+O1xuICAgIC8qKk1hcHMgYSBgUmVzdWx0PFQsIEU+YCB0byBgUmVzdWx0PFQsIEY+YCBieSBhcHBseWluZyBhIGZ1bmN0aW9uIHRvIGEgY29udGFpbmVkIGVycm9yIHZhbHVlLCBsZWF2aW5nIGEgdmFsaWQgdmFsdWUgdW50b3VjaGVkLlxuICAgICAqIFRoaXMgZnVuY3Rpb24gY2FuIGJlIHVzZWQgdG8gcGFzcyB0aHJvdWdoIGEgc3VjY2Vzc2Z1bCByZXN1bHQgd2hpbGUgaGFuZGxpbmcgYW4gZXJyb3IuKi9cbiAgICBtYXBfZXJyPEY+KG1hcHBlcjogKGVycm9yOiBFKSA9PiBGKTogUmVzdWx0PFQsIEY+O1xuICAgIC8qKkNvbXBhcmVzIHR3byBgUmVzdWx0PFQsIEU+YCB2YWx1ZXMgZm9yIGVxdWFsaXR5LlxuICAgICAqIEByZXR1cm5zIHRydWUgaWYgZXF1YWwsIGZhbHNlIG90aGVyd2lzZS4gKi9cbiAgICBjb21wYXJlKG90aGVyOiBSZXN1bHQ8VCwgRT4pOiBib29sZWFuO1xuICAgIC8qKkNvbnZlcnRzIGZyb20gYFJlc3VsdDxULCBFPmAgdG8gYE9wdGlvbmFsPFQ+YCwgZGlzY2FyZGluZyB0aGUgZXJyb3IgaWYgYW55Ki9cbiAgICB0b19vcHRpb24oKTogT3B0aW9uPFQ+O1xufVxuZGVjbGFyZSBjbGFzcyBSZXN1bHRPazxUPiBpbXBsZW1lbnRzIFJlc3VsdEJhc2U8VCwgbmV2ZXI+IHtcbiAgICBnZXQgW1JFU1VMVF9LRVldKCk6IHRydWU7XG4gICAgcmVhZG9ubHkgdmFsdWU6IFQ7XG4gICAgY29uc3RydWN0b3IodmFsdWU6IFQpO1xuICAgIGdldCBvaygpOiB0cnVlO1xuICAgIGdldCBlcnIoKTogZmFsc2U7XG4gICAgZXhwZWN0KCk6IFQ7XG4gICAgZXhwZWN0X2Vycihtc2c6IHN0cmluZyk6IG5ldmVyO1xuICAgIHVud3JhcCgpOiBUO1xuICAgIHVud3JhcF9vcigpOiBUO1xuICAgIHVud3JhcF9lcnIoKTogbmV2ZXI7XG4gICAgdW53cmFwX2Vycl9vcjxFMj4oZXJyb3I6IEUyKTogRTI7XG4gICAgYW5kX3RoZW48VDI+KG1hcHBlcjogKHZhbHVlOiBUKSA9PiBSZXN1bHRPazxUMj4pOiBSZXN1bHRPazxUMj47XG4gICAgYW5kX3RoZW48RTI+KG1hcHBlcjogKHZhbHVlOiBUKSA9PiBSZXN1bHRFcnI8RTI+KTogUmVzdWx0RXJyPEUyPjtcbiAgICBhbmRfdGhlbjxUMiwgRTI+KG1hcHBlcjogKHZhbHVlOiBUKSA9PiBSZXN1bHQ8VDIsIEUyPik6IFJlc3VsdDxUMiwgRTI+O1xuICAgIG9yX2Vsc2UoKTogUmVzdWx0T2s8VD47XG4gICAgbWFwPFU+KGZ1bmM6ICh2YWx1ZTogVCkgPT4gVSk6IFJlc3VsdE9rPFU+O1xuICAgIG1hcF9lcnIoKTogUmVzdWx0T2s8VD47XG4gICAgY29tcGFyZShvdGhlcjogUmVzdWx0PFQsIGFueT4pOiBib29sZWFuO1xuICAgIHRvX29wdGlvbigpOiBPcHRpb25Tb21lPFQ+O1xufVxuZGVjbGFyZSBjbGFzcyBSZXN1bHRFcnI8RT4gaW1wbGVtZW50cyBSZXN1bHRCYXNlPG5ldmVyLCBFPiB7XG4gICAgZ2V0IFtSRVNVTFRfS0VZXSgpOiB0cnVlO1xuICAgIHJlYWRvbmx5IGVycm9yOiBFO1xuICAgIGNvbnN0cnVjdG9yKGVycm9yOiBFKTtcbiAgICBnZXQgdmFsaWQoKTogZmFsc2U7XG4gICAgZ2V0IG9rKCk6IGZhbHNlO1xuICAgIGdldCBlcnIoKTogdHJ1ZTtcbiAgICBleHBlY3QobXNnOiBzdHJpbmcpOiBuZXZlcjtcbiAgICBleHBlY3RfZXJyKCk6IEU7XG4gICAgdW53cmFwKCk6IG5ldmVyO1xuICAgIHVud3JhcF9vcjxUMj4odmFsOiBUMik6IFQyO1xuICAgIHVud3JhcF9lcnIoKTogRTtcbiAgICB1bndyYXBfZXJyX29yKCk6IEU7XG4gICAgYW5kX3RoZW4oKTogUmVzdWx0RXJyPEU+O1xuICAgIG9yX2Vsc2U8VDI+KG1hcHBlcjogKGVycm9yOiBFKSA9PiBSZXN1bHRPazxUMj4pOiBSZXN1bHRPazxUMj47XG4gICAgb3JfZWxzZTxFMj4obWFwcGVyOiAoZXJyb3I6IEUpID0+IFJlc3VsdEVycjxFMj4pOiBSZXN1bHRFcnI8RTI+O1xuICAgIG9yX2Vsc2U8VDIsIEUyPihtYXBwZXI6IChlcnJvcjogRSkgPT4gUmVzdWx0PFQyLCBFMj4pOiBSZXN1bHQ8VDIsIEUyPjtcbiAgICBtYXAoKTogUmVzdWx0RXJyPEU+O1xuICAgIG1hcF9lcnI8Rj4obWFwcGVyOiAoZXJyb3I6IEUpID0+IEYpOiBSZXN1bHRFcnI8Rj47XG4gICAgY29tcGFyZShvdGhlcjogUmVzdWx0PGFueSwgRT4pOiBib29sZWFuO1xuICAgIHRvX29wdGlvbigpOiBPcHRpb25Ob25lO1xufVxudHlwZSBSZXN1bHQ8VCwgRT4gPSBSZXN1bHRPazxUPiB8IFJlc3VsdEVycjxFPjtcbnR5cGUgT3B0aW9uPFQ+ID0gT3B0aW9uU29tZTxUPiB8IE9wdGlvbk5vbmU7XG50eXBlIFJlc3VsdEluZmVyT2s8VCBleHRlbmRzIFJlc3VsdDxhbnksIHN0cmluZz4+ID0gVCBleHRlbmRzIFJlc3VsdE9rPGluZmVyIFJUPiA/IFJUIDogbmV2ZXI7XG50eXBlIFJlc3VsdEluZmVyRXJyPFQgZXh0ZW5kcyBSZXN1bHQ8c3RyaW5nLCBhbnk+PiA9IFQgZXh0ZW5kcyBSZXN1bHRFcnI8aW5mZXIgUkU+ID8gUkUgOiBuZXZlcjtcbnR5cGUgT3B0aW9uSW5mZXI8VCBleHRlbmRzIE9wdGlvbjxhbnk+PiA9IFQgZXh0ZW5kcyBPcHRpb25Tb21lPGluZmVyIE9UPiA/IE9UIDogbmV2ZXI7XG4vKipDcmVhdGVzIGFuIG9rIHJlc3VsdCB3aXRoIHRoZSBnaXZlbiB2YWx1ZSAqL1xuZGVjbGFyZSBmdW5jdGlvbiBvazxUPih2YWx1ZTogVCk6IFJlc3VsdE9rPFQ+O1xuLyoqQ3JlYXRlcyBhbiBlcnJvciByZXN1bHQgd2l0aCB0aGUgZ2l2ZW4gZXJyb3IgKi9cbmRlY2xhcmUgZnVuY3Rpb24gZXJyPEU+KGVycm9yOiBFKTogUmVzdWx0RXJyPEU+O1xuLyoqQ3JlYXRlcyBhIHNvbWUgb3B0aW9uIHdpdGggdGhlIGdpdmVuIHZhbHVlICovXG5kZWNsYXJlIGZ1bmN0aW9uIHNvbWU8VD4odmFsdWU6IFQpOiBPcHRpb25Tb21lPFQ+O1xuLyoqQ3JlYXRlcyBhIG5vbmUgb3B0aW9uICovXG5kZWNsYXJlIGZ1bmN0aW9uIG5vbmUoKTogT3B0aW9uTm9uZTtcbmRlY2xhcmUgY29uc3QgcmVzdWx0OiB7XG4gICAgb2s6IHR5cGVvZiBvaztcbiAgICBlcnI6IHR5cGVvZiBlcnI7XG4gICAgc29tZTogdHlwZW9mIHNvbWU7XG4gICAgbm9uZTogdHlwZW9mIG5vbmU7XG4gICAgUkVTVUxUX0tFWTogc3ltYm9sO1xuICAgIE9QVElPTl9LRVk6IHN5bWJvbDtcbiAgICBpc19yZXN1bHQocjogYW55KTogciBpcyBSZXN1bHQ8YW55LCBhbnk+O1xuICAgIGlzX29wdGlvbihyOiBhbnkpOiByIGlzIE9wdGlvbjxhbnk+O1xufTtcblxuZXhwb3J0IHsgT1BUSU9OX0tFWSwgdHlwZSBPcHRpb24sIHR5cGUgT3B0aW9uSW5mZXIsIE9wdGlvbk5vbmUsIE9wdGlvblNvbWUsIFJFU1VMVF9LRVksIHR5cGUgUmVzdWx0LCBSZXN1bHRFcnIsIHR5cGUgUmVzdWx0SW5mZXJFcnIsIHR5cGUgUmVzdWx0SW5mZXJPaywgUmVzdWx0T2ssIHJlc3VsdCBhcyBkZWZhdWx0LCBlcnIsIG5vbmUsIG9rLCByZXN1bHQsIHNvbWUgfTtcbiIsIi8vI3JlZ2lvbiBzcmMvYXR0cmlidXRlcy5kLnRzXG5kZWNsYXJlIGNsYXNzIFNWR0F0dHJpYnV0ZXM8VCBleHRlbmRzIFNWR0VsZW1lbnQ+IHtcbiAgI3ByaXZhdGU7XG4gIGNvbnN0cnVjdG9yKGVsZW06IFQpO1xuICAvKipSZXR1cm5zIHRoZSBzdmcgZWxlbWVudCAqL1xuICBnZXQgZWxlbSgpOiBUO1xuICAvKiogU2V0cyB0aGUgc3Ryb2tlIGNvbG9yIG9mIHRoZSBTVkcgZWxlbWVudCAqL1xuICBzdHJva2Uoc3Ryb2tlOiBzdHJpbmcpOiB0aGlzO1xuICAvKiogU2V0cyB0aGUgc3Ryb2tlIGNvbG9yIG9mIHRoZSBTVkcgZWxlbWVudCAqL1xuICBzKHN0cm9rZTogc3RyaW5nKTogdGhpcztcbiAgLyoqIFNldHMgdGhlIGZpbGwgY29sb3Igb2YgdGhlIFNWRyBlbGVtZW50ICovXG4gIGZpbGwoZmlsbDogc3RyaW5nKTogdGhpcztcbiAgLyoqIFNldHMgdGhlIGZpbGwgY29sb3Igb2YgdGhlIFNWRyBlbGVtZW50ICovXG4gIGYoZmlsbDogc3RyaW5nKTogdGhpcztcbiAgLyoqIFNldHMgdGhlIHN0cm9rZSB3aWR0aCBvZiB0aGUgU1ZHIGVsZW1lbnQgKi9cbiAgc3Ryb2tlX3dpZHRoKHdpZHRoOiBudW1iZXIpOiB0aGlzO1xuICAvKiogU2V0cyB0aGUgc3Ryb2tlIHdpZHRoIG9mIHRoZSBTVkcgZWxlbWVudCAqL1xuICBzdyh3aWR0aDogbnVtYmVyKTogdGhpcztcbiAgLyoqIEFkZHMgb25lIG9yIG1vcmUgY2xhc3MgbmFtZXMgdG8gdGhlIFNWRyBlbGVtZW50ICovXG4gIGNsYXNzX2xpc3QoLi4uY2xhc3NfbmFtZTogc3RyaW5nW10pOiB0aGlzO1xuICAvKiogQWRkcyBvbmUgb3IgbW9yZSBjbGFzcyBuYW1lcyB0byB0aGUgU1ZHIGVsZW1lbnQgKi9cbiAgY2woLi4uY2xhc3NfbmFtZTogc3RyaW5nW10pOiB0aGlzO1xuICAvKiogU2V0cyBhbiBhcmJpdHJhcnkgYXR0cmlidXRlIG9uIHRoZSBTVkcgZWxlbWVudCAqL1xuICBhdHRyaWJ1dGUobmFtZTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nKTogdGhpcztcbiAgLyoqIFNldHMgYW4gYXJiaXRyYXJ5IGF0dHJpYnV0ZSBvbiB0aGUgU1ZHIGVsZW1lbnQgKi9cbiAgYShuYW1lOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcpOiB0aGlzO1xuICAvKiogQXBwbGllcyBhIHRyYW5zbGF0aW9uIHRyYW5zZm9ybSB0byB0aGUgU1ZHIGVsZW1lbnQgKi9cbiAgdHJhbnNsYXRlKHg6IG51bWJlciwgeTogbnVtYmVyKTogdGhpcztcbiAgLyoqIEFwcGxpZXMgYSByb3RhdGlvbiB0cmFuc2Zvcm0gdG8gdGhlIFNWRyBlbGVtZW50ICovXG4gIHJvdGF0ZShhbmdsZTogbnVtYmVyLCBjeD86IG51bWJlciwgY3k/OiBudW1iZXIpOiB0aGlzO1xuICAvKiogQXBwbGllcyBhIHNjYWxpbmcgdHJhbnNmb3JtIHRvIHRoZSBTVkcgZWxlbWVudCAqL1xuICBzY2FsZShzeDogbnVtYmVyLCBzeT86IG51bWJlcik6IHRoaXM7XG4gIC8qKiBBcHBsaWVzIGEgc2tld1ggdHJhbnNmb3JtIHRvIHRoZSBTVkcgZWxlbWVudCAqL1xuICBza2V3WChhbmdsZTogbnVtYmVyKTogdGhpcztcbiAgLyoqIEFwcGxpZXMgYSBza2V3WSB0cmFuc2Zvcm0gdG8gdGhlIFNWRyBlbGVtZW50ICovXG4gIHNrZXdZKGFuZ2xlOiBudW1iZXIpOiB0aGlzO1xuICAvKiogQXBwbGllcyBhIGN1c3RvbSB0cmFuc2Zvcm0gdG8gdGhlIFNWRyBlbGVtZW50ICovXG4gIHRyYW5zZm9ybSh0cmFuc2Zvcm06IHN0cmluZyk6IHRoaXM7XG59XG4vLyNlbmRyZWdpb25cbi8vI3JlZ2lvbiBzcmMvcHJpbWl0aXZlcy9jaXJjbGUuZC50c1xuLyoqVGhpcyBjcmVhdGVzIGEgc3ZnIGNpcmNsZVxuICogQHBhcmFtIGNlbnRlcl94IHggY29vcmRpbmF0ZSBvZiBjZW50ZXJcbiAqIEBwYXJhbSBjZW50ZXJfeSB5IGNvb3JkaW5hdGUgb2YgY2VudGVyXG4gKiBAcGFyYW0gcmFkaXVzIHJhZGl1cyBvZiBjaXJjbGUqL1xuZGVjbGFyZSBmdW5jdGlvbiBjaXJjbGUoY2VudGVyX3g6IG51bWJlciwgY2VudGVyX3k6IG51bWJlciwgcmFkaXVzOiBudW1iZXIpOiBTVkdBdHRyaWJ1dGVzPFNWR0NpcmNsZUVsZW1lbnQ+O1xuLyoqVGhpcyBkcmF3cyBwYXJ0cyBvZiBhIGNpcmNsZS9lbGxpcHNlLCB0aGUgY2lyY2xlIGRpcmVjdGlvbiBpcyByZXZlcnNlZFxuICogQHBhcmFtIGNlbnRlcl94IHRoZSBjZW50ZXIgcG9pbnQgb24gdGhlIHggYXhpc1xuICogQHBhcmFtIGNlbnRlcl95IHRoZSBjZW50ZXIgcG9pbnQgb24gdGhlIHkgYXhpc1xuICogQHBhcmFtIHJhZGl1cyByYWRpdXMgaW4geCBheGlzXG4gKiBAcGFyYW0gc3RhcnRfYW5nbGUgc3RhcnQgYW5nbGUgaW4gcmFkaWFuc1xuICogQHBhcmFtIGVuZF9hbmdsZSBlbmQgYW5nbGVpbiAgcmFkaWFucyovXG5kZWNsYXJlIGZ1bmN0aW9uIGNpcmNsZV9hcmMoY2VudGVyX3g6IG51bWJlciwgY2VudGVyX3k6IG51bWJlciwgcmFkaXVzOiBudW1iZXIsIHN0YXJ0X2FuZ2xlOiBudW1iZXIsIGVuZF9hbmdsZTogbnVtYmVyKTogU1ZHQXR0cmlidXRlczxTVkdQYXRoRWxlbWVudD47XG4vLyNlbmRyZWdpb25cbi8vI3JlZ2lvbiBzcmMvcHJpbWl0aXZlcy9lbGxpcHNlLmQudHNcbi8qKlRoaXMgY3JlYXRlcyBhIHN2ZyBlbGxpcHNlXG4gKiBAcGFyYW0gY2VudGVyX3ggeCBjb29yZGluYXRlIG9mIGNlbnRlclxuICogQHBhcmFtIGNlbnRlcl95IHkgY29vcmRpbmF0ZSBvZiBjZW50ZXJcbiAqIEBwYXJhbSByYWRpdXNfeCB4IHJhZGl1cyBvZiBjaXJjbGVcbiAqIEBwYXJhbSByYWRpdXNfeSB5IHJhZGl1cyBvZiBjaXJjbGUqL1xuZGVjbGFyZSBmdW5jdGlvbiBlbGxpcHNlKGNlbnRlcl94OiBudW1iZXIsIGNlbnRlcl95OiBudW1iZXIsIHJhZGl1c194OiBudW1iZXIsIHJhZGl1c195OiBudW1iZXIpOiBTVkdBdHRyaWJ1dGVzPFNWR0VsbGlwc2VFbGVtZW50Pjtcbi8qKlRoaXMgZHJhd3MgcGFydHMgb2YgYSBjaXJjbGUvZWxsaXBzZSwgdGhlIGNpcmNsZSBkaXJlY3Rpb24gaXMgcmV2ZXJzZWRcbiAqIEBwYXJhbSBjZW50ZXJfeCB0aGUgY2VudGVyIHBvaW50IG9uIHRoZSB4IGF4aXNcbiAqIEBwYXJhbSBjZW50ZXJfeSB0aGUgY2VudGVyIHBvaW50IG9uIHRoZSB5IGF4aXNcbiAqIEBwYXJhbSByYWRpdXNfeCByYWRpdXMgaW4geCBheGlzXG4gKiBAcGFyYW0gcmFkaXVzX3kgcmFkaXVzIGluIHkgYXhpc1xuICogQHBhcmFtIHN0YXJ0X2FuZ2xlIHN0YXJ0IGFuZ2xlIGluIHJhZGlhbnNcbiAqIEBwYXJhbSBlbmRfYW5nbGUgZW5kIGFuZ2xlaW4gIHJhZGlhbnMqL1xuZGVjbGFyZSBmdW5jdGlvbiBlbGxpcHNlX2FyYyhjZW50ZXJfeDogbnVtYmVyLCBjZW50ZXJfeTogbnVtYmVyLCByYWRpdXNfeDogbnVtYmVyLCByYWRpdXNfeTogbnVtYmVyLCBzdGFydF9hbmdsZTogbnVtYmVyLCBlbmRfYW5nbGU6IG51bWJlcik6IFNWR0F0dHJpYnV0ZXM8U1ZHUGF0aEVsZW1lbnQ+O1xuLy8jZW5kcmVnaW9uXG4vLyNyZWdpb24gc3JjL3ByaW1pdGl2ZXMvZ3JvdXAuZC50c1xuLyoqVGhpcyBkcmF3cyBhIHRyaWFuZ2xlKi9cbmRlY2xhcmUgZnVuY3Rpb24gZ3JvdXAoKTogU1ZHQXR0cmlidXRlczxTVkdHRWxlbWVudD47XG4vLyNlbmRyZWdpb25cbi8vI3JlZ2lvbiBzcmMvcHJpbWl0aXZlcy9saW5lLmQudHNcbi8qKlRoaXMgY3JlYXRlcyBhIGxpbmUgZWxlbWVudFxuICogQHBhcmFtIHN0YXJ0X3ggc3RhcnQgcG9pbnQgb24geCBheGlzXG4gKiBAcGFyYW0gc3RhcnRfeSBzdGFydCBwb2ludCBvbiB5IGF4aXNcbiAqIEBwYXJhbSBlbmRfeCBlbmQgcG9pbnQgb24geCBheGlzXG4gKiBAcGFyYW0gZW5kX3kgZW5kIHBvaW50IG9uIHkgYXhpcyovXG5kZWNsYXJlIGZ1bmN0aW9uIGxpbmUoc3RhcnRfeDogbnVtYmVyLCBzdGFydF95OiBudW1iZXIsIGVuZF94OiBudW1iZXIsIGVuZF95OiBudW1iZXIpOiBTVkdBdHRyaWJ1dGVzPFNWR0xpbmVFbGVtZW50Pjtcbi8vI2VuZHJlZ2lvblxuLy8jcmVnaW9uIHNyYy9wcmltaXRpdmVzL3BhdGguZC50c1xuLyoqVGhpcyBjcmVhdGVzIGEgcGF0aCBlbGVtZW50Ki9cbmRlY2xhcmUgZnVuY3Rpb24gcGF0aChwYXRoOiBzdHJpbmcpOiBTVkdBdHRyaWJ1dGVzPFNWR1BhdGhFbGVtZW50Pjtcbi8vI2VuZHJlZ2lvblxuLy8jcmVnaW9uIHNyYy9wcmltaXRpdmVzL3JlY3RhbmdsZS5kLnRzXG4vKipUaGlzIGNyZWF0ZXMgYSByZWN0YW5nbGUgd2l0aCB0ZWggY2VudGVyIGFzIG9yaWdpblxuICogQHBhcmFtIGNlbnRlcl94IHggY29vcmRpbmF0ZSBvZiBjZW50ZXJcbiAqIEBwYXJhbSBjZW50ZXJfeSB5IGNvb3JkaW5hdGUgb2YgY2VudGVyXG4gKiBAcGFyYW0gd2lkdGggd2lkdGhcbiAqIEBwYXJhbSBoZWlnaHQgaGVpZ2h0XG4gKiBAcGFyYW0gY29ybmVyX3JhZGl1cyByYWRpdXMgb2YgY29ybmVyKi9cbmRlY2xhcmUgZnVuY3Rpb24gcmVjdGFuZ2xlX2Zyb21fY2VudGVyKGNlbnRlcl94OiBudW1iZXIsIGNlbnRlcl95OiBudW1iZXIsIHdpZHRoOiBudW1iZXIsIGhlaWdodDogbnVtYmVyLCBjb3JuZXJfcmFkaXVzOiBudW1iZXIpOiBTVkdBdHRyaWJ1dGVzPFNWR1JlY3RFbGVtZW50Pjtcbi8qKlRoaXMgY3JlYXRlcyBhIHJlY3RhbmdsZSB3aXRoIHRlaCBjZW50ZXIgYXMgb3JpZ2luXG4gKiBAcGFyYW0gc3RhcnRfeCB4IGNvb3JkaW5hdGUgb2YgY2VudGVyXG4gKiBAcGFyYW0gc3RhcnRfeSB5IGNvb3JkaW5hdGUgb2YgY2VudGVyXG4gKiBAcGFyYW0gd2lkdGggd2lkdGhcbiAqIEBwYXJhbSBoZWlnaHQgaGVpZ2h0XG4gKiBAcGFyYW0gY29ybmVyX3JhZGl1cyByYWRpdXMgb2YgY29ybmVyKi9cbmRlY2xhcmUgZnVuY3Rpb24gcmVjdGFuZ2xlX2Zyb21fY29ybmVyKHN0YXJ0X3g6IG51bWJlciwgc3RhcnRfeTogbnVtYmVyLCB3aWR0aDogbnVtYmVyLCBoZWlnaHQ6IG51bWJlciwgY29ybmVyX3JhZGl1czogbnVtYmVyKTogU1ZHQXR0cmlidXRlczxTVkdSZWN0RWxlbWVudD47XG4vLyNlbmRyZWdpb25cbi8vI3JlZ2lvbiBzcmMvcHJpbWl0aXZlcy9zaGFyZWQuZC50c1xudHlwZSBTVkdFbGVtZW50cyA9IHtcbiAgZWxsaXBzZTogU1ZHRWxsaXBzZUVsZW1lbnQ7XG4gIGNpcmNsZTogU1ZHQ2lyY2xlRWxlbWVudDtcbiAgcGF0aDogU1ZHUGF0aEVsZW1lbnQ7XG4gIGxpbmU6IFNWR0xpbmVFbGVtZW50O1xuICByZWN0OiBTVkdSZWN0RWxlbWVudDtcbiAgdGV4dDogU1ZHVGV4dEVsZW1lbnQ7XG4gIGc6IFNWR0dFbGVtZW50O1xuICBzdmc6IFNWR1NWR0VsZW1lbnQ7XG4gIGZvcmVpZ25PYmplY3Q6IFNWR0ZvcmVpZ25PYmplY3RFbGVtZW50O1xufTtcbmRlY2xhcmUgZnVuY3Rpb24gY3JlYXRlX3N2Z19lbGVtZW50PEsgZXh0ZW5kcyBrZXlvZiBTVkdFbGVtZW50cz4obmFtZTogSyk6IFNWR0F0dHJpYnV0ZXM8U1ZHRWxlbWVudHNbS10+O1xuLy8jZW5kcmVnaW9uXG4vLyNyZWdpb24gc3JjL3ByaW1pdGl2ZXMvc3ZnLmQudHNcbi8qKiBUaGlzIHJldHVybnMgYW4gZW1wdHkgc3ZnIGVsZW1lbnRcbiAqIEBwYXJhbSAgd2lkdGggd2lkdGggb2Ygc3ZnXG4gKiBAcGFyYW0gIGhlaWdodCBoZWlnaHQgb2Ygc3ZnXG4gKiBAcGFyYW0gIHZpZXdib3ggdmlld2JveCBvZiBzdmcqL1xuZGVjbGFyZSBmdW5jdGlvbiBzdmckMSh3aWR0aDogbnVtYmVyLCBoZWlnaHQ6IG51bWJlciwgdmlld2JveD86IHN0cmluZyk6IFNWR0F0dHJpYnV0ZXM8U1ZHU1ZHRWxlbWVudD47XG4vLyNlbmRyZWdpb25cbi8vI3JlZ2lvbiBzcmMvdXRpbC9hbmNob3JQb2ludC5kLnRzXG5kZWNsYXJlIGNvbnN0IFNWR0FuY2hvclBvaW50OiB7XG4gIHJlYWRvbmx5IGJvdHRvbUxlZnQ6IDA7XG4gIHJlYWRvbmx5IG1pZGRsZUxlZnQ6IDE7XG4gIHJlYWRvbmx5IHRvcExlZnQ6IDI7XG4gIHJlYWRvbmx5IHRvcENlbnRlcjogMztcbiAgcmVhZG9ubHkgdG9wUmlnaHQ6IDQ7XG4gIHJlYWRvbmx5IG1pZGRsZVJpZ2h0OiA1O1xuICByZWFkb25seSBib3R0b21SaWdodDogNjtcbiAgcmVhZG9ubHkgYm90dG9tQ2VudGVyOiA3O1xuICByZWFkb25seSBtaWRkbGVDZW50ZXI6IDg7XG59O1xudHlwZSBTVkdBbmNob3JQb2ludCA9ICh0eXBlb2YgU1ZHQW5jaG9yUG9pbnQpW2tleW9mIHR5cGVvZiBTVkdBbmNob3JQb2ludF07XG4vLyNlbmRyZWdpb25cbi8vI3JlZ2lvbiBzcmMvcHJpbWl0aXZlcy90ZXh0LmQudHNcbi8qKkNyZWF0ZXMgYSB0ZXh0IG5vZGVzIGZvciBhbiBzdmdcbiAqIEBwYXJhbSB4IHggY29vcmRpbmF0ZSBvZiB0ZXh0XG4gKiBAcGFyYW0geSB5IGNvb3JkaW5hdGUgb2YgdGV4dFxuICogQHBhcmFtIHRleHQgdGV4dFxuICogQHBhcmFtIHNpemUgc2l6ZSBvZiB0ZXh0IGluIHB4XG4gKiBAcGFyYW0gYW5jaG9yIGFuY2hvciBwb2ludCBvZiB0ZXh0Ki9cbmRlY2xhcmUgZnVuY3Rpb24gdGV4dCh4OiBudW1iZXIsIHk6IG51bWJlciwgdGV4dDogc3RyaW5nLCBzaXplOiBudW1iZXIsIGFuY2hvcjogU1ZHQW5jaG9yUG9pbnQpOiBTVkdBdHRyaWJ1dGVzPFNWR1RleHRFbGVtZW50Pjtcbi8qKkNyZWF0ZXMgYSB0ZXh0IG5vZGVzIGZvciBhbiBzdmdcbiAqIEBwYXJhbSB4IHggY29vcmRpbmF0ZSBvZiB0ZXh0XG4gKiBAcGFyYW0geSB5IGNvb3JkaW5hdGUgb2YgdGV4dFxuICogQHBhcmFtIHdpZHRoIHdpZHRoIG9mIHRleHRcbiAqIEBwYXJhbSBoZWlnaHQgaGVpZ2h0IG9mIHRleHRcbiAqIEBwYXJhbSB0ZXh0IHRleHRcbiAqIEBwYXJhbSBzaXplIHNpemUgb2YgdGV4dCBpbiBweFxuICogQHBhcmFtIGFuY2hvciBhbmNob3IgcG9pbnQgb2YgKi9cbmRlY2xhcmUgZnVuY3Rpb24gbXVsdGlfbGluZV90ZXh0KHg6IG51bWJlciwgeTogbnVtYmVyLCB3aWR0aDogbnVtYmVyLCBoZWlnaHQ6IG51bWJlciwgdGV4dDogc3RyaW5nLCBzaXplOiBudW1iZXIsIGFuY2hvcjogU1ZHQW5jaG9yUG9pbnQpOiBTVkdBdHRyaWJ1dGVzPFNWR0ZvcmVpZ25PYmplY3RFbGVtZW50Pjtcbi8vI2VuZHJlZ2lvblxuLy8jcmVnaW9uIHNyYy9wcmltaXRpdmVzL3RyaWFuZ2xlLmQudHNcbi8qKlRoaXMgZHJhd3MgYSB0cmlhbmdsZVxuICogQHBhcmFtIGNlbnRlcl94IHggY29vcmRpbmF0ZSBvZiBjZW50ZXJcbiAqIEBwYXJhbSBjZW50ZXJfeSB5IGNvb3JkaW5hdGUgb2YgY2VudGVyXG4gKiBAcGFyYW0gd2lkdGggd2lkdGhcbiAqIEBwYXJhbSBoZWlnaHQgaGVpZ2h0Ki9cbmRlY2xhcmUgZnVuY3Rpb24gaXNvc2NlbGVzX3RyaWFuZ2xlKGNlbnRlcl94OiBudW1iZXIsIGNlbnRlcl95OiBudW1iZXIsIHdpZHRoOiBudW1iZXIsIGhlaWdodDogbnVtYmVyKTogU1ZHQXR0cmlidXRlczxTVkdQYXRoRWxlbWVudD47XG4vLyNlbmRyZWdpb25cbi8vI3JlZ2lvbiBzcmMvaW5kZXguZC50c1xuZGVjbGFyZSBjb25zdCBzdmc6IHtcbiAgY3JlYXRlOiB0eXBlb2YgY3JlYXRlX3N2Z19lbGVtZW50O1xuICBhdHRyOiAoZWxlbTogU1ZHRWxlbWVudCkgPT4gU1ZHQXR0cmlidXRlczxTVkdFbGVtZW50PjtcbiAgY2lyY2xlOiB0eXBlb2YgY2lyY2xlO1xuICBjaXJjbGVfYXJjOiB0eXBlb2YgY2lyY2xlX2FyYztcbiAgZWxsaXBzZTogdHlwZW9mIGVsbGlwc2U7XG4gIGVsbGlwc2VfYXJjOiB0eXBlb2YgZWxsaXBzZV9hcmM7XG4gIGdyb3VwOiB0eXBlb2YgZ3JvdXA7XG4gIGxpbmU6IHR5cGVvZiBsaW5lO1xuICBwYXRoOiB0eXBlb2YgcGF0aDtcbiAgcmVjdGFuZ2xlX2Zyb21fY2VudGVyOiB0eXBlb2YgcmVjdGFuZ2xlX2Zyb21fY2VudGVyO1xuICByZWN0YW5nbGVfZnJvbV9jb3JuZXI6IHR5cGVvZiByZWN0YW5nbGVfZnJvbV9jb3JuZXI7XG4gIHN2ZzogdHlwZW9mIHN2ZyQxO1xuICB0ZXh0OiB0eXBlb2YgdGV4dDtcbiAgbXVsdGlfbGluZV90ZXh0OiB0eXBlb2YgbXVsdGlfbGluZV90ZXh0O1xuICBpc29zY2VsZXNfdHJpYW5nbGU6IHR5cGVvZiBpc29zY2VsZXNfdHJpYW5nbGU7XG4gIGFuZ2xlX3RvX2FuY2hvcl9wb2ludDogKGFuZ2xlOiBudW1iZXIpID0+IDAgfCAxIHwgMiB8IDMgfCA0IHwgNSB8IDYgfCA3O1xufTtcbnR5cGUgU1ZHRnVuYyA9ICgpID0+IFNWR1NWR0VsZW1lbnQ7XG4vLyNlbmRyZWdpb25cbmV4cG9ydCB7IFNWR0FuY2hvclBvaW50LCBTVkdGdW5jLCBzdmcgfTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWluZGV4LmQubXRzLm1hcCIsIi8qKiBDcmVhdGVzIGFuIGFycmF5IG9mIGEgc3BlY2lmaWVkIHJhbmdlLCBwb3B1bGF0aW5nIGl0IHZpYSBhbiBpbml0aWFsaXplciBmdW5jdGlvbi5cbiAqICogQHBhcmFtIHN0YXJ0IC0gVGhlIHN0YXJ0aW5nIGluZGV4LlxuICogQHBhcmFtIGVuZCAtIFRoZSBlbmRpbmcgaW5kZXggKGV4Y2x1c2l2ZSkuXG4gKiBAcGFyYW0gaW5pdCAtIEEgY2FsbGJhY2sgdGhhdCByZXR1cm5zIGEgdmFsdWUgb2YgdHlwZSBUIGZvciBlYWNoIGluZGV4IGkuXG4gKiBAcmV0dXJucyBBbiBhcnJheSBvZiB0eXBlIFRbXSBjb250YWluaW5nIHRoZSBpbml0aWFsaXplZCB2YWx1ZXMuKi9cbmRlY2xhcmUgZnVuY3Rpb24gYXJyYXlfZnJvbV9yYW5nZTxUPihzdGFydDogbnVtYmVyLCBlbmQ6IG51bWJlciwgaW5pdDogKGk6IG51bWJlcikgPT4gVCk6IFRbXTtcbi8qKiBHZW5lcmF0ZXMgYW4gYXJyYXkgb2YgdHlwZSBUIGZyb20gYW4gaW5jbHVzaXZlIHJhbmdlIFtzdGFydCwgZW5kXS5cbiAqICogQHBhcmFtIHN0YXJ0IC0gVGhlIHN0YXJ0aW5nIGludGVnZXIgaW5kZXguXG4gKiBAcGFyYW0gZW5kIC0gVGhlIGVuZGluZyBpbnRlZ2VyIGluZGV4IChpbmNsdXNpdmUpLlxuICogQHBhcmFtIGluaXQgLSBBIGZhY3RvcnkgZnVuY3Rpb24gdGhhdCBwcm9kdWNlcyBhbiBlbGVtZW50IG9mIHR5cGUgVCBnaXZlbiB0aGUgY3VycmVudCBpbmRleCBpLlxuICogQHJldHVybnMgQW4gYXJyYXkgb2YgbGVuZ3RoIChlbmQgLSBzdGFydCArIDEpLCBvciBhbiBlbXB0eSBhcnJheSBpZiBlbmQgPCBzdGFydC4qL1xuZGVjbGFyZSBmdW5jdGlvbiBhcnJheV9mcm9tX3JhbmdlX2luY2x1c2l2ZTxUPihzdGFydDogbnVtYmVyLCBlbmQ6IG51bWJlciwgaW5pdDogKGk6IG51bWJlcikgPT4gVCk6IFRbXTtcbi8qKkNyZWF0ZXMgYW4gYXJyYXkgb2YgYSBzcGVjaWZpZWQgbGVuZ3RoLCBwb3B1bGF0aW5nIGVhY2ggaW5kZXhcbiAqIHVzaW5nIGEgcHJvdmlkZWQgaW5pdGlhbGl6YXRpb24gZnVuY3Rpb24uXG4gKiAqIEBwYXJhbSBsZW4gLSBUaGUgZGVzaXJlZCBudW1iZXIgb2YgZWxlbWVudHMgaW4gdGhlIGFycmF5LlxuICogQHBhcmFtIGluaXQgLSBBIGZ1bmN0aW9uIHRoYXQgdGFrZXMgdGhlIGN1cnJlbnQgaW5kZXggKGkpIGFuZCByZXR1cm5zIGEgdmFsdWUgb2YgdHlwZSBULlxuICogQHJldHVybnMgQW4gYXJyYXkgb2YgbGVuZ3RoICdsZW4nLCBvciBhbiBlbXB0eSBhcnJheSBpZiAnbGVuJyBpcyB6ZXJvIG9yIG5lZ2F0aXZlLiAqL1xuZGVjbGFyZSBmdW5jdGlvbiBhcnJheV9mcm9tX2xlbmd0aDxUPihsZW46IG51bWJlciwgaW5pdDogKGk6IG51bWJlcikgPT4gVCwgcHJlcGVuZD86IFRbXSwgYXBwZW5kPzogVFtdKTogVFtdO1xuXG4vKipSZXR1cm5zIHRydWUgaWYgdGhlIGdpdmVuIHZhbHVlIGlzIHByb21pc2UgbGlrZSAqL1xuZGVjbGFyZSBmdW5jdGlvbiBpc19wcm9taXNlX2xpa2U8VD4odmFsdWU6IGFueSk6IHZhbHVlIGlzIFByb21pc2VMaWtlPFQ+O1xuLyoqUmV0dXJucyBhIHByb21pc2UgdGhhdCByZXNvbHZlcyBhZnRlciB0aGUgZ2l2ZW4gbnVtYmVyIG9mIG1pbGxpc2Vjb25kcyB3aXRoIHRoZSBnaXZlbiBhcmd1bWVudCAoaWYgYW55KS4qL1xuZGVjbGFyZSBmdW5jdGlvbiBzbGVlcDxUID0gdm9pZD4obXM6IG51bWJlciwgYXJnPzogVCk6IFByb21pc2U8VD47XG4vKipSZXR1cm5zIGEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIGFmdGVyIHRoZSBnaXZlbiBudW1iZXIgb2YgbWlsbGlzZWNvbmRzIHdpdGggdGhlIHJlc3VsdCBvZiB0aGUgZ2l2ZW4gZnVuY3Rpb24gKGlmIGFueSkuKi9cbmRlY2xhcmUgZnVuY3Rpb24gc2xlZXBfbGF6eTxUID0gdm9pZD4obXM6IG51bWJlciwgYXJnPzogKCkgPT4gVCk6IFByb21pc2U8VD47XG4vKipSZXR1cm5zIGEgcHJvbWlzZSB0aGF0IGV4ZWN1dGVzIHN5bmNocm9ub3VzbHkgd2hlbiB1c2luZyAudGhlbigpIGFuZCByZXNvbHZlcyBpbW1lZGlhdGVseSB3aXRoIHRoZSBnaXZlbiB2YWx1ZS4qL1xuZGVjbGFyZSBmdW5jdGlvbiBzeW5jX3Jlc29sdmU8VD4odmFsdWU6IFQgfCBQcm9taXNlTGlrZTxUPik6IFByb21pc2VMaWtlPFQ+O1xuLyoqUmV0dXJucyBhIHByb21pc2UgdGhhdCBleGVjdXRlcyBzeW5jaHJvbm91c2x5IHdoZW4gdXNpbmcgLmNhdGNoKCkgYW5kIHJlamVjdHMgaW1tZWRpYXRlbHkgd2l0aCB0aGUgZ2l2ZW4gdmFsdWUuKi9cbmRlY2xhcmUgZnVuY3Rpb24gc3luY19yZWplY3Q8VD4oZXJyb3I6IFQgfCBQcm9taXNlTGlrZTxUPik6IFByb21pc2VMaWtlPFQ+O1xuXG4vKiogQ3JlYXRlcyBhIGRlYm91bmNlZCB2ZXJzaW9uIG9mIGEgZnVuY3Rpb24gdGhhdCBkZWxheXMgZXhlY3V0aW9uIHVudGlsIGFmdGVyXG4gKiAnd2FpdCcgbWlsbGlzZWNvbmRzIGhhdmUgZWxhcHNlZCBzaW5jZSB0aGUgbGFzdCB0aW1lIGl0IHdhcyBpbnZva2VkLlxuICogQHRlbXBsYXRlIEEgLSBUaGUgdHlwZSBvZiB0aGUgYXJndW1lbnRzIGFycmF5LlxuICogQHRlbXBsYXRlIFQgLSBUaGUgdHlwZSBvZiB0aGUgZnVuY3Rpb24gdG8gZGVib3VuY2UuXG4gKiBAcGFyYW0gZnVuYyAtIFRoZSBmdW5jdGlvbiB0byBkZWJvdW5jZS5cbiAqIEBwYXJhbSB3YWl0IC0gVGhlIGRlbGF5IGluIG1pbGxpc2Vjb25kcywgd2hlbiAwIG9yIHVuc3BlY2lmaWVkIGl0IG9ubHkgcmVtb3ZlcyBjYWxscyB0byB0aGUgZnVuY3Rpb24gaW4gdGhlIHNhbWUgY3ljbGUuXG4gKiBAcGFyYW0gbGVhZGluZyAtIElmIHRydWUsIHRyaWdnZXJzIHRoZSBmdW5jdGlvbiBvbiB0aGUgbGVhZGluZyBlZGdlIG9mIHRoZSB0aW1lb3V0LlxuICogQHJldHVybnMgIEEgbmV3IGRlYm91bmNlZCBmdW5jdGlvbi4gKi9cbmRlY2xhcmUgZnVuY3Rpb24gZGVib3VuY2U8VCBleHRlbmRzICguLi5hcmdzOiBhbnlbXSkgPT4gYW55PihmdW5jOiBULCB3YWl0PzogbnVtYmVyLCBsZWFkaW5nPzogYm9vbGVhbik6ICguLi5hcmdzOiBQYXJhbWV0ZXJzPFQ+KSA9PiB2b2lkO1xuXG4vKipUaGlzIGNvbXBhcmVzIHR3byB2YWx1ZXMgb2YgYW55IHR5cGUsIHJldHVybnMgdHJ1ZSBpZiB0aGV5IGFyZSBlcXVhbFxuICogRm9yIGFueSBvYmplY3QgdHlwZSBpdCB3aWxsIGRlZXAgY29tcGFyZSwgd2l0aCB0aGUgZXhjZXB0aW9uIG9mIG9iamVjdHMgd2hpY2ggaGF2ZSBhbiBvYmplY3RFcXVhbHMgbWV0aG9kLCB3aGljaCBjYW4gcHJvdmlkZSBhIGN1c3RvbSBjb21wYXJpc3NvblxuICogV2lsbCByZXR1cm4gdHJ1ZSBmb3IgTmFOIGVxdWFsIHRvIE5hTiovXG5kZWNsYXJlIGZ1bmN0aW9uIGFueV9lcXVhbHNfZGVlcChhbnkxOiBhbnksIGFueTI6IGFueSk6IGJvb2xlYW47XG4vKipUaGlzIGRlZXAgY29tcGFyZXMgdHdvIG9iamVjdHMsIHJldHVybnMgdHJ1ZSBpZiB0aGV5IGFyZSBlcXVhbFxuICogSXQgY29tcGFyZXMgYWxsIGtleXMgaW4gdGhlIG9iamVjdCwgd2l0aCB0aGUgZXhjZXB0aW9uIG9mIG9iamVjdHMgd2hpY2ggaGF2ZSBhbiBvYmplY3RFcXVhbHMgbWV0aG9kLCB3aGljaCBjYW4gcHJvdmlkZSBhIGN1c3RvbSBjb21wYXJpc3NvbiovXG5kZWNsYXJlIGZ1bmN0aW9uIG9iamVjdF9lcXVhbHNfZGVlcChvYmplY3QxOiBvYmplY3QsIG9iamVjdDI6IG9iamVjdCk6IGJvb2xlYW47XG4vKipUaGlzIGRlZXAgY29tcGFyZXMgdHdvIGFycmF5cywgcmV0dXJucyB0cnVlIGlmIHRoZXkgYXJlIGVxdWFsXG4gKiBJdCBjb21wYXJlcyBhbGwgaW5kZXhlcyBpbiB0aGUgYXJyYXksIHdpdGggdGhlIGV4Y2VwdGlvbiBvZiBhcnJheXMgd2hpY2ggaGF2ZSBhbiBvYmplY3RFcXVhbHMgbWV0aG9kLCB3aGljaCBjYW4gcHJvdmlkZSBhIGN1c3RvbSBjb21wYXJpc3NvbiovXG5kZWNsYXJlIGZ1bmN0aW9uIGFycmF5X2VxdWFsc19kZWVwKGFycmF5MTogdW5rbm93bltdLCBhcnJheTI6IHVua25vd25bXSk6IGJvb2xlYW47XG5cbi8qKkV2ZW50IHR5cGVzIGZvciBiYXNlKi9cbmRlY2xhcmUgY29uc3QgSVBWZXJzaW9uOiB7XG4gICAgcmVhZG9ubHkgVjQ6IDQ7XG4gICAgcmVhZG9ubHkgVjY6IDY7XG59O1xudHlwZSBJUFZlcnNpb24gPSAodHlwZW9mIElQVmVyc2lvbilba2V5b2YgdHlwZW9mIElQVmVyc2lvbl07XG5kZWNsYXJlIGNsYXNzIElQQWRkcmVzcyB7XG4gICAgcHJpdmF0ZSByZWFkb25seSB2YWx1ZTtcbiAgICByZWFkb25seSB2ZXJzaW9uOiBJUFZlcnNpb247XG4gICAgY29uc3RydWN0b3IoaW5wdXQ6IHN0cmluZyB8IG51bWJlciB8IGJpZ2ludCB8IG51bWJlcltdKTtcbiAgICBwcml2YXRlIHBhcnNlX3Y0X3N0cmluZztcbiAgICBwcml2YXRlIHBhcnNlX3Y2X3N0cmluZztcbiAgICBwcml2YXRlIGZyb21fYXJyYXk7XG4gICAgZ2V0IGlzX3Y0KCk6IGJvb2xlYW47XG4gICAgZ2V0IGlzX3Y2KCk6IGJvb2xlYW47XG4gICAgZ2V0IGFzX2JpZ19pbnQoKTogYmlnaW50O1xuICAgIGdldCBhc19hcnJheSgpOiBudW1iZXJbXTtcbiAgICB0b19zdHJpbmcoKTogc3RyaW5nO1xufVxuXG4vKioqIEdldHMgdGhlIGN1cnJlbnQgY3Vyc29yIHBvc2l0aW9uIChvZmZzZXQpIHdpdGhpbiB0aGUgY29udGVudGVkaXRhYmxlIGVsZW1lbnQuXG4gKiBAcGFyYW0gZWxlbWVudCBUaGUgY29udGVudGVkaXRhYmxlIEhUTUwgZWxlbWVudC5cbiAqIEByZXR1cm5zIFRoZSBvZmZzZXQgbnVtYmVyLCBvciAtMSBpZiB0aGUgZWxlbWVudCBpcyBub3QgZm9jdXNlZCBvciBubyBzZWxlY3Rpb24gZXhpc3RzLiovXG5kZWNsYXJlIGZ1bmN0aW9uIGdldF9jdXJzb3JfcG9zaXRpb24oZWxlbWVudDogSFRNTEVsZW1lbnQpOiBudW1iZXI7XG4vKiogU2V0cyB0aGUgY3Vyc29yIHBvc2l0aW9uIChjYXJldCkgaW5zaWRlIHRoZSBjb250ZW50ZWRpdGFibGUgZWxlbWVudCBiYXNlZCBvbiBhIGNoYXJhY3RlciBvZmZzZXQuXG4gKiBAcGFyYW0gZWxlbWVudCBUaGUgY29udGVudGVkaXRhYmxlIEhUTUwgZWxlbWVudC5cbiAqIEBwYXJhbSBvZmZzZXQgVGhlIGNoYXJhY3RlciBvZmZzZXQgZnJvbSB0aGUgYmVnaW5uaW5nIG9mIHRoZSBlbGVtZW50J3MgdGV4dCBjb250ZW50LiovXG5kZWNsYXJlIGZ1bmN0aW9uIHNldF9jdXJzb3JfcG9zaXRpb24oZWxlbWVudDogSFRNTEVsZW1lbnQsIG9mZnNldDogbnVtYmVyKTogdm9pZDtcbi8qKlNldHMgdGhlIGN1cnNvciAoY2FyZXQpIHBvc2l0aW9uIGF0IHRoZSB2ZXJ5IGVuZCBvZiB0aGUgY29udGVudGVkaXRhYmxlIGVsZW1lbnQuXG4gKiBAcGFyYW0gZWxlbWVudCBUaGUgY29udGVudGVkaXRhYmxlIEhUTUwgZWxlbWVudC4qL1xuZGVjbGFyZSBmdW5jdGlvbiBzZXRfY3Vyc29yX2VuZChlbGVtZW50OiBIVE1MRWxlbWVudCk6IHZvaWQ7XG4vKiogU2VsZWN0cyBhbGwgY29udGVudCAodGV4dCBhbmQgZWxlbWVudHMpIHdpdGhpbiB0aGUgY29udGVudGVkaXRhYmxlIGVsZW1lbnQuXG4gKiBAcGFyYW0gZWxlbWVudCBUaGUgY29udGVudGVkaXRhYmxlIEhUTUwgZWxlbWVudC4qL1xuZGVjbGFyZSBmdW5jdGlvbiBzZXRfc2VsZWN0aW9uX2FsbChlbGVtZW50OiBIVE1MRWxlbWVudCk6IHZvaWQ7XG5cbi8qKiBDcmVhdGVzIGEgdGhyb3R0bGVkIGZ1bmN0aW9uIHRoYXQgb25seSBpbnZva2VzIGBmdW5jYCBhdCBtb3N0IG9uY2UgcGVyXG4gKiBldmVyeSBgd2FpdGAgbWlsbGlzZWNvbmRzLlxuICogKiBGZWF0dXJlczpcbiAqIC0gSW1tZWRpYXRlIGV4ZWN1dGlvbiBvbiB0aGUgZmlyc3QgY2FsbC5cbiAqIC0gTGVhZGluZy1lZGdlIGFuZCB0cmFpbGluZy1lZGdlIGV4ZWN1dGlvbiAoZW5zdXJlcyB0aGUgbGFzdCBjYWxsIGlzIG5vdCBsb3N0KS5cbiAqICogQHBhcmFtIGZ1bmMgLSBUaGUgZnVuY3Rpb24gdG8gdGhyb3R0bGUuXG4gKiBAcGFyYW0gd2FpdCAtIFRoZSBudW1iZXIgb2YgbWlsbGlzZWNvbmRzIHRvIHRocm90dGxlIGludm9jYXRpb25zIHRvLlxuICogQHJldHVybnMgQSBuZXcgdGhyb3R0bGVkIGZ1bmN0aW9uLiovXG5kZWNsYXJlIGZ1bmN0aW9uIHRocm90dGxlPFQgZXh0ZW5kcyAoLi4uYXJnczogYW55W10pID0+IGFueT4oZnVuYzogVCwgd2FpdD86IG51bWJlcik6ICguLi5hcmdzOiBQYXJhbWV0ZXJzPFQ+KSA9PiB2b2lkO1xuXG5kZWNsYXJlIGZ1bmN0aW9uIG5vZGVfY2xvbmU8VCBleHRlbmRzIE5vZGU+KG5vZGU6IFQpOiBUO1xudHlwZSBQcmV0dGlmeTxUPiA9IHtcbiAgICBbSyBpbiBrZXlvZiBUXTogVFtLXTtcbn0gJiB7fTtcbi8qKkNoZWNrcyBvZiB0aGUgZ2l2ZW4gb2JqZWN0IGlzIGVtcHR5IG9ubHkgY2hlY2tzIGZvciBvYmplY3RzIG93biBwcm9wZXJ0aWVzKi9cbmRlY2xhcmUgY29uc3Qgb2JqZWN0X2VtcHR5OiAob2JqOiBvYmplY3QpID0+IGJvb2xlYW47XG5kZWNsYXJlIGZ1bmN0aW9uIGFycmF5X2RpZmY8VD4obWFpbjogVFtdLCBzZWNvbmQ6IFRbXSk6IHtcbiAgICBhZGRlZDogVFtdO1xuICAgIHJlbW92ZWQ6IFRbXTtcbn07XG5kZWNsYXJlIGZ1bmN0aW9uIG9iamVjdF9rZXlfZGlmZjxUMSBleHRlbmRzIG9iamVjdCwgVDIgZXh0ZW5kcyBvYmplY3Q+KG1haW46IFQxLCBzZWNvbmQ6IFQyKToge1xuICAgIGFkZGVkOiBzdHJpbmdbXTtcbiAgICByZW1vdmVkOiBzdHJpbmdbXTtcbn07XG5cbmV4cG9ydCB7IElQQWRkcmVzcywgSVBWZXJzaW9uLCB0eXBlIFByZXR0aWZ5LCBhbnlfZXF1YWxzX2RlZXAsIGFycmF5X2RpZmYsIGFycmF5X2VxdWFsc19kZWVwLCBhcnJheV9mcm9tX2xlbmd0aCwgYXJyYXlfZnJvbV9yYW5nZSwgYXJyYXlfZnJvbV9yYW5nZV9pbmNsdXNpdmUsIGRlYm91bmNlLCBnZXRfY3Vyc29yX3Bvc2l0aW9uLCBpc19wcm9taXNlX2xpa2UsIG5vZGVfY2xvbmUsIG9iamVjdF9lbXB0eSwgb2JqZWN0X2VxdWFsc19kZWVwLCBvYmplY3Rfa2V5X2RpZmYsIHNldF9jdXJzb3JfZW5kLCBzZXRfY3Vyc29yX3Bvc2l0aW9uLCBzZXRfc2VsZWN0aW9uX2FsbCwgc2xlZXAsIHNsZWVwX2xhenksIHN5bmNfcmVqZWN0LCBzeW5jX3Jlc29sdmUsIHRocm90dGxlIH07XG4iXSwieF9nb29nbGVfaWdub3JlTGlzdCI6WzAsMSw2XSwibWFwcGluZ3MiOiI7Ozs7Ozs7Y0FDY0EsVUFBQUE7O2NBRUFDLFVBQUFBO0FBQUFBLFVBQ0pDLFVBQUFBO0VBSElGO0VBQUFBLFVBS0FDLFVBQUFBOztXQUVEVSxJQUFBQTtFQVAwQjtFQUFBLFNBUzFCQyxJQUFBQTtFQVAwQjtFQUFBLFNBUzFCQyxLQUFBQSxHQUFRUCxDQUFBQTtFQVRrQjs7RUFZbkNRLE1BQUFBLENBQU9DLEdBQUFBLFdBQWNULENBQUFBO0VBWEw7RUFhaEJVLE1BQUFBLElBQVVWLENBQUFBO0VBWEFMOztFQWNWZ0IsU0FBQUEsS0FBY0osS0FBQUEsRUFBT1YsRUFBQUEsR0FBS0csQ0FBQUEsR0FBSUgsRUFBQUE7RUFIcEJHOztFQU1WWSxRQUFBQSxLQUFhQyxNQUFBQSxHQUFTTixLQUFBQSxFQUFPUCxDQUFBQSxLQUFNQyxVQUFBQSxDQUFXSixFQUFBQSxJQUFNSyxNQUFBQSxDQUFPTCxFQUFBQTtFQUMzRGUsUUFBQUEsQ0FBU0MsTUFBQUEsR0FBU04sS0FBQUEsRUFBT1AsQ0FBQUEsS0FBTUcsVUFBQUEsR0FBYUQsTUFBQUEsQ0FBT0YsQ0FBQUE7RUFDbkRZLFFBQUFBLEtBQWFDLE1BQUFBLEdBQVNOLEtBQUFBLEVBQU9QLENBQUFBLEtBQU1FLE1BQUFBLENBQU9MLEVBQUFBLElBQU1LLE1BQUFBLENBQU9MLEVBQUFBO0VBRlRBOztFQUs5Q2lCLE9BQUFBLEtBQVlELE1BQUFBLFFBQWNaLFVBQUFBLENBQVdKLEVBQUFBLElBQU1LLE1BQUFBLENBQU9MLEVBQUFBO0VBQ2xEaUIsT0FBQUEsQ0FBUUQsTUFBQUEsUUFBY1YsVUFBQUEsR0FBYUQsTUFBQUEsQ0FBT0YsQ0FBQUE7RUFDMUNjLE9BQUFBLEtB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
|
|
708
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC5tdHMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vc3JjL2Jhc2UudHMiLCIuLi9zcmMvYm9vbGVhbi9sYW1wL2xhbXAudHMiLCIuLi9zcmMvYm9vbGVhbi9idXR0b24vYnV0dG9uLnRzIiwiLi4vc3JjL2Jvb2xlYW4vc3dpdGNoL3N3aXRjaC50cyIsIi4uL3NyYy9ncm91cC9ncm91cC50cyIsIi4uL3NyYy9saXN0L2xpc3RfZmllbGQudHMiLCIuLi9zcmMvbnVtYmVyL251bWJlcl9iYXNlLnRzIiwiLi4vc3JjL251bWJlci9udW1iZXJJbnB1dC9udW1iZXJfaW5wdXQudHMiLCIuLi9zcmMvbnVtYmVyL3Byb2dyZXNzL3Byb2dyZXNzLnRzIiwiLi4vc3JjL251bWJlci9zbGlkZXIvc2xpZGVyLnRzIiwiLi4vc3JjL251bWJlci9zdGVwcGVyL3N0ZXBwZXIudHMiLCIuLi9zcmMvc2VsZWN0b3JzL3NlbGVjdG9yX2Jhc2UudHMiLCIuLi9zcmMvc2VsZWN0b3JzL2Ryb3BfZG93bi9kcm9wX2Rvd24udHMiLCIuLi9zcmMvc2VsZWN0b3JzL3RvZ2dsZV9idXR0b24vdG9nZ2xlX2J1dHRvbi50cyIsIi4uL3NyYy9zcGFjaW5nL3NwYWNlci50cyIsIi4uL3NyYy9zcGVjaWFsL2NvbG9yL2NvbG9yX2lucHV0LnRzIiwiLi4vc3JjL3NwZWNpYWwvZGF0ZV90aW1lL2RhdGVfdGltZV9pbnB1dC50cyIsIi4uL3NyYy9zcGVjaWFsL2lwL2lwX2lucHV0LnRzIiwiLi4vc3JjL3NwZWNpYWwvcGFzc3dvcmQvcGFzc3dvcmRfaW5wdXQudHMiLCIuLi9zcmMvdGV4dC9pbnB1dC90ZXh0X2lucHV0LnRzIiwiLi4vc3JjL3RleHQvbXVsdGlMaW5lL3RleHRfbXVsdGlfbGluZS50cyIsIi4uL3NyYy90ZXh0L3RleHQvdGV4dC50cyIsIi4uL3NyYy9pbmRleC50cyJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7OztjQU9hLFVBQUE7RUFBQTs7Ozs7OztLQVFELFVBQUEsV0FBcUIs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
|