@plumile/router 0.1.199 → 0.1.201
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/lib/esm/ResourcePage.d.ts +5 -4
- package/lib/esm/ResourcePage.d.ts.map +1 -1
- package/lib/esm/ResourcePage.js +5 -2
- package/lib/esm/history/BrowserHistory.d.ts +2 -2
- package/lib/esm/history/BrowserHistory.d.ts.map +1 -1
- package/lib/esm/history/BrowserHistory.js +1 -1
- package/lib/esm/history/types.d.ts +7 -1
- package/lib/esm/history/types.d.ts.map +1 -1
- package/lib/esm/history/types.js +1 -1
- package/lib/esm/instrumentation/adapters/devtoolsBridge.js +2 -2
- package/lib/esm/routing/Link.d.ts +2 -2
- package/lib/esm/routing/Link.d.ts.map +1 -1
- package/lib/esm/routing/Link.js +3 -6
- package/lib/esm/routing/RouteComponentWrapper.d.ts.map +1 -1
- package/lib/esm/routing/RouteComponentWrapper.js +8 -4
- package/lib/esm/routing/RouterPrimitives.stories.d.ts.map +1 -1
- package/lib/esm/routing/RouterPrimitives.stories.js +1 -7
- package/lib/esm/routing/RoutingContext.d.ts +2 -2
- package/lib/esm/routing/RoutingContext.d.ts.map +1 -1
- package/lib/esm/routing/RoutingContext.js +1 -1
- package/lib/esm/routing/createStaticRouter.d.ts.map +1 -1
- package/lib/esm/routing/createStaticRouter.js +4 -1
- package/lib/esm/routing/useFilters.d.ts.map +1 -1
- package/lib/esm/routing/useFilters.js +16 -9
- package/lib/esm/routing/useLocation.d.ts +2 -1
- package/lib/esm/routing/useLocation.d.ts.map +1 -1
- package/lib/esm/routing/useLocation.js +1 -1
- package/lib/esm/routing/useRouteTelemetry.d.ts +2 -1
- package/lib/esm/routing/useRouteTelemetry.d.ts.map +1 -1
- package/lib/esm/routing/useRouteTelemetry.js +1 -1
- package/lib/esm/tools/buildCombinedSearch.js +1 -1
- package/lib/esm/tools.d.ts +2 -1
- package/lib/esm/tools.d.ts.map +1 -1
- package/lib/esm/tools.js +2 -2
- package/lib/esm/types.d.ts +9 -9
- package/lib/esm/types.d.ts.map +1 -1
- package/lib/esm/types.js +1 -1
- package/lib/tsconfig.esm.tsbuildinfo +1 -1
- package/lib/types/ResourcePage.d.ts +5 -4
- package/lib/types/ResourcePage.d.ts.map +1 -1
- package/lib/types/history/BrowserHistory.d.ts +2 -2
- package/lib/types/history/BrowserHistory.d.ts.map +1 -1
- package/lib/types/history/types.d.ts +7 -1
- package/lib/types/history/types.d.ts.map +1 -1
- package/lib/types/routing/Link.d.ts +2 -2
- package/lib/types/routing/Link.d.ts.map +1 -1
- package/lib/types/routing/RouteComponentWrapper.d.ts.map +1 -1
- package/lib/types/routing/RouterPrimitives.stories.d.ts.map +1 -1
- package/lib/types/routing/RoutingContext.d.ts +2 -2
- package/lib/types/routing/RoutingContext.d.ts.map +1 -1
- package/lib/types/routing/createStaticRouter.d.ts.map +1 -1
- package/lib/types/routing/useFilters.d.ts.map +1 -1
- package/lib/types/routing/useLocation.d.ts +2 -1
- package/lib/types/routing/useLocation.d.ts.map +1 -1
- package/lib/types/routing/useRouteTelemetry.d.ts +2 -1
- package/lib/types/routing/useRouteTelemetry.d.ts.map +1 -1
- package/lib/types/tools.d.ts +2 -1
- package/lib/types/tools.d.ts.map +1 -1
- package/lib/types/types.d.ts +9 -9
- package/lib/types/types.d.ts.map +1 -1
- package/package.json +3 -3
package/lib/esm/types.d.ts
CHANGED
|
@@ -4,7 +4,7 @@ import type { Schema as FilterSchema, InferFilters as InferFilterResult, InferFi
|
|
|
4
4
|
import type { Match, MatchFunction, ParamData } from 'path-to-regexp';
|
|
5
5
|
import type { FlatRoute } from './builder.js';
|
|
6
6
|
import type { ResourcePage } from './ResourcePage.js';
|
|
7
|
-
import type {
|
|
7
|
+
import type { History, HistoryLocationSnapshot } from './history/types.js';
|
|
8
8
|
export type MaybePromise<T> = T | Promise<T>;
|
|
9
9
|
export type RawQueryValue = string | string[];
|
|
10
10
|
export type RawQuery = Record<string, RawQueryValue>;
|
|
@@ -171,7 +171,7 @@ export type RouteEntry<TVariables extends ParamData, S extends FilterSchema | un
|
|
|
171
171
|
activeLoadState: RouterActiveLoadState;
|
|
172
172
|
loadState: RouterLoadState;
|
|
173
173
|
context: TContext;
|
|
174
|
-
location:
|
|
174
|
+
location: HistoryLocationSnapshot;
|
|
175
175
|
route: RouterMatchedRoute<TVariables> | null;
|
|
176
176
|
forceRerender: boolean;
|
|
177
177
|
rawSearch?: string;
|
|
@@ -193,13 +193,13 @@ export type Redirect = {
|
|
|
193
193
|
export type RouteNode = {
|
|
194
194
|
children?: readonly (RouteNode | Redirect)[];
|
|
195
195
|
path?: string;
|
|
196
|
-
prepare?: BivariantCallback<(params: PrepareParams<
|
|
196
|
+
prepare?: BivariantCallback<(params: PrepareParams<unknown, ParamData>) => unknown>;
|
|
197
197
|
prepareSearchBehavior?: RoutePrepareSearchBehavior;
|
|
198
198
|
querySchema?: FilterSchema;
|
|
199
|
-
render?: BivariantCallback<(opts: RouteRenderOpts<
|
|
199
|
+
render?: BivariantCallback<(opts: RouteRenderOpts<unknown, unknown>) => ReactElement | null | undefined | Promise<ReactElement | null | undefined>>;
|
|
200
200
|
resourcePage?: ResourcePage | null;
|
|
201
201
|
suspenseBoundary?: RouteSuspenseBoundary;
|
|
202
|
-
fallback?: RouteFallback
|
|
202
|
+
fallback?: RouteFallback;
|
|
203
203
|
};
|
|
204
204
|
export type PrepareResult = unknown;
|
|
205
205
|
export type PrepareParams<TContext, TVariables extends ParamData, TQueryShape extends UnknownQueryShape = UnknownQueryShape, S extends FilterSchema | undefined = FilterSchema | undefined> = {
|
|
@@ -242,7 +242,7 @@ export type RoutingContextType<TVariables extends ParamData, S extends FilterSch
|
|
|
242
242
|
query?: UnknownQueryShape;
|
|
243
243
|
filters?: UnknownFilters;
|
|
244
244
|
}) => string;
|
|
245
|
-
history:
|
|
245
|
+
history: History;
|
|
246
246
|
get: () => RouteEntry<TVariables, S, TContext>;
|
|
247
247
|
preloadCode: (target: PreloadTarget) => void;
|
|
248
248
|
preload: (target: PreloadTarget) => void;
|
|
@@ -256,11 +256,11 @@ export type RoutingContextType<TVariables extends ParamData, S extends FilterSch
|
|
|
256
256
|
}) => void;
|
|
257
257
|
};
|
|
258
258
|
export type ResourcePageReturn = {
|
|
259
|
-
default: ComponentType<
|
|
260
|
-
} | ComponentType<
|
|
259
|
+
default: ComponentType<never>;
|
|
260
|
+
} | ComponentType<never>;
|
|
261
261
|
export type ResourcePageLoader = () => Promise<ResourcePageReturn>;
|
|
262
262
|
export type PreparedValueResource<TPrepared extends PrepareResult = PrepareResult> = ReadableResource<TPrepared>;
|
|
263
|
-
export type InferFilters<S extends FilterSchema
|
|
263
|
+
export type InferFilters<S extends FilterSchema> = InferFilterResult<S>;
|
|
264
264
|
export type { FilterSchema };
|
|
265
265
|
export type { InferFilterField as InferField };
|
|
266
266
|
export type TypedFilterActions<S extends FilterSchema> = {
|
package/lib/esm/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
|
package/lib/esm/types.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQ29tcG9uZW50VHlwZSwgUmVhY3RFbGVtZW50LCBSZWFjdE5vZGUsIEpTWCB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB0eXBlIHsgRGlhZ25vc3RpYyBhcyBGaWx0ZXJEaWFnbm9zdGljIH0gZnJvbSAnQHBsdW1pbGUvZmlsdGVyLXF1ZXJ5L2Vycm9ycy5qcyc7XG5pbXBvcnQgdHlwZSB7XG4gIFNjaGVtYSBhcyBGaWx0ZXJTY2hlbWEsXG4gIEluZmVyRmlsdGVycyBhcyBJbmZlckZpbHRlclJlc3VsdCxcbiAgSW5mZXJGaWVsZCBhcyBJbmZlckZpbHRlckZpZWxkLFxufSBmcm9tICdAcGx1bWlsZS9maWx0ZXItcXVlcnkvdHlwZXMuanMnO1xuaW1wb3J0IHR5cGUgeyBNYXRjaCwgTWF0Y2hGdW5jdGlvbiwgUGFyYW1EYXRhIH0gZnJvbSAncGF0aC10by1yZWdleHAnO1xuXG5pbXBvcnQgdHlwZSB7IEZsYXRSb3V0ZSB9IGZyb20gJy4vYnVpbGRlci5qcyc7XG5pbXBvcnQgdHlwZSB7IFJlc291cmNlUGFnZSB9IGZyb20gJy4vUmVzb3VyY2VQYWdlLmpzJztcbmltcG9ydCB0eXBlIHsgQnJvd3Nlckhpc3RvcnkgfSBmcm9tICcuL2hpc3RvcnkvaW5kZXguanMnO1xuXG5leHBvcnQgdHlwZSBNYXliZVByb21pc2U8VD4gPSBUIHwgUHJvbWlzZTxUPjtcbmV4cG9ydCB0eXBlIFJhd1F1ZXJ5VmFsdWUgPSBzdHJpbmcgfCBzdHJpbmdbXTtcbmV4cG9ydCB0eXBlIFJhd1F1ZXJ5ID0gUmVjb3JkPHN0cmluZywgUmF3UXVlcnlWYWx1ZT47XG5leHBvcnQgdHlwZSBVbmtub3duUXVlcnlTaGFwZSA9IFJlY29yZDxzdHJpbmcsIHVua25vd24+O1xuZXhwb3J0IHR5cGUgVW5rbm93bkZpbHRlcnMgPSBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjtcblxuZXhwb3J0IHR5cGUgUm91dGVyU3RydWN0dXJlZERlc3RpbmF0aW9uPFxuICBURmlsdGVycyBleHRlbmRzIFVua25vd25GaWx0ZXJzID0gVW5rbm93bkZpbHRlcnMsXG4gIFRRdWVyeSBleHRlbmRzIFVua25vd25RdWVyeVNoYXBlID0gVW5rbm93blF1ZXJ5U2hhcGUsXG4+ID0ge1xuICBwYXRobmFtZTogc3RyaW5nO1xuICBmaWx0ZXJzPzogVEZpbHRlcnM7XG4gIHF1ZXJ5PzogVFF1ZXJ5O1xuICBoYXNoPzogc3RyaW5nO1xuICBzZWFyY2g/OiBuZXZlcjtcbn07XG5cbmV4cG9ydCB0eXBlIFJvdXRlckV4cGxpY2l0U2VhcmNoRGVzdGluYXRpb24gPSB7XG4gIHBhdGhuYW1lOiBzdHJpbmc7XG4gIHNlYXJjaD86IHN0cmluZztcbiAgaGFzaD86IHN0cmluZztcbiAgZmlsdGVycz86IG5ldmVyO1xuICBxdWVyeT86IG5ldmVyO1xufTtcblxuLyoqIEEgcm91dGVyIGRlc3RpbmF0aW9uIHdpdGggZWl0aGVyIHN0cnVjdHVyZWQgc3RhdGUgb3IgYW4gZXhwbGljaXQgc2VhcmNoIHN0cmluZy4gKi9cbmV4cG9ydCB0eXBlIFJvdXRlckRlc3RpbmF0aW9uPFxuICBURmlsdGVycyBleHRlbmRzIFVua25vd25GaWx0ZXJzID0gVW5rbm93bkZpbHRlcnMsXG4gIFRRdWVyeSBleHRlbmRzIFVua25vd25RdWVyeVNoYXBlID0gVW5rbm93blF1ZXJ5U2hhcGUsXG4+ID1cbiAgfCBSb3V0ZXJTdHJ1Y3R1cmVkRGVzdGluYXRpb248VEZpbHRlcnMsIFRRdWVyeT5cbiAgfCBSb3V0ZXJFeHBsaWNpdFNlYXJjaERlc3RpbmF0aW9uO1xuXG5leHBvcnQgdHlwZSBSb3V0ZXJEZXN0aW5hdGlvbklucHV0PFxuICBURmlsdGVycyBleHRlbmRzIFVua25vd25GaWx0ZXJzID0gVW5rbm93bkZpbHRlcnMsXG4gIFRRdWVyeSBleHRlbmRzIFVua25vd25RdWVyeVNoYXBlID0gVW5rbm93blF1ZXJ5U2hhcGUsXG4+ID0gc3RyaW5nIHwgUm91dGVyRGVzdGluYXRpb248VEZpbHRlcnMsIFRRdWVyeT47XG5cbmV4cG9ydCB0eXBlIEFzeW5jUmVzb3VyY2VTdGF0dXMgPSAnaWRsZScgfCAncGVuZGluZycgfCAncmVzb2x2ZWQnIHwgJ3JlamVjdGVkJztcblxuZXhwb3J0IHR5cGUgUm91dGVyQWN0aXZlTG9hZFN0YXR1cyA9IEFzeW5jUmVzb3VyY2VTdGF0dXM7XG5cbmV4cG9ydCB0eXBlIFJvdXRlckFjdGl2ZUxvYWRTdGF0ZSA9IHtcbiAgc3RhdHVzOiBSb3V0ZXJBY3RpdmVMb2FkU3RhdHVzO1xuICBwZW5kaW5nQ291bnQ6IG51bWJlcjtcbiAgcmVqZWN0ZWRDb3VudDogbnVtYmVyO1xuICB2ZXJzaW9uOiBudW1iZXI7XG59O1xuXG5leHBvcnQgdHlwZSBSb3V0ZXJTZWdtZW50TG9hZFN0YXRlID0ge1xuICBwYXRoPzogc3RyaW5nO1xuICBmdWxsUGF0aD86IHN0cmluZztcbiAgc2VnbWVudEluZGV4OiBudW1iZXI7XG4gIHByZXBhcmVTdGF0dXM6IEFzeW5jUmVzb3VyY2VTdGF0dXM7XG4gIGNvZGVTdGF0dXM6IEFzeW5jUmVzb3VyY2VTdGF0dXM7XG4gIHN0YXR1czogUm91dGVyQWN0aXZlTG9hZFN0YXR1cztcbn07XG5cbmV4cG9ydCB0eXBlIFJvdXRlckxvYWRTdGF0ZSA9IHtcbiAgc3RhdHVzOiBSb3V0ZXJBY3RpdmVMb2FkU3RhdHVzO1xuICBwZW5kaW5nQ291bnQ6IG51bWJlcjtcbiAgcmVqZWN0ZWRDb3VudDogbnVtYmVyO1xuICB2ZXJzaW9uOiBudW1iZXI7XG4gIHNlZ21lbnRzOiBSb3V0ZXJTZWdtZW50TG9hZFN0YXRlW107XG59O1xuXG5leHBvcnQgdHlwZSBSb3V0ZVByZXBhcmVTZWFyY2hCZWhhdmlvciA9ICdhbHdheXMnIHwgJ3BhdGgnO1xuXG5leHBvcnQgdHlwZSBSb3V0ZVN1c3BlbnNlQm91bmRhcnkgPSAnaW5oZXJpdCcgfCAnc2VnbWVudCcgfCAnbm9uZSc7XG5cbmV4cG9ydCB0eXBlIFJvdXRlRmFsbGJhY2tBcmdzPFRDb250ZXh0ID0gdW5rbm93bj4gPSB7XG4gIHNlZ21lbnQ6IFByZXBhcmVkUm91dGVTZWdtZW50PFRDb250ZXh0PjtcbiAgbWF0Y2g6IFJvdXRlck1hdGNoZWRSb3V0ZTxQYXJhbURhdGE+IHwgbnVsbDtcbiAgY2hpbGRyZW4/OiBSZWFjdE5vZGU7XG59O1xuXG5leHBvcnQgdHlwZSBSb3V0ZUZhbGxiYWNrPFRDb250ZXh0ID0gdW5rbm93bj4gPVxuICBSZWFjdE5vZGUgfCAoKGFyZ3M6IFJvdXRlRmFsbGJhY2tBcmdzPFRDb250ZXh0PikgPT4gUmVhY3ROb2RlKTtcblxuZXhwb3J0IHR5cGUgUmVhZGFibGVSZXNvdXJjZTxUPiA9IHtcbiAgZ2V0OiAoKSA9PiBUIHwgdW5kZWZpbmVkO1xuICBnZXRFcnJvcjogKCkgPT4gdW5rbm93bjtcbiAgZ2V0U3RhdHVzOiAoKSA9PiBBc3luY1Jlc291cmNlU3RhdHVzO1xuICBsb2FkOiAoKSA9PiBQcm9taXNlPFQ+O1xuICByZWFkOiAoKSA9PiBUO1xufTtcblxuLyoqXG4gKiBJbnB1dCB0eXBlIGZvciBjcmVhdGluZyBhIEZsYXRSb3V0ZSBpbnN0YW5jZS5cbiAqIEB0ZW1wbGF0ZSBUVmFyaWFibGVzIC0gUm91dGUgcGFyYW1ldGVyIHR5cGVzIGV4dHJhY3RlZCBmcm9tIHRoZSBVUkwgcGF0aFxuICovXG5leHBvcnQgdHlwZSBGbGF0Um91dGVJbnB1dDxUVmFyaWFibGVzIGV4dGVuZHMgUGFyYW1EYXRhPiA9IHtcbiAgLyoqIFRoZSBVUkwgcGF0aCBwYXR0ZXJuIGZvciB0aGlzIHJvdXRlICovXG4gIHBhdGg6IHN0cmluZztcbiAgLyoqIFBlci1yZW5kZXJlZC1yb3V0ZSBtZXRhZGF0YSBhbGlnbmVkIHdpdGggYHJvdXRlc2AuICovXG4gIHJvdXRlU2VnbWVudHM/OiBGbGF0Um91dGVTZWdtZW50W107XG4gIC8qKiBPcHRpb25hbCByZWRpcmVjdCBkZXN0aW5hdGlvbiBpZiB0aGlzIHJvdXRlIHNob3VsZCByZWRpcmVjdCAqL1xuICByZWRpcmVjdFRvPzogc3RyaW5nO1xuICAvKiogRnVuY3Rpb24gdG8gbWF0Y2ggVVJMIHBhdGhzIGFnYWluc3QgdGhpcyByb3V0ZSBwYXR0ZXJuICovXG4gIG1hdGNoRnVuY3Rpb246IE1hdGNoRnVuY3Rpb248VFZhcmlhYmxlcz47XG4gIC8qKiBOZXN0ZWQgcm91dGVzIHRoYXQgc2hvdWxkIGJlIHJlbmRlcmVkIHdpdGhpbiB0aGlzIHJvdXRlICovXG4gIHJvdXRlczogQW55Um91dGVbXTtcbn07XG5cbmV4cG9ydCB0eXBlIEZsYXRSb3V0ZVNlZ21lbnQgPSB7XG4gIC8qKiBTdGFibGUga2V5IGZvciB0aGUgcmVuZGVyZWQgc2VnbWVudCB3aXRoaW4gYSBmbGF0IHJvdXRlIGNoYWluLiAqL1xuICBrZXk6IHN0cmluZztcbiAgLyoqIExvY2FsIHJvdXRlIHBhdGggY29uZmlndXJlZCBvbiB0aGUgcm91dGUgbm9kZS4gKi9cbiAgcGF0aD86IHN0cmluZztcbiAgLyoqIEFic29sdXRlIHBhdGggcmVwcmVzZW50ZWQgYnkgdGhpcyBzZWdtZW50LiAqL1xuICBmdWxsUGF0aDogc3RyaW5nO1xuICAvKiogUGFyYW1zIHRoYXQgbWF5IGJlIHJlYWQgYnkgdGhpcyBzZWdtZW50LCBpbmNsdWRpbmcgYW5jZXN0b3IgcGFyYW1zLiAqL1xuICBwYXJhbU5hbWVzOiByZWFkb25seSBzdHJpbmdbXTtcbn07XG5cbi8qKlxuICogUmVwcmVzZW50cyBhIG1hdGNoZWQgcm91dGUgd2l0aCBleHRyYWN0ZWQgcGFyYW1ldGVycyBhbmQgbWV0YWRhdGEuXG4gKiBAdGVtcGxhdGUgVFZhcmlhYmxlcyAtIFJvdXRlIHBhcmFtZXRlciB0eXBlcyBleHRyYWN0ZWQgZnJvbSB0aGUgVVJMIHBhdGhcbiAqL1xuZXhwb3J0IHR5cGUgUm91dGVyTWF0Y2hlZFJvdXRlPFRWYXJpYWJsZXMgZXh0ZW5kcyBQYXJhbURhdGE+ID0ge1xuICAvKiogVGhlIG1hdGNoIHJlc3VsdCBmcm9tIHBhdGgtdG8tcmVnZXhwICovXG4gIG1hdGNoOiBNYXRjaDxUVmFyaWFibGVzPjtcbiAgLyoqIEV4dHJhY3RlZCBwYXJhbWV0ZXJzIGZyb20gdGhlIFVSTCBwYXRoICovXG4gIHBhcmFtczogVFZhcmlhYmxlcztcbiAgLyoqIFRoZSBtYXRjaGVkIHBhdGggc3RyaW5nICovXG4gIHBhdGg6IHN0cmluZztcbiAgLyoqIFRoZSBmbGF0IHJvdXRlIHRoYXQgd2FzIG1hdGNoZWQgKi9cbiAgcm91dGU6IEZsYXRSb3V0ZTxUVmFyaWFibGVzPjtcbn07XG5cbi8qKlxuICogQSBSZWFjdCBjb21wb25lbnQgdGhhdCBjYW4gYmUgdXNlZCBhcyBhIHJvdXRlIGNvbXBvbmVudC5cbiAqIEB0ZW1wbGF0ZSBUUHJvcHMgLSBUaGUgcHJvcHMgdHlwZSBmb3IgdGhlIGNvbXBvbmVudFxuICovXG5leHBvcnQgdHlwZSBSb3V0ZVJlYWN0Q29tcG9uZW50PFRQcm9wcyA9IFJlY29yZDxzdHJpbmcsIHVua25vd24+PiA9IChcbiAgcHJvcHM6IFRQcm9wcyxcbikgPT4gSlNYLkVsZW1lbnQgfCBudWxsO1xuXG50eXBlIEJpdmFyaWFudENhbGxiYWNrPEZuIGV4dGVuZHMgKC4uLmFyZ3M6IG5ldmVyW10pID0+IHVua25vd24+ID0ge1xuICAvLyBQdWJsaWMgcm91dGUgY2FsbGJhY2tzIG5lZWQgdG8gcmVtYWluIGFzc2lnbmFibGUgYWZ0ZXIgdGhlaXIgc2NoZW1hLXNwZWNpZmljXG4gIC8vIHBhcmFtZXRlcnMgYXJlIGVyYXNlZCB0byBSb3V0ZU5vZGUgYnkgcmVjdXJzaXZlIHJvdXRlIGFuZCByb3V0ZXIgaGVscGVycy5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9tZXRob2Qtc2lnbmF0dXJlLXN0eWxlXG4gIGJpdmFyaWFuY2VIYWNrKC4uLmFyZ3M6IFBhcmFtZXRlcnM8Rm4+KTogUmV0dXJuVHlwZTxGbj47XG59WydiaXZhcmlhbmNlSGFjayddO1xuXG4vKipcbiAqIE9wdGlvbnMgcGFzc2VkIHRvIGEgcm91dGUgcmVuZGVyIGZ1bmN0aW9uLlxuICogQHRlbXBsYXRlIFRQcmVwYXJlZCAtIFRoZSB0eXBlIG9mIHByZXBhcmVkIGRhdGEgcmV0dXJuZWQgYnkgdGhlIHJvdXRlJ3MgcHJlcGFyZSBmdW5jdGlvblxuICogQHRlbXBsYXRlIFRWYXJpYWJsZXMgLSBSb3V0ZSBwYXJhbWV0ZXIgdHlwZXMgZXh0cmFjdGVkIGZyb20gdGhlIFVSTCBwYXRoXG4gKi9cbmV4cG9ydCB0eXBlIFJvdXRlUmVuZGVyT3B0czxcbiAgVENvbnRleHQsXG4gIFRQcmVwYXJlZCBleHRlbmRzIFByZXBhcmVSZXN1bHQsXG4gIFRWYXJpYWJsZXMgZXh0ZW5kcyBQYXJhbURhdGEgPSBQYXJhbURhdGEsXG4gIFRRdWVyeVNoYXBlIGV4dGVuZHMgVW5rbm93blF1ZXJ5U2hhcGUgPSBVbmtub3duUXVlcnlTaGFwZSxcbiAgUyBleHRlbmRzIEZpbHRlclNjaGVtYSB8IHVuZGVmaW5lZCA9IEZpbHRlclNjaGVtYSB8IHVuZGVmaW5lZCxcbj4gPSB7XG4gIC8qKiBDaGlsZCBjb21wb25lbnRzIHRvIHJlbmRlciB3aXRoaW4gdGhpcyByb3V0ZSAqL1xuICBjaGlsZHJlbjogUmVhY3ROb2RlO1xuICAvKiogT3B0aW9uYWwgY29tcG9uZW50IHRvIHJlbmRlciAoZnJvbSBSZXNvdXJjZVBhZ2UpICovXG4gIENvbXBvbmVudD86IFJvdXRlUmVhY3RDb21wb25lbnQ7XG4gIC8qKiBEYXRhIHByZXBhcmVkIGJ5IHRoZSByb3V0ZSdzIHByZXBhcmUgZnVuY3Rpb24gKi9cbiAgcHJlcGFyZWQ6IFRQcmVwYXJlZCB8IHVuZGVmaW5lZDtcbiAgLyoqIFRoZSBwcmVwYXJlZCBzZWdtZW50IHRoYXQgaXMgYmVpbmcgcmVuZGVyZWQgKi9cbiAgcHJlcGFyZWRTZWdtZW50OiBQcmVwYXJlZFJvdXRlU2VnbWVudDxcbiAgICBUQ29udGV4dCxcbiAgICBUUHJlcGFyZWQsXG4gICAgVFZhcmlhYmxlcyxcbiAgICBUUXVlcnlTaGFwZVxuICA+O1xuICAvKiogQWxpYXMga2VwdCBmb3IgbWlncmF0aW9uIGNvbXBhdGliaWxpdHkgKi9cbiAgcHJlcGFyZWRSb3V0ZTogUHJlcGFyZWRSb3V0ZVNlZ21lbnQ8XG4gICAgVENvbnRleHQsXG4gICAgVFByZXBhcmVkLFxuICAgIFRWYXJpYWJsZXMsXG4gICAgVFF1ZXJ5U2hhcGVcbiAgPjtcbiAgLyoqIFRoZSBmdWxsIHByZXBhcmVkIGNoYWluIGZvciB0aGUgY3VycmVudCBtYXRjaCAqL1xuICBwcmVwYXJlZFNlZ21lbnRzOiBQcmVwYXJlZFJvdXRlU2VnbWVudHM8VENvbnRleHQ+O1xuICAvKiogSW5kZXggb2YgdGhlIGN1cnJlbnQgc2VnbWVudCBpbiB0aGUgcHJlcGFyZWQgY2hhaW4gKi9cbiAgc2VnbWVudEluZGV4OiBudW1iZXI7XG4gIC8qKiBUaGUgbGVhZiBzZWdtZW50IG9mIHRoZSBwcmVwYXJlZCBjaGFpbiAqL1xuICBsZWFmU2VnbWVudDogUHJlcGFyZWRSb3V0ZVNlZ21lbnQ8VENvbnRleHQ+O1xuICAvKiogVGhlIG1hdGNoZWQgcm91dGUgb3IgbnVsbCBpZiBubyBtYXRjaCAqL1xuICByb3V0ZTogRmxhdFJvdXRlPFRWYXJpYWJsZXM+IHwgbnVsbDtcbiAgLyoqIFJvdXRlci1sZXZlbCBjb250ZXh0ICovXG4gIGNvbnRleHQ6IFRDb250ZXh0O1xuICAvKiogUmF3IHF1ZXJ5IG9iamVjdCAoUGhhc2UgMiBnZW5lcmljIHBhcnNpbmcpICovXG4gIHJhd1F1ZXJ5OiBSYXdRdWVyeTtcbiAgLyoqIFJhdyBVUkwgcXVlcnkgdmFsdWVzLiAqL1xuICBxdWVyeTogVFF1ZXJ5U2hhcGU7XG4gIC8qKiBQYXJzZWQgZmlsdGVycyB3aGVuIHRoZSBhY3RpdmUgZGVzdGluYXRpb24gZGVjbGFyZXMgYSBxdWVyeSBzY2hlbWEuICovXG4gIGZpbHRlcnM6IFMgZXh0ZW5kcyBGaWx0ZXJTY2hlbWFcbiAgICA/IEluZmVyRmlsdGVyUmVzdWx0PFM+XG4gICAgOiBVbmtub3duRmlsdGVycyB8IHVuZGVmaW5lZDtcbn07XG5cbi8qKlxuICogRnVuY3Rpb24gdG8gcmVuZGVyIGEgcm91dGUgd2l0aCBjdXN0b20gbG9naWMuXG4gKiBAdGVtcGxhdGUgVFByZXBhcmVkIC0gVGhlIHR5cGUgb2YgcHJlcGFyZWQgZGF0YSByZXR1cm5lZCBieSB0aGUgcm91dGUncyBwcmVwYXJlIGZ1bmN0aW9uXG4gKiBAdGVtcGxhdGUgVFZhcmlhYmxlcyAtIFJvdXRlIHBhcmFtZXRlciB0eXBlcyBleHRyYWN0ZWQgZnJvbSB0aGUgVVJMIHBhdGhcbiAqL1xuZXhwb3J0IHR5cGUgUm91dGVSZW5kZXI8XG4gIFRDb250ZXh0LFxuICBUUHJlcGFyZWQgZXh0ZW5kcyBQcmVwYXJlUmVzdWx0LFxuICBUVmFyaWFibGVzIGV4dGVuZHMgUGFyYW1EYXRhID0gUGFyYW1EYXRhLFxuICBUUXVlcnlTaGFwZSBleHRlbmRzIFVua25vd25RdWVyeVNoYXBlID0gVW5rbm93blF1ZXJ5U2hhcGUsXG4gIFMgZXh0ZW5kcyBGaWx0ZXJTY2hlbWEgfCB1bmRlZmluZWQgPSBGaWx0ZXJTY2hlbWEgfCB1bmRlZmluZWQsXG4+ID0gQml2YXJpYW50Q2FsbGJhY2s8XG4gIChcbiAgICBvcHRzOiBSb3V0ZVJlbmRlck9wdHM8VENvbnRleHQsIFRQcmVwYXJlZCwgVFZhcmlhYmxlcywgVFF1ZXJ5U2hhcGUsIFM+LFxuICApID0+XG4gICAgUmVhY3RFbGVtZW50IHwgbnVsbCB8IHVuZGVmaW5lZCB8IFByb21pc2U8UmVhY3RFbGVtZW50IHwgbnVsbCB8IHVuZGVmaW5lZD5cbj47XG5cbi8qKiBBbGlhcyBmb3IgcmVuZGVyIGFyZ3MgKGtlcHQgZm9yIHB1YmxpYyBBUEkgY2xhcml0eSkuICovXG5leHBvcnQgdHlwZSBSb3V0ZVJlbmRlckFyZ3M8XG4gIFRDb250ZXh0LFxuICBUUHJlcGFyZWQgZXh0ZW5kcyBQcmVwYXJlUmVzdWx0LFxuICBUVmFyaWFibGVzIGV4dGVuZHMgUGFyYW1EYXRhID0gUGFyYW1EYXRhLFxuICBUUXVlcnlTaGFwZSBleHRlbmRzIFVua25vd25RdWVyeVNoYXBlID0gVW5rbm93blF1ZXJ5U2hhcGUsXG4gIFMgZXh0ZW5kcyBGaWx0ZXJTY2hlbWEgfCB1bmRlZmluZWQgPSBGaWx0ZXJTY2hlbWEgfCB1bmRlZmluZWQsXG4+ID0gUm91dGVSZW5kZXJPcHRzPFRDb250ZXh0LCBUUHJlcGFyZWQsIFRWYXJpYWJsZXMsIFRRdWVyeVNoYXBlLCBTPjtcblxuLyoqXG4gKiBBIHNpbmdsZSBhY3RpdmUgcHJlcGFyZWQgcm91dGUgc2VnbWVudCB3aXRoaW4gdGhlIGN1cnJlbnQgcm91dGUgY2hhaW4uXG4gKi9cbmV4cG9ydCB0eXBlIFByZXBhcmVkUm91dGVTZWdtZW50PFxuICBUQ29udGV4dCA9IHVua25vd24sXG4gIFRQcmVwYXJlZCBleHRlbmRzIFByZXBhcmVSZXN1bHQgPSBQcmVwYXJlUmVzdWx0LFxuICBUVmFyaWFibGVzIGV4dGVuZHMgUGFyYW1EYXRhID0gUGFyYW1EYXRhLFxuICBUUXVlcnlTaGFwZSBleHRlbmRzIFVua25vd25RdWVyeVNoYXBlID0gVW5rbm93blF1ZXJ5U2hhcGUsXG4+ID0ge1xuICAvKiogVGhlIHJvdXRlIGRlZmluaXRpb24gdGhhdCBwcm9kdWNlZCB0aGlzIHByZXBhcmVkIHNlZ21lbnQgKi9cbiAgcm91dGVOb2RlPzogUm91dGVOb2RlO1xuICAvKiogVGhlIHBhdGggdGhhdCB3YXMgbWF0Y2hlZCAqL1xuICBwYXRoPzogc3RyaW5nO1xuICAvKiogQWJzb2x1dGUgcm91dGUgcGF0aCBmb3IgdGhlIGN1cnJlbnQgc2VnbWVudCB3aGVuIGtub3duICovXG4gIGZ1bGxQYXRoPzogc3RyaW5nO1xuICAvKiogU3RhYmxlIGtleSB1c2VkIGZvciByb3V0ZSBzZWdtZW50IHJlY29uY2lsaWF0aW9uLiAqL1xuICBzZWdtZW50S2V5OiBzdHJpbmc7XG4gIC8qKiBQYXJhbXMgdGhhdCBtYXkgYWZmZWN0IHRoaXMgc2VnbWVudC4gKi9cbiAgcGFyYW1OYW1lczogcmVhZG9ubHkgc3RyaW5nW107XG4gIC8qKiBPcmRlciBvZiB0aGUgc2VnbWVudCBpbiB0aGUgYWN0aXZlIHByZXBhcmVkIGNoYWluICovXG4gIHNlZ21lbnRJbmRleDogbnVtYmVyO1xuICAvKiogQXN5bmMgcmVzb3VyY2UgZXhwb3NpbmcgdGhlIHJvdXRlJ3MgcHJlcGFyZWQgdmFsdWUgKi9cbiAgcHJlcGFyZWRSZXNvdXJjZT86IFByZXBhcmVkVmFsdWVSZXNvdXJjZTxUUHJlcGFyZWQ+O1xuICAvKiogQ3VzdG9tIHJlbmRlciBmdW5jdGlvbiBmb3IgdGhpcyByb3V0ZSAqL1xuICByZW5kZXI/OiBSb3V0ZVJlbmRlcjxUQ29udGV4dCwgVFByZXBhcmVkLCBUVmFyaWFibGVzLCBUUXVlcnlTaGFwZT47XG4gIC8qKiBSZWRpcmVjdCBkZXN0aW5hdGlvbiBpZiB0aGlzIHJvdXRlIHNob3VsZCByZWRpcmVjdCAqL1xuICByZWRpcmVjdFRvOiBzdHJpbmcgfCBudWxsO1xuICAvKiogUmVzb3VyY2UgcGFnZSBmb3IgbGF6eS1sb2FkZWQgY29tcG9uZW50cyAqL1xuICByZXNvdXJjZVBhZ2U/OiBSZXNvdXJjZVBhZ2UgfCBudWxsO1xuICAvKiogQ29udHJvbHMgd2hldGhlciB0aGlzIHNlZ21lbnQgb3ducyBhIGxvY2FsIFN1c3BlbnNlIGJvdW5kYXJ5LiAqL1xuICBzdXNwZW5zZUJvdW5kYXJ5OiBSb3V0ZVN1c3BlbnNlQm91bmRhcnk7XG4gIC8qKiBGYWxsYmFjayB1c2VkIHdoZW4gdGhpcyBzZWdtZW50J3MgbG9jYWwgU3VzcGVuc2UgYm91bmRhcnkgaXMgYWN0aXZlLiAqL1xuICBmYWxsYmFjaz86IFJvdXRlRmFsbGJhY2s8VENvbnRleHQ+O1xuICAvKiogSWRlbnRpZmllciB1c2VkIGJ5IGRldmVsb3BlciB0b29saW5nIHRvIG1hcCByZW5kZXJlZCBET00gcmVnaW9ucyAqL1xuICBoaWdobGlnaHRJZD86IHN0cmluZztcbiAgLyoqIE9wdGlvbmFsIHF1ZXJ5IHNjaGVtYSBkZWNsYXJlZCBieSB0aGUgcm91dGUgc2VnbWVudCAqL1xuICBxdWVyeVNjaGVtYT86IEZpbHRlclNjaGVtYTtcbn07XG5cbi8qKiBCYWNrd2FyZC1jb21wYXRpYmxlIGFsaWFzIGtlcHQgZHVyaW5nIHRoZSBzZWdtZW50LW9yaWVudGVkIG1pZ3JhdGlvbi4gKi9cbmV4cG9ydCB0eXBlIFByZXBhcmVkTWF0Y2hSb3V0ZSA9IFByZXBhcmVkUm91dGVTZWdtZW50O1xuXG5leHBvcnQgdHlwZSBQcmVwYXJlZFJvdXRlU2VnbWVudHM8VENvbnRleHQgPSB1bmtub3duPiA9XG4gIFByZXBhcmVkUm91dGVTZWdtZW50PFRDb250ZXh0PltdO1xuXG5leHBvcnQgdHlwZSBQcmVwYXJlZFJvdXRlU2VnbWVudFNuYXBzaG90ID0ge1xuICByb3V0ZU5vZGU/OiBSb3V0ZU5vZGU7XG4gIHBhdGg/OiBzdHJpbmc7XG4gIGZ1bGxQYXRoPzogc3RyaW5nO1xuICBzZWdtZW50S2V5OiBzdHJpbmc7XG4gIHBhcmFtTmFtZXM6IHJlYWRvbmx5IHN0cmluZ1tdO1xuICBzZWdtZW50SW5kZXg6IG51bWJlcjtcbiAgcHJlcGFyZWRSZXNvdXJjZT86IFByZXBhcmVkVmFsdWVSZXNvdXJjZTtcbiAgcmVkaXJlY3RUbzogc3RyaW5nIHwgbnVsbDtcbiAgcmVzb3VyY2VQYWdlPzogUmVzb3VyY2VQYWdlIHwgbnVsbDtcbiAgc3VzcGVuc2VCb3VuZGFyeTogUm91dGVTdXNwZW5zZUJvdW5kYXJ5O1xuICBmYWxsYmFjaz86IFJvdXRlRmFsbGJhY2s7XG4gIGhpZ2hsaWdodElkPzogc3RyaW5nO1xuICBxdWVyeVNjaGVtYT86IEZpbHRlclNjaGVtYTtcbn07XG5cbi8qKlxuICogUmVzdWx0IG9mIHByZXBhcmluZyBhIG1hdGNoZWQgcm91dGUsIGluY2x1ZGluZyB0aGUgb3JkZXJlZCBjaGFpbiBvZiBuZXN0ZWQgYWN0aXZlIHNlZ21lbnRzLlxuICogQHRlbXBsYXRlIFRWYXJpYWJsZXMgLSBSb3V0ZSBwYXJhbWV0ZXIgdHlwZXMgZXh0cmFjdGVkIGZyb20gdGhlIFVSTCBwYXRoXG4gKi9cbmV4cG9ydCB0eXBlIFByZXBhcmVkUm91dGVDaGFpbjxcbiAgVFZhcmlhYmxlcyBleHRlbmRzIFBhcmFtRGF0YSxcbiAgVENvbnRleHQgPSB1bmtub3duLFxuPiA9IHtcbiAgLyoqIFRoZSBtYXRjaGVkIHJvdXRlIG9yIG51bGwgaWYgbm8gbWF0Y2ggKi9cbiAgbWF0Y2g6IFJvdXRlck1hdGNoZWRSb3V0ZTxUVmFyaWFibGVzPiB8IG51bGw7XG4gIC8qKiBPcmRlcmVkIGFjdGl2ZSBwcmVwYXJlZCBzZWdtZW50cyBmcm9tIG91dGVybW9zdCB0byBpbm5lcm1vc3QgKi9cbiAgc2VnbWVudHM6IFByZXBhcmVkUm91dGVTZWdtZW50czxUQ29udGV4dD47XG4gIC8qKiBCYWNrd2FyZC1jb21wYXRpYmxlIGFsaWFzIGtlcHQgZHVyaW5nIHRoZSBzZWdtZW50LW9yaWVudGVkIG1pZ3JhdGlvbiAqL1xuICByb3V0ZXM6IFByZXBhcmVkUm91dGVTZWdtZW50czxUQ29udGV4dD47XG59O1xuXG4vKiogQmFja3dhcmQtY29tcGF0aWJsZSBhbGlhcyBrZXB0IGR1cmluZyB0aGUgc2VnbWVudC1vcmllbnRlZCBtaWdyYXRpb24uICovXG5leHBvcnQgdHlwZSBQcmVwYXJlZE1hdGNoPFxuICBUVmFyaWFibGVzIGV4dGVuZHMgUGFyYW1EYXRhLFxuICBUQ29udGV4dCA9IHVua25vd24sXG4+ID0gUHJlcGFyZWRSb3V0ZUNoYWluPFRWYXJpYWJsZXMsIFRDb250ZXh0PjtcblxuZXhwb3J0IHR5cGUgUmVzb2x2ZWRQcmVwYXJlZFJvdXRlU2VnbWVudDxcbiAgVENvbnRleHQgPSB1bmtub3duLFxuICBUUHJlcGFyZWQgZXh0ZW5kcyBQcmVwYXJlUmVzdWx0ID0gUHJlcGFyZVJlc3VsdCxcbiAgVFZhcmlhYmxlcyBleHRlbmRzIFBhcmFtRGF0YSA9IFBhcmFtRGF0YSxcbiAgVFF1ZXJ5U2hhcGUgZXh0ZW5kcyBVbmtub3duUXVlcnlTaGFwZSA9IFVua25vd25RdWVyeVNoYXBlLFxuPiA9IHtcbiAgcm91dGVOb2RlPzogUm91dGVOb2RlO1xuICBwYXRoPzogc3RyaW5nO1xuICBmdWxsUGF0aD86IHN0cmluZztcbiAgc2VnbWVudEtleTogc3RyaW5nO1xuICBwYXJhbU5hbWVzOiByZWFkb25seSBzdHJpbmdbXTtcbiAgc2VnbWVudEluZGV4OiBudW1iZXI7XG4gIHByZXBhcmVkOiBUUHJlcGFyZWQgfCB1bmRlZmluZWQ7XG4gIHJlbmRlcj86IFJvdXRlUmVuZGVyPFRDb250ZXh0LCBUUHJlcGFyZWQsIFRWYXJpYWJsZXMsIFRRdWVyeVNoYXBlPjtcbiAgcmVkaXJlY3RUbzogc3RyaW5nIHwgbnVsbDtcbiAgcmVzb3VyY2VQYWdlPzogUmVzb3VyY2VQYWdlIHwgbnVsbDtcbiAgc3VzcGVuc2VCb3VuZGFyeTogUm91dGVTdXNwZW5zZUJvdW5kYXJ5O1xuICBmYWxsYmFjaz86IFJvdXRlRmFsbGJhY2s8VENvbnRleHQ+O1xuICBoaWdobGlnaHRJZD86IHN0cmluZztcbiAgcXVlcnlTY2hlbWE/OiBGaWx0ZXJTY2hlbWE7XG59O1xuXG5leHBvcnQgdHlwZSBSZXNvbHZlZFByZXBhcmVkTWF0Y2hSb3V0ZSA9IFJlc29sdmVkUHJlcGFyZWRSb3V0ZVNlZ21lbnQ7XG5cbmV4cG9ydCB0eXBlIFJlc29sdmVkUHJlcGFyZWRSb3V0ZUNoYWluPFxuICBUVmFyaWFibGVzIGV4dGVuZHMgUGFyYW1EYXRhLFxuICBUQ29udGV4dCA9IHVua25vd24sXG4+ID0ge1xuICBtYXRjaDogUm91dGVyTWF0Y2hlZFJvdXRlPFRWYXJpYWJsZXM+IHwgbnVsbDtcbiAgc2VnbWVudHM6IFJlc29sdmVkUHJlcGFyZWRSb3V0ZVNlZ21lbnQ8VENvbnRleHQ+W107XG4gIHJvdXRlczogUmVzb2x2ZWRQcmVwYXJlZFJvdXRlU2VnbWVudDxUQ29udGV4dD5bXTtcbn07XG5cbmV4cG9ydCB0eXBlIFJlc29sdmVkUHJlcGFyZWRNYXRjaDxcbiAgVFZhcmlhYmxlcyBleHRlbmRzIFBhcmFtRGF0YSxcbiAgVENvbnRleHQgPSB1bmtub3duLFxuPiA9IFJlc29sdmVkUHJlcGFyZWRSb3V0ZUNoYWluPFRWYXJpYWJsZXMsIFRDb250ZXh0PjtcblxuLyoqXG4gKiBDb21wbGV0ZSByb3V0ZSBlbnRyeSByZXByZXNlbnRpbmcgdGhlIGN1cnJlbnQgcm91dGVyIHN0YXRlLlxuICogQHRlbXBsYXRlIFRWYXJpYWJsZXMgLSBSb3V0ZSBwYXJhbWV0ZXIgdHlwZXMgZXh0cmFjdGVkIGZyb20gdGhlIFVSTCBwYXRoXG4gKi9cbmV4cG9ydCB0eXBlIFJvdXRlRW50cnk8XG4gIFRWYXJpYWJsZXMgZXh0ZW5kcyBQYXJhbURhdGEsXG4gIFMgZXh0ZW5kcyBGaWx0ZXJTY2hlbWEgfCB1bmRlZmluZWQgPSBGaWx0ZXJTY2hlbWEgfCB1bmRlZmluZWQsXG4gIFRDb250ZXh0ID0gdW5rbm93bixcbj4gPSB7XG4gIC8qKiBUaGUgcHJlcGFyZWQgbWF0Y2ggd2l0aCBsb2FkZWQgZGF0YSBhbmQgY29tcG9uZW50cyAqL1xuICBwcmVwYXJlZE1hdGNoOiBQcmVwYXJlZFJvdXRlQ2hhaW48VFZhcmlhYmxlcywgVENvbnRleHQ+O1xuICAvKiogR2xvYmFsIGxvYWQgc3RhdGUgZm9yIHRoZSBhY3RpdmUgcm91dGUuICovXG4gIGFjdGl2ZUxvYWRTdGF0ZTogUm91dGVyQWN0aXZlTG9hZFN0YXRlO1xuICAvKiogUGVyLXNlZ21lbnQgbG9hZCBzdGF0ZSBkZXRhaWxzIGZvciB0aGUgYWN0aXZlIHJvdXRlLiAqL1xuICBsb2FkU3RhdGU6IFJvdXRlckxvYWRTdGF0ZTtcbiAgLyoqIFJvdXRlci1sZXZlbCBjb250ZXh0IHJlc29sdmVkIGZvciB0aGlzIGVudHJ5ICovXG4gIGNvbnRleHQ6IFRDb250ZXh0O1xuICAvKiogQ3VycmVudCBicm93c2VyIGxvY2F0aW9uICovXG4gIGxvY2F0aW9uOiBMb2NhdGlvbjtcbiAgLyoqIFRoZSBtYXRjaGVkIHJvdXRlIG9yIG51bGwgaWYgbm8gbWF0Y2ggKi9cbiAgcm91dGU6IFJvdXRlck1hdGNoZWRSb3V0ZTxUVmFyaWFibGVzPiB8IG51bGw7XG4gIC8qKiBXaGV0aGVyIHRvIGZvcmNlIGEgcmUtcmVuZGVyIGV2ZW4gaWYgdGhlIHBhdGggaGFzbid0IGNoYW5nZWQgKi9cbiAgZm9yY2VSZXJlbmRlcjogYm9vbGVhbjtcbiAgLyoqIFJhdyBzZWFyY2ggc3RyaW5nIChxdWVyeSBwYXJ0KSBvZiB0aGUgbG9jYXRpb24gZm9yIGNoYW5nZSBkZXRlY3Rpb24gKi9cbiAgcmF3U2VhcmNoPzogc3RyaW5nO1xuICAvKiogUGFyc2VkIHJhdyBxdWVyeSBwYXJhbWV0ZXJzICh2YWx1ZXMgYWdncmVnYXRlZDsgZHVwbGljYXRlcyA9PiBhcnJheSkgKi9cbiAgcXVlcnk6IFJhd1F1ZXJ5O1xuICAvKiogTGVnYWN5IHR5cGVkUXVlcnkgcmVtb3ZlZCDigJMgdW5pZmllZCBmaWx0ZXJzIGhhbmRsZSB0eXBlZCBhY2Nlc3MgKi9cbiAgLy8gdHlwZWRRdWVyeT86IG5ldmVyO1xuICAvKiogUGFyc2VkIGZpbHRlcnMgb2JqZWN0IGRlcml2ZWQgZnJvbSB0aGUgZGVlcGVzdCBhY3RpdmUgcXVlcnlTY2hlbWEgKGlmIGFueSkgKi9cbiAgZmlsdGVycz86IFMgZXh0ZW5kcyBGaWx0ZXJTY2hlbWEgPyBJbmZlckZpbHRlclJlc3VsdDxTPiA6IFVua25vd25GaWx0ZXJzO1xuICAvKiogRGlhZ25vc3RpY3MgZnJvbSBmaWx0ZXIgcGFyc2luZyAoaWYgYW55KSAqL1xuICBmaWx0ZXJEaWFnbm9zdGljcz86IEZpbHRlckRpYWdub3N0aWNbXTtcbiAgLyoqIERlZXBlc3QgYWN0aXZlIHF1ZXJ5IHNjaGVtYSAoRmlsdGVyU2NoZW1hIGZyb20gQHBsdW1pbGUvZmlsdGVyLXF1ZXJ5KSBmb3IgY3VycmVudCBtYXRjaGVkIHJvdXRlICovXG4gIGFjdGl2ZVF1ZXJ5U2NoZW1hPzogUztcbn07XG5cbi8vIFF1ZXJ5U2NoZW1hICYgZGVzY3JpcHRvcnMgcmVtb3ZlZCAoUGhhc2UgMiB1bmlmaWVkIG1vZGVsKSDigJMgaGlzdG9yaWNhbCB0eXBlcyBpbnRlbnRpb25hbGx5IG9taXR0ZWQuXG5cbi8qKlxuICogSFRUUCBzdGF0dXMgY29kZXMgZm9yIHJlZGlyZWN0cy5cbiAqL1xuZXhwb3J0IHR5cGUgUm91dGVyUmVkaXJlY3RTdGF0dXMgPSAzMDEgfCAzMDI7XG5cbi8qKlxuICogUmVwcmVzZW50cyBhIG1hdGNoZWQgcm91dGUgd2l0aCByZWdleCBtYXRjaCByZXN1bHQuXG4gKiBAdGVtcGxhdGUgVFZhcmlhYmxlcyAtIFJvdXRlIHBhcmFtZXRlciB0eXBlcyBleHRyYWN0ZWQgZnJvbSB0aGUgVVJMIHBhdGhcbiAqL1xuZXhwb3J0IHR5cGUgTWF0Y2hlZFJvdXRlPFRWYXJpYWJsZXMgZXh0ZW5kcyBQYXJhbURhdGE+ID0ge1xuICAvKiogVGhlIHJlZ2V4IG1hdGNoIHJlc3VsdCAqL1xuICBtYXRjaDogUmVnRXhwRXhlY0FycmF5O1xuICAvKiogVGhlIGZsYXQgcm91dGUgdGhhdCB3YXMgbWF0Y2hlZCAqL1xuICByb3V0ZTogRmxhdFJvdXRlPFRWYXJpYWJsZXM+O1xufTtcblxuLyoqXG4gKiBDb25maWd1cmF0aW9uIGZvciBhIHJvdXRlIHJlZGlyZWN0LlxuICovXG5leHBvcnQgdHlwZSBSZWRpcmVjdCA9IHtcbiAgLyoqIE9wdGlvbmFsIHNvdXJjZSBwYXRoIHBhdHRlcm4gKi9cbiAgcGF0aD86IHN0cmluZztcbiAgLyoqIERlc3RpbmF0aW9uIHBhdGggZm9yIHRoZSByZWRpcmVjdCAqL1xuICB0bzogc3RyaW5nO1xuICAvKiogSFRUUCBzdGF0dXMgY29kZSBmb3IgdGhlIHJlZGlyZWN0ICovXG4gIHN0YXR1cz86IFJvdXRlclJlZGlyZWN0U3RhdHVzO1xufTtcblxuLyoqIE1pbmltYWwgZXJhc2VkIHJvdXRlIG5vZGUgc2hhcGUgdXNlZCBieSBydW50aW1lIGhlbHBlcnMgYW5kIHJlY3Vyc2l2ZSByb3V0ZSB0cmVlcy4gKi9cbmV4cG9ydCB0eXBlIFJvdXRlTm9kZSA9IHtcbiAgY2hpbGRyZW4/OiByZWFkb25seSAoUm91dGVOb2RlIHwgUmVkaXJlY3QpW107XG4gIHBhdGg/OiBzdHJpbmc7XG4gIHByZXBhcmU/OiBCaXZhcmlhbnRDYWxsYmFjazxcbiAgICAocGFyYW1zOiBQcmVwYXJlUGFyYW1zPGFueSwgYW55LCBhbnk+KSA9PiB1bmtub3duXG4gID47XG4gIHByZXBhcmVTZWFyY2hCZWhhdmlvcj86IFJvdXRlUHJlcGFyZVNlYXJjaEJlaGF2aW9yO1xuICBxdWVyeVNjaGVtYT86IEZpbHRlclNjaGVtYTtcbiAgcmVuZGVyPzogQml2YXJpYW50Q2FsbGJhY2s8XG4gICAgKFxuICAgICAgb3B0czogUm91dGVSZW5kZXJPcHRzPGFueSwgYW55LCBhbnksIGFueT4sXG4gICAgKSA9PlxuICAgICAgUmVhY3RFbGVtZW50IHwgbnVsbCB8IHVuZGVmaW5lZCB8IFByb21pc2U8UmVhY3RFbGVtZW50IHwgbnVsbCB8IHVuZGVmaW5lZD5cbiAgPjtcbiAgcmVzb3VyY2VQYWdlPzogUmVzb3VyY2VQYWdlIHwgbnVsbDtcbiAgc3VzcGVuc2VCb3VuZGFyeT86IFJvdXRlU3VzcGVuc2VCb3VuZGFyeTtcbiAgZmFsbGJhY2s/OiBSb3V0ZUZhbGxiYWNrPGFueT47XG59O1xuXG4vKipcbiAqIEJhc2UgdHlwZSBmb3IgZGF0YSBwcmVwYXJlZCBieSByb3V0ZSBwcmVwYXJlIGZ1bmN0aW9ucy5cbiAqL1xuZXhwb3J0IHR5cGUgUHJlcGFyZVJlc3VsdCA9IHVua25vd247XG5cbi8qKlxuICogUGFyYW1ldGVycyBwYXNzZWQgdG8gYSByb3V0ZSdzIHByZXBhcmUgZnVuY3Rpb24uXG4gKiBAdGVtcGxhdGUgVFZhcmlhYmxlcyAtIFJvdXRlIHBhcmFtZXRlciB0eXBlcyBleHRyYWN0ZWQgZnJvbSB0aGUgVVJMIHBhdGhcbiAqL1xuZXhwb3J0IHR5cGUgUHJlcGFyZVBhcmFtczxcbiAgVENvbnRleHQsXG4gIFRWYXJpYWJsZXMgZXh0ZW5kcyBQYXJhbURhdGEsXG4gIFRRdWVyeVNoYXBlIGV4dGVuZHMgVW5rbm93blF1ZXJ5U2hhcGUgPSBVbmtub3duUXVlcnlTaGFwZSxcbiAgUyBleHRlbmRzIEZpbHRlclNjaGVtYSB8IHVuZGVmaW5lZCA9IEZpbHRlclNjaGVtYSB8IHVuZGVmaW5lZCxcbj4gPSB7XG4gIC8qKiBUaGUgbWF0Y2hlZCByb3V0ZSB3aXRoIGV4dHJhY3RlZCBwYXJhbWV0ZXJzICovXG4gIG1hdGNoOiBSb3V0ZXJNYXRjaGVkUm91dGU8VFZhcmlhYmxlcz47XG4gIC8qKiBUaGUgZmxhdCByb3V0ZSB0aGF0IHdhcyBtYXRjaGVkICovXG4gIG1hdGNoZWRSb3V0ZTogRmxhdFJvdXRlPFRWYXJpYWJsZXM+O1xuICAvKiogUm91dGVyLWxldmVsIGNvbnRleHQgKi9cbiAgY29udGV4dDogVENvbnRleHQ7XG4gIC8qKiBSZXNvdXJjZSBwYWdlIGZvciBsYXp5LWxvYWRlZCBjb21wb25lbnRzICovXG4gIHJlc291cmNlUGFnZT86IFJlc291cmNlUGFnZSB8IG51bGw7XG4gIC8qKiBFeHRyYWN0ZWQgVVJMIHBhcmFtZXRlcnMgKi9cbiAgdmFyaWFibGVzOiBUVmFyaWFibGVzO1xuICAvKiogUmF3IFVSTCBxdWVyeSB2YWx1ZXMuICovXG4gIHF1ZXJ5OiBUUXVlcnlTaGFwZTtcbiAgLyoqIFJhdyBxdWVyeSB2YWx1ZXMgYmVmb3JlIHNjaGVtYSBwYXJzaW5nLiAqL1xuICByYXdRdWVyeTogUmF3UXVlcnk7XG4gIC8qKiBQYXJzZWQgZmlsdGVycyB3aGVuIHRoaXMgZGVzdGluYXRpb24gZGVjbGFyZXMgYSBxdWVyeSBzY2hlbWEuICovXG4gIGZpbHRlcnM6IFMgZXh0ZW5kcyBGaWx0ZXJTY2hlbWFcbiAgICA/IEluZmVyRmlsdGVyUmVzdWx0PFM+XG4gICAgOiBVbmtub3duRmlsdGVycyB8IHVuZGVmaW5lZDtcbn07XG5cbi8qKiBBbGlhcyBmb3IgcHJlcGFyZSBhcmdzIChrZXB0IGZvciBwdWJsaWMgQVBJIGNsYXJpdHkpLiAqL1xuZXhwb3J0IHR5cGUgUm91dGVQcmVwYXJlQXJnczxcbiAgVENvbnRleHQsXG4gIFRWYXJpYWJsZXMgZXh0ZW5kcyBQYXJhbURhdGEgPSBQYXJhbURhdGEsXG4gIFRRdWVyeVNoYXBlIGV4dGVuZHMgVW5rbm93blF1ZXJ5U2hhcGUgPSBVbmtub3duUXVlcnlTaGFwZSxcbiAgUyBleHRlbmRzIEZpbHRlclNjaGVtYSB8IHVuZGVmaW5lZCA9IEZpbHRlclNjaGVtYSB8IHVuZGVmaW5lZCxcbj4gPSBQcmVwYXJlUGFyYW1zPFRDb250ZXh0LCBUVmFyaWFibGVzLCBUUXVlcnlTaGFwZSwgUz47XG5cbi8qKlxuICogRnVuY3Rpb24gdG8gcHJlcGFyZSBkYXRhIGZvciBhIHJvdXRlIGJlZm9yZSByZW5kZXJpbmcuXG4gKiBAdGVtcGxhdGUgVFByZXBhcmVkIC0gVGhlIHR5cGUgb2YgZGF0YSB0aGlzIGZ1bmN0aW9uIHJldHVybnNcbiAqIEB0ZW1wbGF0ZSBUVmFyaWFibGVzIC0gUm91dGUgcGFyYW1ldGVyIHR5cGVzIGV4dHJhY3RlZCBmcm9tIHRoZSBVUkwgcGF0aFxuICovXG5leHBvcnQgdHlwZSBSb3V0ZVByZXBhcmU8XG4gIFRDb250ZXh0LFxuICBUUHJlcGFyZWQgZXh0ZW5kcyBQcmVwYXJlUmVzdWx0LFxuICBUVmFyaWFibGVzIGV4dGVuZHMgUGFyYW1EYXRhID0gUGFyYW1EYXRhLFxuICBUUXVlcnlTaGFwZSBleHRlbmRzIFVua25vd25RdWVyeVNoYXBlID0gVW5rbm93blF1ZXJ5U2hhcGUsXG4gIFMgZXh0ZW5kcyBGaWx0ZXJTY2hlbWEgfCB1bmRlZmluZWQgPSBGaWx0ZXJTY2hlbWEgfCB1bmRlZmluZWQsXG4+ID0gQml2YXJpYW50Q2FsbGJhY2s8XG4gIChcbiAgICBwYXJhbXM6IFByZXBhcmVQYXJhbXM8VENvbnRleHQsIFRWYXJpYWJsZXMsIFRRdWVyeVNoYXBlLCBTPixcbiAgKSA9PiBNYXliZVByb21pc2U8VFByZXBhcmVkPlxuPjtcblxuLyoqXG4gKiBDb25maWd1cmF0aW9uIGZvciBhIHNpbmdsZSByb3V0ZSBpbiB0aGUgcm91dGVyLlxuICogQHRlbXBsYXRlIFRQcmVwYXJlZCAtIFRoZSB0eXBlIG9mIHByZXBhcmVkIGRhdGEgcmV0dXJuZWQgYnkgdGhlIHJvdXRlJ3MgcHJlcGFyZSBmdW5jdGlvblxuICogQHRlbXBsYXRlIFRWYXJpYWJsZXMgLSBSb3V0ZSBwYXJhbWV0ZXIgdHlwZXMgZXh0cmFjdGVkIGZyb20gdGhlIFVSTCBwYXRoXG4gKi9cbmV4cG9ydCB0eXBlIFJvdXRlPFxuICBUQ29udGV4dCxcbiAgVFByZXBhcmVkIGV4dGVuZHMgUHJlcGFyZVJlc3VsdCxcbiAgVFZhcmlhYmxlcyBleHRlbmRzIFBhcmFtRGF0YSA9IFBhcmFtRGF0YSxcbiAgVFF1ZXJ5U2hhcGUgZXh0ZW5kcyBVbmtub3duUXVlcnlTaGFwZSA9IFVua25vd25RdWVyeVNoYXBlLFxuICBTIGV4dGVuZHMgRmlsdGVyU2NoZW1hIHwgdW5kZWZpbmVkID0gRmlsdGVyU2NoZW1hIHwgdW5kZWZpbmVkLFxuICBUQ2hpbGRyZW4gZXh0ZW5kcyByZWFkb25seSAoUm91dGVOb2RlIHwgUmVkaXJlY3QpW10gfCB1bmRlZmluZWQgPVxuICAgIHJlYWRvbmx5IChSb3V0ZU5vZGUgfCBSZWRpcmVjdClbXSB8IHVuZGVmaW5lZCxcbj4gPSB7XG4gIC8qKlxuICAgKiBOZXN0ZWQgY2hpbGQgcm91dGVzIG9yIHJlZGlyZWN0cy5cbiAgICpcbiAgICogSU1QT1JUQU5UOiBUaGlzIHVzZWQgdG8gYmUgdHlwZWQgYXMgYChSb3V0ZTxhbnksIFByZXBhcmVSZXN1bHQ+IHwgUmVkaXJlY3QpW11gIHdoaWNoXG4gICAqIHdpZGVuZWQgKGVyYXNlZCkgdGhlIGdlbmVyaWMgcGFyYW1ldGVyIHR5cGVzIChub3RhYmx5IHRoZSBgVFZhcmlhYmxlc2Agb2YgZWFjaFxuICAgKiBjaGlsZCkuIFRoYXQgY2F1c2VkIFR5cGVTY3JpcHQgdG8gdHJlYXQgZXZlcnkgY2hpbGQgcm91dGUncyBgcHJlcGFyZWAgY2FsbGJhY2tcbiAgICogYXMgYWNjZXB0aW5nIHRoZSBkZWZhdWx0IGBQYXJhbURhdGFgIHNoYXBlIChlZmZlY3RpdmVseSBgUGFydGlhbDxSZWNvcmQ8c3RyaW5nLHN0cmluZ3xzdHJpbmdbXT4+YCkuXG4gICAqIFdoZW4gdXNlciBjb2RlIHNwZWNpZmllZCBhIG1vcmUgc3BlY2lmaWMgcGFyYW1ldGVyIG9iamVjdCAoZS5nLiBgeyBzbHVnOiBzdHJpbmcgfWApXG4gICAqIGZvciBhIHBhdGggbGlrZSBgOnNsdWdgLCB0aGUgZnVuY3Rpb24gdHlwZSBiZWNhbWUgbm9u4oCRYXNzaWduYWJsZSBiZWNhdXNlIGl0c1xuICAgKiBwYXJhbWV0ZXIgd2FzIHN0cmljdGVyIHRoYW4gdGhlIHdpZGVuZWQgdmVyc2lvbi4gQnkgc3dpdGNoaW5nIHRvIGBBbnlSb3V0ZWAgd2VcbiAgICogcmV0YWluIGBhbnlgIGluIHRoZSBlcmFzZWQgcG9zaXRpb24gaW5zdGVhZCBvZiBhIGNvbmNyZXRlIGBQYXJhbURhdGFgLCB3aGljaFxuICAgKiBhbGxvd3Mgc3RyaWN0ZXIgY2hpbGQgYHZhcmlhYmxlc2Agc2hhcGVzIHdpdGhvdXQgY29uZmxpY3QuXG4gICAqXG4gICAqIFVzaW5nIGBBbnlSb3V0ZWAgcHVycG9zZWx5IHByZXNlcnZlcyBpbmRlcGVuZGVuY2Ugb2YgZWFjaCByb3V0ZSdzIGdlbmVyaWNcbiAgICogcGFyYW1ldGVycyB3aGlsZSBzdGlsbCBrZWVwaW5nIHJ1bnRpbWUgcmVwcmVzZW50YXRpb24gaWRlbnRpY2FsLlxuICAgKi9cbiAgY2hpbGRyZW4/OiBUQ2hpbGRyZW47XG4gIC8qKiBSZXNvdXJjZSBwYWdlIGZvciBsYXp5LWxvYWRlZCBjb21wb25lbnRzICovXG4gIHJlc291cmNlUGFnZT86IFJlc291cmNlUGFnZSB8IG51bGw7XG4gIC8qKiBDb250cm9scyB3aGV0aGVyIHRoaXMgcm91dGUgc2VnbWVudCBvd25zIGEgbG9jYWwgU3VzcGVuc2UgYm91bmRhcnkuICovXG4gIHN1c3BlbnNlQm91bmRhcnk/OiBSb3V0ZVN1c3BlbnNlQm91bmRhcnk7XG4gIC8qKiBGYWxsYmFjayB1c2VkIGJ5IHRoaXMgcm91dGUgc2VnbWVudCB3aGVuIGl0cyBsb2NhbCBTdXNwZW5zZSBib3VuZGFyeSBpcyBhY3RpdmUuICovXG4gIGZhbGxiYWNrPzogUm91dGVGYWxsYmFjazxUQ29udGV4dD47XG4gIC8qKiBVUkwgcGF0aCBwYXR0ZXJuIGZvciB0aGlzIHJvdXRlICovXG4gIHBhdGg/OiBzdHJpbmc7XG4gIC8qKiBGdW5jdGlvbiB0byBwcmVwYXJlIGRhdGEgYmVmb3JlIHJlbmRlcmluZyAqL1xuICBwcmVwYXJlPzogUm91dGVQcmVwYXJlPFRDb250ZXh0LCBUUHJlcGFyZWQsIFRWYXJpYWJsZXMsIFRRdWVyeVNoYXBlLCBTPjtcbiAgLyoqXG4gICAqIENvbnRyb2xzIHdoZXRoZXIgdGhpcyByb3V0ZSdzIHByZXBhcmUgZnVuY3Rpb24gc2hvdWxkIHJ1biBhZ2FpbiB3aGVuIG9ubHlcbiAgICogdGhlIFVSTCBzZWFyY2ggY2hhbmdlcy4gRGVmYXVsdHMgdG8gYGFsd2F5c2AgZm9yIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5LlxuICAgKi9cbiAgcHJlcGFyZVNlYXJjaEJlaGF2aW9yPzogUm91dGVQcmVwYXJlU2VhcmNoQmVoYXZpb3I7XG4gIC8qKiBDdXN0b20gcmVuZGVyIGZ1bmN0aW9uIGZvciB0aGlzIHJvdXRlICovXG4gIHJlbmRlcj86IFJvdXRlUmVuZGVyPFRDb250ZXh0LCBUUHJlcGFyZWQsIFRWYXJpYWJsZXMsIFRRdWVyeVNoYXBlLCBTPjtcbiAgLyoqIFVuaWZpZWQgc2NoZW1hIChmaWx0ZXIgLyBxdWVyeSkgKi9cbiAgcXVlcnlTY2hlbWE/OiBTO1xufTtcblxuLyoqXG4gKiBQcm9wcyBwYXNzZWQgdG8gUm91dGVDb21wb25lbnQgaW5zdGFuY2VzLlxuICogQHRlbXBsYXRlIFRWYXJpYWJsZXMgLSBSb3V0ZSBwYXJhbWV0ZXIgdHlwZXMgZXh0cmFjdGVkIGZyb20gdGhlIFVSTCBwYXRoXG4gKi9cbmV4cG9ydCB0eXBlIFJvdXRlQ29tcG9uZW50UHJvcHM8XG4gIFRWYXJpYWJsZXMgZXh0ZW5kcyBQYXJhbURhdGEsXG4gIFMgZXh0ZW5kcyBGaWx0ZXJTY2hlbWEgfCB1bmRlZmluZWQgPSBGaWx0ZXJTY2hlbWEgfCB1bmRlZmluZWQsXG4gIFRRdWVyeVNoYXBlIGV4dGVuZHMgVW5rbm93blF1ZXJ5U2hhcGUgPSBVbmtub3duUXVlcnlTaGFwZSxcbj4gPSB7XG4gIC8qKiBDaGlsZCBjb21wb25lbnRzIHRvIHJlbmRlciAqL1xuICBjaGlsZHJlbjogUmVhY3RFbGVtZW50O1xuICAvKiogUm91dGVyIGNvbnRleHQgY29udGFpbmluZyBuYXZpZ2F0aW9uIGFuZCBzdGF0ZSAqL1xuICByb3V0ZXJDb250ZXh0OiBSb3V0aW5nQ29udGV4dFR5cGU8VFZhcmlhYmxlcywgUywgVFF1ZXJ5U2hhcGU+O1xuICAvKiogVGhlIHJvdXRlIGNvbmZpZ3VyYXRpb24gKi9cbiAgcm91dGU6IFJvdXRlPHVua25vd24sIHVua25vd24sIFBhcmFtRGF0YSwgVW5rbm93blF1ZXJ5U2hhcGUsIFM+O1xufTtcblxuLyoqXG4gKiBDYWxsYmFjayBmdW5jdGlvbiBmb3Igcm91dGUgY2hhbmdlcy5cbiAqIEB0ZW1wbGF0ZSBUVmFyaWFibGVzIC0gUm91dGUgcGFyYW1ldGVyIHR5cGVzIGV4dHJhY3RlZCBmcm9tIHRoZSBVUkwgcGF0aFxuICovXG5leHBvcnQgdHlwZSBTdWJzY3JpYmVDYWxsYmFjazxcbiAgVFZhcmlhYmxlcyBleHRlbmRzIFBhcmFtRGF0YSxcbiAgUyBleHRlbmRzIEZpbHRlclNjaGVtYSB8IHVuZGVmaW5lZCA9IEZpbHRlclNjaGVtYSB8IHVuZGVmaW5lZCxcbiAgVENvbnRleHQgPSB1bmtub3duLFxuPiA9IChuZXh0RW50cnk6IFJvdXRlRW50cnk8VFZhcmlhYmxlcywgUywgVENvbnRleHQ+KSA9PiB2b2lkO1xuXG5leHBvcnQgdHlwZSBQcmVsb2FkVGFyZ2V0ID0ge1xuICBwYXRobmFtZTogc3RyaW5nO1xuICBzZWFyY2g/OiBzdHJpbmc7XG4gIHNvdXJjZT86IHN0cmluZztcbn07XG5cbi8qKlxuICogUm91dGVyIGNvbnRleHQgdHlwZSB0aGF0IHByb3ZpZGVzIG5hdmlnYXRpb24gYW5kIHN0YXRlIG1hbmFnZW1lbnQuXG4gKiBAdGVtcGxhdGUgVFZhcmlhYmxlcyAtIFJvdXRlIHBhcmFtZXRlciB0eXBlcyBleHRyYWN0ZWQgZnJvbSB0aGUgVVJMIHBhdGhcbiAqL1xuZXhwb3J0IHR5cGUgUm91dGluZ0NvbnRleHRUeXBlPFxuICBUVmFyaWFibGVzIGV4dGVuZHMgUGFyYW1EYXRhLFxuICBTIGV4dGVuZHMgRmlsdGVyU2NoZW1hIHwgdW5kZWZpbmVkID0gRmlsdGVyU2NoZW1hIHwgdW5kZWZpbmVkLFxuICBUUXVlcnlTaGFwZSBleHRlbmRzIFVua25vd25RdWVyeVNoYXBlID0gVW5rbm93blF1ZXJ5U2hhcGUsXG4gIFRDb250ZXh0ID0gdW5rbm93bixcbj4gPSB7XG4gIC8qKlxuICAgKiBTZXJpYWxpemVzIHF1ZXJ5IHBhcmFtZXRlcnMgYW5kIGZpbHRlcnMgd2l0aCB0aGUgc2NoZW1hIG9mIHRoZSBkZXN0aW5hdGlvblxuICAgKiByb3V0ZS4gVW5saWtlIG5hdmlnYXRlKCksIHRoaXMgb25seSBpbmNsdWRlcyB2YWx1ZXMgc3VwcGxpZWQgYnkgdGhlIGNhbGxlci5cbiAgICovXG4gIGJ1aWxkU2VhcmNoOiAob3B0czoge1xuICAgIHBhdGhuYW1lPzogc3RyaW5nO1xuICAgIHF1ZXJ5PzogVW5rbm93blF1ZXJ5U2hhcGU7XG4gICAgZmlsdGVycz86IFVua25vd25GaWx0ZXJzO1xuICB9KSA9PiBzdHJpbmc7XG4gIC8qKiBCcm93c2VyIGhpc3RvcnkgaW5zdGFuY2UgZm9yIG5hdmlnYXRpb24gKi9cbiAgaGlzdG9yeTogQnJvd3Nlckhpc3Rvcnk7XG4gIC8qKiBHZXQgdGhlIGN1cnJlbnQgcm91dGUgZW50cnkgKi9cbiAgZ2V0OiAoKSA9PiBSb3V0ZUVudHJ5PFRWYXJpYWJsZXMsIFMsIFRDb250ZXh0PjtcbiAgLyoqIFByZWxvYWQgY29kZSBmb3IgYSByb3V0ZSB3aXRob3V0IHN0b3JpbmcgdGhlIHJlc3VsdCAqL1xuICBwcmVsb2FkQ29kZTogKHRhcmdldDogUHJlbG9hZFRhcmdldCkgPT4gdm9pZDtcbiAgLyoqIFByZWxvYWQgY29kZSBhbmQgZGF0YSBmb3IgYSByb3V0ZSB3aXRob3V0IHN0b3JpbmcgdGhlIHJlc3VsdCAqL1xuICBwcmVsb2FkOiAodGFyZ2V0OiBQcmVsb2FkVGFyZ2V0KSA9PiB2b2lkO1xuICAvKiogU3Vic2NyaWJlIHRvIHJvdXRlIGNoYW5nZXMgKHNjaGVtYSBkZXJpdmFibGUsIG5vdCBuZWVkZWQgaW4gc2lnbmF0dXJlKSAqL1xuICBzdWJzY3JpYmU6IChcbiAgICBjYWxsYmFjazogU3Vic2NyaWJlQ2FsbGJhY2s8VFZhcmlhYmxlcywgUywgVENvbnRleHQ+LFxuICApID0+ICgpID0+IHZvaWQ7XG4gIC8qKiBOYXZpZ2F0ZSB3aXRoIG9wdGlvbmFsIHBhdGhuYW1lIGFuZCB0eXBlZC9yYXcgcXVlcnkgb2JqZWN0ICovXG4gIG5hdmlnYXRlOiAob3B0czoge1xuICAgIHBhdGhuYW1lPzogc3RyaW5nO1xuICAgIHF1ZXJ5PzogVFF1ZXJ5U2hhcGU7XG4gICAgLyoqIE9wdGlvbmFsIGZpbHRlcnMgb2JqZWN0IHRvIHNlcmlhbGl6ZSB1c2luZyB0aGUgYWN0aXZlIHF1ZXJ5U2NoZW1hICovXG4gICAgZmlsdGVycz86IFMgZXh0ZW5kcyBGaWx0ZXJTY2hlbWEgPyBJbmZlckZpbHRlclJlc3VsdDxTPiA6IFVua25vd25GaWx0ZXJzO1xuICAgIGhhc2g/OiBzdHJpbmc7XG4gICAgcmVwbGFjZT86IGJvb2xlYW47XG4gIH0pID0+IHZvaWQ7XG59O1xuXG4vKipcbiAqIFJldHVybiB0eXBlIGZvciByZXNvdXJjZSBwYWdlIGxvYWRlcnMuXG4gKi9cbmV4cG9ydCB0eXBlIFJlc291cmNlUGFnZVJldHVybiA9XG4gIHsgZGVmYXVsdDogQ29tcG9uZW50VHlwZTxhbnk+IH0gfCBDb21wb25lbnRUeXBlPGFueT47XG5cbi8qKlxuICogRnVuY3Rpb24gdGhhdCBsb2FkcyBhIHJlc291cmNlIHBhZ2UgY29tcG9uZW50LlxuICovXG5leHBvcnQgdHlwZSBSZXNvdXJjZVBhZ2VMb2FkZXIgPSAoKSA9PiBQcm9taXNlPFJlc291cmNlUGFnZVJldHVybj47XG5cbmV4cG9ydCB0eXBlIFByZXBhcmVkVmFsdWVSZXNvdXJjZTxcbiAgVFByZXBhcmVkIGV4dGVuZHMgUHJlcGFyZVJlc3VsdCA9IFByZXBhcmVSZXN1bHQsXG4+ID0gUmVhZGFibGVSZXNvdXJjZTxUUHJlcGFyZWQ+O1xuXG4vKiogVXRpbGl0eTogaW5mZXIgZmlsdGVycyB0eXBlIGZvciBhIGdpdmVuIHF1ZXJ5IHNjaGVtYSAqL1xuZXhwb3J0IHR5cGUgSW5mZXJGaWx0ZXJzPFMgZXh0ZW5kcyBGaWx0ZXJTY2hlbWEgfCB1bmRlZmluZWQ+ID1cbiAgUyBleHRlbmRzIEZpbHRlclNjaGVtYSA/IEluZmVyRmlsdGVyUmVzdWx0PFM+IDogUmVjb3JkPHN0cmluZywgbmV2ZXI+O1xuXG5leHBvcnQgdHlwZSB7IEZpbHRlclNjaGVtYSB9O1xuXG4vKiogUmUtZXhwb3J0IGhlbHBlciBmaWx0ZXItcXVlcnkgdHlwZSBmb3IgdXNlciBjb252ZW5pZW5jZSAqL1xuZXhwb3J0IHR5cGUgeyBJbmZlckZpbHRlckZpZWxkIGFzIEluZmVyRmllbGQgfTtcblxuLyoqXG4gKiBTdHJvbmdseSB0eXBlZCBmaWx0ZXIgYWN0aW9ucyAoUGhhc2UgMSBiYXNlIHR5cGVzKS4gSW1wbGVtZW50YXRpb24gd2lsbCBiZSB3aXJlZFxuICogaW4gYSBsYXRlciBwaGFzZSB3aGVuIGB1c2VGaWx0ZXJzYCBiZWNvbWVzIGdlbmVyaWMuXG4gKlxuICogUzogU2NoZW1hIHR5cGUgcGFzc2VkIHRvIHRoZSBob29rL3JvdXRlLlxuICovXG5leHBvcnQgdHlwZSBUeXBlZEZpbHRlckFjdGlvbnM8UyBleHRlbmRzIEZpbHRlclNjaGVtYT4gPSB7XG4gIC8qKiBTZXQgb3IgdW5zZXQgKHZhbHVlID0gdW5kZWZpbmVkKSBhIHNwZWNpZmljIG9wZXJhdG9yIHZhbHVlIGZvciBhIGZpZWxkICovXG4gIHNldDogPFxuICAgIEYgZXh0ZW5kcyBrZXlvZiBTICYgc3RyaW5nLFxuICAgIE8gZXh0ZW5kcyBrZXlvZiBOb25OdWxsYWJsZTxJbmZlckZpbHRlclJlc3VsdDxTPltGXT4gJiBzdHJpbmcsXG4gID4oXG4gICAgZmllbGQ6IEYsXG4gICAgb3BlcmF0b3I6IE8sXG4gICAgdmFsdWU6IE5vbk51bGxhYmxlPEluZmVyRmlsdGVyUmVzdWx0PFM+W0ZdPltPXSB8IHVuZGVmaW5lZCxcbiAgICBvcHRzPzogeyByZXBsYWNlPzogYm9vbGVhbiB9LFxuICApID0+IHZvaWQ7XG4gIC8qKiBSZW1vdmUgYSB3aG9sZSBmaWVsZCBvciBhIHNwZWNpZmljIG9wZXJhdG9yICovXG4gIHJlbW92ZTogPFxuICAgIEYgZXh0ZW5kcyBrZXlvZiBTICYgc3RyaW5nLFxuICAgIE8gZXh0ZW5kcyBrZXlvZiBOb25OdWxsYWJsZTxJbmZlckZpbHRlclJlc3VsdDxTPltGXT4gJiBzdHJpbmcsXG4gID4oXG4gICAgZmllbGQ6IEYsXG4gICAgb3BlcmF0b3I/OiBPLFxuICAgIG9wdHM/OiB7IHJlcGxhY2U/OiBib29sZWFuIH0sXG4gICkgPT4gdm9pZDtcbiAgLyoqIE1lcmdlIGEgcGFydGlhbCBmaWx0ZXJzIG9iamVjdCAqL1xuICBtZXJnZTogKFxuICAgIHBhdGNoOiBQYXJ0aWFsPEluZmVyRmlsdGVyUmVzdWx0PFM+PixcbiAgICBvcHRzPzogeyByZXBsYWNlPzogYm9vbGVhbiB9LFxuICApID0+IHZvaWQ7XG4gIC8qKiBDbGVhciBhbGwgZmlsdGVycyAqL1xuICBjbGVhcjogKG9wdHM/OiB7IHJlcGxhY2U/OiBib29sZWFuIH0pID0+IHZvaWQ7XG59O1xuXG4vKiogTWluaW1hbCByb3V0ZSBub2RlIHNoYXBlIHVzZWQgYnkgcmVjdXJzaXZlIHRyZWUgdXRpbGl0aWVzLiAqL1xuZXhwb3J0IHR5cGUgUm91dGVUcmVlTm9kZSA9IFJvdXRlTm9kZTtcblxuLyoqXG4gKiBDb252ZW5pZW5jZSB1bWJyZWxsYSByb3V0ZSB0eXBlLlxuICogVXNlZCB3aGVyZSB3ZSBqdXN0IHdhbnQgdG8gY2FycnkgYXJiaXRyYXJ5IHJvdXRlIGdlbmVyaWNzIGZvcndhcmQgd2l0aG91dCBlcmFzdXJlLlxuICovXG5leHBvcnQgdHlwZSBVbmtub3duUm91dGU8VENvbnRleHQgPSB1bmtub3duPiA9IFJvdXRlPFRDb250ZXh0LCB1bmtub3duPjtcblxuLyoqIEJhY2t3YXJkLWNvbXBhdGlibGUgdW1icmVsbGEgcm91dGUgdHlwZS4gKi9cbmV4cG9ydCB0eXBlIEFueVJvdXRlID0gUm91dGVOb2RlO1xuXG4vKiogRXh0cmFjdCBuZXN0ZWQgY2hpbGQgcm91dGUgdW5pb24gZnJvbSBhIHJvdXRlIGRlZmluaXRpb24uICovXG5leHBvcnQgdHlwZSBDaGlsZFJvdXRlT2Y8Uj4gPSBSIGV4dGVuZHMgeyBjaGlsZHJlbj86IHJlYWRvbmx5IChpbmZlciBDKVtdIH1cbiAgPyBFeHRyYWN0PEMsIFJvdXRlVHJlZU5vZGU+XG4gIDogbmV2ZXI7XG5cbi8qKiBSZWN1cnNpdmVseSBmbGF0dGVuIGEgcm91dGUgdHJlZSBpbnRvIGEgcm91dGUgdW5pb24uICovXG5leHBvcnQgdHlwZSBSb3V0ZVRyZWVSb3V0ZVVuaW9uPFI+ID0gUiBleHRlbmRzIFJvdXRlVHJlZU5vZGVcbiAgPyBSIHwgUm91dGVUcmVlUm91dGVVbmlvbjxDaGlsZFJvdXRlT2Y8Uj4+XG4gIDogbmV2ZXI7XG5cbi8qKiBGbGF0dGVuIGEgdHVwbGUgb2Ygcm91dGVzIGludG8gYSByZWN1cnNpdmUgcm91dGUgdW5pb24uICovXG5leHBvcnQgdHlwZSBSb3V0ZVVuaW9uPFJvdXRlcyBleHRlbmRzIHJlYWRvbmx5IHVua25vd25bXT4gPSBSb3V0ZVRyZWVSb3V0ZVVuaW9uPFxuICBSb3V0ZXNbbnVtYmVyXVxuPjtcblxuLyoqIEV4dHJhY3QgdGhlIHByZXBhcmVkIHR5cGUgZnJvbSBhIFJvdXRlICovXG50eXBlIFJvdXRlVHlwZVBhcnRzPFI+ID1cbiAgUiBleHRlbmRzIFJvdXRlPFxuICAgIGluZmVyIFRDb250ZXh0LFxuICAgIGluZmVyIFRQcmVwYXJlZCxcbiAgICBpbmZlciBUVmFycyxcbiAgICBpbmZlciBUUXVlcnksXG4gICAgaW5mZXIgVFNjaGVtYSxcbiAgICBpbmZlciBUQ2hpbGRyZW4gZXh0ZW5kcyByZWFkb25seSAoUm91dGVOb2RlIHwgUmVkaXJlY3QpW10gfCB1bmRlZmluZWRcbiAgPlxuICAgID8ge1xuICAgICAgICBjb250ZXh0OiBUQ29udGV4dDtcbiAgICAgICAgcHJlcGFyZWQ6IFRQcmVwYXJlZDtcbiAgICAgICAgdmFyaWFibGVzOiBUVmFycztcbiAgICAgICAgcXVlcnk6IFRRdWVyeTtcbiAgICAgICAgc2NoZW1hOiBUU2NoZW1hO1xuICAgICAgICBjaGlsZHJlbjogVENoaWxkcmVuO1xuICAgICAgfVxuICAgIDogbmV2ZXI7XG5cbi8qKiBFeHRyYWN0IHRoZSBwcmVwYXJlZCB0eXBlIGZyb20gYSBSb3V0ZSAqL1xuZXhwb3J0IHR5cGUgUHJlcGFyZWRPZjxSPiA9IFJvdXRlVHlwZVBhcnRzPFI+WydwcmVwYXJlZCddO1xuLyoqIEV4dHJhY3QgdGhlIHZhcmlhYmxlcyB0eXBlIGZyb20gYSBSb3V0ZSAqL1xuZXhwb3J0IHR5cGUgVmFyaWFibGVzT2Y8Uj4gPSBSb3V0ZVR5cGVQYXJ0czxSPlsndmFyaWFibGVzJ107XG4vKiogRXh0cmFjdCB0aGUgcXVlcnkgc2hhcGUgdHlwZSBmcm9tIGEgUm91dGUgKi9cbmV4cG9ydCB0eXBlIFF1ZXJ5U2hhcGVPZjxSPiA9IFJvdXRlVHlwZVBhcnRzPFI+WydxdWVyeSddO1xuXG4vKiogUGF0aCBsaXRlcmFsIHR5cGUgaWYgcHJlc2VudCAqL1xuZXhwb3J0IHR5cGUgUGF0aE9mPFI+ID0gUiBleHRlbmRzIHsgcGF0aD86IGluZmVyIFAgfVxuICA/IFAgZXh0ZW5kcyBzdHJpbmdcbiAgICA/IFBcbiAgICA6IG5ldmVyXG4gIDogbmV2ZXI7XG5cbi8qKiBVbmlvbiBvZiBhbGwgY29uY3JldGUgcGF0aCBzdHJpbmdzIGZyb20gYSB0dXBsZS9hcnJheSBvZiByb3V0ZXMgKHJlY3Vyc2l2ZSkuICovXG5leHBvcnQgdHlwZSBQYXRoc09mPFJvdXRlcyBleHRlbmRzIHJlYWRvbmx5IHVua25vd25bXT4gPSBQYXRoT2Y8XG4gIFJvdXRlVW5pb248Um91dGVzPlxuPjtcblxuLyoqIE1hcCBwYXRoIC0+IHByZXBhcmVkIHR5cGUgdW5pb24gKHBlci1yb3V0ZSBwcmVjaXNpb24gaXMgaW50ZW50aW9uYWxseSBlcmFzZWQgaGVyZSkuICovXG5leHBvcnQgdHlwZSBQcmVwYXJlZE1hcDxSb3V0ZXMgZXh0ZW5kcyByZWFkb25seSB1bmtub3duW10+ID0gUmVjb3JkPFxuICBQYXRoc09mPFJvdXRlcz4sXG4gIFByZXBhcmVkT2Y8Um91dGVVbmlvbjxSb3V0ZXM+PiB8IHVuZGVmaW5lZFxuPjtcblxuLyoqIE1hcCBwYXRoIC0+IG9yZGVyZWQgcHJlcGFyZWQgc2VnbWVudCB0dXBsZSBvciBhcnJheSBzaGFwZS4gKi9cbmV4cG9ydCB0eXBlIFByZXBhcmVkU2VnbWVudHNNYXA8Um91dGVzIGV4dGVuZHMgcmVhZG9ubHkgdW5rbm93bltdPiA9IFJlY29yZDxcbiAgUGF0aHNPZjxSb3V0ZXM+LFxuICBQcmVwYXJlZFJvdXRlU2VnbWVudFtdXG4+O1xuXG4vKiogTWFwIHBhdGggLT4gcXVlcnkgc2hhcGUgKi9cbmV4cG9ydCB0eXBlIFF1ZXJ5U2hhcGVNYXA8Um91dGVzIGV4dGVuZHMgcmVhZG9ubHkgdW5rbm93bltdPiA9IFJlY29yZDxcbiAgUGF0aHNPZjxSb3V0ZXM+LFxuICBRdWVyeVNoYXBlT2Y8Um91dGVVbmlvbjxSb3V0ZXM+PlxuPjtcblxuLyoqIEV4dHJhY3Qgc2NoZW1hIGZyb20gYSByb3V0ZSAodW5kZWZpbmVkIGlmIGFic2VudCkgKi9cbmV4cG9ydCB0eXBlIFNjaGVtYU9mPFI+ID0gUiBleHRlbmRzIHsgcXVlcnlTY2hlbWE/OiBpbmZlciBTIH1cbiAgPyBTIGV4dGVuZHMgRmlsdGVyU2NoZW1hXG4gICAgPyBTXG4gICAgOiB1bmRlZmluZWRcbiAgOiB1bmRlZmluZWQ7XG5cbi8qKiBGaWx0ZXJzIGluZmVycmVkIGZyb20gdGhlIHJvdXRlJ3Mgc2NoZW1hICovXG5leHBvcnQgdHlwZSBGaWx0ZXJzT2Y8Uj4gPVxuICBTY2hlbWFPZjxSPiBleHRlbmRzIEZpbHRlclNjaGVtYVxuICAgID8gSW5mZXJGaWx0ZXJSZXN1bHQ8U2NoZW1hT2Y8Uj4+XG4gICAgOiBSZWNvcmQ8c3RyaW5nLCBuZXZlcj47XG5cbi8qKiBNYXAgcGF0aCAtPiBpbmZlcnJlZCBmaWx0ZXJzIHR5cGUgKi9cbmV4cG9ydCB0eXBlIEZpbHRlcnNNYXA8Um91dGVzIGV4dGVuZHMgcmVhZG9ubHkgdW5rbm93bltdPiA9IFJlY29yZDxcbiAgUGF0aHNPZjxSb3V0ZXM+LFxuICBGaWx0ZXJzT2Y8Um91dGVVbmlvbjxSb3V0ZXM+PlxuPjtcblxuLyoqIFJ1bnRpbWUgaGVscGVyIGludGVyZmFjZSBhdWdtZW50YXRpb24gZm9yIHJvdXRlciBjb250ZXh0IChhZGRlZCBpbiBjcmVhdGVSb3V0ZXIpICovXG5leHBvcnQgdHlwZSBQcmVwYXJlZEFjY2VzczxSb3V0ZXMgZXh0ZW5kcyByZWFkb25seSB1bmtub3duW10+ID0gUmVjb3JkPFxuICBuZXZlcixcbiAgbmV2ZXJcbj4gJiB7XG4gIC8qKiBSZXRyaWV2ZSB0aGUgcHJlcGFyZWQgb2JqZWN0IGZvciBhIGNvbmNyZXRlIHBhdGggKGlmIGN1cnJlbnQgbWF0Y2ggaW5jbHVkZXMgaXQpICovXG4gIGdldFByZXBhcmVkOiAocGF0aDogc3RyaW5nKSA9PiBQcmVwYXJlZE9mPFJvdXRlVW5pb248Um91dGVzPj4gfCB1bmRlZmluZWQ7XG4gIC8qKiBSZXRyaWV2ZSB0aGUgZnVsbCBwcmVwYXJlZCBzZWdtZW50IGNoYWluIGZvciBhIGNvbmNyZXRlIHBhdGguICovXG4gIGdldFByZXBhcmVkU2VnbWVudHM6IChwYXRoOiBzdHJpbmcpID0+IFByZXBhcmVkUm91dGVTZWdtZW50U25hcHNob3RbXTtcbiAgLy8gZ2V0VHlwZWRRdWVyeSByZW1vdmVkIOKAkyB1c2UgZmlsdGVycy9xdWVyeSBkaXJlY3RseVxufTtcblxuLyoqIElucHV0IHNoYXBlIGZvciBhIG5hdmlnYXRpb24gdG8gYSBzcGVjaWZpYyBwYXRoICh0eXBlZCBxdWVyeSkgKi9cbmV4cG9ydCB0eXBlIE5hdmlnYXRlSW5wdXRGb3JQYXRoPFJvdXRlcyBleHRlbmRzIHJlYWRvbmx5IHVua25vd25bXT4gPSB7XG4gIHBhdGhuYW1lOiBQYXRoc09mPFJvdXRlcz47XG4gIHF1ZXJ5PzogUXVlcnlTaGFwZU9mPFJvdXRlVW5pb248Um91dGVzPj47XG4gIGZpbHRlcnM/OiBGaWx0ZXJzT2Y8Um91dGVVbmlvbjxSb3V0ZXM+PjtcbiAgaGFzaD86IHN0cmluZztcbiAgcmVwbGFjZT86IGJvb2xlYW47XG59O1xuXG4vKiogRmFsbGJhY2sgdW50eXBlZCBuYXZpZ2F0ZSBpbnB1dCAqL1xuZXhwb3J0IHR5cGUgTmF2aWdhdGVJbnB1dFVudHlwZWQgPSB7XG4gIHBhdGhuYW1lPzogc3RyaW5nO1xuICBxdWVyeT86IFVua25vd25RdWVyeVNoYXBlO1xuICBmaWx0ZXJzPzogVW5rbm93bkZpbHRlcnM7XG4gIGhhc2g/OiBzdHJpbmc7XG4gIHJlcGxhY2U/OiBib29sZWFuO1xufTtcblxuLyoqIE92ZXJsb2FkZWQgbmF2aWdhdGUgZnVuY3Rpb24gdHlwZSAoY29tcGlsZS10aW1lIG9ubHk7IHJ1bnRpbWUgc2luZ2xlIGltcGwpICovXG5leHBvcnQgaW50ZXJmYWNlIE5hdmlnYXRlT3ZlcmxvYWRzPFJvdXRlcyBleHRlbmRzIHJlYWRvbmx5IHVua25vd25bXT4ge1xuICAob3B0czogTmF2aWdhdGVJbnB1dEZvclBhdGg8Um91dGVzPik6IHZvaWQ7XG4gIChvcHRzOiBOYXZpZ2F0ZUlucHV0VW50eXBlZCk6IHZvaWQ7XG59XG4iXX0=
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQ29tcG9uZW50VHlwZSwgUmVhY3RFbGVtZW50LCBSZWFjdE5vZGUsIEpTWCB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB0eXBlIHsgRGlhZ25vc3RpYyBhcyBGaWx0ZXJEaWFnbm9zdGljIH0gZnJvbSAnQHBsdW1pbGUvZmlsdGVyLXF1ZXJ5L2Vycm9ycy5qcyc7XG5pbXBvcnQgdHlwZSB7XG4gIFNjaGVtYSBhcyBGaWx0ZXJTY2hlbWEsXG4gIEluZmVyRmlsdGVycyBhcyBJbmZlckZpbHRlclJlc3VsdCxcbiAgSW5mZXJGaWVsZCBhcyBJbmZlckZpbHRlckZpZWxkLFxufSBmcm9tICdAcGx1bWlsZS9maWx0ZXItcXVlcnkvdHlwZXMuanMnO1xuaW1wb3J0IHR5cGUgeyBNYXRjaCwgTWF0Y2hGdW5jdGlvbiwgUGFyYW1EYXRhIH0gZnJvbSAncGF0aC10by1yZWdleHAnO1xuXG5pbXBvcnQgdHlwZSB7IEZsYXRSb3V0ZSB9IGZyb20gJy4vYnVpbGRlci5qcyc7XG5pbXBvcnQgdHlwZSB7IFJlc291cmNlUGFnZSB9IGZyb20gJy4vUmVzb3VyY2VQYWdlLmpzJztcbmltcG9ydCB0eXBlIHsgSGlzdG9yeSwgSGlzdG9yeUxvY2F0aW9uU25hcHNob3QgfSBmcm9tICcuL2hpc3RvcnkvdHlwZXMuanMnO1xuXG5leHBvcnQgdHlwZSBNYXliZVByb21pc2U8VD4gPSBUIHwgUHJvbWlzZTxUPjtcbmV4cG9ydCB0eXBlIFJhd1F1ZXJ5VmFsdWUgPSBzdHJpbmcgfCBzdHJpbmdbXTtcbmV4cG9ydCB0eXBlIFJhd1F1ZXJ5ID0gUmVjb3JkPHN0cmluZywgUmF3UXVlcnlWYWx1ZT47XG5leHBvcnQgdHlwZSBVbmtub3duUXVlcnlTaGFwZSA9IFJlY29yZDxzdHJpbmcsIHVua25vd24+O1xuZXhwb3J0IHR5cGUgVW5rbm93bkZpbHRlcnMgPSBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjtcblxuZXhwb3J0IHR5cGUgUm91dGVyU3RydWN0dXJlZERlc3RpbmF0aW9uPFxuICBURmlsdGVycyBleHRlbmRzIFVua25vd25GaWx0ZXJzID0gVW5rbm93bkZpbHRlcnMsXG4gIFRRdWVyeSBleHRlbmRzIFVua25vd25RdWVyeVNoYXBlID0gVW5rbm93blF1ZXJ5U2hhcGUsXG4+ID0ge1xuICBwYXRobmFtZTogc3RyaW5nO1xuICBmaWx0ZXJzPzogVEZpbHRlcnM7XG4gIHF1ZXJ5PzogVFF1ZXJ5O1xuICBoYXNoPzogc3RyaW5nO1xuICBzZWFyY2g/OiBuZXZlcjtcbn07XG5cbmV4cG9ydCB0eXBlIFJvdXRlckV4cGxpY2l0U2VhcmNoRGVzdGluYXRpb24gPSB7XG4gIHBhdGhuYW1lOiBzdHJpbmc7XG4gIHNlYXJjaD86IHN0cmluZztcbiAgaGFzaD86IHN0cmluZztcbiAgZmlsdGVycz86IG5ldmVyO1xuICBxdWVyeT86IG5ldmVyO1xufTtcblxuLyoqIEEgcm91dGVyIGRlc3RpbmF0aW9uIHdpdGggZWl0aGVyIHN0cnVjdHVyZWQgc3RhdGUgb3IgYW4gZXhwbGljaXQgc2VhcmNoIHN0cmluZy4gKi9cbmV4cG9ydCB0eXBlIFJvdXRlckRlc3RpbmF0aW9uPFxuICBURmlsdGVycyBleHRlbmRzIFVua25vd25GaWx0ZXJzID0gVW5rbm93bkZpbHRlcnMsXG4gIFRRdWVyeSBleHRlbmRzIFVua25vd25RdWVyeVNoYXBlID0gVW5rbm93blF1ZXJ5U2hhcGUsXG4+ID1cbiAgfCBSb3V0ZXJTdHJ1Y3R1cmVkRGVzdGluYXRpb248VEZpbHRlcnMsIFRRdWVyeT5cbiAgfCBSb3V0ZXJFeHBsaWNpdFNlYXJjaERlc3RpbmF0aW9uO1xuXG5leHBvcnQgdHlwZSBSb3V0ZXJEZXN0aW5hdGlvbklucHV0PFxuICBURmlsdGVycyBleHRlbmRzIFVua25vd25GaWx0ZXJzID0gVW5rbm93bkZpbHRlcnMsXG4gIFRRdWVyeSBleHRlbmRzIFVua25vd25RdWVyeVNoYXBlID0gVW5rbm93blF1ZXJ5U2hhcGUsXG4+ID0gc3RyaW5nIHwgUm91dGVyRGVzdGluYXRpb248VEZpbHRlcnMsIFRRdWVyeT47XG5cbmV4cG9ydCB0eXBlIEFzeW5jUmVzb3VyY2VTdGF0dXMgPSAnaWRsZScgfCAncGVuZGluZycgfCAncmVzb2x2ZWQnIHwgJ3JlamVjdGVkJztcblxuZXhwb3J0IHR5cGUgUm91dGVyQWN0aXZlTG9hZFN0YXR1cyA9IEFzeW5jUmVzb3VyY2VTdGF0dXM7XG5cbmV4cG9ydCB0eXBlIFJvdXRlckFjdGl2ZUxvYWRTdGF0ZSA9IHtcbiAgc3RhdHVzOiBSb3V0ZXJBY3RpdmVMb2FkU3RhdHVzO1xuICBwZW5kaW5nQ291bnQ6IG51bWJlcjtcbiAgcmVqZWN0ZWRDb3VudDogbnVtYmVyO1xuICB2ZXJzaW9uOiBudW1iZXI7XG59O1xuXG5leHBvcnQgdHlwZSBSb3V0ZXJTZWdtZW50TG9hZFN0YXRlID0ge1xuICBwYXRoPzogc3RyaW5nO1xuICBmdWxsUGF0aD86IHN0cmluZztcbiAgc2VnbWVudEluZGV4OiBudW1iZXI7XG4gIHByZXBhcmVTdGF0dXM6IEFzeW5jUmVzb3VyY2VTdGF0dXM7XG4gIGNvZGVTdGF0dXM6IEFzeW5jUmVzb3VyY2VTdGF0dXM7XG4gIHN0YXR1czogUm91dGVyQWN0aXZlTG9hZFN0YXR1cztcbn07XG5cbmV4cG9ydCB0eXBlIFJvdXRlckxvYWRTdGF0ZSA9IHtcbiAgc3RhdHVzOiBSb3V0ZXJBY3RpdmVMb2FkU3RhdHVzO1xuICBwZW5kaW5nQ291bnQ6IG51bWJlcjtcbiAgcmVqZWN0ZWRDb3VudDogbnVtYmVyO1xuICB2ZXJzaW9uOiBudW1iZXI7XG4gIHNlZ21lbnRzOiBSb3V0ZXJTZWdtZW50TG9hZFN0YXRlW107XG59O1xuXG5leHBvcnQgdHlwZSBSb3V0ZVByZXBhcmVTZWFyY2hCZWhhdmlvciA9ICdhbHdheXMnIHwgJ3BhdGgnO1xuXG5leHBvcnQgdHlwZSBSb3V0ZVN1c3BlbnNlQm91bmRhcnkgPSAnaW5oZXJpdCcgfCAnc2VnbWVudCcgfCAnbm9uZSc7XG5cbmV4cG9ydCB0eXBlIFJvdXRlRmFsbGJhY2tBcmdzPFRDb250ZXh0ID0gdW5rbm93bj4gPSB7XG4gIHNlZ21lbnQ6IFByZXBhcmVkUm91dGVTZWdtZW50PFRDb250ZXh0PjtcbiAgbWF0Y2g6IFJvdXRlck1hdGNoZWRSb3V0ZTxQYXJhbURhdGE+IHwgbnVsbDtcbiAgY2hpbGRyZW4/OiBSZWFjdE5vZGU7XG59O1xuXG5leHBvcnQgdHlwZSBSb3V0ZUZhbGxiYWNrPFRDb250ZXh0ID0gdW5rbm93bj4gPVxuICBSZWFjdE5vZGUgfCAoKGFyZ3M6IFJvdXRlRmFsbGJhY2tBcmdzPFRDb250ZXh0PikgPT4gUmVhY3ROb2RlKTtcblxuZXhwb3J0IHR5cGUgUmVhZGFibGVSZXNvdXJjZTxUPiA9IHtcbiAgZ2V0OiAoKSA9PiBUIHwgdW5kZWZpbmVkO1xuICBnZXRFcnJvcjogKCkgPT4gdW5rbm93bjtcbiAgZ2V0U3RhdHVzOiAoKSA9PiBBc3luY1Jlc291cmNlU3RhdHVzO1xuICBsb2FkOiAoKSA9PiBQcm9taXNlPFQ+O1xuICByZWFkOiAoKSA9PiBUO1xufTtcblxuLyoqXG4gKiBJbnB1dCB0eXBlIGZvciBjcmVhdGluZyBhIEZsYXRSb3V0ZSBpbnN0YW5jZS5cbiAqIEB0ZW1wbGF0ZSBUVmFyaWFibGVzIC0gUm91dGUgcGFyYW1ldGVyIHR5cGVzIGV4dHJhY3RlZCBmcm9tIHRoZSBVUkwgcGF0aFxuICovXG5leHBvcnQgdHlwZSBGbGF0Um91dGVJbnB1dDxUVmFyaWFibGVzIGV4dGVuZHMgUGFyYW1EYXRhPiA9IHtcbiAgLyoqIFRoZSBVUkwgcGF0aCBwYXR0ZXJuIGZvciB0aGlzIHJvdXRlICovXG4gIHBhdGg6IHN0cmluZztcbiAgLyoqIFBlci1yZW5kZXJlZC1yb3V0ZSBtZXRhZGF0YSBhbGlnbmVkIHdpdGggYHJvdXRlc2AuICovXG4gIHJvdXRlU2VnbWVudHM/OiBGbGF0Um91dGVTZWdtZW50W107XG4gIC8qKiBPcHRpb25hbCByZWRpcmVjdCBkZXN0aW5hdGlvbiBpZiB0aGlzIHJvdXRlIHNob3VsZCByZWRpcmVjdCAqL1xuICByZWRpcmVjdFRvPzogc3RyaW5nO1xuICAvKiogRnVuY3Rpb24gdG8gbWF0Y2ggVVJMIHBhdGhzIGFnYWluc3QgdGhpcyByb3V0ZSBwYXR0ZXJuICovXG4gIG1hdGNoRnVuY3Rpb246IE1hdGNoRnVuY3Rpb248VFZhcmlhYmxlcz47XG4gIC8qKiBOZXN0ZWQgcm91dGVzIHRoYXQgc2hvdWxkIGJlIHJlbmRlcmVkIHdpdGhpbiB0aGlzIHJvdXRlICovXG4gIHJvdXRlczogQW55Um91dGVbXTtcbn07XG5cbmV4cG9ydCB0eXBlIEZsYXRSb3V0ZVNlZ21lbnQgPSB7XG4gIC8qKiBTdGFibGUga2V5IGZvciB0aGUgcmVuZGVyZWQgc2VnbWVudCB3aXRoaW4gYSBmbGF0IHJvdXRlIGNoYWluLiAqL1xuICBrZXk6IHN0cmluZztcbiAgLyoqIExvY2FsIHJvdXRlIHBhdGggY29uZmlndXJlZCBvbiB0aGUgcm91dGUgbm9kZS4gKi9cbiAgcGF0aD86IHN0cmluZztcbiAgLyoqIEFic29sdXRlIHBhdGggcmVwcmVzZW50ZWQgYnkgdGhpcyBzZWdtZW50LiAqL1xuICBmdWxsUGF0aDogc3RyaW5nO1xuICAvKiogUGFyYW1zIHRoYXQgbWF5IGJlIHJlYWQgYnkgdGhpcyBzZWdtZW50LCBpbmNsdWRpbmcgYW5jZXN0b3IgcGFyYW1zLiAqL1xuICBwYXJhbU5hbWVzOiByZWFkb25seSBzdHJpbmdbXTtcbn07XG5cbi8qKlxuICogUmVwcmVzZW50cyBhIG1hdGNoZWQgcm91dGUgd2l0aCBleHRyYWN0ZWQgcGFyYW1ldGVycyBhbmQgbWV0YWRhdGEuXG4gKiBAdGVtcGxhdGUgVFZhcmlhYmxlcyAtIFJvdXRlIHBhcmFtZXRlciB0eXBlcyBleHRyYWN0ZWQgZnJvbSB0aGUgVVJMIHBhdGhcbiAqL1xuZXhwb3J0IHR5cGUgUm91dGVyTWF0Y2hlZFJvdXRlPFRWYXJpYWJsZXMgZXh0ZW5kcyBQYXJhbURhdGE+ID0ge1xuICAvKiogVGhlIG1hdGNoIHJlc3VsdCBmcm9tIHBhdGgtdG8tcmVnZXhwICovXG4gIG1hdGNoOiBNYXRjaDxUVmFyaWFibGVzPjtcbiAgLyoqIEV4dHJhY3RlZCBwYXJhbWV0ZXJzIGZyb20gdGhlIFVSTCBwYXRoICovXG4gIHBhcmFtczogVFZhcmlhYmxlcztcbiAgLyoqIFRoZSBtYXRjaGVkIHBhdGggc3RyaW5nICovXG4gIHBhdGg6IHN0cmluZztcbiAgLyoqIFRoZSBmbGF0IHJvdXRlIHRoYXQgd2FzIG1hdGNoZWQgKi9cbiAgcm91dGU6IEZsYXRSb3V0ZTxUVmFyaWFibGVzPjtcbn07XG5cbi8qKlxuICogQSBSZWFjdCBjb21wb25lbnQgdGhhdCBjYW4gYmUgdXNlZCBhcyBhIHJvdXRlIGNvbXBvbmVudC5cbiAqIEB0ZW1wbGF0ZSBUUHJvcHMgLSBUaGUgcHJvcHMgdHlwZSBmb3IgdGhlIGNvbXBvbmVudFxuICovXG5leHBvcnQgdHlwZSBSb3V0ZVJlYWN0Q29tcG9uZW50PFRQcm9wcyA9IFJlY29yZDxzdHJpbmcsIHVua25vd24+PiA9IChcbiAgcHJvcHM6IFRQcm9wcyxcbikgPT4gSlNYLkVsZW1lbnQgfCBudWxsO1xuXG50eXBlIEJpdmFyaWFudENhbGxiYWNrPEZuIGV4dGVuZHMgKC4uLmFyZ3M6IG5ldmVyW10pID0+IHVua25vd24+ID0ge1xuICAvLyBQdWJsaWMgcm91dGUgY2FsbGJhY2tzIG5lZWQgdG8gcmVtYWluIGFzc2lnbmFibGUgYWZ0ZXIgdGhlaXIgc2NoZW1hLXNwZWNpZmljXG4gIC8vIHBhcmFtZXRlcnMgYXJlIGVyYXNlZCB0byBSb3V0ZU5vZGUgYnkgcmVjdXJzaXZlIHJvdXRlIGFuZCByb3V0ZXIgaGVscGVycy5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9tZXRob2Qtc2lnbmF0dXJlLXN0eWxlXG4gIGJpdmFyaWFuY2VIYWNrKC4uLmFyZ3M6IFBhcmFtZXRlcnM8Rm4+KTogUmV0dXJuVHlwZTxGbj47XG59WydiaXZhcmlhbmNlSGFjayddO1xuXG4vKipcbiAqIE9wdGlvbnMgcGFzc2VkIHRvIGEgcm91dGUgcmVuZGVyIGZ1bmN0aW9uLlxuICogQHRlbXBsYXRlIFRQcmVwYXJlZCAtIFRoZSB0eXBlIG9mIHByZXBhcmVkIGRhdGEgcmV0dXJuZWQgYnkgdGhlIHJvdXRlJ3MgcHJlcGFyZSBmdW5jdGlvblxuICogQHRlbXBsYXRlIFRWYXJpYWJsZXMgLSBSb3V0ZSBwYXJhbWV0ZXIgdHlwZXMgZXh0cmFjdGVkIGZyb20gdGhlIFVSTCBwYXRoXG4gKi9cbmV4cG9ydCB0eXBlIFJvdXRlUmVuZGVyT3B0czxcbiAgVENvbnRleHQsXG4gIFRQcmVwYXJlZCBleHRlbmRzIFByZXBhcmVSZXN1bHQsXG4gIFRWYXJpYWJsZXMgZXh0ZW5kcyBQYXJhbURhdGEgPSBQYXJhbURhdGEsXG4gIFRRdWVyeVNoYXBlIGV4dGVuZHMgVW5rbm93blF1ZXJ5U2hhcGUgPSBVbmtub3duUXVlcnlTaGFwZSxcbiAgUyBleHRlbmRzIEZpbHRlclNjaGVtYSB8IHVuZGVmaW5lZCA9IEZpbHRlclNjaGVtYSB8IHVuZGVmaW5lZCxcbj4gPSB7XG4gIC8qKiBDaGlsZCBjb21wb25lbnRzIHRvIHJlbmRlciB3aXRoaW4gdGhpcyByb3V0ZSAqL1xuICBjaGlsZHJlbjogUmVhY3ROb2RlO1xuICAvKiogT3B0aW9uYWwgY29tcG9uZW50IHRvIHJlbmRlciAoZnJvbSBSZXNvdXJjZVBhZ2UpICovXG4gIENvbXBvbmVudD86IFJvdXRlUmVhY3RDb21wb25lbnQ7XG4gIC8qKiBEYXRhIHByZXBhcmVkIGJ5IHRoZSByb3V0ZSdzIHByZXBhcmUgZnVuY3Rpb24gKi9cbiAgcHJlcGFyZWQ6IFRQcmVwYXJlZCB8IHVuZGVmaW5lZDtcbiAgLyoqIFRoZSBwcmVwYXJlZCBzZWdtZW50IHRoYXQgaXMgYmVpbmcgcmVuZGVyZWQgKi9cbiAgcHJlcGFyZWRTZWdtZW50OiBQcmVwYXJlZFJvdXRlU2VnbWVudDxcbiAgICBUQ29udGV4dCxcbiAgICBUUHJlcGFyZWQsXG4gICAgVFZhcmlhYmxlcyxcbiAgICBUUXVlcnlTaGFwZVxuICA+O1xuICAvKiogQWxpYXMga2VwdCBmb3IgbWlncmF0aW9uIGNvbXBhdGliaWxpdHkgKi9cbiAgcHJlcGFyZWRSb3V0ZTogUHJlcGFyZWRSb3V0ZVNlZ21lbnQ8XG4gICAgVENvbnRleHQsXG4gICAgVFByZXBhcmVkLFxuICAgIFRWYXJpYWJsZXMsXG4gICAgVFF1ZXJ5U2hhcGVcbiAgPjtcbiAgLyoqIFRoZSBmdWxsIHByZXBhcmVkIGNoYWluIGZvciB0aGUgY3VycmVudCBtYXRjaCAqL1xuICBwcmVwYXJlZFNlZ21lbnRzOiBQcmVwYXJlZFJvdXRlU2VnbWVudHM8VENvbnRleHQ+O1xuICAvKiogSW5kZXggb2YgdGhlIGN1cnJlbnQgc2VnbWVudCBpbiB0aGUgcHJlcGFyZWQgY2hhaW4gKi9cbiAgc2VnbWVudEluZGV4OiBudW1iZXI7XG4gIC8qKiBUaGUgbGVhZiBzZWdtZW50IG9mIHRoZSBwcmVwYXJlZCBjaGFpbiAqL1xuICBsZWFmU2VnbWVudDogUHJlcGFyZWRSb3V0ZVNlZ21lbnQ8VENvbnRleHQ+O1xuICAvKiogVGhlIG1hdGNoZWQgcm91dGUgb3IgbnVsbCBpZiBubyBtYXRjaCAqL1xuICByb3V0ZTogRmxhdFJvdXRlPFRWYXJpYWJsZXM+IHwgbnVsbDtcbiAgLyoqIFJvdXRlci1sZXZlbCBjb250ZXh0ICovXG4gIGNvbnRleHQ6IFRDb250ZXh0O1xuICAvKiogUmF3IHF1ZXJ5IG9iamVjdCAoUGhhc2UgMiBnZW5lcmljIHBhcnNpbmcpICovXG4gIHJhd1F1ZXJ5OiBSYXdRdWVyeTtcbiAgLyoqIFJhdyBVUkwgcXVlcnkgdmFsdWVzLiAqL1xuICBxdWVyeTogVFF1ZXJ5U2hhcGU7XG4gIC8qKiBQYXJzZWQgZmlsdGVycyB3aGVuIHRoZSBhY3RpdmUgZGVzdGluYXRpb24gZGVjbGFyZXMgYSBxdWVyeSBzY2hlbWEuICovXG4gIGZpbHRlcnM6IFMgZXh0ZW5kcyBGaWx0ZXJTY2hlbWFcbiAgICA/IEluZmVyRmlsdGVyUmVzdWx0PFM+XG4gICAgOiBVbmtub3duRmlsdGVycyB8IHVuZGVmaW5lZDtcbn07XG5cbi8qKlxuICogRnVuY3Rpb24gdG8gcmVuZGVyIGEgcm91dGUgd2l0aCBjdXN0b20gbG9naWMuXG4gKiBAdGVtcGxhdGUgVFByZXBhcmVkIC0gVGhlIHR5cGUgb2YgcHJlcGFyZWQgZGF0YSByZXR1cm5lZCBieSB0aGUgcm91dGUncyBwcmVwYXJlIGZ1bmN0aW9uXG4gKiBAdGVtcGxhdGUgVFZhcmlhYmxlcyAtIFJvdXRlIHBhcmFtZXRlciB0eXBlcyBleHRyYWN0ZWQgZnJvbSB0aGUgVVJMIHBhdGhcbiAqL1xuZXhwb3J0IHR5cGUgUm91dGVSZW5kZXI8XG4gIFRDb250ZXh0LFxuICBUUHJlcGFyZWQgZXh0ZW5kcyBQcmVwYXJlUmVzdWx0LFxuICBUVmFyaWFibGVzIGV4dGVuZHMgUGFyYW1EYXRhID0gUGFyYW1EYXRhLFxuICBUUXVlcnlTaGFwZSBleHRlbmRzIFVua25vd25RdWVyeVNoYXBlID0gVW5rbm93blF1ZXJ5U2hhcGUsXG4gIFMgZXh0ZW5kcyBGaWx0ZXJTY2hlbWEgfCB1bmRlZmluZWQgPSBGaWx0ZXJTY2hlbWEgfCB1bmRlZmluZWQsXG4+ID0gQml2YXJpYW50Q2FsbGJhY2s8XG4gIChcbiAgICBvcHRzOiBSb3V0ZVJlbmRlck9wdHM8VENvbnRleHQsIFRQcmVwYXJlZCwgVFZhcmlhYmxlcywgVFF1ZXJ5U2hhcGUsIFM+LFxuICApID0+XG4gICAgUmVhY3RFbGVtZW50IHwgbnVsbCB8IHVuZGVmaW5lZCB8IFByb21pc2U8UmVhY3RFbGVtZW50IHwgbnVsbCB8IHVuZGVmaW5lZD5cbj47XG5cbi8qKiBBbGlhcyBmb3IgcmVuZGVyIGFyZ3MgKGtlcHQgZm9yIHB1YmxpYyBBUEkgY2xhcml0eSkuICovXG5leHBvcnQgdHlwZSBSb3V0ZVJlbmRlckFyZ3M8XG4gIFRDb250ZXh0LFxuICBUUHJlcGFyZWQgZXh0ZW5kcyBQcmVwYXJlUmVzdWx0LFxuICBUVmFyaWFibGVzIGV4dGVuZHMgUGFyYW1EYXRhID0gUGFyYW1EYXRhLFxuICBUUXVlcnlTaGFwZSBleHRlbmRzIFVua25vd25RdWVyeVNoYXBlID0gVW5rbm93blF1ZXJ5U2hhcGUsXG4gIFMgZXh0ZW5kcyBGaWx0ZXJTY2hlbWEgfCB1bmRlZmluZWQgPSBGaWx0ZXJTY2hlbWEgfCB1bmRlZmluZWQsXG4+ID0gUm91dGVSZW5kZXJPcHRzPFRDb250ZXh0LCBUUHJlcGFyZWQsIFRWYXJpYWJsZXMsIFRRdWVyeVNoYXBlLCBTPjtcblxuLyoqXG4gKiBBIHNpbmdsZSBhY3RpdmUgcHJlcGFyZWQgcm91dGUgc2VnbWVudCB3aXRoaW4gdGhlIGN1cnJlbnQgcm91dGUgY2hhaW4uXG4gKi9cbmV4cG9ydCB0eXBlIFByZXBhcmVkUm91dGVTZWdtZW50PFxuICBUQ29udGV4dCA9IHVua25vd24sXG4gIFRQcmVwYXJlZCBleHRlbmRzIFByZXBhcmVSZXN1bHQgPSBQcmVwYXJlUmVzdWx0LFxuICBUVmFyaWFibGVzIGV4dGVuZHMgUGFyYW1EYXRhID0gUGFyYW1EYXRhLFxuICBUUXVlcnlTaGFwZSBleHRlbmRzIFVua25vd25RdWVyeVNoYXBlID0gVW5rbm93blF1ZXJ5U2hhcGUsXG4+ID0ge1xuICAvKiogVGhlIHJvdXRlIGRlZmluaXRpb24gdGhhdCBwcm9kdWNlZCB0aGlzIHByZXBhcmVkIHNlZ21lbnQgKi9cbiAgcm91dGVOb2RlPzogUm91dGVOb2RlO1xuICAvKiogVGhlIHBhdGggdGhhdCB3YXMgbWF0Y2hlZCAqL1xuICBwYXRoPzogc3RyaW5nO1xuICAvKiogQWJzb2x1dGUgcm91dGUgcGF0aCBmb3IgdGhlIGN1cnJlbnQgc2VnbWVudCB3aGVuIGtub3duICovXG4gIGZ1bGxQYXRoPzogc3RyaW5nO1xuICAvKiogU3RhYmxlIGtleSB1c2VkIGZvciByb3V0ZSBzZWdtZW50IHJlY29uY2lsaWF0aW9uLiAqL1xuICBzZWdtZW50S2V5OiBzdHJpbmc7XG4gIC8qKiBQYXJhbXMgdGhhdCBtYXkgYWZmZWN0IHRoaXMgc2VnbWVudC4gKi9cbiAgcGFyYW1OYW1lczogcmVhZG9ubHkgc3RyaW5nW107XG4gIC8qKiBPcmRlciBvZiB0aGUgc2VnbWVudCBpbiB0aGUgYWN0aXZlIHByZXBhcmVkIGNoYWluICovXG4gIHNlZ21lbnRJbmRleDogbnVtYmVyO1xuICAvKiogQXN5bmMgcmVzb3VyY2UgZXhwb3NpbmcgdGhlIHJvdXRlJ3MgcHJlcGFyZWQgdmFsdWUgKi9cbiAgcHJlcGFyZWRSZXNvdXJjZT86IFByZXBhcmVkVmFsdWVSZXNvdXJjZTxUUHJlcGFyZWQ+O1xuICAvKiogQ3VzdG9tIHJlbmRlciBmdW5jdGlvbiBmb3IgdGhpcyByb3V0ZSAqL1xuICByZW5kZXI/OiBSb3V0ZVJlbmRlcjxUQ29udGV4dCwgVFByZXBhcmVkLCBUVmFyaWFibGVzLCBUUXVlcnlTaGFwZT47XG4gIC8qKiBSZWRpcmVjdCBkZXN0aW5hdGlvbiBpZiB0aGlzIHJvdXRlIHNob3VsZCByZWRpcmVjdCAqL1xuICByZWRpcmVjdFRvOiBzdHJpbmcgfCBudWxsO1xuICAvKiogUmVzb3VyY2UgcGFnZSBmb3IgbGF6eS1sb2FkZWQgY29tcG9uZW50cyAqL1xuICByZXNvdXJjZVBhZ2U/OiBSZXNvdXJjZVBhZ2UgfCBudWxsO1xuICAvKiogQ29udHJvbHMgd2hldGhlciB0aGlzIHNlZ21lbnQgb3ducyBhIGxvY2FsIFN1c3BlbnNlIGJvdW5kYXJ5LiAqL1xuICBzdXNwZW5zZUJvdW5kYXJ5OiBSb3V0ZVN1c3BlbnNlQm91bmRhcnk7XG4gIC8qKiBGYWxsYmFjayB1c2VkIHdoZW4gdGhpcyBzZWdtZW50J3MgbG9jYWwgU3VzcGVuc2UgYm91bmRhcnkgaXMgYWN0aXZlLiAqL1xuICBmYWxsYmFjaz86IFJvdXRlRmFsbGJhY2s8VENvbnRleHQ+O1xuICAvKiogSWRlbnRpZmllciB1c2VkIGJ5IGRldmVsb3BlciB0b29saW5nIHRvIG1hcCByZW5kZXJlZCBET00gcmVnaW9ucyAqL1xuICBoaWdobGlnaHRJZD86IHN0cmluZztcbiAgLyoqIE9wdGlvbmFsIHF1ZXJ5IHNjaGVtYSBkZWNsYXJlZCBieSB0aGUgcm91dGUgc2VnbWVudCAqL1xuICBxdWVyeVNjaGVtYT86IEZpbHRlclNjaGVtYTtcbn07XG5cbi8qKiBCYWNrd2FyZC1jb21wYXRpYmxlIGFsaWFzIGtlcHQgZHVyaW5nIHRoZSBzZWdtZW50LW9yaWVudGVkIG1pZ3JhdGlvbi4gKi9cbmV4cG9ydCB0eXBlIFByZXBhcmVkTWF0Y2hSb3V0ZSA9IFByZXBhcmVkUm91dGVTZWdtZW50O1xuXG5leHBvcnQgdHlwZSBQcmVwYXJlZFJvdXRlU2VnbWVudHM8VENvbnRleHQgPSB1bmtub3duPiA9XG4gIFByZXBhcmVkUm91dGVTZWdtZW50PFRDb250ZXh0PltdO1xuXG5leHBvcnQgdHlwZSBQcmVwYXJlZFJvdXRlU2VnbWVudFNuYXBzaG90ID0ge1xuICByb3V0ZU5vZGU/OiBSb3V0ZU5vZGU7XG4gIHBhdGg/OiBzdHJpbmc7XG4gIGZ1bGxQYXRoPzogc3RyaW5nO1xuICBzZWdtZW50S2V5OiBzdHJpbmc7XG4gIHBhcmFtTmFtZXM6IHJlYWRvbmx5IHN0cmluZ1tdO1xuICBzZWdtZW50SW5kZXg6IG51bWJlcjtcbiAgcHJlcGFyZWRSZXNvdXJjZT86IFByZXBhcmVkVmFsdWVSZXNvdXJjZTtcbiAgcmVkaXJlY3RUbzogc3RyaW5nIHwgbnVsbDtcbiAgcmVzb3VyY2VQYWdlPzogUmVzb3VyY2VQYWdlIHwgbnVsbDtcbiAgc3VzcGVuc2VCb3VuZGFyeTogUm91dGVTdXNwZW5zZUJvdW5kYXJ5O1xuICBmYWxsYmFjaz86IFJvdXRlRmFsbGJhY2s7XG4gIGhpZ2hsaWdodElkPzogc3RyaW5nO1xuICBxdWVyeVNjaGVtYT86IEZpbHRlclNjaGVtYTtcbn07XG5cbi8qKlxuICogUmVzdWx0IG9mIHByZXBhcmluZyBhIG1hdGNoZWQgcm91dGUsIGluY2x1ZGluZyB0aGUgb3JkZXJlZCBjaGFpbiBvZiBuZXN0ZWQgYWN0aXZlIHNlZ21lbnRzLlxuICogQHRlbXBsYXRlIFRWYXJpYWJsZXMgLSBSb3V0ZSBwYXJhbWV0ZXIgdHlwZXMgZXh0cmFjdGVkIGZyb20gdGhlIFVSTCBwYXRoXG4gKi9cbmV4cG9ydCB0eXBlIFByZXBhcmVkUm91dGVDaGFpbjxcbiAgVFZhcmlhYmxlcyBleHRlbmRzIFBhcmFtRGF0YSxcbiAgVENvbnRleHQgPSB1bmtub3duLFxuPiA9IHtcbiAgLyoqIFRoZSBtYXRjaGVkIHJvdXRlIG9yIG51bGwgaWYgbm8gbWF0Y2ggKi9cbiAgbWF0Y2g6IFJvdXRlck1hdGNoZWRSb3V0ZTxUVmFyaWFibGVzPiB8IG51bGw7XG4gIC8qKiBPcmRlcmVkIGFjdGl2ZSBwcmVwYXJlZCBzZWdtZW50cyBmcm9tIG91dGVybW9zdCB0byBpbm5lcm1vc3QgKi9cbiAgc2VnbWVudHM6IFByZXBhcmVkUm91dGVTZWdtZW50czxUQ29udGV4dD47XG4gIC8qKiBCYWNrd2FyZC1jb21wYXRpYmxlIGFsaWFzIGtlcHQgZHVyaW5nIHRoZSBzZWdtZW50LW9yaWVudGVkIG1pZ3JhdGlvbiAqL1xuICByb3V0ZXM6IFByZXBhcmVkUm91dGVTZWdtZW50czxUQ29udGV4dD47XG59O1xuXG4vKiogQmFja3dhcmQtY29tcGF0aWJsZSBhbGlhcyBrZXB0IGR1cmluZyB0aGUgc2VnbWVudC1vcmllbnRlZCBtaWdyYXRpb24uICovXG5leHBvcnQgdHlwZSBQcmVwYXJlZE1hdGNoPFxuICBUVmFyaWFibGVzIGV4dGVuZHMgUGFyYW1EYXRhLFxuICBUQ29udGV4dCA9IHVua25vd24sXG4+ID0gUHJlcGFyZWRSb3V0ZUNoYWluPFRWYXJpYWJsZXMsIFRDb250ZXh0PjtcblxuZXhwb3J0IHR5cGUgUmVzb2x2ZWRQcmVwYXJlZFJvdXRlU2VnbWVudDxcbiAgVENvbnRleHQgPSB1bmtub3duLFxuICBUUHJlcGFyZWQgZXh0ZW5kcyBQcmVwYXJlUmVzdWx0ID0gUHJlcGFyZVJlc3VsdCxcbiAgVFZhcmlhYmxlcyBleHRlbmRzIFBhcmFtRGF0YSA9IFBhcmFtRGF0YSxcbiAgVFF1ZXJ5U2hhcGUgZXh0ZW5kcyBVbmtub3duUXVlcnlTaGFwZSA9IFVua25vd25RdWVyeVNoYXBlLFxuPiA9IHtcbiAgcm91dGVOb2RlPzogUm91dGVOb2RlO1xuICBwYXRoPzogc3RyaW5nO1xuICBmdWxsUGF0aD86IHN0cmluZztcbiAgc2VnbWVudEtleTogc3RyaW5nO1xuICBwYXJhbU5hbWVzOiByZWFkb25seSBzdHJpbmdbXTtcbiAgc2VnbWVudEluZGV4OiBudW1iZXI7XG4gIHByZXBhcmVkOiBUUHJlcGFyZWQgfCB1bmRlZmluZWQ7XG4gIHJlbmRlcj86IFJvdXRlUmVuZGVyPFRDb250ZXh0LCBUUHJlcGFyZWQsIFRWYXJpYWJsZXMsIFRRdWVyeVNoYXBlPjtcbiAgcmVkaXJlY3RUbzogc3RyaW5nIHwgbnVsbDtcbiAgcmVzb3VyY2VQYWdlPzogUmVzb3VyY2VQYWdlIHwgbnVsbDtcbiAgc3VzcGVuc2VCb3VuZGFyeTogUm91dGVTdXNwZW5zZUJvdW5kYXJ5O1xuICBmYWxsYmFjaz86IFJvdXRlRmFsbGJhY2s8VENvbnRleHQ+O1xuICBoaWdobGlnaHRJZD86IHN0cmluZztcbiAgcXVlcnlTY2hlbWE/OiBGaWx0ZXJTY2hlbWE7XG59O1xuXG5leHBvcnQgdHlwZSBSZXNvbHZlZFByZXBhcmVkTWF0Y2hSb3V0ZSA9IFJlc29sdmVkUHJlcGFyZWRSb3V0ZVNlZ21lbnQ7XG5cbmV4cG9ydCB0eXBlIFJlc29sdmVkUHJlcGFyZWRSb3V0ZUNoYWluPFxuICBUVmFyaWFibGVzIGV4dGVuZHMgUGFyYW1EYXRhLFxuICBUQ29udGV4dCA9IHVua25vd24sXG4+ID0ge1xuICBtYXRjaDogUm91dGVyTWF0Y2hlZFJvdXRlPFRWYXJpYWJsZXM+IHwgbnVsbDtcbiAgc2VnbWVudHM6IFJlc29sdmVkUHJlcGFyZWRSb3V0ZVNlZ21lbnQ8VENvbnRleHQ+W107XG4gIHJvdXRlczogUmVzb2x2ZWRQcmVwYXJlZFJvdXRlU2VnbWVudDxUQ29udGV4dD5bXTtcbn07XG5cbmV4cG9ydCB0eXBlIFJlc29sdmVkUHJlcGFyZWRNYXRjaDxcbiAgVFZhcmlhYmxlcyBleHRlbmRzIFBhcmFtRGF0YSxcbiAgVENvbnRleHQgPSB1bmtub3duLFxuPiA9IFJlc29sdmVkUHJlcGFyZWRSb3V0ZUNoYWluPFRWYXJpYWJsZXMsIFRDb250ZXh0PjtcblxuLyoqXG4gKiBDb21wbGV0ZSByb3V0ZSBlbnRyeSByZXByZXNlbnRpbmcgdGhlIGN1cnJlbnQgcm91dGVyIHN0YXRlLlxuICogQHRlbXBsYXRlIFRWYXJpYWJsZXMgLSBSb3V0ZSBwYXJhbWV0ZXIgdHlwZXMgZXh0cmFjdGVkIGZyb20gdGhlIFVSTCBwYXRoXG4gKi9cbmV4cG9ydCB0eXBlIFJvdXRlRW50cnk8XG4gIFRWYXJpYWJsZXMgZXh0ZW5kcyBQYXJhbURhdGEsXG4gIFMgZXh0ZW5kcyBGaWx0ZXJTY2hlbWEgfCB1bmRlZmluZWQgPSBGaWx0ZXJTY2hlbWEgfCB1bmRlZmluZWQsXG4gIFRDb250ZXh0ID0gdW5rbm93bixcbj4gPSB7XG4gIC8qKiBUaGUgcHJlcGFyZWQgbWF0Y2ggd2l0aCBsb2FkZWQgZGF0YSBhbmQgY29tcG9uZW50cyAqL1xuICBwcmVwYXJlZE1hdGNoOiBQcmVwYXJlZFJvdXRlQ2hhaW48VFZhcmlhYmxlcywgVENvbnRleHQ+O1xuICAvKiogR2xvYmFsIGxvYWQgc3RhdGUgZm9yIHRoZSBhY3RpdmUgcm91dGUuICovXG4gIGFjdGl2ZUxvYWRTdGF0ZTogUm91dGVyQWN0aXZlTG9hZFN0YXRlO1xuICAvKiogUGVyLXNlZ21lbnQgbG9hZCBzdGF0ZSBkZXRhaWxzIGZvciB0aGUgYWN0aXZlIHJvdXRlLiAqL1xuICBsb2FkU3RhdGU6IFJvdXRlckxvYWRTdGF0ZTtcbiAgLyoqIFJvdXRlci1sZXZlbCBjb250ZXh0IHJlc29sdmVkIGZvciB0aGlzIGVudHJ5ICovXG4gIGNvbnRleHQ6IFRDb250ZXh0O1xuICAvKiogQ3VycmVudCBicm93c2VyIGxvY2F0aW9uICovXG4gIGxvY2F0aW9uOiBIaXN0b3J5TG9jYXRpb25TbmFwc2hvdDtcbiAgLyoqIFRoZSBtYXRjaGVkIHJvdXRlIG9yIG51bGwgaWYgbm8gbWF0Y2ggKi9cbiAgcm91dGU6IFJvdXRlck1hdGNoZWRSb3V0ZTxUVmFyaWFibGVzPiB8IG51bGw7XG4gIC8qKiBXaGV0aGVyIHRvIGZvcmNlIGEgcmUtcmVuZGVyIGV2ZW4gaWYgdGhlIHBhdGggaGFzbid0IGNoYW5nZWQgKi9cbiAgZm9yY2VSZXJlbmRlcjogYm9vbGVhbjtcbiAgLyoqIFJhdyBzZWFyY2ggc3RyaW5nIChxdWVyeSBwYXJ0KSBvZiB0aGUgbG9jYXRpb24gZm9yIGNoYW5nZSBkZXRlY3Rpb24gKi9cbiAgcmF3U2VhcmNoPzogc3RyaW5nO1xuICAvKiogUGFyc2VkIHJhdyBxdWVyeSBwYXJhbWV0ZXJzICh2YWx1ZXMgYWdncmVnYXRlZDsgZHVwbGljYXRlcyA9PiBhcnJheSkgKi9cbiAgcXVlcnk6IFJhd1F1ZXJ5O1xuICAvKiogTGVnYWN5IHR5cGVkUXVlcnkgcmVtb3ZlZCDigJMgdW5pZmllZCBmaWx0ZXJzIGhhbmRsZSB0eXBlZCBhY2Nlc3MgKi9cbiAgLy8gdHlwZWRRdWVyeT86IG5ldmVyO1xuICAvKiogUGFyc2VkIGZpbHRlcnMgb2JqZWN0IGRlcml2ZWQgZnJvbSB0aGUgZGVlcGVzdCBhY3RpdmUgcXVlcnlTY2hlbWEgKGlmIGFueSkgKi9cbiAgZmlsdGVycz86IFMgZXh0ZW5kcyBGaWx0ZXJTY2hlbWEgPyBJbmZlckZpbHRlclJlc3VsdDxTPiA6IFVua25vd25GaWx0ZXJzO1xuICAvKiogRGlhZ25vc3RpY3MgZnJvbSBmaWx0ZXIgcGFyc2luZyAoaWYgYW55KSAqL1xuICBmaWx0ZXJEaWFnbm9zdGljcz86IEZpbHRlckRpYWdub3N0aWNbXTtcbiAgLyoqIERlZXBlc3QgYWN0aXZlIHF1ZXJ5IHNjaGVtYSAoRmlsdGVyU2NoZW1hIGZyb20gQHBsdW1pbGUvZmlsdGVyLXF1ZXJ5KSBmb3IgY3VycmVudCBtYXRjaGVkIHJvdXRlICovXG4gIGFjdGl2ZVF1ZXJ5U2NoZW1hPzogUztcbn07XG5cbi8vIFF1ZXJ5U2NoZW1hICYgZGVzY3JpcHRvcnMgcmVtb3ZlZCAoUGhhc2UgMiB1bmlmaWVkIG1vZGVsKSDigJMgaGlzdG9yaWNhbCB0eXBlcyBpbnRlbnRpb25hbGx5IG9taXR0ZWQuXG5cbi8qKlxuICogSFRUUCBzdGF0dXMgY29kZXMgZm9yIHJlZGlyZWN0cy5cbiAqL1xuZXhwb3J0IHR5cGUgUm91dGVyUmVkaXJlY3RTdGF0dXMgPSAzMDEgfCAzMDI7XG5cbi8qKlxuICogUmVwcmVzZW50cyBhIG1hdGNoZWQgcm91dGUgd2l0aCByZWdleCBtYXRjaCByZXN1bHQuXG4gKiBAdGVtcGxhdGUgVFZhcmlhYmxlcyAtIFJvdXRlIHBhcmFtZXRlciB0eXBlcyBleHRyYWN0ZWQgZnJvbSB0aGUgVVJMIHBhdGhcbiAqL1xuZXhwb3J0IHR5cGUgTWF0Y2hlZFJvdXRlPFRWYXJpYWJsZXMgZXh0ZW5kcyBQYXJhbURhdGE+ID0ge1xuICAvKiogVGhlIHJlZ2V4IG1hdGNoIHJlc3VsdCAqL1xuICBtYXRjaDogUmVnRXhwRXhlY0FycmF5O1xuICAvKiogVGhlIGZsYXQgcm91dGUgdGhhdCB3YXMgbWF0Y2hlZCAqL1xuICByb3V0ZTogRmxhdFJvdXRlPFRWYXJpYWJsZXM+O1xufTtcblxuLyoqXG4gKiBDb25maWd1cmF0aW9uIGZvciBhIHJvdXRlIHJlZGlyZWN0LlxuICovXG5leHBvcnQgdHlwZSBSZWRpcmVjdCA9IHtcbiAgLyoqIE9wdGlvbmFsIHNvdXJjZSBwYXRoIHBhdHRlcm4gKi9cbiAgcGF0aD86IHN0cmluZztcbiAgLyoqIERlc3RpbmF0aW9uIHBhdGggZm9yIHRoZSByZWRpcmVjdCAqL1xuICB0bzogc3RyaW5nO1xuICAvKiogSFRUUCBzdGF0dXMgY29kZSBmb3IgdGhlIHJlZGlyZWN0ICovXG4gIHN0YXR1cz86IFJvdXRlclJlZGlyZWN0U3RhdHVzO1xufTtcblxuLyoqIE1pbmltYWwgZXJhc2VkIHJvdXRlIG5vZGUgc2hhcGUgdXNlZCBieSBydW50aW1lIGhlbHBlcnMgYW5kIHJlY3Vyc2l2ZSByb3V0ZSB0cmVlcy4gKi9cbmV4cG9ydCB0eXBlIFJvdXRlTm9kZSA9IHtcbiAgY2hpbGRyZW4/OiByZWFkb25seSAoUm91dGVOb2RlIHwgUmVkaXJlY3QpW107XG4gIHBhdGg/OiBzdHJpbmc7XG4gIHByZXBhcmU/OiBCaXZhcmlhbnRDYWxsYmFjazxcbiAgICAocGFyYW1zOiBQcmVwYXJlUGFyYW1zPHVua25vd24sIFBhcmFtRGF0YT4pID0+IHVua25vd25cbiAgPjtcbiAgcHJlcGFyZVNlYXJjaEJlaGF2aW9yPzogUm91dGVQcmVwYXJlU2VhcmNoQmVoYXZpb3I7XG4gIHF1ZXJ5U2NoZW1hPzogRmlsdGVyU2NoZW1hO1xuICByZW5kZXI/OiBCaXZhcmlhbnRDYWxsYmFjazxcbiAgICAoXG4gICAgICBvcHRzOiBSb3V0ZVJlbmRlck9wdHM8dW5rbm93biwgdW5rbm93bj4sXG4gICAgKSA9PlxuICAgICAgUmVhY3RFbGVtZW50IHwgbnVsbCB8IHVuZGVmaW5lZCB8IFByb21pc2U8UmVhY3RFbGVtZW50IHwgbnVsbCB8IHVuZGVmaW5lZD5cbiAgPjtcbiAgcmVzb3VyY2VQYWdlPzogUmVzb3VyY2VQYWdlIHwgbnVsbDtcbiAgc3VzcGVuc2VCb3VuZGFyeT86IFJvdXRlU3VzcGVuc2VCb3VuZGFyeTtcbiAgZmFsbGJhY2s/OiBSb3V0ZUZhbGxiYWNrO1xufTtcblxuLyoqXG4gKiBCYXNlIHR5cGUgZm9yIGRhdGEgcHJlcGFyZWQgYnkgcm91dGUgcHJlcGFyZSBmdW5jdGlvbnMuXG4gKi9cbmV4cG9ydCB0eXBlIFByZXBhcmVSZXN1bHQgPSB1bmtub3duO1xuXG4vKipcbiAqIFBhcmFtZXRlcnMgcGFzc2VkIHRvIGEgcm91dGUncyBwcmVwYXJlIGZ1bmN0aW9uLlxuICogQHRlbXBsYXRlIFRWYXJpYWJsZXMgLSBSb3V0ZSBwYXJhbWV0ZXIgdHlwZXMgZXh0cmFjdGVkIGZyb20gdGhlIFVSTCBwYXRoXG4gKi9cbmV4cG9ydCB0eXBlIFByZXBhcmVQYXJhbXM8XG4gIFRDb250ZXh0LFxuICBUVmFyaWFibGVzIGV4dGVuZHMgUGFyYW1EYXRhLFxuICBUUXVlcnlTaGFwZSBleHRlbmRzIFVua25vd25RdWVyeVNoYXBlID0gVW5rbm93blF1ZXJ5U2hhcGUsXG4gIFMgZXh0ZW5kcyBGaWx0ZXJTY2hlbWEgfCB1bmRlZmluZWQgPSBGaWx0ZXJTY2hlbWEgfCB1bmRlZmluZWQsXG4+ID0ge1xuICAvKiogVGhlIG1hdGNoZWQgcm91dGUgd2l0aCBleHRyYWN0ZWQgcGFyYW1ldGVycyAqL1xuICBtYXRjaDogUm91dGVyTWF0Y2hlZFJvdXRlPFRWYXJpYWJsZXM+O1xuICAvKiogVGhlIGZsYXQgcm91dGUgdGhhdCB3YXMgbWF0Y2hlZCAqL1xuICBtYXRjaGVkUm91dGU6IEZsYXRSb3V0ZTxUVmFyaWFibGVzPjtcbiAgLyoqIFJvdXRlci1sZXZlbCBjb250ZXh0ICovXG4gIGNvbnRleHQ6IFRDb250ZXh0O1xuICAvKiogUmVzb3VyY2UgcGFnZSBmb3IgbGF6eS1sb2FkZWQgY29tcG9uZW50cyAqL1xuICByZXNvdXJjZVBhZ2U/OiBSZXNvdXJjZVBhZ2UgfCBudWxsO1xuICAvKiogRXh0cmFjdGVkIFVSTCBwYXJhbWV0ZXJzICovXG4gIHZhcmlhYmxlczogVFZhcmlhYmxlcztcbiAgLyoqIFJhdyBVUkwgcXVlcnkgdmFsdWVzLiAqL1xuICBxdWVyeTogVFF1ZXJ5U2hhcGU7XG4gIC8qKiBSYXcgcXVlcnkgdmFsdWVzIGJlZm9yZSBzY2hlbWEgcGFyc2luZy4gKi9cbiAgcmF3UXVlcnk6IFJhd1F1ZXJ5O1xuICAvKiogUGFyc2VkIGZpbHRlcnMgd2hlbiB0aGlzIGRlc3RpbmF0aW9uIGRlY2xhcmVzIGEgcXVlcnkgc2NoZW1hLiAqL1xuICBmaWx0ZXJzOiBTIGV4dGVuZHMgRmlsdGVyU2NoZW1hXG4gICAgPyBJbmZlckZpbHRlclJlc3VsdDxTPlxuICAgIDogVW5rbm93bkZpbHRlcnMgfCB1bmRlZmluZWQ7XG59O1xuXG4vKiogQWxpYXMgZm9yIHByZXBhcmUgYXJncyAoa2VwdCBmb3IgcHVibGljIEFQSSBjbGFyaXR5KS4gKi9cbmV4cG9ydCB0eXBlIFJvdXRlUHJlcGFyZUFyZ3M8XG4gIFRDb250ZXh0LFxuICBUVmFyaWFibGVzIGV4dGVuZHMgUGFyYW1EYXRhID0gUGFyYW1EYXRhLFxuICBUUXVlcnlTaGFwZSBleHRlbmRzIFVua25vd25RdWVyeVNoYXBlID0gVW5rbm93blF1ZXJ5U2hhcGUsXG4gIFMgZXh0ZW5kcyBGaWx0ZXJTY2hlbWEgfCB1bmRlZmluZWQgPSBGaWx0ZXJTY2hlbWEgfCB1bmRlZmluZWQsXG4+ID0gUHJlcGFyZVBhcmFtczxUQ29udGV4dCwgVFZhcmlhYmxlcywgVFF1ZXJ5U2hhcGUsIFM+O1xuXG4vKipcbiAqIEZ1bmN0aW9uIHRvIHByZXBhcmUgZGF0YSBmb3IgYSByb3V0ZSBiZWZvcmUgcmVuZGVyaW5nLlxuICogQHRlbXBsYXRlIFRQcmVwYXJlZCAtIFRoZSB0eXBlIG9mIGRhdGEgdGhpcyBmdW5jdGlvbiByZXR1cm5zXG4gKiBAdGVtcGxhdGUgVFZhcmlhYmxlcyAtIFJvdXRlIHBhcmFtZXRlciB0eXBlcyBleHRyYWN0ZWQgZnJvbSB0aGUgVVJMIHBhdGhcbiAqL1xuZXhwb3J0IHR5cGUgUm91dGVQcmVwYXJlPFxuICBUQ29udGV4dCxcbiAgVFByZXBhcmVkIGV4dGVuZHMgUHJlcGFyZVJlc3VsdCxcbiAgVFZhcmlhYmxlcyBleHRlbmRzIFBhcmFtRGF0YSA9IFBhcmFtRGF0YSxcbiAgVFF1ZXJ5U2hhcGUgZXh0ZW5kcyBVbmtub3duUXVlcnlTaGFwZSA9IFVua25vd25RdWVyeVNoYXBlLFxuICBTIGV4dGVuZHMgRmlsdGVyU2NoZW1hIHwgdW5kZWZpbmVkID0gRmlsdGVyU2NoZW1hIHwgdW5kZWZpbmVkLFxuPiA9IEJpdmFyaWFudENhbGxiYWNrPFxuICAoXG4gICAgcGFyYW1zOiBQcmVwYXJlUGFyYW1zPFRDb250ZXh0LCBUVmFyaWFibGVzLCBUUXVlcnlTaGFwZSwgUz4sXG4gICkgPT4gTWF5YmVQcm9taXNlPFRQcmVwYXJlZD5cbj47XG5cbi8qKlxuICogQ29uZmlndXJhdGlvbiBmb3IgYSBzaW5nbGUgcm91dGUgaW4gdGhlIHJvdXRlci5cbiAqIEB0ZW1wbGF0ZSBUUHJlcGFyZWQgLSBUaGUgdHlwZSBvZiBwcmVwYXJlZCBkYXRhIHJldHVybmVkIGJ5IHRoZSByb3V0ZSdzIHByZXBhcmUgZnVuY3Rpb25cbiAqIEB0ZW1wbGF0ZSBUVmFyaWFibGVzIC0gUm91dGUgcGFyYW1ldGVyIHR5cGVzIGV4dHJhY3RlZCBmcm9tIHRoZSBVUkwgcGF0aFxuICovXG5leHBvcnQgdHlwZSBSb3V0ZTxcbiAgVENvbnRleHQsXG4gIFRQcmVwYXJlZCBleHRlbmRzIFByZXBhcmVSZXN1bHQsXG4gIFRWYXJpYWJsZXMgZXh0ZW5kcyBQYXJhbURhdGEgPSBQYXJhbURhdGEsXG4gIFRRdWVyeVNoYXBlIGV4dGVuZHMgVW5rbm93blF1ZXJ5U2hhcGUgPSBVbmtub3duUXVlcnlTaGFwZSxcbiAgUyBleHRlbmRzIEZpbHRlclNjaGVtYSB8IHVuZGVmaW5lZCA9IEZpbHRlclNjaGVtYSB8IHVuZGVmaW5lZCxcbiAgVENoaWxkcmVuIGV4dGVuZHMgcmVhZG9ubHkgKFJvdXRlTm9kZSB8IFJlZGlyZWN0KVtdIHwgdW5kZWZpbmVkID1cbiAgICByZWFkb25seSAoUm91dGVOb2RlIHwgUmVkaXJlY3QpW10gfCB1bmRlZmluZWQsXG4+ID0ge1xuICAvKipcbiAgICogTmVzdGVkIGNoaWxkIHJvdXRlcyBvciByZWRpcmVjdHMuXG4gICAqXG4gICAqIElNUE9SVEFOVDogVGhpcyB1c2VkIHRvIGJlIHR5cGVkIGFzIGAoUm91dGU8YW55LCBQcmVwYXJlUmVzdWx0PiB8IFJlZGlyZWN0KVtdYCB3aGljaFxuICAgKiB3aWRlbmVkIChlcmFzZWQpIHRoZSBnZW5lcmljIHBhcmFtZXRlciB0eXBlcyAobm90YWJseSB0aGUgYFRWYXJpYWJsZXNgIG9mIGVhY2hcbiAgICogY2hpbGQpLiBUaGF0IGNhdXNlZCBUeXBlU2NyaXB0IHRvIHRyZWF0IGV2ZXJ5IGNoaWxkIHJvdXRlJ3MgYHByZXBhcmVgIGNhbGxiYWNrXG4gICAqIGFzIGFjY2VwdGluZyB0aGUgZGVmYXVsdCBgUGFyYW1EYXRhYCBzaGFwZSAoZWZmZWN0aXZlbHkgYFBhcnRpYWw8UmVjb3JkPHN0cmluZyxzdHJpbmd8c3RyaW5nW10+PmApLlxuICAgKiBXaGVuIHVzZXIgY29kZSBzcGVjaWZpZWQgYSBtb3JlIHNwZWNpZmljIHBhcmFtZXRlciBvYmplY3QgKGUuZy4gYHsgc2x1Zzogc3RyaW5nIH1gKVxuICAgKiBmb3IgYSBwYXRoIGxpa2UgYDpzbHVnYCwgdGhlIGZ1bmN0aW9uIHR5cGUgYmVjYW1lIG5vbuKAkWFzc2lnbmFibGUgYmVjYXVzZSBpdHNcbiAgICogcGFyYW1ldGVyIHdhcyBzdHJpY3RlciB0aGFuIHRoZSB3aWRlbmVkIHZlcnNpb24uIEJ5IHN3aXRjaGluZyB0byBgQW55Um91dGVgIHdlXG4gICAqIHJldGFpbiBgYW55YCBpbiB0aGUgZXJhc2VkIHBvc2l0aW9uIGluc3RlYWQgb2YgYSBjb25jcmV0ZSBgUGFyYW1EYXRhYCwgd2hpY2hcbiAgICogYWxsb3dzIHN0cmljdGVyIGNoaWxkIGB2YXJpYWJsZXNgIHNoYXBlcyB3aXRob3V0IGNvbmZsaWN0LlxuICAgKlxuICAgKiBVc2luZyBgQW55Um91dGVgIHB1cnBvc2VseSBwcmVzZXJ2ZXMgaW5kZXBlbmRlbmNlIG9mIGVhY2ggcm91dGUncyBnZW5lcmljXG4gICAqIHBhcmFtZXRlcnMgd2hpbGUgc3RpbGwga2VlcGluZyBydW50aW1lIHJlcHJlc2VudGF0aW9uIGlkZW50aWNhbC5cbiAgICovXG4gIGNoaWxkcmVuPzogVENoaWxkcmVuO1xuICAvKiogUmVzb3VyY2UgcGFnZSBmb3IgbGF6eS1sb2FkZWQgY29tcG9uZW50cyAqL1xuICByZXNvdXJjZVBhZ2U/OiBSZXNvdXJjZVBhZ2UgfCBudWxsO1xuICAvKiogQ29udHJvbHMgd2hldGhlciB0aGlzIHJvdXRlIHNlZ21lbnQgb3ducyBhIGxvY2FsIFN1c3BlbnNlIGJvdW5kYXJ5LiAqL1xuICBzdXNwZW5zZUJvdW5kYXJ5PzogUm91dGVTdXNwZW5zZUJvdW5kYXJ5O1xuICAvKiogRmFsbGJhY2sgdXNlZCBieSB0aGlzIHJvdXRlIHNlZ21lbnQgd2hlbiBpdHMgbG9jYWwgU3VzcGVuc2UgYm91bmRhcnkgaXMgYWN0aXZlLiAqL1xuICBmYWxsYmFjaz86IFJvdXRlRmFsbGJhY2s8VENvbnRleHQ+O1xuICAvKiogVVJMIHBhdGggcGF0dGVybiBmb3IgdGhpcyByb3V0ZSAqL1xuICBwYXRoPzogc3RyaW5nO1xuICAvKiogRnVuY3Rpb24gdG8gcHJlcGFyZSBkYXRhIGJlZm9yZSByZW5kZXJpbmcgKi9cbiAgcHJlcGFyZT86IFJvdXRlUHJlcGFyZTxUQ29udGV4dCwgVFByZXBhcmVkLCBUVmFyaWFibGVzLCBUUXVlcnlTaGFwZSwgUz47XG4gIC8qKlxuICAgKiBDb250cm9scyB3aGV0aGVyIHRoaXMgcm91dGUncyBwcmVwYXJlIGZ1bmN0aW9uIHNob3VsZCBydW4gYWdhaW4gd2hlbiBvbmx5XG4gICAqIHRoZSBVUkwgc2VhcmNoIGNoYW5nZXMuIERlZmF1bHRzIHRvIGBhbHdheXNgIGZvciBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eS5cbiAgICovXG4gIHByZXBhcmVTZWFyY2hCZWhhdmlvcj86IFJvdXRlUHJlcGFyZVNlYXJjaEJlaGF2aW9yO1xuICAvKiogQ3VzdG9tIHJlbmRlciBmdW5jdGlvbiBmb3IgdGhpcyByb3V0ZSAqL1xuICByZW5kZXI/OiBSb3V0ZVJlbmRlcjxUQ29udGV4dCwgVFByZXBhcmVkLCBUVmFyaWFibGVzLCBUUXVlcnlTaGFwZSwgUz47XG4gIC8qKiBVbmlmaWVkIHNjaGVtYSAoZmlsdGVyIC8gcXVlcnkpICovXG4gIHF1ZXJ5U2NoZW1hPzogUztcbn07XG5cbi8qKlxuICogUHJvcHMgcGFzc2VkIHRvIFJvdXRlQ29tcG9uZW50IGluc3RhbmNlcy5cbiAqIEB0ZW1wbGF0ZSBUVmFyaWFibGVzIC0gUm91dGUgcGFyYW1ldGVyIHR5cGVzIGV4dHJhY3RlZCBmcm9tIHRoZSBVUkwgcGF0aFxuICovXG5leHBvcnQgdHlwZSBSb3V0ZUNvbXBvbmVudFByb3BzPFxuICBUVmFyaWFibGVzIGV4dGVuZHMgUGFyYW1EYXRhLFxuICBTIGV4dGVuZHMgRmlsdGVyU2NoZW1hIHwgdW5kZWZpbmVkID0gRmlsdGVyU2NoZW1hIHwgdW5kZWZpbmVkLFxuICBUUXVlcnlTaGFwZSBleHRlbmRzIFVua25vd25RdWVyeVNoYXBlID0gVW5rbm93blF1ZXJ5U2hhcGUsXG4+ID0ge1xuICAvKiogQ2hpbGQgY29tcG9uZW50cyB0byByZW5kZXIgKi9cbiAgY2hpbGRyZW46IFJlYWN0RWxlbWVudDtcbiAgLyoqIFJvdXRlciBjb250ZXh0IGNvbnRhaW5pbmcgbmF2aWdhdGlvbiBhbmQgc3RhdGUgKi9cbiAgcm91dGVyQ29udGV4dDogUm91dGluZ0NvbnRleHRUeXBlPFRWYXJpYWJsZXMsIFMsIFRRdWVyeVNoYXBlPjtcbiAgLyoqIFRoZSByb3V0ZSBjb25maWd1cmF0aW9uICovXG4gIHJvdXRlOiBSb3V0ZTx1bmtub3duLCB1bmtub3duLCBQYXJhbURhdGEsIFVua25vd25RdWVyeVNoYXBlLCBTPjtcbn07XG5cbi8qKlxuICogQ2FsbGJhY2sgZnVuY3Rpb24gZm9yIHJvdXRlIGNoYW5nZXMuXG4gKiBAdGVtcGxhdGUgVFZhcmlhYmxlcyAtIFJvdXRlIHBhcmFtZXRlciB0eXBlcyBleHRyYWN0ZWQgZnJvbSB0aGUgVVJMIHBhdGhcbiAqL1xuZXhwb3J0IHR5cGUgU3Vic2NyaWJlQ2FsbGJhY2s8XG4gIFRWYXJpYWJsZXMgZXh0ZW5kcyBQYXJhbURhdGEsXG4gIFMgZXh0ZW5kcyBGaWx0ZXJTY2hlbWEgfCB1bmRlZmluZWQgPSBGaWx0ZXJTY2hlbWEgfCB1bmRlZmluZWQsXG4gIFRDb250ZXh0ID0gdW5rbm93bixcbj4gPSAobmV4dEVudHJ5OiBSb3V0ZUVudHJ5PFRWYXJpYWJsZXMsIFMsIFRDb250ZXh0PikgPT4gdm9pZDtcblxuZXhwb3J0IHR5cGUgUHJlbG9hZFRhcmdldCA9IHtcbiAgcGF0aG5hbWU6IHN0cmluZztcbiAgc2VhcmNoPzogc3RyaW5nO1xuICBzb3VyY2U/OiBzdHJpbmc7XG59O1xuXG4vKipcbiAqIFJvdXRlciBjb250ZXh0IHR5cGUgdGhhdCBwcm92aWRlcyBuYXZpZ2F0aW9uIGFuZCBzdGF0ZSBtYW5hZ2VtZW50LlxuICogQHRlbXBsYXRlIFRWYXJpYWJsZXMgLSBSb3V0ZSBwYXJhbWV0ZXIgdHlwZXMgZXh0cmFjdGVkIGZyb20gdGhlIFVSTCBwYXRoXG4gKi9cbmV4cG9ydCB0eXBlIFJvdXRpbmdDb250ZXh0VHlwZTxcbiAgVFZhcmlhYmxlcyBleHRlbmRzIFBhcmFtRGF0YSxcbiAgUyBleHRlbmRzIEZpbHRlclNjaGVtYSB8IHVuZGVmaW5lZCA9IEZpbHRlclNjaGVtYSB8IHVuZGVmaW5lZCxcbiAgVFF1ZXJ5U2hhcGUgZXh0ZW5kcyBVbmtub3duUXVlcnlTaGFwZSA9IFVua25vd25RdWVyeVNoYXBlLFxuICBUQ29udGV4dCA9IHVua25vd24sXG4+ID0ge1xuICAvKipcbiAgICogU2VyaWFsaXplcyBxdWVyeSBwYXJhbWV0ZXJzIGFuZCBmaWx0ZXJzIHdpdGggdGhlIHNjaGVtYSBvZiB0aGUgZGVzdGluYXRpb25cbiAgICogcm91dGUuIFVubGlrZSBuYXZpZ2F0ZSgpLCB0aGlzIG9ubHkgaW5jbHVkZXMgdmFsdWVzIHN1cHBsaWVkIGJ5IHRoZSBjYWxsZXIuXG4gICAqL1xuICBidWlsZFNlYXJjaDogKG9wdHM6IHtcbiAgICBwYXRobmFtZT86IHN0cmluZztcbiAgICBxdWVyeT86IFVua25vd25RdWVyeVNoYXBlO1xuICAgIGZpbHRlcnM/OiBVbmtub3duRmlsdGVycztcbiAgfSkgPT4gc3RyaW5nO1xuICAvKiogQnJvd3NlciBoaXN0b3J5IGluc3RhbmNlIGZvciBuYXZpZ2F0aW9uICovXG4gIGhpc3Rvcnk6IEhpc3Rvcnk7XG4gIC8qKiBHZXQgdGhlIGN1cnJlbnQgcm91dGUgZW50cnkgKi9cbiAgZ2V0OiAoKSA9PiBSb3V0ZUVudHJ5PFRWYXJpYWJsZXMsIFMsIFRDb250ZXh0PjtcbiAgLyoqIFByZWxvYWQgY29kZSBmb3IgYSByb3V0ZSB3aXRob3V0IHN0b3JpbmcgdGhlIHJlc3VsdCAqL1xuICBwcmVsb2FkQ29kZTogKHRhcmdldDogUHJlbG9hZFRhcmdldCkgPT4gdm9pZDtcbiAgLyoqIFByZWxvYWQgY29kZSBhbmQgZGF0YSBmb3IgYSByb3V0ZSB3aXRob3V0IHN0b3JpbmcgdGhlIHJlc3VsdCAqL1xuICBwcmVsb2FkOiAodGFyZ2V0OiBQcmVsb2FkVGFyZ2V0KSA9PiB2b2lkO1xuICAvKiogU3Vic2NyaWJlIHRvIHJvdXRlIGNoYW5nZXMgKHNjaGVtYSBkZXJpdmFibGUsIG5vdCBuZWVkZWQgaW4gc2lnbmF0dXJlKSAqL1xuICBzdWJzY3JpYmU6IChcbiAgICBjYWxsYmFjazogU3Vic2NyaWJlQ2FsbGJhY2s8VFZhcmlhYmxlcywgUywgVENvbnRleHQ+LFxuICApID0+ICgpID0+IHZvaWQ7XG4gIC8qKiBOYXZpZ2F0ZSB3aXRoIG9wdGlvbmFsIHBhdGhuYW1lIGFuZCB0eXBlZC9yYXcgcXVlcnkgb2JqZWN0ICovXG4gIG5hdmlnYXRlOiAob3B0czoge1xuICAgIHBhdGhuYW1lPzogc3RyaW5nO1xuICAgIHF1ZXJ5PzogVFF1ZXJ5U2hhcGU7XG4gICAgLyoqIE9wdGlvbmFsIGZpbHRlcnMgb2JqZWN0IHRvIHNlcmlhbGl6ZSB1c2luZyB0aGUgYWN0aXZlIHF1ZXJ5U2NoZW1hICovXG4gICAgZmlsdGVycz86IFMgZXh0ZW5kcyBGaWx0ZXJTY2hlbWEgPyBJbmZlckZpbHRlclJlc3VsdDxTPiA6IFVua25vd25GaWx0ZXJzO1xuICAgIGhhc2g/OiBzdHJpbmc7XG4gICAgcmVwbGFjZT86IGJvb2xlYW47XG4gIH0pID0+IHZvaWQ7XG59O1xuXG4vKipcbiAqIFJldHVybiB0eXBlIGZvciByZXNvdXJjZSBwYWdlIGxvYWRlcnMuXG4gKi9cbmV4cG9ydCB0eXBlIFJlc291cmNlUGFnZVJldHVybiA9XG4gIHsgZGVmYXVsdDogQ29tcG9uZW50VHlwZTxuZXZlcj4gfSB8IENvbXBvbmVudFR5cGU8bmV2ZXI+O1xuXG4vKipcbiAqIEZ1bmN0aW9uIHRoYXQgbG9hZHMgYSByZXNvdXJjZSBwYWdlIGNvbXBvbmVudC5cbiAqL1xuZXhwb3J0IHR5cGUgUmVzb3VyY2VQYWdlTG9hZGVyID0gKCkgPT4gUHJvbWlzZTxSZXNvdXJjZVBhZ2VSZXR1cm4+O1xuXG5leHBvcnQgdHlwZSBQcmVwYXJlZFZhbHVlUmVzb3VyY2U8XG4gIFRQcmVwYXJlZCBleHRlbmRzIFByZXBhcmVSZXN1bHQgPSBQcmVwYXJlUmVzdWx0LFxuPiA9IFJlYWRhYmxlUmVzb3VyY2U8VFByZXBhcmVkPjtcblxuLyoqIFV0aWxpdHk6IGluZmVyIGZpbHRlcnMgdHlwZSBmb3IgYSBnaXZlbiBxdWVyeSBzY2hlbWEgKi9cbmV4cG9ydCB0eXBlIEluZmVyRmlsdGVyczxTIGV4dGVuZHMgRmlsdGVyU2NoZW1hPiA9IEluZmVyRmlsdGVyUmVzdWx0PFM+O1xuXG5leHBvcnQgdHlwZSB7IEZpbHRlclNjaGVtYSB9O1xuXG4vKiogUmUtZXhwb3J0IGhlbHBlciBmaWx0ZXItcXVlcnkgdHlwZSBmb3IgdXNlciBjb252ZW5pZW5jZSAqL1xuZXhwb3J0IHR5cGUgeyBJbmZlckZpbHRlckZpZWxkIGFzIEluZmVyRmllbGQgfTtcblxuLyoqXG4gKiBTdHJvbmdseSB0eXBlZCBmaWx0ZXIgYWN0aW9ucyAoUGhhc2UgMSBiYXNlIHR5cGVzKS4gSW1wbGVtZW50YXRpb24gd2lsbCBiZSB3aXJlZFxuICogaW4gYSBsYXRlciBwaGFzZSB3aGVuIGB1c2VGaWx0ZXJzYCBiZWNvbWVzIGdlbmVyaWMuXG4gKlxuICogUzogU2NoZW1hIHR5cGUgcGFzc2VkIHRvIHRoZSBob29rL3JvdXRlLlxuICovXG5leHBvcnQgdHlwZSBUeXBlZEZpbHRlckFjdGlvbnM8UyBleHRlbmRzIEZpbHRlclNjaGVtYT4gPSB7XG4gIC8qKiBTZXQgb3IgdW5zZXQgKHZhbHVlID0gdW5kZWZpbmVkKSBhIHNwZWNpZmljIG9wZXJhdG9yIHZhbHVlIGZvciBhIGZpZWxkICovXG4gIHNldDogPFxuICAgIEYgZXh0ZW5kcyBrZXlvZiBTICYgc3RyaW5nLFxuICAgIE8gZXh0ZW5kcyBrZXlvZiBOb25OdWxsYWJsZTxJbmZlckZpbHRlclJlc3VsdDxTPltGXT4gJiBzdHJpbmcsXG4gID4oXG4gICAgZmllbGQ6IEYsXG4gICAgb3BlcmF0b3I6IE8sXG4gICAgdmFsdWU6IE5vbk51bGxhYmxlPEluZmVyRmlsdGVyUmVzdWx0PFM+W0ZdPltPXSB8IHVuZGVmaW5lZCxcbiAgICBvcHRzPzogeyByZXBsYWNlPzogYm9vbGVhbiB9LFxuICApID0+IHZvaWQ7XG4gIC8qKiBSZW1vdmUgYSB3aG9sZSBmaWVsZCBvciBhIHNwZWNpZmljIG9wZXJhdG9yICovXG4gIHJlbW92ZTogPFxuICAgIEYgZXh0ZW5kcyBrZXlvZiBTICYgc3RyaW5nLFxuICAgIE8gZXh0ZW5kcyBrZXlvZiBOb25OdWxsYWJsZTxJbmZlckZpbHRlclJlc3VsdDxTPltGXT4gJiBzdHJpbmcsXG4gID4oXG4gICAgZmllbGQ6IEYsXG4gICAgb3BlcmF0b3I/OiBPLFxuICAgIG9wdHM/OiB7IHJlcGxhY2U/OiBib29sZWFuIH0sXG4gICkgPT4gdm9pZDtcbiAgLyoqIE1lcmdlIGEgcGFydGlhbCBmaWx0ZXJzIG9iamVjdCAqL1xuICBtZXJnZTogKFxuICAgIHBhdGNoOiBQYXJ0aWFsPEluZmVyRmlsdGVyUmVzdWx0PFM+PixcbiAgICBvcHRzPzogeyByZXBsYWNlPzogYm9vbGVhbiB9LFxuICApID0+IHZvaWQ7XG4gIC8qKiBDbGVhciBhbGwgZmlsdGVycyAqL1xuICBjbGVhcjogKG9wdHM/OiB7IHJlcGxhY2U/OiBib29sZWFuIH0pID0+IHZvaWQ7XG59O1xuXG4vKiogTWluaW1hbCByb3V0ZSBub2RlIHNoYXBlIHVzZWQgYnkgcmVjdXJzaXZlIHRyZWUgdXRpbGl0aWVzLiAqL1xuZXhwb3J0IHR5cGUgUm91dGVUcmVlTm9kZSA9IFJvdXRlTm9kZTtcblxuLyoqXG4gKiBDb252ZW5pZW5jZSB1bWJyZWxsYSByb3V0ZSB0eXBlLlxuICogVXNlZCB3aGVyZSB3ZSBqdXN0IHdhbnQgdG8gY2FycnkgYXJiaXRyYXJ5IHJvdXRlIGdlbmVyaWNzIGZvcndhcmQgd2l0aG91dCBlcmFzdXJlLlxuICovXG5leHBvcnQgdHlwZSBVbmtub3duUm91dGU8VENvbnRleHQgPSB1bmtub3duPiA9IFJvdXRlPFRDb250ZXh0LCB1bmtub3duPjtcblxuLyoqIEJhY2t3YXJkLWNvbXBhdGlibGUgdW1icmVsbGEgcm91dGUgdHlwZS4gKi9cbmV4cG9ydCB0eXBlIEFueVJvdXRlID0gUm91dGVOb2RlO1xuXG4vKiogRXh0cmFjdCBuZXN0ZWQgY2hpbGQgcm91dGUgdW5pb24gZnJvbSBhIHJvdXRlIGRlZmluaXRpb24uICovXG5leHBvcnQgdHlwZSBDaGlsZFJvdXRlT2Y8Uj4gPSBSIGV4dGVuZHMgeyBjaGlsZHJlbj86IHJlYWRvbmx5IChpbmZlciBDKVtdIH1cbiAgPyBFeHRyYWN0PEMsIFJvdXRlVHJlZU5vZGU+XG4gIDogbmV2ZXI7XG5cbi8qKiBSZWN1cnNpdmVseSBmbGF0dGVuIGEgcm91dGUgdHJlZSBpbnRvIGEgcm91dGUgdW5pb24uICovXG5leHBvcnQgdHlwZSBSb3V0ZVRyZWVSb3V0ZVVuaW9uPFI+ID0gUiBleHRlbmRzIFJvdXRlVHJlZU5vZGVcbiAgPyBSIHwgUm91dGVUcmVlUm91dGVVbmlvbjxDaGlsZFJvdXRlT2Y8Uj4+XG4gIDogbmV2ZXI7XG5cbi8qKiBGbGF0dGVuIGEgdHVwbGUgb2Ygcm91dGVzIGludG8gYSByZWN1cnNpdmUgcm91dGUgdW5pb24uICovXG5leHBvcnQgdHlwZSBSb3V0ZVVuaW9uPFJvdXRlcyBleHRlbmRzIHJlYWRvbmx5IHVua25vd25bXT4gPSBSb3V0ZVRyZWVSb3V0ZVVuaW9uPFxuICBSb3V0ZXNbbnVtYmVyXVxuPjtcblxuLyoqIEV4dHJhY3QgdGhlIHByZXBhcmVkIHR5cGUgZnJvbSBhIFJvdXRlICovXG50eXBlIFJvdXRlVHlwZVBhcnRzPFI+ID1cbiAgUiBleHRlbmRzIFJvdXRlPFxuICAgIGluZmVyIFRDb250ZXh0LFxuICAgIGluZmVyIFRQcmVwYXJlZCxcbiAgICBpbmZlciBUVmFycyxcbiAgICBpbmZlciBUUXVlcnksXG4gICAgaW5mZXIgVFNjaGVtYSxcbiAgICBpbmZlciBUQ2hpbGRyZW4gZXh0ZW5kcyByZWFkb25seSAoUm91dGVOb2RlIHwgUmVkaXJlY3QpW10gfCB1bmRlZmluZWRcbiAgPlxuICAgID8ge1xuICAgICAgICBjb250ZXh0OiBUQ29udGV4dDtcbiAgICAgICAgcHJlcGFyZWQ6IFRQcmVwYXJlZDtcbiAgICAgICAgdmFyaWFibGVzOiBUVmFycztcbiAgICAgICAgcXVlcnk6IFRRdWVyeTtcbiAgICAgICAgc2NoZW1hOiBUU2NoZW1hO1xuICAgICAgICBjaGlsZHJlbjogVENoaWxkcmVuO1xuICAgICAgfVxuICAgIDogbmV2ZXI7XG5cbi8qKiBFeHRyYWN0IHRoZSBwcmVwYXJlZCB0eXBlIGZyb20gYSBSb3V0ZSAqL1xuZXhwb3J0IHR5cGUgUHJlcGFyZWRPZjxSPiA9IFJvdXRlVHlwZVBhcnRzPFI+WydwcmVwYXJlZCddO1xuLyoqIEV4dHJhY3QgdGhlIHZhcmlhYmxlcyB0eXBlIGZyb20gYSBSb3V0ZSAqL1xuZXhwb3J0IHR5cGUgVmFyaWFibGVzT2Y8Uj4gPSBSb3V0ZVR5cGVQYXJ0czxSPlsndmFyaWFibGVzJ107XG4vKiogRXh0cmFjdCB0aGUgcXVlcnkgc2hhcGUgdHlwZSBmcm9tIGEgUm91dGUgKi9cbmV4cG9ydCB0eXBlIFF1ZXJ5U2hhcGVPZjxSPiA9IFJvdXRlVHlwZVBhcnRzPFI+WydxdWVyeSddO1xuXG4vKiogUGF0aCBsaXRlcmFsIHR5cGUgaWYgcHJlc2VudCAqL1xuZXhwb3J0IHR5cGUgUGF0aE9mPFI+ID0gUiBleHRlbmRzIHsgcGF0aD86IGluZmVyIFAgfVxuICA/IFAgZXh0ZW5kcyBzdHJpbmdcbiAgICA/IFBcbiAgICA6IG5ldmVyXG4gIDogbmV2ZXI7XG5cbi8qKiBVbmlvbiBvZiBhbGwgY29uY3JldGUgcGF0aCBzdHJpbmdzIGZyb20gYSB0dXBsZS9hcnJheSBvZiByb3V0ZXMgKHJlY3Vyc2l2ZSkuICovXG5leHBvcnQgdHlwZSBQYXRoc09mPFJvdXRlcyBleHRlbmRzIHJlYWRvbmx5IHVua25vd25bXT4gPSBQYXRoT2Y8XG4gIFJvdXRlVW5pb248Um91dGVzPlxuPjtcblxuLyoqIE1hcCBwYXRoIC0+IHByZXBhcmVkIHR5cGUgdW5pb24gKHBlci1yb3V0ZSBwcmVjaXNpb24gaXMgaW50ZW50aW9uYWxseSBlcmFzZWQgaGVyZSkuICovXG5leHBvcnQgdHlwZSBQcmVwYXJlZE1hcDxSb3V0ZXMgZXh0ZW5kcyByZWFkb25seSB1bmtub3duW10+ID0gUmVjb3JkPFxuICBQYXRoc09mPFJvdXRlcz4sXG4gIFByZXBhcmVkT2Y8Um91dGVVbmlvbjxSb3V0ZXM+PiB8IHVuZGVmaW5lZFxuPjtcblxuLyoqIE1hcCBwYXRoIC0+IG9yZGVyZWQgcHJlcGFyZWQgc2VnbWVudCB0dXBsZSBvciBhcnJheSBzaGFwZS4gKi9cbmV4cG9ydCB0eXBlIFByZXBhcmVkU2VnbWVudHNNYXA8Um91dGVzIGV4dGVuZHMgcmVhZG9ubHkgdW5rbm93bltdPiA9IFJlY29yZDxcbiAgUGF0aHNPZjxSb3V0ZXM+LFxuICBQcmVwYXJlZFJvdXRlU2VnbWVudFtdXG4+O1xuXG4vKiogTWFwIHBhdGggLT4gcXVlcnkgc2hhcGUgKi9cbmV4cG9ydCB0eXBlIFF1ZXJ5U2hhcGVNYXA8Um91dGVzIGV4dGVuZHMgcmVhZG9ubHkgdW5rbm93bltdPiA9IFJlY29yZDxcbiAgUGF0aHNPZjxSb3V0ZXM+LFxuICBRdWVyeVNoYXBlT2Y8Um91dGVVbmlvbjxSb3V0ZXM+PlxuPjtcblxuLyoqIEV4dHJhY3Qgc2NoZW1hIGZyb20gYSByb3V0ZSAodW5kZWZpbmVkIGlmIGFic2VudCkgKi9cbmV4cG9ydCB0eXBlIFNjaGVtYU9mPFI+ID0gUiBleHRlbmRzIHsgcXVlcnlTY2hlbWE/OiBpbmZlciBTIH1cbiAgPyBTIGV4dGVuZHMgRmlsdGVyU2NoZW1hXG4gICAgPyBTXG4gICAgOiB1bmRlZmluZWRcbiAgOiB1bmRlZmluZWQ7XG5cbi8qKiBGaWx0ZXJzIGluZmVycmVkIGZyb20gdGhlIHJvdXRlJ3Mgc2NoZW1hICovXG5leHBvcnQgdHlwZSBGaWx0ZXJzT2Y8Uj4gPVxuICBTY2hlbWFPZjxSPiBleHRlbmRzIEZpbHRlclNjaGVtYVxuICAgID8gSW5mZXJGaWx0ZXJSZXN1bHQ8U2NoZW1hT2Y8Uj4+XG4gICAgOiBSZWNvcmQ8c3RyaW5nLCBuZXZlcj47XG5cbi8qKiBNYXAgcGF0aCAtPiBpbmZlcnJlZCBmaWx0ZXJzIHR5cGUgKi9cbmV4cG9ydCB0eXBlIEZpbHRlcnNNYXA8Um91dGVzIGV4dGVuZHMgcmVhZG9ubHkgdW5rbm93bltdPiA9IFJlY29yZDxcbiAgUGF0aHNPZjxSb3V0ZXM+LFxuICBGaWx0ZXJzT2Y8Um91dGVVbmlvbjxSb3V0ZXM+PlxuPjtcblxuLyoqIFJ1bnRpbWUgaGVscGVyIGludGVyZmFjZSBhdWdtZW50YXRpb24gZm9yIHJvdXRlciBjb250ZXh0IChhZGRlZCBpbiBjcmVhdGVSb3V0ZXIpICovXG5leHBvcnQgdHlwZSBQcmVwYXJlZEFjY2VzczxSb3V0ZXMgZXh0ZW5kcyByZWFkb25seSB1bmtub3duW10+ID0gUmVjb3JkPFxuICBuZXZlcixcbiAgbmV2ZXJcbj4gJiB7XG4gIC8qKiBSZXRyaWV2ZSB0aGUgcHJlcGFyZWQgb2JqZWN0IGZvciBhIGNvbmNyZXRlIHBhdGggKGlmIGN1cnJlbnQgbWF0Y2ggaW5jbHVkZXMgaXQpICovXG4gIGdldFByZXBhcmVkOiAocGF0aDogc3RyaW5nKSA9PiBQcmVwYXJlZE9mPFJvdXRlVW5pb248Um91dGVzPj4gfCB1bmRlZmluZWQ7XG4gIC8qKiBSZXRyaWV2ZSB0aGUgZnVsbCBwcmVwYXJlZCBzZWdtZW50IGNoYWluIGZvciBhIGNvbmNyZXRlIHBhdGguICovXG4gIGdldFByZXBhcmVkU2VnbWVudHM6IChwYXRoOiBzdHJpbmcpID0+IFByZXBhcmVkUm91dGVTZWdtZW50U25hcHNob3RbXTtcbiAgLy8gZ2V0VHlwZWRRdWVyeSByZW1vdmVkIOKAkyB1c2UgZmlsdGVycy9xdWVyeSBkaXJlY3RseVxufTtcblxuLyoqIElucHV0IHNoYXBlIGZvciBhIG5hdmlnYXRpb24gdG8gYSBzcGVjaWZpYyBwYXRoICh0eXBlZCBxdWVyeSkgKi9cbmV4cG9ydCB0eXBlIE5hdmlnYXRlSW5wdXRGb3JQYXRoPFJvdXRlcyBleHRlbmRzIHJlYWRvbmx5IHVua25vd25bXT4gPSB7XG4gIHBhdGhuYW1lOiBQYXRoc09mPFJvdXRlcz47XG4gIHF1ZXJ5PzogUXVlcnlTaGFwZU9mPFJvdXRlVW5pb248Um91dGVzPj47XG4gIGZpbHRlcnM/OiBGaWx0ZXJzT2Y8Um91dGVVbmlvbjxSb3V0ZXM+PjtcbiAgaGFzaD86IHN0cmluZztcbiAgcmVwbGFjZT86IGJvb2xlYW47XG59O1xuXG4vKiogRmFsbGJhY2sgdW50eXBlZCBuYXZpZ2F0ZSBpbnB1dCAqL1xuZXhwb3J0IHR5cGUgTmF2aWdhdGVJbnB1dFVudHlwZWQgPSB7XG4gIHBhdGhuYW1lPzogc3RyaW5nO1xuICBxdWVyeT86IFVua25vd25RdWVyeVNoYXBlO1xuICBmaWx0ZXJzPzogVW5rbm93bkZpbHRlcnM7XG4gIGhhc2g/OiBzdHJpbmc7XG4gIHJlcGxhY2U/OiBib29sZWFuO1xufTtcblxuLyoqIE92ZXJsb2FkZWQgbmF2aWdhdGUgZnVuY3Rpb24gdHlwZSAoY29tcGlsZS10aW1lIG9ubHk7IHJ1bnRpbWUgc2luZ2xlIGltcGwpICovXG5leHBvcnQgaW50ZXJmYWNlIE5hdmlnYXRlT3ZlcmxvYWRzPFJvdXRlcyBleHRlbmRzIHJlYWRvbmx5IHVua25vd25bXT4ge1xuICAob3B0czogTmF2aWdhdGVJbnB1dEZvclBhdGg8Um91dGVzPik6IHZvaWQ7XG4gIChvcHRzOiBOYXZpZ2F0ZUlucHV0VW50eXBlZCk6IHZvaWQ7XG59XG4iXX0=
|