payload-auth 1.7.0 → 1.7.1
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.
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { AuthContext
|
|
1
|
+
import type { AuthContext } from 'better-auth';
|
|
2
2
|
import type { DBFieldAttribute } from 'better-auth/db';
|
|
3
3
|
import type { BetterAuthOptions as BetterAuthOptionsType, BetterAuthPlugin as BetterAuthPluginType, InferAPI, InferPluginTypes } from 'better-auth/types';
|
|
4
4
|
import type { BasePayload, CollectionConfig, Config, Endpoint, Field, Payload, PayloadRequest } from 'payload';
|
|
@@ -386,6 +386,9 @@ export type EndpointWithBetterAuth<O extends BetterAuthPluginOptions> = Omit<End
|
|
|
386
386
|
handler: (req: PayloadRequestWithBetterAuth<O>) => Promise<Response> | Response;
|
|
387
387
|
};
|
|
388
388
|
type UnionToIntersection<U> = (U extends any ? (k: U) => void : never) extends (k: infer I) => void ? I : never;
|
|
389
|
+
type PrettifyDeep<T> = {
|
|
390
|
+
[K in keyof T]: T[K] extends (...args: any[]) => any ? T[K] : T[K] extends object ? T[K] extends Array<any> ? T[K] : T[K] extends Date ? T[K] : PrettifyDeep<T[K]> : T[K];
|
|
391
|
+
} & {};
|
|
389
392
|
type InferPluginErrorCodes<O extends BetterAuthOptions> = O['plugins'] extends Array<infer P> ? UnionToIntersection<P extends BetterAuthPluginType ? (P['$ERROR_CODES'] extends Record<string, any> ? P['$ERROR_CODES'] : never) : never> extends infer R ? [R] extends [never] ? {} : R : {} : {};
|
|
390
393
|
export type RoleArray<O extends readonly string[] = readonly [typeof defaults.userRole]> = O[number][] | null;
|
|
391
394
|
type OverrideRole<T, O extends readonly string[]> = T extends object ? Omit<T, 'role'> & {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/better-auth/plugin/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/better-auth/plugin/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAC9C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AACtD,OAAO,KAAK,EACV,iBAAiB,IAAI,qBAAqB,EAC1C,gBAAgB,IAAI,oBAAoB,EACxC,QAAQ,EACR,gBAAgB,EACjB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAC9G,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAC7C,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AACvF,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAC1D,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AACtC;;;;;;;;;GASG;AACH,MAAM,WAAW,iBACf,SAAQ,IAAI,CAAC,qBAAqB,EAAE,UAAU,GAAG,MAAM,GAAG,SAAS,GAAG,cAAc,GAAG,SAAS,GAAG,UAAU,CAAC;IAC9G,IAAI,CAAC,EAAE,IAAI,CAAC,WAAW,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC,EAAE,WAAW,GAAG,QAAQ,CAAC,GAAG,SAAS,CAAA;IAC3F,OAAO,CAAC,EAAE,IAAI,CAAC,WAAW,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAC,EAAE,WAAW,GAAG,QAAQ,CAAC,GAAG,SAAS,CAAA;IACjG,OAAO,CAAC,EAAE,IAAI,CAAC,WAAW,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAC,EAAE,WAAW,GAAG,QAAQ,CAAC,GAAG,SAAS,CAAA;IACjG,YAAY,CAAC,EAAE,IAAI,CAAC,WAAW,CAAC,qBAAqB,CAAC,cAAc,CAAC,CAAC,EAAE,WAAW,GAAG,QAAQ,CAAC,GAAG,SAAS,CAAA;IAC3G,QAAQ,CAAC,EAAE,IAAI,CAAC,WAAW,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC,EAAE,YAAY,CAAC,GAAG,SAAS,CAAA;CAC1F;AAED,MAAM,WAAW,0BAA2B,SAAQ,IAAI,CAAC,qBAAqB,EAAE,UAAU,CAAC;CAAG;AAE9F,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,CAAC,CAAA;AAE7D,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,CAAC,CAAA;AAEvD,KAAK,yBAAyB,GAAG;KAC9B,CAAC,IAAI,MAAM,OAAO,aAAa,CAAC,CAAC,EAAE,CAAC,OAAO,EAAE;QAAE,UAAU,EAAE,gBAAgB,CAAA;KAAE,KAAK,gBAAgB;CACpG,CAAA;AAED,MAAM,WAAW,uBAAuB;IACtC;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB;;;;;;;;;;;;;OAaG;IACH,yBAAyB,CAAC,EAAE,OAAO,CAAA;IACnC;;;;OAIG;IACH,KAAK,CAAC,EAAE;QACN;;;;WAIG;QACH,YAAY,CAAC,EAAE,WAAW,EAAE,CAAA;KAC7B,CAAA;IACD;;OAEG;IACH,KAAK,CAAC,EAAE;QACN;;;WAGG;QACH,eAAe,CAAC,EAAE,OAAO,CAAA;QACzB;;;WAGG;QACH,SAAS,CAAC,EAAE,OAAO,CAAA;KACpB,CAAA;IACD;;;OAGG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAA;IAC/B;;;OAGG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B;;;;;;;;;;;;;;OAcG;IACH,2BAA2B,CAAC,EAAE,OAAO,CAAA;IACrC;;;;;;;;;OASG;IACH,iBAAiB,CAAC,EAAE,iBAAiB,CAAA;IACrC;;;;;OAKG;IACH,yBAAyB,CAAC,EAAE,yBAAyB,CAAA;IACrD;;OAEG;IACH,KAAK,CAAC,EAAE;QACN;;;;;;WAMG;QACH,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QACzB;;;;;;;;;;WAUG;QACH,WAAW,CAAC,EAAE,MAAM,CAAA;QACpB;;;;;;;WAOG;QACH,gBAAgB,CAAC,EAAE,MAAM,CAAA;QACzB;;;;;;;;;;;WAWG;QACH,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;QAChB;;;;;;;;;;;;WAYG;QACH,UAAU,CAAC,EAAE,MAAM,EAAE,CAAA;QACrB;;;;WAIG;QACH,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;QAC5B;;;;;;;WAOG;QACH,aAAa,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAA;QACpC;;;;;;;;;WASG;QACH,mBAAmB,CAAC,EAAE,CAAC,OAAO,EAAE;YAAE,UAAU,EAAE,gBAAgB,CAAA;SAAE,KAAK,gBAAgB,CAAA;QACrF;;;;;WAKG;QACH,qCAAqC,CAAC,EAAE,OAAO,CAAA;KAChD,CAAA;IACD;;OAEG;IACH,QAAQ,CAAC,EAAE;QACT;;;;;;WAMG;QACH,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QACzB;;WAEG;QACH,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;QAC5B;;;;;;;WAOG;QACH,mBAAmB,CAAC,EAAE,CAAC,OAAO,EAAE;YAAE,UAAU,EAAE,gBAAgB,CAAA;SAAE,KAAK,gBAAgB,CAAA;KACtF,CAAA;IACD;;OAEG;IACH,QAAQ,CAAC,EAAE;QACT;;;;;;WAMG;QACH,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QACzB;;WAEG;QACH,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;QAC5B;;;;;;;WAOG;QACH,mBAAmB,CAAC,EAAE,CAAC,OAAO,EAAE;YAAE,UAAU,EAAE,gBAAgB,CAAA;SAAE,KAAK,gBAAgB,CAAA;KACtF,CAAA;IACD;;OAEG;IACH,aAAa,CAAC,EAAE;QACd;;;;;;WAMG;QACH,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QACzB;;WAEG;QACH,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;QAC5B;;;;;;;WAOG;QACH,mBAAmB,CAAC,EAAE,CAAC,OAAO,EAAE;YAAE,UAAU,EAAE,gBAAgB,CAAA;SAAE,KAAK,gBAAgB,CAAA;KACtF,CAAA;IACD;;OAEG;IACH,gBAAgB,CAAC,EAAE;QACjB;;;;WAIG;QACH,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QACzB;;WAEG;QACH,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;QAC5B;;;;;WAKG;QACH,iBAAiB,CAAC,EAAE,wBAAwB,CAAA;QAC5C;;;;;WAKG;QACH,eAAe,CAAC,EAAE,sBAAsB,CAAA;QACxC;;;;;;;WAOG;QACH,mBAAmB,CAAC,EAAE,CAAC,OAAO,EAAE;YAAE,UAAU,EAAE,gBAAgB,CAAA;SAAE,KAAK,gBAAgB,CAAA;KACtF,CAAA;CACF;AAED,MAAM,MAAM,sBAAsB,GAAG,CAAC,OAAO,EAAE;IAC7C,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,EAAE,MAAM,CAAA;IACb,GAAG,EAAE,MAAM,CAAA;CACZ,KAAK,OAAO,CAAC;IAAE,OAAO,EAAE,IAAI,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,OAAO,EAAE,KAAK,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,CAAA;AAExF,MAAM,MAAM,wBAAwB,GAAG,CAAC,OAAO,EAAE;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,KAAK,MAAM,CAAA;AAE/F,MAAM,MAAM,iBAAiB,GAAG;IAC9B,UAAU,EAAE;QACV,WAAW,EAAE;aACV,GAAG,IAAI,MAAM,OAAO,WAAW,GAAG,MAAM;SAC1C,CAAA;KACF,CAAA;CACF,CAAA;AAED,MAAM,WAAW,gBAAgB;IAC/B,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAA;IACxB,aAAa,EAAE,uBAAuB,CAAA;CACvC;AAED,MAAM,WAAW,4BAA4B,CAAC,CAAC,SAAS,uBAAuB,CAAE,SAAQ,cAAc;IACrG,OAAO,EAAE,WAAW,GAAG;QACrB,UAAU,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAA;KAChC,CAAA;CACF;AAED,MAAM,MAAM,4BAA4B,CAAC,CAAC,SAAS,uBAAuB,EAAE,CAAC,SAAS,CAAC,IAAI,EAAE,GAAG,KAAK,GAAG,IAAI,CAAC,SAAS,CACpH,IAAI,EAAE,MAAM,CAAC,KACV,MAAM,CAAC,GACR,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG;IAAE,GAAG,EAAE,4BAA4B,CAAC,CAAC,CAAC,CAAA;CAAE,KAAK,CAAC,GACtE,KAAK,CAAA;AAET,MAAM,MAAM,sBAAsB,CAAC,CAAC,SAAS,uBAAuB,IAAI,IAAI,CAAC,QAAQ,EAAE,SAAS,CAAC,GAAG;IAClG,OAAO,EAAE,CAAC,GAAG,EAAE,4BAA4B,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,QAAQ,CAAC,GAAG,QAAQ,CAAA;CAChF,CAAA;AAED,KAAK,mBAAmB,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,IAAI,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,MAAM,CAAC,KAAK,IAAI,GAAG,CAAC,GAAG,KAAK,CAAA;AAC/G,KAAK,YAAY,CAAC,CAAC,IAAI;KACpB,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAC1K,GAAG,EAAE,CAAC;AACP,KAAK,qBAAqB,CAAC,CAAC,SAAS,iBAAiB,IACpD,CAAC,CAAC,SAAS,CAAC,SAAS,KAAK,CAAC,MAAM,CAAC,CAAC,GAC/B,mBAAmB,CACjB,CAAC,SAAS,oBAAoB,GAAG,CAAC,CAAC,CAAC,cAAc,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,cAAc,CAAC,GAAG,KAAK,CAAC,GAAG,KAAK,CACrH,SAAS,MAAM,CAAC,GACf,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,GACjB,EAAE,GACF,CAAC,GACH,EAAE,GACJ,EAAE,CAAA;AAER,MAAM,MAAM,SAAS,CAAC,CAAC,SAAS,SAAS,MAAM,EAAE,GAAG,SAAS,CAAC,OAAO,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,EAAE,GAAG,IAAI,CAAA;AAC7G,KAAK,YAAY,CAAC,CAAC,EAAE,CAAC,SAAS,SAAS,MAAM,EAAE,IAAI,CAAC,SAAS,MAAM,GAAG,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,GAAG;IAAE,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,CAAA;CAAE,GAAG,CAAC,CAAA;AACnH,KAAK,SAAS,CAAC,CAAC,SAAS,uBAAuB,IAAI,WAAW,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAA;AACvF,KAAK,YAAY,CAAC,CAAC,IAAI,CAAC,SAAS;IAAE,KAAK,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC,CAAA;KAAE,CAAA;CAAE,GAC5D,CAAC,SAAS,SAAS,MAAM,EAAE,GACzB,CAAC,GACD,SAAS,EAAE,GACb,SAAS,CAAC,OAAO,QAAQ,CAAC,QAAQ,CAAC,CAAA;AACvC,KAAK,cAAc,GAAG,OAAO,gBAAgB,CAAA;AAE7C,MAAM,MAAM,gBAAgB,CAAC,CAAC,SAAS,uBAAuB,GAAG,uBAAuB,IAAI;IAC1F,OAAO,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAA;IAChD,GAAG,EAAE,QAAQ,CAAC,UAAU,CAAC,OAAO,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAA;IACnE,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC,CAAA;IACrB,YAAY,EAAE,qBAAqB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,cAAc,CAAA;IAClE,QAAQ,EAAE,OAAO,CAAC,WAAW,CAAC,CAAA;IAC9B,MAAM,EAAE,gBAAgB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS;QAC7C,OAAO,EAAE,GAAG,CAAA;KACb,GACG,gBAAgB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,GAC9B;QACE,OAAO,EAAE;YACP,OAAO,EAAE,YAAY,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;YACjD,IAAI,EAAE,YAAY,CAAC,YAAY,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,CAAA;SAC3E,CAAA;KACF,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAA;CACvC,CAAA;AAED,MAAM,MAAM,yBAAyB,CAAC,CAAC,SAAS,uBAAuB,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,UAAU,GAAG,SAAS,CAAC,GAAG;IACtH,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;CACjC,CAAA;AAED,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE,MAAM,CAAA;IACjB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAA;IACxC,KAAK,EAAE,MAAM,CAAA;CACd;AAED,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAC,QAAQ,EAAE,qBAAqB,CAAC,CAAA;AAEvE,MAAM,WAAW,oBAAoB;IACnC,eAAe,EAAE,iBAAiB,CAAA;IAClC,aAAa,EAAE,uBAAuB,CAAA;IACtC,mBAAmB,EAAE,gBAAgB,EAAE,CAAA;CACxC;AAED,MAAM,MAAM,cAAc,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,IAAI;KACrD,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,OAAO,CAAC,KAAK,CAAC;CACzD,GAAG;IACF,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,KAAK,EAAE,gBAAgB,KAAK,OAAO,CAAC,KAAK,CAAC,CAAA;CAC3D,CAAA;AAED,MAAM,MAAM,YAAY,GAAG;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE;QAAE,kBAAkB,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,CAAA;AAEtF,MAAM,MAAM,SAAS,GAAG;IACtB,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,OAAO,CAAA;IAChD,SAAS,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAChE,CAAA"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export { };
|
|
2
2
|
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9iZXR0ZXItYXV0aC9wbHVnaW4vdHlwZXMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBBdXRoQ29udGV4dCwgUHJldHRpZnlEZWVwIH0gZnJvbSAnYmV0dGVyLWF1dGgnXG5pbXBvcnQgdHlwZSB7IERCRmllbGRBdHRyaWJ1dGUgfSBmcm9tICdiZXR0ZXItYXV0aC9kYidcbmltcG9ydCB0eXBlIHtcbiAgQmV0dGVyQXV0aE9wdGlvbnMgYXMgQmV0dGVyQXV0aE9wdGlvbnNUeXBlLFxuICBCZXR0ZXJBdXRoUGx1Z2luIGFzIEJldHRlckF1dGhQbHVnaW5UeXBlLFxuICBJbmZlckFQSSxcbiAgSW5mZXJQbHVnaW5UeXBlc1xufSBmcm9tICdiZXR0ZXItYXV0aC90eXBlcydcbmltcG9ydCB0eXBlIHsgQmFzZVBheWxvYWQsIENvbGxlY3Rpb25Db25maWcsIENvbmZpZywgRW5kcG9pbnQsIEZpZWxkLCBQYXlsb2FkLCBQYXlsb2FkUmVxdWVzdCB9IGZyb20gJ3BheWxvYWQnXG5pbXBvcnQgeyBNb2RlbEtleSB9IGZyb20gJy4uL2dlbmVyYXRlZC10eXBlcydcbmltcG9ydCB7IGFkbWluUm91dGVzLCBiYVBsdWdpblNsdWdzLCBsb2dpbk1ldGhvZHMsIHNvY2lhbFByb3ZpZGVycyB9IGZyb20gJy4vY29uc3RhbnRzJ1xuaW1wb3J0IHR5cGUgeyBJbmZlclNlc3Npb24sIEluZmVyVXNlciB9IGZyb20gJ2JldHRlci1hdXRoL3R5cGVzJ1xuaW1wb3J0IHsgQkFTRV9FUlJPUl9DT0RFUyB9IGZyb20gJ0BiZXR0ZXItYXV0aC9jb3JlL2Vycm9yJ1xuaW1wb3J0IHsgcm91dGVyIH0gZnJvbSAnYmV0dGVyLWF1dGgvYXBpJ1xuaW1wb3J0IHsgZGVmYXVsdHMgfSBmcm9tICcuL2NvbnN0YW50cydcbi8qKlxuICogQmV0dGVyQXV0aCBvcHRpb25zIHdpdGggdGhlIGZvbGxvd2luZyBjYXZlYXRzOlxuICogLSBUaGUgYGRhdGFiYXNlYCBvcHRpb24gaXMgcmVtb3ZlZCBhcyBpdCBpcyBjb25maWd1cmVkIGludGVybmFsbHlcbiAqIC0gVGhlIGB1c2VyYCBgbW9kZWxOYW1lYCBhbmQgYGZpZWxkc2AgaXMgcmVtb3ZlZCBhcyBpdCBpcyBjb25maWd1cmVkIGludGVybmFsbHlcbiAqIC0gVGhlIGBhY2NvdW50YCBgbW9kZWxOYW1lYCBhbmQgYGZpZWxkc2AgaXMgcmVtb3ZlZCBhcyBpdCBpcyBjb25maWd1cmVkIGludGVybmFsbHlcbiAqIC0gVGhlIGBzZXNzaW9uYCBgbW9kZWxOYW1lYCBhbmQgYGZpZWxkc2AgaXMgcmVtb3ZlZCBhcyBpdCBpcyBjb25maWd1cmVkIGludGVybmFsbHlcbiAqIC0gVGhlIGB2ZXJpZmljYXRpb25gIGBtb2RlbE5hbWVgIGFuZCBgZmllbGRzYCBpcyByZW1vdmVkIGFzIGl0IGlzIGNvbmZpZ3VyZWQgaW50ZXJuYWxseVxuICpcbiAqIEBzZWUgaHR0cHM6Ly93d3cuYmV0dGVyLWF1dGguY29tL2RvY3MvcmVmZXJlbmNlL29wdGlvbnNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCZXR0ZXJBdXRoT3B0aW9uc1xuICBleHRlbmRzIE9taXQ8QmV0dGVyQXV0aE9wdGlvbnNUeXBlLCAnZGF0YWJhc2UnIHwgJ3VzZXInIHwgJ2FjY291bnQnIHwgJ3ZlcmlmaWNhdGlvbicgfCAnc2Vzc2lvbicgfCAnYWR2YW5jZWQnPiB7XG4gIHVzZXI/OiBPbWl0PE5vbk51bGxhYmxlPEJldHRlckF1dGhPcHRpb25zVHlwZVsndXNlciddPiwgJ21vZGVsTmFtZScgfCAnZmllbGRzJz4gfCB1bmRlZmluZWRcbiAgYWNjb3VudD86IE9taXQ8Tm9uTnVsbGFibGU8QmV0dGVyQXV0aE9wdGlvbnNUeXBlWydhY2NvdW50J10+LCAnbW9kZWxOYW1lJyB8ICdmaWVsZHMnPiB8IHVuZGVmaW5lZFxuICBzZXNzaW9uPzogT21pdDxOb25OdWxsYWJsZTxCZXR0ZXJBdXRoT3B0aW9uc1R5cGVbJ3Nlc3Npb24nXT4sICdtb2RlbE5hbWUnIHwgJ2ZpZWxkcyc+IHwgdW5kZWZpbmVkXG4gIHZlcmlmaWNhdGlvbj86IE9taXQ8Tm9uTnVsbGFibGU8QmV0dGVyQXV0aE9wdGlvbnNUeXBlWyd2ZXJpZmljYXRpb24nXT4sICdtb2RlbE5hbWUnIHwgJ2ZpZWxkcyc+IHwgdW5kZWZpbmVkXG4gIGFkdmFuY2VkPzogT21pdDxOb25OdWxsYWJsZTxCZXR0ZXJBdXRoT3B0aW9uc1R5cGVbJ2FkdmFuY2VkJ10+LCAnZ2VuZXJhdGVJZCc+IHwgdW5kZWZpbmVkXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2FuaXRpemVkQmV0dGVyQXV0aE9wdGlvbnMgZXh0ZW5kcyBPbWl0PEJldHRlckF1dGhPcHRpb25zVHlwZSwgJ2RhdGFiYXNlJz4ge31cblxuZXhwb3J0IHR5cGUgU29jaWFsUHJvdmlkZXIgPSAodHlwZW9mIHNvY2lhbFByb3ZpZGVycylbbnVtYmVyXVxuXG5leHBvcnQgdHlwZSBMb2dpbk1ldGhvZCA9ICh0eXBlb2YgbG9naW5NZXRob2RzKVtudW1iZXJdXG5cbnR5cGUgUGx1Z2luQ29sbGVjdGlvbk92ZXJyaWRlcyA9IHtcbiAgW0sgaW4ga2V5b2YgdHlwZW9mIGJhUGx1Z2luU2x1Z3NdPzogKG9wdGlvbnM6IHsgY29sbGVjdGlvbjogQ29sbGVjdGlvbkNvbmZpZyB9KSA9PiBDb2xsZWN0aW9uQ29uZmlnXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQmV0dGVyQXV0aFBsdWdpbk9wdGlvbnMge1xuICAvKipcbiAgICogRGlzYWJsZSB0aGUgcGx1Z2luXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICBkaXNhYmxlZD86IGJvb2xlYW5cbiAgLyoqXG4gICAqIERpc2FibGUgdGhlIGRlZmF1bHQgcGF5bG9hZCBhdXRoXG4gICAqXG4gICAqIFRoaXMgd2lsbCBlbnN1cmUgdGhhdCBiZXR0ZXItYXV0aCBoYW5kbGVzIGJvdGggYWRtaW4gYW5kIGZyb250ZW5kIGF1dGhcbiAgICpcbiAgICogQWRtaW4gd2lsbCBtYWtlIHVzZSBvZiBjdXN0b20gYWRtaW4gcm91dGVzIGZvciBhdXRoIGFuZCBnaXZlIHlvdSBtb3JlIGNvbnRyb2xcbiAgICpcbiAgICogTm90ZTogVGhpcyB3aWxsIG92ZXJyaWRlIHRoZSBvcHRpb24gcGFzc2VkIGluIHRoZSB1c2VycyBjb2xsZWN0aW9uIGNvbmZpZ1xuICAgKlxuICAgKiBSZWFkIGFib3V0IHRoaXMgbW9yZSBpbiB0aGUgZG9jc1xuICAgKiBAc2VlIGh0dHBzOi8vd3d3LnBheWxvYWRhdXRoLmNvbS9kb2NzL2JldHRlci1hdXRoI2Rpc2FibGUtZGVmYXVsdC1wYXlsb2FkLWF1dGhcbiAgICpcbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIGRpc2FibGVEZWZhdWx0UGF5bG9hZEF1dGg/OiBib29sZWFuXG4gIC8qKlxuICAgKiBDdXN0b20gYWRtaW4gY29tcG9uZW50cyB3aGVuIGRpc2FibGVEZWZhdWx0UGF5bG9hZEF1dGggaXMgdHJ1ZVxuICAgKlxuICAgKiBUaGVzZSBjb21wb25lbnRzIHdpbGwgYmUgdXNlZCB0byByZW5kZXIgdGhlIGxvZ2luLCBjcmVhdGUgZmlyc3QgYWRtaW4sIGFuZCBvdGhlciBhdXRoLXJlbGF0ZWQgdmlld3NcbiAgICovXG4gIGFkbWluPzoge1xuICAgIC8qKlxuICAgICAqIE92ZXJyaWRlIHdoaWNoIHNvY2lhbCBidXR0b25zIGFyZSBzaG93biBpbiB0aGUgUGF5bG9hZCBMb2dpbiAvIFNpZ24gVXAgdmlldy5cbiAgICAgKlxuICAgICAqIFByb3ZpZGUgYW4gYXJyYXkgb2YgTG9naW5NZXRob2Qga2V5cy5cbiAgICAgKi9cbiAgICBsb2dpbk1ldGhvZHM/OiBMb2dpbk1ldGhvZFtdXG4gIH1cbiAgLyoqXG4gICAqIERlYnVnIG9wdGlvbnNcbiAgICovXG4gIGRlYnVnPzoge1xuICAgIC8qKlxuICAgICAqIEVuYWJsZSBkZWJ1ZyBsb2dzXG4gICAgICogQGRlZmF1bHQgZmFsc2VcbiAgICAgKi9cbiAgICBlbmFibGVEZWJ1Z0xvZ3M/OiBib29sZWFuXG4gICAgLyoqXG4gICAgICogTG9nIHRoZSB0YWJsZXMgdGhhdCBhcmUgbmVlZGVkIGZvciBiZXR0ZXItYXV0aCBvbiBpbml0XG4gICAgICogQGRlZmF1bHQgZmFsc2VcbiAgICAgKi9cbiAgICBsb2dUYWJsZXM/OiBib29sZWFuXG4gIH1cbiAgLyoqXG4gICAqIEhpZGUgdGhlIGJldHRlci1hdXRocGx1Z2luIGNvbGxlY3Rpb25zIGZyb20gdGhlIHBheWxvYWQgYWRtaW4gVUlcbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIGhpZGVQbHVnaW5Db2xsZWN0aW9ucz86IGJvb2xlYW5cbiAgLyoqXG4gICAqIERlZmluZXMgdGhlIGFkbWluIGdyb3VwIGZvciBjb2xsZWN0aW9ucy5cbiAgICogQGRlZmF1bHQgXCJBdXRoXCJcbiAgICovXG4gIGNvbGxlY3Rpb25BZG1pbkdyb3VwPzogc3RyaW5nXG4gIC8qKlxuICAgKiBSZXF1aXJlIGEgdmFsaWQgYWRtaW4gaW52aXRhdGlvbiBmb3IgYW55ICpwdWJsaWMqIHNpZ27igJF1cC5cbiAgICpcbiAgICog4oCTIEFwcGxpZXMgdG8gYm90aCBlbWFpbC9wYXNzd29yZCBhbmQgc29jaWFs4oCRcHJvdmlkZXIgZmxvd3MuXG4gICAqIOKAkyBFeGlzdGluZyB1c2VycyBjYW4gc3RpbGwgc2lnbiBpbjsgYWRtaW5zIGNhbiBzdGlsbCBjcmVhdGUgdXNlcnMgdmlhXG4gICAqICAgdGhlIFBheWxvYWQgVUkgb3Igc2VydmVy4oCRc2lkZSBjYWxscy5cbiAgICog4oCTIElnbm9yZXMgcHJvdmlkZXLigJFsZXZlbCBgZGlzYWJsZUltcGxpY2l0U2lnblVwYCBhbmQgYGRpc2FibGVTaWduVXBgOlxuICAgKiAgIHdpdGggYSB2YWxpZCBpbnZpdGUgdGhlIHNpZ27igJF1cCBwcm9jZWVkcywgd2l0aG91dCBvbmUgaXQncyBibG9ja2VkLlxuICAgKiDigJMgQWxzbyBzZXRzIGBkaXNhYmxlSW1wbGljaXRTaWduVXBgIGZvciBhbGwgcHJvdmlkZXJzLCByZXF1aXJpbmcgYHJlcXVlc3RTaWduVXBgIHRvIGJlIHRydWUgZm9yIGFsbCBgYXV0aENsaWVudC5zaWduSW4uc29jaWFsYCBjYWxscyB3aGVuIGNyZWF0aW5nIGEgbmV3IGFjY291bnQgd2l0aCBhIHByb3ZpZGVyLlxuICAgKlxuICAgKiBFbmFibGUgd2hlbiB5b3Ugd2FudCBPQXV0aCBmb3IgaW50ZXJuYWwvYWRtaW4gdXNlIG9ubHkgYW5kIG5vIHB1YmxpY1xuICAgKiByZWdpc3RyYXRpb25zIGF0IGFsbC5cbiAgICpcbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlcXVpcmVBZG1pbkludml0ZUZvclNpZ25VcD86IGJvb2xlYW5cbiAgLyoqXG4gICAqIEJldHRlckF1dGggb3B0aW9ucyB3aXRoIHRoZSBmb2xsb3dpbmcgY2F2ZWF0czpcbiAgICogLSBUaGUgYGRhdGFiYXNlYCBvcHRpb24gaXMgcmVtb3ZlZCBhcyBpdCBpcyBjb25maWd1cmVkIGludGVybmFsbHlcbiAgICogLSBUaGUgYHVzZXJgIGBtb2RlbE5hbWVgIGFuZCBgZmllbGRzYCBpcyByZW1vdmVkIGFzIGl0IGlzIGNvbmZpZ3VyZWQgaW50ZXJuYWxseVxuICAgKiAtIFRoZSBgYWNjb3VudGAgYG1vZGVsTmFtZWAgYW5kIGBmaWVsZHNgIGlzIHJlbW92ZWQgYXMgaXQgaXMgY29uZmlndXJlZCBpbnRlcm5hbGx5XG4gICAqIC0gVGhlIGBzZXNzaW9uYCBgbW9kZWxOYW1lYCBhbmQgYGZpZWxkc2AgaXMgcmVtb3ZlZCBhcyBpdCBpcyBjb25maWd1cmVkIGludGVybmFsbHlcbiAgICogLSBUaGUgYHZlcmlmaWNhdGlvbmAgYG1vZGVsTmFtZWAgYW5kIGBmaWVsZHNgIGlzIHJlbW92ZWQgYXMgaXQgaXMgY29uZmlndXJlZCBpbnRlcm5hbGx5XG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly93d3cuYmV0dGVyLWF1dGguY29tL2RvY3MvcmVmZXJlbmNlL29wdGlvbnNcbiAgICovXG4gIGJldHRlckF1dGhPcHRpb25zPzogQmV0dGVyQXV0aE9wdGlvbnNcbiAgLyoqXG4gICAqIE92ZXJyaWRlIHBsdWdpbiBjb25maWd1cmF0aW9uc1xuICAgKlxuICAgKiBOb3RlOiBUeXBlU2NyaXB0IGNhbm5vdCBlbmZvcmNlIHRoYXQgb25seSBlbmFibGVkIHBsdWdpbnMgYXJlIGNvbmZpZ3VyZWRcbiAgICogYXQgY29tcGlsZSB0aW1lLCBidXQgdGhpcyB3aWxsIGJlIHZhbGlkYXRlZCBhdCBydW50aW1lLlxuICAgKi9cbiAgcGx1Z2luQ29sbGVjdGlvbk92ZXJyaWRlcz86IFBsdWdpbkNvbGxlY3Rpb25PdmVycmlkZXNcbiAgLyoqXG4gICAqIENvbmZpZ3VyZSB0aGUgVXNlcnMgY29sbGVjdGlvbnM6XG4gICAqL1xuICB1c2Vycz86IHtcbiAgICAvKipcbiAgICAgKiBXaWxsIHNldCB0aGUgYG1vZGVsTmFtZWAgZm9yIHRoZSBgdXNlcmAgdGFibGUgaW4gYmV0dGVyLWF1dGhcbiAgICAgKlxuICAgICAqIGFuZCB0aGUgYHNsdWdgIGZvciB0aGUgYHVzZXJzYCBjb2xsZWN0aW9uIGluIHBheWxvYWRcbiAgICAgKlxuICAgICAqIEBkZWZhdWx0ICd1c2VycydcbiAgICAgKi9cbiAgICBzbHVnPzogc3RyaW5nIHwgdW5kZWZpbmVkXG4gICAgLyoqXG4gICAgICogVGhlIGRlZmF1bHQgcm9sZSBmb3IgdXNlcnNcbiAgICAgKlxuICAgICAqIFRoaXMgd2lsbCBiZSB1c2VkIGFzIHRoZSBkZWZhdWx0IHJvbGUgZm9yIHRoZSByb2xlIGZpZWxkIGluIHRoZSB1c2VycyBjb2xsZWN0aW9uXG4gICAgICpcbiAgICAgKiBJZiB5b3UgZGVmaW5lIHRoaXMgeW91IG11c3QgYWxzbyBoYXZlIHRoaXMgcm9sZSBpbiB0aGUgcm9sZXMgYXJyYXlcbiAgICAgKlxuICAgICAqIFRoaXMgd2lsbCBhbHNvIGJlIHVzZWQgYXMgdGhlIGRlZmF1bHRSb2xlIG9wdGlvbiBpbiB0aGUgYmV0dGVyLWF1dGggYWRtaW4gcGx1Z2luIGlmIHByZXNlbnRcbiAgICAgKiBAc2VlIGh0dHBzOi8vd3d3LmJldHRlci1hdXRoLmNvbS9kb2NzL3BsdWdpbnMvYWRtaW4jZGVmYXVsdC1yb2xlXG4gICAgICogQGRlZmF1bHQgXCJ1c2VyXCJcbiAgICAgKi9cbiAgICBkZWZhdWx0Um9sZT86IHN0cmluZ1xuICAgIC8qKlxuICAgICAqIFRoZSBkZWZhdWx0IHJvbGUgZm9yIGFkbWluc1xuICAgICAqXG4gICAgICogVGhpcyB3aWxsIGJlIHVzZWQgYXMgdGhlIGRlZmF1bHQgcm9sZSBmb3Igd2hlbiBhZG1pbnMgc2lnbiB1cCBpbiB0aGUgY3JlYXRlIGZpcnN0IGFkbWluIHZpZXcgb3Igd2hlbiBpbnZpdGluZyBuZXcgYWRtaW5zXG4gICAgICpcbiAgICAgKlxuICAgICAqIEBkZWZhdWx0IFwiYWRtaW5cIlxuICAgICAqL1xuICAgIGRlZmF1bHRBZG1pblJvbGU/OiBzdHJpbmdcbiAgICAvKipcbiAgICAgKiBBbGwgcm9sZXMgZm9yIHRoZSB1c2VycyBjb2xsZWN0aW9uXG4gICAgICpcbiAgICAgKiBUaGVzZSB3aWxsIGJlIHVzZWQgdG8gZGVmaW5lIGFsbCB0aGUgb3B0aW9ucyBpbiB0aGUgdXNlciBjb2xsZWN0aW9uIHJvbGUgZmllbGRcbiAgICAgKlxuICAgICAqIFdpbGwgYmUgbWVyZ2VkIHdpdGggdGhlIGFkbWluUm9sZXMgYXJyYXksIG5vIG5lZWQgdG8gd29ycnkgYWJvdXQgcmVkZWZpbmluZyBpbiBhZG1pblJvbGVzIG9yIGR1cGxpY2F0ZXNcbiAgICAgKlxuICAgICAqIFRoaXMgc2hvdWxkIG1hdGNoIHRoZSByb2xlcyBpbiB0aGUgYmV0dGVyLWF1dGggYWRtaW4gcGx1Z2luIGlmIHlvdSBhcmUgdXNpbmcgaXRcbiAgICAgKiBAc2VlIGh0dHBzOi8vd3d3LmJldHRlci1hdXRoLmNvbS9kb2NzL3BsdWdpbnMvYWRtaW4jYWNjZXNzLWNvbnRyb2xcbiAgICAgKlxuICAgICAqIEBkZWZhdWx0IFtcInVzZXJcIl1cbiAgICAgKi9cbiAgICByb2xlcz86IHN0cmluZ1tdXG4gICAgLyoqXG4gICAgICogRGVmaW5lIGFkbWluIHJvbGVzIGZvciB0aGUgdXNlcnMgY29sbGVjdGlvblxuICAgICAqXG4gICAgICogVGhlc2Ugcm9sZXMgd2lsbCBiZSBnaXZlbiBhZG1pbiBhY2Nlc3MgdG8gYWxsIGF1dGggY29sbGVjdGlvbnMgY3JlYXRlZCBieSB0aGlzIHBsdWdpblxuICAgICAqXG4gICAgICogTm90ZTogV2lsbCBiZSBtZXJnZWQgd2l0aCB0aGUgcm9sZXMgYXJyYXksIG5vIG5lZWQgdG8gd29ycnkgYWJvdXQgcmVkZWZpbmluZyBpbiByb2xlcyBvciBkdXBsaWNhdGVzXG4gICAgICpcbiAgICAgKiBXaWxsIGJlIGFsc28gdXNlZCBhcyB0aGUgYWRtaW5Sb2xlcyBvcHRpb24gaW4gdGhlIGJldHRlci1hdXRoIGFkbWluIHBsdWdpbiBpZiBwcmVzZW50XG4gICAgICpcbiAgICAgKiBAc2VlIGh0dHBzOi8vd3d3LmJldHRlci1hdXRoLmNvbS9kb2NzL3BsdWdpbnMvYWRtaW4jYWRtaW4tcm9sZXNcbiAgICAgKlxuICAgICAqIEBkZWZhdWx0IFtcImFkbWluXCJdXG4gICAgICovXG4gICAgYWRtaW5Sb2xlcz86IHN0cmluZ1tdXG4gICAgLyoqXG4gICAgICogSGlkZSB0aGUgYHVzZXJzYCBjb2xsZWN0aW9uIGZyb20gdGhlIHBheWxvYWQgYWRtaW4gVUlcbiAgICAgKlxuICAgICAqIFRoaXMgd2lsbCBiZSBvdmVyd3JpdHRlbiBpZiB5b3UgY2hhbmdlIHRoZSB2YWx1ZSBpbiB0aGUgY29sbGVjdGlvbiBvdmVycmlkZXMgb3B0aW9uXG4gICAgICovXG4gICAgaGlkZGVuPzogYm9vbGVhbiB8IHVuZGVmaW5lZFxuICAgIC8qKlxuICAgICAqIERlZmluZSB3aGljaCBmaWVsZHMgdXNlcnMgY2FuIHVwZGF0ZSB0aGVtc2VsdmVzXG4gICAgICpcbiAgICAgKiBQYXNzd29yZCBmaWVsZCBpcyBhdXRvbWF0aWNhbGx5IGluY2x1ZGVkIGFuZCBkb2Vzbid0IG5lZWQgdG8gYmUgc3BlY2lmaWVkIGhlcmVcbiAgICAgKlxuICAgICAqIEBleGFtcGxlIFsnbmFtZScsICdkYXRlT2ZCaXJ0aCcsICdwaG9uZU51bWJlciddXG4gICAgICogQGRlZmF1bHQgWyduYW1lJ11cbiAgICAgKi9cbiAgICBhbGxvd2VkRmllbGRzPzogc3RyaW5nW10gfCB1bmRlZmluZWRcbiAgICAvKipcbiAgICAgKiBGdW5jdGlvbiB0byBvdmVycmlkZSB0aGUgY29sbGVjdGlvbiBjb25maWd1cmF0aW9uXG4gICAgICpcbiAgICAgKiBUaGlzIGFsbG93cyBtb2RpZnlpbmcgdGhlIGNvbGxlY3Rpb24gY29uZmlnIGFmdGVyIGl0IGhhcyBiZWVuIGJ1aWx0XG4gICAgICogRXhhbXBsZSB1c2UgY2FzZXMgaW5jbHVkZSBhZGRpbmcgc2F2ZVRvSnd0IHRvIHNwZWNpZmljIGZpZWxkcyBvclxuICAgICAqIG1vZGlmeWluZyBmaWVsZCBkZXNjcmlwdGlvbnNcbiAgICAgKlxuICAgICAqIEBwYXJhbSBvcHRpb25zIE9iamVjdCBjb250YWluaW5nIHRoZSBjb2xsZWN0aW9uIGNvbmZpZyBhbmQgcG90ZW50aWFsbHkgYWRkaXRpb25hbCBwYXJhbWV0ZXJzXG4gICAgICogQHJldHVybnMgTW9kaWZpZWQgY29sbGVjdGlvbiBjb25maWdcbiAgICAgKi9cbiAgICBjb2xsZWN0aW9uT3ZlcnJpZGVzPzogKG9wdGlvbnM6IHsgY29sbGVjdGlvbjogQ29sbGVjdGlvbkNvbmZpZyB9KSA9PiBDb2xsZWN0aW9uQ29uZmlnXG4gICAgLyoqXG4gICAgICogVGhpcyB3aWxsIGJsb2NrIHRoZSBmaXJzdCBvbiBzaWduIHVwIHZlcmlmaWNhdGlvbiBlbWFpbCBmcm9tIGJldHRlci1hdXRoLlxuICAgICAqIElmIHlvdSBhcmUgdXNpbmcgUGF5bG9hZCdzIHVzZXJDb2xsZWN0aW9uLnZlcmlmeSBvcHRpb24sIHlvdSB3aWxsIHdhbnQgdG8gc2V0IHRoaXMgdG8gdHJ1ZS5cbiAgICAgKiBGdW5jdGlvbiB0aGF0IHdpbGwgYmUgYmxvY2tlZDogb3B0aW9ucy5lbWFpbFZlcmlmaWNhdGlvbnNlbmRWZXJpZmljYXRpb25FbWFpbFxuICAgICAqIEBkZWZhdWx0IGZhbHNlXG4gICAgICovXG4gICAgYmxvY2tGaXJzdEJldHRlckF1dGhWZXJpZmljYXRpb25FbWFpbD86IGJvb2xlYW5cbiAgfVxuICAvKipcbiAgICogQ29uZmlndXJlIHRoZSBBY2NvdW50cyBjb2xsZWN0aW9uczpcbiAgICovXG4gIGFjY291bnRzPzoge1xuICAgIC8qKlxuICAgICAqIFdpbGwgc2V0IHRoZSBgbW9kZWxOYW1lYCBmb3IgdGhlIGBhY2NvdW50YCB0YWJsZSBpbiBiZXR0ZXItYXV0aFxuICAgICAqXG4gICAgICogYW5kIHRoZSBgc2x1Z2AgZm9yIHRoZSBgYWNjb3VudHNgIGNvbGxlY3Rpb24gaW4gcGF5bG9hZFxuICAgICAqXG4gICAgICogQGRlZmF1bHQgJ2FjY291bnRzJ1xuICAgICAqL1xuICAgIHNsdWc/OiBzdHJpbmcgfCB1bmRlZmluZWRcbiAgICAvKipcbiAgICAgKiBIaWRlIHRoZSBgYWNjb3VudHNgIGNvbGxlY3Rpb24gZnJvbSB0aGUgcGF5bG9hZCBhZG1pbiBVSVxuICAgICAqL1xuICAgIGhpZGRlbj86IGJvb2xlYW4gfCB1bmRlZmluZWRcbiAgICAvKipcbiAgICAgKiBGdW5jdGlvbiB0byBvdmVycmlkZSB0aGUgY29sbGVjdGlvbiBjb25maWd1cmF0aW9uXG4gICAgICpcbiAgICAgKiBUaGlzIGFsbG93cyBtb2RpZnlpbmcgdGhlIGNvbGxlY3Rpb24gY29uZmlnIGFmdGVyIGl0IGhhcyBiZWVuIGJ1aWx0XG4gICAgICpcbiAgICAgKiBAcGFyYW0gb3B0aW9ucyBPYmplY3QgY29udGFpbmluZyB0aGUgY29sbGVjdGlvbiBjb25maWcgYW5kIHBvdGVudGlhbGx5IGFkZGl0aW9uYWwgcGFyYW1ldGVyc1xuICAgICAqIEByZXR1cm5zIE1vZGlmaWVkIGNvbGxlY3Rpb24gY29uZmlnXG4gICAgICovXG4gICAgY29sbGVjdGlvbk92ZXJyaWRlcz86IChvcHRpb25zOiB7IGNvbGxlY3Rpb246IENvbGxlY3Rpb25Db25maWcgfSkgPT4gQ29sbGVjdGlvbkNvbmZpZ1xuICB9XG4gIC8qKlxuICAgKiBDb25maWd1cmUgdGhlIFNlc3Npb25zIGNvbGxlY3Rpb25zOlxuICAgKi9cbiAgc2Vzc2lvbnM/OiB7XG4gICAgLyoqXG4gICAgICogV2lsbCBzZXQgdGhlIGBtb2RlbE5hbWVgIGZvciB0aGUgYHNlc3Npb25gIHRhYmxlIGluIGJldHRlci1hdXRoXG4gICAgICpcbiAgICAgKiBhbmQgdGhlIGBzbHVnYCBmb3IgdGhlIGBzZXNzaW9uc2AgY29sbGVjdGlvbiBpbiBwYXlsb2FkXG4gICAgICpcbiAgICAgKiBAZGVmYXVsdCAnc2Vzc2lvbnMnXG4gICAgICovXG4gICAgc2x1Zz86IHN0cmluZyB8IHVuZGVmaW5lZFxuICAgIC8qKlxuICAgICAqIEhpZGUgdGhlIGBzZXNzaW9uc2AgY29sbGVjdGlvbiBmcm9tIHRoZSBwYXlsb2FkIGFkbWluIFVJXG4gICAgICovXG4gICAgaGlkZGVuPzogYm9vbGVhbiB8IHVuZGVmaW5lZFxuICAgIC8qKlxuICAgICAqIEZ1bmN0aW9uIHRvIG92ZXJyaWRlIHRoZSBjb2xsZWN0aW9uIGNvbmZpZ3VyYXRpb25cbiAgICAgKlxuICAgICAqIFRoaXMgYWxsb3dzIG1vZGlmeWluZyB0aGUgY29sbGVjdGlvbiBjb25maWcgYWZ0ZXIgaXQgaGFzIGJlZW4gYnVpbHRcbiAgICAgKlxuICAgICAqIEBwYXJhbSBvcHRpb25zIE9iamVjdCBjb250YWluaW5nIHRoZSBjb2xsZWN0aW9uIGNvbmZpZyBhbmQgcG90ZW50aWFsbHkgYWRkaXRpb25hbCBwYXJhbWV0ZXJzXG4gICAgICogQHJldHVybnMgTW9kaWZpZWQgY29sbGVjdGlvbiBjb25maWdcbiAgICAgKi9cbiAgICBjb2xsZWN0aW9uT3ZlcnJpZGVzPzogKG9wdGlvbnM6IHsgY29sbGVjdGlvbjogQ29sbGVjdGlvbkNvbmZpZyB9KSA9PiBDb2xsZWN0aW9uQ29uZmlnXG4gIH1cbiAgLyoqXG4gICAqIENvbmZpZ3VyZSB0aGUgVmVyaWZpY2F0aW9ucyBjb2xsZWN0aW9uczpcbiAgICovXG4gIHZlcmlmaWNhdGlvbnM/OiB7XG4gICAgLyoqXG4gICAgICogV2lsbCBzZXQgdGhlIGBtb2RlbE5hbWVgIGZvciB0aGUgYHZlcmlmaWNhdGlvbmAgdGFibGUgaW4gYmV0dGVyLWF1dGhcbiAgICAgKlxuICAgICAqIGFuZCB0aGUgYHNsdWdgIGZvciB0aGUgYHZlcmlmaWNhdGlvbnNgIGNvbGxlY3Rpb24gaW4gcGF5bG9hZFxuICAgICAqXG4gICAgICogQGRlZmF1bHQgJ3ZlcmlmaWNhdGlvbnMnXG4gICAgICovXG4gICAgc2x1Zz86IHN0cmluZyB8IHVuZGVmaW5lZFxuICAgIC8qKlxuICAgICAqIEhpZGUgdGhlIGB2ZXJpZmljYXRpb25zYCBjb2xsZWN0aW9uIGZyb20gdGhlIHBheWxvYWQgYWRtaW4gVUlcbiAgICAgKi9cbiAgICBoaWRkZW4/OiBib29sZWFuIHwgdW5kZWZpbmVkXG4gICAgLyoqXG4gICAgICogRnVuY3Rpb24gdG8gb3ZlcnJpZGUgdGhlIGNvbGxlY3Rpb24gY29uZmlndXJhdGlvblxuICAgICAqXG4gICAgICogVGhpcyBhbGxvd3MgbW9kaWZ5aW5nIHRoZSBjb2xsZWN0aW9uIGNvbmZpZyBhZnRlciBpdCBoYXMgYmVlbiBidWlsdFxuICAgICAqXG4gICAgICogQHBhcmFtIG9wdGlvbnMgT2JqZWN0IGNvbnRhaW5pbmcgdGhlIGNvbGxlY3Rpb24gY29uZmlnIGFuZCBwb3RlbnRpYWxseSBhZGRpdGlvbmFsIHBhcmFtZXRlcnNcbiAgICAgKiBAcmV0dXJucyBNb2RpZmllZCBjb2xsZWN0aW9uIGNvbmZpZ1xuICAgICAqL1xuICAgIGNvbGxlY3Rpb25PdmVycmlkZXM/OiAob3B0aW9uczogeyBjb2xsZWN0aW9uOiBDb2xsZWN0aW9uQ29uZmlnIH0pID0+IENvbGxlY3Rpb25Db25maWdcbiAgfVxuICAvKipcbiAgICogQ29uZmlndXJlIHRoZSBBZG1pbiBJbnZpdGF0aW9ucyBjb2xsZWN0aW9uczpcbiAgICovXG4gIGFkbWluSW52aXRhdGlvbnM/OiB7XG4gICAgLyoqXG4gICAgICogV2lsbCBzZXQgdGhlIGBzbHVnYCBmb3IgdGhlIGBhZG1pbi1pbnZpdGF0aW9uc2AgY29sbGVjdGlvbiBpbiBwYXlsb2FkXG4gICAgICpcbiAgICAgKiBAZGVmYXVsdCAnYWRtaW4taW52aXRhdGlvbnMnXG4gICAgICovXG4gICAgc2x1Zz86IHN0cmluZyB8IHVuZGVmaW5lZFxuICAgIC8qKlxuICAgICAqIEhpZGUgdGhlIGBhZG1pbi1pbnZpdGF0aW9uc2AgY29sbGVjdGlvbiBmcm9tIHRoZSBwYXlsb2FkIGFkbWluIFVJXG4gICAgICovXG4gICAgaGlkZGVuPzogYm9vbGVhbiB8IHVuZGVmaW5lZFxuICAgIC8qKlxuICAgICAqIFRoaXMgd2lsbCBiZSB1c2VkIHRvIGdlbmVyYXRlIHRoZSBhZG1pbiBpbnZpdGUgdXJsXG4gICAgICpcbiAgICAgKiBAcGFyYW0gb3B0aW9ucyBPYmplY3QgY29udGFpbmluZyBwYXlsb2FkIGFuZCB0aGUgdG9rZW5cbiAgICAgKiBAcmV0dXJucyBUaGUgYWRtaW4gaW52aXRlIHVybFxuICAgICAqL1xuICAgIGdlbmVyYXRlSW52aXRlVXJsPzogR2VuZXJhdGVBZG1pbkludml0ZVVybEZuXG4gICAgLyoqXG4gICAgICogVGhpcyB3aWxsIGJlIHVzZWQgdG8gc2VuZCB0aGUgYWRtaW4gaW52aXRlIGVtYWlsXG4gICAgICpcbiAgICAgKiBAcGFyYW0gb3B0aW9ucyBPYmplY3QgY29udGFpbmluZyBwYXlsb2FkLCBlbWFpbCBhbmQgdGhlIHVybFxuICAgICAqIEByZXR1cm5zIFRoZSBhZG1pbiBpbnZpdGUgdXJsXG4gICAgICovXG4gICAgc2VuZEludml0ZUVtYWlsPzogU2VuZEFkbWluSW52aXRlRW1haWxGblxuICAgIC8qKlxuICAgICAqIEZ1bmN0aW9uIHRvIG92ZXJyaWRlIHRoZSBjb2xsZWN0aW9uIGNvbmZpZ3VyYXRpb25cbiAgICAgKlxuICAgICAqIFRoaXMgYWxsb3dzIG1vZGlmeWluZyB0aGUgY29sbGVjdGlvbiBjb25maWcgYWZ0ZXIgaXQgaGFzIGJlZW4gYnVpbHRcbiAgICAgKlxuICAgICAqIEBwYXJhbSBvcHRpb25zIE9iamVjdCBjb250YWluaW5nIHRoZSBjb2xsZWN0aW9uIGNvbmZpZyBhbmQgcG90ZW50aWFsbHkgYWRkaXRpb25hbCBwYXJhbWV0ZXJzXG4gICAgICogQHJldHVybnMgTW9kaWZpZWQgY29sbGVjdGlvbiBjb25maWdcbiAgICAgKi9cbiAgICBjb2xsZWN0aW9uT3ZlcnJpZGVzPzogKG9wdGlvbnM6IHsgY29sbGVjdGlvbjogQ29sbGVjdGlvbkNvbmZpZyB9KSA9PiBDb2xsZWN0aW9uQ29uZmlnXG4gIH1cbn1cblxuZXhwb3J0IHR5cGUgU2VuZEFkbWluSW52aXRlRW1haWxGbiA9IChvcHRpb25zOiB7XG4gIHBheWxvYWQ6IFBheWxvYWRcbiAgZW1haWw6IHN0cmluZ1xuICB1cmw6IHN0cmluZ1xufSkgPT4gUHJvbWlzZTx7IHN1Y2Nlc3M6IHRydWU7IG1lc3NhZ2U/OiBzdHJpbmcgfSB8IHsgc3VjY2VzczogZmFsc2U7IG1lc3NhZ2U6IHN0cmluZyB9PlxuXG5leHBvcnQgdHlwZSBHZW5lcmF0ZUFkbWluSW52aXRlVXJsRm4gPSAob3B0aW9uczogeyBwYXlsb2FkOiBQYXlsb2FkOyB0b2tlbjogc3RyaW5nIH0pID0+IHN0cmluZ1xuXG5leHBvcnQgdHlwZSBDb25maWdBZG1pbkN1c3RvbSA9IHtcbiAgYmV0dGVyQXV0aDoge1xuICAgIGFkbWluUm91dGVzOiB7XG4gICAgICBba2V5IGluIGtleW9mIHR5cGVvZiBhZG1pblJvdXRlc106IHN0cmluZ1xuICAgIH1cbiAgfVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEJldHRlckF1dGhQbHVnaW4ge1xuICAoY29uZmlnOiBDb25maWcpOiBDb25maWdcbiAgcGx1Z2luT3B0aW9uczogQmV0dGVyQXV0aFBsdWdpbk9wdGlvbnNcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQYXlsb2FkUmVxdWVzdFdpdGhCZXR0ZXJBdXRoPE8gZXh0ZW5kcyBCZXR0ZXJBdXRoUGx1Z2luT3B0aW9ucz4gZXh0ZW5kcyBQYXlsb2FkUmVxdWVzdCB7XG4gIHBheWxvYWQ6IEJhc2VQYXlsb2FkICYge1xuICAgIGJldHRlckF1dGg6IEJldHRlckF1dGhSZXR1cm48Tz5cbiAgfVxufVxuXG5leHBvcnQgdHlwZSBDb2xsZWN0aW9uSG9va1dpdGhCZXR0ZXJBdXRoPE8gZXh0ZW5kcyBCZXR0ZXJBdXRoUGx1Z2luT3B0aW9ucywgVCBleHRlbmRzIChhcmdzOiBhbnkpID0+IGFueT4gPSBUIGV4dGVuZHMgKFxuICBhcmdzOiBpbmZlciBBXG4pID0+IGluZmVyIFJcbiAgPyAoYXJnczogT21pdDxBLCAncmVxJz4gJiB7IHJlcTogUGF5bG9hZFJlcXVlc3RXaXRoQmV0dGVyQXV0aDxPPiB9KSA9PiBSXG4gIDogbmV2ZXJcblxuZXhwb3J0IHR5cGUgRW5kcG9pbnRXaXRoQmV0dGVyQXV0aDxPIGV4dGVuZHMgQmV0dGVyQXV0aFBsdWdpbk9wdGlvbnM+ID0gT21pdDxFbmRwb2ludCwgJ2hhbmRsZXInPiAmIHtcbiAgaGFuZGxlcjogKHJlcTogUGF5bG9hZFJlcXVlc3RXaXRoQmV0dGVyQXV0aDxPPikgPT4gUHJvbWlzZTxSZXNwb25zZT4gfCBSZXNwb25zZVxufVxuXG50eXBlIFVuaW9uVG9JbnRlcnNlY3Rpb248VT4gPSAoVSBleHRlbmRzIGFueSA/IChrOiBVKSA9PiB2b2lkIDogbmV2ZXIpIGV4dGVuZHMgKGs6IGluZmVyIEkpID0+IHZvaWQgPyBJIDogbmV2ZXJcbnR5cGUgSW5mZXJQbHVnaW5FcnJvckNvZGVzPE8gZXh0ZW5kcyBCZXR0ZXJBdXRoT3B0aW9ucz4gPVxuICBPWydwbHVnaW5zJ10gZXh0ZW5kcyBBcnJheTxpbmZlciBQPlxuICAgID8gVW5pb25Ub0ludGVyc2VjdGlvbjxcbiAgICAgICAgUCBleHRlbmRzIEJldHRlckF1dGhQbHVnaW5UeXBlID8gKFBbJyRFUlJPUl9DT0RFUyddIGV4dGVuZHMgUmVjb3JkPHN0cmluZywgYW55PiA/IFBbJyRFUlJPUl9DT0RFUyddIDogbmV2ZXIpIDogbmV2ZXJcbiAgICAgID4gZXh0ZW5kcyBpbmZlciBSXG4gICAgICA/IFtSXSBleHRlbmRzIFtuZXZlcl1cbiAgICAgICAgPyB7fVxuICAgICAgICA6IFJcbiAgICAgIDoge31cbiAgICA6IHt9XG5cbmV4cG9ydCB0eXBlIFJvbGVBcnJheTxPIGV4dGVuZHMgcmVhZG9ubHkgc3RyaW5nW10gPSByZWFkb25seSBbdHlwZW9mIGRlZmF1bHRzLnVzZXJSb2xlXT4gPSBPW251bWJlcl1bXSB8IG51bGxcbnR5cGUgT3ZlcnJpZGVSb2xlPFQsIE8gZXh0ZW5kcyByZWFkb25seSBzdHJpbmdbXT4gPSBUIGV4dGVuZHMgb2JqZWN0ID8gT21pdDxULCAncm9sZSc+ICYgeyByb2xlOiBSb2xlQXJyYXk8Tz4gfSA6IFRcbnR5cGUgRXh0cmFjdEJBPE8gZXh0ZW5kcyBCZXR0ZXJBdXRoUGx1Z2luT3B0aW9ucz4gPSBOb25OdWxsYWJsZTxPWydiZXR0ZXJBdXRoT3B0aW9ucyddPlxudHlwZSBFeHRyYWN0Um9sZXM8Tz4gPSBPIGV4dGVuZHMgeyB1c2Vycz86IHsgcm9sZXM/OiBpbmZlciBSIH0gfVxuICA/IFIgZXh0ZW5kcyByZWFkb25seSBzdHJpbmdbXVxuICAgID8gUlxuICAgIDogcmVhZG9ubHkgW11cbiAgOiByZWFkb25seSBbdHlwZW9mIGRlZmF1bHRzLnVzZXJSb2xlXVxudHlwZSBCYXNlRXJyb3JDb2RlcyA9IHR5cGVvZiBCQVNFX0VSUk9SX0NPREVTXG5cbmV4cG9ydCB0eXBlIEJldHRlckF1dGhSZXR1cm48TyBleHRlbmRzIEJldHRlckF1dGhQbHVnaW5PcHRpb25zID0gQmV0dGVyQXV0aFBsdWdpbk9wdGlvbnM+ID0ge1xuICBoYW5kbGVyOiAocmVxdWVzdDogUmVxdWVzdCkgPT4gUHJvbWlzZTxSZXNwb25zZT5cbiAgYXBpOiBJbmZlckFQSTxSZXR1cm5UeXBlPHR5cGVvZiByb3V0ZXI8RXh0cmFjdEJBPE8+Pj4+WydlbmRwb2ludHMnXVxuICBvcHRpb25zOiBFeHRyYWN0QkE8Tz5cbiAgJEVSUk9SX0NPREVTOiBJbmZlclBsdWdpbkVycm9yQ29kZXM8RXh0cmFjdEJBPE8+PiAmIEJhc2VFcnJvckNvZGVzXG4gICRjb250ZXh0OiBQcm9taXNlPEF1dGhDb250ZXh0PlxuICAkSW5mZXI6IEluZmVyUGx1Z2luVHlwZXM8RXh0cmFjdEJBPE8+PiBleHRlbmRzIHtcbiAgICBTZXNzaW9uOiBhbnlcbiAgfVxuICAgID8gSW5mZXJQbHVnaW5UeXBlczxFeHRyYWN0QkE8Tz4+XG4gICAgOiB7XG4gICAgICAgIFNlc3Npb246IHtcbiAgICAgICAgICBzZXNzaW9uOiBQcmV0dGlmeURlZXA8SW5mZXJTZXNzaW9uPEV4dHJhY3RCQTxPPj4+XG4gICAgICAgICAgdXNlcjogT3ZlcnJpZGVSb2xlPFByZXR0aWZ5RGVlcDxJbmZlclVzZXI8RXh0cmFjdEJBPE8+Pj4sIEV4dHJhY3RSb2xlczxPPj5cbiAgICAgICAgfVxuICAgICAgfSAmIEluZmVyUGx1Z2luVHlwZXM8RXh0cmFjdEJBPE8+PlxufVxuXG5leHBvcnQgdHlwZSBCZXR0ZXJBdXRoRnVuY3Rpb25PcHRpb25zPE8gZXh0ZW5kcyBCZXR0ZXJBdXRoUGx1Z2luT3B0aW9ucz4gPSBPbWl0PEV4dHJhY3RCQTxPPiwgJ2RhdGFiYXNlJyB8ICdwbHVnaW5zJz4gJiB7XG4gIGVuYWJsZURlYnVnTG9ncz86IGJvb2xlYW5cbiAgcGx1Z2luczogRXh0cmFjdEJBPE8+WydwbHVnaW5zJ11cbn1cblxuZXhwb3J0IGludGVyZmFjZSBCdWlsdEJldHRlckF1dGhTY2hlbWEge1xuICBtb2RlbE5hbWU6IHN0cmluZ1xuICBmaWVsZHM6IFJlY29yZDxzdHJpbmcsIERCRmllbGRBdHRyaWJ1dGU+XG4gIG9yZGVyOiBudW1iZXJcbn1cblxuZXhwb3J0IHR5cGUgQmV0dGVyQXV0aFNjaGVtYXMgPSBSZWNvcmQ8TW9kZWxLZXksIEJ1aWx0QmV0dGVyQXV0aFNjaGVtYT5cblxuZXhwb3J0IGludGVyZmFjZSBCdWlsZENvbGxlY3Rpb25Qcm9wcyB7XG4gIHJlc29sdmVkU2NoZW1hczogQmV0dGVyQXV0aFNjaGVtYXNcbiAgcGx1Z2luT3B0aW9uczogQmV0dGVyQXV0aFBsdWdpbk9wdGlvbnNcbiAgaW5jb21pbmdDb2xsZWN0aW9uczogQ29sbGVjdGlvbkNvbmZpZ1tdXG59XG5cbmV4cG9ydCB0eXBlIEZpZWxkT3ZlcnJpZGVzPEsgZXh0ZW5kcyBzdHJpbmcgPSBzdHJpbmc+ID0ge1xuICBbS2V5IGluIEtdPzogKGZpZWxkOiBEQkZpZWxkQXR0cmlidXRlKSA9PiBQYXJ0aWFsPEZpZWxkPlxufSAmIHtcbiAgW2tleTogc3RyaW5nXTogKGZpZWxkOiBEQkZpZWxkQXR0cmlidXRlKSA9PiBQYXJ0aWFsPEZpZWxkPlxufVxuXG5leHBvcnQgdHlwZSBGaWVsZFdpdGhJZHMgPSB7IG5hbWU/OiBzdHJpbmc7IGN1c3RvbT86IHsgYmV0dGVyQXV0aEZpZWxkS2V5Pzogc3RyaW5nIH0gfVxuXG5leHBvcnQgdHlwZSBGaWVsZFJ1bGUgPSB7XG4gIGNvbmRpdGlvbj86IChmaWVsZDogREJGaWVsZEF0dHJpYnV0ZSkgPT4gYm9vbGVhblxuICB0cmFuc2Zvcm06IChmaWVsZDogREJGaWVsZEF0dHJpYnV0ZSkgPT4gUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFxY0EsV0FHQyJ9
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9iZXR0ZXItYXV0aC9wbHVnaW4vdHlwZXMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBBdXRoQ29udGV4dCB9IGZyb20gJ2JldHRlci1hdXRoJ1xuaW1wb3J0IHR5cGUgeyBEQkZpZWxkQXR0cmlidXRlIH0gZnJvbSAnYmV0dGVyLWF1dGgvZGInXG5pbXBvcnQgdHlwZSB7XG4gIEJldHRlckF1dGhPcHRpb25zIGFzIEJldHRlckF1dGhPcHRpb25zVHlwZSxcbiAgQmV0dGVyQXV0aFBsdWdpbiBhcyBCZXR0ZXJBdXRoUGx1Z2luVHlwZSxcbiAgSW5mZXJBUEksXG4gIEluZmVyUGx1Z2luVHlwZXNcbn0gZnJvbSAnYmV0dGVyLWF1dGgvdHlwZXMnXG5pbXBvcnQgdHlwZSB7IEJhc2VQYXlsb2FkLCBDb2xsZWN0aW9uQ29uZmlnLCBDb25maWcsIEVuZHBvaW50LCBGaWVsZCwgUGF5bG9hZCwgUGF5bG9hZFJlcXVlc3QgfSBmcm9tICdwYXlsb2FkJ1xuaW1wb3J0IHsgTW9kZWxLZXkgfSBmcm9tICcuLi9nZW5lcmF0ZWQtdHlwZXMnXG5pbXBvcnQgeyBhZG1pblJvdXRlcywgYmFQbHVnaW5TbHVncywgbG9naW5NZXRob2RzLCBzb2NpYWxQcm92aWRlcnMgfSBmcm9tICcuL2NvbnN0YW50cydcbmltcG9ydCB0eXBlIHsgSW5mZXJTZXNzaW9uLCBJbmZlclVzZXIgfSBmcm9tICdiZXR0ZXItYXV0aC90eXBlcydcbmltcG9ydCB7IEJBU0VfRVJST1JfQ09ERVMgfSBmcm9tICdAYmV0dGVyLWF1dGgvY29yZS9lcnJvcidcbmltcG9ydCB7IHJvdXRlciB9IGZyb20gJ2JldHRlci1hdXRoL2FwaSdcbmltcG9ydCB7IGRlZmF1bHRzIH0gZnJvbSAnLi9jb25zdGFudHMnXG4vKipcbiAqIEJldHRlckF1dGggb3B0aW9ucyB3aXRoIHRoZSBmb2xsb3dpbmcgY2F2ZWF0czpcbiAqIC0gVGhlIGBkYXRhYmFzZWAgb3B0aW9uIGlzIHJlbW92ZWQgYXMgaXQgaXMgY29uZmlndXJlZCBpbnRlcm5hbGx5XG4gKiAtIFRoZSBgdXNlcmAgYG1vZGVsTmFtZWAgYW5kIGBmaWVsZHNgIGlzIHJlbW92ZWQgYXMgaXQgaXMgY29uZmlndXJlZCBpbnRlcm5hbGx5XG4gKiAtIFRoZSBgYWNjb3VudGAgYG1vZGVsTmFtZWAgYW5kIGBmaWVsZHNgIGlzIHJlbW92ZWQgYXMgaXQgaXMgY29uZmlndXJlZCBpbnRlcm5hbGx5XG4gKiAtIFRoZSBgc2Vzc2lvbmAgYG1vZGVsTmFtZWAgYW5kIGBmaWVsZHNgIGlzIHJlbW92ZWQgYXMgaXQgaXMgY29uZmlndXJlZCBpbnRlcm5hbGx5XG4gKiAtIFRoZSBgdmVyaWZpY2F0aW9uYCBgbW9kZWxOYW1lYCBhbmQgYGZpZWxkc2AgaXMgcmVtb3ZlZCBhcyBpdCBpcyBjb25maWd1cmVkIGludGVybmFsbHlcbiAqXG4gKiBAc2VlIGh0dHBzOi8vd3d3LmJldHRlci1hdXRoLmNvbS9kb2NzL3JlZmVyZW5jZS9vcHRpb25zXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQmV0dGVyQXV0aE9wdGlvbnNcbiAgZXh0ZW5kcyBPbWl0PEJldHRlckF1dGhPcHRpb25zVHlwZSwgJ2RhdGFiYXNlJyB8ICd1c2VyJyB8ICdhY2NvdW50JyB8ICd2ZXJpZmljYXRpb24nIHwgJ3Nlc3Npb24nIHwgJ2FkdmFuY2VkJz4ge1xuICB1c2VyPzogT21pdDxOb25OdWxsYWJsZTxCZXR0ZXJBdXRoT3B0aW9uc1R5cGVbJ3VzZXInXT4sICdtb2RlbE5hbWUnIHwgJ2ZpZWxkcyc+IHwgdW5kZWZpbmVkXG4gIGFjY291bnQ/OiBPbWl0PE5vbk51bGxhYmxlPEJldHRlckF1dGhPcHRpb25zVHlwZVsnYWNjb3VudCddPiwgJ21vZGVsTmFtZScgfCAnZmllbGRzJz4gfCB1bmRlZmluZWRcbiAgc2Vzc2lvbj86IE9taXQ8Tm9uTnVsbGFibGU8QmV0dGVyQXV0aE9wdGlvbnNUeXBlWydzZXNzaW9uJ10+LCAnbW9kZWxOYW1lJyB8ICdmaWVsZHMnPiB8IHVuZGVmaW5lZFxuICB2ZXJpZmljYXRpb24/OiBPbWl0PE5vbk51bGxhYmxlPEJldHRlckF1dGhPcHRpb25zVHlwZVsndmVyaWZpY2F0aW9uJ10+LCAnbW9kZWxOYW1lJyB8ICdmaWVsZHMnPiB8IHVuZGVmaW5lZFxuICBhZHZhbmNlZD86IE9taXQ8Tm9uTnVsbGFibGU8QmV0dGVyQXV0aE9wdGlvbnNUeXBlWydhZHZhbmNlZCddPiwgJ2dlbmVyYXRlSWQnPiB8IHVuZGVmaW5lZFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNhbml0aXplZEJldHRlckF1dGhPcHRpb25zIGV4dGVuZHMgT21pdDxCZXR0ZXJBdXRoT3B0aW9uc1R5cGUsICdkYXRhYmFzZSc+IHt9XG5cbmV4cG9ydCB0eXBlIFNvY2lhbFByb3ZpZGVyID0gKHR5cGVvZiBzb2NpYWxQcm92aWRlcnMpW251bWJlcl1cblxuZXhwb3J0IHR5cGUgTG9naW5NZXRob2QgPSAodHlwZW9mIGxvZ2luTWV0aG9kcylbbnVtYmVyXVxuXG50eXBlIFBsdWdpbkNvbGxlY3Rpb25PdmVycmlkZXMgPSB7XG4gIFtLIGluIGtleW9mIHR5cGVvZiBiYVBsdWdpblNsdWdzXT86IChvcHRpb25zOiB7IGNvbGxlY3Rpb246IENvbGxlY3Rpb25Db25maWcgfSkgPT4gQ29sbGVjdGlvbkNvbmZpZ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEJldHRlckF1dGhQbHVnaW5PcHRpb25zIHtcbiAgLyoqXG4gICAqIERpc2FibGUgdGhlIHBsdWdpblxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgZGlzYWJsZWQ/OiBib29sZWFuXG4gIC8qKlxuICAgKiBEaXNhYmxlIHRoZSBkZWZhdWx0IHBheWxvYWQgYXV0aFxuICAgKlxuICAgKiBUaGlzIHdpbGwgZW5zdXJlIHRoYXQgYmV0dGVyLWF1dGggaGFuZGxlcyBib3RoIGFkbWluIGFuZCBmcm9udGVuZCBhdXRoXG4gICAqXG4gICAqIEFkbWluIHdpbGwgbWFrZSB1c2Ugb2YgY3VzdG9tIGFkbWluIHJvdXRlcyBmb3IgYXV0aCBhbmQgZ2l2ZSB5b3UgbW9yZSBjb250cm9sXG4gICAqXG4gICAqIE5vdGU6IFRoaXMgd2lsbCBvdmVycmlkZSB0aGUgb3B0aW9uIHBhc3NlZCBpbiB0aGUgdXNlcnMgY29sbGVjdGlvbiBjb25maWdcbiAgICpcbiAgICogUmVhZCBhYm91dCB0aGlzIG1vcmUgaW4gdGhlIGRvY3NcbiAgICogQHNlZSBodHRwczovL3d3dy5wYXlsb2FkYXV0aC5jb20vZG9jcy9iZXR0ZXItYXV0aCNkaXNhYmxlLWRlZmF1bHQtcGF5bG9hZC1hdXRoXG4gICAqXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICBkaXNhYmxlRGVmYXVsdFBheWxvYWRBdXRoPzogYm9vbGVhblxuICAvKipcbiAgICogQ3VzdG9tIGFkbWluIGNvbXBvbmVudHMgd2hlbiBkaXNhYmxlRGVmYXVsdFBheWxvYWRBdXRoIGlzIHRydWVcbiAgICpcbiAgICogVGhlc2UgY29tcG9uZW50cyB3aWxsIGJlIHVzZWQgdG8gcmVuZGVyIHRoZSBsb2dpbiwgY3JlYXRlIGZpcnN0IGFkbWluLCBhbmQgb3RoZXIgYXV0aC1yZWxhdGVkIHZpZXdzXG4gICAqL1xuICBhZG1pbj86IHtcbiAgICAvKipcbiAgICAgKiBPdmVycmlkZSB3aGljaCBzb2NpYWwgYnV0dG9ucyBhcmUgc2hvd24gaW4gdGhlIFBheWxvYWQgTG9naW4gLyBTaWduIFVwIHZpZXcuXG4gICAgICpcbiAgICAgKiBQcm92aWRlIGFuIGFycmF5IG9mIExvZ2luTWV0aG9kIGtleXMuXG4gICAgICovXG4gICAgbG9naW5NZXRob2RzPzogTG9naW5NZXRob2RbXVxuICB9XG4gIC8qKlxuICAgKiBEZWJ1ZyBvcHRpb25zXG4gICAqL1xuICBkZWJ1Zz86IHtcbiAgICAvKipcbiAgICAgKiBFbmFibGUgZGVidWcgbG9nc1xuICAgICAqIEBkZWZhdWx0IGZhbHNlXG4gICAgICovXG4gICAgZW5hYmxlRGVidWdMb2dzPzogYm9vbGVhblxuICAgIC8qKlxuICAgICAqIExvZyB0aGUgdGFibGVzIHRoYXQgYXJlIG5lZWRlZCBmb3IgYmV0dGVyLWF1dGggb24gaW5pdFxuICAgICAqIEBkZWZhdWx0IGZhbHNlXG4gICAgICovXG4gICAgbG9nVGFibGVzPzogYm9vbGVhblxuICB9XG4gIC8qKlxuICAgKiBIaWRlIHRoZSBiZXR0ZXItYXV0aHBsdWdpbiBjb2xsZWN0aW9ucyBmcm9tIHRoZSBwYXlsb2FkIGFkbWluIFVJXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICBoaWRlUGx1Z2luQ29sbGVjdGlvbnM/OiBib29sZWFuXG4gIC8qKlxuICAgKiBEZWZpbmVzIHRoZSBhZG1pbiBncm91cCBmb3IgY29sbGVjdGlvbnMuXG4gICAqIEBkZWZhdWx0IFwiQXV0aFwiXG4gICAqL1xuICBjb2xsZWN0aW9uQWRtaW5Hcm91cD86IHN0cmluZ1xuICAvKipcbiAgICogUmVxdWlyZSBhIHZhbGlkIGFkbWluIGludml0YXRpb24gZm9yIGFueSAqcHVibGljKiBzaWdu4oCRdXAuXG4gICAqXG4gICAqIOKAkyBBcHBsaWVzIHRvIGJvdGggZW1haWwvcGFzc3dvcmQgYW5kIHNvY2lhbOKAkXByb3ZpZGVyIGZsb3dzLlxuICAgKiDigJMgRXhpc3RpbmcgdXNlcnMgY2FuIHN0aWxsIHNpZ24gaW47IGFkbWlucyBjYW4gc3RpbGwgY3JlYXRlIHVzZXJzIHZpYVxuICAgKiAgIHRoZSBQYXlsb2FkIFVJIG9yIHNlcnZlcuKAkXNpZGUgY2FsbHMuXG4gICAqIOKAkyBJZ25vcmVzIHByb3ZpZGVy4oCRbGV2ZWwgYGRpc2FibGVJbXBsaWNpdFNpZ25VcGAgYW5kIGBkaXNhYmxlU2lnblVwYDpcbiAgICogICB3aXRoIGEgdmFsaWQgaW52aXRlIHRoZSBzaWdu4oCRdXAgcHJvY2VlZHMsIHdpdGhvdXQgb25lIGl0J3MgYmxvY2tlZC5cbiAgICog4oCTIEFsc28gc2V0cyBgZGlzYWJsZUltcGxpY2l0U2lnblVwYCBmb3IgYWxsIHByb3ZpZGVycywgcmVxdWlyaW5nIGByZXF1ZXN0U2lnblVwYCB0byBiZSB0cnVlIGZvciBhbGwgYGF1dGhDbGllbnQuc2lnbkluLnNvY2lhbGAgY2FsbHMgd2hlbiBjcmVhdGluZyBhIG5ldyBhY2NvdW50IHdpdGggYSBwcm92aWRlci5cbiAgICpcbiAgICogRW5hYmxlIHdoZW4geW91IHdhbnQgT0F1dGggZm9yIGludGVybmFsL2FkbWluIHVzZSBvbmx5IGFuZCBubyBwdWJsaWNcbiAgICogcmVnaXN0cmF0aW9ucyBhdCBhbGwuXG4gICAqXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZXF1aXJlQWRtaW5JbnZpdGVGb3JTaWduVXA/OiBib29sZWFuXG4gIC8qKlxuICAgKiBCZXR0ZXJBdXRoIG9wdGlvbnMgd2l0aCB0aGUgZm9sbG93aW5nIGNhdmVhdHM6XG4gICAqIC0gVGhlIGBkYXRhYmFzZWAgb3B0aW9uIGlzIHJlbW92ZWQgYXMgaXQgaXMgY29uZmlndXJlZCBpbnRlcm5hbGx5XG4gICAqIC0gVGhlIGB1c2VyYCBgbW9kZWxOYW1lYCBhbmQgYGZpZWxkc2AgaXMgcmVtb3ZlZCBhcyBpdCBpcyBjb25maWd1cmVkIGludGVybmFsbHlcbiAgICogLSBUaGUgYGFjY291bnRgIGBtb2RlbE5hbWVgIGFuZCBgZmllbGRzYCBpcyByZW1vdmVkIGFzIGl0IGlzIGNvbmZpZ3VyZWQgaW50ZXJuYWxseVxuICAgKiAtIFRoZSBgc2Vzc2lvbmAgYG1vZGVsTmFtZWAgYW5kIGBmaWVsZHNgIGlzIHJlbW92ZWQgYXMgaXQgaXMgY29uZmlndXJlZCBpbnRlcm5hbGx5XG4gICAqIC0gVGhlIGB2ZXJpZmljYXRpb25gIGBtb2RlbE5hbWVgIGFuZCBgZmllbGRzYCBpcyByZW1vdmVkIGFzIGl0IGlzIGNvbmZpZ3VyZWQgaW50ZXJuYWxseVxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vd3d3LmJldHRlci1hdXRoLmNvbS9kb2NzL3JlZmVyZW5jZS9vcHRpb25zXG4gICAqL1xuICBiZXR0ZXJBdXRoT3B0aW9ucz86IEJldHRlckF1dGhPcHRpb25zXG4gIC8qKlxuICAgKiBPdmVycmlkZSBwbHVnaW4gY29uZmlndXJhdGlvbnNcbiAgICpcbiAgICogTm90ZTogVHlwZVNjcmlwdCBjYW5ub3QgZW5mb3JjZSB0aGF0IG9ubHkgZW5hYmxlZCBwbHVnaW5zIGFyZSBjb25maWd1cmVkXG4gICAqIGF0IGNvbXBpbGUgdGltZSwgYnV0IHRoaXMgd2lsbCBiZSB2YWxpZGF0ZWQgYXQgcnVudGltZS5cbiAgICovXG4gIHBsdWdpbkNvbGxlY3Rpb25PdmVycmlkZXM/OiBQbHVnaW5Db2xsZWN0aW9uT3ZlcnJpZGVzXG4gIC8qKlxuICAgKiBDb25maWd1cmUgdGhlIFVzZXJzIGNvbGxlY3Rpb25zOlxuICAgKi9cbiAgdXNlcnM/OiB7XG4gICAgLyoqXG4gICAgICogV2lsbCBzZXQgdGhlIGBtb2RlbE5hbWVgIGZvciB0aGUgYHVzZXJgIHRhYmxlIGluIGJldHRlci1hdXRoXG4gICAgICpcbiAgICAgKiBhbmQgdGhlIGBzbHVnYCBmb3IgdGhlIGB1c2Vyc2AgY29sbGVjdGlvbiBpbiBwYXlsb2FkXG4gICAgICpcbiAgICAgKiBAZGVmYXVsdCAndXNlcnMnXG4gICAgICovXG4gICAgc2x1Zz86IHN0cmluZyB8IHVuZGVmaW5lZFxuICAgIC8qKlxuICAgICAqIFRoZSBkZWZhdWx0IHJvbGUgZm9yIHVzZXJzXG4gICAgICpcbiAgICAgKiBUaGlzIHdpbGwgYmUgdXNlZCBhcyB0aGUgZGVmYXVsdCByb2xlIGZvciB0aGUgcm9sZSBmaWVsZCBpbiB0aGUgdXNlcnMgY29sbGVjdGlvblxuICAgICAqXG4gICAgICogSWYgeW91IGRlZmluZSB0aGlzIHlvdSBtdXN0IGFsc28gaGF2ZSB0aGlzIHJvbGUgaW4gdGhlIHJvbGVzIGFycmF5XG4gICAgICpcbiAgICAgKiBUaGlzIHdpbGwgYWxzbyBiZSB1c2VkIGFzIHRoZSBkZWZhdWx0Um9sZSBvcHRpb24gaW4gdGhlIGJldHRlci1hdXRoIGFkbWluIHBsdWdpbiBpZiBwcmVzZW50XG4gICAgICogQHNlZSBodHRwczovL3d3dy5iZXR0ZXItYXV0aC5jb20vZG9jcy9wbHVnaW5zL2FkbWluI2RlZmF1bHQtcm9sZVxuICAgICAqIEBkZWZhdWx0IFwidXNlclwiXG4gICAgICovXG4gICAgZGVmYXVsdFJvbGU/OiBzdHJpbmdcbiAgICAvKipcbiAgICAgKiBUaGUgZGVmYXVsdCByb2xlIGZvciBhZG1pbnNcbiAgICAgKlxuICAgICAqIFRoaXMgd2lsbCBiZSB1c2VkIGFzIHRoZSBkZWZhdWx0IHJvbGUgZm9yIHdoZW4gYWRtaW5zIHNpZ24gdXAgaW4gdGhlIGNyZWF0ZSBmaXJzdCBhZG1pbiB2aWV3IG9yIHdoZW4gaW52aXRpbmcgbmV3IGFkbWluc1xuICAgICAqXG4gICAgICpcbiAgICAgKiBAZGVmYXVsdCBcImFkbWluXCJcbiAgICAgKi9cbiAgICBkZWZhdWx0QWRtaW5Sb2xlPzogc3RyaW5nXG4gICAgLyoqXG4gICAgICogQWxsIHJvbGVzIGZvciB0aGUgdXNlcnMgY29sbGVjdGlvblxuICAgICAqXG4gICAgICogVGhlc2Ugd2lsbCBiZSB1c2VkIHRvIGRlZmluZSBhbGwgdGhlIG9wdGlvbnMgaW4gdGhlIHVzZXIgY29sbGVjdGlvbiByb2xlIGZpZWxkXG4gICAgICpcbiAgICAgKiBXaWxsIGJlIG1lcmdlZCB3aXRoIHRoZSBhZG1pblJvbGVzIGFycmF5LCBubyBuZWVkIHRvIHdvcnJ5IGFib3V0IHJlZGVmaW5pbmcgaW4gYWRtaW5Sb2xlcyBvciBkdXBsaWNhdGVzXG4gICAgICpcbiAgICAgKiBUaGlzIHNob3VsZCBtYXRjaCB0aGUgcm9sZXMgaW4gdGhlIGJldHRlci1hdXRoIGFkbWluIHBsdWdpbiBpZiB5b3UgYXJlIHVzaW5nIGl0XG4gICAgICogQHNlZSBodHRwczovL3d3dy5iZXR0ZXItYXV0aC5jb20vZG9jcy9wbHVnaW5zL2FkbWluI2FjY2Vzcy1jb250cm9sXG4gICAgICpcbiAgICAgKiBAZGVmYXVsdCBbXCJ1c2VyXCJdXG4gICAgICovXG4gICAgcm9sZXM/OiBzdHJpbmdbXVxuICAgIC8qKlxuICAgICAqIERlZmluZSBhZG1pbiByb2xlcyBmb3IgdGhlIHVzZXJzIGNvbGxlY3Rpb25cbiAgICAgKlxuICAgICAqIFRoZXNlIHJvbGVzIHdpbGwgYmUgZ2l2ZW4gYWRtaW4gYWNjZXNzIHRvIGFsbCBhdXRoIGNvbGxlY3Rpb25zIGNyZWF0ZWQgYnkgdGhpcyBwbHVnaW5cbiAgICAgKlxuICAgICAqIE5vdGU6IFdpbGwgYmUgbWVyZ2VkIHdpdGggdGhlIHJvbGVzIGFycmF5LCBubyBuZWVkIHRvIHdvcnJ5IGFib3V0IHJlZGVmaW5pbmcgaW4gcm9sZXMgb3IgZHVwbGljYXRlc1xuICAgICAqXG4gICAgICogV2lsbCBiZSBhbHNvIHVzZWQgYXMgdGhlIGFkbWluUm9sZXMgb3B0aW9uIGluIHRoZSBiZXR0ZXItYXV0aCBhZG1pbiBwbHVnaW4gaWYgcHJlc2VudFxuICAgICAqXG4gICAgICogQHNlZSBodHRwczovL3d3dy5iZXR0ZXItYXV0aC5jb20vZG9jcy9wbHVnaW5zL2FkbWluI2FkbWluLXJvbGVzXG4gICAgICpcbiAgICAgKiBAZGVmYXVsdCBbXCJhZG1pblwiXVxuICAgICAqL1xuICAgIGFkbWluUm9sZXM/OiBzdHJpbmdbXVxuICAgIC8qKlxuICAgICAqIEhpZGUgdGhlIGB1c2Vyc2AgY29sbGVjdGlvbiBmcm9tIHRoZSBwYXlsb2FkIGFkbWluIFVJXG4gICAgICpcbiAgICAgKiBUaGlzIHdpbGwgYmUgb3ZlcndyaXR0ZW4gaWYgeW91IGNoYW5nZSB0aGUgdmFsdWUgaW4gdGhlIGNvbGxlY3Rpb24gb3ZlcnJpZGVzIG9wdGlvblxuICAgICAqL1xuICAgIGhpZGRlbj86IGJvb2xlYW4gfCB1bmRlZmluZWRcbiAgICAvKipcbiAgICAgKiBEZWZpbmUgd2hpY2ggZmllbGRzIHVzZXJzIGNhbiB1cGRhdGUgdGhlbXNlbHZlc1xuICAgICAqXG4gICAgICogUGFzc3dvcmQgZmllbGQgaXMgYXV0b21hdGljYWxseSBpbmNsdWRlZCBhbmQgZG9lc24ndCBuZWVkIHRvIGJlIHNwZWNpZmllZCBoZXJlXG4gICAgICpcbiAgICAgKiBAZXhhbXBsZSBbJ25hbWUnLCAnZGF0ZU9mQmlydGgnLCAncGhvbmVOdW1iZXInXVxuICAgICAqIEBkZWZhdWx0IFsnbmFtZSddXG4gICAgICovXG4gICAgYWxsb3dlZEZpZWxkcz86IHN0cmluZ1tdIHwgdW5kZWZpbmVkXG4gICAgLyoqXG4gICAgICogRnVuY3Rpb24gdG8gb3ZlcnJpZGUgdGhlIGNvbGxlY3Rpb24gY29uZmlndXJhdGlvblxuICAgICAqXG4gICAgICogVGhpcyBhbGxvd3MgbW9kaWZ5aW5nIHRoZSBjb2xsZWN0aW9uIGNvbmZpZyBhZnRlciBpdCBoYXMgYmVlbiBidWlsdFxuICAgICAqIEV4YW1wbGUgdXNlIGNhc2VzIGluY2x1ZGUgYWRkaW5nIHNhdmVUb0p3dCB0byBzcGVjaWZpYyBmaWVsZHMgb3JcbiAgICAgKiBtb2RpZnlpbmcgZmllbGQgZGVzY3JpcHRpb25zXG4gICAgICpcbiAgICAgKiBAcGFyYW0gb3B0aW9ucyBPYmplY3QgY29udGFpbmluZyB0aGUgY29sbGVjdGlvbiBjb25maWcgYW5kIHBvdGVudGlhbGx5IGFkZGl0aW9uYWwgcGFyYW1ldGVyc1xuICAgICAqIEByZXR1cm5zIE1vZGlmaWVkIGNvbGxlY3Rpb24gY29uZmlnXG4gICAgICovXG4gICAgY29sbGVjdGlvbk92ZXJyaWRlcz86IChvcHRpb25zOiB7IGNvbGxlY3Rpb246IENvbGxlY3Rpb25Db25maWcgfSkgPT4gQ29sbGVjdGlvbkNvbmZpZ1xuICAgIC8qKlxuICAgICAqIFRoaXMgd2lsbCBibG9jayB0aGUgZmlyc3Qgb24gc2lnbiB1cCB2ZXJpZmljYXRpb24gZW1haWwgZnJvbSBiZXR0ZXItYXV0aC5cbiAgICAgKiBJZiB5b3UgYXJlIHVzaW5nIFBheWxvYWQncyB1c2VyQ29sbGVjdGlvbi52ZXJpZnkgb3B0aW9uLCB5b3Ugd2lsbCB3YW50IHRvIHNldCB0aGlzIHRvIHRydWUuXG4gICAgICogRnVuY3Rpb24gdGhhdCB3aWxsIGJlIGJsb2NrZWQ6IG9wdGlvbnMuZW1haWxWZXJpZmljYXRpb25zZW5kVmVyaWZpY2F0aW9uRW1haWxcbiAgICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgICAqL1xuICAgIGJsb2NrRmlyc3RCZXR0ZXJBdXRoVmVyaWZpY2F0aW9uRW1haWw/OiBib29sZWFuXG4gIH1cbiAgLyoqXG4gICAqIENvbmZpZ3VyZSB0aGUgQWNjb3VudHMgY29sbGVjdGlvbnM6XG4gICAqL1xuICBhY2NvdW50cz86IHtcbiAgICAvKipcbiAgICAgKiBXaWxsIHNldCB0aGUgYG1vZGVsTmFtZWAgZm9yIHRoZSBgYWNjb3VudGAgdGFibGUgaW4gYmV0dGVyLWF1dGhcbiAgICAgKlxuICAgICAqIGFuZCB0aGUgYHNsdWdgIGZvciB0aGUgYGFjY291bnRzYCBjb2xsZWN0aW9uIGluIHBheWxvYWRcbiAgICAgKlxuICAgICAqIEBkZWZhdWx0ICdhY2NvdW50cydcbiAgICAgKi9cbiAgICBzbHVnPzogc3RyaW5nIHwgdW5kZWZpbmVkXG4gICAgLyoqXG4gICAgICogSGlkZSB0aGUgYGFjY291bnRzYCBjb2xsZWN0aW9uIGZyb20gdGhlIHBheWxvYWQgYWRtaW4gVUlcbiAgICAgKi9cbiAgICBoaWRkZW4/OiBib29sZWFuIHwgdW5kZWZpbmVkXG4gICAgLyoqXG4gICAgICogRnVuY3Rpb24gdG8gb3ZlcnJpZGUgdGhlIGNvbGxlY3Rpb24gY29uZmlndXJhdGlvblxuICAgICAqXG4gICAgICogVGhpcyBhbGxvd3MgbW9kaWZ5aW5nIHRoZSBjb2xsZWN0aW9uIGNvbmZpZyBhZnRlciBpdCBoYXMgYmVlbiBidWlsdFxuICAgICAqXG4gICAgICogQHBhcmFtIG9wdGlvbnMgT2JqZWN0IGNvbnRhaW5pbmcgdGhlIGNvbGxlY3Rpb24gY29uZmlnIGFuZCBwb3RlbnRpYWxseSBhZGRpdGlvbmFsIHBhcmFtZXRlcnNcbiAgICAgKiBAcmV0dXJucyBNb2RpZmllZCBjb2xsZWN0aW9uIGNvbmZpZ1xuICAgICAqL1xuICAgIGNvbGxlY3Rpb25PdmVycmlkZXM/OiAob3B0aW9uczogeyBjb2xsZWN0aW9uOiBDb2xsZWN0aW9uQ29uZmlnIH0pID0+IENvbGxlY3Rpb25Db25maWdcbiAgfVxuICAvKipcbiAgICogQ29uZmlndXJlIHRoZSBTZXNzaW9ucyBjb2xsZWN0aW9uczpcbiAgICovXG4gIHNlc3Npb25zPzoge1xuICAgIC8qKlxuICAgICAqIFdpbGwgc2V0IHRoZSBgbW9kZWxOYW1lYCBmb3IgdGhlIGBzZXNzaW9uYCB0YWJsZSBpbiBiZXR0ZXItYXV0aFxuICAgICAqXG4gICAgICogYW5kIHRoZSBgc2x1Z2AgZm9yIHRoZSBgc2Vzc2lvbnNgIGNvbGxlY3Rpb24gaW4gcGF5bG9hZFxuICAgICAqXG4gICAgICogQGRlZmF1bHQgJ3Nlc3Npb25zJ1xuICAgICAqL1xuICAgIHNsdWc/OiBzdHJpbmcgfCB1bmRlZmluZWRcbiAgICAvKipcbiAgICAgKiBIaWRlIHRoZSBgc2Vzc2lvbnNgIGNvbGxlY3Rpb24gZnJvbSB0aGUgcGF5bG9hZCBhZG1pbiBVSVxuICAgICAqL1xuICAgIGhpZGRlbj86IGJvb2xlYW4gfCB1bmRlZmluZWRcbiAgICAvKipcbiAgICAgKiBGdW5jdGlvbiB0byBvdmVycmlkZSB0aGUgY29sbGVjdGlvbiBjb25maWd1cmF0aW9uXG4gICAgICpcbiAgICAgKiBUaGlzIGFsbG93cyBtb2RpZnlpbmcgdGhlIGNvbGxlY3Rpb24gY29uZmlnIGFmdGVyIGl0IGhhcyBiZWVuIGJ1aWx0XG4gICAgICpcbiAgICAgKiBAcGFyYW0gb3B0aW9ucyBPYmplY3QgY29udGFpbmluZyB0aGUgY29sbGVjdGlvbiBjb25maWcgYW5kIHBvdGVudGlhbGx5IGFkZGl0aW9uYWwgcGFyYW1ldGVyc1xuICAgICAqIEByZXR1cm5zIE1vZGlmaWVkIGNvbGxlY3Rpb24gY29uZmlnXG4gICAgICovXG4gICAgY29sbGVjdGlvbk92ZXJyaWRlcz86IChvcHRpb25zOiB7IGNvbGxlY3Rpb246IENvbGxlY3Rpb25Db25maWcgfSkgPT4gQ29sbGVjdGlvbkNvbmZpZ1xuICB9XG4gIC8qKlxuICAgKiBDb25maWd1cmUgdGhlIFZlcmlmaWNhdGlvbnMgY29sbGVjdGlvbnM6XG4gICAqL1xuICB2ZXJpZmljYXRpb25zPzoge1xuICAgIC8qKlxuICAgICAqIFdpbGwgc2V0IHRoZSBgbW9kZWxOYW1lYCBmb3IgdGhlIGB2ZXJpZmljYXRpb25gIHRhYmxlIGluIGJldHRlci1hdXRoXG4gICAgICpcbiAgICAgKiBhbmQgdGhlIGBzbHVnYCBmb3IgdGhlIGB2ZXJpZmljYXRpb25zYCBjb2xsZWN0aW9uIGluIHBheWxvYWRcbiAgICAgKlxuICAgICAqIEBkZWZhdWx0ICd2ZXJpZmljYXRpb25zJ1xuICAgICAqL1xuICAgIHNsdWc/OiBzdHJpbmcgfCB1bmRlZmluZWRcbiAgICAvKipcbiAgICAgKiBIaWRlIHRoZSBgdmVyaWZpY2F0aW9uc2AgY29sbGVjdGlvbiBmcm9tIHRoZSBwYXlsb2FkIGFkbWluIFVJXG4gICAgICovXG4gICAgaGlkZGVuPzogYm9vbGVhbiB8IHVuZGVmaW5lZFxuICAgIC8qKlxuICAgICAqIEZ1bmN0aW9uIHRvIG92ZXJyaWRlIHRoZSBjb2xsZWN0aW9uIGNvbmZpZ3VyYXRpb25cbiAgICAgKlxuICAgICAqIFRoaXMgYWxsb3dzIG1vZGlmeWluZyB0aGUgY29sbGVjdGlvbiBjb25maWcgYWZ0ZXIgaXQgaGFzIGJlZW4gYnVpbHRcbiAgICAgKlxuICAgICAqIEBwYXJhbSBvcHRpb25zIE9iamVjdCBjb250YWluaW5nIHRoZSBjb2xsZWN0aW9uIGNvbmZpZyBhbmQgcG90ZW50aWFsbHkgYWRkaXRpb25hbCBwYXJhbWV0ZXJzXG4gICAgICogQHJldHVybnMgTW9kaWZpZWQgY29sbGVjdGlvbiBjb25maWdcbiAgICAgKi9cbiAgICBjb2xsZWN0aW9uT3ZlcnJpZGVzPzogKG9wdGlvbnM6IHsgY29sbGVjdGlvbjogQ29sbGVjdGlvbkNvbmZpZyB9KSA9PiBDb2xsZWN0aW9uQ29uZmlnXG4gIH1cbiAgLyoqXG4gICAqIENvbmZpZ3VyZSB0aGUgQWRtaW4gSW52aXRhdGlvbnMgY29sbGVjdGlvbnM6XG4gICAqL1xuICBhZG1pbkludml0YXRpb25zPzoge1xuICAgIC8qKlxuICAgICAqIFdpbGwgc2V0IHRoZSBgc2x1Z2AgZm9yIHRoZSBgYWRtaW4taW52aXRhdGlvbnNgIGNvbGxlY3Rpb24gaW4gcGF5bG9hZFxuICAgICAqXG4gICAgICogQGRlZmF1bHQgJ2FkbWluLWludml0YXRpb25zJ1xuICAgICAqL1xuICAgIHNsdWc/OiBzdHJpbmcgfCB1bmRlZmluZWRcbiAgICAvKipcbiAgICAgKiBIaWRlIHRoZSBgYWRtaW4taW52aXRhdGlvbnNgIGNvbGxlY3Rpb24gZnJvbSB0aGUgcGF5bG9hZCBhZG1pbiBVSVxuICAgICAqL1xuICAgIGhpZGRlbj86IGJvb2xlYW4gfCB1bmRlZmluZWRcbiAgICAvKipcbiAgICAgKiBUaGlzIHdpbGwgYmUgdXNlZCB0byBnZW5lcmF0ZSB0aGUgYWRtaW4gaW52aXRlIHVybFxuICAgICAqXG4gICAgICogQHBhcmFtIG9wdGlvbnMgT2JqZWN0IGNvbnRhaW5pbmcgcGF5bG9hZCBhbmQgdGhlIHRva2VuXG4gICAgICogQHJldHVybnMgVGhlIGFkbWluIGludml0ZSB1cmxcbiAgICAgKi9cbiAgICBnZW5lcmF0ZUludml0ZVVybD86IEdlbmVyYXRlQWRtaW5JbnZpdGVVcmxGblxuICAgIC8qKlxuICAgICAqIFRoaXMgd2lsbCBiZSB1c2VkIHRvIHNlbmQgdGhlIGFkbWluIGludml0ZSBlbWFpbFxuICAgICAqXG4gICAgICogQHBhcmFtIG9wdGlvbnMgT2JqZWN0IGNvbnRhaW5pbmcgcGF5bG9hZCwgZW1haWwgYW5kIHRoZSB1cmxcbiAgICAgKiBAcmV0dXJucyBUaGUgYWRtaW4gaW52aXRlIHVybFxuICAgICAqL1xuICAgIHNlbmRJbnZpdGVFbWFpbD86IFNlbmRBZG1pbkludml0ZUVtYWlsRm5cbiAgICAvKipcbiAgICAgKiBGdW5jdGlvbiB0byBvdmVycmlkZSB0aGUgY29sbGVjdGlvbiBjb25maWd1cmF0aW9uXG4gICAgICpcbiAgICAgKiBUaGlzIGFsbG93cyBtb2RpZnlpbmcgdGhlIGNvbGxlY3Rpb24gY29uZmlnIGFmdGVyIGl0IGhhcyBiZWVuIGJ1aWx0XG4gICAgICpcbiAgICAgKiBAcGFyYW0gb3B0aW9ucyBPYmplY3QgY29udGFpbmluZyB0aGUgY29sbGVjdGlvbiBjb25maWcgYW5kIHBvdGVudGlhbGx5IGFkZGl0aW9uYWwgcGFyYW1ldGVyc1xuICAgICAqIEByZXR1cm5zIE1vZGlmaWVkIGNvbGxlY3Rpb24gY29uZmlnXG4gICAgICovXG4gICAgY29sbGVjdGlvbk92ZXJyaWRlcz86IChvcHRpb25zOiB7IGNvbGxlY3Rpb246IENvbGxlY3Rpb25Db25maWcgfSkgPT4gQ29sbGVjdGlvbkNvbmZpZ1xuICB9XG59XG5cbmV4cG9ydCB0eXBlIFNlbmRBZG1pbkludml0ZUVtYWlsRm4gPSAob3B0aW9uczoge1xuICBwYXlsb2FkOiBQYXlsb2FkXG4gIGVtYWlsOiBzdHJpbmdcbiAgdXJsOiBzdHJpbmdcbn0pID0+IFByb21pc2U8eyBzdWNjZXNzOiB0cnVlOyBtZXNzYWdlPzogc3RyaW5nIH0gfCB7IHN1Y2Nlc3M6IGZhbHNlOyBtZXNzYWdlOiBzdHJpbmcgfT5cblxuZXhwb3J0IHR5cGUgR2VuZXJhdGVBZG1pbkludml0ZVVybEZuID0gKG9wdGlvbnM6IHsgcGF5bG9hZDogUGF5bG9hZDsgdG9rZW46IHN0cmluZyB9KSA9PiBzdHJpbmdcblxuZXhwb3J0IHR5cGUgQ29uZmlnQWRtaW5DdXN0b20gPSB7XG4gIGJldHRlckF1dGg6IHtcbiAgICBhZG1pblJvdXRlczoge1xuICAgICAgW2tleSBpbiBrZXlvZiB0eXBlb2YgYWRtaW5Sb3V0ZXNdOiBzdHJpbmdcbiAgICB9XG4gIH1cbn1cblxuZXhwb3J0IGludGVyZmFjZSBCZXR0ZXJBdXRoUGx1Z2luIHtcbiAgKGNvbmZpZzogQ29uZmlnKTogQ29uZmlnXG4gIHBsdWdpbk9wdGlvbnM6IEJldHRlckF1dGhQbHVnaW5PcHRpb25zXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGF5bG9hZFJlcXVlc3RXaXRoQmV0dGVyQXV0aDxPIGV4dGVuZHMgQmV0dGVyQXV0aFBsdWdpbk9wdGlvbnM+IGV4dGVuZHMgUGF5bG9hZFJlcXVlc3Qge1xuICBwYXlsb2FkOiBCYXNlUGF5bG9hZCAmIHtcbiAgICBiZXR0ZXJBdXRoOiBCZXR0ZXJBdXRoUmV0dXJuPE8+XG4gIH1cbn1cblxuZXhwb3J0IHR5cGUgQ29sbGVjdGlvbkhvb2tXaXRoQmV0dGVyQXV0aDxPIGV4dGVuZHMgQmV0dGVyQXV0aFBsdWdpbk9wdGlvbnMsIFQgZXh0ZW5kcyAoYXJnczogYW55KSA9PiBhbnk+ID0gVCBleHRlbmRzIChcbiAgYXJnczogaW5mZXIgQVxuKSA9PiBpbmZlciBSXG4gID8gKGFyZ3M6IE9taXQ8QSwgJ3JlcSc+ICYgeyByZXE6IFBheWxvYWRSZXF1ZXN0V2l0aEJldHRlckF1dGg8Tz4gfSkgPT4gUlxuICA6IG5ldmVyXG5cbmV4cG9ydCB0eXBlIEVuZHBvaW50V2l0aEJldHRlckF1dGg8TyBleHRlbmRzIEJldHRlckF1dGhQbHVnaW5PcHRpb25zPiA9IE9taXQ8RW5kcG9pbnQsICdoYW5kbGVyJz4gJiB7XG4gIGhhbmRsZXI6IChyZXE6IFBheWxvYWRSZXF1ZXN0V2l0aEJldHRlckF1dGg8Tz4pID0+IFByb21pc2U8UmVzcG9uc2U+IHwgUmVzcG9uc2Vcbn1cblxudHlwZSBVbmlvblRvSW50ZXJzZWN0aW9uPFU+ID0gKFUgZXh0ZW5kcyBhbnkgPyAoazogVSkgPT4gdm9pZCA6IG5ldmVyKSBleHRlbmRzIChrOiBpbmZlciBJKSA9PiB2b2lkID8gSSA6IG5ldmVyXG50eXBlIFByZXR0aWZ5RGVlcDxUPiA9IHtcbiAgW0sgaW4ga2V5b2YgVF06IFRbS10gZXh0ZW5kcyAoLi4uYXJnczogYW55W10pID0+IGFueSA/IFRbS10gOiBUW0tdIGV4dGVuZHMgb2JqZWN0ID8gVFtLXSBleHRlbmRzIEFycmF5PGFueT4gPyBUW0tdIDogVFtLXSBleHRlbmRzIERhdGUgPyBUW0tdIDogUHJldHRpZnlEZWVwPFRbS10+IDogVFtLXTtcbn0gJiB7fTtcbnR5cGUgSW5mZXJQbHVnaW5FcnJvckNvZGVzPE8gZXh0ZW5kcyBCZXR0ZXJBdXRoT3B0aW9ucz4gPVxuICBPWydwbHVnaW5zJ10gZXh0ZW5kcyBBcnJheTxpbmZlciBQPlxuICAgID8gVW5pb25Ub0ludGVyc2VjdGlvbjxcbiAgICAgICAgUCBleHRlbmRzIEJldHRlckF1dGhQbHVnaW5UeXBlID8gKFBbJyRFUlJPUl9DT0RFUyddIGV4dGVuZHMgUmVjb3JkPHN0cmluZywgYW55PiA/IFBbJyRFUlJPUl9DT0RFUyddIDogbmV2ZXIpIDogbmV2ZXJcbiAgICAgID4gZXh0ZW5kcyBpbmZlciBSXG4gICAgICA/IFtSXSBleHRlbmRzIFtuZXZlcl1cbiAgICAgICAgPyB7fVxuICAgICAgICA6IFJcbiAgICAgIDoge31cbiAgICA6IHt9XG5cbmV4cG9ydCB0eXBlIFJvbGVBcnJheTxPIGV4dGVuZHMgcmVhZG9ubHkgc3RyaW5nW10gPSByZWFkb25seSBbdHlwZW9mIGRlZmF1bHRzLnVzZXJSb2xlXT4gPSBPW251bWJlcl1bXSB8IG51bGxcbnR5cGUgT3ZlcnJpZGVSb2xlPFQsIE8gZXh0ZW5kcyByZWFkb25seSBzdHJpbmdbXT4gPSBUIGV4dGVuZHMgb2JqZWN0ID8gT21pdDxULCAncm9sZSc+ICYgeyByb2xlOiBSb2xlQXJyYXk8Tz4gfSA6IFRcbnR5cGUgRXh0cmFjdEJBPE8gZXh0ZW5kcyBCZXR0ZXJBdXRoUGx1Z2luT3B0aW9ucz4gPSBOb25OdWxsYWJsZTxPWydiZXR0ZXJBdXRoT3B0aW9ucyddPlxudHlwZSBFeHRyYWN0Um9sZXM8Tz4gPSBPIGV4dGVuZHMgeyB1c2Vycz86IHsgcm9sZXM/OiBpbmZlciBSIH0gfVxuICA/IFIgZXh0ZW5kcyByZWFkb25seSBzdHJpbmdbXVxuICAgID8gUlxuICAgIDogcmVhZG9ubHkgW11cbiAgOiByZWFkb25seSBbdHlwZW9mIGRlZmF1bHRzLnVzZXJSb2xlXVxudHlwZSBCYXNlRXJyb3JDb2RlcyA9IHR5cGVvZiBCQVNFX0VSUk9SX0NPREVTXG5cbmV4cG9ydCB0eXBlIEJldHRlckF1dGhSZXR1cm48TyBleHRlbmRzIEJldHRlckF1dGhQbHVnaW5PcHRpb25zID0gQmV0dGVyQXV0aFBsdWdpbk9wdGlvbnM+ID0ge1xuICBoYW5kbGVyOiAocmVxdWVzdDogUmVxdWVzdCkgPT4gUHJvbWlzZTxSZXNwb25zZT5cbiAgYXBpOiBJbmZlckFQSTxSZXR1cm5UeXBlPHR5cGVvZiByb3V0ZXI8RXh0cmFjdEJBPE8+Pj4+WydlbmRwb2ludHMnXVxuICBvcHRpb25zOiBFeHRyYWN0QkE8Tz5cbiAgJEVSUk9SX0NPREVTOiBJbmZlclBsdWdpbkVycm9yQ29kZXM8RXh0cmFjdEJBPE8+PiAmIEJhc2VFcnJvckNvZGVzXG4gICRjb250ZXh0OiBQcm9taXNlPEF1dGhDb250ZXh0PlxuICAkSW5mZXI6IEluZmVyUGx1Z2luVHlwZXM8RXh0cmFjdEJBPE8+PiBleHRlbmRzIHtcbiAgICBTZXNzaW9uOiBhbnlcbiAgfVxuICAgID8gSW5mZXJQbHVnaW5UeXBlczxFeHRyYWN0QkE8Tz4+XG4gICAgOiB7XG4gICAgICAgIFNlc3Npb246IHtcbiAgICAgICAgICBzZXNzaW9uOiBQcmV0dGlmeURlZXA8SW5mZXJTZXNzaW9uPEV4dHJhY3RCQTxPPj4+XG4gICAgICAgICAgdXNlcjogT3ZlcnJpZGVSb2xlPFByZXR0aWZ5RGVlcDxJbmZlclVzZXI8RXh0cmFjdEJBPE8+Pj4sIEV4dHJhY3RSb2xlczxPPj5cbiAgICAgICAgfVxuICAgICAgfSAmIEluZmVyUGx1Z2luVHlwZXM8RXh0cmFjdEJBPE8+PlxufVxuXG5leHBvcnQgdHlwZSBCZXR0ZXJBdXRoRnVuY3Rpb25PcHRpb25zPE8gZXh0ZW5kcyBCZXR0ZXJBdXRoUGx1Z2luT3B0aW9ucz4gPSBPbWl0PEV4dHJhY3RCQTxPPiwgJ2RhdGFiYXNlJyB8ICdwbHVnaW5zJz4gJiB7XG4gIGVuYWJsZURlYnVnTG9ncz86IGJvb2xlYW5cbiAgcGx1Z2luczogRXh0cmFjdEJBPE8+WydwbHVnaW5zJ11cbn1cblxuZXhwb3J0IGludGVyZmFjZSBCdWlsdEJldHRlckF1dGhTY2hlbWEge1xuICBtb2RlbE5hbWU6IHN0cmluZ1xuICBmaWVsZHM6IFJlY29yZDxzdHJpbmcsIERCRmllbGRBdHRyaWJ1dGU+XG4gIG9yZGVyOiBudW1iZXJcbn1cblxuZXhwb3J0IHR5cGUgQmV0dGVyQXV0aFNjaGVtYXMgPSBSZWNvcmQ8TW9kZWxLZXksIEJ1aWx0QmV0dGVyQXV0aFNjaGVtYT5cblxuZXhwb3J0IGludGVyZmFjZSBCdWlsZENvbGxlY3Rpb25Qcm9wcyB7XG4gIHJlc29sdmVkU2NoZW1hczogQmV0dGVyQXV0aFNjaGVtYXNcbiAgcGx1Z2luT3B0aW9uczogQmV0dGVyQXV0aFBsdWdpbk9wdGlvbnNcbiAgaW5jb21pbmdDb2xsZWN0aW9uczogQ29sbGVjdGlvbkNvbmZpZ1tdXG59XG5cbmV4cG9ydCB0eXBlIEZpZWxkT3ZlcnJpZGVzPEsgZXh0ZW5kcyBzdHJpbmcgPSBzdHJpbmc+ID0ge1xuICBbS2V5IGluIEtdPzogKGZpZWxkOiBEQkZpZWxkQXR0cmlidXRlKSA9PiBQYXJ0aWFsPEZpZWxkPlxufSAmIHtcbiAgW2tleTogc3RyaW5nXTogKGZpZWxkOiBEQkZpZWxkQXR0cmlidXRlKSA9PiBQYXJ0aWFsPEZpZWxkPlxufVxuXG5leHBvcnQgdHlwZSBGaWVsZFdpdGhJZHMgPSB7IG5hbWU/OiBzdHJpbmc7IGN1c3RvbT86IHsgYmV0dGVyQXV0aEZpZWxkS2V5Pzogc3RyaW5nIH0gfVxuXG5leHBvcnQgdHlwZSBGaWVsZFJ1bGUgPSB7XG4gIGNvbmRpdGlvbj86IChmaWVsZDogREJGaWVsZEF0dHJpYnV0ZSkgPT4gYm9vbGVhblxuICB0cmFuc2Zvcm06IChmaWVsZDogREJGaWVsZEF0dHJpYnV0ZSkgPT4gUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF3Y0EsV0FHQyJ9
|